diff --git a/.gitignore b/.gitignore index 223b84a6..754ad21c 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,13 @@ tmp/* # releases directory releases/* +# all PDFs (those explicitly checked in aren't ignored +# normally when you have derived files, you ignore them from git +# because they will get regenerated when you rebuild. +# MEDLEY-UTILS HCFILES regenerates + +*.pdf + # all loadup files @@ -12,6 +19,7 @@ loadups/exports.all library/RDSYS* loadups/lisp.sysout loadups/full.sysout +loadups/fuller.sysout # not currently included but might as well ignore it loadups/*.dribble loadups/whereis.hash loadups/apps.sysout diff --git a/docs/Medley-Primer.pdf b/docs/Medley-Primer.pdf deleted file mode 100644 index f37d2d3b..00000000 Binary files a/docs/Medley-Primer.pdf and /dev/null differ diff --git a/docs/ReleaseNote/APPENDIXA-THEEXEC.pdf b/docs/ReleaseNote/APPENDIXA-THEEXEC.pdf deleted file mode 100644 index 18c7043a..00000000 --- a/docs/ReleaseNote/APPENDIXA-THEEXEC.pdf +++ /dev/null @@ -1,10025 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5258 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -/TT4 1 Tf -18 0 0 18 347.92 734.97 Tm -(APPENDIX A. THE EXEC)Tj -ET -6 w -258.01 727.99 m -558.01 727.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 677.2 Tm -0.101 Tw -(In most Common Lisp implementations, there is a "top-level )Tj -/TT4 1 Tf -27.553 0 TD -0 Tw -(read-)Tj -ET -570 724.98 0.99 -51.99 re -f -BT -10 0 0 10 258 665.2 Tm -(eval-print)Tj -/TT2 1 Tf -4.501 0 TD -0.002 Tw -( loop," which reads an expression, evaluates it, and prints)Tj -ET -570 672.98 0.99 -11.99 re -f -BT -10 0 0 10 258 653.2 Tm -0.095 Tw -(the results. In Xerox Common Lisp, the Exec acts as the top-level)Tj -ET -570 660.98 0.99 -11.99 re -f -BT -10 0 0 10 258 641.2 Tm -0.11 Tw -(loop, but in addition to )Tj -/TT4 1 Tf -10.613 0 TD -0 Tw -(read-eval-print)Tj -/TT2 1 Tf -6.9463 0 TD -0.11 Tw -(, it also performs a number)Tj -ET -570 648.98 0.99 -11.99 re -f -BT -10 0 0 10 258 629.2 Tm -0.175 Tw -[(of other tasks, and allows a much greater range of inputs. This)]TJ -ET -570 636.98 0.99 -11.99 re -f -BT -10 0 0 10 258 617.2 Tm -0.075 Tw -(appendix contains information from the Lyric and Medley releases.)Tj -ET -570 624.98 0.99 -11.99 re -f -BT -10 0 0 10 258 605.2 Tm -0.394 Tw -(Medley additions are indicated with revision bars in the right)Tj -ET -570 612.98 0.99 -11.99 re -f -BT -10 0 0 10 258 593.2 Tm -0 Tw -(margin. )Tj -ET -570 600.98 0.99 -11.99 re -f -BT -10 0 0 10 258 574.2 Tm -0.203 Tw -(The Exec is based on concepts from the Interlisp Programmers)Tj -0 -1.2 TD -0 Tw -(Assistant \(see the )Tj -/TT6 1 Tf -8.5039 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.0059 0 TD -(\).)Tj --21.5098 -1.9 TD -0.226 Tw -[(The Exec traps all throws, and recovers gracefully. It prints all)]TJ -0 -1.2 TD -0.297 Tw -(values resulting from evaluation, on separate lines. When zero)Tj -T* -0 Tw -(values are returned, nothing is printed.)Tj -0 -1.9 TD -0.087 Tw -[(The Exec keeps track of your previous input, in a structure called)]TJ -0 -1.2 TD -0.097 Tw -[(the history list. A history list is a list of the information associated)]TJ -T* -0.104 Tw -(with each of the individual events that have occurred, where each)Tj -T* -0.024 Tw -[(event corresponds to one input. Associated with each event on the)]TJ -T* -0.177 Tw -(history list is the input, its values, plus other optional information)Tj -T* -0 Tw -(such as side-effects, formatting information, etc.)Tj -0 -1.9 TD -0.068 Tw -(The following dialogue contains illustrative examples and gives the)Tj -0 -1.2 TD -0.038 Tw -(flavor of the use of the Exec. Be sure to type these examples to an)Tj -T* -0.116 Tw -(Exec whose )Tj -/TT4 1 Tf -5.9014 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7776 0 TD -0.116 Tw -[( is set to the )]TJ -/TT4 1 Tf -6.2494 0 TD -0 Tw -(XCL-USER)Tj -/TT2 1 Tf -5.1113 0 TD -0.116 Tw -[( package. The)]TJ --23.0398 -1.2 TD -0.221 Tw -(Exec that Lisp starts up with is set to the )Tj -/TT4 1 Tf -20.3296 0 TD -0 Tw -(XCL-USER)Tj -/TT2 1 Tf -5.1113 0 TD -0.221 Tw -[( package.)]TJ --25.441 -1.2 TD -0.093 Tw -(Each prompt consists of an event number and a prompt character)Tj -T* -0 Tw -(\(")Tj -8 0 0 8 264.8799 361.2 Tm -(>)Tj -10 0 0 10 269.5517 361.2 Tm -("\). )Tj -8 0 0 8 258 344.2 Tm -(12>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 344.2 Tm -(\(setq foo 5\))Tj -/TT8 1 Tf --1.357 -0.871 TD -(5)Tj -/TT2 1 Tf -8 0 0 8 258 324.2 Tm -(13>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 324.2 Tm -(\(setq foo 10\))Tj -/TT8 1 Tf --1.357 -0.871 TD -(10)Tj -/TT2 1 Tf -8 0 0 8 258 298.76 Tm -(14>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 298.76 Tm -(undo)Tj -8 0 0 8 296.01 300.76 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 288.76 Tm -(SETQ undone)Tj -/TT4 1 Tf -6.6011 0 TD -(.)Tj -/TT2 1 Tf -8 0 0 8 258 277.03 Tm -(15>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 277.03 Tm -(foo)Tj -8 0 0 8 287.12 279.03 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 268.32 Tm -(5)Tj -/TT6 1 Tf -0 -1.829 TD -0.181 Tw -[(This is an example of direct communication with the Exec. You)]TJ -0 -1.2 TD -0 Tw -(have instructed the Exec to )Tj -/TT4 1 Tf -12.3403 0 TD -(undo)Tj -/TT6 1 Tf -2.4434 0 TD -( the previous event.)Tj -/TT2 1 Tf --14.7837 -1.7 TD -(. . .)Tj -8 0 0 8 258 206.03 Tm -(25>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 206.03 Tm -(set\(lst1 \(a b c\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(A B C\))Tj -/TT2 1 Tf -8 0 0 8 258 176.03 Tm -(26>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 176.03 Tm -(\(setq lst2 \(d e f\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(D E F\))Tj -/TT2 1 Tf -8 0 0 8 258 146.03 Tm -(27>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 146.03 Tm -(\(mapc #\(lambda \(x\) \(setf \(get x myprop\) t\)\) lst1\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(A B C\))Tj -/TT6 1 Tf -0 -1.829 TD -0.034 Tw -(The Exec accepts input both in APPLY format \(the )Tj -/TT4 1 Tf -22.8734 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.9448 0 TD -0.034 Tw -(\) and EVAL)Tj --24.8182 -1.2 TD -0.029 Tw -(format \(the )Tj -/TT4 1 Tf -5.1708 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.7227 0 TD -0.029 Tw -(.\) In event 27, the user adds a property MYPROP)Tj --7.8934 -1.2 TD -0 Tw -(to the symbols )Tj -/TT4 1 Tf -6.7251 0 TD -(A)Tj -/TT6 1 Tf -0.7222 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(B)Tj -/TT6 1 Tf -0.7222 0 TD -(, and )Tj -/TT4 1 Tf -2.502 0 TD -(C)Tj -/TT6 1 Tf -0.7222 0 TD -(. )Tj -/TT2 1 Tf -8 0 0 8 258 72.59 Tm -(28>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 72.59 Tm -(use lst2 for lst1 in 27)Tj -8 0 0 8 370.5 74.59 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 63.88 Tm -(NIL)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 4713 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 258 730.2 Tm -0.322 Tw -(You just instructed the Exec to go back to event number 27,)Tj -0 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.8481 0 TD -(LST2)Tj -/TT6 1 Tf -2.4448 0 TD -0.29 Tw -[( for )]TJ -/TT4 1 Tf -2.3027 0 TD -0 Tw -(LST1,)Tj -/TT6 1 Tf -2.7227 0 TD -0.29 Tw -[( and then re-execute the expression.)]TJ --12.3182 -1.2 TD -0.147 Tw -[(You could have also used -2 instead of 27, specifying a relative)]TJ -T* -0 Tw -(address.)Tj -/TT4 1 Tf -0 -1.7 TD -(.)Tj -0 -1 TD -(.)Tj -T* -(.)Tj -/TT2 1 Tf -8 0 0 8 258 642.2 Tm -(46>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 642.2 Tm -(\(setf my-hash-table \(make-hash-table\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(#)Tj -/TT2 1 Tf -8 0 0 8 258 612.2 Tm -(47>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 612.2 Tm -(\(setf \(gethash foo my-hash-table\) \(string foo\)\))Tj -/TT8 1 Tf --1.357 -0.871 TD -("FOO")Tj -/TT6 1 Tf -0 -1.829 TD -(If )Tj -/TT4 1 Tf -0.9995 0 TD -(STRING)Tj -/TT6 1 Tf -3.7778 0 TD -0.166 Tw -[( were computationally expensive \(which it is not\), then)]TJ --4.7773 -1.2 TD -0 Tw -(you might be caching its value for later use.)Tj -/TT2 1 Tf -8 0 0 8 258 555.76 Tm -(48>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 555.76 Tm -(use fie for foo in string)Tj -8 0 0 8 379.92 557.76 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 547.05 Tm -("FIE")Tj -/TT6 1 Tf -0 -1.829 TD -0.138 Tw -(You now decide you would like to redo the )Tj -/TT4 1 Tf -20.2542 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.5557 0 TD -0.138 Tw -[( with a different)]TJ --22.8099 -1.2 TD -0 Tw -(value. You specify the event using ")Tj -/TT4 1 Tf -16.0869 0 TD -(IN STRING)Tj -/TT6 1 Tf -5.0557 0 TD -(" rather than )Tj -/TT4 1 Tf -5.7471 0 TD -(SETF)Tj -/TT6 1 Tf -2.5557 0 TD -(.)Tj -/TT2 1 Tf -8 0 0 8 258 499.32 Tm -(49>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 499.32 Tm -(?? use)Tj -8 0 0 8 303.8 501.32 Tm -(cr)Tj -10 0 0 10 270 479.32 Tm -(USE FIE FOR FOO IN STRING)Tj -/TT2 1 Tf -8 0 0 8 258 469.32 Tm -(48>)Tj -/TT4 1 Tf -10 0 0 10 282 469.32 Tm -(\(SETF \(GETHASH FIE MY-HASH-TABLE\))Tj -0 -1 TD -(\(STRING FIE\)\))Tj -/TT8 1 Tf -0 -0.871 TD -("FIE")Tj -/TT6 1 Tf --2.4 -1.829 TD -0.089 Tw -(Here you ask the Exec \(using the ?? command\) what it has on its)Tj -0 -1.2 TD -0.226 Tw -[(history list for the last input. Since the event corresponds to a)]TJ -T* -0.178 Tw -(command, the Exec displays both the original command and the)Tj -T* -0 Tw -(generated input.)Tj -/TT2 1 Tf -0 -1.9 TD -0.054 Tw -(The most common interaction with the Exec occurs at the top level)Tj -0 -1.2 TD -0.132 Tw -(or in the debugger, where you type in expressions for evaluation,)Tj -T* -0.08 Tw -[(and see the values printed out. In this mode, the Exec acts much)]TJ -T* -0.252 Tw -(like a standard Common Lisp top-level loop, except that before)Tj -T* -0.184 Tw -(attempting to evaluate an input, the Exec first stores it in a new)Tj -T* -0.059 Tw -[(entry on the history list. Thus if the operation is aborted or causes)]TJ -T* -0.009 Tw -(an error, the input is still saved and available for modification and/or)Tj -T* -0.088 Tw -[(re-execution. The Exec also notes new functions and variables to)]TJ -T* -0 Tw -(be added to its spelling lists to enable future corrections.)Tj -0 -1.9 TD -0.14 Tw -(After updating the history list, the Exec executes the computation)Tj -0 -1.2 TD -0.149 Tw -(\(i.e., evaluates the form or applies the function to its arguments\),)Tj -T* -0.054 Tw -(saves the value in the entry on the history list corresponding to the)Tj -T* -0.115 Tw -[(input, and prints the result. Finally the Exec displays a prompt to)]TJ -T* -0 Tw -(indicate it is again ready for input.)Tj -/TT4 1 Tf -12 0 0 12 54 186.76 Tm -(Input Formats)Tj -ET -54.01 183.61 m -558.01 183.61 l -S -BT -/TT2 1 Tf -10 0 0 10 258 164.32 Tm -0.388 Tw -(The Exec accepts three forms of input: an expression to be)Tj -T* -0.077 Tw -(evaluated \(EVAL-format\), a function-name and arguments to apply)Tj -T* -0 Tw -(it to \(APPLY-format\), and Exec commands, as follows:)Tj --9.97 -1.9 TD -0.026 Tw -[(EVAL-format )26(input)-1799.6(If you type a single expression, either followed by a carriage-return,)]TJ -9.97 -1.2 TD -0.11 Tw -(or, in the case of a list, terminated with balanced parenthesis, the)Tj -T* -0.075 Tw -[(expression is evaluated and the value is returned. For example, if)]TJ -T* -0 Tw -(the value of the variable )Tj -/TT4 1 Tf -10.896 0 TD -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -( is the list )Tj -/TT4 1 Tf -4.4458 0 TD -(\(A B C\))Tj -/TT2 1 Tf -3.3882 0 TD -(:)Tj -8 0 0 8 258 66.32 Tm -(32>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 66.32 Tm -(FOO)Tj -2.167 0.2 TD -(cr)Tj -/TT8 1 Tf --3.524 -1.071 TD -(\(A B C\))Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -14 0 obj -<< -/Length 4809 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.366 Tw -(Similarly, if you type a Lisp expression, beginning with a left)Tj -0 -1.2 TD -0.22 Tw -(parenthesis and terminated by a matching right parenthesis, the)Tj -T* -0.076 Tw -(form is simply passed to )Tj -/TT4 1 Tf -11.3834 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.076 Tw -[( for evaluation. Notice that it is not)]TJ --14.0504 -1.2 TD -0.097 Tw -(necessary to type a carriage return at the end of such a form; the)Tj -T* -0.143 Tw -[(reader will supply one automatically. If a carriage-return is typed)]TJ -T* -0.121 Tw -(before the final matching right parenthesis or bracket, it is treated)Tj -T* -0.024 Tw -[(the same as a space, and input continues. The following examples)]TJ -T* -0 Tw -(are interpreted identically:)Tj -8 0 0 8 258 629.2 Tm -(123>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 629.2 Tm -( \(+ 1 \(* 2 3\)\))Tj -/TT8 1 Tf --1.802 -0.871 TD -(7)Tj -/TT2 1 Tf -8 0 0 8 258 607.2 Tm -(124>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 607.2 Tm -( \(+ 1 \(*)Tj -3.0291 0.2 TD -(cr)Tj --4.831 -1.2 TD -(2 3\)\))Tj -/TT8 1 Tf -0 -0.871 TD -(7)Tj -/TT2 1 Tf --11.193 -1.829 TD -0.015 Tw -[(APPLY-format )15(input )15.2( )-1785.2(Often, when typing at the keyboard, you call functions with constant)]TJ -11.193 -1.2 TD -0.039 Tw -(argument values, which would have to be quoted if you typed them)Tj -T* -0.543 Tw -[(in "EVAL-format." For convenience, if you type a symbol)]TJ -T* -0.08 Tw -(immediately followed by a list form, the symbol is )Tj -/TT4 1 Tf -22.6165 0 TD -0 Tw -(APPLY)Tj -/TT2 1 Tf -3.334 0 TD -0.08 Tw -(ed to the)Tj --25.9505 -1.2 TD -0.16 Tw -[(elements within the list, unevaluated. The input is terminated by)]TJ -T* -0.0001 Tc -0.0049 Tw -(the matching right parenthesis. For example, typing )Tj -/TT4 1 Tf -23.3295 0 TD -0 Tc -0 Tw -(LOAD\(FOO\))Tj -/TT2 1 Tf -5.6655 0 TD -0.0017 Tc -0.0033 Tw -( is)Tj --28.9951 -1.2 TD -0 Tc -0.513 Tw -(equivalent to typing )Tj -/TT4 1 Tf -10.434 0 TD -(\(LOAD FOO\))Tj -/TT2 1 Tf -6.7342 0 TD -(, and )Tj -/TT4 1 Tf -3.528 0 TD -(GET\(X COLOR\))Tj -/TT2 1 Tf -7.7903 0 TD -[( is)]TJ --28.4865 -1.2 TD -0.039 Tw -(equivalent to )Tj -/TT4 1 Tf -6.0267 0 TD -(\(GET X COLOR\))Tj -/TT2 1 Tf -8.1888 0 TD -(. As a simple special case, a single)Tj --14.2156 -1.2 TD -0 Tw -(right parenthesis is treated as a balanced set of parentheses, e.g.)Tj -8 0 0 8 258 457.2 Tm -(125>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 457.2 Tm -(UNBREAK\))Tj -/TT2 1 Tf --1.802 -1.7 TD -(is equivalent to)Tj -8 0 0 8 258 423.2 Tm -(125>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 423.2 Tm -(UNBREAK\(\))Tj -/TT2 1 Tf --1.802 -1.7 TD -0.072 Tw -(The reader will only supply the "carriage return" automatically if no)Tj -0 -1.2 TD -0.024 Tw -(space appears between the initial symbol and the list that follows; if)Tj -T* -0.074 Tw -(there is a space after the initial symbol on the line and the list that)Tj -T* -0.009 Tw -(follows, the input is not terminated until a carriage return is explicitly)Tj -T* -0 Tw -(typed.)Tj -0 -1.9 TD -0.015 Tw -(Note that APPLY-format input cannot be used for macros or special)Tj -0 -1.2 TD -0 Tw -(forms.)Tj --9.469 -1.9 TD -0.116 Tw -[(Exec )116(commands )-1683.6(The Exec recognizes a number of commands, which usually refer)]TJ -9.469 -1.2 TD -0.238 Tw -(to past events on the history list. These commands are treated)Tj -T* -0.082 Tw -(specially; for example, they may not be put on the history list. The)Tj -T* -0.049 Tw -(format of a command is always a line beginning with the command)Tj -T* -0.264 Tw -(name. \(The Exec looks up the command name independent of)Tj -T* -0.102 Tw -(package, so that Exec commands are package independent.\) The)Tj -T* -0.313 Tw -(remainder of the line, if any, is treated as "arguments" to the)Tj -T* -0 Tw -(command. For example,)Tj -8 0 0 8 258 206.76 Tm -(128>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 206.76 Tm -(UNDO)Tj -8 0 0 8 305.46 208.76 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 198.05 Tm -(mapc undone)Tj -/TT2 1 Tf -8 0 0 8 258 186.32 Tm -(129>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 186.32 Tm -(UNDO \(FOO --\))Tj -8 0 0 8 346.01 188.32 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 177.61 Tm -(foo undone)Tj -/TT2 1 Tf -0 -1.829 TD -(are all valid command inputs.)Tj -/TT4 1 Tf -12 0 0 12 54 131.76 Tm -(Multiple Execs and the Execs Type)Tj -ET -54.01 128.61 m -558.01 128.61 l -S -BT -/TT2 1 Tf -10 0 0 10 175.54 109.32 Tm -0.025 Tw -[(Multiple )25(Execs)-1799.2(More than one Exec can be active at any one time. New Execs can)]TJ -8.246 -1.2 TD -0.009 Tw -(be created by selecting the Exec menu item in the background pop-)Tj -T* -0.074 Tw -[(up menu. When a prompt is printed for an event in other than the)]TJ -T* -0.349 Tw -(first Exec, the prompt is preceded with the Exec number; for)Tj -T* -0 Tw -(example:)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -17 0 obj -<< -/Length 5089 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -8 0 0 8 258 731.76 Tm -(2/50>)Tj -10 0 0 10 258 715.2 Tm -0.055 Tw -(might be a prompt in Exec 2. All Execs share the same history list,)Tj -0 -1.2 TD -0.036 Tw -(but each event records which Exec it goes with. That is, although a)Tj -T* -0.027 Tw -(single global list exists, the Xerox Lisp history system maintains the)Tj -T* -0 Tw -(separate threads of control within each Exec.)Tj --6.191 -1.9 TD -0.093 Tw -[(Exec )93(type)-1799.9(Several variables are very important to an Exec since they control)]TJ -6.191 -1.2 TD -0.381 Tw -[(the format of reading and printing. Together these variables)]TJ -T* -0.046 Tw -[(describe a type of exec. Put another way, this is the Execs mode.)]TJ -T* -0.06 Tw -(To allow easier setting of these modes some standard bindings for)Tj -T* -0.125 Tw -[(the variables have been named. The names provide the user an)]TJ -T* -0.193 Tw -(Exec of the Common Lisp \(CL\), Interlisp \(IL\) or Xerox Extended)Tj -T* -0.125 Tw -[(Common Lisp \(XCL\) type. An Execs type is usually displayed in)]TJ -T* -0 Tw -(the title bar of its window in parentheses:)Tj -ET -q -207 0 0 -104 258.01 566.99 cm -/Im1 Do -Q -BT -/TT4 1 Tf -12 0 0 12 54 439.64 Tm -(Event Specification)Tj -ET -54.01 436.49 m -558.01 436.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 417.2 Tm -0.067 Tw -(Exec commands, like )Tj -/TT4 1 Tf -9.926 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.067 Tw -(, frequently refer to previous events in)Tj --12.8703 -1.2 TD -0.672 Tw -(the sessions history. All Exec commands use the same)Tj -T* -0.068 Tw -(conventions and syntax for indicating which event\(s\) the command)Tj -T* -0.258 Tw -[(refers to. This section shows you the syntax used to specify)]TJ -T* -0 Tw -(previous events.)Tj -0 -2.3 TD -0.349 Tw -(An event address identifies one event on the history list. For)Tj -0 -1.2 TD -0.321 Tw -(example, the event address )Tj -/TT4 1 Tf -13.847 0 TD -0 Tw -(42)Tj -/TT2 1 Tf -1.1123 0 TD -0.321 Tw -[( refers to the event with event)]TJ --14.9593 -1.2 TD -0.128 Tw -(number 42, and )Tj -/TT4 1 Tf -7.6667 0 TD -0 Tw -(-2)Tj -/TT2 1 Tf -0.8892 0 TD -0.128 Tw -[( refers to two events back in the )]TJ -/TT6 1 Tf -15.42 0 TD -0 Tw -(current)Tj -/TT2 1 Tf -3.1123 0 TD -0.128 Tw -[( Exec.)]TJ --27.0882 -1.2 TD -0 Tw -(Usually, an event address will contain only one or two commands.)Tj -0 -1.9 TD -0.06 Tw -(Event addresses can be concatenated. For example, if )Tj -/TT4 1 Tf -24.9385 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.06 Tw -[( refers)]TJ --27.105 -1.2 TD -0.204 Tw -(to event )Tj -/TT6 1 Tf -4.2439 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -(, )Tj -/TT4 1 Tf -0.7597 0 TD -0.204 Tw -(FOO FIE)Tj -/TT2 1 Tf -4.204 0 TD -[( will refer to the first event before event )]TJ -/TT6 1 Tf -19.3443 0 TD -0 Tw -(N)Tj -/TT2 1 Tf --29.2741 -1.2 TD -(which contains )Tj -/TT4 1 Tf -6.8369 0 TD -(FIE)Tj -/TT2 1 Tf -1.5557 0 TD -(.)Tj --8.3926 -1.9 TD -0.043 Tw -(The symbols used in event addresses \(such as )Tj -/TT4 1 Tf -21.4656 0 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -(, )Tj -/TT4 1 Tf -0.5987 0 TD -(F)Tj -/TT2 1 Tf -0.6108 0 TD -(, )Tj -/TT4 1 Tf -0.5987 0 TD -(=)Tj -/TT2 1 Tf -0.584 0 TD -0.043 Tw -(, etc. are)Tj --26.0242 -1.2 TD -0.184 Tw -(compared with )Tj -/TT4 1 Tf -7.1488 0 TD -0 Tw -(STRING-EQUAL)Tj -/TT2 1 Tf -7.6108 0 TD -0.184 Tw -(, so that it does not matter what)Tj --14.7596 -1.2 TD -0.085 Tw -(the current package is when you type an event address symbol to)Tj -T* -0 Tw -(an Exec.)Tj -0 -1.7 TD -(Event addresses are interpreted as follows:)Tj -/TT6 1 Tf --7.913 -1.7 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -[( \(an integer\))-1799.2(If )]TJ -/TT6 1 Tf -8.0313 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.007 Tw -[( is positive, it refers to the event with event number )]TJ -/TT6 1 Tf -22.8656 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.007 Tw -[( \(no matter)]TJ --25.1504 -1.2 TD -0.05 Tw -(which Exec the event occurred in.\) If )Tj -/TT6 1 Tf -16.7465 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.05 Tw -[( is negative, it always refers)]TJ --17.4687 -1.2 TD -0.004 Tw -(to the event -)Tj -/TT6 1 Tf -5.8489 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.0001 Tc -0.0039 Tw -( events backwards counting )Tj -/TT6 1 Tf -12.6342 0 TD -0 Tc -0 Tw -(only)Tj -/TT2 1 Tf -1.8345 0 TD -0.0002 Tc -0.0038 Tw -( events belonging to)Tj --21.0397 -1.2 TD -0 Tc -0 Tw -(the )Tj -/TT6 1 Tf -1.668 0 TD -(current)Tj -/TT2 1 Tf -3.1123 0 TD -( Exec.)Tj -/TT4 1 Tf --7.1913 -1.9 TD -(F)Tj -/TT2 1 Tf -2.411 0 TD -0.003 Tw -(Specifies that the next object in the event address is to be searched)Tj -0 -1.2 TD -0.102 Tw -[(for, regardless of what it is. For example, )]TJ -/TT4 1 Tf -19.5362 0 TD -(F -2)Tj -/TT2 1 Tf -1.8798 0 TD -[( looks for an event)]TJ --21.416 -1.2 TD -0 Tw -(containing )Tj -/TT4 1 Tf -4.8369 0 TD -(-2)Tj -/TT2 1 Tf -0.8892 0 TD -(.)Tj -/TT4 1 Tf --8.1101 -1.9 TD -(=)Tj -/TT2 1 Tf -2.384 0 TD -0.067 Tw -(Specifies that the next object is to be searched for in the )Tj -/TT6 1 Tf -25.93 0 TD -0 Tw -(values)Tj -/TT2 1 Tf -2.8906 0 TD -0.067 Tw -[( of)]TJ --28.8206 -1.2 TD -0 Tw -(events, instead of the inputs.)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/XObject << -/Im1 19 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -21 0 obj -<< -/Length 6545 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 154.45 730.2 Tm -(SUCHTHAT )Tj -/TT6 1 Tf -5.7773 0 TD -(PRED)Tj -/TT2 1 Tf -4.5777 0 TD -0.004 Tw -(Specifies an event for which the function )Tj -/TT6 1 Tf -18.2052 0 TD -0 Tw -(PRED)Tj -/TT2 1 Tf -2.7783 0 TD -0.0003 Tc -0.0037 Tw -( returns true. )Tj -/TT6 1 Tf -6.2406 0 TD -0 Tc -0 Tw -(PRED)Tj -/TT2 1 Tf --27.2242 -1.2 TD -0.236 Tw -(should be a function of two arguments, the input portion of the)Tj -T* -0 Tw -(event, and the event itself.)Tj -/TT6 1 Tf --3.745 -1.9 TD -(PAT)Tj -/TT2 1 Tf -3.745 0 TD -0.066 Tw -(Any other event address command specifies an event whose input)Tj -0 -1.2 TD -0.153 Tw -(contains an expression that matches )Tj -/TT6 1 Tf -17.2743 0 TD -0 Tw -(PAT.)Tj -/TT2 1 Tf -2.2227 0 TD -0.153 Tw -[( When multiple Execs)]TJ --19.4969 -1.2 TD -0.249 Tw -(are active, all events are searched, no matter which Exec they)Tj -T* -0.054 Tw -(belong to. The pattern can be a simple symbol, or a more complex)Tj -T* -0 Tw -(search pattern.)Tj -0 -1.9 TD -0.033 Tw -[(Note:)-609.9(Specifications used below of the form )]TJ -/TT6 1 Tf -20.0403 0 TD -0 Tw -(EventAddress)Tj -6.2237 -0.3 TD -(i)Tj -/TT2 1 Tf -0.222 0.3 TD -0.033 Tw -[( refer to)]TJ --23.486 -1.5 TD -0.373 Tw -[(event addresses, as described above. Since an event)]TJ -0 -1.2 TD -0.2 Tw -(address may contain multiple words, the event address is)Tj -T* -0.282 Tw -[(parsed by searching for the words which delimit it. For)]TJ -T* -0.72 Tw -(example, in )Tj -/TT6 1 Tf -6.8316 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 418.56 566.2 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 423.0099 569.2 Tm -0.72 Tw -[( AND )]TJ -/TT6 1 Tf -4.1622 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 526.88 566.2 Tm -(2)Tj -/TT2 1 Tf -10 0 0 10 531.33 569.2 Tm -0.72 Tw -(, the)Tj --24.333 -1.456 TD -0 Tw -(notation )Tj -/TT6 1 Tf -3.9874 0 TD -(EventAddress)Tj -8 0 0 8 390.12 551.64 Tm -(1)Tj -/TT2 1 Tf -10 0 0 10 394.57 554.64 Tm -0.151 Tw -[( corresponds to all words up to the)]TJ -/TT4 1 Tf --10.657 -1.456 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -0.256 Tw -[( in the event specification, and )]TJ -/TT6 1 Tf -15.267 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 524.57 537.08 Tm -(2)Tj -/TT2 1 Tf -10 0 0 10 529.02 540.08 Tm -0.256 Tw -[( to all)]TJ --24.102 -1.456 TD -0 Tw -(words after the )Tj -/TT4 1 Tf -6.8921 0 TD -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -( in the event specification.)Tj -/TT4 1 Tf --23.3056 -1.9 TD -(FROM )Tj -/TT6 1 Tf -3.2217 0 TD -(EventAddress)Tj -/TT2 1 Tf -8.0253 0 TD -0.06 Tw -(All events since )Tj -/TT6 1 Tf -7.4056 0 TD -0 Tw -(EventAddress)Tj -/TT2 1 Tf -6.2256 0 TD -0.06 Tw -(, inclusive. For example, if there is a)Tj --13.6312 -1.2 TD -0.181 Tw -(single Exec and the current event is number 53, then )Tj -/TT4 1 Tf -25.4907 0 TD -(FROM 49)Tj -/TT2 1 Tf --25.4907 -1.2 TD -0.013 Tw -(specifies events 49, 50, 51, and 52. )Tj -/TT4 1 Tf -16.3926 0 TD -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.013 Tw -[( will include events from)]TJ -/TT6 1 Tf --19.3364 -1.2 TD -0 Tw -(all)Tj -/TT2 1 Tf -1.0005 0 TD -( Execs.)Tj --11.5255 -1.9 TD -( )Tj -/TT4 1 Tf -0.278 0 TD -(ALL )Tj -/TT6 1 Tf -2.2217 0 TD -(EventAddress)Tj -/TT2 1 Tf -8.0253 0 TD -0.2 Tw -(Specifies all events satisfying )Tj -/TT6 1 Tf -14.0842 0 TD -0 Tw -(EventAddress)Tj -/TT2 1 Tf -6.2256 0 TD -0.2 Tw -[(. For example, )]TJ -/TT4 1 Tf -7.7468 0 TD -0 Tw -(ALL)Tj --28.0565 -1.2 TD -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(ALL SUCHTHAT FOO-P)Tj -/TT2 1 Tf -11.1655 0 TD -(. )Tj --19.0772 -1.9 TD -0.102 Tw -[(empty)-1799.9(If nothing is specified, it is the same as specifying )]TJ -/TT4 1 Tf -27.6651 0 TD -0 Tw -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.102 Tw -(, i.e., the last)Tj --24.0312 -1.2 TD -0 Tw -(event in the current Exec. )Tj -/TT6 1 Tf --20.397 -1.9 TD -(EventSpec)Tj -8 0 0 8 102.39 386.52 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 106.84 389.52 Tm -( AND )Tj -/TT6 1 Tf -2.7222 0 TD -(EventSpec)Tj -8 0 0 8 182.42 386.52 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 186.87 389.52 Tm -( AND . . . AND )Tj -/TT6 1 Tf -6.8335 0 TD -(EventSpec)Tj -8 0 0 8 303.57 386.52 Tm -(N)Tj -/TT2 1 Tf -10 0 0 10 258 367.96 Tm -0.277 Tw -(Each of the )Tj -/TT6 1 Tf -6.1679 0 TD -0 Tw -(EventSpec)Tj -4.8361 -0.3 TD -(i)Tj -/TT2 1 Tf -0.222 0.3 TD -0.277 Tw -[( is an event specification. The lists of)]TJ --11.226 -1.5 TD -0.252 Tw -[(events are concatenated. For example, )]TJ -/TT4 1 Tf -19.4109 0 TD -(ALL MAPC AND ALL)Tj --19.4109 -1.2 TD -0.513 Tw -(STRING AND 32)Tj -/TT2 1 Tf -8.6383 0 TD -[( specifies all events containing )]TJ -/TT4 1 Tf -16.3506 0 TD -0 Tw -(MAPC)Tj -/TT2 1 Tf -2.9443 0 TD -0.513 Tw -(, all)Tj --27.9333 -1.2 TD -0 Tw -(containing )Tj -/TT4 1 Tf -5.2449 0 TD -(STRING)Tj -/TT2 1 Tf -3.7778 0 TD -0.408 Tw -(, and also event )Tj -/TT4 1 Tf -8.9704 0 TD -0 Tw -(32)Tj -/TT2 1 Tf -1.1123 0 TD -0.408 Tw -(. Duplicate events are)Tj --19.1054 -1.2 TD -0 Tw -(removed. )Tj -/TT4 1 Tf -14 0 0 14 54 287.84 Tm -(Exec Commands)Tj -ET -54.01 284.25 m -558.01 284.25 l -S -BT -/TT2 1 Tf -10 0 0 10 258 264.96 Tm -0.018 Tw -(All Exec commands are input as lines which begin with the name of)Tj -T* -0.003 Tw -(the command. The name of an Exec command is not a symbol and)Tj -T* -0.054 Tw -(therefore is not sensitive to the setting of the current package \( the)Tj -T* -0 Tw -(value of )Tj -/TT4 1 Tf -3.7803 0 TD -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -(\).)Tj -/TT6 1 Tf --9.5591 -1.9 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.104 Tw -[( is used to denote an event specification which in most)]TJ --4.8364 -1.2 TD -0.064 Tw -(cases will be either a specific event address \(e.g., 42\) or a relative)Tj -T* -0.159 Tw -[(one \(e.g., -3\). Unless specified otherwise, omitting )]TJ -/TT6 1 Tf -24.0044 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.159 Tw -[( is)]TJ --28.8408 -1.2 TD -0.162 Tw -(the same as specifying )Tj -/TT6 1 Tf -11.0977 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.162 Tw -[(. For example, )]TJ -/TT4 1 Tf -7.5948 0 TD -0 Tw -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -0.162 Tw -[( and)]TJ -/TT4 1 Tf --27.8912 -1.2 TD -0 Tw -(REDO -1)Tj -/TT2 1 Tf -4.0562 0 TD -( are the same.)Tj -/TT4 1 Tf --16.9562 -3 TD -(REDO )Tj -/TT6 1 Tf -3.167 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -[( )-26893.9([Exec command])]TJ -ET -129.01 129.25 m -558.01 129.25 l -S -BT -10 0 0 10 258 113.96 Tm -0.043 Tw -(Redoes the event or events specified by )Tj -/TT6 1 Tf -18.3674 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.043 Tw -[(. For example,)]TJ -/TT4 1 Tf --23.2038 -1.2 TD -0 Tw -(REDO 123)Tj -/TT2 1 Tf -4.8354 0 TD -( redoes the event numbered 123.)Tj -ET -258.01 97.25 m -558.01 97.25 l -S -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -24 0 obj -<< -/Length 7860 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(RETRY )Tj -/TT6 1 Tf -3.667 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -[( )-26393.9([Exec command])]TJ -ET -129.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -0.065 Tw -(Similar to )Tj -/TT4 1 Tf -4.5753 0 TD -0 Tw -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -0.065 Tw -[( except sets the debugger parameters so that any)]TJ --7.4645 -1.2 TD -0 Tw -(errors that occur while executing )Tj -/TT6 1 Tf -14.6733 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -( will cause breaks.)Tj -ET -258.01 695.49 m -558.01 695.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 669.2 Tm -(USE )Tj -/TT6 1 Tf -2.334 0 TD -(NEW )Tj -/TT4 1 Tf -2.6108 0 TD -0.0001 Tc -([FOR)Tj -/TT6 1 Tf -2.444 0 TD -0 Tc -( OLD )Tj -/TT4 1 Tf -2.6118 0 TD -0.0001 Tc --0.0001 Tw -(] [IN)Tj -/TT6 1 Tf -1.9443 0 TD -0 Tc -0 Tw -( EventSpec )Tj -/TT4 1 Tf -5.3921 0 TD -(])Tj -/TT2 1 Tf -0.333 0 TD -[( )-17227.2([Exec command])]TJ -ET -129.01 666.49 m -558.01 666.49 l -S -BT -10 0 0 10 258 651.2 Tm -(Substitutes )Tj -/TT6 1 Tf -5.4211 0 TD -(NEW)Tj -/TT2 1 Tf -2.333 0 TD -0.196 Tw -[( for )]TJ -/TT6 1 Tf -2.1147 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0561 0 TD -0.196 Tw -[( in the events specified by )]TJ -/TT6 1 Tf -12.9607 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(,)Tj --29.722 -1.2 TD -0.065 Tw -(and redoes the result. )Tj -/TT6 1 Tf -10.2107 0 TD -0 Tw -(NEW)Tj -/TT2 1 Tf -2.333 0 TD -0.065 Tw -[( and )]TJ -/TT6 1 Tf -2.3541 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.065 Tw -[( can include lists or symbols,)]TJ --16.954 -1.2 TD -0 Tw -(etc.)Tj -0 -1.9 TD -0.32 Tw -(For example, )Tj -/TT4 1 Tf -6.7533 0 TD -(USE SIN \(- X\) FOR COS X IN -2 AND -1)Tj -/TT2 1 Tf -21.2571 0 TD -[( will)]TJ --28.0104 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.7791 0 TD -(SIN)Tj -/TT2 1 Tf -1.667 0 TD -0.221 Tw -[( for every occurrence of )]TJ -/TT4 1 Tf -11.8872 0 TD -0 Tw -(COS)Tj -/TT2 1 Tf -2.167 0 TD -0.221 Tw -[( in the previous two)]TJ --20.5003 -1.2 TD -0.438 Tw -(events, and substitute )Tj -/TT4 1 Tf -11.3203 0 TD -(\(- X\))Tj -/TT2 1 Tf -2.3818 0 TD -[( for every occurrence of )]TJ -/TT4 1 Tf -12.9722 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.438 Tw -(, and)Tj --27.3414 -1.2 TD -0.227 Tw -[(reexecute them. \(The substitutions do not change the previous)]TJ -T* -0 Tw -(information saved about these events on the history list.\))Tj -0 -1.9 TD -(If )Tj -/TT4 1 Tf -1.0595 0 TD -(IN )Tj -/TT6 1 Tf -1.5038 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.226 Tw -[( is omitted, the first member of )]TJ -/TT6 1 Tf -15.3086 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.226 Tw -[( is used to)]TJ --24.7645 -1.2 TD -0.853 Tw -[(search for the appropriate event. For example, )]TJ -/TT4 1 Tf -27.9461 0 TD -0 Tw -(USE)Tj --27.9461 -1.2 TD -0.666 Tw -(DEFAULTFONT FOR DEFLATFONT)Tj -/TT2 1 Tf -18.0517 0 TD -[( is equivalent to )]TJ -/TT4 1 Tf -9.8906 0 TD -0 Tw -(USE)Tj --27.9423 -1.2 TD -0.09 Tw -(DEFAULTFONT FOR DEFLATFONT IN F DEFLATFONT)Tj -/TT2 1 Tf -26.2796 0 TD -[(. The )]TJ -/TT4 1 Tf -3.1045 0 TD -0 Tw -(F)Tj -/TT2 1 Tf --29.3841 -1.2 TD -0.12 Tw -(is inserted to handle correctly the case where the first member of)Tj -/TT6 1 Tf -T* -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -( could be interpreted as an event address command.)Tj --2.0562 -1.9 TD -(If )Tj -/TT6 1 Tf -0.8485 0 TD -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.015 Tw -[( is omitted, substitution is for the "operator" in that command.)]TJ --2.9046 -1.2 TD -0.034 Tw -(For example )Tj -/TT4 1 Tf -5.9034 0 TD -0 Tw -(FBOUNDP\(FF\))Tj -/TT2 1 Tf -6.832 0 TD -0.034 Tw -[( followed by )]TJ -/TT4 1 Tf -5.6606 0 TD -(USE CALLS)Tj -/TT2 1 Tf -5.701 0 TD -[( is equivalent)]TJ --24.0971 -1.2 TD -0 Tw -(to )Tj -/TT4 1 Tf -1.1118 0 TD -(USE CALLS FOR FBOUNDP IN -1)Tj -/TT2 1 Tf -15.7227 0 TD -(.)Tj --16.8345 -1.9 TD -(If )Tj -/TT6 1 Tf -0.8785 0 TD -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.045 Tw -[( is not found, )]TJ -/TT4 1 Tf -6.1839 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.045 Tw -[( will print a question mark, several spaces)]TJ --11.1747 -1.2 TD -0.076 Tw -[(and the pattern that was not found. For example, if you specified)]TJ -T* -0.052 Tw -[(USE Y FOR X IN 104 and X was not found, "X ?" is printed to the)]TJ -T* -0 Tw -(Exec.)Tj -ET -258.01 378.49 m -558.01 378.49 l -S -BT -10 0 0 10 258 363.2 Tm -0.06 Tw -(You can also specify more than one substitution simultaneously as)Tj -T* -0 Tw -(follows:)Tj -/TT4 1 Tf --12.9 -3 TD -(USE )Tj -/TT6 1 Tf -2.334 0 TD -(NEW)Tj -2.333 -0.3 TD -(1)Tj -0.556 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(FOR)Tj -/TT6 1 Tf -2.1108 0 TD -( OLD)Tj -2.3343 -0.3 TD -(1)Tj -0.556 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(AND)Tj -/TT6 1 Tf -2.1665 0 TD -( ... )Tj -/TT4 1 Tf -1.3892 0 TD -(AND)Tj -/TT6 1 Tf -2.1665 0 TD -( NEW)Tj -2.611 -0.3 TD -(N)Tj -0.722 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(FOR)Tj -/TT6 1 Tf -2.1108 0 TD -( OLD)Tj -2.3343 -0.3 TD -(N)Tj -0.722 0.3 TD -( [)Tj -/TT4 1 Tf -0.5557 0 TD -(IN)Tj -/TT6 1 Tf -1 0 TD -( EventSpec)Tj -/TT2 1 Tf -5.1143 0 TD -[( )-2947.4([Exec command])]TJ -ET -129.01 315.49 m -558.01 315.49 l -S -BT -10 0 0 10 258 300.2 Tm -[(Note:)-609.9(The )]TJ -/TT4 1 Tf -5.01 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.009 Tw -[( command is parsed by a small finite state parser to)]TJ --4.0661 -1.2 TD -0.197 Tw -[(distinguish the expressions and arguments. For example,)]TJ -/TT4 1 Tf -T* -0.166 Tw -(USE FOR FOR AND AND AND FOR FOR)Tj -/TT2 1 Tf -20.1058 0 TD -[( will be parsed)]TJ --20.1058 -1.2 TD -0 Tw -(correctly.)Tj --3 -1.9 TD -(Every )Tj -/TT4 1 Tf -3.152 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.318 Tw -[( command involves three pieces of information: the)]TJ --5.2081 -1.2 TD -0.085 Tw -(expressions to be substituted, the arguments to be substituted for,)Tj -T* -0.301 Tw -(and an event specification that defines the input expression in)Tj -T* -0.135 Tw -[(which the substitution takes place. If the )]TJ -/TT4 1 Tf -19.3124 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.135 Tw -[( command has the)]TJ --21.3686 -1.2 TD -0.506 Tw -(same number of expressions as arguments, the substitution)Tj -T* -0.216 Tw -[(procedure is straightforward. For example, )]TJ -/TT4 1 Tf -20.6373 0 TD -(USE X Y FOR U V)Tj -/TT2 1 Tf --20.6373 -1.2 TD -0.094 Tw -(means substitute )Tj -/TT4 1 Tf -8.0254 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -[( for )]TJ -/TT4 1 Tf -1.9107 0 TD -0 Tw -(U)Tj -/TT2 1 Tf -0.7222 0 TD -0.094 Tw -[( and )]TJ -/TT4 1 Tf -2.4121 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -[( for )]TJ -/TT4 1 Tf -1.9107 0 TD -0 Tw -(V)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -(, and is equivalent to )Tj -/TT4 1 Tf -9.9207 0 TD -(USE X)Tj --26.9027 -1.2 TD -0 Tw -(FOR U AND Y FOR V)Tj -/TT2 1 Tf -9.8335 0 TD -(. )Tj --9.8335 -1.9 TD -0.078 Tw -(However, the )Tj -/TT4 1 Tf -6.3254 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.078 Tw -[( command also permits distributive substitutions)]TJ --8.3816 -1.2 TD -0.19 Tw -[(for substituting several expressions for the same argument. For)]TJ -T* -0 Tw -(example, )Tj -/TT4 1 Tf -4.4844 0 TD -0.149 Tw -(USE A B C FOR X)Tj -/TT2 1 Tf -9.1347 0 TD -[( means first substitute )]TJ -/TT4 1 Tf -10.5999 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.149 Tw -[( for )]TJ -/TT4 1 Tf -2.0207 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.149 Tw -[( then)]TJ --27.6288 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.5851 0 TD -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.027 Tw -[( for )]TJ -/TT4 1 Tf -1.7767 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.027 Tw -[( \(in a new copy of the expression\), then substitute)]TJ -/TT4 1 Tf --7.7509 -1.2 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -( for )Tj -/TT4 1 Tf -1.7227 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(. The effect is the same as three separate )Tj -/TT4 1 Tf -19.0098 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -( commands. )Tj --24.1777 -1.9 TD -(Similarly, )Tj -/TT4 1 Tf -4.4295 0 TD -0.096 Tw -(USE A B C FOR D AND X Y Z FOR W)Tj -/TT2 1 Tf -18.3338 0 TD -[( is equivalent to)]TJ -/TT4 1 Tf --22.7633 -1.2 TD -0.059 Tw -(USE A FOR D AND X FOR W)Tj -/TT2 1 Tf -13.8573 0 TD -(, followed by )Tj -/TT4 1 Tf -6.0134 0 TD -(USE B FOR D AND Y)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 7412 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -0.097 Tw -(FOR W)Tj -/TT2 1 Tf -3.4295 0 TD -(, followed by )Tj -/TT4 1 Tf -6.1274 0 TD -(USE C FOR D AND Z FOR W)Tj -/TT2 1 Tf -14.0672 0 TD -(. )Tj -/TT4 1 Tf -1.0275 0 TD -(USE A B C)Tj --24.6516 -1.2 TD -0.075 Tw -(FOR D AND X FOR Y)Tj -/TT2 1 Tf -10.2085 0 TD -[( also corresponds to three substitutions, the)]TJ --10.2085 -1.2 TD -0.046 Tw -(first with )Tj -/TT4 1 Tf -4.0368 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( and )]TJ -/TT4 1 Tf -2.3161 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -(, the second with )Tj -/TT4 1 Tf -7.9662 0 TD -0 Tw -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -(, and )Tj -/TT4 1 Tf -2.5939 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -(,)Tj --29.7284 -1.2 TD -0.016 Tw -(and the third with )Tj -/TT4 1 Tf -7.9576 0 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -0.016 Tw -[( for )]TJ -/TT4 1 Tf -1.7547 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.016 Tw -(, and again )Tj -/TT4 1 Tf -5.2746 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.016 Tw -[( for )]TJ -/TT4 1 Tf -1.7547 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.016 Tw -[(. However, )]TJ -/TT4 1 Tf -5.383 0 TD -(USE A B C)Tj --24.9027 -1.2 TD -0 Tw -(FOR D AND X Y FOR Z)Tj -/TT2 1 Tf -10.7222 0 TD -( is ambiguous and will cause an error.)Tj --10.7222 -1.9 TD -0.06 Tw -(Essentially, the )Tj -/TT4 1 Tf -7.1234 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.06 Tw -[( command operates by proceeding from left to)]TJ --9.1796 -1.2 TD -0.264 Tw -(right handling each )Tj -/TT4 1 Tf -9.5205 0 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -0.264 Tw -[( separately. Whenever the number of)]TJ --11.687 -1.2 TD -0.054 Tw -(expressions exceeds the number of expressions available, multiple)Tj -/TT4 1 Tf -T* -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.17 Tw -[( expressions are generated. Thus )]TJ -/TT4 1 Tf -16.4731 0 TD -(USE A B C D FOR E F)Tj -/TT2 1 Tf --18.5293 -1.2 TD -0.085 Tw -(means substitute )Tj -/TT4 1 Tf -8.0074 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.085 Tw -[( for )]TJ -/TT4 1 Tf -1.8927 0 TD -0 Tw -(E)Tj -/TT2 1 Tf -0.667 0 TD -0.085 Tw -[( at the same time as substituting )]TJ -/TT4 1 Tf -15.2132 0 TD -0 Tw -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.085 Tw -[( for )]TJ -/TT4 1 Tf -1.8927 0 TD -0 Tw -(F)Tj -/TT2 1 Tf -0.6108 0 TD -(,)Tj --29.728 -1.2 TD -0.049 Tw -(then in another copy of the indicated expression, substitute )Tj -/TT4 1 Tf -26.7911 0 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -0.049 Tw -[( for )]TJ -/TT4 1 Tf -1.8207 0 TD -0 Tw -(E)Tj -/TT2 1 Tf --29.3339 -1.2 TD -(and )Tj -/TT4 1 Tf -2.0323 0 TD -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.086 Tw -[( for )]TJ -/TT4 1 Tf -1.8947 0 TD -0 Tw -(F)Tj -/TT2 1 Tf -0.6108 0 TD -0.086 Tw -(. This is also equivalent to )Tj -/TT4 1 Tf -12.2997 0 TD -(USE A C FOR E AND B D)Tj --17.5596 -1.2 TD -0 Tw -(FOR F)Tj -/TT2 1 Tf -2.9995 0 TD -(.)Tj --2.9995 -1.9 TD -[(Note:)-609.9(The )]TJ -/TT4 1 Tf -5.254 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.253 Tw -[( command correctly handles the situation where)]TJ --4.3101 -1.2 TD -0.147 Tw -(one of the old expressions is the same as one of the new)Tj -T* -0 Tw -(ones, )Tj -/TT4 1 Tf -2.7241 0 TD -(USE X Y FOR Y X)Tj -/TT2 1 Tf -8.2241 0 TD -(, or )Tj -/TT4 1 Tf -1.7227 0 TD -(USE X FOR Y AND Y FOR X)Tj -/TT2 1 Tf -13.0571 0 TD -(. )Tj -ET -258.01 531.49 m -558.01 531.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 505.2 Tm -0.0002 Tc -(? )Tj -/TT2 1 Tf -0.8888 0 TD -0 Tc -(&OPTIONAL )Tj -/TT6 1 Tf -6.0015 0 TD -(NAME)Tj -/TT2 1 Tf -28.5627 0 TD -([Exec command])Tj -ET -129.01 502.49 m -558.01 502.49 l -S -BT -10 0 0 10 258 487.2 Tm -(If )Tj -/TT6 1 Tf -0.8765 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.043 Tw -[( is not provided describes all available Exec commands by)]TJ --3.7657 -1.2 TD -0.226 Tw -[(printing the name, argument list, and description of each. With)]TJ -/TT6 1 Tf -T* -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -(, only that command is described.)Tj -ET -258.01 458.49 m -558.01 458.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 432.2 Tm -(??)Tj -/TT2 1 Tf -1.2217 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(EventSpec)Tj -/TT2 1 Tf -33.9535 0 TD -([Exec command])Tj -ET -129.01 429.49 m -558.01 429.49 l -S -BT -10 0 0 10 258 414.2 Tm -(Prints the most recent event matching the given )Tj -/TT6 1 Tf -21.3999 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(.)Tj -ET -258.01 409.49 m -558.01 409.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 383.2 Tm -(CONN)Tj -/TT2 1 Tf -2.9443 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DIRECTORY)Tj -/TT2 1 Tf -32.2308 0 TD -([Exec command])Tj -ET -129.01 380.49 m -558.01 380.49 l -S -BT -10 0 0 10 258 365.2 Tm -(Changes default pathname to )Tj -/TT6 1 Tf -13.3984 0 TD -(DIRECTORY)Tj -/TT2 1 Tf -5.8892 0 TD -(.)Tj -ET -258.01 360.49 m -558.01 360.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 334.2 Tm -(DA)Tj -/TT2 1 Tf -35.453 0 TD -([Exec command])Tj -ET -129.01 331.49 m -558.01 331.49 l -S -BT -10 0 0 10 258 316.2 Tm -(Returns current date and time.)Tj -ET -258.01 311.49 m -558.01 311.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 285.2 Tm -(DIR )Tj -/TT2 1 Tf -2 0 TD -(&OPTIONAL )Tj -/TT6 1 Tf -6.0015 0 TD -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(KEYWORDS)Tj -/TT2 1 Tf -18.0057 0 TD -([Exec command])Tj -ET -129.01 282.49 m -558.01 282.49 l -S -BT -10 0 0 10 258 267.2 Tm -0.527 Tw -(Shows a directory listing for )Tj -/TT6 1 Tf -15.1399 0 TD -0 Tw -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -0.527 Tw -[( or the connected)]TJ --20.696 -1.2 TD -0.353 Tw -[(directory. If provided, )]TJ -/TT6 1 Tf -11.3051 0 TD -0 Tw -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -0.353 Tw -[( indicate information to be)]TJ --17.139 -1.2 TD -0.406 Tw -[(displayed for each file. Some keywords are: AUTHOR, AU,)]TJ -T* -0 Tw -(CREATIONDATE, DA, etc.)Tj -ET -258.01 226.49 m -558.01 226.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 200.2 Tm -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -( &ENVIRONMENT )Tj -/TT6 1 Tf -8.6118 0 TD -(ENV)Tj -/TT2 1 Tf -13.4505 0 TD -([Exec command])Tj -ET -129.01 197.49 m -558.01 197.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 182.2 Tm -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -0.332 Tw -[( is intended as a way of putting together several)]TJ --5.834 -1.2 TD -0.245 Tw -[(different events, which can include commands. It executes the)]TJ -T* -0 Tw -(multiple )Tj -/TT6 1 Tf -3.9146 0 TD -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -0.191 Tw -[( as a single event. The values returned by the)]TJ -/TT4 1 Tf --7.5816 -1.2 TD -0 Tw -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -0.313 Tw -[( event are the concatenation of the values of the)]TJ --5.834 -1.2 TD -0.158 Tw -[(inputs. An input is not an EventSpec, but a call to a function or)]TJ -T* -0.012 Tw -[(command. If )]TJ -/TT6 1 Tf -6.0936 0 TD -0 Tw -(ENV)Tj -/TT2 1 Tf -2.0562 0 TD -0.012 Tw -[( is provided it is a lexical environment in which all)]TJ --8.1498 -1.2 TD -0.374 Tw -[(evaluations \(functions and commands\) will take place. Event)]TJ -T* -0.172 Tw -(specification in the )Tj -/TT6 1 Tf -9.0209 0 TD -0 Tw -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -0.172 Tw -[( should be explicit, not relative, since)]TJ --12.6879 -1.2 TD -0.098 Tw -(referring to the last event will reinvoke the executing )Tj -/TT4 1 Tf -24.172 0 TD -0 Tw -(DO-EVENTS)Tj -/TT2 1 Tf --24.172 -1.2 TD -(command.)Tj -ET -258.01 69.49 m -558.01 69.49 l -S -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -30 0 obj -<< -/Length 5963 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(FIX)Tj -/TT2 1 Tf -1.5557 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -24.8934 Tw -[( [Exec )24893.4(command])]TJ -ET -129.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -0.142 Tw -[(Edits the specified event prior to reexecuting it. If the number of)]TJ -0 -1.2 TD -0.801 Tw -(characters in the )Tj -/TT4 1 Tf -10.0734 0 TD -0 Tw -(Fix)Tj -/TT2 1 Tf -1.4448 0 TD -0.801 Tw -(ed line is less than the variable)Tj -/TT4 1 Tf --11.5182 -1.2 TD -0 Tw -(TTYINFIXLIMIT)Tj -/TT2 1 Tf -7.0547 0 TD -0.172 Tw -[( then it will be edited using TTYIN, otherwise the)]TJ --7.0547 -1.2 TD -0 Tw -(Lisp editor is called via )Tj -/TT4 1 Tf -10.3384 0 TD -(EDITE)Tj -/TT2 1 Tf -2.9448 0 TD -(.)Tj -ET -258.01 671.49 m -558.01 671.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 645.2 Tm -0.0001 Tc -(FORGET )Tj -/TT2 1 Tf -4.4448 0 TD -0 Tc -(&REST )Tj -/TT6 1 Tf -3.6118 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -22.2821 Tw -[( [Exec )22282.1(command])]TJ -ET -129.01 642.49 m -558.01 642.49 l -S -BT -10 0 0 10 258 627.2 Tm -0 Tw -(Erases )Tj -/TT4 1 Tf -3.3901 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( information for the specified events.)Tj -ET -258.01 622.49 m -558.01 622.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 596.2 Tm -(NAME)Tj -/TT2 1 Tf -2.944 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(COMMAND-NAME)Tj -/TT2 1 Tf -8.4995 0 TD -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -0.5056 Tw -[( [Exec )505.6(command])]TJ -ET -129.01 593.49 m -558.01 593.49 l -S -BT -10 0 0 10 258 578.2 Tm -1.073 Tw -(Defines a new command, )Tj -/TT6 1 Tf -15.853 0 TD -0 Tw -(COMMAND-NAME)Tj -/TT2 1 Tf -8.4995 0 TD -1.073 Tw -(, and its)Tj -/TT6 1 Tf --24.3525 -1.2 TD -0 Tw -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -(, containing the events in )Tj -/TT6 1 Tf -11.6186 0 TD -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -(.)Tj -ET -258.01 561.49 m -558.01 561.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 535.2 Tm -(NDIR)Tj -/TT2 1 Tf -2.444 0 TD -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -11.1721 Tw -[( [Exec )11172.1(command])]TJ -ET -129.01 532.49 m -558.01 532.49 l -S -BT -10 0 0 10 258 517.2 Tm -0.011 Tw -(Shows a directory listing for )Tj -/TT6 1 Tf -12.5599 0 TD -0 Tw -(PATHNAME)Tj -/TT2 1 Tf -5.5561 0 TD -0.011 Tw -[( or the connected directory)]TJ --18.116 -1.2 TD -0.713 Tw -[(in abbreviated format. If provided, )]TJ -/TT6 1 Tf -19.7306 0 TD -0 Tw -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -0.713 Tw -[( indicate)]TJ --25.5646 -1.2 TD -0.266 Tw -[(information to be displayed for each file. Some keywords are:)]TJ -T* -0 Tw -(AUTHOR, AU, CREATIONDATE, DA, etc.)Tj -ET -258.01 476.49 m -558.01 476.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 450.2 Tm -(PL)Tj -/TT2 1 Tf -1.278 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(SYMBOL)Tj -/TT2 1 Tf -4.168 0 TD -29.4514 Tw -[( [Exec )29451.4(command])]TJ -ET -129.01 447.49 m -558.01 447.49 l -S -BT -10 0 0 10 258 432.2 Tm -0 Tw -(Prints the property list of )Tj -/TT6 1 Tf -11.0601 0 TD -(SYMBOL)Tj -/TT2 1 Tf -4.168 0 TD -( in an easy to read format.)Tj -ET -258.01 427.49 m -558.01 427.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 401.2 Tm -(REMEMBER)Tj -/TT2 1 Tf -5.8335 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -19.0619 Tw -[( [Exec )19061.9(command])]TJ -ET -129.01 398.49 m -558.01 398.49 l -S -BT -10 0 0 10 258 383.2 Tm -0.132 Tw -[(Tells File Manager to remember type-in from specified event\(s\) ,)]TJ -/TT6 1 Tf -0 -1.2 TD -0 Tw -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -( , as expressions to save.)Tj -ET -258.01 366.49 m -558.01 366.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 340.2 Tm -(SHH)Tj -/TT2 1 Tf -2.111 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(LINE)Tj -/TT2 1 Tf -2.2231 0 TD -26.9514 Tw -[( [Exec )26951.4(command])]TJ -ET -129.01 337.49 m -558.01 337.49 l -S -BT -10 0 0 10 258 322.2 Tm -0 Tw -(Executes )Tj -/TT6 1 Tf -4.3911 0 TD -(LINE)Tj -/TT2 1 Tf -2.2231 0 TD -( without history list processing.)Tj -ET -258.01 317.49 m -558.01 317.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 291.2 Tm -(UNDO )Tj -/TT2 1 Tf -3.2222 0 TD -(&REST )Tj -/TT6 1 Tf -3.6118 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -23.5048 Tw -[( [Exec )23504.8(command])]TJ -ET -129.01 288.49 m -558.01 288.49 l -S -BT -10 0 0 10 258 273.2 Tm -0.187 Tw -(Undoes the side effects of the specified event \(see below under)Tj -0 -1.2 TD -0 Tw -("Undoing"\).)Tj -ET -258.01 256.49 m -558.01 256.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 230.2 Tm -(PP)Tj -/TT2 1 Tf -1.334 0 TD -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(TYPES)Tj -/TT2 1 Tf -3.2788 0 TD -17.5043 Tw -[( [Exec )17504.3(command])]TJ -ET -129.01 227.49 m -558.01 227.49 l -S -BT -10 0 0 10 258 212.2 Tm -0 Tw -(Shows \(prettyprinted\) the definitions for )Tj -/TT6 1 Tf -17.6753 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( specified by )Tj -/TT6 1 Tf -5.8364 0 TD -(TYPES)Tj -/TT2 1 Tf -3.2788 0 TD -(.)Tj -ET -258.01 207.49 m -558.01 207.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 181.2 Tm -(SEE)Tj -/TT2 1 Tf -2.001 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -26.5057 Tw -[( [Exec )26505.7(command])]TJ -ET -129.01 178.49 m -558.01 178.49 l -S -BT -10 0 0 10 258 163.2 Tm -0 Tw -(Prints the contents of )Tj -/TT6 1 Tf -9.6719 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -( in the Exec window, hiding comments.)Tj -ET -258.01 158.49 m -558.01 158.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 132.2 Tm -(SEE*)Tj -/TT2 1 Tf -2.39 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -26.1167 Tw -[( [Exec )26116.7(command])]TJ -ET -129.01 129.49 m -558.01 129.49 l -S -BT -10 0 0 10 258 114.2 Tm -0.499 Tw -(Prints the contents of )Tj -/TT6 1 Tf -11.6679 0 TD -0 Tw -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -0.499 Tw -[( in the Exec window, showing)]TJ --14.4467 -1.2 TD -0 Tw -(comments.)Tj -ET -258.01 97.49 m -558.01 97.49 l -S -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -33 0 obj -<< -/Length 5635 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(TIME)Tj -/TT2 1 Tf -2.389 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -( &KEY )Tj -/TT6 1 Tf -3.2236 0 TD -(REPEAT)Tj -/TT2 1 Tf -4.001 0 TD -( &ENVIRONMENT )Tj -/TT6 1 Tf -8.6118 0 TD -(ENV)Tj -/TT2 1 Tf -2.0562 0 TD -11.6719 Tw -[( [Exec )11671.9(command])]TJ -ET -129.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -0.252 Tw -(Times the evaluation of )Tj -/TT6 1 Tf -11.6247 0 TD -0 Tw -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -0.252 Tw -[( in the lexical environment )]TJ -/TT6 1 Tf -13.0993 0 TD -0 Tw -(ENV)Tj -/TT2 1 Tf -2.0562 0 TD -(,)Tj --29.724 -1.2 TD -(repeating )Tj -/TT6 1 Tf -4.4518 0 TD -(REPEAT)Tj -/TT2 1 Tf -4.001 0 TD -0.0002 Tc -0.0038 Tw -( number of times. Information is displayed in the)Tj --8.4527 -1.2 TD -0 Tc -0 Tw -(Exec window.)Tj -ET -258.01 683.49 m -558.01 683.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 657.2 Tm -(TY)Tj -/TT2 1 Tf -1.278 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -27.2287 Tw -[( [Exec )27228.7(command])]TJ -ET -129.01 654.49 m -558.01 654.49 l -S -BT -10 0 0 10 258 639.2 Tm -0 Tw -(Exactly like the )Tj -/TT4 1 Tf -6.9473 0 TD -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -( Exec command.)Tj -ET -258.01 634.49 m -558.01 634.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 608.2 Tm -(TYPE)Tj -/TT2 1 Tf -2.612 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -25.8947 Tw -[( [Exec )25894.7(command])]TJ -ET -129.01 605.49 m -558.01 605.49 l -S -BT -10 0 0 10 258 590.2 Tm -0 Tw -(Prints the contents of )Tj -/TT6 1 Tf -9.6719 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -( in the Exec window, hiding comments.)Tj -ET -258.01 585.49 m -558.01 585.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 561.64 Tm -(Variables)Tj -ET -54.01 558.49 m -558.01 558.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 543.2 Tm -(A number of variables are provided for convenience in the Exec.)Tj -/TT4 1 Tf --12.9 -3 TD -(IL:IT)Tj -/TT2 1 Tf -2.111 0 TD -( )Tj -36.565 0 TD -([Variable])Tj -ET -129.01 510.49 m -558.01 510.49 l -S -BT -10 0 0 10 258 495.2 Tm -0.014 Tw -(Whenever an event is completed, the global value of the variable )Tj -/TT4 1 Tf -29.1159 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf --29.1159 -1.2 TD -(is reset to the events value. For example,)Tj -8 0 0 8 258 466.2 Tm -(312>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 466.2 Tm -(\(SQRT 2\))Tj --1.802 -1 TD -(1.)Tj -/TT8 1 Tf -0.834 0 TD -(414214)Tj -/TT2 1 Tf -8 0 0 8 258 444.91 Tm -(313>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 444.91 Tm -(\(SQRT IL:IT\))Tj -/TT8 1 Tf --1.802 -0.871 TD -(1.189207)Tj -/TT2 1 Tf -0 -1.829 TD -0.055 Tw -(Following a )Tj -/TT4 1 Tf -5.4459 0 TD -0 Tw -(??)Tj -/TT2 1 Tf -1.2217 0 TD -0.055 Tw -[( command, )]TJ -/TT4 1 Tf -5.3341 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.055 Tw -[( is set to the value of the last event)]TJ --14.1121 -1.2 TD -0.013 Tw -[(printed. The inspector has an option for setting the variable )]TJ -/TT4 1 Tf -26.7699 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.013 Tw -[( to)]TJ --28.8803 -1.2 TD -0.027 Tw -(the current selection or inspected object, as well. The variable )Tj -/TT4 1 Tf -27.8955 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf --27.8955 -1.2 TD -0.189 Tw -(is global, and is shared among all Execs. )Tj -/TT4 1 Tf -20.3778 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.189 Tw -[( is a convenient)]TJ --22.4881 -1.2 TD -0 Tw -(mechanism for passing values from one process to another.)Tj -0 -1.9 TD -(Note:)Tj -/TT4 1 Tf -3 0 TD -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.215 Tw -[( is in the INTERLISP package and these examples are)]TJ --0.8887 -1.2 TD -0.199 Tw -(intended for an Exec whose )Tj -/TT4 1 Tf -13.6141 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -0.199 Tw -[( is set to )]TJ -/TT4 1 Tf -5.2743 0 TD -0 Tw -(XCL-)Tj --24.6672 -1.2 TD -(USER)Tj -/TT2 1 Tf -2.7783 0 TD -(. Thus, )Tj -/TT4 1 Tf -3.6123 0 TD -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -( must be package qualified \(the)Tj -/TT4 1 Tf -13.8975 0 TD -( IL:)Tj -/TT2 1 Tf -1.4995 0 TD -(\).)Tj -ET -258.01 322.2 m -558.01 322.2 l -S -BT -10 0 0 10 258 306.91 Tm -0.379 Tw -(The following variables are maintained independently by each)Tj -0 -1.2 TD -0.003 Tw -(Exec. \(When a new Exec is started, the initial values are )Tj -/TT4 1 Tf -25.2112 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.003 Tw -(, or, for)Tj --26.8221 -1.2 TD -0.161 Tw -(a nested Exec, the value for the "parent" Exec. However, events)Tj -T* -0 Tw -(executed under a nested Exec will not affect the parent values.\))Tj -/TT4 1 Tf --12.9 -3 TD -(CL:-)Tj -/TT2 1 Tf -1.999 0 TD -( )Tj -36.677 0 TD -([Variable])Tj -ET -129.01 238.2 m -558.01 238.2 l -S -BT -/TT4 1 Tf -10 0 0 10 129 211.91 Tm -(CL:+)Tj -/TT2 1 Tf -2.25 0 TD -( )Tj -36.426 0 TD -([Variable])Tj -ET -129.01 209.2 m -558.01 209.2 l -S -BT -/TT4 1 Tf -10 0 0 10 129 182.91 Tm -(CL:++)Tj -/TT2 1 Tf -2.834 0 TD -( )Tj -35.842 0 TD -([Variable])Tj -ET -129.01 180.2 m -558.01 180.2 l -S -BT -/TT4 1 Tf -10 0 0 10 129 153.91 Tm -(CL:+++)Tj -/TT2 1 Tf -3.418 0 TD -( )Tj -35.258 0 TD -([Variable])Tj -ET -129.01 151.2 m -558.01 151.2 l -S -BT -10 0 0 10 258 135.91 Tm -0.012 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT4 1 Tf -25.59 0 TD -0 Tw -(-)Tj -/TT2 1 Tf -0.333 0 TD -0.012 Tw -[( is bound)]TJ --25.923 -1.2 TD -0.186 Tw -(to the form, )Tj -/TT4 1 Tf -5.8934 0 TD -0 Tw -(CL:+)Tj -/TT2 1 Tf -2.25 0 TD -0.186 Tw -[( is bound to the previous form, )]TJ -/TT4 1 Tf -15.0315 0 TD -0 Tw -(CL:++)Tj -/TT2 1 Tf -2.834 0 TD -0.186 Tw -[( the one)]TJ --26.0089 -1.2 TD -0.149 Tw -(before, etc. If the input is in apply-format rather than eval-format,)Tj -T* -0 Tw -(the value of the respective variable is just the function name.)Tj -ET -258.01 95.2 m -558.01 95.2 l -S -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -36 0 obj -<< -/Length 5306 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(CL:*)Tj -/TT2 1 Tf -2.055 0 TD -( )Tj -36.621 0 TD -([Variable])Tj -ET -129.01 727.49 m -558.01 727.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 701.2 Tm -(CL:**)Tj -/TT2 1 Tf -2.444 0 TD -( )Tj -36.232 0 TD -([Variable])Tj -ET -129.01 698.49 m -558.01 698.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 672.2 Tm -(CL:***)Tj -/TT2 1 Tf -2.833 0 TD -( )Tj -35.843 0 TD -([Variable])Tj -ET -129.01 669.49 m -558.01 669.49 l -S -BT -10 0 0 10 258 654.2 Tm -0.124 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT4 1 Tf -26.822 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -0.124 Tw -[( is)]TJ --28.8772 -1.2 TD -0.156 Tw -(bound to the \(first\) value returned by the last event, )Tj -/TT4 1 Tf -24.4619 0 TD -0 Tw -(CL:**)Tj -/TT2 1 Tf -2.4443 0 TD -0.156 Tw -[( to the)]TJ --26.9062 -1.2 TD -0.046 Tw -(event before that, etc. The variable )Tj -/TT4 1 Tf -16.0074 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -0.046 Tw -[( differs from )]TJ -/TT4 1 Tf -5.6946 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.046 Tw -[( in that )]TJ -/TT4 1 Tf -3.4178 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.046 Tw -[( is)]TJ --28.9524 -1.2 TD -0.16 Tw -(global while each separate Exec maintains its own copy of )Tj -/TT4 1 Tf -27.6698 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -(,)Tj -/TT4 1 Tf --29.725 -1.2 TD -(CL:**)Tj -/TT2 1 Tf -2.4443 0 TD -0.032 Tw -[( and )]TJ -/TT4 1 Tf -2.2881 0 TD -0 Tw -(CL:***)Tj -/TT2 1 Tf -2.8335 0 TD -0.032 Tw -(. In addition, the history commands change )Tj -/TT4 1 Tf -19.5682 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.032 Tw -(, but)Tj --28.0229 -1.2 TD -0 Tw -(only inputs which are retained on the history list can change )Tj -/TT4 1 Tf -26.7378 0 TD -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -(.)Tj -ET -258.01 589.49 m -558.01 589.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 563.2 Tm -(CL:/)Tj -/TT2 1 Tf -1.9438 0 TD -0.0003 Tc -( )Tj -36.7321 0 TD -0 Tc -([Variable])Tj -ET -129.01 560.49 m -558.01 560.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 534.2 Tm -(CL://)Tj -/TT2 1 Tf -2.2217 0 TD -0.0005 Tc -( )Tj -36.4543 0 TD -0 Tc -([Variable])Tj -ET -129.01 531.49 m -558.01 531.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 505.2 Tm -(CL:///)Tj -/TT2 1 Tf -2.4995 0 TD -0.0007 Tc -( )Tj -36.1765 0 TD -0 Tc -([Variable])Tj -ET -129.01 502.49 m -558.01 502.49 l -S -BT -10 0 0 10 258 487.2 Tm -0.156 Tw -(While a form is being evaluated by an Exec, the variable )Tj -/TT4 1 Tf -26.8962 0 TD -0 Tw -(CL:/)Tj -/TT2 1 Tf -1.9438 0 TD -0.156 Tw -[( is)]TJ --28.84 -1.2 TD -0.069 Tw -(bound to a list of the results of the last event in that Exec, )Tj -/TT4 1 Tf -26.592 0 TD -0 Tw -(CL://)Tj -/TT2 1 Tf -2.2217 0 TD -0.069 Tw -[( to)]TJ --28.8137 -1.2 TD -0 Tw -(the values of the event before that, etc. )Tj -ET -258.01 458.49 m -558.01 458.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 434.64 Tm -(Fonts in the Exec)Tj -ET -54.01 431.49 m -558.01 431.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 412.2 Tm -0.121 Tw -(The Exec can use different fonts for displaying the prompt, users)Tj -T* -0.081 Tw -(input, intermediate printout, and the values returned by evaluation.)Tj -T* -0 Tw -(The following variables control the Execs font use:)Tj -/TT4 1 Tf --12.9 -3 TD -(PROMPTFONT)Tj -/TT2 1 Tf -6.9995 0 TD -[( )-31120.8([Variable])]TJ -ET -129.01 355.49 m -558.01 355.49 l -S -BT -10 0 0 10 258 340.2 Tm -(Font used for printing the event prompt.)Tj -ET -258.01 335.49 m -558.01 335.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 309.2 Tm -(INPUTFONT)Tj -/TT2 1 Tf -5.7217 0 TD -( )Tj -32.9543 0 TD -([Variable])Tj -ET -129.01 306.49 m -558.01 306.49 l -S -BT -10 0 0 10 258 291.2 Tm -(Font used for echoing users type-in.)Tj -ET -258.01 286.49 m -558.01 286.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 260.2 Tm -(PRINTOUTFONT)Tj -/TT2 1 Tf -7.8325 0 TD -[( )-30287.8([Variable])]TJ -ET -129.01 257.49 m -558.01 257.49 l -S -BT -10 0 0 10 258 242.2 Tm -0.154 Tw -(Font used for any intermediate printing caused by execution of a)Tj -0 -1.2 TD -0.672 Tw -(command or evaluation of a form. Initially the same as)Tj -/TT4 1 Tf -T* -0 Tw -(DEFAULTFONT)Tj -/TT2 1 Tf -7.3877 0 TD -(.)Tj -ET -258.01 213.49 m -558.01 213.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 187.2 Tm -(VALUEFONT)Tj -/TT2 1 Tf -6.1108 0 TD -( )Tj -32.5652 0 TD -([Variable])Tj -ET -129.01 184.49 m -558.01 184.49 l -S -BT -10 0 0 10 258 169.2 Tm -0.246 Tw -(Font used to print the values returned by evaluation of a form.)Tj -0 -1.2 TD -0 Tw -(Initially the same as )Tj -/TT4 1 Tf -9.0596 0 TD -(DEFAULTFONT)Tj -/TT2 1 Tf -7.3877 0 TD -(.)Tj -ET -258.01 152.49 m -558.01 152.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 128.64 Tm -(Changing the Exec)Tj -ET -54.01 125.49 m -558.01 125.49 l -S -BT -10 0 0 10 129 99.2 Tm -(\(CHANGESLICE )Tj -/TT6 1 Tf -7.8892 0 TD -(N HISTORY )Tj -/TT4 1 Tf -6.7227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-23008.5([Function])]TJ -ET -129.01 96.49 m -558.01 96.49 l -S -BT -10 0 0 10 258 77.2 Tm -0.201 Tw -(Changes the time-slice of the history list )Tj -/TT6 1 Tf -19.3591 0 TD -0 Tw -(HISTORY)Tj -/TT2 1 Tf -4.4448 0 TD -0.201 Tw -[( to )]TJ -/TT6 1 Tf -1.7916 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.201 Tw -(. If )Tj -/TT4 1 Tf -1.7912 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(,)Tj -/TT6 1 Tf --29.7198 -1.2 TD -(HISTORY)Tj -/TT2 1 Tf -4.4448 0 TD -( defaults to the top level history )Tj -/TT4 1 Tf -14.0635 0 TD -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -(.)Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -39 0 obj -<< -/Length 5884 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.073 Tw -[(Note:)-609.9(The effect of )]TJ -/TT6 1 Tf -9.0554 0 TD -0 Tw -(increasing)Tj -/TT2 1 Tf -4.5581 0 TD -0.073 Tw -[( the time-slice is gradual: the history)]TJ --10.6135 -1.2 TD -0.227 Tw -(list is simply allowed to grow to the corresponding length)Tj -T* -0.13 Tw -(before any events are forgotten. )Tj -/TT6 1 Tf -15.5114 0 TD -0 Tw -(Decreasing)Tj -/TT2 1 Tf -5.0581 0 TD -0.13 Tw -[( the time-slice)]TJ --20.5695 -1.2 TD -0.298 Tw -(will immediately remove a sufficient number of the older)Tj -T* -0.31 Tw -(events to bring the history list down to the proper size.)Tj -T* -0 Tw -(However, )Tj -/TT4 1 Tf -4.5475 0 TD -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.046 Tw -[( is undoable, so that these events)]TJ --11.8258 -1.2 TD -0.318 Tw -[(are \(temporarily\) recoverable. Therefore, if you want to)]TJ -T* -0.268 Tw -(recover the storage associated with these events without)Tj -T* -0 Tw -(waiting )Tj -/TT6 1 Tf -3.4246 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.034 Tw -[( more events until the )]TJ -/TT4 1 Tf -10.0084 0 TD -0 Tw -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.034 Tw -[( event drops)]TJ --21.4335 -1.2 TD -0 Tw -(off the history list, you must perform a )Tj -/TT4 1 Tf -16.9507 0 TD -(FORGET)Tj -/TT2 1 Tf -4.1665 0 TD -( command.)Tj -ET -258.01 617.49 m -558.01 617.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 593.64 Tm -(Defining New Commands)Tj -ET -54.01 590.49 m -558.01 590.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 571.2 Tm -1.3159 Tw -(You can define new Exec commands using the)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -( macro.)Tj -/TT4 1 Tf --22.5655 -3 TD -(\(XCL:DEFCOMMAND )Tj -/TT6 1 Tf -10.2758 0 TD -(NAME ARGUMENT-LIST &REST BODY)Tj -/TT4 1 Tf -18.0576 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-10343.9([Macro])]TJ -ET -129.01 526.49 m -558.01 526.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 511.2 Tm -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.204 Tw -[( is similar to )]TJ -/TT4 1 Tf -6.3722 0 TD -0 Tw -(XCL:DEFMACRO)Tj -/TT2 1 Tf -8.1104 0 TD -0.204 Tw -(, but defines)Tj --24.148 -1.2 TD -0.094 Tw -(new Exec commands. The )Tj -/TT6 1 Tf -12.4365 0 TD -0 Tw -(ARGUMENT-LIST)Tj -/TT2 1 Tf -8.167 0 TD -0.094 Tw -[( can have keywords,)]TJ --20.6035 -1.2 TD -0.171 Tw -(defstructure, and use all of the features of macro argument lists.)Tj -T* -0 Tw -(When )Tj -/TT6 1 Tf -2.9351 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.045 Tw -[( is subsequently typed to the Exec, the rest of the line)]TJ --5.8243 -1.2 TD -0.267 Tw -(is processed like the arguments to a macro, and the )Tj -/TT6 1 Tf -25.9044 0 TD -0 Tw -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.267 Tw -[( is)]TJ --28.7384 -1.2 TD -0 Tw -(executed. )Tj -/TT4 1 Tf -4.7173 0 TD -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.103 Tw -[( is a definer; the File Manager will)]TJ --14.3828 -1.2 TD -0.122 Tw -(remember typed-in definitions and allow them to be saved, edited)Tj -T* -0 Tw -(with )Tj -/TT4 1 Tf -2.0562 0 TD -(EDITDEF)Tj -/TT2 1 Tf -4.2778 0 TD -(, etc.)Tj --6.334 -1.9 TD -0.149 Tw -(There are actually three kinds of commands that can be defined,)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(:EVAL)Tj -/TT2 1 Tf -3 0 TD -(, )Tj -/TT4 1 Tf -0.6907 0 TD -(:QUIET)Tj -/TT2 1 Tf -3.3887 0 TD -0.135 Tw -(, and )Tj -/TT4 1 Tf -2.772 0 TD -0 Tw -(:INPUT)Tj -/TT2 1 Tf -3.333 0 TD -0.135 Tw -(. Commands can also be marked as)Tj --13.1843 -1.2 TD -0.504 Tw -(only for the debugger, in which case they are labelled as)Tj -/TT4 1 Tf -T* -0 Tw -(:DEBUGGER)Tj -/TT2 1 Tf -6.1113 0 TD -0.138 Tw -(. The command type is noted by supplying a list for)Tj --6.1113 -1.2 TD -0 Tw -(the )Tj -/TT6 1 Tf -2.104 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.436 Tw -[( argument to )]TJ -/TT4 1 Tf -7.2001 0 TD -0 Tw -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.436 Tw -(, where the first)Tj --21.8587 -1.2 TD -0.115 Tw -(element of the list is the command name, and the other elements)Tj -T* -0 Tw -(are keyword\(s\) for the command type and, optionally )Tj -/TT4 1 Tf -23.5669 0 TD -(:DEBUGGER)Tj -/TT2 1 Tf -6.1113 0 TD -(. )Tj --29.6782 -1.9 TD -0.087 Tw -[(Note:)-1209.9(The documentation string in user defined Exec commands)]TJ -ET -570 331.98 0.99 -18.99 re -f -BT -10 0 0 10 294 305.2 Tm -0.213 Tw -(is automatically added to the documentation descriptions)Tj -ET -570 312.98 0.99 -11.99 re -f -BT -10 0 0 10 294 293.2 Tm -0.912 Tw -(by the )Tj -/TT4 1 Tf -4.826 0 TD -0 Tw -(CL:DOCUMENTATION)Tj -/TT2 1 Tf -10.5542 0 TD -0.912 Tw -[( function under the)]TJ -ET -570 300.98 0.99 -11.99 re -f -BT -10 0 0 10 294 281.2 Tm -0.241 Tw -(COMMANDS type and can be shown using the )Tj -/TT4 1 Tf -23.0496 0 TD -0 Tw -(?)Tj -/TT2 1 Tf -0.6108 0 TD -0.241 Tw -[( Exec)]TJ -ET -570 288.98 0.99 -11.99 re -f -BT -10 0 0 10 294 269.2 Tm -0 Tw -(command. )Tj -ET -570 276.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 210 250.2 Tm -(:EVAL)Tj -/TT2 1 Tf -4.8 0 TD -0.125 Tw -(This is the default. The body of the command just gets executed,)Tj -0 -1.2 TD -0.187 Tw -(and its value is the value of the event. For example \(in an XCL)Tj -T* -0 Tw -(Exec\),)Tj -/TT4 1 Tf --12.9 -3 TD -(\(DEFCOMMAND \(LS :EVAL\))Tj -0 -1.2 TD -(\(&OPTIONAL \(NAMESTRING *DEFAULT-PATHNAME-DEFAULTS*\))Tj -T* -(&REST DIRECTORY-KEYWORDS\))Tj -T* -(\(MAPC)Tj -4.5 -1.2 TD -(#\(LAMBDA \(PATHNAME\) \(FORMAT T "~&~A" \(NAMESTRING PATHNAME\)\)\))Tj -T* -(\(APPLY #DIRECTORY NAMESTRING DIRECTORY-KEYWORDS\)\))Tj --4.5 -1.2 TD -(\(VALUES\)\))Tj -/TT2 1 Tf -12.9 -1.7 TD -0.036 Tw -(would define the )Tj -/TT4 1 Tf -7.669 0 TD -0 Tw -(LS)Tj -/TT2 1 Tf -1.2778 0 TD -0.036 Tw -[( command to print out all file names that match)]TJ --8.9469 -1.2 TD -0.132 Tw -(the input namestring. The )Tj -/TT4 1 Tf -12.1457 0 TD -0 Tw -(\(VALUES\))Tj -/TT2 1 Tf -4.7222 0 TD -0.132 Tw -[( means that no value will be)]TJ --16.8678 -1.2 TD -0.486 Tw -(printed by the event, only the intermediate output from the)Tj -/TT4 1 Tf -T* -0 Tw -(FORMAT)Tj -/TT2 1 Tf -4.2769 0 TD -(.)Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -44 0 obj -<< -/Length 5615 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 206.11 730.2 Tm -(:QUIET)Tj -/TT2 1 Tf -5.189 0 TD -0.264 Tw -(These commands are evaluated, but neither your input nor the)Tj -0 -1.2 TD -0.06 Tw -(results of the command are stored on the history list. For example,)Tj -T* -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(??)Tj -/TT2 1 Tf -1.2217 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(SHH)Tj -/TT2 1 Tf -2.1113 0 TD -( commands are quiet.)Tj -/TT4 1 Tf --12.3581 -1.9 TD -(:INPUT)Tj -/TT2 1 Tf -5.133 0 TD -0.299 Tw -(These commands work more like macros, in that the result of)Tj -0 -1.2 TD -0.078 Tw -(evaluating the command is treated as a new line of input. The )Tj -/TT4 1 Tf -28.4521 0 TD -0 Tw -(FIX)Tj -/TT2 1 Tf --28.4521 -1.2 TD -0.133 Tw -(command is an input command. The result is treated as a line; a)Tj -T* -0.014 Tw -(single expression in EVAL-format should be returned as a list of the)Tj -T* -0 Tw -(expression to )Tj -/TT4 1 Tf -6.2256 0 TD -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -(.)Tj -ET -258.01 634.49 m -558.01 634.49 l -S -BT -10 0 0 10 258 619.2 Tm -0.221 Tw -(The new Exec now will not consider unparenthesized input with)Tj -ET -570 633.98 0.99 -18.99 re -f -BT -10 0 0 10 258 607.2 Tm -0.123 Tw -[(more than one argument to be in apply format. This is the same)]TJ -ET -570 614.98 0.99 -11.99 re -f -BT -10 0 0 10 258 595.2 Tm -0 Tw -(behavior as the older execs, e.g.:)Tj -ET -570 602.98 0.99 -11.99 re -f -BT -10 0 0 10 258 576.2 Tm -[(list\(1\))-2355.7(; is apply format \(executes after close paren is typed\))]TJ -ET -570 590.98 0.99 -18.99 re -f -BT -10 0 0 10 258 557.2 Tm -0.194 Tw -[(list )194(\(1\))-2077.8(; is apply format \(second arg is a list, no trailing args)]TJ -ET -570 571.98 0.99 -18.99 re -f -BT -10 0 0 10 312 545.2 Tm -0 Tw -(given\))Tj -ET -570 552.98 0.99 -11.99 re -f -BT -10 0 0 10 258 526.2 Tm -[(list \(1\) 2 3)-187.7(;)0( is NOT apply format, arguments are evaluated)]TJ -ET -570 540.98 0.99 -18.99 re -f -BT -10 0 0 10 258 507.2 Tm -[(list 1 2 3)-1075.9(;)0( is NOT apply format, arguments are evaluated)]TJ -ET -570 521.98 0.99 -18.99 re -f -BT -10 0 0 10 258 488.2 Tm -[(list 1)-2743.8(;)0( not legal input: second argument is not a list)]TJ -ET -570 502.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 460.64 Tm -(Undoing)Tj -ET -54.01 457.49 m -558.01 457.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 442.2 Tm -0.297 Tw -[(Note:)-609.9(This discussion only applies to undoing under the Exec,)]TJ -3 -1.2 TD -0.07 Tw -(Debugger and within the UNDOABLY macro; editors handle)Tj -T* -0 Tw -(undoing in a different fashion.)Tj --3 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.228 Tw -[( UNDO)]TJ -/TT2 1 Tf -3.4502 0 TD -[( facility allows recording of destructive changes such)]TJ --5.1733 -1.2 TD -0.02 Tw -[(that they can be played back to restore a previous state. There are)]TJ -T* -0.243 Tw -(two kinds of )Tj -/TT4 1 Tf -6.2871 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.243 Tw -[(ing: one is done by the Exec, the other is)]TJ --9.2314 -1.2 TD -0.216 Tw -[(available for use in a programmers code. Both methods share)]TJ -T* -0.319 Tw -(information about what kind of operations can be undone and)Tj -T* -0 Tw -(where the changes are recorded.)Tj -/TT4 1 Tf -12 0 0 12 54 311.64 Tm -(Undoing in the Exec)Tj -ET -54.01 308.49 m -558.01 308.49 l -S -BT -10 0 0 10 129 282.2 Tm -(UNDO)Tj -/TT2 1 Tf -2.944 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(EventSpec)Tj -/TT2 1 Tf -32.2312 0 TD -([Exec command])Tj -ET -129.01 279.49 m -558.01 279.49 l -S -BT -10 0 0 10 258 264.2 Tm -0.367 Tw -(The Execs )Tj -/TT4 1 Tf -5.9581 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.367 Tw -[( command is implemented by watching the)]TJ --8.9025 -1.2 TD -0.387 Tw -(evaluation of forms and requiring undoable operations in that)Tj -T* -0.06 Tw -(evaluation to save enough information on the history list to reverse)Tj -T* -0.121 Tw -[(their side effects. The Exec simply executes operations, and any)]TJ -T* -0.011 Tw -(undoable changes that occur are automatically saved on the history)Tj -T* -0.138 Tw -[(list by the responsible functions. The )]TJ -/TT4 1 Tf -17.697 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.138 Tw -[( command works on)]TJ --20.6413 -1.2 TD -0.032 Tw -(itself the same way: it recovers the saved information and performs)Tj -T* -0.11 Tw -[(the corresponding inverses. Thus, )]TJ -/TT4 1 Tf -16.1691 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.11 Tw -[( is effective on itself, so)]TJ --19.1135 -1.2 TD -0 Tw -(that you can )Tj -/TT4 1 Tf -5.7261 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( an )Tj -/TT4 1 Tf -1.668 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -(, and )Tj -/TT4 1 Tf -2.502 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( that, etc.)Tj --18.729 -1.9 TD -0.074 Tw -(Only when you attempt to undo an operation does the Exec check)Tj -0 -1.2 TD -0.059 Tw -[(to see whether any information has been saved. If none has been)]TJ -T* -0.406 Tw -(saved, and you have specifically named the event you want)Tj -T* -0.282 Tw -(undone, the Exec types )Tj -/TT4 1 Tf -11.8575 0 TD -(nothing saved)Tj -/TT2 1 Tf -7.0603 0 TD -[(. \(When you just type)]TJ -/TT4 1 Tf --18.9178 -1.2 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -(, the Exec only tries to undo the last operation.\))Tj -/TT4 1 Tf --2.9443 -1.9 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.351 Tw -[( watches evaluation using)]TJ -/TT4 1 Tf -12.5047 0 TD -[( CL:EVALHOOK)]TJ -/TT2 1 Tf -7.9618 0 TD -[( \(thus, calling)]TJ -/TT4 1 Tf --23.4108 -1.2 TD -0 Tw -(CL:EVALHOOK)Tj -/TT2 1 Tf -7.333 0 TD -0.093 Tw -[( cannot be undone\). Each form given to )]TJ -/TT4 1 Tf -18.9039 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.093 Tw -[( is)]TJ -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -47 0 obj -<< -/Length 4758 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.654 Tw -(examined against the list )Tj -/TT4 1 Tf -13.9002 0 TD -0 Tw -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -0.654 Tw -[( to see if it has a)]TJ --18.7898 -1.2 TD -0.034 Tw -[(corresponding undoable version. If an undoable version of a call is)]TJ -T* -0.095 Tw -(found, it is called with the same arguments instead of the original.)Tj -T* -0.171 Tw -(Therefore, before evaluating all subforms of your input, the Exec)Tj -T* -0.331 Tw -(substitutes the corresponding undoable call for any destructive)Tj -T* -0.13 Tw -[(operation. For example, if you type )]TJ -/TT4 1 Tf -16.8626 0 TD -(\(DEFUN FOO ...\))Tj -/TT2 1 Tf -7.926 0 TD -[(, undoable)]TJ --24.7887 -1.2 TD -0.039 Tw -(versions of the forms that set the definition into the symbol function)Tj -T* -0.26 Tw -(cell are evaluated. )Tj -/TT4 1 Tf -9.7119 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.26 Tw -(s function definition itself is not made)Tj --11.8784 -1.2 TD -0 Tw -(undoable.)Tj -ET -258.01 629.49 m -558.01 629.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 605.64 Tm -(Undoing in Programs)Tj -ET -54.01 602.49 m -558.01 602.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 583.2 Tm -0.156 Tw -[(There are two ways to make a program undoable. The simplest)]TJ -T* -0.144 Tw -(method is to wrap the programs form in the )Tj -/TT4 1 Tf -20.86 0 TD -0 Tw -(UNDOABLY)Tj -/TT2 1 Tf -5.6665 0 TD -0.144 Tw -[( macro.)]TJ --26.5265 -1.2 TD -0.252 Tw -(The other is to call undoable versions of destructive operations)Tj -T* -0 Tw -(directly.)Tj -/TT4 1 Tf --12.9 -3 TD -(\(XCL:UNDOABLY )Tj -/TT6 1 Tf -8.6098 0 TD -(&REST FORMS)Tj -/TT4 1 Tf -7.2227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-22844.8([Macro])]TJ -ET -129.01 514.49 m -558.01 514.49 l -S -BT -10 0 0 10 258 499.2 Tm -0.338 Tw -(Executes the forms in )Tj -/TT6 1 Tf -11.2451 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.338 Tw -[( using undoable versions of all)]TJ --14.8559 -1.2 TD -0.764 Tw -[(destructive operations. This is done by "walking" \(see)]TJ -/TT4 1 Tf -T* -0 Tw -(WALKFORM)Tj -/TT2 1 Tf -5.9429 0 TD -0.26 Tw -(\) all of the )Tj -/TT6 1 Tf -5.7089 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.26 Tw -[( and rewriting them to use the)]TJ --15.2627 -1.2 TD -0.046 Tw -(undoable versions of destructive operations \()Tj -/TT4 1 Tf -20.1304 0 TD -0 Tw -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -0.046 Tw -[( makes the)]TJ --25.02 -1.2 TD -0 Tw -(association\).)Tj -ET -258.01 446.49 m -558.01 446.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 420.2 Tm -(\(STOP-UNDOABLY)Tj -/TT6 1 Tf -9.055 0 TD -( &REST FORMS)Tj -/TT2 1 Tf -7.5005 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(\))Tj -/TT2 1 Tf -22.7327 0 TD -([Macro])Tj -ET -129.01 417.49 m -558.01 417.49 l -S -BT -10 0 0 10 258 402.2 Tm -0.245 Tw -(Normally executes as )Tj -/TT4 1 Tf -10.5719 0 TD -0 Tw -(PROGN)Tj -/TT2 1 Tf -3.667 0 TD -0.245 Tw -(; however, within an )Tj -/TT4 1 Tf -10.0957 0 TD -0 Tw -(UNDOABLY)Tj -/TT2 1 Tf --24.3346 -1.2 TD -0.049 Tw -(form, explicitly causes )Tj -/TT6 1 Tf -10.2056 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.049 Tw -[( not to be done undoably. Turns off)]TJ --13.8164 -1.2 TD -0.271 Tw -(rewriting of the )Tj -/TT6 1 Tf -7.6494 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.271 Tw -[( to be undoable inside an )]TJ -/TT4 1 Tf -13.0796 0 TD -0 Tw -(UNDOABLY)Tj -/TT2 1 Tf --24.3399 -1.2 TD -(macro.)Tj -ET -258.01 361.49 m -558.01 361.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54.03 337.64 Tm -(Undoable Versions of Common Functions)Tj -ET -54.01 334.49 m -558.01 334.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 315.2 Tm -0.609 Tw -(Efficiency and overhead are serious considerations for the)Tj -T* -0.216 Tw -[(execution of a user program. Thus, the programmer may need)]TJ -T* -0.026 Tw -(more control over the saving of undo information than that provided)Tj -T* -0 Tw -(by the )Tj -/TT4 1 Tf -3.002 0 TD -(UNDOABLY)Tj -/TT2 1 Tf -5.6665 0 TD -( macro. )Tj --8.6685 -1.9 TD -0.412 Tw -(To make a function undoable, you can simply substitute the)Tj -0 -1.2 TD -0.072 Tw -(corresponding undoable function if you want to make a destructive)Tj -T* -0.352 Tw -(operation in your own program undoable. When the undoable)Tj -T* -0.181 Tw -(function is called, it will save the undo information in the current)Tj -T* -0 Tw -(event on the history list.)Tj -0 -1.9 TD -0.173 Tw -(Various operations, most notably )Tj -/TT4 1 Tf -15.5333 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.173 Tw -(, have undoable versions.)Tj --18.089 -1.2 TD -0 Tw -(The following undoable macros are initially available:)Tj -/TT4 1 Tf -0 -1.7 TD -(UNDOABLY-POP)Tj -0 -1.5 TD -(UNDOABLY-PUSH)Tj -T* -(UNDOABLY-PUSHNEW)Tj -T* -(UNDOABLY-REMF)Tj -T* -(UNDOABLY-ROTATEF)Tj -T* -(UNDOABLY-SHIFTF)Tj -T* -(UNDOABLY-DECF)Tj -T* -(UNDOABLY-INCF)Tj -ET -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -50 0 obj -<< -/Length 3278 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(UNDOABLY-SET-SYMBOL)Tj -0 -1.5 TD -(UNDOABLY-MAKUNBOUND)Tj -T* -(UNDOABLY-FMAKUNBOUND)Tj -T* -(UNDOABLY-SETQ)Tj -T* -(XCL:UNDOABLY-SETF)Tj -T* -(UNDOABLY-PSETF)Tj -T* -(UNDOABLY-SETF-SYMBOL-FUNCTION)Tj -T* -(UNDOABLY-SETF-MACRO-FUNCTION)Tj -/TT2 1 Tf -0 -1.7 TD -0.221 Tw -[(Note:)-609.9(Many destructive Common Lisp functions do not currently)]TJ -3 -1.2 TD -0.243 Tw -(have undoable versions, e.g.,)Tj -/TT4 1 Tf -13.7935 0 TD -[( CL:NREVERSE)]TJ -/TT2 1 Tf -7.6883 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.7987 0 TD -(CL:SORT)Tj -/TT2 1 Tf -4.4438 0 TD -(,)Tj --26.7243 -1.2 TD -0.171 Tw -(etc. The current list of undoable functions is saved on the)Tj -T* -0 Tw -(association list )Tj -/TT4 1 Tf -6.7808 0 TD -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 544.64 Tm -(Modifying the UNDO Facility)Tj -ET -54.01 541.49 m -558.01 541.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 522.2 Tm -0.146 Tw -(You will usually wish to extend the )Tj -/TT4 1 Tf -16.4746 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.146 Tw -[( facility after creating a)]TJ --19.419 -1.2 TD -0.008 Tw -(form whose side effects it might be desirable to undo, for instance a)Tj -T* -0 Tw -(file renaming function.)Tj -0 -1.9 TD -0.082 Tw -[(An undoable version of the function needs to be written. This can)]TJ -0 -1.2 TD -0.071 Tw -(be done by explicitly saving previous state information away, or by)Tj -T* -0.126 Tw -[(renaming calls in the function to their undoable equivalent. Undo)]TJ -T* -0.881 Tw -(information should be saved on the history list using)Tj -/TT4 1 Tf -T* -0 Tw -(IL:UNDOSAVE)Tj -/TT2 1 Tf -6.8892 0 TD -(.)Tj --6.8892 -1.9 TD -0.13 Tw -(You must then hook the undoable version of the function into the)Tj -0 -1.2 TD -0.404 Tw -[(undo facility. You do this by either using the )]TJ -/TT4 1 Tf -23.8852 0 TD -0 Tw -(IL:LISPXFNS)Tj -/TT2 1 Tf --23.8852 -1.2 TD -0.454 Tw -(association list, or in the case of a )Tj -/TT4 1 Tf -18.9176 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.454 Tw -[( modifier, on the)]TJ -/TT4 1 Tf --21.4733 -1.2 TD -0 Tw -(IL:UNDOABLE-SETF-INVERSE)Tj -/TT2 1 Tf -14.5 0 TD -( property of the )Tj -/TT4 1 Tf -7.0039 0 TD -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -( function.)Tj -/TT4 1 Tf --36.9596 -3 TD -(LISPXFNS)Tj -/TT2 1 Tf -38.676 0 TD -([Variable])Tj -ET -129.01 343.49 m -558.01 343.49 l -S -BT -10 0 0 10 258 324.2 Tm -0.705 Tw -(Contains an association list which maps from destructive)Tj -0 -1.2 TD -0 Tw -(operations to their undoable form. Initially this list contains:)Tj -/TT4 1 Tf -0 -1.7 TD -(\(\(CL:POP . UNDOABLY-POP\))Tj -0 -1.5 TD -( \(CL:PSETF . NDOABLY-PSETF\))Tj -T* -( \(CL:PUSH . UNDOABLY-PUSH\))Tj -T* -( \(CL:PUSHNEW . UNDOABLY-PUSHNEW\))Tj -T* -( \(\(CL:REMF\) . UNDOABLY-REMF\))Tj -T* -( \(CL:ROTATEF . UNDOABLY-ROTATEF\))Tj -T* -( \(CL:SHIFTF . UNDOABLY-SHIFTF\))Tj -T* -( \(CL:DECF . UNDOABLY-DECF\))Tj -T* -( \(CL:INCF . UNDOABLY-INCF\))Tj -T* -( \(CL:SET . UNDOABLY-SET-SYMBOL\))Tj -T* -( \(CL:MAKUNBOUND . UNDOABLY-MAKUNBOUND\))Tj -T* -( \(CL:FMAKUNBOUND . UNDOABLY-FMAKUNBOUND\))Tj -/TT2 1 Tf -T* -(. . . plus the original Interlisp undo associations\))Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -53 0 obj -<< -/Length 7764 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(\(XCL:UNDOABLY-SETF)Tj -/TT6 1 Tf -11.221 0 TD -( PLACE VALUE ...)Tj -/TT2 1 Tf -8.2256 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(\))Tj -/TT2 1 Tf -19.8416 0 TD -([Macro])Tj -ET -129.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -(Like )Tj -/TT4 1 Tf -2.5923 0 TD -(CL:SETF)Tj -/TT2 1 Tf -4.2217 0 TD -0.48 Tw -[( but saves information so it may be undone.)]TJ -/TT4 1 Tf --6.814 -1.2 TD -0 Tw -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -0.316 Tw -[( uses undoable versions of the setf function)]TJ --8.5552 -1.2 TD -0.573 Tw -(located on the )Tj -/TT4 1 Tf -8.2795 0 TD -0 Tw -(UNDOABLE-SETF-INVERSE)Tj -/TT2 1 Tf -13.2783 0 TD -0.573 Tw -[( property of the)]TJ --21.5579 -1.2 TD -0.143 Tw -(function being )Tj -/TT4 1 Tf -6.7909 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.143 Tw -[(ed. Initially these )]TJ -/TT4 1 Tf -8.5764 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.143 Tw -[( names have such a)]TJ --20.4786 -1.2 TD -0 Tw -(property:)Tj -/TT4 1 Tf -0 -1.9 TD -2.084 Tw -(CL:SYMBOL-FUNCTION - UNDOABLY-SETF-SYMBOL-)Tj -0 -1.2 TD -0 Tw -(FUNCTION)Tj -0 -1.9 TD -(CL:MACRO-FUNCTION - UNDOABLY-SETF-MACRO-FUNCTION)Tj -ET -258.01 609.49 m -558.01 609.49 l -S -BT -10 0 0 10 129 583.2 Tm -(\(UNDOABLY-SETQ )Tj -/TT6 1 Tf -9.3328 0 TD -(&REST FORMS)Tj -/TT4 1 Tf -7.2227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-21064.8([Function])]TJ -ET -129.01 580.49 m -558.01 580.49 l -S -BT -10 0 0 10 258 565.2 Tm -(Typed-in )Tj -/TT4 1 Tf -4.2905 0 TD -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -0.122 Tw -(s \(and )Tj -/TT4 1 Tf -3.3011 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.122 Tw -(s on symbols\) are made undoable by)Tj --12.8699 -1.2 TD -0.588 Tw -(substituting a call to )Tj -/TT4 1 Tf -11.4125 0 TD -0 Tw -(UNDOABLY-SETQ)Tj -/TT2 1 Tf -8.7222 0 TD -(. )Tj -/TT4 1 Tf -1.1437 0 TD -(UNDOABLY-SETQ)Tj -/TT2 1 Tf --21.2784 -1.2 TD -0.295 Tw -(operates like )Tj -/TT4 1 Tf -6.5378 0 TD -0 Tw -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -0.295 Tw -[( on lexical variables or those with dynamic)]TJ --9.2604 -1.2 TD -0.027 Tw -[(bindings; it only saves information on the history list for changes to)]TJ -T* -0 Tw -(global, "top-level" values.)Tj -ET -258.01 512.49 m -558.01 512.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 486.2 Tm -(\(UNDOSAVE )Tj -/TT6 1 Tf -6.2783 0 TD -(UNDOFORM HISTENTRY)Tj -/TT4 1 Tf -11.833 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-19509([Function])]TJ -ET -129.01 483.49 m -558.01 483.49 l -S -BT -10 0 0 10 258 468.2 Tm -0.004 Tw -(Adds the undo information )Tj -/TT6 1 Tf -11.9681 0 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.0005 Tc -0.0035 Tw -( to the )Tj -/TT4 1 Tf -3.0696 0 TD -0 Tc -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.0003 Tc -0.0037 Tw -( property of the)Tj --23.2599 -1.2 TD -0 Tc -0.206 Tw -(history event )Tj -/TT6 1 Tf -6.3593 0 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -0.206 Tw -[(. If there is no )]TJ -/TT4 1 Tf -7.8503 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.206 Tw -[( property, one is)]TJ --22.2105 -1.2 TD -0.378 Tw -[(created. If the value of the )]TJ -/TT4 1 Tf -14.7647 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.378 Tw -[( property is )]TJ -/TT4 1 Tf -6.3581 0 TD -0 Tw -(NOSAVE)Tj -/TT2 1 Tf -4.2231 0 TD -0.378 Tw -(, the)Tj --27.6799 -1.2 TD -0.394 Tw -(information is not saved.)Tj -/TT6 1 Tf -12.0209 0 TD -[( HISTENTRY)]TJ -/TT2 1 Tf -6.3388 0 TD -[( specifies an event. If)]TJ -/TT6 1 Tf --18.3597 -1.2 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.434 Tw -(, the value of )Tj -/TT4 1 Tf -7.7399 0 TD -0 Tw -(LISPXHIST)Tj -/TT2 1 Tf -5.1675 0 TD -0.434 Tw -[( is used. If both)]TJ -/TT6 1 Tf --20.7692 -1.2 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(LISPXHIST)Tj -/TT2 1 Tf -5.1675 0 TD -( are )Tj -/TT4 1 Tf -2.001 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -( is a no-op. )Tj --22.8936 -1.9 TD -0.199 Tw -(The form of )Tj -/TT6 1 Tf -5.9876 0 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.199 Tw -[( is )]TJ -/TT4 1 Tf -1.6758 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN)Tj -/TT4 1 Tf -1.333 0 TD -0.199 Tw -[( . )]TJ -/TT6 1 Tf -1.2315 0 TD -0 Tw -(ARGS)Tj -/TT4 1 Tf -2.834 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.199 Tw -[(. Undoing is done by)]TJ --19.6161 -1.2 TD -0 Tw -(performing )Tj -/TT4 1 Tf -5.0576 0 TD -(\(APPLY \(CAR )Tj -/TT6 1 Tf -6.7222 0 TD -(UNDOFORM)Tj -/TT4 1 Tf -5.8882 0 TD -(\) \(CDR )Tj -/TT6 1 Tf -3.3882 0 TD -(UNDOFORM)Tj -/TT4 1 Tf -5.8882 0 TD -(\)\))Tj -/TT2 1 Tf -0.666 0 TD -(. )Tj -ET -258.01 372.49 m -558.01 372.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 346.2 Tm -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.168 0 TD -[( )-30952.3([Variable])]TJ -ET -129.01 343.49 m -558.01 343.49 l -S -BT -10 0 0 10 258 328.2 Tm -0.624 Tw -(The value of )Tj -/TT4 1 Tf -7.6532 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.624 Tw -[( is the maximum number of)]TJ -/TT6 1 Tf --14.8217 -1.2 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.11 Tw -[(s to be saved for a single event. When the count of)]TJ -/TT6 1 Tf --5.8882 -1.2 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.61 Tw -(s reaches this number, )Tj -/TT4 1 Tf -12.8336 0 TD -0 Tw -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.61 Tw -[( prints the)]TJ --24.3892 -1.2 TD -0 Tw -(message )Tj -/TT4 1 Tf -4.5914 0 TD -0.256 Tw -(CONTINUE SAVING?)Tj -/TT2 1 Tf -10.2008 0 TD -(, asking if you want to continue)Tj --14.7923 -1.2 TD -0.221 Tw -[(saving. If you answer )]TJ -/TT4 1 Tf -11.0542 0 TD -0 Tw -(NO)Tj -/TT2 1 Tf -1.5 0 TD -0.221 Tw -[( or default, )]TJ -/TT4 1 Tf -5.6659 0 TD -0 Tw -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.221 Tw -[( discards the)]TJ --23.8876 -1.2 TD -0.172 Tw -(previously saved information for this event, and makes )Tj -/TT4 1 Tf -25.7769 0 TD -0 Tw -(NOSAVE)Tj -/TT2 1 Tf --25.7769 -1.2 TD -0.31 Tw -(be the value of the property )Tj -/TT4 1 Tf -14.3126 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.31 Tw -(, which disables any further)Tj --16.6466 -1.2 TD -0.009 Tw -[(saving for this event. If you answer )]TJ -/TT4 1 Tf -16.0241 0 TD -0 Tw -(YES)Tj -/TT2 1 Tf -2.001 0 TD -(, )Tj -/TT4 1 Tf -0.5647 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.009 Tw -[( changes the)]TJ --24.2573 -1.2 TD -0.015 Tw -(count to -1, which is then never incremented, and continues saving.)Tj -T* -0.11 Tw -(The purpose of this feature is to avoid tying up large quantities of)Tj -T* -0 Tw -(storage for operations that will never need to be undone.)Tj -0 -1.9 TD -(If )Tj -/TT4 1 Tf -0.9245 0 TD -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.091 Tw -[( is negative, then when the count reaches )]TJ -/TT4 1 Tf -19.4624 0 TD -0 Tw -(\(ABS)Tj --27.5553 -1.2 TD -(\\#UNDOSAVES\))Tj -/TT2 1 Tf -7.5015 0 TD -(, )Tj -/TT4 1 Tf -0.6097 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.054 Tw -[( simply stops saving without printing)]TJ --13.7786 -1.2 TD -0.463 Tw -(any messages or other interactions. )Tj -/TT4 1 Tf -19.175 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.463 Tw -[( is)]TJ --28.5383 -1.2 TD -0.198 Tw -(equivalent to )Tj -/TT4 1 Tf -6.3447 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.198 Tw -(=infinity. )Tj -/TT4 1 Tf -4.6479 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.198 Tw -[( is initially)]TJ -/TT4 1 Tf --25.3296 -1.2 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(.)Tj --1.6108 -1.9 TD -0.271 Tw -(The configuration described here has been found to be a very)Tj -0 -1.2 TD -0.067 Tw -[(satisfactory one. You pay a very small price for the ability to undo)]TJ -T* -0.021 Tw -(what you type in, since the interpreted evaluation is simply watched)Tj -T* -0.188 Tw -(for destructive operations, or if you wish to protect yourself from)Tj -T* -0.258 Tw -(malfunctioning in your own programs, you can explicitly call, or)Tj -T* -0 Tw -(have your program rewritten to explicitly call, undoable functions.)Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -56 0 obj -<< -/Length 7016 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Undoing Out of Order)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -10 0 0 10 258 706.2 Tm -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -0.261 Tw -[( operates undoably by saving \(on the history)]TJ --8.5552 -1.2 TD -0.007 Tw -[(list\) the cell that is to be changed and its original contents. Undoing)]TJ -T* -0 Tw -(an )Tj -/TT4 1 Tf -1.3901 0 TD -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -( restores the saved contents.)Tj --9.9453 -1.9 TD -0.03 Tw -(This implementation can produce unexpected results when multiple)Tj -0 -1.2 TD -0.26 Tw -(modifications are made to the same piece of storage and then)Tj -T* -0.087 Tw -[(undone out of order. For example, if you type )]TJ -/TT4 1 Tf -21.3817 0 TD -(\(SETF \(CAR FOO\))Tj --21.3817 -1.2 TD -0 Tw -(1\))Tj -/TT2 1 Tf -0.8892 0 TD -0.171 Tw -(, followed by )Tj -/TT4 1 Tf -6.3494 0 TD -(\(SETF \(CAR FOO\) 2\))Tj -/TT2 1 Tf -10.1234 0 TD -(, then undo both events by)Tj --17.3619 -1.2 TD -0.1149 Tw -(undoing the most recent event first, then undoing the older event,)Tj -/TT4 1 Tf -T* -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.288 Tw -[( will be restored to its state before either event operated.)]TJ --2.1665 -1.2 TD -0.105 Tw -(However if you undo the first event, )Tj -/TT6 1 Tf -16.6876 0 TD -0 Tw -(then)Tj -/TT2 1 Tf -1.9463 0 TD -0.105 Tw -[( the second event, )]TJ -/TT4 1 Tf -8.8702 0 TD -0 Tw -(\(CAR)Tj --27.5041 -1.2 TD -(FOO\))Tj -/TT2 1 Tf -2.4995 0 TD -0.252 Tw -[( will be )]TJ -/TT4 1 Tf -4.0905 0 TD -0 Tw -(1)Tj -/TT2 1 Tf -0.5562 0 TD -0.252 Tw -(, since this is what was in )Tj -/TT4 1 Tf -13.2684 0 TD -0 Tw -(CAR)Tj -/TT2 1 Tf -2.1665 0 TD -0.252 Tw -[( of )]TJ -/TT4 1 Tf -1.8937 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.252 Tw -[( before)]TJ -/TT4 1 Tf --26.6412 -1.2 TD -0.049 Tw -(\(UNDOABLY-SETF \(CAR FOO\) 2\))Tj -/TT2 1 Tf -15.7569 0 TD -[( was executed. Similarly, if you)]TJ --15.7569 -1.2 TD -0 Tw -(type )Tj -/TT4 1 Tf -2.254 0 TD -0.086 Tw -(\(NCONC FOO \(1\)\))Tj -/TT2 1 Tf -8.7267 0 TD -(, followed by )Tj -/TT4 1 Tf -6.0944 0 TD -(\(NCONC FOO \(2\)\))Tj -/TT2 1 Tf -8.7267 0 TD -(, undoing)Tj --25.8018 -1.2 TD -0 Tw -(just )Tj -/TT4 1 Tf -1.927 0 TD -0.093 Tw -(\(NCONC FOO \(1\)\))Tj -/TT2 1 Tf -8.7407 0 TD -[( will remove both )]TJ -/TT4 1 Tf -8.1528 0 TD -0 Tw -(1)Tj -/TT2 1 Tf -0.5562 0 TD -0.093 Tw -[( and )]TJ -/TT4 1 Tf -2.4101 0 TD -0 Tw -(2)Tj -/TT2 1 Tf -0.5562 0 TD -0.093 Tw -[( from )]TJ -/TT4 1 Tf -2.7417 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.093 Tw -[(. The)]TJ --27.251 -1.2 TD -0.543 Tw -(problem in both cases is that the two operations are not)Tj -T* -0 Tw -(independent.)Tj -0 -1.9 TD -0.477 Tw -(In general, operations are always independent if they affect)Tj -0 -1.2 TD -0.282 Tw -[(different lists or different sublists of the same list. Undoing in)]TJ -T* -0.137 Tw -(reverse order of execution, or undoing independent operations, is)Tj -T* -0.431 Tw -[(always guaranteed to do the right thing. However, undoing)]TJ -T* -0.406 Tw -(dependent operations out of order may not always have the)Tj -T* -0 Tw -(predicted effect.)Tj -/TT4 1 Tf -12 0 0 12 54 412.64 Tm -(Format and Use of the History List)Tj -ET -54.01 409.49 m -558.01 409.49 l -S -BT -10 0 0 10 129 383.2 Tm -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -[( )-30785.9([Variable])]TJ -ET -129.01 380.49 m -558.01 380.49 l -S -BT -10 0 0 10 258 365.2 Tm -0.138 Tw -[(The Exec currently uses one primary history list,)]TJ -/TT4 1 Tf -22.2498 0 TD -[( LISPXHISTORY)]TJ -/TT2 1 Tf --22.2498 -1.2 TD -0 Tw -(for the storing events.)Tj -0 -1.9 TD -0.004 Tw -(The history list is in the form )Tj -/TT4 1 Tf -12.7541 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(EVENTS)Tj -/TT4 1 Tf -4.001 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(EVENT#)Tj -/TT4 1 Tf -3.8901 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(SIZE)Tj -/TT4 1 Tf -2.2227 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(MOD)Tj -/TT4 1 Tf -2.333 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.004 Tw -(, where)Tj -/TT6 1 Tf --26.7124 -1.2 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.0001 Tc -0.0039 Tw -( is a list of events with the most recent event first, )Tj -/TT6 1 Tf -22.1125 0 TD -0 Tc -0 Tw -(EVENT#)Tj -/TT2 1 Tf --26.1134 -1.2 TD -0.036 Tw -(is the event number for the most recent event on )Tj -/TT6 1 Tf -22.1496 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -(, )Tj -/TT6 1 Tf -0.5917 0 TD -(SIZE)Tj -/TT2 1 Tf -2.2227 0 TD -0.036 Tw -[( is)]TJ --28.9648 -1.2 TD -0.138 Tw -(the the maximum length )Tj -/TT6 1 Tf -11.9175 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.138 Tw -[( is allowed to grow. )]TJ -/TT6 1 Tf -9.4717 0 TD -0 Tw -(MOD)Tj -/TT2 1 Tf -2.333 0 TD -0.138 Tw -[( is is)]TJ --27.7233 -1.2 TD -0.071 Tw -(the maximum event number to use, after which event numbers roll)Tj -T* -0 Tw -(over. )Tj -/TT4 1 Tf -2.501 0 TD -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -( is initialized to )Tj -/TT4 1 Tf -6.7808 0 TD -(\(NIL 0 100 1000\))Tj -/TT2 1 Tf -7.5596 0 TD -(.)Tj --24.1758 -1.9 TD -0.013 Tw -[(The history list has a maximum length, called its time-slice. As new)]TJ -0 -1.2 TD -0.115 Tw -(events occur, existing events are aged, and the oldest events are)Tj -T* -0.455 Tw -[(forgotten. The time-slice can be changed with the function)]TJ -/TT4 1 Tf -T* -0 Tw -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.078 Tw -[(. Larger time-slices enable longer memory spans,)]TJ --7.2783 -1.2 TD -0.21 Tw -[(but tie up correspondingly greater amounts of storage. Since a)]TJ -T* -0.144 Tw -[(user seldom needs really ancient history, a relatively small time-)]TJ -T* -0.099 Tw -(slice such as 30 events is usually adequate, although some users)Tj -T* -0 Tw -(prefer to set the time-slice as large as 200 events.)Tj -0 -1.9 TD -0.133 Tw -(Each individual event on )Tj -/TT6 1 Tf -11.6507 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.133 Tw -[( is a list of the form \()]TJ -/TT6 1 Tf -9.9334 0 TD -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( )Tj -/TT6 1 Tf -0.4108 0 TD -(ID)Tj --28.9959 -1.2 TD -(VALUE)Tj -/TT2 1 Tf -3.2793 0 TD -0.045 Tw -[( . )]TJ -/TT6 1 Tf -0.9235 0 TD -0 Tw -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.045 Tw -[(\). For Exec events, )]TJ -/TT6 1 Tf -9.1723 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.045 Tw -[( is a list \()]TJ -/TT6 1 Tf -4.1248 0 TD -0 Tw -(EVENT-NUMBER)Tj --22.0009 -1.2 TD -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.042 Tw -(\). The )Tj -/TT6 1 Tf -2.9736 0 TD -0 Tw -(EVENT-NUMBER)Tj -/TT2 1 Tf -8.0005 0 TD -0.042 Tw -[( is the number of the event, while)]TJ --15.0303 -1.2 TD -0 Tw -(the )Tj -/TT6 1 Tf -1.945 0 TD -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.277 Tw -[( is a string that uniquely identifies the Exec. \(The)]TJ -/TT6 1 Tf --6.0011 -1.2 TD -0 Tw -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.239 Tw -[( is used to identify which events belong to the "same")]TJ --4.0562 -1.2 TD -0.29 Tw -[(Exec.\) )]TJ -/TT6 1 Tf -4.5375 0 TD -0 Tw -(VALUE)Tj -/TT2 1 Tf -3.2793 0 TD -0.29 Tw -[( is the \(first\) value of the event. )]TJ -/TT6 1 Tf -16.2707 0 TD -0 Tw -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.29 Tw -[( is a)]TJ --27.5884 -1.2 TD -0.283 Tw -(property list used to associate other information with the event)Tj -T* -0 Tw -(\(described below\).)Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -59 0 obj -<< -/Length 6290 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 258 730.2 Tm -(INPUT)Tj -/TT2 1 Tf -3 0 TD -0.0001 Tc -0.0029 Tw -( is the input sequence for the event. Normally, this is just the)Tj --3 -1.2 TD -0 Tc -0.012 Tw -[(input that the user typed-in. For an APPLY-format input this is a list)]TJ -T* -0.149 Tw -(consisting of two expressions; for an EVAL-format input, this is a)Tj -T* -0.193 Tw -(list of just one expression; for an input entered as list of atoms,)Tj -/TT6 1 Tf -T* -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( is simply that list. For example,)Tj --3 -1.9 TD -(User Input)Tj -/TT6 1 Tf -15.6 0 TD -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( is:)Tj -/TT4 1 Tf --18.6 -1.9 TD -[(LIST\(1 2\))-11377.3(\(LIST \(1 2\)\))]TJ -T* -[(\(LIST 1 1\))-11099.5(\(\(LIST 1 1\)\))]TJ -0 -2.2 TD -(DIR "{DSK}")Tj -12.062 0.3 TD -(cr)Tj -3.538 -0.3 TD -(\(DIR "{DSK}"\))Tj -/TT2 1 Tf --15.6 -1.9 TD -0.376 Tw -(If you type in an Exec command that executes other events)Tj -0 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -(, )Tj -/TT4 1 Tf -0.8327 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.277 Tw -(, etc.\), several events might result. When there is)Tj --6.111 -1.2 TD -0.026 Tw -(more than one input, they are wrapped together into one invocation)Tj -T* -0 Tw -(of the )Tj -/TT4 1 Tf -2.7798 0 TD -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -( command.)Tj --8.6138 -1.9 TD -0.042 Tw -(The same convention is used for representing multiple inputs when)Tj -0 -1.2 TD -0 Tw -(a )Tj -/TT4 1 Tf -0.882 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.048 Tw -[( command involves sequential substitutions. For example, if)]TJ --2.9381 -1.2 TD -0.06 Tw -(you type )Tj -/TT4 1 Tf -4.1781 0 TD -0 Tw -(FBOUNDP\(FOO\))Tj -/TT2 1 Tf -7.7769 0 TD -0.06 Tw -[( and then )]TJ -/TT4 1 Tf -4.6282 0 TD -(USE FIE FUM FOR FOO)Tj -/TT2 1 Tf -11.4065 0 TD -(, the)Tj --27.9897 -1.2 TD -0.214 Tw -(input sequence that will be constructed is )Tj -/TT4 1 Tf -20.0087 0 TD -(DO-EVENTS \(EVENT)Tj --20.0087 -1.2 TD -0.139 Tw -(FBOUNDP \(FIE\)\) \(EVENT FBOUNDP \(FUM\)\))Tj -/TT2 1 Tf -20.9427 0 TD -(, which is the result)Tj --20.9427 -1.2 TD -0.221 Tw -(of substituting )Tj -/TT4 1 Tf -6.8902 0 TD -0 Tw -(FIE)Tj -/TT2 1 Tf -1.5557 0 TD -0.221 Tw -[( for )]TJ -/TT4 1 Tf -2.1647 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.221 Tw -[( in )]TJ -/TT4 1 Tf -1.776 0 TD -(\(FBOUNDP \(FOO\)\))Tj -/TT2 1 Tf -8.9417 0 TD -[( concatenated)]TJ --23.4948 -1.2 TD -0 Tw -(with the result of substituting )Tj -/TT4 1 Tf -12.8955 0 TD -(FUM)Tj -/TT2 1 Tf -2.166 0 TD -( for )Tj -/TT4 1 Tf -1.7227 0 TD -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -( in )Tj -/TT4 1 Tf -1.334 0 TD -(\(FBOUNDP \(FOO\)\))Tj -/TT2 1 Tf -8.7207 0 TD -(.)Tj -/TT6 1 Tf --29.0054 -1.9 TD -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.4 Tw -[( is a property list of the form)]TJ -/TT4 1 Tf -15.1379 0 TD -0.4 Tc -0 Tw -( \()Tj -/TT6 1 Tf -1.0108 0 TD -0 Tc -(PROPERTY)Tj -8 0 0 8 509.51 435.2 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 513.96 438.2 Tm -( )Tj -/TT6 1 Tf -0.6778 0 TD -(VALUE)Tj -8 0 0 8 553.53 435.2 Tm -(1)Tj -10 0 0 10 258 423.64 Tm -(PROPERTY)Tj -8 0 0 8 313.01 420.64 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 317.46 423.64 Tm -( )Tj -/TT6 1 Tf -0.3998 0 TD -(VALUE)Tj -8 0 0 8 354.25 420.64 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 358.7 423.64 Tm -0.122 Tw -[( ...\))]TJ -/TT2 1 Tf -1.5663 0 TD -(, that can be used to associate arbitrary)Tj --11.6363 -1.456 TD -0.618 Tw -(information with a particular event. Currently, the following)Tj -0 -1.2 TD -0 Tw -(properties are used by the Exec:)Tj -/TT4 1 Tf --4.69 -1.9 TD -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -[( )-1800.4(A list of the side effects of the event. See )]TJ -/TT4 1 Tf -21.0333 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -(.)Tj -/TT4 1 Tf --32.8127 -1.9 TD -(*LISPXPRINT*)Tj -/TT2 1 Tf -8.468 0 TD -0.238 Tw -(Used to record calls to )Tj -/TT4 1 Tf -11.4166 0 TD -0 Tw -(EXEC-FORMAT)Tj -/TT2 1 Tf -7.333 0 TD -0.238 Tw -(, and printed by the )Tj -/TT4 1 Tf -10.0294 0 TD -0 Tw -(??)Tj -/TT2 1 Tf --28.7789 -1.2 TD -(command.)Tj -ET -258.01 342.37 m -558.01 342.37 l -S -BT -/TT4 1 Tf -12 0 0 12 54 318.52 Tm -(Making or Changing an Exec)Tj -ET -54.01 315.37 m -558.01 315.37 l -S -BT -10 0 0 10 129 289.08 Tm -(\(XCL:ADD-EXEC)Tj -/TT2 1 Tf -7.888 0 TD -( &KEY )Tj -/TT6 1 Tf -3.2236 0 TD -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(REGION)Tj -/TT2 1 Tf -3.9448 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(TTY ID)Tj -/TT4 1 Tf -3.1665 0 TD -(\))Tj -/TT2 1 Tf -15.4516 0 TD -([Function])Tj -ET -129.01 286.37 m -558.01 286.37 l -S -BT -10 0 0 10 258 271.08 Tm -0.2309 Tw -(Creates a new process and window with an Exec running in it.)Tj -/TT6 1 Tf -0 -1.2 TD -0 Tw -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -0.128 Tw -[( is the type of the Exec to be created \(see below under)]TJ --4.2788 -1.2 TD -0.141 Tw -(XCL:SET-EXEC-TYPE\). )Tj -/TT6 1 Tf -11.6174 0 TD -0 Tw -(REGION)Tj -/TT2 1 Tf -3.9448 0 TD -0.141 Tw -[( optionally gives the shape and)]TJ --15.5623 -1.2 TD -0.078 Tw -[(location of the window to be used. If not provided the user will be)]TJ -T* -0.01 Tw -(prompted. )Tj -/TT6 1 Tf -5.0781 0 TD -0 Tw -(TTY)Tj -/TT2 1 Tf -1.8887 0 TD -0.01 Tw -[( is a flag, which, if true, causes the tty to be given to)]TJ --6.9668 -1.2 TD -0.161 Tw -(the new Exec process. )Tj -/TT6 1 Tf -11.4212 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.161 Tw -[( is a string identifier to use for events)]TJ --12.4212 -1.2 TD -0.016 Tw -(generated in this exec. )Tj -/TT6 1 Tf -10.6977 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.016 Tw -[( defaults to the number given to the Exec)]TJ --11.6977 -1.2 TD -0 Tw -(process created.)Tj -ET -258.01 182.37 m -558.01 182.37 l -S -BT -/TT4 1 Tf -10 0 0 10 129 156.08 Tm -(\(XCL:EXEC )Tj -/TT6 1 Tf -5.6668 0 TD -(&KEY WINDOW PROMPT COMMAND-TABLES ENVIRONMENT PROFILE TOP-)Tj -7.2332 -1 TD -(LEVEL-P TITLE FUNCTION)Tj -/TT4 1 Tf -12.5576 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(ID)Tj -/TT4 1 Tf -1 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-10884.9([Function])]TJ -ET -129.01 143.37 m -558.01 143.37 l -S -BT -10 0 0 10 258 128.08 Tm -(This is the main entry to the Exec. The arguments are:)Tj -/TT6 1 Tf -0 -1.9 TD -(WINDOW)Tj -/TT2 1 Tf -4.3877 0 TD -0.205 Tw -[( defaults to the current TTY display stream, or can be)]TJ --4.3877 -1.2 TD -0 Tw -(provided a window in which the Exec will run.)Tj -/TT6 1 Tf -0 -1.9 TD -(PROMPT)Tj -/TT2 1 Tf -4.2778 0 TD -( is the prompt to print.)Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -62 0 obj -<< -/Length 4153 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 258 730.2 Tm -(COMMAND-TABLES)Tj -/TT2 1 Tf -9.4453 0 TD -0.548 Tw -[( is a list of hash-tables for looking up)]TJ --9.4453 -1.2 TD -0.374 Tw -(commands \(e.g., )Tj -/TT4 1 Tf -8.4731 0 TD -0 Tw -(*EXEC-COMMAND-TABLE*)Tj -/TT2 1 Tf -12.833 0 TD -0.374 Tw -[( or )]TJ -/TT4 1 Tf -2.1928 0 TD -0 Tw -(*DEBUGGER-)Tj --23.4989 -1.2 TD -(COMMAND-TABLE*)Tj -/TT2 1 Tf -9.3877 0 TD -(\).)Tj -/TT6 1 Tf --9.3877 -1.9 TD -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -( is a lexical environment used to evaluate things in.)Tj -/TT6 1 Tf --7.3892 -1.9 TD -(READTABLE)Tj -/TT2 1 Tf -5.9463 0 TD -0.418 Tw -[( is the default readtable to use \(defaults to the)]TJ --5.9463 -1.2 TD -0 Tw -("Common Lisp" readtable\).)Tj -/TT6 1 Tf -0 -1.9 TD -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -0.224 Tw -[( is a way to set the Execs type \(see above, "Multiple)]TJ --4.2788 -1.2 TD -0 Tw -(Execs and the Execs Type"\).)Tj -/TT6 1 Tf -0 -1.9 TD -(TOP-LEVEL-P)Tj -/TT2 1 Tf -6.502 0 TD -0.073 Tw -[( is a boolean, which should be true if this Exec is at)]TJ --6.502 -1.2 TD -0 Tw -(the top level.)Tj -/TT6 1 Tf -0 -1.9 TD -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -( is an identifying title for the window title of the Exec.)Tj -/TT6 1 Tf --2.7227 -1.9 TD -(FUNCTION)Tj -/TT2 1 Tf -5.166 0 TD -0.015 Tw -[( is a function used to actually evaluate events, default is)]TJ -/TT4 1 Tf --5.166 -1.2 TD -0 Tw -(EVAL-INPUT)Tj -/TT2 1 Tf -6 0 TD -(. )Tj -/TT6 1 Tf --6 -1.9 TD -(ID)Tj -/TT2 1 Tf -1 0 TD -0.051 Tw -[( is a string identifier to use for events generated in this Exec. )]TJ -/TT6 1 Tf -28.006 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf --29.006 -1.2 TD -(defaults to the number given to the Exec process.)Tj -ET -258.01 508.49 m -558.01 508.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 482.2 Tm -(XCL:*PER-EXEC-VARIABLES*)Tj -/TT2 1 Tf -14.334 0 TD -[( )-23786.3([Variable])]TJ -ET -129.01 479.49 m -558.01 479.49 l -S -BT -10 0 0 10 258 464.2 Tm -0.015 Tw -(A list of pairs of the form )Tj -/TT4 1 Tf -11.1646 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(VAR)Tj -/TT4 1 Tf -2.0562 0 TD -( )Tj -/TT6 1 Tf -0.2928 0 TD -(INIT)Tj -/TT4 1 Tf -1.8887 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.015 Tw -(. Each time an Exec is entered,)Tj --16.0682 -1.2 TD -0.364 Tw -(the variables in )Tj -/TT4 1 Tf -8.0959 0 TD -0 Tw -(*PER-EXEC-VARIABLES*)Tj -/TT2 1 Tf -12.002 0 TD -0.364 Tw -[( are rebound to the)]TJ --20.0979 -1.2 TD -0.06 Tw -(value returned by evaluating )Tj -/TT6 1 Tf -13.0818 0 TD -0 Tw -(INIT)Tj -/TT2 1 Tf -1.8887 0 TD -0.06 Tw -(. The initial value of )Tj -/TT4 1 Tf -9.1936 0 TD -0 Tw -(*PER-EXEC-)Tj --24.164 -1.2 TD -(VARIABLES*)Tj -/TT2 1 Tf -6.1675 0 TD -( is:)Tj -/TT10 1 Tf --6.1675 -1.771 TD -(\(\(*PACKAGE* *PACKAGE*\))Tj -0 -1.2 TD -( \(* *\))Tj -T* -( \(** **\))Tj -T* -( \(*** ***\))Tj -T* -( \(+ +\))Tj -T* -( \(++ ++\))Tj -T* -( \(+++ +++\))Tj -T* -( \(- -\))Tj -T* -( \(/ /\))Tj -T* -( \(// //\))Tj -T* -( \(/// ///\))Tj -T* -( \(HELPFLAG T\))Tj -T* -( \(*EVALHOOK* NIL\))Tj -T* -( \(*APPLYHOOK* nil\))Tj -T* -( \(*ERROR-OUPUT* *TERMINAL-IO*\))Tj -T* -( \(*READTABLE* *READTABLE*\))Tj -T* -( \(*package* *package*\))Tj -T* -( \(*eval-function* *eval-function*\))Tj -T* -( \(*exec-prompt* *exec-prompt*\))Tj -T* -( \(*debugger-prompt* *debugger-prompt*\)\))Tj -/TT2 1 Tf -0 -1.829 TD -0.216 Tw -(Most of these cause the values to be \(re\)bound to their current)Tj -0 -1.2 TD -0 Tw -(value in any inferior Exec, or to )Tj -/TT4 1 Tf -14.0068 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, their value at the "top level".)Tj -ET -258.01 147.49 m -558.01 147.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 121.2 Tm -(XCL:*EVAL-FUNCTION*)Tj -/TT2 1 Tf -11.277 0 TD -[( )-26843.3([Variable])]TJ -ET -129.01 118.49 m -558.01 118.49 l -S -BT -10 0 0 10 258 103.2 Tm -0.022 Tw -[(Bound to the function used by the Exec to evaluate input. Typically)]TJ -0 -1.2 TD -0.211 Tw -(in an INTERLISP Exec this is )Tj -/TT4 1 Tf -14.493 0 TD -0 Tw -(IL:EVAL)Tj -/TT2 1 Tf -3.8887 0 TD -0.211 Tw -(, and in a Common Lisp)Tj --18.3817 -1.2 TD -0 Tw -(Exec, )Tj -/TT4 1 Tf -2.7788 0 TD -(CL:EVAL)Tj -/TT2 1 Tf -4.333 0 TD -(.)Tj -ET -258.01 74.49 m -558.01 74.49 l -S -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 64 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -66 0 obj -<< -/Length 5458 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-19)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 730.2 Tm -(XCL:*EXEC-PROMPT*)Tj -/TT2 1 Tf -10.445 0 TD -[( )-27675.3([Variable])]TJ -ET -129.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -0.253 Tw -(Bound to the string printed by the Exec as a prompt for input.)Tj -0 -1.2 TD -0.147 Tw -(Typically in an INTERLISP Exec this is " )Tj -/TT11 1 Tf -19.2033 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.147 Tw -[( ", and in a Common)]TJ --20.1902 -1.2 TD -0 Tw -(Lisp Exec, "> ".)Tj -ET -258.01 683.49 m -558.01 683.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 657.2 Tm -(XCL:*DEBUGGER-PROMPT*)Tj -/TT2 1 Tf -13.5 0 TD -[( )-24620.3([Variable])]TJ -ET -129.01 654.49 m -558.01 654.49 l -S -BT -10 0 0 10 258 639.2 Tm -0.105 Tw -(Bound to the string printed by the debugger Exec as a prompt for)Tj -0 -1.2 TD -0.179 Tw -[(input. Typically in an INTERLISP Exec this is " )]TJ -/TT11 1 Tf -22.8193 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.179 Tw -[( : ", and in a)]TJ --23.8061 -1.2 TD -0 Tw -(Common Lisp Exec, ": ".)Tj -ET -258.01 610.49 m -558.01 610.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 584.2 Tm -(\(XCL:EXEC-EVAL )Tj -/TT6 1 Tf -8.6668 0 TD -(FORM &OPTIONAL ENVIRONMENT)Tj -/TT4 1 Tf -16.6123 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-12341.2([Function])]TJ -ET -129.01 581.49 m -558.01 581.49 l -S -BT -10 0 0 10 258 566.2 Tm -(Evaluates )Tj -/TT6 1 Tf -5.3194 0 TD -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -0.65 Tw -[( \(using )]TJ -/TT4 1 Tf -4.5793 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.65 Tw -(\) in the lexical environment)Tj -/TT6 1 Tf --15.5096 -1.2 TD -0 Tw -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -0.024 Tw -[( the same as though it were typed in to )]TJ -/TT4 1 Tf -17.6946 0 TD -0 Tw -(EXEC)Tj -/TT2 1 Tf -2.7231 0 TD -0.024 Tw -(, i.e.,)Tj --27.8069 -1.2 TD -0.243 Tw -(the event is recorded, and the evaluation is made undoable by)Tj -T* -0.687 Tw -(substituting the UNDOABLE-functions for the corresponding)Tj -T* -0.086 Tw -(destructive functions. )Tj -/TT4 1 Tf -9.8434 0 TD -0 Tw -(XCL:EXEC-EVAL)Tj -/TT2 1 Tf -8.0562 0 TD -0.086 Tw -[( returns the value\(s\) of the)]TJ --17.8995 -1.2 TD -0.011 Tw -(form, but does not print it, and does not reset the variables *, **, ***,)Tj -T* -0 Tw -(etc.)Tj -ET -258.01 489.49 m -558.01 489.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 463.2 Tm -(\(XCL:EXEC-FORMAT )Tj -/TT6 1 Tf -10.277 0 TD -(CONTROL-STRING &REST ARGUMENTS)Tj -/TT4 1 Tf -19.2788 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-8064.5([Function])]TJ -ET -129.01 460.49 m -558.01 460.49 l -S -BT -10 0 0 10 258 445.2 Tm -0.299 Tw -(In addition to saving inputs and values, the Exec saves many)Tj -0 -1.2 TD -0.567 Tw -[(system messages on the history list. For example, )]TJ -/TT4 1 Tf -27.8335 0 TD -0 Tw -(FILE)Tj --27.8335 -1.2 TD -0.589 Tw -(CREATED ...)Tj -/TT2 1 Tf -6.5338 0 TD -0 Tw -(, )Tj -/TT6 1 Tf -1.1447 0 TD -(FN)Tj -/TT4 1 Tf -1.333 0 TD -0.589 Tw -[( redefined)]TJ -/TT2 1 Tf -5.3678 0 TD -0 Tw -(, )Tj -/TT6 1 Tf -1.1447 0 TD -(VAR)Tj -/TT4 1 Tf -2.0562 0 TD -0.589 Tw -[( reset)]TJ -/TT2 1 Tf -3.2575 0 TD -(, output of )Tj -/TT4 1 Tf -6.4926 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -(,)Tj -/TT4 1 Tf --29.7188 -1.2 TD -(BREAKDOWN)Tj -/TT2 1 Tf -6.7217 0 TD -(, )Tj -/TT4 1 Tf -0.5877 0 TD -(ROOM)Tj -/TT2 1 Tf -3.1108 0 TD -0.032 Tw -(, save their output on the history list, so that)Tj --10.4202 -1.2 TD -0 Tw -(when )Tj -/TT4 1 Tf -2.8035 0 TD -(??)Tj -/TT2 1 Tf -1.2217 0 TD -0.135 Tw -[( prints the event, the output is also printed. The function)]TJ -/TT4 1 Tf --4.0251 -1.2 TD -0 Tw -(XCL:EXEC-FORMAT)Tj -/TT2 1 Tf -9.666 0 TD -0.674 Tw -[( can be used in user code similarly.)]TJ -/TT4 1 Tf --9.666 -1.2 TD -0 Tw -(XCL:EXEC-FORMAT)Tj -/TT2 1 Tf -9.666 0 TD -1.814 Tw -[( performs \(APPLY #CL:FORMAT)]TJ --9.666 -1.2 TD -0 Tw -(*TERMINAL-IO* )Tj -/TT6 1 Tf -8.111 0 TD -(CONTROL-STRING)Tj -/TT2 1 Tf -9 0 TD -( )Tj -/TT6 1 Tf -0.8878 0 TD -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -0.61 Tw -(\) and also)Tj --24.388 -1.2 TD -0.01 Tw -(saves the format string and arguments on the history list associated)Tj -T* -0 Tw -(with the current event.)Tj -ET -258.01 332.49 m -558.01 332.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 306.2 Tm -(\(XCL:SET-EXEC-TYPE )Tj -/TT6 1 Tf -10.8898 0 TD -(NAME)Tj -/TT4 1 Tf -2.8892 0 TD -(\))Tj -/TT2 1 Tf -24.73 0 TD -([Function])Tj -ET -129.01 303.49 m -558.01 303.49 l -S -BT -10 0 0 10 258 288.2 Tm -0.072 Tw -(Sets the type of the current Exec to that indicated by )Tj -/TT6 1 Tf -24.25 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.072 Tw -[(. This)]TJ --27.1392 -1.2 TD -0.114 Tw -(can be used to set up the Exec to your liking. )Tj -/TT6 1 Tf -21.8245 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.114 Tw -[( may be an)]TJ --24.7137 -1.2 TD -0 Tw -(atom or string. Possible names are:)Tj -/TT4 1 Tf --8.468 -1.9 TD -(INTERLISP)Tj -/TT2 1 Tf -5.2227 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(IL)Tj -/TT2 1 Tf -2.6897 0 TD -(*READTABLE* INTERLISP)Tj -0 -1.9 TD -(*PACKAGE* INTERLISP)Tj -T* -(XCL:*DEBUGGER-PROMPT* ")Tj -/TT11 1 Tf -13.9683 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(: ")Tj --14.9551 -1.9 TD -(XCL:*EXEC-PROMPT* ")Tj -/TT11 1 Tf -10.9683 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(")Tj --11.9551 -1.9 TD -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj -/TT4 1 Tf --15.412 -1.9 TD -(XEROX-COMMON-LISP)Tj -/TT2 1 Tf -11.0557 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(XCL)Tj -/TT2 1 Tf -3.8007 0 TD -(*READTABLE* XCL)Tj -0 -1.9 TD -(*PACKAGE* XCL-USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 68 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -70 0 obj -<< -/Length 3651 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-20)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 148.89 730.2 Tm -(COMMON-LISP)Tj -/TT2 1 Tf -7.2217 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(CL)Tj -/TT2 1 Tf -3.1337 0 TD -(*READTABLE* LISP)Tj -0 -1.9 TD -(*PACKAGE* USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -/TT4 1 Tf --10.411 -1.9 TD -(OLD-INTERLISP-T)Tj -/TT2 1 Tf -10.411 0 TD -(*READTABLE* OLD-INTERLISP-T)Tj -0 -1.9 TD -(*PACKAGE* INTERLISP)Tj -T* -(XCL:*DEBUGGER-PROMPT* )Tj -/TT11 1 Tf -13.9463 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(: ")Tj --14.9331 -1.9 TD -(XCL:*EXEC-PROMPT* ": ")Tj -T* -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj -ET -258.01 554.49 m -558.01 554.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 528.2 Tm -(\(XCL:SET-DEFAULT-EXEC-TYPE)Tj -/TT2 1 Tf -15.611 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME)Tj -/TT4 1 Tf -2.8892 0 TD -(\))Tj -/TT2 1 Tf -19.731 0 TD -([Function])Tj -ET -129.01 525.49 m -558.01 525.49 l -S -BT -10 0 0 10 258 510.2 Tm -(Like )Tj -/TT4 1 Tf -2.1503 0 TD -(XCL:SET-EXEC-TYPE)Tj -/TT2 1 Tf -10.2788 0 TD -0.038 Tw -[( , but sets the type of Execs created by)]TJ --12.4291 -1.2 TD -0.082 Tw -[(default, as from the background menu. Initially )]TJ -/TT4 1 Tf -21.6672 0 TD -0 Tw -(XCL)Tj -/TT2 1 Tf -2 0 TD -0.082 Tw -[(. This can be)]TJ --23.6672 -1.2 TD -0 Tw -(used in your greet file to set default Execs to your liking.)Tj -ET -258.01 481.49 m -558.01 481.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 457.64 Tm -(Editing Exec Input)Tj -ET -54.01 454.49 m -558.01 454.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 435.2 Tm -0.171 Tw -[(The Exec features an editor for input which provides completion,)]TJ -T* -0.268 Tw -(spelling correction, help facility, and character-level editing. The)Tj -T* -0.067 Tw -(implementation is borrowed from the Interlisp module )Tj -/TT4 1 Tf -24.255 0 TD -0 Tw -(TTYIN)Tj -/TT2 1 Tf -2.8887 0 TD -0.067 Tw -[(. This)]TJ --27.1437 -1.2 TD -0.065 Tw -(section describes the use of the )Tj -/TT4 1 Tf -14.7318 0 TD -0 Tw -(TTYIN)Tj -/TT2 1 Tf -2.8887 0 TD -0.065 Tw -[( editor from the perspective)]TJ --17.6205 -1.2 TD -0 Tw -(of the Exec.)Tj -/TT4 1 Tf -12 0 0 12 54 359.64 Tm -(Editing Your Input)Tj -ET -54.01 356.49 m -558.01 356.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 337.2 Tm -0.215 Tw -(Some editing operations can be performed using any of several)Tj -T* -0.258 Tw -(characters; characters that are interrupts will, of course, not be)Tj -T* -0.159 Tw -[(read, so several alternatives are given. The following characters)]TJ -T* -0 Tw -(may be used to edit your input:)Tj --14.358 -1.9 TD -0.036 Tw -[(CONTROL-A, )35.7(BACKSPACE)-1799.7(Deletes a character. At the start of the second or subsequent lines)]TJ -14.358 -1.2 TD -0 Tw -(of your input, deletes the last character of the previous line.)Tj --7.966 -1.9 TD -0.106 Tw -[(CONTROL-W)-1800(Deletes a "word". Generally this means back to the last space or)]TJ -7.966 -1.2 TD -0 Tw -(parenthesis.)Tj --7.8 -1.9 TD -0.124 Tw -[(CONTROL-Q)-1800(Deletes the current line, or if the current line is blank, deletes the)]TJ -7.8 -1.2 TD -0 Tw -(previous line.)Tj --7.744 -1.9 TD -0.018 Tw -[(CONTROL-R)-1799.7(Refreshes the current line. Two in a row refreshes the whole buffer)]TJ -7.744 -1.2 TD -0 Tw -(\(when doing multiline input\).)Tj --5.857 -1.9 TD -0.635 Tw -[(ESCAPE)-1799.9(Tries to complete the current word from the spelling list)]TJ -/TT4 1 Tf -5.857 -1.2 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.161 Tw -[(. In the case of ambiguity, completes as far as is)]TJ --6.6113 -1.2 TD -0 Tw -(uniquely determined, or beeps.)Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 68 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -73 0 obj -<< -/Length 5568 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-21)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 102.16 730.2 Tm -(UNDO key \(on 1108 and 1186\))Tj -1.724 -1.2 TD -0.061 Tw -[(Middle-blank )61(key )61(\(on )61(1132\))-1798(Retrieves characters from the previous non-empty buffer when it is)]TJ -13.86 -1.2 TD -0.05 Tw -(able to; e.g., when typed at the beginning of the line this command)Tj -T* -0.054 Tw -(restores the previous line you typed; when typed in the middle of a)Tj -T* -0.018 Tw -(line fills in the remaining text from the old line; when typed following)Tj -T* -0.37 Tw -(CONTROL-Q or CONTROL-W restores what those commands)Tj -T* -0 Tw -(erased.)Tj --7.689 -1.9 TD -0.122 Tw -[(CONTROL-X)-1799.8(Goes to the end of your input \(or end of expression if there is an)]TJ -7.689 -1.2 TD -0 Tw -(excess right parenthesis\) and returns if parentheses are balanced.)Tj -0 -1.9 TD -0.2 Tw -(If you are already at the end of the input and the expression is)Tj -0 -1.2 TD -0.338 Tw -[(balanced except for lacking one or more right parentheses,)]TJ -T* -0.034 Tw -[(CONTROL-X adds the required right parentheses to balance and)]TJ -T* -0 Tw -(returns. )Tj -0 -1.9 TD -0.068 Tw -(During most kinds of input, lines are broken, if possible, so that no)Tj -0 -1.2 TD -0.232 Tw -[(word straddles the end of the line. The pseudo-carriage return)]TJ -T* -0.101 Tw -(ending the line is still read as a space, however; i.e., the program)Tj -T* -0.055 Tw -(keeps track of whether a line ends in a carriage return or is merely)Tj -T* -0.059 Tw -[(broken at some convenient point. You will not get carriage returns)]TJ -T* -0 Tw -(in your strings unless you explicitly type them.)Tj -/TT4 1 Tf -12 0 0 12 54 465.64 Tm -(Using the Mouse)Tj -ET -54.01 462.49 m -558.01 462.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 443.2 Tm -0.082 Tw -(Editing with the mouse during TTYIN input is slightly different than)Tj -T* -0.116 Tw -(with other modules. The mouse buttons are interpreted as follows)Tj -T* -0 Tw -(during TTYIN input:)Tj -/TT6 1 Tf --4.245 -1.9 TD -(LEFT)Tj -/TT2 1 Tf -4.245 0 TD -0.042 Tw -[(Moves the caret to where the cursor is pointing. As you hold down)]TJ -/TT6 1 Tf -0 -1.2 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.031 Tw -(, the caret moves around with the cursor; after you let up, any)Tj --2.4448 -1.2 TD -0 Tw -(type-in will be inserted at the new position.)Tj -/TT6 1 Tf --13.163 -1.9 TD -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -(+)Tj -/TT6 1 Tf -0.584 0 TD -(RIGHT)Tj -/TT2 1 Tf -4.911 0 TD -(Like )Tj -/TT6 1 Tf -2.1123 0 TD -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -(, but moves only to word boundaries.)Tj -/TT6 1 Tf --9.4681 -1.9 TD -[(RIGHT)-1800.2(Deletes)]TJ -/TT2 1 Tf -8.3016 0 TD -0.46 Tw -[( text from the caret to the cursor, either forward or)]TJ --3.3906 -1.2 TD -0.115 Tw -[(backward. While you hold down )]TJ -/TT6 1 Tf -15.3087 0 TD -0 Tw -(RIGHT)Tj -/TT2 1 Tf -3.1108 0 TD -0.115 Tw -(, the text to be deleted is)Tj --18.4195 -1.2 TD -0.034 Tw -[(inverted; when you let up, the text goes away. If you let up outside)]TJ -T* -0.093 Tw -(the scope of the text, nothing is deleted \(this is how to cancel this)Tj -T* -0 Tw -(operation\). )Tj -0 -1.9 TD -0.029 Tw -(If you hold down )Tj -/TT6 1 Tf -7.6765 0 TD -0 Tw -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -(, )Tj -/TT6 1 Tf -0.5847 0 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -(, )Tj -/TT6 1 Tf -0.5847 0 TD -(SHIFT)Tj -/TT2 1 Tf -2.8887 0 TD -0.029 Tw -[( or )]TJ -/TT6 1 Tf -1.5028 0 TD -0 Tw -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -0.029 Tw -[( while pressing the)]TJ --21.6275 -1.2 TD -0.57 Tw -(mouse buttons, you instead get secondary selection, move)Tj -T* -0.088 Tw -(selection or delete selection. The selection is made by holding the)Tj -T* -[(appropriate key down while pressing the mouse buttons )]TJ -/TT6 1 Tf -26.0288 0 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.088 Tw -[( \(to)]TJ --28.4736 -1.2 TD -0.188 Tw -(select a character\) or )Tj -/TT6 1 Tf -10.4224 0 TD -0 Tw -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -0.188 Tw -[( \(to select a word\), and optionally)]TJ --14.2007 -1.2 TD -0.027 Tw -(extend the selection either left or right using )Tj -/TT6 1 Tf -19.8386 0 TD -0 Tw -(RIGHT)Tj -/TT2 1 Tf -3.1108 0 TD -0.027 Tw -[(. While you are)]TJ --22.9494 -1.2 TD -0.357 Tw -(doing this, the caret does not move, but the selected text is)Tj -T* -0.069 Tw -[(highlighted in a manner indicating what is about to happen. When)]TJ -T* -0.126 Tw -(the selection is complete, release the mouse buttons and then lift)Tj -T* -0.221 Tw -(up on )Tj -/TT6 1 Tf -3.2223 0 TD -0 Tw -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(SHIFT)Tj -/TT2 1 Tf -2.8887 0 TD -0.221 Tw -[( and the appropriate action will)]TJ --15.3346 -1.2 TD -0 Tw -(occur:)Tj -/TT6 1 Tf --8.968 -1.9 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(SHIFT)Tj -/TT2 1 Tf -4.6892 0 TD -0.311 Tw -[(The selected text is inserted as if it were typed. The text is)]TJ -0 -1.2 TD -0 Tw -(highlighted with a broken underline during selection.)Tj -/TT6 1 Tf --4.411 -1.9 TD -(CTRL)Tj -/TT2 1 Tf -4.411 0 TD -0.249 Tw -[(The selected text is deleted. The text is complemented during)]TJ -0 -1.2 TD -0 Tw -(selection.)Tj -/TT6 1 Tf --12.274 -1.9 TD -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -(+)Tj -/TT6 1 Tf -0.584 0 TD -(SHIFT)Tj -/TT2 1 Tf -4.689 0 TD -(Combines copy and delete. The selected text is moved to the caret.)Tj -ET -endstream -endobj -74 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -77 0 obj -<< -/Length 4056 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-22)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.36 Tw -(You can cancel a selection in progress by pressing )Tj -/TT6 1 Tf -26.0305 0 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.36 Tw -[( or)]TJ -/TT6 1 Tf --28.4753 -1.2 TD -0 Tw -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -( as if to select, and moving outside the range of the text.)Tj --3.7783 -1.9 TD -0.093 Tw -(The most recent text deleted by mouse command can be inserted)Tj -0 -1.2 TD -0.771 Tw -(at the caret by typing the UNDO key \(on the Xerox)Tj -T* -0.304 Tw -(1108/1186/1185\) or the Middle-blank key \(on the Xerox 1132\).)Tj -T* -0.039 Tw -(This is the same key that retrieves the previous buffer when issued)Tj -T* -0 Tw -(at the end of a line.)Tj -/TT4 1 Tf -12 0 0 12 54 623.64 Tm -(Editing Commands)Tj -ET -54.01 620.49 m -558.01 620.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 601.2 Tm -0.226 Tw -(A number of characters have special effects while typing to the)Tj -T* -0.019 Tw -(Exec. Some of them merely move the caret inside the input stream.)Tj -T* -0.134 Tw -(While caret positioning can often be done more conveniently with)Tj -T* -0.199 Tw -(the mouse, some of the commands, such as the case changing)Tj -T* -0 Tw -(commands, can be useful for modifying the input.)Tj -0 -1.9 TD -0.077 Tw -(In the descriptions below, current word means the word the cursor)Tj -0 -1.2 TD -0.363 Tw -[(is under, or if under a space, the previous word. Currently,)]TJ -T* -0.015 Tw -(parentheses are treated as spaces, which is usually what you want,)Tj -T* -0.568 Tw -(but can occasionally cause confusion in the word deletion)Tj -T* -0.546 Tw -[(commands. The notation [)]TJ -/TT6 1 Tf -14.0234 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.546 Tw -(] means meta-)Tj -/TT6 1 Tf -7.4831 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.546 Tw -(. The)Tj --27.1735 -1.2 TD -0.06 Tw -[(notation $ stands for the ESCAPE/EXPAND key. Most commands)]TJ -T* -0.126 Tw -(can be preceded by numbers or escape \(means infinity\), only the)Tj -T* -0.249 Tw -[(first of which requires the meta key \(or the edit prefix\). Some)]TJ -T* -0.079 Tw -(commands also accept negative arguments, but some only look at)Tj -T* -0.265 Tw -[(the magnitude of the argument. Most of these commands are)]TJ -T* -0 Tw -(confined to work within one line of text unless otherwise noted. )Tj -/TT4 1 Tf --20.4 -2.6 TD -(Cursor Movement Commands)Tj -ET -54.01 385.49 m -558.01 385.49 l -S -BT -/TT2 1 Tf -10 0 0 10 223.88 370.2 Tm -[([bs])-1800.2(Backs up one \(or n\) characters.)]TJ --1.612 -1.9 TD -[([space])-1799.9(Moves forward one \(or n\) characters.)]TJ -2.199 -1.9 TD -[([^])-1800.1(Moves up one \(or n\) lines.)]TJ --0.031 -1.9 TD -[([lf])-1800.3(Moves down one \(or n\) lines.)]TJ -0.167 -1.9 TD -[([\(])-1800.3(Moves back one \(or n\) words.)]TJ -T* -[([\)])-1800.3(Moves ahead one \(or n\) words.)]TJ --1.057 -1.9 TD -0.127 Tw -[([tab])-1800.2(Moves to end of line; with an argument moves to nth end of line;)]TJ -3.746 -1.2 TD -0 Tw -([$tab] goes to end of buffer.)Tj --6.246 -1.9 TD -[([control-L])-1799.7(Moves to start of line \(or nth previous, or start of buffer\).)]TJ -0.442 -1.9 TD -0.126 Tw -[([{] )126(and )126([}])-1800.6(Goes to start and end of buffer, respectively \(like [$control-L] and)]TJ -5.804 -1.2 TD -0 Tw -([$tab]\).)Tj --11.914 -1.9 TD -0.221 Tw -[([ )221([ )221(] )221( )221(\(meta-left-bracket\))-1800.7(Moves to beginning of the current list, where cursor is currently)]TJ -11.914 -1.2 TD -0.174 Tw -[(under an element of that list or its closing paren. \(See also the)]TJ -T* -0 Tw -(auto-parenthesis-matching feature below under "Assorted Flags".\))Tj --12.525 -1.9 TD -[([ ] ] \(meta-right-bracket\))-1800.4(Moves to end of current list.)]TJ -9.002 -1.9 TD -0.05 Tw -[([Sx])-1800.3(Skips ahead to next \(or nth\) occurrence of character x, or rings the)]TJ -3.523 -1.2 TD -0 Tw -(bell.)Tj --3.523 -1.9 TD -[([Bx])-1800.3(Backward search, i.e., short for [-S] or [-nS].)]TJ -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -80 0 obj -<< -/Length 4389 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-23)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(Buffer Modification Commands)Tj -ET -54.01 727.49 m -558.01 727.49 l -S -BT -/TT2 1 Tf -10 0 0 10 223.33 712.2 Tm -0.013 Tw -[([Zx])-1800.5(Zaps characters from cursor to next \(or nth\) occurrence of x. There)]TJ -3.467 -1.2 TD -0 Tw -(is no unzap command.)Tj --5.746 -1.9 TD -0.019 Tw -[([A] )19(or )19([R])-1800.7(Repeats the last S, B, or Z command, regardless of any intervening)]TJ -5.746 -1.2 TD -0 Tw -(input.)Tj --3.023 -1.9 TD -0.287 Tw -[([K])-1800.3(Kills the character under the cursor, or n chars starting at the)]TJ -3.023 -1.2 TD -0 Tw -(cursor.)Tj --3.189 -1.9 TD -0.05 Tw -[([cr])-1800.3(When the buffer is empty is the same as undo i.e. restores buffers)]TJ -3.189 -1.2 TD -0.059 Tw -[(previous contents. Otherwise is just like a \(except that it also)]TJ -T* -0.246 Tw -[(terminates an insert\). Thus, [] will repeat the previous)]TJ -T* -0 Tw -(input \(as will undo without the meta key\).)Tj --3.134 -1.9 TD -0.06 Tw -[([O])-1800.5(Does "Open line", inserting a crlf after the cursor, i.e., it breaks the)]TJ -3.134 -1.2 TD -0 Tw -(line but leaves the cursor where it is.)Tj --2.967 -1.9 TD -0.295 Tw -[([T])-1800.5(Transposes the characters before and after the cursor. When)]TJ -2.967 -1.2 TD -0.074 Tw -(typed at the end of a line, transposes the previous two characters.)Tj -T* -0 Tw -(Refuses to handle odd cases, such as tabs.)Tj --3.134 -1.9 TD -0.215 Tw -[([G])-1800.5(Grabs the contents of the previous line from the cursor position)]TJ -3.134 -1.2 TD -0 Tw -(onward. [nG] grabs the nth previous line.)Tj --2.912 -1.9 TD -0.07 Tw -[([L])-1800.2(Puts the current word, or n words on line, in lower case. [$L] puts)]TJ -2.912 -1.2 TD -0.099 Tw -(the rest of the linein lower case; or if given at the end of line puts)Tj -T* -0 Tw -(the entire line in lower case.)Tj --3.078 -1.9 TD -0.133 Tw -[([U])-1800.2(Analogous to [L], for putting word, line, or portion of line in upper)]TJ -3.078 -1.2 TD -0 Tw -(case.)Tj --3.078 -1.9 TD -0.305 Tw -[([C])-1800.2(Capitalizes. If you give it an argument, only the first word is)]TJ -3.078 -1.2 TD -0 Tw -(capitalized; the rest are just lowercased.)Tj --6.468 -1.9 TD -0.314 Tw -[([control-Q])-1800(Deletes the current line. [$control-Q] deletes from the current)]TJ -6.468 -1.2 TD -0.147 Tw -[(cursor position to the end of the buffer. No other arguments are)]TJ -T* -0 Tw -(handled.)Tj --6.634 -1.9 TD -[([control-W])-1800(Deletes the current word, or the previous word if sitting on a space.)]TJ -/TT4 1 Tf --13.766 -2.2 TD -(Miscellaneous Commands)Tj -ET -54.01 286.49 m -558.01 286.49 l -S -BT -/TT2 1 Tf -10 0 0 10 227.77 271.2 Tm -0.542 Tw -[([P])-1800.3(Prettyprints buffer. Clears the buffer and reprints it using)]TJ -3.023 -1.2 TD -0.064 Tw -[(prettyprint. If there are not enough right parentheses, it will supply)]TJ -T* -0.054 Tw -(more; if there are too many, any excess remains unprettyprinted at)Tj -T* -0.213 Tw -[(the end of the buffer. May refuse to do anything if there is an)]TJ -T* -0 Tw -(unclosed string or other error trying to read the buffer.)Tj --3.078 -1.9 TD -0.282 Tw -[([N])-1800.2(Refreshes line. Same as control-R. [$N] refreshes the whole)]TJ -3.078 -1.2 TD -0.032 Tw -[(buffer; [nN] refreshes n lines. Cursor movement in TTYIN depends)]TJ -T* -0.11 Tw -(on TTYIN being the only source of output to the window; in some)Tj -T* -0 Tw -(circumstances, you may need to refresh the line for best results.)Tj --6.357 -1.9 TD -[([control-Y])-1799.9(Gets an Interlisp Exec.)]TJ --0.556 -1.9 TD -0.105 Tw -[([$control-Y])-1799.7(Gets an Interlisp Exec, but first unreads the contents of the buffer)]TJ -6.913 -1.2 TD -0.191 Tw -[(from the cursor onward. Thus if you typed at TTYIN something)]TJ -T* -0.032 Tw -(destined for Interlisp, you can do [control-L$control-Y] and give it to)Tj -T* -0 Tw -(Lisp.)Tj --3.343 -1.9 TD -([)Tj -/TT11 1 Tf -0.2778 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.029 Tw -[(])-1800.5(Adds the current word to the spelling list )]TJ -/TT4 1 Tf -20.3196 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.029 Tw -[(. With zero)]TJ --24.8526 -1.2 TD -0 Tw -(argument, removes word. See )Tj -/TT4 1 Tf -13.9507 0 TD -(TTYINCOMPLETEFLG)Tj -/TT2 1 Tf -10.4438 0 TD -( .)Tj -ET -endstream -endobj -81 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT11 68 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -83 0 obj -<< -/Length 4670 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-24)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Useful Macros)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.014 Tw -(If the event is considered short enough, the Exec command )Tj -/TT4 1 Tf -26.7665 0 TD -0 Tw -(FIX)Tj -/TT2 1 Tf -1.5557 0 TD -0.014 Tw -[( will)]TJ --28.3221 -1.2 TD -0.382 Tw -(load the buffer with the events input, rather than calling the)Tj -T* -0.016 Tw -[(structure editor. If you really wanted the Lisp editor for your fix, you)]TJ -T* -0 Tw -(can say )Tj -/TT4 1 Tf -3.7241 0 TD -(FIX )Tj -/TT6 1 Tf -1.8335 0 TD -(EVENT)Tj -/TT4 1 Tf -3.334 0 TD -( - |TTY:|)Tj -/TT2 1 Tf -3.6699 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 642.64 Tm -(?= Handler)Tj -ET -54.01 639.49 m -558.01 639.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 620.2 Tm -0.453 Tw -(Typing the characters ?= displays the arguments to the)Tj -0 -1.2 TD -0.008 Tw -[(function currently in progress. Since TTYIN wants you to be able to)]TJ -T* -0.057 Tw -(continue editing the buffer after a ?=, it prints the arguments below)Tj -T* -0.117 Tw -(your type-in and then puts the cursor back where it was when ?=)Tj -T* -0 Tw -(was typed.)Tj -/TT4 1 Tf -12 0 0 12 54 544.64 Tm -(Assorted Flags)Tj -ET -54.01 541.49 m -558.01 541.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 522.2 Tm -0.314 Tw -[(These flags control aspects of TTYINs behavior. Some have)]TJ -T* -0.049 Tw -[(already been mentioned. In Interlisp-D, the flags are all initially set)]TJ -T* -0 Tw -(to )Tj -/TT4 1 Tf -1.1118 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(.)Tj -/TT4 1 Tf --14.6227 -3 TD -(?ACTIVATEFLG)Tj -/TT2 1 Tf -7.611 0 TD -[( )-30509.3([Variable])]TJ -ET -129.01 465.49 m -558.01 465.49 l -S -BT -10 0 0 10 258 450.2 Tm -0.103 Tw -(If true, enables the feature whereby ? lists alternative completions)Tj -0 -1.2 TD -0 Tw -(from the current spelling list.)Tj -ET -258.01 433.49 m -558.01 433.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 407.2 Tm -(SHOWPARENFLG)Tj -/TT2 1 Tf -8.6108 0 TD -0.0003 Tw -[( )-29508.9([Variable])]TJ -ET -129.01 404.49 m -558.01 404.49 l -S -BT -10 0 0 10 258 389.2 Tm -0.17 Tw -(If true, then whenever you are typing Lisp input and type a right)Tj -0 -1.2 TD -0.246 Tw -(parenthesis, TTYIN will briefly move the cursor to the matching)Tj -T* -0.176 Tw -[(parenthesis, assuming it is still on the screen. The cursor stays)]TJ -T* -0.036 Tw -(there for about 1 second, or until you type another character \(i.e., if)Tj -T* -0 Tw -(you type fast you will never notice it\).)Tj -ET -258.01 329.49 m -558.01 329.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 301.2 Tm -(USERWORDS)Tj -/TT2 1 Tf -38.676 0 TD -([Variable])Tj -ET -129.01 298.49 m -558.01 298.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 283.2 Tm -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.141 Tw -[( contains words you mentioned recently: functions)]TJ --6.6113 -1.2 TD -0.074 Tw -(you have defined or edited, variables you have set or evaluated at)Tj -T* -0.078 Tw -[(the executive level, etc. This happens to be a very convenient list)]TJ -T* -0.184 Tw -(for context-free escape completion; if you have recently edited a)Tj -T* -0.16 Tw -(function, chances are good you may want to edit it again \(typing)Tj -T* -0.21 Tw -[("ED\(xx$\)"\) or type a call to it. If there is no completion for the)]TJ -T* -0.394 Tw -(current word from )Tj -/TT4 1 Tf -9.2953 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.394 Tw -(, or there is more than one)Tj --15.9066 -1.2 TD -0.26 Tw -[(possible completion, TTYIN beeps. If typed when not inside a)]TJ -T* -0.082 Tw -(word, Escape completes to the value of )Tj -/TT4 1 Tf -18.3059 0 TD -0 Tw -(LASTWORD)Tj -/TT2 1 Tf -5.7769 0 TD -0.082 Tw -(, i.e., the last)Tj --24.0828 -1.2 TD -0.16 Tw -(thing you typed that the Exec noticed, except that Escape at the)Tj -T* -0.342 Tw -(beginning of the line is left alone \(it is an Old Interlisp Exec)Tj -T* -0 Tw -(command\).)Tj -0 -1.9 TD -0.165 Tw -(If you really wanted to enter an escape, you can, of course, just)Tj -0 -1.2 TD -0 Tw -(quote it with a CONTROL-V, like you can other control characters.)Tj -0 -1.9 TD -0.055 Tw -(You may explicitly add words to)Tj -/TT4 1 Tf -14.2813 0 TD -[( USERWORDS)]TJ -/TT2 1 Tf -6.9442 0 TD -[( yourself that would)]TJ --21.2255 -1.2 TD -0.15 Tw -[(not get there otherwise. To make this convenient online the edit)]TJ -T* -0.008 Tw -(command [)Tj -/TT11 1 Tf -4.9543 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.008 Tw -(] means "add the current atom to )Tj -/TT4 1 Tf -14.8631 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.008 Tw -(" \(you)Tj --27.4156 -1.2 TD -0.358 Tw -[(might think of the command as pointing out this atom\). For)]TJ -ET -endstream -endobj -84 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 68 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -86 0 obj -<< -/Length 1531 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-25)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.171 Tw -(example, you might be entering a function definition and want to)Tj -0 -1.2 TD -0.067 Tw -[(point to one or more of its arguments or prog variables. Giving an)]TJ -T* -0.01 Tw -(argument of zero to this command will instead remove the indicated)Tj -T* -0 Tw -(atom from )Tj -/TT4 1 Tf -4.7788 0 TD -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -(.)Tj --11.3901 -1.9 TD -0.003 Tw -(Note that this feature loses some of its value if the spelling list is too)Tj -0 -1.2 TD -0.036 Tw -(long, if there are too many alternative completions for you to get by)Tj -T* -0.61 Tw -[(with typing a few characters followed by escape. Lisps)]TJ -T* -0.006 Tw -(maintenance of the spelling list )Tj -/TT4 1 Tf -13.9826 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.006 Tw -[( keeps the temporary)]TJ --20.594 -1.2 TD -0.24 Tw -(section \(which is where everything goes initially unless you say)Tj -T* -0.145 Tw -(otherwise\) limited to )Tj -/TT4 1 Tf -9.6049 0 TD -0 Tw -(\\#USERWORDS)Tj -/TT2 1 Tf -7.4453 0 TD -0.145 Tw -[( atoms, initially 100. Words)]TJ --17.0502 -1.2 TD -0.406 Tw -(fall off the end if they havent been used \(they are used if)Tj -/TT4 1 Tf -T* -0 Tw -(FIXSPELL)Tj -/TT2 1 Tf -4.7783 0 TD -( corrects to one, or you use to complete one\). )Tj -ET -endstream -endobj -87 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -89 0 obj -<< -/Length 358 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-26)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -90 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -19 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 207 -/Height 104 -/BitsPerComponent 1 -/ImageMask true -/Length 2705 ->> -stream -???8/ ;v߷ݿw>0ノ;?????8/ǽf;̓393$ݿw>80????3?8/pa;$̙2g> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -96 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIJFIG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 97 0 R ->> -endobj -97 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`KS8C9͎~03K6JJb)ՔҔRj)Bȇآ"-P)@z&@?ޙ߻fG3 wТ@38^nb(h -; 22/|gr#*e{Vԇ2"V˝놢0U'vmxn aq,B}uJ8rO&qU> ( \@(ɸxTz <7BMėD*ƨ&NrBr\+PۅYKNng\BrNUďo/Hxn;kYDz ɽrX˹I0a'M Y #rNx0a;^8"` Ӡq _GMafVG`7w.eK8*hdnIup9al8rs\Ap -8-pl#GȻ;{H9HxVC<I3  HɋP - trGCYcZ@1{!a<%ph\KDUŷ}2HCwsse8WUpⷒox#|'L~%Jn A+Wxqm^5,'sS /retUA3#<]$OI >!c~{b7 NςrX1 -1pt89ȗM.aM&ō D-de,l9Tҍc -VD1 hDNH31釩ׂ3dLLpgayp_IH 0@*11gb[H?JHxy2$ut}~7C*!3OȌ믐웏al-pep>w C|s9S~^$Sy?g>k`13HC?qU6.q?q6.q+m\ejkl|56iٸgm9cm| 6`) =qFPXtKBD&LSIA'mҕƢ?hHfEb3%\AU/x ͗y#+r 7 tYD|j*c-BZk Yc4  QT*FƵ+3m'6TC QsTA{AP((k>&&؍|: i4%Hy@N2vPN+2i0oE; -̈bqk2փO;n+$ -mЯd9a,_,?M-KNfYⴻB-$6Bz{@KF"cϰQ6?Ch\x3Q3aoJ~QR!5xG7M^1'5zmycYHNL&iͫe5ҌҋdG/7Mu;o4 ov̷y{zsovzӤi+7JnNK=a6o/ei]N۷TmmwF'cO _}{j<5rxFJJ-K%v/z8[59 jPj`=R8z -ޥ {N{xsmvvmsykdQݘOj`ۄZf'ϝ[l!Ny{>X.gwOwe\(o};Epdf~9ZOXSYV7N[u\c  %t҃?J=|改i0nm?P6Tuu0KU eҢnޙsz"sSEwOyH@MtGr>*$֜C;ξpЮ]v9Gu)TP0nP`faXܵ${lm<~ؾ8x`R֜XQ* %ҮIԺhZJ.PCHB(aR6Cet(`" t:t[a=wI }u~ޏ;VuF݅Kb<&+zBCLt >ϵ)/ZBEp$w:2fQlnm47$M5z{V+@~FAj Z#XXh#~e59d.2b`{#ϫȨNǪSg!;"-W7: F&\wqX -R12Hoao=̑66˝iFE2^U.dmy5sG=>ԥjHO>eR -=[ 2fZu_v]6~EO!UD"\"@!^$5]3G"ѹ`5]١lg-s &Uin7;ɺXHe3@tK7H -ske]436}:{>5.],_)VjwU͊(9Ҫ~)'?SOrTYvAS%dtډy\/wo Cg,sKGp% CbKP+7ᖭ'CjXXۥ2GVYX,WEG\sm;H`oY-'4`gTYd>v@ۀ''6DC{FF%hp7csfK)P@p2ᖦ -) #az Kgz':~;@e?$]Í8#c$ _k$A梎_,4A=dc{ 0i`Q#}X7t:cݪX'kAFj7xbep}>.Hʐn= 茳'!g톗#cWgV[p]ώ&zFOhrg׊_'uŻ|1O;1{,:~uׯzý'.5=Z2(0MsjY [6EuFQr9VkoXֹ=J,R۽<&qss!QBb g(v iNtR0˼~dTy9nn.=uƂ\d$C0,v"hexڪrhX& V(HU)F8MOhCө cfD^4vFbDS+{&<s)XYY k^0l&h6 ]x/p -y W0H,A d -yI9Cj,YI^& WI I 3"4%%rj6ꤹMЇTet6G?t=ӕEZG7-5FGߢ. =C}&eƲl*+b3X=ճWY kcow!!;N(ȮNGp7')Ǽ?ƟK%^7|;wA0?OO)ˣc_|_&j22LYX'n*|?A!HPgn&1StN-D88Z,Ĩƙ(*ԌG&0VbYxo5Abdb, [MJH/k3AĄW!YS[2ћEw6 U_Rf2F][042XJD=w=ʇذ#Z(z& TaA*X+LfF&æ Y F}' OW.v-vu%.=kKlMo'% h~/u޻\szgR _Bٖ ?&m9AalڍhKHdrHR:l?[l?968UbTlEi lBm)w}ZAh\}~۲}nn}y2!56(}Å-2*`Si PM^:=L6tX@,Z-ĸ v7X<p"5eLOa-tl / p!%.01  K~hem59qQ,te{5:e[ZEqx8|l;,,(췰,^P TH-&xBַfdm-ݙzjVjYes~0e!ΘZ}:yarcLE`AqO鱩#nhʝtzgOI0g,\"y!{'?ȧbjx7/dDI㘅[zB|>YZds|b>w옾?[󝂅]\ECѶ$͑%lh7֕PF^ʼnZ)x|7ǎ_ . ]H9#acR{pI+n6#}':v56-9jQ2y2d4f*<;ҹY<_N:6-t -GIgati72Zں] J6ok.C%mX^:6 3PKmٕ,s.wѱMZ:L1p;e. ?bARżYaDt& (aYi} h Qҗ U}&?L(Һ,h#&R&j^6@a_% :3K +֘w)W'Ǧ:_T2U,fQqx/mu("H?]̀,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ@qAy-K0oUW yU}fBAkff8߰΋j2@-} 5Fa󥭀tft0dˀea33% -fM:{P+a+qw?v`>j[`[$jI[t.2 9d -P7J-}W -RHgR_coHVW+,j_Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xk פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(M^I-]Râb"T:X[{r/|k*=F46_ԷΟ;99%R= :h_ ڳDKX]ͶSyLACүgbb>a 7BJUК?v<>#RKyu0fұAӌc^s<{,+6zl5Y4e1TI*{E|ӽRJ"}{cEm=lOt|w_a1dZ,Mb~?,Y _ߧ`!F'd}EM?}$Xh7(),',⒅cC}Rb2u u(8GTA"r wW5~/ Jܫ`iyZ Mz<4Vzb|肽 D%8 -'8  VRE:TЗn=4t͠лnakp3~?wq/x -O8)|_Nj$HOொ|7Mr?~3h+|}}v!eeQQI f M d"j! -$2JgL5#:ihkLڱc'zeAMܳ}+얬I.OgEL^$/kߔwɝ{q#_D(_C-((N%YIQ*u/đlyh~UsouYY扵aW֚0T&ͅ$k>hn̳-2-{:9e[J'w{!=x"+A z_+ly!ͫ/q|t‘=*5$IUoǤ@fauYd{dU˥ibnh7:IyS^q<&-ӦKfMxꋺYH<Β 8:ՂLH$-_%ܱn(?pV*VA^}}|jz5"g͛db/GcFv~|Ө5!j7aqd4UIǪO$~4 _L $ I}5isjgh;mezTD#ana83uG%FR$@"|Ra2)0YUdVe<,~ˑ[ -נ"lFN8 : -O0OsnN"n2LFKq%ϑ'Djȫd-#(2d;i#>6ycr'$&ɗ1(PF-AԅCSd:fә-Z@t#JېAnG1z"CEv$H>I)[̬YT--GvV'E&9Z~'dii525` ٚ٘9Y"Kane$=6elr(@H߈KI<%;!ńJxW![=gvL 7rasU^Ι s T8oj6'1/daP&}?.mlYf"aBy?9όc#6ɄuyXpk$菰/TxT U-2q KLO/}p&h;‘&t *#DI@Z8AE)P  9LɈtՑCը"񶿷{I.N}[%h7,hb طjWjЗf]p"""Ҍ1u9.N%rGMGIEaXbY:kf͆v5/[T;`n~ژK:^~IeMK?V+577MS{?i"[UY3fR6 |`ܪOl-i۫D'<0׎*lу aw9_3ԝ7tj{ dy"E{* -BЮy"{i"ڝ'OnMȿqIˁ|IcH[.27KPw GMykm|wka8/>txoA9zGNwt@O^E-]PZXߜ* ?2|[3+Ώo>d -3q}'HJ>aGI^qQdo\(GPIE,1"vPNDUzBL$ƕn2KN-;rnz4*6 gwEVh3Ryć,d`Li#,})ȃjB(0t(E=UzjT]0F=X>X+PO=aC;8GyT]Euއ8H6UUE&TVm"[,!P_=H֐4 NtQTX'H3'IGgy\$owROs -ԠЯSVJ:ѻw"OW54L#>N:izFi=ID_qz^fj6ֵ,jk -jVj<VϖB[֡jbY36_:=ź!bϲ>OPRwRRE gFG 5*^Qndը#<mqz-ےHU(n| w/^Jk,h -۟^I mR@܊ܨ4䑒L3hL7*՝cKMS0cRE;peh *x2IČo!z ZE;p-0}ml^_b`U5q ~$%(6>|PZ4T -ėE dq$hH⹐a#`P, #X#h Ib?p MՈbyX+zةP+oy?84ud `\ -,ԏ1PRdۃ1H5IKlmHG:pw8eS7W.i, Y̯8mh7_(Sޣ|O $Q;tѻ Ix@:Ic G,z'? ІXxf EEY*: }`^y,ȧX(. 0y xrc)qqX[aBE >$+[UD)\S#=c!5Yf`2%oHa/WqNb:/YGd!гN15O,iqZ@pB0=UVC1EF .YU_ը`z_8 yfq 6I۠'Ok^H%GzKe[]v'JnmlY,TYf!y.X׎oEixazA#1tl&|6ldf6gMdCn-X,-NQ1h-%_%qnb!ʰHT==qjQmY$iYپҺa׿*v6bAdTM$z0Wؖy@8z%:\^ 0gOKbVf<|@ ,f'zsklb0CSr\[ :|,toR[-CLX X'7J.* bV/){/oi \v,$jUg/ Ll4jhv4\7U1lA+,3Y(vw}{N0s8!Cs$nA@:P{ FTt>$95Rվ$$^{J&m,g JyQovv6h6p;pR:]z]A?L)P8=AGQ@CϡYԤ[^ě>Vt<{BSޙK"ll848q̒yUZX:)nLnRz wAZ(5g޺vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk_8Oe:N阕]Jym*ә++ȩmW>Cz&> ÐVm0x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =L-4iA T0,TcbjeKf^lQ950xmmd7LLgu LhRc]Zf1|Սw ֒tHUZ9wX5Tx3kX*;/+XGd~HM -f! >؞؛Y$Z|h}̻]~,[XD 2p"kZk\/^,c ^b7c}bY 5EH),q,vY-,k:^Q}?ԉ:>~}Q֝x/bkpQ,,Ͽ̱phogh^!|g,ɱg7شI?wtěAtchK\T -Z@s^); n亀ɍ?{,ARd˺u簜MI M~ݹ eRȢ$-DKZ, -/TQff `g !hlb$j\BśbSkiF5(v[hUrE۵j" EZTY츦>z8hӸ0/0݋~wm)}tXۀ4~]8vVB MZ7-wm[f;;҂;-T }ptN:| 13c%Cނ/p -# O aQ2MI.aA#L^$%u.ʘ2|F9|YrAy -wUʯ^-PQW¢( YjeVk b]xhZz@aQ1ttm>Z5gxxHp{g}S{~sgvӫqf`Y"KaX\~沅f&viƇ1|:o.~*-K=%MJHä1R4EIM҇t]YN,!O_EzU#)_o*LP)?Rr,eXY|vrX9T*+R.)*SUըުxuf\Bݮ;<X 33=JT*Z*  -jEE - "=H8L`FI"U0G#HK BQĨʣ(Fx -}G辱5  -v&#Q"|E @eDpHs) P};θhz0r3<"f=bHz[zR3K$ Ї`pq -CN(!W#ZBP uD P'qB7@ۛ8[!mPWϵA“@ɶlrџۗ(ث;?}^?tJк U+>vTl\iU+ˮުY_hX>* %omybc)]{%zЕΔWj\J߸yDk-GL^^sƿ>w0fF+T.& ޲cYBa?z4 @[*9lyViAȯ^(ungo|uUzZBܧXν,o+I̾N" [Ԇ\{9:[S QJrSo6(tDܑ/=rc,{FO(Uɕ*n1MX}Q,խ[h\ݾ͇UIGoZ6>c9imTuf%}v4c/^u97uDVIudj3_`/K)Ƈ/|R -L"=uAlewj"."Fa!z7+bmU*q)(%9R,z=HLg5,^B1W -l,qq[5&}qNm˒jԌ/B'\>%>pAʳ֑'J=6؎NQcOb|.? T̰EV3# łP6;\W溽pm7Lz89gsޭ\CO~.PP{@hfX?slvWŢ9mX˅VwGycc1`J<^o@w-(%ǡ< X!H$Xp.1F198R+U=RSgnt|Vve]~(kmO9n-P)g@1&މ\K3z:SȣhA‡S<> #֗8IVdPޅwnٮPDZ2v}Pqd"MҦaX6isDLiMz/2(0 -$(8 "Âˠ22 ;waY,sRzL%{rv!u̫ĮO}9WʷH(>*^Ȕ $e@-/u%igT~|R zQ:;3{'/KbO)!'TT&|ׯ\' u$bF[Y6fMJ"k_,: _>㻇*u@|Tn׊P1g#& gG9GR|xWi_{De*#I;$T!wk}.q#1YMk?%x/#U~P}x%ك+ĆJ\)nDKBx{oH^kz1>ŗOv:{)GlKh+7 -T$? Y#rZ|tByGm/wg. EXkdK)丼=$-|B{n7MF'מ%Ճxlvf`Ep!g&̓E6OzMHmc *rs"Z?qmTK~* M7HӁkI Fv'u'it0l;T8 Z8-fT!֓D+ANT|iI@K\ ƆalȜ&"gAy謚LtFtѮ?I2,mMqgoS] .3eԧt3$ruu7-mbq8f9ڐaԶHL)UE2Dh8Y[eAofYxcw| -U:JS5AuE(osh5qtl/Z*!qyO#f)8fH[p QdD^qGsyַ&]&dL0. xaNW\Z3 3 -nˉCPjc+ h6d;v~*ƱHy݋]#16`iw%3']CA$X:3! g,3em-578:X~5cߚp ڜ:>3밳aŘ z4l$$:S(c NCqHծ֣87QOrmCL4cYf\*hbgՙuzL]$u(SU`zy]QqV\-l\ 0LCDہҩuWg#[T ȄU[ Ub%ݢxֱhB|u0KѰp`.FķmE5͝q5v"P4yO$Qö'jشP*YS D. pJא% |ܕoXx5#{x50E8㸵xM֧-\E8<]Y(\IIS0^lSdCS5=1@E TBLcI$ d.#;s -Ѕ>s`Dڲ L<*hIǬővN55X54vI:cAV0܏p#J8YcG8E2 Ȧ949v;fng"OO7%PgyZk@c%\) -Z=$!baQɻieU7FPen؁˭@m "C6E,:0Y8; -NaO}y@7*Ν_~W;~t~e|? ro(  H%lHRBLT+RX\墑 )LKRx&$*Z;T|ph/\K]<9C/Vi_caG޶5#|4]~(lKDN*s=<u35kMcl+*79o>9oZZ/Qj˅>3t{o4ou[% wt;Oosړc,S}#jE7}S }fyʶ!k&ht;Vwmᷮ&t|diVVFм;|37]-ml?X5;YuicM9~JÑ妬s -un3뮟޾jIchwqg<ņgC+oq|uĘCV8_Y1rט|֋G{u\ n`z7 Ml_9U?"GhB3ꏔ%]W3aKf H..jfм3ӗiW-];X(H#9d)H8%'JTDS(ҪEӞ(`&7Y5̒+5ԃZMY5=i Rxw8'Ѹ4T%盽dԥȖTd!YR2C% NW?>3x o`7y5j"'d~|^/ {- xޣ~Ye%5AnRhNA> 6ǩz<~ Qx4X V~qUu*Ȟ-\6[*?U0֕㣾2$xm=wkc-ܣB| ȉX[)ZYލ:.S g~ y';{4 -i$r=im%#^>D-m3MbFz:kjXWNi%\5}eew-Y)C)=-擋XŘO-9P-[iEf -/`eL*j.(;~T&437J.:S=-tȉjsB4 -Y:Pu@tCjA;5T*(E2@l)в'Yͭg;?%!I@JS~t-+XNyJ^,qءېSv;k9i=+ޜ4ōܜL,Z^~,{INNZ޾z.IzÚ98p<qĉ8$Ya8UKow6Ch'-8G/B֛q"_?'ɲAډMf$dR(iHCK3;p!GORRgyŲAc\ %&]dUjS6''lJIpM;˗ζ6h 4>>*^p"`IP{rAOl$NǺySc3I5∣'nY͒F-kxw -'UvUVUVkb(oMOn,?ߠ(9h~hCZVxkɪ -endstream -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [278 0 355 556 556 0 667 0 333 333 389 584 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 278 0 278 469 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 0 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 91 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 474 556 0 0 722 0 333 333 389 584 278 333 278 278 -556 556 556 556 556 556 0 556 0 556 333 0 584 584 584 611 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 333 278 333 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 0 389 280 389 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 92 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 667 0 333 333 0 0 278 333 278 0 -0 556 556 0 0 0 0 556 0 0 0 0 0 0 0 556 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 611 278 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 93 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [600 0 600 600 0 0 0 0 600 600 0 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 0 0 600 0 600 0 -600 600 600 600 600 600 600 0 600 600 0 0 600 0 600 600 -0 600 0 600 600 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 0 600 0 0 0 600 600 600 600 -600 0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 94 0 R ->> -endobj -64 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [600 0 0 0 0 0 0 0 600 600 600 600 0 600 0 600 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 0 600 600 600 0 0 600 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 -600 0 600 0 600 600 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 95 0 R ->> -endobj -68 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIJFIG+Symbol -/Encoding /Identity-H -/DescendantFonts [ 98 0 R ] -/ToUnicode 99 0 R ->> -endobj -98 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIJFIG+Symbol -/FontDescriptor 96 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -99 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'8omN&nN- Z<Z?+;dOcgF%o(hp8yy1LkD^E64"JUs$~n2,J?F/r݈]H ߉!Gsj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -72 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 74 0 R -/Contents 73 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -79 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 81 0 R -/Contents 80 0 R ->> -endobj -82 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 84 0 R -/Contents 83 0 R ->> -endobj -85 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 87 0 R -/Contents 86 0 R ->> -endobj -88 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 90 0 R -/Contents 89 0 R ->> -endobj -100 0 obj -<< -/S /D ->> -endobj -101 0 obj -<< -/Nums [0 100 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 13 0 R 16 0 R 20 0 R 23 0 R 26 0 R 29 0 R 32 0 R 35 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -42 0 obj -<< -/Type /Pages -/Kids [38 0 R 43 0 R 46 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 65 0 R 69 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -75 0 obj -<< -/Type /Pages -/Kids [72 0 R 76 0 R 79 0 R 82 0 R 85 0 R 88 0 R] -/Count 6 -/Parent 41 0 R ->> -endobj -41 0 obj -<< -/Type /Pages -/Kids [9 0 R 42 0 R 75 0 R ] -/Count 26 -/MediaBox [0 0 612 792] ->> -endobj -102 0 obj -<< -/CreationDate (D:20210119174356-06'00') -/ModDate (D:20210119174356-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -103 0 obj -<< -/Type /Catalog -/Pages 41 0 R -/PageLabels 101 0 R ->> -endobj -xref -0 104 -0000000000 65535 f -0000165051 00000 n -0000000016 00000 n -0000005326 00000 n -0000161851 00000 n -0000162426 00000 n -0000162994 00000 n -0000163538 00000 n -0000140414 00000 n -0000167293 00000 n -0000165131 00000 n -0000005454 00000 n -0000010220 00000 n -0000165214 00000 n -0000010349 00000 n -0000015211 00000 n -0000165297 00000 n -0000015329 00000 n -0000020471 00000 n -0000137566 00000 n -0000165380 00000 n -0000020624 00000 n -0000027222 00000 n -0000165463 00000 n -0000027340 00000 n -0000035253 00000 n -0000165546 00000 n -0000035371 00000 n -0000042836 00000 n -0000165629 00000 n -0000042954 00000 n -0000048970 00000 n -0000165712 00000 n -0000049088 00000 n -0000054776 00000 n -0000165795 00000 n -0000054905 00000 n -0000060264 00000 n -0000165878 00000 n -0000060382 00000 n -0000066319 00000 n -0000167676 00000 n -0000167429 00000 n -0000165962 00000 n -0000066437 00000 n -0000072105 00000 n -0000166046 00000 n -0000072223 00000 n -0000077034 00000 n -0000166130 00000 n -0000077152 00000 n -0000080483 00000 n -0000166214 00000 n -0000080590 00000 n -0000088407 00000 n -0000166298 00000 n -0000088525 00000 n -0000095594 00000 n -0000166382 00000 n -0000095712 00000 n -0000102055 00000 n -0000166466 00000 n -0000102173 00000 n -0000106379 00000 n -0000163973 00000 n -0000166550 00000 n -0000106510 00000 n -0000112021 00000 n -0000164414 00000 n -0000166634 00000 n -0000112152 00000 n -0000115856 00000 n -0000166718 00000 n -0000115987 00000 n -0000121608 00000 n -0000167567 00000 n -0000166802 00000 n -0000121726 00000 n -0000125835 00000 n -0000166886 00000 n -0000125953 00000 n -0000130395 00000 n -0000166970 00000 n -0000130515 00000 n -0000135238 00000 n -0000167054 00000 n -0000135369 00000 n -0000136953 00000 n -0000167138 00000 n -0000137060 00000 n -0000137470 00000 n -0000140554 00000 n -0000140749 00000 n -0000140955 00000 n -0000141160 00000 n -0000141351 00000 n -0000141553 00000 n -0000141743 00000 n -0000164557 00000 n -0000164760 00000 n -0000167222 00000 n -0000167251 00000 n -0000167774 00000 n -0000167907 00000 n -trailer -<< -/Size 104 -/Root 103 0 R -/Info 102 0 R -/ID [<690b200a624489d75ce7c697f95709f3><690b200a624489d75ce7c697f95709f3>] ->> -startxref -167979 -%%EOF diff --git a/docs/ReleaseNote/APPENDIXA-THEEXECtmp.pdf b/docs/ReleaseNote/APPENDIXA-THEEXECtmp.pdf deleted file mode 100644 index 2dd323ac..00000000 --- a/docs/ReleaseNote/APPENDIXA-THEEXECtmp.pdf +++ /dev/null @@ -1,11838 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5673 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -/TT4 1 Tf -18 0 0 18 347.92 734.97 Tm -(APPENDIX A. THE EXEC)Tj -ET -6 w -258.01 727.99 m -558.01 727.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 677.2 Tm -0.101 Tw -(In most Common Lisp implementations, there is a "top-level )Tj -/TT4 1 Tf -27.553 0 TD -0 Tw -(read-)Tj -ET -570 724.98 0.99 -51.99 re -f -BT -10 0 0 10 258 656.9301 Tm -(eval-print)Tj -/TT2 1 Tf -4.501 0 TD -( )Tj -/TT4 1 Tf -8 0 0 8 306.51 664.96 Tm -0.0675 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -306.48 656.93 m -406.07 656.93 l -406.07 656.93 m -406.07 672.95 l -306.48 672.95 m -406.07 672.95 l -306.48 672.95 m -306.48 656.93 l -S -BT -/TT2 1 Tf -10 0 0 10 406.1 656.9301 Tm -0.068 Tw -(loop," which reads an expression,)Tj -ET -570 672.98 0.99 -20.26 re -f -BT -10 0 0 10 258 644.9301 Tm -0.243 Tw -(evaluates it, and prints the results. In Xerox Common Lisp, the)Tj -ET -570 652.71 0.99 -11.99 re -f -BT -10 0 0 10 258 632.9301 Tm -0.024 Tw -(Exec acts as the top-level loop, but in addition to )Tj -/TT4 1 Tf -21.9753 0 TD -0 Tw -(read-eval-print)Tj -/TT2 1 Tf -6.9463 0 TD -0.024 Tw -(, it)Tj -ET -570 640.71 0.99 -11.99 re -f -BT -10 0 0 10 258 620.9301 Tm -0.08 Tw -(also performs a number of other tasks, and allows a much greater)Tj -ET -570 628.71 0.99 -11.99 re -f -BT -10 0 0 10 258 608.9301 Tm -0.076 Tw -[(range of inputs. This appendix contains information from the Lyric)]TJ -ET -570 616.71 0.99 -11.99 re -f -BT -10 0 0 10 258 596.9301 Tm -0.038 Tw -[(and Medley releases. Medley additions are indicated with revision)]TJ -ET -570 604.71 0.99 -11.99 re -f -BT -10 0 0 10 258 584.9301 Tm -0 Tw -(bars in the right margin. )Tj -ET -570 592.71 0.99 -11.99 re -f -BT -10 0 0 10 258 565.93 Tm -0.203 Tw -(The Exec is based on concepts from the Interlisp Programmers)Tj -0 -1.2 TD -0 Tw -(Assistant \(see the )Tj -/TT6 1 Tf -8.5039 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.0059 0 TD -(\).)Tj --21.5098 -1.9 TD -0.226 Tw -[(The Exec traps all throws, and recovers gracefully. It prints all)]TJ -0 -1.2 TD -0.297 Tw -(values resulting from evaluation, on separate lines. When zero)Tj -T* -0 Tw -(values are returned, nothing is printed.)Tj -0 -1.9 TD -0.087 Tw -[(The Exec keeps track of your previous input, in a structure called)]TJ -0 -1.2 TD -0.097 Tw -[(the history list. A history list is a list of the information associated)]TJ -T* -0.104 Tw -(with each of the individual events that have occurred, where each)Tj -T* -0.024 Tw -[(event corresponds to one input. Associated with each event on the)]TJ -T* -0.177 Tw -(history list is the input, its values, plus other optional information)Tj -T* -0 Tw -(such as side-effects, formatting information, etc.)Tj -0 -1.9 TD -0.068 Tw -(The following dialogue contains illustrative examples and gives the)Tj -0 -1.2 TD -0.038 Tw -(flavor of the use of the Exec. Be sure to type these examples to an)Tj -0 -2.027 TD -0.084 Tw -(Exec whose )Tj -/TT4 1 Tf -5.8374 0 TD -0 Tw -(*PACKAGE*)Tj -8 0 0 8 374.19 388.69 Tm -0.0837 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -374.16 380.66 m -473.75 380.66 l -473.75 380.66 m -473.75 396.68 l -374.16 396.68 m -473.75 396.68 l -374.16 396.68 m -374.16 380.66 l -S -BT -/TT2 1 Tf -10 0 0 10 473.78 380.66 Tm -0.084 Tw -[( is set to the )]TJ -/TT4 1 Tf -6.0894 0 TD -0 Tw -(XCL-)Tj --27.6674 -1.2 TD -(USER)Tj -/TT2 1 Tf -2.7783 0 TD -0.191 Tw -[( package. The Exec that Lisp starts up with is set to the)]TJ -/TT4 1 Tf --2.7783 -1.2 TD -0 Tw -(XCL-USER)Tj -/TT2 1 Tf -5.1113 0 TD -0.172 Tw -[( package. Each prompt consists of an event number)]TJ --5.1113 -1.2 TD -0 Tw -(and a prompt character \(")Tj -8 0 0 8 371.0468 344.66 Tm -(>)Tj -10 0 0 10 375.7187 344.66 Tm -("\). )Tj -8 0 0 8 258 327.66 Tm -(12>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 327.66 Tm -(\(setq foo 5\))Tj -/TT8 1 Tf --1.357 -0.871 TD -(5)Tj -/TT2 1 Tf -8 0 0 8 258 307.66 Tm -(13>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 307.66 Tm -(\(setq foo 10\))Tj -/TT8 1 Tf --1.357 -0.871 TD -(10)Tj -/TT2 1 Tf -8 0 0 8 258 282.22 Tm -(14>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 282.22 Tm -(undo)Tj -8 0 0 8 296.01 284.22 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 272.22 Tm -(SETQ undone)Tj -/TT4 1 Tf -6.6011 0 TD -(.)Tj -/TT2 1 Tf -8 0 0 8 258 260.49 Tm -(15>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 260.49 Tm -(foo)Tj -8 0 0 8 287.12 262.49 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 251.78 Tm -(5)Tj -/TT6 1 Tf -0 -1.829 TD -0.181 Tw -[(This is an example of direct communication with the Exec. You)]TJ -0 -1.2 TD -0 Tw -(have instructed the Exec to )Tj -/TT4 1 Tf -12.3403 0 TD -(undo)Tj -/TT6 1 Tf -2.4434 0 TD -( the previous event.)Tj -/TT2 1 Tf --14.7837 -1.7 TD -(. . .)Tj -8 0 0 8 258 189.49 Tm -(25>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 189.49 Tm -(set\(lst1 \(a b c\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(A B C\))Tj -/TT2 1 Tf -8 0 0 8 258 159.49 Tm -(26>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 159.49 Tm -(\(setq lst2 \(d e f\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(D E F\))Tj -/TT2 1 Tf -8 0 0 8 258 129.49 Tm -(27>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 129.49 Tm -(\(mapc #\(lambda \(x\) \(setf \(get x myprop\) t\)\) lst1\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(\(A B C\))Tj -/TT6 1 Tf -0 -1.829 TD -0.034 Tw -(The Exec accepts input both in APPLY format \(the )Tj -/TT4 1 Tf -22.8734 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.9448 0 TD -0.034 Tw -(\) and EVAL)Tj --24.8182 -1.2 TD -0.029 Tw -(format \(the )Tj -/TT4 1 Tf -5.1708 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.7227 0 TD -0.029 Tw -(.\) In event 27, the user adds a property MYPROP)Tj --7.8934 -1.2 TD -0 Tw -(to the symbols )Tj -/TT4 1 Tf -6.7251 0 TD -(A)Tj -/TT6 1 Tf -0.7222 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(B)Tj -/TT6 1 Tf -0.7222 0 TD -(, and )Tj -/TT4 1 Tf -2.502 0 TD -(C)Tj -/TT6 1 Tf -0.7222 0 TD -(. )Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 4765 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -8 0 0 8 258 729.76 Tm -(28>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 729.76 Tm -(use lst2 for lst1 in 27)Tj -8 0 0 8 370.5 731.76 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 721.05 Tm -(NIL)Tj -/TT6 1 Tf -0 -1.829 TD -0.322 Tw -(You just instructed the Exec to go back to event number 27,)Tj -0 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.8481 0 TD -(LST2)Tj -/TT6 1 Tf -2.4448 0 TD -0.29 Tw -[( for )]TJ -/TT4 1 Tf -2.3027 0 TD -0 Tw -(LST1,)Tj -/TT6 1 Tf -2.7227 0 TD -0.29 Tw -[( and then re-execute the expression.)]TJ --12.3182 -1.2 TD -0.147 Tw -[(You could have also used -2 instead of 27, specifying a relative)]TJ -T* -0 Tw -(address.)Tj -/TT4 1 Tf -0 -1.7 TD -(.)Tj -0 -1 TD -(.)Tj -T* -(.)Tj -/TT2 1 Tf -8 0 0 8 258 614.76 Tm -(46>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 614.76 Tm -(\(setf my-hash-table \(make-hash-table\)\))Tj -/TT8 1 Tf --1.357 -1.371 TD -(#)Tj -/TT2 1 Tf -8 0 0 8 258 584.76 Tm -(47>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 584.76 Tm -(\(setf \(gethash foo my-hash-table\) \(string foo\)\))Tj -/TT8 1 Tf --1.357 -0.871 TD -("FOO")Tj -/TT6 1 Tf -0 -1.829 TD -(If )Tj -/TT4 1 Tf -0.9995 0 TD -(STRING)Tj -/TT6 1 Tf -3.7778 0 TD -0.166 Tw -[( were computationally expensive \(which it is not\), then)]TJ --4.7773 -1.2 TD -0 Tw -(you might be caching its value for later use.)Tj -/TT2 1 Tf -8 0 0 8 258 528.32 Tm -(48>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 528.32 Tm -(use fie for foo in string)Tj -8 0 0 8 379.92 530.32 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 519.61 Tm -("FIE")Tj -/TT6 1 Tf -0 -1.829 TD -0.138 Tw -(You now decide you would like to redo the )Tj -/TT4 1 Tf -20.2542 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.5557 0 TD -0.138 Tw -[( with a different)]TJ --22.8099 -1.2 TD -0 Tw -(value. You specify the event using ")Tj -/TT4 1 Tf -16.0869 0 TD -(IN STRING)Tj -/TT6 1 Tf -5.0557 0 TD -(" rather than )Tj -/TT4 1 Tf -5.7471 0 TD -(SETF)Tj -/TT6 1 Tf -2.5557 0 TD -(.)Tj -/TT2 1 Tf -8 0 0 8 258 471.88 Tm -(49>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 471.88 Tm -(?? use)Tj -8 0 0 8 303.8 473.88 Tm -(cr)Tj -10 0 0 10 270 451.88 Tm -(USE FIE FOR FOO IN STRING)Tj -/TT2 1 Tf -8 0 0 8 258 441.88 Tm -(48>)Tj -/TT4 1 Tf -10 0 0 10 282 441.88 Tm -(\(SETF \(GETHASH FIE MY-HASH-TABLE\))Tj -0 -1 TD -(\(STRING FIE\)\))Tj -/TT8 1 Tf -0 -0.871 TD -("FIE")Tj -/TT6 1 Tf --2.4 -1.829 TD -0.089 Tw -(Here you ask the Exec \(using the ?? command\) what it has on its)Tj -0 -1.2 TD -0.226 Tw -[(history list for the last input. Since the event corresponds to a)]TJ -T* -0.178 Tw -(command, the Exec displays both the original command and the)Tj -T* -0 Tw -(generated input.)Tj -/TT2 1 Tf -0 -1.9 TD -0.054 Tw -(The most common interaction with the Exec occurs at the top level)Tj -0 -1.2 TD -0.132 Tw -(or in the debugger, where you type in expressions for evaluation,)Tj -T* -0.08 Tw -[(and see the values printed out. In this mode, the Exec acts much)]TJ -T* -0.252 Tw -(like a standard Common Lisp top-level loop, except that before)Tj -T* -0.184 Tw -(attempting to evaluate an input, the Exec first stores it in a new)Tj -T* -0.059 Tw -[(entry on the history list. Thus if the operation is aborted or causes)]TJ -T* -0.009 Tw -(an error, the input is still saved and available for modification and/or)Tj -T* -0.088 Tw -[(re-execution. The Exec also notes new functions and variables to)]TJ -T* -0 Tw -(be added to its spelling lists to enable future corrections.)Tj -0 -1.9 TD -0.14 Tw -(After updating the history list, the Exec executes the computation)Tj -0 -1.2 TD -0.149 Tw -(\(i.e., evaluates the form or applies the function to its arguments\),)Tj -T* -0.054 Tw -(saves the value in the entry on the history list corresponding to the)Tj -T* -0.115 Tw -[(input, and prints the result. Finally the Exec displays a prompt to)]TJ -T* -0 Tw -(indicate it is again ready for input.)Tj -/TT4 1 Tf -12 0 0 12 54 159.32 Tm -(Input Formats)Tj -ET -54.01 156.17 m -558.01 156.17 l -S -BT -/TT2 1 Tf -10 0 0 10 258 136.88 Tm -0.388 Tw -(The Exec accepts three forms of input: an expression to be)Tj -T* -0.077 Tw -(evaluated \(EVAL-format\), a function-name and arguments to apply)Tj -T* -0 Tw -(it to \(APPLY-format\), and Exec commands, as follows:)Tj --19.933 -2.727 TD -(EVAL-format input)Tj -/TT4 1 Tf -8 0 0 8 140.41 93.64 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -140.38 85.61 m -239.97 85.61 l -239.97 85.61 m -239.97 101.63 l -140.38 101.63 m -239.97 101.63 l -140.38 101.63 m -140.38 85.61 l -S -BT -/TT2 1 Tf -10 0 0 10 258 85.61 Tm -0.026 Tw -(If you type a single expression, either followed by a carriage-return,)Tj -0 -1.2 TD -0.11 Tw -(or, in the case of a list, terminated with balanced parenthesis, the)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -14 0 obj -<< -/Length 5001 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.075 Tw -[(expression is evaluated and the value is returned. For example, if)]TJ -0 -1.2 TD -0 Tw -(the value of the variable )Tj -/TT4 1 Tf -10.896 0 TD -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -( is the list )Tj -/TT4 1 Tf -4.4458 0 TD -(\(A B C\))Tj -/TT2 1 Tf -3.3882 0 TD -(:)Tj -8 0 0 8 258 699.2 Tm -(32>)Tj -/TT4 1 Tf -10 0 0 10 271.5703 699.2 Tm -(FOO)Tj -2.167 0.2 TD -(cr)Tj -/TT8 1 Tf --3.524 -1.071 TD -(\(A B C\))Tj -/TT2 1 Tf -0 -1.829 TD -0.366 Tw -(Similarly, if you type a Lisp expression, beginning with a left)Tj -0 -1.2 TD -0.22 Tw -(parenthesis and terminated by a matching right parenthesis, the)Tj -T* -0.076 Tw -(form is simply passed to )Tj -/TT4 1 Tf -11.3834 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.076 Tw -[( for evaluation. Notice that it is not)]TJ --14.0504 -1.2 TD -0.097 Tw -(necessary to type a carriage return at the end of such a form; the)Tj -T* -0.143 Tw -[(reader will supply one automatically. If a carriage-return is typed)]TJ -T* -0.121 Tw -(before the final matching right parenthesis or bracket, it is treated)Tj -T* -0.024 Tw -[(the same as a space, and input continues. The following examples)]TJ -T* -0 Tw -(are interpreted identically:)Tj -8 0 0 8 258 571.2 Tm -(123>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 571.2 Tm -( \(+ 1 \(* 2 3\)\))Tj -/TT8 1 Tf --1.802 -0.871 TD -(7)Tj -/TT2 1 Tf -8 0 0 8 258 549.2 Tm -(124>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 549.2 Tm -( \(+ 1 \(*)Tj -3.0291 0.2 TD -(cr)Tj --4.831 -1.2 TD -(2 3\)\))Tj -/TT8 1 Tf -0 -0.871 TD -(7)Tj -/TT2 1 Tf --20.397 -2.656 TD -(APPLY-format input )Tj -/TT4 1 Tf -8 0 0 8 145.22 511.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -145.19 503.93 m -244.78 503.93 l -244.78 503.93 m -244.78 519.95 l -145.19 519.95 m -244.78 519.95 l -145.19 519.95 m -145.19 503.93 l -S -BT -/TT2 1 Tf -10 0 0 10 244.81 503.93 Tm -0.015 Tw -[( )-1026.2(Often, when typing at the keyboard, you call functions with constant)]TJ -1.319 -1.2 TD -0.039 Tw -(argument values, which would have to be quoted if you typed them)Tj -T* -0.543 Tw -[(in "EVAL-format." For convenience, if you type a symbol)]TJ -T* -0.08 Tw -(immediately followed by a list form, the symbol is )Tj -/TT4 1 Tf -22.6165 0 TD -0 Tw -(APPLY)Tj -/TT2 1 Tf -3.334 0 TD -0.08 Tw -(ed to the)Tj --25.9505 -1.2 TD -0.16 Tw -[(elements within the list, unevaluated. The input is terminated by)]TJ -T* -0.0001 Tc -0.0049 Tw -(the matching right parenthesis. For example, typing )Tj -/TT4 1 Tf -23.3295 0 TD -0 Tc -0 Tw -(LOAD\(FOO\))Tj -/TT2 1 Tf -5.6655 0 TD -0.0017 Tc -0.0033 Tw -( is)Tj --28.9951 -1.2 TD -0 Tc -0.513 Tw -(equivalent to typing )Tj -/TT4 1 Tf -10.434 0 TD -(\(LOAD FOO\))Tj -/TT2 1 Tf -6.7342 0 TD -(, and )Tj -/TT4 1 Tf -3.528 0 TD -(GET\(X COLOR\))Tj -/TT2 1 Tf -7.7903 0 TD -[( is)]TJ --28.4865 -1.2 TD -0.039 Tw -(equivalent to )Tj -/TT4 1 Tf -6.0267 0 TD -(\(GET X COLOR\))Tj -/TT2 1 Tf -8.1888 0 TD -(. As a simple special case, a single)Tj --14.2156 -1.2 TD -0 Tw -(right parenthesis is treated as a balanced set of parentheses, e.g.)Tj -8 0 0 8 258 390.93 Tm -(125>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 390.93 Tm -(UNBREAK\))Tj -/TT2 1 Tf --1.802 -1.7 TD -(is equivalent to)Tj -8 0 0 8 258 356.93 Tm -(125>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 356.93 Tm -(UNBREAK\(\))Tj -/TT2 1 Tf --1.802 -1.7 TD -0.072 Tw -(The reader will only supply the "carriage return" automatically if no)Tj -0 -1.2 TD -0.024 Tw -(space appears between the initial symbol and the list that follows; if)Tj -T* -0.074 Tw -(there is a space after the initial symbol on the line and the list that)Tj -T* -0.009 Tw -(follows, the input is not terminated until a carriage return is explicitly)Tj -T* -0 Tw -(typed.)Tj -0 -1.9 TD -0.015 Tw -(Note that APPLY-format input cannot be used for macros or special)Tj -0 -1.2 TD -0 Tw -(forms.)Tj --9.469 -1.9 TD -0.116 Tw -[(Exec )116(commands )-1683.6(The Exec recognizes a number of commands, which usually refer)]TJ -9.469 -1.2 TD -0.238 Tw -(to past events on the history list. These commands are treated)Tj -T* -0.082 Tw -(specially; for example, they may not be put on the history list. The)Tj -T* -0.049 Tw -(format of a command is always a line beginning with the command)Tj -T* -0.264 Tw -(name. \(The Exec looks up the command name independent of)Tj -T* -0.102 Tw -(package, so that Exec commands are package independent.\) The)Tj -T* -0.313 Tw -(remainder of the line, if any, is treated as "arguments" to the)Tj -T* -0 Tw -(command. For example,)Tj -8 0 0 8 258 140.49 Tm -(128>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 140.49 Tm -(UNDO)Tj -8 0 0 8 305.46 142.49 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 131.78 Tm -(mapc undone)Tj -/TT2 1 Tf -8 0 0 8 258 120.05 Tm -(129>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 120.05 Tm -(UNDO \(FOO --\))Tj -8 0 0 8 346.01 122.05 Tm -(cr)Tj -/TT8 1 Tf -10 0 0 10 258 111.34 Tm -(foo undone)Tj -/TT2 1 Tf -0 -1.829 TD -(are all valid command inputs.)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -17 0 obj -<< -/Length 5243 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Multiple Execs and the Execs Type)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 75.91 697.93 Tm -(Multiple Execs)Tj -/TT4 1 Tf -8 0 0 8 140.41 705.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -140.38 697.93 m -239.97 697.93 l -239.97 697.93 m -239.97 713.95 l -140.38 713.95 m -239.97 713.95 l -140.38 713.95 m -140.38 697.93 l -S -BT -/TT2 1 Tf -10 0 0 10 258 697.93 Tm -0.025 Tw -(More than one Exec can be active at any one time. New Execs can)Tj -0 -1.2 TD -0.009 Tw -(be created by selecting the Exec menu item in the background pop-)Tj -T* -0.074 Tw -[(up menu. When a prompt is printed for an event in other than the)]TJ -T* -0.349 Tw -(first Exec, the prompt is preceded with the Exec number; for)Tj -T* -0 Tw -(example:)Tj -8 0 0 8 258 634.49 Tm -(2/50>)Tj -10 0 0 10 258 617.9301 Tm -0.055 Tw -(might be a prompt in Exec 2. All Execs share the same history list,)Tj -T* -0.036 Tw -(but each event records which Exec it goes with. That is, although a)Tj -T* -0.027 Tw -(single global list exists, the Xerox Lisp history system maintains the)Tj -T* -0 Tw -(separate threads of control within each Exec.)Tj --16.154 -2.727 TD -(Exec type)Tj -/TT4 1 Tf -8 0 0 8 140.41 562.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 554.66 m -239.97 554.66 l -239.97 554.66 m -239.97 570.68 l -140.38 570.68 m -239.97 570.68 l -140.38 570.68 m -140.38 554.66 l -S -BT -/TT2 1 Tf -10 0 0 10 258 554.66 Tm -0.093 Tw -(Several variables are very important to an Exec since they control)Tj -0 -1.2 TD -0.381 Tw -[(the format of reading and printing. Together these variables)]TJ -T* -0.046 Tw -[(describe a type of exec. Put another way, this is the Execs mode.)]TJ -T* -0.06 Tw -(To allow easier setting of these modes some standard bindings for)Tj -T* -0.125 Tw -[(the variables have been named. The names provide the user an)]TJ -T* -0.193 Tw -(Exec of the Common Lisp \(CL\), Interlisp \(IL\) or Xerox Extended)Tj -T* -0.125 Tw -[(Common Lisp \(XCL\) type. An Execs type is usually displayed in)]TJ -T* -0 Tw -(the title bar of its window in parentheses:)Tj -ET -q -207 0 0 -104 258.01 461.45 cm -/Im1 Do -Q -BT -/TT4 1 Tf -12 0 0 12 54 334.1 Tm -(Event Specification)Tj -ET -1 w []0 d -54.01 330.95 m -558.01 330.95 l -S -BT -/TT2 1 Tf -10 0 0 10 258 303.39 Tm -0.017 Tw -(Exec commands, like )Tj -/TT4 1 Tf -8 0 0 8 355.8 311.42 Tm -0.0175 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -355.77 303.39 m -455.36 303.39 l -455.36 303.39 m -455.36 319.41 l -355.77 319.41 m -455.36 319.41 l -355.77 319.41 m -355.77 303.39 l -S -BT -10 0 0 10 455.39 303.39 Tm -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.017 Tw -(, frequently refer)Tj --22.6833 -1.2 TD -0.032 Tw -(to previous events in the sessions history. All Exec commands use)Tj -T* -0.091 Tw -(the same conventions and syntax for indicating which event\(s\) the)Tj -T* -0.152 Tw -[(command refers to. This section shows you the syntax used to)]TJ -T* -0 Tw -(specify previous events.)Tj -0 -2.3 TD -0.349 Tw -(An event address identifies one event on the history list. For)Tj -0 -1.2 TD -0.321 Tw -(example, the event address )Tj -/TT4 1 Tf -13.847 0 TD -0 Tw -(42)Tj -/TT2 1 Tf -1.1123 0 TD -0.321 Tw -[( refers to the event with event)]TJ --14.9593 -1.2 TD -0.128 Tw -(number 42, and )Tj -/TT4 1 Tf -7.6667 0 TD -0 Tw -(-2)Tj -/TT2 1 Tf -0.8892 0 TD -0.128 Tw -[( refers to two events back in the )]TJ -/TT6 1 Tf -15.42 0 TD -0 Tw -(current)Tj -/TT2 1 Tf -3.1123 0 TD -0.128 Tw -[( Exec.)]TJ --27.0882 -1.2 TD -0 Tw -(Usually, an event address will contain only one or two commands.)Tj -0 -1.9 TD -0.06 Tw -(Event addresses can be concatenated. For example, if )Tj -/TT4 1 Tf -24.9385 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.06 Tw -[( refers)]TJ --27.105 -1.2 TD -0.204 Tw -(to event )Tj -/TT6 1 Tf -4.2439 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -(, )Tj -/TT4 1 Tf -0.7597 0 TD -0.204 Tw -(FOO FIE)Tj -/TT2 1 Tf -4.204 0 TD -[( will refer to the first event before event )]TJ -/TT6 1 Tf -19.3443 0 TD -0 Tw -(N)Tj -/TT2 1 Tf --29.2741 -1.2 TD -(which contains )Tj -/TT4 1 Tf -6.8369 0 TD -(FIE)Tj -/TT2 1 Tf -1.5557 0 TD -(.)Tj --8.3926 -1.9 TD -0.043 Tw -(The symbols used in event addresses \(such as )Tj -/TT4 1 Tf -21.4656 0 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -(, )Tj -/TT4 1 Tf -0.5987 0 TD -(F)Tj -/TT2 1 Tf -0.6108 0 TD -(, )Tj -/TT4 1 Tf -0.5987 0 TD -(=)Tj -/TT2 1 Tf -0.584 0 TD -0.043 Tw -(, etc. are)Tj --26.0242 -1.2 TD -0.184 Tw -(compared with )Tj -/TT4 1 Tf -7.1488 0 TD -0 Tw -(STRING-EQUAL)Tj -/TT2 1 Tf -7.6108 0 TD -0.184 Tw -(, so that it does not matter what)Tj --14.7596 -1.2 TD -0.085 Tw -(the current package is when you type an event address symbol to)Tj -T* -0 Tw -(an Exec.)Tj -0 -2.527 TD -(Event addresses)Tj -/TT4 1 Tf -8 0 0 8 332.52 81.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -332.49 73.12 m -432.08 73.12 l -432.08 73.12 m -432.08 89.14 l -332.49 89.14 m -432.08 89.14 l -332.49 89.14 m -332.49 73.12 l -S -BT -/TT2 1 Tf -10 0 0 10 432.11 73.12 Tm -( are interpreted as follows:)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/XObject << -/Im1 19 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -21 0 obj -<< -/Length 8055 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 178.87 730.2 Tm -(N)Tj -/TT2 1 Tf -0.7222 0 TD -[( \(an integer\))-1799.2(If )]TJ -/TT6 1 Tf -8.0313 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.007 Tw -[( is positive, it refers to the event with event number )]TJ -/TT6 1 Tf -22.8656 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.007 Tw -[( \(no matter)]TJ --25.1504 -1.2 TD -0.05 Tw -(which Exec the event occurred in.\) If )Tj -/TT6 1 Tf -16.7465 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.05 Tw -[( is negative, it always refers)]TJ --17.4687 -1.2 TD -0.004 Tw -(to the event -)Tj -/TT6 1 Tf -5.8489 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.0001 Tc -0.0039 Tw -( events backwards counting )Tj -/TT6 1 Tf -12.6342 0 TD -0 Tc -0 Tw -(only)Tj -/TT2 1 Tf -1.8345 0 TD -0.0002 Tc -0.0038 Tw -( events belonging to)Tj --21.0397 -1.2 TD -0 Tc -0 Tw -(the )Tj -/TT6 1 Tf -1.668 0 TD -(current)Tj -/TT2 1 Tf -3.1123 0 TD -( Exec.)Tj -/TT4 1 Tf --17.1543 -2.727 TD -(F)Tj -8 0 0 8 140.41 674.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -140.38 666.93 m -239.97 666.93 l -239.97 666.93 m -239.97 682.95 l -140.38 682.95 m -239.97 682.95 l -140.38 682.95 m -140.38 666.93 l -S -BT -/TT2 1 Tf -10 0 0 10 258 666.93 Tm -0.003 Tw -(Specifies that the next object in the event address is to be searched)Tj -0 -1.2 TD -0.102 Tw -[(for, regardless of what it is. For example, )]TJ -/TT4 1 Tf -19.5362 0 TD -(F -2)Tj -/TT2 1 Tf -1.8798 0 TD -[( looks for an event)]TJ --21.416 -1.2 TD -0 Tw -(containing )Tj -/TT4 1 Tf -4.8369 0 TD -(-2)Tj -/TT2 1 Tf -0.8892 0 TD -(.)Tj -/TT4 1 Tf -8 0 0 8 134.57 623.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -134.54 615.66 m -234.13 615.66 l -234.13 615.66 m -234.13 631.68 l -134.54 631.68 m -234.13 631.68 l -134.54 631.68 m -134.54 615.66 l -S -BT -10 0 0 10 234.16 615.66 Tm -(=)Tj -/TT2 1 Tf -2.384 0 TD -0.067 Tw -(Specifies that the next object is to be searched for in the )Tj -/TT6 1 Tf -25.93 0 TD -0 Tw -(values)Tj -/TT2 1 Tf -2.8906 0 TD -0.067 Tw -[( of)]TJ --28.8206 -1.2 TD -0 Tw -(events, instead of the inputs.)Tj -/TT4 1 Tf --20.318 -2.727 TD -(SUCHTHAT )Tj -/TT6 1 Tf -5.7773 0 TD -(PRED)Tj -/TT4 1 Tf -8 0 0 8 140.41 584.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 576.39 m -239.97 576.39 l -239.97 576.39 m -239.97 592.41 l -140.38 592.41 m -239.97 592.41 l -140.38 592.41 m -140.38 576.39 l -S -BT -/TT2 1 Tf -10 0 0 10 258 576.39 Tm -0.004 Tw -(Specifies an event for which the function )Tj -/TT6 1 Tf -18.2052 0 TD -0 Tw -(PRED)Tj -/TT2 1 Tf -2.7783 0 TD -0.0003 Tc -0.0037 Tw -( returns true. )Tj -/TT6 1 Tf -6.2406 0 TD -0 Tc -0 Tw -(PRED)Tj -/TT2 1 Tf --27.2242 -1.2 TD -0.236 Tw -(should be a function of two arguments, the input portion of the)Tj -T* -0 Tw -(event, and the event itself.)Tj -/TT4 1 Tf -8 0 0 8 120.96 533.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -120.93 525.12 m -220.52 525.12 l -220.52 525.12 m -220.52 541.14 l -120.93 541.14 m -220.52 541.14 l -120.93 541.14 m -120.93 525.12 l -S -BT -/TT6 1 Tf -10 0 0 10 220.55 525.12 Tm -(PAT)Tj -/TT2 1 Tf -3.745 0 TD -0.066 Tw -(Any other event address command specifies an event whose input)Tj -0 -1.2 TD -0.153 Tw -(contains an expression that matches )Tj -/TT6 1 Tf -17.2743 0 TD -0 Tw -(PAT.)Tj -/TT2 1 Tf -2.2227 0 TD -0.153 Tw -[( When multiple Execs)]TJ --19.4969 -1.2 TD -0.249 Tw -(are active, all events are searched, no matter which Exec they)Tj -T* -0.054 Tw -(belong to. The pattern can be a simple symbol, or a more complex)Tj -T* -0 Tw -(search pattern.)Tj -0 -1.9 TD -0.033 Tw -[(Note:)-609.9(Specifications used below of the form )]TJ -/TT6 1 Tf -20.0403 0 TD -0 Tw -(EventAddress)Tj -6.2237 -0.3 TD -(i)Tj -/TT2 1 Tf -0.222 0.3 TD -0.033 Tw -[( refer to)]TJ --23.486 -1.5 TD -0.373 Tw -[(event addresses, as described above. Since an event)]TJ -0 -1.2 TD -0.2 Tw -(address may contain multiple words, the event address is)Tj -T* -0.282 Tw -[(parsed by searching for the words which delimit it. For)]TJ -T* -0.72 Tw -(example, in )Tj -/TT6 1 Tf -6.8316 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 418.56 404.12 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 423.0099 407.12 Tm -0.72 Tw -[( AND )]TJ -/TT6 1 Tf -4.1622 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 526.88 404.12 Tm -(2)Tj -/TT2 1 Tf -10 0 0 10 531.33 407.12 Tm -0.72 Tw -(, the)Tj --24.333 -1.456 TD -0 Tw -(notation )Tj -/TT6 1 Tf -3.9874 0 TD -(EventAddress)Tj -8 0 0 8 390.12 389.56 Tm -(1)Tj -/TT2 1 Tf -10 0 0 10 394.57 392.56 Tm -0.151 Tw -[( corresponds to all words up to the)]TJ -/TT4 1 Tf --10.657 -1.456 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -0.256 Tw -[( in the event specification, and )]TJ -/TT6 1 Tf -15.267 0 TD -0 Tw -(EventAddress)Tj -8 0 0 8 524.57 375 Tm -(2)Tj -/TT2 1 Tf -10 0 0 10 529.02 378 Tm -0.256 Tw -[( to all)]TJ --24.102 -1.456 TD -0 Tw -(words after the )Tj -/TT4 1 Tf -6.8921 0 TD -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -( in the event specification.)Tj -/TT4 1 Tf -8 0 0 8 54.07 344.2 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -54.04 336.17 m -153.63 336.17 l -153.63 336.17 m -153.63 352.19 l -54.04 352.19 m -153.63 352.19 l -54.04 352.19 m -54.04 336.17 l -S -BT -10 0 0 10 153.66 336.17 Tm -(FROM )Tj -/TT6 1 Tf -3.2217 0 TD -(EventAddress)Tj -/TT2 1 Tf -7.2123 0 TD -0.06 Tw -(All events since )Tj -/TT6 1 Tf -7.4056 0 TD -0 Tw -(EventAddress)Tj -/TT2 1 Tf -6.2256 0 TD -0.06 Tw -(, inclusive. For example, if there is a)Tj --13.6312 -1.2 TD -0.181 Tw -(single Exec and the current event is number 53, then )Tj -/TT4 1 Tf -25.4907 0 TD -(FROM 49)Tj -/TT2 1 Tf --25.4907 -1.2 TD -0.013 Tw -(specifies events 49, 50, 51, and 52. )Tj -/TT4 1 Tf -16.3926 0 TD -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.013 Tw -[( will include events from)]TJ -/TT6 1 Tf --19.3364 -1.2 TD -0 Tw -(all)Tj -/TT2 1 Tf -1.0005 0 TD -( Execs.)Tj --21.3975 -2.727 TD -( )Tj -/TT4 1 Tf -8 0 0 8 56.85 280.93 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -56.82 272.9 m -156.41 272.9 l -156.41 272.9 m -156.41 288.92 l -56.82 288.92 m -156.41 288.92 l -56.82 288.92 m -56.82 272.9 l -S -BT -10 0 0 10 156.44 272.9 Tm -(ALL )Tj -/TT6 1 Tf -2.2217 0 TD -(EventAddress)Tj -/TT2 1 Tf -7.9343 0 TD -0.2 Tw -(Specifies all events satisfying )Tj -/TT6 1 Tf -14.0842 0 TD -0 Tw -(EventAddress)Tj -/TT2 1 Tf -6.2256 0 TD -0.2 Tw -[(. For example, )]TJ -/TT4 1 Tf -7.7468 0 TD -0 Tw -(ALL)Tj --28.0565 -1.2 TD -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(ALL SUCHTHAT FOO-P)Tj -/TT2 1 Tf -11.1655 0 TD -(. )Tj --19.0772 -1.9 TD -0.102 Tw -[(empty)-1799.9(If nothing is specified, it is the same as specifying )]TJ -/TT4 1 Tf -27.6651 0 TD -0 Tw -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.102 Tw -(, i.e., the last)Tj --24.0312 -1.2 TD -0 Tw -(event in the current Exec. )Tj -/TT6 1 Tf --20.397 -1.9 TD -(EventSpec)Tj -8 0 0 8 102.39 207.9 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 106.84 210.9 Tm -( AND )Tj -/TT6 1 Tf -2.7222 0 TD -(EventSpec)Tj -8 0 0 8 182.42 207.9 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 186.87 210.9 Tm -( AND . . . AND )Tj -/TT6 1 Tf -6.8335 0 TD -(EventSpec)Tj -8 0 0 8 303.57 207.9 Tm -(N)Tj -/TT2 1 Tf -10 0 0 10 258 189.34 Tm -0.277 Tw -(Each of the )Tj -/TT6 1 Tf -6.1679 0 TD -0 Tw -(EventSpec)Tj -4.8361 -0.3 TD -(i)Tj -/TT2 1 Tf -0.222 0.3 TD -0.277 Tw -[( is an event specification. The lists of)]TJ --11.226 -1.5 TD -0.252 Tw -[(events are concatenated. For example, )]TJ -/TT4 1 Tf -19.4109 0 TD -(ALL MAPC AND ALL)Tj --19.4109 -1.2 TD -0.513 Tw -(STRING AND 32)Tj -/TT2 1 Tf -8.6383 0 TD -[( specifies all events containing )]TJ -/TT4 1 Tf -16.3506 0 TD -0 Tw -(MAPC)Tj -/TT2 1 Tf -2.9443 0 TD -0.513 Tw -(, all)Tj --27.9333 -1.2 TD -0 Tw -(containing )Tj -/TT4 1 Tf -5.2449 0 TD -(STRING)Tj -/TT2 1 Tf -3.7778 0 TD -0.408 Tw -(, and also event )Tj -/TT4 1 Tf -8.9704 0 TD -0 Tw -(32)Tj -/TT2 1 Tf -1.1123 0 TD -0.408 Tw -(. Duplicate events are)Tj --19.1054 -1.2 TD -0 Tw -(removed. )Tj -/TT4 1 Tf -14 0 0 14 54 109.22 Tm -(Exec Commands)Tj -ET -1 w []0 d -54.01 105.63 m -558.01 105.63 l -S -BT -/TT2 1 Tf -10 0 0 10 258 86.34 Tm -0.018 Tw -(All Exec commands are input as lines which begin with the name of)Tj -T* -0.003 Tw -(the command. The name of an Exec command is not a symbol and)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -24 0 obj -<< -/Length 8129 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.054 Tw -(therefore is not sensitive to the setting of the current package \( the)Tj -0 -1.2 TD -0 Tw -(value of )Tj -/TT4 1 Tf -3.7803 0 TD -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -(\).)Tj -/TT6 1 Tf --9.5591 -1.9 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.104 Tw -[( is used to denote an event specification which in most)]TJ --4.8364 -1.2 TD -0.064 Tw -(cases will be either a specific event address \(e.g., 42\) or a relative)Tj -T* -0.159 Tw -[(one \(e.g., -3\). Unless specified otherwise, omitting )]TJ -/TT6 1 Tf -24.0044 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.159 Tw -[( is)]TJ --28.8408 -1.2 TD -0.162 Tw -(the same as specifying )Tj -/TT6 1 Tf -11.0977 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.162 Tw -[(. For example, )]TJ -/TT4 1 Tf -7.5948 0 TD -0 Tw -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -0.162 Tw -[( and)]TJ -/TT4 1 Tf --27.8912 -1.2 TD -0 Tw -(REDO -1)Tj -/TT2 1 Tf -4.0562 0 TD -( are the same.)Tj -/TT4 1 Tf -8 0 0 8 129.04 620.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 612.93 m -228.6 612.93 l -228.6 612.93 m -228.6 628.95 l -129.01 628.95 m -228.6 628.95 l -129.01 628.95 m -129.01 612.93 l -S -BT -10 0 0 10 228.63 612.93 Tm -(REDO )Tj -/TT6 1 Tf -3.167 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -[( )-16930.9([Exec command])]TJ -ET -1 w []0 d -129.01 610.22 m -558.01 610.22 l -S -BT -10 0 0 10 258 594.93 Tm -0.043 Tw -(Redoes the event or events specified by )Tj -/TT6 1 Tf -18.3674 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.043 Tw -[(. For example,)]TJ -/TT4 1 Tf --23.2038 -1.2 TD -0 Tw -(REDO 123)Tj -/TT2 1 Tf -4.8354 0 TD -( redoes the event numbered 123.)Tj -ET -258.01 578.22 m -558.01 578.22 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 551.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 543.66 m -228.6 543.66 l -228.6 543.66 m -228.6 559.68 l -129.01 559.68 m -228.6 559.68 l -129.01 559.68 m -129.01 543.66 l -S -BT -10 0 0 10 228.63 543.66 Tm -(RETRY )Tj -/TT6 1 Tf -3.667 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -[( )-16430.9([Exec command])]TJ -ET -1 w []0 d -129.01 540.95 m -558.01 540.95 l -S -BT -10 0 0 10 258 525.66 Tm -0.065 Tw -(Similar to )Tj -/TT4 1 Tf -4.5753 0 TD -0 Tw -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -0.065 Tw -[( except sets the debugger parameters so that any)]TJ --7.4645 -1.2 TD -0 Tw -(errors that occur while executing )Tj -/TT6 1 Tf -14.6733 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -( will cause breaks.)Tj -ET -258.01 508.95 m -558.01 508.95 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 482.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 474.39 m -228.6 474.39 l -228.6 474.39 m -228.6 490.41 l -129.01 490.41 m -228.6 490.41 l -129.01 490.41 m -129.01 474.39 l -S -BT -10 0 0 10 228.63 474.39 Tm -(USE )Tj -/TT6 1 Tf -2.334 0 TD -(NEW )Tj -/TT4 1 Tf -2.6108 0 TD -([)Tj -8 0 0 8 281.45 482.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -281.42 474.39 m -381.01 474.39 l -381.01 474.39 m -381.01 490.41 l -281.42 490.41 m -381.01 490.41 l -281.42 490.41 m -281.42 474.39 l -S -BT -10 0 0 10 381.04 474.39 Tm -(FOR)Tj -/TT6 1 Tf -2.1108 0 TD -( OLD )Tj -/TT4 1 Tf -2.6118 0 TD -(] [)Tj -8 0 0 8 437.75 482.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -437.72 474.39 m -537.31 474.39 l -537.31 474.39 m -537.31 490.41 l -437.72 490.41 m -537.31 490.41 l -437.72 490.41 m -437.72 474.39 l -S -BT -10 0 0 10 537.34 474.39 Tm -(IN)Tj -/TT6 1 Tf --27.934 -1 TD -(EventSpec )Tj -/TT4 1 Tf -5.1143 0 TD -(])Tj -/TT2 1 Tf -0.333 0 TD -[( )-16550.1([Exec command])]TJ -ET -1 w []0 d -129.01 461.68 m -558.01 461.68 l -S -BT -10 0 0 10 258 446.39 Tm -(Substitutes )Tj -/TT6 1 Tf -5.4211 0 TD -(NEW)Tj -/TT2 1 Tf -2.333 0 TD -0.196 Tw -[( for )]TJ -/TT6 1 Tf -2.1147 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0561 0 TD -0.196 Tw -[( in the events specified by )]TJ -/TT6 1 Tf -12.9607 0 TD -0 Tw -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(,)Tj --29.722 -1.2 TD -0.065 Tw -(and redoes the result. )Tj -/TT6 1 Tf -10.2107 0 TD -0 Tw -(NEW)Tj -/TT2 1 Tf -2.333 0 TD -0.065 Tw -[( and )]TJ -/TT6 1 Tf -2.3541 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.065 Tw -[( can include lists or symbols,)]TJ --16.954 -1.2 TD -0 Tw -(etc.)Tj -0 -1.9 TD -0.32 Tw -(For example, )Tj -/TT4 1 Tf -6.7533 0 TD -(USE SIN \(- X\) FOR COS X IN -2 AND -1)Tj -/TT2 1 Tf -21.2571 0 TD -[( will)]TJ --28.0104 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.7791 0 TD -(SIN)Tj -/TT2 1 Tf -1.667 0 TD -0.221 Tw -[( for every occurrence of )]TJ -/TT4 1 Tf -11.8872 0 TD -0 Tw -(COS)Tj -/TT2 1 Tf -2.167 0 TD -0.221 Tw -[( in the previous two)]TJ --20.5003 -1.2 TD -0.438 Tw -(events, and substitute )Tj -/TT4 1 Tf -11.3203 0 TD -(\(- X\))Tj -/TT2 1 Tf -2.3818 0 TD -[( for every occurrence of )]TJ -/TT4 1 Tf -12.9722 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.438 Tw -(, and)Tj --27.3414 -1.2 TD -0.227 Tw -[(reexecute them. \(The substitutions do not change the previous)]TJ -T* -0 Tw -(information saved about these events on the history list.\))Tj -0 -1.9 TD -(If )Tj -/TT4 1 Tf -1.0595 0 TD -(IN )Tj -/TT6 1 Tf -1.5038 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -0.226 Tw -[( is omitted, the first member of )]TJ -/TT6 1 Tf -15.3086 0 TD -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.226 Tw -[( is used to)]TJ --24.7645 -1.2 TD -0.853 Tw -[(search for the appropriate event. For example, )]TJ -/TT4 1 Tf -27.9461 0 TD -0 Tw -(USE)Tj --27.9461 -1.2 TD -0.666 Tw -(DEFAULTFONT FOR DEFLATFONT)Tj -/TT2 1 Tf -18.0517 0 TD -[( is equivalent to )]TJ -/TT4 1 Tf -9.8906 0 TD -0 Tw -(USE)Tj --27.9423 -1.2 TD -0.09 Tw -(DEFAULTFONT FOR DEFLATFONT IN F DEFLATFONT)Tj -/TT2 1 Tf -26.2796 0 TD -[(. The )]TJ -/TT4 1 Tf -3.1045 0 TD -0 Tw -(F)Tj -/TT2 1 Tf --29.3841 -1.2 TD -0.12 Tw -(is inserted to handle correctly the case where the first member of)Tj -/TT6 1 Tf -T* -0 Tw -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -( could be interpreted as an event address command.)Tj --2.0562 -1.9 TD -(If )Tj -/TT6 1 Tf -0.8485 0 TD -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.015 Tw -[( is omitted, substitution is for the "operator" in that command.)]TJ --2.9046 -1.2 TD -0.034 Tw -(For example )Tj -/TT4 1 Tf -5.9034 0 TD -0 Tw -(FBOUNDP\(FF\))Tj -/TT2 1 Tf -6.832 0 TD -0.034 Tw -[( followed by )]TJ -/TT4 1 Tf -5.6606 0 TD -(USE CALLS)Tj -/TT2 1 Tf -5.701 0 TD -[( is equivalent)]TJ --24.0971 -1.2 TD -0 Tw -(to )Tj -/TT4 1 Tf -1.1118 0 TD -(USE CALLS FOR FBOUNDP IN -1)Tj -/TT2 1 Tf -15.7227 0 TD -(.)Tj --16.8345 -1.9 TD -(If )Tj -/TT6 1 Tf -0.8785 0 TD -(OLD)Tj -/TT2 1 Tf -2.0562 0 TD -0.045 Tw -[( is not found, )]TJ -/TT4 1 Tf -6.1839 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.045 Tw -[( will print a question mark, several spaces)]TJ --11.1747 -1.2 TD -0.076 Tw -[(and the pattern that was not found. For example, if you specified)]TJ -T* -0.052 Tw -[(USE Y FOR X IN 104 and X was not found, "X ?" is printed to the)]TJ -T* -0 Tw -(Exec.)Tj -ET -258.01 173.68 m -558.01 173.68 l -S -BT -10 0 0 10 258 158.39 Tm -0.06 Tw -(You can also specify more than one substitution simultaneously as)Tj -T* -0 Tw -(follows:)Tj -/TT4 1 Tf --12.9 -3 TD -(USE )Tj -/TT6 1 Tf -2.334 0 TD -(NEW)Tj -2.333 -0.3 TD -(1)Tj -0.556 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(FOR)Tj -/TT6 1 Tf -2.1108 0 TD -( OLD)Tj -2.3343 -0.3 TD -(1)Tj -0.556 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(AND)Tj -/TT6 1 Tf -2.1665 0 TD -( ... )Tj -/TT4 1 Tf -1.3892 0 TD -(AND)Tj -/TT6 1 Tf -2.1665 0 TD -( NEW)Tj -2.611 -0.3 TD -(N)Tj -0.722 0.3 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(FOR)Tj -/TT6 1 Tf -2.1108 0 TD -( OLD)Tj -2.3343 -0.3 TD -(N)Tj -0.722 0.3 TD -( [)Tj -/TT4 1 Tf -0.5557 0 TD -(IN)Tj -/TT6 1 Tf -1 0 TD -( EventSpec)Tj -/TT2 1 Tf -5.1143 0 TD -[( )-2947.4([Exec command])]TJ -ET -129.01 110.68 m -558.01 110.68 l -S -BT -10 0 0 10 258 95.39 Tm -[(Note:)-609.9(The )]TJ -/TT4 1 Tf -5.01 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.009 Tw -[( command is parsed by a small finite state parser to)]TJ --4.0661 -1.2 TD -0.197 Tw -[(distinguish the expressions and arguments. For example,)]TJ -/TT4 1 Tf -T* -0.166 Tw -(USE FOR FOR AND AND AND FOR FOR)Tj -/TT2 1 Tf -20.1058 0 TD -[( will be parsed)]TJ --20.1058 -1.2 TD -0 Tw -(correctly.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 8716 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -(Every )Tj -/TT4 1 Tf -3.152 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.318 Tw -[( command involves three pieces of information: the)]TJ --5.2081 -1.2 TD -0.085 Tw -(expressions to be substituted, the arguments to be substituted for,)Tj -T* -0.301 Tw -(and an event specification that defines the input expression in)Tj -T* -0.135 Tw -[(which the substitution takes place. If the )]TJ -/TT4 1 Tf -19.3124 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.135 Tw -[( command has the)]TJ --21.3686 -1.2 TD -0.506 Tw -(same number of expressions as arguments, the substitution)Tj -T* -0.216 Tw -[(procedure is straightforward. For example, )]TJ -/TT4 1 Tf -20.6373 0 TD -(USE X Y FOR U V)Tj -/TT2 1 Tf --20.6373 -1.2 TD -0.094 Tw -(means substitute )Tj -/TT4 1 Tf -8.0254 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -[( for )]TJ -/TT4 1 Tf -1.9107 0 TD -0 Tw -(U)Tj -/TT2 1 Tf -0.7222 0 TD -0.094 Tw -[( and )]TJ -/TT4 1 Tf -2.4121 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -[( for )]TJ -/TT4 1 Tf -1.9107 0 TD -0 Tw -(V)Tj -/TT2 1 Tf -0.667 0 TD -0.094 Tw -(, and is equivalent to )Tj -/TT4 1 Tf -9.9207 0 TD -(USE X)Tj --26.9027 -1.2 TD -0 Tw -(FOR U AND Y FOR V)Tj -/TT2 1 Tf -9.8335 0 TD -(. )Tj --9.8335 -1.9 TD -0.078 Tw -(However, the )Tj -/TT4 1 Tf -6.3254 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.078 Tw -[( command also permits distributive substitutions)]TJ --8.3816 -1.2 TD -0.19 Tw -[(for substituting several expressions for the same argument. For)]TJ -T* -0 Tw -(example, )Tj -/TT4 1 Tf -4.4844 0 TD -0.149 Tw -(USE A B C FOR X)Tj -/TT2 1 Tf -9.1347 0 TD -[( means first substitute )]TJ -/TT4 1 Tf -10.5999 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.149 Tw -[( for )]TJ -/TT4 1 Tf -2.0207 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.149 Tw -[( then)]TJ --27.6288 -1.2 TD -0 Tw -(substitute )Tj -/TT4 1 Tf -4.5851 0 TD -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.027 Tw -[( for )]TJ -/TT4 1 Tf -1.7767 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.027 Tw -[( \(in a new copy of the expression\), then substitute)]TJ -/TT4 1 Tf --7.7509 -1.2 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -( for )Tj -/TT4 1 Tf -1.7227 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(. The effect is the same as three separate )Tj -/TT4 1 Tf -19.0098 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -( commands. )Tj --24.1777 -1.9 TD -(Similarly, )Tj -/TT4 1 Tf -4.4295 0 TD -0.096 Tw -(USE A B C FOR D AND X Y Z FOR W)Tj -/TT2 1 Tf -18.3338 0 TD -[( is equivalent to)]TJ -/TT4 1 Tf --22.7633 -1.2 TD -0.059 Tw -(USE A FOR D AND X FOR W)Tj -/TT2 1 Tf -13.8573 0 TD -(, followed by )Tj -/TT4 1 Tf -6.0134 0 TD -(USE B FOR D AND Y)Tj --19.8708 -1.2 TD -0.097 Tw -(FOR W)Tj -/TT2 1 Tf -3.4295 0 TD -(, followed by )Tj -/TT4 1 Tf -6.1274 0 TD -(USE C FOR D AND Z FOR W)Tj -/TT2 1 Tf -14.0672 0 TD -(. )Tj -/TT4 1 Tf -1.0275 0 TD -(USE A B C)Tj --24.6516 -1.2 TD -0.075 Tw -(FOR D AND X FOR Y)Tj -/TT2 1 Tf -10.2085 0 TD -[( also corresponds to three substitutions, the)]TJ --10.2085 -1.2 TD -0.046 Tw -(first with )Tj -/TT4 1 Tf -4.0368 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( and )]TJ -/TT4 1 Tf -2.3161 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -(, the second with )Tj -/TT4 1 Tf -7.9662 0 TD -0 Tw -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.046 Tw -(, and )Tj -/TT4 1 Tf -2.5939 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.046 Tw -[( for )]TJ -/TT4 1 Tf -1.8147 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -(,)Tj --29.7284 -1.2 TD -0.016 Tw -(and the third with )Tj -/TT4 1 Tf -7.9576 0 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -0.016 Tw -[( for )]TJ -/TT4 1 Tf -1.7547 0 TD -0 Tw -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.016 Tw -(, and again )Tj -/TT4 1 Tf -5.2746 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.016 Tw -[( for )]TJ -/TT4 1 Tf -1.7547 0 TD -0 Tw -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.016 Tw -[(. However, )]TJ -/TT4 1 Tf -5.383 0 TD -(USE A B C)Tj --24.9027 -1.2 TD -0 Tw -(FOR D AND X Y FOR Z)Tj -/TT2 1 Tf -10.7222 0 TD -( is ambiguous and will cause an error.)Tj --10.7222 -1.9 TD -0.06 Tw -(Essentially, the )Tj -/TT4 1 Tf -7.1234 0 TD -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.06 Tw -[( command operates by proceeding from left to)]TJ --9.1796 -1.2 TD -0.264 Tw -(right handling each )Tj -/TT4 1 Tf -9.5205 0 TD -0 Tw -(AND)Tj -/TT2 1 Tf -2.1665 0 TD -0.264 Tw -[( separately. Whenever the number of)]TJ --11.687 -1.2 TD -0.054 Tw -(expressions exceeds the number of expressions available, multiple)Tj -/TT4 1 Tf -T* -0 Tw -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.17 Tw -[( expressions are generated. Thus )]TJ -/TT4 1 Tf -16.4731 0 TD -(USE A B C D FOR E F)Tj -/TT2 1 Tf --18.5293 -1.2 TD -0.085 Tw -(means substitute )Tj -/TT4 1 Tf -8.0074 0 TD -0 Tw -(A)Tj -/TT2 1 Tf -0.7222 0 TD -0.085 Tw -[( for )]TJ -/TT4 1 Tf -1.8927 0 TD -0 Tw -(E)Tj -/TT2 1 Tf -0.667 0 TD -0.085 Tw -[( at the same time as substituting )]TJ -/TT4 1 Tf -15.2132 0 TD -0 Tw -(B)Tj -/TT2 1 Tf -0.7222 0 TD -0.085 Tw -[( for )]TJ -/TT4 1 Tf -1.8927 0 TD -0 Tw -(F)Tj -/TT2 1 Tf -0.6108 0 TD -(,)Tj --29.728 -1.2 TD -0.049 Tw -(then in another copy of the indicated expression, substitute )Tj -/TT4 1 Tf -26.7911 0 TD -0 Tw -(C)Tj -/TT2 1 Tf -0.7222 0 TD -0.049 Tw -[( for )]TJ -/TT4 1 Tf -1.8207 0 TD -0 Tw -(E)Tj -/TT2 1 Tf --29.3339 -1.2 TD -(and )Tj -/TT4 1 Tf -2.0323 0 TD -(D)Tj -/TT2 1 Tf -0.7222 0 TD -0.086 Tw -[( for )]TJ -/TT4 1 Tf -1.8947 0 TD -0 Tw -(F)Tj -/TT2 1 Tf -0.6108 0 TD -0.086 Tw -(. This is also equivalent to )Tj -/TT4 1 Tf -12.2997 0 TD -(USE A C FOR E AND B D)Tj --17.5596 -1.2 TD -0 Tw -(FOR F)Tj -/TT2 1 Tf -2.9995 0 TD -(.)Tj --2.9995 -1.9 TD -[(Note:)-609.9(The )]TJ -/TT4 1 Tf -5.254 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.253 Tw -[( command correctly handles the situation where)]TJ --4.3101 -1.2 TD -0.147 Tw -(one of the old expressions is the same as one of the new)Tj -T* -0 Tw -(ones, )Tj -/TT4 1 Tf -2.7241 0 TD -(USE X Y FOR Y X)Tj -/TT2 1 Tf -8.2241 0 TD -(, or )Tj -/TT4 1 Tf -1.7227 0 TD -(USE X FOR Y AND Y FOR X)Tj -/TT2 1 Tf -13.0571 0 TD -(. )Tj -ET -258.01 337.49 m -558.01 337.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 302.93 Tm -(?)Tj -8 0 0 8 135.15 310.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -135.12 302.93 m -234.71 302.93 l -234.71 302.93 m -234.71 318.95 l -135.12 318.95 m -234.71 318.95 l -135.12 318.95 m -135.12 302.93 l -S -BT -10 0 0 10 234.74 302.93 Tm -( )Tj -/TT2 1 Tf -0.2778 0 TD -(&OPTIONAL )Tj -/TT6 1 Tf -6.0015 0 TD -(NAME)Tj -/TT2 1 Tf -18.5997 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 300.22 m -558.01 300.22 l -S -BT -10 0 0 10 258 284.93 Tm -(If )Tj -/TT6 1 Tf -0.8765 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.043 Tw -[( is not provided describes all available Exec commands by)]TJ --3.7657 -1.2 TD -0.226 Tw -[(printing the name, argument list, and description of each. With)]TJ -/TT6 1 Tf -T* -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -(, only that command is described.)Tj -ET -258.01 256.22 m -558.01 256.22 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 229.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 221.66 m -228.6 221.66 l -228.6 221.66 m -228.6 237.68 l -129.01 237.68 m -228.6 237.68 l -129.01 237.68 m -129.01 221.66 l -S -BT -10 0 0 10 228.63 221.66 Tm -(??)Tj -/TT2 1 Tf -1.2217 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(EventSpec)Tj -/TT2 1 Tf -23.9905 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 218.95 m -558.01 218.95 l -S -BT -10 0 0 10 258 203.66 Tm -(Prints the most recent event matching the given )Tj -/TT6 1 Tf -21.3999 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -(.)Tj -ET -258.01 198.95 m -558.01 198.95 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 172.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 164.39 m -228.6 164.39 l -228.6 164.39 m -228.6 180.41 l -129.01 180.41 m -228.6 180.41 l -129.01 180.41 m -129.01 164.39 l -S -BT -10 0 0 10 228.63 164.39 Tm -(CONN)Tj -/TT2 1 Tf -2.9443 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DIRECTORY)Tj -/TT2 1 Tf -22.2678 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 161.68 m -558.01 161.68 l -S -BT -10 0 0 10 258 146.39 Tm -(Changes default pathname to )Tj -/TT6 1 Tf -13.3984 0 TD -(DIRECTORY)Tj -/TT2 1 Tf -5.8892 0 TD -(.)Tj -ET -258.01 141.68 m -558.01 141.68 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 115.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 107.12 m -228.6 107.12 l -228.6 107.12 m -228.6 123.14 l -129.01 123.14 m -228.6 123.14 l -129.01 123.14 m -129.01 107.12 l -S -BT -10 0 0 10 228.63 107.12 Tm -(DA)Tj -/TT2 1 Tf -25.49 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 104.41 m -558.01 104.41 l -S -BT -10 0 0 10 258 89.12 Tm -(Returns current date and time.)Tj -ET -258.01 84.41 m -558.01 84.41 l -S -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -30 0 obj -<< -/Length 7530 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 721.93 m -228.6 721.93 l -228.6 721.93 m -228.6 737.95 l -129.01 737.95 m -228.6 737.95 l -129.01 737.95 m -129.01 721.93 l -S -BT -10 0 0 10 228.63 721.93 Tm -(DIR )Tj -/TT2 1 Tf -2 0 TD -(&OPTIONAL )Tj -/TT6 1 Tf -6.0015 0 TD -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(KEYWORDS)Tj -/TT2 1 Tf -8.0427 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 719.22 m -558.01 719.22 l -S -BT -10 0 0 10 258 703.93 Tm -0.527 Tw -(Shows a directory listing for )Tj -/TT6 1 Tf -15.1399 0 TD -0 Tw -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -0.527 Tw -[( or the connected)]TJ --20.696 -1.2 TD -0.353 Tw -[(directory. If provided, )]TJ -/TT6 1 Tf -11.3051 0 TD -0 Tw -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -0.353 Tw -[( indicate information to be)]TJ --17.139 -1.2 TD -0.406 Tw -[(displayed for each file. Some keywords are: AUTHOR, AU,)]TJ -T* -0 Tw -(CREATIONDATE, DA, etc.)Tj -ET -258.01 663.22 m -558.01 663.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 628.66 Tm -(DO-EVENTS)Tj -8 0 0 8 187.38 636.6899 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -187.35 628.66 m -286.94 628.66 l -286.94 628.66 m -286.94 644.68 l -187.35 644.68 m -286.94 644.68 l -187.35 644.68 m -187.35 628.66 l -S -BT -/TT2 1 Tf -10 0 0 10 286.97 628.66 Tm -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -( &ENVIRONMENT )Tj -/TT6 1 Tf -8.6118 0 TD -(ENV)Tj -/TT2 1 Tf -3.4875 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 625.95 m -558.01 625.95 l -S -BT -/TT4 1 Tf -10 0 0 10 258 610.66 Tm -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -0.332 Tw -[( is intended as a way of putting together several)]TJ --5.834 -1.2 TD -0.245 Tw -[(different events, which can include commands. It executes the)]TJ -T* -0 Tw -(multiple )Tj -/TT6 1 Tf -3.9146 0 TD -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -0.191 Tw -[( as a single event. The values returned by the)]TJ -/TT4 1 Tf --7.5816 -1.2 TD -0 Tw -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -0.313 Tw -[( event are the concatenation of the values of the)]TJ --5.834 -1.2 TD -0.158 Tw -[(inputs. An input is not an EventSpec, but a call to a function or)]TJ -T* -0.012 Tw -[(command. If )]TJ -/TT6 1 Tf -6.0936 0 TD -0 Tw -(ENV)Tj -/TT2 1 Tf -2.0562 0 TD -0.012 Tw -[( is provided it is a lexical environment in which all)]TJ --8.1498 -1.2 TD -0.374 Tw -[(evaluations \(functions and commands\) will take place. Event)]TJ -T* -0.172 Tw -(specification in the )Tj -/TT6 1 Tf -9.0209 0 TD -0 Tw -(INPUTS)Tj -/TT2 1 Tf -3.667 0 TD -0.172 Tw -[( should be explicit, not relative, since)]TJ --12.6879 -1.2 TD -0.098 Tw -(referring to the last event will reinvoke the executing )Tj -/TT4 1 Tf -24.172 0 TD -0 Tw -(DO-EVENTS)Tj -/TT2 1 Tf --24.172 -1.2 TD -(command.)Tj -ET -258.01 497.95 m -558.01 497.95 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 471.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 463.39 m -228.6 463.39 l -228.6 463.39 m -228.6 479.41 l -129.01 479.41 m -228.6 479.41 l -129.01 479.41 m -129.01 463.39 l -S -BT -10 0 0 10 228.63 463.39 Tm -(FIX)Tj -/TT2 1 Tf -1.5557 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -14.9304 Tw -[( [Exec )14930.4(command])]TJ -ET -1 w []0 d -129.01 460.68 m -558.01 460.68 l -S -BT -10 0 0 10 258 445.39 Tm -0.142 Tw -[(Edits the specified event prior to reexecuting it. If the number of)]TJ -0 -1.2 TD -0.801 Tw -(characters in the )Tj -/TT4 1 Tf -10.0734 0 TD -0 Tw -(Fix)Tj -/TT2 1 Tf -1.4448 0 TD -0.801 Tw -(ed line is less than the variable)Tj -/TT4 1 Tf --11.5182 -1.2 TD -0 Tw -(TTYINFIXLIMIT)Tj -/TT2 1 Tf -7.0547 0 TD -0.172 Tw -[( then it will be edited using TTYIN, otherwise the)]TJ --7.0547 -1.2 TD -0 Tw -(Lisp editor is called via )Tj -/TT4 1 Tf -10.3384 0 TD -(EDITE)Tj -/TT2 1 Tf -2.9448 0 TD -(.)Tj -ET -258.01 404.68 m -558.01 404.68 l -S -BT -/TT4 1 Tf -10 0 0 10 129 370.12 Tm -(FORGET)Tj -8 0 0 8 170.71 378.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -170.68 370.12 m -270.27 370.12 l -270.27 370.12 m -270.27 386.14 l -170.68 386.14 m -270.27 386.14 l -170.68 386.14 m -170.68 370.12 l -S -BT -10 0 0 10 270.3 370.12 Tm -( )Tj -/TT2 1 Tf -0.2778 0 TD -(&REST )Tj -/TT6 1 Tf -3.6118 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -12.3191 Tw -[( [Exec )12319.1(command])]TJ -ET -1 w []0 d -129.01 367.41 m -558.01 367.41 l -S -BT -10 0 0 10 258 352.12 Tm -0 Tw -(Erases )Tj -/TT4 1 Tf -3.3901 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( information for the specified events.)Tj -ET -258.01 347.41 m -558.01 347.41 l -S -BT -/TT4 1 Tf -10 0 0 10 129 312.85 Tm -(NAME)Tj -8 0 0 8 158.48 320.88 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -158.45 312.85 m -258.04 312.85 l -258.04 312.85 m -258.04 328.87 l -158.45 328.87 m -258.04 328.87 l -158.45 328.87 m -158.45 312.85 l -S -BT -/TT2 1 Tf -10 0 0 10 258.07 312.85 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(COMMAND-NAME)Tj -/TT2 1 Tf -8.4995 0 TD -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EVENT-)Tj --25.3424 -1 TD -(SPEC)Tj -/TT2 1 Tf -2.7231 0 TD -19.552 Tw -[( [Exec )19552(command])]TJ -ET -1 w []0 d -129.01 300.14 m -558.01 300.14 l -S -BT -10 0 0 10 258 284.85 Tm -1.073 Tw -(Defines a new command, )Tj -/TT6 1 Tf -15.853 0 TD -0 Tw -(COMMAND-NAME)Tj -/TT2 1 Tf -8.4995 0 TD -1.073 Tw -(, and its)Tj -/TT6 1 Tf --24.3525 -1.2 TD -0 Tw -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -(, containing the events in )Tj -/TT6 1 Tf -11.6186 0 TD -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -(.)Tj -ET -258.01 268.14 m -558.01 268.14 l -S -BT -/TT4 1 Tf -10 0 0 10 129 233.58 Tm -(NDIR)Tj -8 0 0 8 153.48 241.61 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -153.45 233.58 m -253.04 233.58 l -253.04 233.58 m -253.04 249.6 l -153.45 249.6 m -253.04 249.6 l -153.45 249.6 m -153.45 233.58 l -S -BT -/TT2 1 Tf -10 0 0 10 253.07 233.58 Tm -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(PATHNAME)Tj -/TT2 1 Tf -5.5562 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -1.2091 Tw -[( [Exec )1209.1(command])]TJ -ET -1 w []0 d -129.01 230.87 m -558.01 230.87 l -S -BT -10 0 0 10 258 215.58 Tm -0.011 Tw -(Shows a directory listing for )Tj -/TT6 1 Tf -12.5599 0 TD -0 Tw -(PATHNAME)Tj -/TT2 1 Tf -5.5561 0 TD -0.011 Tw -[( or the connected directory)]TJ --18.116 -1.2 TD -0.713 Tw -[(in abbreviated format. If provided, )]TJ -/TT6 1 Tf -19.7306 0 TD -0 Tw -(KEYWORDS)Tj -/TT2 1 Tf -5.834 0 TD -0.713 Tw -[( indicate)]TJ --25.5646 -1.2 TD -0.266 Tw -[(information to be displayed for each file. Some keywords are:)]TJ -T* -0 Tw -(AUTHOR, AU, CREATIONDATE, DA, etc.)Tj -ET -258.01 174.87 m -558.01 174.87 l -S -BT -/TT4 1 Tf -10 0 0 10 129 140.31 Tm -(PL)Tj -8 0 0 8 141.82 148.34 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -141.79 140.31 m -241.38 140.31 l -241.38 140.31 m -241.38 156.33 l -141.79 156.33 m -241.38 156.33 l -141.79 156.33 m -141.79 140.31 l -S -BT -/TT2 1 Tf -10 0 0 10 241.41 140.31 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(SYMBOL)Tj -/TT2 1 Tf -4.168 0 TD -19.4884 Tw -[( [Exec )19488.4(command])]TJ -ET -1 w []0 d -129.01 137.6 m -558.01 137.6 l -S -BT -10 0 0 10 258 122.31 Tm -0 Tw -(Prints the property list of )Tj -/TT6 1 Tf -11.0601 0 TD -(SYMBOL)Tj -/TT2 1 Tf -4.168 0 TD -( in an easy to read format.)Tj -ET -258.01 117.6 m -558.01 117.6 l -S -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -33 0 obj -<< -/Length 7746 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 721.93 m -228.6 721.93 l -228.6 721.93 m -228.6 737.95 l -129.01 737.95 m -228.6 737.95 l -129.01 737.95 m -129.01 721.93 l -S -BT -10 0 0 10 228.63 721.93 Tm -(REMEMBER)Tj -/TT2 1 Tf -5.8335 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -9.0989 Tw -[( [Exec )9098.9(command])]TJ -ET -1 w []0 d -129.01 719.22 m -558.01 719.22 l -S -BT -10 0 0 10 258 703.93 Tm -0.132 Tw -[(Tells File Manager to remember type-in from specified event\(s\) ,)]TJ -/TT6 1 Tf -0 -1.2 TD -0 Tw -(EVENT-SPEC)Tj -/TT2 1 Tf -6.3901 0 TD -( , as expressions to save.)Tj -ET -258.01 687.22 m -558.01 687.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 652.66 Tm -(SHH)Tj -8 0 0 8 150.15 660.6899 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -150.12 652.66 m -249.71 652.66 l -249.71 652.66 m -249.71 668.68 l -150.12 668.68 m -249.71 668.68 l -150.12 668.68 m -150.12 652.66 l -S -BT -/TT2 1 Tf -10 0 0 10 249.74 652.66 Tm -( &REST )Tj -/TT6 1 Tf -3.8897 0 TD -(LINE)Tj -/TT2 1 Tf -2.2231 0 TD -16.9884 Tw -[( [Exec )16988.4(command])]TJ -ET -1 w []0 d -129.01 649.95 m -558.01 649.95 l -S -BT -10 0 0 10 258 634.66 Tm -0 Tw -(Executes )Tj -/TT6 1 Tf -4.3911 0 TD -(LINE)Tj -/TT2 1 Tf -2.2231 0 TD -( without history list processing.)Tj -ET -258.01 629.95 m -558.01 629.95 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 603.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 595.39 m -228.6 595.39 l -228.6 595.39 m -228.6 611.41 l -129.01 611.41 m -228.6 611.41 l -129.01 611.41 m -129.01 595.39 l -S -BT -10 0 0 10 228.63 595.39 Tm -(UNDO )Tj -/TT2 1 Tf -3.2222 0 TD -(&REST )Tj -/TT6 1 Tf -3.6118 0 TD -(EventSpec)Tj -/TT2 1 Tf -4.8364 0 TD -13.5418 Tw -[( [Exec )13541.8(command])]TJ -ET -1 w []0 d -129.01 592.68 m -558.01 592.68 l -S -BT -10 0 0 10 258 577.39 Tm -0.187 Tw -(Undoes the side effects of the specified event \(see below under)Tj -0 -1.2 TD -0 Tw -("Undoing"\).)Tj -ET -258.01 560.68 m -558.01 560.68 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 534.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 526.12 m -228.6 526.12 l -228.6 526.12 m -228.6 542.14 l -129.01 542.14 m -228.6 542.14 l -129.01 542.14 m -129.01 526.12 l -S -BT -10 0 0 10 228.63 526.12 Tm -(PP)Tj -/TT2 1 Tf -1.334 0 TD -( &OPTIONAL )Tj -/TT6 1 Tf -6.2793 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(TYPES)Tj -/TT2 1 Tf -3.2788 0 TD -7.5413 Tw -[( [Exec )7541.3(command])]TJ -ET -1 w []0 d -129.01 523.41 m -558.01 523.41 l -S -BT -10 0 0 10 258 508.12 Tm -0 Tw -(Shows \(prettyprinted\) the definitions for )Tj -/TT6 1 Tf -17.6753 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( specified by )Tj -/TT6 1 Tf -5.8364 0 TD -(TYPES)Tj -/TT2 1 Tf -3.2788 0 TD -(.)Tj -ET -258.01 503.41 m -558.01 503.41 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 476.88 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 468.85 m -228.6 468.85 l -228.6 468.85 m -228.6 484.87 l -129.01 484.87 m -228.6 484.87 l -129.01 484.87 m -129.01 468.85 l -S -BT -10 0 0 10 228.63 468.85 Tm -(SEE)Tj -/TT2 1 Tf -2.001 0 TD -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -16.5427 Tw -[( [Exec )16542.7(command])]TJ -ET -1 w []0 d -129.01 466.14 m -558.01 466.14 l -S -BT -10 0 0 10 258 450.85 Tm -0 Tw -(Prints the contents of )Tj -/TT6 1 Tf -9.6719 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -( in the Exec window, hiding comments.)Tj -ET -258.01 446.14 m -558.01 446.14 l -S -BT -/TT4 1 Tf -10 0 0 10 129 411.58 Tm -(SEE*)Tj -8 0 0 8 152.94 419.61 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -152.91 411.58 m -252.5 411.58 l -252.5 411.58 m -252.5 427.6 l -152.91 427.6 m -252.5 427.6 l -152.91 427.6 m -152.91 411.58 l -S -BT -/TT2 1 Tf -10 0 0 10 252.53 411.58 Tm -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -16.1537 Tw -[( [Exec )16153.7(command])]TJ -ET -1 w []0 d -129.01 408.87 m -558.01 408.87 l -S -BT -10 0 0 10 258 393.58 Tm -0.499 Tw -(Prints the contents of )Tj -/TT6 1 Tf -11.6679 0 TD -0 Tw -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -0.499 Tw -[( in the Exec window, showing)]TJ --14.4467 -1.2 TD -0 Tw -(comments.)Tj -ET -258.01 376.87 m -558.01 376.87 l -S -BT -/TT4 1 Tf -10 0 0 10 129 342.31 Tm -(TIME)Tj -8 0 0 8 152.93 350.34 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -152.9 342.31 m -252.49 342.31 l -252.49 342.31 m -252.49 358.33 l -152.9 358.33 m -252.49 358.33 l -152.9 358.33 m -152.9 342.31 l -S -BT -/TT2 1 Tf -10 0 0 10 252.52 342.31 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -( &KEY )Tj -/TT6 1 Tf -3.2236 0 TD -(REPEAT)Tj -/TT2 1 Tf -4.001 0 TD -( &ENVIRONMENT )Tj -/TT6 1 Tf -8.6118 0 TD -(ENV)Tj -/TT2 1 Tf -2.0561 0 TD -1.7089 Tw -[( [Exec )1708.9(command])]TJ -ET -1 w []0 d -129.01 339.6 m -558.01 339.6 l -S -BT -10 0 0 10 258 324.31 Tm -0.252 Tw -(Times the evaluation of )Tj -/TT6 1 Tf -11.6247 0 TD -0 Tw -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -0.252 Tw -[( in the lexical environment )]TJ -/TT6 1 Tf -13.0993 0 TD -0 Tw -(ENV)Tj -/TT2 1 Tf -2.0562 0 TD -(,)Tj --29.724 -1.2 TD -(repeating )Tj -/TT6 1 Tf -4.4518 0 TD -(REPEAT)Tj -/TT2 1 Tf -4.001 0 TD -0.0002 Tc -0.0038 Tw -( number of times. Information is displayed in the)Tj --8.4527 -1.2 TD -0 Tc -0 Tw -(Exec window.)Tj -ET -258.01 295.6 m -558.01 295.6 l -S -BT -/TT4 1 Tf -10 0 0 10 129 261.04 Tm -(TY)Tj -8 0 0 8 141.82 269.07 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -141.79 261.04 m -241.38 261.04 l -241.38 261.04 m -241.38 277.06 l -141.79 277.06 m -241.38 277.06 l -141.79 277.06 m -141.79 261.04 l -S -BT -/TT2 1 Tf -10 0 0 10 241.41 261.04 Tm -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -17.2657 Tw -[( [Exec )17265.7(command])]TJ -ET -1 w []0 d -129.01 258.33 m -558.01 258.33 l -S -BT -10 0 0 10 258 243.04 Tm -0 Tw -(Exactly like the )Tj -/TT4 1 Tf -6.9473 0 TD -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -( Exec command.)Tj -ET -258.01 238.33 m -558.01 238.33 l -S -BT -/TT4 1 Tf -10 0 0 10 129 203.77 Tm -(TYPE)Tj -8 0 0 8 155.16 211.8 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -155.13 203.77 m -254.72 203.77 l -254.72 203.77 m -254.72 219.79 l -155.13 219.79 m -254.72 219.79 l -155.13 219.79 m -155.13 203.77 l -S -BT -/TT2 1 Tf -10 0 0 10 254.75 203.77 Tm -( &REST )Tj -/TT6 1 Tf -3.8896 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -15.9317 Tw -[( [Exec )15931.7(command])]TJ -ET -1 w []0 d -129.01 201.06 m -558.01 201.06 l -S -BT -10 0 0 10 258 185.77 Tm -0 Tw -(Prints the contents of )Tj -/TT6 1 Tf -9.6719 0 TD -(FILES)Tj -/TT2 1 Tf -2.7788 0 TD -( in the Exec window, hiding comments.)Tj -ET -258.01 181.06 m -558.01 181.06 l -S -BT -/TT4 1 Tf -12 0 0 12 54 157.21 Tm -(Variables)Tj -ET -54.01 154.06 m -558.01 154.06 l -S -BT -/TT2 1 Tf -10 0 0 10 258 138.77 Tm -(A number of variables are provided for convenience in the Exec.)Tj -/TT4 1 Tf --12.9 -3.827 TD -(IL:IT)Tj -8 0 0 8 150.15 108.53 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -150.12 100.5 m -249.71 100.5 l -249.71 100.5 m -249.71 116.52 l -150.12 116.52 m -249.71 116.52 l -150.12 116.52 m -150.12 100.5 l -S -BT -/TT2 1 Tf -10 0 0 10 249.74 100.5 Tm -[( )-26046.3([Variable])]TJ -ET -1 w []0 d -129.01 97.79 m -558.01 97.79 l -S -BT -10 0 0 10 258 82.5 Tm -0.014 Tw -(Whenever an event is completed, the global value of the variable )Tj -/TT4 1 Tf -29.1159 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf --29.1159 -1.2 TD -(is reset to the events value. For example,)Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -36 0 obj -<< -/Length 7114 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -8 0 0 8 258 730.2 Tm -(312>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 730.2 Tm -(\(SQRT 2\))Tj --1.802 -1 TD -(1.)Tj -/TT8 1 Tf -0.834 0 TD -(414214)Tj -/TT2 1 Tf -8 0 0 8 258 708.91 Tm -(313>)Tj -/TT4 1 Tf -10 0 0 10 276.0195 708.91 Tm -(\(SQRT IL:IT\))Tj -/TT8 1 Tf --1.802 -0.871 TD -(1.189207)Tj -/TT2 1 Tf -0 -1.829 TD -0.055 Tw -(Following a )Tj -/TT4 1 Tf -5.4459 0 TD -0 Tw -(??)Tj -/TT2 1 Tf -1.2217 0 TD -0.055 Tw -[( command, )]TJ -/TT4 1 Tf -5.3341 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.055 Tw -[( is set to the value of the last event)]TJ --14.1121 -1.2 TD -0.013 Tw -[(printed. The inspector has an option for setting the variable )]TJ -/TT4 1 Tf -26.7699 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.013 Tw -[( to)]TJ --28.8803 -1.2 TD -0.027 Tw -(the current selection or inspected object, as well. The variable )Tj -/TT4 1 Tf -27.8955 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf --27.8955 -1.2 TD -0.189 Tw -(is global, and is shared among all Execs. )Tj -/TT4 1 Tf -20.3778 0 TD -0 Tw -(IL:IT)Tj -/TT2 1 Tf -2.1104 0 TD -0.189 Tw -[( is a convenient)]TJ --22.4881 -1.2 TD -0 Tw -(mechanism for passing values from one process to another.)Tj -0 -1.9 TD -(Note:)Tj -/TT4 1 Tf -3 0 TD -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.215 Tw -[( is in the INTERLISP package and these examples are)]TJ --0.8887 -1.2 TD -0.199 Tw -(intended for an Exec whose )Tj -/TT4 1 Tf -13.6141 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -0.199 Tw -[( is set to )]TJ -/TT4 1 Tf -5.2743 0 TD -0 Tw -(XCL-)Tj --24.6672 -1.2 TD -(USER)Tj -/TT2 1 Tf -2.7783 0 TD -(. Thus, )Tj -/TT4 1 Tf -3.6123 0 TD -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -( must be package qualified \(the)Tj -/TT4 1 Tf -13.8975 0 TD -( IL:)Tj -/TT2 1 Tf -1.4995 0 TD -(\).)Tj -ET -258.01 586.2 m -558.01 586.2 l -S -BT -10 0 0 10 258 570.91 Tm -0.379 Tw -(The following variables are maintained independently by each)Tj -0 -1.2 TD -0.003 Tw -(Exec. \(When a new Exec is started, the initial values are )Tj -/TT4 1 Tf -25.2112 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.003 Tw -(, or, for)Tj --26.8221 -1.2 TD -0.161 Tw -(a nested Exec, the value for the "parent" Exec. However, events)Tj -T* -0 Tw -(executed under a nested Exec will not affect the parent values.\))Tj -/TT4 1 Tf --12.9 -3.827 TD -(CL:-)Tj -8 0 0 8 149.03 504.67 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -149 496.64 m -248.59 496.64 l -248.59 496.64 m -248.59 512.66 l -149 512.66 m -248.59 512.66 l -149 512.66 m -149 496.64 l -S -BT -/TT2 1 Tf -10 0 0 10 248.62 496.64 Tm -[( )-26158.3([Variable])]TJ -ET -1 w []0 d -129.01 493.93 m -558.01 493.93 l -S -BT -/TT4 1 Tf -10 0 0 10 129 459.37 Tm -(CL:+)Tj -8 0 0 8 151.54 467.4 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -151.51 459.37 m -251.1 459.37 l -251.1 459.37 m -251.1 475.39 l -151.51 475.39 m -251.1 475.39 l -151.51 475.39 m -151.51 459.37 l -S -BT -/TT2 1 Tf -10 0 0 10 251.13 459.37 Tm -[( )-25907.3([Variable])]TJ -ET -1 w []0 d -129.01 456.66 m -558.01 456.66 l -S -BT -/TT4 1 Tf -10 0 0 10 129 422.1 Tm -(CL:++)Tj -8 0 0 8 157.38 430.13 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -157.35 422.1 m -256.94 422.1 l -256.94 422.1 m -256.94 438.12 l -157.35 438.12 m -256.94 438.12 l -157.35 438.12 m -157.35 422.1 l -S -BT -/TT2 1 Tf -10 0 0 10 256.97 422.1 Tm -[( )-25323.3([Variable])]TJ -ET -1 w []0 d -129.01 419.39 m -558.01 419.39 l -S -BT -/TT4 1 Tf -10 0 0 10 129 384.83 Tm -(CL:+++)Tj -8 0 0 8 163.22 392.86 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -163.19 384.83 m -262.78 384.83 l -262.78 384.83 m -262.78 400.85 l -163.19 400.85 m -262.78 400.85 l -163.19 400.85 m -163.19 384.83 l -S -BT -/TT2 1 Tf -10 0 0 10 262.81 384.83 Tm -[( )-24739.3([Variable])]TJ -ET -1 w []0 d -129.01 382.12 m -558.01 382.12 l -S -BT -10 0 0 10 258 366.83 Tm -0.012 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT4 1 Tf -25.59 0 TD -0 Tw -(-)Tj -/TT2 1 Tf -0.333 0 TD -0.012 Tw -[( is bound)]TJ --25.923 -1.2 TD -0.186 Tw -(to the form, )Tj -/TT4 1 Tf -5.8934 0 TD -0 Tw -(CL:+)Tj -/TT2 1 Tf -2.25 0 TD -0.186 Tw -[( is bound to the previous form, )]TJ -/TT4 1 Tf -15.0315 0 TD -0 Tw -(CL:++)Tj -/TT2 1 Tf -2.834 0 TD -0.186 Tw -[( the one)]TJ --26.0089 -1.2 TD -0.149 Tw -(before, etc. If the input is in apply-format rather than eval-format,)Tj -T* -0 Tw -(the value of the respective variable is just the function name.)Tj -ET -258.01 326.12 m -558.01 326.12 l -S -BT -/TT4 1 Tf -10 0 0 10 129 291.56 Tm -(CL:*)Tj -8 0 0 8 149.59 299.59 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -149.56 291.56 m -249.15 291.56 l -249.15 291.56 m -249.15 307.58 l -149.56 307.58 m -249.15 307.58 l -149.56 307.58 m -149.56 291.56 l -S -BT -/TT2 1 Tf -10 0 0 10 249.18 291.56 Tm -[( )-26102.3([Variable])]TJ -ET -1 w []0 d -129.01 288.85 m -558.01 288.85 l -S -BT -/TT4 1 Tf -10 0 0 10 129 254.29 Tm -(CL:**)Tj -8 0 0 8 153.48 262.32 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -153.45 254.29 m -253.04 254.29 l -253.04 254.29 m -253.04 270.31 l -153.45 270.31 m -253.04 270.31 l -153.45 270.31 m -153.45 254.29 l -S -BT -/TT2 1 Tf -10 0 0 10 253.07 254.29 Tm -[( )-25713.3([Variable])]TJ -ET -1 w []0 d -129.01 251.58 m -558.01 251.58 l -S -BT -/TT4 1 Tf -10 0 0 10 129 217.02 Tm -(CL:***)Tj -8 0 0 8 157.37 225.05 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -157.34 217.02 m -256.93 217.02 l -256.93 217.02 m -256.93 233.04 l -157.34 233.04 m -256.93 233.04 l -157.34 233.04 m -157.34 217.02 l -S -BT -/TT2 1 Tf -10 0 0 10 256.96 217.02 Tm -[( )-25324.3([Variable])]TJ -ET -1 w []0 d -129.01 214.31 m -558.01 214.31 l -S -BT -10 0 0 10 258 199.02 Tm -0.124 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT4 1 Tf -26.822 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -0.124 Tw -[( is)]TJ --28.8772 -1.2 TD -0.156 Tw -(bound to the \(first\) value returned by the last event, )Tj -/TT4 1 Tf -24.4619 0 TD -0 Tw -(CL:**)Tj -/TT2 1 Tf -2.4443 0 TD -0.156 Tw -[( to the)]TJ --26.9062 -1.2 TD -0.046 Tw -(event before that, etc. The variable )Tj -/TT4 1 Tf -16.0074 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -0.046 Tw -[( differs from )]TJ -/TT4 1 Tf -5.6946 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.046 Tw -[( in that )]TJ -/TT4 1 Tf -3.4178 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.046 Tw -[( is)]TJ --28.9524 -1.2 TD -0.16 Tw -(global while each separate Exec maintains its own copy of )Tj -/TT4 1 Tf -27.6698 0 TD -0 Tw -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -(,)Tj -/TT4 1 Tf --29.725 -1.2 TD -(CL:**)Tj -/TT2 1 Tf -2.4443 0 TD -0.032 Tw -[( and )]TJ -/TT4 1 Tf -2.2881 0 TD -0 Tw -(CL:***)Tj -/TT2 1 Tf -2.8335 0 TD -0.032 Tw -(. In addition, the history commands change )Tj -/TT4 1 Tf -19.5682 0 TD -0 Tw -(IT)Tj -/TT2 1 Tf -0.8887 0 TD -0.032 Tw -(, but)Tj --28.0229 -1.2 TD -0 Tw -(only inputs which are retained on the history list can change )Tj -/TT4 1 Tf -26.7378 0 TD -(CL:*)Tj -/TT2 1 Tf -2.0552 0 TD -(.)Tj -ET -258.01 134.31 m -558.01 134.31 l -S -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -39 0 obj -<< -/Length 6752 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 721.93 Tm -(CL:/)Tj -/TT2 1 Tf -1.9438 0 TD -( )Tj -/TT4 1 Tf -8 0 0 8 151.26 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -151.23 721.93 m -250.82 721.93 l -250.82 721.93 m -250.82 737.95 l -151.23 737.95 m -250.82 737.95 l -151.23 737.95 m -151.23 721.93 l -S -BT -/TT2 1 Tf -10 0 0 10 250.85 721.93 Tm -26.2132 Tw -[( [Variable])]TJ -ET -1 w []0 d -129.01 719.22 m -558.01 719.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 684.66 Tm -0 Tw -(CL://)Tj -/TT2 1 Tf -2.2217 0 TD -( )Tj -/TT4 1 Tf -8 0 0 8 154.04 692.6901 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -154.01 684.66 m -253.6 684.66 l -253.6 684.66 m -253.6 700.68 l -154.01 700.68 m -253.6 700.68 l -154.01 700.68 m -154.01 684.66 l -S -BT -/TT2 1 Tf -10 0 0 10 253.63 684.66 Tm -25.9352 Tw -[( [Variable])]TJ -ET -1 w []0 d -129.01 681.95 m -558.01 681.95 l -S -BT -/TT4 1 Tf -10 0 0 10 129 647.39 Tm -0 Tw -(CL:///)Tj -/TT2 1 Tf -2.4995 0 TD -( )Tj -/TT4 1 Tf -8 0 0 8 156.82 655.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -156.79 647.39 m -256.38 647.39 l -256.38 647.39 m -256.38 663.41 l -156.79 663.41 m -256.38 663.41 l -156.79 663.41 m -156.79 647.39 l -S -BT -/TT2 1 Tf -10 0 0 10 256.41 647.39 Tm -25.6572 Tw -[( [Variable])]TJ -ET -1 w []0 d -129.01 644.68 m -558.01 644.68 l -S -BT -10 0 0 10 258 629.39 Tm -0.156 Tw -(While a form is being evaluated by an Exec, the variable )Tj -/TT4 1 Tf -26.8962 0 TD -0 Tw -(CL:/)Tj -/TT2 1 Tf -1.9438 0 TD -0.156 Tw -[( is)]TJ --28.84 -1.2 TD -0.069 Tw -(bound to a list of the results of the last event in that Exec, )Tj -/TT4 1 Tf -26.592 0 TD -0 Tw -(CL://)Tj -/TT2 1 Tf -2.2217 0 TD -0.069 Tw -[( to)]TJ --28.8137 -1.2 TD -0 Tw -(the values of the event before that, etc. )Tj -ET -258.01 600.68 m -558.01 600.68 l -S -BT -/TT4 1 Tf -12 0 0 12 54 576.83 Tm -(Fonts in the Exec)Tj -ET -54.01 573.68 m -558.01 573.68 l -S -BT -/TT2 1 Tf -10 0 0 10 258 554.39 Tm -0.121 Tw -(The Exec can use different fonts for displaying the prompt, users)Tj -T* -0.081 Tw -(input, intermediate printout, and the values returned by evaluation.)Tj -T* -0 Tw -(The following variables control the Execs font use:)Tj -/TT4 1 Tf -8 0 0 8 129.04 500.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 492.12 m -228.6 492.12 l -228.6 492.12 m -228.6 508.14 l -129.01 508.14 m -228.6 508.14 l -129.01 508.14 m -129.01 492.12 l -S -BT -10 0 0 10 228.63 492.12 Tm -(PROMPTFONT)Tj -/TT2 1 Tf -6.9995 0 TD -[( )-21157.8([Variable])]TJ -ET -1 w []0 d -129.01 489.41 m -558.01 489.41 l -S -BT -10 0 0 10 258 474.12 Tm -(Font used for printing the event prompt.)Tj -ET -258.01 469.41 m -558.01 469.41 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 442.88 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 434.85 m -228.6 434.85 l -228.6 434.85 m -228.6 450.87 l -129.01 450.87 m -228.6 450.87 l -129.01 450.87 m -129.01 434.85 l -S -BT -10 0 0 10 228.63 434.85 Tm -(INPUTFONT)Tj -/TT2 1 Tf -5.7217 0 TD -[( )-22435.7([Variable])]TJ -ET -1 w []0 d -129.01 432.14 m -558.01 432.14 l -S -BT -10 0 0 10 258 416.85 Tm -(Font used for echoing users type-in.)Tj -ET -258.01 412.14 m -558.01 412.14 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 385.61 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 377.58 m -228.6 377.58 l -228.6 377.58 m -228.6 393.6 l -129.01 393.6 m -228.6 393.6 l -129.01 393.6 m -129.01 377.58 l -S -BT -10 0 0 10 228.63 377.58 Tm -(PRINTOUTFONT)Tj -/TT2 1 Tf -7.8325 0 TD -[( )-20324.8([Variable])]TJ -ET -1 w []0 d -129.01 374.87 m -558.01 374.87 l -S -BT -10 0 0 10 258 359.58 Tm -0.154 Tw -(Font used for any intermediate printing caused by execution of a)Tj -0 -1.2 TD -0.672 Tw -(command or evaluation of a form. Initially the same as)Tj -/TT4 1 Tf -T* -0 Tw -(DEFAULTFONT)Tj -/TT2 1 Tf -7.3877 0 TD -(.)Tj -ET -258.01 330.87 m -558.01 330.87 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 304.34 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 296.31 m -228.6 296.31 l -228.6 296.31 m -228.6 312.33 l -129.01 312.33 m -228.6 312.33 l -129.01 312.33 m -129.01 296.31 l -S -BT -10 0 0 10 228.63 296.31 Tm -(VALUEFONT)Tj -/TT2 1 Tf -6.1108 0 TD -[( )-22046.5([Variable])]TJ -ET -1 w []0 d -129.01 293.6 m -558.01 293.6 l -S -BT -10 0 0 10 258 278.31 Tm -0.246 Tw -(Font used to print the values returned by evaluation of a form.)Tj -0 -1.2 TD -0 Tw -(Initially the same as )Tj -/TT4 1 Tf -9.0596 0 TD -(DEFAULTFONT)Tj -/TT2 1 Tf -7.3877 0 TD -(.)Tj -ET -258.01 261.6 m -558.01 261.6 l -S -BT -/TT4 1 Tf -12 0 0 12 54 237.75 Tm -(Changing the Exec)Tj -ET -54.01 234.6 m -558.01 234.6 l -S -BT -10 0 0 10 129 200.04 Tm -(\()Tj -8 0 0 8 132.37 208.07 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -132.34 200.04 m -231.93 200.04 l -231.93 200.04 m -231.93 216.06 l -132.34 216.06 m -231.93 216.06 l -132.34 216.06 m -132.34 200.04 l -S -BT -10 0 0 10 231.96 200.04 Tm -(CHANGESLICE )Tj -/TT6 1 Tf -7.5562 0 TD -(N HISTORY )Tj -/TT4 1 Tf -6.7227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-13045.5([Function])]TJ -ET -1 w []0 d -129.01 197.33 m -558.01 197.33 l -S -BT -10 0 0 10 258 178.04 Tm -0.201 Tw -(Changes the time-slice of the history list )Tj -/TT6 1 Tf -19.3591 0 TD -0 Tw -(HISTORY)Tj -/TT2 1 Tf -4.4448 0 TD -0.201 Tw -[( to )]TJ -/TT6 1 Tf -1.7916 0 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.201 Tw -(. If )Tj -/TT4 1 Tf -1.7912 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(,)Tj -/TT6 1 Tf --29.7198 -1.2 TD -(HISTORY)Tj -/TT2 1 Tf -4.4448 0 TD -( defaults to the top level history )Tj -/TT4 1 Tf -14.0635 0 TD -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -(.)Tj --25.8428 -1.9 TD -0.073 Tw -[(Note:)-609.9(The effect of )]TJ -/TT6 1 Tf -9.0554 0 TD -0 Tw -(increasing)Tj -/TT2 1 Tf -4.5581 0 TD -0.073 Tw -[( the time-slice is gradual: the history)]TJ --10.6135 -1.2 TD -0.227 Tw -(list is simply allowed to grow to the corresponding length)Tj -T* -0.13 Tw -(before any events are forgotten. )Tj -/TT6 1 Tf -15.5114 0 TD -0 Tw -(Decreasing)Tj -/TT2 1 Tf -5.0581 0 TD -0.13 Tw -[( the time-slice)]TJ --20.5695 -1.2 TD -0.298 Tw -(will immediately remove a sufficient number of the older)Tj -T* -0.31 Tw -(events to bring the history list down to the proper size.)Tj -T* -0 Tw -(However, )Tj -/TT4 1 Tf -4.5475 0 TD -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.046 Tw -[( is undoable, so that these events)]TJ --11.8258 -1.2 TD -0.318 Tw -[(are \(temporarily\) recoverable. Therefore, if you want to)]TJ -T* -0.268 Tw -(recover the storage associated with these events without)Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -44 0 obj -<< -/Length 6378 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 288 730.2 Tm -(waiting )Tj -/TT6 1 Tf -3.4246 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -0.034 Tw -[( more events until the )]TJ -/TT4 1 Tf -10.0084 0 TD -0 Tw -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.034 Tw -[( event drops)]TJ --21.4335 -1.2 TD -0 Tw -(off the history list, you must perform a )Tj -/TT4 1 Tf -16.9507 0 TD -(FORGET)Tj -/TT2 1 Tf -4.1665 0 TD -( command.)Tj -ET -258.01 713.49 m -558.01 713.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 689.64 Tm -(Defining New Commands)Tj -ET -54.01 686.49 m -558.01 686.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 658.93 Tm -0.153 Tw -(You can define )Tj -/TT4 1 Tf -8 0 0 8 332.12 666.96 Tm -0.1525 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -332.09 658.93 m -431.68 658.93 l -431.68 658.93 m -431.68 674.95 l -332.09 674.95 m -431.68 674.95 l -332.09 674.95 m -332.09 658.93 l -S -BT -/TT2 1 Tf -10 0 0 10 431.71 658.93 Tm -0.153 Tw -(new Exec commands using)Tj --17.371 -1.2 TD -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -( macro.)Tj -/TT4 1 Tf --24.2335 -3.827 TD -(\(XCL:DEFCOMMAND)Tj -8 0 0 8 229.02 616.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -228.99 608.66 m -328.58 608.66 l -328.58 608.66 m -328.58 624.68 l -228.99 624.68 m -328.58 624.68 l -228.99 624.68 m -228.99 608.66 l -S -BT -10 0 0 10 328.61 608.66 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME ARGUMENT-LIST &REST BODY)Tj -/TT4 1 Tf -18.0576 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-380.9([Macro])]TJ -ET -1 w []0 d -129.01 605.95 m -558.01 605.95 l -S -BT -/TT4 1 Tf -10 0 0 10 258 590.66 Tm -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.204 Tw -[( is similar to )]TJ -/TT4 1 Tf -6.3722 0 TD -0 Tw -(XCL:DEFMACRO)Tj -/TT2 1 Tf -8.1104 0 TD -0.204 Tw -(, but defines)Tj --24.148 -1.2 TD -0.094 Tw -(new Exec commands. The )Tj -/TT6 1 Tf -12.4365 0 TD -0 Tw -(ARGUMENT-LIST)Tj -/TT2 1 Tf -8.167 0 TD -0.094 Tw -[( can have keywords,)]TJ --20.6035 -1.2 TD -0.171 Tw -(defstructure, and use all of the features of macro argument lists.)Tj -T* -0 Tw -(When )Tj -/TT6 1 Tf -2.9351 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.045 Tw -[( is subsequently typed to the Exec, the rest of the line)]TJ --5.8243 -1.2 TD -0.267 Tw -(is processed like the arguments to a macro, and the )Tj -/TT6 1 Tf -25.9044 0 TD -0 Tw -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.267 Tw -[( is)]TJ --28.7384 -1.2 TD -0 Tw -(executed. )Tj -/TT4 1 Tf -4.7173 0 TD -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.103 Tw -[( is a definer; the File Manager will)]TJ --14.3828 -1.2 TD -0.122 Tw -(remember typed-in definitions and allow them to be saved, edited)Tj -T* -0 Tw -(with )Tj -/TT4 1 Tf -2.0562 0 TD -(EDITDEF)Tj -/TT2 1 Tf -4.2778 0 TD -(, etc.)Tj --6.334 -1.9 TD -0.149 Tw -(There are actually three kinds of commands that can be defined,)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(:EVAL)Tj -/TT2 1 Tf -3 0 TD -(, )Tj -/TT4 1 Tf -0.6907 0 TD -(:QUIET)Tj -/TT2 1 Tf -3.3887 0 TD -0.135 Tw -(, and )Tj -/TT4 1 Tf -2.772 0 TD -0 Tw -(:INPUT)Tj -/TT2 1 Tf -3.333 0 TD -0.135 Tw -(. Commands can also be marked as)Tj --13.1843 -1.2 TD -0.504 Tw -(only for the debugger, in which case they are labelled as)Tj -/TT4 1 Tf -T* -0 Tw -(:DEBUGGER)Tj -/TT2 1 Tf -6.1113 0 TD -0.138 Tw -(. The command type is noted by supplying a list for)Tj --6.1113 -1.2 TD -0 Tw -(the )Tj -/TT6 1 Tf -2.104 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.436 Tw -[( argument to )]TJ -/TT4 1 Tf -7.2001 0 TD -0 Tw -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.6655 0 TD -0.436 Tw -(, where the first)Tj --21.8587 -1.2 TD -0.115 Tw -(element of the list is the command name, and the other elements)Tj -T* -0 Tw -(are keyword\(s\) for the command type and, optionally )Tj -/TT4 1 Tf -23.5669 0 TD -(:DEBUGGER)Tj -/TT2 1 Tf -6.1113 0 TD -(. )Tj --29.6782 -1.9 TD -0.087 Tw -[(Note:)-1209.9(The documentation string in user defined Exec commands)]TJ -ET -570 411.44 0.99 -18.99 re -f -BT -10 0 0 10 294 384.66 Tm -0.213 Tw -(is automatically added to the documentation descriptions)Tj -ET -570 392.44 0.99 -11.99 re -f -BT -10 0 0 10 294 372.66 Tm -0.912 Tw -(by the )Tj -/TT4 1 Tf -4.826 0 TD -0 Tw -(CL:DOCUMENTATION)Tj -/TT2 1 Tf -10.5542 0 TD -0.912 Tw -[( function under the)]TJ -ET -570 380.44 0.99 -11.99 re -f -BT -10 0 0 10 294 360.66 Tm -0.241 Tw -(COMMANDS type and can be shown using the )Tj -/TT4 1 Tf -23.0496 0 TD -0 Tw -(?)Tj -/TT2 1 Tf -0.6108 0 TD -0.241 Tw -[( Exec)]TJ -ET -570 368.44 0.99 -11.99 re -f -BT -10 0 0 10 294 348.66 Tm -0 Tw -(command. )Tj -ET -570 356.44 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 210 329.66 Tm -(:EVAL)Tj -/TT2 1 Tf -4.8 0 TD -0.125 Tw -(This is the default. The body of the command just gets executed,)Tj -0 -1.2 TD -0.187 Tw -(and its value is the value of the event. For example \(in an XCL)Tj -T* -0 Tw -(Exec\),)Tj -/TT4 1 Tf --12.9 -3 TD -(\(DEFCOMMAND \(LS :EVAL\))Tj -0 -1.2 TD -(\(&OPTIONAL \(NAMESTRING *DEFAULT-PATHNAME-DEFAULTS*\))Tj -T* -(&REST DIRECTORY-KEYWORDS\))Tj -T* -(\(MAPC)Tj -4.5 -1.2 TD -(#\(LAMBDA \(PATHNAME\) \(FORMAT T "~&~A" \(NAMESTRING PATHNAME\)\)\))Tj -T* -(\(APPLY #DIRECTORY NAMESTRING DIRECTORY-KEYWORDS\)\))Tj --4.5 -1.2 TD -(\(VALUES\)\))Tj -/TT2 1 Tf -12.9 -1.7 TD -0.036 Tw -(would define the )Tj -/TT4 1 Tf -7.669 0 TD -0 Tw -(LS)Tj -/TT2 1 Tf -1.2778 0 TD -0.036 Tw -[( command to print out all file names that match)]TJ --8.9469 -1.2 TD -0.132 Tw -(the input namestring. The )Tj -/TT4 1 Tf -12.1457 0 TD -0 Tw -(\(VALUES\))Tj -/TT2 1 Tf -4.7222 0 TD -0.132 Tw -[( means that no value will be)]TJ --16.8678 -1.2 TD -0.486 Tw -(printed by the event, only the intermediate output from the)Tj -/TT4 1 Tf -T* -0 Tw -(FORMAT)Tj -/TT2 1 Tf -4.2769 0 TD -(.)Tj -/TT4 1 Tf --9.4659 -1.9 TD -(:QUIET)Tj -/TT2 1 Tf -5.189 0 TD -0.264 Tw -(These commands are evaluated, but neither your input nor the)Tj -0 -1.2 TD -0.06 Tw -(results of the command are stored on the history list. For example,)Tj -T* -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(??)Tj -/TT2 1 Tf -1.2217 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(SHH)Tj -/TT2 1 Tf -2.1113 0 TD -( commands are quiet.)Tj -/TT4 1 Tf --12.3581 -1.9 TD -(:INPUT)Tj -/TT2 1 Tf -5.133 0 TD -0.299 Tw -(These commands work more like macros, in that the result of)Tj -0 -1.2 TD -0.078 Tw -(evaluating the command is treated as a new line of input. The )Tj -/TT4 1 Tf -28.4521 0 TD -0 Tw -(FIX)Tj -/TT2 1 Tf --28.4521 -1.2 TD -0.133 Tw -(command is an input command. The result is treated as a line; a)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -47 0 obj -<< -/Length 5823 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.014 Tw -(single expression in EVAL-format should be returned as a list of the)Tj -0 -1.2 TD -0 Tw -(expression to )Tj -/TT4 1 Tf -6.2256 0 TD -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -(.)Tj -ET -258.01 713.49 m -558.01 713.49 l -S -BT -10 0 0 10 258 698.2 Tm -0.221 Tw -(The new Exec now will not consider unparenthesized input with)Tj -ET -570 712.98 0.99 -18.99 re -f -BT -10 0 0 10 258 686.2 Tm -0.123 Tw -[(more than one argument to be in apply format. This is the same)]TJ -ET -570 693.98 0.99 -11.99 re -f -BT -10 0 0 10 258 674.2 Tm -0 Tw -(behavior as the older execs, e.g.:)Tj -ET -570 681.98 0.99 -11.99 re -f -BT -10 0 0 10 258 655.2 Tm -[(list\(1\))-2355.7(; is apply format \(executes after close paren is typed\))]TJ -ET -570 669.98 0.99 -18.99 re -f -BT -10 0 0 10 258 636.2 Tm -0.194 Tw -[(list )194(\(1\))-2077.8(; is apply format \(second arg is a list, no trailing args)]TJ -ET -570 650.98 0.99 -18.99 re -f -BT -10 0 0 10 312 624.2 Tm -0 Tw -(given\))Tj -ET -570 631.98 0.99 -11.99 re -f -BT -10 0 0 10 258 605.2 Tm -[(list \(1\) 2 3)-187.7(;)0( is NOT apply format, arguments are evaluated)]TJ -ET -570 619.98 0.99 -18.99 re -f -BT -10 0 0 10 258 586.2 Tm -[(list 1 2 3)-1075.9(;)0( is NOT apply format, arguments are evaluated)]TJ -ET -570 600.98 0.99 -18.99 re -f -BT -10 0 0 10 258 567.2 Tm -[(list 1)-2743.8(;)0( not legal input: second argument is not a list)]TJ -ET -570 581.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 539.64 Tm -(Undoing)Tj -ET -54.01 536.49 m -558.01 536.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 521.2 Tm -0.297 Tw -[(Note:)-609.9(This discussion only applies to undoing under the Exec,)]TJ -3 -1.2 TD -0.07 Tw -(Debugger and within the UNDOABLY macro; editors handle)Tj -T* -0 Tw -(undoing in a different fashion.)Tj --3 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.228 Tw -[( UNDO)]TJ -/TT2 1 Tf -3.4502 0 TD -[( facility allows recording of destructive changes such)]TJ --5.1733 -1.2 TD -0.02 Tw -[(that they can be played back to restore a previous state. There are)]TJ -T* -0.243 Tw -(two kinds of )Tj -/TT4 1 Tf -6.2871 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.243 Tw -[(ing: one is done by the Exec, the other is)]TJ --9.2314 -1.2 TD -0.216 Tw -[(available for use in a programmers code. Both methods share)]TJ -T* -0.319 Tw -(information about what kind of operations can be undone and)Tj -T* -0 Tw -(where the changes are recorded.)Tj -/TT4 1 Tf -12 0 0 12 54 390.64 Tm -(Undoing in the Exec)Tj -ET -54.01 387.49 m -558.01 387.49 l -S -BT -10 0 0 10 129 352.93 Tm -(UNDO)Tj -8 0 0 8 158.48 360.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -158.45 352.93 m -258.04 352.93 l -258.04 352.93 m -258.04 368.95 l -158.45 368.95 m -258.04 368.95 l -158.45 368.95 m -158.45 352.93 l -S -BT -/TT2 1 Tf -10 0 0 10 258.07 352.93 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(EventSpec)Tj -/TT2 1 Tf -22.2682 0 TD -([Exec command])Tj -ET -1 w []0 d -129.01 350.22 m -558.01 350.22 l -S -BT -10 0 0 10 258 334.93 Tm -0.367 Tw -(The Execs )Tj -/TT4 1 Tf -5.9581 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.367 Tw -[( command is implemented by watching the)]TJ --8.9025 -1.2 TD -0.387 Tw -(evaluation of forms and requiring undoable operations in that)Tj -T* -0.06 Tw -(evaluation to save enough information on the history list to reverse)Tj -T* -0.121 Tw -[(their side effects. The Exec simply executes operations, and any)]TJ -T* -0.011 Tw -(undoable changes that occur are automatically saved on the history)Tj -T* -0.138 Tw -[(list by the responsible functions. The )]TJ -/TT4 1 Tf -17.697 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.138 Tw -[( command works on)]TJ --20.6413 -1.2 TD -0.032 Tw -(itself the same way: it recovers the saved information and performs)Tj -T* -0.11 Tw -[(the corresponding inverses. Thus, )]TJ -/TT4 1 Tf -16.1691 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.11 Tw -[( is effective on itself, so)]TJ --19.1135 -1.2 TD -0 Tw -(that you can )Tj -/TT4 1 Tf -5.7261 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( an )Tj -/TT4 1 Tf -1.668 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -(, and )Tj -/TT4 1 Tf -2.502 0 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -( that, etc.)Tj --18.729 -1.9 TD -0.074 Tw -(Only when you attempt to undo an operation does the Exec check)Tj -0 -1.2 TD -0.059 Tw -[(to see whether any information has been saved. If none has been)]TJ -T* -0.406 Tw -(saved, and you have specifically named the event you want)Tj -T* -0.282 Tw -(undone, the Exec types )Tj -/TT4 1 Tf -11.8575 0 TD -(nothing saved)Tj -/TT2 1 Tf -7.0603 0 TD -[(. \(When you just type)]TJ -/TT4 1 Tf --18.9178 -1.2 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -(, the Exec only tries to undo the last operation.\))Tj -/TT4 1 Tf --2.9443 -1.9 TD -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.351 Tw -[( watches evaluation using)]TJ -/TT4 1 Tf -12.5047 0 TD -[( CL:EVALHOOK)]TJ -/TT2 1 Tf -7.9618 0 TD -[( \(thus, calling)]TJ -/TT4 1 Tf --23.4108 -1.2 TD -0 Tw -(CL:EVALHOOK)Tj -/TT2 1 Tf -7.333 0 TD -0.093 Tw -[( cannot be undone\). Each form given to )]TJ -/TT4 1 Tf -18.9039 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.093 Tw -[( is)]TJ --28.9039 -1.2 TD -0.654 Tw -(examined against the list )Tj -/TT4 1 Tf -13.9002 0 TD -0 Tw -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -0.654 Tw -[( to see if it has a)]TJ --18.7898 -1.2 TD -0.034 Tw -[(corresponding undoable version. If an undoable version of a call is)]TJ -T* -0.095 Tw -(found, it is called with the same arguments instead of the original.)Tj -T* -0.171 Tw -(Therefore, before evaluating all subforms of your input, the Exec)Tj -T* -0.331 Tw -(substitutes the corresponding undoable call for any destructive)Tj -T* -0.13 Tw -[(operation. For example, if you type )]TJ -/TT4 1 Tf -16.8626 0 TD -(\(DEFUN FOO ...\))Tj -/TT2 1 Tf -7.926 0 TD -[(, undoable)]TJ -ET -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -50 0 obj -<< -/Length 5398 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.039 Tw -(versions of the forms that set the definition into the symbol function)Tj -0 -1.2 TD -0.26 Tw -(cell are evaluated. )Tj -/TT4 1 Tf -9.7119 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.26 Tw -(s function definition itself is not made)Tj --11.8784 -1.2 TD -0 Tw -(undoable.)Tj -ET -258.01 701.49 m -558.01 701.49 l -S -BT -/TT4 1 Tf -12 0 0 12 54 677.64 Tm -(Undoing in Programs)Tj -ET -54.01 674.49 m -558.01 674.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 646.93 Tm -0.377 Tw -(There are two ways)Tj -/TT4 1 Tf -8 0 0 8 356.6 654.96 Tm -0.3763 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -356.57 646.93 m -456.16 646.93 l -456.16 646.93 m -456.16 662.95 l -356.57 662.95 m -456.16 662.95 l -356.57 662.95 m -356.57 646.93 l -S -BT -/TT2 1 Tf -10 0 0 10 456.19 646.93 Tm -0.377 Tw -[( to make a program)]TJ --19.819 -1.2 TD -0.135 Tw -[(undoable. The simplest method is to wrap the programs form in)]TJ -T* -0 Tw -(the )Tj -/TT4 1 Tf -1.768 0 TD -(UNDOABLY)Tj -/TT2 1 Tf -5.6665 0 TD -0.1 Tw -[( macro. The other is to call undoable versions of)]TJ --7.4345 -1.2 TD -0 Tw -(destructive operations directly.)Tj -/TT4 1 Tf --12.9 -3.827 TD -(\(XCL:UNDOABLY)Tj -8 0 0 8 212.36 580.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -212.33 572.66 m -311.92 572.66 l -311.92 572.66 m -311.92 588.68 l -212.33 588.68 m -311.92 588.68 l -212.33 588.68 m -212.33 572.66 l -S -BT -10 0 0 10 311.95 572.66 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(&REST FORMS)Tj -/TT4 1 Tf -7.2227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-12881.8([Macro])]TJ -ET -1 w []0 d -129.01 569.95 m -558.01 569.95 l -S -BT -10 0 0 10 258 554.66 Tm -0.338 Tw -(Executes the forms in )Tj -/TT6 1 Tf -11.2451 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.338 Tw -[( using undoable versions of all)]TJ --14.8559 -1.2 TD -0.764 Tw -[(destructive operations. This is done by "walking" \(see)]TJ -/TT4 1 Tf -T* -0 Tw -(WALKFORM)Tj -/TT2 1 Tf -5.9429 0 TD -0.26 Tw -(\) all of the )Tj -/TT6 1 Tf -5.7089 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.26 Tw -[( and rewriting them to use the)]TJ --15.2627 -1.2 TD -0.046 Tw -(undoable versions of destructive operations \()Tj -/TT4 1 Tf -20.1304 0 TD -0 Tw -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -0.046 Tw -[( makes the)]TJ --25.02 -1.2 TD -0 Tw -(association\).)Tj -ET -258.01 501.95 m -558.01 501.95 l -S -BT -/TT4 1 Tf -10 0 0 10 129 467.39 Tm -(\(STOP-UNDOABLY)Tj -8 0 0 8 219.59 475.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -219.56 467.39 m -319.15 467.39 l -319.15 467.39 m -319.15 483.41 l -219.56 483.41 m -319.15 483.41 l -219.56 483.41 m -219.56 467.39 l -S -BT -/TT6 1 Tf -10 0 0 10 319.18 467.39 Tm -( &REST FORMS)Tj -/TT2 1 Tf -7.5005 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(\))Tj -/TT2 1 Tf -12.7697 0 TD -([Macro])Tj -ET -1 w []0 d -129.01 464.68 m -558.01 464.68 l -S -BT -10 0 0 10 258 449.39 Tm -0.245 Tw -(Normally executes as )Tj -/TT4 1 Tf -10.5719 0 TD -0 Tw -(PROGN)Tj -/TT2 1 Tf -3.667 0 TD -0.245 Tw -(; however, within an )Tj -/TT4 1 Tf -10.0957 0 TD -0 Tw -(UNDOABLY)Tj -/TT2 1 Tf --24.3346 -1.2 TD -0.049 Tw -(form, explicitly causes )Tj -/TT6 1 Tf -10.2056 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.049 Tw -[( not to be done undoably. Turns off)]TJ --13.8164 -1.2 TD -0.271 Tw -(rewriting of the )Tj -/TT6 1 Tf -7.6494 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.271 Tw -[( to be undoable inside an )]TJ -/TT4 1 Tf -13.0796 0 TD -0 Tw -(UNDOABLY)Tj -/TT2 1 Tf --24.3399 -1.2 TD -(macro.)Tj -ET -258.01 408.68 m -558.01 408.68 l -S -BT -/TT4 1 Tf -12 0 0 12 54.03 384.83 Tm -(Undoable Versions of Common Functions)Tj -ET -54.01 381.68 m -558.01 381.68 l -S -BT -/TT2 1 Tf -10 0 0 10 258 362.39 Tm -0.609 Tw -(Efficiency and overhead are serious considerations for the)Tj -T* -0.216 Tw -[(execution of a user program. Thus, the programmer may need)]TJ -T* -0.026 Tw -(more control over the saving of undo information than that provided)Tj -T* -0 Tw -(by the )Tj -/TT4 1 Tf -3.002 0 TD -(UNDOABLY)Tj -/TT2 1 Tf -5.6665 0 TD -( macro. )Tj --8.6685 -2.727 TD -0.514 Tw -(To make a )Tj -/TT4 1 Tf -8 0 0 8 323.48 307.15 Tm -0.5125 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -323.45 299.12 m -423.04 299.12 l -423.04 299.12 m -423.04 315.14 l -323.45 315.14 m -423.04 315.14 l -323.45 315.14 m -323.45 299.12 l -S -BT -/TT2 1 Tf -10 0 0 10 423.07 299.12 Tm -0.514 Tw -(function undoable, you can)Tj --16.507 -1.2 TD -0.137 Tw -(simply substitute the corresponding undoable function if you want)Tj -T* -0.221 Tw -(to make a destructive operation in your own program undoable.)Tj -T* -0.438 Tw -(When the undoable function is called, it will save the undo)Tj -T* -0 Tw -(information in the current event on the history list.)Tj -0 -1.9 TD -0.173 Tw -(Various operations, most notably )Tj -/TT4 1 Tf -15.5333 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.173 Tw -(, have undoable versions.)Tj --18.089 -1.2 TD -0 Tw -(The following undoable macros are initially available:)Tj -/TT4 1 Tf -0 -1.7 TD -(UNDOABLY-POP)Tj -0 -1.5 TD -(UNDOABLY-PUSH)Tj -T* -(UNDOABLY-PUSHNEW)Tj -T* -(UNDOABLY-REMF)Tj -T* -(UNDOABLY-ROTATEF)Tj -T* -(UNDOABLY-SHIFTF)Tj -T* -(UNDOABLY-DECF)Tj -T* -(UNDOABLY-INCF)Tj -T* -(UNDOABLY-SET-SYMBOL)Tj -T* -(UNDOABLY-MAKUNBOUND)Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -53 0 obj -<< -/Length 4430 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(UNDOABLY-FMAKUNBOUND)Tj -0 -1.5 TD -(UNDOABLY-SETQ)Tj -T* -(XCL:UNDOABLY-SETF)Tj -T* -(UNDOABLY-PSETF)Tj -T* -(UNDOABLY-SETF-SYMBOL-FUNCTION)Tj -T* -(UNDOABLY-SETF-MACRO-FUNCTION)Tj -/TT2 1 Tf -0 -1.7 TD -0.221 Tw -[(Note:)-609.9(Many destructive Common Lisp functions do not currently)]TJ -3 -1.2 TD -0.243 Tw -(have undoable versions, e.g.,)Tj -/TT4 1 Tf -13.7935 0 TD -[( CL:NREVERSE)]TJ -/TT2 1 Tf -7.6883 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.7987 0 TD -(CL:SORT)Tj -/TT2 1 Tf -4.4438 0 TD -(,)Tj --26.7243 -1.2 TD -0.171 Tw -(etc. The current list of undoable functions is saved on the)Tj -T* -0 Tw -(association list )Tj -/TT4 1 Tf -6.7808 0 TD -(LISPXFNS)Tj -/TT2 1 Tf -4.8896 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 574.64 Tm -(Modifying the UNDO Facility)Tj -ET -54.01 571.49 m -558.01 571.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 552.2 Tm -0.146 Tw -(You will usually wish to extend the )Tj -/TT4 1 Tf -16.4746 0 TD -0 Tw -(UNDO)Tj -/TT2 1 Tf -2.9443 0 TD -0.146 Tw -[( facility after creating a)]TJ --19.419 -1.2 TD -0.008 Tw -(form whose side effects it might be desirable to undo, for instance a)Tj -T* -0 Tw -(file renaming function.)Tj -0 -1.9 TD -0.082 Tw -[(An undoable version of the function needs to be written. This can)]TJ -0 -1.2 TD -0.071 Tw -(be done by explicitly saving previous state information away, or by)Tj -T* -0.126 Tw -[(renaming calls in the function to their undoable equivalent. Undo)]TJ -T* -0.881 Tw -(information should be saved on the history list using)Tj -/TT4 1 Tf -T* -0 Tw -(IL:UNDOSAVE)Tj -/TT2 1 Tf -6.8892 0 TD -(.)Tj --6.8892 -1.9 TD -0.13 Tw -(You must then hook the undoable version of the function into the)Tj -0 -1.2 TD -0.404 Tw -[(undo facility. You do this by either using the )]TJ -/TT4 1 Tf -23.8852 0 TD -0 Tw -(IL:LISPXFNS)Tj -/TT2 1 Tf --23.8852 -1.2 TD -0.454 Tw -(association list, or in the case of a )Tj -/TT4 1 Tf -18.9176 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.454 Tw -[( modifier, on the)]TJ -/TT4 1 Tf --21.4733 -1.2 TD -0 Tw -(IL:UNDOABLE-SETF-INVERSE)Tj -/TT2 1 Tf -14.5 0 TD -( property of the )Tj -/TT4 1 Tf -7.0039 0 TD -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -( function.)Tj -/TT4 1 Tf -8 0 0 8 129.04 375.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 367.93 m -228.6 367.93 l -228.6 367.93 m -228.6 383.95 l -129.01 383.95 m -228.6 383.95 l -129.01 383.95 m -129.01 367.93 l -S -BT -10 0 0 10 228.63 367.93 Tm -(LISPXFNS)Tj -/TT2 1 Tf -28.713 0 TD -([Variable])Tj -ET -1 w []0 d -129.01 365.22 m -558.01 365.22 l -S -BT -10 0 0 10 258 345.93 Tm -0.705 Tw -(Contains an association list which maps from destructive)Tj -0 -1.2 TD -0 Tw -(operations to their undoable form. Initially this list contains:)Tj -/TT4 1 Tf -0 -1.7 TD -(\(\(CL:POP . UNDOABLY-POP\))Tj -0 -1.5 TD -( \(CL:PSETF . NDOABLY-PSETF\))Tj -T* -( \(CL:PUSH . UNDOABLY-PUSH\))Tj -T* -( \(CL:PUSHNEW . UNDOABLY-PUSHNEW\))Tj -T* -( \(\(CL:REMF\) . UNDOABLY-REMF\))Tj -T* -( \(CL:ROTATEF . UNDOABLY-ROTATEF\))Tj -T* -( \(CL:SHIFTF . UNDOABLY-SHIFTF\))Tj -T* -( \(CL:DECF . UNDOABLY-DECF\))Tj -T* -( \(CL:INCF . UNDOABLY-INCF\))Tj -T* -( \(CL:SET . UNDOABLY-SET-SYMBOL\))Tj -T* -( \(CL:MAKUNBOUND . UNDOABLY-MAKUNBOUND\))Tj -T* -( \(CL:FMAKUNBOUND . UNDOABLY-FMAKUNBOUND\))Tj -/TT2 1 Tf -T* -(. . . plus the original Interlisp undo associations\))Tj -/TT4 1 Tf --12.9 -3.627 TD -(\(XCL:UNDOABLY-SETF)Tj -8 0 0 8 241.25 108.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -241.22 100.66 m -340.81 100.66 l -340.81 100.66 m -340.81 116.68 l -241.22 116.68 m -340.81 116.68 l -241.22 116.68 m -241.22 100.66 l -S -BT -/TT6 1 Tf -10 0 0 10 340.84 100.66 Tm -( PLACE VALUE ...)Tj -/TT2 1 Tf -8.2256 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(\))Tj -/TT2 1 Tf -9.8786 0 TD -([Macro])Tj -ET -1 w []0 d -129.01 97.95 m -558.01 97.95 l -S -BT -10 0 0 10 258 82.66 Tm -(Like )Tj -/TT4 1 Tf -2.5923 0 TD -(CL:SETF)Tj -/TT2 1 Tf -4.2217 0 TD -0.48 Tw -[( but saves information so it may be undone.)]TJ -/TT4 1 Tf --6.814 -1.2 TD -0 Tw -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -0.316 Tw -[( uses undoable versions of the setf function)]TJ --8.5552 -1.2 TD -0.573 Tw -(located on the )Tj -/TT4 1 Tf -8.2795 0 TD -0 Tw -(UNDOABLE-SETF-INVERSE)Tj -/TT2 1 Tf -13.2783 0 TD -0.573 Tw -[( property of the)]TJ -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -56 0 obj -<< -/Length 7990 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.143 Tw -(function being )Tj -/TT4 1 Tf -6.7909 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.143 Tw -[(ed. Initially these )]TJ -/TT4 1 Tf -8.5764 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.143 Tw -[( names have such a)]TJ --20.4786 -1.2 TD -0 Tw -(property:)Tj -/TT4 1 Tf -0 -1.9 TD -2.084 Tw -(CL:SYMBOL-FUNCTION - UNDOABLY-SETF-SYMBOL-)Tj -0 -1.2 TD -0 Tw -(FUNCTION)Tj -0 -1.9 TD -(CL:MACRO-FUNCTION - UNDOABLY-SETF-MACRO-FUNCTION)Tj -ET -258.01 663.49 m -558.01 663.49 l -S -BT -10 0 0 10 129 628.93 Tm -(\(UNDOABLY-SETQ)Tj -8 0 0 8 219.59 636.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -219.56 628.93 m -319.15 628.93 l -319.15 628.93 m -319.15 644.95 l -219.56 644.95 m -319.15 644.95 l -219.56 644.95 m -219.56 628.93 l -S -BT -10 0 0 10 319.18 628.93 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(&REST FORMS)Tj -/TT4 1 Tf -7.2227 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-11101.8([Function])]TJ -ET -1 w []0 d -129.01 626.22 m -558.01 626.22 l -S -BT -10 0 0 10 258 610.93 Tm -(Typed-in )Tj -/TT4 1 Tf -4.2905 0 TD -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -0.122 Tw -(s \(and )Tj -/TT4 1 Tf -3.3011 0 TD -0 Tw -(SETF)Tj -/TT2 1 Tf -2.5557 0 TD -0.122 Tw -(s on symbols\) are made undoable by)Tj --12.8699 -1.2 TD -0.588 Tw -(substituting a call to )Tj -/TT4 1 Tf -11.4125 0 TD -0 Tw -(UNDOABLY-SETQ)Tj -/TT2 1 Tf -8.7222 0 TD -(. )Tj -/TT4 1 Tf -1.1437 0 TD -(UNDOABLY-SETQ)Tj -/TT2 1 Tf --21.2784 -1.2 TD -0.295 Tw -(operates like )Tj -/TT4 1 Tf -6.5378 0 TD -0 Tw -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -0.295 Tw -[( on lexical variables or those with dynamic)]TJ --9.2604 -1.2 TD -0.027 Tw -[(bindings; it only saves information on the history list for changes to)]TJ -T* -0 Tw -(global, "top-level" values.)Tj -ET -258.01 558.22 m -558.01 558.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 523.66 Tm -(\()Tj -8 0 0 8 132.37 531.6899 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -132.34 523.66 m -231.93 523.66 l -231.93 523.66 m -231.93 539.68 l -132.34 539.68 m -231.93 539.68 l -132.34 539.68 m -132.34 523.66 l -S -BT -10 0 0 10 231.96 523.66 Tm -(UNDOSAVE )Tj -/TT6 1 Tf -5.9453 0 TD -(UNDOFORM HISTENTRY)Tj -/TT4 1 Tf -11.833 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-9546([Function])]TJ -ET -1 w []0 d -129.01 520.95 m -558.01 520.95 l -S -BT -10 0 0 10 258 505.66 Tm -0.004 Tw -(Adds the undo information )Tj -/TT6 1 Tf -11.9681 0 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.0005 Tc -0.0035 Tw -( to the )Tj -/TT4 1 Tf -3.0696 0 TD -0 Tc -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.0003 Tc -0.0037 Tw -( property of the)Tj --23.2599 -1.2 TD -0 Tc -0.206 Tw -(history event )Tj -/TT6 1 Tf -6.3593 0 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -0.206 Tw -[(. If there is no )]TJ -/TT4 1 Tf -7.8503 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.206 Tw -[( property, one is)]TJ --22.2105 -1.2 TD -0.378 Tw -[(created. If the value of the )]TJ -/TT4 1 Tf -14.7647 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.378 Tw -[( property is )]TJ -/TT4 1 Tf -6.3581 0 TD -0 Tw -(NOSAVE)Tj -/TT2 1 Tf -4.2231 0 TD -0.378 Tw -(, the)Tj --27.6799 -1.2 TD -0.394 Tw -(information is not saved.)Tj -/TT6 1 Tf -12.0209 0 TD -[( HISTENTRY)]TJ -/TT2 1 Tf -6.3388 0 TD -[( specifies an event. If)]TJ -/TT6 1 Tf --18.3597 -1.2 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.434 Tw -(, the value of )Tj -/TT4 1 Tf -7.7399 0 TD -0 Tw -(LISPXHIST)Tj -/TT2 1 Tf -5.1675 0 TD -0.434 Tw -[( is used. If both)]TJ -/TT6 1 Tf --20.7692 -1.2 TD -0 Tw -(HISTENTRY)Tj -/TT2 1 Tf -5.667 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(LISPXHIST)Tj -/TT2 1 Tf -5.1675 0 TD -( are )Tj -/TT4 1 Tf -2.001 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -( is a no-op. )Tj --22.8936 -1.9 TD -0.199 Tw -(The form of )Tj -/TT6 1 Tf -5.9876 0 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.199 Tw -[( is )]TJ -/TT4 1 Tf -1.6758 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN)Tj -/TT4 1 Tf -1.333 0 TD -0.199 Tw -[( . )]TJ -/TT6 1 Tf -1.2315 0 TD -0 Tw -(ARGS)Tj -/TT4 1 Tf -2.834 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.199 Tw -[(. Undoing is done by)]TJ --19.6161 -1.2 TD -0 Tw -(performing )Tj -/TT4 1 Tf -5.0576 0 TD -(\(APPLY \(CAR )Tj -/TT6 1 Tf -6.7222 0 TD -(UNDOFORM)Tj -/TT4 1 Tf -5.8882 0 TD -(\) \(CDR )Tj -/TT6 1 Tf -3.3882 0 TD -(UNDOFORM)Tj -/TT4 1 Tf -5.8882 0 TD -(\)\))Tj -/TT2 1 Tf -0.666 0 TD -(. )Tj -ET -258.01 409.95 m -558.01 409.95 l -S -BT -/TT4 1 Tf -10 0 0 10 129 375.39 Tm -(\\#UNDOSAVES)Tj -8 0 0 8 200.72 383.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -200.69 375.39 m -300.28 375.39 l -300.28 375.39 m -300.28 391.41 l -200.69 391.41 m -300.28 391.41 l -200.69 391.41 m -200.69 375.39 l -S -BT -/TT2 1 Tf -10 0 0 10 300.31 375.39 Tm -[( )-20989.3([Variable])]TJ -ET -1 w []0 d -129.01 372.68 m -558.01 372.68 l -S -BT -10 0 0 10 258 357.39 Tm -0.624 Tw -(The value of )Tj -/TT4 1 Tf -7.6532 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.624 Tw -[( is the maximum number of)]TJ -/TT6 1 Tf --14.8217 -1.2 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.11 Tw -[(s to be saved for a single event. When the count of)]TJ -/TT6 1 Tf --5.8882 -1.2 TD -0 Tw -(UNDOFORM)Tj -/TT2 1 Tf -5.8882 0 TD -0.61 Tw -(s reaches this number, )Tj -/TT4 1 Tf -12.8336 0 TD -0 Tw -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.61 Tw -[( prints the)]TJ --24.3892 -1.2 TD -0 Tw -(message )Tj -/TT4 1 Tf -4.5914 0 TD -0.256 Tw -(CONTINUE SAVING?)Tj -/TT2 1 Tf -10.2008 0 TD -(, asking if you want to continue)Tj --14.7923 -1.2 TD -0.221 Tw -[(saving. If you answer )]TJ -/TT4 1 Tf -11.0542 0 TD -0 Tw -(NO)Tj -/TT2 1 Tf -1.5 0 TD -0.221 Tw -[( or default, )]TJ -/TT4 1 Tf -5.6659 0 TD -0 Tw -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.221 Tw -[( discards the)]TJ --23.8876 -1.2 TD -0.172 Tw -(previously saved information for this event, and makes )Tj -/TT4 1 Tf -25.7769 0 TD -0 Tw -(NOSAVE)Tj -/TT2 1 Tf --25.7769 -1.2 TD -0.31 Tw -(be the value of the property )Tj -/TT4 1 Tf -14.3126 0 TD -0 Tw -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -0.31 Tw -(, which disables any further)Tj --16.6466 -1.2 TD -0.009 Tw -[(saving for this event. If you answer )]TJ -/TT4 1 Tf -16.0241 0 TD -0 Tw -(YES)Tj -/TT2 1 Tf -2.001 0 TD -(, )Tj -/TT4 1 Tf -0.5647 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.009 Tw -[( changes the)]TJ --24.2573 -1.2 TD -0.015 Tw -(count to -1, which is then never incremented, and continues saving.)Tj -T* -0.11 Tw -(The purpose of this feature is to avoid tying up large quantities of)Tj -T* -0 Tw -(storage for operations that will never need to be undone.)Tj -0 -1.9 TD -(If )Tj -/TT4 1 Tf -0.9245 0 TD -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.091 Tw -[( is negative, then when the count reaches )]TJ -/TT4 1 Tf -19.4624 0 TD -0 Tw -(\(ABS)Tj --27.5553 -1.2 TD -(\\#UNDOSAVES\))Tj -/TT2 1 Tf -7.5015 0 TD -(, )Tj -/TT4 1 Tf -0.6097 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -0.054 Tw -[( simply stops saving without printing)]TJ --13.7786 -1.2 TD -0.463 Tw -(any messages or other interactions. )Tj -/TT4 1 Tf -19.175 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -(=)Tj -/TT4 1 Tf -0.584 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.463 Tw -[( is)]TJ --28.5383 -1.2 TD -0.198 Tw -(equivalent to )Tj -/TT4 1 Tf -6.3447 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.198 Tw -(=infinity. )Tj -/TT4 1 Tf -4.6479 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT2 1 Tf -7.1685 0 TD -0.198 Tw -[( is initially)]TJ -/TT4 1 Tf --25.3296 -1.2 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(.)Tj --1.6108 -1.9 TD -0.271 Tw -(The configuration described here has been found to be a very)Tj -0 -1.2 TD -0.067 Tw -[(satisfactory one. You pay a very small price for the ability to undo)]TJ -T* -0.021 Tw -(what you type in, since the interpreted evaluation is simply watched)Tj -T* -0.188 Tw -(for destructive operations, or if you wish to protect yourself from)Tj -T* -0.258 Tw -(malfunctioning in your own programs, you can explicitly call, or)Tj -T* -0 Tw -(have your program rewritten to explicitly call, undoable functions.)Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -59 0 obj -<< -/Length 7844 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Undoing Out of Order)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -10 0 0 10 258 706.2 Tm -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -0.261 Tw -[( operates undoably by saving \(on the history)]TJ --8.5552 -1.2 TD -0.007 Tw -[(list\) the cell that is to be changed and its original contents. Undoing)]TJ -T* -0 Tw -(an )Tj -/TT4 1 Tf -1.3901 0 TD -(UNDOABLY-SETF)Tj -/TT2 1 Tf -8.5552 0 TD -( restores the saved contents.)Tj --9.9453 -1.9 TD -0.03 Tw -(This implementation can produce unexpected results when multiple)Tj -0 -1.2 TD -0.26 Tw -(modifications are made to the same piece of storage and then)Tj -T* -0.087 Tw -[(undone out of order. For example, if you type )]TJ -/TT4 1 Tf -21.3817 0 TD -(\(SETF \(CAR FOO\))Tj --21.3817 -1.2 TD -0 Tw -(1\))Tj -/TT2 1 Tf -0.8892 0 TD -0.171 Tw -(, followed by )Tj -/TT4 1 Tf -6.3494 0 TD -(\(SETF \(CAR FOO\) 2\))Tj -/TT2 1 Tf -10.1234 0 TD -(, then undo both events by)Tj --17.3619 -1.2 TD -2.026 Tw -(undoing the most recent event first, then)Tj -/TT4 1 Tf -8 0 0 8 258.04 602.96 Tm -0.6338 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -258.01 594.93 m -357.6 594.93 l -357.6 594.93 m -357.6 610.95 l -258.01 610.95 m -357.6 610.95 l -258.01 610.95 m -258.01 594.93 l -S -BT -/TT2 1 Tf -10 0 0 10 357.63 594.93 Tm -0.634 Tw -(undoing the older event, )Tj -/TT4 1 Tf -13.5443 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.634 Tw -[( will be)]TJ --25.6738 -1.2 TD -0.149 Tw -(restored to its state before either event operated. However if you)Tj -T* -0.092 Tw -(undo the first event, )Tj -/TT6 1 Tf -9.429 0 TD -0 Tw -(then)Tj -/TT2 1 Tf -1.9463 0 TD -0.092 Tw -[( the second event, )]TJ -/TT4 1 Tf -8.8182 0 TD -(\(CAR FOO\))Tj -/TT2 1 Tf -5.3689 0 TD -[( will be )]TJ -/TT4 1 Tf -3.6105 0 TD -0 Tw -(1)Tj -/TT2 1 Tf -0.5562 0 TD -(,)Tj --29.729 -1.2 TD -0.105 Tw -(since this is what was in )Tj -/TT4 1 Tf -11.5787 0 TD -0 Tw -(CAR)Tj -/TT2 1 Tf -2.1665 0 TD -0.105 Tw -[( of )]TJ -/TT4 1 Tf -1.5996 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.105 Tw -[( before )]TJ -/TT4 1 Tf -3.6011 0 TD -0 Tw -(\(UNDOABLY-SETF)Tj --21.1125 -1.2 TD -0.065 Tw -(\(CAR FOO\) 2\))Tj -/TT2 1 Tf -6.5738 0 TD -[( was executed. Similarly, if you type )]TJ -/TT4 1 Tf -16.9155 0 TD -(\(NCONC FOO)Tj --23.4894 -1.2 TD -0 Tw -(\(1\)\))Tj -/TT2 1 Tf -1.833 0 TD -0.123 Tw -(, followed by )Tj -/TT4 1 Tf -6.2054 0 TD -(\(NCONC FOO \(2\)\))Tj -/TT2 1 Tf -8.8007 0 TD -(, undoing just )Tj -/TT4 1 Tf -6.5956 0 TD -(\(NCONC FOO)Tj --23.4347 -1.2 TD -0 Tw -(\(1\)\))Tj -/TT2 1 Tf -1.833 0 TD -0.2 Tw -[( will remove both )]TJ -/TT4 1 Tf -8.5808 0 TD -0 Tw -(1)Tj -/TT2 1 Tf -0.5562 0 TD -0.2 Tw -[( and )]TJ -/TT4 1 Tf -2.6241 0 TD -0 Tw -(2)Tj -/TT2 1 Tf -0.5562 0 TD -0.2 Tw -[( from )]TJ -/TT4 1 Tf -2.9557 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.2 Tw -[(. The problem in both)]TJ --19.2724 -1.2 TD -0 Tw -(cases is that the two operations are not independent.)Tj -0 -1.9 TD -0.477 Tw -(In general, operations are always independent if they affect)Tj -0 -1.2 TD -0.282 Tw -[(different lists or different sublists of the same list. Undoing in)]TJ -T* -0.137 Tw -(reverse order of execution, or undoing independent operations, is)Tj -T* -0.431 Tw -[(always guaranteed to do the right thing. However, undoing)]TJ -T* -0.406 Tw -(dependent operations out of order may not always have the)Tj -T* -0 Tw -(predicted effect.)Tj -/TT4 1 Tf -12 0 0 12 54 404.37 Tm -(Format and Use of the History List)Tj -ET -1 w []0 d -54.01 401.22 m -558.01 401.22 l -S -BT -8 0 0 8 129.04 374.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 366.66 m -228.6 366.66 l -228.6 366.66 m -228.6 382.68 l -129.01 382.68 m -228.6 382.68 l -129.01 382.68 m -129.01 366.66 l -S -BT -10 0 0 10 228.63 366.66 Tm -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -[( )-20822.9([Variable])]TJ -ET -1 w []0 d -129.01 363.95 m -558.01 363.95 l -S -BT -10 0 0 10 258 340.39 Tm -0.088 Tw -(The Exec currently uses one primary history)Tj -/TT4 1 Tf -8 0 0 8 458.38 348.42 Tm -0.0887 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -0.0888 Tw -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -458.35 340.39 m -557.94 340.39 l -557.94 340.39 m -557.94 356.41 l -458.35 356.41 m -557.94 356.41 l -458.35 356.41 m -458.35 340.39 l -S -BT -/TT2 1 Tf -10 0 0 10 258 328.39 Tm -0 Tw -(list,)Tj -/TT4 1 Tf -1.5 0 TD -( LISPXHISTORY)Tj -/TT2 1 Tf -7.6123 0 TD -( for the storing events.)Tj --9.1123 -1.9 TD -0.004 Tw -(The history list is in the form )Tj -/TT4 1 Tf -12.7541 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(EVENTS)Tj -/TT4 1 Tf -4.001 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(EVENT#)Tj -/TT4 1 Tf -3.8901 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(SIZE)Tj -/TT4 1 Tf -2.2227 0 TD -( )Tj -/TT6 1 Tf -0.2818 0 TD -(MOD)Tj -/TT4 1 Tf -2.333 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.004 Tw -(, where)Tj -/TT6 1 Tf --26.7124 -1.2 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.0001 Tc -0.0039 Tw -( is a list of events with the most recent event first, )Tj -/TT6 1 Tf -22.1125 0 TD -0 Tc -0 Tw -(EVENT#)Tj -/TT2 1 Tf --26.1134 -1.2 TD -0.036 Tw -(is the event number for the most recent event on )Tj -/TT6 1 Tf -22.1496 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -(, )Tj -/TT6 1 Tf -0.5917 0 TD -(SIZE)Tj -/TT2 1 Tf -2.2227 0 TD -0.036 Tw -[( is)]TJ --28.9648 -1.2 TD -0.138 Tw -(the the maximum length )Tj -/TT6 1 Tf -11.9175 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.138 Tw -[( is allowed to grow. )]TJ -/TT6 1 Tf -9.4717 0 TD -0 Tw -(MOD)Tj -/TT2 1 Tf -2.333 0 TD -0.138 Tw -[( is is)]TJ --27.7233 -1.2 TD -0.071 Tw -(the maximum event number to use, after which event numbers roll)Tj -T* -0 Tw -(over. )Tj -/TT4 1 Tf -2.501 0 TD -(LISPXHISTORY)Tj -/TT2 1 Tf -7.3345 0 TD -( is initialized to )Tj -/TT4 1 Tf -6.7808 0 TD -(\(NIL 0 100 1000\))Tj -/TT2 1 Tf -7.5596 0 TD -(.)Tj --24.1758 -1.9 TD -0.013 Tw -[(The history list has a maximum length, called its time-slice. As new)]TJ -0 -1.2 TD -0.115 Tw -(events occur, existing events are aged, and the oldest events are)Tj -T* -0.455 Tw -[(forgotten. The time-slice can be changed with the function)]TJ -/TT4 1 Tf -8 0 0 8 258.04 194.15 Tm -0.1888 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -258.01 186.12 m -357.6 186.12 l -357.6 186.12 m -357.6 202.14 l -258.01 202.14 m -357.6 202.14 l -258.01 202.14 m -258.01 186.12 l -S -BT -10 0 0 10 357.63 186.12 Tm -0 Tw -(CHANGESLICE)Tj -/TT2 1 Tf -7.2783 0 TD -0.189 Tw -[(. Larger time-slices enable)]TJ --17.2413 -1.2 TD -0.103 Tw -(longer memory spans, but tie up correspondingly greater amounts)Tj -T* -0.156 Tw -[(of storage. Since a user seldom needs really ancient history, a)]TJ -T* -0.166 Tw -(relatively small time-slice such as 30 events is usually adequate,)Tj -T* -(although some users prefer to set the time-slice as large as 200)Tj -T* -0 Tw -(events.)Tj -0 -1.9 TD -0.133 Tw -(Each individual event on )Tj -/TT6 1 Tf -11.6507 0 TD -0 Tw -(EVENTS)Tj -/TT2 1 Tf -4.001 0 TD -0.133 Tw -[( is a list of the form \()]TJ -/TT6 1 Tf -9.9334 0 TD -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( )Tj -/TT6 1 Tf -0.4108 0 TD -(ID)Tj --28.9959 -1.2 TD -(VALUE)Tj -/TT2 1 Tf -3.2793 0 TD -0.045 Tw -[( . )]TJ -/TT6 1 Tf -0.9235 0 TD -0 Tw -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.045 Tw -[(\). For Exec events, )]TJ -/TT6 1 Tf -9.1723 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.045 Tw -[( is a list \()]TJ -/TT6 1 Tf -4.1248 0 TD -0 Tw -(EVENT-NUMBER)Tj --22.0009 -1.2 TD -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.042 Tw -(\). The )Tj -/TT6 1 Tf -2.9736 0 TD -0 Tw -(EVENT-NUMBER)Tj -/TT2 1 Tf -8.0005 0 TD -0.042 Tw -[( is the number of the event, while)]TJ --15.0303 -1.2 TD -0 Tw -(the )Tj -/TT6 1 Tf -1.945 0 TD -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.277 Tw -[( is a string that uniquely identifies the Exec. \(The)]TJ -/TT6 1 Tf --6.0011 -1.2 TD -0 Tw -(EXEC-ID)Tj -/TT2 1 Tf -4.0562 0 TD -0.239 Tw -[( is used to identify which events belong to the "same")]TJ -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -62 0 obj -<< -/Length 7054 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.29 Tw -[(Exec.\) )]TJ -/TT6 1 Tf -4.5375 0 TD -0 Tw -(VALUE)Tj -/TT2 1 Tf -3.2793 0 TD -0.29 Tw -[( is the \(first\) value of the event. )]TJ -/TT6 1 Tf -16.2707 0 TD -0 Tw -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.29 Tw -[( is a)]TJ --27.5884 -1.2 TD -0.283 Tw -(property list used to associate other information with the event)Tj -T* -0 Tw -(\(described below\).)Tj -/TT6 1 Tf -0 -1.9 TD -(INPUT)Tj -/TT2 1 Tf -3 0 TD -0.0001 Tc -0.0029 Tw -( is the input sequence for the event. Normally, this is just the)Tj --3 -1.2 TD -0 Tc -0.012 Tw -[(input that the user typed-in. For an APPLY-format input this is a list)]TJ -T* -0.149 Tw -(consisting of two expressions; for an EVAL-format input, this is a)Tj -T* -0.193 Tw -(list of just one expression; for an input entered as list of atoms,)Tj -/TT6 1 Tf -T* -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( is simply that list. For example,)Tj --3 -1.9 TD -(User Input)Tj -/TT6 1 Tf -15.6 0 TD -(INPUT)Tj -/TT2 1 Tf -3 0 TD -( is:)Tj -/TT4 1 Tf --18.6 -1.9 TD -[(LIST\(1 2\))-11377.3(\(LIST \(1 2\)\))]TJ -T* -[(\(LIST 1 1\))-11099.5(\(\(LIST 1 1\)\))]TJ -0 -2.2 TD -(DIR "{DSK}")Tj -12.062 0.3 TD -(cr)Tj -3.538 -0.3 TD -(\(DIR "{DSK}"\))Tj -/TT2 1 Tf --15.6 -1.9 TD -0.376 Tw -(If you type in an Exec command that executes other events)Tj -0 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(REDO)Tj -/TT2 1 Tf -2.8892 0 TD -(, )Tj -/TT4 1 Tf -0.8327 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.277 Tw -(, etc.\), several events might result. When there is)Tj --6.111 -1.2 TD -0.026 Tw -(more than one input, they are wrapped together into one invocation)Tj -T* -0 Tw -(of the )Tj -/TT4 1 Tf -2.7798 0 TD -(DO-EVENTS)Tj -/TT2 1 Tf -5.834 0 TD -( command.)Tj --8.6138 -1.9 TD -0.042 Tw -(The same convention is used for representing multiple inputs when)Tj -0 -1.2 TD -0 Tw -(a )Tj -/TT4 1 Tf -0.882 0 TD -(USE)Tj -/TT2 1 Tf -2.0562 0 TD -0.048 Tw -[( command involves sequential substitutions. For example, if)]TJ --2.9381 -1.2 TD -0.06 Tw -(you type )Tj -/TT4 1 Tf -4.1781 0 TD -0 Tw -(FBOUNDP\(FOO\))Tj -/TT2 1 Tf -7.7769 0 TD -0.06 Tw -[( and then )]TJ -/TT4 1 Tf -4.6282 0 TD -(USE FIE FUM FOR FOO)Tj -/TT2 1 Tf -11.4065 0 TD -(, the)Tj --27.9897 -1.2 TD -0.214 Tw -(input sequence that will be constructed is )Tj -/TT4 1 Tf -20.0087 0 TD -(DO-EVENTS \(EVENT)Tj --20.0087 -1.2 TD -0.139 Tw -(FBOUNDP \(FIE\)\) \(EVENT FBOUNDP \(FUM\)\))Tj -/TT2 1 Tf -20.9427 0 TD -(, which is the result)Tj --20.9427 -1.2 TD -0.221 Tw -(of substituting )Tj -/TT4 1 Tf -6.8902 0 TD -0 Tw -(FIE)Tj -/TT2 1 Tf -1.5557 0 TD -0.221 Tw -[( for )]TJ -/TT4 1 Tf -2.1647 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.221 Tw -[( in )]TJ -/TT4 1 Tf -1.776 0 TD -(\(FBOUNDP \(FOO\)\))Tj -/TT2 1 Tf -8.9417 0 TD -[( concatenated)]TJ --23.4948 -1.2 TD -0 Tw -(with the result of substituting )Tj -/TT4 1 Tf -12.8955 0 TD -(FUM)Tj -/TT2 1 Tf -2.166 0 TD -( for )Tj -/TT4 1 Tf -1.7227 0 TD -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -( in )Tj -/TT4 1 Tf -1.334 0 TD -(\(FBOUNDP \(FOO\)\))Tj -/TT2 1 Tf -8.7207 0 TD -(.)Tj -/TT6 1 Tf --29.0054 -1.9 TD -(PROPS)Tj -/TT2 1 Tf -3.501 0 TD -0.4 Tw -[( is a property list of the form)]TJ -/TT4 1 Tf -15.1379 0 TD -0.4 Tc -0 Tw -( \()Tj -/TT6 1 Tf -1.0108 0 TD -0 Tc -(PROPERTY)Tj -8 0 0 8 509.51 392.2 Tm -(1)Tj -/TT4 1 Tf -10 0 0 10 513.96 395.2 Tm -( )Tj -/TT6 1 Tf -0.6778 0 TD -(VALUE)Tj -8 0 0 8 553.53 392.2 Tm -(1)Tj -10 0 0 10 258 380.64 Tm -(PROPERTY)Tj -8 0 0 8 313.01 377.64 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 317.46 380.64 Tm -( )Tj -/TT6 1 Tf -0.3998 0 TD -(VALUE)Tj -8 0 0 8 354.25 377.64 Tm -(2)Tj -/TT4 1 Tf -10 0 0 10 358.7 380.64 Tm -0.122 Tw -[( ...\))]TJ -/TT2 1 Tf -1.5663 0 TD -(, that can be used to associate arbitrary)Tj --11.6363 -1.456 TD -0.618 Tw -(information with a particular event. Currently, the following)Tj -0 -1.2 TD -0 Tw -(properties are used by the Exec:)Tj -/TT4 1 Tf -8 0 0 8 111.51 334.84 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -111.48 326.81 m -211.07 326.81 l -211.07 326.81 m -211.07 342.83 l -111.48 342.83 m -211.07 342.83 l -111.48 342.83 m -111.48 326.81 l -S -BT -10 0 0 10 211.1 326.81 Tm -(SIDE)Tj -/TT2 1 Tf -2.334 0 TD -[( )-1800.4(A list of the side effects of the event. See )]TJ -/TT4 1 Tf -21.0333 0 TD -(UNDOSAVE)Tj -/TT2 1 Tf -5.6675 0 TD -(.)Tj -/TT4 1 Tf --42.7757 -2.727 TD -(*LISPXPRINT*)Tj -8 0 0 8 140.41 307.57 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 299.54 m -239.97 299.54 l -239.97 299.54 m -239.97 315.56 l -140.38 315.56 m -239.97 315.56 l -140.38 315.56 m -140.38 299.54 l -S -BT -/TT2 1 Tf -10 0 0 10 258 299.54 Tm -0.238 Tw -(Used to record calls to )Tj -/TT4 1 Tf -11.4166 0 TD -0 Tw -(EXEC-FORMAT)Tj -/TT2 1 Tf -7.333 0 TD -0.238 Tw -(, and printed by the )Tj -/TT4 1 Tf -10.0294 0 TD -0 Tw -(??)Tj -/TT2 1 Tf --28.7789 -1.2 TD -(command.)Tj -ET -1 w []0 d -258.01 282.83 m -558.01 282.83 l -S -BT -/TT4 1 Tf -12 0 0 12 54 258.98 Tm -(Making or Changing an Exec)Tj -ET -54.01 255.83 m -558.01 255.83 l -S -BT -10 0 0 10 129 221.27 Tm -(\(XCL:ADD-EXEC)Tj -8 0 0 8 207.92 229.3 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -207.89 221.27 m -307.48 221.27 l -307.48 221.27 m -307.48 237.29 l -207.89 237.29 m -307.48 237.29 l -207.89 237.29 m -207.89 221.27 l -S -BT -/TT2 1 Tf -10 0 0 10 307.51 221.27 Tm -( &KEY )Tj -/TT6 1 Tf -3.2236 0 TD -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(REGION)Tj -/TT2 1 Tf -3.9448 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(TTY ID)Tj -/TT4 1 Tf -3.1665 0 TD -(\))Tj -/TT2 1 Tf -5.4886 0 TD -([Function])Tj -ET -1 w []0 d -129.01 218.56 m -558.01 218.56 l -S -BT -10 0 0 10 258 195 Tm -0.115 Tw -(Creates a new )Tj -/TT4 1 Tf -8 0 0 8 328.74 203.03 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -328.71 195 m -428.3 195 l -428.3 195 m -428.3 211.02 l -328.71 211.02 m -428.3 211.02 l -328.71 211.02 m -328.71 195 l -S -BT -/TT2 1 Tf -10 0 0 10 428.33 195 Tm -(process and window with an)Tj --17.033 -1.2 TD -0.07 Tw -(Exec running in it. )Tj -/TT6 1 Tf -8.8544 0 TD -0 Tw -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -0.07 Tw -[( is the type of the Exec to be created)]TJ --13.1332 -1.2 TD -0.378 Tw -(\(see below under XCL:SET-EXEC-TYPE\). )Tj -/TT6 1 Tf -21.1747 0 TD -0 Tw -(REGION)Tj -/TT2 1 Tf -3.9448 0 TD -0.378 Tw -[( optionally)]TJ --25.1195 -1.2 TD -0.225 Tw -[(gives the shape and location of the window to be used. If not)]TJ -T* -0.14 Tw -(provided the user will be prompted. )Tj -/TT6 1 Tf -17.0996 0 TD -0 Tw -(TTY)Tj -/TT2 1 Tf -1.8887 0 TD -0.14 Tw -[( is a flag, which, if true,)]TJ --18.9883 -1.2 TD -0.073 Tw -(causes the tty to be given to the new Exec process. )Tj -/TT6 1 Tf -24.2222 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.073 Tw -[( is a string)]TJ --25.2222 -1.2 TD -0.007 Tw -(identifier to use for events generated in this exec. )Tj -/TT6 1 Tf -22.4162 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.007 Tw -[( defaults to the)]TJ --23.4162 -1.2 TD -0 Tw -(number given to the Exec process created.)Tj -ET -1 w []0 d -258.01 106.29 m -558.01 106.29 l -S -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -65 0 obj -<< -/Length 4621 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-19)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129 721.93 Tm -(\(XCL:EXEC)Tj -8 0 0 8 182.93 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -182.9 721.93 m -282.49 721.93 l -282.49 721.93 m -282.49 737.95 l -182.9 737.95 m -282.49 737.95 l -182.9 737.95 m -182.9 721.93 l -S -BT -10 0 0 10 282.52 721.93 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(&KEY WINDOW PROMPT COMMAND-TABLES)Tj --2.7298 -1 TD -(ENVIRONMENT PROFILE TOP-LEVEL-P TITLE FUNCTION)Tj -/TT4 1 Tf -27.1699 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(ID)Tj -/TT4 1 Tf -1 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -( )Tj --28.7808 -1 TD -([Function])Tj -ET -1 w []0 d -129.01 699.22 m -558.01 699.22 l -S -BT -10 0 0 10 258 683.9301 Tm -(This is the main entry to the Exec. The arguments are:)Tj -/TT6 1 Tf -0 -1.9 TD -(WINDOW)Tj -/TT2 1 Tf -4.3877 0 TD -0.205 Tw -[( defaults to the current TTY display stream, or can be)]TJ --4.3877 -1.2 TD -0 Tw -(provided a window in which the Exec will run.)Tj -/TT6 1 Tf -0 -1.9 TD -(PROMPT)Tj -/TT2 1 Tf -4.2778 0 TD -( is the prompt to print.)Tj -/TT6 1 Tf --4.2778 -1.9 TD -(COMMAND-TABLES)Tj -/TT2 1 Tf -9.4453 0 TD -0.548 Tw -[( is a list of hash-tables for looking up)]TJ --9.4453 -1.2 TD -0.374 Tw -(commands \(e.g., )Tj -/TT4 1 Tf -8.4731 0 TD -0 Tw -(*EXEC-COMMAND-TABLE*)Tj -/TT2 1 Tf -12.833 0 TD -0.374 Tw -[( or )]TJ -/TT4 1 Tf -2.1928 0 TD -0 Tw -(*DEBUGGER-)Tj --23.4989 -1.2 TD -(COMMAND-TABLE*)Tj -/TT2 1 Tf -9.3877 0 TD -(\).)Tj -/TT6 1 Tf --9.3877 -1.9 TD -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -( is a lexical environment used to evaluate things in.)Tj -/TT6 1 Tf --7.3892 -1.9 TD -(READTABLE)Tj -/TT2 1 Tf -5.9463 0 TD -0.418 Tw -[( is the default readtable to use \(defaults to the)]TJ --5.9463 -1.2 TD -0 Tw -("Common Lisp" readtable\).)Tj -/TT6 1 Tf -0 -1.9 TD -(PROFILE)Tj -/TT2 1 Tf -4.2788 0 TD -0.224 Tw -[( is a way to set the Execs type \(see above, "Multiple)]TJ --4.2788 -1.2 TD -0 Tw -(Execs and the Execs Type"\).)Tj -/TT6 1 Tf -0 -1.9 TD -(TOP-LEVEL-P)Tj -/TT2 1 Tf -6.502 0 TD -0.073 Tw -[( is a boolean, which should be true if this Exec is at)]TJ --6.502 -1.2 TD -0 Tw -(the top level.)Tj -/TT6 1 Tf -0 -1.9 TD -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -( is an identifying title for the window title of the Exec.)Tj -/TT6 1 Tf --2.7227 -1.9 TD -(FUNCTION)Tj -/TT2 1 Tf -5.166 0 TD -0.015 Tw -[( is a function used to actually evaluate events, default is)]TJ -/TT4 1 Tf --5.166 -1.2 TD -0 Tw -(EVAL-INPUT)Tj -/TT2 1 Tf -6 0 TD -(. )Tj -/TT6 1 Tf --6 -1.9 TD -(ID)Tj -/TT2 1 Tf -1 0 TD -0.051 Tw -[( is a string identifier to use for events generated in this Exec. )]TJ -/TT6 1 Tf -28.006 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf --29.006 -1.2 TD -(defaults to the number given to the Exec process.)Tj -ET -258.01 393.22 m -558.01 393.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 358.66 Tm -(XCL:*PER-EXEC-VARIABLES*)Tj -8 0 0 8 272.38 366.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -272.35 358.66 m -371.94 358.66 l -371.94 358.66 m -371.94 374.68 l -272.35 374.68 m -371.94 374.68 l -272.35 374.68 m -272.35 358.66 l -S -BT -/TT2 1 Tf -10 0 0 10 371.97 358.66 Tm -[( )-13823.3([Variable])]TJ -ET -1 w []0 d -129.01 355.95 m -558.01 355.95 l -S -BT -10 0 0 10 258 340.66 Tm -0.015 Tw -(A list of pairs of the form )Tj -/TT4 1 Tf -11.1646 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(VAR)Tj -/TT4 1 Tf -2.0562 0 TD -( )Tj -/TT6 1 Tf -0.2928 0 TD -(INIT)Tj -/TT4 1 Tf -1.8887 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.015 Tw -(. Each time an Exec is entered,)Tj --16.0682 -1.2 TD -0.364 Tw -(the variables in )Tj -/TT4 1 Tf -8.0959 0 TD -0 Tw -(*PER-EXEC-VARIABLES*)Tj -/TT2 1 Tf -12.002 0 TD -0.364 Tw -[( are rebound to the)]TJ --20.0979 -1.2 TD -0.06 Tw -(value returned by evaluating )Tj -/TT6 1 Tf -13.0818 0 TD -0 Tw -(INIT)Tj -/TT2 1 Tf -1.8887 0 TD -0.06 Tw -(. The initial value of )Tj -/TT4 1 Tf -9.1936 0 TD -0 Tw -(*PER-EXEC-)Tj --24.164 -1.2 TD -(VARIABLES*)Tj -/TT2 1 Tf -6.1675 0 TD -( is:)Tj -/TT10 1 Tf --6.1675 -1.771 TD -(\(\(*PACKAGE* *PACKAGE*\))Tj -0 -1.2 TD -( \(* *\))Tj -T* -( \(** **\))Tj -T* -( \(*** ***\))Tj -T* -( \(+ +\))Tj -T* -( \(++ ++\))Tj -T* -( \(+++ +++\))Tj -T* -( \(- -\))Tj -T* -( \(/ /\))Tj -T* -( \(// //\))Tj -T* -( \(/// ///\))Tj -T* -( \(HELPFLAG T\))Tj -T* -( \(*EVALHOOK* NIL\))Tj -T* -( \(*APPLYHOOK* nil\))Tj -T* -( \(*ERROR-OUPUT* *TERMINAL-IO*\))Tj -T* -( \(*READTABLE* *READTABLE*\))Tj -T* -( \(*package* *package*\))Tj -T* -( \(*eval-function* *eval-function*\))Tj -T* -( \(*exec-prompt* *exec-prompt*\))Tj -T* -( \(*debugger-prompt* *debugger-prompt*\)\))Tj -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 67 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -69 0 obj -<< -/Length 7445 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-20)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.216 Tw -(Most of these cause the values to be \(re\)bound to their current)Tj -0 -1.2 TD -0 Tw -(value in any inferior Exec, or to )Tj -/TT4 1 Tf -14.0068 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, their value at the "top level".)Tj -ET -258.01 713.49 m -558.01 713.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 678.93 Tm -(XCL:*EVAL-FUNCTION*)Tj -8 0 0 8 241.81 686.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -241.78 678.93 m -341.37 678.93 l -341.37 678.93 m -341.37 694.95 l -241.78 694.95 m -341.37 694.95 l -241.78 694.95 m -241.78 678.93 l -S -BT -/TT2 1 Tf -10 0 0 10 341.4 678.93 Tm -[( )-16880.3([Variable])]TJ -ET -1 w []0 d -129.01 676.22 m -558.01 676.22 l -S -BT -10 0 0 10 258 660.93 Tm -0.022 Tw -[(Bound to the function used by the Exec to evaluate input. Typically)]TJ -0 -1.2 TD -0.211 Tw -(in an INTERLISP Exec this is )Tj -/TT4 1 Tf -14.493 0 TD -0 Tw -(IL:EVAL)Tj -/TT2 1 Tf -3.8887 0 TD -0.211 Tw -(, and in a Common Lisp)Tj --18.3817 -1.2 TD -0 Tw -(Exec, )Tj -/TT4 1 Tf -2.7788 0 TD -(CL:EVAL)Tj -/TT2 1 Tf -4.333 0 TD -(.)Tj -ET -258.01 632.22 m -558.01 632.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 597.66 Tm -(XCL:*EXEC-PROMPT*)Tj -8 0 0 8 233.49 605.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -233.46 597.66 m -333.05 597.66 l -333.05 597.66 m -333.05 613.68 l -233.46 613.68 m -333.05 613.68 l -233.46 613.68 m -233.46 597.66 l -S -BT -/TT2 1 Tf -10 0 0 10 333.08 597.66 Tm -[( )-17712.3([Variable])]TJ -ET -1 w []0 d -129.01 594.95 m -558.01 594.95 l -S -BT -10 0 0 10 258 579.66 Tm -0.253 Tw -(Bound to the string printed by the Exec as a prompt for input.)Tj -0 -1.2 TD -0.147 Tw -(Typically in an INTERLISP Exec this is " )Tj -/TT11 1 Tf -19.2033 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.147 Tw -[( ", and in a Common)]TJ --20.1902 -1.2 TD -0 Tw -(Lisp Exec, "> ".)Tj -ET -258.01 550.95 m -558.01 550.95 l -S -BT -/TT4 1 Tf -10 0 0 10 129 516.39 Tm -(XCL:*DEBUGGER-PROMPT*)Tj -8 0 0 8 264.04 524.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -264.01 516.39 m -363.6 516.39 l -363.6 516.39 m -363.6 532.41 l -264.01 532.41 m -363.6 532.41 l -264.01 532.41 m -264.01 516.39 l -S -BT -/TT2 1 Tf -10 0 0 10 363.63 516.39 Tm -[( )-14657.3([Variable])]TJ -ET -1 w []0 d -129.01 513.68 m -558.01 513.68 l -S -BT -10 0 0 10 258 498.39 Tm -0.105 Tw -(Bound to the string printed by the debugger Exec as a prompt for)Tj -0 -1.2 TD -0.179 Tw -[(input. Typically in an INTERLISP Exec this is " )]TJ -/TT11 1 Tf -22.8193 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.179 Tw -[( : ", and in a)]TJ --23.8061 -1.2 TD -0 Tw -(Common Lisp Exec, ": ".)Tj -ET -258.01 469.68 m -558.01 469.68 l -S -BT -/TT4 1 Tf -10 0 0 10 129 435.12 Tm -(\(XCL:EXEC-EVAL)Tj -8 0 0 8 212.93 443.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -212.9 435.12 m -312.49 435.12 l -312.49 435.12 m -312.49 451.14 l -212.9 451.14 m -312.49 451.14 l -212.9 451.14 m -212.9 435.12 l -S -BT -10 0 0 10 312.52 435.12 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FORM &OPTIONAL ENVIRONMENT)Tj -/TT4 1 Tf -16.6123 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-2378.2([Function])]TJ -ET -1 w []0 d -129.01 432.41 m -558.01 432.41 l -S -BT -10 0 0 10 258 417.12 Tm -(Evaluates )Tj -/TT6 1 Tf -5.3194 0 TD -(FORM)Tj -/TT2 1 Tf -2.9438 0 TD -0.65 Tw -[( \(using )]TJ -/TT4 1 Tf -4.5793 0 TD -0 Tw -(EVAL)Tj -/TT2 1 Tf -2.667 0 TD -0.65 Tw -(\) in the lexical environment)Tj -/TT6 1 Tf --15.5096 -1.2 TD -0 Tw -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -0.024 Tw -[( the same as though it were typed in to )]TJ -/TT4 1 Tf -17.6946 0 TD -0 Tw -(EXEC)Tj -/TT2 1 Tf -2.7231 0 TD -0.024 Tw -(, i.e.,)Tj --27.8069 -1.2 TD -0.243 Tw -(the event is recorded, and the evaluation is made undoable by)Tj -T* -0.687 Tw -(substituting the UNDOABLE-functions for the corresponding)Tj -T* -0.086 Tw -(destructive functions. )Tj -/TT4 1 Tf -9.8434 0 TD -0 Tw -(XCL:EXEC-EVAL)Tj -/TT2 1 Tf -8.0562 0 TD -0.086 Tw -[( returns the value\(s\) of the)]TJ --17.8995 -1.2 TD -0.011 Tw -(form, but does not print it, and does not reset the variables *, **, ***,)Tj -T* -0 Tw -(etc.)Tj -ET -258.01 340.41 m -558.01 340.41 l -S -BT -/TT4 1 Tf -10 0 0 10 129 305.85 Tm -(\(XCL:EXEC-FORMAT )Tj -8 0 0 8 231.81 313.88 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -231.78 305.85 m -331.37 305.85 l -331.37 305.85 m -331.37 321.87 l -231.78 321.87 m -331.37 321.87 l -231.78 321.87 m -231.78 305.85 l -S -BT -/TT6 1 Tf -10 0 0 10 331.4 305.85 Tm -(CONTROL-STRING &REST ARGUMENTS)Tj -/TT4 1 Tf -19.2788 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -( )Tj --26.9518 -1 TD -([Function])Tj -ET -1 w []0 d -129.01 293.14 m -558.01 293.14 l -S -BT -10 0 0 10 258 277.85 Tm -0.299 Tw -(In addition to saving inputs and values, the Exec saves many)Tj -0 -1.2 TD -0.567 Tw -[(system messages on the history list. For example, )]TJ -/TT4 1 Tf -27.8335 0 TD -0 Tw -(FILE)Tj --27.8335 -1.2 TD -0.589 Tw -(CREATED ...)Tj -/TT2 1 Tf -6.5338 0 TD -0 Tw -(, )Tj -/TT6 1 Tf -1.1447 0 TD -(FN)Tj -/TT4 1 Tf -1.333 0 TD -0.589 Tw -[( redefined)]TJ -/TT2 1 Tf -5.3678 0 TD -0 Tw -(, )Tj -/TT6 1 Tf -1.1447 0 TD -(VAR)Tj -/TT4 1 Tf -2.0562 0 TD -0.589 Tw -[( reset)]TJ -/TT2 1 Tf -3.2575 0 TD -(, output of )Tj -/TT4 1 Tf -6.4926 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -(,)Tj -/TT4 1 Tf --29.7188 -1.2 TD -(BREAKDOWN)Tj -/TT2 1 Tf -6.7217 0 TD -(, )Tj -/TT4 1 Tf -0.5877 0 TD -(ROOM)Tj -/TT2 1 Tf -3.1108 0 TD -0.032 Tw -(, save their output on the history list, so that)Tj --10.4202 -1.2 TD -0 Tw -(when )Tj -/TT4 1 Tf -2.8035 0 TD -(??)Tj -/TT2 1 Tf -1.2217 0 TD -0.135 Tw -[( prints the event, the output is also printed. The function)]TJ -/TT4 1 Tf --4.0251 -1.2 TD -0 Tw -(XCL:EXEC-FORMAT)Tj -/TT2 1 Tf -9.666 0 TD -0.674 Tw -[( can be used in user code similarly.)]TJ -/TT4 1 Tf --9.666 -1.2 TD -0 Tw -(XCL:EXEC-FORMAT)Tj -/TT2 1 Tf -9.666 0 TD -1.814 Tw -[( performs \(APPLY #CL:FORMAT)]TJ --9.666 -1.2 TD -0 Tw -(*TERMINAL-IO* )Tj -/TT6 1 Tf -8.111 0 TD -(CONTROL-STRING)Tj -/TT2 1 Tf -9 0 TD -( )Tj -/TT6 1 Tf -0.8878 0 TD -(ARGUMENTS)Tj -/TT2 1 Tf -6.3892 0 TD -0.61 Tw -(\) and also)Tj --24.388 -1.2 TD -0.01 Tw -(saves the format string and arguments on the history list associated)Tj -T* -0 Tw -(with the current event.)Tj -ET -258.01 165.14 m -558.01 165.14 l -S -BT -/TT4 1 Tf -10 0 0 10 129 130.58 Tm -(\(XCL:SET-EXEC-TYPE)Tj -8 0 0 8 235.16 138.61 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -235.13 130.58 m -334.72 130.58 l -334.72 130.58 m -334.72 146.6 l -235.13 146.6 m -334.72 146.6 l -235.13 146.6 m -235.13 130.58 l -S -BT -10 0 0 10 334.75 130.58 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME)Tj -/TT4 1 Tf -2.8892 0 TD -(\))Tj -/TT2 1 Tf -14.767 0 TD -([Function])Tj -ET -1 w []0 d -129.01 127.87 m -558.01 127.87 l -S -BT -10 0 0 10 258 112.58 Tm -0.072 Tw -(Sets the type of the current Exec to that indicated by )Tj -/TT6 1 Tf -24.25 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.072 Tw -[(. This)]TJ --27.1392 -1.2 TD -0.114 Tw -(can be used to set up the Exec to your liking. )Tj -/TT6 1 Tf -21.8245 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.114 Tw -[( may be an)]TJ --24.7137 -1.2 TD -0 Tw -(atom or string. Possible names are:)Tj -/TT4 1 Tf --8.468 -1.9 TD -(INTERLISP)Tj -/TT2 1 Tf -5.2227 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(IL)Tj -/TT2 1 Tf -2.6897 0 TD -(*READTABLE* INTERLISP)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 71 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -73 0 obj -<< -/Length 4145 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-21)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -(*PACKAGE* INTERLISP)Tj -0 -1.9 TD -(XCL:*DEBUGGER-PROMPT* ")Tj -/TT11 1 Tf -13.9683 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(: ")Tj --14.9551 -1.9 TD -(XCL:*EXEC-PROMPT* ")Tj -/TT11 1 Tf -10.9683 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(")Tj --11.9551 -1.9 TD -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj -/TT4 1 Tf --15.412 -1.9 TD -(XEROX-COMMON-LISP)Tj -/TT2 1 Tf -11.0557 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(XCL)Tj -/TT2 1 Tf -3.8007 0 TD -(*READTABLE* XCL)Tj -0 -1.9 TD -(*PACKAGE* XCL-USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -/TT4 1 Tf --10.911 -1.9 TD -(COMMON-LISP)Tj -/TT2 1 Tf -7.2217 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(CL)Tj -/TT2 1 Tf -3.1337 0 TD -(*READTABLE* LISP)Tj -0 -1.9 TD -(*PACKAGE* USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -/TT4 1 Tf --10.411 -1.9 TD -(OLD-INTERLISP-T)Tj -/TT2 1 Tf -10.411 0 TD -(*READTABLE* OLD-INTERLISP-T)Tj -0 -1.9 TD -(*PACKAGE* INTERLISP)Tj -T* -(XCL:*DEBUGGER-PROMPT* )Tj -/TT11 1 Tf -13.9463 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(: ")Tj --14.9331 -1.9 TD -(XCL:*EXEC-PROMPT* ": ")Tj -T* -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj -ET -258.01 383.49 m -558.01 383.49 l -S -BT -/TT4 1 Tf -10 0 0 10 129 348.93 Tm -(\(XCL:SET-DEFAULT-EXEC-TYPE)Tj -8 0 0 8 285.15 356.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -285.12 348.93 m -384.71 348.93 l -384.71 348.93 m -384.71 364.95 l -285.12 364.95 m -384.71 364.95 l -285.12 364.95 m -285.12 348.93 l -S -BT -/TT2 1 Tf -10 0 0 10 384.74 348.93 Tm -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME)Tj -/TT4 1 Tf -2.8892 0 TD -(\))Tj -/TT2 1 Tf -9.768 0 TD -([Function])Tj -ET -1 w []0 d -129.01 346.22 m -558.01 346.22 l -S -BT -10 0 0 10 258 330.93 Tm -(Like )Tj -/TT4 1 Tf -2.1503 0 TD -(XCL:SET-EXEC-TYPE)Tj -/TT2 1 Tf -10.2788 0 TD -0.038 Tw -[( , but sets the type of Execs created by)]TJ --12.4291 -1.2 TD -0.082 Tw -[(default, as from the background menu. Initially )]TJ -/TT4 1 Tf -21.6672 0 TD -0 Tw -(XCL)Tj -/TT2 1 Tf -2 0 TD -0.082 Tw -[(. This can be)]TJ --23.6672 -1.2 TD -0 Tw -(used in your greet file to set default Execs to your liking.)Tj -ET -258.01 302.22 m -558.01 302.22 l -S -BT -/TT4 1 Tf -12 0 0 12 54 278.37 Tm -(Editing Exec Input)Tj -ET -54.01 275.22 m -558.01 275.22 l -S -BT -/TT2 1 Tf -10 0 0 10 258 247.66 Tm -0.147 Tw -(The Exec features an editor)Tj -/TT4 1 Tf -8 0 0 8 386.76 255.69 Tm -0.1462 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -386.73 247.66 m -486.32 247.66 l -486.32 247.66 m -486.32 263.68 l -386.73 263.68 m -486.32 263.68 l -386.73 263.68 m -386.73 247.66 l -S -BT -/TT2 1 Tf -10 0 0 10 486.35 247.66 Tm -0.147 Tw -[( for input which)]TJ --22.835 -1.2 TD -0.795 Tw -(provides completion, spelling correction, help facility, and)Tj -T* -0.213 Tw -(character-level editing. The implementation is borrowed from the)Tj -0 -2.027 TD -0.729 Tw -(Interlisp module )Tj -/TT4 1 Tf -8 0 0 8 345.98 211.42 Tm -0.7275 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -345.95 203.39 m -445.54 203.39 l -445.54 203.39 m -445.54 219.41 l -345.95 219.41 m -445.54 219.41 l -345.95 219.41 m -345.95 203.39 l -S -BT -10 0 0 10 445.5699 203.39 Tm -0 Tw -(TTYIN)Tj -/TT2 1 Tf -2.8887 0 TD -0.729 Tw -[(. This section)]TJ --21.6457 -1.2 TD -0.12 Tw -(describes the use of the )Tj -/TT4 1 Tf -11.4955 0 TD -0 Tw -(TTYIN)Tj -/TT2 1 Tf -2.8887 0 TD -0.12 Tw -[( editor from the perspective of the)]TJ --14.3842 -1.2 TD -0 Tw -(Exec.)Tj -/TT4 1 Tf -12 0 0 12 54 151.83 Tm -(Editing Your Input)Tj -ET -1 w []0 d -54.01 148.68 m -558.01 148.68 l -S -BT -/TT2 1 Tf -10 0 0 10 258 129.39 Tm -0.215 Tw -(Some editing operations can be performed using any of several)Tj -T* -0.258 Tw -(characters; characters that are interrupts will, of course, not be)Tj -T* -0.159 Tw -[(read, so several alternatives are given. The following characters)]TJ -T* -0 Tw -(may be used to edit your input:)Tj -ET -endstream -endobj -74 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 71 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -77 0 obj -<< -/Length 6442 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-22)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 54.03 721.93 Tm -(CONTROL-A)Tj -/TT4 1 Tf -8 0 0 8 112.96 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -112.93 721.93 m -212.52 721.93 l -212.52 721.93 m -212.52 737.95 l -112.93 737.95 m -212.52 737.95 l -112.93 737.95 m -112.93 721.93 l -S -BT -/TT2 1 Tf -10 0 0 10 212.55 721.93 Tm -(, )Tj -/TT4 1 Tf -8 0 0 8 218.15 729.96 Tm -(Unknown IMAGEOBJ type)Tj -T* -(GETFN: IM.INDEX.GETFN)Tj -ET -218.12 721.93 m -317.71 721.93 l -317.71 721.93 m -317.71 737.95 l -218.12 737.95 m -317.71 737.95 l -218.12 737.95 m -218.12 721.93 l -S -BT -/TT2 1 Tf -10 0 0 10 317.74 721.93 Tm -0.107 Tw -[(BACKSPACE)-1712.7(Deletes a character. At the start of)]TJ --5.974 -1.2 TD -0.31 Tw -(the second or subsequent lines of your input, deletes the last)Tj -T* -0 Tw -(character of the previous line.)Tj --17.929 -2.727 TD -(CONTROL-W)Tj -/TT4 1 Tf -8 0 0 8 140.41 678.6899 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 670.66 m -239.97 670.66 l -239.97 670.66 m -239.97 686.68 l -140.38 686.68 m -239.97 686.68 l -140.38 686.68 m -140.38 670.66 l -S -BT -/TT2 1 Tf -10 0 0 10 258 670.66 Tm -0.106 Tw -[(Deletes a "word". Generally this means back to the last space or)]TJ -0 -1.2 TD -0 Tw -(parenthesis.)Tj --17.763 -2.727 TD -(CONTROL-Q)Tj -/TT4 1 Tf -8 0 0 8 140.41 639.42 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 631.39 m -239.97 631.39 l -239.97 631.39 m -239.97 647.41 l -140.38 647.41 m -239.97 647.41 l -140.38 647.41 m -140.38 631.39 l -S -BT -/TT2 1 Tf -10 0 0 10 258 631.39 Tm -0.124 Tw -(Deletes the current line, or if the current line is blank, deletes the)Tj -0 -1.2 TD -0 Tw -(previous line.)Tj --17.707 -2.727 TD -(CONTROL-R)Tj -/TT4 1 Tf -8 0 0 8 140.41 600.15 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 592.12 m -239.97 592.12 l -239.97 592.12 m -239.97 608.14 l -140.38 608.14 m -239.97 608.14 l -140.38 608.14 m -140.38 592.12 l -S -BT -/TT2 1 Tf -10 0 0 10 258 592.12 Tm -0.018 Tw -[(Refreshes the current line. Two in a row refreshes the whole buffer)]TJ -0 -1.2 TD -0 Tw -(\(when doing multiline input\).)Tj -/TT4 1 Tf -8 0 0 8 99.84 560.88 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -99.81 552.85 m -199.4 552.85 l -199.4 552.85 m -199.4 568.87 l -99.81 568.87 m -199.4 568.87 l -99.81 568.87 m -99.81 552.85 l -S -BT -/TT2 1 Tf -10 0 0 10 199.43 552.85 Tm -0.635 Tw -[(ESCAPE)-1799.9(Tries to complete the current word from the spelling list)]TJ -/TT4 1 Tf -5.857 -1.2 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.161 Tw -[(. In the case of ambiguity, completes as far as is)]TJ --6.6113 -1.2 TD -0 Tw -(uniquely determined, or beeps.)Tj --20.397 -2.027 TD -(UNDO)Tj -/TT4 1 Tf -8 0 0 8 83.51 516.61 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -83.48 508.58 m -183.07 508.58 l -183.07 508.58 m -183.07 524.6 l -83.48 524.6 m -183.07 524.6 l -83.48 524.6 m -83.48 508.58 l -S -BT -/TT2 1 Tf -10 0 0 10 183.1 508.58 Tm -( key \(on 1108 and 1186\))Tj --6.37 -1.2 TD -0.061 Tw -[(Middle-blank )61(key )61(\(on )61(1132\))-1798(Retrieves characters from the previous non-empty buffer when it is)]TJ -13.86 -1.2 TD -0.05 Tw -(able to; e.g., when typed at the beginning of the line this command)Tj -T* -0.054 Tw -(restores the previous line you typed; when typed in the middle of a)Tj -T* -0.018 Tw -(line fills in the remaining text from the old line; when typed following)Tj -T* -0.37 Tw -(CONTROL-Q or CONTROL-W restores what those commands)Tj -T* -0 Tw -(erased.)Tj --17.652 -2.727 TD -(CONTROL-X)Tj -/TT4 1 Tf -8 0 0 8 140.41 417.34 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -140.38 409.31 m -239.97 409.31 l -239.97 409.31 m -239.97 425.33 l -140.38 425.33 m -239.97 425.33 l -140.38 425.33 m -140.38 409.31 l -S -BT -/TT2 1 Tf -10 0 0 10 258 409.31 Tm -0.122 Tw -(Goes to the end of your input \(or end of expression if there is an)Tj -0 -1.2 TD -0 Tw -(excess right parenthesis\) and returns if parentheses are balanced.)Tj -0 -1.9 TD -0.2 Tw -(If you are already at the end of the input and the expression is)Tj -0 -1.2 TD -0.338 Tw -[(balanced except for lacking one or more right parentheses,)]TJ -T* -0.034 Tw -[(CONTROL-X adds the required right parentheses to balance and)]TJ -T* -0 Tw -(returns. )Tj -0 -1.9 TD -0.068 Tw -(During most kinds of input, lines are broken, if possible, so that no)Tj -0 -1.2 TD -0.232 Tw -[(word straddles the end of the line. The pseudo-carriage return)]TJ -T* -0.101 Tw -(ending the line is still read as a space, however; i.e., the program)Tj -T* -0.055 Tw -(keeps track of whether a line ends in a carriage return or is merely)Tj -T* -0.059 Tw -[(broken at some convenient point. You will not get carriage returns)]TJ -T* -0 Tw -(in your strings unless you explicitly type them.)Tj -/TT4 1 Tf -12 0 0 12 54 235.75 Tm -(Using the Mouse)Tj -ET -1 w []0 d -54.01 232.6 m -558.01 232.6 l -S -BT -/TT2 1 Tf -10 0 0 10 258 213.31 Tm -0.082 Tw -(Editing with the mouse during TTYIN input is slightly different than)Tj -T* -0.116 Tw -(with other modules. The mouse buttons are interpreted as follows)Tj -T* -0 Tw -(during TTYIN input:)Tj -/TT6 1 Tf --4.245 -1.9 TD -(LEFT)Tj -/TT2 1 Tf -4.245 0 TD -0.042 Tw -[(Moves the caret to where the cursor is pointing. As you hold down)]TJ -/TT6 1 Tf -0 -1.2 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.031 Tw -(, the caret moves around with the cursor; after you let up, any)Tj --2.4448 -1.2 TD -0 Tw -(type-in will be inserted at the new position.)Tj -/TT6 1 Tf --13.163 -1.9 TD -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -(+)Tj -/TT6 1 Tf -0.584 0 TD -(RIGHT)Tj -/TT2 1 Tf -4.911 0 TD -(Like )Tj -/TT6 1 Tf -2.1123 0 TD -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -(, but moves only to word boundaries.)Tj -/TT6 1 Tf --9.4681 -1.9 TD -[(RIGHT)-1800.2(Deletes)]TJ -/TT2 1 Tf -8.3016 0 TD -0.46 Tw -[( text from the caret to the cursor, either forward or)]TJ --3.3906 -1.2 TD -0.115 Tw -[(backward. While you hold down )]TJ -/TT6 1 Tf -15.3087 0 TD -0 Tw -(RIGHT)Tj -/TT2 1 Tf -3.1108 0 TD -0.115 Tw -(, the text to be deleted is)Tj --18.4195 -1.2 TD -0.034 Tw -[(inverted; when you let up, the text goes away. If you let up outside)]TJ -T* -0.093 Tw -(the scope of the text, nothing is deleted \(this is how to cancel this)Tj -T* -0 Tw -(operation\). )Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -80 0 obj -<< -/Length 5723 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-23)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.029 Tw -(If you hold down )Tj -/TT6 1 Tf -7.6765 0 TD -0 Tw -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -(, )Tj -/TT6 1 Tf -0.5847 0 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -(, )Tj -/TT6 1 Tf -0.5847 0 TD -(SHIFT)Tj -/TT2 1 Tf -2.8887 0 TD -0.029 Tw -[( or )]TJ -/TT6 1 Tf -1.5028 0 TD -0 Tw -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -0.029 Tw -[( while pressing the)]TJ --21.6275 -1.2 TD -0.57 Tw -(mouse buttons, you instead get secondary selection, move)Tj -T* -0.088 Tw -(selection or delete selection. The selection is made by holding the)Tj -T* -[(appropriate key down while pressing the mouse buttons )]TJ -/TT6 1 Tf -26.0288 0 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.088 Tw -[( \(to)]TJ --28.4736 -1.2 TD -0.188 Tw -(select a character\) or )Tj -/TT6 1 Tf -10.4224 0 TD -0 Tw -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -0.188 Tw -[( \(to select a word\), and optionally)]TJ --14.2007 -1.2 TD -0.027 Tw -(extend the selection either left or right using )Tj -/TT6 1 Tf -19.8386 0 TD -0 Tw -(RIGHT)Tj -/TT2 1 Tf -3.1108 0 TD -0.027 Tw -[(. While you are)]TJ --22.9494 -1.2 TD -0.357 Tw -(doing this, the caret does not move, but the selected text is)Tj -T* -0.069 Tw -[(highlighted in a manner indicating what is about to happen. When)]TJ -T* -0.126 Tw -(the selection is complete, release the mouse buttons and then lift)Tj -T* -0.221 Tw -(up on )Tj -/TT6 1 Tf -3.2223 0 TD -0 Tw -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(SHIFT)Tj -/TT2 1 Tf -2.8887 0 TD -0.221 Tw -[( and the appropriate action will)]TJ --15.3346 -1.2 TD -0 Tw -(occur:)Tj -/TT6 1 Tf --8.968 -1.9 TD -(COPY)Tj -/TT2 1 Tf -2.834 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(SHIFT)Tj -/TT2 1 Tf -4.6892 0 TD -0.311 Tw -[(The selected text is inserted as if it were typed. The text is)]TJ -0 -1.2 TD -0 Tw -(highlighted with a broken underline during selection.)Tj -/TT6 1 Tf --4.411 -1.9 TD -(CTRL)Tj -/TT2 1 Tf -4.411 0 TD -0.249 Tw -[(The selected text is deleted. The text is complemented during)]TJ -0 -1.2 TD -0 Tw -(selection.)Tj -/TT6 1 Tf --12.274 -1.9 TD -(MOVE)Tj -/TT2 1 Tf -2.9448 0 TD -( or )Tj -/TT6 1 Tf -1.4448 0 TD -(CTRL)Tj -/TT2 1 Tf -2.6113 0 TD -(+)Tj -/TT6 1 Tf -0.584 0 TD -(SHIFT)Tj -/TT2 1 Tf -4.689 0 TD -(Combines copy and delete. The selected text is moved to the caret.)Tj -0 -1.9 TD -0.36 Tw -(You can cancel a selection in progress by pressing )Tj -/TT6 1 Tf -26.0305 0 TD -0 Tw -(LEFT)Tj -/TT2 1 Tf -2.4448 0 TD -0.36 Tw -[( or)]TJ -/TT6 1 Tf --28.4753 -1.2 TD -0 Tw -(MIDDLE)Tj -/TT2 1 Tf -3.7783 0 TD -( as if to select, and moving outside the range of the text.)Tj --3.7783 -1.9 TD -0.093 Tw -(The most recent text deleted by mouse command can be inserted)Tj -0 -1.2 TD -0.771 Tw -(at the caret by typing the UNDO key \(on the Xerox)Tj -T* -0.304 Tw -(1108/1186/1185\) or the Middle-blank key \(on the Xerox 1132\).)Tj -T* -0.039 Tw -(This is the same key that retrieves the previous buffer when issued)Tj -T* -0 Tw -(at the end of a line.)Tj -/TT4 1 Tf -12 0 0 12 54 403.64 Tm -(Editing Commands)Tj -ET -54.01 400.49 m -558.01 400.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 381.2 Tm -0.226 Tw -(A number of characters have special effects while typing to the)Tj -0 -2.027 TD -0 Tw -(Exec)Tj -/TT4 1 Tf -8 0 0 8 280.27 368.96 Tm -0.1225 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -[(GETFN: IM.INDEX.GETFN)]TJ -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -280.24 360.93 m -379.83 360.93 l -379.83 360.93 m -379.83 376.95 l -280.24 376.95 m -379.83 376.95 l -280.24 376.95 m -280.24 360.93 l -S -BT -/TT2 1 Tf -10 0 0 10 379.86 360.93 Tm -0.123 Tw -(. Some of them merely move the caret)Tj --12.186 -1.2 TD -0.104 Tw -(inside the input stream. While caret positioning can often be done)Tj -T* -0.141 Tw -(more conveniently with the mouse, some of the commands, such)Tj -T* -0.121 Tw -(as the case changing commands, can be useful for modifying the)Tj -T* -0 Tw -(input.)Tj -0 -1.9 TD -0.077 Tw -(In the descriptions below, current word means the word the cursor)Tj -0 -1.2 TD -0.363 Tw -[(is under, or if under a space, the previous word. Currently,)]TJ -T* -0.015 Tw -(parentheses are treated as spaces, which is usually what you want,)Tj -T* -0.568 Tw -(but can occasionally cause confusion in the word deletion)Tj -T* -0.546 Tw -[(commands. The notation [)]TJ -/TT6 1 Tf -14.0234 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.546 Tw -(] means meta-)Tj -/TT6 1 Tf -7.4831 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.546 Tw -(. The)Tj --27.1735 -1.2 TD -0.06 Tw -[(notation $ stands for the ESCAPE/EXPAND key. Most commands)]TJ -T* -0.126 Tw -(can be preceded by numbers or escape \(means infinity\), only the)Tj -T* -0.249 Tw -[(first of which requires the meta key \(or the edit prefix\). Some)]TJ -T* -0.079 Tw -(commands also accept negative arguments, but some only look at)Tj -T* -0.265 Tw -[(the magnitude of the argument. Most of these commands are)]TJ -T* -0 Tw -(confined to work within one line of text unless otherwise noted. )Tj -/TT4 1 Tf --20.4 -3.427 TD -(Cursor Movement Commands)Tj -8 0 0 8 196.28 147.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -196.25 139.66 m -295.84 139.66 l -295.84 139.66 m -295.84 155.68 l -196.25 155.68 m -295.84 155.68 l -196.25 155.68 m -196.25 139.66 l -S -1 w []0 d -54.01 136.95 m -558.01 136.95 l -S -BT -/TT2 1 Tf -10 0 0 10 223.88 121.66 Tm -[([bs])-1800.2(Backs up one \(or n\) characters.)]TJ --1.612 -1.9 TD -[([space])-1799.9(Moves forward one \(or n\) characters.)]TJ -2.199 -1.9 TD -[([^])-1800.1(Moves up one \(or n\) lines.)]TJ --0.031 -1.9 TD -[([lf])-1800.3(Moves down one \(or n\) lines.)]TJ -ET -endstream -endobj -81 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -83 0 obj -<< -/Length 3934 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-24)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 231.11 730.2 Tm -[([\(])-1800.3(Moves back one \(or n\) words.)]TJ -0 -1.9 TD -[([\)])-1800.3(Moves ahead one \(or n\) words.)]TJ --1.057 -1.9 TD -0.127 Tw -[([tab])-1800.2(Moves to end of line; with an argument moves to nth end of line;)]TJ -3.746 -1.2 TD -0 Tw -([$tab] goes to end of buffer.)Tj --6.246 -1.9 TD -[([control-L])-1799.7(Moves to start of line \(or nth previous, or start of buffer\).)]TJ -0.442 -1.9 TD -0.126 Tw -[([{] )126(and )126([}])-1800.6(Goes to start and end of buffer, respectively \(like [$control-L] and)]TJ -5.804 -1.2 TD -0 Tw -([$tab]\).)Tj --11.914 -1.9 TD -0.221 Tw -[([ )221([ )221(] )221( )221(\(meta-left-bracket\))-1800.7(Moves to beginning of the current list, where cursor is currently)]TJ -11.914 -1.2 TD -0.174 Tw -[(under an element of that list or its closing paren. \(See also the)]TJ -T* -0 Tw -(auto-parenthesis-matching feature below under "Assorted Flags".\))Tj --12.525 -1.9 TD -[([ ] ] \(meta-right-bracket\))-1800.4(Moves to end of current list.)]TJ -9.002 -1.9 TD -0.05 Tw -[([Sx])-1800.3(Skips ahead to next \(or nth\) occurrence of character x, or rings the)]TJ -3.523 -1.2 TD -0 Tw -(bell.)Tj --3.523 -1.9 TD -[([Bx])-1800.3(Backward search, i.e., short for [-S] or [-nS].)]TJ -/TT4 1 Tf --16.877 -2.6 TD -(Buffer Modification Commands)Tj -ET -54.01 489.49 m -558.01 489.49 l -S -BT -/TT2 1 Tf -10 0 0 10 223.33 474.2 Tm -0.013 Tw -[([Zx])-1800.5(Zaps characters from cursor to next \(or nth\) occurrence of x. There)]TJ -3.467 -1.2 TD -0 Tw -(is no unzap command.)Tj --5.746 -1.9 TD -0.019 Tw -[([A] )19(or )19([R])-1800.7(Repeats the last S, B, or Z command, regardless of any intervening)]TJ -5.746 -1.2 TD -0 Tw -(input.)Tj --3.023 -1.9 TD -0.287 Tw -[([K])-1800.3(Kills the character under the cursor, or n chars starting at the)]TJ -3.023 -1.2 TD -0 Tw -(cursor.)Tj --3.189 -1.9 TD -0.05 Tw -[([cr])-1800.3(When the buffer is empty is the same as undo i.e. restores buffers)]TJ -3.189 -1.2 TD -0.059 Tw -[(previous contents. Otherwise is just like a \(except that it also)]TJ -T* -0.246 Tw -[(terminates an insert\). Thus, [] will repeat the previous)]TJ -T* -0 Tw -(input \(as will undo without the meta key\).)Tj --3.134 -1.9 TD -0.06 Tw -[([O])-1800.5(Does "Open line", inserting a crlf after the cursor, i.e., it breaks the)]TJ -3.134 -1.2 TD -0 Tw -(line but leaves the cursor where it is.)Tj --2.967 -1.9 TD -0.295 Tw -[([T])-1800.5(Transposes the characters before and after the cursor. When)]TJ -2.967 -1.2 TD -0.074 Tw -(typed at the end of a line, transposes the previous two characters.)Tj -T* -0 Tw -(Refuses to handle odd cases, such as tabs.)Tj --3.134 -1.9 TD -0.215 Tw -[([G])-1800.5(Grabs the contents of the previous line from the cursor position)]TJ -3.134 -1.2 TD -0 Tw -(onward. [nG] grabs the nth previous line.)Tj --2.912 -1.9 TD -0.07 Tw -[([L])-1800.2(Puts the current word, or n words on line, in lower case. [$L] puts)]TJ -2.912 -1.2 TD -0.099 Tw -(the rest of the linein lower case; or if given at the end of line puts)Tj -T* -0 Tw -(the entire line in lower case.)Tj --3.078 -1.9 TD -0.133 Tw -[([U])-1800.2(Analogous to [L], for putting word, line, or portion of line in upper)]TJ -3.078 -1.2 TD -0 Tw -(case.)Tj --3.078 -1.9 TD -0.305 Tw -[([C])-1800.2(Capitalizes. If you give it an argument, only the first word is)]TJ -3.078 -1.2 TD -0 Tw -(capitalized; the rest are just lowercased.)Tj --6.468 -1.9 TD -0.314 Tw -[([control-Q])-1800(Deletes the current line. [$control-Q] deletes from the current)]TJ -6.468 -1.2 TD -0.147 Tw -[(cursor position to the end of the buffer. No other arguments are)]TJ -T* -0 Tw -(handled.)Tj --6.634 -1.9 TD -[([control-W])-1800(Deletes the current word, or the previous word if sitting on a space.)]TJ -ET -endstream -endobj -84 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -86 0 obj -<< -/Length 4920 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-25)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(Miscellaneous Commands)Tj -ET -54.01 727.49 m -558.01 727.49 l -S -BT -/TT2 1 Tf -10 0 0 10 227.77 712.2 Tm -0.542 Tw -[([P])-1800.3(Prettyprints buffer. Clears the buffer and reprints it using)]TJ -3.023 -1.2 TD -0.064 Tw -[(prettyprint. If there are not enough right parentheses, it will supply)]TJ -T* -0.054 Tw -(more; if there are too many, any excess remains unprettyprinted at)Tj -T* -0.213 Tw -[(the end of the buffer. May refuse to do anything if there is an)]TJ -T* -0 Tw -(unclosed string or other error trying to read the buffer.)Tj --3.078 -1.9 TD -0.282 Tw -[([N])-1800.2(Refreshes line. Same as control-R. [$N] refreshes the whole)]TJ -3.078 -1.2 TD -0.032 Tw -[(buffer; [nN] refreshes n lines. Cursor movement in TTYIN depends)]TJ -T* -0.11 Tw -(on TTYIN being the only source of output to the window; in some)Tj -T* -0 Tw -(circumstances, you may need to refresh the line for best results.)Tj --6.357 -1.9 TD -[([control-Y])-1799.9(Gets an Interlisp Exec.)]TJ --0.556 -1.9 TD -0.105 Tw -[([$control-Y])-1799.7(Gets an Interlisp Exec, but first unreads the contents of the buffer)]TJ -6.913 -1.2 TD -0.191 Tw -[(from the cursor onward. Thus if you typed at TTYIN something)]TJ -T* -0.032 Tw -(destined for Interlisp, you can do [control-L$control-Y] and give it to)Tj -T* -0 Tw -(Lisp.)Tj --3.343 -1.9 TD -([)Tj -/TT11 1 Tf -0.2778 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.029 Tw -[(])-1800.5(Adds the current word to the spelling list )]TJ -/TT4 1 Tf -20.3196 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.029 Tw -[(. With zero)]TJ --24.8526 -1.2 TD -0 Tw -(argument, removes word. See )Tj -/TT4 1 Tf -13.9507 0 TD -(TTYINCOMPLETEFLG)Tj -/TT2 1 Tf -10.4438 0 TD -( .)Tj -/TT4 1 Tf -12 0 0 12 54 476.64 Tm -(Useful Macros)Tj -ET -54.01 473.49 m -558.01 473.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 454.2 Tm -0.014 Tw -(If the event is considered short enough, the Exec command )Tj -/TT4 1 Tf -26.7665 0 TD -0 Tw -(FIX)Tj -/TT2 1 Tf -1.5557 0 TD -0.014 Tw -[( will)]TJ --28.3221 -1.2 TD -0.382 Tw -(load the buffer with the events input, rather than calling the)Tj -T* -0.016 Tw -[(structure editor. If you really wanted the Lisp editor for your fix, you)]TJ -T* -0 Tw -(can say )Tj -/TT4 1 Tf -3.7241 0 TD -(FIX )Tj -/TT6 1 Tf -1.8335 0 TD -(EVENT)Tj -/TT4 1 Tf -3.334 0 TD -( - |TTY:|)Tj -/TT2 1 Tf -3.6699 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 390.64 Tm -(?= Handler)Tj -ET -54.01 387.49 m -558.01 387.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 368.2 Tm -0.453 Tw -(Typing the characters ?= displays the arguments to the)Tj -0 -1.2 TD -0.008 Tw -[(function currently in progress. Since TTYIN wants you to be able to)]TJ -T* -0.057 Tw -(continue editing the buffer after a ?=, it prints the arguments below)Tj -T* -0.117 Tw -(your type-in and then puts the cursor back where it was when ?=)Tj -T* -0 Tw -(was typed.)Tj -/TT4 1 Tf -12 0 0 12 54 292.64 Tm -(Assorted Flags)Tj -ET -54.01 289.49 m -558.01 289.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 270.2 Tm -0.314 Tw -[(These flags control aspects of TTYINs behavior. Some have)]TJ -T* -0.049 Tw -[(already been mentioned. In Interlisp-D, the flags are all initially set)]TJ -T* -0 Tw -(to )Tj -/TT4 1 Tf -1.1118 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(.)Tj -/TT4 1 Tf --14.6227 -3.827 TD -(?ACTIVATEFLG)Tj -8 0 0 8 205.15 215.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -205.12 207.93 m -304.71 207.93 l -304.71 207.93 m -304.71 223.95 l -205.12 223.95 m -304.71 223.95 l -205.12 223.95 m -205.12 207.93 l -S -BT -/TT2 1 Tf -10 0 0 10 304.74 207.93 Tm -[( )-20546.3([Variable])]TJ -ET -1 w []0 d -129.01 205.22 m -558.01 205.22 l -S -BT -10 0 0 10 258 189.93 Tm -0.103 Tw -(If true, enables the feature whereby ? lists alternative completions)Tj -0 -1.2 TD -0 Tw -(from the current spelling list.)Tj -ET -258.01 173.22 m -558.01 173.22 l -S -BT -/TT4 1 Tf -10 0 0 10 129 138.66 Tm -(SHOWPARENFLG)Tj -/TT2 1 Tf -8.6108 0 TD -( )Tj -/TT4 1 Tf -8 0 0 8 217.93 146.69 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -217.9 138.66 m -317.49 138.66 l -317.49 138.66 m -317.49 154.68 l -217.9 154.68 m -317.49 154.68 l -217.9 154.68 m -217.9 138.66 l -S -BT -/TT2 1 Tf -10 0 0 10 317.52 138.66 Tm -19.5462 Tw -[( [Variable])]TJ -ET -1 w []0 d -129.01 135.95 m -558.01 135.95 l -S -BT -10 0 0 10 258 120.66 Tm -0.17 Tw -(If true, then whenever you are typing Lisp input and type a right)Tj -0 -1.2 TD -0.246 Tw -(parenthesis, TTYIN will briefly move the cursor to the matching)Tj -T* -0.176 Tw -[(parenthesis, assuming it is still on the screen. The cursor stays)]TJ -T* -0.036 Tw -(there for about 1 second, or until you type another character \(i.e., if)Tj -T* -0 Tw -(you type fast you will never notice it\).)Tj -ET -258.01 60.95 m -558.01 60.95 l -S -endstream -endobj -87 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 71 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -89 0 obj -<< -/Length 3768 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-26)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 293.46 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj --23.946 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -8 0 0 8 129.04 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: IM.INDEX.GETFN)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -129.01 721.93 m -228.6 721.93 l -228.6 721.93 m -228.6 737.95 l -129.01 737.95 m -228.6 737.95 l -129.01 737.95 m -129.01 721.93 l -S -BT -10 0 0 10 228.63 721.93 Tm -(USERWORDS)Tj -/TT2 1 Tf -28.713 0 TD -([Variable])Tj -ET -1 w []0 d -129.01 719.22 m -558.01 719.22 l -S -BT -/TT4 1 Tf -10 0 0 10 258 703.93 Tm -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.141 Tw -[( contains words you mentioned recently: functions)]TJ --6.6113 -1.2 TD -0.074 Tw -(you have defined or edited, variables you have set or evaluated at)Tj -T* -0.078 Tw -[(the executive level, etc. This happens to be a very convenient list)]TJ -T* -0.184 Tw -(for context-free escape completion; if you have recently edited a)Tj -T* -0.16 Tw -(function, chances are good you may want to edit it again \(typing)Tj -T* -0.21 Tw -[("ED\(xx$\)"\) or type a call to it. If there is no completion for the)]TJ -T* -0.394 Tw -(current word from )Tj -/TT4 1 Tf -9.2953 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.394 Tw -(, or there is more than one)Tj --15.9066 -1.2 TD -0.26 Tw -[(possible completion, TTYIN beeps. If typed when not inside a)]TJ -T* -0.082 Tw -(word, Escape completes to the value of )Tj -/TT4 1 Tf -18.3059 0 TD -0 Tw -(LASTWORD)Tj -/TT2 1 Tf -5.7769 0 TD -0.082 Tw -(, i.e., the last)Tj --24.0828 -1.2 TD -0.16 Tw -(thing you typed that the Exec noticed, except that Escape at the)Tj -T* -0.342 Tw -(beginning of the line is left alone \(it is an Old Interlisp Exec)Tj -T* -0 Tw -(command\).)Tj -0 -1.9 TD -0.165 Tw -(If you really wanted to enter an escape, you can, of course, just)Tj -0 -1.2 TD -0 Tw -(quote it with a CONTROL-V, like you can other control characters.)Tj -0 -1.9 TD -0.055 Tw -(You may explicitly add words to)Tj -/TT4 1 Tf -14.2813 0 TD -[( USERWORDS)]TJ -/TT2 1 Tf -6.9442 0 TD -[( yourself that would)]TJ --21.2255 -1.2 TD -0.15 Tw -[(not get there otherwise. To make this convenient online the edit)]TJ -T* -0.008 Tw -(command [)Tj -/TT11 1 Tf -4.9543 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.008 Tw -(] means "add the current atom to )Tj -/TT4 1 Tf -14.8631 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.008 Tw -(" \(you)Tj --27.4156 -1.2 TD -0.358 Tw -[(might think of the command as pointing out this atom\). For)]TJ -T* -0.171 Tw -(example, you might be entering a function definition and want to)Tj -T* -0.067 Tw -[(point to one or more of its arguments or prog variables. Giving an)]TJ -T* -0.01 Tw -(argument of zero to this command will instead remove the indicated)Tj -T* -0 Tw -(atom from )Tj -/TT4 1 Tf -4.7788 0 TD -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -(.)Tj --11.3901 -1.9 TD -0.003 Tw -(Note that this feature loses some of its value if the spelling list is too)Tj -0 -1.2 TD -0.036 Tw -(long, if there are too many alternative completions for you to get by)Tj -T* -0.61 Tw -[(with typing a few characters followed by escape. Lisps)]TJ -T* -0.006 Tw -(maintenance of the spelling list )Tj -/TT4 1 Tf -13.9826 0 TD -0 Tw -(USERWORDS)Tj -/TT2 1 Tf -6.6113 0 TD -0.006 Tw -[( keeps the temporary)]TJ --20.594 -1.2 TD -0.24 Tw -(section \(which is where everything goes initially unless you say)Tj -T* -0.145 Tw -(otherwise\) limited to )Tj -/TT4 1 Tf -9.6049 0 TD -0 Tw -(\\#USERWORDS)Tj -/TT2 1 Tf -7.4453 0 TD -0.145 Tw -[( atoms, initially 100. Words)]TJ --17.0502 -1.2 TD -0.406 Tw -(fall off the end if they havent been used \(they are used if)Tj -/TT4 1 Tf -T* -0 Tw -(FIXSPELL)Tj -/TT2 1 Tf -4.7783 0 TD -( corrects to one, or you use to complete one\). )Tj -ET -endstream -endobj -90 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT11 71 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -92 0 obj -<< -/Length 358 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(A-27)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, THE EXEC)Tj -38.508 74.479 TD -(APPENDIX A - THE EXEC)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -93 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -19 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 207 -/Height 104 -/BitsPerComponent 1 -/ImageMask true -/Length 2705 ->> -stream -???8/ ;v߷ݿw>0ノ;?????8/ǽf;̓393$ݿw>80????3?8/pa;$̙2g> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -96 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -97 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -98 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -99 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIJLBJ+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 100 0 R ->> -endobj -100 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`Bi C9͎~03K6JJ4H#ZKS))R &EEZ>*R -B1MO3{w{s}ͼ ُ0L|`I'5-PMOEd\<*QV "@rqcTgC}G\KVx9F#W 4|2 R<^Zc>Cro⟣\0 -n2̂ I3w C|s9S~^$Ӭy?c>k`13HC?qU6.q?q6ql\mkl|ZOXgl\g36m 6>gԄ83nZ,:E!F&Qà Q JTcџj4FUQi1]MDњ=KO9Unb{}Uh4m)Μmi$nVl(n3DUs{F}>4Lf$< U;({E4jrXگJLt%b_:-S ] Z+Co4- L̷\lqcfD1oXMhoݎO6X0/iۖ%'3,q:\ZlS |ZxDwN }$#A1gX -(%4y~R/Ry(MCΐ+tY&/䶼HdiK]v[fJMʴUٲi?h٦ں]7p7S׼ G7{\_Iiopi} -{ȕ%7H'𥞰bT]_ʗ2.[SvV]vOS#ZqR/uľ.W=5sL<#%V%yʗz_Cj=КKg uR#_(5)_e=RK=aw]ι6;pmOsykbQݔOjdۅ:f'ϝ[l1ޑ.y{>X.dwOoe\(o};Eqdf~9:OX[YV7N[uakYw`_ |_:so^F>u4lju(ht[Ϻ% o*kUmtTfl| k}GinvmF9Wwĩ˻>qy4&:#9OBulAN[Ngwa-g|h׮K圣z* |csdk|Nv0o8ܵ${Dlm<~ؾ8x`R֜XQ* %ҮIԺhZJ.PCHB(aR6Cet(`" t:t[a=wI }u~ޏ;VuF݅Kb<&+zBCLt >ϵ)/ZBEp$w:2fQlnm47$M5z{V+@~FAj Z#XXh#~e59d.2b`{#ϫȨNǪSg!;"-W7: F&\wqX -R12Hoao=̑66˝iFE2^U.dmy5sG=>ԥjHO>eR -=[ 2fZu_v]6~EO!UD"\"@!^$5]3G"ѹ`5]١lg-s &Uin7;ɺXHe3@tK7H -ske]436}:{>5.],_)VjwU͊(9Ҫ~)'?SOrTYvAS%dtډy\/wo Cg,sKGp% CbKP+7ᖭ'CjXXۥ2GVYX,WEG\sm;H`oY-'4`gTYd>v@ۀ''6DC{FF%hp7csfK)P@p2ᖦ -) #az Kgz':~;@e?$]Í8#c$ _k$A梎_,4A=dc{ 0i`Q#}X7t:cݪX'kAFj7xbep}>.Hʐn= 茳'!g톗#cWgV[p]ώ&zFOhrg׊_'uŻ|1O;1{,:~uׯzý'.5=Z2(0MsjY [6EuFQr9VkoXֹ=J,R۽<&qss!QBb g(v iNtR0˼~dTy9nn.=uƂ\d$C0,v"hexڪrhX& V(HU)F8MOhCө cfD^4vFbDS+{&<s)XYY k^0l&h6 ]x/p -y W0H,A d -yI9Cj,YI^& WI I 3"4%%rj6ꤹMЇTet6G?t=ӕEZG7-5FGߢ. =C}&eƲl*+b3X=ճWY kcow!!;N(ȮNGp7')Ǽ?ƟK%^7|;wA0?OO)ˣc_|_&j22LYX'n*|?A!HPgn&1StN-D88Z,Ĩƙ(*ԌG&0VbYxo5Abdb, [MJH/k3AĄW!YS[2ћEw6 U_Rf2F][042XJD=w=ʇذ#Z(z& TaA*X+LfF&æ Y F}' OW.v-vu%.=kKlMo'% h~/u޻\szgR _Bٖ ?&m9AalڍhKHdrHR:l?[l?968UbTlEi lBm)w}ZAh\}~۲}nn}y2!56(}Å-2*`Si PM^:=L6tX@,Z-ĸ v7X<p"5eLOa-tl / p!%.01  K~hem59qQ,te{5:e[ZEqx8|l;,,(췰,^P TH-&xBַfdm-ݙzjVjYes~0e!ΘZ}:yarcLE`AqO鱩#nhʝtzgOI0g,\"y!{'?ȧbjx7/dDI㘅[zB|>YZds|b>w옾?[󝂅]\ECѶ$͑%lh7֕PF^ʼnZ)x|7ǎ_ . ]H9#acR{pI+n6#}':v56-9jQ2y2d4f*<;ҹY<_N:6-t -GIgati72Zں] J6ok.C%mX^:6 3PKmٕ,s.wѱMZ:L1p;e. ?bARżYaDt& (aYi} h Qҗ U}&?L(Һ,h#&R&j^6@a_% :3K +֘w)W'Ǧ:_T2U,fQqx/mu("H?]̀,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ@qAy-K0oUW yU}fBAkff8߰΋j2@-} 5Fa󥭀tft0dˀea33% -fM:{P+a+qw?v`>j[`[$jI[t.2 9d -P7J-}W -RHgR_coHVW+,j_Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xk פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(M^I-]Râb"T:X[{r/|k*=F46_ԷΟ;99%R= :h_ ڳDKX]ͶSyLACүgbb>a 7BJUК?v<>#RKyu0fұAӌc^s<{,+6zl5Y4e1TI*{E|ӽRJ"}{cEm=lOt|w_a1dZ,Mb~?,Y _ߧ`!F'd}EM?}$Xh7(),',⒅cC}Rb2u u(8GTA"r wW5~/ Jܫ`iyZ Mz<4Vzb|肽 D%8 -'8  VRE:TЗn=4t͠лnakp3~?wq/x -O8)|_Nj$HOொ|7Mr?~3h+|}}v!eeQQI f M d"j! -$2JgL5#:ihkLڱc'zeAMܳ}+얬I.OgEL^$/kߔwɝ{q#_D(_C-((N%YIQ*u/đlyh~UsouYY扵aW֚0T&ͅ$k>hn̳-2-{:9e[J'w{!=x"+A z_+ly!ͫ/q|t‘=*5$IUoǤ@fauYd{dU˥ibnh7:IyS^q<&-ӦKfMxꋺYH<Β 8:ՂLH$-_%ܱn(?pV*VA^}}|jz5"g͛db/GcFv~|Ө5!j7aqd4UIǪO$~4 _L $ I}5isjgh;mezTD#ana83uG%FR$@"|Ra2)0YUdVe<,~ˑ[ -נ"lFN8 : -O0OsnN"n2LFKq%ϑ'Djȫd-#(2d;i#>6ycr'$&ɗ1(PF-AԅCSd:fә-Z@t#JېAnG1z"CEv$H>I)[̬YT--GvV'E&9Z~'dii525` ٚ٘9Y"Kane$=6elr(@H߈KI<%;!ńJxW![=gvL 7rasU^Ι s T8oj6'1/daP&}?.mlYf"aBy?9όc#6ɄuyXpk$菰/TxT U-2q KLO/}p&h;‘&t *#DI@Z8AE)P  9LɈtՑCը"񶿷{I.N}[%h7,hb طjWjЗf]p"""Ҍ1u9.N%rGMGIEaXbY:kf͆v5/[T;`n~ژK:^~IeMK?V+577MS{?i"[UY3fR6 |`ܪOl-i۫D'<0׎*lу aw9_3ԝ7tj{ dy"E{* -BЮy"{i"ڝ'OnMȿqIˁ|IcH[.27KPw GMykm|wka8/>txoA9zGNwt@O^E-]PZXߜ* ?2|[3+Ώo>d -3q}'HJ>aGI^qQdo\(GPIE,1"vPNDUzBL$ƕn2KN-;rnz4*6 gwEVh3Ryć,d`Li#,})ȃjB(0t(E=UzjT]0F=X>X+PO=aC;8GyT]Euއ8H6UUE&TVm"[,!P_=H֐4 NtQTX'H3'IGgy\$owROs -ԠЯSVJ:ѻw"OW54L#>N:izFi=ID_qz^fj6ֵ,jk -jVj<VϖB[֡jbY36_:=ź!bϲ>OPRwRRE gFG 5*^Qndը#<mqz-ےHU(n| w/^Jk,h -۟^I mR@܊ܨ4䑒L3hL7*՝cKMS0cRE;peh *x2IČo!z ZE;p-0}ml^_b`U5q ~$%(6>|PZ4T -ėE dq$hH⹐a#`P, #X#h Ib?p MՈbyX+zةP+oy?84ud `\ -,ԏ1PRdۃ1H5IKlmHG:pw8eS7W.i, Y̯8mh7_(Sޣ|O $Q;tѻ Ix@:Ic G,z'? ІXxf EEY*: }`^y,ȧX(. 0y xrc)qqX[aBE >$+[UD)\S#=c!5Yf`2%oHa/WqNb:/YGd!гN15O,iqZ@pB0=UVC1EF .YU_ը`z_8 yfq 6I۠'Ok^H%GzKe[]v'JnmlY,TYf!y.X׎oEixazA#1tl&|6ldf6gMdCn-X,-NQ1h-%_%qnb!ʰHT==qjQmY$iYپҺa׿*v6bAdTM$z0Wؖy@8z%:\^ 0gOKbVf<|@ ,f'zsklb0CSr\[ :|,toR[-CLX X'7J.* bV/){/oi \v,$jUg/ Ll4jhv4\7U1lA+,3Y(vw}{N0s8!Cs$nA@:P{ FTt>$95Rվ$$^{J&m,g JyQovv6h6p;pR:]z]A?L)P8=AGQ@CϡYԤ[^ě>Vt<{BSޙK"ll848q̒yUZX:)nLnRz wAZ(5g޺vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk_8Oe:N阕]Jym*ә++ȩmW>Cz&> ÐVm0x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =L-4iA T0,TcbjeKf^lQ950xmmd7LLgu LhRc]Zf1|Սw ֒tHUZ9wX5Tx3kX*;/+XGd~HM -f! >؞؛Y$Z|h}̻]~,[XD 2p"kZk\/^,c ^b7c}bY 5EH),q,vY-,k:^Q}?ԉ:>~}Q֝x/bkpQ,,Ͽ̱phogh^!|g,ɱg7شI?wtěAtchK\T -Z@s^); n亀ɍ?{,ARd˺u簜MI M~ݹ eRȢ$-DKZ, -/TQff `g !hlb$j\BśbSkiF5(v[hUrE۵j" EZTY츦>z8hӸ0/0݋~wm)}tXۀ4~]8vVB MZ7-wm[f;;҂;-T }ptN:| 13c%Cނ/p -# O aQ2MI.aA#L^$%u.ʘ2|F9|YrAy -wUʯ^-PQW¢( YjeVk b]xhZz@aQ1ttm>Z5gxxHp{g}S{~sgvӫqf`Y"KaX\~沅f&viƇ1|:o.~*-K=%MJHä1R4EIM҇t]YN,!O_EzU#)_o*LP)?Rr,eXY|vrX9T*+R.)*SUըުxuf\Bݮ;<X 33=JT*Z*  -jEE - "=H8L`FI"U0G#HK BQĨʣ(Fx -}G辱5  -v&#Q"|E @eDpHs) P};θhz0r3<"f=bHz[zR3K$ Ї`pq -CN(!W#ZBP uD P'qB7@ۛ8[!mPWϵA“@ɶlrџۗ(ث;?}^?tJк U+>vTl\iU+ˮުY_hX>* %omybc)]{%zЕΔWj\J߸yDk-GL^^sƿ>w0fF+T.& ޲cYBa?z4 @[*9lyViAȯ^(ungo|uUzZBܧXν,o+I̾N" [Ԇ\{9:[S QJrSo6(tDܑ/=rc,{FO(Uɕ*n1MX}Q,խ[h\ݾ͇UIGoZ6>c9imTuf%}v4c/^u97uDVIudj3_`/K)Ƈ/|R -L"=uAlewj"."Fa!z7+bmU*q)(%9R,z=HLg5,^B1W -l,qq[5&}qNm˒jԌ/B'\>%>pAʳ֑'J=6؎NQcOb|.? T̰EV3# łP6;\W溽pm7Lz89gsޭ\CO~.PP{@hfX?slvWŢ9mX˅VwGycc1`J<^o@w-(%ǡ< X!H$Xp.1F198R+U=RSgnt|Vve]~(kmO9n-P)g@1&މ\K3z:SȣhA‡S<> #֗8IVdPޅwnٮPDZ2v}Pqd"MҦaX6isDLiMz/2(0 -$(8 "Âˠ22 ;waY,sRzL%{rv!u̫ĮO}9WʷH(>*^Ȕ $e@-/u%igT~|R zQ:;3{'/KbO)!'TT&|ׯ\' u$bF[Y6fMJ"k_,: _>㻇*u@|Tn׊P1g#& gG9GR|xWi_{De*#I;$T!wk}.q#1YMk?%x/#U~P}x%ك+ĆJ\)nDKBx{oH^kz1>ŗOv:{)GlKh+7 -T$? Y#rZ|tByGm/wg. EXkdK)丼=$-|B{n7MF'מ%Ճxlvf`Ep!g&̓E6OzMHmc *rs"Z?qmTK~* M7HӁkI Fv'u'it0l;T8 Z8-fT!֓D+ANT|iI@K\ ƆalȜ&"gAy謚LtFtѮ?I2,mMqgoS] .3eԧt3$ruu7-mbq8f9ڐaԶHL)UE2Dh8Y[eAofYxcw| -U:JS5AuE(osh5qtl/Z*!qyO#f)8fH[p QdD^qGsyַ&]&dL0. xaNW\Z3 3 -nˉCPjc+ h6d;v~*ƱHy݋]#16`iw%3']CA$X:3! g,3em-578:X~5cߚp ڜ:>3밳aŘ z4l$$:S(c NCqHծ֣87QOrmCL4cYf\*hbgՙuzL]$u(SU`zy]QqV\-l\ 0LCDہҩuWg#[T ȄU[ Ub%ݢxֱhB|u0KѰp`.FķmE5͝q5v"P4yO$Qö'jشP*YS D. pJא% |ܕoXx5#{x50E8㸵xM֧-\E8<]Y(\IIS0^lSdCS5=1@E TBLcI$ d.#;s -Ѕ>s`Dڲ L<*hIǬővN55X54vI:cAV0܏p#J8YcG8E2 Ȧ949v;fng"OO7%PgyZk@c%\) -Z=$!baQɻieU7FPen؁˭@m "C6E,:0Y8; -NaO}y@7*Ν_~W;~t~e|? ro*,@AEV"tĬPe!&$J#*jERL@RD(GU4Itbx"*%a_4/;Ltw~߹ۃ^T`5uХ6(ʿ/vZt-GRZS"uR]Ǝ;KV7F^ǐ>hb6)[]5%a3bgd~DkmWLA.Z,s# -l|E>ٙUwJw:d Knt$;]Q窹9gEn@᳔٧CնOv[ɂy-{ӣ !:ƒo/N.asKmܬeo4mVn?'%?O;ڞ>?k^eG&~xӘ5c啵*Y}o46*?4myvM)ע=-ߕ_ -5&= - 5-SbG{Tpyt+c4g_:7jɍ?$tnE"+ɒy,$Hݠ| v?}x;OΛou-rB{2x ~lσ[] }W,+rBsiCek)UqNDNւL§^)͏i$#Ȼ߅ދ)WD L;Po;joCo[!n6KBh6X -G`];Y5(Sjp=Wf<96Culɦܫ -)<=u"3GFDp -F%=923.¬{:(ޓCMi>aÒGX4~ƖJo`֥bS16)up68Nb}*ro`S ǃ8`,8 +5k` * -8v_AeDt$ c6! HĵesBApy84y>T9? /91'ӇwLzdFy/h@z{}E)w tQyG7U=l.F!\ -N.Ghz@-ڃvBj>]eEH-Z0D}"ku䧔:~4$IHʏ~n%v%Sռ"Op;Zɋ%.;Tz;s{kz-' ;uӗ7W?xɓK5e/vɛIW%}8iy[ⒾT yg8X C20c9XKo'>ra(|4j)b/!-]'(kNM$nlRp{%%;BI_ Ƴ}>II]gUk!?KzM\ -﯒JIgN+ϨO9ثREHW w7q]]&(i !wUxd|Go&('[Yc|)D'QqқSfCDҞ5{dǓ&C;&+Y~&Y5?!b|̷f 76 4e> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 474 556 0 0 722 0 333 333 389 584 278 333 278 278 -556 556 556 556 556 556 0 556 0 556 333 0 584 584 584 611 -0 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 333 278 333 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 0 389 280 389 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 95 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 667 0 333 333 0 0 278 333 278 0 -0 556 556 0 0 0 0 556 0 0 0 0 0 0 0 556 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 611 278 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 96 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [600 0 600 600 0 0 0 0 600 600 0 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 0 0 600 0 600 0 -600 600 600 600 600 600 600 0 600 600 0 0 600 0 600 600 -0 600 0 600 600 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 0 600 0 0 0 600 600 600 600 -600 0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 97 0 R ->> -endobj -67 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [600 0 0 0 0 0 0 0 600 600 600 600 0 600 0 600 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 0 600 600 600 0 0 600 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 -600 0 600 0 600 600 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 98 0 R ->> -endobj -71 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIJLBJ+Symbol -/Encoding /Identity-H -/DescendantFonts [ 101 0 R ] -/ToUnicode 102 0 R ->> -endobj -101 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIJLBJ+Symbol -/FontDescriptor 99 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -102 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'8omN&nN- Z<Z?+;dOcgF%o(hp8yy1LkD^E64"JUs$~n2,J?F/r݈]H ߉!Gsj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -72 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 74 0 R -/Contents 73 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -79 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 81 0 R -/Contents 80 0 R ->> -endobj -82 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 84 0 R -/Contents 83 0 R ->> -endobj -85 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 87 0 R -/Contents 86 0 R ->> -endobj -88 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 90 0 R -/Contents 89 0 R ->> -endobj -91 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 93 0 R -/Contents 92 0 R ->> -endobj -103 0 obj -<< -/S /D ->> -endobj -104 0 obj -<< -/Nums [0 103 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 13 0 R 16 0 R 20 0 R 23 0 R 26 0 R 29 0 R 32 0 R 35 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -42 0 obj -<< -/Type /Pages -/Kids [38 0 R 43 0 R 46 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 68 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -75 0 obj -<< -/Type /Pages -/Kids [72 0 R 76 0 R 79 0 R 82 0 R 85 0 R 88 0 R 91 0 R] -/Count 7 -/Parent 41 0 R ->> -endobj -41 0 obj -<< -/Type /Pages -/Kids [9 0 R 42 0 R 75 0 R ] -/Count 27 -/MediaBox [0 0 612 792] ->> -endobj -105 0 obj -<< -/CreationDate (D:20210119174358-06'00') -/ModDate (D:20210119174358-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -106 0 obj -<< -/Type /Catalog -/Pages 41 0 R -/PageLabels 104 0 R ->> -endobj -xref -0 107 -0000000000 65535 f -0000193198 00000 n -0000000016 00000 n -0000005741 00000 n -0000189992 00000 n -0000190567 00000 n -0000191137 00000 n -0000191681 00000 n -0000168553 00000 n -0000195524 00000 n -0000193278 00000 n -0000005869 00000 n -0000010687 00000 n -0000193361 00000 n -0000010816 00000 n -0000015870 00000 n -0000193444 00000 n -0000015988 00000 n -0000021284 00000 n -0000165705 00000 n -0000193527 00000 n -0000021437 00000 n -0000029545 00000 n -0000193610 00000 n -0000029663 00000 n -0000037845 00000 n -0000193693 00000 n -0000037963 00000 n -0000046732 00000 n -0000193776 00000 n -0000046850 00000 n -0000054433 00000 n -0000193859 00000 n -0000054551 00000 n -0000062350 00000 n -0000193942 00000 n -0000062468 00000 n -0000069635 00000 n -0000194025 00000 n -0000069753 00000 n -0000076558 00000 n -0000195914 00000 n -0000195660 00000 n -0000194109 00000 n -0000076676 00000 n -0000083107 00000 n -0000194193 00000 n -0000083225 00000 n -0000089101 00000 n -0000194277 00000 n -0000089219 00000 n -0000094670 00000 n -0000194361 00000 n -0000094788 00000 n -0000099271 00000 n -0000194445 00000 n -0000099389 00000 n -0000107432 00000 n -0000194529 00000 n -0000107550 00000 n -0000115447 00000 n -0000194613 00000 n -0000115565 00000 n -0000122672 00000 n -0000194697 00000 n -0000122790 00000 n -0000127464 00000 n -0000192116 00000 n -0000194781 00000 n -0000127595 00000 n -0000135093 00000 n -0000192557 00000 n -0000194865 00000 n -0000135224 00000 n -0000139422 00000 n -0000195798 00000 n -0000194949 00000 n -0000139553 00000 n -0000146048 00000 n -0000195033 00000 n -0000146166 00000 n -0000151942 00000 n -0000195117 00000 n -0000152060 00000 n -0000156047 00000 n -0000195201 00000 n -0000156154 00000 n -0000161127 00000 n -0000195285 00000 n -0000161258 00000 n -0000165079 00000 n -0000195369 00000 n -0000165199 00000 n -0000165609 00000 n -0000168693 00000 n -0000168888 00000 n -0000169094 00000 n -0000169299 00000 n -0000169490 00000 n -0000169692 00000 n -0000169883 00000 n -0000192702 00000 n -0000192906 00000 n -0000195453 00000 n -0000195482 00000 n -0000196012 00000 n -0000196145 00000 n -trailer -<< -/Size 107 -/Root 106 0 R -/Info 105 0 R -/ID [] ->> -startxref -196217 -%%EOF diff --git a/docs/ReleaseNote/APPENDIXB-SEDIT.pdf b/docs/ReleaseNote/APPENDIXB-SEDIT.pdf deleted file mode 100644 index 167cfe48..00000000 --- a/docs/ReleaseNote/APPENDIXB-SEDIT.pdf +++ /dev/null @@ -1,6592 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4066 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -/TT4 1 Tf -18 0 0 18 280.91 762.97 Tm -(APPENDIX B. SEDITTHE LISP)Tj -11.6156 -1 TD -(EDITOR)Tj -ET -6 w -258.01 736.2 m -558.01 736.2 l -S -BT -/TT2 1 Tf -10 0 0 10 557.9999 733.2 Tm -( )Tj --30 -5 TD -0.095 Tw -[(SEdit is the Lisp structure editor. It allows you to edit Lisp code)]TJ -ET -570 730.98 0.99 -51.99 re -f -BT -10 0 0 10 258 671.2 Tm -0.305 Tw -[(directly in memory. This editor replaces DEdit in Chapter 16,)]TJ -ET -570 678.98 0.99 -11.99 re -f -BT -10 0 0 10 258 659.2 Tm -0.338 Tw -(Structure Editor, of the)Tj -/TT6 1 Tf -11.0189 0 TD -[( Interlisp-D Reference Manual)]TJ -/TT2 1 Tf -14.2977 0 TD -[(. First)]TJ -ET -570 666.98 0.99 -11.99 re -f -BT -10 0 0 10 258 647.2 Tm -0.119 Tw -[(introduced in Lyric, the SEdit structure editor has been greatly)]TJ -ET -570 654.98 0.99 -11.99 re -f -BT -10 0 0 10 258 635.2 Tm -0.054 Tw -[(enhanced in the Medley release. Medley additions are indicated)]TJ -ET -570 642.98 0.99 -11.99 re -f -BT -10 0 0 10 258 623.2 Tm -0 Tw -(with revision bars in the right margin. )Tj -ET -570 630.98 0.99 -11.99 re -f -2 w -54.01 567.99 m -558.01 567.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 556.08 Tm -(16.1 SEdit - The Structure Editor)Tj -ET -1 w -54.01 552.49 m -558.01 552.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 523.2 Tm -0.216 Tw -(As a structure editor, SEdit alters Lisp code directly in memory.)Tj -0 -1.2 TD -0.008 Tw -(The effect this has on the running system depends on what is being)Tj -T* -0 Tw -(edited.)Tj -0 -1.9 TD -0.211 Tw -[(For Common Lisp definitions, SEdit always edits a copy of the)]TJ -0 -1.2 TD -0.196 Tw -[(object. For example, with functions, it edits the definition of the)]TJ -T* -0.165 Tw -[(function. What the system actually runs is the installed function,)]TJ -T* -0.089 Tw -(either compiled or interpreted. The primary difference between the)Tj -T* -0.313 Tw -(definition and the installed function is that comment forms are)Tj -T* -0.134 Tw -(removed from the definition to produce the installed function. The)Tj -T* -0.054 Tw -(changes made while editing a function will not be installed until the)Tj -T* -0 Tw -(edit session is complete.)Tj -0 -1.9 TD -0.091 Tw -(For Interlisp functions and macros, SEdit edits the actual structure)Tj -0 -1.2 TD -0.262 Tw -[(that will be run. An exception to this is an edit of an EXPR)]TJ -T* -0.0001 Tc -0.0039 Tw -(definition of a compiled function. In this case, changes are included)Tj -T* -0 Tc -0 Tw -(and the function is unsaved when the edit session is completed.)Tj -0 -1.9 TD -0.027 Tw -(SEdit edits all other structures, such as variables and property lists,)Tj -0 -1.2 TD -0 Tw -(directly. SEdit installs all changes as they are made.)Tj -0 -1.9 TD -0.097 Tw -(If an error is made during an SEdit session, abort the edit with an)Tj -0 -1.2 TD -0.415 Tw -[(Abort command \(see Section 16.1.7, Command Keys\). This)]TJ -T* -0.321 Tw -[(command undoes all changes from the beginning of the edit)]TJ -T* -0 Tw -(session and exits from SEdit without changing your environment.)Tj -0 -1.9 TD -0.145 Tw -(If the definition being edited is redefined while the edit window is)Tj -0 -1.2 TD -0.175 Tw -[(open, SEdit redisplays the new definition. Any edits on the old)]TJ -T* -0.282 Tw -[(definition will be lost. If SEdit was busy when the redefinition)]TJ -T* -0.087 Tw -[(occurred, the SEdit window will be gray. When SEdit is no longer)]TJ -T* -0.161 Tw -[(busy, position the cursor in the SEdit window and press the left)]TJ -T* -0 Tw -(mouse button; SEdit will get the new definition and display it.)Tj -/TT4 1 Tf -12 0 0 12 54 125.64 Tm -(16.1.1 An Edit Session)Tj -ET -54.01 122.49 m -558.01 122.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 107.2 Tm -0.443 Tw -(The List Structure Editor discussion in Chapter 3, Language)Tj -T* -0 Tw -(Integration, explains how to start an editor in Lisp.)Tj -0 -1.9 TD -0.2059 Tw -[(Whenever you call SEdit, a new SEdit window is created. This)]TJ -0 -1.2 TD -0.147 Tw -(SEdit window has its own process, and thus does not rely on an)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 3820 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.098 Tw -[(Exec to run in. You can make edits in the window, shrink it while)]TJ -0 -1.2 TD -0.11 Tw -(you do something else, expand it and edit some more, and finally)Tj -T* -0 Tw -(close the window when you are done.)Tj -0 -1.9 TD -0.116 Tw -(Throughout an edit session, SEdit remembers everything that you)Tj -0 -1.2 TD -0.058 Tw -[(do through a change history. All edits can be undone and redone)]TJ -T* -0.418 Tw -[(sequentially. When an edit session ends, SEdit forgets this)]TJ -T* -0 Tw -(information and installs the changes in the system.)Tj -0 -1.9 TD -0.404 Tw -(The session ends with an event signalling to the editor that)Tj -0 -1.2 TD --0.0002 Tw -(changes are complete. Three events signal completion:)Tj -0 -1.9 TD -0 Tw -[()-849.9(Closing the window. )]TJ -T* -(Do this to terminate the edit session when you are finished.)Tj -T* -[()-849.9(Shrinking the window.)]TJ -T* -0.044 Tw -(Shrink the window when you have made some edits and may want)Tj -0 -1.2 TD -0 Tw -(to continue the editing session at a later time.)Tj -0 -1.9 TD -[( )-572.1(Typing one of the Completion Commands, listed below.)]TJ -ET -570 527.98 0.99 -18.99 re -f -BT -10 0 0 10 258 494.2 Tm -0.06 Tw -(Each of these commands has the effect of installing your changes,)Tj -ET -570 508.98 0.99 -18.99 re -f -BT -10 0 0 10 258 482.2 Tm -0.199 Tw -(completing the edit, and returning the TTY process to the Exec.)Tj -ET -570 489.98 0.99 -11.99 re -f -BT -10 0 0 10 258 470.2 Tm -0.124 Tw -[(They vary in what is done in addition to completing. Using these)]TJ -ET -570 477.98 0.99 -11.99 re -f -BT -10 0 0 10 258 458.2 Tm -0.029 Tw -(commands the definition that you were editing can be automatically)Tj -ET -570 465.98 0.99 -11.99 re -f -BT -10 0 0 10 258 446.2 Tm -0 Tw -(compiled, the edit window can be closed, or both.)Tj -ET -570 453.98 0.99 -11.99 re -f -BT -10 0 0 10 258 427.2 Tm -0.11 Tw -(A new edit session begins when you come back to an SEdit after)Tj -ET -570 441.98 0.99 -18.99 re -f -BT -10 0 0 10 258 415.2 Tm -0 Tw -(completing. The change history is discarded at this point.)Tj -ET -570 422.98 0.99 -11.99 re -f -BT -10 0 0 10 258 396.2 Tm -0.078 Tw -(If the Exec is waiting for SEdit to return before going on, complete)Tj -0 -1.2 TD -0.091 Tw -(the edit session using any of the methods above to alert the Exec)Tj -T* -0 Tw -(that SEdit is done. The TTY process passes back to the Exec .)Tj -/TT4 1 Tf -12 0 0 12 54 344.64 Tm -(16.1.2 SEdit Carets)Tj -ET -54.01 341.49 m -558.01 341.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 326.2 Tm -0.017 Tw -[(There are two carets in SEdit, the edit caret and the structure caret.)]TJ -T* -0.11 Tw -(The edit caret appears when characters are edited within a single)Tj -T* -0.05 Tw -[(structure, such as an atom, string, or comment. Anything typed in)]TJ -T* -0.047 Tw -(will appear at the edit caret as part of the structure that the caret is)Tj -T* -0 Tw -(within. The edit caret looks like this:)Tj -ET -q -40 0 0 -26 258.01 266.99 cm -/Im1 Do -Q -BT -10 0 0 10 258 224.2 Tm -0.443 Tw -(The structure caret appears when the edit point is between)Tj -T* -0.09 Tw -(structures, so that anything inserted will go into a new structure. It)Tj -T* -0 Tw -(looks like this: )Tj -ET -q -41 0 0 -27 258.01 188.99 cm -/Im2 Do -Q -BT -10 0 0 10 299 161.99 Tm -( )Tj --4.1 -1.9 TD -0.043 Tw -(SEdit changes the caret frequently, depending on where you are in)Tj -0 -1.2 TD -0.033 Tw -[(the structure you are editing, and how the caret is positioned. The)]TJ -T* -0.258 Tw -[(left mouse button allows an edit caret position to be set. The)]TJ -T* -0 Tw -(middle mouse button allows the structure caret position to be set .)Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/XObject << -/Im1 12 0 R -/Im2 13 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -15 0 obj -<< -/Length 3496 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(16.1.3 The Mouse)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 710.2 Tm -0.155 Tw -(In SEdit, the mouse buttons are used as follows. The left mouse)Tj -0 -1.2 TD -0.46 Tw -[(button positions the mouse cursor to point to parts of Lisp)]TJ -T* -0.015 Tw -[(structures. The middle mouse button positions the mouse cursor to)]TJ -T* -0.037 Tw -[(point to whole Lisp structures. Thus, selecting the Q in LEQ using)]TJ -T* -0.017 Tw -[(the left mouse button selects that character, and sets the edit caret)]TJ -T* -0 Tw -(after the Q:)Tj -ET -q -70 0 0 -22 258.01 638.99 cm -/Im3 Do -Q -BT -10 0 0 10 258 600.2 Tm -0.216 Tw -(Any characters typed in at this point would be appended to the)Tj -T* -0 Tw -(atom LEQ.)Tj -0 -1.9 TD -0.004 Tw -(Selecting the same letter using the middle mouse button selects the)Tj -0 -1.2 TD -0.554 Tw -(whole atom \(this convention matches TEdits character/word)Tj -T* -0.085 Tw -(selection convention\), and sets a structure caret between the LEQ)Tj -T* -0 Tw -(and the n:)Tj -ET -q -71 0 0 -28 258.01 521.99 cm -/Im4 Do -Q -BT -10 0 0 10 258 477.2 Tm -0.297 Tw -(At this point, any characters typed in would form a new atom)Tj -T* -0 Tw -(between the LEQ and the n.)Tj -0 -1.9 TD -0.249 Tw -(Larger structures can be selected in two ways. Use the middle)Tj -0 -1.2 TD -0.148 Tw -(mouse button to position the mouse cursor on the parenthesis of)Tj -T* -0.082 Tw -[(the desired list to select that list. Press the mouse button multiple)]TJ -T* -0.043 Tw -[(times, without moving the mouse, extends the selection. Using the)]TJ -T* -0.088 Tw -(previous example, if the middle button were pressed twice, the list)Tj -T* -0 Tw -(\(LEQ ...\) would be selected:)Tj -ET -q -75 0 0 -25 258.01 374.99 cm -/Im5 Do -Q -BT -10 0 0 10 258 333.2 Tm -0.059 Tw -(Pressing the button a third time would cause the list containing the)Tj -T* -0 Tw -(\(LEQ n 1\) to be selected. )Tj -0 -1.9 TD -0.202 Tw -[(The right mouse button positions the mouse cursor for selecting)]TJ -0 -1.2 TD -0.054 Tw -[(sequences of structures or substructures. Extended selections are)]TJ -T* -0.032 Tw -[(indicated by a box enclosing the structures selected. The selection)]TJ -T* -0.08 Tw -[(is extended in the same mode as the original selection. That is, if)]TJ -T* -0.19 Tw -(the original selection were a character selection, the right button)Tj -T* -0.404 Tw -(could be used to select more characters in the same atom.)Tj -T* -0.221 Tw -(Extended selections also have the property of being marked for)Tj -T* -0.008 Tw -[(pending deletion. That is, the selection takes the place of the caret,)]TJ -T* -0 Tw -(and anything typed in is inserted in place of the selection.)Tj -0 -1.9 TD -0.008 Tw -[(For example, selecting the E by pressing the left mouse button and)]TJ -0 -1.2 TD -0 Tw -(selecting the Q by pressing the right mouse button would produce:)Tj -ET -q -69 0 0 -25 258.01 163.99 cm -/Im6 Do -Q -BT -10 0 0 10 258 122.2 Tm -0.023 Tw -(Similarly, pressing the middle mouse button and then selecting with)Tj -T* -0.134 Tw -(the right mouse button extends the selection by whole structures.)Tj -T* -0.11 Tw -(Thus, in our example, pressing the middle mouse button to select)Tj -T* -0.216 Tw -(LEQ and pressing the right mouse button to select the 1 would)Tj -T* -0 Tw -(produce:)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/XObject << -/Im3 17 0 R -/Im4 18 0 R -/Im5 19 0 R -/Im6 20 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -22 0 obj -<< -/Length 4989 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -q -73 0 0 -32 258.01 737.99 cm -/Im7 Do -Q -BT -10 0 0 10 258 689.2 Tm -0.019 Tw -[(This is not the same as selecting the entire list, as above. Instead,)]TJ -0 -1.2 TD -0.064 Tw -(the elements in the list are collectively selected, but the list itself is)Tj -T* -0 Tw -(not.)Tj -/TT4 1 Tf -12 0 0 12 54 637.64 Tm -(16.1.4 Gaps)Tj -ET -54.01 634.49 m -558.01 634.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 619.2 Tm -0.005 Tw -(The SEdit structure editor requires that everything edited must have)Tj -T* -0.227 Tw -(an underlying Lisp structure, even if the structure is not directly)Tj -T* -0.239 Tw -[(displayed. For example, with quoted forms the actual structure)]TJ -T* -0.165 Tw -(might be \()Tj -/TT4 1 Tf -4.7763 0 TD -0 Tw -(QUOTE)Tj -/TT2 1 Tf -3.5557 0 TD -0.165 Tw -[( GREEN\), although this would be displayed as)]TJ -/TT8 1 Tf --8.332 -1.2 TD -0 Tw -(GREEN)Tj -/TT2 1 Tf -3.6006 0 TD -0.011 Tw -[(. Even when the user is in the midst of typing in a form, the)]TJ --3.6006 -1.329 TD -0 Tw -(underlying Lisp structure must exist.)Tj -0 -1.9 TD -0.0539 Tw -(Because of this necessity, SEdit provides gaps to serve as dummy)Tj -0 -1.2 TD -0.161 Tw -[(Lisp objects during typing. SEdit does not need a gap for every)]TJ -T* -0.145 Tw -[(form typed in, but gaps are necessary for quoted objects. When)]TJ -T* -0.027 Tw -[(something is typed that requires SEdit to build a Lisp structure and)]TJ -T* -0.031 Tw -(thus create a gap, as the quote character does, the gap will appear)Tj -T* -0.064 Tw -(marked for pending deletion. This means it is ready to be replaced)Tj -T* -0.151 Tw -[(by the structure to be typed in. In this way it is possible to type)]TJ -T* -0.179 Tw -(special structures, like quotes, directly, while SEdit maintains the)Tj -T* -0 Tw -(structure.)Tj -0 -1.9 TD -(A gap looks like: )Tj -ET -q -15 0 0 -5 339.16 428.91 cm -/Im8 Do -Q -BT -10 0 0 10 354.15 423.91 Tm -( )Tj --9.615 -1.9 TD -0.17 Tw -(A gap displayed after a quote has been typed in would look like)Tj -0 -1.2 TD -0 Tw -(this:)Tj -ET -q -21 0 0 -15 258.01 381.7 cm -/Im9 Do -Q -BT -10 0 0 10 258 349.91 Tm -0.155 Tw -(with the gap marked for pending deletion, ready for typein of the)Tj -T* -0 Tw -(object to be quoted.)Tj -/TT4 1 Tf -12 0 0 12 54 310.35 Tm -(16.1.5 Broken Atoms )Tj -ET -54.01 307.2 m -558.01 307.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 291.91 Tm -0.041 Tw -(When you are typing an atom \(a symbol or a number\), SEdit saves)Tj -ET -570 306.69 0.99 -18.99 re -f -BT -10 0 0 10 258 279.91 Tm -0.034 Tw -[(the characters you type until you finish the atom. SEdit determines)]TJ -ET -570 287.69 0.99 -11.99 re -f -BT -10 0 0 10 258 267.91 Tm -0.004 Tw -(that youve finished the atom when you type a character that cannot)Tj -ET -570 275.69 0.99 -11.99 re -f -BT -10 0 0 10 258 255.91 Tm -0.196 Tw -(\(without being escaped\) belong to an atom, such as a space or)Tj -ET -570 263.69 0.99 -11.99 re -f -BT -10 0 0 10 258 243.91 Tm -0.17 Tw -[(open parenthesis. SEdit then tries to create an atom with these)]TJ -ET -570 251.69 0.99 -11.99 re -f -BT -10 0 0 10 258 231.91 Tm -0.179 Tw -[(characters, just as if it were the Lisp reader. If it succeeds, the)]TJ -ET -570 239.69 0.99 -11.99 re -f -BT -10 0 0 10 258 219.91 Tm -0.15 Tw -[(atom becomes part of the structure youre editing. However, if it)]TJ -ET -570 227.69 0.99 -11.99 re -f -BT -10 0 0 10 258 207.91 Tm -0.147 Tw -(fails, SEdit intercepts the reader error that would otherwise occur)Tj -ET -570 215.69 0.99 -11.99 re -f -BT -10 0 0 10 258 195.91 Tm -0.011 Tw -(and instead creates a special SEdit structure called a Broken-Atom.)Tj -ET -570 203.69 0.99 -11.99 re -f -BT -10 0 0 10 258 183.91 Tm -0.029 Tw -(A Broken-Atom looks and behaves in SEdit just like a normal atom,)Tj -ET -570 191.69 0.99 -11.99 re -f -BT -10 0 0 10 258 171.91 Tm -0 Tw -(but is printed in italics to alert you to its needing correction.)Tj -ET -570 179.69 0.99 -11.99 re -f -BT -10 0 0 10 258 152.91 Tm -0.015 Tw -(SEdit has to create a Broken-Atom when the characters typed dont)Tj -ET -570 167.69 0.99 -18.99 re -f -BT -10 0 0 10 258 140.91 Tm -0.284 Tw -[(make a legal atom. For example, the characters "DECLARE:")]TJ -ET -570 148.69 0.99 -11.99 re -f -BT -10 0 0 10 258 128.91 Tm -0.143 Tw -(cannot make a symbol because the colon is a package specifier,)Tj -ET -570 136.69 0.99 -11.99 re -f -BT -10 0 0 10 258 116.91 Tm -0.505 Tw -(but the form is not correct for a package-qualified symbol.)Tj -ET -570 124.69 0.99 -11.99 re -f -BT -10 0 0 10 258 104.91 Tm -0.25 Tw -(Similarly, the characters "#b123" cannot represent an integer in)Tj -ET -570 112.69 0.99 -11.99 re -f -BT -10 0 0 10 258 92.91 Tm -0.003 Tw -(base two, because 2 and 3 are not legal digits in base two, so SEdit)Tj -ET -570 100.69 0.99 -11.99 re -f -BT -10 0 0 10 258 80.91 Tm -0 Tw -(would make a Broken-Atom that looks like )Tj -/TT6 1 Tf -18.8975 0 TD -(#b123)Tj -/TT2 1 Tf -2.7808 0 TD -(.)Tj -ET -570 88.69 0.99 -11.99 re -f -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 24 0 R ->> -/XObject << -/Im7 25 0 R -/Im8 26 0 R -/Im9 27 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -29 0 obj -<< -/Length 6017 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.536 Tw -(Broken-Atoms can be edited in SEdit just like real atoms.)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.202 Tw -(Whenever you finish editing a Broken-Atom, SEdit again tries to)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.119 Tw -[(create an atom from the characters. If it succeeds, it reprints the)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.138 Tw -[(atom in SEdits default font, rather than in italics. You should be)]TJ -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0.104 Tw -(sure to correct any Broken-Atoms you create before exiting SEdit,)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 258 670.2 Tm -0 Tw -(since Broken-Atoms do not behave in any useful way outside SEdit.)Tj -ET -570 677.98 0.99 -23.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 630.64 Tm -(16.1.6 Special Characters)Tj -ET -54.01 627.49 m -558.01 627.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 612.2 Tm -0.2099 Tw -(A few characters have special meaning in Lisp, and are treated)Tj -0 -1.2 TD -0.1 Tw -[(specially by SEdit. SEdit must always have a complete structure)]TJ -T* -0.062 Tw -[(to work on at any level of the edit. This means that SEdit needs a)]TJ -T* -0.064 Tw -[(special way to type in structures such as lists, strings, and quoted)]TJ -T* -0.025 Tw -[(objects. In most instances these structures can be typed in just as)]TJ -T* -0.209 Tw -(they would be to a regular Exec, but in a few cases this is not)Tj -T* -0 Tw -(possible.)Tj -/TT4 1 Tf -12 0 0 12 162.64 519.64 Tm -(Lists- \( and \))Tj -/TT2 1 Tf -10 0 0 10 258 519.64 Tm -0.132 Tw -(Lists begin with an open parenthesis character)Tj -/TT4 1 Tf -21.4155 0 TD -0.132 Tc -0 Tw -( \()Tj -/TT2 1 Tf -0.7428 0 TD -0 Tc -0.132 Tw -(. Typing an open)Tj -ET -570 535.98 0.99 -20.99 re -f -BT -10 0 0 10 258 507.2 Tm -0.004 Tw -(parenthesis gives a balanced list, that is, SEdit inserts both an open)Tj -ET -570 514.98 0.99 -11.99 re -f -BT -10 0 0 10 258 495.2 Tm -0.15 Tw -[(and a close parenthesis. The structure caret is between the two)]TJ -ET -570 502.98 0.99 -11.99 re -f -BT -10 0 0 10 258 483.2 Tm -0.09 Tw -[(parentheses. List elements can be typed in at the structure caret.)]TJ -ET -570 490.98 0.99 -11.99 re -f -BT -10 0 0 10 258 471.2 Tm -0.235 Tw -[(When a close parenthesis,)]TJ -/TT4 1 Tf -13.002 0 TD -0.235 Tc -0 Tw -( \))Tj -/TT2 1 Tf -0.8458 0 TD -0 Tc -0.235 Tw -[( is typed, the caret will be moved)]TJ -ET -570 478.98 0.99 -11.99 re -f -BT -10 0 0 10 258 459.2 Tm -0.073 Tw -(outside the list \(and the close parenthesis\), effectively finishing the)Tj -ET -570 466.98 0.99 -11.99 re -f -BT -10 0 0 10 258 447.2 Tm -0.017 Tw -[(list. Square bracket characters, [ and ], have no special meaning in)]TJ -ET -570 454.98 0.99 -11.99 re -f -BT -10 0 0 10 258 435.2 Tm -0 Tw -(SEdit, as they have no special meaning in Common Lisp. )Tj -ET -570 442.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 124.65 414.64 Tm -(Quoted Structures:)Tj -/TT2 1 Tf -10 0 0 10 258 414.64 Tm -0.1869 Tw -(SEdit handles the quote keys so that it is possible to type in all)Tj -0 -1.244 TD -0.08 Tw -[(quote forms directly. When typing one of the following quote keys)]TJ -0 -1.2 TD -0.049 Tw -(at a structure caret, the quote character typed will appear, followed)Tj -T* -0 Tw -(by a gap to be replaced by the object to be quoted. )Tj -/TT4 1 Tf --10.236 -1.9 TD -(Single Quote )Tj -/TT2 1 Tf -7.5566 0 TD -[( )-2401.5(Use to enter quoted structures.)]TJ -/TT4 1 Tf --6.5006 -1.9 TD -(Backquote )Tj -/TT2 1 Tf -6.2241 0 TD -[( )-2400.2(Use to enter backquoted structures.)]TJ -/TT4 1 Tf --5.6131 -1.9 TD -(Comma ,)Tj -/TT2 1 Tf -5.0571 0 TD -[( )-2400.5(Use to enter comma forms, as used with a Backquote form.)]TJ -/TT4 1 Tf --5.0311 -1.9 TD -(At Sign @)Tj -/TT2 1 Tf -5.5864 0 TD -0.138 Tw -[( )138( )-2262.9(Use after a comma to create a comma-at-sign gap. This allows)]TJ -2.9566 -1.2 TD -0.046 Tw -(type-in of comma-at forms, e.g. )Tj -/TT4 1 Tf -14.3457 0 TD -0 Tw -(,@list)Tj -/TT2 1 Tf -2.6978 0 TD -0.046 Tw -(, as used within a Backquote)Tj --17.0435 -1.2 TD -0 Tw -(form.)Tj -/TT4 1 Tf --5.734 -1.9 TD -(Dot .)Tj -/TT2 1 Tf -3.0557 0 TD -0.142 Tw -[( )-2258.5(Use the dot \(period\) after a comma to create a comma-dot gap.)]TJ -2.6783 -1.2 TD -0.055 Tw -[(This allows type-in of comma-dot forms, e.g. )]TJ -/TT4 1 Tf -20.6133 0 TD -0 Tw -(,.list)Tj -/TT2 1 Tf -2.0005 0 TD -0.055 Tw -[(, as used within)]TJ --22.6138 -1.2 TD -0 Tw -(a Backquote form.)Tj -/TT4 1 Tf --10.236 -1.9 TD -(Hash Quote #)Tj -/TT2 1 Tf -7.5576 0 TD -0.381 Tw -[( )-2019.5(Use this two character sequence to enter the )]TJ -/TT4 1 Tf -25.8485 0 TD -0 Tw -(CL:FUNCTION)Tj -ET -570 230.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 204.2 Tm -(abbreviation hashquote \(#\).)Tj -ET -570 211.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 160.66 183.64 Tm -(Dotted Lists:)Tj -/TT2 1 Tf -10 0 0 10 258 183.64 Tm -0.198 Tw -(The dot, or period, character \()Tj -/TT4 1 Tf -14.213 0 TD -0 Tw -(.)Tj -/TT2 1 Tf -0.2778 0 TD -0.198 Tw -[(\) is used to type dotted lists in)]TJ --14.4908 -1.244 TD -0.062 Tw -[(SEdit. After typing a dot, SEdit inserts a dot and a gap to fill in for)]TJ -0 -1.2 TD -0.074 Tw -[(the tail of the list. To dot an existing list, point the cursor between)]TJ -T* -0.106 Tw -(the last and second to the last element in the list, and type a dot.)Tj -T* -0.017 Tw -[(To undot a list, select the tail of the list before the dot while holding)]TJ -T* -0 Tw -(down the SHIFT key.)Tj -/TT4 1 Tf -12 0 0 12 151.96 102.64 Tm -(Escape- \\ or %)Tj -/TT2 1 Tf -10 0 0 10 258 102.64 Tm -0.105 Tw -(Use to escape from a specific typed in character. Use the escape)Tj -0 -1.244 TD -0.235 Tw -(key to enter characters, like parentheses, which otherwise have)Tj -0 -1.2 TD -0.105 Tw -[(special meaning to the SEdit reader. Press the escape key then)]TJ -T* -0.337 Tw -[(type in the character to escape. SEdit uses the escape key)]TJ -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -32 0 obj -<< -/Length 5747 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.191 Tw -(appropriate to the environment it is editing in; it depends on the)Tj -0 -1.2 TD -0.338 Tw -[(readtable that was current when the editor was started. The)]TJ -T* -0.282 Tw -(backslash key \()Tj -/TT4 1 Tf -7.4556 0 TD -0 Tw -(\\)Tj -/TT2 1 Tf -0.2778 0 TD -0.282 Tw -(\) is used when editing Common Lisp, and the)Tj --7.7334 -1.2 TD -0 Tw -(percent key \()Tj -/TT4 1 Tf -5.7803 0 TD -(%)Tj -/TT2 1 Tf -0.8892 0 TD -(\) is used when editing Interlisp.)Tj -/TT4 1 Tf -12 0 0 12 132.6 673.64 Tm -(Multiple Escape- |)Tj -/TT2 1 Tf -10 0 0 10 258 673.64 Tm -0.277 Tw -(Use the multiple escape key, the vertical bar character \()Tj -/TT4 1 Tf -27.1707 0 TD -0 Tw -(|)Tj -/TT2 1 Tf -0.2798 0 TD -0.277 Tw -[(\), to)]TJ --27.4505 -1.244 TD -0.034 Tw -[(escape a sequence of typed in characters. SEdit always balances)]TJ -0 -1.2 TD -0.04 Tw -(multiple escape characters. When one multiple escape character is)Tj -T* -0.226 Tw -[(typed, SEdit produces a balanced pair, with the caret between)]TJ -T* -0.05 Tw -[(them, ready for typing in the characters to be escaped. If you type)]TJ -T* -0.176 Tw -[(a second vertical bar, the caret moves after the second vertical)]TJ -T* -0.126 Tw -[(bar, and is still within the same atom, so that you can add more)]TJ -T* -0 Tw -(unescaped characters to the atom.)Tj -/TT4 1 Tf -12 0 0 12 160.66 568.64 Tm -(Comments- ;)Tj -/TT2 1 Tf -10 0 0 10 258 568.64 Tm -0.175 Tw -[(The comment key, a semicolon \()]TJ -/TT4 1 Tf -15.7773 0 TD -0 Tw -(;)Tj -/TT2 1 Tf -0.333 0 TD -0.175 Tw -[(\), starts a comment. When a)]TJ --16.1103 -1.244 TD -0.055 Tw -(semicolon is typed, an empty comment is inserted with the caret in)Tj -0 -1.2 TD -0.12 Tw -[(position for typing in the comment. Comments can be edited like)]TJ -T* -0.196 Tw -(strings. There are three levels of comments supported by SEdit:)Tj -T* -0.52 Tw -[(single, double, and triple. Single semicolon comments are)]TJ -T* -0.073 Tw -(formatted at the comment column, about three-quarters of the way)Tj -T* -0.425 Tw -[(across the SEdit window, towards the right margin. Double)]TJ -T* -0.029 Tw -(semicolon comments are formatted at the current indentation of the)Tj -T* -0.171 Tw -[(code that they are in. Triple semicolon comments are formatted)]TJ -T* -0.355 Tw -[(against the left margin of the SEdit window. The level of a)]TJ -T* -0.313 Tw -(comment can be increased or decreased by pointing after the)Tj -T* -0.26 Tw -(semicolon, and either typing another semicolon, or backspacing)Tj -T* -0.017 Tw -[(over the preceding semicolon. Comments can be placed anywhere)]TJ -T* -0.116 Tw -(in your Common Lisp code. However, in Interlisp code, they must)Tj -T* -0 Tw -(follow the placement rules for Interlisp comments.)Tj -/TT4 1 Tf -12 0 0 12 179.63 379.64 Tm -(Strings- ")Tj -/TT2 1 Tf -10 0 0 10 258 379.64 Tm -0.047 Tw -(Enter strings in SEdit by typing a double quote \()Tj -/TT4 1 Tf -21.5466 0 TD -0 Tw -(")Tj -/TT2 1 Tf -0.4741 0 TD -0.047 Tw -[(\). SEdit balances)]TJ --22.0207 -1.244 TD -0.126 Tw -(the double quotes. When one is typed, SEdit produces a second,)Tj -0 -1.2 TD -0.12 Tw -(with the caret between the two, ready for typing the characters of)Tj -T* -0.11 Tw -[(the string. If a double quote character is typed in the middle of a)]TJ -T* -(string, SEdit breaks the string into two smaller strings, leaving the)Tj -T* -0 Tw -(caret between them.)Tj -/TT4 1 Tf -12 0 0 12 54 291.64 Tm -(16.1.7 Commands)Tj -ET -570 314.98 0.99 -25.99 re -f -54.01 288.49 m -558.01 288.49 l -S -570 288.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 273.2 Tm -0.221 Tw -(SEdit commands are most easily entered through the keyboard.)Tj -ET -570 287.98 0.99 -18.99 re -f -BT -10 0 0 10 258 261.2 Tm -0.293 Tw -(When possible, SEdit uses a named key on the keyboard, for)Tj -ET -570 268.98 0.99 -11.99 re -f -BT -10 0 0 10 258 249.2 Tm -0.071 Tw -[(example, the DELETE key. The other commands are either Meta,)]TJ -ET -570 256.98 0.99 -11.99 re -f -BT -10 0 0 10 258 237.2 Tm -0.346 Tw -[(Control, or Meta-Contol key combinations. For the alphabetic)]TJ -ET -570 244.98 0.99 -11.99 re -f -BT -10 0 0 10 258 225.2 Tm -0 Tw -(command keys, either uppercase or lowercase will work.)Tj -ET -570 232.98 0.99 -11.99 re -f -BT -10 0 0 10 258 206.2 Tm -0.01 Tw -(There are two menus available, as an alternative means of invoking)Tj -ET -570 220.98 0.99 -18.99 re -f -BT -10 0 0 10 258 194.2 Tm -0.265 Tw -[(commands. They are the middle button popup menu, and the)]TJ -ET -570 201.98 0.99 -11.99 re -f -BT -10 0 0 10 258 182.2 Tm -0.209 Tw -[(attached command menu. These menus are described in more)]TJ -ET -570 189.98 0.99 -11.99 re -f -BT -10 0 0 10 258 170.2 Tm -0 Tw -(detail below.)Tj -ET -570 177.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 142.64 Tm -(16.1.8 Editing Commands)Tj -ET -570 165.98 0.99 -25.99 re -f -54.01 139.49 m -558.01 139.49 l -S -570 139.98 0.99 -0.99 re -f -BT -10 0 0 10 126 124.2 Tm -(Redisplay: Control-L)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 138.98 0.99 -18.99 re -f -126.01 119.49 m -558.01 119.49 l -S -570 119.98 0.99 -0.99 re -f -BT -10 0 0 10 258 104.2 Tm -(Redisplays the structure being edited. )Tj -ET -570 118.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 94.2 Tm -(Delete Selection: DELETE)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 101.98 0.99 -9.99 re -f -126.01 91.49 m -558.01 91.49 l -S -570 91.98 0.99 -0.99 re -f -BT -10 0 0 10 258 76.2 Tm -(Deletes the current selection. )Tj -ET -570 90.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 64.2 Tm -(Delete Word: Control-W)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 71.98 0.99 -9.99 re -f -126.01 61.49 m -558.01 61.49 l -S -570 61.98 0.99 -0.99 re -f -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -35 0 obj -<< -/Length 5882 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.067 Tw -[(Deletes the previous atom or whole structure. If the caret is in the)]TJ -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.095 Tw -(middle of an atom, deletes backward to the beginning of the atom)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(only.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 692.64 Tm -(Control-Meta-O)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 701.98 0.99 -11.99 re -f -126.01 689.49 m -558.01 689.49 l -S -570 689.98 0.99 -0.99 re -f -BT -10 0 0 10 258 674.2 Tm -(Performs a fast edit by calling ED with its CURRENT option. )Tj -ET -570 688.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 646.64 Tm -(16.1.9 Completion Commands)Tj -ET -570 669.98 0.99 -25.99 re -f -54.01 643.49 m -558.01 643.49 l -S -570 643.98 0.99 -0.99 re -f -BT -10 0 0 10 126 628.2 Tm -(Abort: Meta-A)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 642.98 0.99 -18.99 re -f -126.01 623.49 m -558.01 623.49 l -S -570 623.98 0.99 -0.99 re -f -BT -10 0 0 10 258 608.2 Tm -0.085 Tw -[(Aborts. This command must be confirmed. All changes since the)]TJ -ET -570 622.98 0.99 -18.99 re -f -BT -10 0 0 10 258 596.2 Tm -0 Tw -(beginning of the edit session are undone, and the edit is closed.)Tj -ET -570 603.98 0.99 -34.99 re -f -BT -10 0 0 10 258 550.2 Tm -0.104 Tw -(The following commands signal completion of an edit session and)Tj -ET -570 568.98 0.99 -22.99 re -f -BT -10 0 0 10 258 538.2 Tm -0 Tw -(install the structure you were editing.)Tj -ET -570 545.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 524.64 Tm -(Control-X)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 533.98 0.99 -11.99 re -f -126.01 521.49 m -558.01 521.49 l -S -570 521.98 0.99 -0.99 re -f -BT -10 0 0 10 258 506.2 Tm -0.055 Tw -[(Signals the system that this edit is complete. The window remains)]TJ -ET -570 520.98 0.99 -18.99 re -f -BT -10 0 0 10 258 494.2 Tm -0.1 Tw -(open, though, so the user can see the edit and start editing again)Tj -ET -570 501.98 0.99 -11.99 re -f -BT -10 0 0 10 258 482.2 Tm -0 Tw -(directly.)Tj -ET -570 489.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 468.64 Tm -(Control-C)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 477.98 0.99 -11.99 re -f -126.01 465.49 m -558.01 465.49 l -S -570 465.98 0.99 -0.99 re -f -BT -10 0 0 10 258 450.2 Tm -0.277 Tw -(Signals the system that this edit is complete and compiles the)Tj -ET -570 464.98 0.99 -18.99 re -f -BT -10 0 0 10 258 438.2 Tm -0.172 Tw -[(definition being edited. The variable *compile-fn* determines the)]TJ -ET -570 445.98 0.99 -11.99 re -f -BT -10 0 0 10 258 426.2 Tm -0.012 Tw -[(function to be called to do the compilation. See the Options section)]TJ -ET -570 433.98 0.99 -11.99 re -f -BT -10 0 0 10 258 414.2 Tm -0 Tw -(below.)Tj -ET -570 421.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 400.64 Tm -(Control-Meta-X)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 409.98 0.99 -11.99 re -f -126.01 397.49 m -558.01 397.49 l -S -570 397.98 0.99 -0.99 re -f -BT -10 0 0 10 258 382.2 Tm -0.388 Tw -(Signals the system that this edit is complete and closes the)Tj -ET -570 396.98 0.99 -18.99 re -f -BT -10 0 0 10 258 370.2 Tm -0 Tw -(window.)Tj -ET -570 377.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 356.64 Tm -(Control-Meta-C)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 365.98 0.99 -11.99 re -f -126.01 353.49 m -558.01 353.49 l -S -570 353.98 0.99 -0.99 re -f -BT -10 0 0 10 258 338.2 Tm -0.015 Tw -(Signals the system that this edit is complete, compiles the definition)Tj -ET -570 352.98 0.99 -18.99 re -f -BT -10 0 0 10 258 326.2 Tm -0 Tw -(being editing, and closes the window.)Tj -ET -570 333.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 298.64 Tm -(16.1.10 Undo Commands)Tj -ET -570 321.98 0.99 -25.99 re -f -54.01 295.49 m -558.01 295.49 l -S -570 295.98 0.99 -0.99 re -f -BT -10 0 0 10 126 280.2 Tm -(Undo: Meta-U or UNDO)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 294.98 0.99 -18.99 re -f -126.01 275.49 m -558.01 275.49 l -S -570 275.98 0.99 -0.99 re -f -BT -10 0 0 10 258 260.2 Tm -0.133 Tw -[(Undoes the last edit. All changes since the beginning of the edit)]TJ -ET -570 274.98 0.99 -18.99 re -f -BT -10 0 0 10 258 248.2 Tm -0 Tw -(session are remembered, and can be undone sequentially.)Tj -ET -570 255.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 227.64 Tm -(Redo: Meta-R or AGAIN)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 243.98 0.99 -20.99 re -f -126.01 222.49 m -558.01 222.49 l -S -570 222.98 0.99 -0.99 re -f -BT -10 0 0 10 258 207.2 Tm -0.16 Tw -[(Redoes the edit change that was just undone. Redo only works)]TJ -ET -570 221.98 0.99 -18.99 re -f -BT -10 0 0 10 258 195.2 Tm -0.082 Tw -[(directly following an Undo. Any number of Undo commands can)]TJ -ET -570 202.98 0.99 -11.99 re -f -BT -10 0 0 10 258 183.2 Tm -0 Tw -(be sequentially redone.)Tj -ET -570 190.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 155.64 Tm -(16.1.11 Find Commands)Tj -ET -570 178.98 0.99 -25.99 re -f -54.01 152.49 m -558.01 152.49 l -S -570 152.98 0.99 -0.99 re -f -BT -10 0 0 10 126 137.2 Tm -(Find: Meta-F or FIND)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 151.98 0.99 -18.99 re -f -126.01 132.49 m -558.01 132.49 l -S -570 132.98 0.99 -0.99 re -f -BT -10 0 0 10 258 117.2 Tm -0.059 Tw -[(Finds a specified structure, or sequence of structures. If there is a)]TJ -ET -570 131.98 0.99 -18.99 re -f -BT -10 0 0 10 258 105.2 Tm -0.354 Tw -[(current selection, SEdit looks for the next occurrence of the)]TJ -ET -570 112.98 0.99 -11.99 re -f -BT -10 0 0 10 258 93.2 Tm -0.145 Tw -[(selected structure. If there is no selection, SEdit prompts for the)]TJ -ET -570 100.98 0.99 -11.99 re -f -BT -10 0 0 10 258 81.2 Tm -0.249 Tw -(structure to find, and searches forward from the position of the)Tj -ET -570 88.98 0.99 -11.99 re -f -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -38 0 obj -<< -/Length 5778 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.095 Tw -[(caret. The found structure will be selected, so the Find command)]TJ -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(can be used to easily find the same structure again.)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 699.2 Tm -0.101 Tw -(If a sequence of structures is selected, SEdit will look for the next)Tj -ET -570 713.98 0.99 -18.99 re -f -BT -10 0 0 10 258 687.2 Tm -0.091 Tw -[(occurrence of the same sequence. Similarly, when SEdit prompts)]TJ -ET -570 694.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.119 Tw -(for the structure to find, you can type a sequence of structures to)Tj -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0 Tw -(look for.)Tj -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 644.2 Tm -0.235 Tw -(The variable *wrap-search* controls whether or not SEdit wraps)Tj -ET -570 658.98 0.99 -18.99 re -f -BT -10 0 0 10 258 632.2 Tm -0.182 Tw -(around from the end of the structure being edited and continues)Tj -ET -570 639.98 0.99 -11.99 re -f -BT -10 0 0 10 258 620.2 Tm -0 Tw -(searching from the beginning.)Tj -ET -570 627.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 601.2 Tm -(Reverse Find: Control-Meta-F )Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 615.98 0.99 -18.99 re -f -126.01 596.49 m -558.01 596.49 l -S -570 596.98 0.99 -0.99 re -f -BT -10 0 0 10 258 581.2 Tm -0.122 Tw -(Finds a specified structure, searching in reverse from the position)Tj -ET -570 595.98 0.99 -18.99 re -f -BT -10 0 0 10 258 569.2 Tm -0 Tw -(of the caret.)Tj -ET -570 576.98 0.99 -11.99 re -f -BT -10 0 0 10 258 550.2 Tm -0.235 Tw -(The variable *wrap-search* controls whether or not SEdit wraps)Tj -ET -570 564.98 0.99 -18.99 re -f -BT -10 0 0 10 258 538.2 Tm -0.412 Tw -(around from the beginning of the structure being edited and)Tj -ET -570 545.98 0.99 -11.99 re -f -BT -10 0 0 10 258 526.2 Tm -0 Tw -(continues searching from the end.)Tj -ET -570 533.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 505.64 Tm -(Find Gap: Meta-N or SKIP-NEXT)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 521.98 0.99 -20.99 re -f -126.01 500.49 m -558.01 500.49 l -S -570 500.98 0.99 -0.99 re -f -BT -10 0 0 10 258 485.2 Tm -0.347 Tw -(Skips to the next gap in the structure, leaving it selected for)Tj -ET -570 499.98 0.99 -18.99 re -f -BT -10 0 0 10 258 473.2 Tm -0 Tw -(pending deletion.)Tj -ET -570 480.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 454.2 Tm -(Substitute: Meta-S or SHIFT-FIND)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 468.98 0.99 -18.99 re -f -126.01 449.49 m -558.01 449.49 l -S -570 449.98 0.99 -0.99 re -f -BT -10 0 0 10 258 434.2 Tm -0.214 Tw -(Substitutes one structure, or sequence of structures, for another)Tj -ET -570 448.98 0.99 -18.99 re -f -BT -10 0 0 10 258 422.2 Tm -0.06 Tw -[(structure, or sequence, within the current selection. SEdit prompts)]TJ -ET -570 429.98 0.99 -11.99 re -f -BT -10 0 0 10 258 410.2 Tm -0.12 Tw -(you in the SEdit prompt window for the structures to replace, and)Tj -ET -570 417.98 0.99 -11.99 re -f -BT -10 0 0 10 258 398.2 Tm -0 Tw -(the structures to replace with.)Tj -ET -570 405.98 0.99 -11.99 re -f -BT -10 0 0 10 258 379.2 Tm -0.044 Tw -[(The selection to substitute within must be a structure selection. To)]TJ -ET -570 393.98 0.99 -18.99 re -f -BT -10 0 0 10 258 367.2 Tm -0.16 Tw -(get a structure selection, click with the middle mouse button \(not)Tj -ET -570 374.98 0.99 -11.99 re -f -BT -10 0 0 10 258 355.2 Tm -0.084 Tw -[(the left\), and extend it, if necessary, with the right mouse button.)]TJ -ET -570 362.98 0.99 -11.99 re -f -BT -10 0 0 10 258 343.2 Tm -0.322 Tw -(If you begin with the left button, you will get an informational)Tj -ET -570 350.98 0.99 -11.99 re -f -BT -10 0 0 10 258 331.2 Tm -0.229 Tw -(message "Select the structure to substitute within", because the)Tj -ET -570 338.98 0.99 -11.99 re -f -BT -10 0 0 10 258 319.2 Tm -0 Tw -(selection was of characters, rather than structures.)Tj -ET -570 326.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 300.2 Tm -(Delete Structure: Control-Meta-S )Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 314.98 0.99 -18.99 re -f -126.01 295.49 m -558.01 295.49 l -S -570 295.98 0.99 -0.99 re -f -BT -10 0 0 10 258 280.2 Tm -0.159 Tw -(Removes all occurences of a structure or sequence of structures)Tj -ET -570 294.98 0.99 -18.99 re -f -BT -10 0 0 10 258 268.2 Tm -0.16 Tw -[(within the current selection. SEdit prompts the user in the SEdit)]TJ -ET -570 275.98 0.99 -11.99 re -f -BT -10 0 0 10 258 256.2 Tm -0 Tw -(prompt window for the structures to delete.)Tj -ET -570 263.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 228.64 Tm -(16.1.12 General Commands)Tj -ET -570 251.98 0.99 -25.99 re -f -54.01 225.49 m -558.01 225.49 l -S -570 225.98 0.99 -0.99 re -f -BT -10 0 0 10 126 208.64 Tm -(Arglist: Meta-H or HELP)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 224.98 0.99 -20.99 re -f -126.01 203.49 m -558.01 203.49 l -S -570 203.98 0.99 -0.99 re -f -BT -10 0 0 10 258 188.2 Tm -0.32 Tw -(Shows the argument list for the function currently selected, or)Tj -ET -570 202.98 0.99 -18.99 re -f -BT -10 0 0 10 258 176.2 Tm -0.357 Tw -[(currently being typed in, in the SEdit prompt window. If the)]TJ -ET -570 183.98 0.99 -11.99 re -f -BT -10 0 0 10 258 164.2 Tm -0.007 Tw -[(argument list will not fit in the SEdit prompt window, it is displayed)]TJ -ET -570 171.98 0.99 -11.99 re -f -BT -10 0 0 10 258 152.2 Tm -0 Tw -(in the main Prompt Window.)Tj -ET -570 159.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 133.2 Tm -(Convert Comments: Meta-;)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 147.98 0.99 -18.99 re -f -126.01 128.49 m -558.01 128.49 l -S -570 128.98 0.99 -0.99 re -f -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -41 0 obj -<< -/Length 6846 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.039 Tw -[(Converts old style comments in the selected structure to new style)]TJ -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.277 Tw -[(comments. This converter notices any list that begins with an)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.388 Tw -(asterisk \(*\) in the INTERLISP package \(IL:*\) as an old style)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.572 Tw -(comment. Section 16.1.18, Options, describes the converter)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0 Tw -(options .)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 663.2 Tm -(Comment Out Selection: Control-Meta-;)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 677.98 0.99 -18.99 re -f -126.01 658.49 m -558.01 658.49 l -S -570 658.98 0.99 -0.99 re -f -BT -10 0 0 10 258 643.2 Tm -0.249 Tw -(This command puts the contents of a structure selection into a)Tj -ET -570 657.98 0.99 -18.99 re -f -BT -10 0 0 10 258 631.2 Tm -0.042 Tw -[(comment. This provides an easy way to "comment out" a chunk of)]TJ -ET -570 638.98 0.99 -11.99 re -f -BT -10 0 0 10 258 619.2 Tm -0.08 Tw -[(code. The Extract command can be used to reverse this process,)]TJ -ET -570 626.98 0.99 -11.99 re -f -BT -10 0 0 10 258 607.2 Tm -0 Tw -(returning the comment to the structures contained therein.)Tj -ET -570 614.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 588.2 Tm -(Edit: Meta-O )Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 602.98 0.99 -18.99 re -f -126.01 583.49 m -558.01 583.49 l -S -570 583.98 0.99 -0.99 re -f -BT -10 0 0 10 258 568.2 Tm -0.145 Tw -[(Edits the definition of the current selection. If the selected name)]TJ -ET -570 582.98 0.99 -18.99 re -f -BT -10 0 0 10 258 556.2 Tm -0.08 Tw -(has more than one type of definition, SEdit asks for the type to be)Tj -ET -570 563.98 0.99 -11.99 re -f -BT -10 0 0 10 258 544.2 Tm -0.153 Tw -[(edited. If the selection has no definition, a menu pops up. This)]TJ -ET -570 551.98 0.99 -11.99 re -f -BT -10 0 0 10 258 532.2 Tm -0.3 Tw -[(menu lets the user specify either the type of definition to be)]TJ -ET -570 539.98 0.99 -11.99 re -f -BT -10 0 0 10 258 520.2 Tm -0 Tw -(created, or no definition if none needs to be created.)Tj -ET -570 527.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 499.64 Tm -(Eval: Meta-E )Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 515.98 0.99 -20.99 re -f -126.01 494.49 m -558.01 494.49 l -S -570 494.98 0.99 -0.99 re -f -BT -10 0 0 10 258 479.2 Tm -0.236 Tw -[(Evaluates the current selection. If the result is a structure, the)]TJ -ET -570 493.98 0.99 -18.99 re -f -BT -10 0 0 10 258 467.2 Tm -0.059 Tw -(inspector is called on it, allowing the user to choose how to look at)Tj -ET -570 474.98 0.99 -11.99 re -f -BT -10 0 0 10 258 455.2 Tm -0.251 Tw -[(the result. Otherwise, the result is printed in the SEdit prompt)]TJ -ET -570 462.98 0.99 -11.99 re -f -BT -10 0 0 10 258 443.2 Tm -0.05 Tw -[(window. The evaluation is done in the process from which the edit)]TJ -ET -570 450.98 0.99 -11.99 re -f -BT -10 0 0 10 258 431.2 Tm -0.145 Tw -[(session was started. Thus, while editing a function from a break)]TJ -ET -570 438.98 0.99 -11.99 re -f -BT -10 0 0 10 258 419.2 Tm -0 Tw -(window, evaluations are done in the context of the break.)Tj -ET -570 426.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 398.64 Tm -(Expand: Meta-X or EXPAND)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 414.98 0.99 -20.99 re -f -126.01 393.49 m -558.01 393.49 l -S -570 393.98 0.99 -0.99 re -f -BT -10 0 0 10 258 378.2 Tm -0.172 Tw -[(Replaces the current selection with its definition. This command)]TJ -ET -570 392.98 0.99 -18.99 re -f -BT -10 0 0 10 258 366.2 Tm -0 Tw -(can be used to expand macros and translate CLISP.)Tj -ET -570 373.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 347.2 Tm -(Extract: Meta- /)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 361.98 0.99 -18.99 re -f -126.01 342.49 m -558.01 342.49 l -S -570 342.98 0.99 -0.99 re -f -BT -10 0 0 10 258 327.2 Tm -0.027 Tw -[(Extracts one level of structure from the current selection. If there is)]TJ -ET -570 341.98 0.99 -18.99 re -f -BT -10 0 0 10 258 315.2 Tm -0.155 Tw -(no selection, but there is a structure caret, the list containing the)Tj -ET -570 322.98 0.99 -11.99 re -f -BT -10 0 0 10 258 303.2 Tm -0.016 Tw -[(caret is used. This command can be used to strip the parentheses)]TJ -ET -570 310.98 0.99 -11.99 re -f -BT -10 0 0 10 258 291.2 Tm -0.011 Tw -[(off a list, or to unquote a quoted structure, or to replace a comment)]TJ -ET -570 298.98 0.99 -11.99 re -f -BT -10 0 0 10 258 279.2 Tm -0 Tw -(with the structures contained therein.)Tj -ET -570 286.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 260.2 Tm -(Inspect: Meta-I)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 274.98 0.99 -18.99 re -f -126.01 255.49 m -558.01 255.49 l -S -570 255.98 0.99 -0.99 re -f -BT -10 0 0 10 258 240.2 Tm -(Inspect the current selection.)Tj -ET -570 254.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 219.64 Tm -(Join: Meta-J)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 235.98 0.99 -20.99 re -f -126.01 214.49 m -558.01 214.49 l -S -570 214.98 0.99 -0.99 re -f -BT -10 0 0 10 258 199.2 Tm -0.054 Tw -[(Joins. This command joins any number of sequential Lisp objects)]TJ -ET -570 213.98 0.99 -18.99 re -f -BT -10 0 0 10 258 187.2 Tm -0.013 Tw -[(of the same type into one object of that type. Join is supported for)]TJ -ET -570 194.98 0.99 -11.99 re -f -BT -10 0 0 10 258 175.2 Tm -0.339 Tw -(atoms, strings, lists, and comments. In addition, SEdit permits)Tj -ET -570 182.98 0.99 -11.99 re -f -BT -10 0 0 10 258 163.2 Tm -0.14 Tw -(joining of a sequence of atoms and strings, since either type can)Tj -ET -570 170.98 0.99 -11.99 re -f -BT -10 0 0 10 258 151.2 Tm -0.046 Tw -[(easily be coerced into the other. In this case, the result of the Join)]TJ -ET -570 158.98 0.99 -11.99 re -f -BT -10 0 0 10 258 139.2 Tm -0.303 Tw -(will be an atom if the first object in the selection is an atom,)Tj -ET -570 146.98 0.99 -11.99 re -f -BT -10 0 0 10 258 127.2 Tm -0 Tw -(otherwise the result will be a string.)Tj -ET -570 134.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 108.2 Tm -(Mutate: Meta-Z)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 122.98 0.99 -18.99 re -f -126.01 103.49 m -558.01 103.49 l -S -570 103.98 0.99 -0.99 re -f -BT -10 0 0 10 258 88.2 Tm -0.071 Tw -[(Mutates. This command allows the user to do arbitrary operations)]TJ -ET -570 102.98 0.99 -18.99 re -f -BT -10 0 0 10 258 76.2 Tm -0.203 Tw -[(on a LISP structure. First select the structure to be mutated \(it)]TJ -ET -570 83.98 0.99 -11.99 re -f -BT -10 0 0 10 258 64.2 Tm -0.105 Tw -[(must be a whole structure, not an extended selection\). When the)]TJ -ET -570 71.98 0.99 -11.99 re -f -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -44 0 obj -<< -/Length 3691 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.241 Tw -[(user presses Meta-Z SEdit prompts for the function to use for)]TJ -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.115 Tw -[(mutating. This function is called with the selected structure as its)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.338 Tw -(argument, and the structure is replaced with the result of the)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0 Tw -(mutation. )Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.152 Tw -(For example, an atom can be put in upper case by selecting the)Tj -ET -570 689.98 0.99 -18.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.181 Tw -[(atom and mutating by the function U-CASE. You can replace a)]TJ -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0 Tw -(structure with its value by selecting it and mutating by EVAL.)Tj -ET -570 658.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 632.2 Tm -[(Quote:)-978(Meta-)]TJ -ET -570 646.98 0.99 -18.99 re -f -BT -10 0 0 10 168 618.2 Tm -(Meta-)Tj -ET -570 627.98 0.99 -13.99 re -f -BT -10 0 0 10 168 604.2 Tm -(Meta-,)Tj -ET -570 613.98 0.99 -13.99 re -f -BT -10 0 0 10 168 590.2 Tm -(Meta-.)Tj -ET -570 599.98 0.99 -13.99 re -f -BT -10 0 0 10 168 576.2 Tm -(Meta-@ or Meta-2)Tj -ET -570 585.98 0.99 -13.99 re -f -BT -10 0 0 10 168 562.2 Tm -(Meta-# or Meta-3)Tj -/TT2 1 Tf -30.942 0 TD -([Editor Command])Tj -ET -570 571.98 0.99 -13.99 re -f -126.01 557.49 m -558.01 557.49 l -S -570 557.98 0.99 -0.99 re -f -BT -10 0 0 10 258 542.2 Tm -0.299 Tw -[(Quotes the current selection with the specified kind of quote,)]TJ -ET -570 556.98 0.99 -18.99 re -f -BT -10 0 0 10 258 530.2 Tm -0.078 Tw -[(respectively, Single Quote, Backquote, Comma, Comma-At-Sign,)]TJ -ET -570 537.98 0.99 -11.99 re -f -BT -10 0 0 10 258 518.2 Tm -0 Tw -(Comma-Dot, or Hash-Quote.)Tj -ET -570 525.98 0.99 -30.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 480.2 Tm -(Normalize Selection: Meta-Space or Meta-Return )Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 494.98 0.99 -18.99 re -f -126.01 475.49 m -558.01 475.49 l -S -570 475.98 0.99 -0.99 re -f -BT -10 0 0 10 258 460.2 Tm -0.055 Tw -[(Scrolls the current selection to the center of the window. Similarly,)]TJ -ET -570 474.98 0.99 -18.99 re -f -BT -10 0 0 10 258 448.2 Tm -0 Tw -(the Space or Return key can be used to normalize the caret.)Tj -ET -570 455.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 429.2 Tm -(Parenthesize: Meta- \) or Meta-0)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 443.98 0.99 -18.99 re -f -126.01 424.49 m -558.01 424.49 l -S -570 424.98 0.99 -0.99 re -f -BT -10 0 0 10 258 409.2 Tm -0.116 Tw -(Parenthesizes the current selection, positioning the caret after the)Tj -ET -570 423.98 0.99 -18.99 re -f -BT -10 0 0 10 258 397.2 Tm -0 Tw -(new list.)Tj -ET -570 404.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 378.2 Tm -(Parenthesize: Meta- \( or Meta-9)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 392.98 0.99 -18.99 re -f -126.01 373.49 m -558.01 373.49 l -S -570 373.98 0.99 -0.99 re -f -BT -10 0 0 10 258 358.2 Tm -0.262 Tw -(Parenthesizes the current selection, positioning the caret at the)Tj -ET -570 372.98 0.99 -18.99 re -f -BT -10 0 0 10 258 346.2 Tm -0.142 Tw -[(beginning of the new list. Only a whole structure selection or an)]TJ -ET -570 353.98 0.99 -11.99 re -f -BT -10 0 0 10 258 334.2 Tm -0.35 Tw -(extended selection of a sequence of whole structures can be)Tj -ET -570 341.98 0.99 -11.99 re -f -BT -10 0 0 10 258 322.2 Tm -0 Tw -(parenthesized.)Tj -ET -570 329.98 0.99 -11.99 re -f -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -47 0 obj -<< -/Length 2699 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(16.1.13 Miscellaneous)Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -10 0 0 10 126 710.2 Tm -(Change Print Base: Meta-B)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 724.98 0.99 -18.99 re -f -126.01 705.49 m -558.01 705.49 l -S -570 705.98 0.99 -0.99 re -f -BT -10 0 0 10 258 690.2 Tm -0.042 Tw -[(Changes Print Base. Prompts for entry of the desired Print Base,)]TJ -ET -570 704.98 0.99 -18.99 re -f -BT -10 0 0 10 258 678.2 Tm -0 Tw -(in decimal. SEdit redisplays fixed point numbers in this new base. )Tj -ET -570 685.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 657.64 Tm -(Set Package: Meta-P)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 673.98 0.99 -20.99 re -f -126.01 652.49 m -558.01 652.49 l -S -570 652.98 0.99 -0.99 re -f -BT -10 0 0 10 258 637.2 Tm -0.138 Tw -[(Changes the current package for this edit. Prompts the user, in)]TJ -ET -570 651.98 0.99 -18.99 re -f -BT -10 0 0 10 258 625.2 Tm -0.231 Tw -[(the SEdit prompt window, for a new package name. SEdit will)]TJ -ET -570 632.98 0.99 -11.99 re -f -BT -10 0 0 10 258 613.2 Tm -0 Tw -(redisplay atoms with respect to that package. )Tj -ET -570 620.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 592.64 Tm -(Attached Menu: Meta-M)Tj -/TT2 1 Tf -35.142 0 TD -([Editor Command])Tj -ET -570 608.98 0.99 -20.99 re -f -126.01 587.49 m -558.01 587.49 l -S -570 587.98 0.99 -0.99 re -f -BT -10 0 0 10 258 572.2 Tm -0.232 Tw -[(Attaches a menu of the commonly used commands \(the SEdit)]TJ -ET -570 586.98 0.99 -18.99 re -f -BT -10 0 0 10 258 560.2 Tm -0.272 Tw -[(Command Menu\) to the top of the SEdit window. Each SEdit)]TJ -ET -570 567.98 0.99 -11.99 re -f -BT -10 0 0 10 258 548.2 Tm -0 Tw -(window can have its own menu, if desired.)Tj -ET -570 555.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 520.64 Tm -(16.1.14 Help Menu)Tj -ET -570 543.98 0.99 -25.99 re -f -54.01 517.49 m -558.01 517.49 l -S -570 517.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 502.2 Tm -0.082 Tw -(When the mouse cursor is positioned in the SEdit title bar and the)Tj -ET -570 516.98 0.99 -18.99 re -f -BT -10 0 0 10 258 490.2 Tm -0.059 Tw -[(middle mouse button is pressed, a Help Menu of commands pops)]TJ -ET -570 497.98 0.99 -11.99 re -f -BT -10 0 0 10 258 478.2 Tm -0 Tw -(up. The menu looks like this: )Tj -ET -570 485.98 0.99 -11.99 re -f -BT -/TT8 1 Tf -8 0 0 8 258 80.99 Tm -( )Tj -ET -q -207 0 0 -386 262.81 466.99 cm -/Im10 Do -Q -570 473.98 0.99 -397.79 re -f -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 24 0 R ->> -/XObject << -/Im10 49 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -53 0 obj -<< -/Length 5279 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.526 Tw -(The Help Menu lists each command and its corresponding)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.166 Tw -(Command Key. \(In the menu, the letter C stands for CONTROL,)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.116 Tw -[(while M indicates Meta.\) The command selected is executed just)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.003 Tw -(as if the command had been entered from the keyboard. The menu)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0.159 Tw -(remembers which command was selected last, and pops up with)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 258 670.2 Tm -0.181 Tw -(the mouse cursor next to that same command the next time the)Tj -ET -570 677.98 0.99 -11.99 re -f -BT -10 0 0 10 258 658.2 Tm -0.132 Tw -[(menu is used. This provides a very fast way to repeat the same)]TJ -ET -570 665.98 0.99 -11.99 re -f -BT -10 0 0 10 258 646.2 Tm -0 Tw -(command when using the mouse.)Tj -ET -570 653.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 618.64 Tm -(16.1.15 Command Menu)Tj -ET -570 641.98 0.99 -25.99 re -f -54.01 615.49 m -558.01 615.49 l -S -570 615.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 600.2 Tm -0.096 Tw -[(The SEdit Attached Command Menu contains the commonly used)]TJ -ET -570 614.98 0.99 -18.99 re -f -BT -10 0 0 10 258 588.2 Tm -0.172 Tw -(commands. Use the Meta-M keyboard command to bring up this)Tj -ET -570 595.98 0.99 -11.99 re -f -BT -10 0 0 10 258 576.2 Tm -0.348 Tw -[(menu. The menu can be closed, independently of the SEdit)]TJ -ET -570 583.98 0.99 -11.99 re -f -BT -10 0 0 10 258 564.2 Tm -0 Tw -(window, when desired. The menu looks like:)Tj -ET -570 571.98 0.99 -11.99 re -f -q -327 0 0 -102 231.01 552.99 cm -/Im11 Do -Q -570 559.98 0.99 -110.99 re -f -BT -10 0 0 10 258 434.2 Tm -0.366 Tw -(All of the commands in the menu function identically to their)Tj -ET -570 448.98 0.99 -18.99 re -f -BT -10 0 0 10 258 422.2 Tm -0.832 Tw -(corresponding keyboard commands, except for Find and)Tj -ET -570 429.98 0.99 -11.99 re -f -BT -10 0 0 10 258 410.2 Tm -0 Tw -(Substitute.)Tj -ET -570 417.98 0.99 -11.99 re -f -BT -10 0 0 10 258 391.2 Tm -0.049 Tw -(When Find is selected with the mouse cursor, SEdit prompts in the)Tj -ET -570 405.98 0.99 -18.99 re -f -BT -10 0 0 10 258 379.2 Tm -0.186 Tw -(menu window, next to the Find button, for the structures to find.)Tj -ET -570 386.98 0.99 -11.99 re -f -BT -10 0 0 10 258 367.2 Tm -0.115 Tw -[(Type in the structures then select Find again. The search begins)]TJ -ET -570 374.98 0.99 -11.99 re -f -BT -10 0 0 10 258 355.2 Tm -0 Tw -(from the caret position in the SEdit window.)Tj -ET -570 362.98 0.99 -11.99 re -f -BT -10 0 0 10 258 336.2 Tm -0.315 Tw -[(Similarly, Substitute prompts, next to the Find button, for the)]TJ -ET -570 350.98 0.99 -18.99 re -f -BT -10 0 0 10 258 324.2 Tm -0.454 Tw -(structures to find, and next to the Substitute button for the)Tj -ET -570 331.98 0.99 -11.99 re -f -BT -10 0 0 10 258 312.2 Tm -0.443 Tw -(structures to substitute with. After both have been typed in,)Tj -ET -570 319.98 0.99 -11.99 re -f -BT -10 0 0 10 258 300.2 Tm -0.075 Tw -(selecting Substitute replaces all occurrences of the Find structures)Tj -ET -570 307.98 0.99 -11.99 re -f -BT -10 0 0 10 258 288.2 Tm -0 Tw -(with the Substitute structures, within the current selection.)Tj -ET -570 295.98 0.99 -11.99 re -f -BT -10 0 0 10 258 269.2 Tm -0.256 Tw -(To do a confirmed substitute, set the edit point before the first)Tj -ET -570 283.98 0.99 -18.99 re -f -BT -10 0 0 10 258 257.2 Tm -0.019 Tw -[(desired substitution, and select Find. Then if you want to substitute)]TJ -ET -570 264.98 0.99 -11.99 re -f -BT -10 0 0 10 258 245.2 Tm -0.332 Tw -[(that occurrence of the structure, select Substitute. Otherwise,)]TJ -ET -570 252.98 0.99 -11.99 re -f -BT -10 0 0 10 258 233.2 Tm -0 Tw -(select Find again to go on.)Tj -ET -570 240.98 0.99 -11.99 re -f -BT -10 0 0 10 258 214.2 Tm -0.301 Tw -(Selecting either Find or Substitute with the right mouse button)Tj -ET -570 228.98 0.99 -18.99 re -f -BT -10 0 0 10 258 202.2 Tm -0.17 Tw -(erases the old structure to find or substitute from the menu, and)Tj -ET -570 209.98 0.99 -11.99 re -f -BT -10 0 0 10 258 190.2 Tm -0 Tw -(prompts for a new one.)Tj -ET -570 197.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 162.64 Tm -(16.1.16 SEdit Programmers Interface )Tj -ET -570 185.98 0.99 -25.99 re -f -54.01 159.49 m -558.01 159.49 l -S -570 159.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 144.2 Tm -0.313 Tw -[(The following sections describe SEdits programmers interface.)]TJ -ET -570 158.98 0.99 -18.99 re -f -BT -10 0 0 10 258 132.2 Tm -0 Tw -(All symbols are external in the package named "SEdit".)Tj -ET -570 139.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 104.64 Tm -(16.1.17 SEdit Window Region Manager)Tj -ET -570 127.98 0.99 -25.99 re -f -54.01 101.49 m -558.01 101.49 l -S -570 101.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 86.2 Tm -0.116 Tw -(SEdit provides user redefinable functions which control how SEdit)Tj -ET -570 100.98 0.99 -18.99 re -f -BT -10 0 0 10 258 74.2 Tm -0 Tw -(chooses the region for a new edit window.)Tj -ET -570 81.98 0.99 -11.99 re -f -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/XObject << -/Im11 55 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -57 0 obj -<< -/Length 8108 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 126 730.2 Tm -0.0001 Tc -(\(get-window-region )Tj -/TT6 1 Tf -9.4998 0 TD -0 Tc -(context reason name type)Tj -/TT4 1 Tf -11.5068 0 TD -(\))Tj -/TT2 1 Tf -17.3933 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 747.98 0.99 -19.99 re -f -126.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 712.2 Tm -0.073 Tw -(This function is called when SEdit wants to know where to place a)Tj -ET -570 726.98 0.99 -18.99 re -f -BT -10 0 0 10 258 700.2 Tm -0.064 Tw -(window it is about to open. This happens whenever the user starts)Tj -ET -570 707.98 0.99 -11.99 re -f -BT -10 0 0 10 258 688.2 Tm -0.17 Tw -(a new SEdit or expands an Sedit icon.The default behavior is to)Tj -ET -570 695.98 0.99 -11.99 re -f -BT -10 0 0 10 258 676.2 Tm -(pop a window region off SEdits stack of regions that have been)Tj -ET -570 683.98 0.99 -11.99 re -f -BT -10 0 0 10 258 664.2 Tm -0.071 Tw -[(used in the past. If the stack is empty, SEdit prompts for a new)]TJ -ET -570 671.98 0.99 -11.99 re -f -BT -10 0 0 10 258 652.2 Tm -0 Tw -(region. )Tj -ET -570 659.98 0.99 -11.99 re -f -BT -10 0 0 10 258 633.2 Tm -0.182 Tw -(This function can be redefined to provide different behavior. It is)Tj -ET -570 647.98 0.99 -18.99 re -f -BT -10 0 0 10 258 621.2 Tm -0.246 Tw -(called with the edit )Tj -/TT6 1 Tf -9.4889 0 TD -0 Tw -(context)Tj -/TT2 1 Tf -3.2241 0 TD -0.246 Tw -(, a )Tj -/TT6 1 Tf -1.8816 0 TD -0 Tw -(reason)Tj -/TT2 1 Tf -3.0576 0 TD -0.246 Tw -[( for needing a region, the)]TJ -ET -570 628.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 609.2 Tm -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.071 Tw -[( of the structure to be edited, and the )]TJ -/TT6 1 Tf -17.2611 0 TD -0 Tw -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.071 Tw -[( of the structure to)]TJ -ET -570 616.98 0.99 -11.99 re -f -BT -10 0 0 10 258 597.2 Tm -0.073 Tw -[(be edited. The edit )]TJ -/TT6 1 Tf -9.2044 0 TD -0 Tw -(context)Tj -/TT2 1 Tf -3.2241 0 TD -0.073 Tw -[( is SEdits main data structure and can)]TJ -ET -570 604.98 0.99 -11.99 re -f -BT -10 0 0 10 258 585.2 Tm -0.066 Tw -[(be useful for associating particular edits with specific regions. The)]TJ -ET -570 592.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 573.2 Tm -0 Tw -(reason)Tj -/TT2 1 Tf -3.0576 0 TD -0.149 Tw -[( argument specifies why SEdit wants a region, and will be)]TJ -ET -570 580.98 0.99 -11.99 re -f -BT -10 0 0 10 258 561.2 Tm -0 Tw -(one of the keywords :CREATE or :EXPAND. )Tj -ET -570 568.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 539.2 Tm -(\(save-window-region )Tj -/TT6 1 Tf -10.2238 0 TD -(context reason name type region)Tj -/TT4 1 Tf -14.5644 0 TD -(\))Tj -/TT2 1 Tf -13.6117 0 TD -([Function])Tj -ET -570 556.98 0.99 -19.99 re -f -126.01 536.49 m -558.01 536.49 l -S -570 536.98 0.99 -0.99 re -f -BT -10 0 0 10 258 521.2 Tm -0.049 Tw -(This function is called whenever SEdit is finished with a region and)Tj -ET -570 535.98 0.99 -18.99 re -f -BT -10 0 0 10 258 509.2 Tm -0.054 Tw -[(wants to make the region available for other SEdits. This happens)]TJ -ET -570 516.98 0.99 -11.99 re -f -BT -10 0 0 10 258 497.2 Tm -0.078 Tw -[(whenever an SEdit window is closed or shrunk, or when an SEdit)]TJ -ET -570 504.98 0.99 -11.99 re -f -BT -10 0 0 10 258 485.2 Tm -0.133 Tw -[(Icon is closed. The default behavior is simply to push the region)]TJ -ET -570 492.98 0.99 -11.99 re -f -BT -10 0 0 10 258 473.2 Tm -0 Tw -(onto SEdits stack of regions. )Tj -ET -570 480.98 0.99 -11.99 re -f -BT -10 0 0 10 258 454.2 Tm -0.14 Tw -(This function can be redefined to provide different behavior. )Tj -/TT4 1 Tf -27.8874 0 TD -0 Tw -( )Tj -/TT2 1 Tf -0.4178 0 TD -0.14 Tw -(It is)Tj -ET -570 468.98 0.99 -18.99 re -f -BT -10 0 0 10 258 442.2 Tm -0.16 Tw -(also called with the edit )Tj -/TT6 1 Tf -11.4172 0 TD -0 Tw -(context)Tj -/TT2 1 Tf -3.2241 0 TD -0.16 Tw -(, the)Tj -/TT6 1 Tf -2.1058 0 TD -[( reason)]TJ -/TT2 1 Tf -3.4954 0 TD -(, the )Tj -/TT6 1 Tf -2.5436 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.16 Tw -(, the )Tj -/TT6 1 Tf -2.5436 0 TD -0 Tw -(type)Tj -/TT2 1 Tf -1.8901 0 TD -(,)Tj -ET -570 449.98 0.99 -11.99 re -f -BT -10 0 0 10 258 430.2 Tm -0.295 Tw -(and additionally the window )Tj -/TT6 1 Tf -13.6883 0 TD -0 Tw -(region)Tj -/TT2 1 Tf -2.7798 0 TD -0.295 Tw -[( that is being released. The)]TJ -ET -570 437.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 418.2 Tm -0 Tw -(reason)Tj -/TT2 1 Tf -3.0576 0 TD -0.141 Tw -[( argument specifies why SEdit is releasing the region, and)]TJ -ET -570 425.98 0.99 -11.99 re -f -BT -10 0 0 10 258 406.2 Tm -0 Tw -(will be one of the keywords :CLOSE, :SHRINK, or :CLOSE-ICON.)Tj -ET -570 413.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 384.2 Tm -(keep-window-region )Tj -/TT2 1 Tf -38.4 0 TD -([Variable)Tj -/TT4 1 Tf -3.9468 0 TD -(])Tj -ET -570 401.98 0.99 -19.99 re -f -126.01 381.49 m -558.01 381.49 l -S -570 381.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 366.2 Tm -(Default )Tj -/TT4 1 Tf -3.5913 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.145 Tw -[(. This flag determines the behavior of the default SEdit)]TJ -ET -570 380.98 0.99 -18.99 re -f -BT -10 0 0 10 258 354.2 Tm -0.331 Tw -(region manager, explained above, for shrinking and expanding)Tj -ET -570 361.98 0.99 -11.99 re -f -BT -10 0 0 10 258 342.2 Tm -0.089 Tw -[(windows. When set to )]TJ -/TT4 1 Tf -10.7272 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.089 Tw -[(, shrinking an SEdit window will not give)]TJ -ET -570 349.98 0.99 -11.99 re -f -BT -10 0 0 10 258 330.2 Tm -0.09 Tw -(up that windows region; the icon will always expand back into the)Tj -ET -570 337.98 0.99 -11.99 re -f -BT -10 0 0 10 258 318.2 Tm -0.302 Tw -[(same region. When set to )]TJ -/TT4 1 Tf -13.7622 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.302 Tw -(, the windows region is made)Tj -ET -570 325.98 0.99 -11.99 re -f -BT -10 0 0 10 258 306.2 Tm -0.05 Tw -[(available for other SEdits when the window is shrunk. Then when)]TJ -ET -570 313.98 0.99 -11.99 re -f -BT -10 0 0 10 258 294.2 Tm -0.036 Tw -(an SEdit icon is expanded, the window will be reshaped to the next)Tj -ET -570 301.98 0.99 -11.99 re -f -BT -10 0 0 10 258 282.2 Tm -0 Tw -(available region.)Tj -ET -570 289.98 0.99 -11.99 re -f -BT -10 0 0 10 258 263.2 Tm -0.215 Tw -(This variable is only used by the default implementations of the)Tj -ET -570 277.98 0.99 -18.99 re -f -BT -10 0 0 10 258 251.2 Tm -0 Tw -(functions )Tj -/TT4 1 Tf -4.3663 0 TD -(get-window-region)Tj -/TT2 1 Tf -8.8877 0 TD -0.086 Tw -[( and )]TJ -/TT4 1 Tf -2.76 0 TD -0 Tw -(save-window-region)Tj -/TT2 1 Tf -9.6123 0 TD -0.086 Tw -[(. If these)]TJ -ET -570 258.98 0.99 -11.99 re -f -BT -10 0 0 10 258 239.2 Tm -0 Tw -(functions are redefined, this flag is no longer used.)Tj -ET -570 246.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 211.64 Tm -(16.1.18 Options)Tj -ET -570 234.98 0.99 -25.99 re -f -54.01 208.49 m -558.01 208.49 l -S -570 208.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 193.2 Tm -(The following parameters can be set as desired.)Tj -ET -570 207.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 171.2 Tm -(*wrap-parens*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 188.98 0.99 -19.99 re -f -126.01 168.49 m -558.01 168.49 l -S -570 168.98 0.99 -0.99 re -f -BT -10 0 0 10 258 153.2 Tm -0.283 Tw -(This SEdit pretty printer flag determines whether or not trailing)Tj -ET -570 167.98 0.99 -18.99 re -f -BT -10 0 0 10 258 141.2 Tm -0.304 Tw -(close parenthesis characters, \), are forced to be visible in the)Tj -ET -570 148.98 0.99 -11.99 re -f -BT -10 0 0 10 258 129.2 Tm -0.11 Tw -[(window without scrolling. By default it is set to NIL, meaning that)]TJ -ET -570 136.98 0.99 -11.99 re -f -BT -10 0 0 10 258 117.2 Tm -0.092 Tw -(close parens are allowed to "fall off" the right edge of the window.)Tj -ET -570 124.98 0.99 -11.99 re -f -BT -10 0 0 10 258 105.2 Tm -0.027 Tw -(If set to T, the pretty printer will start a new line before the structure)Tj -ET -570 112.98 0.99 -11.99 re -f -BT -10 0 0 10 258 93.2 Tm -0 Tw -(preceding the close parens, so that all the parens will be visible.)Tj -ET -570 100.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 71.2 Tm -(*wrap-search*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 88.98 0.99 -19.99 re -f -126.01 68.49 m -558.01 68.49 l -S -570 68.98 0.99 -0.99 re -f -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -60 0 obj -<< -/Length 7048 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.105 Tw -(This flag determines whether or not SEdit find will wrap around to)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.011 Tw -(the top of the structure when it reaches the end, or vice versa in the)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(case of reverse find. The default is NIL.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 684.2 Tm -(*clear-linear-on-completion*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 701.98 0.99 -19.99 re -f -126.01 681.49 m -558.01 681.49 l -S -570 681.98 0.99 -0.99 re -f -BT -10 0 0 10 258 666.2 Tm -0.325 Tw -(This flag determines whether or not SEdit completely re-pretty)Tj -ET -570 680.98 0.99 -18.99 re -f -BT -10 0 0 10 258 654.2 Tm -0.09 Tw -[(prints the structure being edited when you complete the edit. The)]TJ -ET -570 661.98 0.99 -11.99 re -f -BT -10 0 0 10 258 642.2 Tm -0 Tw -(default value is NIL, meaning that SEdit reuses the pretty printing.)Tj -ET -570 649.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 620.2 Tm -(*ignore-changes-on-completion*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 637.98 0.99 -19.99 re -f -126.01 617.49 m -558.01 617.49 l -S -570 617.98 0.99 -0.99 re -f -BT -10 0 0 10 258 602.2 Tm -0.226 Tw -(Sometimes the structure that you are editing is changed by the)Tj -ET -570 616.98 0.99 -18.99 re -f -BT -10 0 0 10 258 590.2 Tm -0.455 Tw -[(system upon completion. Editdates are an example of this)]TJ -ET -570 597.98 0.99 -11.99 re -f -BT -10 0 0 10 258 578.2 Tm -0.031 Tw -[(behavior. When this flag is NIL, the default, SEdit will redisplay the)]TJ -ET -570 585.98 0.99 -11.99 re -f -BT -10 0 0 10 258 566.2 Tm -0.12 Tw -[(new struct ure, capturing the changes. When T, SEdit will ignore)]TJ -ET -570 573.98 0.99 -11.99 re -f -BT -10 0 0 10 258 554.2 Tm -0.114 Tw -(the fact that changes were made by the system and keep the old)Tj -ET -570 561.98 0.99 -11.99 re -f -BT -10 0 0 10 258 542.2 Tm -0 Tw -(structure.)Tj -ET -570 549.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 520.2 Tm -(convert-upgrade)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 537.98 0.99 -19.99 re -f -126.01 517.49 m -558.01 517.49 l -S -570 517.98 0.99 -0.99 re -f -BT -10 0 0 10 258 502.2 Tm -0.0001 Tc -0.0039 Tw -(Default 100. When using Meta-; to convert old-style single- asterisk)Tj -ET -570 516.98 0.99 -18.99 re -f -BT -10 0 0 10 258 490.2 Tm -0 Tc -0.04 Tw -(comments, if the length of the comment exceeds )Tj -/TT4 1 Tf -22.1086 0 TD -0 Tw -(convert-upgrade)Tj -ET -570 497.98 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 478.2 Tm -0.318 Tw -(characters, the comment is converted into a double semicolon)Tj -ET -570 485.98 0.99 -11.99 re -f -BT -10 0 0 10 258 466.2 Tm -0.326 Tw -[(comment. Otherwise, the comment is converted into a single)]TJ -ET -570 473.98 0.99 -11.99 re -f -BT -10 0 0 10 258 454.2 Tm -0 Tw -(semicolon comment.)Tj -ET -570 461.98 0.99 -11.99 re -f -BT -10 0 0 10 258 435.2 Tm -0.007 Tw -(Old-style double-asterisk comments are always converted into new-)Tj -ET -570 449.98 0.99 -18.99 re -f -BT -10 0 0 10 258 423.2 Tm -0 Tw -(style triple-semicolon comments.)Tj -ET -570 430.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 395.64 Tm -(16.1.19 Control Functions)Tj -ET -570 418.98 0.99 -25.99 re -f -54.01 392.49 m -558.01 392.49 l -S -570 392.98 0.99 -0.99 re -f -BT -10 0 0 10 126 374.2 Tm -(\(reset\))Tj -/TT2 1 Tf -38.4 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 391.98 0.99 -19.99 re -f -126.01 371.49 m -558.01 371.49 l -S -570 371.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 356.2 Tm -0.023 Tw -[(This function recomputes the SEdit edit environment. Any changes)]TJ -ET -570 370.98 0.99 -18.99 re -f -BT -10 0 0 10 258 344.2 Tm -0.515 Tw -(made in the font profile, or any changes made to SEdits)Tj -ET -570 351.98 0.99 -11.99 re -f -BT -10 0 0 10 258 332.2 Tm -0.258 Tw -[(commands are captured by resetting. Close all SEdit windows)]TJ -ET -570 339.98 0.99 -11.99 re -f -BT -10 0 0 10 258 320.2 Tm -0 Tw -(before calling this function.)Tj -ET -570 327.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 306.2 Tm -(\(add-command )Tj -ET -0.75 w -126 303.99 m -200.45 303.99 l -S -BT -/TT6 1 Tf -10 0 0 10 200.45 306.2 Tm -(key-code form &optional scroll? key-name command-name help-string)Tj -ET -200.45 303.99 m -513.88 303.99 l -S -BT -/TT4 1 Tf -10 0 0 10 513.88 306.2 Tm -(\))Tj -ET -513.88 303.99 m -517.21 303.99 l -S -570 315.98 0.99 -13.99 re -f -BT -/TT2 1 Tf -10 0 0 10 509.9999 292.2 Tm -([Function)Tj -ET -126 289.99 m -551.13 289.99 l -S -BT -/TT4 1 Tf -10 0 0 10 551.1299 292.2 Tm -(])Tj -ET -551.13 289.99 m -554.46 289.99 l -S -570 301.98 0.99 -13.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 273.2 Tm -0.4989 Tw -(This function allows you to write your own SEdit keyboard)Tj -ET -570 287.98 0.99 -18.99 re -f -BT -10 0 0 10 258 261.2 Tm -0.246 Tw -[(commands. You can add commands to new keys, or you can)]TJ -ET -570 268.98 0.99 -11.99 re -f -BT -10 0 0 10 258 249.2 Tm -0.171 Tw -[(redefine keys that SEdit already uses as command keys. If you)]TJ -ET -570 256.98 0.99 -11.99 re -f -BT -10 0 0 10 258 237.2 Tm -0.602 Tw -(mistakenly redefine an SEdit command, the funtion Reset-)Tj -ET -570 244.98 0.99 -11.99 re -f -BT -10 0 0 10 258 225.2 Tm -0.205 Tw -(Commands will remove all user-added commands, leaving SEdit)Tj -ET -570 232.98 0.99 -11.99 re -f -BT -10 0 0 10 258 213.2 Tm -0 Tw -(with its default set of commands.)Tj -ET -570 220.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 194.2 Tm -(key-code)Tj -/TT2 1 Tf -4.0576 0 TD -0.343 Tw -[( can be a character code, or any form acceptible to)]TJ -ET -570 208.98 0.99 -18.99 re -f -BT -10 0 0 10 258 182.2 Tm -0 Tw -(il:charcode.)Tj -ET -570 189.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 163.2 Tm -(form)Tj -/TT2 1 Tf -2 0 TD -0.009 Tw -[( determines the function to be called when the key command is)]TJ -ET -570 177.98 0.99 -18.99 re -f -BT -10 0 0 10 258 151.2 Tm -0.094 Tw -[(typed. It can be a symbol naming a function, or a list, whose first)]TJ -ET -570 158.98 0.99 -11.99 re -f -BT -10 0 0 10 258 139.2 Tm -0.027 Tw -(element is a symbol naming a function and the rest of the elements)Tj -ET -570 146.98 0.99 -11.99 re -f -BT -10 0 0 10 258 127.2 Tm -0.371 Tw -[(are extra arguments to the function. When the command is)]TJ -ET -570 134.98 0.99 -11.99 re -f -BT -10 0 0 10 258 115.2 Tm -0.193 Tw -(invoked, SEdit will apply the function to the edit context \(SEdits)Tj -ET -570 122.98 0.99 -11.99 re -f -BT -10 0 0 10 258 103.2 Tm -0.143 Tw -(main data structure\), the charcode that was typed, and any extra)Tj -ET -570 110.98 0.99 -11.99 re -f -BT -10 0 0 10 258 91.2 Tm -0.315 Tw -(arguments supplied in )Tj -/TT6 1 Tf -11.0065 0 TD -0 Tw -(form)Tj -/TT2 1 Tf -2 0 TD -0.315 Tw -[(. The extra arguments do not get)]TJ -ET -570 98.98 0.99 -11.99 re -f -BT -10 0 0 10 258 79.2 Tm -0.093 Tw -(evaluated, but are useful as keywords or flags, depending on how)Tj -ET -570 86.98 0.99 -11.99 re -f -BT -10 0 0 10 258 67.2 Tm -0.014 Tw -[(the command was invoked. The command function must return T if)]TJ -ET -570 74.98 0.99 -11.99 re -f -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -63 0 obj -<< -/Length 6824 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.241 Tw -[(it handled the command. If the function returns NIL, SEdit will)]TJ -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(ignore the command and insert the character typed.)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 699.2 Tm -0.246 Tw -(The first optional argument, )Tj -/TT6 1 Tf -13.9585 0 TD -0 Tw -(scroll?)Tj -/TT2 1 Tf -2.8896 0 TD -0.246 Tw -(, determines whether or not)Tj -ET -570 713.98 0.99 -18.99 re -f -BT -10 0 0 10 258 687.2 Tm -0.474 Tw -[(SEdit scrolls the window after running the command. This)]TJ -ET -570 694.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.207 Tw -[(argument defaults to NIL, meaning dont scroll. If the value of)]TJ -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.08 Tw -[(SCROLL is T, then SEdit will scroll the window to ensure that the)]TJ -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0 Tw -(caret is visible. )Tj -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 632.2 Tm -0.095 Tw -(The rest of the optional arguments are used to add this command)Tj -ET -570 646.98 0.99 -18.99 re -f -BT -10 0 0 10 258 620.2 Tm -0.041 Tw -[(to SEdits middle button menu. When the item is selected from the)]TJ -ET -570 627.98 0.99 -11.99 re -f -BT -10 0 0 10 258 608.2 Tm -0.215 Tw -(menu, the command function will be called as described above,)Tj -ET -570 615.98 0.99 -11.99 re -f -BT -10 0 0 10 258 596.2 Tm -0 Tw -(with the charcode argument set to NIL.)Tj -ET -570 603.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 577.2 Tm -(key-name)Tj -/TT2 1 Tf -4.3906 0 TD -0.027 Tw -[( is a string to identify the key \(combination\) to be typed to)]TJ -ET -570 591.98 0.99 -18.99 re -f -BT -10 0 0 10 258 565.2 Tm -0.078 Tw -[(invoke the command. For example "M-A" to represent the Meta-A)]TJ -ET -570 572.98 0.99 -11.99 re -f -BT -10 0 0 10 258 553.2 Tm -0 Tw -(key combination, and "C-M-A" for Control-Meta-A.)Tj -ET -570 560.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 534.2 Tm -(command-name)Tj -/TT2 1 Tf -7.2251 0 TD -0.147 Tw -[( is a string to identify the command function, and)]TJ -ET -570 548.98 0.99 -18.99 re -f -BT -10 0 0 10 258 522.2 Tm -0 Tw -(will appear in the menu next to the )Tj -/TT6 1 Tf -15.5093 0 TD -(key-name)Tj -/TT2 1 Tf -4.3906 0 TD -(.)Tj -ET -570 529.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 503.2 Tm -(help-string)Tj -/TT2 1 Tf -4.6689 0 TD -0.142 Tw -[( is a string to be printed in the prompt window when a)]TJ -ET -570 517.98 0.99 -18.99 re -f -BT -10 0 0 10 258 491.2 Tm -0 Tw -(mouse button is held down over the menu item.)Tj -ET -570 498.98 0.99 -11.99 re -f -BT -10 0 0 10 258 472.2 Tm -0.059 Tw -(After adding all the commands that you want, you must call Reset-)Tj -ET -570 486.98 0.99 -18.99 re -f -BT -10 0 0 10 258 460.2 Tm -0 Tw -(Commands to install them.)Tj -ET -570 467.98 0.99 -11.99 re -f -BT -10 0 0 10 258 441.2 Tm -(For example:)Tj -ET -570 455.98 0.99 -18.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 423.49 Tm -(\(add-command "^U" \(my-change-case t\)\))Tj -ET -570 436.98 0.99 -18.99 re -f -BT -10 0 0 10 258 404.49 Tm -(\(add-command "^Y" \(my-change-case nil\)\))Tj -ET -570 417.98 0.99 -18.99 re -f -BT -10 0 0 10 258 385.49 Tm -(\(add-command "1,r" my-remove-nil)Tj -ET -570 398.98 0.99 -18.99 re -f -BT -10 0 0 10 258 366.49 Tm -( "M-R" "Remove NIL")Tj -ET -570 379.98 0.99 -18.99 re -f -BT -10 0 0 10 258 347.49 Tm -( "Remove NIL from the selected structure"\)\))Tj -ET -570 360.98 0.99 -18.99 re -f -BT -10 0 0 10 258 328.49 Tm -(\(reset-commands\))Tj -ET -570 341.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 308.2 Tm -0.143 Tw -[(will add three commands. Suppose )]TJ -/TT8 1 Tf -16.9776 0 TD -0 Tw -(my-change-case)Tj -/TT2 1 Tf -8.4014 0 TD -0.143 Tw -[( takes the)]TJ -ET -570 322.98 0.99 -20.28 re -f -BT -10 0 0 10 258 294.91 Tm -0 Tw -(arguments )Tj -/TT6 1 Tf -5.1434 0 TD -(context)Tj -/TT2 1 Tf -3.2241 0 TD -(, )Tj -/TT6 1 Tf -0.6967 0 TD -(charcode)Tj -/TT2 1 Tf -4.1138 0 TD -0.141 Tw -(, and )Tj -/TT6 1 Tf -2.784 0 TD -0 Tw -(upper-case)Tj -/TT2 1 Tf -5.0029 0 TD -0.141 Tw -(?. )Tj -/TT6 1 Tf -1.6716 0 TD -0 Tw -(upper-case)Tj -/TT2 1 Tf -5.0029 0 TD -0.141 Tw -(? will)Tj -ET -570 302.69 0.99 -11.99 re -f -BT -10 0 0 10 258 282.91 Tm -0.098 Tw -(be set to T when )Tj -/TT8 1 Tf -8.1609 0 TD -0 Tw -(my-change-case)Tj -/TT2 1 Tf -8.4014 0 TD -0.098 Tw -[( is called from Control-U, and)]TJ -ET -570 290.69 0.99 -13.28 re -f -BT -10 0 0 10 258 269.62 Tm -0.17 Tw -(NIL when called from Control-Y. )Tj -/TT8 1 Tf -15.748 0 TD -0 Tw -(my-remove-nil)Tj -/TT2 1 Tf -7.8013 0 TD -0.17 Tw -[( will be called)]TJ -ET -570 277.4 0.99 -13.28 re -f -BT -10 0 0 10 258 256.33 Tm -0 Tw -(with only )Tj -/TT6 1 Tf -4.1685 0 TD -(context)Tj -/TT2 1 Tf -3.2241 0 TD -( and )Tj -/TT6 1 Tf -2.2241 0 TD -(charcode)Tj -/TT2 1 Tf -4.1138 0 TD -( arguments when Meta-R is typed.)Tj -ET -570 264.11 0.99 -11.99 re -f -BT -10 0 0 10 258 237.33 Tm -0.204 Tw -(Below are some SEdit functions which are useful in writing new)Tj -ET -570 252.11 0.99 -18.99 re -f -BT -10 0 0 10 258 225.33 Tm -0 Tw -(commands.)Tj -ET -570 233.11 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 203.33 Tm --0.0001 Tc -(\(reset-commands\))Tj -/TT2 1 Tf -38.4 0 TD -0 Tc -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 221.11 0.99 -19.99 re -f -126.01 200.62 m -558.01 200.62 l -S -570 201.11 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 185.33 Tm -0.396 Tw -(This function installs all commands added by )Tj -/TT4 1 Tf -22.8931 0 TD -0 Tw -(add-command)Tj -/TT2 1 Tf -6.834 0 TD -(.)Tj -ET -570 200.11 0.99 -18.99 re -f -BT -10 0 0 10 258 173.33 Tm -0.065 Tw -(SEdits which are open at the time of the )Tj -/TT4 1 Tf -18.5396 0 TD -0 Tw -(reset-commands)Tj -/TT2 1 Tf -8.0029 0 TD -0.065 Tw -[( will not)]TJ -ET -570 181.11 0.99 -11.99 re -f -BT -10 0 0 10 258 161.33 Tm -0.388 Tw -(see the new commands; only new SEdits will have the new)Tj -ET -570 169.11 0.99 -11.99 re -f -BT -10 0 0 10 258 149.33 Tm -0 Tw -(commands available.)Tj -ET -570 157.11 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 127.33 Tm -(\(default-commands\))Tj -/TT2 1 Tf -38.4 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 145.11 0.99 -19.99 re -f -126.01 124.62 m -558.01 124.62 l -S -570 125.11 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 109.33 Tm -0.284 Tw -(This function removes all commands added by )Tj -/TT4 1 Tf -22.8869 0 TD -0 Tw -(add-command)Tj -/TT2 1 Tf -6.834 0 TD -(,)Tj -ET -570 124.11 0.99 -18.99 re -f -BT -10 0 0 10 258 97.33 Tm -0.277 Tw -[(leaving SEdit with its default set of commands. As in )]TJ -/TT4 1 Tf -27.2796 0 TD -0 Tw -(reset-)Tj -ET -570 105.11 0.99 -11.99 re -f -BT -10 0 0 10 258 85.33 Tm -(commands)Tj -/TT2 1 Tf -5.2793 0 TD -0.06 Tw -(, open SEdits will not be changed; only new SEdits will)Tj -ET -570 93.11 0.99 -11.99 re -f -BT -10 0 0 10 258 73.33 Tm -0 Tw -(have the user commands removed.)Tj -ET -570 81.11 0.99 -11.99 re -f -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 24 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -66 0 obj -<< -/Length 7751 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 126 730.2 Tm -0.0001 Tc -(\(get-prompt-window )Tj -/TT6 1 Tf -9.8878 0 TD -0 Tc -(context)Tj -/TT4 1 Tf -3.2241 0 TD -(\))Tj -/TT2 1 Tf -25.288 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 747.98 0.99 -19.99 re -f -126.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 712.2 Tm -0.165 Tw -(This function returns the attached prompt window for a particular)Tj -ET -570 726.98 0.99 -18.99 re -f -BT -10 0 0 10 258 700.2 Tm -0 Tw -(SEdit.)Tj -ET -570 707.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 678.2 Tm -(\(get-selection )Tj -/TT6 1 Tf -6.7788 0 TD -(context)Tj -/TT4 1 Tf -3.2241 0 TD -(\))Tj -/TT2 1 Tf -28.397 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 695.98 0.99 -19.99 re -f -126.01 675.49 m -558.01 675.49 l -S -570 675.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 660.2 Tm -0.215 Tw -(This function returns two values: the selected structure, and the)Tj -ET -570 674.98 0.99 -18.99 re -f -BT -10 0 0 10 258 648.2 Tm -0.082 Tw -[(type of selection, one of NIL, T, or :SUB-LIST. The selection type)]TJ -ET -570 655.98 0.99 -11.99 re -f -BT -10 0 0 10 258 636.2 Tm -0.008 Tw -(NIL means there is not a valid selection \(in this case the structure is)Tj -ET -570 643.98 0.99 -11.99 re -f -BT -10 0 0 10 258 624.2 Tm -0.249 Tw -(meaningless\). T means the selection is one complete structure.)Tj -ET -570 631.98 0.99 -11.99 re -f -BT -10 0 0 10 258 612.2 Tm -0.013 Tw -(:SUB-LIST means a series of elements in a list is selected, in which)Tj -ET -570 619.98 0.99 -11.99 re -f -BT -10 0 0 10 258 600.2 Tm -0 Tw -(case the structure returned is a list of the elements selected.)Tj -ET -570 607.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 578.2 Tm -(\(replace-selection )Tj -/TT6 1 Tf -8.7808 0 TD -(context structure selection-type )Tj -/TT4 1 Tf -14.1177 0 TD -(\))Tj -/TT2 1 Tf -15.5015 0 TD -([Function)Tj -/TT4 1 Tf -4.1133 0 TD -(])Tj -ET -570 595.98 0.99 -19.99 re -f -126.01 575.49 m -558.01 575.49 l -S -570 575.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 560.2 Tm -0.038 Tw -(This function replaces the current selection with a new structure, or)Tj -ET -570 574.98 0.99 -18.99 re -f -BT -10 0 0 10 258 548.2 Tm -0.079 Tw -(multiple structures, by deleting the selection and then inserting the)Tj -ET -570 555.98 0.99 -11.99 re -f -BT -10 0 0 10 258 536.2 Tm -0.034 Tw -[(new structure\(s\). The )]TJ -/TT6 1 Tf -10.1389 0 TD -0 Tw -(selection-type)Tj -/TT2 1 Tf -6.1699 0 TD -0.034 Tw -[( argument must be one of T or)]TJ -ET -570 543.98 0.99 -11.99 re -f -BT -10 0 0 10 258 524.2 Tm -0.019 Tw -[(:SUB-LIST. If T the )]TJ -/TT6 1 Tf -9.0974 0 TD -0 Tw -(structure)Tj -/TT2 1 Tf -3.8901 0 TD -0.019 Tw -[( is inserted as one complete structure.)]TJ -ET -570 531.98 0.99 -11.99 re -f -BT -10 0 0 10 258 512.2 Tm -0.078 Tw -(If :SUB-LIST, the )Tj -/TT6 1 Tf -8.0699 0 TD -0 Tw -(structure)Tj -/TT2 1 Tf -3.8901 0 TD -0.078 Tw -[( is treated as a list of elements, each of)]TJ -ET -570 519.98 0.99 -11.99 re -f -BT -10 0 0 10 258 500.2 Tm -0 Tw -(which is insertd.)Tj -ET -570 507.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 478.2 Tm -(*edit-fn*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 495.98 0.99 -19.99 re -f -126.01 475.49 m -558.01 475.49 l -S -570 475.98 0.99 -0.99 re -f -BT -10 0 0 10 258 460.2 Tm -0.165 Tw -(This function is funcalled with the selected structure and the edit)Tj -ET -570 474.98 0.99 -18.99 re -f -BT -10 0 0 10 258 448.2 Tm -0.095 Tw -[(options as its arguments from the Edit \(M-O\) command. It should)]TJ -ET -570 455.98 0.99 -11.99 re -f -BT -10 0 0 10 258 436.2 Tm -0.266 Tw -(start the editor as appropriate, or else generate an error if the)Tj -ET -570 443.98 0.99 -11.99 re -f -BT -10 0 0 10 258 424.2 Tm -0 Tw -(selection is not editable. )Tj -ET -570 431.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 402.2 Tm -(*compile-fn*)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -570 419.98 0.99 -19.99 re -f -126.01 399.49 m -558.01 399.49 l -S -570 399.98 0.99 -0.99 re -f -BT -10 0 0 10 258 384.2 Tm -0.015 Tw -(This function is funcalled with the arguments )Tj -/TT6 1 Tf -20.0596 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -(, )Tj -/TT6 1 Tf -0.5707 0 TD -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.015 Tw -(, and )Tj -/TT6 1 Tf -2.532 0 TD -0 Tw -(body)Tj -/TT2 1 Tf -2.1685 0 TD -(,)Tj -ET -570 398.98 0.99 -18.99 re -f -BT -10 0 0 10 258 372.2 Tm -0.258 Tw -[(from the compile completion commands. It should compile the)]TJ -ET -570 379.98 0.99 -11.99 re -f -BT -10 0 0 10 258 360.2 Tm -0 Tw -(definition, )Tj -/TT6 1 Tf -4.5586 0 TD -(body)Tj -/TT2 1 Tf -2.1685 0 TD -(, and install the code as appropriate.)Tj -ET -570 367.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 338.2 Tm -(\(sedit )Tj -/TT6 1 Tf -2.9448 0 TD -(structure props options)Tj -/TT4 1 Tf -10.1719 0 TD -(\))Tj -/TT2 1 Tf -25.2833 0 TD -([Function])Tj -ET -570 355.98 0.99 -19.99 re -f -126.01 335.49 m -558.01 335.49 l -S -570 335.98 0.99 -0.99 re -f -BT -10 0 0 10 258 320.2 Tm -0.066 Tw -(This function provides a means of starting SEdit directly. )Tj -/TT6 1 Tf -26.1161 0 TD -0 Tw -(structure)Tj -ET -570 334.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 308.2 Tm -(is the structure to be edited.)Tj -ET -570 315.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 289.2 Tm -(props)Tj -/TT2 1 Tf -2.5015 0 TD -( is a property list, which may specify the following properties:)Tj -ET -570 303.98 0.99 -18.99 re -f -BT -10 0 0 10 270 273.2 Tm -(:name - the name of the object being edited)Tj -ET -570 284.98 0.99 -15.99 re -f -BT -10 0 0 10 270 257.2 Tm -0.084 Tw -[(:type - the file manager type of the object being edited. If NIL,)]TJ -ET -570 268.98 0.99 -15.99 re -f -BT -10 0 0 10 282 245.2 Tm -0.077 Tw -(SEdit will not call the file manager when it tries to refetch the)Tj -ET -570 252.98 0.99 -11.99 re -f -BT -10 0 0 10 282 233.2 Tm -0.1 Tw -[(definition it is editing. Instead, it will just continue to use the)]TJ -ET -570 240.98 0.99 -11.99 re -f -BT -10 0 0 10 282 221.2 Tm -0 Tw -(structure that it has.)Tj -ET -570 228.98 0.99 -11.99 re -f -BT -10 0 0 10 270 205.2 Tm -0.016 Tw -(:completion-fn - the function to be called when the edit session is)Tj -ET -570 216.98 0.99 -15.99 re -f -BT -10 0 0 10 282 193.2 Tm -0.072 Tw -[(completed. This function is called with the )]TJ -/TT6 1 Tf -19.5853 0 TD -0 Tw -(context)Tj -/TT2 1 Tf -3.2241 0 TD -(, )Tj -/TT6 1 Tf -0.6277 0 TD -(structure)Tj -/TT2 1 Tf -3.8901 0 TD -(,)Tj -ET -570 200.98 0.99 -11.99 re -f -BT -10 0 0 10 282 181.2 Tm -(and )Tj -/TT6 1 Tf -2.3673 0 TD -(changed?)Tj -/TT2 1 Tf -4.3931 0 TD -0.421 Tw -[( arguments. )]TJ -/TT6 1 Tf -7.0989 0 TD -0 Tw -(context)Tj -/TT2 1 Tf -3.2241 0 TD -0.421 Tw -[( is SEdits main data)]TJ -ET -570 188.98 0.99 -11.99 re -f -BT -10 0 0 10 282 169.2 Tm -0.133 Tw -(structure. )Tj -/TT6 1 Tf -4.9896 0 TD -0 Tw -(structure)Tj -/TT2 1 Tf -3.8901 0 TD -0.133 Tw -[( is the structure being edited. )]TJ -/TT6 1 Tf -14.3275 0 TD -0 Tw -(changed?)Tj -ET -570 176.98 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 282 157.2 Tm -0.078 Tw -(specifies if any changes have been made, and is one of NIL,)Tj -ET -570 164.98 0.99 -11.99 re -f -BT -10 0 0 10 282 145.2 Tm -0.053 Tw -(T, or :ABORT, where :ABORT means the user is aborting the)Tj -ET -570 152.98 0.99 -11.99 re -f -BT -10 0 0 10 282 133.2 Tm -0.164 Tw -[(edit and throwing away any changes made. If the value of)]TJ -ET -570 140.98 0.99 -11.99 re -f -BT -10 0 0 10 282 121.2 Tm -0.336 Tw -(this property is a list, the first element is treated as the)Tj -ET -570 128.98 0.99 -11.99 re -f -BT -10 0 0 10 282 109.2 Tm -0.213 Tw -(function, and the rest of the elements are extra arguments)Tj -ET -570 116.98 0.99 -11.99 re -f -BT -10 0 0 10 282 97.2 Tm -0.176 Tw -(that the function is applied to following the main arguments)Tj -ET -570 104.98 0.99 -11.99 re -f -BT -10 0 0 10 282 85.2 Tm -0 Tw -(above.)Tj -ET -570 92.98 0.99 -11.99 re -f -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -69 0 obj -<< -/Length 4150 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj -40.619 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 270 730.2 Tm -0.322 Tw -(:root-changed-fn - the function to be called when the entire)Tj -ET -570 741.98 0.99 -15.99 re -f -BT -10 0 0 10 282 718.2 Tm -0.098 Tw -[(structure being edited is replaced with a new structure. This)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 282 706.2 Tm -0.003 Tw -(function is called with the new structure as its argument. If the)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 282 694.2 Tm -0.132 Tw -(value of this property is a list, the first element is treated as)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 282 682.2 Tm -0.025 Tw -(the function, and the rest of the elements are extra arguments)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 282 670.2 Tm -0 Tw -(that the function is applied to following the structure argument. )Tj -ET -570 677.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 651.2 Tm -(options)Tj -/TT2 1 Tf -3.2246 0 TD -( is one or a list of any number of the followng keywords:)Tj -ET -570 665.98 0.99 -18.99 re -f -BT -10 0 0 10 270 635.2 Tm -0.248 Tw -(:close-on-completion - This option specifies that SEdit cannot)Tj -ET -570 646.98 0.99 -15.99 re -f -BT -10 0 0 10 282 623.2 Tm -0.269 Tw -[(remain active for multiple completions. That is, the SEdit)]TJ -ET -570 630.98 0.99 -11.99 re -f -BT -10 0 0 10 282 611.2 Tm -0.025 Tw -(window cannot be shrunk, and the completion commands that)Tj -ET -570 618.98 0.99 -11.99 re -f -BT -10 0 0 10 282 599.2 Tm -0.215 Tw -(normally leave the window open will in this case close the)Tj -ET -570 606.98 0.99 -11.99 re -f -BT -10 0 0 10 282 587.2 Tm -0 Tw -(window and terminate the edit.)Tj -ET -570 594.98 0.99 -11.99 re -f -BT -10 0 0 10 270 571.2 Tm -0.097 Tw -(:compile-on-completion - This option specifies that SEdit should)Tj -ET -570 582.98 0.99 -15.99 re -f -BT -10 0 0 10 282 559.2 Tm -0.282 Tw -(call the *compile-fn* to compile the definition being edited)Tj -ET -570 566.98 0.99 -11.99 re -f -BT -10 0 0 10 282 547.2 Tm -0.413 Tw -(upon completion, regardless of the completion command)Tj -ET -570 554.98 0.99 -11.99 re -f -BT -10 0 0 10 282 535.2 Tm -0 Tw -(used.)Tj -ET -570 542.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 507.64 Tm -(Warning with Declarations )Tj -ET -570 530.98 0.99 -25.99 re -f -54.01 504.49 m -558.01 504.49 l -S -570 504.98 0.99 -0.99 re -f -BT -10 0 0 10 258 489.2 Tm -(CAUTION: )Tj -/TT2 1 Tf -5.315 0 TD -0.149 Tw -(There is a feature of the BYTECOMPILER that is not)Tj -ET -570 503.98 0.99 -18.99 re -f -BT -10 0 0 10 258 477.2 Tm -0.11 Tw -[(supported by SEdit or the XCL compiler. It is possible to insert a)]TJ -ET -570 484.98 0.99 -11.99 re -f -BT -10 0 0 10 258 465.2 Tm -0 Tw -(comment at the beginning of your function that looks like)Tj -ET -570 472.98 0.99 -23.99 re -f -BT -10 0 0 10 270 441.2 Tm -(\(* DECLARATIONS: --\))Tj -ET -570 448.98 0.99 -23.99 re -f -BT -10 0 0 10 258 417.2 Tm -0.088 Tw -[(The tail, or -- section, of this comment is taken as a set of local)]TJ -ET -570 424.98 0.99 -11.99 re -f -BT -10 0 0 10 258 405.2 Tm -0.176 Tw -[(record declarations which are then used by the compiler in that)]TJ -ET -570 412.98 0.99 -11.99 re -f -BT -10 0 0 10 258 393.2 Tm -0.352 Tw -[(function just as if they had been declared globally. See the)]TJ -ET -570 400.98 0.99 -11.99 re -f -BT -10 0 0 10 258 381.2 Tm -0.377 Tw -("Compiler" section in Chapter 3 of these Notes for additional)Tj -ET -570 388.98 0.99 -11.99 re -f -BT -10 0 0 10 258 369.2 Tm -0 Tw -(behavior in XCL. )Tj -ET -570 376.98 0.99 -23.99 re -f -BT -10 0 0 10 258 338.2 Tm -0.105 Tw -(SEdit does not recognize such declarations. Thus, if the "Expand")Tj -ET -570 352.98 0.99 -18.99 re -f -BT -10 0 0 10 258 326.2 Tm -0.282 Tw -[(command is used, the expansion will not be done with these)]TJ -ET -570 333.98 0.99 -11.99 re -f -BT -10 0 0 10 258 314.2 Tm -0.133 Tw -[(record declarations in effect. The code that you see in SEdit will)]TJ -ET -570 321.98 0.99 -11.99 re -f -BT -10 0 0 10 258 302.2 Tm -0 Tw -(not be the same code compiled by the BYTECOMPILER.)Tj -ET -570 309.98 0.99 -11.99 re -f -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -72 0 obj -<< -/Length 349 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(B-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 316.8 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, SEDIT)Tj --26.28 74.479 TD -(APPENDIX B. SEDIT)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -12 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 40 -/Height 26 -/BitsPerComponent 1 -/ImageMask true -/Length 131 ->> -stream -?g -endstream -endobj -13 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 41 -/Height 27 -/BitsPerComponent 1 -/ImageMask true -/Length 163 ->> -stream -q{ -endstream -endobj -17 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 70 -/Height 22 -/BitsPerComponent 1 -/ImageMask true -/Length 199 ->> -stream -??~=ߺ߻߻ûo߻߻ -endstream -endobj -18 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 71 -/Height 28 -/BitsPerComponent 1 -/ImageMask true -/Length 253 ->> -stream -`wwww7O~~ -endstream -endobj -19 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 75 -/Height 25 -/BitsPerComponent 1 -/ImageMask true -/Length 251 ->> -stream -8}}}}w}_8߿ -endstream -endobj -20 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 69 -/Height 25 -/BitsPerComponent 1 -/ImageMask true -/Length 226 ->> -stream -A=___Co__A -endstream -endobj -25 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 73 -/Height 32 -/BitsPerComponent 1 -/ImageMask true -/Length 321 ->> -stream -oh0q k;kq -endstream -endobj -26 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 5 -/BitsPerComponent 1 -/ImageMask true -/Length 11 ->> -stream - -endstream -endobj -27 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 21 -/Height 15 -/BitsPerComponent 1 -/ImageMask true -/Length 46 ->> -stream -6w7 -endstream -endobj -49 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 207 -/Height 386 -/BitsPerComponent 1 -/ImageMask true -/Length 10037 ->> -stream -o߻ownv߻pwso[~ٵww|o[ߵzwnvv_z뎎_}ϟ?}ϟ?px{.?߿ooݻv߿Ϳ.mٿpo_߃poݻn_ow.?_oϟpϟpxc߁oonݻ߾fپpox߾poݻ_oчq_oϟpϟx<\߿onݕ۾_o<~_oϟ`ϟ o/߿o߿oٿo߿`_o/_oϟ`oϟop߾ono߾ooپ`poo߁ono_op_oϟ`ϟpwo7߾oپo߾o7_ox_oϟoϟ`w owonݻonٿon߿oflݻ_otx_oϟ`ϟ `w7<ow}mۿoٿ]o~8?߿o?ۿ_otx<_]ooϟ`?ϟ`w7ow}on{ono~no?flotxo{`?`wowwooootxow`oxw߾o߾pwwwz󷲿_zxt_}ϟ}ϟ"2#$FLQ"*"E"""MD"""DD"""DD3#2$dIl8@ -endstream -endobj -55 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 327 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 4183 ->> -stream -?????0p`93'&L9s?'&|9s<'&p9s8g 9s1&G9s3'&L9s8g N@???????3?3s?3s3s0ds?32s?32s0$r???????3I?g q`Nb@q3I?'&ONLLOnv3I?0~OIOv0`'<2xOO߃w3&I'<rpdAw<83&Hg?8qCv3&Hg?8OqIOnv0`}qw????0?777778 pALϜ&790'?9>|Ϝx33f79$3'?Ƀ9>pϜy3prd79$g'?ə1>as93s2d79 '??>GϜLϜs8ᓛ790 p>a?' };7770????0?7777?7d3Ϝq88< N`7>dɄ93Ϝ>a򓓜NNs7? Ʉ93>a󓓜<`s7?$ə9Ƀ>I󓓜|7$Ƀ93əI󓓜|d7? d93>󓓜dd93>󓓜qs7d930  7770???LFDdɀF& -$EDZȵ@EU$DDIDL$DDHDD$DDHDDI&dfDd8͘كD -endstream -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 150 -/Widths [278 0 355 556 0 0 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 0 0 556 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 74 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 474 556 0 889 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 333 333 0 0 0 0 -975 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 0 944 667 0 611 0 278 333 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 500 0 280 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 278 278 0 0 0 556 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 75 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 556 0 0 667 0 0 0 0 0 0 333 0 0 -0 556 556 556 0 0 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 722 0 0 0 0 278 0 0 0 833 0 0 -0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 0 0 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 76 0 R ->> -endobj -24 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 0 0 0 0 0 600 600 0 0 600 600 0 0 -0 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 600 0 600 0 600 0 0 600 600 600 0 -0 0 600 0 0 600 0 0 0 600 0 0 0 0 600 0 -0 600 0 600 600 600 600 600 600 600 0 0 600 600 600 600 -0 0 600 600 600 600 600 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 77 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -78 0 obj -<< -/S /D ->> -endobj -79 0 obj -<< -/Nums [0 78 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 14 0 R 21 0 R 28 0 R 31 0 R 34 0 R 37 0 R 40 0 R 43 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -51 0 obj -<< -/Type /Pages -/Kids [46 0 R 52 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R] -/Count 8 -/Parent 50 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [8 0 R 51 0 R ] -/Count 18 -/MediaBox [0 0 612 792] ->> -endobj -80 0 obj -<< -/CreationDate (D:20210119174359-06'00') -/ModDate (D:20210119174359-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -81 0 obj -<< -/Type /Catalog -/Pages 50 0 R -/PageLabels 79 0 R ->> -endobj -xref -0 82 -0000000000 65535 f -0000116119 00000 n -0000000016 00000 n -0000004134 00000 n -0000114086 00000 n -0000114653 00000 n -0000115228 00000 n -0000113149 00000 n -0000117685 00000 n -0000116199 00000 n -0000004251 00000 n -0000008124 00000 n -0000095784 00000 n -0000096055 00000 n -0000116281 00000 n -0000008278 00000 n -0000011827 00000 n -0000096358 00000 n -0000096697 00000 n -0000097090 00000 n -0000097481 00000 n -0000116364 00000 n -0000012005 00000 n -0000017047 00000 n -0000115649 00000 n -0000097847 00000 n -0000098308 00000 n -0000098457 00000 n -0000116447 00000 n -0000017236 00000 n -0000023306 00000 n -0000116530 00000 n -0000023413 00000 n -0000029213 00000 n -0000116613 00000 n -0000029320 00000 n -0000035255 00000 n -0000116696 00000 n -0000035362 00000 n -0000041193 00000 n -0000116779 00000 n -0000041300 00000 n -0000048199 00000 n -0000116862 00000 n -0000048306 00000 n -0000052050 00000 n -0000116945 00000 n -0000052157 00000 n -0000054909 00000 n -0000098642 00000 n -0000117943 00000 n -0000117820 00000 n -0000117029 00000 n -0000055064 00000 n -0000060396 00000 n -0000108823 00000 n -0000117113 00000 n -0000060539 00000 n -0000068700 00000 n -0000117197 00000 n -0000068818 00000 n -0000075919 00000 n -0000117281 00000 n -0000076037 00000 n -0000082914 00000 n -0000117365 00000 n -0000083044 00000 n -0000090848 00000 n -0000117449 00000 n -0000090966 00000 n -0000095169 00000 n -0000117533 00000 n -0000095287 00000 n -0000095688 00000 n -0000113289 00000 n -0000113484 00000 n -0000113690 00000 n -0000113895 00000 n -0000117617 00000 n -0000117645 00000 n -0000118034 00000 n -0000118166 00000 n -trailer -<< -/Size 82 -/Root 81 0 R -/Info 80 0 R -/ID [<4c413b446849e1fa1a0b5cb5e8bfdf6e><4c413b446849e1fa1a0b5cb5e8bfdf6e>] ->> -startxref -118236 -%%EOF diff --git a/docs/ReleaseNote/APPENDIXC-ICONW.pdf b/docs/ReleaseNote/APPENDIXC-ICONW.pdf deleted file mode 100644 index 2d989d32..00000000 --- a/docs/ReleaseNote/APPENDIXC-ICONW.pdf +++ /dev/null @@ -1,1844 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6470 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 541.89 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(C-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ICONW)Tj -/TT4 1 Tf -18 0 0 18 365.97 762.97 Tm -(APPENDIX C. ICONW)Tj -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -10 0 0 10 258 705.2 Tm -(ICONW)Tj -/TT2 1 Tf -3.4438 0 TD -0.055 Tw -[(, used to build small windows that will appear as icons on)]TJ -ET -570 752.98 0.99 -51.99 re -f -BT -10 0 0 10 258 693.2 Tm -0.08 Tw -[(the display, is a standard input/output feature. This feature was)]TJ -ET -570 700.98 0.99 -11.99 re -f -BT -10 0 0 10 258 681.2 Tm -0.317 Tw -[(introduced in Lyric and has been enhanced in Medley. The)]TJ -ET -570 688.98 0.99 -11.99 re -f -BT -10 0 0 10 258 669.2 Tm -0.262 Tw -(following description of)Tj -/TT4 1 Tf -10.6407 0 TD -[( ICONW)]TJ -/TT2 1 Tf -3.9837 0 TD -[( should be appended to Section)]TJ -ET -570 676.98 0.99 -11.99 re -f -BT -10 0 0 10 258 657.2 Tm -0.249 Tw -(28.4, Windows, of the )Tj -/TT6 1 Tf -10.89 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.5039 0 TD -[(. Medley)]TJ -ET -570 664.98 0.99 -11.99 re -f -BT -10 0 0 10 258 645.2 Tm -0 Tw -(changes are indicated with revision bars in the right margin.)Tj -ET -570 652.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 617.64 Tm -(28.4.16 Creating Icons with ICONW)Tj -ET -1 w -54.01 614.49 m -558.01 614.49 l -S -BT -10 0 0 10 258 599.2 Tm -(ICONW)Tj -/TT2 1 Tf -3.4438 0 TD -0.038 Tw -[( is a group of functions available for building small windows)]TJ --3.4438 -1.2 TD -0.0697 Tw -[(of arbitrary shape. These windows are principally for use as icons)]TJ -T* -0.082 Tw -(for shrinking windows; i.e., these functions are likely to be invoked)Tj -T* -0.307 Tw -(from within the)Tj -/TT4 1 Tf -7.1164 0 TD -[( ICONFN)]TJ -/TT2 1 Tf -4.4178 0 TD -[( of a window. An icon is specified by)]TJ --11.5343 -1.2 TD -0.054 Tw -(supplying its image \(a bitmap\) and a mask that specifies its shape.)Tj -T* -0.041 Tw -(The mask is a bitmap of the same dimensions as the image whose)Tj -T* -0.031 Tw -(bits are on \(black\) in those positions considered to be in the image,)Tj -T* -0.252 Tw -(and off \(white\) in those positions where the background should)Tj -T* -0.382 Tw -[(show through. By using the mask and appropriate window)]TJ -T* -0 Tw -(functions,)Tj -/TT4 1 Tf -4.2803 0 TD -0.233 Tw -[( ICONW)]TJ -/TT2 1 Tf -3.9547 0 TD -[( maintains the illusion that the icon window is)]TJ --8.235 -1.2 TD -0.019 Tw -(nonrectangular, even though the actual window itself is rectangular.)Tj -T* -0.11 Tw -[(The illusion is not complete, of course. For example, if you try to)]TJ -T* -0.258 Tw -(select what looks like the background \(or an occluded window\))Tj -T* -0.177 Tw -(around the icon but still within its rectangular perimeter, the icon)Tj -T* -0.068 Tw -[(window itself is selected. Also, if you move a window occluded by)]TJ -T* -0.362 Tw -(an icon, the icon never notices that the background changed)Tj -T* -0.009 Tw -(behind it. Icons created with)Tj -/TT4 1 Tf -12.432 0 TD -[( ICONW)]TJ -/TT2 1 Tf -3.7307 0 TD -[( can also have titles; some part)]TJ --16.1627 -1.2 TD -0.039 Tw -(of the image can be filled with text computed at the time the icon is)Tj -T* -0 Tw -(created, or text may be changed after creation.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(28.4.16.1 Creating Icons)Tj -ET -54.01 358.49 m -558.01 358.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 343.2 Tm -0.299 Tw -(Two types of icons can be created with)Tj -/TT4 1 Tf -19.324 0 TD -[( ICONW)]TJ -/TT2 1 Tf -4.0207 0 TD -(, a borderless)Tj --23.3446 -1.2 TD -0.0538 Tw -[(window containing an image defined by a mask and a window with)]TJ -T* -0 Tw -(a title.)Tj -/TT4 1 Tf --13.2 -1.9 TD -(\(ICONW )Tj -/TT6 1 Tf -4.0547 0 TD -(IMAGE MASK POSITION NOOPENFLG)Tj -/TT4 1 Tf -17.9473 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-15084.4( [Function])]TJ -ET -126.01 297.49 m -558.01 297.49 l -S -BT -10 0 0 10 258 282.2 Tm -0.377 Tw -(Creates a window at )Tj -/TT6 1 Tf -10.8459 0 TD -0 Tw -(POSITION)Tj -/TT2 1 Tf -4.7783 0 TD -0.377 Tw -(, or prompts for a position if)Tj -/TT6 1 Tf --15.6242 -1.2 TD -0 Tw -(POSITION)Tj -/TT2 1 Tf -4.7783 0 TD -0.302 Tw -[( is )]TJ -/TT4 1 Tf -2.4617 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.302 Tw -[(. The window is borderless, and filled with)]TJ -/TT6 1 Tf --8.8508 -1.2 TD -0 Tw -(IMAGE)Tj -/TT2 1 Tf -3.2227 0 TD -0.212 Tw -(, as cookie-cut by )Tj -/TT6 1 Tf -8.9071 0 TD -0 Tw -(MASK)Tj -/TT2 1 Tf -2.834 0 TD -0.212 Tw -[(. If )]TJ -/TT6 1 Tf -2.303 0 TD -0 Tw -(MASK)Tj -/TT2 1 Tf -2.834 0 TD -0.212 Tw -[( is )]TJ -/TT4 1 Tf -1.7018 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.212 Tw -(, the image is)Tj --23.4134 -1.2 TD -0.01 Tw -(considered rectangular \(i.e., )Tj -/TT6 1 Tf -12.7033 0 TD -0 Tw -(MASK)Tj -/TT2 1 Tf -2.834 0 TD -0.01 Tw -[( defaults to a black bitmap of the)]TJ --15.5373 -1.2 TD -0.06 Tw -(same dimensions as )Tj -/TT6 1 Tf -9.5731 0 TD -0 Tw -(IMAGE)Tj -/TT2 1 Tf -3.2227 0 TD -0.06 Tw -[(\). If )]TJ -/TT6 1 Tf -2.18 0 TD -0 Tw -(NOOPENFLG)Tj -/TT2 1 Tf -6.2788 0 TD -0.06 Tw -[( is )]TJ -/TT4 1 Tf -1.3978 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.06 Tw -(, the window is)Tj --23.2632 -1.2 TD -0 Tw -(returned unopened.)Tj -/TT4 1 Tf --13.2 -1.9 TD -(\(TITLEDICONW )Tj -/TT6 1 Tf -8.2172 0 TD -0.663 Tw -[(ICON TITLE FONT POSITION NOOPENFLG JUST BREAKCHARS)]TJ -30.1828 -1.2 TD -0 Tw -(OPERATI)Tj -T* -(ON)Tj -/TT4 1 Tf -1.5 0 TD -(\))Tj -/TT2 1 Tf --1.5 -1.2 TD -([Function])Tj -ET -126.01 162.49 m -558.01 162.49 l -S -BT -10 0 0 10 258 147.2 Tm -0.262 Tw -(Creates a titled icon at)Tj -/TT6 1 Tf -10.9977 0 TD -[( POSITION)]TJ -/TT2 1 Tf -5.3182 0 TD -(, or prompts for a position if)Tj -/TT6 1 Tf --16.3159 -1.2 TD -0 Tw -(POSITION)Tj -/TT2 1 Tf -4.7783 0 TD -0.138 Tw -[( is )]TJ -/TT4 1 Tf -1.9697 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.138 Tw -[(. If )]TJ -/TT6 1 Tf -2.081 0 TD -0 Tw -(NOOPENFLG)Tj -/TT2 1 Tf -6.2788 0 TD -0.138 Tw -[( is )]TJ -/TT4 1 Tf -1.5538 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.138 Tw -(, the window is returned)Tj --18.8833 -1.2 TD -0.343 Tw -[(unopened. The argument )]TJ -/TT6 1 Tf -13.1581 0 TD -0 Tw -(ICON)Tj -/TT2 1 Tf -2.5 0 TD -0.343 Tw -[( is an instance of the record)]TJ -/TT4 1 Tf --15.6581 -1.2 TD -0 Tw -(TITLEDICON)Tj -/TT2 1 Tf -5.9995 0 TD -0.184 Tw -(, which specifies the icon image and mask, as with)Tj -/TT4 1 Tf --5.9995 -1.2 TD -0 Tw -(ICONW)Tj -/TT2 1 Tf -3.4438 0 TD -0.013 Tw -(, and a region within the image to be used for displaying the)Tj --3.4438 -1.2 TD -0 Tw -(title. Thus, the )Tj -/TT6 1 Tf -6.8364 0 TD -(ICON)Tj -/TT2 1 Tf -2.5 0 TD -( argument is usually of the form)Tj -/TT8 1 Tf --9.3364 -1.571 TD -(\(create TITLEDICON ICON )Tj -/TT9 1 Tf -15.6025 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( someIconImage)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -12 0 obj -<< -/Length 8628 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(C-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 309.03 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, ICONW)Tj --25.503 74.479 TD -(APPENDIX C. ICONW)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 731.49 Tm -(MASK )Tj -/TT9 1 Tf -3.0005 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( iconMask TITLEREG )Tj -/TT9 1 Tf -12.0019 0 TD -<0040>Tj -/TT8 1 Tf --15.9893 -1 TD -(someRegionWithinICON\))Tj -/TT2 1 Tf -0 -1.829 TD -0.1 Tw -(The title region is specified in coordinates relative to the icon, i.e.,)Tj -0 -1.2 TD -0.106 Tw -[(the lower-left corner of the image bitmap is \(0, 0\). The mask can)]TJ -T* -0 Tw -(be )Tj -/TT4 1 Tf -1.4191 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.029 Tw -[( if the icon is rectangular. The image should be white where)]TJ --3.03 -1.2 TD -0.16 Tw -(it is covered by the title region. )Tj -/TT4 1 Tf -14.9047 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.16 Tw -[( clears the region)]TJ --21.848 -1.2 TD -0.091 Tw -(before printing on it. The title is printed into the specified region in)Tj -T* -0.09 Tw -(the image, using )Tj -/TT6 1 Tf -7.8857 0 TD -0 Tw -(FONT)Tj -/TT2 1 Tf -2.7217 0 TD -0.09 Tw -[(. If )]TJ -/TT6 1 Tf -1.937 0 TD -0 Tw -(FONT)Tj -/TT2 1 Tf -2.7217 0 TD -0.09 Tw -[( is )]TJ -/TT4 1 Tf -1.4578 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.09 Tw -[( it defaults to the value of)]TJ -/TT4 1 Tf --18.3347 -1.2 TD -0 Tw -(DEFAULTICONFONT)Tj -/TT2 1 Tf -9.8877 0 TD -0.018 Tw -[(, initially Helvetica 10. The title is broken into)]TJ --9.8877 -1.2 TD -0.193 Tw -(multiple lines if necessary; )Tj -/TT4 1 Tf -12.7212 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.193 Tw -[( attempts to place the)]TJ --19.6646 -1.2 TD -0.454 Tw -(breaks at characters that are in the list of character codes)Tj -/TT6 1 Tf -T* -0 Tw -(BREAKCHARS)Tj -/TT2 1 Tf -6.8906 0 TD -0.008 Tw -(. )Tj -/TT6 1 Tf -0.8495 0 TD -0 Tw -(BREAKCHARS)Tj -/TT2 1 Tf -6.8906 0 TD -0.008 Tw -[( defaults to )]TJ -/TT4 1 Tf -5.1939 0 TD -(\(CHARCODE \(SPACE)Tj --19.8247 -1.2 TD -0.144 Tw -( \)\))Tj -/TT2 1 Tf -1.644 0 TD -[(. In addition, line breaks are forced by any carriage returns in)]TJ -/TT6 1 Tf --1.644 -1.2 TD -0 Tw -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -0.086 Tw -(, independent of )Tj -/TT6 1 Tf -7.7087 0 TD -0 Tw -(BREAKCHARS)Tj -/TT2 1 Tf -6.8906 0 TD -0.086 Tw -(. )Tj -/TT6 1 Tf -1.0055 0 TD -0 Tw -(BREAKCHARS)Tj -/TT2 1 Tf -6.8906 0 TD -0.086 Tw -[( is ignored)]TJ --25.2181 -1.2 TD -0.166 Tw -[(if a long title would not otherwise fit in the specified region. For)]TJ -T* -0 Tw -(convenience, )Tj -/TT6 1 Tf -6.2109 0 TD -(BREAKCHARS)Tj -/TT2 1 Tf -6.8906 0 TD -0.04 Tw -[( = )]TJ -/TT4 1 Tf -1.2197 0 TD -0 Tw -(FILE)Tj -/TT2 1 Tf -2.1665 0 TD -0.04 Tw -[( means the title is a file name,)]TJ --16.4877 -1.2 TD -0.027 Tw -(so break at file name field delimiters. The argument )Tj -/TT6 1 Tf -23.2537 0 TD -0 Tw -(JUST)Tj -/TT2 1 Tf -2.5 0 TD -0.027 Tw -[( indicates)]TJ --25.7537 -1.2 TD -0.05 Tw -[(how the text should be justified relative to the region. It is an atom)]TJ -T* -0.233 Tw -(or list of atoms chosen from )Tj -/TT4 1 Tf -13.9581 0 TD -0 Tw -(TOP)Tj -/TT2 1 Tf -2.0557 0 TD -(, )Tj -/TT4 1 Tf -0.7887 0 TD -(BOTTOM)Tj -/TT2 1 Tf -4.3325 0 TD -(, )Tj -/TT4 1 Tf -0.7887 0 TD -(LEFT)Tj -/TT2 1 Tf -2.4995 0 TD -0.233 Tw -(, or )Tj -/TT4 1 Tf -2.1887 0 TD -0 Tw -(RIGHT)Tj -/TT2 1 Tf -3.1108 0 TD -(,)Tj --29.7226 -1.2 TD -0.01 Tw -(which indicate the vertical positioning \(flush to top or bottom\) and/or)Tj -T* -0.0001 Tc -0.0049 Tw -(horizontal positioning \(flush to left edge or right\). If )Tj -/TT6 1 Tf -22.7844 0 TD -0 Tc -0 Tw -(JUST)Tj -/TT2 1 Tf -2.5 0 TD -0.0017 Tc -0.0033 Tw -( = )Tj -/TT4 1 Tf -1.1496 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.005 Tw -(, the)Tj --28.0449 -1.2 TD -0.19 Tw -(text is centered. The argument )Tj -/TT6 1 Tf -14.7903 0 TD -0 Tw -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -0.19 Tw -[( is a display stream)]TJ --20.68 -1.2 TD -0.021 Tw -[(operation indicating how the title should be printed. If )]TJ -/TT6 1 Tf -24.1143 0 TD -0 Tw -(OPERATION)Tj -/TT2 1 Tf --24.1143 -1.2 TD -(is)Tj -/TT4 1 Tf -0.7222 0 TD -0.243 Tw -[( INVERT)]TJ -/TT2 1 Tf -4.1878 0 TD -[(, then the title is printed white-on-black. The default)]TJ -/TT6 1 Tf --4.91 -1.2 TD -0 Tw -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -0.237 Tw -[( is )]TJ -/TT4 1 Tf -1.7518 0 TD -0 Tw -(REPLACE)Tj -/TT2 1 Tf -4.7783 0 TD -0.237 Tw -(, meaning black-on-white. )Tj -/TT4 1 Tf -12.8982 0 TD -0 Tw -(ERASE)Tj -/TT2 1 Tf -3.4453 0 TD -0.237 Tw -[( is)]TJ --28.7633 -1.2 TD -0 Tw -(the same as )Tj -/TT4 1 Tf -5.7251 0 TD -(INVERT)Tj -/TT2 1 Tf -3.667 0 TD -(; )Tj -/TT4 1 Tf -0.5557 0 TD -(PAINT)Tj -/TT2 1 Tf -3 0 TD -( is the same as )Tj -/TT4 1 Tf -7.0029 0 TD -(REPLACE)Tj -/TT2 1 Tf -4.7783 0 TD -(.)Tj --24.729 -1.9 TD -0.054 Tw -(For convenience, )Tj -/TT4 1 Tf -8.0567 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.054 Tw -[( can also be used to create icons)]TJ --15.0001 -1.2 TD -0.05 Tw -[(that consist solely of a title, with no special image. If the argument)]TJ -/TT6 1 Tf -T* -0 Tw -(ICON)Tj -/TT2 1 Tf -2.5 0 TD -0.353 Tw -[( is )]TJ -/TT4 1 Tf -1.9838 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, )Tj -/TT4 1 Tf -0.9087 0 TD -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.353 Tw -[( creates a rectangular icon large)]TJ --13.9467 -1.2 TD -0.016 Tw -(enough to contain )Tj -/TT6 1 Tf -8.277 0 TD -0 Tw -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -0.016 Tw -(, with a border the same width as that on a)Tj --10.9997 -1.2 TD -0.011 Tw -[(regular window. The remaining arguments are as described above,)]TJ -T* -0 Tw -(except that a )Tj -/TT6 1 Tf -6.0039 0 TD -(JUST)Tj -/TT2 1 Tf -2.5 0 TD -( of )Tj -/TT4 1 Tf -1.3896 0 TD -(TOP)Tj -/TT2 1 Tf -2.0557 0 TD -( or )Tj -/TT4 1 Tf -1.4448 0 TD -(BOTTOM)Tj -/TT2 1 Tf -4.3325 0 TD -( is not meaningful.)Tj --17.7266 -1.9 TD -0.079 Tw -(In the Medley release, )Tj -/TT4 1 Tf -10.4327 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.079 Tw -[( can create icons with white)]TJ -ET -570 343.98 0.99 -18.99 re -f -BT -10 0 0 10 258 317.2 Tm -0.184 Tw -[(text on a black background. To get this effect, your icon image)]TJ -ET -570 324.98 0.99 -11.99 re -f -BT -10 0 0 10 258 305.2 Tm -0.352 Tw -(must be black in the correct area, and you must specify the)Tj -ET -570 312.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 293.2 Tm -0 Tw -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -( argument as INVERT. )Tj -ET -570 300.98 0.99 -11.99 re -f -BT -10 0 0 10 258 274.2 Tm -(In Medley, you can copy- select the title of an icon. )Tj -ET -570 288.98 0.99 -37.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 233.2 Tm -(28.4.16.2 Modifying Icons)Tj -ET -54.01 230.49 m -558.01 230.49 l -S -BT -10 0 0 10 126 215.2 Tm -0.0001 Tc -(\(ICONW.TITLE )Tj -/TT6 1 Tf -7.1108 0 TD -0 Tc -(ICON TITLE)Tj -/TT4 1 Tf -5.5005 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -25.5868 Tw -[( [Function])]TJ -ET -126.01 210.49 m -558.01 210.49 l -S -BT -10 0 0 10 258 195.2 Tm -0.241 Tw -(Returns the current title of the window )Tj -/TT6 1 Tf -18.751 0 TD -0 Tw -(ICON)Tj -/TT2 1 Tf -2.5 0 TD -0.241 Tw -(, which must be a)Tj --21.251 -1.2 TD -0.132 Tw -(window returned by )Tj -/TT4 1 Tf -9.3452 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.132 Tw -[(. In addition, if )]TJ -/TT6 1 Tf -7.4417 0 TD -0 Tw -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -0.132 Tw -[( is non-)]TJ -/TT4 1 Tf --26.453 -1.2 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.302 Tw -(, makes )Tj -/TT6 1 Tf -4.3828 0 TD -0 Tw -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -0.302 Tw -[( the new title of the window and repaints it)]TJ --8.7163 -1.2 TD -0 Tw -(accordingly. To erase the current title, make )Tj -/TT6 1 Tf -20.0088 0 TD -(TITLE)Tj -/TT2 1 Tf -2.7227 0 TD -( a null string.)Tj -/TT4 1 Tf --35.9314 -1.9 TD -(\(ICONW.SHADE )Tj -/TT6 1 Tf -7.8328 0 TD -(WINDOW SHADE)Tj -/TT4 1 Tf -8.1108 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-21976.7([Function])]TJ -ET -126.01 135.49 m -558.01 135.49 l -S -BT -10 0 0 10 258 120.2 Tm -0.065 Tw -(Returns the current shading of the window)Tj -/TT4 1 Tf -19.1229 0 TD -[( ICON)]TJ -/TT2 1 Tf -2.8428 0 TD -(, which must be a)Tj --21.9657 -1.2 TD -0.244 Tw -(window returned by )Tj -/TT4 1 Tf -9.6812 0 TD -0 Tw -(ICONW)Tj -/TT2 1 Tf -3.4438 0 TD -0.244 Tw -[( or )]TJ -/TT4 1 Tf -1.9328 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.244 Tw -[(. In addition, if)]TJ -/TT6 1 Tf --22.0012 -1.2 TD -0 Tw -(SHADE)Tj -/TT2 1 Tf -3.4453 0 TD -0.216 Tw -[( is non-)]TJ -/TT4 1 Tf -3.7113 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.216 Tw -(, paints the texture )Tj -/TT6 1 Tf -9.3689 0 TD -0 Tw -(SHADE)Tj -/TT2 1 Tf -3.4453 0 TD -0.216 Tw -[( on )]TJ -/TT6 1 Tf -2.1 0 TD -0 Tw -(WINDOW)Tj -/TT2 1 Tf -4.3877 0 TD -0.216 Tw -[(. A)]TJ --28.0693 -1.2 TD -0.003 Tw -(typical use for this function is to communicate a change of state in a)Tj -T* -0.4 Tw -[(window that is shrunken, without reopening the window. To)]TJ -T* -0 Tw -(remove any shading, make )Tj -/TT6 1 Tf -12.2842 0 TD -(SHADE)Tj -/TT2 1 Tf -3.4453 0 TD -( be )Tj -/TT4 1 Tf -1.668 0 TD -(WHITESHADE)Tj -/TT2 1 Tf -6.7222 0 TD -(.)Tj -ET -endstream -endobj -13 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -15 0 obj -<< -/Length 4062 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 541.89 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(C-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ICONW)Tj -40.065 74.479 TD -(APPENDIX C. ICONW)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(28.4.16.3 Default Icons)Tj -ET -54.01 727.49 m -558.01 727.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 712.2 Tm -0.338 Tw -(When you shrink a window that has no )Tj -/TT4 1 Tf -20.1024 0 TD -0 Tw -(ICONFN)Tj -/TT2 1 Tf -3.833 0 TD -0.338 Tw -(, the system)Tj --23.9354 -1.2 TD -0.05 Tw -[(currently creates an icon that looks like the windows title bar. You)]TJ -T* -0.276 Tw -(can make the system instead create titled icons by setting the)Tj -T* -0 Tw -(global variable)Tj -/TT4 1 Tf -6.4487 0 TD -( DEFAULTICONFN )Tj -/TT2 1 Tf -9.0547 0 TD -(to the value )Tj -/TT4 1 Tf -5.4482 0 TD -(TEXTICON)Tj -/TT2 1 Tf -5.0557 0 TD -(.)Tj -/TT4 1 Tf --39.2073 -1.9 TD -(\(TEXTICON )Tj -/TT6 1 Tf -5.6665 0 TD -(WINDOW TEXT)Tj -/TT4 1 Tf -7.2212 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -[( )-25032.6([Function])]TJ -ET -126.01 652.49 m -558.01 652.49 l -S -BT -10 0 0 10 258 637.2 Tm -0.413 Tw -(Creates a titled icon window for the main window )Tj -/TT6 1 Tf -25.6164 0 TD -0 Tw -(WINDOW)Tj -/TT2 1 Tf --25.6164 -1.2 TD -(containing the text )Tj -/TT6 1 Tf -8.3945 0 TD -(TEXT)Tj -/TT2 1 Tf -2.5557 0 TD -(, or the windows title if )Tj -/TT6 1 Tf -10.3374 0 TD -(TEXT)Tj -/TT2 1 Tf -2.5557 0 TD -( is )Tj -/TT4 1 Tf -1.2778 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(.)Tj -/TT4 1 Tf --39.9319 -1.9 TD -(DEFAULTTEXTICON)Tj -/TT2 1 Tf -9.7217 0 TD -[( )-28698.7([Variable])]TJ -ET -126.01 601.49 m -558.01 601.49 l -S -BT -10 0 0 10 258 586.2 Tm -0.129 Tw -(The value that )Tj -/TT4 1 Tf -7.0022 0 TD -0 Tw -(TEXTICON)Tj -/TT2 1 Tf -5.0557 0 TD -0.129 Tw -[( passes to )]TJ -/TT4 1 Tf -5.2229 0 TD -0 Tw -(TITLEDICONW)Tj -/TT2 1 Tf -6.9434 0 TD -0.129 Tw -[( as its )]TJ -/TT6 1 Tf -3.2766 0 TD -0 Tw -(ICON)Tj -/TT2 1 Tf --27.5008 -1.2 TD -0.567 Tw -[(argument. Initially it is )]TJ -/TT4 1 Tf -13.0054 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.567 Tw -(, which creates an unadorned)Tj --14.6162 -1.2 TD -0.194 Tw -[(rectangular window. However, you can set it to a )]TJ -/TT4 1 Tf -24.0064 0 TD -0 Tw -(TITLEDICON)Tj -/TT2 1 Tf --24.0064 -1.2 TD -0.161 Tw -(record of your choosing if you would like default icons to have a)Tj -T* -0 Tw -(different appearance.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(28.4.16.4 Sample Icons)Tj -ET -54.01 513.49 m -558.01 513.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 498.2 Tm -0.228 Tw -(The LispUsers StockIcons module contains a collection of icons)Tj -0 -1.2 TD -0 Tw -(and their masks usable with )Tj -/TT4 1 Tf -12.6172 0 TD -(ICONW)Tj -/TT2 1 Tf -3.4438 0 TD -(, including:)Tj --16.061 -1.9 TD -( )Tj -/TT4 1 Tf -1.2 0 TD -(FOLDER)Tj -/TT2 1 Tf -4.1108 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -( FOLDERMASK)Tj -/TT2 1 Tf -7.333 0 TD -( - a file folder)Tj -/TT4 1 Tf --13.1995 -1.9 TD -0.144 Tw -[()-849.9( PAPERICON)]TJ -/TT2 1 Tf -7.5671 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6997 0 TD -(PAPERICONMASK)Tj -/TT2 1 Tf -8.8896 0 TD -0.144 Tw -[( - a sheet of paper with the)]TJ --15.9565 -1.2 TD -0 Tw -(top right corner turned)Tj --1.2 -1.9 TD -()Tj -/TT4 1 Tf -0.3501 0 TD -0.5721 Tw -[( FILEDRAWER)]TJ -/TT2 1 Tf -7.5159 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(FILEDRAWERMASK)Tj -/TT2 1 Tf -9.6104 0 TD -( - front of a file drawer)Tj --18.032 -1.9 TD -()Tj -/TT4 1 Tf -0.3501 0 TD -0.5721 Tw -[( ENVELOPEICON)]TJ -/TT2 1 Tf -8.7957 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(ENVELOPEMASK)Tj -/TT2 1 Tf -8.3901 0 TD -( - envelope)Tj --18.0916 -1.9 TD -()Tj -/TT4 1 Tf -1.2 0 TD -(TITLED.FILEDRAWER)Tj -/TT2 1 Tf -10.4434 0 TD -0.577 Tw -[( - TitledIcon of the filedrawer front)]TJ --10.4434 -1.2 TD -0 Tw -(\(capacity, about three lines of 10-point text\))Tj --1.2 -1.9 TD -()Tj -/TT4 1 Tf -1.2 0 TD -(TITLED.FILEFOLDER)Tj -/TT2 1 Tf -10.0547 0 TD -0.264 Tw -[( - TitledIcon of the file folder \(capacity,)]TJ --10.0547 -1.2 TD -0 Tw -(about three lines of 10-point text\))Tj --1.2 -1.9 TD -()Tj -/TT4 1 Tf -1.2 0 TD -(TITLED.ENVELOPE)Tj -/TT2 1 Tf -9.2231 0 TD -0.105 Tw -[( - TitledIcon of the envelope \(capacity, one)]TJ --9.2231 -1.2 TD -0 Tw -(short line of 10-point text\))Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -18 0 obj -<< -/Length 351 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(C-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 309.03 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, ICONW)Tj --25.503 74.479 TD -(APPENDIX C. ICONW)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -9 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -20 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -21 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -22 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -23 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -24 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIKADD+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 25 0 R ->> -endobj -25 0 obj -<< -/Filter /FlateDecode -/Length 20020 -/Length1 39356 ->> -stream -HW}tovgvfwv8 -($CkE(`Bу4NK)ݷّffɆVI AS44RRJ-Rh[T#* Hg;3{7w oN~QYX܉s&}ߕ)pBA#P0ql0ѡX4x+# P$/6Ƿ>i!ZX7 7!c~{b7NςrX11pOt89ȗM.aM&ō D-de,l9nTҍc -VD1 hDNH21鏩ׂ@_R6h]_ ~1uIft 'nS>i 3Lfo>u'i/ ~_^LVI~?; HZ~$}RY)Dcf~`bl\bRh2m\n -Wڸ6kl\kS6>mc?qXg66l|Sz'⌸jMF O(F1+SE&ѐU͊!t5sg@K7?_/F\ җ%EcnL552鲚fU<>*%ʣ[ -)h #@1nٵU$4SkWLg6*6OmP-B Mv!.P"m Ń.P4 ?x8Α$;Di*2kM)[$~/]RU)Ck̄Lp FkI,[{]BHlj0>wvo-lpW{G;Yb;=ޕqy5QOXj]B&k=aaXOgYU:NVoqu,<8\,J೗ҙ{K(0S榁gP@AS]zD,YsWAorm2cgX^Jv[mcxg6b齊O*\=ˣ5xcsZs:m8Cv]-= Pa`s[Cu8vU|-m${&b?ԗ lǟŹgBV8Np-vH§ֵ@CRr DB 5I*kU NG 0-d+hԡۚ ﹳMRDHHh<~ٜ3.\0YXJwX e^& LH}2*$u֑1b{wkY n%i0˰Z[-d4 ~RlB;~/1 sۃ^@F%HV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W w4/;Ltw~߹{{`O Ɲz%Κ} DGepTTvHgSGfe9df.Spdb4qgܸXׂqkH{GækmS^ֵm˾}r5-٥:yWH :ΕrO?ugrNk貪s[<[abt߸^Xֺٙ*C]'N%jr~n++?-S_x]Aʏdѥ?>1 G+W{(imV^ep̎5˚SMGr++5RZ}kLͻj[' ʡ)WY>]pQW;v=Q~De"I'桩(#_5JRx",樸oL)0\T>{PJiI7-=^[Sn oTCɁl%Hq44,95jJQVM\(7Ϊqg4d\Q4^|nϪM(iS=Ɓ=׽&<ɅoՒ]?:S"GRdI < YR@@n>GCx?Nloy N$EN2}x^/my79zpoh羂+J9 旐8a `-XC(UӓnFj"{T r9lJ`aĥ3?$y5w"kgc-}ܣBB ȉZ[)ZYރ:n1d~y;{ 4i4r=i;m#C>@"i3FpZXus-kx%˴e -a]Ĝ2 -ǖrpu,!˔Ǟߓy\_aɥzU^:a#B#U+YRYz:7(ѓCMic[t~:ƖFo`֥a06)uR,p&8 -N&b}2rob 'x`u0| |Fc/HǠA0|hȣ߂`84rmלGA` 8|u2@ oh,8||E+t0dЛȝ+^&=G2y4 M= 쇾+:[c@ܣBׇ؛*~6'DecE]D=4^mAPCL52"Q$ -Ė-K}ksৌz~4$IJʏ~n%v%Sռ!Op;Zɓ%;Tzqzjnz-' ;uӗW?ɝC5ev<ɓIW%8iyYޜT}X"'q"8d0ˡ rji.߃Y3oRD 8iy3|̇]|aNć磛$[6)UH]llT -% kjkztg4q;JʐݻZ6iߝBsd*YTtZ))UPD_2vwNFc qUdž' KNjRAȒ'?NqO$B$?ֈ#ޜzd5Kn"q5#+8LVYl1VY[VYri\)2?6k9?^m/ϜX'̥sgM kj| u{l`ai$G,>"G&X<^ G| -endstream -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 333 278 278 -556 556 556 556 556 0 0 0 556 0 278 278 0 584 0 0 -0 667 667 722 722 667 611 0 722 278 0 0 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 20 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 255 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 278 0 -0 556 556 556 556 0 556 0 556 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 0 722 667 611 722 667 944 667 0 0 0 0 0 0 0 -0 556 0 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 778 0 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 350 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 -] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 21 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 0 722 667 611 722 0 944 667 0 0 0 0 0 0 0 -0 556 0 500 0 556 278 0 0 222 0 0 222 0 556 0 -556 0 333 500 278 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 22 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 0 600 600 600 0 600 0 600 0 600 600 600 600 600 -0 0 600 600 600 0 0 600 0 0 0 0 0 0 0 0 -0 600 0 600 0 600 0 600 600 600 0 600 0 600 600 600 -0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 23 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIKADD+Symbol -/Encoding /Identity-H -/DescendantFonts [ 26 0 R ] -/ToUnicode 27 0 R ->> -endobj -26 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIKADD+Symbol -/FontDescriptor 24 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -27 0 obj -<< -/Filter /FlateDecode -/Length 217 ->> -stream -HTPn0 {ꐀn9 \BC#'2aDpU޳{EMFGq+;N:d32m8w4zh!?p0\ -)!+!H-XgYծ-.AdMBYGA>oخjE7=|9Y,#ق#|&r_j} -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -11 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 13 0 R -/Contents 12 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -28 0 obj -<< -/S /D ->> -endobj -29 0 obj -<< -/Nums [0 28 0 R ] ->> -endobj -10 0 obj -<< -/Type /Pages -/Kids [1 0 R 11 0 R 14 0 R 17 0 R] -/Count 4 -/MediaBox [0 0 612 792] ->> -endobj -30 0 obj -<< -/CreationDate (D:20210119174400-06'00') -/ModDate (D:20210119174400-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -31 0 obj -<< -/Type /Catalog -/Pages 10 0 R -/PageLabels 29 0 R ->> -endobj -xref -0 32 -0000000000 65535 f -0000044190 00000 n -0000000016 00000 n -0000006538 00000 n -0000041467 00000 n -0000042004 00000 n -0000042739 00000 n -0000043158 00000 n -0000043555 00000 n -0000020230 00000 n -0000044591 00000 n -0000044271 00000 n -0000006677 00000 n -0000015358 00000 n -0000044355 00000 n -0000015498 00000 n -0000019613 00000 n -0000044439 00000 n -0000019731 00000 n -0000020134 00000 n -0000020370 00000 n -0000020565 00000 n -0000020771 00000 n -0000020976 00000 n -0000021167 00000 n -0000021357 00000 n -0000043697 00000 n -0000043900 00000 n -0000044523 00000 n -0000044551 00000 n -0000044694 00000 n -0000044826 00000 n -trailer -<< -/Size 32 -/Root 31 0 R -/Info 30 0 R -/ID [<0f2d8508dbfdc1ee7e5d8348f44a4de1><0f2d8508dbfdc1ee7e5d8348f44a4de1>] ->> -startxref -44896 -%%EOF diff --git a/docs/ReleaseNote/APPENDIXE-ERRSYS.pdf b/docs/ReleaseNote/APPENDIXE-ERRSYS.pdf deleted file mode 100644 index d0ac00b0..00000000 --- a/docs/ReleaseNote/APPENDIXE-ERRSYS.pdf +++ /dev/null @@ -1,12464 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5895 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -/TT4 1 Tf -18 0 0 18 289.91 726.97 Tm -(APPENDIX E. ERROR SYSTEM)Tj -ET -6 w -258.01 719.99 m -558.01 719.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 682.2 Tm -0.03 Tw -(This appendix replaces Chapter 24, Error System, of)Tj -/TT6 1 Tf -23.4986 0 TD -[( Common Lisp)]TJ -ET -570 696.98 0.99 -18.99 re -f -BT -10 0 0 10 258 670.2 Tm -0.411 Tw -(Implementation Notes, )Tj -/TT2 1 Tf -11.1047 0 TD -(Lyric Release)Tj -/TT6 1 Tf -6.4691 0 TD -0 Tw -(, )Tj -/TT2 1 Tf -0.9667 0 TD -0.411 Tw -(which replaced most of)Tj -ET -570 677.98 0.99 -11.99 re -f -BT -10 0 0 10 258 658.2 Tm -0.095 Tw -(Chapter 24, Errors, of )Tj -/TT6 1 Tf -10.2731 0 TD -(Common Lisp, the Language)Tj -/TT2 1 Tf -13.1268 0 TD -[(. Text shown)]TJ -ET -570 665.98 0.99 -11.99 re -f -BT -10 0 0 10 258 646.2 Tm -0.161 Tw -(with StrikeThru)Tj -ET -0.75 w -280.17 649.53 m -326.29 649.53 l -S -BT -10 0 0 10 326.29 646.2 Tm -[( is that text from the Lyric release that no longer)]TJ -ET -570 653.98 0.99 -11.99 re -f -BT -10 0 0 10 258 634.2 Tm -0.128 Tw -[(applies in Medley. Enhancements added in Medley are indicated)]TJ -ET -570 641.98 0.99 -11.99 re -f -BT -10 0 0 10 258 622.2 Tm -0 Tw -(with revision bars in the right margin. )Tj -ET -570 629.98 0.99 -11.99 re -f -BT -10 0 0 10 258 603.2 Tm -0.014 Tw -(The XCL error system has been updated to reflect the current ANSI)Tj -ET -570 617.98 0.99 -18.99 re -f -BT -10 0 0 10 258 591.2 Tm -0.246 Tw -(Common Lisp error system proposal. This version seems to be)Tj -ET -570 598.98 0.99 -11.99 re -f -BT -10 0 0 10 258 579.2 Tm -0.215 Tw -(gaining wide use in other Common Lisp implementations, so no)Tj -ET -570 586.98 0.99 -11.99 re -f -BT -10 0 0 10 258 567.2 Tm -0 Tw -(further major changes are anticipated.)Tj -ET -570 574.98 0.99 -11.99 re -f -BT -10 0 0 10 258 548.2 Tm -0.105 Tw -[(The Common Lisp error system is based on proposal number 18)]TJ -ET -570 562.98 0.99 -18.99 re -f -BT -10 0 0 10 258 536.2 Tm -0.116 Tw -[(for the Common Lisp error system. Deviations from this proposal)]TJ -ET -570 543.98 0.99 -11.99 re -f -BT -10 0 0 10 258 524.2 Tm -0.042 Tw -[(are noted. Since the Common Lisp error system has not yet been)]TJ -ET -570 531.98 0.99 -11.99 re -f -BT -10 0 0 10 258 512.2 Tm -0.492 Tw -(standardized, this system may change in future releases to)Tj -ET -570 519.98 0.99 -11.99 re -f -BT -10 0 0 10 258 500.2 Tm -0 Tw -(accommodate the final version of the Common Lisp error system.)Tj -ET -570 507.98 0.99 -11.99 re -f -BT -10 0 0 10 258 481.2 Tm -0.02 Tw -(If you have access to the ARPANet, a copy of this proposal may be)Tj -ET -570 495.98 0.99 -18.99 re -f -BT -10 0 0 10 258 469.2 Tm -0 Tw -(retrieved from MIT-AI.ARPA as the file "COMMON;COND18 TXT". )Tj -ET -570 476.98 0.99 -11.99 re -f -BT -10 0 0 10 258 450.2 Tm -0.232 Tw -[(All symbols described in the error system proposal that are not)]TJ -ET -570 464.98 0.99 -18.99 re -f -BT -10 0 0 10 258 438.2 Tm -0.868 Tw -(already in the "LISP" package are exported from the)Tj -ET -570 445.98 0.99 -11.99 re -f -BT -10 0 0 10 258 426.2 Tm -0.474 Tw -("CONDITIONS" package. In addition, the "XEROX-COMMON-)Tj -ET -570 433.98 0.99 -11.99 re -f -BT -10 0 0 10 258 414.2 Tm -0.286 Tw -(LISP" package exports these symbols, so you can make them)Tj -ET -570 421.98 0.99 -11.99 re -f -BT -10 0 0 10 258 402.2 Tm -0.023 Tw -(available either by using "XCL" or using "CONDITIONS", whichever)Tj -ET -570 409.98 0.99 -11.99 re -f -BT -10 0 0 10 258 390.2 Tm -0.11 Tw -[(is appropriate to your application. The distinction is made so that)]TJ -ET -570 397.98 0.99 -11.99 re -f -BT -10 0 0 10 258 378.2 Tm -0.07 Tw -(XCL extensions of the Common Lisp error system will be clear. All)Tj -ET -570 385.98 0.99 -11.99 re -f -BT -10 0 0 10 258 366.2 Tm -0 Tw -(unqualified symbols are assumed to be in the "LISP" package.)Tj -ET -570 373.98 0.99 -11.99 re -f -2 w -54.01 310.99 m -558.01 310.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 297.08 Tm -(Summary of Error System Changes)Tj -ET -1 w -54.01 293.49 m -558.01 293.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 259.2 Tm -0.068 Tw -(The semantics of HANDLER-BIND where multiple bindings are set)Tj -ET -570 273.98 0.99 -18.99 re -f -BT -10 0 0 10 258 247.2 Tm -0.437 Tw -(up or mutiple condition types are being handled are slightly)Tj -ET -570 254.98 0.99 -11.99 re -f -BT -10 0 0 10 258 235.2 Tm -0.326 Tw -(different. Old code that used this will probably not behave as)Tj -ET -570 242.98 0.99 -11.99 re -f -BT -10 0 0 10 258 223.2 Tm -0 Tw -(expected.)Tj -ET -570 230.98 0.99 -11.99 re -f -BT -10 0 0 10 258 204.2 Tm -0.027 Tw -(HANDLER-BIND and HANDLER-CASE \(a.k.a. CONDITION-CASE\))Tj -ET -570 218.98 0.99 -18.99 re -f -BT -10 0 0 10 258 192.2 Tm -0.119 Tw -(now always take a typespec instead of a list of condition types to)Tj -ET -570 199.98 0.99 -11.99 re -f -BT -10 0 0 10 258 180.2 Tm -0.125 Tw -(indicate the conditions to be handled. Old code that uses this will)Tj -ET -570 187.98 0.99 -11.99 re -f -BT -10 0 0 10 258 168.2 Tm -0.432 Tw -(only handle the first condition type in the list. The function,)Tj -ET -570 175.98 0.99 -11.99 re -f -BT -10 0 0 10 258 156.2 Tm -0.243 Tw -(CONDITIONS::CONVERT-HANDLER-CASE is provided to aid in)Tj -ET -570 163.98 0.99 -11.99 re -f -BT -10 0 0 10 258 144.2 Tm -0 Tw -(converting old code. It may be used as a mutation function in SEdit.)Tj -ET -570 151.98 0.99 -11.99 re -f -BT -10 0 0 10 258 125.2 Tm -0.451 Tw -(HANDLER-CASE now supports a :NO-ERROR option that is)Tj -ET -570 139.98 0.99 -18.99 re -f -BT -10 0 0 10 258 113.2 Tm -0.11 Tw -(executed if none of the other clauses are taken. This is handy for)Tj -ET -570 120.98 0.99 -11.99 re -f -BT -10 0 0 10 258 101.2 Tm -0.363 Tw -(writing code that depends on the normal completion of some)Tj -ET -570 108.98 0.99 -11.99 re -f -BT -10 0 0 10 258 89.2 Tm -0.042 Tw -(operation, for example, creating auxilliary files if a particular stream)Tj -ET -570 96.98 0.99 -11.99 re -f -BT -10 0 0 10 258 77.2 Tm -0 Tw -(is successfully opened.)Tj -ET -570 84.98 0.99 -11.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 5702 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.006 Tw -(SERIOUS-CONDITION no longer forces entry to the debugger. The)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.029 Tw -(function used to signal the condition now determines what happens)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.474 Tw -(if the condition is not handled. This means that SERIOUS-)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.099 Tw -(CONDITION has no more interesting properties and is likely to be)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0 Tw -(removed in the final version of the error standard.)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.38 Tw -(Several new condition types have been defined. Others have)Tj -ET -570 677.98 0.99 -18.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.369 Tw -(moved in the hierarchy. For example, ILLEGAL-GO is now a)Tj -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 639.2 Tm -0 Tw -(subtype of PROGRAM-ERROR.)Tj -ET -570 646.98 0.99 -11.99 re -f -BT -10 0 0 10 258 620.2 Tm -( No standard condition type has a default handler.)Tj -ET -570 634.98 0.99 -18.99 re -f -BT -10 0 0 10 258 601.2 Tm -0.533 Tw -(The standard debugger entry point is now called INVOKE-)Tj -ET -570 615.98 0.99 -18.99 re -f -BT -10 0 0 10 258 589.2 Tm -0 Tw -(DEBUGGER instead of DEBUG.)Tj -ET -570 596.98 0.99 -11.99 re -f -BT -10 0 0 10 258 570.2 Tm -0.11 Tw -(The syntax of DEFINE-CONDITION has been changed to make it)Tj -ET -570 584.98 0.99 -18.99 re -f -BT -10 0 0 10 258 558.2 Tm -2.221 Tw -(more like CLOS DEFCLASS. The function)Tj -ET -570 565.98 0.99 -11.99 re -f -BT -10 0 0 10 258 546.2 Tm -0.416 Tw -(CONDITIONS::CONVERT-OLD-DEFINE-CONDITION is provided)Tj -ET -570 553.98 0.99 -11.99 re -f -BT -10 0 0 10 258 534.2 Tm -0.029 Tw -(to aid in converting old code. It may be used as a mutation function)Tj -ET -570 541.98 0.99 -11.99 re -f -BT -10 0 0 10 258 522.2 Tm -0 Tw -(in SEdit.)Tj -ET -570 529.98 0.99 -11.99 re -f -BT -10 0 0 10 258 503.2 Tm -0.295 Tw -(Several DEFINE-CONDITION options have been merged, while)Tj -ET -570 517.98 0.99 -18.99 re -f -BT -10 0 0 10 258 491.2 Tm -0.024 Tw -(others have been removed. In particular, there are no more "instant)Tj -ET -570 498.98 0.99 -11.99 re -f -BT -10 0 0 10 258 479.2 Tm -0 Tw -(variables.")Tj -ET -570 486.98 0.99 -11.99 re -f -BT -10 0 0 10 258 460.2 Tm -0.313 Tw -(PROCEED-CASE has been replaced by RESTART-CASE. The)Tj -ET -570 474.98 0.99 -18.99 re -f -BT -10 0 0 10 258 448.2 Tm -0.344 Tw -(semantics of restarts have been cleaned up and several new)Tj -ET -570 455.98 0.99 -11.99 re -f -BT -10 0 0 10 258 436.2 Tm -0.026 Tw -(features added. Related functions, such as COMPUTE-PROCEED-)Tj -ET -570 443.98 0.99 -11.99 re -f -BT -10 0 0 10 258 424.2 Tm -0 Tw -(CASES, have been renamed appropriately.)Tj -ET -570 431.98 0.99 -11.99 re -f -BT -10 0 0 10 258 405.2 Tm -0.754 Tw -(INVOKE-PROCEED-CASE has been renamed to INVOKE-)Tj -ET -570 419.98 0.99 -18.99 re -f -BT -10 0 0 10 258 393.2 Tm -0 Tw -(RESTART.)Tj -ET -570 400.98 0.99 -11.99 re -f -BT -10 0 0 10 258 374.2 Tm -0.076 Tw -(DEFINE-PROCEED-FUNCTION has been removed, although XCL)Tj -ET -570 388.98 0.99 -18.99 re -f -BT -10 0 0 10 258 362.2 Tm -0 Tw -(will continue to support it for compatibility.)Tj -ET -570 369.98 0.99 -11.99 re -f -BT -10 0 0 10 258 343.2 Tm -0.065 Tw -(The arguments to a restarts report function are different. Old code)Tj -ET -570 357.98 0.99 -18.99 re -f -BT -10 0 0 10 258 331.2 Tm -0.125 Tw -(that used something other than a string for the report method will)Tj -ET -570 338.98 0.99 -11.99 re -f -BT -10 0 0 10 258 319.2 Tm -0 Tw -(not work correctly.)Tj -ET -570 326.98 0.99 -11.99 re -f -BT -10 0 0 10 258 300.2 Tm -0.135 Tw -(A distinction is now made between invoking a restart interactively)Tj -ET -570 314.98 0.99 -18.99 re -f -BT -10 0 0 10 258 288.2 Tm -0.014 Tw -(and simply invoking one. To this end, there is the function INVOKE-)Tj -ET -570 295.98 0.99 -11.99 re -f -BT -10 0 0 10 258 276.2 Tm -0.454 Tw -(RESTART-INTERACTIVELY and the :INTERACTIVE option to)Tj -ET -570 283.98 0.99 -11.99 re -f -BT -10 0 0 10 258 264.2 Tm -0 Tw -(RESTART-CASE.)Tj -ET -570 271.98 0.99 -11.99 re -f -BT -10 0 0 10 258 245.2 Tm -(RESTART-BIND, in analogy to HANDLER-BIND, has been added.)Tj -ET -570 259.98 0.99 -18.99 re -f -BT -10 0 0 10 258 226.2 Tm -0.047 Tw -(A new variable, *BREAK-ON-SIGNALS* exists to aid in debugging.)Tj -ET -570 240.98 0.99 -18.99 re -f -BT -10 0 0 10 258 214.2 Tm -0.152 Tw -(It is a generalization of *BREAK-ON-WARNINGS*. The latter has)Tj -ET -570 221.98 0.99 -11.99 re -f -BT -10 0 0 10 258 202.2 Tm -0 Tw -(been retained for compatibility.)Tj -ET -570 209.98 0.99 -11.99 re -f -BT -10 0 0 10 258 183.2 Tm -0.824 Tw -(The proceed function PROCEED has been changed to)Tj -ET -570 197.98 0.99 -18.99 re -f -BT -10 0 0 10 258 171.2 Tm -0 Tw -(CONTINUE.)Tj -ET -570 178.98 0.99 -11.99 re -f -BT -10 0 0 10 258 152.2 Tm -0.238 Tw -(Old compiled code will continue to work except in the following)Tj -ET -570 166.98 0.99 -18.99 re -f -BT -10 0 0 10 258 140.2 Tm -0 Tw -(cases, some of which have been mentioned above:)Tj -ET -570 147.98 0.99 -11.99 re -f -BT -10 0 0 10 258 121.2 Tm -0.191 Tw -[( A proceed cases report function was not a simple string. Such)]TJ -ET -570 135.98 0.99 -18.99 re -f -BT -10 0 0 10 258 109.2 Tm -0.412 Tw -(code can cause stack overflow trying to report the condition)Tj -ET -570 116.98 0.99 -11.99 re -f -BT -10 0 0 10 258 97.2 Tm -0.096 Tw -(\(*STANDARD-OUTPUT* ends up being bound to NIL\). Such code)Tj -ET -570 104.98 0.99 -11.99 re -f -BT -10 0 0 10 258 85.2 Tm -0 Tw -(should be rewritten.)Tj -ET -570 92.98 0.99 -11.99 re -f -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 6659 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.059 Tw -(A handler binding is made to a list of condition types. Only the first)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(type in the list will be handled.)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 699.2 Tm -0.221 Tw -(Multiple handler bindings were created by the same HANDLER-)Tj -ET -570 713.98 0.99 -18.99 re -f -BT -10 0 0 10 258 687.2 Tm -0.06 Tw -(BIND or HANDLER-CASE. Such code will work as expected, but if)Tj -ET -570 694.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.272 Tw -(recompiled in Medley, will not. To get the effect of the current)Tj -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0 Tw -(semantics, you must use nested HANDLER-BINDs.)Tj -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 641.2 Tm -0.143 Tw -(Under the new error system,)Tj -/TT8 1 Tf -13.1877 0 TD -0.308 Tw -[( use-value )]TJ -/TT2 1 Tf -8.1252 0 TD -0 Tw -(and )Tj -/TT8 1 Tf -2.0893 0 TD -(store-value)Tj -ET -570 658.98 0.99 -23.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 627.91 Tm -(no longer prompt for a value. )Tj -ET -570 635.69 0.99 -11.99 re -f -2 w -54.01 572.7 m -558.01 572.7 l -S -BT -/TT4 1 Tf -14 0 0 14 54 559.79 Tm -(Introduction to Error System Terminology)Tj -ET -1 w -54.01 556.2 m -558.01 556.2 l -S -BT -/TT6 1 Tf -10 0 0 10 205.98 517.91 Tm -(condition)Tj -/TT2 1 Tf -5.202 0 TD -(A )Tj -/TT6 1 Tf -0.9618 0 TD -(condition)Tj -/TT2 1 Tf -4.0029 0 TD -0.017 Tw -[( is a kind of object which is created when an exceptional)]TJ --4.9648 -1.2 TD -0.16 Tw -(situation arises in order to represent the relevant features of that)Tj -T* -0 Tw -(situation. )Tj -/TT6 1 Tf --8.203 -2.3 TD --0.0005 Tw -(signal, handlers)Tj -/TT2 1 Tf -8.203 0 TD -0.244 Tw -(Once a condition is created, it is common to )Tj -/TT6 1 Tf -21.8718 0 TD -0 Tw -(signal)Tj -/TT2 1 Tf -2.6128 0 TD -0.244 Tw -[( it. When a)]TJ --24.4846 -1.2 TD -0.297 Tw -(condition is signaled, a set of )Tj -/TT6 1 Tf -14.9011 0 TD -0 Tw -(handlers)Tj -/TT2 1 Tf -3.8359 0 TD -0.297 Tw -[( are tried in some pre-)]TJ --18.7371 -1.2 TD -0.12 Tw -(defined order until one decides to )Tj -/TT6 1 Tf -15.7859 0 TD -0 Tw -(handle)Tj -/TT2 1 Tf -3.0029 0 TD -0.12 Tw -[( the condition or until no)]TJ --18.7888 -1.2 TD -0.054 Tw -(more handlers are found. A condition is said to have been handled)Tj -T* -0.272 Tw -(if a handler performs a non-local transfer of control to exit the)Tj -T* -0 Tw -(signalling process.)Tj -/TT6 1 Tf --4.034 -2.3 TD -(restart)Tj -/TT2 1 Tf -4.034 0 TD -0.326 Tw -(Although such transfers of control may be done directly using)Tj -ET -570 406.69 0.99 -22.99 re -f -BT -10 0 0 10 258 375.91 Tm -0.235 Tw -(traditional Lisp mechanisms such as )Tj -/TT8 1 Tf -17.5158 0 TD -0 Tw -(catch)Tj -/TT2 1 Tf -3.0005 0 TD -0.235 Tw -[( and )]TJ -/TT8 1 Tf -2.6941 0 TD -0 Tw -(throw)Tj -/TT2 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.7907 0 TD -(block)Tj -ET -570 383.69 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 362.62 Tm -(and )Tj -/TT8 1 Tf -2.3153 0 TD -(return)Tj -/TT2 1 Tf -3.6006 0 TD -0.369 Tw -(, or )Tj -/TT8 1 Tf -2.4607 0 TD -0 Tw -(tagbody)Tj -/TT2 1 Tf -4.2007 0 TD -0.369 Tw -[( and )]TJ -/TT8 1 Tf -2.9621 0 TD -0 Tw -(go)Tj -/TT2 1 Tf -1.2002 0 TD -0.369 Tw -(, the condition system also)Tj -ET -570 370.4 0.99 -13.28 re -f -BT -10 0 0 10 258 349.33 Tm -0.172 Tw -(provides a more structured way to )Tj -/TT6 1 Tf -16.3718 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.172 Tw -[( a computation. Among)]TJ -ET -570 357.11 0.99 -11.99 re -f -BT -10 0 0 10 258 337.33 Tm -0.221 Tw -(other things, the use of these structured primitives for restarting)Tj -ET -570 345.11 0.99 -11.99 re -f -BT -10 0 0 10 258 325.33 Tm -0.11 Tw -(allows a better and more integrated relationship between the user)Tj -ET -570 333.11 0.99 -11.99 re -f -BT -10 0 0 10 258 313.33 Tm -0 Tw -(program and the interactive debugger.)Tj -ET -570 321.11 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 165.97 290.33 Tm -(serious conditions)Tj -ET -0.75 w -165.97 292.99 m -246 292.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 290.33 Tm -0.076 Tw -(It is not necessary that all conditions be handled. Some conditions)Tj -ET -246 293.66 m -557.97 293.66 l -S -BT -10 0 0 10 258 278.33 Tm -0.024 Tw -(are trivial enough that a failure to handle them may be disregarded.)Tj -ET -258 281.66 m -558.01 281.66 l -S -BT -10 0 0 10 258 266.33 Tm -0.146 Tw -(Others, which we will call )Tj -ET -258 269.66 m -379.21 269.66 l -S -BT -/TT6 1 Tf -10 0 0 10 379.21 266.33 Tm -(serious conditions)Tj -ET -379.21 268.99 m -460.7 268.99 l -S -BT -/TT2 1 Tf -10 0 0 10 460.7 266.33 Tm -[( must be handled in)]TJ -ET -460.7 269.66 m -558.05 269.66 l -S -BT -10 0 0 10 258 254.33 Tm -0.11 Tw -(order to assure correct program behavior. If a serious condition is)Tj -ET -258 257.66 m -558 257.66 l -S -BT -10 0 0 10 258 242.33 Tm -0.1 Tw -(signalled but no handler is found, the debugger will be entered so)Tj -ET -258 245.66 m -558.05 245.66 l -S -BT -10 0 0 10 258 230.33 Tm -0 Tw -(that the user may interactively specify how to proceed.)Tj -ET -258 233.66 m -498.66 233.66 l -S -BT -/TT6 1 Tf -10 0 0 10 219.89 207.33 Tm -(errors)Tj -/TT2 1 Tf -3.811 0 TD -0.116 Tw -(conditions which result from incorrect programs or data are called)Tj -ET -570 226.11 0.99 -22.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 195.33 Tm -0 Tw -(errors)Tj -/TT2 1 Tf -2.6113 0 TD -0.179 Tw -(. Not all conditions are errors, however. Storage conditions)Tj -ET -570 203.11 0.99 -11.99 re -f -BT -10 0 0 10 258 183.33 Tm -0.182 Tw -(are examples of conditions that are not errors. For example, the)Tj -ET -570 191.11 0.99 -11.99 re -f -BT -10 0 0 10 258 171.33 Tm -[(control stack may legitimately overflow without a )93.6(program )-571(being)]TJ -ET -570 179.11 0.99 -11.99 re -f -BT -10 0 0 10 258 159.33 Tm -0.039 Tw -(in error. Even though a stack overflow is not necessarily a program)Tj -ET -570 167.11 0.99 -11.99 re -f -BT -10 0 0 10 258 147.33 Tm -0.147 Tw -(error, it is serious enough to warrant entry to the debugger if the)Tj -ET -570 155.11 0.99 -11.99 re -f -BT -10 0 0 10 258 135.33 Tm -0 Tw -(condition goes unhandled.)Tj -ET -570 143.11 0.99 -11.99 re -f -BT -10 0 0 10 258 112.33 Tm -0.019 Tw -(Some types of conditions are predefined by the system. All types of)Tj -ET -570 131.11 0.99 -22.99 re -f -BT -10 0 0 10 258 100.33 Tm -0 Tw -(conditions are subtypes of )Tj -/TT8 1 Tf -11.896 0 TD -(conditions:condition)Tj -/TT2 1 Tf -12.0019 0 TD -(. That is,)Tj -ET -570 108.11 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 270 84.33 Tm -(\(typep c conditions:condition\))Tj -ET -570 94.82 0.99 -15.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 64.04 Tm -(is true if )Tj -/TT8 1 Tf -3.7788 0 TD -(c)Tj -/TT2 1 Tf -0.6001 0 TD -( is a condition. )Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -17 0 obj -<< -/Length 4832 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 162.63 730.2 Tm -(creating conditions)Tj -/TT2 1 Tf -9.537 0 TD -0.543 Tw -(The only standard way to define a new condition type is)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(conditions:define-condition)Tj -/TT2 1 Tf -16.2026 0 TD -0.414 Tw -(. The only standard way to)Tj --16.2026 -1.329 TD -0 Tw -(instantiate a condition is )Tj -/TT8 1 Tf -10.9512 0 TD -(conditions:make-condition)Tj -/TT2 1 Tf -15.0024 0 TD -(.)Tj --25.9536 -2.429 TD -0.065 Tw -(When a condition object is created, the most common operation to)Tj -0 -1.2 TD -0.403 Tw -(be performed upon it is to )Tj -/TT6 1 Tf -14.0357 0 TD -0 Tw -(signal)Tj -/TT2 1 Tf -2.6128 0 TD -0.403 Tw -[( it \(although there may be)]TJ --16.6485 -1.2 TD -0.21 Tw -(applications in which this does not happen, or does not happen)Tj -T* -0 Tw -(immediately\).)Tj -0 -2.3 TD -0.14 Tw -(When a condition is signaled, the system tries to locate the most)Tj -0 -1.2 TD -0.373 Tw -(appropriate handler for the condition and invoke that handler.)Tj -T* -0 Tw -(Handlers are located according to the following rules:)Tj -/TT6 1 Tf --3.98 -2.3 TD -(bound)Tj -/TT2 1 Tf -3.98 0 TD -[()-849.9(Check for locally defined \(ie, )]TJ -/TT6 1 Tf -14.0392 0 TD -(bound)Tj -/TT2 1 Tf -2.7808 0 TD -(\) handlers.)Tj --16.82 -2.1 TD -0.29 Tw -[()-849.9(If no appropriate bound handler is found, check first for the)]TJ -1.2 -1.2 TD -0.283 Tw -(default handler of the signaled type and then of each of its)Tj -T* -0 Tw -(superiors.)Tj -/TT6 1 Tf --5.568 -2.3 TD -(decline)Tj -/TT2 1 Tf -4.368 0 TD -0.282 Tw -(If an appropriate handler is found, the handler may )Tj -/TT6 1 Tf -25.2192 0 TD -0 Tw -(decline)Tj -/TT2 1 Tf -3.1689 0 TD -0.282 Tw -[( by)]TJ --28.3881 -1.2 TD -0.117 Tw -(simply returning without performing a non-local transfer of control.)Tj -T* -0.12 Tw -(In such cases, the search for an appropriate handler is picked up)Tj -T* -0.152 Tw -(where it left off, as if the called handler had never been present.)Tj -T* -0.133 Tw -(When a handler is running, the "handler binding stack" is popped)Tj -T* -0.258 Tw -[(back to just below the binding that caused that handler to be)]TJ -T* -0.115 Tw -(invoked. This is done to avoid infinite recursion in the case that a)Tj -T* -0 Tw -(handler also signals a condition.)Tj -/TT8 1 Tf --15 -2.3 TD -(conditions:handler-bind)Tj -/TT2 1 Tf -15 0 TD -0.26 Tw -(When a condition is signaled, handlers are searched for in the)Tj -0 -1.329 TD -0.0676 Tw -(dynamic environment of the signaller. Handlers can be established)Tj -0 -1.2 TD -0.099 Tw -(within a dynamic context by use of )Tj -/TT8 1 Tf -16.2008 0 TD -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf --16.2008 -1.329 TD -(and other forms based on it. )Tj -/TT6 1 Tf --4.535 -2.3 TD -(handler)Tj -/TT2 1 Tf -4.535 0 TD -(A)Tj -/TT6 1 Tf -0.667 0 TD -0.347 Tw -[( handler)]TJ -/TT2 1 Tf -3.9608 0 TD -[( is a function of one argument, the condition to be)]TJ --4.6278 -1.2 TD -0.353 Tw -(handled. The handler may inspect the object \(using primitives)Tj -T* -0.08 Tw -(described in another section\) to be sure it is interested in handling)Tj -T* -0.048 Tw -[(the condition. After inspecting the condition, the handler must take)]TJ -T* -0 Tw -(one of the following actions:)Tj -0 -2.3 TD -0.045 Tw -[()-849.9(It may decline to handle the condition by simply returning. When)]TJ -1.2 -1.2 TD -0.073 Tw -(this happens, any returned values are ignored and the effect on)Tj -T* -0.084 Tw -(the signaling process is the same as if the handler had not run.)Tj -T* -0.031 Tw -(The next handler in line will be tried, or if no such handler exists,)Tj -T* -0.076 Tw -(the default action for the given condition will be taken. A default)Tj -T* -0.218 Tw -(handler may also decline, in which case the condition will go)Tj -T* -0.05 Tw -[(unhandled. What happens then depends on which function was)]TJ -T* -0.297 Tw -(used to signal the condition \()Tj -/TT8 1 Tf -14.2155 0 TD -0 Tw -(xcl:signal)Tj -/TT2 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -0.8527 0 TD -(error)Tj -/TT2 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.8527 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -(,)Tj -/TT8 1 Tf --28.5228 -1.329 TD -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -(\).)Tj --3.6004 -2.429 TD -0.313 Tw -[()-849.9(It may perform some non-local transfer of control using )]TJ -/TT8 1 Tf -28.5273 0 TD -0 Tw -(go)Tj -/TT2 1 Tf -1.2002 0 TD -(,)Tj -/TT8 1 Tf --28.5274 -1.329 TD -(return)Tj -/TT2 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5557 0 TD -(throw)Tj -/TT2 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5557 0 TD -(abort)Tj -/TT2 1 Tf -3.0005 0 TD -(, or )Tj -/TT8 1 Tf -1.7227 0 TD -(conditions:invoke-restart)Tj -/TT2 1 Tf -15.0024 0 TD -(.)Tj --28.638 -2.429 TD -[()-849.9(It may signal another condition.)]TJ -0 -2.3 TD -[()-849.9(It may invoke the debugger.)]TJ -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -20 0 obj -<< -/Length 7705 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 108 730.2 Tm -(conditions:restart-case)Tj -/TT2 1 Tf -15 0 TD -0.272 Tw -(When a condition is signalled, a facility is available for use by)Tj -ET -570 748.98 0.99 -24.28 re -f -BT -10 0 0 10 258 716.91 Tm -0.265 Tw -(handlers to transfer control to an outer dynamic contour of the)Tj -ET -570 724.69 0.99 -11.99 re -f -BT -10 0 0 10 258 704.91 Tm -0.06 Tw -(program. The form which creates contours that may be returned to)Tj -ET -570 712.69 0.99 -11.99 re -f -BT -10 0 0 10 258 692.91 Tm -0 Tw -(is )Tj -/TT8 1 Tf -1.256 0 TD -(conditions:restart-case)Tj -/TT4 1 Tf -13.8022 0 TD -0.256 Tw -(. )Tj -/TT2 1 Tf -1.3455 0 TD -(Each contour is set up by a)Tj -ET -570 700.69 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 679.62 Tm -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -0.099 Tw -[( clause, and is called a )]TJ -/TT6 1 Tf -10.989 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.099 Tw -(. The)Tj -ET -570 687.4 0.99 -13.28 re -f -BT -10 0 0 10 258 666.33 Tm -1.5779 Tw -(function that transfers control to a restart is)Tj -ET -570 674.11 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 654.33 Tm -0 Tw -(conditions:invoke-restart)Tj -/TT2 1 Tf -15 0 TD -(.)Tj -ET -570 662.11 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 172.07 630.04 Tm -(proceed function)Tj -ET -0.75 w -172.07 632.7 m -246 632.7 l -246 633.04 m -258 633.04 l -S -BT -/TT2 1 Tf -10 0 0 10 258 630.04 Tm -0.043 Tw -(Also, control may be transferred along with parameters to a named)Tj -ET -258 633.37 m -557.98 633.37 l -S -BT -/TT8 1 Tf -10 0 0 10 258 616.75 Tm -0 Tw -(xcl:proceed-case)Tj -ET -258 619.75 m -354 619.75 l -S -BT -/TT2 1 Tf -10 0 0 10 354 616.75 Tm -0.049 Tw -[( clause by invoking a )]TJ -ET -354 620.08 m -452.05 620.08 l -S -BT -/TT6 1 Tf -10 0 0 10 452.05 616.75 Tm -(proceed function)Tj -ET -452.05 619.41 m -526.47 619.41 l -S -BT -/TT2 1 Tf -10 0 0 10 526.47 616.75 Tm -[( of that)]TJ -ET -526.47 620.08 m -558.03 620.08 l -S -BT -10 0 0 10 258 603.46 Tm -0 Tw -(name.)Tj -ET -258 606.79 m -285.79 606.79 l -S -BT -/TT6 1 Tf -10 0 0 10 258 580.46 Tm -0.429 Tw -(Proceed functions)Tj -ET -258 583.12 m -342.33 583.12 l -S -BT -/TT2 1 Tf -10 0 0 10 342.33 580.46 Tm -[( are created with the macro )]TJ -ET -342.33 583.79 m -492.01 583.79 l -S -BT -/TT8 1 Tf -10 0 0 10 492.0099 580.46 Tm -0 Tw -(xcl:define-)Tj -ET -492.01 583.46 m -558.01 583.46 l -S -BT -10 0 0 10 258 569.17 Tm -(proceed-function)Tj -ET -258 572.17 m -354 572.17 l -S -BT -/TT2 1 Tf -10 0 0 10 354 569.17 Tm -(.)Tj -ET -354 572.5 m -356.78 572.5 l -S -BT -10 0 0 10 356.78 569.17 Tm -( )Tj -/TT6 1 Tf --16.08 -2.229 TD -(restart type)Tj -/TT2 1 Tf -6.202 0 TD -(A restart with a particular name is sometimes called a )Tj -/TT6 1 Tf -23.9536 0 TD -(restart type)Tj -/TT2 1 Tf -5.002 0 TD -(.)Tj -ET -570 565.66 0.99 -22.99 re -f -BT -/TT6 1 Tf -10 0 0 10 219.88 523.88 Tm -(report)Tj -/TT2 1 Tf -3.812 0 TD -0.047 Tw -(In some cases, it may be useful to )Tj -/TT6 1 Tf -15.772 0 TD -0 Tw -(report)Tj -/TT2 1 Tf -2.6123 0 TD -0.047 Tw -[( a condition or a restart to)]TJ --18.3843 -1.2 TD -0.092 Tw -(a user or a log file of some sort. When the printer is invoked on a)Tj -T* -0.001 Tw -(condition or proceed case and )Tj -/TT8 1 Tf -13.6808 0 TD -0 Tw -(*print-escape*)Tj -/TT2 1 Tf -8.4014 0 TD -0.0003 Tc -0.0007 Tw -( is )Tj -/TT8 1 Tf -1.2798 0 TD -0 Tc -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.001 Tw -(, the report)Tj --25.1623 -1.329 TD -0.085 Tw -(function for that object is invoked. In particular, this means that an)Tj -0 -1.2 TD -0 Tw -(expression like )Tj -/TT8 1 Tf -1.2 -1.771 TD -(\(princ condition\))Tj -/TT2 1 Tf --1.2 -2.029 TD -0.414 Tw -(will invoke )Tj -/TT8 1 Tf -5.663 0 TD -0 Tw -(condition)Tj -/TT2 1 Tf -5.4009 0 TD -0.414 Tw -(s report function. Because of this, no)Tj --11.0638 -1.329 TD -0.232 Tw -(special function is provided for invoking the report function of a)Tj -0 -1.2 TD -0 Tw -(condition or a restart.)Tj -ET -2 w -54.01 356.09 m -558.01 356.09 l -S -BT -/TT4 1 Tf -14 0 0 14 54 344.18 Tm -(Program Interface to the Condition System)Tj -ET -1 w -54.01 340.59 m -558.01 340.59 l -S -BT -10 0 0 10 54 322.3 Tm -(Defining and Creating Conditions)Tj -ET -54.01 319.59 m -558.01 319.59 l -S -BT -10 0 0 10 126 309.3 Tm -(conditions:define-condition)Tj -ET -0.75 w -126 305.8 m -257.67 305.8 l -S -BT -/TT8 1 Tf -10 0 0 10 257.67 309.3 Tm -( )Tj -ET -257.67 305.8 m -263.67 305.8 l -S -BT -/TT6 1 Tf -10 0 0 10 263.67 309.3 Tm -(name)Tj -ET -263.67 305.8 m -288.68 305.8 l -S -BT -/TT8 1 Tf -10 0 0 10 288.68 309.3 Tm -( \()Tj -ET -288.68 305.8 m -300.68 305.8 l -S -BT -/TT6 1 Tf -10 0 0 10 300.68 309.3 Tm -(parent-type)Tj -ET -300.68 305.8 m -351.26 305.8 l -S -BT -/TT8 1 Tf -10 0 0 10 351.26 309.3 Tm -(\) )Tj -ET -351.26 305.8 m -363.26 305.8 l -S -BT -/TT2 1 Tf -10 0 0 10 363.26 309.3 Tm -([)Tj -ET -363.26 305.8 m -366.04 305.8 l -S -BT -/TT8 1 Tf -10 0 0 10 366.04 309.3 Tm -(\()Tj -ET -366.04 305.8 m -372.04 305.8 l -S -BT -/TT2 1 Tf -10 0 0 10 372.04 309.3 Tm -({)Tj -ET -372.04 305.8 m -375.38 305.8 l -S -BT -/TT6 1 Tf -10 0 0 10 375.38 309.3 Tm -(slot)Tj -ET -375.38 305.8 m -390.94 305.8 l -S -BT -/TT2 1 Tf -10 0 0 10 390.94 309.3 Tm -(}*)Tj -ET -390.94 305.8 m -398.17 305.8 l -S -BT -/TT8 1 Tf -10 0 0 10 398.17 309.3 Tm -(\) )Tj -ET -398.17 305.8 m -410.17 305.8 l -S -BT -/TT2 1 Tf -10 0 0 10 410.17 309.3 Tm -({)Tj -ET -410.17 305.8 m -413.51 305.8 l -S -BT -/TT6 1 Tf -10 0 0 10 413.51 309.3 Tm -(option)Tj -ET -413.51 305.8 m -440.75 305.8 l -S -BT -/TT2 1 Tf -10 0 0 10 440.75 309.3 Tm -(}*])Tj -ET -440.75 305.8 m -450.76 305.8 l -S -570 319.08 0.99 -15.28 re -f -BT -10 0 0 10 524.66 294.01 Tm -([Macro])Tj -ET -126 291.8 m -558 291.8 l -S -570 303.79 0.99 -13.99 re -f -BT -10 0 0 10 258 275.01 Tm -0.241 Tw -(Defines a new condition type with the given )Tj -/TT6 1 Tf -21.3841 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.241 Tw -(, making it a)Tj --23.8855 -1.2 TD -0 Tw -(subtype of the given )Tj -/TT6 1 Tf -9.2285 0 TD -(parent-type)Tj -/TT2 1 Tf -5.0586 0 TD -(. )Tj --14.2871 -1.9 TD -(Except as otherwise noted, the arguments are not evaluated.)Tj -T* -(The valid )Tj -/TT6 1 Tf -4.3354 0 TD -(option)Tj -/TT2 1 Tf -2.7246 0 TD --0.0004 Tc -0.0004 Tw -(s are:)Tj -/TT8 1 Tf --7.0601 -1.9 TD -0 Tc -0 Tw -(\(:documentation )Tj -/TT6 1 Tf -9.6016 0 TD -(doc-string)Tj -/TT8 1 Tf -4.3906 0 TD -(\))Tj -ET -570 220.79 0.99 -18.28 re -f -BT -/TT6 1 Tf -10 0 0 10 282 187.72 Tm -(doc-string)Tj -/TT2 1 Tf -4.3906 0 TD -0.109 Tw -[( should be a string which describes the purpose of)]TJ -ET -570 202.5 0.99 -18.99 re -f -BT -10 0 0 10 282 175.72 Tm -0.241 Tw -(the condition type or )Tj -/TT8 1 Tf -10.2477 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.8003 0 TD -0.241 Tw -(. If this option is omitted, )Tj -/TT8 1 Tf -12.5065 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.8003 0 TD -0.241 Tw -[( is)]TJ -ET -570 183.5 0.99 -13.28 re -f -BT -10 0 0 10 282 162.43 Tm -0 Tw -(assumed. )Tj -/TT8 1 Tf -4.6343 0 TD -(\(documentation )Tj -/TT6 1 Tf -9.0465 0 TD -(name)Tj -/TT8 1 Tf -2.5015 0 TD -0.045 Tw -[( type\))]TJ -/TT2 1 Tf -4.2457 0 TD -0.021 Tw -[( will retrieve this)]TJ -ET -570 170.21 0.99 -13.28 re -f -BT -10 0 0 10 282 149.14 Tm -0 Tw -(information.)Tj -ET -570 156.92 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 130.14 Tm -(\(:conc-name )Tj -/TT6 1 Tf -7.2012 0 TD -(symbol-or-string)Tj -/TT8 1 Tf -7.168 0 TD -(\))Tj -ET -570 144.92 0.99 -18.28 re -f -BT -/TT2 1 Tf -10 0 0 10 282 111.85 Tm -0.293 Tw -(As in )Tj -/TT8 1 Tf -3.087 0 TD -0 Tw -(defstruct)Tj -/TT2 1 Tf -5.4009 0 TD -0.293 Tw -(, this sets up automatic prefixing of the)Tj --8.4879 -1.329 TD -0.038 Tw -(names of slot accessors. Also as in )Tj -/TT8 1 Tf -16.1615 0 TD -0 Tw -(defstruct)Tj -/TT2 1 Tf -5.4009 0 TD -0.038 Tw -[( if no prefix is)]TJ --21.5624 -1.329 TD -0.053 Tw -(specified the default behavior for automatic prefixing is to use)Tj -0 -1.2 TD -0.007 Tw -(the name of the new type followed by a hyphen interned in the)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -23 0 obj -<< -/Length 7817 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 282 730.2 Tm -1.004 Tw -(package which is current at the time that the)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(conditions:define-condition)Tj -/TT2 1 Tf -16.2026 0 TD -( is processed.)Tj -/TT8 1 Tf --18.6026 -2.029 TD -(:report-function )Tj -ET -0.75 w -258 700.91 m -360 700.91 l -S -BT -/TT6 1 Tf -10 0 0 10 360 697.91 Tm -(expression)Tj -ET -360 700.57 m -408.35 700.57 l -408.35 700.91 m -408.35 700.91 l -S -BT -10 0 0 10 282 679.62 Tm -(expression)Tj -ET -282 682.28 m -330.35 682.28 l -S -BT -/TT2 1 Tf -10 0 0 10 330.35 679.62 Tm -0.154 Tw -[( should be a suitable argument to the )]TJ -ET -330.35 682.95 m -509.99 682.95 l -S -BT -/TT8 1 Tf -10 0 0 10 509.99 679.62 Tm -0 Tw -(function)Tj -ET -509.99 682.62 m -557.99 682.62 l -557.99 682.95 m -557.99 682.95 l -S -BT -/TT2 1 Tf -10 0 0 10 282 666.33 Tm -0.405 Tw -(special form, e.g., a symbol or a lambda expression. It)Tj -ET -282 669.66 m -557.99 669.66 l -S -BT -10 0 0 10 282 654.33 Tm -0.226 Tw -(designates a function of two arguments, a condition and a)Tj -ET -282 657.66 m -558.04 657.66 l -S -BT -10 0 0 10 282 642.33 Tm -0.497 Tw -(stream, which prints the condition to the stream when)Tj -ET -282 645.66 m -557.97 645.66 l -S -BT -/TT8 1 Tf -10 0 0 10 282 630.33 Tm -0 Tw -(*print-escape*)Tj -ET -282 633.33 m -366 633.33 l -S -BT -/TT2 1 Tf -10 0 0 10 366 630.33 Tm -( is )Tj -ET -366 633.66 m -378.78 633.66 l -S -BT -/TT8 1 Tf -10 0 0 10 378.78 630.33 Tm -(nil)Tj -ET -378.78 633.33 m -396.78 633.33 l -S -BT -/TT2 1 Tf -10 0 0 10 396.78 630.33 Tm -(.)Tj -ET -396.78 633.66 m -399.56 633.66 l -399.56 633.33 m -399.56 633.33 l -S -BT -10 0 0 10 282 610.04 Tm -(The )Tj -ET -282 613.37 m -308.02 613.37 l -S -BT -/TT8 1 Tf -10 0 0 10 308.02 610.04 Tm -(:report-function)Tj -ET -308.02 613.04 m -404.02 613.04 l -S -BT -/TT2 1 Tf -10 0 0 10 404.02 610.04 Tm -0.601 Tw -[( describes the condition in a)]TJ -ET -404.02 613.37 m -558.02 613.37 l -S -BT -10 0 0 10 282 596.75 Tm -0.108 Tw -(human-sensible form. This item is somewhat different than a)Tj -ET -282 600.08 m -557.96 600.08 l -S -BT -10 0 0 10 282 584.75 Tm -0 Tw -(structures )Tj -ET -282 588.08 m -335.39 588.08 l -S -BT -/TT8 1 Tf -10 0 0 10 335.39 584.75 Tm -(:print-function)Tj -ET -335.39 587.75 m -425.39 587.75 l -S -BT -/TT2 1 Tf -10 0 0 10 425.39 584.75 Tm -0.449 Tw -[( in that it is only used if)]TJ -ET -425.39 588.08 m -557.98 588.08 l -S -BT -/TT8 1 Tf -10 0 0 10 282 570.32 Tm -0 Tw -(*print-escape*)Tj -ET -282 573.32 m -366 573.32 l -S -BT -/TT10 1 Tf -12 0 0 12 366 570.32 Tm -( )Tj -ET -366 573.98 m -369 573.98 l -S -BT -/TT2 1 Tf -10 0 0 10 369 570.32 Tm -(is )Tj -ET -369 573.65 m -379 573.65 l -S -BT -/TT8 1 Tf -10 0 0 10 379 570.32 Tm -(nil)Tj -ET -379 573.32 m -397 573.32 l -S -BT -/TT2 1 Tf -10 0 0 10 397 570.32 Tm -(.)Tj -ET -397 573.65 m -399.78 573.65 l -399.78 573.98 m -399.78 573.98 l -S -BT -/TT8 1 Tf -10 0 0 10 258 550.03 Tm -(\(:report )Tj -/TT6 1 Tf -5.4009 0 TD -(exp)Tj -/TT8 1 Tf -1.6123 0 TD -(\))Tj -ET -570 564.81 0.99 -18.28 re -f -BT -/TT2 1 Tf -10 0 0 10 282 531.74 Tm -0.022 Tw -(This option specifies the report function for this condition type.)Tj -ET -570 546.52 0.99 -18.99 re -f -BT -10 0 0 10 282 519.74 Tm -0 Tw -(Report)Tj -/TT8 1 Tf -3.0015 0 TD -( )Tj -/TT2 1 Tf -0.7271 0 TD -0.059 Tw -(function are inherited, so if a particular condition type)Tj -ET -570 527.52 0.99 -13.28 re -f -BT -10 0 0 10 282 506.45 Tm -0.2 Tw -(does not have one, the report function of its parent will be)Tj -ET -570 514.23 0.99 -11.99 re -f -BT -10 0 0 10 282 494.45 Tm -0 Tw -(used.)Tj -ET -570 502.23 0.99 -11.99 re -f -BT -10 0 0 10 282 475.45 Tm -(If )Tj -/TT6 1 Tf -0.8335 0 TD -(exp)Tj -/TT2 1 Tf -1.6123 0 TD -( is a string, it is a shorthand for)Tj -ET -570 490.23 0.99 -18.99 re -f -BT -/TT8 1 Tf -10 0 0 10 282 457.74 Tm -(\(:report \(lambda \(condition stream\))Tj -ET -570 471.23 0.99 -18.99 re -f -BT -10 0 0 10 282 438.74 Tm -( \(declare \(ignore conditions\)\))Tj -ET -570 452.23 0.99 -18.99 re -f -BT -10 0 0 10 282 418.45 Tm -( \(princ )Tj -/TT6 1 Tf -9.0015 0 TD -(exp)Tj -/TT8 1 Tf -1.6123 0 TD -( stream\)\)\))Tj -ET -570 433.23 0.99 -20.28 re -f -BT -/TT2 1 Tf -10 0 0 10 282 398.16 Tm -(If )Tj -/TT6 1 Tf -0.9515 0 TD -(exp)Tj -/TT2 1 Tf -1.6123 0 TD -0.118 Tw -[( is not a string, )]TJ -/TT8 1 Tf -7.3708 0 TD -0 Tw -(\(function )Tj -/TT6 1 Tf -6.256 0 TD -(exp)Tj -/TT8 1 Tf -1.6123 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.118 Tw -[( will be evaluated in)]TJ -ET -570 412.94 0.99 -20.28 re -f -BT -10 0 0 10 282 384.87 Tm -0.101 Tw -(the current lexical environment. This should return a function)Tj -ET -570 392.65 0.99 -11.99 re -f -BT -10 0 0 10 282 372.87 Tm -0.124 Tw -(of two arguments, a condition and a stream. It will be called)Tj -ET -570 380.65 0.99 -11.99 re -f -BT -10 0 0 10 282 360.87 Tm -0.156 Tw -(when a condition of this type is to be printed and )Tj -/TT8 1 Tf -23.3967 0 TD -0 Tw -(*print-)Tj -ET -570 368.65 0.99 -13.28 re -f -BT -10 0 0 10 282 347.58 Tm -(escape*)Tj -/TT2 1 Tf -4.2007 0 TD -0.17 Tw -[( is )]TJ -/TT8 1 Tf -1.6178 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.17 Tw -(. The report function will be called with the)Tj -ET -570 355.36 0.99 -13.28 re -f -BT -10 0 0 10 282 334.29 Tm -0.058 Tw -(condition to be reported and the stream to which the report is)Tj -ET -570 342.07 0.99 -11.99 re -f -BT -10 0 0 10 282 322.29 Tm -0 Tw -(to be made. )Tj -ET -570 330.07 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 303.29 Tm -(:handler-function )Tj -ET -258 306.29 m -366 306.29 l -S -BT -/TT6 1 Tf -10 0 0 10 366 303.29 Tm -(expression)Tj -ET -366 305.95 m -414.35 305.95 l -414.35 306.62 m -414.35 306.62 l -S -BT -10 0 0 10 282 285 Tm -(expression)Tj -ET -282 287.66 m -330.35 287.66 l -S -BT -/TT2 1 Tf -10 0 0 10 330.35 285 Tm -0.154 Tw -[( should be a suitable argument to the )]TJ -ET -330.35 288.33 m -509.99 288.33 l -S -BT -/TT8 1 Tf -10 0 0 10 509.99 285 Tm -0 Tw -(function)Tj -ET -509.99 288 m -557.99 288 l -557.99 288.33 m -557.99 288.33 l -S -BT -/TT2 1 Tf -10 0 0 10 282 271.71 Tm -0.3 Tw -(special form. It designates a function of one argument, a)Tj -ET -282 275.04 m -558.02 275.04 l -S -BT -10 0 0 10 282 259.71 Tm -0.101 Tw -(condition, which may handle that condition if no dynamically-)Tj -ET -282 263.04 m -557.97 263.04 l -S -BT -10 0 0 10 282 247.71 Tm -0 Tw -(bound handler did.)Tj -ET -282 251.04 m -364.83 251.04 l -S -BT -/TT8 1 Tf -10 0 0 10 258 228.71 Tm -(\(:handle )Tj -/TT6 1 Tf -5.4009 0 TD -(exp)Tj -/TT8 1 Tf -1.6123 0 TD -(\))Tj -ET -570 243.49 0.99 -18.28 re -f -BT -/TT2 1 Tf -10 0 0 10 282 210.42 Tm -0.183 Tw -(This option specifies a default handler for conditions of this)Tj -ET -570 225.2 0.99 -18.99 re -f -BT -10 0 0 10 282 198.42 Tm -0 Tw -(type. )Tj -/TT8 1 Tf -2.4558 0 TD -(\(function )Tj -/TT6 1 Tf -6.023 0 TD -(exp)Tj -/TT8 1 Tf -1.6123 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.01 Tw -[( will be evaluated in the current lexical)]TJ -ET -570 206.2 0.99 -13.28 re -f -BT -10 0 0 10 282 185.13 Tm -0.164 Tw -(context. This should result in a function of one argument, a)Tj -ET -570 192.91 0.99 -11.99 re -f -BT -10 0 0 10 282 173.13 Tm -0.092 Tw -(condition, to be used as the default handler for this condition)Tj -ET -570 180.91 0.99 -11.99 re -f -BT -10 0 0 10 282 161.13 Tm -0 Tw -(type.)Tj -ET -570 168.91 0.99 -11.99 re -f -BT -10 0 0 10 258 142.13 Tm -(Each )Tj -/TT6 1 Tf -2.8201 0 TD -(slot)Tj -/TT2 1 Tf -1.5562 0 TD -0.263 Tw -[( is a )]TJ -/TT8 1 Tf -2.9008 0 TD -0 Tw -(defstruct)Tj -/TT2 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -0.5408 0 TD -(slot-description)Tj -/TT2 1 Tf -6.7251 0 TD -0.263 Tw -(. In addition to those)Tj --19.9439 -1.329 TD -0.16 Tw -(specified, the slots of the )Tj -/TT6 1 Tf -12.0842 0 TD -0 Tw -(parent-type)Tj -/TT2 1 Tf -5.0586 0 TD -0.16 Tw -[( are also available. No slot-)]TJ --17.1428 -1.2 TD -0.347 Tw -(options are allowed, only an optional default-value expression.)Tj -T* -0.542 Tw -(Condition objects are immutable, i.e., all of their slots are)Tj -T* -0 Tw -(automatically declared to be )Tj -/TT8 1 Tf -12.7295 0 TD -(:read-only.)Tj -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 15 0 R -/TT10 25 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -27 0 obj -<< -/Length 6407 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(conditions:make-condition)Tj -/TT2 1 Tf -15 0 TD -0.377 Tw -[( will accept keywords with the)]TJ --15 -1.329 TD -0.039 Tw -(same name as any of the slots, and will initialize the corresponding)Tj -0 -1.2 TD -0 Tw -(slots in conditions it creates.)Tj -0 -1.9 TD -0.238 Tw -(Accessors are created according to the same rules as used by)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(defstruct)Tj -/TT2 1 Tf -5.4009 0 TD -(. For example:)Tj -/TT8 1 Tf --11.4009 -2.4 TD -(\(conditions:define-condition bad-food-color \(food-lossage\))Tj -ET -570 657.4 0.99 -10.99 re -f -BT -10 0 0 10 198 639.91 Tm -(\(food color\))Tj -ET -570 646.4 0.99 -9.99 re -f -BT -10 0 0 10 198 629.91 Tm -( \(:report \(lambda \(c s\) \(format s "The food ~A was ~A")Tj -ET -570 636.4 0.99 -9.99 re -f -BT -10 0 0 10 198 619.91 Tm -( \(bad-food-color-food c\) \(bad-food-)Tj -ET -570 626.4 0.99 -9.99 re -f -BT -10 0 0 10 198 609.91 Tm -(color-color c\)\)\)\)\))Tj -ET -570 616.4 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 591.62 Tm -0.136 Tw -(defines a condition of type )Tj -/TT8 1 Tf -12.577 0 TD -0 Tw -(bad-food-color)Tj -/TT2 1 Tf -8.4014 0 TD -0.136 Tw -[( which inherits from)]TJ --20.9783 -1.329 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.804 0 TD -(food-lossage)Tj -/TT2 1 Tf -7.2012 0 TD -0.136 Tw -[( condition type. The new type has slots )]TJ -/TT8 1 Tf -18.5978 0 TD -0 Tw -(food)Tj -/TT2 1 Tf --27.6029 -1.329 TD -(and )Tj -/TT8 1 Tf -2.2143 0 TD -(color)Tj -/TT2 1 Tf -3.0005 0 TD -0.268 Tw -[( so that )]TJ -/TT8 1 Tf -4.3616 0 TD -0 Tw -(conditions:make-condition)Tj -/TT2 1 Tf -15.0024 0 TD -0.268 Tw -[( will accept)]TJ -/TT8 1 Tf --24.5788 -1.329 TD -0 Tw -(:food)Tj -/TT2 1 Tf -3.0005 0 TD -0.112 Tw -[( and )]TJ -/TT8 1 Tf -2.4481 0 TD -0 Tw -(:color)Tj -/TT2 1 Tf -3.6006 0 TD -0.112 Tw -[( keywords and accessors )]TJ -/TT8 1 Tf -11.9529 0 TD -0 Tw -(bad-food-color-)Tj --21.0021 -1.329 TD -(food)Tj -/TT2 1 Tf -2.4004 0 TD -0.192 Tw -[( and )]TJ -/TT8 1 Tf -2.6081 0 TD -0 Tw -(bad-food-color-color)Tj -/TT2 1 Tf -12.002 0 TD -0.192 Tw -[( will apply to objects of this)]TJ --17.0105 -1.329 TD -0 Tw -(type.)Tj -0 -1.9 TD -0.013 Tw -(The report function for a condition will be implicitly called any time a)Tj -0 -1.2 TD -0 Tw -(condition is printed with )Tj -/TT8 1 Tf -10.6724 0 TD -(*print-escape*)Tj -/TT2 1 Tf -8.4014 0 TD -( being )Tj -/TT8 1 Tf -3.0024 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(. Hence,)Tj -/TT8 1 Tf --23.8765 -1.2 TD -( \(princ condition\))Tj -/TT2 1 Tf -0 -1.329 TD -(is a way to invoke the conditions report function.)Tj -0 -1.9 TD -0.252 Tw -(Here are some examples of defining condition types. This form)Tj -0 -1.2 TD -0.297 Tw -(defines a condition called )Tj -/TT8 1 Tf -12.6958 0 TD -0 Tw -(machine-error)Tj -/TT2 1 Tf -7.8013 0 TD -0.297 Tw -[( which inherits from)]TJ -/TT8 1 Tf --20.4971 -1.329 TD -0 Tw -(error)Tj -/TT2 1 Tf -3.0005 0 TD -(:)Tj -ET -570 419.08 0.99 -10.99 re -f -BT -/TT8 1 Tf -10 0 0 10 198 400.59 Tm -(\(conditions:define-condition machine-error \(error\) \(machine-)Tj -ET -570 408.08 0.99 -10.99 re -f -BT -10 0 0 10 198 390.59 Tm -(name\))Tj -ET -570 397.08 0.99 -9.99 re -f -BT -10 0 0 10 198 380.59 Tm -( \(:report \(lambda \(c s\) \(format s)Tj -ET -570 387.08 0.99 -9.99 re -f -BT -10 0 0 10 198 370.59 Tm -( "There is a problem with ~A.")Tj -ET -570 377.08 0.99 -9.99 re -f -BT -10 0 0 10 198 360.59 Tm -( \(machine-error-machine-name c\)\)\)\))Tj -ET -570 367.08 0.99 -9.99 re -f -BT -10 0 0 10 198 350.59 Tm -( \))Tj -ET -570 357.08 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 332.3 Tm -0.548 Tw -(The following defines a new error condition \(a subtype of)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(machine-error)Tj -/TT2 1 Tf -7.8013 0 TD -(\) for use when machines are not available:)Tj -ET -570 314.79 0.99 -10.99 re -f -BT -/TT8 1 Tf -10 0 0 10 198 296.3 Tm -(\(conditions:define-condition machine-not-available-error)Tj -ET -570 303.79 0.99 -10.99 re -f -BT -10 0 0 10 198 286.3 Tm -( \(machine-error\) \(machine-name\))Tj -ET -570 292.79 0.99 -9.99 re -f -BT -10 0 0 10 198 276.3 Tm -( \(:report \(lambda \(c s\) \(format s)Tj -ET -570 282.79 0.99 -9.99 re -f -BT -10 0 0 10 198 266.3 Tm -( "The machine ~A is not available.")Tj -ET -570 272.79 0.99 -9.99 re -f -BT -10 0 0 10 198 256.3 Tm -( \(machine-error-machine-name c\)\)\)\))Tj -ET -570 262.79 0.99 -9.99 re -f -BT -10 0 0 10 198 246.3 Tm -( \))Tj -ET -570 252.79 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 228.01 Tm -0.301 Tw -(The following defines a still more specific condition, built upon)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(machine-not-available-error)Tj -/TT2 1 Tf -16.2026 0 TD -0.132 Tw -[(, which provides a default for)]TJ -/TT8 1 Tf --16.2026 -1.329 TD -0 Tw -(machine-name)Tj -/TT2 1 Tf -7.2012 0 TD -( but which does not provide any new slots:)Tj -ET -570 197.21 0.99 -10.99 re -f -BT -/TT8 1 Tf -10 0 0 10 198 178.72 Tm -(\(conditions:define-condition)Tj -ET -570 186.21 0.99 -10.99 re -f -BT -10 0 0 10 198 168.72 Tm -( my-favorite-machine-not-available-error)Tj -ET -570 175.21 0.99 -9.99 re -f -BT -10 0 0 10 198 158.72 Tm -( \(machine-not-available-error\))Tj -ET -570 165.21 0.99 -9.99 re -f -BT -10 0 0 10 198 148.72 Tm -( \(\(machine-name "Tesuji:AISDev"\)\)\))Tj -ET -570 155.21 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 130.43 Tm -0.057 Tw -(This gives the )Tj -/TT8 1 Tf -6.6183 0 TD -0 Tw -(machine-name)Tj -/TT2 1 Tf -7.2012 0 TD -0.057 Tw -[( slot a default initialization. Since no)]TJ -/TT8 1 Tf --13.8194 -1.329 TD -0 Tw -(:report)Tj -/TT2 1 Tf -4.2007 0 TD -0.502 Tw -[( clause was given, the information supplied in the)]TJ --4.2007 -1.329 TD -0.185 Tw -(definition of )Tj -/TT8 1 Tf -5.7626 0 TD -0 Tw -(machine-not-available-error)Tj -/TT2 1 Tf -16.2026 0 TD -0.185 Tw -[( will be used if a)]TJ --21.9652 -1.329 TD -0 Tw -(condition of this type is printed while )Tj -/TT8 1 Tf -16.2866 0 TD -(*print-escape*)Tj -/TT2 1 Tf -8.4014 0 TD -( is )Tj -/TT8 1 Tf -1.2778 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf --40.9661 -2.429 TD -(xcl:condition-reporter)Tj -ET -0.75 w -126 62.77 m -229.9 62.77 l -S -BT -/TT8 1 Tf -10 0 0 10 229.9 66.27 Tm -( )Tj -ET -229.9 62.77 m -235.9 62.77 l -S -BT -/TT6 1 Tf -10 0 0 10 235.9 66.27 Tm -(type)Tj -ET -235.9 62.77 m -524.66 62.77 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 66.27 Tm -([Macro])Tj -ET -524.66 62.77 m -558 62.77 l -S -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -30 0 obj -<< -/Length 7344 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.054 Tw -(Returns the object used to report conditions of the given )Tj -/TT6 1 Tf -25.6108 0 TD -0 Tw -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.054 Tw -(. This)Tj --27.5009 -1.2 TD -0.135 Tw -(will be either a string, a function of two arguments \(condition and)Tj -T* -0.168 Tw -(stream\) or )Tj -/TT8 1 Tf -5.17 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.168 Tw -[( if there is no report function. )]TJ -/TT8 1 Tf -14.1272 0 TD -0 Tw -(setf)Tj -/TT2 1 Tf -2.4004 0 TD -0.168 Tw -[( may be used)]TJ --23.4978 -1.329 TD -0 Tw -(with this form to change the report function for a condition type.)Tj -/TT4 1 Tf --13.2 -2.3 TD -(xcl:condition-handler)Tj -ET -0.75 w -126 666.41 m -227.68 666.41 l -S -BT -/TT8 1 Tf -10 0 0 10 227.68 669.91 Tm -( )Tj -ET -227.68 666.41 m -233.68 666.41 l -S -BT -/TT6 1 Tf -10 0 0 10 233.68 669.91 Tm -(type)Tj -ET -233.68 666.41 m -524.66 666.41 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 669.91 Tm -([Macro])Tj -ET -524.66 666.41 m -558 666.41 l -S -BT -10 0 0 10 258 649.62 Tm -0.165 Tw -(Returns the default handler for conditions of the given )Tj -/TT6 1 Tf -25.5001 0 TD -0 Tw -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.165 Tw -(. This)Tj --27.3903 -1.2 TD -0.215 Tw -(will be a function of one argument or )Tj -/TT8 1 Tf -18.1184 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.215 Tw -[( if there is no default)]TJ --19.9187 -1.329 TD -0 Tw -(handler. )Tj -/TT8 1 Tf -4.0666 0 TD -(setf)Tj -/TT2 1 Tf -2.4004 0 TD -0.175 Tw -[( may be used with this form to change the default)]TJ --6.467 -1.329 TD -0 Tw -(handler for a condition type.)Tj -/TT4 1 Tf --13.2 -2.3 TD -(conditions:make-condition)Tj -ET -126 584.54 m -253.79 584.54 l -S -BT -/TT8 1 Tf -10 0 0 10 253.79 588.04 Tm -( )Tj -ET -253.79 584.54 m -259.79 584.54 l -S -BT -/TT6 1 Tf -10 0 0 10 259.79 588.04 Tm -(type)Tj -ET -259.79 584.54 m -278.69 584.54 l -S -BT -/TT8 1 Tf -10 0 0 10 278.69 588.04 Tm -( &)Tj -ET -278.69 584.54 m -290.69 584.54 l -S -BT -/TT4 1 Tf -10 0 0 10 290.69 588.04 Tm -(rest)Tj -ET -290.69 584.54 m -309.03 584.54 l -S -BT -/TT8 1 Tf -10 0 0 10 309.03 588.04 Tm -( )Tj -ET -309.03 584.54 m -315.03 584.54 l -S -BT -/TT6 1 Tf -10 0 0 10 315.03 588.04 Tm -(slot-initializations)Tj -ET -315.03 584.54 m -390.6 584.54 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 588.04 Tm -([Function])Tj -ET -390.6 584.54 m -558 584.54 l -S -BT -10 0 0 10 258 567.75 Tm -0.443 Tw -(Calls the appropriate constructor function for the given type,)Tj -0 -1.2 TD -0.165 Tw -(passing along the given slot initializations to the constructor, and)Tj -T* -0 Tw -(returning an instantiated condition.)Tj -0 -1.9 TD -(The )Tj -/TT6 1 Tf -2.095 0 TD -(slot-initializations)Tj -/TT2 1 Tf -7.5586 0 TD -0.094 Tw -[( are given in alternating keyword/value pairs.)]TJ --9.6536 -1.2 TD -0 Tw -(eg,)Tj -/TT8 1 Tf -2 -1.171 TD -(\(conditions:make-condition bad-food-color)Tj -0 -1 TD -( :food my-food)Tj -T* -( :color my-color\))Tj -/TT2 1 Tf --2 -1.829 TD -0.506 Tw -(This function is provided mainly for writing subroutines that)Tj -0 -1.2 TD -0.143 Tw -(manufacture a condition to be signaled. Since all of the condition)Tj -T* -0.295 Tw -(signalling functions can take a )Tj -/TT6 1 Tf -15.0946 0 TD -0 Tw -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.295 Tw -[( and )]TJ -/TT6 1 Tf -2.8141 0 TD -0 Tw -(slot-initializations)Tj -/TT2 1 Tf -7.5586 0 TD -0.295 Tw -(, it is)Tj --27.3575 -1.2 TD -0 Tw -(usually easier to call them directly.)Tj -/TT4 1 Tf --20.4 -2.6 TD -(Signalling Conditions)Tj -ET -1 w -54.01 398.04 m -558.01 398.04 l -S -BT -10 0 0 10 126 378.75 Tm -(xcl:*current-condition*)Tj -ET -0.75 w -126 375.25 m -515.76 375.25 l -S -BT -/TT2 1 Tf -10 0 0 10 515.7599 378.75 Tm -([Variable])Tj -ET -515.76 375.25 m -558 375.25 l -S -BT -10 0 0 10 258 358.46 Tm -1.23 Tw -(This variable is bound by condition-signalling forms)Tj -0 -1.2 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -(, )Tj -/TT8 1 Tf -1.1787 0 TD -(error)Tj -/TT2 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -1.1787 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -0.623 Tw -(, and )Tj -/TT8 1 Tf -3.748 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.623 Tw -(\) to the)Tj --25.6414 -1.329 TD -0.082 Tw -[(condition being signaled. This is especially useful in restart filters.)]TJ -0 -1.2 TD -0 Tw -(The top-level value of )Tj -/TT8 1 Tf -9.8389 0 TD -(xcl:*current-condition*)Tj -/TT2 1 Tf -13.8022 0 TD -( is )Tj -/TT8 1 Tf -1.2778 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf --39.9192 -2.429 TD -(conditions:signal)Tj -ET -126 293.38 m -208.79 293.38 l -S -BT -/TT8 1 Tf -10 0 0 10 208.79 296.88 Tm -( )Tj -ET -208.79 293.38 m -214.79 293.38 l -S -BT -/TT6 1 Tf -10 0 0 10 214.79 296.88 Tm -(datum)Tj -ET -214.79 293.38 m -242.58 293.38 l -S -BT -/TT8 1 Tf -10 0 0 10 242.58 296.88 Tm -( &)Tj -ET -242.58 293.38 m -254.58 293.38 l -S -BT -/TT4 1 Tf -10 0 0 10 254.58 296.88 Tm -(rest)Tj -ET -254.58 293.38 m -272.92 293.38 l -S -BT -/TT8 1 Tf -10 0 0 10 272.92 296.88 Tm -( )Tj -ET -272.92 293.38 m -278.92 293.38 l -S -BT -/TT6 1 Tf -10 0 0 10 278.92 296.88 Tm -(arguments)Tj -ET -278.92 293.38 m -514.09 293.38 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 296.88 Tm -([Function])Tj -ET -514.09 293.38 m -558 293.38 l -S -BT -10 0 0 10 258 276.59 Tm -0.246 Tw -(Invokes the signal facility on a condition. If the condition is not)Tj -0 -1.2 TD -0 Tw -(handled, )Tj -/TT8 1 Tf -4.3577 0 TD -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -0.243 Tw -[( returns the condition object that)]TJ --14.5594 -1.329 TD -0 Tw -(was signaled.)Tj -0 -1.9 TD -(If )Tj -/TT6 1 Tf -0.9755 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.142 Tw -[( is a condition then that condition is used directly. In this)]TJ --3.7548 -1.2 TD -0 Tw -(case, it is an error for )Tj -/TT6 1 Tf -9.6699 0 TD -(arguments)Tj -/TT2 1 Tf -4.7246 0 TD -( to be non-)Tj -/TT8 1 Tf -4.7812 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj --20.9761 -2.029 TD -(If )Tj -/TT6 1 Tf -0.8875 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.054 Tw -[( is a condition type, then the condition used is the result of)]TJ --3.6668 -1.2 TD -0 Tw -(doing)Tj -/TT8 1 Tf -2 -1.171 TD -(\(apply #conditions:make-condition)Tj -0 -1.129 TD -( )Tj -/TT6 1 Tf -4.2007 0 TD -(datum)Tj -/TT8 1 Tf -2.7793 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(arguments)Tj -/TT8 1 Tf -4.7246 0 TD -(\))Tj -/TT2 1 Tf --14.3047 -1.829 TD -(If )Tj -/TT6 1 Tf -0.8335 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -( is a string, then the condition used is the result of doing)Tj -/TT8 1 Tf --1.6128 -1.171 TD -(\(conditions:make-condition)Tj -0 -1 TD -( conditions:simple-condition)Tj -2 -1.229 TD -(:format-string )Tj -/TT6 1 Tf -9.0015 0 TD -(datum)Tj -/TT8 1 Tf --9.0015 -1.229 TD -(:format-arguments )Tj -/TT6 1 Tf -10.8018 0 TD -(arguments)Tj -/TT8 1 Tf -4.7246 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj --20.1265 -1.829 TD -0.502 Tw -(If the condition is of type )Tj -ET -258 85.47 m -398.74 85.47 l -S -BT -/TT8 1 Tf -10 0 0 10 398.74 82.14 Tm -0 Tw -(xcl:serious-condition,)Tj -ET -398.74 85.14 m -530.74 85.14 l -S -BT -/TT2 1 Tf -10 0 0 10 530.74 82.14 Tm -0.502 Tw -[( then)]TJ -ET -530.74 85.47 m -558 85.47 l -S -BT -/TT8 1 Tf -10 0 0 10 258 68.85 Tm -0 Tw -(xcl:signal)Tj -ET -258 71.85 m -318 71.85 l -S -BT -/TT2 1 Tf -10 0 0 10 318 68.85 Tm -0.438 Tw -[( will behave exactly like )]TJ -ET -318 72.18 m -446.6 72.18 l -S -BT -/TT8 1 Tf -10 0 0 10 446.6 68.85 Tm -0 Tw -(error)Tj -ET -446.6 71.85 m -476.6 71.85 l -S -BT -/TT2 1 Tf -10 0 0 10 476.6 68.85 Tm -0.438 Tw -(, i.e., it will call)Tj -ET -476.6 72.18 m -558.02 72.18 l -S -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -33 0 obj -<< -/Length 9050 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 542.4399 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(xcl:debug)Tj -ET -0.75 w -258 733.2 m -312 733.2 l -S -BT -/TT2 1 Tf -10 0 0 10 312 730.2 Tm -0.003 Tw -( if the condition isnt handled, and will never return to its)Tj -ET -312 733.53 m -558 733.53 l -S -BT -10 0 0 10 258 716.91 Tm -0 Tw -(caller.)Tj -ET -258 720.24 m -284.67 720.24 l -S -BT -10 0 0 10 258 697.91 Tm -(If )Tj -/TT8 1 Tf -1.0495 0 TD -(\(typep )Tj -/TT6 1 Tf -4.6667 0 TD -(condition)Tj -/TT8 1 Tf -4.0029 0 TD -0.466 Tw -[( conditions:*break-on-signals*\))]TJ -/TT2 1 Tf -19.069 0 TD -0.216 Tw -[( is)]TJ -ET -570 712.69 0.99 -20.28 re -f -BT -10 0 0 10 258 684.62 Tm -0.338 Tw -(true, then the debugger will be entered prior to the signalling)Tj -ET -570 692.4 0.99 -11.99 re -f -BT -10 0 0 10 258 672.62 Tm -0.105 Tw -(process. This is true for all other functions and macros that signal)Tj -ET -570 680.4 0.99 -11.99 re -f -BT -10 0 0 10 258 660.62 Tm -0.141 Tw -(conditions, such as )Tj -/TT8 1 Tf -9.2057 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6967 0 TD -(error)Tj -/TT2 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6967 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.6967 0 TD -(assert)Tj -/TT2 1 Tf -3.6006 0 TD -0.141 Tw -[( and )]TJ -/TT8 1 Tf -2.5061 0 TD -0 Tw -(check-)Tj -ET -570 668.4 0.99 -13.28 re -f -BT -10 0 0 10 258 647.33 Tm -(type)Tj -/TT2 1 Tf -2.4004 0 TD -(.)Tj -ET -570 655.11 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 623.04 Tm -(conditions:*break-on-signals*)Tj -ET -126 620.83 m -267.69 620.83 l -S -BT -/TT2 1 Tf -10 0 0 10 515.7599 623.04 Tm -([Variable])Tj -ET -267.69 620.83 m -558 620.83 l -S -570 641.82 0.99 -22.99 re -f -BT -10 0 0 10 258 604.04 Tm -0.238 Tw -(This flag is primarily for use when debugging programs that do)Tj -ET -570 618.82 0.99 -18.99 re -f -BT -10 0 0 10 258 592.04 Tm -0 Tw -(signaling)Tj -/TT8 1 Tf -3.9473 0 TD -(.)Tj -/TT2 1 Tf -0.6001 0 TD -( Its value is a type specifier. )Tj -ET -570 599.82 0.99 -13.28 re -f -BT -10 0 0 10 258 571.75 Tm -(When )Tj -/TT8 1 Tf -2.9481 0 TD -(\(typep )Tj -/TT6 1 Tf -4.3257 0 TD -(condition)Tj -/TT8 1 Tf -4.0029 0 TD -0.125 Tw -[( conditions:*break-on-signals*\))]TJ -ET -570 586.53 0.99 -20.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 558.46 Tm -0.02 Tw -(is true, then calls to )Tj -/TT8 1 Tf -8.9931 0 TD -0 Tw -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -0.02 Tw -[( and other functions that)]TJ -ET -570 566.24 0.99 -13.28 re -f -BT -10 0 0 10 258 545.17 Tm -0.023 Tw -(implicitly call )Tj -/TT8 1 Tf -5.88 0 TD -0 Tw -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -0.023 Tw -[( will enter the debugger prior to)]TJ -ET -570 552.95 0.99 -13.28 re -f -BT -10 0 0 10 258 531.88 Tm -0.108 Tw -(signalling the condition. The )Tj -/TT8 1 Tf -13.1068 0 TD -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -0.108 Tw -[( restart may)]TJ -ET -570 539.66 0.99 -13.28 re -f -BT -10 0 0 10 258 518.59 Tm -0 Tw -(be used to continue with the normal signalling process.)Tj -ET -570 526.37 0.99 -11.99 re -f -BT -10 0 0 10 258 499.59 Tm -(The default value of this variable is )Tj -/TT8 1 Tf -15.6753 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -ET -570 514.37 0.99 -20.28 re -f -BT -10 0 0 10 258 479.3 Tm -0.571 Tw -(Note: the variable )Tj -/TT8 1 Tf -9.8287 0 TD -0 Tw -(*break-on-warnings*)Tj -/TT2 1 Tf -11.4019 0 TD -0.571 Tw -[( continues to be)]TJ -ET -570 494.08 0.99 -20.28 re -f -BT -10 0 0 10 258 466.01 Tm -0.876 Tw -(supported for compatibility, but )Tj -/TT8 1 Tf -17.4 0 TD -0 Tw -(conditions:*break-on-)Tj -ET -570 473.79 0.99 -13.28 re -f -BT -10 0 0 10 258 452.72 Tm -(signals*)Tj -/TT2 1 Tf -4.8008 0 TD -0.119 Tw -[( offers that power and more. New code should not use)]TJ -ET -570 460.5 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 439.43 Tm -0 Tw -(*break-on-warnings*)Tj -/TT2 1 Tf -11.4019 0 TD -(.)Tj -ET -570 447.21 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 415.14 Tm -(error)Tj -ET -126 411.64 m -149.34 411.64 l -S -BT -/TT8 1 Tf -10 0 0 10 149.34 415.14 Tm -( )Tj -ET -149.34 411.64 m -155.34 411.64 l -S -BT -/TT6 1 Tf -10 0 0 10 155.34 415.14 Tm -(datum)Tj -ET -155.34 411.64 m -183.13 411.64 l -S -BT -/TT8 1 Tf -10 0 0 10 183.13 415.14 Tm -( &)Tj -ET -183.13 411.64 m -195.13 411.64 l -S -BT -/TT4 1 Tf -10 0 0 10 195.13 415.14 Tm -(rest)Tj -ET -195.13 411.64 m -213.47 411.64 l -S -BT -/TT8 1 Tf -10 0 0 10 213.47 415.14 Tm -( )Tj -ET -213.47 411.64 m -219.47 411.64 l -S -BT -/TT6 1 Tf -10 0 0 10 219.47 415.14 Tm -(arguments)Tj -ET -219.47 411.64 m -266.71 411.64 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 415.14 Tm -([Function])Tj -ET -266.71 411.64 m -558 411.64 l -S -BT -10 0 0 10 258 394.85 Tm -(Like )Tj -/TT8 1 Tf -2.2323 0 TD -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -0.12 Tw -[( except if the condition is not handled,)]TJ --12.434 -1.329 TD -0.126 Tw -(the debugger is called with the given condition, and )Tj -/TT8 1 Tf -24.094 0 TD -0 Tw -(error)Tj -/TT2 1 Tf -3.0005 0 TD -0.126 Tw -[( never)]TJ --27.0944 -1.329 TD -0 Tw -(returns)Tj -/TT8 1 Tf -3.1123 0 TD -(.)Tj -/TT6 1 Tf --3.1123 -2.029 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.062 Tw -[( is treated as in )]TJ -/TT8 1 Tf -7.3691 0 TD -0 Tw -(conditions:signal)Tj -/TT2 1 Tf -10.2017 0 TD -0.062 Tw -[(. If )]TJ -/TT6 1 Tf -1.853 0 TD -0 Tw -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.062 Tw -[( is a string,)]TJ --24.9823 -1.329 TD -0.191 Tw -(a conditon of type )Tj -/TT8 1 Tf -8.9364 0 TD -0 Tw -(conditions:simple-error)Tj -/TT2 1 Tf -13.8022 0 TD -0.191 Tw -[( is made. This)]TJ --22.7386 -1.329 TD -0.184 Tw -(form is compatible with that described in Steeles )Tj -/TT6 1 Tf -23.3709 0 TD -(Common Lisp,)Tj --23.3709 -1.2 TD -0 Tw -(the Language)Tj -/TT2 1 Tf -6.1172 0 TD -(.)Tj -/TT4 1 Tf --19.3172 -2.3 TD -(cerror)Tj -ET -126 282.9 m -154.9 282.9 l -S -BT -/TT8 1 Tf -10 0 0 10 154.9 286.4 Tm -( )Tj -ET -154.9 282.9 m -160.9 282.9 l -S -BT -/TT6 1 Tf -10 0 0 10 160.9 286.4 Tm -(proceed-format-string)Tj -ET -160.9 282.9 m -256.48 282.9 l -S -BT -/TT8 1 Tf -10 0 0 10 256.48 286.4 Tm -( )Tj -ET -256.48 282.9 m -262.48 282.9 l -S -BT -/TT6 1 Tf -10 0 0 10 262.48 286.4 Tm -(datum)Tj -ET -262.48 282.9 m -290.27 282.9 l -S -BT -/TT8 1 Tf -10 0 0 10 290.27 286.4 Tm -( &)Tj -ET -290.27 282.9 m -302.27 282.9 l -S -BT -/TT4 1 Tf -10 0 0 10 302.27 286.4 Tm -(rest)Tj -ET -302.27 282.9 m -320.61 282.9 l -S -BT -/TT8 1 Tf -10 0 0 10 320.61 286.4 Tm -( )Tj -ET -320.61 282.9 m -326.61 282.9 l -S -BT -/TT6 1 Tf -10 0 0 10 326.61 286.4 Tm -(arguments)Tj -ET -326.61 282.9 m -373.85 282.9 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 286.4 Tm -([Function])Tj -ET -373.85 282.9 m -558 282.9 l -S -BT -10 0 0 10 258 266.11 Tm -(Like )Tj -/TT8 1 Tf -2.2323 0 TD -(error)Tj -/TT2 1 Tf -3.0005 0 TD -0.12 Tw -(, if the condition is not handled the debugger is called)Tj -ET -570 280.89 0.99 -20.28 re -f -BT -10 0 0 10 258 252.82 Tm -0.176 Tw -(with the given condition.)Tj -/TT8 1 Tf -11.2013 0 TD -0 Tw -( )Tj -/TT2 1 Tf -0.9801 0 TD -0.176 Tw -[( However, )]TJ -/TT8 1 Tf -5.1313 0 TD -0 Tw -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -0.176 Tw -[( enables the restart)]TJ -ET -570 260.6 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 239.53 Tm -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -0.312 Tw -(, which will simply return the condition)Tj -ET -570 247.31 0.99 -13.28 re -f -BT -10 0 0 10 258 226.24 Tm -0 Tw -(being signalled from )Tj -/TT8 1 Tf -9.2275 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -(.)Tj -ET -570 234.02 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 258 205.95 Tm -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.166 Tw -[( is treated as in )]TJ -/TT8 1 Tf -7.8891 0 TD -0 Tw -(error)Tj -/TT2 1 Tf -3.0005 0 TD -0.166 Tw -[(. If )]TJ -/TT6 1 Tf -2.165 0 TD -0 Tw -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.166 Tw -[( is a condition, then that)]TJ --18.6132 -1.329 TD -0.054 Tw -(condition is used directly. In this case, )Tj -/TT6 1 Tf -17.442 0 TD -0 Tw -(arguments)Tj -/TT2 1 Tf -4.7246 0 TD -0.054 Tw -[( will be used only)]TJ --22.1666 -1.2 TD -0.295 Tw -(with the )Tj -/TT6 1 Tf -4.3141 0 TD -0 Tw -(proceed-format-string)Tj -/TT2 1 Tf -9.5591 0 TD -0.295 Tw -[( and will not be used to initialize)]TJ -/TT6 1 Tf --13.8732 -1.2 TD -0 Tw -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -(.)Tj --2.7793 -1.9 TD -(The )Tj -/TT6 1 Tf -2.161 0 TD -(proceed-format-string)Tj -/TT2 1 Tf -9.5591 0 TD -0.16 Tw -[( must be a string. Note that if )]TJ -/TT6 1 Tf -14.3415 0 TD -0 Tw -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.16 Tw -[( is)]TJ --28.8409 -1.2 TD -0.31 Tw -(not a string, then the format arguments used by the )Tj -/TT6 1 Tf -26.0575 0 TD -0 Tw -(proceed-)Tj --26.0575 -1.2 TD -(format-string)Tj -/TT2 1 Tf -5.6123 0 TD -0.144 Tw -[( will still be the )]TJ -/TT6 1 Tf -7.4446 0 TD -0 Tw -(arguments)Tj -/TT2 1 Tf -4.7246 0 TD -0.144 Tw -[( \(in the keyword format as)]TJ --17.7815 -1.2 TD -0.059 Tw -(specified\). In this case, some care may be necessary to set up the)Tj -/TT6 1 Tf -T* -0 Tw -(proceed-format-string)Tj -/TT2 1 Tf -9.5591 0 TD -0.17 Tw -[( correctly. The )]TJ -/TT8 1 Tf -7.1228 0 TD -0 Tw -(format)Tj -/TT2 1 Tf -3.6006 0 TD -0.17 Tw -[( directive )]TJ -/TT8 1 Tf -4.6193 0 TD -0 Tw -(~*)Tj -/TT2 1 Tf -1.2002 0 TD -0.17 Tw -[( may be)]TJ --26.102 -1.329 TD -0 Tw -(particularly useful in this situation.)Tj -0 -1.901 TD -(The value returned by )Tj -/TT8 1 Tf -10.0059 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -( is the condition which was signaled.)Tj -/TT8 1 Tf -12 0 0 12 555.2656 69.36 Tm -( )Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -36 0 obj -<< -/Length 8512 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.06 Tw -(See Steeles )Tj -/TT6 1 Tf -6.0126 0 TD -(Common Lisp, the Language,)Tj -/TT2 1 Tf -13.2996 0 TD -[( page 430 for examples)]TJ --19.3122 -1.2 TD -0 Tw -(of the use of )Tj -/TT8 1 Tf -5.7817 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -(.)Tj -ET -0.75 w -126 690.41 m -126 690.41 l -S -BT -/TT4 1 Tf -10 0 0 10 126 693.91 Tm -(warn)Tj -ET -126 690.41 m -149.34 690.41 l -S -BT -/TT8 1 Tf -10 0 0 10 149.34 693.91 Tm -( )Tj -ET -149.34 690.41 m -155.34 690.41 l -S -BT -/TT6 1 Tf -10 0 0 10 155.34 693.91 Tm -(datum)Tj -ET -155.34 690.41 m -183.13 690.41 l -S -BT -/TT8 1 Tf -10 0 0 10 183.13 693.91 Tm -( &)Tj -ET -183.13 690.41 m -195.13 690.41 l -S -BT -/TT4 1 Tf -10 0 0 10 195.13 693.91 Tm -(rest)Tj -ET -195.13 690.41 m -213.47 690.41 l -S -BT -/TT8 1 Tf -10 0 0 10 213.47 693.91 Tm -( )Tj -ET -213.47 690.41 m -219.47 690.41 l -S -BT -/TT6 1 Tf -10 0 0 10 219.47 693.91 Tm -(arguments)Tj -ET -219.47 690.41 m -266.71 690.41 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 693.91 Tm -([Function])Tj -ET -266.71 690.41 m -558 690.41 l -S -BT -10 0 0 10 258 673.62 Tm -0.246 Tw -(Invokes the signal facility on a condition. If the condition is not)Tj -0 -1.2 TD -0.362 Tw -(handled, then the text of the warning is printed on )Tj -/TT8 1 Tf -25.8016 0 TD -0 Tw -(*error-)Tj --25.8016 -1.329 TD -(output*)Tj -/TT2 1 Tf -4.2007 0 TD -0.081 Tw -[(. If the variable )]TJ -/TT8 1 Tf -7.5197 0 TD -0 Tw -(*break-on-warnings*)Tj -/TT2 1 Tf -11.4019 0 TD -0.081 Tw -[( is true, then in)]TJ --23.1223 -1.329 TD -0.093 Tw -(addition to printing the warning, the debugger is entered using the)Tj -0 -1.2 TD -0 Tw -(function )Tj -/TT8 1 Tf -3.9163 0 TD -(break)Tj -/TT2 1 Tf -3.0005 0 TD -0.136 Tw -(. The value returned by )Tj -/TT8 1 Tf -11.2415 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.136 Tw -[( is the condition that)]TJ --20.5587 -1.329 TD -0 Tw -(was signalled.)Tj -0 -1.9 TD -(If )Tj -/TT6 1 Tf -0.9525 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.119 Tw -[( is a condition, then that condition is used directly. In this)]TJ -ET -570 605.53 0.99 -18.99 re -f -BT -10 0 0 10 258 578.75 Tm -0.299 Tw -(case, if the condition is not of type )Tj -/TT8 1 Tf -17.7343 0 TD -0 Tw -(conditions:warning)Tj -/TT2 1 Tf -10.8018 0 TD -0.299 Tw -[( or)]TJ -ET -570 586.53 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 258 565.46 Tm -0 Tw -(arguments)Tj -/TT2 1 Tf -4.7246 0 TD -0.125 Tw -[( is non-null, then an error of type )]TJ -/TT8 1 Tf -15.6748 0 TD -0 Tw -(conditions:type-)Tj -ET -570 573.24 0.99 -13.28 re -f -BT -10 0 0 10 258 552.17 Tm -(error)Tj -/TT2 1 Tf -3.0005 0 TD -( is signalled.)Tj -ET -570 559.95 0.99 -13.28 re -f -BT -10 0 0 10 258 531.88 Tm -(If )Tj -/TT6 1 Tf -0.8875 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.054 Tw -[( is a condition type, then the condition used is the result of)]TJ -ET -570 546.66 0.99 -18.99 re -f -BT -10 0 0 10 258 519.88 Tm -0 Tw -(doing )Tj -/TT8 1 Tf -3.2696 0 TD -1.176 Tw -(\(apply #conditions:make-conditions )Tj -/TT6 1 Tf -23.9555 0 TD -0 Tw -(datum)Tj -ET -570 527.66 0.99 -13.28 re -f -BT -10 0 0 10 258 506.59 Tm -(arguments)Tj -/TT8 1 Tf -4.7246 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.018 Tw -(. This result must be of type )Tj -/TT8 1 Tf -12.6865 0 TD -0 Tw -(conditions:warning)Tj -/TT2 1 Tf -10.8018 0 TD -0.018 Tw -[( or)]TJ -ET -570 514.37 0.99 -13.28 re -f -BT -10 0 0 10 258 493.3 Tm -0 Tw -(an error of type )Tj -/TT8 1 Tf -7.0591 0 TD -(conditions:type-error)Tj -/TT2 1 Tf -12.6021 0 TD -( is signalled.)Tj -ET -570 501.08 0.99 -13.28 re -f -BT -10 0 0 10 258 473.01 Tm -(If )Tj -/TT6 1 Tf -1.2025 0 TD -(datum)Tj -/TT2 1 Tf -2.7793 0 TD -0.369 Tw -[( is a string, then the condition used is the result of)]TJ -ET -570 487.79 0.99 -18.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 462.3 Tm -1.8 Tw -(\(conditions:make-conditions conditions:simple-)Tj -ET -570 468.79 0.99 -11.99 re -f -BT -10 0 0 10 258 449.01 Tm -1.195 Tw -(warning :format-string )Tj -/TT6 1 Tf -16.1922 0 TD -0 Tw -(datum )Tj -/TT8 1 Tf -3.6111 0 TD -(:format-arguments)Tj -ET -570 456.79 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 258 435.72 Tm -(arguments)Tj -/TT8 1 Tf -4.7246 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj -ET -570 443.5 0.99 -13.28 re -f -BT -10 0 0 10 258 415.43 Tm -(The precise mechanism for warning is as follows:)Tj -ET -570 430.21 0.99 -18.99 re -f -BT -10 0 0 10 258 396.43 Tm -0.016 Tw -(1\) If )Tj -/TT8 1 Tf -2.0325 0 TD -0 Tw -(*break-on-warnings*)Tj -/TT2 1 Tf -11.4019 0 TD -0.016 Tw -[( is true, the debugger will be entered.)]TJ -ET -570 411.21 0.99 -20.28 re -f -BT -10 0 0 10 258 383.14 Tm -0.305 Tw -(This feature is primarily for compatibility with old code: use of)Tj -ET -570 390.92 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 371.14 Tm -0 Tw -(conditions:*break-on-signals*)Tj -/TT2 1 Tf -17.4028 0 TD -0.118 Tw -[( is preferred. If the break is)]TJ -ET -570 378.92 0.99 -13.28 re -f -BT -10 0 0 10 258 357.85 Tm -0.716 Tw -(continued using the )Tj -/TT8 1 Tf -11.0992 0 TD -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -0.716 Tw -[( restart, )]TJ -/TT8 1 Tf -5.0995 0 TD -0 Tw -(warn)Tj -ET -570 365.63 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 344.56 Tm -(proceeds with step 2.)Tj -ET -570 352.34 0.99 -11.99 re -f -BT -10 0 0 10 258 325.56 Tm -0.009 Tw -(2\) The warning condition is signalled. While it is being signalled, the)Tj -ET -570 340.34 0.99 -18.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 313.56 Tm -0 Tw -(conditions:muffle-warning)Tj -/TT2 1 Tf -15.0024 0 TD -0.007 Tw -[( restart is established for use by a)]TJ -ET -570 321.34 0.99 -13.28 re -f -BT -10 0 0 10 258 300.27 Tm -0.179 Tw -(handler to bypass further action by )Tj -/TT8 1 Tf -16.6941 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.179 Tw -(, i.e., to cause )Tj -/TT8 1 Tf -7.2194 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.179 Tw -[( to)]TJ -ET -570 308.05 0.99 -13.28 re -f -BT -10 0 0 10 258 286.98 Tm -0 Tw -(immediately return.)Tj -ET -570 294.76 0.99 -11.99 re -f -BT -10 0 0 10 258 267.98 Tm -0.14 Tw -(3\) The warning condition is reported to )Tj -/TT8 1 Tf -18.3228 0 TD -0 Tw -(*error-output*)Tj -/TT2 1 Tf -8.4014 0 TD -0.14 Tw -[( by the)]TJ -ET -570 282.76 0.99 -20.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 254.69 Tm -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.052 Tw -[( function. Note that )]TJ -/TT8 1 Tf -8.8799 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.052 Tw -[( will indicate that the condition being)]TJ -ET -570 262.47 0.99 -13.28 re -f -BT -10 0 0 10 258 241.4 Tm -0.047 Tw -(signalled is a warning when it reports it, so there is no need for the)Tj -ET -570 249.18 0.99 -11.99 re -f -BT -10 0 0 10 258 229.4 Tm -0 Tw -(condition to do so in its report method. )Tj -ET -570 237.18 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 206.4 Tm -(*break-on-warnings*)Tj -ET -126 202.9 m -515.76 202.9 l -S -BT -/TT2 1 Tf -10 0 0 10 515.7599 206.4 Tm -([Variable])Tj -ET -515.76 202.9 m -558 202.9 l -S -BT -/TT4 1 Tf -10 0 0 10 126 189.11 Tm -(check-type)Tj -ET -126 185.61 m -524.66 185.61 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 189.11 Tm -([Macro])Tj -ET -524.66 185.61 m -558 185.61 l -126 168.32 m -126 168.32 l -S -BT -/TT4 1 Tf -10 0 0 10 126 171.82 Tm -(ecase)Tj -ET -126 168.32 m -524.66 168.32 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 171.82 Tm -([Macro])Tj -ET -524.66 168.32 m -558 168.32 l -126 151.03 m -126 151.03 l -S -BT -/TT4 1 Tf -10 0 0 10 126 154.53 Tm -(ccase)Tj -ET -126 151.03 m -524.66 151.03 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 154.53 Tm -([Macro])Tj -ET -524.66 151.03 m -558 151.03 l -126 133.74 m -126 133.74 l -S -BT -/TT4 1 Tf -10 0 0 10 126 137.24 Tm -(etypecase)Tj -ET -126 133.74 m -524.66 133.74 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 137.24 Tm -([Macro])Tj -ET -524.66 133.74 m -558 133.74 l -126 117.74 m -126 117.74 l -S -BT -/TT4 1 Tf -10 0 0 10 126 119.95 Tm -(ctypecase)Tj -ET -126 117.74 m -174.36 117.74 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 119.95 Tm -([Macro])Tj -ET -174.36 117.74 m -558 117.74 l -126 101.74 m -126 101.74 l -S -BT -/TT4 1 Tf -10 0 0 10 126 103.95 Tm -(assert)Tj -ET -126 101.74 m -155.46 101.74 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 103.95 Tm -([Macro])Tj -ET -155.46 101.74 m -558 101.74 l -S -BT -10 0 0 10 258 84.95 Tm -0.415 Tw -(All of the above behave as described in )Tj -/TT6 1 Tf -21.0539 0 TD -(Common Lisp: the)Tj -ET -570 99.73 0.99 -18.99 re -f -BT -10 0 0 10 258 72.95 Tm -0 Tw -(Language)Tj -/TT2 1 Tf -4.4492 0 TD -0.076 Tw -[(. The default clauses of )]TJ -/TT8 1 Tf -11.351 0 TD -0 Tw -(ecase)Tj -/TT2 1 Tf -3.0005 0 TD -0.076 Tw -[( and )]TJ -/TT8 1 Tf -2.3761 0 TD -0 Tw -(ccase)Tj -/TT2 1 Tf -3.0005 0 TD -0.076 Tw -[( forms signal)]TJ -ET -570 80.73 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 59.66 Tm -0 Tw -(conditions:simple-error)Tj -/TT2 1 Tf -13.8022 0 TD -0.134 Tw -[( conditions. The default clauses of)]TJ -ET -570 67.44 0.99 -13.28 re -f -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -39 0 obj -<< -/Length 8233 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(etypecase )Tj -/TT2 1 Tf -6.389 0 TD -(and )Tj -/TT8 1 Tf -2.1263 0 TD -(ctypecase)Tj -/TT2 1 Tf -5.4009 0 TD -0.18 Tw -[( forms signal )]TJ -/TT8 1 Tf -6.4863 0 TD -0 Tw -(conditions:type-)Tj -ET -570 737.98 0.99 -13.28 re -f -BT -10 0 0 10 258 716.91 Tm -(error )Tj -/TT2 1 Tf -3.6396 0 TD -0.018 Tw -(conditions. )Tj -/TT8 1 Tf -5.3724 0 TD -0 Tw -(assert)Tj -/TT2 1 Tf -3.6006 0 TD -0.018 Tw -[( signals the )]TJ -/TT8 1 Tf -5.3904 0 TD -0 Tw -(xcl:assertion-failed)Tj -ET -570 724.69 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 703.62 Tm -0.028 Tw -(condition. )Tj -/TT8 1 Tf -4.8924 0 TD -0 Tw -(ccase)Tj -/TT2 1 Tf -3.0005 0 TD -0.028 Tw -[( and )]TJ -/TT8 1 Tf -2.2801 0 TD -0 Tw -(ctypecase)Tj -/TT2 1 Tf -5.4009 0 TD -0.028 Tw -[( set up a )]TJ -/TT8 1 Tf -4.2258 0 TD -0 Tw -(conditions:store-)Tj -ET -570 711.4 0.99 -13.28 re -f -BT -10 0 0 10 258 690.33 Tm -(value)Tj -/TT2 1 Tf -3.0005 0 TD -( restart.)Tj -ET -570 698.11 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 54 663.04 Tm -(Handling Conditions)Tj -ET -54.01 658.33 m -558.01 658.33 l -S -BT -10 0 0 10 126 639.04 Tm -(conditions:handler-bind)Tj -ET -0.75 w -126 635.54 m -240.45 635.54 l -S -BT -/TT8 1 Tf -10 0 0 10 240.45 639.04 Tm -( )Tj -ET -240.45 635.54 m -246.45 635.54 l -S -BT -/TT6 1 Tf -10 0 0 10 246.45 639.04 Tm -(bindings)Tj -ET -246.45 635.54 m -283.69 635.54 l -S -BT -/TT8 1 Tf -10 0 0 10 283.69 639.04 Tm -( &)Tj -ET -283.69 635.54 m -295.69 635.54 l -S -BT -/TT4 1 Tf -10 0 0 10 295.69 639.04 Tm -(rest)Tj -ET -295.69 635.54 m -314.03 635.54 l -S -BT -/TT8 1 Tf -10 0 0 10 314.03 639.04 Tm -( )Tj -ET -314.03 635.54 m -320.03 635.54 l -S -BT -/TT6 1 Tf -10 0 0 10 320.03 639.04 Tm -(forms)Tj -ET -320.03 635.54 m -345.03 635.54 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 639.04 Tm -([Macro])Tj -ET -345.03 635.54 m -558 635.54 l -S -BT -10 0 0 10 258 618.75 Tm -0.238 Tw -(Executes the forms in a dynamic context where the given local)Tj -ET -570 633.53 0.99 -18.99 re -f -BT -10 0 0 10 258 606.75 Tm -0 Tw -(handler )Tj -/TT6 1 Tf -3.6958 0 TD -(bindings)Tj -/TT2 1 Tf -3.7251 0 TD -0.082 Tw -[( are in effect. The elements of )]TJ -/TT6 1 Tf -14.0808 0 TD -0 Tw -(bindings)Tj -/TT2 1 Tf -3.7251 0 TD -0.082 Tw -[( must take)]TJ -ET -570 614.53 0.99 -11.99 re -f -BT -10 0 0 10 258 594.75 Tm -0.007 Tw -(the form )Tj -/TT8 1 Tf -3.9598 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.6001 0 TD -(type-spec)Tj -/TT8 1 Tf -4.3354 0 TD -( )Tj -/TT6 1 Tf -0.6151 0 TD -(handler)Tj -/TT8 1 Tf -3.3359 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.007 Tw -(. The handlers are bound in the order)Tj -ET -570 602.53 0.99 -13.28 re -f -BT -10 0 0 10 258 581.46 Tm -0.054 Tw -(they are given, i.e., when searching for a handler, the error system)Tj -ET -570 589.24 0.99 -11.99 re -f -BT -10 0 0 10 258 569.46 Tm -1.332 Tw -(will consider the leftmost binding in a particular)Tj -ET -570 577.24 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 557.46 Tm -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -0.273 Tw -[( form first. However, while one of)]TJ -ET -570 565.24 0.99 -13.28 re -f -BT -10 0 0 10 258 544.17 Tm -0.093 Tw -(these handlers is running, none of the bindings established by the)Tj -ET -570 551.95 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 532.17 Tm -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -( will be in effect.)Tj -ET -570 539.95 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 258 511.88 Tm -(type)Tj -/TT2 1 Tf -1.8901 0 TD -0.322 Tw -[( must be a type specifier. To make a binding for several)]TJ -ET -570 526.66 0.99 -18.99 re -f -BT -10 0 0 10 258 499.88 Tm -0 Tw -(condition types, use )Tj -/TT8 1 Tf -9.1167 0 TD -(\(or )Tj -/TT6 1 Tf -2.4004 0 TD -(type1)Tj -/TT8 1 Tf -2.4463 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(type2)Tj -/TT8 1 Tf -2.4463 0 TD -( )Tj -/TT2 1 Tf -0.6001 0 TD -(...)Tj -/TT8 1 Tf -0.8335 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj -ET -570 507.66 0.99 -13.28 re -f -BT -/TT6 1 Tf -10 0 0 10 258 479.59 Tm -(handler)Tj -/TT2 1 Tf -3.3359 0 TD -0.043 Tw -[( should evaluate to a function of one argument, a condition,)]TJ --3.3359 -1.2 TD -0.11 Tw -(to be used to handle a signalled condition during execution of the)Tj -/TT6 1 Tf -T* -0 Tw -(forms)Tj -/TT2 1 Tf -2.5 0 TD -(.)Tj --2.5 -1.9 TD -0.138 Tw -(An example of the use of )Tj -/TT8 1 Tf -12.1683 0 TD -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -0.138 Tw -[( appears)]TJ --25.9706 -1.329 TD -0 Tw -(at the end of the )Tj -/TT8 1 Tf -7.5059 0 TD -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -( macro description.)Tj -/TT4 1 Tf --34.5081 -2.429 TD -(conditions:handler-case)Tj -ET -126 395.51 m -241.58 395.51 l -S -BT -/TT8 1 Tf -10 0 0 10 241.58 399.01 Tm -( )Tj -ET -241.58 395.51 m -247.58 395.51 l -S -BT -/TT6 1 Tf -10 0 0 10 247.58 399.01 Tm -(form)Tj -ET -247.58 395.51 m -267.58 395.51 l -S -BT -/TT8 1 Tf -10 0 0 10 267.58 399.01 Tm -( &)Tj -ET -267.58 395.51 m -279.58 395.51 l -S -BT -/TT4 1 Tf -10 0 0 10 279.58 399.01 Tm -(rest)Tj -ET -279.58 395.51 m -297.92 395.51 l -S -BT -/TT8 1 Tf -10 0 0 10 297.92 399.01 Tm -( )Tj -ET -297.92 395.51 m -303.92 395.51 l -S -BT -/TT6 1 Tf -10 0 0 10 303.92 399.01 Tm -(cases)Tj -ET -303.92 395.51 m -330.04 395.51 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 399.01 Tm -([Macro])Tj -ET -330.04 395.51 m -558 395.51 l -S -BT -/TT4 1 Tf -10 0 0 10 126 374.72 Tm -(xcl:condition-case)Tj -ET -126 371.22 m -213.8 371.22 l -S -BT -/TT8 1 Tf -10 0 0 10 213.8 374.72 Tm -( )Tj -ET -213.8 371.22 m -219.8 371.22 l -S -BT -/TT6 1 Tf -10 0 0 10 219.8 374.72 Tm -(form)Tj -ET -219.8 371.22 m -239.8 371.22 l -S -BT -/TT8 1 Tf -10 0 0 10 239.8 374.72 Tm -( &)Tj -ET -239.8 371.22 m -251.8 371.22 l -S -BT -/TT4 1 Tf -10 0 0 10 251.8 374.72 Tm -(rest)Tj -ET -251.8 371.22 m -270.14 371.22 l -S -BT -/TT8 1 Tf -10 0 0 10 270.14 374.72 Tm -( )Tj -ET -270.14 371.22 m -276.14 371.22 l -S -BT -/TT6 1 Tf -10 0 0 10 276.14 374.72 Tm -(cases)Tj -ET -276.14 371.22 m -302.26 371.22 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 374.72 Tm -([Macro])Tj -ET -302.26 371.22 m -558 371.22 l -S -BT -10 0 0 10 258 354.43 Tm -(Executes the given )Tj -/TT6 1 Tf -8.7275 0 TD -(form)Tj -/TT2 1 Tf -2 0 TD -(. Each )Tj -/TT6 1 Tf -3.1128 0 TD -(case)Tj -/TT2 1 Tf -2.1123 0 TD -( has the form)Tj -/TT8 1 Tf --15.9526 -1.9 TD -( \()Tj -/TT6 1 Tf -2.4004 0 TD -(type)Tj -/TT8 1 Tf -1.8901 0 TD -( \()Tj -/TT2 1 Tf -1.2002 0 TD -([)Tj -/TT6 1 Tf -0.2778 0 TD -(var)Tj -/TT2 1 Tf -1.3892 0 TD -(])Tj -/TT8 1 Tf -0.2778 0 TD -(\) . )Tj -/TT6 1 Tf -2.4004 0 TD -(body)Tj -/TT8 1 Tf -2.1685 0 TD -(\))Tj -/TT2 1 Tf --12.0044 -2.029 TD -0.343 Tw -(If a condition is signalled \(and not handled by an intervening)Tj -0 -1.2 TD -0.413 Tw -[(handler\) during the execution of the form, and there is an)]TJ -T* -0 Tw -(appropriate clausei.e., one for which)Tj -/TT8 1 Tf -0 -1.9 TD -( \(typep )Tj -/TT6 1 Tf -6.001 0 TD -(condition)Tj -/TT8 1 Tf -4.0029 0 TD -( )Tj -/TT6 1 Tf -1.2002 0 TD -(type)Tj -/TT8 1 Tf -1.8901 0 TD -(\))Tj -/TT2 1 Tf --13.0942 -2.029 TD -0.31 Tw -(is truethen control is transferred to the body of the relevant)Tj -0 -1.2 TD -0.049 Tw -(clause, binding )Tj -/TT6 1 Tf -7.0472 0 TD -0 Tw -(var)Tj -/TT2 1 Tf -1.3892 0 TD -0.049 Tw -(, if present, to the condition that was signaled. If)Tj --8.4364 -1.2 TD -0.004 Tw -(no condition is signalled, then the values resulting from the )Tj -/TT6 1 Tf -26.2778 0 TD -0 Tw -(form)Tj -/TT2 1 Tf -2 0 TD -0.001 Tc -0.003 Tw -( are)Tj --28.2778 -1.2 TD -0 Tc -0.308 Tw -(returned by the )Tj -/TT8 1 Tf -7.9284 0 TD -0 Tw -(xcl:condition-case)Tj -/TT2 1 Tf -10.8018 0 TD -0.308 Tw -(. If the condition is not)Tj --18.7302 -1.329 TD -0 Tw -(needed, )Tj -/TT8 1 Tf -3.8926 0 TD -(var)Tj -/TT2 1 Tf -1.8003 0 TD -( may be omitted.)Tj --5.6929 -2.329 TD -(Earlier clauses will be considered first by the error system. I.e.,)Tj -/TT8 1 Tf -2 -1.3 TD -(\(xcl:condition-case )Tj -/TT6 1 Tf -12.002 0 TD -(form)Tj -/TT8 1 Tf --12.002 -1.129 TD -( \()Tj -/TT6 1 Tf -2.4004 0 TD -(cond1 )Tj -/TT8 1 Tf -3.0024 0 TD -(...\))Tj --5.4028 -1.129 TD -( \()Tj -/TT6 1 Tf -2.4004 0 TD -(cond2 )Tj -/TT8 1 Tf -3.0024 0 TD -(...\)\))Tj -/TT2 1 Tf --7.4028 -2.129 TD -(is equivalent to)Tj -/TT8 1 Tf -2 -1.171 TD -(\(xcl:condition-case)Tj -0 -1.129 TD -( \(xcl:condition-case )Tj -/TT6 1 Tf -16.8027 0 TD -(form)Tj -/TT8 1 Tf --16.8027 -1.129 TD -( \()Tj -/TT6 1 Tf -7.2012 0 TD -(cond1)Tj -/TT8 1 Tf -2.7246 0 TD -( ...\)\))Tj --9.9258 -1.129 TD -( \()Tj -/TT6 1 Tf -2.4004 0 TD -(cond2)Tj -/TT8 1 Tf -2.7246 0 TD -( ...\)\))Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -44 0 obj -<< -/Length 6500 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 258 730.2 Tm -(type)Tj -ET -0.75 w -258 732.86 m -276.9 732.86 l -S -BT -/TT2 1 Tf -10 0 0 10 276.9 730.2 Tm -0.358 Tw -[( may also be a list of types, in which case it will catch)]TJ -ET -276.9 733.53 m -557.97 733.53 l -S -BT -10 0 0 10 258 718.2 Tm -0 Tw -(conditions of any of the specified types.)Tj -ET -258 721.53 m -432.54 721.53 l -S -BT -10 0 0 10 258 696.2 Tm -0.179 Tw -(One may also specify an action to be taken if execution of )Tj -/TT6 1 Tf -27.9961 0 TD -0 Tw -(form)Tj -ET -570 713.98 0.99 -21.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 684.2 Tm -0.088 Tw -(completes normally. This may be done by specifying a clause that)Tj -ET -570 691.98 0.99 -11.99 re -f -BT -10 0 0 10 258 672.2 Tm -0 Tw -(has )Tj -/TT8 1 Tf -2.0551 0 TD -(:no-error)Tj -/TT2 1 Tf -5.4009 0 TD -0.165 Tw -[( as its type. Such a clause, if provided, must be)]TJ -ET -570 679.98 0.99 -13.28 re -f -BT -10 0 0 10 258 658.91 Tm -0 Tw -(last. A )Tj -/TT8 1 Tf -3.0566 0 TD -(:no-error)Tj -/TT2 1 Tf -5.4009 0 TD -( clause looks like: )Tj -ET -570 666.69 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 638.62 Tm -( \(:no-error )Tj -/TT6 1 Tf -8.4014 0 TD -(lambda-list)Tj -/TT8 1 Tf -4.835 0 TD -( . )Tj -/TT6 1 Tf -1.8003 0 TD -(body)Tj -/TT8 1 Tf -2.1685 0 TD -(\))Tj -ET -570 653.4 0.99 -20.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 615.33 Tm -0.175 Tw -(If execution of the form completes normally and there is a )Tj -/TT8 1 Tf -27.6042 0 TD -0 Tw -(:no-)Tj -ET -570 633.11 0.99 -23.28 re -f -BT -10 0 0 10 258 602.04 Tm -(error)Tj -/TT2 1 Tf -3.0005 0 TD -0.16 Tw -[( clause, the values produced by the form will be bound to)]TJ -ET -570 609.82 0.99 -13.28 re -f -BT -10 0 0 10 258 588.75 Tm -0.082 Tw -(variables in the clauses )Tj -/TT6 1 Tf -11.2225 0 TD -0 Tw -(lambda-list)Tj -/TT2 1 Tf -4.835 0 TD -0.082 Tw -[( and the )]TJ -/TT6 1 Tf -4.1381 0 TD -0 Tw -(body)Tj -/TT2 1 Tf -2.1685 0 TD -0.082 Tw -[( will be executed)]TJ -ET -570 596.53 0.99 -11.99 re -f -BT -10 0 0 10 258 576.75 Tm -0.037 Tw -(with none of the handler bindings in effect. In this case the value of)Tj -ET -570 584.53 0.99 -11.99 re -f -BT -10 0 0 10 258 564.75 Tm -0 Tw -(the )Tj -/TT8 1 Tf -1.788 0 TD -(xcl:condition-case)Tj -/TT2 1 Tf -10.8018 0 TD -0.12 Tw -[( form is the value returned by the last)]TJ -ET -570 572.53 0.99 -13.28 re -f -BT -10 0 0 10 258 551.46 Tm -0.292 Tw -(form of the )Tj -/TT6 1 Tf -5.9336 0 TD -0 Tw -(body)Tj -/TT2 1 Tf -2.1685 0 TD -0.292 Tw -[( of its )]TJ -/TT8 1 Tf -3.5435 0 TD -0 Tw -(:no-error)Tj -/TT2 1 Tf -5.4009 0 TD -0.292 Tw -[( clause. Having a :no-error)]TJ -ET -570 559.24 0.99 -13.28 re -f -BT -10 0 0 10 258 538.17 Tm -0.621 Tw -(clause is equivalent to wrapping)Tj -/TT8 1 Tf -16.6593 0 TD -1.341 Tw -[( \(mutiple-value-call)]TJ -ET -570 545.95 0.99 -13.28 re -f -BT -10 0 0 10 258 524.88 Tm -0 Tw -(#\(lambda )Tj -/TT6 1 Tf -7.524 0 TD -(lambda-list)Tj -/TT8 1 Tf -4.835 0 TD -1.523 Tw -[( . )]TJ -/TT6 1 Tf -4.8463 0 TD -0 Tw -(body)Tj -/TT8 1 Tf -2.1685 0 TD -(\) )Tj -/TT2 1 Tf -2.7232 0 TD -(...)Tj -/TT8 1 Tf -0.8335 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.706 Tw -[( around the)]TJ -ET -570 532.66 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 511.59 Tm -0 Tw -(xcl:condition-case)Tj -/TT2 1 Tf -10.8018 0 TD -( form.)Tj -ET -570 519.37 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 488.3 Tm -(conditions:handler-case)Tj -/TT2 1 Tf -13.8022 0 TD -2.418 Tw -[( is synonymous with)]TJ -ET -570 506.08 0.99 -23.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 475.01 Tm -0 Tw -(xcl:condition-case)Tj -/TT2 1 Tf -10.8018 0 TD -(.)Tj -ET -570 482.79 0.99 -13.28 re -f -BT -10 0 0 10 258 451.72 Tm -(Examples:)Tj -/TT8 1 Tf --6 -2.071 TD -(\(xcl:condition-case \(/ x y\))Tj -0 -1 TD -( \(division-by-zero \(\) nil\)\))Tj -0 -2.2 TD -(\(xcl:condition-case \(open *the-file*)Tj -0 -1 TD -( :direction :input\))Tj -T* -( \(file-error \(condition\))Tj -T* -( \(format t "~&Open failed: ~A~%" condition\)\)\))Tj -0 -2.2 TD -(\(xcl:condition-case \(some-user-function\))Tj -0 -1 TD -( \(file-error \(condition\) condition\))Tj -T* -( \(division-by-zero \(\) 0\))Tj -T* -( \(\(or unbound-variable undefined-function\) \(\))Tj -T* -( unbound\)\))Tj -0 -2.2 TD -(\(xcl:condition-case \(open my-file\))Tj -ET -570 292.5 0.99 -10.99 re -f -BT -10 0 0 10 198 274.01 Tm -( \(file-error \(\))Tj -ET -570 281.5 0.99 -10.99 re -f -BT -10 0 0 10 198 263.01 Tm -( \(format *error-output* "Couldnt open ~S.")Tj -ET -570 270.5 0.99 -10.99 re -f -BT -10 0 0 10 198 252.01 Tm -( my-file\)\))Tj -ET -570 259.5 0.99 -10.99 re -f -BT -10 0 0 10 198 241.01 Tm -( \(:no-error \(stream\))Tj -ET -570 248.5 0.99 -10.99 re -f -BT -10 0 0 10 198 230.01 Tm -( \(open-more-files my-file stream\) stream\)\)\))Tj -ET -570 237.5 0.99 -10.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 208.72 Tm -0.673 Tw -(Note the difference between )Tj -/TT8 1 Tf -15.4781 0 TD -0 Tw -(xcl:condition-case )Tj -/TT2 1 Tf -12.8549 0 TD -(and)Tj -/TT8 1 Tf --28.333 -1.329 TD -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -0.059 Tw -[(. In )]TJ -/TT8 1 Tf -2.1223 0 TD -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -(,)Tj --29.7268 -1.329 TD -0.304 Tw -(you are specifying functions that will be called in the dynamic)Tj -0 -1.2 TD -0.319 Tw -(context of the condition)Tj -/TT8 1 Tf -11.2417 0 TD -0 Tw -( )Tj -/TT2 1 Tf -1.2881 0 TD -0.319 Tw -(signalling form. In )Tj -/TT8 1 Tf -9.0717 0 TD -0 Tw -(xcl:condition-)Tj --21.6015 -1.329 TD -(case)Tj -/TT2 1 Tf -2.4004 0 TD -0.158 Tw -(, you are specifying continuations to be used instead of the)Tj --2.4004 -1.329 TD -0.161 Tw -(original form if a condition of a particular type is signaled. These)Tj -0 -1.2 TD -0.076 Tw -(continuations will be executed in the same dynamic context as the)Tj -T* -0 Tw -(original form. )Tj -/TT4 1 Tf --13.2 -2.3 TD -(conditions:ignore-errors)Tj -ET -126 93.06 m -242.68 93.06 l -S -BT -/TT8 1 Tf -10 0 0 10 242.68 96.56 Tm -( &)Tj -ET -242.68 93.06 m -254.68 93.06 l -S -BT -/TT4 1 Tf -10 0 0 10 254.68 96.56 Tm -(body)Tj -ET -254.68 93.06 m -278.57 93.06 l -S -BT -/TT8 1 Tf -10 0 0 10 278.57 96.56 Tm -( )Tj -ET -278.57 93.06 m -284.57 93.06 l -S -BT -/TT6 1 Tf -10 0 0 10 284.57 96.56 Tm -(forms)Tj -ET -284.57 93.06 m -524.66 93.06 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 96.56 Tm -([Macro])Tj -ET -524.66 93.06 m -558 93.06 l -S -BT -10 0 0 10 258 73.27 Tm -0.226 Tw -(Executes the forms in a context that handles conditions of type)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(error)Tj -/TT2 1 Tf -3.0005 0 TD -0.124 Tw -[( by returning control to this form. If no error is signaled, all)]TJ -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -47 0 obj -<< -/Length 10025 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -1.117 Tw -(values returned by the last form are returned by)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(conditions:ignore-errors)Tj -/TT2 1 Tf -14.4023 0 TD -0.164 Tw -[(. Otherwise, the form returns the)]TJ --14.4023 -1.329 TD -0 Tw -(two values )Tj -/TT8 1 Tf -5.2803 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -( and the condition that was signaled. Synonym for)Tj -/TT8 1 Tf --5.0806 -1.429 TD -(\(xcl:condition-case \(progn . )Tj -/TT6 1 Tf -17.4028 0 TD -(forms)Tj -/TT8 1 Tf -2.5 0 TD -(\))Tj --19.9028 -1 TD -( \(error \(condition\))Tj -0 -1.129 TD -( \(values nil condition\)\))Tj -/TT2 1 Tf -17.4028 0 TD -(.)Tj -/TT8 1 Tf --32.6028 -2.229 TD -(xcl:debug &optional )Tj -ET -0.75 w -126 650.04 m -246 650.04 l -S -BT -/TT6 1 Tf -10 0 0 10 246 647.04 Tm -(datum)Tj -ET -246 649.7 m -273.79 649.7 l -S -BT -/TT8 1 Tf -10 0 0 10 273.79 647.04 Tm -( &rest )Tj -ET -273.79 650.04 m -315.79 650.04 l -S -BT -/TT6 1 Tf -10 0 0 10 315.79 647.04 Tm -(arguments)Tj -ET -315.79 649.7 m -363.03 649.7 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 647.04 Tm -([Function])Tj -ET -363.03 650.37 m -558 650.37 l -S -BT -10 0 0 10 258 623.75 Tm -0.14 Tw -(Enters the debugger with a given condition without signalling that)Tj -ET -258 627.08 m -557.97 627.08 l -S -BT -10 0 0 10 258 611.75 Tm -0.265 Tw -[(condition. When the debugger is entered, it will announce the)]TJ -ET -258 615.08 m -557.98 615.08 l -S -BT -10 0 0 10 258 599.75 Tm -0 Tw -(condition by invoking the conditions report function.)Tj -ET -258 603.08 m -487 603.08 l -S -BT -/TT6 1 Tf -10 0 0 10 258 577.75 Tm -(datum)Tj -ET -258 580.41 m -285.79 580.41 l -S -BT -/TT2 1 Tf -10 0 0 10 285.79 577.75 Tm -0.12 Tw -[( is treated the same as for )]TJ -ET -285.79 581.08 m -412.58 581.08 l -S -BT -/TT8 1 Tf -10 0 0 10 412.58 577.75 Tm -0 Tw -(xcl:signal)Tj -ET -412.58 580.75 m -472.58 580.75 l -S -BT -/TT2 1 Tf -10 0 0 10 472.58 577.75 Tm -0.12 Tw -[( except if )]TJ -ET -472.58 581.08 m -518.98 581.08 l -S -BT -/TT6 1 Tf -10 0 0 10 518.98 577.75 Tm -0 Tw -(datum)Tj -ET -518.98 580.41 m -546.77 580.41 l -S -BT -/TT2 1 Tf -10 0 0 10 546.77 577.75 Tm -0.12 Tw -[( is)]TJ -ET -546.77 581.08 m -557.97 581.08 l -S -BT -10 0 0 10 258 564.46 Tm -0 Tw -(not specified, it defaults to )Tj -ET -258 567.79 m -376.4 567.79 l -S -BT -/TT8 1 Tf -10 0 0 10 376.4 564.46 Tm -("Call to DEBUG")Tj -ET -376.4 567.46 m -466.4 567.46 l -S -BT -/TT2 1 Tf -10 0 0 10 466.4 564.46 Tm -(.)Tj -ET -466.4 567.79 m -469.18 567.79 l -S -BT -10 0 0 10 258 541.17 Tm -0.029 Tw -(This function will never directly return to its caller. Return can occur)Tj -ET -258 544.5 m -557.95 544.5 l -S -BT -10 0 0 10 258 529.17 Tm -0.124 Tw -(only by a special transfer of control, such as to a )Tj -ET -258 532.5 m -488.41 532.5 l -S -BT -/TT8 1 Tf -10 0 0 10 488.41 529.17 Tm -0 Tw -(catch)Tj -ET -488.41 532.17 m -518.41 532.17 l -S -BT -/TT2 1 Tf -10 0 0 10 518.41 529.17 Tm -(, )Tj -ET -518.41 532.5 m -525.21 532.5 l -S -BT -/TT8 1 Tf -10 0 0 10 525.21 529.17 Tm -(block)Tj -ET -525.21 532.17 m -555.21 532.17 l -S -BT -/TT2 1 Tf -10 0 0 10 555.21 529.17 Tm -(,)Tj -ET -555.21 532.5 m -557.99 532.5 l -S -BT -/TT8 1 Tf -10 0 0 10 258 515.88 Tm -(tagbody)Tj -ET -258 518.88 m -300 518.88 l -S -BT -/TT2 1 Tf -10 0 0 10 300 515.88 Tm -(, )Tj -ET -300 519.21 m -305.56 519.21 l -S -BT -/TT8 1 Tf -10 0 0 10 305.56 515.88 Tm -(xcl:proceed-case)Tj -ET -305.56 518.88 m -401.56 518.88 l -S -BT -/TT2 1 Tf -10 0 0 10 401.56 515.88 Tm -( or )Tj -ET -401.56 519.21 m -416.01 519.21 l -S -BT -/TT8 1 Tf -10 0 0 10 416.01 515.88 Tm -(xcl:catch-abort)Tj -ET -416.01 518.88 m -506.01 518.88 l -S -BT -/TT2 1 Tf -10 0 0 10 506.0099 515.88 Tm -(.)Tj -ET -506.01 519.21 m -508.79 519.21 l -S -BT -/TT4 1 Tf -10 0 0 10 126 491.59 Tm -(conditions:invoke-debugger)Tj -ET -126 488.09 m -260.46 488.09 l -S -BT -/TT8 1 Tf -10 0 0 10 260.46 491.59 Tm -( )Tj -ET -260.46 488.09 m -266.46 488.09 l -S -BT -/TT6 1 Tf -10 0 0 10 266.46 491.59 Tm -(condition)Tj -ET -266.46 488.09 m -306.48 488.09 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 491.59 Tm -([Function])Tj -ET -306.48 488.09 m -558 488.09 l -S -570 510.37 0.99 -24.28 re -f -BT -10 0 0 10 258 468.3 Tm -0.069 Tw -[(Invokes the debugger with the given condition. This is intended to)]TJ -ET -570 486.08 0.99 -21.99 re -f -BT -10 0 0 10 258 456.3 Tm -0.217 Tw -[(be used as a portable entry point to the debugger. For finer)]TJ -ET -570 464.08 0.99 -11.99 re -f -BT -10 0 0 10 258 444.3 Tm -0 Tw -(control over the debugging state, see the function )Tj -/TT8 1 Tf -22.1816 0 TD -(xcl:debugger)Tj -/TT2 1 Tf -7.2012 0 TD -(. )Tj -ET -570 452.08 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 420.01 Tm -(break &optional)Tj -ET -126 416.51 m -201.57 416.51 l -S -BT -/TT8 1 Tf -10 0 0 10 201.57 420.01 Tm -( )Tj -ET -201.57 416.51 m -207.57 416.51 l -S -BT -/TT6 1 Tf -10 0 0 10 207.57 420.01 Tm -(format-string)Tj -ET -207.57 416.51 m -263.69 416.51 l -S -BT -/TT8 1 Tf -10 0 0 10 263.69 420.01 Tm -( &)Tj -ET -263.69 416.51 m -275.69 416.51 l -S -BT -/TT4 1 Tf -10 0 0 10 275.69 420.01 Tm -(rest)Tj -ET -275.69 416.51 m -294.03 416.51 l -S -BT -/TT8 1 Tf -10 0 0 10 294.03 420.01 Tm -( )Tj -ET -294.03 416.51 m -300.03 416.51 l -S -BT -/TT6 1 Tf -10 0 0 10 300.03 420.01 Tm -(format-arguments)Tj -ET -300.03 416.51 m -378.94 416.51 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 420.01 Tm -([Function])Tj -ET -378.94 416.51 m -558 416.51 l -S -570 438.79 0.99 -24.28 re -f -BT -10 0 0 10 258 396.72 Tm -0.468 Tw -(Enters the debugger with a simple condition with the given)Tj -ET -570 414.5 0.99 -21.99 re -f -BT -10 0 0 10 258 384.72 Tm -0.083 Tw -(arguments. If no )Tj -/TT6 1 Tf -7.7529 0 TD -0 Tw -(format-string)Tj -/TT2 1 Tf -5.6123 0 TD -0.083 Tw -[( is provided, it defaults to )]TJ -/TT8 1 Tf -11.8374 0 TD -0 Tw -("Break.")Tj -ET -570 392.5 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 371.43 Tm -1.535 Tw -(Computation may be continued by invoking the)Tj -ET -570 379.21 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 359.43 Tm -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -( restart. If continued, )Tj -/TT8 1 Tf -9.3936 0 TD -(break)Tj -/TT2 1 Tf -3.0005 0 TD -( returns )Tj -/TT8 1 Tf -3.668 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -ET -570 367.21 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 336.14 Tm -(break )Tj -/TT2 1 Tf -3.6006 0 TD -(is approximately:)Tj -ET -570 353.92 0.99 -34.28 re -f -BT -/TT8 1 Tf -10 0 0 10 198 313.14 Tm -(\(defun break \(&optional \(format-string "Break"\))Tj -ET -570 319.63 0.99 -9.99 re -f -BT -10 0 0 10 198 303.14 Tm -( &rest format-arguments\))Tj -ET -570 309.63 0.99 -9.99 re -f -BT -10 0 0 10 198 293.14 Tm -( \(conditions:restart-case \(conditions:invoke-debugger)Tj -ET -570 299.63 0.99 -9.99 re -f -BT -10 0 0 10 198 283.14 Tm -(\(conditions:make-conditions conditions:simple-condition)Tj -ET -570 289.63 0.99 -9.99 re -f -BT -10 0 0 10 198 273.14 Tm -(:format-string format-string :format-arguments format-)Tj -ET -570 279.63 0.99 -9.99 re -f -BT -10 0 0 10 198 263.14 Tm -(arguments\))Tj -ET -570 269.63 0.99 -9.99 re -f -BT -10 0 0 10 198 253.14 Tm -( \(conditions:continue \(\))Tj -ET -570 259.63 0.99 -9.99 re -f -BT -10 0 0 10 198 243.14 Tm -( :report "Return from BREAK.")Tj -ET -570 249.63 0.99 -9.99 re -f -BT -10 0 0 10 198 233.14 Tm -( nil\)\)\))Tj -ET -570 239.63 0.99 -9.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 190.85 Tm -(Restarts)Tj -ET -1 w -54.01 188.14 m -558.01 188.14 l -S -BT -10 0 0 10 126 177.85 Tm -(conditions:restart-case)Tj -ET -0.75 w -126 174.35 m -236.58 174.35 l -S -BT -/TT8 1 Tf -10 0 0 10 236.58 177.85 Tm -( )Tj -ET -236.58 174.35 m -242.58 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 242.58 177.85 Tm -(expression )Tj -ET -242.58 174.35 m -293.71 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 293.71 177.85 Tm -({)Tj -ET -293.71 174.35 m -297.05 174.35 l -S -BT -/TT8 1 Tf -10 0 0 10 297.05 177.85 Tm -(\()Tj -ET -297.05 174.35 m -303.05 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 303.05 177.85 Tm -(case-name)Tj -ET -303.05 174.35 m -352.51 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 352.51 177.85 Tm -( )Tj -ET -352.51 174.35 m -355.29 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 355.29 177.85 Tm -(arglist)Tj -ET -355.29 174.35 m -381.96 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 381.96 177.85 Tm -( {)Tj -ET -381.96 174.35 m -388.08 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 388.08 177.85 Tm -(keyword)Tj -ET -388.08 174.35 m -425.31 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 425.31 177.85 Tm -( )Tj -ET -425.31 174.35 m -428.09 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 428.09 177.85 Tm -(value)Tj -ET -428.09 174.35 m -451.99 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 451.99 177.85 Tm -(}* {)Tj -ET -451.99 174.35 m -465.34 174.35 l -S -BT -/TT6 1 Tf -10 0 0 10 465.34 177.85 Tm -(form)Tj -ET -465.34 174.35 m -485.34 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 485.34 177.85 Tm -(}*)Tj -ET -485.34 174.35 m -492.57 174.35 l -S -BT -/TT8 1 Tf -10 0 0 10 492.5699 177.85 Tm -(\))Tj -ET -492.57 174.35 m -498.57 174.35 l -S -BT -/TT2 1 Tf -10 0 0 10 498.5699 177.85 Tm -(}*)Tj -ET -498.57 174.35 m -505.8 174.35 l -S -570 187.63 0.99 -15.28 re -f -BT -10 0 0 10 524.66 162.56 Tm -([Macro])Tj -ET -126 160.35 m -558 160.35 l -S -570 172.34 0.99 -13.99 re -f -BT -10 0 0 10 258 139.56 Tm -(The )Tj -/TT6 1 Tf -2.111 0 TD -(expression )Tj -/TT2 1 Tf -5.2238 0 TD -0.11 Tw -(is evaluated in a dynamic context where the case)Tj -ET -570 158.34 0.99 -22.99 re -f -BT -10 0 0 10 258 127.56 Tm -(clauses have special meanings as points to which control may be)Tj -ET -570 135.34 0.99 -11.99 re -f -BT -10 0 0 10 258 115.56 Tm -0.048 Tw -(transferred. If )Tj -/TT6 1 Tf -6.3206 0 TD -0 Tw -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.048 Tw -[( runs to completion, all values returned by)]TJ -ET -570 123.34 0.99 -11.99 re -f -BT -10 0 0 10 258 103.56 Tm -0.059 Tw -(the form are simply returned by the )Tj -/TT8 1 Tf -16.1977 0 TD -0 Tw -(conditions:restart-case)Tj -ET -570 111.34 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 90.27 Tm -0.304 Tw -[(form. On the other hand, the computation of )]TJ -/TT6 1 Tf -22.692 0 TD -0 Tw -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.304 Tw -[( may)]TJ -ET -570 98.05 0.99 -11.99 re -f -BT -10 0 0 10 258 78.27 Tm -0.016 Tw -[(choose to transfer control to one of the restart clauses. If a transfer)]TJ -ET -570 86.05 0.99 -11.99 re -f -BT -10 0 0 10 258 66.27 Tm -0.213 Tw -(to a clause occurs, the forms in the body of that clause will be)Tj -ET -570 74.05 0.99 -11.99 re -f -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -50 0 obj -<< -/Length 7064 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -1.387 Tw -(evaluated in the same dynamic context as the)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 718.2 Tm -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -0.217 Tw -[( form, and any values returned by)]TJ -ET -570 725.98 0.99 -13.28 re -f -BT -10 0 0 10 258 704.91 Tm -0.041 Tw -(the last such form will be returned by the )Tj -/TT8 1 Tf -18.6 0 TD -0 Tw -(conditions:restart-)Tj -ET -570 712.69 0.99 -13.28 re -f -BT -10 0 0 10 258 691.62 Tm -(case)Tj -/TT2 1 Tf -2.4004 0 TD -( form. )Tj -ET -570 699.4 0.99 -13.28 re -f -BT -10 0 0 10 258 671.33 Tm -(A restart clause has the form given above: )Tj -ET -570 686.11 0.99 -16.99 re -f -BT -/TT8 1 Tf -10 0 0 10 340.94 654.33 Tm -(\()Tj -/TT6 1 Tf -0.6001 0 TD -(case-name)Tj -/TT8 1 Tf -4.9468 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(arglist)Tj -/TT8 1 Tf -2.6675 0 TD -( {)Tj -/TT6 1 Tf -1.2002 0 TD -(keyword)Tj -/TT8 1 Tf -3.7236 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(value)Tj -/TT2 1 Tf -2.3906 0 TD -(}*)Tj -/TT8 1 Tf -0.7231 0 TD -( )Tj -/TT2 1 Tf -0.6001 0 TD -({)Tj -/TT6 1 Tf -0.334 0 TD -(form)Tj -/TT2 1 Tf -2 0 TD -(}*)Tj -/TT8 1 Tf -0.7231 0 TD -(\))Tj -ET -570 669.11 0.99 -18.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 633.04 Tm -(The )Tj -/TT6 1 Tf -2.001 0 TD -(case-name)Tj -/TT2 1 Tf -4.9468 0 TD -( may be )Tj -/TT8 1 Tf -3.835 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -( or any symbol.)Tj -ET -570 650.82 0.99 -23.28 re -f -BT -10 0 0 10 258 609.75 Tm -(The )Tj -/TT6 1 Tf -2.042 0 TD -(arglist)Tj -/TT2 1 Tf -2.6675 0 TD -0.041 Tw -[( is a normal lambda list that will be bound and evaluated)]TJ -ET -570 627.53 0.99 -21.99 re -f -BT -10 0 0 10 258 597.75 Tm -0.091 Tw -(in the dynamic context of the )Tj -/TT8 1 Tf -13.5533 0 TD -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -0.091 Tw -[( form.)]TJ -ET -570 605.53 0.99 -13.28 re -f -BT -10 0 0 10 258 584.46 Tm -1.261 Tw -(They will use whatever values were provided by)Tj -ET -570 592.24 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 572.46 Tm -0 Tw -(conditions:invoke-restart)Tj -/TT2 1 Tf -15.0024 0 TD -1.378 Tw -[( or )]TJ -/TT8 1 Tf -4.2008 0 TD -0 Tw -(conditions:invoke-)Tj -ET -570 580.24 0.99 -13.28 re -f -BT -10 0 0 10 258 559.17 Tm -(restart-interactively)Tj -/TT2 1 Tf -12.6021 0 TD -0.239 Tw -[(. Definitions of these two functions)]TJ -ET -570 566.95 0.99 -13.28 re -f -BT -10 0 0 10 258 545.88 Tm -0 Tw -(appear later in this section. )Tj -ET -570 553.66 0.99 -11.99 re -f -BT -10 0 0 10 258 523.88 Tm -(The valid )Tj -/TT6 1 Tf -4.3354 0 TD -(keyword)Tj -/TT2 1 Tf -3.7236 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(value)Tj -/TT2 1 Tf -2.3906 0 TD -( pairs are:)Tj -ET -570 541.66 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 501.88 Tm -(:filter )Tj -/TT6 1 Tf -4.8008 0 TD -(expression)Tj -ET -570 519.66 0.99 -22.28 re -f -BT -10 0 0 10 270 479.59 Tm -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.06 Tw -[( should be suitable as an argument to the )]TJ -/TT8 1 Tf -19.1635 0 TD -0 Tw -(function)Tj -ET -570 497.37 0.99 -23.28 re -f -BT -/TT2 1 Tf -10 0 0 10 270 466.3 Tm -0.384 Tw -[(special form. It defines a predicate of no arguments that)]TJ -ET -570 474.08 0.99 -11.99 re -f -BT -10 0 0 10 270 454.3 Tm -0.332 Tw -(determines if this clause is visible to)Tj -/TT8 1 Tf -17.8875 0 TD -0.716 Tw -[( conditions:find-)]TJ -ET -570 462.08 0.99 -13.28 re -f -BT -10 0 0 10 270 441.01 Tm -0 Tw -(restart)Tj -/TT2 1 Tf -4.2007 0 TD -(. Default = true. )Tj -ET -570 448.79 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 417.72 Tm -(:condition )Tj -/TT6 1 Tf -6.6011 0 TD -(type)Tj -ET -570 435.5 0.99 -22.28 re -f -BT -/TT2 1 Tf -10 0 0 10 270 395.43 Tm -0.478 Tw -(Shorthand for a common special case of )Tj -/TT8 1 Tf -21.5223 0 TD -0 Tw -(:filter.)Tj -/TT2 1 Tf -4.8008 0 TD -0.478 Tw -[( The)]TJ -ET -570 413.21 0.99 -23.28 re -f -BT -10 0 0 10 270 382.14 Tm -0 Tw -(following two )Tj -/TT6 1 Tf -6.0029 0 TD -(key/value)Tj -/TT2 1 Tf -4.2246 0 TD -( pairs are equivalent:)Tj -ET -570 389.92 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 278 364.43 Tm -(:condition foo)Tj -ET -570 377.92 0.99 -16.99 re -f -BT -10 0 0 10 278 347.43 Tm -(:filter)Tj -ET -570 360.92 0.99 -16.99 re -f -BT -10 0 0 10 278 337.43 Tm -( \(lambda \(\))Tj -ET -570 343.92 0.99 -9.99 re -f -BT -10 0 0 10 278 327.43 Tm -( \(typep xcl:*current-condition*)Tj -ET -570 333.92 0.99 -9.99 re -f -BT -10 0 0 10 278 317.43 Tm -( foo\)\))Tj -ET -570 323.92 0.99 -9.99 re -f -BT -10 0 0 10 258 296.14 Tm -(:interactive )Tj -/TT6 1 Tf -7.8013 0 TD -(expression)Tj -ET -570 313.92 0.99 -22.28 re -f -BT -/TT2 1 Tf -10 0 0 10 270 273.85 Tm -(The )Tj -/TT6 1 Tf -2.297 0 TD -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.296 Tw -[( must be a form suitable as an argument to)]TJ -ET -570 291.63 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 270 261.85 Tm -0 Tw -(function)Tj -/TT2 1 Tf -4.8008 0 TD -(. )Tj -/TT8 1 Tf -0.7537 0 TD -(\(function )Tj -/TT6 1 Tf -6.428 0 TD -(expression)Tj -/TT8 1 Tf -4.8359 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.198 Tw -[( will be evaluated in the)]TJ -ET -570 269.63 0.99 -13.28 re -f -BT -10 0 0 10 270 248.56 Tm -0.099 Tw -(current lexical and dynamic environments. The result should be)Tj -ET -570 256.34 0.99 -11.99 re -f -BT -10 0 0 10 270 236.56 Tm -0.135 Tw -(a function of no arguments which returns a list of values to be)Tj -ET -570 244.34 0.99 -11.99 re -f -BT -10 0 0 10 270 224.56 Tm -0.671 Tw -(used by )Tj -/TT8 1 Tf -5.1223 0 TD -0 Tw -(conditions:invoke-restart-interactively)Tj -/TT2 1 Tf -23.4038 0 TD -(.)Tj -ET -570 232.34 0.99 -13.28 re -f -BT -10 0 0 10 270 211.27 Tm -0.051 Tw -(This function will be called in the dynamic environment available)Tj -ET -570 219.05 0.99 -11.99 re -f -BT -10 0 0 10 270 199.27 Tm -0.073 Tw -(prior to any restart attempt. Any interaction with the user should)Tj -ET -570 207.05 0.99 -11.99 re -f -BT -10 0 0 10 270 187.27 Tm -0 Tw -(be done here and not in the body of the restart.)Tj -ET -570 195.05 0.99 -11.99 re -f -BT -10 0 0 10 270 165.27 Tm -0.087 Tw -(If there is no )Tj -/TT8 1 Tf -6.1288 0 TD -0 Tw -(:interactive)Tj -/TT2 1 Tf -7.2012 0 TD -0.087 Tw -[( option specified and the restart is)]TJ -ET -570 183.05 0.99 -23.28 re -f -BT -10 0 0 10 270 151.98 Tm -0 Tw -(invoked interactively, no arguments will be supplied.)Tj -ET -570 159.76 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 129.98 Tm -(:report )Tj -/TT6 1 Tf -4.8008 0 TD -(expression)Tj -ET -570 147.76 0.99 -22.28 re -f -BT -/TT2 1 Tf -10 0 0 10 270 107.69 Tm -(The )Tj -/TT6 1 Tf -2.027 0 TD -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.026 Tw -[( can either be a constant string or a form suitable)]TJ -ET -570 125.47 0.99 -21.99 re -f -BT -10 0 0 10 270 95.69 Tm -0 Tw -(as an argument to )Tj -/TT8 1 Tf -8.3384 0 TD -(function)Tj -/TT2 1 Tf -4.8008 0 TD -(.)Tj -ET -570 103.47 0.99 -13.28 re -f -BT -10 0 0 10 270 72.4 Tm -0.183 Tw -(If expression is not a string, )Tj -/TT8 1 Tf -13.5482 0 TD -0 Tw -(\(function )Tj -/TT6 1 Tf -6.396 0 TD -(expression)Tj -/TT8 1 Tf -4.8359 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -0.183 Tw -[( will be)]TJ -ET -570 90.18 0.99 -23.28 re -f -BT -10 0 0 10 270 59.11 Tm -0.161 Tw -(evaluated in the current lexical and dynamic environment. The)Tj -ET -570 66.89 0.99 -11.99 re -f -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -53 0 obj -<< -/Length 5235 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 270 730.2 Tm -0.031 Tw -(result should be a function of one argument, a stream, which will)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 270 718.2 Tm -0.066 Tw -(be called to report that restart. This function should print a short)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 270 706.2 Tm -0 Tw -(summary of the action that restart will take if invoked.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 270 684.2 Tm -(If )Tj -/TT6 1 Tf -1.0505 0 TD -(expression)Tj -/TT2 1 Tf -4.8359 0 TD -0.217 Tw -[( is a string, it is a shorthand for )]TJ -/TT8 1 Tf -15.848 0 TD -0.468 Tw -(\(lambda \(s\))Tj -ET -570 701.98 0.99 -23.28 re -f -BT -10 0 0 10 270 670.91 Tm -0 Tw -(\(format s )Tj -/TT6 1 Tf -6.001 0 TD -(expression)Tj -/TT8 1 Tf -4.8359 0 TD -(\)\))Tj -/TT2 1 Tf -1.2002 0 TD -(.)Tj -ET -570 678.69 0.99 -13.28 re -f -BT -10 0 0 10 258 647.62 Tm -0.268 Tw -(Only one of )Tj -/TT8 1 Tf -6.1961 0 TD -0 Tw -(:condition)Tj -/TT2 1 Tf -6.001 0 TD -0.268 Tw -[( or )]TJ -/TT8 1 Tf -1.9808 0 TD -0 Tw -(:filter)Tj -/TT2 1 Tf -4.2007 0 TD -0.268 Tw -[( may be specified. If no)]TJ -ET -570 665.4 0.99 -23.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 634.33 Tm -0 Tw -(:report)Tj -/TT2 1 Tf -4.2007 0 TD -0.075 Tw -[( is specified, the )]TJ -/TT6 1 Tf -7.7482 0 TD -0 Tw -(case-name)Tj -/TT2 1 Tf -4.9468 0 TD -0.075 Tw -[( will be used. It is an error to)]TJ -ET -570 642.11 0.99 -13.28 re -f -BT -10 0 0 10 258 621.04 Tm -0 Tw -(have a null case name and no report function.)Tj -ET -570 628.82 0.99 -11.99 re -f -BT -10 0 0 10 258 602.04 Tm -(Examples:)Tj -ET -570 599.82 0.99 -9.99 re -f -BT -/TT8 1 Tf -10 0 0 10 198 583.33 Tm -(\(loop)Tj -ET -570 589.82 0.99 -9.99 re -f -BT -10 0 0 10 198 573.33 Tm -( \(conditions:restart-case)Tj -ET -570 579.82 0.99 -9.99 re -f -BT -10 0 0 10 198 563.33 Tm -( \(return \(apply function some-args\)\))Tj -ET -570 569.82 0.99 -9.99 re -f -BT -10 0 0 10 198 553.33 Tm -( \(new-function \(new-fn\))Tj -ET -570 559.82 0.99 -9.99 re -f -BT -10 0 0 10 198 543.33 Tm -( :report "Use a different function.")Tj -ET -570 549.82 0.99 -9.99 re -f -BT -10 0 0 10 198 533.33 Tm -( :interactive \(lambda \(\))Tj -ET -570 539.82 0.99 -9.99 re -f -BT -10 0 0 10 198 523.33 Tm -( \(list \(prompt-for function "Function:)Tj -ET -570 529.82 0.99 -9.99 re -f -BT -10 0 0 10 198 513.33 Tm -("\)\)\))Tj -ET -570 519.82 0.99 -9.99 re -f -BT -10 0 0 10 198 503.33 Tm -( \(setq function new-fn\)\)\)\))Tj -ET -570 509.82 0.99 -9.99 re -f -BT -10 0 0 10 198 483.33 Tm -(\(loop)Tj -ET -570 489.82 0.99 -9.99 re -f -BT -10 0 0 10 198 473.33 Tm -( \(conditions:restart-case)Tj -ET -570 479.82 0.99 -9.99 re -f -BT -10 0 0 10 198 463.33 Tm -( \(return \(apply function some-args\)\))Tj -ET -570 469.82 0.99 -9.99 re -f -BT -10 0 0 10 198 453.33 Tm -( \(nil \(new-fn\))Tj -ET -570 459.82 0.99 -9.99 re -f -BT -10 0 0 10 198 443.33 Tm -( :report "Use a different function.")Tj -ET -570 449.82 0.99 -9.99 re -f -BT -10 0 0 10 198 433.33 Tm -( :interactive \(lambda \(\))Tj -ET -570 439.82 0.99 -9.99 re -f -BT -10 0 0 10 198 423.33 Tm -( \(list \(prompt-for function "Function:)Tj -ET -570 429.82 0.99 -9.99 re -f -BT -10 0 0 10 198 413.33 Tm -("\)\)\))Tj -ET -570 419.82 0.99 -9.99 re -f -BT -10 0 0 10 198 403.33 Tm -( \(setq function new-fn\)\)\)\))Tj -ET -570 409.82 0.99 -9.99 re -f -BT -10 0 0 10 198 383.33 Tm -(\(conditions:restart-case \(a-command-loop\))Tj -ET -570 389.82 0.99 -9.99 re -f -BT -10 0 0 10 198 373.33 Tm -( \(return-from-command-level \(\))Tj -ET -570 379.82 0.99 -9.99 re -f -BT -10 0 0 10 198 363.33 Tm -( :report)Tj -ET -570 369.82 0.99 -9.99 re -f -BT -10 0 0 10 198 353.33 Tm -( \(lambda \(stream\))Tj -ET -570 359.82 0.99 -9.99 re -f -BT -10 0 0 10 198 343.33 Tm -( \(format stream "Return from command level ~D.")Tj -ET -570 349.82 0.99 -9.99 re -f -BT -10 0 0 10 198 333.33 Tm -(level\)\))Tj -ET -570 339.82 0.99 -9.99 re -f -BT -10 0 0 10 198 323.33 Tm -( nil\)\))Tj -ET -570 329.82 0.99 -9.99 re -f -BT -10 0 0 10 198 303.33 Tm -(\(loop)Tj -ET -570 309.82 0.99 -9.99 re -f -BT -10 0 0 10 198 293.33 Tm -( \(conditions:restart-case \(another-computation\))Tj -ET -570 299.82 0.99 -9.99 re -f -BT -10 0 0 10 198 283.33 Tm -( \(conditions:continue \(\) nil\)\)\))Tj -ET -570 289.82 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 260.04 Tm -0.004 Tw -(The first and second examples are equivalent from the point of view)Tj -0 -1.2 TD -0.406 Tw -(of someone using the interactive debugger, but differ in one)Tj -T* -0.155 Tw -(important aspect for non-interactive handling. If a handler "knows)Tj -T* -0 Tw -(about" restart names, as in:)Tj -/TT8 1 Tf --3.6 -2.171 TD -(\(when \(conditions:find-restart new-function\))Tj -0 -1.1 TD -( \(conditions:invoke-restart new-function the-)Tj -T* -(replacement\)\))Tj -/TT2 1 Tf -3.6 -2.429 TD -0.145 Tw -(then only the first example, and not the second, will have control)Tj -0 -1.2 TD -0 Tw -(transferred to its correction clause.)Tj -0 -3.1 TD -(Heres a more complete example:)Tj -/TT8 1 Tf --6 -1.871 TD -(\(let \(\(my-food milk\))Tj -0 -1 TD -( \(my-color greenish-blue\)\))Tj -T* -( \(do \(\))Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -56 0 obj -<< -/Length 6831 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 198 731.49 Tm -( \(\(not \(food-colorable-p my-food)Tj -0 -1 TD -( my-color\)\)\))Tj -T* -( \(conditions:restart-case \(error bad-food-color)Tj -T* -( :food my-food)Tj -T* -( :color my-color\))Tj -T* -( \(use-food \(new-food\))Tj -T* -( :report "Use another food.")Tj -T* -( \(setf my-food new-food\)\))Tj -T* -( \(use-color \(new-color\))Tj -T* -( :report "Use another color.")Tj -T* -( \(setf my-color new-color\)\)\)\))Tj -T* -( ;; We wont get to here until my-food)Tj -T* -( ;; and my-color are compatible.)Tj -T* -( \(list my-food my-color\)\))Tj -/TT2 1 Tf -6 -2.229 TD -(Assuming that )Tj -/TT8 1 Tf -6.6143 0 TD -(use-food)Tj -/TT2 1 Tf -4.8008 0 TD -( and )Tj -/TT8 1 Tf -2.2241 0 TD -(use-color)Tj -/TT2 1 Tf -5.4009 0 TD -( have been defined as)Tj -/TT8 1 Tf --25.04 -2.2 TD -(\(defun use-food \(new-food\))Tj -0 -1 TD -( \(invoke-restart use-food new-food\)\))Tj -0 -2 TD -(\(defun use-color \(new-color\))Tj -0 -1 TD -( \(invoke-restart use-color new-color\)\))Tj -/TT2 1 Tf -6 -2.229 TD -0.08 Tw -(then a handler can proceed from the error in either of two ways. It)Tj -0 -1.2 TD -0 Tw -(may correct the color or correct the food. For example:)Tj -/TT8 1 Tf -2 -2.171 TD -(#\(lambda \(condition\) ...)Tj -0 -1.1 TD -( ;; Corrects color)Tj -T* -( \(use-color white\) ...\) )Tj --2 -2.2 TD -(or )Tj -2 -1.2 TD -(#\(lambda \(condition\) ...)Tj -0 -1.1 TD -( ;; Corrects food)Tj -T* -( \(use-food cheese\) ...\) )Tj -/TT2 1 Tf --2 -1.929 TD -0.449 Tw -(Here is an example using )Tj -/TT8 1 Tf -13.8065 0 TD -0 Tw -(conditions:handler-bind)Tj -/TT2 1 Tf -13.8022 0 TD -0.449 Tw -[( and)]TJ -/TT8 1 Tf --27.6088 -1.129 TD -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -(.)Tj -/TT8 1 Tf --19.8022 -2.1 TD -(\(conditions:handler-bind \(\(foo-error)Tj -0 -1 TD -( #\(lambda \(condition\))Tj -T* -( \(conditions:use-value 7\)\)\)\))Tj -T* -( \(conditions:restart-case \(error foo-error\))Tj -T* -( \(conditions:use-value \(x\) \(* x x\)\)\)\) )Tj -/TT2 1 Tf -6 -1.829 TD -(The above form returns )Tj -/TT8 1 Tf -10.6714 0 TD -(49)Tj -/TT2 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --25.0716 -2.229 TD -(xcl:define-proceed-function )Tj -ET -0.75 w -126 254.04 m -294 254.04 l -S -BT -/TT6 1 Tf -10 0 0 10 294 251.04 Tm -(name)Tj -ET -294 253.7 m -319.01 253.7 l -319.01 254.04 m -524.66 254.04 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 251.04 Tm -([Macro])Tj -ET -524.66 254.37 m -558 254.37 l -558 254.04 m -558 254.04 l -S -BT -/TT8 1 Tf -10 0 0 10 126 237.75 Tm -( {)Tj -ET -126 240.75 m -300 240.75 l -S -BT -/TT6 1 Tf -10 0 0 10 300 237.75 Tm -(keyword)Tj -ET -300 240.41 m -337.23 240.41 l -S -BT -/TT8 1 Tf -10 0 0 10 337.23 237.75 Tm -( )Tj -ET -337.23 240.75 m -343.23 240.75 l -S -BT -/TT6 1 Tf -10 0 0 10 343.23 237.75 Tm -(value)Tj -ET -343.23 240.41 m -367.13 240.41 l -S -BT -/TT2 1 Tf -10 0 0 10 367.13 237.75 Tm -(}*)Tj -ET -367.13 241.08 m -374.36 241.08 l -374.36 240.75 m -374.36 240.75 l -S -BT -/TT8 1 Tf -10 0 0 10 126 224.46 Tm -( {)Tj -ET -126 227.46 m -300 227.46 l -S -BT -/TT6 1 Tf -10 0 0 10 300 224.46 Tm -(variable)Tj -ET -300 227.12 m -335.01 227.12 l -S -BT -/TT2 1 Tf -10 0 0 10 335.01 224.46 Tm -(}*)Tj -ET -335.01 227.79 m -342.24 227.79 l -342.24 227.46 m -342.24 227.46 l -S -BT -10 0 0 10 258 201.17 Tm -(Valid )Tj -ET -258 204.5 m -283.39 204.5 l -S -BT -/TT6 1 Tf -10 0 0 10 283.39 201.17 Tm -(keyword)Tj -ET -283.39 203.83 m -320.62 203.83 l -S -BT -/TT2 1 Tf -10 0 0 10 320.62 201.17 Tm -(/)Tj -ET -320.62 204.5 m -323.4 204.5 l -S -BT -/TT6 1 Tf -10 0 0 10 323.4 201.17 Tm -(value)Tj -ET -323.4 203.83 m -347.3 203.83 l -S -BT -/TT2 1 Tf -10 0 0 10 347.3 201.17 Tm -0.038 Tw -[( pairs are the same as those which are defined)]TJ -ET -347.3 204.5 m -558.04 204.5 l -S -BT -10 0 0 10 258 189.17 Tm -0.433 Tw -(for the )Tj -ET -258 192.5 m -297.79 192.5 l -S -BT -/TT8 1 Tf -10 0 0 10 297.79 189.17 Tm -0 Tw -(xcl:proceed-case)Tj -ET -297.79 192.17 m -393.79 192.17 l -S -BT -/TT2 1 Tf -10 0 0 10 393.79 189.17 Tm -0.433 Tw -[( special form. That is, )]TJ -ET -393.79 192.5 m -513.25 192.5 l -S -BT -/TT8 1 Tf -10 0 0 10 513.25 189.17 Tm -0 Tw -(:filter)Tj -ET -513.25 192.17 m -555.25 192.17 l -S -BT -/TT2 1 Tf -10 0 0 10 555.25 189.17 Tm -(,)Tj -ET -555.25 192.5 m -558.03 192.5 l -S -BT -/TT8 1 Tf -10 0 0 10 258 175.88 Tm -(:filter-function)Tj -ET -258 178.88 m -354 178.88 l -S -BT -/TT2 1 Tf -10 0 0 10 354 175.88 Tm -(, )Tj -ET -354 179.21 m -364.02 179.21 l -S -BT -/TT8 1 Tf -10 0 0 10 364.02 175.88 Tm -(:condition)Tj -ET -364.02 178.88 m -424.02 178.88 l -S -BT -/TT2 1 Tf -10 0 0 10 424.02 175.88 Tm -(, )Tj -ET -424.02 179.21 m -434.04 179.21 l -S -BT -/TT8 1 Tf -10 0 0 10 434.04 175.88 Tm -(:report)Tj -ET -434.04 178.88 m -476.04 178.88 l -S -BT -/TT2 1 Tf -10 0 0 10 476.04 175.88 Tm -0.446 Tw -(, and )Tj -ET -476.04 179.21 m -509.98 179.21 l -S -BT -/TT8 1 Tf -10 0 0 10 509.98 175.88 Tm -0 Tw -(:report-)Tj -ET -509.98 178.88 m -557.98 178.88 l -S -BT -10 0 0 10 258 162.59 Tm -(function)Tj -ET -258 165.59 m -306 165.59 l -S -BT -/TT2 1 Tf -10 0 0 10 306 162.59 Tm -0.69 Tw -(. The filter and report functions specified in a)Tj -ET -306 165.92 m -557.96 165.92 l -S -BT -/TT8 1 Tf -10 0 0 10 258 149.3 Tm -0 Tw -(xcl:define-proceed-function)Tj -ET -258 152.3 m -420 152.3 l -S -BT -/TT2 1 Tf -10 0 0 10 420 149.3 Tm -0.915 Tw -[( form will be used for)]TJ -ET -420 152.63 m -558 152.63 l -S -BT -/TT8 1 Tf -10 0 0 10 258 136.01 Tm -0 Tw -(xcl:proceed-case)Tj -ET -258 139.01 m -354 139.01 l -S -BT -/TT2 1 Tf -10 0 0 10 354 136.01 Tm -0.313 Tw -[( clauses with the same name that do not)]TJ -ET -354 139.34 m -558.02 139.34 l -S -BT -10 0 0 10 258 122.72 Tm -0 Tw -(specify their own filter or report functions, respectively. )Tj -ET -258 126.05 m -501.42 126.05 l -S -BT -10 0 0 10 258 100.72 Tm -0.365 Tw -(This form defines a function called )Tj -ET -258 104.05 m -434.41 104.05 l -S -BT -/TT8 1 Tf -10 0 0 10 434.41 100.72 Tm -0 Tw -(name)Tj -ET -434.41 103.72 m -458.41 103.72 l -S -BT -/TT2 1 Tf -10 0 0 10 458.41 100.72 Tm -0.365 Tw -[( which will invoke a)]TJ -ET -458.41 104.05 m -558.03 104.05 l -S -BT -10 0 0 10 258 87.43 Tm -0.188 Tw -[(proceed case with the same name. The proceed function takes)]TJ -ET -258 90.76 m -558.05 90.76 l -S -BT -10 0 0 10 258 75.43 Tm -0.116 Tw -(optional arguments which are given by the )Tj -ET -258 78.76 m -456.21 78.76 l -S -BT -/TT6 1 Tf -10 0 0 10 456.21 75.43 Tm -0 Tw -(variables)Tj -ET -456.21 78.09 m -496.22 78.09 l -S -BT -/TT2 1 Tf -10 0 0 10 496.22 75.43 Tm -0.116 Tw -[( specification.)]TJ -ET -496.22 78.76 m -557.96 78.76 l -S -BT -10 0 0 10 258 63.43 Tm -0 Tw -(The parameter list for the proceed function will look like)Tj -ET -258 66.76 m -501.98 66.76 l -S -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -59 0 obj -<< -/Length 8305 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -( )Tj -ET -0.75 w -258 733.53 m -266.34 733.53 l -S -BT -/TT8 1 Tf -10 0 0 10 266.34 730.2 Tm -(\(&optional . )Tj -ET -266.34 733.2 m -344.34 733.2 l -S -BT -/TT6 1 Tf -10 0 0 10 344.34 730.2 Tm -(variables)Tj -ET -344.34 732.86 m -384.35 732.86 l -S -BT -/TT8 1 Tf -10 0 0 10 384.35 730.2 Tm -(\))Tj -ET -384.35 733.2 m -390.35 733.2 l -390.35 733.53 m -390.35 733.53 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.91 Tm -0.08 Tw -(The only thing that a proceed function really does is collect values)Tj -ET -258 710.24 m -558.05 710.24 l -S -BT -10 0 0 10 258 694.91 Tm -0 Tw -(to be passed on to a proceed case clause.)Tj -ET -258 698.24 m -445.89 698.24 l -S -BT -10 0 0 10 258 672.91 Tm -0.019 Tw -(Each element of )Tj -ET -258 676.24 m -333.61 676.24 l -S -BT -/TT6 1 Tf -10 0 0 10 333.61 672.91 Tm -0 Tw -(variables)Tj -ET -333.61 675.57 m -373.62 675.57 l -S -BT -/TT2 1 Tf -10 0 0 10 373.62 672.91 Tm -0.019 Tw -[( has the form )]TJ -ET -373.62 676.24 m -435.52 676.24 l -S -BT -/TT6 1 Tf -10 0 0 10 435.52 672.91 Tm -0 Tw -(variable-name)Tj -ET -435.52 675.57 m -498.87 675.57 l -S -BT -/TT2 1 Tf -10 0 0 10 498.8699 672.91 Tm -0.019 Tw -[( or )]TJ -ET -498.87 676.24 m -513.7 676.24 l -S -BT -/TT8 1 Tf -10 0 0 10 513.7 672.91 Tm -0 Tw -(\()Tj -ET -513.7 675.91 m -519.7 675.91 l -S -BT -/TT6 1 Tf -10 0 0 10 519.7 672.91 Tm -(variable-)Tj -ET -519.7 675.57 m -558.04 675.57 l -S -BT -10 0 0 10 258 659.62 Tm -(name)Tj -ET -258 662.28 m -283.01 662.28 l -S -BT -/TT8 1 Tf -10 0 0 10 283.01 659.62 Tm -( )Tj -ET -283.01 662.62 m -293.87 662.62 l -S -BT -/TT6 1 Tf -10 0 0 10 293.87 659.62 Tm -(initial-value)Tj -ET -293.87 662.28 m -343.88 662.28 l -S -BT -/TT8 1 Tf -10 0 0 10 343.88 659.62 Tm -(\))Tj -ET -343.88 662.62 m -349.88 662.62 l -S -BT -/TT2 1 Tf -10 0 0 10 349.88 659.62 Tm -0.225 Tw -(. If )Tj -ET -349.88 662.95 m -368.28 662.95 l -S -BT -/TT6 1 Tf -10 0 0 10 368.28 659.62 Tm -0 Tw -(initial-value)Tj -ET -368.28 662.28 m -418.29 662.28 l -S -BT -/TT2 1 Tf -10 0 0 10 418.29 659.62 Tm -0.225 Tw -[( is not supplied, it defaults to)]TJ -ET -418.29 662.95 m -557.97 662.95 l -S -BT -/TT8 1 Tf -10 0 0 10 258 646.33 Tm -0 Tw -(nil)Tj -ET -258 649.33 m -276 649.33 l -S -BT -/TT2 1 Tf -10 0 0 10 276 646.33 Tm -(.)Tj -ET -276 649.66 m -278.78 649.66 l -S -BT -10 0 0 10 258 623.04 Tm -0.311 Tw -(For example, here are some possible proceed functions which)Tj -ET -258 626.37 m -557.99 626.37 l -S -BT -10 0 0 10 258 611.04 Tm -0.053 Tw -(might be useful in conjunction with the )Tj -ET -258 614.37 m -433.46 614.37 l -S -BT -/TT8 1 Tf -10 0 0 10 433.46 611.04 Tm -0 Tw -(bad-food-color)Tj -ET -433.46 614.04 m -517.46 614.04 l -S -BT -/TT2 1 Tf -10 0 0 10 517.46 611.04 Tm -0.053 Tw -[( error we)]TJ -ET -517.46 614.37 m -557.97 614.37 l -S -BT -10 0 0 10 258 597.75 Tm -0 Tw -(used as an example earlier:)Tj -ET -258 601.08 m -380.83 601.08 l -278 590.04 m -278 590.04 l -S -BT -/TT8 1 Tf -10 0 0 10 198 576.04 Tm -(\(xcl:define-proceed-function use-food)Tj -ET -198 579.04 m -420 579.04 l -S -BT -10 0 0 10 198 566.04 Tm -( :report "Use another food.")Tj -ET -198 569.04 m -396 569.04 l -S -BT -10 0 0 10 198 556.04 Tm -( \(food \(read-typed-object food)Tj -ET -198 559.04 m -396 559.04 l -S -BT -10 0 0 10 198 546.04 Tm -( "Food to use instead: "\)\)\))Tj -ET -198 549.04 m -480 549.04 l -198 539.04 m -198 539.04 l -S -BT -10 0 0 10 198 526.04 Tm -(\(xcl:define-proceed-function use-color)Tj -ET -198 529.04 m -426 529.04 l -S -BT -10 0 0 10 198 516.04 Tm -( :report "Change the foods color.")Tj -ET -198 519.04 m -438 519.04 l -S -BT -10 0 0 10 198 506.04 Tm -( \(color)Tj -ET -198 509.04 m -252 509.04 l -S -BT -10 0 0 10 198 496.04 Tm -( \(read-typed-object food)Tj -ET -198 499.04 m -378 499.04 l -S -BT -10 0 0 10 198 486.04 Tm -( "Color to make the food: "\)\)\))Tj -ET -198 489.04 m -438 489.04 l -198 479.04 m -198 479.04 l -S -BT -10 0 0 10 198 466.04 Tm -(\(defun maybe-use-water \(condition\))Tj -ET -198 469.04 m -402 469.04 l -S -BT -10 0 0 10 198 456.04 Tm -( ;; A sample handler)Tj -ET -198 459.04 m -330 459.04 l -S -BT -10 0 0 10 198 446.04 Tm -( \(when \(eq \(bad-food-color-food condition\))Tj -ET -198 449.04 m -462 449.04 l -S -BT -10 0 0 10 198 436.04 Tm -( milk\))Tj -ET -198 439.04 m -312 439.04 l -S -BT -10 0 0 10 198 426.04 Tm -( \(use-food water\)\)\))Tj -ET -198 429.04 m -348 429.04 l -198 419.04 m -198 419.04 l -S -BT -10 0 0 10 198 406.04 Tm -(\(xcl:handler-bind \(\(bad-food-color)Tj -ET -198 409.04 m -402 409.04 l -S -BT -10 0 0 10 198 396.04 Tm -( #maybe-use-water\)\))Tj -ET -198 399.04 m -480 399.04 l -S -BT -10 0 0 10 198 386.04 Tm -( ...\))Tj -ET -198 389.04 m -240 389.04 l -S -BT -/TT2 1 Tf -10 0 0 10 258 364.75 Tm -0.003 Tw -(If a named proceed function is invoked in a context in which there is)Tj -ET -258 368.08 m -557.98 368.08 l -S -BT -10 0 0 10 258 352.75 Tm -0.093 Tw -(no active proceed case by that name, the proceed function simply)Tj -ET -258 356.08 m -558 356.08 l -S -BT -10 0 0 10 258 340.75 Tm -0 Tw -(returns )Tj -ET -258 344.08 m -294.6 344.08 l -S -BT -/TT8 1 Tf -10 0 0 10 294.6 340.75 Tm -(nil)Tj -ET -294.6 343.75 m -312.6 343.75 l -S -BT -/TT2 1 Tf -10 0 0 10 312.6 340.75 Tm -0.27 Tw -(. So, for example, in each of the following pairs of)Tj -ET -312.6 344.08 m -558.04 344.08 l -S -BT -10 0 0 10 258 327.46 Tm -0 Tw -(handlers, the first is equivalent to the second but less efficient:)Tj -ET -258 330.79 m -533.14 330.79 l -533.14 330.46 m -533.14 330.46 l -198 319.75 m -198 319.75 l -S -BT -/TT8 1 Tf -10 0 0 10 198 306.75 Tm -(#\(lambda \(condition\) ; OK, but slow)Tj -ET -198 309.75 m -474 309.75 l -S -BT -10 0 0 10 198 296.75 Tm -( \(when \(xcl:find-proceed-case use-food\) )Tj -ET -198 299.75 m -468 299.75 l -S -BT -10 0 0 10 198 286.75 Tm -( \(use-food milk\)\)\))Tj -ET -198 289.75 m -354 289.75 l -S -BT -10 0 0 10 198 276.75 Tm -(#\(lambda \(condition\) ; Preferred)Tj -ET -198 279.75 m -456 279.75 l -S -BT -10 0 0 10 198 266.75 Tm -( \(use-food milk\)\) )Tj -ET -198 269.75 m -336 269.75 l -198 259.75 m -198 259.75 l -S -BT -10 0 0 10 198 246.75 Tm -(#\(lambda \(condition\))Tj -ET -198 249.75 m -324 249.75 l -S -BT -10 0 0 10 198 236.75 Tm -( \(cond \(\(xcl:find-proceed-case use-food\) )Tj -ET -198 239.75 m -474 239.75 l -S -BT -10 0 0 10 198 226.75 Tm -( \(use-food chocolate\)\))Tj -ET -198 229.75 m -414 229.75 l -S -BT -10 0 0 10 198 216.75 Tm -( \(\(xcl:find-proceed-case use-color\))Tj -ET -198 219.75 m -474 219.75 l -S -BT -10 0 0 10 198 206.75 Tm -( \(use-color orange\)\)\)\))Tj -ET -198 209.75 m -414 209.75 l -S -BT -10 0 0 10 198 196.75 Tm -(#\(lambda \(condition\) )Tj -ET -198 199.75 m -330 199.75 l -S -BT -10 0 0 10 198 186.75 Tm -( \(use-food chocolate\) )Tj -ET -198 189.75 m -360 189.75 l -S -BT -10 0 0 10 198 176.75 Tm -( \(use-color orange\)\))Tj -ET -198 179.75 m -348 179.75 l -S -BT -/TT4 1 Tf -10 0 0 10 126 154.46 Tm -(conditions:restart-bind)Tj -ET -126 150.96 m -235.45 150.96 l -S -BT -/TT8 1 Tf -10 0 0 10 235.45 154.46 Tm -( \({\()Tj -ET -235.45 150.96 m -259.45 150.96 l -S -BT -/TT6 1 Tf -10 0 0 10 259.45 154.46 Tm -(name function )Tj -ET -259.45 150.96 m -325.04 150.96 l -S -BT -/TT8 1 Tf -10 0 0 10 325.04 154.46 Tm -({)Tj -ET -325.04 150.96 m -331.04 150.96 l -S -BT -/TT6 1 Tf -10 0 0 10 331.04 154.46 Tm -(keyword value)Tj -ET -331.04 150.96 m -394.95 150.96 l -S -BT -/TT8 1 Tf -10 0 0 10 394.95 154.46 Tm -(}*\)}* {)Tj -ET -394.95 150.96 m -436.95 150.96 l -S -BT -/TT6 1 Tf -10 0 0 10 436.95 154.46 Tm -(form)Tj -ET -436.95 150.96 m -456.95 150.96 l -S -BT -/TT8 1 Tf -10 0 0 10 456.95 154.46 Tm -(}* )Tj -ET -456.95 150.96 m -474.95 150.96 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 154.46 Tm -([Macro])Tj -ET -474.95 150.96 m -558 150.96 l -S -570 173.24 0.99 -24.28 re -f -BT -10 0 0 10 258 131.17 Tm -0.16 Tw -(Executes the )Tj -/TT6 1 Tf -6.3791 0 TD -0 Tw -(form)Tj -/TT2 1 Tf -2 0 TD -0.16 Tw -(s in a dynamic context where the given restart)Tj -ET -570 148.95 0.99 -21.99 re -f -BT -10 0 0 10 258 119.17 Tm -0 Tw -(bindings are in effect.)Tj -ET -570 126.95 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 97.17 Tm -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.032 Tw -[( may be )]TJ -/TT8 1 Tf -3.931 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.032 Tw -[( to indicate an anonymous restart, or some other)]TJ -ET -570 114.95 0.99 -23.28 re -f -BT -10 0 0 10 258 83.88 Tm -0 Tw -(symbol to indicate a named restart.)Tj -ET -570 91.66 0.99 -11.99 re -f -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -62 0 obj -<< -/Length 6187 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 258 730.2 Tm -(function)Tj -/TT2 1 Tf -3.5024 0 TD -0.412 Tw -[( will be evaluated in the current lexical and dynamic)]TJ -ET -570 747.98 0.99 -21.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.014 Tw -(contexts and should produce a function of no arguments to be used)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.07 Tw -(to perform the restart. This function will be called when that restart)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -1.805 Tw -(is activated by )Tj -/TT8 1 Tf -12.0293 0 TD -0 Tw -(conditions:invoke-restart)Tj -/TT2 1 Tf -15.0024 0 TD -1.805 Tw -[( or)]TJ -ET -570 701.98 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 680.91 Tm -0 Tw -(conditions:invoke-restart-interactively)Tj -/TT2 1 Tf -23.4038 0 TD -0.993 Tw -(. Note that)Tj -ET -570 688.69 0.99 -13.28 re -f -BT -10 0 0 10 258 667.62 Tm -0 Tw -(unlike )Tj -/TT8 1 Tf -2.9226 0 TD -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -0.032 Tw -(, invoking the restart does not)Tj -ET -570 675.4 0.99 -13.28 re -f -BT -10 0 0 10 258 654.33 Tm -0.171 Tw -(automatically transfer control back to the contour in which it was)Tj -ET -570 662.11 0.99 -11.99 re -f -BT -10 0 0 10 258 642.33 Tm -0.217 Tw -[(established. If that is appropriate for that restart it is up to the)]TJ -ET -570 650.11 0.99 -11.99 re -f -BT -10 0 0 10 258 630.33 Tm -0 Tw -(individual restart function to do this.)Tj -ET -570 638.11 0.99 -11.99 re -f -BT -10 0 0 10 258 608.33 Tm -(The valid )Tj -/TT6 1 Tf -4.3354 0 TD -(keyword)Tj -/TT2 1 Tf -3.7236 0 TD -(/)Tj -/TT6 1 Tf -0.2778 0 TD -(value)Tj -/TT2 1 Tf -2.3906 0 TD -( pairs are:)Tj -ET -570 626.11 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 586.33 Tm -(:interactive-function )Tj -/TT6 1 Tf -13.2021 0 TD -(form)Tj -ET -570 604.11 0.99 -22.28 re -f -BT -10 0 0 10 270 564.04 Tm -(form)Tj -/TT2 1 Tf -2 0 TD -0.446 Tw -[( will be evaluated in the current lexical and dynamic)]TJ -ET -570 581.82 0.99 -21.99 re -f -BT -10 0 0 10 270 552.04 Tm -0.202 Tw -(environments and should produce a function of no arguments)Tj -ET -570 559.82 0.99 -11.99 re -f -BT -10 0 0 10 270 540.04 Tm -0.74 Tw -(that will construct the list of values to be used by)Tj -ET -570 547.82 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 270 528.04 Tm -0 Tw -(conditions:invoke-restart-interactively)Tj -/TT2 1 Tf -23.4038 0 TD -(.)Tj -ET -570 535.82 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 504.75 Tm -(:report-function )Tj -/TT6 1 Tf -10.2017 0 TD -(form)Tj -ET -570 522.53 0.99 -22.28 re -f -BT -10 0 0 10 270 482.46 Tm -(form)Tj -/TT2 1 Tf -2 0 TD -0.446 Tw -[( will be evaluated in the current lexical and dynamic)]TJ -ET -570 500.24 0.99 -21.99 re -f -BT -10 0 0 10 270 470.46 Tm -0.05 Tw -(environments and should produce a function of one argument, a)Tj -ET -570 478.24 0.99 -11.99 re -f -BT -10 0 0 10 270 458.46 Tm -0 Tw -(stream, that will be used to report that restart.)Tj -ET -570 466.24 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 436.46 Tm -(:filter-function )Tj -/TT6 1 Tf -10.2017 0 TD -(form)Tj -ET -570 454.24 0.99 -22.28 re -f -BT -10 0 0 10 270 414.17 Tm -(form)Tj -/TT2 1 Tf -2 0 TD -0.446 Tw -[( will be evaluated in the current lexical and dynamic)]TJ -ET -570 431.95 0.99 -21.99 re -f -BT -10 0 0 10 270 402.17 Tm -0.202 Tw -(environments and should produce a function of no arguments)Tj -ET -570 409.95 0.99 -11.99 re -f -BT -10 0 0 10 270 390.17 Tm -0.223 Tw -(that will be used to determine if the given restart is currently)Tj -ET -570 397.95 0.99 -11.99 re -f -BT -10 0 0 10 270 378.17 Tm -0 Tw -(active.)Tj -ET -570 385.95 0.99 -11.99 re -f -BT -10 0 0 10 258 356.17 Tm -0.288 Tw -(This form is a more primitive way of establishing restarts than)Tj -ET -570 373.95 0.99 -21.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 344.17 Tm -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -10.0601 0 TD -0.242 Tw -(. It is expected that )Tj -/TT6 1 Tf -9.8814 0 TD -0 Tw -(conditions:restart-case)Tj -ET -570 351.95 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 332.17 Tm -0.068 Tw -(will be sufficient for most uses of the restart facility. An example of)Tj -ET -570 339.95 0.99 -11.99 re -f -BT -10 0 0 10 258 320.17 Tm -0.117 Tw -(where the more general facility provided by )Tj -/TT6 1 Tf -20.1623 0 TD -0 Tw -(conditions:restart-bind)Tj -ET -570 327.95 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 308.17 Tm -(may be useful is:)Tj -ET -570 315.95 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 287.46 Tm -1.4 Tw -(\(conditions:restart-bind \(\(nil #\(lambda \(\))Tj -ET -570 303.95 0.99 -21.99 re -f -BT -10 0 0 10 258 275.46 Tm -1.5 Tw -(\(expunge-directory the-dir\)\) :report-function)Tj -ET -570 281.95 0.99 -11.99 re -f -BT -10 0 0 10 258 263.46 Tm -0.36 Tw -(#\(lambda \(stream\) \(format stream "Expunge ~A.")Tj -ET -570 269.95 0.99 -11.99 re -f -BT -10 0 0 10 258 251.46 Tm -0.6 Tw -(\(directory-namestring the-dir\)\)\)\)\) \(cerror "Try)Tj -ET -570 257.95 0.99 -11.99 re -f -BT -10 0 0 10 258 239.46 Tm -1.05 Tw -(this file operation again." directory-full)Tj -ET -570 245.95 0.99 -11.99 re -f -BT -10 0 0 10 258 227.46 Tm -0 Tw -(:directory the-dir\)\))Tj -ET -570 233.95 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 204.17 Tm -0.093 Tw -[(In this case, a restart is provided that allows the user to expunge)]TJ -ET -570 221.95 0.99 -21.99 re -f -BT -10 0 0 10 258 192.17 Tm -0.064 Tw -(the full directory and return to the debugger after doing so. He can)Tj -ET -570 199.95 0.99 -11.99 re -f -BT -10 0 0 10 258 180.17 Tm -0.185 Tw -(then try some other restart, such as )Tj -/TT8 1 Tf -17.3018 0 TD -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -0.185 Tw -[( to)]TJ -ET -570 187.95 0.99 -13.28 re -f -BT -10 0 0 10 258 166.88 Tm -0 Tw -(retry the failed operation.)Tj -ET -570 174.66 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 121.88 Tm -(conditions:compute-restarts)Tj -ET -0.75 w -126 118.38 m -261.57 118.38 l -S -BT -/TT8 1 Tf -10 0 0 10 261.57 121.88 Tm -( )Tj -ET -261.57 118.38 m -267.57 118.38 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 121.88 Tm -([Function])Tj -ET -267.57 118.38 m -558 118.38 l -S -BT -10 0 0 10 258 98.59 Tm -(Uses the dynamic state of the program to compute a list of )Tj -/TT6 1 Tf -26.1235 0 TD -(restarts)Tj -/TT2 1 Tf -3.334 0 TD -(.)Tj -ET -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -65 0 obj -<< -/Length 6960 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-19)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.082 Tw -(Each restart object represents a point in the current dynamic state)Tj -0 -1.2 TD -0.267 Tw -[(of the program to which control may be transferred. The only)]TJ -T* -0 Tw -(operations that Lisp defines for such objects are:)Tj -/TT8 1 Tf -0 -2.2 TD -( conditions:restart-name)Tj -/TT2 1 Tf -15.6025 0 TD -(,)Tj -/TT8 1 Tf --15.6025 -1.329 TD -( conditions:find-restart)Tj -/TT2 1 Tf -15.6025 0 TD -(,)Tj -/TT8 1 Tf --15.6025 -1.329 TD -0.532 Tw -[( conditions:invoke-restart)]TJ -/TT2 1 Tf -18.3987 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.8027 0 TD -(conditions:invoke-)Tj --19.2014 -1.329 TD -(restart-interactively)Tj -/TT2 1 Tf -12.6021 0 TD -(,)Tj -/TT8 1 Tf --12.6021 -1.329 TD -( princ)Tj -/TT2 1 Tf -4.8008 0 TD -(, and)Tj -/TT8 1 Tf --4.8008 -1.329 TD -( prin1)Tj -/TT2 1 Tf -4.8008 0 TD -(,)Tj --4.8008 -2.329 TD -0.833 Tw -(to identify an object as a restart using )Tj -/TT8 1 Tf -23.5068 0 TD -0 Tw -(\(typep )Tj -/TT6 1 Tf -5.9977 0 TD -(x)Tj -/TT8 1 Tf --29.5045 -1.329 TD -(conditions:restart\))Tj -/TT2 1 Tf -12.002 0 TD -0.036 Tw -(, and standard Lisp operations that work)Tj --12.002 -1.329 TD -0 Tw -(for all objects, such as )Tj -/TT8 1 Tf -10.1714 0 TD -(eq)Tj -/TT2 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5557 0 TD -(eql)Tj -/TT2 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5557 0 TD -(describe)Tj -/TT2 1 Tf -4.8008 0 TD -(, etc.)Tj --19.084 -2.329 TD -0.38 Tw -(The list which results from a call to )Tj -/TT8 1 Tf -18.6005 0 TD -0 Tw -(conditions:compute-)Tj --18.6005 -1.329 TD -(restarts)Tj -/TT2 1 Tf -4.8008 0 TD -0.35 Tw -[( is ordered so that the innermost \(ie, more-recently)]TJ --4.8008 -1.329 TD -0 Tw -(established\) restarts are nearer the head of the list.)Tj -0 -2.2 TD -0.058 Tw -(Note also that )Tj -/TT8 1 Tf -6.6222 0 TD -0 Tw -(conditions:compute-restarts)Tj -/TT2 1 Tf -16.2026 0 TD -0.058 Tw -[( returns )]TJ -/TT6 1 Tf -3.784 0 TD -0 Tw -(all)Tj -/TT2 1 Tf -1.0005 0 TD -0.058 Tw -[( valid)]TJ --27.6093 -1.329 TD -0.073 Tw -(restarts, even if some of them have the same name as others and)Tj -0 -1.2 TD -0 Tw -(therefore would not be found by )Tj -/TT8 1 Tf -14.3433 0 TD -(conditions:find-restart)Tj -/TT2 1 Tf -13.8022 0 TD -(.)Tj --28.1455 -2.329 TD -0.015 Tw -(It is an error to modify the list returned by )Tj -/TT8 1 Tf -18.6021 0 TD -0 Tw -(conditions:compute-)Tj -ET -570 465.21 0.99 -23.28 re -f -BT -10 0 0 10 258 434.14 Tm -(restarts)Tj -/TT2 1 Tf -4.8008 0 TD -(.)Tj -ET -570 441.92 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 409.85 Tm -(conditions:restart-name)Tj -ET -0.75 w -126 406.35 m -240.46 406.35 l -S -BT -/TT8 1 Tf -10 0 0 10 240.46 409.85 Tm -( )Tj -ET -240.46 406.35 m -246.46 406.35 l -S -BT -/TT6 1 Tf -10 0 0 10 246.46 409.85 Tm -(restart)Tj -ET -246.46 406.35 m -274.8 406.35 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 409.85 Tm -([Function])Tj -ET -274.8 406.35 m -558 406.35 l -S -BT -10 0 0 10 258 386.56 Tm -(Returns the name of the given )Tj -/TT6 1 Tf -13.6748 0 TD -(restart)Tj -/TT2 1 Tf -2.834 0 TD -(, or )Tj -/TT8 1 Tf -1.7227 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -( if it is not named.)Tj -/TT8 1 Tf --33.2317 -2.429 TD -(xcl:default-proceed-test )Tj -ET -126 365.27 m -276 365.27 l -S -BT -/TT6 1 Tf -10 0 0 10 276 362.27 Tm -(proceed-case-name)Tj -ET -276 364.93 m -364.92 364.93 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 362.27 Tm -([Macro])Tj -ET -364.92 365.6 m -558 365.6 l -S -BT -10 0 0 10 258 338.98 Tm -0.099 Tw -(Returns the default filter function for proceed cases with the given)Tj -ET -258 342.31 m -558.04 342.31 l -S -BT -/TT6 1 Tf -10 0 0 10 258 326.98 Tm -0 Tw -(proceed-case-name)Tj -ET -258 329.64 m -346.92 329.64 l -S -BT -/TT2 1 Tf -10 0 0 10 346.92 326.98 Tm -(. May be used with )Tj -ET -346.92 330.31 m -433.07 330.31 l -S -BT -/TT8 1 Tf -10 0 0 10 433.07 326.98 Tm -(setf)Tj -ET -433.07 329.98 m -457.07 329.98 l -S -BT -/TT2 1 Tf -10 0 0 10 457.07 326.98 Tm -( to change it.)Tj -ET -457.07 330.31 m -514.33 330.31 l -S -BT -10 0 0 10 514.33 326.98 Tm -( )Tj -/TT8 1 Tf --38.833 -2.429 TD -(xcl:default-proceed-report )Tj -ET -126 305.69 m -288 305.69 l -S -BT -/TT6 1 Tf -10 0 0 10 288 302.69 Tm -(proceed-case-name)Tj -ET -288 305.35 m -376.92 305.35 l -376.92 305.69 m -524.66 305.69 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 302.69 Tm -([Macro])Tj -ET -524.66 306.02 m -558 306.02 l -S -BT -10 0 0 10 258 279.4 Tm -0.026 Tw -(Returns the default report function for proceed cases with the given)Tj -ET -258 282.73 m -557.97 282.73 l -S -BT -/TT6 1 Tf -10 0 0 10 258 267.4 Tm -0 Tw -(proceed-case-name)Tj -ET -258 270.06 m -346.92 270.06 l -S -BT -/TT2 1 Tf -10 0 0 10 346.92 267.4 Tm -0.073 Tw -[(. This may be a string or a function just as for)]TJ -ET -346.92 270.73 m -557.99 270.73 l -S -BT -10 0 0 10 258 255.4 Tm -0 Tw -(condition types. May be used with )Tj -ET -258 258.73 m -416.41 258.73 l -S -BT -/TT8 1 Tf -10 0 0 10 416.41 255.4 Tm -(setf)Tj -ET -416.41 258.4 m -440.41 258.4 l -S -BT -/TT2 1 Tf -10 0 0 10 440.41 255.4 Tm -( to change it.)Tj -ET -440.41 258.73 m -497.67 258.73 l -S -BT -/TT4 1 Tf -10 0 0 10 126 231.11 Tm -(conditions:find-restart)Tj -ET -126 227.61 m -232.67 227.61 l -S -BT -/TT8 1 Tf -10 0 0 10 232.67 231.11 Tm -( )Tj -ET -232.67 227.61 m -238.67 227.61 l -S -BT -/TT6 1 Tf -10 0 0 10 238.67 231.11 Tm -(identifier)Tj -ET -238.67 227.61 m -276.46 227.61 l -S -BT -/TT8 1 Tf -10 0 0 10 276.46 231.11 Tm -( )Tj -ET -276.46 227.61 m -514.09 227.61 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 231.11 Tm -([Function])Tj -ET -514.09 227.61 m -558 227.61 l -S -570 249.89 0.99 -24.28 re -f -BT -10 0 0 10 258 207.82 Tm -0.033 Tw -(Searches for a restart by the given )Tj -/TT6 1 Tf -15.7945 0 TD -0 Tw -(identifier)Tj -/TT2 1 Tf -3.7798 0 TD -0.033 Tw -[( which is in the current)]TJ -ET -570 225.6 0.99 -21.99 re -f -BT -10 0 0 10 258 195.82 Tm -0 Tw -(dynamic environment.)Tj -ET -570 203.6 0.99 -11.99 re -f -BT -10 0 0 10 258 173.82 Tm -(If )Tj -/TT6 1 Tf -1.1715 0 TD -(identifier)Tj -/TT2 1 Tf -3.7798 0 TD -0.338 Tw -[( is a symbol, then the innermost \(ie, most recently)]TJ -ET -570 191.6 0.99 -21.99 re -f -BT -10 0 0 10 258 161.82 Tm -0.047 Tw -(established\) restart with that name that is active is returned. )Tj -/TT8 1 Tf -27.1492 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.047 Tw -[( is)]TJ -ET -570 169.6 0.99 -13.28 re -f -BT -10 0 0 10 258 148.53 Tm -0 Tw -(returned if no such restart is found.)Tj -ET -570 156.31 0.99 -11.99 re -f -BT -10 0 0 10 258 126.53 Tm -(If )Tj -/TT6 1 Tf -0.9225 0 TD -(identifier)Tj -/TT2 1 Tf -3.7798 0 TD -0.089 Tw -[( is a restart object, then it is simply returned unless it is)]TJ -ET -570 144.31 0.99 -21.99 re -f -BT -10 0 0 10 258 114.53 Tm -0 Tw -(not currently valid for use. In that case, )Tj -/TT8 1 Tf -17.4531 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -( is returned.)Tj -ET -570 122.31 0.99 -13.28 re -f -BT -10 0 0 10 258 91.24 Tm -0.075 Tw -(When searching for a matching restart, the filter function, if any, of)Tj -ET -570 109.02 0.99 -21.99 re -f -BT -10 0 0 10 258 79.24 Tm -0.029 Tw -(potential matches will be called to see if they are active. If it returns)Tj -ET -570 87.02 0.99 -11.99 re -f -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -68 0 obj -<< -/Length 9606 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-20)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.08 Tw -(, then the restart is considered to not have been seen and the)Tj -ET -570 737.98 0.99 -13.28 re -f -BT -10 0 0 10 258 716.91 Tm -0 Tw -(search for a match continues.)Tj -ET -570 724.69 0.99 -11.99 re -f -BT -10 0 0 10 258 694.91 Tm -0.039 Tw -(Although anonymous restarts have a name of )Tj -/TT8 1 Tf -20.7295 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.039 Tw -(, it is an error for)Tj -ET -570 712.69 0.99 -23.28 re -f -BT -10 0 0 10 258 681.62 Tm -0.109 Tw -(the symbol )Tj -/TT8 1 Tf -5.3313 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.109 Tw -[( to be given as an )]TJ -/TT6 1 Tf -8.8264 0 TD -0 Tw -(identifier)Tj -/TT2 1 Tf -3.7798 0 TD -0.109 Tw -[( to this function. If it is)]TJ -ET -570 689.4 0.99 -13.28 re -f -BT -10 0 0 10 258 668.33 Tm -0.415 Tw -(approriate to search for anonymous restarts, you should use)Tj -ET -570 676.11 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 656.33 Tm -0 Tw -(conditions:compute-restarts)Tj -/TT2 1 Tf -16.2026 0 TD -( instead.)Tj -ET -570 664.11 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 632.04 Tm -(conditions:invoke-restart)Tj -ET -0.75 w -126 628.54 m -246.02 628.54 l -S -BT -/TT8 1 Tf -10 0 0 10 246.02 632.04 Tm -( )Tj -ET -246.02 628.54 m -252.02 628.54 l -S -BT -/TT6 1 Tf -10 0 0 10 252.02 632.04 Tm -(restart)Tj -ET -252.02 628.54 m -280.36 628.54 l -S -BT -/TT8 1 Tf -10 0 0 10 280.36 632.04 Tm -( &)Tj -ET -280.36 628.54 m -292.36 628.54 l -S -BT -/TT4 1 Tf -10 0 0 10 292.36 632.04 Tm -(rest)Tj -ET -292.36 628.54 m -310.7 628.54 l -S -BT -/TT8 1 Tf -10 0 0 10 310.7 632.04 Tm -( )Tj -ET -310.7 628.54 m -316.7 628.54 l -S -BT -/TT6 1 Tf -10 0 0 10 316.7 632.04 Tm -(values)Tj -ET -316.7 628.54 m -514.09 628.54 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 632.04 Tm -([)Tj -ET -514.09 628.54 m -516.87 628.54 l -S -BT -/TT6 1 Tf -10 0 0 10 516.8699 632.04 Tm -(Function)Tj -ET -516.87 628.54 m -555.22 628.54 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 632.04 Tm -(])Tj -ET -555.22 628.54 m -558 628.54 l -S -BT -10 0 0 10 258 608.75 Tm -0.233 Tw -(Calls the function associated with the given )Tj -/TT6 1 Tf -21.0309 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.233 Tw -(, passing the)Tj -ET -570 626.53 0.99 -21.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 596.75 Tm -0 Tw -(values)Tj -/TT2 1 Tf -2.8906 0 TD -0.166 Tw -[( as arguments. The )]TJ -/TT6 1 Tf -9.5571 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.166 Tw -[( must be a restart object or the)]TJ -ET -570 604.53 0.99 -11.99 re -f -BT -10 0 0 10 258 584.75 Tm -0.211 Tw -(non-null name of a restart which is valid in the current dynamic)Tj -ET -570 592.53 0.99 -11.99 re -f -BT -10 0 0 10 258 572.75 Tm -0.743 Tw -(context. If an argument is not valid, an error of type)Tj -ET -570 580.53 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 560.75 Tm -0 Tw -(conditions:control-error)Tj -/TT2 1 Tf -14.4023 0 TD -( will be signalled.)Tj -ET -570 568.53 0.99 -13.28 re -f -BT -10 0 0 10 258 537.46 Tm -0.049 Tw -(If the argument is a named proceed case that has a corresponding)Tj -ET -258 540.79 m -557.99 540.79 l -S -BT -10 0 0 10 258 525.46 Tm -0.705 Tw -(proceed function, )Tj -ET -258 528.79 m -351.59 528.79 l -S -BT -/TT8 1 Tf -10 0 0 10 351.59 525.46 Tm -0 Tw -(xcl:invoke-proceed-case)Tj -ET -351.59 528.46 m -489.59 528.46 l -S -BT -/TT2 1 Tf -10 0 0 10 489.59 525.46 Tm -0.705 Tw -[( will do the)]TJ -ET -489.59 528.79 m -557.98 528.79 l -S -BT -10 0 0 10 258 512.17 Tm -0.427 Tw -(optional argument resolution specified by that function before)Tj -ET -258 515.5 m -558.03 515.5 l -S -BT -10 0 0 10 258 500.17 Tm -0 Tw -(transferring control to the proceed case.)Tj -ET -258 503.5 m -434.75 503.5 l -S -BT -10 0 0 10 434.75 500.17 Tm -( )Tj -/TT4 1 Tf --30.875 -2.3 TD -(conditions:invoke-restart-interactively)Tj -ET -126 473.67 m -307.71 473.67 l -S -BT -/TT8 1 Tf -10 0 0 10 307.71 477.17 Tm -( )Tj -ET -307.71 473.67 m -313.71 473.67 l -S -BT -/TT6 1 Tf -10 0 0 10 313.71 477.17 Tm -(restart)Tj -ET -313.71 473.67 m -342.05 473.67 l -S -BT -/TT8 1 Tf -10 0 0 10 342.05 477.17 Tm -( )Tj -ET -342.05 473.67 m -514.09 473.67 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 477.17 Tm -([Function])Tj -ET -514.09 473.67 m -558 473.67 l -S -570 495.95 0.99 -24.28 re -f -BT -10 0 0 10 258 453.88 Tm -0.105 Tw -(Calls the function associated with the given )Tj -/TT6 1 Tf -20.1349 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.105 Tw -[(, providing for)]TJ -ET -570 471.66 0.99 -21.99 re -f -BT -10 0 0 10 258 441.88 Tm -0.127 Tw -(any necessary arguments. The )Tj -/TT6 1 Tf -14.5148 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.127 Tw -[( must be a restart object or)]TJ -ET -570 449.66 0.99 -11.99 re -f -BT -10 0 0 10 258 429.88 Tm -0.05 Tw -(the non-null name or a restart which is valid in the current dynamic)Tj -ET -570 437.66 0.99 -11.99 re -f -BT -10 0 0 10 258 417.88 Tm -0.854 Tw -(context. If the )Tj -/TT6 1 Tf -8.8433 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.854 Tw -[( is not valid, an error of type)]TJ -ET -570 425.66 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 405.88 Tm -0 Tw -(conditions:control-error)Tj -/TT2 1 Tf -14.4023 0 TD -( will be signalled.)Tj -ET -570 413.66 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 382.59 Tm -(conditions:invoke-restart-interactively)Tj -/TT2 1 Tf -23.4038 0 TD -0.422 Tw -[( will first call)]TJ -ET -570 400.37 0.99 -23.28 re -f -BT -10 0 0 10 258 369.3 Tm -0 Tw -(the )Tj -/TT6 1 Tf -1.683 0 TD -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.015 Tw -(s interactive function as specified by the )Tj -/TT8 1 Tf -18.2813 0 TD -0 Tw -(:interactive)Tj -ET -570 377.08 0.99 -13.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 356.01 Tm -0.035 Tw -(keyword of )Tj -/TT8 1 Tf -5.1833 0 TD -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -0.035 Tw -[( or the )]TJ -/TT8 1 Tf -3.2178 0 TD -0 Tw -(:interactive-)Tj -ET -570 363.79 0.99 -13.28 re -f -BT -10 0 0 10 258 342.72 Tm -(function)Tj -/TT2 1 Tf -4.8008 0 TD -0.932 Tw -[( keyword of )]TJ -/TT8 1 Tf -8.1871 0 TD -0 Tw -(conditions:restart-bind)Tj -/TT2 1 Tf -13.8022 0 TD -0.932 Tw -(. The)Tj -ET -570 350.5 0.99 -13.28 re -f -BT -10 0 0 10 258 329.43 Tm -0.145 Tw -(interactive function should return a list of values to be passed as)Tj -ET -570 337.21 0.99 -11.99 re -f -BT -10 0 0 10 258 317.43 Tm -0.123 Tw -(arguments to the )Tj -/TT6 1 Tf -8.1512 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.123 Tw -(. This list must be at least as long as the)Tj -ET -570 325.21 0.99 -11.99 re -f -BT -10 0 0 10 258 305.43 Tm -0 Tw -(number of required arguments that the )Tj -/TT6 1 Tf -17.3433 0 TD -(restart)Tj -/TT2 1 Tf -2.834 0 TD -( has.)Tj -ET -570 313.21 0.99 -11.99 re -f -BT -10 0 0 10 258 283.43 Tm -0.304 Tw -(If the )Tj -/TT6 1 Tf -3.1095 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.304 Tw -[( has no interactive function, no arguments will be)]TJ -ET -570 301.21 0.99 -21.99 re -f -BT -10 0 0 10 258 271.43 Tm -0.051 Tw -[(passed to the restart function. It is an error for a restart to require)]TJ -ET -570 279.21 0.99 -11.99 re -f -BT -10 0 0 10 258 259.43 Tm -0 Tw -(arguments but not have an interactive function.)Tj -ET -570 267.21 0.99 -11.99 re -f -BT -10 0 0 10 258 237.43 Tm -2.087 Tw -(Once the arguments have been determined,)Tj -ET -570 255.21 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 225.43 Tm -0 Tw -(conditions:invoke-restart-interactively)Tj -/TT2 1 Tf -23.4038 0 TD -0.144 Tw -[( will simply do)]TJ -ET -570 233.21 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 212.14 Tm -3.083 Tw -(\(apply #conditions:invoke-restart )Tj -/TT6 1 Tf -27.1694 0 TD -0 Tw -(restart)Tj -ET -570 219.92 0.99 -13.28 re -f -BT -10 0 0 10 258 198.85 Tm -(arguments)Tj -/TT8 1 Tf -4.7246 0 TD -(\))Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj -ET -570 206.63 0.99 -13.28 re -f -BT -/TT4 1 Tf -10 0 0 10 126 174.56 Tm -(conditions:with-simple-restart)Tj -ET -126 171.06 m -269.35 171.06 l -S -BT -/TT8 1 Tf -10 0 0 10 269.35 174.56 Tm -( \()Tj -ET -269.35 171.06 m -281.35 171.06 l -S -BT -/TT6 1 Tf -10 0 0 10 281.35 174.56 Tm -(name)Tj -ET -281.35 171.06 m -306.36 171.06 l -S -BT -/TT8 1 Tf -10 0 0 10 306.36 174.56 Tm -( )Tj -ET -306.36 171.06 m -312.36 171.06 l -S -BT -/TT6 1 Tf -10 0 0 10 312.36 174.56 Tm -(format-string)Tj -ET -312.36 171.06 m -368.48 171.06 l -S -BT -/TT8 1 Tf -10 0 0 10 368.48 174.56 Tm -( {)Tj -ET -368.48 171.06 m -380.48 171.06 l -S -BT -/TT6 1 Tf -10 0 0 10 380.48 174.56 Tm -(format-arguments)Tj -ET -380.48 171.06 m -459.39 171.06 l -S -BT -/TT8 1 Tf -10 0 0 10 459.39 174.56 Tm -(}*\) {)Tj -ET -459.39 171.06 m -489.39 171.06 l -S -BT -/TT6 1 Tf -10 0 0 10 489.39 174.56 Tm -(form)Tj -ET -489.39 171.06 m -509.39 171.06 l -S -BT -/TT8 1 Tf -10 0 0 10 509.39 174.56 Tm -(}*)Tj -ET -509.39 171.06 m -521.39 171.06 l -S -570 193.34 0.99 -24.28 re -f -126 148.06 m -524.66 148.06 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 150.27 Tm -([Macro])Tj -ET -524.66 148.06 m -558 148.06 l -S -570 169.05 0.99 -22.99 re -f -BT -10 0 0 10 258 128.27 Tm -0.484 Tw -(This is a shorthand for one of the most common uses of)Tj -ET -570 146.05 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 116.27 Tm -0 Tw -(conditions:restart-case)Tj -/TT2 1 Tf -13.8022 0 TD -(.)Tj -ET -570 124.05 0.99 -13.28 re -f -BT -10 0 0 10 258 92.98 Tm -0.019 Tw -(If the )Tj -/TT6 1 Tf -2.5395 0 TD -0 Tw -(restart)Tj -/TT2 1 Tf -2.834 0 TD -0.019 Tw -[( designated by )]TJ -/TT6 1 Tf -6.8397 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.019 Tw -[( is not invoked while executing the)]TJ -ET -570 110.76 0.99 -21.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 80.98 Tm -0 Tw -(form)Tj -/TT2 1 Tf -2 0 TD -0.246 Tw -(s, all values produced by the last )Tj -/TT6 1 Tf -16.5081 0 TD -0 Tw -(form)Tj -/TT2 1 Tf -2 0 TD -0.246 Tw -[( are returned. If the)]TJ -ET -570 88.76 0.99 -11.99 re -f -BT -10 0 0 10 258 68.98 Tm -0.304 Tw -(restart established by )Tj -/TT8 1 Tf -10.6947 0 TD -0 Tw -(conditions:with-simple-restart)Tj -/TT2 1 Tf -18.0029 0 TD -0.304 Tw -[( is)]TJ -ET -570 76.76 0.99 -13.28 re -f -endstream -endobj -69 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -71 0 obj -<< -/Length 6295 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-21)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.004 Tw -(invoked, control is transferred to the )Tj -/TT8 1 Tf -16.1988 0 TD -0 Tw -(conditions:with-simple-)Tj -ET -570 737.98 0.99 -13.28 re -f -BT -10 0 0 10 258 716.91 Tm -(restart)Tj -/TT2 1 Tf -4.2007 0 TD -0.079 Tw -[( form, which immediately returns the two values )]TJ -/TT8 1 Tf -21.9733 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.079 Tw -[( and)]TJ -ET -570 724.69 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 703.62 Tm -0 Tw -(t)Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj -ET -570 711.4 0.99 -13.28 re -f -BT -10 0 0 10 258 680.33 Tm -0.122 Tw -(It is permissible for )Tj -/TT6 1 Tf -9.1013 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.122 Tw -[( to be )]TJ -/TT8 1 Tf -3.1458 0 TD -0 Tw -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -0.122 Tw -(. In that case, an anonymous)Tj -ET -570 698.11 0.99 -23.28 re -f -BT -10 0 0 10 258 667.04 Tm -0 Tw -(restart is established.)Tj -ET -570 674.82 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 648.04 Tm -(conditions:with-simple-restart)Tj -/TT2 1 Tf -18.0029 0 TD -( is essentially:)Tj -ET -570 662.82 0.99 -35.28 re -f -BT -/TT8 1 Tf -10 0 0 10 198 620.04 Tm -(\(defmacro conditions:with-simple-restart )Tj -ET -570 627.53 0.99 -10.99 re -f -BT -10 0 0 10 198 609.04 Tm -( \(\(restart-name format-string)Tj -ET -570 616.53 0.99 -10.99 re -f -BT -10 0 0 10 198 598.04 Tm -( &rest format-arguments\))Tj -ET -570 605.53 0.99 -10.99 re -f -BT -10 0 0 10 198 587.04 Tm -( &body forms\))Tj -ET -570 594.53 0.99 -10.99 re -f -BT -10 0 0 10 198 576.04 Tm -( \(conditions:restart-case \(progn ,@forms\))Tj -ET -570 583.53 0.99 -10.99 re -f -BT -10 0 0 10 198 565.04 Tm -( \(,restart-name \(\))Tj -ET -570 572.53 0.99 -10.99 re -f -BT -10 0 0 10 198 554.04 Tm -( :report \(lambda \(stream\))Tj -ET -570 561.53 0.99 -10.99 re -f -BT -10 0 0 10 198 543.04 Tm -( \(format stream)Tj -ET -570 550.53 0.99 -10.99 re -f -BT -10 0 0 10 198 532.04 Tm -( ,format-string)Tj -ET -570 539.53 0.99 -10.99 re -f -BT -10 0 0 10 198 521.04 Tm -( ,@format-arguments\)\))Tj -ET -570 528.53 0.99 -10.99 re -f -BT -10 0 0 10 198 508.75 Tm -( \(values nil t\)\)\)\))Tj -/TT2 1 Tf -14.4023 0 TD -( )Tj -ET -570 517.53 0.99 -12.28 re -f -BT -10 0 0 10 258 490.46 Tm -(Example:)Tj -ET -570 505.24 0.99 -27.99 re -f -BT -/TT8 1 Tf -10 0 0 10 198 469.75 Tm -(\(defun read-eval-print-loop \(level\))Tj -ET -570 477.24 0.99 -10.99 re -f -BT -10 0 0 10 198 459.75 Tm -( \(conditions:with-simple-restart)Tj -ET -570 466.24 0.99 -9.99 re -f -BT -10 0 0 10 198 448.75 Tm -( \(conditions:abort "Exit command level ~D." level\))Tj -ET -570 456.24 0.99 -10.99 re -f -BT -10 0 0 10 198 437.75 Tm -( \(loop)Tj -ET -570 445.24 0.99 -10.99 re -f -BT -10 0 0 10 198 426.75 Tm -( \(conditions:with-simple-restart)Tj -ET -570 434.24 0.99 -10.99 re -f -BT -10 0 0 10 198 415.75 Tm -( \(conditions:abort "Return to command level ~D.")Tj -ET -570 423.24 0.99 -10.99 re -f -BT -10 0 0 10 198 405.75 Tm -(level\))Tj -ET -570 412.24 0.99 -9.99 re -f -BT -10 0 0 10 198 394.75 Tm -( \(print \(eval \(read\)\)\)\)\)\)\))Tj -ET -570 402.24 0.99 -10.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 360.46 Tm -(xcl:catch-abort)Tj -ET -0.75 w -126 356.96 m -197.68 356.96 l -S -BT -/TT8 1 Tf -10 0 0 10 197.68 360.46 Tm -( )Tj -ET -197.68 356.96 m -203.68 356.96 l -S -BT -/TT6 1 Tf -10 0 0 10 203.68 360.46 Tm -(print-form)Tj -ET -203.68 356.96 m -246.46 356.96 l -S -BT -/TT8 1 Tf -10 0 0 10 246.46 360.46 Tm -( &)Tj -ET -246.46 356.96 m -258.46 356.96 l -S -BT -/TT4 1 Tf -10 0 0 10 258.46 360.46 Tm -(body)Tj -ET -258.46 356.96 m -282.35 356.96 l -S -BT -/TT8 1 Tf -10 0 0 10 282.35 360.46 Tm -( )Tj -ET -282.35 356.96 m -288.35 356.96 l -S -BT -/TT6 1 Tf -10 0 0 10 288.35 360.46 Tm -(forms)Tj -ET -288.35 356.96 m -524.66 356.96 l -S -BT -/TT2 1 Tf -10 0 0 10 524.66 360.46 Tm -([Macro])Tj -ET -524.66 356.96 m -558 356.96 l -S -BT -10 0 0 10 258 337.17 Tm -(Like )Tj -/TT8 1 Tf -2.2223 0 TD -(conditions:with-simple-restart)Tj -/TT2 1 Tf -18.0029 0 TD -0.11 Tw -(, but always uses the)Tj -ET -570 354.95 0.99 -23.28 re -f -BT -10 0 0 10 258 323.88 Tm -0 Tw -(name )Tj -/TT8 1 Tf -2.7793 0 TD -(conditions:abort)Tj -/TT2 1 Tf -9.6016 0 TD -( .)Tj -ET -570 331.66 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 300.59 Tm -(xcl:catch-abort)Tj -/TT2 1 Tf -9.0015 0 TD -( could be defined by:)Tj -ET -570 318.37 0.99 -34.28 re -f -BT -/TT8 1 Tf -10 0 0 10 198 276.59 Tm -(\(defmacro xcl:catch-abort \(print-form)Tj -ET -570 284.08 0.99 -10.99 re -f -BT -10 0 0 10 198 266.59 Tm -( &body forms\))Tj -ET -570 273.08 0.99 -9.99 re -f -BT -10 0 0 10 198 255.29 Tm -( )Tj -12 0 0 12 216.0029 255.29 Tm -()Tj -10 0 0 10 223.2041 255.29 Tm -(\(conditions:with-simple-restart)Tj -ET -570 263.08 0.99 -11.99 re -f -BT -10 0 0 10 198 243.59 Tm -( \(conditions:abort ,print-form\))Tj -ET -570 251.08 0.99 -10.99 re -f -BT -10 0 0 10 198 232.59 Tm -( ,@forms\)\))Tj -ET -570 240.08 0.99 -10.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 210.3 Tm -(conditions:abort)Tj -ET -126 208.09 m -204.89 208.09 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 210.3 Tm -([Function])Tj -ET -204.89 208.09 m -558 208.09 l -S -570 229.08 0.99 -22.99 re -f -BT -10 0 0 10 258 188.3 Tm -0.128 Tw -(This function transfers control to the nearest active restart named)Tj -ET -570 206.08 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 176.3 Tm -0 Tw -(conditions:abort)Tj -/TT2 1 Tf -9.6016 0 TD -0.019 Tw -(. If there is none, this function signals an error)Tj -ET -570 184.08 0.99 -13.28 re -f -BT -10 0 0 10 258 163.01 Tm -0 Tw -(of type )Tj -/TT8 1 Tf -3.2798 0 TD -(conditions:control-error)Tj -/TT2 1 Tf -14.4023 0 TD -(.)Tj -ET -570 170.79 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 139.72 Tm -(xcl:abort)Tj -ET -258 142.72 m -312 142.72 l -S -BT -/TT2 1 Tf -10 0 0 10 312 139.72 Tm -( could be defined by:)Tj -ET -312 143.05 m -404.28 143.05 l -278 130.72 m -278 130.72 l -S -BT -/TT8 1 Tf -10 0 0 10 278 116.72 Tm -(\(define-proceed-function xcl:abort)Tj -ET -278 119.72 m -482 119.72 l -S -BT -10 0 0 10 278 105.72 Tm -( :report "Abort"\))Tj -ET -278 108.72 m -392 108.72 l -S -BT -/TT4 1 Tf -10 0 0 10 126 82.43 Tm -(conditions:continue)Tj -ET -126 80.22 m -514.09 80.22 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 82.43 Tm -([Function])Tj -ET -514.09 80.22 m -558 80.22 l -S -570 101.21 0.99 -22.99 re -f -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -75 0 obj -<< -/Length 6388 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-22)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 269.02 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM)Tj --21.502 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.128 Tw -(This function transfers control to the nearest active restart named)Tj -ET -570 747.98 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 718.2 Tm -0 Tw -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -(. If none exists it simply returns )Tj -/TT8 1 Tf -14.0049 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -ET -570 725.98 0.99 -13.28 re -f -BT -10 0 0 10 258 694.91 Tm -(The )Tj -/TT8 1 Tf -2.268 0 TD -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -0.267 Tw -[( restart is generally part of simple)]TJ -ET -570 712.69 0.99 -23.28 re -f -BT -10 0 0 10 258 681.62 Tm -0.133 Tw -(protocols where there is a single "obvious" way to continue, such)Tj -ET -570 689.4 0.99 -11.99 re -f -BT -10 0 0 10 258 669.62 Tm -0 Tw -(as in )Tj -/TT8 1 Tf -2.3901 0 TD -(break)Tj -/TT2 1 Tf -3.0005 0 TD -( and )Tj -/TT8 1 Tf -2.2241 0 TD -(cerror)Tj -/TT2 1 Tf -3.6006 0 TD -(.)Tj -ET -570 677.4 0.99 -13.28 re -f -BT -10 0 0 10 258 646.33 Tm -(NB: )Tj -/TT8 1 Tf -1.9448 0 TD -(conditions:continue)Tj -/TT2 1 Tf -11.4019 0 TD -( replaces )Tj -/TT8 1 Tf -4.3354 0 TD -(xcl:proceed)Tj -/TT2 1 Tf -6.6011 0 TD -(.)Tj -ET -570 664.11 0.99 -23.28 re -f -BT -/TT8 1 Tf -10 0 0 10 126 622.04 Tm -(xcl:proceed &optional )Tj -ET -0.75 w -126 625.04 m -258 625.04 l -S -BT -/TT6 1 Tf -10 0 0 10 258 622.04 Tm -(condition)Tj -ET -258 624.7 m -514.09 624.7 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 622.04 Tm -([Function])Tj -ET -514.09 625.37 m -558 625.37 l -S -BT -10 0 0 10 258 598.75 Tm -0.095 Tw -(This is a predefined proceed function. It is used by such functions)Tj -ET -258 602.08 m -558.04 602.08 l -S -BT -10 0 0 10 258 586.75 Tm -0 Tw -(as )Tj -ET -258 590.08 m -271.34 590.08 l -S -BT -/TT8 1 Tf -10 0 0 10 271.34 586.75 Tm -(break)Tj -ET -271.34 589.75 m -301.34 589.75 l -S -BT -/TT2 1 Tf -10 0 0 10 301.34 586.75 Tm -(, )Tj -ET -301.34 590.08 m -306.9 590.08 l -S -BT -/TT8 1 Tf -10 0 0 10 306.9 586.75 Tm -(cerror)Tj -ET -306.9 589.75 m -342.9 589.75 l -S -BT -/TT2 1 Tf -10 0 0 10 342.9 586.75 Tm -(, etc.)Tj -ET -342.9 590.08 m -364.58 590.08 l -S -BT -/TT4 1 Tf -10 0 0 10 126 562.46 Tm -(conditions:muffle-warning)Tj -ET -126 560.25 m -514.09 560.25 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 562.46 Tm -([Function])Tj -ET -514.09 560.25 m -558 560.25 l -S -570 581.24 0.99 -22.99 re -f -BT -10 0 0 10 258 540.46 Tm -0.128 Tw -(This function transfers control to the nearest active restart named)Tj -ET -570 558.24 0.99 -21.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 528.46 Tm -0 Tw -(conditions:muffle-warning)Tj -/TT2 1 Tf -15.0024 0 TD -0.174 Tw -(. If none exists, an error of type)Tj -ET -570 536.24 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 515.17 Tm -0 Tw -(conditions:control-error)Tj -/TT2 1 Tf -14.4023 0 TD -( is signalled.)Tj -ET -570 522.95 0.99 -13.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 491.88 Tm -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -1.331 Tw -[( sets up this restart so that handlers of)]TJ -ET -570 509.66 0.99 -23.28 re -f -BT -/TT8 1 Tf -10 0 0 10 258 478.59 Tm -0 Tw -(conditions:warning)Tj -/TT2 1 Tf -10.8018 0 TD -0.014 Tw -[( conditions have a way to tell )]TJ -/TT8 1 Tf -13.161 0 TD -0 Tw -(warn)Tj -/TT2 1 Tf -2.4004 0 TD -0.014 Tw -[( that the)]TJ -ET -570 486.37 0.99 -13.28 re -f -BT -10 0 0 10 258 465.3 Tm -0 Tw -(warning has been dealt with and that no further action is warranted.)Tj -ET -570 473.08 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 442.3 Tm -(conditions:use-value)Tj -ET -126 438.8 m -226.02 438.8 l -S -BT -/TT8 1 Tf -10 0 0 10 226.02 442.3 Tm -( )Tj -ET -226.02 438.8 m -232.02 438.8 l -S -BT -/TT6 1 Tf -10 0 0 10 232.02 442.3 Tm -(new-value)Tj -ET -232.02 438.8 m -514.09 438.8 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 442.3 Tm -([Function])Tj -ET -514.09 438.8 m -558 438.8 l -S -570 461.08 0.99 -24.28 re -f -BT -10 0 0 10 258 419.01 Tm -0.038 Tw -(This function transfers control \(and one value\) to the nearest active)Tj -ET -570 436.79 0.99 -21.99 re -f -BT -10 0 0 10 258 407.01 Tm -0.062 Tw -(restart named )Tj -/TT8 1 Tf -6.5713 0 TD -0 Tw -(conditions:use-value)Tj -/TT2 1 Tf -12.002 0 TD -0.062 Tw -(. If no such restart exists,)Tj -ET -570 414.79 0.99 -13.28 re -f -BT -10 0 0 10 258 393.72 Tm -0 Tw -(this function simply returns )Tj -/TT8 1 Tf -12.1157 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -ET -570 401.5 0.99 -13.28 re -f -BT -10 0 0 10 258 370.43 Tm -(The )Tj -/TT8 1 Tf -2.63 0 TD -(conditions:use-value)Tj -/TT2 1 Tf -12.002 0 TD -0.629 Tw -[( restart is generally used by)]TJ -ET -570 388.21 0.99 -23.28 re -f -BT -10 0 0 10 258 357.14 Tm -0.672 Tw -(handlers trying to recover from errors of types such as)Tj -ET -570 364.92 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 345.14 Tm -0 Tw -(conditions:cell-error)Tj -/TT2 1 Tf -12.6021 0 TD -0.016 Tw -(, where the handler may wish to supply)Tj -ET -570 352.92 0.99 -13.28 re -f -BT -10 0 0 10 258 331.85 Tm -0 Tw -(a replacement datum for one-time use.)Tj -ET -570 339.63 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 308.85 Tm -(conditions:store-value)Tj -ET -126 305.35 m -233.24 305.35 l -S -BT -/TT8 1 Tf -10 0 0 10 233.24 308.85 Tm -( )Tj -ET -233.24 305.35 m -239.24 305.35 l -S -BT -/TT6 1 Tf -10 0 0 10 239.24 308.85 Tm -(new-value)Tj -ET -239.24 305.35 m -284.81 305.35 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 308.85 Tm -([Function])Tj -ET -284.81 305.35 m -558 305.35 l -S -570 327.63 0.99 -24.28 re -f -BT -10 0 0 10 258 285.56 Tm -0.038 Tw -(This function transfers control \(and one value\) to the nearest active)Tj -ET -570 303.34 0.99 -21.99 re -f -BT -10 0 0 10 258 273.56 Tm -0.392 Tw -(restart named )Tj -/TT8 1 Tf -7.229 0 TD -0 Tw -(conditions:store-value)Tj -/TT2 1 Tf -13.2021 0 TD -0.392 Tw -(. If no such restart)Tj -ET -570 281.34 0.99 -13.28 re -f -BT -10 0 0 10 258 260.27 Tm -0 Tw -(exists, this function simply returns )Tj -/TT8 1 Tf -15.2275 0 TD -(nil)Tj -/TT2 1 Tf -1.8003 0 TD -(.)Tj -ET -570 268.05 0.99 -13.28 re -f -BT -10 0 0 10 258 236.98 Tm -(The )Tj -/TT8 1 Tf -2.63 0 TD -(conditions:use-value)Tj -/TT2 1 Tf -12.002 0 TD -0.629 Tw -[( restart is generally used by)]TJ -ET -570 254.76 0.99 -23.28 re -f -BT -10 0 0 10 258 223.69 Tm -0.672 Tw -(handlers trying to recover from errors of types such as)Tj -ET -570 231.47 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 211.69 Tm -0 Tw -(conditions:cell-error)Tj -/TT2 1 Tf -12.6021 0 TD -0.016 Tw -(, where the handler may wish to supply)Tj -ET -570 219.47 0.99 -13.28 re -f -BT -10 0 0 10 258 198.4 Tm -0 Tw -(a replacement datum to be stored in the offending cell.)Tj -ET -570 206.18 0.99 -11.99 re -f -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -78 0 obj -<< -/Length 367 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 536.8799 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(E-23)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, ERROR SYSTEM )Tj -35.508 74.479 TD -(APPENDIX E - ERROR SYSTEM)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -79 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 0 0 0 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 584 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 0 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 80 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 722 0 0 0 389 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 0 722 722 667 0 0 722 278 0 0 0 833 722 778 -667 0 722 667 611 0 0 0 667 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 81 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 0 278 -0 556 556 0 0 0 0 0 0 0 278 0 0 0 0 0 -0 0 0 722 0 0 611 0 0 278 0 0 556 0 722 0 -667 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 82 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 600 600 0 600 600 600 0 600 600 600 600 -600 600 0 0 600 0 0 600 0 600 600 600 0 0 0 0 -600 600 600 600 600 600 600 600 0 600 0 600 600 0 600 600 -600 0 600 600 600 600 0 600 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 83 0 R ->> -endobj -25 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 84 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -67 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 69 0 R -/Contents 68 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 73 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 73 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -77 0 obj -<< -/Type /Page -/Parent 73 0 R -/Resources 79 0 R -/Contents 78 0 R ->> -endobj -85 0 obj -<< -/S /D ->> -endobj -86 0 obj -<< -/Nums [0 85 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R 16 0 R 19 0 R 22 0 R 26 0 R 29 0 R 32 0 R 35 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -42 0 obj -<< -/Type /Pages -/Kids [38 0 R 43 0 R 46 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 67 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -73 0 obj -<< -/Type /Pages -/Kids [70 0 R 74 0 R 77 0 R] -/Count 3 -/Parent 41 0 R ->> -endobj -41 0 obj -<< -/Type /Pages -/Kids [8 0 R 42 0 R 73 0 R ] -/Count 23 -/MediaBox [0 0 612 792] ->> -endobj -87 0 obj -<< -/CreationDate (D:20210119174400-06'00') -/ModDate (D:20210119174400-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -88 0 obj -<< -/Type /Catalog -/Pages 41 0 R -/PageLabels 86 0 R ->> -endobj -xref -0 89 -0000000000 65535 f -0000165295 00000 n -0000000016 00000 n -0000005963 00000 n -0000163154 00000 n -0000163720 00000 n -0000164160 00000 n -0000162020 00000 n -0000167281 00000 n -0000165375 00000 n -0000006080 00000 n -0000011835 00000 n -0000165457 00000 n -0000011931 00000 n -0000018643 00000 n -0000164591 00000 n -0000165540 00000 n -0000018773 00000 n -0000023658 00000 n -0000165623 00000 n -0000023777 00000 n -0000031535 00000 n -0000165706 00000 n -0000031665 00000 n -0000039535 00000 n -0000165127 00000 n -0000165789 00000 n -0000039667 00000 n -0000046127 00000 n -0000165872 00000 n -0000046257 00000 n -0000053654 00000 n -0000165955 00000 n -0000053784 00000 n -0000062887 00000 n -0000166038 00000 n -0000063017 00000 n -0000071582 00000 n -0000166121 00000 n -0000071712 00000 n -0000079998 00000 n -0000167642 00000 n -0000167416 00000 n -0000166205 00000 n -0000080128 00000 n -0000086681 00000 n -0000166289 00000 n -0000086811 00000 n -0000096890 00000 n -0000166373 00000 n -0000097020 00000 n -0000104137 00000 n -0000166457 00000 n -0000104256 00000 n -0000109544 00000 n -0000166541 00000 n -0000109663 00000 n -0000116547 00000 n -0000166625 00000 n -0000116666 00000 n -0000125024 00000 n -0000166709 00000 n -0000125154 00000 n -0000131394 00000 n -0000166793 00000 n -0000131524 00000 n -0000138537 00000 n -0000166877 00000 n -0000138667 00000 n -0000148326 00000 n -0000166961 00000 n -0000148456 00000 n -0000154804 00000 n -0000167554 00000 n -0000167045 00000 n -0000154934 00000 n -0000161375 00000 n -0000167129 00000 n -0000161505 00000 n -0000161924 00000 n -0000162160 00000 n -0000162355 00000 n -0000162561 00000 n -0000162766 00000 n -0000162957 00000 n -0000167213 00000 n -0000167241 00000 n -0000167740 00000 n -0000167872 00000 n -trailer -<< -/Size 89 -/Root 88 0 R -/Info 87 0 R -/ID [<509834878cf53dd051377ef9ad308be8><509834878cf53dd051377ef9ad308be8>] ->> -startxref -167942 -%%EOF diff --git a/docs/ReleaseNote/ENVOSCOVERSHEET.pdf b/docs/ReleaseNote/ENVOSCOVERSHEET.pdf deleted file mode 100644 index 4ae9801b..00000000 Binary files a/docs/ReleaseNote/ENVOSCOVERSHEET.pdf and /dev/null differ diff --git a/docs/ReleaseNote/Indexfinal.pdf b/docs/ReleaseNote/Indexfinal.pdf deleted file mode 100644 index f850502b..00000000 --- a/docs/ReleaseNote/Indexfinal.pdf +++ /dev/null @@ -1,9385 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 13470 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 518.5499 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj -/TT4 1 Tf -18 0 0 18 497.98 744.97 Tm -( INDEX)Tj -ET -6 w -258.01 737.99 m -558.01 737.99 l -S -BT -10 0 0 10 54 676.2 Tm -(A)Tj -0 -1 TD -(Abort )Tj -/TT6 1 Tf -3.2217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj --12.2241 -1 TD -(ACCESS )Tj -/TT6 1 Tf -4.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-38)Tj -/TT4 1 Tf --5.5015 -1 TD -(Add-Command )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-14)Tj -/TT4 1 Tf --13.0566 -1 TD -(add.process )Tj -/TT6 1 Tf -6.7246 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-12; 7-12)Tj -/TT4 1 Tf --12.0596 -1 TD -(ADDMENU )Tj -/TT6 1 Tf -5.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-24)Tj -/TT4 1 Tf --11.0015 -1 TD -(ADDTOSCRATCHLIST )Tj -/TT6 1 Tf -11.166 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-1)Tj -/TT4 1 Tf --16.501 -1 TD -(ADVICE )Tj -/TT6 1 Tf -4.334 0 TD -(\(File Manager Command\) )Tj -/TT2 1 Tf -12.2261 0 TD -(3-15)Tj -/TT4 1 Tf --16.5601 -1 TD -(ADVINFOLST )Tj -/TT6 1 Tf -6.9443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-14)Tj -/TT4 1 Tf --12.1128 -1 TD -(ADVISE )Tj -/TT6 1 Tf -4.2788 0 TD -(\(File Manager Command\) )Tj -/TT2 1 Tf -12.2261 0 TD -(3-15)Tj -/TT4 1 Tf --16.5049 -1 TD -(ADVISE )Tj -/TT6 1 Tf -4.5566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13,15)Tj -/TT4 1 Tf --9.8916 -1 TD -(ADVISEDFNS )Tj -/TT6 1 Tf -7.001 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-14)Tj -/TT4 1 Tf --12.1694 -1 TD -(ADVISEDUMP )Tj -/TT6 1 Tf -7.2231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-14)Tj --12.5581 -1 TD -(Advising )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-14; 7-9)Tj --5.1689 -1 TD -(AFTERDOMAKESYS )Tj -/TT6 1 Tf -10.1685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --11.002 -1 TD -(AFTERDOSAVEVM )Tj -/TT6 1 Tf -9.5015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --10.335 -1 TD -(AFTERDOSYSOUT )Tj -/TT6 1 Tf -9.4453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --10.2788 -1 TD -(AFTERLOGOUT )Tj -/TT6 1 Tf -8.0562 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --8.8896 -1 TD -(AFTERLOGOUTFORMS )Tj -/TT6 1 Tf -11.667 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --12.5005 -1 TD -(AFTERMAKESYS )Tj -/TT6 1 Tf -8.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --9.502 -1 TD -(AFTERSAVEVM )Tj -/TT6 1 Tf -8.0015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --8.835 -1 TD -(AFTERSYSOUT )Tj -/TT6 1 Tf -7.9453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj -/TT4 1 Tf --8.7788 -1 TD -(AGAIN )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --12.7803 -1 TD -(ALL )Tj -/TT6 1 Tf -2.4995 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --10.5024 -1 TD -(ALLOWED-LOGINS )Tj -/TT6 1 Tf -9.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --10.3911 -1 TD -(append )Tj -/TT6 1 Tf -4.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf --1.8892 -1 TD -(with non-list argument )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-8)Tj --13.9492 -1 TD -(Application Menus )Tj -/TT6 1 Tf -8.7271 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-1)Tj --9.5605 -1 TD -(APPLY-format input )Tj -/TT6 1 Tf -9.6709 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-3)Tj -/TT4 1 Tf --10.5044 -1 TD -(ARCHIVEFLG )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --12.2241 -1 TD -(ARCHIVEFN )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --11.5576 -1 TD -(Arglist )Tj -/TT6 1 Tf -3.7227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.7251 -1 TD -(AROUNDEXITFNS )Tj -/TT6 1 Tf -9.167 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-7)Tj --14.3355 -1 TD -(array reference )Tj -/TT6 1 Tf -7.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-4)Tj --8.1699 -1 TD -(arrays )Tj -/TT6 1 Tf -3.334 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-3)Tj -/TT4 1 Tf --4.1675 -1 TD -(ASKUSER )Tj -/TT6 1 Tf -5.4453 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-16)Tj -/TT4 1 Tf --10.7803 -1 TD -(assert )Tj -/TT6 1 Tf -3.5024 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj -/TT4 1 Tf --7.7803 -1 TD -(Attach Menu )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj --15.5581 -1 TD -(Attached Windows )Tj -/TT6 1 Tf -8.8374 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-28)Tj --9.6709 -1 TD -(AUTHENTICATE )Tj -/TT6 1 Tf -8.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --9.0562 -1 TD -(AUTHENTICATION.NET.HINT )Tj -/TT6 1 Tf -14.3325 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-33)Tj --19.501 -1 TD -(AUTOHARDRESETFLG )Tj -/TT6 1 Tf -11.4458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-5)Tj -/TT4 1 Tf --12.2793 -2.2 TD -(B)Tj -/TT2 1 Tf -0 -1 TD -(back-quote facility )Tj -/TT6 1 Tf -8.5596 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-49)Tj -/TT4 1 Tf --9.3931 -1 TD -(BACKGROUND )Tj -/TT6 1 Tf -8.1665 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --21.3379 -1 TD -(BACKGROUND )Tj -/TT6 1 Tf -8.1665 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-10)Tj -/TT4 1 Tf --20.5034 -1 TD -(BACKGROUNDFNS )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-12)Tj -/TT4 1 Tf --15.0571 -1 TD -(BACKSPACE )Tj -/TT6 1 Tf -6.8896 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.3374 -1 TD -(BCOMPL )Tj -/TT6 1 Tf -4.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-22,25; 4-10)Tj -/TT4 1 Tf --10.2236 -1 TD -(BEEPON )Tj -/TT6 1 Tf -4.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-31)Tj --10.1138 -1 TD -(BEFORELOGOUT )Tj -/TT6 1 Tf -8.8901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --9.7236 -1 TD -(BEFOREMAKESYS )Tj -/TT6 1 Tf -9.5024 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --10.3359 -1 TD -(BEFORESAVEVM )Tj -/TT6 1 Tf -8.8354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --9.6689 -1 TD -(BEFORESYSOUT )Tj -/TT6 1 Tf -8.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --9.6128 -1 TD -(BEFORESYSOUTFORMS )Tj -/TT6 1 Tf -12.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj -/TT4 1 Tf --13.2236 -1 TD -(BITMAP )Tj -/TT6 1 Tf -4.6665 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-10)Tj -/TT4 1 Tf --18.3926 -1 TD -(BKSYSBUF )Tj -/TT6 1 Tf -6.0562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-30)Tj -/TT4 1 Tf --11.3911 -1 TD -(BKSYSCHARCODE )Tj -/TT6 1 Tf -9.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-30)Tj -/TT4 1 Tf --15.1138 -1 TD -(BLOCKRECORD )Tj -/TT6 1 Tf -8.4443 0 TD -(\(Record Type\) )Tj -/TT2 1 Tf -7.2241 0 TD -(4-3)Tj -/TT4 1 Tf --15.6685 -1 TD -(BOTTOM )Tj -/TT6 1 Tf -5.166 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj --18.3374 -1 TD -(bound )Tj -/TT6 1 Tf -3.6143 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-4)Tj -/TT4 1 Tf -21.9522 60.5 TD -(BOUNDP )Tj -/TT6 1 Tf -5.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-2)Tj -/TT4 1 Tf --10.502 -1 TD -(BOX )Tj -/TT6 1 Tf -3.0005 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-5,8)Tj -/TT4 1 Tf --16.1719 -1 TD -(BOX )Tj -/TT6 1 Tf -3.0005 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-10)Tj -/TT4 1 Tf --15.3374 -1 TD -(BOXSHADE )Tj -/TT6 1 Tf -6.501 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --19.6724 -1 TD -(BOXSHADE )Tj -/TT6 1 Tf -6.501 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-10)Tj -/TT4 1 Tf --18.8379 -1 TD -(BOXSPACE )Tj -/TT6 1 Tf -6.4458 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --19.6172 -1 TD -(BOXSPACE )Tj -/TT6 1 Tf -6.4458 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-10)Tj -/TT4 1 Tf --18.7827 -1 TD -(break )Tj -/TT6 1 Tf -3.2241 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13; E-13)Tj --8.5591 -1 TD -(break commands )Tj -/TT6 1 Tf -8.2256 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-13)Tj --9.0591 -1 TD -(Break packages )Tj -/TT6 1 Tf -8.0044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-9)Tj -/TT4 1 Tf --8.8379 -1 TD -(BREAK0 )Tj -/TT6 1 Tf -4.9453 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13)Tj -/TT4 1 Tf --10.2803 -1 TD -(BREAK1 )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-9)Tj -/TT4 1 Tf --10.0024 -1 TD -(BREAKCONNECTION )Tj -/TT6 1 Tf -10.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-14)Tj -/TT4 1 Tf --16.1685 -1 TD -(BREAKIN )Tj -/TT6 1 Tf -5.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13)Tj --10.4463 -1 TD -(breaking )Tj -/TT6 1 Tf -4.3916 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-9)Tj -/TT4 1 Tf --5.2251 -1 TD -(BREAKREGIONSPEC )Tj -/TT6 1 Tf -10.7793 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-8)Tj -/TT4 1 Tf --15.9478 -1 TD -(BRECOMPILE )Tj -/TT6 1 Tf -7.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-22,25)Tj -/TT4 1 Tf --12.5576 -1 TD -(BRKINFOLST )Tj -/TT6 1 Tf -6.9995 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-13)Tj -/TT4 1 Tf --12.168 -1 TD -(BROKENFNS )Tj -/TT6 1 Tf -6.8892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-13)Tj --12.0576 -1 TD -(bulk data transfer )Tj -/TT6 1 Tf -8.2822 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-34)Tj -/TT4 1 Tf --9.1157 -2.2 TD -(C)Tj -/TT2 1 Tf -0 -1 TD -(Catch errors )Tj -/TT6 1 Tf -6.335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --7.1685 -1 TD -(ccase )Tj -/TT6 1 Tf -3.3364 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj -/TT4 1 Tf --7.6143 -1 TD -(cerror )Tj -/TT6 1 Tf -3.4463 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-9)Tj -/TT4 1 Tf --8.7812 -1 TD -(Change Print Base )Tj -/TT6 1 Tf -9.4468 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj -/TT4 1 Tf --18.4492 -1 TD -(CHANGEBACKGROUND )Tj -/TT6 1 Tf -12.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-31)Tj -/TT4 1 Tf --17.5571 -1 TD -(CHANGEFONT )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-23)Tj -/TT4 1 Tf --12.9458 -1 TD -(CHANGESLICE )Tj -/TT6 1 Tf -7.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-11,17)Tj -/TT4 1 Tf --13.1689 -1 TD -(CHANGESTATE )Tj -/TT6 1 Tf -8.4448 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-11)Tj --20.7817 -1 TD -(changing a standard readtable )Tj -/TT6 1 Tf -14.0659 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-22)Tj --14.8994 -1 TD -(characters )Tj -/TT6 1 Tf -5.2241 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-3)Tj -/TT4 1 Tf --6.0576 -1 TD -(CHARCODE )Tj -/TT6 1 Tf -6.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-3)Tj -/TT4 1 Tf --11.6685 -1 TD -(CHCON )Tj -/TT6 1 Tf -4.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-42)Tj -/TT4 1 Tf --9.5571 -1 TD -(check-type )Tj -/TT6 1 Tf -5.7803 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj --10.0581 -1 TD -(CL Exec )Tj -/TT6 1 Tf -4.6128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-7)Tj -/TT4 1 Tf --5.4463 -1 TD -(CL:* )Tj -/TT6 1 Tf -2.6108 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.7793 -1 TD -(CL:** )Tj -/TT6 1 Tf -3 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.1685 -1 TD -(CL:*** )Tj -/TT6 1 Tf -3.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5576 -1 TD -(CL:+ )Tj -/TT6 1 Tf -2.8057 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.9741 -1 TD -(CL:++ )Tj -/TT6 1 Tf -3.3896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5581 -1 TD -(CL:+++ )Tj -/TT6 1 Tf -3.9736 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --9.1421 -1 TD -(CL:- )Tj -/TT6 1 Tf -2.5547 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.7231 -1 TD -(CL:/ )Tj -/TT6 1 Tf -2.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.9458 -1 TD -(CL:// )Tj -/TT6 1 Tf -3.0552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.2236 -1 TD -(CL:/// )Tj -/TT6 1 Tf -3.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5015 -1 TD -(CL:BREAK )Tj -/TT6 1 Tf -5.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13)Tj -/TT4 1 Tf --11.1123 -1 TD -(CL:CATCH )Tj -/TT6 1 Tf -5.7212 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-5)Tj -/TT4 1 Tf --11.0562 -1 TD -(CL:CODE-CHAR )Tj -/TT6 1 Tf -8.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3)Tj -/TT4 1 Tf --13.6675 -1 TD -(CL:COMPILE-FILE )Tj -/TT6 1 Tf -9.2769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-24-25; 4-10)Tj -/TT4 1 Tf --14.6118 -1 TD -(CL:DEFCONSTANT )Tj -/TT6 1 Tf -9.7769 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20)Tj -/TT4 1 Tf --14.9453 -1 TD -(CL:DEFINE-MODIFY-MACRO )Tj -/TT6 1 Tf -14.2207 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj -/TT4 1 Tf --19.5557 -1 TD -(CL:DEFMACRO )Tj -/TT6 1 Tf -7.999 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj -/TT4 1 Tf --13.334 -1 TD -(CL:DEFMACRO )Tj -/TT6 1 Tf -7.999 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-29)Tj -/TT4 1 Tf --12.2769 -1 TD -(CL:DEFPARAMETER )Tj -/TT6 1 Tf -10.5552 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-26,29)Tj -/TT4 1 Tf --14.833 -1 TD -(CL:DEFPARAMETER )Tj -/TT6 1 Tf -10.5552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20)Tj -/TT4 1 Tf --15.7236 -1 TD -(CL:DEFUN )Tj -/TT6 1 Tf -5.666 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj -/TT4 1 Tf --11.001 -1 TD -(CL:DEFUN )Tj -/TT6 1 Tf -5.666 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-29)Tj -/TT4 1 Tf --9.9438 -1 TD -(CL:DEFVAR )Tj -/TT6 1 Tf -6.333 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-29)Tj -/TT4 1 Tf --10.6108 -1 TD -(CL:DEFVAR )Tj -/TT6 1 Tf -6.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20)Tj --11.5015 -1 TD -(CL:ERROR )Tj -/TT6 1 Tf -5.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --6.5566 -1 TD -(CL:EVAL-WHEN )Tj -/TT6 1 Tf -8.2769 0 TD -(\(File Package Command\) )Tj -/TT2 1 Tf -12.1709 0 TD -(3-31)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 15026 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 312.91 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj --25.891 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(CL:GENSYM )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-2)Tj -/TT4 1 Tf --11.8906 -1 TD -(CL:LOAD )Tj -/TT6 1 Tf -5.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-24)Tj -/TT4 1 Tf --10.3896 -1 TD -(CL:MAKE-HASH-TABLE )Tj -/TT6 1 Tf -11.9985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-4)Tj -/TT4 1 Tf --17.3335 -1 TD -(CL:MAPHASH )Tj -/TT6 1 Tf -7.2773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-4)Tj -/TT4 1 Tf --12.6123 -1 TD -(CL:PRIN1 )Tj -/TT6 1 Tf -5.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41-42)Tj -/TT4 1 Tf --10.502 -1 TD -(CL:PRINC )Tj -/TT6 1 Tf -5.333 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj -/TT4 1 Tf --10.668 -1 TD -(CL:READ )Tj -/TT6 1 Tf -5.0552 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-40)Tj -/TT4 1 Tf --10.3901 -1 TD -(CL:READ-PRESERVING-WHITESPACE )Tj -/TT6 1 Tf -18.9453 0 TD -(\(Function\))Tj -/TT2 1 Tf --11.4453 -1 TD -(3-41)Tj -/TT4 1 Tf --7.5 -1 TD -(CL:THROW )Tj -/TT6 1 Tf -5.9985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-5,11)Tj --11.3335 -1 TD -(CL:UNWIND-PROTECT )Tj -/TT6 1 Tf -11.333 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj -/TT4 1 Tf --12.1665 -1 TD -(CL:UNWIND-PROTECT )Tj -/TT6 1 Tf -11.4429 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-11)Tj --16.7778 -1 TD -(CL:WITH-INPUT-FROM-STRING )Tj -/TT6 1 Tf -15.3872 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-37)Tj -/TT4 1 Tf --16.2207 -1 TD -(CL:WRITE )Tj -/TT6 1 Tf -5.4434 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj -/TT4 1 Tf --10.7783 -1 TD -(CLEANUP )Tj -/TT6 1 Tf -5.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-25)Tj --10.7241 -1 TD -(cleanup forms )Tj -/TT6 1 Tf -6.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj -/TT4 1 Tf --7.6699 -1 TD -(CLEARCLISPARRAY )Tj -/TT6 1 Tf -10.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-10)Tj -/TT4 1 Tf --15.8355 -1 TD -(CLEARSTK )Tj -/TT6 1 Tf -6 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj -/TT4 1 Tf --11.335 -1 TD -(CLEARSTKLST )Tj -/TT6 1 Tf -7.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-5)Tj --13.0571 -1 TD -(CLISP infix forms )Tj -/TT6 1 Tf -8.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-33)Tj --9.1133 -1 TD -(CLISPARRAY )Tj -/TT6 1 Tf -6.8911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-2)Tj -/TT4 1 Tf --7.7246 -1 TD -(CLOSEALL )Tj -/TT6 1 Tf -5.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38)Tj --11.2793 -1 TD -(closure )Tj -/TT6 1 Tf -3.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-8)Tj -/TT4 1 Tf --4.6128 -1 TD -(coerce )Tj -/TT6 1 Tf -4.0581 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-12)Tj -/TT4 1 Tf --9.3931 -1 TD -(COERCE-TO-NSADDRESS )Tj -/TT6 1 Tf -13.1675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-33)Tj -/TT4 1 Tf --18.5024 -1 TD -(collect )Tj -/TT6 1 Tf -3.7236 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-6)Tj --8.0015 -1 TD -(collecting objects )Tj -/TT6 1 Tf -8.1709 0 TD -( )Tj -/TT2 1 Tf --5.6709 -1 TD -(macros for )Tj -/TT6 1 Tf -5.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-6)Tj -/TT4 1 Tf --8.8901 -1 TD -(COLLECTION )Tj -/TT6 1 Tf -7.333 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-12)Tj --19.6699 -1 TD -(COLLECTION property )Tj -/TT6 1 Tf -10.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-26)Tj -/TT4 1 Tf --11.7256 -1 TD -(COLUMN )Tj -/TT6 1 Tf -5.2217 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --18.3931 -1 TD -(COLUMNSPACE )Tj -/TT6 1 Tf -8.667 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --21.8384 -1 TD -(Comment Out Selection )Tj -/TT6 1 Tf -11.8901 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj --20.8926 -1 TD -(comment treated as declaration )Tj -/TT6 1 Tf -14.8408 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-32)Tj --15.6743 -1 TD -(Comments )Tj -/TT6 1 Tf -5.3901 0 TD -( )Tj -/TT2 1 Tf --2.8901 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-6)Tj --7.8911 -1 TD -(Common Lisp strings )Tj -/TT6 1 Tf -9.9478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-3)Tj --10.7813 -1 TD -(Common Lisp Symbols )Tj -/TT6 1 Tf -11.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-1)Tj --11.9482 -1 TD -(COMMONNUMSYNTAX )Tj -/TT6 1 Tf -11.5 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-44)Tj -/TT4 1 Tf --12.3335 -1 TD -(compile-definer )Tj -/TT6 1 Tf -8.0015 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7-2)Tj -/TT4 1 Tf --12.7246 -1 TD -(compile-form )Tj -/TT6 1 Tf -6.8896 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7-2)Tj --11.6128 -1 TD -(compiler )Tj -/TT6 1 Tf -4.3345 0 TD -( )Tj -/TT2 1 Tf --1.8345 -1 TD -(behavior with FLETed lexical functions )Tj -/TT6 1 Tf -17.8975 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-12)Tj --18.731 -1 TD -(behavior with recursion )Tj -/TT6 1 Tf -11.1162 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-12)Tj --11.9497 -1 TD -(ignoring TEdit formatting )Tj -/TT6 1 Tf -11.7275 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-12)Tj --12.561 -1 TD -(retaining special arguments )Tj -/TT6 1 Tf -13.0625 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-12)Tj --16.396 -1 TD -(complex numbers )Tj -/TT6 1 Tf -8.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj --9.2812 -1 TD -(coms )Tj -/TT6 1 Tf -3.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-11)Tj --4.0562 -1 TD -(condition )Tj -/TT6 1 Tf -4.5586 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-3)Tj -/TT4 1 Tf --5.3921 -1 TD -(conditions:*break-on-signals* )Tj -/TT6 1 Tf -14.7241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E-9)Tj -/TT4 1 Tf --19.8926 -1 TD -(conditions:abort )Tj -/TT6 1 Tf -8.4438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-21)Tj -/TT4 1 Tf --13.7788 -1 TD -(conditions:compute-restarts )Tj -/TT6 1 Tf -14.1128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-18)Tj -/TT4 1 Tf --19.4478 -1 TD -(conditions:continue )Tj -/TT6 1 Tf -10.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-21)Tj -/TT4 1 Tf --15.4453 -1 TD -(conditions:define-condition )Tj -/TT6 1 Tf -13.7207 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-5)Tj -/TT4 1 Tf --17.9985 -1 TD -(conditions:find-restart )Tj -/TT6 1 Tf -11.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-19)Tj -/TT4 1 Tf --16.5571 -1 TD -(conditions:handler-bind )Tj -/TT6 1 Tf -11.999 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-4,11)Tj -/TT4 1 Tf --16.2769 -1 TD -(conditions:handler-case )Tj -/TT6 1 Tf -12.1133 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-11)Tj -/TT4 1 Tf --16.3911 -1 TD -(conditions:ignore-errors )Tj -/TT6 1 Tf -12.2231 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-12)Tj -/TT4 1 Tf --16.501 -1 TD -(conditions:invoke-debugger )Tj -/TT6 1 Tf -14.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-13)Tj -/TT4 1 Tf --19.3354 -1 TD -(conditions:invoke-restart )Tj -/TT6 1 Tf -12.5576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-5,20)Tj -/TT4 1 Tf --17.8926 -1 TD -(conditions:invoke-restart-interactively )Tj -/TT6 1 Tf -18.7271 0 TD -(\(Function\))Tj -/TT2 1 Tf --11.2271 -1 TD -(E-20)Tj -/TT4 1 Tf --7.5 -1 TD -(conditions:make-condition )Tj -/TT6 1 Tf -13.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-6,8)Tj -/TT4 1 Tf --18.6685 -1 TD -(conditions:muffle-warning )Tj -/TT6 1 Tf -13.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-22)Tj -/TT4 1 Tf --18.4453 -1 TD -(conditions:restart-bind )Tj -/TT6 1 Tf -11.5 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-17)Tj -/TT4 1 Tf --15.7778 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-5)Tj -/TT4 1 Tf --16.9492 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-13)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:restart-name )Tj -/TT6 1 Tf -12.002 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-19)Tj -/TT4 1 Tf -9.0631 67 TD -(conditions:signal )Tj -/TT6 1 Tf -8.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-8)Tj -/TT4 1 Tf --14.1685 -1 TD -(conditions:store-value )Tj -/TT6 1 Tf -11.2793 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-22)Tj -/TT4 1 Tf --16.6143 -1 TD -(conditions:use-value )Tj -/TT6 1 Tf -10.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-22)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:with-simple-restart )Tj -/TT6 1 Tf -14.8901 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-20)Tj -/TT4 1 Tf --19.168 -1 TD -(CONN )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --12.1133 -1 TD -(CONTROL-A )Tj -/TT6 1 Tf -6.5547 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.0024 -1 TD -(Control-C )Tj -/TT6 1 Tf -5.1655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --14.168 -1 TD -(Control-L )Tj -/TT6 1 Tf -5.0542 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --14.0566 -1 TD -(Control-Meta-; )Tj -/TT6 1 Tf -7.3877 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --16.3901 -1 TD -(Control-Meta-F )Tj -/TT6 1 Tf -7.6655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --16.668 -1 TD -(Control-Meta-O )Tj -/TT6 1 Tf -7.8325 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj --16.835 -1 TD -(Control-P )Tj -/TT6 1 Tf -4.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-29)Tj -/TT4 1 Tf --5.6128 -1 TD -(CONTROL-Q )Tj -/TT6 1 Tf -6.6104 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.0581 -1 TD -(CONTROL-R )Tj -/TT6 1 Tf -6.5547 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj --16.0024 -1 TD -(Control-T )Tj -/TT6 1 Tf -4.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-29)Tj -/TT4 1 Tf --5.5566 -1 TD -(CONTROL-W )Tj -/TT6 1 Tf -6.7764 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.2241 -1 TD -(Control-W )Tj -/TT6 1 Tf -5.3872 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --14.3896 -1 TD -(CONTROL-X )Tj -/TT6 1 Tf -6.4995 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --15.9473 -1 TD -(Control-X )Tj -/TT6 1 Tf -5.1104 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --14.1128 -1 TD -(Convert Comments )Tj -/TT6 1 Tf -9.7793 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --18.7817 -1 TD -(Convert-Upgrade )Tj -/TT6 1 Tf -8.7231 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-14)Tj --13.8916 -1 TD -(converting characters )Tj -/TT6 1 Tf -10.1157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-3)Tj --10.9492 -1 TD -(Converting old code )Tj -/TT6 1 Tf -9.4502 0 TD -( )Tj -/TT2 1 Tf --6.9502 -1 TD -(for use with new Error system )Tj -/TT6 1 Tf -14.0039 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-1)Tj -/TT4 1 Tf --17.3374 -1 TD -(COORDINATES )Tj -/TT6 1 Tf -8.2227 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --21.394 -1 TD -(COPY )Tj -/TT6 1 Tf -3.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-49)Tj -/TT4 1 Tf --8.7246 -1 TD -(COPYBYTES )Tj -/TT6 1 Tf -6.7236 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-16)Tj -/TT4 1 Tf --12.0586 -1 TD -(COPYDEF )Tj -/TT6 1 Tf -5.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-4)Tj -/TT4 1 Tf --10.7246 -1 TD -(COPYFILE )Tj -/TT6 1 Tf -5.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38)Tj -/TT4 1 Tf --10.8911 -1 TD -(COPYREADTABLE )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-46)Tj -/TT4 1 Tf --14.8911 -1 TD -(COS )Tj -/TT6 1 Tf -2.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-3)Tj -/TT4 1 Tf --8.0576 -1 TD -(COURIER.CALL )Tj -/TT6 1 Tf -8.1108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-34)Tj -/TT4 1 Tf --13.4458 -1 TD -(COURIER.OPEN )Tj -/TT6 1 Tf -8.2788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-34)Tj --13.6138 -1 TD -(Creating an Exec process )Tj -/TT6 1 Tf -12.0059 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-18)Tj --12.8394 -1 TD -(Creating conditions )Tj -/TT6 1 Tf -9.1162 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-4)Tj --9.9497 -1 TD -(Creating icons )Tj -/TT6 1 Tf -6.9478 0 TD -( )Tj -/TT2 1 Tf --4.4478 -1 TD -(with ICONW )Tj -/TT6 1 Tf -6.3335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C-1)Tj --9.667 -1 TD -(CTRLUFLG )Tj -/TT6 1 Tf -5.834 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-18)Tj -/TT4 1 Tf --6.6675 -1 TD -(ctypecase )Tj -/TT6 1 Tf -5.3926 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj --9.6704 -1 TD -(CUHOTSPOTX )Tj -/TT6 1 Tf -7.5005 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --8.334 -1 TD -(CUHOTSPOTY )Tj -/TT6 1 Tf -7.5005 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --8.334 -1 TD -(CUIMAGE )Tj -/TT6 1 Tf -5.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --6.0562 -1 TD -(current package )Tj -/TT6 1 Tf -7.7266 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-45)Tj --8.5601 -1 TD -(CURSOR )Tj -/TT6 1 Tf -4.8892 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --5.7227 -1 TD -(Cursor Movement Commands )Tj -/TT6 1 Tf -13.8931 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-22)Tj --14.7266 -1 TD -(CURSORBITMAP )Tj -/TT6 1 Tf -8.6118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj -/TT4 1 Tf --9.4453 -1 TD -(CURSORCREATE )Tj -/TT6 1 Tf -9.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-30)Tj --14.3354 -1 TD -(CURSORHOTSPOTX )Tj -/TT6 1 Tf -10.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --11.2231 -1 TD -(CURSORHOTSPOTY )Tj -/TT6 1 Tf -10.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj -/TT4 1 Tf --11.2231 -2.2 TD -(D)Tj -0 -1 TD -(DA )Tj -/TT6 1 Tf -2 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.6133 -1 TD -(DAUGHTERS )Tj -/TT6 1 Tf -7.167 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --20.3384 -1 TD -(DC )Tj -/TT6 1 Tf -2 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-18)Tj --7.335 -1 TD -(Declining by Condition handler )Tj -/TT6 1 Tf -14.3975 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-4)Tj --15.231 -1 TD -(DEdit )Tj -/TT6 1 Tf -3.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-15)Tj --3.8345 -1 TD -(Default handlers )Tj -/TT6 1 Tf -7.8379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --8.6714 -1 TD -(Default-Commands )Tj -/TT6 1 Tf -9.7231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-15)Tj -/TT4 1 Tf --15.0581 -1 TD -(DEFAULT.OSTYPE )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-15)Tj -/TT4 1 Tf --14.7246 -1 TD -(DEFAULTFONT )Tj -/TT6 1 Tf -8.2212 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(D-7)Tj -/TT4 1 Tf --13.3896 -1 TD -(DEFAULTICONFN )Tj -/TT6 1 Tf -9.0547 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-25)Tj -/TT4 1 Tf --14.2231 -1 TD -(DEFAULTTEXTICON )Tj -/TT6 1 Tf -10.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(C-3)Tj -/TT4 1 Tf --15.4458 -1 TD -(deferredconstant )Tj -/TT6 1 Tf -9.002 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-12)Tj -/TT4 1 Tf --14.3369 -1 TD -(define-file-environment )Tj -/TT6 1 Tf -11.6123 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7-2)Tj -/TT4 1 Tf --16.3354 -1 TD -(define-record )Tj -/TT6 1 Tf -6.9458 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7-3)Tj --11.6689 -1 TD -(Defining New Terms )Tj -/TT6 1 Tf -9.6138 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-11)Tj -/TT4 1 Tf --10.4473 -1 TD -(DEFMACRO )Tj -/TT6 1 Tf -6.6108 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-5)Tj -/TT4 1 Tf --10.8887 -1 TD -(defstruct )Tj -/TT6 1 Tf -4.834 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-4)Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 14439 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 518.5499 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj -47.344 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 79 730.2 Tm -(warning )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-6)Tj -/TT4 1 Tf --7.6689 -1 TD -(DELDEF )Tj -/TT6 1 Tf -4.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-28)Tj -/TT4 1 Tf --9.8906 -1 TD -(Delete Selection )Tj -/TT6 1 Tf -8.2808 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --17.2832 -1 TD -(Delete Structure )Tj -/TT6 1 Tf -8.2803 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --17.2827 -1 TD -(Delete Word )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --15.3921 -1 TD -(DELFILE )Tj -/TT6 1 Tf -4.7222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38)Tj -/TT4 1 Tf --10.0571 -1 TD -(DESELECT )Tj -/TT6 1 Tf -6.1675 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-12)Tj -/TT4 1 Tf --18.5044 -1 TD -(DF )Tj -/TT6 1 Tf -1.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-18)Tj --7.2236 -1 TD -(DFASL files )Tj -/TT6 1 Tf -6.1128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-1)Tj -/TT4 1 Tf --6.9463 -1 TD -(DFNFLG )Tj -/TT6 1 Tf -4.6104 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-27)Tj -/TT4 1 Tf --9.7788 -1 TD -(DIR )Tj -/TT6 1 Tf -2.2778 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.8911 -1 TD -(DISPLAY )Tj -/TT6 1 Tf -5.1675 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D-6-7,14)Tj --13.4473 -1 TD -(Display icons )Tj -/TT6 1 Tf -6.4468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C-1)Tj --7.2803 -1 TD -(DISPLAY item )Tj -/TT6 1 Tf -6.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-26)Tj -/TT4 1 Tf --7.7803 -1 TD -(DISPLAYFONTDIRECTORIES )Tj -/TT6 1 Tf -14.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-23)Tj -/TT4 1 Tf --19.6138 -1 TD -(DMACRO )Tj -/TT6 1 Tf -5.333 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3-5)Tj --10.6118 -1 TD -(DMACROs )Tj -/TT6 1 Tf -5.5 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-1)Tj -/TT4 1 Tf --6.3335 -1 TD -(DO-EVENTS )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --15.0029 -1 TD -(DOCOLLECT )Tj -/TT6 1 Tf -6.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-1)Tj -/TT4 1 Tf --12.1123 -1 TD -(DOSHAPEFN )Tj -/TT6 1 Tf -6.834 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4-25)Tj -/TT4 1 Tf --15.9473 -1 TD -(DOWNFN )Tj -/TT6 1 Tf -5.3325 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D-10)Tj -/TT4 1 Tf --18.7261 -1 TD -(DP )Tj -/TT6 1 Tf -1.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-18)Tj -/TT4 1 Tf --7.2798 -1 TD -(DRAWARC )Tj -/TT6 1 Tf -5.8325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-19)Tj -/TT4 1 Tf --11.1675 -1 TD -(DRAWLINE )Tj -/TT6 1 Tf -5.9438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-19)Tj -/TT4 1 Tf --11.2788 -1 TD -(DRAWPOLYGON )Tj -/TT6 1 Tf -8.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-20)Tj -/TT4 1 Tf --14.0015 -1 TD -(DSPCLEOL )Tj -/TT6 1 Tf -6.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj --11.3354 -1 TD -(DSPFONT )Tj -/TT6 1 Tf -5.3335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-16)Tj -/TT4 1 Tf --6.167 -1 TD -(DSPRUBOUTCHAR )Tj -/TT6 1 Tf -9.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj --15.1128 -1 TD -(DSPSCALE )Tj -/TT6 1 Tf -5.8911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-19)Tj --6.7246 -1 TD -(dummy definitions )Tj -/TT6 1 Tf -8.6147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-17)Tj -/TT4 1 Tf --9.4482 -1 TD -(DV )Tj -/TT6 1 Tf -1.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-18)Tj -/TT4 1 Tf --7.2798 -1 TD -(DWIMIFYCOMPFLG )Tj -/TT6 1 Tf -9.8877 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-34)Tj -/TT4 1 Tf --15.0562 -2.2 TD -(E)Tj -0 -1 TD -(ecase )Tj -/TT6 1 Tf -3.3364 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj -/TT4 1 Tf --7.6143 -1 TD -(ECHOCHAR )Tj -/TT6 1 Tf -6.6113 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-13)Tj -/TT4 1 Tf --18.9482 -1 TD -(ED )Tj -/TT6 1 Tf -2.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-16)Tj -/TT4 1 Tf --7.5576 -1 TD -(Edit )Tj -/TT6 1 Tf -2.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --11.4468 -1 TD -(EDIT )Tj -/TT6 1 Tf -3.1113 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4-27; D-13)Tj --11.3911 -1 TD -(Edit caret in SEdit )Tj -/TT6 1 Tf -8.7817 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-2)Tj --9.6152 -1 TD -(Edit Interface )Tj -/TT6 1 Tf -6.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-18)Tj -/TT4 1 Tf --7.2812 -1 TD -(EDITBM )Tj -/TT6 1 Tf -4.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj -/TT4 1 Tf --9.7236 -1 TD -(EDITCALLERS )Tj -/TT6 1 Tf -7.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-19)Tj --12.8906 -1 TD -(Editing Exec Input )Tj -/TT6 1 Tf -8.894 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-20)Tj --9.7275 -1 TD -(Editing Lisp Code in Memory )Tj -/TT6 1 Tf -13.3394 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-1)Tj --14.1728 -1 TD -(Editing VALUES )Tj -/TT6 1 Tf -8.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-18)Tj -/TT4 1 Tf --8.9487 -1 TD -(EDITMODE )Tj -/TT6 1 Tf -5.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-16)Tj -/TT4 1 Tf --11.1685 -1 TD -(EDITSTART )Tj -/TT6 1 Tf -6.4443 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4-27; D-14)Tj -/TT4 1 Tf --14.7241 -1 TD -(END-OF-FILE )Tj -/TT6 1 Tf -6.8882 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --13.1108 -1 TD -(ENDCOLLECT )Tj -/TT6 1 Tf -7.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-1)Tj --12.7236 -1 TD -(Ending an SEdit session )Tj -/TT6 1 Tf -11.396 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-2)Tj --12.2295 -1 TD -(ENDOFSTREAMOP )Tj -/TT6 1 Tf -9.6675 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-38)Tj --10.501 -1 TD -(ENVAPPLY )Tj -/TT6 1 Tf -5.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj --6.6694 -1 TD -(ENVEVAL )Tj -/TT6 1 Tf -5.1689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj -/TT4 1 Tf --6.0024 -1 TD -(EQUAL )Tj -/TT6 1 Tf -4.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-26)Tj -/TT4 1 Tf --9.3906 -1 TD -(EQUALALL )Tj -/TT6 1 Tf -5.9995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-3)Tj -/TT4 1 Tf --11.3345 -1 TD -(ERROR )Tj -/TT6 1 Tf -4.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --9.502 -1 TD -(error )Tj -/TT6 1 Tf -3.168 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-9)Tj --8.5029 -1 TD -(Error conditions )Tj -/TT6 1 Tf -7.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj --8.6699 -1 TD -(error system )Tj -/TT6 1 Tf -6.1118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj --6.9453 -1 TD -(Error system )Tj -/TT6 1 Tf -6.2227 0 TD -( )Tj -/TT2 1 Tf --3.7227 -1 TD -(differences between old and new )Tj -/TT6 1 Tf -15.4546 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-1)Tj --18.7881 -1 TD -(Error system proposal )Tj -/TT6 1 Tf -10.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-1)Tj --11.1699 -1 TD -(Error type mapping )Tj -/TT6 1 Tf -9.0596 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-11)Tj --9.8931 -1 TD -(Error type name )Tj -/TT6 1 Tf -7.7251 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-11)Tj --8.5586 -1 TD -(Error type number )Tj -/TT6 1 Tf -8.6143 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-11)Tj -/TT4 1 Tf --9.4478 -1 TD -(ERROR! )Tj -/TT6 1 Tf -4.5 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --9.835 -1 TD -(ERRORMESS )Tj -/TT6 1 Tf -7.001 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf -14.0641 67.2 TD -(ERRORMESS1 )Tj -/TT6 1 Tf -7.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --12.8921 -1 TD -(ERRORN )Tj -/TT6 1 Tf -4.8892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(2-2; 3-10)Tj --10.2241 -1 TD -(Errors )Tj -/TT6 1 Tf -3.2778 0 TD -( )Tj -/TT2 1 Tf --0.7778 -1 TD -(definition of )Tj -/TT6 1 Tf -5.9482 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-3)Tj --9.2817 -1 TD -(ERRORSET )Tj -/TT6 1 Tf -6.1118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --6.9453 -1 TD -(ERRORSTRING )Tj -/TT6 1 Tf -7.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj --13.2798 -1 TD -(ERRORTYPELIST )Tj -/TT6 1 Tf -8.8906 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --9.7241 -1 TD -(ERRORTYPELIST )Tj -/TT6 1 Tf -8.9453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(2-2)Tj -/TT4 1 Tf --14.1138 -1 TD -(ERSETQ )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10; 4-8)Tj --10.0024 -1 TD -(ERXM )Tj -/TT6 1 Tf -3.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --4.2783 -1 TD -(ESCAPE )Tj -/TT6 1 Tf -4.668 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj --14.1157 -1 TD -(Escape )Tj -/TT6 1 Tf -3.8911 0 TD -( )Tj -/TT2 1 Tf --1.3911 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-6)Tj --7.6133 -1 TD -(Establishing handlers within dynamic context )Tj -/TT6 1 Tf -20.3994 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-4)Tj -/TT4 1 Tf --21.2329 -1 TD -(etypecase )Tj -/TT6 1 Tf -5.3926 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-10)Tj -/TT4 1 Tf --9.6704 -1 TD -(Eval )Tj -/TT6 1 Tf -2.6128 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj --11.6152 -1 TD -(EVAL-format input )Tj -/TT6 1 Tf -8.7261 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-2)Tj --9.5596 -1 TD -(Exec Editing Commands )Tj -/TT6 1 Tf -11.5049 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-22)Tj --12.3384 -1 TD -(Exec type )Tj -/TT6 1 Tf -4.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj -/TT4 1 Tf --5.7803 -1 TD -(EXEC-EVAL )Tj -/TT6 1 Tf -6.2788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-9)Tj -/TT4 1 Tf --11.6138 -1 TD -(EXPAND )Tj -/TT6 1 Tf -4.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --13.7256 -1 TD -(EXPANDBITMAP )Tj -/TT6 1 Tf -8.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj -/TT4 1 Tf --13.8911 -1 TD -(EXPANDMACRO )Tj -/TT6 1 Tf -8.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-5)Tj -/TT4 1 Tf --14.1133 -1 TD -(EXPANDREGIONFN )Tj -/TT6 1 Tf -10.001 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4-24)Tj -/TT4 1 Tf --19.1143 -1 TD -(EXPLICIT )Tj -/TT6 1 Tf -5.334 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --18.5054 -1 TD -(export )Tj -/TT6 1 Tf -3.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-9)Tj -/TT4 1 Tf --9.2246 -1 TD -(Extract )Tj -/TT6 1 Tf -3.9463 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.9487 -2.2 TD -(F)Tj -0 -1 TD -(F )Tj -/TT6 1 Tf -1.1665 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --9.1694 -1 TD -(features )Tj -/TT6 1 Tf -4.1689 0 TD -( )Tj -/TT2 1 Tf --1.6689 -1 TD -(new Common Lisp )Tj -/TT6 1 Tf -9.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-1)Tj --12.4482 -1 TD -(FETCH )Tj -/TT6 1 Tf -3.8887 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-33)Tj --4.7222 -1 TD -(File Manager )Tj -/TT6 1 Tf -6.3916 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-19)Tj --7.2251 -1 TD -(file-reading functions )Tj -/TT6 1 Tf -9.7832 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-20)Tj -/TT4 1 Tf --10.6167 -1 TD -(FILEPKGCOM )Tj -/TT6 1 Tf -7.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-9)Tj -/TT4 1 Tf --12.5571 -1 TD -(FILEPKGTYPE )Tj -/TT6 1 Tf -7.501 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-9)Tj -/TT4 1 Tf --12.8359 -1 TD -(FILEPKGTYPES )Tj -/TT6 1 Tf -8.168 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-16)Tj -/TT4 1 Tf --13.3364 -1 TD -(FILEPOS )Tj -/TT6 1 Tf -4.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-16)Tj --10.1689 -1 TD -(FILERDTBL )Tj -/TT6 1 Tf -5.9458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-22)Tj --6.7793 -1 TD -(files containing bitmaps )Tj -/TT6 1 Tf -10.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-31)Tj -/TT4 1 Tf --11.7837 -1 TD -(FILES? )Tj -/TT6 1 Tf -4 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-28)Tj -/TT4 1 Tf --9.335 -1 TD -(FILETYPE )Tj -/TT6 1 Tf -5.334 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3-25)Tj -/TT4 1 Tf --10.6128 -1 TD -(FILLPOLYGON )Tj -/TT6 1 Tf -7.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-19-20)Tj -/TT4 1 Tf --13.0015 -1 TD -(FIND )Tj -/TT6 1 Tf -2.8887 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --11.8911 -1 TD -(Find Gap )Tj -/TT6 1 Tf -4.8887 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --13.8911 -1 TD -(FIND-READTABLE )Tj -/TT6 1 Tf -9.3882 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-45)Tj -/TT4 1 Tf --14.7231 -1 TD -(FINDCALLERS )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-19)Tj -/TT4 1 Tf --12.9458 -1 TD -(FIX )Tj -/TT6 1 Tf -2.1113 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --10.7246 -1 TD -(FIXP )Tj -/TT6 1 Tf -2.7783 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3-4)Tj -/TT4 1 Tf --8.5024 -1 TD -(flet )Tj -/TT6 1 Tf -2.0557 0 TD -(\(Special form\) )Tj -/TT2 1 Tf -7.0571 0 TD -(7-4)Tj --9.1128 -1 TD -(floating point )Tj -/TT6 1 Tf -6.5044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj -/TT4 1 Tf --7.3379 -1 TD -(FLOATP )Tj -/TT6 1 Tf -4.5552 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3-4)Tj -/TT4 1 Tf --10.2793 -1 TD -(FM.BACKGROUND )Tj -/TT6 1 Tf -9.8882 0 TD -(\(FreeMenu Window Property\))Tj -/TT2 1 Tf --2.3882 -1 TD -(D-15)Tj -/TT4 1 Tf --7.5 -1 TD -(FM.CHANGELABEL )Tj -/TT6 1 Tf -10.2217 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-16)Tj -/TT4 1 Tf --20.3921 -1 TD -(FM.CHANGELABEL )Tj -/TT6 1 Tf -9.9438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-27-28)Tj -/TT4 1 Tf --15.2788 -1 TD -(FM.CHANGESTATE )Tj -/TT6 1 Tf -10.1665 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-16)Tj -/TT4 1 Tf --20.3369 -1 TD -(FM.CHANGESTATE )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --15.2236 -1 TD -(FM.DONTRESHAPE )Tj -/TT6 1 Tf -10.2227 0 TD -(\(FreeMenu Window Property\))Tj -/TT2 1 Tf --2.7227 -1 TD -(D-15)Tj -/TT4 1 Tf --7.5 -1 TD -(FM.EDITITEM )Tj -/TT6 1 Tf -7.2217 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --17.3921 -1 TD -(FM.EDITP )Tj -/TT6 1 Tf -5.5 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --15.6704 -1 TD -(FM.ENDEDIT )Tj -/TT6 1 Tf -6.9443 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --17.1147 -1 TD -(FM.FIXSHAPE )Tj -/TT6 1 Tf -7.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --12.6133 -1 TD -(FM.FORMATMENU )Tj -/TT6 1 Tf -9.4985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-26-27)Tj -/TT4 1 Tf --14.8335 -1 TD -(FM.GETITEM )Tj -/TT6 1 Tf -6.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-27)Tj -/TT4 1 Tf --12.0566 -1 TD -(FM.GETITEM )Tj -/TT6 1 Tf -6.9995 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-15)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -16 0 obj -<< -/Length 14362 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 312.91 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj --25.891 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(FM.GETSTATE )Tj -/TT6 1 Tf -7.8887 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-16)Tj -/TT4 1 Tf --18.0591 -1 TD -(FM.GETSTATE )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-27)Tj -/TT4 1 Tf --12.9458 -1 TD -(FM.GROUPPROP )Tj -/TT6 1 Tf -9.0562 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D-7,18)Tj -/TT4 1 Tf --18.1694 -1 TD -(FM.HIGHLIGHTITEM )Tj -/TT6 1 Tf -10.4434 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --20.6138 -1 TD -(FM.HIGHLIGHTITEM )Tj -/TT6 1 Tf -10.1655 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --15.5005 -1 TD -(FM.ITEMFROMID )Tj -/TT6 1 Tf -8.6099 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-27)Tj -/TT4 1 Tf --13.9448 -1 TD -(FM.ITEMPROP )Tj -/TT6 1 Tf -7.7778 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D-18)Tj -/TT4 1 Tf --16.8911 -1 TD -(FM.MAKEMENU )Tj -/TT6 1 Tf -8.166 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-26-27)Tj -/TT4 1 Tf --13.501 -1 TD -(FM.MENUPROP )Tj -/TT6 1 Tf -8.3335 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D-7,19)Tj -/TT4 1 Tf --17.4468 -1 TD -(FM.NWAYPROP )Tj -/TT6 1 Tf -8.4443 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D-19)Tj -/TT4 1 Tf --17.5576 -1 TD -(FM.NWAYPROPS )Tj -/TT6 1 Tf -8.8335 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(4-27)Tj -/TT4 1 Tf --13.1113 -1 TD -(FM.PROMPTWINDOW )Tj -/TT6 1 Tf -11.2207 0 TD -(\(FreeMenu Window)Tj --3.7207 -1 TD -(Property\) )Tj -/TT2 1 Tf -4.9458 0 TD -(D-15)Tj -/TT4 1 Tf --12.4458 -1 TD -(FM.READSTATE )Tj -/TT6 1 Tf -8.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-27)Tj -/TT4 1 Tf --13.7236 -1 TD -(FM.REDISPLAYITEM )Tj -/TT6 1 Tf -10.667 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-18)Tj -/TT4 1 Tf --20.8374 -1 TD -(FM.REDISPLAYMENU )Tj -/TT6 1 Tf -11.2227 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-18)Tj -/TT4 1 Tf --21.3931 -1 TD -(FM.RESETGROUPS )Tj -/TT6 1 Tf -10.2231 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --20.3936 -1 TD -(FM.RESETMENU )Tj -/TT6 1 Tf -8.8335 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --19.0039 -1 TD -(FM.RESETSHAPE )Tj -/TT6 1 Tf -9.3345 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --19.5049 -1 TD -(FM.RESETSHAPE )Tj -/TT6 1 Tf -9.0566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --14.3916 -1 TD -(FM.RESETSTATE )Tj -/TT6 1 Tf -9.167 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --19.3374 -1 TD -(FM.SHADE )Tj -/TT6 1 Tf -6.0557 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-18)Tj -/TT4 1 Tf --16.2261 -1 TD -(FM.SHADE )Tj -/TT6 1 Tf -5.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --11.1128 -1 TD -(FM.SHADEITEM )Tj -/TT6 1 Tf -8.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --13.5015 -1 TD -(FM.SHADEITEMBM )Tj -/TT6 1 Tf -9.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --15.0566 -1 TD -(FM.SKIPNEXT )Tj -/TT6 1 Tf -7.5562 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-17)Tj -/TT4 1 Tf --17.7266 -1 TD -(FM.TOPGROUPID )Tj -/TT6 1 Tf -9.2778 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-18)Tj -/TT4 1 Tf --19.4482 -1 TD -(FM.WHICHITEM )Tj -/TT6 1 Tf -8.332 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-18)Tj -/TT4 1 Tf --18.5024 -1 TD -(FONT )Tj -/TT6 1 Tf -3.5552 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --16.7266 -1 TD -(FONT )Tj -/TT6 1 Tf -3.5552 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj --15.8921 -1 TD -(font descriptor )Tj -/TT6 1 Tf -6.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-22)Tj -/TT4 1 Tf --7.7256 -1 TD -(FONTCHANGEFLG )Tj -/TT6 1 Tf -9.6104 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-23)Tj -/TT4 1 Tf --14.7788 -1 TD -(FONTCREATE )Tj -/TT6 1 Tf -7.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-22)Tj --12.7236 -1 TD -(FONTSAVAILABLE )Tj -/TT6 1 Tf -9.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-21)Tj --10.1699 -1 TD -(FOR )Tj -/TT6 1 Tf -2.6665 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-33)Tj -/TT4 1 Tf --3.5 -1 TD -(FOR )Tj -/TT6 1 Tf -2.6665 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj --11.2798 -1 TD -(FORGET )Tj -/TT6 1 Tf -4.7222 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --5.5557 -1 TD -(FORGET )Tj -/TT6 1 Tf -4.7222 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --13.3354 -1 TD -(FORMAT )Tj -/TT6 1 Tf -5.1104 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-4,7)Tj --18.2817 -1 TD -(Free Menu )Tj -/TT6 1 Tf -5.3911 0 TD -( )Tj -/TT2 1 Tf --2.8911 -1 TD -(How to make a )Tj -/TT6 1 Tf -7.5029 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-1)Tj --10.8364 -1 TD -(Free Menu format )Tj -/TT6 1 Tf -8.5029 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-2)Tj --9.3364 -1 TD -(Free Menu layout )Tj -/TT6 1 Tf -8.6152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-1)Tj -/TT4 1 Tf --9.4487 -1 TD -(FREEMENU )Tj -/TT6 1 Tf -6.4448 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D-15)Tj -/TT4 1 Tf --16.6152 -1 TD -(FREEMENU )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-26-27)Tj -/TT4 1 Tf --11.502 -1 TD -(FROM )Tj -/TT6 1 Tf -3.4995 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj -/TT4 1 Tf --11.5024 -1 TD -(FULLNAME )Tj -/TT6 1 Tf -6.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj --11.3896 -1 TD -(FUNARG )Tj -/TT6 1 Tf -4.7778 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-4)Tj -/TT4 1 Tf --5.6113 -2.2 TD -(G)Tj -/TT2 1 Tf -0 -1 TD -(Gaps )Tj -/TT6 1 Tf -2.9458 0 TD -( )Tj -/TT2 1 Tf --0.4458 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-4)Tj --7.6133 -1 TD -(garbage collector )Tj -/TT6 1 Tf -8.2271 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-11)Tj -/TT4 1 Tf --9.0605 -1 TD -(gensym )Tj -/TT6 1 Tf -4.6128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-2; 7-12)Tj -/TT4 1 Tf --9.9478 -1 TD -(GET-ENVIRONMENT-AND-FILEMAP )Tj -/TT6 1 Tf -17.5547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-)Tj --15.3896 -1 TD -(23)Tj -/TT4 1 Tf --7.5 -1 TD -(Get-Prompt-Window )Tj -/TT6 1 Tf -10.2207 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-15)Tj -/TT4 1 Tf --15.5557 -1 TD -(Get-Selection )Tj -/TT6 1 Tf -7.0015 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-16)Tj -/TT4 1 Tf --12.3364 -1 TD -(Get-Window-Region )Tj -/TT6 1 Tf -10.1094 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-13)Tj -/TT4 1 Tf --15.4443 -1 TD -(GETDEF )Tj -/TT6 1 Tf -4.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-28)Tj -/TT4 1 Tf --9.9463 -1 TD -(GETFILEINFO )Tj -/TT6 1 Tf -7.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38; 4-13)Tj -/TT4 1 Tf --12.5015 -1 TD -(GETPROMPTWINDOW )Tj -/TT6 1 Tf -11.2769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-28)Tj -/TT4 1 Tf --16.6118 -1 TD -(GETREADTABLE )Tj -/TT6 1 Tf -8.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-39)Tj --14.1128 -1 TD -(GETSYNTAX )Tj -/TT6 1 Tf -6.6123 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-45)Tj --7.4458 -1 TD -(global macro shadowing )Tj -/TT6 1 Tf -11.3398 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-4)Tj -/TT4 1 Tf --12.1733 -1 TD -(GROUP )Tj -/TT6 1 Tf -4.5005 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --17.6719 -1 TD -(GROUPID )Tj -/TT6 1 Tf -5.5005 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-10)Tj -/TT4 1 Tf -7.1734 66.2 TD -(H)Tj -0 -1 TD -(handler )Tj -/TT6 1 Tf -4.1675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-4)Tj --9.5024 -1 TD -(Handling conditions )Tj -/TT6 1 Tf -9.5615 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-3)Tj -/TT4 1 Tf --10.395 -1 TD -(HARDCOPYW )Tj -/TT6 1 Tf -7.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-29)Tj -/TT4 1 Tf --12.5571 -1 TD -(HARDRESET )Tj -/TT6 1 Tf -6.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-4)Tj -/TT4 1 Tf --12.1133 -1 TD -(HASDEF )Tj -/TT6 1 Tf -4.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-26,28; 4-9)Tj --10.002 -1 TD -(hash arrays )Tj -/TT6 1 Tf -5.7803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj --6.6138 -1 TD -(HASHARRAY )Tj -/TT6 1 Tf -6.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj -/TT4 1 Tf --7.6128 -1 TD -(HASHARRAY )Tj -/TT6 1 Tf -6.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-2)Tj -/TT4 1 Tf --12.2798 -1 TD -(HELDFN )Tj -/TT6 1 Tf -4.8887 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D-10)Tj -/TT4 1 Tf --18.2822 -1 TD -(HELP )Tj -/TT6 1 Tf -3.2227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.2251 -1 TD -(HELP )Tj -/TT6 1 Tf -3.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj --8.5576 -1 TD -(Help Menu Commands )Tj -/TT6 1 Tf -10.7822 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-11)Tj -/TT4 1 Tf --11.6157 -1 TD -(HIGHLIGHT )Tj -/TT6 1 Tf -6.333 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9,14)Tj --18.6699 -1 TD -(History list )Tj -/TT6 1 Tf -5.167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-16)Tj -/TT4 1 Tf --6.0005 -1 TD -(HISTORYSAVEFORMS )Tj -/TT6 1 Tf -11.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --16.5029 -1 TD -(HJUSTIFY )Tj -/TT6 1 Tf -5.6675 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-4,9)Tj --18.0044 -1 TD -(HORRIBLEVARS )Tj -/TT6 1 Tf -8.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-9,15)Tj -/TT4 1 Tf --9.2246 -1 TD -(HPRINT )Tj -/TT6 1 Tf -4.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-15)Tj -/TT4 1 Tf --9.6128 -2.2 TD -(I)Tj -0 -1 TD -(ICONW )Tj -/TT6 1 Tf -4.2773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C-1)Tj --9.6123 -1 TD -(ICONW windows )Tj -/TT6 1 Tf -8.1123 0 TD -( )Tj -/TT2 1 Tf --5.6123 -1 TD -(from an image defined by a mask )Tj -/TT6 1 Tf -15.3408 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C-1)Tj --16.1743 -1 TD -(with titles )Tj -/TT6 1 Tf -4.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C-1)Tj -/TT4 1 Tf --8.0015 -1 TD -(ICONW.SHADE )Tj -/TT6 1 Tf -7.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C-2)Tj -/TT4 1 Tf --13.1128 -1 TD -(ICONW.TITLE )Tj -/TT6 1 Tf -7.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C-2)Tj -/TT4 1 Tf --12.3896 -1 TD -(ID )Tj -/TT6 1 Tf -1.8335 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --15.0049 -1 TD -(ID )Tj -/TT6 1 Tf -1.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj --14.1704 -1 TD -(IDLE-PROFILE )Tj -/TT6 1 Tf -7.3906 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --8.2241 -1 TD -(IDLE-RESETVARS )Tj -/TT6 1 Tf -9.2788 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-6)Tj -/TT4 1 Tf --14.4473 -1 TD -(IDLE-SUSPEND-PROCESS.NAMES )Tj -/TT6 1 Tf -17.1133 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-7)Tj --22.2817 -1 TD -(IEEE 802-3 specification )Tj -/TT6 1 Tf -11.4507 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-34)Tj --12.2842 -1 TD -(IF )Tj -/TT6 1 Tf -1.4443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-33)Tj --2.2778 -1 TD -(IL Exec )Tj -/TT6 1 Tf -4.1685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-7)Tj -/TT4 1 Tf --5.002 -1 TD -(IL:IT )Tj -/TT6 1 Tf -2.666 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-9)Tj -/TT4 1 Tf --7.8345 -1 TD -(IL:LOAD )Tj -/TT6 1 Tf -4.6104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-24)Tj -/TT4 1 Tf --9.9453 -1 TD -(IL:MAPHASH )Tj -/TT6 1 Tf -6.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-4)Tj -/TT4 1 Tf --12.168 -1 TD -(IL:PRIN1 )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj -/TT4 1 Tf --10.0576 -1 TD -(IL:PRIN2 )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj -/TT4 1 Tf --10.0576 -1 TD -(IL:READ )Tj -/TT6 1 Tf -4.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-40)Tj -/TT4 1 Tf --9.9458 -1 TD -(ILLEGAL-GO )Tj -/TT6 1 Tf -6.7217 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --12.9443 -1 TD -(ILLEGAL-RETURN )Tj -/TT6 1 Tf -9.3325 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --15.5552 -1 TD -(ILLEGAL-STACK-ARG )Tj -/TT6 1 Tf -11.1655 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --17.3882 -1 TD -(IN )Tj -/TT6 1 Tf -1.5557 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --10.1689 -1 TD -(in-package )Tj -/TT6 1 Tf -6.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-8)Tj -/TT4 1 Tf --11.3926 -1 TD -(INFILEP )Tj -/TT6 1 Tf -4.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj -/TT4 1 Tf --9.7241 -1 TD -(INFINITEWIDTH )Tj -/TT6 1 Tf -8.2769 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-13)Tj -/TT4 1 Tf --20.6138 -1 TD -(INITSTATE )Tj -/TT6 1 Tf -5.7222 0 TD -(\(FreeMenu Item Prop\) )Tj -/TT2 1 Tf -10.6699 0 TD -(4-26)Tj -/TT4 1 Tf --16.3921 -1 TD -(INITSTATE )Tj -/TT6 1 Tf -6 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9,12)Tj -/TT4 1 Tf --18.3369 -1 TD -(INPUT )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj -/TT4 1 Tf --8.8906 -1 TD -(INPUTFONT )Tj -/TT6 1 Tf -6.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --11.4458 -1 TD -(Inspect )Tj -/TT6 1 Tf -4.0566 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --13.0591 -1 TD -(INTEGERLENGTH )Tj -/TT6 1 Tf -9.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-3)Tj --14.4463 -1 TD -(integers )Tj -/TT6 1 Tf -4.1133 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj --4.9468 -1 TD -(Interlisp Compiler )Tj -/TT6 1 Tf -8.3359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-31)Tj -/TT4 1 Tf --9.1694 -1 TD -(INTERLISP-ERROR )Tj -/TT6 1 Tf -9.7227 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --15.9453 -1 TD -(INTERPRESSFONTDIRECTORIES )Tj -/TT6 1 Tf -16.5015 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-22)Tj -/TT4 1 Tf --21.6699 -1 TD -(INTERRUPTCHAR )Tj -/TT6 1 Tf -9.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-29)Tj -/TT4 1 Tf --14.5015 -1 TD -(INVALID-ARGUMENT-LIST )Tj -/TT6 1 Tf -13.1655 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --19.3882 -1 TD -(ITEMS )Tj -/TT6 1 Tf -3.8892 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --17.0605 -2.2 TD -(J)Tj -0 -1 TD -(Join )Tj -/TT6 1 Tf -2.6113 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --11.6138 -2.2 TD -(K)Tj -0 -1 TD -(Keep-Window-Region )Tj -/TT6 1 Tf -10.8877 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-13)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -19 0 obj -<< -/Length 14391 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 518.5499 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj -47.344 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(KEYACTION )Tj -/TT6 1 Tf -6.4448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-31)Tj -/TT4 1 Tf --11.7798 -1 TD -(KEYDOWNP )Tj -/TT6 1 Tf -6.4448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-31)Tj -/TT4 1 Tf --11.7798 -2.2 TD -(L)Tj -0 -1 TD -(LABEL )Tj -/TT6 1 Tf -4.1665 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj --16.5034 -1 TD -(LABELS construct )Tj -/TT6 1 Tf -8.6709 0 TD -( )Tj -/TT2 1 Tf --6.1709 -1 TD -(warning )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-10)Tj -/TT4 1 Tf --7.6689 -1 TD -(LASTC )Tj -/TT6 1 Tf -3.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-15)Tj --9.2236 -1 TD -(Layout )Tj -/TT6 1 Tf -3.5581 0 TD -( )Tj -/TT2 1 Tf --1.0581 -1 TD -(of Free Menu )Tj -/TT6 1 Tf -6.7808 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-1)Tj --10.1143 -1 TD -(LCOM files )Tj -/TT6 1 Tf -5.7788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-1)Tj --6.6123 -1 TD -(ldflg )Tj -/TT6 1 Tf -2.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-11)Tj -/TT4 1 Tf --3.5015 -1 TD -(LEFT )Tj -/TT6 1 Tf -3.333 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --16.5044 -1 TD -(LEFT and BOTTOM )Tj -/TT6 1 Tf -9.7212 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj --22.0581 -1 TD -(Left mouse button )Tj -/TT6 1 Tf -8.561 0 TD -( )Tj -/TT2 1 Tf --6.061 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-3)Tj --7.6133 -1 TD -(lexical bindings )Tj -/TT6 1 Tf -7.3374 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-33)Tj --8.1709 -1 TD -(Library modules )Tj -/TT6 1 Tf -7.9478 0 TD -( )Tj -/TT2 1 Tf --5.4478 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(5-1)Tj -/TT4 1 Tf --13.4487 -1 TD -(LIMITCHARS )Tj -/TT6 1 Tf -6.9995 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-3,13)Tj -/TT4 1 Tf --19.3364 -1 TD -(LINKS )Tj -/TT6 1 Tf -3.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-10,15)Tj --16.1704 -1 TD -(LISP )Tj -/TT6 1 Tf -2.7236 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-47)Tj --3.5571 -1 TD -(Lisp structures )Tj -/TT6 1 Tf -7.0581 0 TD -( )Tj -/TT2 1 Tf --4.5581 -1 TD -(SEdit gaps for )Tj -/TT6 1 Tf -7.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-4)Tj -/TT4 1 Tf --10.4482 -1 TD -(LISPSOURCEFILEP )Tj -/TT6 1 Tf -9.8901 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-10)Tj -/TT4 1 Tf --15.2251 -1 TD -(LISPXEVAL )Tj -/TT6 1 Tf -6.1123 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-9)Tj -/TT4 1 Tf --11.4473 -1 TD -(LISPXFNS )Tj -/TT6 1 Tf -5.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-15)Tj -/TT4 1 Tf --10.6138 -1 TD -(LISPXHISTORY )Tj -/TT6 1 Tf -7.8901 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-16)Tj -/TT4 1 Tf --13.0586 -1 TD -(LISPXHISTORYMACROS )Tj -/TT6 1 Tf -12.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj --17.5029 -1 TD -(LISPXMACROS )Tj -/TT6 1 Tf -7.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-8)Tj -/TT4 1 Tf --8.6133 -1 TD -(LISPXMACROS )Tj -/TT6 1 Tf -7.8896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --13.0581 -1 TD -(LISPXREADFN )Tj -/TT6 1 Tf -7.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-8)Tj -/TT4 1 Tf --12.9468 -1 TD -(LISPXUNREAD )Tj -/TT6 1 Tf -7.7231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-9)Tj -/TT4 1 Tf --13.0581 -1 TD -(LISPXUSERFN )Tj -/TT6 1 Tf -7.5566 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --12.7251 -1 TD -(LIST )Tj -/TT6 1 Tf -2.7222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-49)Tj --8.0571 -1 TD -(Lists )Tj -/TT6 1 Tf -2.6118 0 TD -( )Tj -/TT2 1 Tf --0.1118 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-5)Tj -/TT4 1 Tf --7.8911 -1 TD -(LOAD )Tj -/TT6 1 Tf -3.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj -/TT4 1 Tf --6.2236 -1 TD -(loadflg )Tj -/TT6 1 Tf -4.1108 0 TD -(\(Argument\) )Tj -/TT2 1 Tf -5.835 0 TD -(7-11)Tj --12.4458 -1 TD -(load-time expression )Tj -/TT6 1 Tf -10.3379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-4)Tj -/TT4 1 Tf --11.1714 -1 TD -(LOADCOMP )Tj -/TT6 1 Tf -6.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-25)Tj -/TT4 1 Tf --11.7236 -1 TD -(LOADFNS )Tj -/TT6 1 Tf -5.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20,25)Tj -/TT4 1 Tf --10.7236 -1 TD -(LOADFROM )Tj -/TT6 1 Tf -6.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-25)Tj --11.6675 -1 TD -(loading compiled files )Tj -/TT6 1 Tf -10.1167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-32)Tj --10.9502 -1 TD -(loading Medley files into Lyric )Tj -/TT6 1 Tf -13.8955 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-10)Tj -/TT4 1 Tf --14.729 -1 TD -(LOADVARS )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-25)Tj --11.502 -1 TD -(Locally defined handler )Tj -/TT6 1 Tf -11.1187 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-4)Tj --11.9521 -1 TD -(LOCALVARS )Tj -/TT6 1 Tf -6.5581 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-2)Tj --7.3916 -1 TD -(LOGIN.TIMEOUT )Tj -/TT6 1 Tf -8.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --9.2783 -1 TD -(LOGOUT )Tj -/TT6 1 Tf -4.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-7)Tj -/TT4 1 Tf --10.168 -1 TD -(long-site-name )Tj -/TT6 1 Tf -7.6675 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(7-3)Tj -/TT4 1 Tf --12.8359 -2.2 TD -(M)Tj -0 -1 TD -(MACHINETYPE )Tj -/TT6 1 Tf -7.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-7)Tj -/TT4 1 Tf --13.1689 -1 TD -(MAKE-READER-ENVIRONMENT )Tj -/TT6 1 Tf -15.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-23)Tj -/TT4 1 Tf --21.1128 -1 TD -(MAKEFILE )Tj -/TT6 1 Tf -5.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20,25,43,49)Tj -/TT4 1 Tf --11.0015 -1 TD -(MAKEFILE-ENVIRONMENT )Tj -/TT6 1 Tf -13.3887 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3-21)Tj -/TT4 1 Tf --18.6675 -1 TD -(MAKESYS )Tj -/TT6 1 Tf -5.501 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-7)Tj --10.8359 -1 TD -(MAKETITLEBARICON )Tj -/TT6 1 Tf -10.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-25)Tj -/TT4 1 Tf --11.502 -1 TD -(map )Tj -/TT6 1 Tf -2.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-11)Tj -/TT4 1 Tf --8.2246 -1 TD -(MAPATOMS )Tj -/TT6 1 Tf -6.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-2-3)Tj -/TT4 1 Tf --12.0015 -1 TD -(MAX )Tj -/TT6 1 Tf -2.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-2)Tj -/TT4 1 Tf --8.1128 -1 TD -(MAX.INTEGER )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-2)Tj -/TT4 1 Tf --12.6689 -1 TD -(MAXHEIGHT )Tj -/TT6 1 Tf -6.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj -/TT4 1 Tf --19.1704 -1 TD -(MAXREGION )Tj -/TT6 1 Tf -7.0005 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-11)Tj -/TT4 1 Tf --20.7266 -1 TD -(MAXWIDTH )Tj -/TT6 1 Tf -6.3325 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-7,9,13)Tj --18.6694 -1 TD -(Medley )Tj -/TT6 1 Tf -3.7793 0 TD -( )Tj -/TT2 1 Tf -25.1207 66.4 TD -(on Sun workstations )Tj -/TT6 1 Tf -9.8384 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1-1)Tj --10.6719 -1 TD -(on Xerox workstations )Tj -/TT6 1 Tf -10.6714 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1-1)Tj --14.0049 -1 TD -(Medley compiled files )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-1)Tj --10.9487 -1 TD -(Medley enhancements )Tj -/TT6 1 Tf -10.895 0 TD -( )Tj -/TT2 1 Tf --8.395 -1 TD -(summary )Tj -/TT6 1 Tf -5.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1-1)Tj -/TT4 1 Tf --8.5562 -1 TD -(MENU )Tj -/TT6 1 Tf -3.7778 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --16.9492 -1 TD -(MENUFONT )Tj -/TT6 1 Tf -6.4995 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-12)Tj -/TT4 1 Tf --18.8364 -1 TD -(MENUITEMS )Tj -/TT6 1 Tf -6.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-6,12)Tj -/TT4 1 Tf --19.1704 -1 TD -(MENUTITLE )Tj -/TT6 1 Tf -6.5552 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-12)Tj -/TT4 1 Tf --18.8921 -1 TD -(MESSAGE )Tj -/TT6 1 Tf -5.8345 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj -/TT4 1 Tf --18.1714 -1 TD -(Meta- \( )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta- \) )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta- / )Tj -/TT6 1 Tf -3.7227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.7251 -1 TD -(Meta-9 )Tj -/TT6 1 Tf -3.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.7256 -1 TD -(Meta-; )Tj -/TT6 1 Tf -3.5 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.5024 -1 TD -(Meta-A )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-B )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-Control-C )Tj -/TT6 1 Tf -7.7769 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --16.7793 -1 TD -(Meta-Control-S )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --16.7241 -1 TD -(Meta-Control-X )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --16.7241 -1 TD -(Meta-E )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-F )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta-H )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-I )Tj -/TT6 1 Tf -3.4448 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.4473 -1 TD -(Meta-J )Tj -/TT6 1 Tf -3.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.7256 -1 TD -(Meta-M )Tj -/TT6 1 Tf -4 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj -/TT4 1 Tf --13.0024 -1 TD -(Meta-N )Tj -/TT6 1 Tf -4.167 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --13.1694 -1 TD -(Meta-O )Tj -/TT6 1 Tf -3.9448 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.9473 -1 TD -(Meta-P )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-R )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-Return )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --15.3916 -1 TD -(Meta-S )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-Space )Tj -/TT6 1 Tf -6.1133 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --15.1157 -1 TD -(Meta-U )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-X )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-9)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-Z )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj --12.7803 -1 TD -(Middle mouse button )Tj -/TT6 1 Tf -9.8389 0 TD -( )Tj -/TT2 1 Tf --7.3389 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-3)Tj -/TT4 1 Tf --7.6133 -1 TD -(MIN )Tj -/TT6 1 Tf -2.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-2)Tj -/TT4 1 Tf --7.7236 -1 TD -(MIN.INTEGER )Tj -/TT6 1 Tf -7.1113 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-2)Tj --12.2798 -1 TD -(minimum window size )Tj -/TT6 1 Tf -10.2803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-24)Tj -/TT4 1 Tf --11.1138 -1 TD -(MKSTRING )Tj -/TT6 1 Tf -5.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-42)Tj -/TT4 1 Tf --11.2236 -1 TD -(MOMENTARY )Tj -/TT6 1 Tf -7.3887 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D-11)Tj -/TT4 1 Tf --15.6685 -1 TD -(MOTHER )Tj -/TT6 1 Tf -5.1665 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj --18.3379 -1 TD -(Mouse buttons )Tj -/TT6 1 Tf -7.3931 0 TD -( )Tj -/TT2 1 Tf --4.8931 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-3)Tj -/TT4 1 Tf --7.6133 -1 TD -(MOVD )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-4)Tj -/TT4 1 Tf --8.8906 -1 TD -(MOVEDFN )Tj -/TT6 1 Tf -5.8335 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D-10)Tj --19.2271 -1 TD -(multiple escape character )Tj -/TT6 1 Tf -11.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-42)Tj --12.7837 -1 TD -(Multiple Execs )Tj -/TT6 1 Tf -7.0024 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj --7.8359 -1 TD -(multiple streams )Tj -/TT6 1 Tf -7.8354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-37)Tj --8.6689 -1 TD -(MULTIPLE-ESCAPE )Tj -/TT6 1 Tf -9.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-45)Tj -/TT4 1 Tf --10.6694 -1 TD -(Mutate )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -/TT4 1 Tf --12.7803 -2.2 TD -(N)Tj -0 -1 TD -(NAME )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --12.1133 -1 TD -(NCHARS )Tj -/TT6 1 Tf -4.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-42)Tj --10.1685 -1 TD -(NCHOOSE item )Tj -/TT6 1 Tf -7.7788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-26)Tj -/TT4 1 Tf --8.6123 -1 TD -(NDIR )Tj -/TT6 1 Tf -3 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj --11.6133 -1 TD -(Nesting Free Menu Groups )Tj -/TT6 1 Tf -12.8945 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-2)Tj -/TT4 1 Tf --13.728 -1 TD -(NETWORKOSTYPES )Tj -/TT6 1 Tf -10.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-15)Tj -/TT4 1 Tf --15.6138 -1 TD -(NEW )Tj -/TT6 1 Tf -2.8887 0 TD -(\(MAKEFILE Option\) )Tj -/TT2 1 Tf -9.6694 0 TD -(3-21)Tj --12.5581 -1 TD -(NLAMBDA )Tj -/TT6 1 Tf -5.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-5)Tj -/TT4 1 Tf --6.2236 -1 TD -(NLSETQ )Tj -/TT6 1 Tf -4.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10; 4-8)Tj --9.9463 -1 TD -(NOBIND )Tj -/TT6 1 Tf -4.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-2)Tj -/TT4 1 Tf --5.2783 -1 TD -(NOCLEARSTKLST )Tj -/TT6 1 Tf -9.3887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-5)Tj -/TT4 1 Tf --14.5571 -1 TD -(NODIRCORE )Tj -/TT6 1 Tf -6.667 0 TD -(\(File Device\) )Tj -/TT2 1 Tf -6.4453 0 TD -(4-13)Tj -/TT4 1 Tf --13.1123 -1 TD -(Normalize Selection )Tj -/TT6 1 Tf -10.0586 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -22 0 obj -<< -/Length 13592 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 312.91 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj --25.891 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 54 730.2 Tm -(notational conventions )Tj -/TT6 1 Tf -10.5073 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(18)Tj --11.3408 -1 TD -(NSADDRESS )Tj -/TT6 1 Tf -6.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-32)Tj --7.6128 -1 TD -(NSNAME )Tj -/TT6 1 Tf -4.834 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-32)Tj -/TT4 1 Tf --5.6675 -1 TD -(NSNET.DISTANCE )Tj -/TT6 1 Tf -9.334 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-35)Tj -/TT4 1 Tf --14.6689 -1 TD -(NUMBER )Tj -/TT6 1 Tf -5.2222 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D-14)Tj -/TT4 1 Tf --13.502 -1 TD -(NUMBERP )Tj -/TT6 1 Tf -5.6113 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3-4)Tj -/TT4 1 Tf --11.3354 -1 TD -(NUMBERTYPE )Tj -/TT6 1 Tf -7.5562 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-14)Tj -/TT4 1 Tf --19.8931 -1 TD -(NWAY )Tj -/TT6 1 Tf -3.8887 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4-26; D-6; 12)Tj -/TT4 1 Tf --12.1685 -1 TD -(NWAYPROPS )Tj -/TT6 1 Tf -7.1118 0 TD -(\(FreeMenu Item Prop\) )Tj -/TT2 1 Tf -10.6699 0 TD -(4-27)Tj -/TT4 1 Tf --17.7817 -1 TD -(NWAYPROPS )Tj -/TT6 1 Tf -7.3896 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-6,12)Tj -/TT4 1 Tf --19.7266 -2.2 TD -(O)Tj -/TT2 1 Tf -0 -1 TD -(OLD-INTERLISP-FILE )Tj -/TT6 1 Tf -10.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-47)Tj --11.3911 -1 TD -(OLD-INTERLISP-T )Tj -/TT6 1 Tf -9.0566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-48)Tj -/TT4 1 Tf --9.8901 -1 TD -(once-only )Tj -/TT6 1 Tf -5.2783 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-7)Tj -/TT4 1 Tf --9.5562 -1 TD -(OPENFILE )Tj -/TT6 1 Tf -5.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj -/TT4 1 Tf --10.8911 -1 TD -(OPENFN )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4-25)Tj -/TT4 1 Tf --13.8359 -1 TD -(OPENP )Tj -/TT6 1 Tf -4.0566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38)Tj -/TT4 1 Tf --9.3916 -1 TD -(OPENSTREAM )Tj -/TT6 1 Tf -7.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-11,37)Tj -/TT4 1 Tf --12.9468 -1 TD -(OPENSTRINGSTREAM )Tj -/TT6 1 Tf -11.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37; 4-16)Tj --16.7246 -1 TD -(options )Tj -/TT6 1 Tf -3.7803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-5)Tj --4.6138 -1 TD -(ORIG )Tj -/TT6 1 Tf -3.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-46)Tj -/TT4 1 Tf --3.9448 -1 TD -(OUTPUT )Tj -/TT6 1 Tf -4.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj -/TT4 1 Tf --10.0015 -2.2 TD -(P)Tj -/TT2 1 Tf -0 -1 TD -(package delimiter )Tj -/TT6 1 Tf -8.3931 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-2)Tj --9.2266 -1 TD -(PACKAGEDELIM )Tj -/TT6 1 Tf -8.4468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-47)Tj --9.2803 -1 TD -(packages )Tj -/TT6 1 Tf -4.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-19)Tj -/TT4 1 Tf --5.6699 -1 TD -(PARSE-NSADDRESS )Tj -/TT6 1 Tf -10.6128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-33)Tj -/TT4 1 Tf --15.9478 -1 TD -(PAT )Tj -/TT6 1 Tf -2.5557 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --10.5586 -1 TD -(pattern matching )Tj -/TT6 1 Tf -8.0044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj -/TT4 1 Tf --8.8379 -1 TD -(PEEKC )Tj -/TT6 1 Tf -4.001 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-15)Tj -/TT4 1 Tf --9.3359 -1 TD -(pkg-goto )Tj -/TT6 1 Tf -4.832 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-8)Tj -/TT4 1 Tf --10.167 -1 TD -(PL )Tj -/TT6 1 Tf -1.8335 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj --10.4468 -1 TD -(PLVLFILEFLG )Tj -/TT6 1 Tf -7.0586 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-42)Tj -/TT4 1 Tf --7.8921 -1 TD -(PP )Tj -/TT6 1 Tf -1.8896 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --10.5029 -1 TD -(PRETTYDEF )Tj -/TT6 1 Tf -6.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-9)Tj --11.8354 -1 TD -(PRIN1 )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj --4.3345 -1 TD -(PRIN2 )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-30)Tj -/TT4 1 Tf --4.3345 -1 TD -(PRINT )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20,48)Tj --8.8906 -1 TD -(PRINTLEVEL )Tj -/TT6 1 Tf -6.6689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-29)Tj -/TT4 1 Tf --7.5024 -1 TD -(PRINTNUM )Tj -/TT6 1 Tf -5.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-15)Tj --11.168 -1 TD -(PRINTOUT )Tj -/TT6 1 Tf -5.6665 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-43)Tj -/TT4 1 Tf --6.5 -1 TD -(PRINTOUTFONT )Tj -/TT6 1 Tf -8.3882 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-11)Tj -/TT4 1 Tf --13.5566 -1 TD -(PRINTSERVICE )Tj -/TT6 1 Tf -7.9458 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-19)Tj --13.1143 -1 TD -(process status window )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-12)Tj -/TT4 1 Tf --11.4492 -1 TD -(PROCESS.APPLY )Tj -/TT6 1 Tf -9.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-12)Tj -/TT4 1 Tf --14.3926 -1 TD -(PROCESS.EVAL )Tj -/TT6 1 Tf -8.3906 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-12)Tj --13.7256 -1 TD -(Programmers interface )Tj -/TT6 1 Tf -11.5034 0 TD -( )Tj -/TT2 1 Tf --9.0034 -1 TD -(to SEdit )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-12)Tj -/TT4 1 Tf --7.6689 -1 TD -(PROMPT#FLG )Tj -/TT6 1 Tf -7.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --12.5576 -1 TD -(PROMPTFONT )Tj -/TT6 1 Tf -7.5552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --12.7236 -1 TD -(PROMTPCHARFORMS )Tj -/TT6 1 Tf -11.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj --16.5015 -1 TD -(PROTECTION )Tj -/TT6 1 Tf -7.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-13)Tj --7.9448 -1 TD -(PRXFLG )Tj -/TT6 1 Tf -4.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-42)Tj -/TT4 1 Tf --5.3901 -1 TD -(PUTDEF )Tj -/TT6 1 Tf -4.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-28)Tj -/TT4 1 Tf --9.8906 -2.2 TD -(Q)Tj -0 -1 TD -(Quote )Tj -/TT6 1 Tf -3.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-10)Tj --12.4468 -1 TD -(Quoted structures )Tj -/TT6 1 Tf -8.5039 0 TD -( )Tj -/TT2 1 Tf --6.0039 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-5)Tj -/TT4 1 Tf --7.8911 -2.2 TD -(R)Tj -0 -1 TD -(RADIX )Tj -/TT6 1 Tf -3.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-44)Tj --9.002 -1 TD -(ratios )Tj -/TT6 1 Tf -3.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-4)Tj -/TT4 1 Tf --3.8345 -1 TD -(READ )Tj -/TT6 1 Tf -3.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20,48)Tj --8.7241 -1 TD -(read-eval-print )Tj -/TT6 1 Tf -7.2808 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-1)Tj -18.2857 66.8 TD -(read/print consistency )Tj -/TT6 1 Tf -10.2827 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-44)Tj -/TT4 1 Tf --11.1162 -1 TD -(READBUF )Tj -/TT6 1 Tf -5.4443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --10.6128 -1 TD -(READC )Tj -/TT6 1 Tf -4.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj --9.4463 -1 TD -(READER )Tj -/TT6 1 Tf -4.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-13)Tj --5.5566 -1 TD -(READER-ENVIRONMENT )Tj -/TT6 1 Tf -12.4453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-20)Tj -/TT4 1 Tf --13.2788 -1 TD -(READLINE )Tj -/TT6 1 Tf -5.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-8)Tj --11.002 -1 TD -(READMACROS )Tj -/TT6 1 Tf -7.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-16)Tj -/TT4 1 Tf --8.5566 -1 TD -(READSYS )Tj -/TT6 1 Tf -5.3901 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-35)Tj -/TT4 1 Tf --10.7251 -1 TD -(READTABLEPROP )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-45)Tj -/TT4 1 Tf --14.8911 -1 TD -(READVISE )Tj -/TT6 1 Tf -5.668 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-14)Tj -/TT4 1 Tf --11.0029 -1 TD -(REALFRAMEP )Tj -/TT6 1 Tf -7.5 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj -/TT4 1 Tf --12.835 -1 TD -(REBREAK )Tj -/TT6 1 Tf -5.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-14)Tj -/TT4 1 Tf --10.8354 -1 TD -(RECOMPILE )Tj -/TT6 1 Tf -6.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-22,25)Tj -/TT4 1 Tf --11.8354 -1 TD -(record-create )Tj -/TT6 1 Tf -6.9478 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-4)Tj -/TT4 1 Tf --11.2256 -1 TD -(record-fetch )Tj -/TT6 1 Tf -6.3901 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-4)Tj -/TT4 1 Tf --10.668 -1 TD -(record-ffetch )Tj -/TT6 1 Tf -6.7231 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-4)Tj -/TT4 1 Tf --11.001 -1 TD -(Redisplay )Tj -/TT6 1 Tf -5.2798 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --14.2822 -1 TD -(Redo )Tj -/TT6 1 Tf -3.0557 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --12.0581 -1 TD -(REDO )Tj -/TT6 1 Tf -3.4448 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --12.0581 -1 TD -(REGION )Tj -/TT6 1 Tf -4.7783 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-8)Tj -/TT4 1 Tf --17.9497 -1 TD -(REGION )Tj -/TT6 1 Tf -4.7783 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-11)Tj -/TT4 1 Tf --18.5044 -1 TD -(RELDRAWTO )Tj -/TT6 1 Tf -7.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-19)Tj --12.3896 -1 TD -(Release Notes )Tj -/TT6 1 Tf -7.3926 0 TD -( )Tj -/TT2 1 Tf --4.8926 -1 TD -(organization of )Tj -/TT6 1 Tf -7.6714 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(17)Tj -/TT4 1 Tf --11.0049 -1 TD -(REMEMBER )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --15.0024 -1 TD -(REMPROP )Tj -/TT6 1 Tf -5.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-2)Tj -/TT4 1 Tf --11.2246 -1 TD -(RENAMEFILE )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38)Tj --12.3906 -1 TD -(REPAINTFN )Tj -/TT6 1 Tf -6.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-24)Tj -/TT4 1 Tf --7.0562 -1 TD -(REPAINTFN )Tj -/TT6 1 Tf -6.2778 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4-25)Tj --15.3911 -1 TD -(REPEATUNTIL )Tj -/TT6 1 Tf -7.4458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-3)Tj -/TT4 1 Tf --8.2793 -1 TD -(Replace-Selection )Tj -/TT6 1 Tf -9.1699 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-16)Tj --14.5049 -1 TD -(Reporting a condition or restart )Tj -/TT6 1 Tf -14.2852 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-5)Tj -/TT4 1 Tf --15.1187 -1 TD -(Reset )Tj -/TT6 1 Tf -3.2793 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10; B-14)Tj -/TT4 1 Tf --8.6143 -1 TD -(Reset-Commands )Tj -/TT6 1 Tf -9.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-15)Tj --14.3926 -1 TD -(RESETFORM )Tj -/TT6 1 Tf -6.8335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-40)Tj --7.667 -1 TD -(RESETFORM )Tj -/TT6 1 Tf -7.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj -/TT4 1 Tf --7.9448 -1 TD -(RESETFORMS )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj --12.6689 -1 TD -(RESETLST )Tj -/TT6 1 Tf -5.7236 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj --6.5571 -1 TD -(Resetting system state )Tj -/TT6 1 Tf -10.9487 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-11)Tj --11.7822 -1 TD -(RESETVARS )Tj -/TT6 1 Tf -6.6128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj --7.4463 -1 TD -(RESHAPEFN )Tj -/TT6 1 Tf -6.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-24)Tj --7.5015 -1 TD -(Restart type )Tj -/TT6 1 Tf -5.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-5)Tj --6.7803 -1 TD -(Restarting computations )Tj -/TT6 1 Tf -11.3389 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-3)Tj --12.1724 -1 TD -(Restarting conditions )Tj -/TT6 1 Tf -9.894 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-5)Tj --10.7275 -1 TD -(RETAPPLY )Tj -/TT6 1 Tf -5.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj --6.6133 -1 TD -(RETEVAL )Tj -/TT6 1 Tf -5.1128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj --5.9463 -1 TD -(RETFROM )Tj -/TT6 1 Tf -5.4995 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj -/TT4 1 Tf --6.333 -1 TD -(RETFROM )Tj -/TT6 1 Tf -5.4995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-11)Tj -/TT4 1 Tf --10.8345 -1 TD -(RETRY )Tj -/TT6 1 Tf -3.9448 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj --12.5581 -1 TD -(RETTO )Tj -/TT6 1 Tf -3.9443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-6)Tj --4.7778 -1 TD -(RETURN )Tj -/TT6 1 Tf -4.7222 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-13; 4-5)Tj -/TT4 1 Tf --5.5557 -1 TD -(Reverse Find )Tj -/TT6 1 Tf -6.8359 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj --15.8384 -1 TD -(Right mouse button )Tj -/TT6 1 Tf -9.2275 0 TD -( )Tj -/TT2 1 Tf --6.7275 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-3)Tj -/TT4 1 Tf --7.6133 -1 TD -(ROTATE-BITMAP )Tj -/TT6 1 Tf -8.8325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj -/TT4 1 Tf --14.1675 -1 TD -(ROW )Tj -/TT6 1 Tf -3.2773 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --16.4487 -1 TD -(row-major-aref )Tj -/TT6 1 Tf -7.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-4)Tj -/TT4 1 Tf --12.8921 -1 TD -(ROWSPACE )Tj -/TT6 1 Tf -6.7227 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj --19.894 -1 TD -(RS232 or TTY ports )Tj -/TT6 1 Tf -9.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-38)Tj -/TT4 1 Tf --10.2812 -2.2 TD -(S)Tj -0 -1 TD -(Save-Window-Region )Tj -/TT6 1 Tf -10.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-13)Tj -/TT4 1 Tf --16.1128 -1 TD -(SAVEVM )Tj -/TT6 1 Tf -4.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-7)Tj --10.1138 -1 TD -(SCRATCHLIST )Tj -/TT6 1 Tf -7.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-1)Tj --8.3345 -1 TD -(SEdit )Tj -/TT6 1 Tf -2.9458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-15)Tj -/TT4 1 Tf --3.7793 -1 TD -(SEdit )Tj -/TT6 1 Tf -3.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B-16)Tj --8.4463 -1 TD -(SEdit Command Menu )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-12)Tj -/TT4 1 Tf --11.4492 -1 TD -(SEE )Tj -/TT6 1 Tf -2.5566 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -25 0 obj -<< -/Length 14217 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 518.5499 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj -47.344 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(SEE* )Tj -/TT6 1 Tf -2.9458 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.5591 -1 TD -(SELECTEDFN )Tj -/TT6 1 Tf -7.5005 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D-10)Tj -/TT4 1 Tf --20.894 -1 TD -(Set Package )Tj -/TT6 1 Tf -6.4482 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-11)Tj -/TT4 1 Tf --15.4507 -1 TD -(SETERRORN )Tj -/TT6 1 Tf -6.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --12.1689 -1 TD -(SETFILEINFO )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-38; 4-13)Tj -/TT4 1 Tf --12.3906 -1 TD -(SETREADTABLE )Tj -/TT6 1 Tf -8.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-48)Tj -/TT4 1 Tf --14.002 -1 TD -(SETSTKARGNAME )Tj -/TT6 1 Tf -9.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj --15.002 -1 TD -(SETSYNTAX )Tj -/TT6 1 Tf -6.5015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-45,49)Tj -/TT4 1 Tf --7.335 -1 TD -(SHAPEW )Tj -/TT6 1 Tf -4.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-24)Tj -/TT4 1 Tf --10.2798 -1 TD -(SHH )Tj -/TT6 1 Tf -2.667 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --11.2803 -1 TD -(SHIFT-FIND )Tj -/TT6 1 Tf -6.1104 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --15.1128 -1 TD -(short-site-name )Tj -/TT6 1 Tf -8.0571 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(7-3)Tj -/TT4 1 Tf --13.2256 -1 TD -(SHOULDCOMPILEMACROATOMS )Tj -/TT6 1 Tf -16.7217 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-4)Tj -/TT4 1 Tf --21.8901 -1 TD -(SHOULDNT )Tj -/TT6 1 Tf -6.1108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --11.4458 -1 TD -(SHOWPARENFLG )Tj -/TT6 1 Tf -9.4443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-25)Tj -/TT4 1 Tf --14.6128 -1 TD -(SHRINKBITMAP )Tj -/TT6 1 Tf -8.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-18)Tj -/TT4 1 Tf --13.5571 -1 TD -(SHRINKFN )Tj -/TT6 1 Tf -5.7222 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4-24)Tj --14.8354 -1 TD -(SIDE effects of event )Tj -/TT6 1 Tf -10.2271 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-18)Tj --11.0605 -1 TD -(Signalling conditions )Tj -/TT6 1 Tf -9.6728 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-3)Tj -/TT4 1 Tf --10.5063 -1 TD -(SIN )Tj -/TT6 1 Tf -2.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-3)Tj --7.5576 -1 TD -(Sketch )Tj -/TT6 1 Tf -3.6128 0 TD -( )Tj -/TT2 1 Tf --1.1128 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6-10)Tj -/TT4 1 Tf --13.4487 -1 TD -(SKIP-NEXT )Tj -/TT6 1 Tf -5.8896 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --14.8921 -1 TD -(SKREAD )Tj -/TT6 1 Tf -4.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-41)Tj -/TT4 1 Tf --10.1133 -1 TD -(SORT )Tj -/TT6 1 Tf -3.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-1)Tj --8.6685 -1 TD -(Special characters )Tj -/TT6 1 Tf -9.0596 0 TD -( )Tj -/TT2 1 Tf --6.5596 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-5)Tj --7.6133 -1 TD -(Specifying event addresses )Tj -/TT6 1 Tf -12.7852 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj --13.6187 -1 TD -(Specifying Free Menu Items )Tj -/TT6 1 Tf -13.0054 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-2)Tj --13.8389 -1 TD -(stack manipulations )Tj -/TT6 1 Tf -9.3379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-5)Tj -/TT4 1 Tf --10.1714 -1 TD -(STACK OVERFLOW )Tj -/TT6 1 Tf -10.0552 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(4-4)Tj --16.2778 -1 TD -(Stack pointers )Tj -/TT6 1 Tf -6.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-5)Tj -/TT4 1 Tf --7.7256 -1 TD -(STACK-OVERFLOW )Tj -/TT6 1 Tf -10.1104 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --16.333 -1 TD -(STACK-POINTER-RELEASED )Tj -/TT6 1 Tf -14.5562 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj --20.7788 -1 TD -(Starting an SEdit session )Tj -/TT6 1 Tf -12.0063 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-2)Tj --12.8398 -1 TD -(STATE )Tj -/TT6 1 Tf -3.7783 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-26)Tj -/TT4 1 Tf --4.6118 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D-7,11)Tj -/TT4 1 Tf --12.3911 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-12)Tj -/TT4 1 Tf --16.4482 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-10)Tj -/TT4 1 Tf --17.8374 -1 TD -(STKARG )Tj -/TT6 1 Tf -4.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj -/TT4 1 Tf --10.1128 -1 TD -(STKNARGS )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj -/TT4 1 Tf --11.502 -1 TD -(STKPOS )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-5)Tj -/TT4 1 Tf --10.0024 -1 TD -(STOP )Tj -/TT6 1 Tf -3.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-10)Tj -/TT4 1 Tf --8.6133 -1 TD -(STOP-UNDOABLY )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-13)Tj --13.5557 -1 TD -(strings )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-3)Tj --1.8345 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.002 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-6)Tj -/TT4 1 Tf --7.3354 -1 TD -(STRINGWIDTH )Tj -/TT6 1 Tf -7.6104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-42; 4-22)Tj --12.9453 -1 TD -(Structure caret in SEdit )Tj -/TT6 1 Tf -11.1157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-2)Tj --11.9492 -1 TD -(Structure editor )Tj -/TT6 1 Tf -7.3921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-15)Tj -/TT4 1 Tf --8.2256 -1 TD -(Substitute )Tj -/TT6 1 Tf -5.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-8)Tj -/TT4 1 Tf --14.4468 -1 TD -(SUCHTHAT )Tj -/TT6 1 Tf -6.0552 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --14.0581 -1 TD -(SUSPEND-PROCESS.NAMES )Tj -/TT6 1 Tf -14.4473 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-7)Tj --15.2808 -1 TD -(Switching between editors )Tj -/TT6 1 Tf -12.1733 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-16)Tj --13.0068 -1 TD -(Symbols )Tj -/TT6 1 Tf -4.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-1,6)Tj --2.7236 -1 TD -(in Error system )Tj -/TT6 1 Tf -7.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E-1)Tj --10.8901 -1 TD -(symbols in the INTERLISP package )Tj -/TT6 1 Tf -16.4517 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-20)Tj -/TT4 1 Tf --17.2852 -1 TD -(SYSDOWNFN )Tj -/TT6 1 Tf -7.3335 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-11)Tj --21.0596 -1 TD -(sysload )Tj -/TT6 1 Tf -4.2241 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-24; 7-11)Tj -/TT4 1 Tf --5.0576 -1 TD -(SYSMOVEDFN )Tj -/TT6 1 Tf -7.8345 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-11)Tj -/TT4 1 Tf --21.5605 -1 TD -(SYSOUT )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-7)Tj -/TT4 1 Tf --10.0024 -1 TD -(SYSPRETTYFLG )Tj -/TT6 1 Tf -8.501 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-9)Tj -/TT4 1 Tf --13.6694 -1 TD -(SYSSELECTEDFN )Tj -/TT6 1 Tf -9.5015 0 TD -(\(FreeMenu System Property\))Tj -/TT2 1 Tf --2.0015 -1 TD -(D-11)Tj -/TT4 1 Tf --7.5 -2.2 TD -(T)Tj -0 -1 TD -(TABLE )Tj -/TT6 1 Tf -4.4443 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D-7)Tj -/TT4 1 Tf --17.6157 -1 TD -(TCOMPL )Tj -/TT6 1 Tf -4.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-22,25; 4-10)Tj --10.1123 -1 TD -(TEdit )Tj -/TT6 1 Tf -2.8896 0 TD -( )Tj -/TT2 1 Tf -26.0104 67.2 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6-1)Tj --13.4487 -1 TD -(TeleRaid Library module )Tj -/TT6 1 Tf -11.4497 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-35)Tj -/TT4 1 Tf --12.2832 -1 TD -(TEXTICON )Tj -/TT6 1 Tf -5.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-25; C-3)Tj -/TT4 1 Tf --10.9463 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.5576 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-36)Tj -/TT4 1 Tf --8.2793 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-36)Tj -/TT4 1 Tf --7.2222 -1 TD -(TITLE )Tj -/TT6 1 Tf -3.333 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4-27)Tj --11.6128 -1 TD -(titled icons )Tj -/TT6 1 Tf -5.2803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-25)Tj -/TT4 1 Tf --6.1138 -1 TD -(TITLEDICONW )Tj -/TT6 1 Tf -7.7769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C-1)Tj -/TT4 1 Tf --13.1118 -1 TD -(TOGGLE )Tj -/TT6 1 Tf -5.0557 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D-11)Tj -/TT4 1 Tf --13.3354 -1 TD -(TOO-MANY-ARGUMENTS )Tj -/TT6 1 Tf -12.7769 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --18.9995 -1 TD -(TRACE )Tj -/TT6 1 Tf -4.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13-14)Tj -/TT4 1 Tf --9.6128 -1 TD -(TTYBACKGROUNDFNS )Tj -/TT6 1 Tf -11.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-12)Tj -/TT4 1 Tf --16.9458 -1 TD -(TTYDISPLAYSTREAM )Tj -/TT6 1 Tf -11.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-25)Tj --16.3354 -1 TD -(TTYIN display typein editor )Tj -/TT6 1 Tf -12.5605 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-16)Tj --13.394 -1 TD -(TTYIN Editor from Exec )Tj -/TT6 1 Tf -11.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-20)Tj -/TT4 1 Tf --12.2246 -1 TD -(TY )Tj -/TT6 1 Tf -1.8335 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --10.4468 -1 TD -(TYPE )Tj -/TT6 1 Tf -3.1675 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.7808 -1 TD -(TYPE )Tj -/TT6 1 Tf -3.4453 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj -/TT4 1 Tf --15.7822 -2.2 TD -(U)Tj -/TT2 1 Tf -0 -1 TD -(UGLYVARS )Tj -/TT6 1 Tf -6.002 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-43; 4-9,15)Tj -/TT4 1 Tf --6.8354 -1 TD -(UNBOUND-VARIABLE )Tj -/TT6 1 Tf -11.1108 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --17.3335 -1 TD -(UNBREAK )Tj -/TT6 1 Tf -5.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-14)Tj -/TT4 1 Tf --11.1685 -1 TD -(UNBREAKIN )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-13)Tj -/TT4 1 Tf --11.8906 -1 TD -(UNDEFINED-CAR-OF-FORM )Tj -/TT6 1 Tf -13.8872 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --20.1099 -1 TD -(UNDEFINED-FUNCTION-IN-APPLY )Tj -/TT6 1 Tf -16.8882 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-)Tj --15.6108 -1 TD -(12)Tj -/TT4 1 Tf --7.5 -1 TD -(UNDO )Tj -/TT6 1 Tf -3.5 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B-7)Tj -/TT4 1 Tf --12.5024 -1 TD -(UNDO )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-4,8,13)Tj -/TT4 1 Tf --12.1133 -1 TD -(UNDO key )Tj -/TT6 1 Tf -5.4463 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --14.894 -1 TD -(UNDOABLY-MAKUNBOUND )Tj -/TT6 1 Tf -13.9434 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-29)Tj -/TT4 1 Tf --19.2783 -1 TD -(UNDOABLY-SETQ )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-15)Tj --14.6128 -1 TD -(Undoing in Functions )Tj -/TT6 1 Tf -9.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-14)Tj --10.7837 -1 TD -(Undoing In Programs )Tj -/TT6 1 Tf -10.2827 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-13)Tj --11.1162 -1 TD -(Undoing out of order )Tj -/TT6 1 Tf -9.6729 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-16)Tj -/TT4 1 Tf --10.5063 -1 TD -(UNDOSAVE )Tj -/TT6 1 Tf -6.2231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-15)Tj -/TT4 1 Tf --11.5581 -1 TD -(UNIXFTPFLG )Tj -/TT6 1 Tf -6.833 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-14)Tj -/TT4 1 Tf --12.0015 -1 TD -(UNPACKFILENAME )Tj -/TT6 1 Tf -9.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-37)Tj -/TT4 1 Tf --15.2793 -1 TD -(UNSAFEMACROATOMS )Tj -/TT6 1 Tf -12.0552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-4)Tj --17.2236 -1 TD -(UNTIL )Tj -/TT6 1 Tf -3.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-3)Tj -/TT4 1 Tf --4.2783 -1 TD -(USE )Tj -/TT6 1 Tf -2.6118 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --11.2251 -1 TD -(USERDATA )Tj -/TT6 1 Tf -6.3892 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D-11)Tj --20.1152 -1 TD -(USERDATA LIST )Tj -/TT6 1 Tf -8.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D-14)Tj -/TT4 1 Tf --9.502 -1 TD -(USEREXEC )Tj -/TT6 1 Tf -6.0571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-9)Tj --11.3921 -1 TD -(USERNAME )Tj -/TT6 1 Tf -6.2231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-6)Tj -/TT4 1 Tf --7.0566 -1 TD -(USERWORDS )Tj -/TT6 1 Tf -7.167 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-25)Tj --12.3354 -1 TD -(USESILPACKAGE )Tj -/TT6 1 Tf -8.9478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-45)Tj --9.7812 -1 TD -(Using Execs )Tj -/TT6 1 Tf -6.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-7)Tj -/TT4 1 Tf --7.2246 -2.2 TD -(V)Tj -0 -1 TD -(VALUEFONT )Tj -/TT6 1 Tf -6.6665 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-11)Tj --11.835 -1 TD -(VARS )Tj -/TT6 1 Tf -3.2788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-15)Tj --4.1123 -1 TD -(version delimiter )Tj -/TT6 1 Tf -7.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-2)Tj -/TT4 1 Tf --8.6694 -1 TD -(VIDEORATE )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-31)Tj -/TT4 1 Tf --11.7246 -1 TD -(VJUSTIFY )Tj -/TT6 1 Tf -5.6123 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D-9)Tj -/TT4 1 Tf --17.9492 -2.2 TD -(W)Tj -0 -1 TD -(warn )Tj -/TT6 1 Tf -2.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E-10)Tj --8.2246 -1 TD -(WHENCHANGED )Tj -/TT6 1 Tf -8.6113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-9)Tj -/TT4 1 Tf --9.4448 -1 TD -(WINDOWPROP )Tj -/TT6 1 Tf -7.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-26)Tj --13.1123 -1 TD -(WINDOWPROPS )Tj -/TT6 1 Tf -8.4443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-26)Tj -/TT4 1 Tf --9.2778 -1 TD -(with-collection )Tj -/TT6 1 Tf -7.5557 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-6)Tj -/TT4 1 Tf --11.8335 -1 TD -(with-input-from-string )Tj -/TT6 1 Tf -11.2754 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-13)Tj -/TT4 1 Tf --15.5532 -1 TD -(with-output-to-string )Tj -/TT6 1 Tf -10.6631 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7-13)Tj -/TT4 1 Tf --14.9409 -1 TD -(WITH-READER-ENVIRONMENT )Tj -/TT6 1 Tf -15.3882 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-23)Tj -/TT4 1 Tf --19.666 -1 TD -(write-string )Tj -/TT6 1 Tf -6.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7-12)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -28 0 obj -<< -/Length 13366 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 312.91 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj --25.891 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(WRITESTRIKEFONTFILE )Tj -/TT6 1 Tf -12.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4-22)Tj --17.6675 -1 TD -(writing macros )Tj -/TT6 1 Tf -7.0015 0 TD -( )Tj -/TT2 1 Tf --4.5015 -1 TD -(macros for )Tj -/TT6 1 Tf -5.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7-7)Tj --8.8901 -1 TD -(Writing your own SEdit commands )Tj -/TT6 1 Tf -16.1167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B-14)Tj -/TT4 1 Tf --16.9502 -2.2 TD -(X)Tj -/TT2 1 Tf -0 -1 TD -(XCL )Tj -/TT6 1 Tf -2.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-47)Tj --3.3345 -1 TD -(XCL Compiler )Tj -/TT6 1 Tf -6.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-31)Tj --7.6133 -1 TD -(XCL Exec )Tj -/TT6 1 Tf -5.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-7)Tj --6.1133 -1 TD -(XCL readtable )Tj -/TT6 1 Tf -6.9487 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-21)Tj -/TT4 1 Tf --7.7822 -1 TD -(xcl:*current-condition* )Tj -/TT6 1 Tf -11.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E-8)Tj -/TT4 1 Tf --16.5029 -1 TD -(XCL:*DEBUGGER-PROMPT* )Tj -/TT6 1 Tf -14.0562 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --19.2246 -1 TD -(XCL:*EVAL-FUNCTION* )Tj -/TT6 1 Tf -11.833 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --17.0015 -1 TD -(XCL:*EXEC-PROMPT* )Tj -/TT6 1 Tf -11.001 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --16.1694 -1 TD -(XCL:*PER-EXEC-VARIABLES* )Tj -/TT6 1 Tf -14.8906 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-18)Tj -/TT4 1 Tf --20.0591 -1 TD -(XCL:ABORT )Tj -/TT6 1 Tf -6.4438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-10)Tj -/TT4 1 Tf --11.7788 -1 TD -(XCL:ADD-EXEC )Tj -/TT6 1 Tf -8.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-18)Tj -/TT4 1 Tf --13.4463 -1 TD -(XCL:ARGLIST )Tj -/TT6 1 Tf -7.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-15)Tj -/TT4 1 Tf --12.4458 -1 TD -(XCL:ARRAY-SPACE-FULL )Tj -/TT6 1 Tf -13.1104 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --19.333 -1 TD -(XCL:ATTEMPT-TO-CHANGE-CONSTANT )Tj -/TT6 1 Tf -19.8867 0 TD -(\(Error)Tj --12.3867 -1 TD -(Type\) )Tj -/TT2 1 Tf -3.3896 0 TD -(3-11-12)Tj -/TT4 1 Tf --10.8896 -1 TD -(XCL:ATTEMPT-TO-RPLAC-NIL )Tj -/TT6 1 Tf -15.0532 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj --21.2759 -1 TD -(XCL:CATCH-ABORT )Tj -/TT6 1 Tf -10.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --10.8345 -1 TD -(xcl:catch-abort )Tj -/TT6 1 Tf -7.7241 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-21)Tj --12.002 -1 TD -(XCL:CONDITION )Tj -/TT6 1 Tf -8.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-10)Tj -/TT4 1 Tf --9.2231 -1 TD -(xcl:condition-case )Tj -/TT6 1 Tf -9.3354 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-11)Tj -/TT4 1 Tf --13.6133 -1 TD -(xcl:condition-handler )Tj -/TT6 1 Tf -10.7227 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-8)Tj -/TT4 1 Tf --15.0005 -1 TD -(xcl:condition-reporter )Tj -/TT6 1 Tf -10.9453 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E-7)Tj -/TT4 1 Tf --15.2231 -1 TD -(XCL:CONTROL-E-INTERRUPT )Tj -/TT6 1 Tf -14.8877 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --21.1104 -1 TD -(XCL:DATA-TYPES-EXHAUSTED )Tj -/TT6 1 Tf -15.7783 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-)Tj --14.501 -1 TD -(12)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:DEF-DEFINE-TYPE )Tj -/TT6 1 Tf -11.8335 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-27-28)Tj --16.1113 -1 TD -(XCL:DEFCOMMAND )Tj -/TT6 1 Tf -10.0562 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-8)Tj -/TT4 1 Tf --10.8897 -1 TD -(XCL:DEFCOMMAND )Tj -/TT6 1 Tf -10.2212 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-11)Tj -/TT4 1 Tf --14.499 -1 TD -(XCL:DEFDEFINER )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj -/TT4 1 Tf --14.6128 -1 TD -(XCL:DEFDEFINER )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-29)Tj -/TT4 1 Tf --13.5557 -1 TD -(XCL:DEFGLOBALPARAMETER )Tj -/TT6 1 Tf -15.4438 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20)Tj -/TT4 1 Tf --20.6123 -1 TD -(XCL:DEFGLOBALVAR )Tj -/TT6 1 Tf -11.2217 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20)Tj -/TT4 1 Tf --16.3901 -1 TD -(XCL:DEFINE-PROCEED-FUNCTION )Tj -/TT6 1 Tf -17.333 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-)Tj --15.168 -1 TD -(20)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:DEFINLINE )Tj -/TT6 1 Tf -8.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3-20)Tj --13.5015 -1 TD -(XCL:DEFOPTIMIZER )Tj -/TT6 1 Tf -10.2231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-32)Tj -/TT4 1 Tf --11.0566 -1 TD -(XCL:DEFOPTIMIZER )Tj -/TT6 1 Tf -10.6108 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3-5)Tj -/TT4 1 Tf --14.8887 -1 TD -(XCL:EXEC )Tj -/TT6 1 Tf -5.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-18)Tj -/TT4 1 Tf --10.9468 -1 TD -(XCL:EXEC-EVAL )Tj -/TT6 1 Tf -8.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-19)Tj -/TT4 1 Tf --13.9468 -1 TD -(XCL:EXEC-FORMAT )Tj -/TT6 1 Tf -10.4995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-19)Tj -/TT4 1 Tf --15.8345 -1 TD -(XCL:FILE-NOT-FOUND )Tj -/TT6 1 Tf -11.3872 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --17.6099 -1 TD -(XCL:FILE-WONT-OPEN )Tj -/TT6 1 Tf -11.6099 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --17.8325 -1 TD -(XCL:FLOATING-OVERFLOW )Tj -/TT6 1 Tf -14.1094 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --20.332 -1 TD -(XCL:FLOATING-UNDERFLOW )Tj -/TT6 1 Tf -14.8311 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --21.0537 -1 TD -(XCL:FS-PROTECTION-VIOLATION )Tj -/TT6 1 Tf -16.8325 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-)Tj --15.5552 -1 TD -(12)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:FS-RESOURCES-EXCEEDED )Tj -/TT6 1 Tf -16.6685 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-)Tj --15.3911 -1 TD -(12)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:HASH-TABLE-FULL )Tj -/TT6 1 Tf -12.2759 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --18.4985 -1 TD -(XCL:INVALID-PATHNAME )Tj -/TT6 1 Tf -12.8882 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --19.1108 -1 TD -(XCL:SET-DEFAULT-EXEC-TYPE )Tj -/TT6 1 Tf -15.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-20)Tj -/TT4 1 Tf --21.1685 -1 TD -(XCL:SET-EXEC-TYPE )Tj -/TT6 1 Tf -10.8345 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-20)Tj -/TT4 1 Tf --16.1694 -1 TD -(XCL:SIMPLE-DEVICE-ERROR )Tj -/TT6 1 Tf -14.6118 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --20.8345 -1 TD -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT6 1 Tf -13.5005 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --19.7231 -1 TD -(XCL:STORAGE-EXHAUSTED )Tj -/TT6 1 Tf -14.334 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-12)Tj -/TT4 1 Tf --20.5566 -1 TD -(XCL:STREAM-NOT-OPEN )Tj -/TT6 1 Tf -12.7217 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --18.9443 -1 TD -(XCL:SYMBOL-HT-FULL )Tj -/TT6 1 Tf -11.7202 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-11)Tj -/TT4 1 Tf --17.9429 -1 TD -(XCL:SYMBOL-NAME-TOO-LONG )Tj -/TT6 1 Tf -16.165 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3-)Tj --14.8877 -1 TD -(11)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:UNDOABLY )Tj -/TT6 1 Tf -8.5552 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-13)Tj -/TT4 1 Tf --12.833 -1 TD -(XCL:UNDOABLY-SETF )Tj -/TT6 1 Tf -11.4438 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-15)Tj -/TT4 1 Tf -10.6783 66.2 TD -(1)Tj -/TT2 1 Tf -0 -1 TD -(10MB Ethernet encapsulation types )Tj -/TT6 1 Tf -16.3433 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4-34)Tj --17.1768 -1 TD -(1108 Users Guide )Tj -/TT6 1 Tf -9.1157 0 TD -( )Tj -/TT2 1 Tf --6.6157 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6-14)Tj --13.4487 -1 TD -(1186 Users Guide )Tj -/TT6 1 Tf -9.1157 0 TD -( )Tj -/TT2 1 Tf --6.6157 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6-16)Tj -/TT4 1 Tf --13.4487 -2.2 TD -(3)Tj -0 -1 TD -(3STATE )Tj -/TT6 1 Tf -4.6675 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4-26; D-11)Tj -/TT4 1 Tf --12.9473 -2.2 TD -(\\)Tj -0 -1 TD -(\\#UNDOSAVES )Tj -/TT6 1 Tf -7.7241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-15)Tj -/TT4 1 Tf --12.8926 -1 TD -(\\10MBTYPE-3TO10 )Tj -/TT6 1 Tf -9.5029 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-34)Tj -/TT4 1 Tf --14.6714 -1 TD -(\\10MBTYPE-PUP )Tj -/TT6 1 Tf -8.502 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-34)Tj -/TT4 1 Tf --13.6704 -2.2 TD -(~)Tj -0 -1 TD -(~C )Tj -/TT6 1 Tf -1.8618 0 TD -(\(Format directive\) )Tj -/TT2 1 Tf -8.668 0 TD -(7-13)Tj -/TT4 1 Tf --10.5298 -2.2 TD -(!)Tj -/TT2 1 Tf -0 -1 TD -(!EVAL )Tj -/TT6 1 Tf -3.3906 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2-2)Tj -/TT4 1 Tf --4.2241 -2.2 TD -(*)Tj -0 -1 TD -(*break-on-warnings* )Tj -/TT6 1 Tf -10.2798 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E-10)Tj -/TT4 1 Tf --15.4482 -1 TD -(*Clear-Linear-On-Completion* )Tj -/TT6 1 Tf -14.7236 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-14)Tj -/TT4 1 Tf --19.8921 -1 TD -(*Compile-Fn* )Tj -/TT6 1 Tf -6.8335 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-16)Tj -/TT4 1 Tf --12.002 -1 TD -(*COMPILED-EXTENSIONS* )Tj -/TT6 1 Tf -13.3906 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-25)Tj -/TT4 1 Tf --18.5591 -1 TD -(*DEFAULT-CLEANUP-COMPILER* )Tj -/TT6 1 Tf -16.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-25)Tj -/TT4 1 Tf --21.9458 -1 TD -(*DEFAULT-MAKEFILE-ENVIRONMENT* )Tj -/TT6 1 Tf -19.166 0 TD -(\(Variable\))Tj -/TT2 1 Tf --11.666 -1 TD -(3-21)Tj -/TT4 1 Tf --7.5 -1 TD -(*Edit-Fn* )Tj -/TT6 1 Tf -4.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-16)Tj -/TT4 1 Tf --9.9458 -1 TD -(*ERROR-OUTPUT* )Tj -/TT6 1 Tf -9.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-10)Tj -/TT4 1 Tf --14.5576 -1 TD -(*Fetch-Definition-Error-Break-Flag* )Tj -/TT6 1 Tf -17.2241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-)Tj --14.8926 -1 TD -(16)Tj -/TT4 1 Tf --7.5 -1 TD -(*Getdef-Error-Fn* )Tj -/TT6 1 Tf -8.834 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-16)Tj -/TT4 1 Tf --14.0024 -1 TD -(*Getdef-Fn* )Tj -/TT6 1 Tf -6.0557 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-16)Tj -/TT4 1 Tf --11.2241 -1 TD -(*LAST-CONDITION* )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-10)Tj -/TT4 1 Tf --15.0571 -1 TD -(*LISPXPRINT* )Tj -/TT6 1 Tf -7.2236 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(A-18)Tj -/TT4 1 Tf --12.5024 -1 TD -(*NSADDRESS-FORMAT* )Tj -/TT6 1 Tf -12.2227 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-32)Tj -/TT4 1 Tf --17.3911 -1 TD -(*PACKAGE* )Tj -/TT6 1 Tf -6.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20,45-46; A-1)Tj -/TT4 1 Tf --11.5029 -1 TD -(*PRINT-ARRAY* )Tj -/TT6 1 Tf -8.2227 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-43)Tj -/TT4 1 Tf --13.3911 -1 TD -(*PRINT-BASE* )Tj -/TT6 1 Tf -7.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-39,42,44)Tj --12.6138 -1 TD -(*PRINT-BASE* vs RADIX )Tj -/TT6 1 Tf -11.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj -/TT4 1 Tf --12.7803 -1 TD -(*PRINT-CASE* )Tj -/TT6 1 Tf -7.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-44)Tj -/TT4 1 Tf --12.6138 -1 TD -(*PRINT-ESCAPE* )Tj -/TT6 1 Tf -8.7793 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-41,44)Tj -/TT4 1 Tf --13.9478 -1 TD -(*PRINT-LENGTH* )Tj -/TT6 1 Tf -8.7778 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-22)Tj -/TT4 1 Tf --13.9463 -1 TD -(*PRINT-LEVEL* )Tj -/TT6 1 Tf -7.8896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4-22)Tj --13.0581 -1 TD -[(*PRINT-LEVEL* & *PRINT-LENGTH* )-1107.4(vs)]TJ -7.5 -1 TD -(PRINTLEVEL )Tj -/TT6 1 Tf -6.6689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj --15.0024 -1 TD -(*PRINT-LEVEL* or *PRINT-LENGTH* is exceeded )Tj -7.5 -1 TD -(3-45)Tj -/TT4 1 Tf --7.5 -1 TD -(*PRINT-RADIX* )Tj -/TT6 1 Tf -7.7783 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-39,44)Tj -/TT4 1 Tf --12.9468 -1 TD -(*READ-BASE* )Tj -/TT6 1 Tf -7.2788 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-20,44)Tj -/TT4 1 Tf --12.4473 -1 TD -(*READ-SUPPRESS* )Tj -/TT6 1 Tf -9.9468 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-41)Tj -/TT4 1 Tf --15.1152 -1 TD -(*READTABLE* )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-39,41-42,48)Tj --12.6689 -1 TD -(*READTABLE* vs SETREADTABLE )Tj -/TT6 1 Tf -16.7271 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj -/TT4 1 Tf --17.5605 -1 TD -(*REMOVE-INTERLISP-COMMENTS* )Tj -/TT6 1 Tf -17.3896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-)Tj --15.0581 -1 TD -(29-30)Tj -/TT4 1 Tf --7.5 -1 TD -(*STANDARD-INPUT* )Tj -/TT6 1 Tf -10.2778 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-37)Tj --15.4463 -1 TD -(*STANDARD-INPUT* vs INPUT )Tj -/TT6 1 Tf -14.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj -/TT4 1 Tf --15.5566 -1 TD -(*STANDARD-OUTPUT* )Tj -/TT6 1 Tf -11.3887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3-37)Tj --16.5571 -1 TD -(*STANDARD-OUTPUT* vs OUTPUT )Tj -/TT6 1 Tf -16.9448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3-39)Tj -/TT4 1 Tf --17.7783 -1 TD -(*Wrap-Parens* )Tj -/TT6 1 Tf -7.5024 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-13)Tj -/TT4 1 Tf --12.6709 -1 TD -(*Wrap-Search* )Tj -/TT6 1 Tf -7.5024 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B-14)Tj -/TT4 1 Tf --12.6709 -2.2 TD -(:)Tj -0 -1 TD -(:fast-accessors )Tj -/TT6 1 Tf -7.8931 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7-5)Tj -/TT4 1 Tf --16.396 -1 TD -(:inline )Tj -/TT6 1 Tf -3.5 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7-5)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -31 0 obj -<< -/Length 1051 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 518.5499 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INDEX )Tj -47.344 74.479 TD -(INDEX)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(:template )Tj -/TT6 1 Tf -5.001 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7-5)Tj -/TT4 1 Tf --13.5039 -1 TD -(:type )Tj -/TT6 1 Tf -2.9448 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7-5)Tj -/TT4 1 Tf --11.4478 -2.2 TD -(=)Tj -0 -1 TD -(= )Tj -/TT6 1 Tf -1.1396 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj -/TT4 1 Tf --9.1426 -2.2 TD -(?)Tj -0 -1 TD -(? )Tj -/TT6 1 Tf -1.1665 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --9.7798 -1 TD -(?? )Tj -/TT6 1 Tf -1.7773 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.3906 -1 TD -(?ACTIVATEFLG )Tj -/TT6 1 Tf -8.166 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-24)Tj --13.3345 -1 TD -( )Tj -/TT6 1 Tf -0.5557 0 TD -( )Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -34 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -35 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 278 0 0 0 0 667 0 0 0 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 33 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 126 -/Widths [278 333 0 556 0 0 0 0 333 333 389 584 0 333 278 278 -556 556 556 556 0 0 0 0 0 556 333 333 0 584 0 611 -0 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 278 0 0 0 -0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 500 0 0 0 584 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 34 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 0 278 0 667 556 833 0 778 -667 0 722 667 611 0 667 944 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 0 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 35 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -36 0 obj -<< -/S /D ->> -endobj -37 0 obj -<< -/Nums [0 36 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R 15 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R] -/Count 9 -/MediaBox [0 0 612 792] ->> -endobj -38 0 obj -<< -/CreationDate (D:20210119174402-06'00') -/ModDate (D:20210119174402-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -39 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 37 0 R ->> -endobj -xref -0 40 -0000000000 65535 f -0000117709 00000 n -0000000016 00000 n -0000013539 00000 n -0000116221 00000 n -0000116764 00000 n -0000117270 00000 n -0000115475 00000 n -0000118520 00000 n -0000117789 00000 n -0000013656 00000 n -0000028736 00000 n -0000117871 00000 n -0000028854 00000 n -0000043347 00000 n -0000117954 00000 n -0000043465 00000 n -0000057881 00000 n -0000118037 00000 n -0000057999 00000 n -0000072444 00000 n -0000118120 00000 n -0000072562 00000 n -0000086208 00000 n -0000118203 00000 n -0000086326 00000 n -0000100597 00000 n -0000118286 00000 n -0000100715 00000 n -0000114135 00000 n -0000118369 00000 n -0000114253 00000 n -0000115357 00000 n -0000115615 00000 n -0000115810 00000 n -0000116016 00000 n -0000118452 00000 n -0000118480 00000 n -0000118656 00000 n -0000118788 00000 n -trailer -<< -/Size 40 -/Root 39 0 R -/Info 38 0 R -/ID [<4dabbfeedbf1e8e937765c7d34a91acf><4dabbfeedbf1e8e937765c7d34a91acf>] ->> -startxref -118857 -%%EOF diff --git a/docs/ReleaseNote/LOT.pdf b/docs/ReleaseNote/LOT.pdf deleted file mode 100644 index c00daeaf..00000000 --- a/docs/ReleaseNote/LOT.pdf +++ /dev/null @@ -1,267 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 555 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 548 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xv)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIST OF TABLES )Tj -/TT4 1 Tf -18 0 0 18 411.97 752.97 Tm -(LIST OF TABLES )Tj -ET -6 w -258.01 745.99 m -558.01 745.99 l -S -BT -10 0 0 10 54 666.2 Tm -(Table )Tj -48.01 0 TD -(Page)Tj -ET -1 w -54.01 663.43 m -558.01 663.43 l -S -BT -/TT2 1 Tf -10 0 0 10 54 635.14 Tm -[(1. TEdits Abbreviations and their Expanded Characters )-23497(6-1)]TJ -ET -54.01 632.43 m -558.01 632.43 l -S -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -9 0 obj -<< -/Length 360 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xvi)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 264.55 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIST OF TABLES )Tj --21.055 74.479 TD -(LIST OF TABLES )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -10 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -6 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -11 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -12 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0 -0 556 0 0 0 0 556 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 0 0 0 0 667 0 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 0 556 556 -556 0 333 500 278 0 500 0 500 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 11 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 108 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 0 0 667 611 0 0 278 0 0 611 0 0 778 -667 0 0 667 611 0 0 0 0 0 0 0 0 0 0 0 -0 556 611 0 0 556 0 611 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 12 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 10 0 R -/Contents 9 0 R ->> -endobj -13 0 obj -<< -/S /D ->> -endobj -14 0 obj -<< -/Nums [0 13 0 R ] ->> -endobj -7 0 obj -<< -/Type /Pages -/Kids [1 0 R 8 0 R] -/Count 2 -/MediaBox [0 0 612 792] ->> -endobj -15 0 obj -<< -/CreationDate (D:20210119174402-06'00') -/ModDate (D:20210119174402-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -16 0 obj -<< -/Type /Catalog -/Pages 7 0 R -/PageLabels 14 0 R ->> -endobj -xref -0 17 -0000000000 65535 f -0000002622 00000 n -0000000016 00000 n -0000000622 00000 n -0000001776 00000 n -0000002265 00000 n -0000001235 00000 n -0000002851 00000 n -0000002702 00000 n -0000000728 00000 n -0000001139 00000 n -0000001375 00000 n -0000001570 00000 n -0000002783 00000 n -0000002811 00000 n -0000002938 00000 n -0000003070 00000 n -trailer -<< -/Size 17 -/Root 16 0 R -/Info 15 0 R -/ID [] ->> -startxref -3139 -%%EOF diff --git a/docs/ReleaseNote/PREFACE.pdf b/docs/ReleaseNote/PREFACE.pdf deleted file mode 100644 index 048f90eb..00000000 --- a/docs/ReleaseNote/PREFACE.pdf +++ /dev/null @@ -1,1372 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6231 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.56 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xvii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, PREFACE )Tj -/TT4 1 Tf -18 0 0 18 471.97 762.97 Tm -(PREFACE )Tj -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 721.2 Tm -0.133 Tw -(The )Tj -/TT6 1 Tf -2.5448 0 TD -[(Lisp Release Notes)]TJ -/TT2 1 Tf -9.3482 0 TD -[( provide current information about the)]TJ -ET -570 752.98 0.99 -35.99 re -f -BT -10 0 0 10 258 709.2 Tm -0.0001 Tc -0.0039 Tw -(Lisp software development environment. You will find the following)Tj -ET -570 716.98 0.99 -11.99 re -f -BT -10 0 0 10 258 697.2 Tm -0 Tc -0 Tw -(information in these )Tj -/TT6 1 Tf -9.0049 0 TD -(Notes)Tj -/TT2 1 Tf -2.6123 0 TD -(:)Tj -ET -570 704.98 0.99 -11.99 re -f -BT -10 0 0 10 258 678.2 Tm -0.262 Tw -[()-1449.9(An overview of significant extensions to the Common Lisp)]TJ -ET -570 692.98 0.99 -18.99 re -f -BT -10 0 0 10 276 666.2 Tm -0 Tw -(language.)Tj -ET -570 673.98 0.99 -11.99 re -f -BT -10 0 0 10 258 647.2 Tm -0.041 Tw -[()-1449.9(Descriptions of new features that enhance the integration and)]TJ -ET -570 661.98 0.99 -18.99 re -f -BT -10 0 0 10 276 635.2 Tm -0 Tw -(implementation of Common Lisp into the Lisp environment. )Tj -ET -570 642.98 0.99 -11.99 re -f -BT -10 0 0 10 258 616.2 Tm -0.096 Tw -[()-1449.9(A)0( summary of changes made in the Library modules, in the)]TJ -ET -570 630.98 0.99 -18.99 re -f -BT -10 0 0 10 276 604.2 Tm -0.319 Tw -(Sketch and TEdit tools, and in the 1108 and 1186 Users)Tj -ET -570 611.98 0.99 -11.99 re -f -BT -10 0 0 10 276 592.2 Tm -0 Tw -(Guides. )Tj -ET -570 599.98 0.99 -11.99 re -f -BT -10 0 0 10 258 573.2 Tm -0.371 Tw -[()-1449.9(Discussions of how specific Common Lisp features have)]TJ -ET -570 587.98 0.99 -18.99 re -f -BT -10 0 0 10 276 561.2 Tm -0 Tw -(affected the Interlisp-D language.)Tj -ET -570 568.98 0.99 -11.99 re -f -BT -10 0 0 10 258 542.2 Tm -0.106 Tw -[()-1449.9(Notes reflecting the changes made to Interlisp-D, independent)]TJ -ET -570 556.98 0.99 -18.99 re -f -BT -10 0 0 10 276 530.2 Tm -0 Tw -(of Common Lisp. )Tj -ET -570 537.98 0.99 -11.99 re -f -258 518.98 213.43 -7.78 re -f -BT -10 0 0 10 471.44 511.2 Tm -()Tj -ET -471.44 518.98 6.66 -7.78 re -f -486 518.98 46.68 -7.78 re -f -BT -10 0 0 10 532.6899 511.2 Tm -(of)Tj -ET -570 525.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 496.08 Tm -(s are Organized )Tj -ET -1 w -54.01 492.49 m -558.01 492.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 473.2 Tm -(The)Tj -/TT6 1 Tf -1.7231 0 TD -( Lisp Release Notes)Tj -/TT2 1 Tf -9.2271 0 TD --0.0002 Tw -( are organized as follows: )Tj -ET -570 491.98 0.99 -22.99 re -f -BT -10 0 0 10 258 454.2 Tm -0.86 Tw -(Chapter 1, Introduction, summarizes the Medley release)Tj -ET -570 468.98 0.99 -18.99 re -f -BT -10 0 0 10 258 442.2 Tm -0 Tw -(enhancements. )Tj -ET -570 449.98 0.99 -11.99 re -f -BT -10 0 0 10 258 423.2 Tm -0.044 Tw -[(Chapter 2, Notes and Cautions, highlights significant Medley and)]TJ -ET -570 437.98 0.99 -18.99 re -f -BT -10 0 0 10 258 411.2 Tm -0 Tw -(Lyric changes in the Lisp environment.)Tj -ET -570 418.98 0.99 -11.99 re -f -BT -10 0 0 10 258 392.2 Tm -0.046 Tw -(Chapter 3, Common Lisp/Interlisp-D Integration, discusses how the)Tj -ET -570 406.98 0.99 -18.99 re -f -BT -10 0 0 10 258 380.2 Tm -0.387 Tw -(integration of Common Lisp into the Lisp environment affects)Tj -ET -570 387.98 0.99 -11.99 re -f -BT -10 0 0 10 258 368.2 Tm -0 Tw -(Interlisp features.)Tj -ET -570 375.98 0.99 -11.99 re -f -BT -10 0 0 10 258 349.2 Tm -0.332 Tw -[(Chapter 4, Changes to Interlisp-D in Lyric/Medley, outlines)]TJ -ET -570 363.98 0.99 -18.99 re -f -BT -10 0 0 10 258 337.2 Tm -0.171 Tw -(changes that have taken place in Interlisp-D and its environment)Tj -ET -570 344.98 0.99 -11.99 re -f -BT -10 0 0 10 258 325.2 Tm -0.399 Tw -[(during the Lyric and Medley releases. These changes are)]TJ -ET -570 332.98 0.99 -11.99 re -f -BT -10 0 0 10 258 313.2 Tm -0 Tw -(primarily independent of Common Lisp integration.)Tj -ET -570 320.98 0.99 -11.99 re -f -BT -10 0 0 10 288 294.2 Tm -0.202 Tw -(Chapters 3 and 4 are organized to parallel the )Tj -/TT6 1 Tf -22.4425 0 TD -0 Tw -(Interlisp-D)Tj -ET -570 308.98 0.99 -18.99 re -f -BT -10 0 0 10 288 282.2 Tm -0.099 Tw -(Reference Manual)Tj -/TT2 1 Tf -8.2704 0 TD -[( as closely as possible. To make it easy)]TJ -ET -570 289.98 0.99 -11.99 re -f -BT -10 0 0 10 288 270.2 Tm -0.686 Tw -(to use these chapters with the)Tj -/TT6 1 Tf -16.7156 0 TD -[( IRM,)]TJ -/TT2 1 Tf -3.0747 0 TD -[( the following)]TJ -ET -570 277.98 0.99 -11.99 re -f -BT -10 0 0 10 288 258.2 Tm -0 Tw -(conventions are used:)Tj -ET -570 265.98 0.99 -11.99 re -f -BT -10 0 0 10 288 239.2 Tm -0.205 Tw -(Information is organized by )Tj -/TT6 1 Tf -13.1042 0 TD -[(Interlisp-D Reference Manual)]TJ -ET -570 253.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 288 227.2 Tm -0.087 Tw -[(volume and section. The )]TJ -/TT6 1 Tf -12.2505 0 TD -[( IRM)]TJ -/TT2 1 Tf -2.1978 0 TD -[( section level headings are)]TJ -ET -570 234.98 0.99 -11.99 re -f -BT -10 0 0 10 288 215.2 Tm -0 Tw -(maintained to aid in cross-referencing.)Tj -ET -570 222.98 0.99 -11.99 re -f -BT -10 0 0 10 258 196.2 Tm -0.147 Tw -[(Chapter 5, Library Modules, is a synopsis of the changes to the)]TJ -ET -570 210.98 0.99 -18.99 re -f -BT -10 0 0 10 258 184.2 Tm -0 Tw -(Lisp Library Modules.)Tj -ET -570 191.98 0.99 -11.99 re -f -BT -10 0 0 10 258 165.2 Tm -0.124 Tw -[(Chapter 6, Users Guides, is a collection of release notes on the)]TJ -ET -570 179.98 0.99 -18.99 re -f -BT -10 0 0 10 258 153.2 Tm -0.17 Tw -(1108 and 1186 Users Guides; )Tj -/TT6 1 Tf -14.6366 0 TD -(A Users Guide to Sketch)Tj -/TT2 1 Tf -11.8514 0 TD -(, and )Tj -/TT6 1 Tf -2.842 0 TD -0 Tw -(A)Tj -ET -570 160.98 0.99 -11.99 re -f -BT -10 0 0 10 258 141.2 Tm -(Users Guide to TEdit)Tj -/TT2 1 Tf -9.5034 0 TD -(.)Tj -ET -570 148.98 0.99 -11.99 re -f -BT -10 0 0 10 258 122.2 Tm -0.249 Tw -[(Chapter 7, Common Lisp Implementation, describes improved)]TJ -ET -570 136.98 0.99 -18.99 re -f -BT -10 0 0 10 258 110.2 Tm -0 Tw -(features that integrate Common Lisp into the environment. )Tj -ET -570 117.98 0.99 -11.99 re -f -BT -10 0 0 10 258 91.2 Tm -0.38 Tw -[(Five Appendices contain documentation of newly integrated)]TJ -ET -570 105.98 0.99 -18.99 re -f -BT -10 0 0 10 258 79.2 Tm -0 Tw -(system features: )Tj -ET -570 86.98 0.99 -11.99 re -f -BT -10 0 0 10 276 60.2 Tm -(Appendix A, The Exec, describes Lisps Exec. )Tj -ET -570 74.98 0.99 -18.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 6354 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xviii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 296.24 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, PREFACE)Tj --24.224 74.479 TD -(PREFACE)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 276 730.2 Tm -(Appendix B, SEdit, describes the Lisp structure editor. )Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 276 711.2 Tm -0.062 Tw -[(Appendix C, ICONW, describes the Lisp feature for building)]TJ -ET -570 725.98 0.99 -18.99 re -f -BT -10 0 0 10 276 699.2 Tm -0 Tw -(display icons . )Tj -ET -570 706.98 0.99 -11.99 re -f -BT -10 0 0 10 276 680.2 Tm -0.297 Tw -[(Appendix D, Free Menu, describes Lisps flexible menu)]TJ -ET -570 694.98 0.99 -18.99 re -f -BT -10 0 0 10 276 668.2 Tm -0 Tw -(feature. )Tj -ET -570 675.98 0.99 -11.99 re -f -BT -10 0 0 10 276 649.2 Tm -0.243 Tw -[(Appendix E, Error System, describes error conditions and)]TJ -ET -570 663.98 0.99 -18.99 re -f -BT -10 0 0 10 276 637.2 Tm -0 Tw -(recovery. )Tj -ET -570 644.98 0.99 -11.99 re -f -2 w -54.01 581.99 m -558.01 581.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 570.08 Tm -(Notational Conventions)Tj -ET -1 w -54.01 566.49 m -558.01 566.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 547.2 Tm -(Conventions used in the )Tj -/TT6 1 Tf -11.0073 0 TD -(Lisp Release Notes)Tj -/TT2 1 Tf -8.6714 0 TD -( include the following:)Tj -ET -570 565.98 0.99 -22.99 re -f -BT -10 0 0 10 258 528.2 Tm -0.138 Tw -[(Names of Interlisp functions, macros and variables are shown in)]TJ -ET -570 542.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 516.2 Tm -0 Tw -(BOLD UPPERCASE)Tj -/TT2 1 Tf -9.3345 0 TD -(; their arguments are in )Tj -/TT6 1 Tf -10.8384 0 TD -(ITALICS)Tj -/TT2 1 Tf -3.7788 0 TD -(. )Tj -ET -570 523.98 0.99 -11.99 re -f -BT -10 0 0 10 258 497.2 Tm -0.005 Tw -(Names of Common Lisp functions, macros and variables are shown)Tj -ET -570 511.98 0.99 -18.99 re -f -BT -10 0 0 10 258 485.2 Tm -0 Tw -(in )Tj -/TT4 1 Tf -1.0562 0 TD -(bold lowercase)Tj -/TT2 1 Tf -7.2246 0 TD -(; their arguments are in )Tj -/TT6 1 Tf -10.8384 0 TD -(italics.)Tj -/TT2 1 Tf -2.7783 0 TD -( )Tj -ET -570 492.98 0.99 -11.99 re -f -BT -10 0 0 10 258 466.2 Tm -0.092 Tw -[(A backslash \(\\\) character preceding a function or variable name)]TJ -ET -570 480.98 0.99 -18.99 re -f -BT -10 0 0 10 258 454.2 Tm -0 Tw -(signifies that it is a property of the system. )Tj -ET -570 461.98 0.99 -11.99 re -f -BT -10 0 0 10 258 435.2 Tm -(Examples are shown in )Tj -/TT8 1 Tf -11.7275 0 TD -(terminal 10.)Tj -ET -570 449.98 0.99 -20.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 414.91 Tm -(Text shown with StrikeThru)Tj -ET -0.75 w -335.25 418.24 m -381.37 418.24 l -S -BT -10 0 0 10 381.37 414.91 Tm -( is information that no longer applies. )Tj -ET -570 429.69 0.99 -18.99 re -f -BT -10 0 0 10 258 395.91 Tm -0.013 Tw -[(Text shown with revision bars in the right margin is information that)]TJ -ET -570 410.69 0.99 -18.99 re -f -BT -10 0 0 10 258 383.91 Tm -0 Tw -(has been added or modified since the last release.)Tj -ET -570 391.69 0.99 -11.99 re -f -BT -10 0 0 10 258 364.91 Tm -0.18 Tw -(References to the )Tj -/TT6 1 Tf -9.1692 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.3659 0 TD -[(, or )]TJ -/TT6 1 Tf -2.9983 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.18 Tw -[(, are)]TJ -ET -570 379.69 0.99 -18.99 re -f -BT -10 0 0 10 258 352.91 Tm -0 Tw -(used throughout this manual. )Tj -ET -570 360.69 0.99 -11.99 re -f -2 w -54.01 297.7 m -558.01 297.7 l -S -BT -/TT4 1 Tf -14 0 0 14 54 285.79 Tm -(How to Use The Release Notes)Tj -ET -1 w -54.01 282.2 m -558.01 282.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 262.91 Tm -(The)Tj -/TT6 1 Tf -1.7231 0 TD -0.135 Tw -[( Lisp Release Notes )]TJ -/TT2 1 Tf -10.1799 0 TD -[(contain current information on the Lisp)]TJ -ET -570 281.69 0.99 -22.99 re -f -BT -10 0 0 10 258 250.91 Tm -0.166 Tw -[(environment. The Medley release enhances the Lyric release)]TJ -ET -570 258.69 0.99 -11.99 re -f -BT -10 0 0 10 258 238.91 Tm -0.115 Tw -[(with new features and corrections to over 450 known Lyric bugs.)]TJ -ET -570 246.69 0.99 -11.99 re -f -BT -10 0 0 10 258 226.91 Tm -0.436 Tw -[(Because Medley primarily contains additions to Lyric, these)]TJ -ET -570 234.69 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 214.91 Tm -0.088 Tw -(Release Notes)Tj -/TT2 1 Tf -6.6471 0 TD -[( have been written to include Lyric information that)]TJ -ET -570 222.69 0.99 -11.99 re -f -BT -10 0 0 10 258 202.91 Tm -0 Tw -(applies in Medley. )Tj -ET -570 210.69 0.99 -11.99 re -f -BT -10 0 0 10 258 179.91 Tm -(These)Tj -/TT6 1 Tf -2.7793 0 TD -0.011 Tw -[( Lisp Release Notes )]TJ -/TT2 1 Tf -9.5599 0 TD -[( replace the)]TJ -/TT6 1 Tf -5.2476 0 TD -[( Lyric Release Notes)]TJ -/TT2 1 Tf -9.2591 0 TD -[(. The)]TJ -ET -570 198.69 0.99 -22.99 re -f -BT -10 0 0 10 258 167.91 Tm -0.205 Tw -(descriptions contained within these)Tj -/TT6 1 Tf -16.1243 0 TD -[( Notes )]TJ -/TT2 1 Tf -3.578 0 TD -(are closely interwoven)Tj -ET -570 175.69 0.99 -11.99 re -f -BT -10 0 0 10 258 155.91 Tm -0.394 Tw -(with functions, variables and other concepts discussed in the)Tj -ET -570 163.69 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 143.91 Tm -0.07 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.1459 0 TD -[(, or )]TJ -/TT6 1 Tf -2.5583 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.07 Tw -[(. Chapters 3 and 4 of)]TJ -ET -570 151.69 0.99 -11.99 re -f -BT -10 0 0 10 258 131.91 Tm -0 Tw -(these )Tj -/TT6 1 Tf -2.8541 0 TD -(Notes )Tj -/TT2 1 Tf -3.0201 0 TD -0.13 Tw -(closely parallel the )Tj -/TT6 1 Tf -8.8944 0 TD -0 Tw -(IRM,)Tj -/TT2 1 Tf -2.1108 0 TD -0.13 Tw -[( preserving section headings)]TJ -ET -570 139.69 0.99 -11.99 re -f -BT -10 0 0 10 258 119.91 Tm -0.055 Tw -[(with respect to order and numbering. You might find it helpful to)]TJ -ET -570 127.69 0.99 -11.99 re -f -BT -10 0 0 10 258 107.91 Tm -0.059 Tw -(go through the )Tj -/TT6 1 Tf -6.9045 0 TD -[(Release Notes )]TJ -/TT2 1 Tf -7.2917 0 TD -[( and the )]TJ -/TT6 1 Tf -4.0691 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.059 Tw -[( together, marking the)]TJ -ET -570 115.69 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 95.91 Tm -0 Tw -(IRM )Tj -/TT2 1 Tf -2.1788 0 TD -0.068 Tw -[(sections that have new information. Later when you consult)]TJ -ET -570 103.69 0.99 -11.99 re -f -BT -10 0 0 10 258 83.91 Tm -0 Tw -(the )Tj -/TT6 1 Tf -1.96 0 TD -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.292 Tw -[( you will know which sections require you to read the)]TJ -ET -570 91.69 0.99 -11.99 re -f -BT -10 0 0 10 258 71.91 Tm -0 Tw -(analogous section of the )Tj -/TT6 1 Tf -11.1191 0 TD -( Release Notes )Tj -/TT2 1 Tf -7.3926 0 TD -(. )Tj -ET -570 79.69 0.99 -11.99 re -f -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -14 0 obj -<< -/Length 2189 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 545.78 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xix)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, PREFACE )Tj -45.677 74.479 TD -(PREFACE)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Related Literature)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 702.2 Tm -0.378 Tw -(We recommend that you use the)Tj -/TT6 1 Tf -16.3417 0 TD -[( Lisp Release Notes)]TJ -/TT2 1 Tf -10.0832 0 TD -[( as a)]TJ -ET -570 720.98 0.99 -22.99 re -f -BT -10 0 0 10 258 690.2 Tm -0 Tw -(supplement to the following publications: )Tj -ET -570 697.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 667.2 Tm -0.449 Tw -(Interlisp-D Reference Manual, )Tj -/TT2 1 Tf -15.6354 0 TD -(Volumes I through III,)Tj -/TT6 1 Tf -10.8519 0 TD -0.449 Tc -0 Tw -( )Tj -/TT2 1 Tf -1.4537 0 TD -0 Tc -(Koto)Tj -ET -570 685.98 0.99 -22.99 re -f -BT -10 0 0 10 258 655.2 Tm -(Release, 1985.)Tj -ET -570 662.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 636.2 Tm -0.019 Tw -[(Common Lisp, the Language, )]TJ -/TT2 1 Tf -14.0671 0 TD -[(by Guy L. Steele Jr., Digital Press,)]TJ -ET -570 650.98 0.99 -18.99 re -f -BT -10 0 0 10 258 624.2 Tm -0 Tw -(1984. )Tj -ET -570 631.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 601.2 Tm -(Common Lisp Implementation Notes,)Tj -/TT2 1 Tf -16.4517 0 TD -( Lyric Release, 1987. )Tj -/TT6 1 Tf -10.2275 0 TD -( )Tj -ET -570 619.98 0.99 -22.99 re -f -BT -10 0 0 10 258 582.2 Tm -0.081 Tw -(Lisp Documentation Tools, )Tj -/TT2 1 Tf -12.719 0 TD -[( \(includes )]TJ -/TT6 1 Tf -5.4373 0 TD -[( "A Users Guide to TEdit")]TJ -ET -570 596.98 0.99 -18.99 re -f -BT -10 0 0 10 258 570.2 Tm -0 Tw -(and "A Users Guide to Sketch"\), )Tj -/TT2 1 Tf -15.272 0 TD -(Lyric Release, 1987)Tj -/TT6 1 Tf -9.1162 0 TD -(. )Tj -ET -570 577.98 0.99 -11.99 re -f -BT -10 0 0 10 258 551.2 Tm -( Lisp Library Modules, )Tj -/TT2 1 Tf -10.3379 0 TD -( Medley Release, 1988)Tj -/TT6 1 Tf -10.7842 0 TD -(.)Tj -ET -570 565.98 0.99 -18.99 re -f -BT -10 0 0 10 258 532.2 Tm -(Medley 1.0-S Users Guide, )Tj -/TT2 1 Tf -13.0605 0 TD -( Medley Release, 1988)Tj -/TT6 1 Tf -10.7842 0 TD -(.)Tj -ET -570 546.98 0.99 -52.99 re -f -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -17 0 obj -<< -/Length 341 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xx)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 296.24 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, PREFACE)Tj --24.224 74.479 TD -(PREFACE)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -19 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -20 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -21 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -22 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 31 -/LastChar 149 -/Widths [634 278 634 634 634 634 634 634 634 333 333 634 634 278 333 278 -278 556 556 556 556 556 556 556 556 556 556 278 278 634 634 634 -634 634 667 667 722 722 667 611 778 634 278 500 667 556 833 722 -778 667 634 722 667 611 722 667 944 634 667 634 278 278 278 634 -634 634 556 556 500 556 556 278 556 556 222 634 500 222 833 556 -556 556 556 333 500 278 556 500 722 500 500 500 634 634 634 634 -634 634 634 634 634 634 634 634 634 634 634 634 634 634 634 634 -634 634 634 222 634 634 350 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 19 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 0 722 0 0 0 611 0 722 778 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 0 611 611 278 0 0 278 0 611 611 -0 0 389 556 333 611 556 778 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 20 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 355 0 0 0 0 0 0 333 0 0 278 333 278 0 -556 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 0 778 0 278 0 0 556 833 722 0 -0 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 0 0 0 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 21 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 0 0 0 600 0 0 0 600 0 0 600 600 600 0 -0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 22 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -23 0 obj -<< -/S /D ->> -endobj -24 0 obj -<< -/Nums [0 23 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 13 0 R 16 0 R] -/Count 4 -/MediaBox [0 0 612 792] ->> -endobj -25 0 obj -<< -/CreationDate (D:20210119174402-06'00') -/ModDate (D:20210119174402-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -26 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 24 0 R ->> -endobj -xref -0 27 -0000000000 65535 f -0000018657 00000 n -0000000016 00000 n -0000006299 00000 n -0000016739 00000 n -0000017384 00000 n -0000017806 00000 n -0000015802 00000 n -0000019053 00000 n -0000018737 00000 n -0000006416 00000 n -0000012823 00000 n -0000018297 00000 n -0000018819 00000 n -0000012953 00000 n -0000015195 00000 n -0000018902 00000 n -0000015313 00000 n -0000015706 00000 n -0000015942 00000 n -0000016137 00000 n -0000016343 00000 n -0000016548 00000 n -0000018985 00000 n -0000019013 00000 n -0000019154 00000 n -0000019286 00000 n -trailer -<< -/Size 27 -/Root 26 0 R -/Info 25 0 R -/ID [<43e50fb42e78271ab1e7887d4cf68df0><43e50fb42e78271ab1e7887d4cf68df0>] ->> -startxref -19355 -%%EOF diff --git a/docs/ReleaseNote/PRINTINGSPEC.pdf b/docs/ReleaseNote/PRINTINGSPEC.pdf deleted file mode 100644 index cca4b5d7..00000000 --- a/docs/ReleaseNote/PRINTINGSPEC.pdf +++ /dev/null @@ -1,346 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 1582 ->> -stream -BT -/TT2 1 Tf -14 0 0 14 211.88 709.08 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(PRINTING SPECIFICATIONS)Tj --3.7521 -2 TD -(LISP RELEASE NOTES, MEDLEY RELEASE )Tj -9.3914 -1 TD -(AND)Tj --10.0293 -1 TD -(LISP LIBRARY MODULES, MEDLEY RELEASE)Tj -11.1129 -1 TD -( )Tj -/TT4 1 Tf -12 0 0 12 72 610.64 Tm -(Special Instructions: )Tj -/TT6 1 Tf -10.3911 0 TD -(>>3-hole punch \(error tolerances: + or - 1/16 inch\)<<)Tj -ET -0 G -0 J 0 j 0.75 w 10 M []0 d -1 i -72 585.99 m -72 585.99 l -S -BT -/TT2 1 Tf -14 0 0 14 72 575.08 Tm -(PRINTING)Tj -ET -72 571.99 m -138.89 571.99 l -S -BT -/TT4 1 Tf -12 0 0 12 72 554.64 Tm -(Printing Method: >>)Tj -/TT6 1 Tf -9.6665 0 TD -(offset)Tj -/TT4 1 Tf -2.4458 0 TD -(<<)Tj --12.1123 -2 TD -(Paper Weight: )Tj -/TT6 1 Tf -7.0005 0 TD -(>>60 lb. )Tj -/TT4 1 Tf -3.8921 0 TD -(<<)Tj --10.8926 -2 TD -(Paper Type \(Finish\):)Tj -/TT6 1 Tf -12 0 TD -(>> Matte<<)Tj -/TT4 1 Tf --12 -2 TD -(Paper Color: )Tj -/TT6 1 Tf -9 0 TD -(>>White<<)Tj -/TT4 1 Tf --9 -2 TD -(Paper Texture: )Tj -/TT6 1 Tf -9 0 TD -(>>Smooth<<)Tj -/TT4 1 Tf --9 -2 TD -(Paper Opacity: )Tj -/TT6 1 Tf -9 0 TD -(92 \(no show through\))Tj -/TT4 1 Tf --9 -2 TD -(Paper Size: )Tj -/TT6 1 Tf -5.6689 0 TD -(>>8-1/2 X 11<<)Tj -/TT4 1 Tf --5.6689 -2 TD -(Exceptions \(e.g., oversize diagrams\): )Tj -/TT6 1 Tf -18.1724 0 TD -(>>none)Tj -/TT4 1 Tf -3.3926 0 TD -(<<)Tj -/TT8 1 Tf -8 0 0 8 72 378.79 Tm -( )Tj -/TT4 1 Tf -12 0 0 12 72 366.64 Tm -(Special Instructions: )Tj -/TT6 1 Tf -10.3911 0 TD -(>><<)Tj -/TT4 1 Tf --10.3911 -2 TD -(Number of Pages:)Tj -/TT6 1 Tf -8.5571 0 TD -( >><<)Tj -/TT4 1 Tf --8.5571 -2 TD -( )Tj -/TT2 1 Tf -14 0 0 14 72 305.08 Tm -(PAPER )Tj -ET -72 301.99 m -128.02 301.99 l -S -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -10 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -11 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -12 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -13 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 10 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 0 278 0 -0 0 0 0 0 0 0 0 0 0 333 0 584 0 584 0 -0 0 0 722 0 667 611 0 0 278 0 0 0 833 722 778 -667 0 0 667 611 0 0 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 0 556 556 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 11 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [278 0 0 0 0 0 0 0 333 333 0 584 0 333 278 278 -556 556 556 556 0 0 556 0 556 556 278 0 584 0 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 0 -0 0 0 667 0 0 0 944 667 0 0 0 0 0 0 0 -0 556 556 500 0 556 278 556 556 222 0 0 222 833 556 556 -556 0 333 500 278 556 0 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 12 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 13 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -14 0 obj -<< -/S /D ->> -endobj -15 0 obj -<< -/Nums [0 14 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R] -/Count 1 -/MediaBox [0 0 612 792] ->> -endobj -16 0 obj -<< -/CreationDate (D:20210119174402-06'00') -/ModDate (D:20210119174402-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -17 0 obj -<< -/Type /Catalog -/Pages 9 0 R -/PageLabels 15 0 R ->> -endobj -xref -0 18 -0000000000 65535 f -0000004077 00000 n -0000000016 00000 n -0000001650 00000 n -0000002725 00000 n -0000003050 00000 n -0000003493 00000 n -0000003914 00000 n -0000001778 00000 n -0000004225 00000 n -0000001918 00000 n -0000002124 00000 n -0000002339 00000 n -0000002534 00000 n -0000004157 00000 n -0000004185 00000 n -0000004306 00000 n -0000004438 00000 n -trailer -<< -/Size 18 -/Root 17 0 R -/Info 16 0 R -/ID [] ->> -startxref -4507 -%%EOF diff --git a/docs/ReleaseNote/SEC1-INTRODUCTION.pdf b/docs/ReleaseNote/SEC1-INTRODUCTION.pdf deleted file mode 100644 index 023e50fc..00000000 --- a/docs/ReleaseNote/SEC1-INTRODUCTION.pdf +++ /dev/null @@ -1,739 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5511 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj -/TT4 1 Tf -18 0 0 18 258 762.97 Tm -[(1.)-8166(INTRODUCTION)]TJ -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 718.2 Tm -(The)Tj -/TT6 1 Tf -1.7231 0 TD -0.177 Tw -[( Lisp Release Notes)]TJ -/TT2 1 Tf -9.4802 0 TD -[( contain information from both the Lyric)]TJ -ET -570 732.98 0.99 -18.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.104 Tw -[(and Medley releases, including descriptions of all Lyric bug fixes.)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.327 Tw -[(Medley additions are indicated with revision bars in the right)]TJ -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0 Tw -(margin. )Tj -ET -570 689.98 0.99 -11.99 re -f -2 w -54.01 626.99 m -558.01 626.99 l -S -570 677.98 0.99 -51.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 615.08 Tm -(Summary of Medley Changes )Tj -ET -570 625.98 0.99 -13.99 re -f -1 w -54.01 611.49 m -558.01 611.49 l -S -570 611.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 579.2 Tm -0.093 Tw -[(The Medley release is currently provided on two platforms, Xerox)]TJ -ET -570 610.98 0.99 -35.99 re -f -BT -10 0 0 10 258 567.2 Tm -0.641 Tw -[(1100 series workstations using Medley 1.0, and Sun 3)]TJ -ET -570 574.98 0.99 -11.99 re -f -BT -10 0 0 10 258 555.2 Tm -0.1098 Tw -[(workstations using Medley 1.0-S. Medley 1.0 and Medley 1.0-S)]TJ -ET -570 562.98 0.99 -11.99 re -f -BT -10 0 0 10 258 543.2 Tm -0.029 Tw -(are compatible with each other and will let you develop software on)Tj -ET -570 550.98 0.99 -11.99 re -f -BT -10 0 0 10 258 531.2 Tm -0.419 Tw -[(either platform. Source and compiled files are transferable)]TJ -ET -570 538.98 0.99 -11.99 re -f -BT -10 0 0 10 258 519.2 Tm -0.596 Tw -[(between the two platforms. Sysouts developed on Xerox)]TJ -ET -570 526.98 0.99 -11.99 re -f -BT -10 0 0 10 258 507.2 Tm -0.062 Tw -[(workstations can also be run on the Sun 3. Sysouts made on the)]TJ -ET -570 514.98 0.99 -11.99 re -f -BT -10 0 0 10 258 495.2 Tm -0 Tw -(Sun 3, however, cannot be run on Xerox workstations. )Tj -ET -570 502.98 0.99 -11.99 re -f -BT -10 0 0 10 258 459.2 Tm -0.054 Tw -[(The Medley release enhances the Lyric release and fixes over 450)]TJ -ET -570 490.98 0.99 -35.99 re -f -BT -10 0 0 10 258 447.2 Tm -0.024 Tw -[(known Lyric bugs. Medley adds new features, improves Common)]TJ -ET -570 454.98 0.99 -11.99 re -f -BT -10 0 0 10 258 435.2 Tm -0.13 Tw -[(Lisp implementation, and improves overall reliability of the Lisp)]TJ -ET -570 442.98 0.99 -11.99 re -f -BT -10 0 0 10 258 423.2 Tm -0 Tw -(sysout. Specific enhancements include: )Tj -ET -570 430.98 0.99 -11.99 re -f -BT -10 0 0 10 258 404.2 Tm -0.522 Tw -[()-1449.9(The COMPILER contains many added optimizations and)]TJ -ET -570 418.98 0.99 -18.99 re -f -BT -10 0 0 10 276 392.2 Tm -0 Tw -(numerous bug fixes. )Tj -ET -570 399.98 0.99 -11.99 re -f -BT -10 0 0 10 258 373.2 Tm -0.423 Tw -[()-1449.9(The DEBUGGER evaluates lexical variables. Lexical)]TJ -ET -570 387.98 0.99 -18.99 re -f -BT -10 0 0 10 276 361.2 Tm -0 Tw -(variables can now be contained in interpreted code. )Tj -ET -570 368.98 0.99 -11.99 re -f -BT -10 0 0 10 258 342.2 Tm -0.212 Tw -[()-1449.9(DFASL files now behave at the level of Interlisp-D compiled)]TJ -ET -570 356.98 0.99 -18.99 re -f -BT -10 0 0 10 276 330.2 Tm -0.229 Tw -[(files. COMS are contained in DFASLs so that the system)]TJ -ET -570 337.98 0.99 -11.99 re -f -BT -10 0 0 10 276 318.2 Tm -0 Tw -(loads a DFASL file only once. )Tj -ET -570 325.98 0.99 -11.99 re -f -BT -10 0 0 10 258 299.2 Tm -0.09 Tw -[()-1449.9(The SEDIT code editor is more robust and better integrated)]TJ -ET -570 313.98 0.99 -18.99 re -f -BT -10 0 0 10 276 287.2 Tm -0 Tw -(with the environment. )Tj -ET -570 294.98 0.99 -11.99 re -f -BT -10 0 0 10 258 268.2 Tm -0.045 Tw -[()-1449.9(Common Lisp comments are preserved during loading. During)]TJ -ET -570 282.98 0.99 -18.99 re -f -BT -10 0 0 10 276 256.2 Tm -0 Tw -(MAKEFILE, comments can be written out with just semicolons. )Tj -ET -570 263.98 0.99 -11.99 re -f -BT -10 0 0 10 258 237.2 Tm -0.047 Tw -[()-1449.9(The new ERROR SYSTEM is compatible with the most recent)]TJ -ET -570 251.98 0.99 -18.99 re -f -BT -10 0 0 10 276 225.2 Tm -0 Tw -(standard defined for Common Lisp error systems. )Tj -ET -570 232.98 0.99 -11.99 re -f -BT -10 0 0 10 258 206.2 Tm -[()-1449.9(TEdit contains numerous bug fixes.)]TJ -ET -570 220.98 0.99 -18.99 re -f -BT -10 0 0 10 258 187.2 Tm -0.738 Tw -[()-1449.9(MASTERSCOPE contains Common Lisp query support)]TJ -ET -570 201.98 0.99 -18.99 re -f -BT -10 0 0 10 276 175.2 Tm -0.175 Tw -(allowing you to ask questions about Common Lisp code that)Tj -ET -570 182.98 0.99 -11.99 re -f -BT -10 0 0 10 276 163.2 Tm -0.074 Tw -[(could previously be asked only of Interlisp-D code. Currently,)]TJ -ET -570 170.98 0.99 -11.99 re -f -BT -10 0 0 10 276 151.2 Tm -0.646 Tw -(questions specific to Common Lisp constructs are not)Tj -ET -570 158.98 0.99 -11.99 re -f -BT -10 0 0 10 276 139.2 Tm -0 Tw -(supported. )Tj -ET -570 146.98 0.99 -11.99 re -f -BT -10 0 0 10 258 120.2 Tm -0.169 Tw -[()-1449.9(RS232 contains may bug fixes that improve the reliability of)]TJ -ET -570 134.98 0.99 -18.99 re -f -BT -10 0 0 10 276 108.2 Tm -0 Tw -(data transfer and the addition of various debugging tools. )Tj -ET -570 115.98 0.99 -11.99 re -f -BT -10 0 0 10 258 89.2 Tm -0.366 Tw -[( TCP/IP now contains many bug fixes including UNIX file)]TJ -ET -570 103.98 0.99 -18.99 re -f -BT -10 0 0 10 276 77.2 Tm -0 Tw -(interface and directory enumeration. )Tj -ET -570 84.98 0.99 -11.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 2079 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 266.81 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj --21.281 74.479 TD -(1. INTRODUCTION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -( A new System Tool lets you fetch sysouts from TCP hosts.)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 711.2 Tm -[()-1449.9(NS Random Access is now supported. )]TJ -ET -570 725.98 0.99 -18.99 re -f -BT -10 0 0 10 258 692.2 Tm -0.053 Tw -[()-1449.9(A)0( new File Browser user interface now supports file sorting by)]TJ -ET -570 706.98 0.99 -18.99 re -f -BT -10 0 0 10 276 680.2 Tm -0.016 Tw -[(dates. The new interface includes the ability to stop in the)]TJ -ET -570 687.98 0.99 -11.99 re -f -BT -10 0 0 10 276 668.2 Tm -0 Tw -(middle of operations.)Tj -ET -570 675.98 0.99 -11.99 re -f -BT -10 0 0 10 258 649.2 Tm -( The Medley sysout is about the same size as the Lyric sysout.)Tj -ET -570 663.98 0.99 -18.99 re -f -BT -10 0 0 10 258 613.2 Tm -0.096 Tw -[(In addition, Medley on the Sun 3 workstation offers the following)]TJ -ET -570 644.98 0.99 -35.99 re -f -BT -10 0 0 10 258 601.2 Tm -0 Tw -(new features:)Tj -ET -570 608.98 0.99 -11.99 re -f -BT -10 0 0 10 258 582.2 Tm -0.04 Tw -[()-1449.9(The UnixChat library module allows you to communicate with a)]TJ -ET -570 596.98 0.99 -18.99 re -f -BT -10 0 0 10 276 570.2 Tm -0 Tw -(UNIX shell on your own host. )Tj -ET -570 577.98 0.99 -11.99 re -f -BT -10 0 0 10 258 551.2 Tm -0.011 Tw -[( The UnixComm library module allows you to start a Unix process)]TJ -ET -570 565.98 0.99 -18.99 re -f -BT -10 0 0 10 276 539.2 Tm -0.072 Tw -[(on a Sun workstation and provides an interface to the SunOS)]TJ -ET -570 546.98 0.99 -11.99 re -f -BT -10 0 0 10 276 527.2 Tm -0 Tw -(operating system. )Tj -ET -570 534.98 0.99 -11.99 re -f -BT -10 0 0 10 258 508.2 Tm -0.08 Tw -[()-1449.9(The ability to suspend Medley and use UNIX as a background)]TJ -ET -570 522.98 0.99 -18.99 re -f -BT -10 0 0 10 276 496.2 Tm -0 Tw -(process is provided. )Tj -ET -570 503.98 0.99 -11.99 re -f -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 353 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj -41.622 74.479 TD -(1. INTRODUCTION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -15 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -16 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -17 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 278 -556 556 556 556 556 556 0 0 0 0 278 0 0 0 0 0 -0 667 667 722 722 667 611 778 0 278 0 667 556 833 722 778 -667 0 722 667 611 722 0 0 667 667 0 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 350 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 15 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 722 0 0 0 0 278 0 0 0 833 722 778 -0 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 0 0 611 556 333 611 611 0 0 0 278 889 611 611 -0 0 389 556 0 611 0 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 16 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 556 0 722 0 -0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 556 0 0 0 556 0 0 0 222 0 0 222 0 0 556 -556 0 0 500 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 17 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -18 0 obj -<< -/S /D ->> -endobj -19 0 obj -<< -/Nums [0 18 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R] -/Count 3 -/MediaBox [0 0 612 792] ->> -endobj -20 0 obj -<< -/CreationDate (D:20210119174403-06'00') -/ModDate (D:20210119174403-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -21 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 19 0 R ->> -endobj -xref -0 22 -0000000000 65535 f -0000010473 00000 n -0000000016 00000 n -0000005579 00000 n -0000009171 00000 n -0000009698 00000 n -0000010104 00000 n -0000008425 00000 n -0000010786 00000 n -0000010553 00000 n -0000005696 00000 n -0000007828 00000 n -0000010635 00000 n -0000007924 00000 n -0000008329 00000 n -0000008565 00000 n -0000008760 00000 n -0000008966 00000 n -0000010718 00000 n -0000010746 00000 n -0000010880 00000 n -0000011012 00000 n -trailer -<< -/Size 22 -/Root 21 0 R -/Info 20 0 R -/ID [] ->> -startxref -11081 -%%EOF diff --git a/docs/ReleaseNote/SEC2-NOTES-AND-CAUTIONS.pdf b/docs/ReleaseNote/SEC2-NOTES-AND-CAUTIONS.pdf deleted file mode 100644 index d36ea9d2..00000000 --- a/docs/ReleaseNote/SEC2-NOTES-AND-CAUTIONS.pdf +++ /dev/null @@ -1,1346 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5172 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, NOTES AND CAUTIONS)Tj -/TT4 1 Tf -18 0 0 18 258 762.97 Tm -[(2.)-4442.1(NOTES AND CAUTIONS)]TJ -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 721.2 Tm -0.199 Tw -(This section contains notes and cautions that apply in Lyric and)Tj -ET -570 752.98 0.99 -35.99 re -f -BT -10 0 0 10 258 709.2 Tm -0.064 Tw -[(Medley. Medley notes are indicated with revision bars in the right)]TJ -ET -570 716.98 0.99 -11.99 re -f -BT -10 0 0 10 258 697.2 Tm -0.194 Tw -[(margin. Text shown with StrikeThru)]TJ -ET -0.75 w -381.07 700.53 m -427.19 700.53 l -S -BT -10 0 0 10 427.19 697.2 Tm -[( is that information from the)]TJ -ET -570 704.98 0.99 -11.99 re -f -BT -10 0 0 10 258 685.2 Tm -0 Tw -(Lyric release that no longer applies. )Tj -ET -570 692.98 0.99 -11.99 re -f -2 w -54.01 629.99 m -558.01 629.99 l -S -570 680.98 0.99 -51.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 618.08 Tm -(Changes and Cautions in the Medley Release )Tj -ET -570 628.98 0.99 -13.99 re -f -1 w -54.01 614.49 m -558.01 614.49 l -S -570 614.98 0.99 -14.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 585.2 Tm -0.136 Tw -[()-1449.9(The Medley Release is currently provided on two platforms,)]TJ -ET -570 599.98 0.99 -18.99 re -f -BT -10 0 0 10 276 573.2 Tm -0.662 Tw -(the Xerox 1100 series workstations and selected Sun)Tj -ET -570 580.98 0.99 -11.99 re -f -BT -10 0 0 10 276 561.2 Tm -0.206 Tw -[(workstations. File structure for the 1108/09/86 remains the)]TJ -ET -570 568.98 0.99 -11.99 re -f -BT -10 0 0 10 276 549.2 Tm -0.344 Tw -[(same. For Sun workstations, UNIX file structure is)]TJ -ET -570 556.98 0.99 -11.99 re -f -BT -10 0 0 10 276 537.2 Tm -0 Tw -(supported. See the)Tj -/TT6 1 Tf -9.2842 0 TD -( Medley 1.0-S Users Guide)Tj -/TT2 1 Tf -12.5049 0 TD -( for details. )Tj -ET -570 544.98 0.99 -11.99 re -f -BT -10 0 0 10 258 518.2 Tm -0.2079 Tw -[()-1449.9(Files compiled in Medley cannot be loaded back into Lyric.)]TJ -ET -570 532.98 0.99 -18.99 re -f -BT -10 0 0 10 276 506.2 Tm -0.274 Tw -[(Medley-compiled .LCOM and .DFASL files will produce an)]TJ -ET -570 513.98 0.99 -11.99 re -f -BT -10 0 0 10 276 494.2 Tm -0.021 Tw -[(error message when loaded into Lyric. \(Lyric-compiled .LCOM)]TJ -ET -570 501.98 0.99 -11.99 re -f -BT -10 0 0 10 276 482.2 Tm -0.098 Tw -[(and .DFASL files can be loaded and run in Medley.\) If you)]TJ -ET -570 489.98 0.99 -11.99 re -f -BT -10 0 0 10 276 470.2 Tm -0.053 Tw -[(need to run a Medley file in Lyric, load the source file and use)]TJ -ET -570 477.98 0.99 -11.99 re -f -BT -10 0 0 10 276 458.2 Tm -0 Tw -(the Lyric compiler.)Tj -ET -570 465.98 0.99 -11.99 re -f -BT -10 0 0 10 258 439.2 Tm -0.114 Tw -[()-1449.9(SEdit and definers now support four-semicolon and balanced)]TJ -ET -570 453.98 0.99 -18.99 re -f -BT -10 0 0 10 276 427.2 Tm -0.048 Tw -[(comments. Print support for these new types of comments is)]TJ -ET -570 434.98 0.99 -11.99 re -f -BT -10 0 0 10 276 415.2 Tm -0.225 Tw -[(also provided. For details, see "TextModules" in the )]TJ -/TT6 1 Tf -26.3632 0 TD -0 Tw -(Lisp)Tj -ET -570 422.98 0.99 -11.99 re -f -BT -10 0 0 10 276 403.2 Tm -0.226 Tw -(Library Modules )Tj -/TT2 1 Tf -7.8441 0 TD -[(manual, and "SEdit" in Appendix B of this)]TJ -ET -570 410.98 0.99 -11.99 re -f -BT -10 0 0 10 276 391.2 Tm -0 Tw -(manual. )Tj -ET -570 398.98 0.99 -11.99 re -f -BT -10 0 0 10 258 372.2 Tm -[()-1449.9(Medley and Lyric can both be installed on one machine. )]TJ -ET -570 386.98 0.99 -18.99 re -f -2 w -54.01 316.99 m -558.01 316.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 305.08 Tm -(Changes and Cautions in the Lyric Release )Tj -ET -1 w -54.01 301.49 m -558.01 301.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 267.2 Tm -[()-1449.9(Koto and Lyric cannot both be supported on one machine.)]TJ -0 -1.9 TD -0.323 Tw -[()-1449.9(You must have Services 10.0 installed on your printers to)]TJ -1.8 -1.2 TD -0 Tw -(correctly print TEdit files.)Tj --1.8 -1.9 TD -0.27 Tw -[()-1449.9(Interlisp DMACROs are not visible to Common Lisp. If a)]TJ -1.8 -1.2 TD -0.002 Tw -(symbol has both a function definition and a DMACRO property,)Tj -T* -(the compiler assumes that the DMACRO is an optimizer for the)Tj -T* -0 Tw -(old Interlisp compiler and ignores it.)Tj --1.8 -1.9 TD -0.399 Tw -[()-1449.9(The Common Lisp functions found in )]TJ -/TT6 1 Tf -20.7584 0 TD -(Common Lisp, The)Tj --18.9585 -1.2 TD -0 Tw -(Language,)Tj -/TT2 1 Tf -4.7271 0 TD -0.0001 Tc -0.0049 Tw -( section 25.4.2, "Other environmental Inquiries" \(e.g.,)Tj --4.7271 -1.2 TD -0 Tc -0.339 Tw -(LISP-IMPLEMENTATION-TYPE\) are in the COMMON LISP)Tj -T* -0 Tw -(\(CL:\) package.)Tj --1.8 -1.9 TD -0.027 Tw -[()-1449.9(Both Medley and Lyric use the new type of Executive, and both)]TJ -ET -570 121.98 0.99 -18.99 re -f -BT -10 0 0 10 276 95.2 Tm -0.614 Tw -(sysouts contain the ability to spawn multiple executive)Tj -ET -570 102.98 0.99 -11.99 re -f -BT -10 0 0 10 276 83.2 Tm -0.489 Tw -[(processes. The default executive is Common Lisp, not)]TJ -ET -570 90.98 0.99 -11.99 re -f -BT -10 0 0 10 276 71.2 Tm -0.123 Tw -[(Interlisp. The old Executive \(the "Programmers Assistant"\) is)]TJ -ET -570 78.98 0.99 -11.99 re -f -BT -10 0 0 10 276 59.2 Tm -0 Tw -(not available in Medley. )Tj -ET -570 66.98 0.99 -11.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 4105 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 230.68 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, NOTES AND CAUTIONS)Tj --17.668 74.479 TD -(2. NOTES AND CAUTIONS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 276 730.2 Tm -0.089 Tw -(You should be particularly careful in the new Executives when)Tj -0 -1.2 TD -0.324 Tw -(typing file names, as some file name delimiters now have)Tj -T* -0.113 Tw -[(syntactic significance in the new readtables. In particular, the)]TJ -T* -0.108 Tw -(character colon \(:\) used in NS file server names is a package)Tj -T* -0.012 Tw -[(delimiter in all new Executives, and the version delimiter semi-)]TJ -T* -0.528 Tw -(colon \(;\) is a comment character in the Common Lisp)Tj -T* -0.089 Tw -[(Executives. If you type a file name in the form of a symbol to)]TJ -T* -0.146 Tw -(an Exec, you must escape the special characters, or use the)Tj -T* -0.468 Tw -[(multiple escape character around the whole name. For)]TJ -T* -0 Tw -(example, in a Common Lisp Exec you might type)Tj -3 -1.9 TD -({FS\\:Me\\:Company}Stuff.tedit\\;3)Tj -10.8 -1.9 TD -(or)Tj --10.8 -1.9 TD -( |{FS:Me:Company}Stuff.tedit;3|,)Tj --3 -1.9 TD -0.007 Tw -(which are equivalent, except that the former is read as all upper)Tj -0 -1.2 TD -0.377 Tw -[(case \(Common Lisp Execs read case-insensitively\). This)]TJ -T* -0.162 Tw -(caution should also be noted when copy-selecting file names)Tj -T* -0 Tw -(out of a File Browser.)Tj -0 -1.9 TD -0.509 Tw -(It is recommended that you type file names as strings)Tj -0 -1.2 TD -0.297 Tw -(whenever possible, as virtually all system interfaces accept)Tj -T* -0.454 Tw -[(strings instead of symbols. Two notable exceptions are)]TJ -T* -0.21 Tw -(MAKEFILE and TEDIT, which require symbols when naming)Tj -T* -0 Tw -(files.)Tj -0 -1.9 TD -0.274 Tw -(These escaping rules apply )Tj -/TT6 1 Tf -13.5477 0 TD -0 Tw -(only)Tj -/TT2 1 Tf -1.8345 0 TD -0.274 Tw -[( to file names typed to an)]TJ --15.3821 -1.2 TD -0.158 Tw -[(Executive \(or in general, a Lisp reader\). Individual tools that)]TJ -T* -0.145 Tw -(prompt for a file name read the name as a string, so escape)Tj -T* -0.141 Tw -[(characters need not \(and should not\) be typed. In particular,)]TJ -T* -0.113 Tw -(this is true for the prompt windows of TEdit and File Browser,)Tj -T* -0.087 Tw -(and the prompt for an Init file when a system with no local Init)Tj -T* -0 Tw -(file is started up.)Tj --1.8 -1.9 TD -0.379 Tw -[()-1449.9(A)0( new error system, based on the current Common Lisp)]TJ -1.8 -1.2 TD -0.527 Tw -(proposed error standard, replaces the old Interlisp error)Tj -T* -0 Tw -(system.)Tj --1.8 -1.9 TD -0.004 Tw -[()-1449.9(The )]TJ -/TT4 1 Tf -4.0868 0 TD -0 Tw -(!EVAL)Tj -/TT2 1 Tf -3.0002 0 TD -0.0001 Tc -0.0039 Tw -( debugger command no longer exists and the = and)Tj --5.287 -1.2 TD -0 Tc -0 Tw -(-> break commands are no longer supported..)Tj --1.8 -1.9 TD -0.027 Tw -[()-1449.9(The function )]TJ -/TT4 1 Tf -7.6353 0 TD -0 Tw -(ERRORN)Tj -/TT2 1 Tf -4.3328 0 TD -0.027 Tw -[( no longer exists and )]TJ -/TT4 1 Tf -9.6409 0 TD -0 Tw -(ERRORTYPELIST)Tj -/TT2 1 Tf --19.8089 -1.2 TD -0.024 Tw -[(is no longer supported. See Chapter 3, Common Lisp /Interlisp)]TJ -T* -0.177 Tw -[(Integration, section 14.10 "Error List" for Interlisp errors that)]TJ -T* -0 Tw -(are no longer supported.)Tj --1.8 -1.9 TD -0.027 Tw -[()-1449.9(The Lyric release contained a new compiler and compiled code)]TJ -1.8 -1.2 TD -0.093 Tw -[(format, .DFASL \(FASt Loading\) files. The old compiler is still)]TJ -T* -0.49 Tw -(available and produces files in the old format, but with)Tj -T* -0.225 Tw -[(extension .LCOM. The old compiler will not be available in)]TJ -T* -0 Tw -(future releases.)Tj --1.8 -1.9 TD -0.03 Tw -[()-1449.9(Files produced by the Lyric File Manager cannot be loaded into)]TJ -1.8 -1.2 TD -0.024 Tw -[(previous releases of the system. Files compiled in Koto cannot)]TJ -T* -0 Tw -(be loaded into Lyric.)Tj --1.8 -1.9 TD -0.136 Tw -[()-1449.9(SETQ from the exec does not interact with the File Manager,)]TJ -1.8 -1.2 TD -0.365 Tw -(nor does it print \(var reset\) \(except in the "Programmers)Tj -T* -0 Tw -(Assistant"\).)Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 4838 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, NOTES AND CAUTIONS)Tj -38.009 74.479 TD -(2. NOTES AND CAUTIONS )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.19 Tw -[()-1449.9(DWIM/CLISP: CLISP infix is no longer fully supported; users)]TJ -1.8 -1.2 TD -0.447 Tw -(should dwimify old Koto code before running it in Lyric.)Tj -T* -0.15 Tw -(Additionally, WITH constructs using ")Tj -/TT7 1 Tf -16.9608 0 TD -0 Tw -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -0.15 Tw -(" and BIND constructs)Tj --17.9477 -1.2 TD -0 Tw -(in the form of an atom A)Tj -/TT7 1 Tf -10.6719 0 TD -<0040>Tj -/TT2 1 Tf -0.9868 0 TD -(B need to be dwimified. )Tj --13.4587 -1.9 TD -0.125 Tw -[()-1449.9(The functions BREAKDOWN and BRKDWNRESULTS as well)]TJ -1.8 -1.2 TD -0.199 Tw -(as the variables, BRKDWNTYPE and BRKDWNTYPES have)Tj -T* -0.027 Tw -[(been removed from the environment. The Lisp Library Module,)]TJ -T* -0 Tw -(SPY supersedes BREAKDOWN.)Tj --1.8 -1.9 TD -0.083 Tw -[()-1449.9(The file system supports having multiple streams opened on a)]TJ -1.8 -1.2 TD -0.369 Tw -[(single file at one time. This means that the input/output)]TJ -T* -0.4 Tw -(functions accept only streams as arguments, not symbols)Tj -T* -0.503 Tw -[(naming files. This has several implications for Interlisp)]TJ -T* -0.232 Tw -(programmers, one being that the function )Tj -/TT4 1 Tf -19.9584 0 TD -0 Tw -(CLOSEALL)Tj -/TT2 1 Tf -5.3887 0 TD -0.232 Tw -[( is no)]TJ --25.3471 -1.2 TD -0.837 Tw -[(longer implemented. See the Chapter 3, Common)]TJ -T* -0 Tw -(Lisp/Interlisp Integration, Streams and Files section, for details. )Tj --1.8 -1.9 TD -0.392 Tw -[()-1449.9(Windows cannot be used interchangeably with streams in)]TJ -1.8 -1.2 TD -0.15 Tw -[(Common Lisp functions. If you need to use a window in the)]TJ -T* -0.424 Tw -(middle of a Common Lisp function, use \(IL:GETSTREAM)Tj -T* -0 Tw -(window\) to get the associated display stream.)Tj --1.8 -1.9 TD -0.269 Tw -[()-1449.9(Loading CPM-format floppies is very slow in Lyric. CPM-)]TJ -1.8 -1.2 TD -0 Tw -(format floppies are not supported in Medley. )Tj --1.8 -1.9 TD -0.725 Tw -[()-1449.9(The default Interlisp readtable has been modified for)]TJ -1.8 -1.2 TD -0.25 Tw -[(compatibility with Common Lisp. The characters colon \(:\),)]TJ -T* -0.087 Tw -[(hash \(#\) and vertical bar \(|\) have different meaning. The File)]TJ -T* -0.231 Tw -(Manager gives a choice of reader environments in which to)Tj -T* -0 Tw -(write files, and remembers which one was used for each file. )Tj --1.8 -1.9 TD -0.115 Tw -[()-1449.9(READ/PRINT consistency: Old Interlisp code that used )]TJ -/TT4 1 Tf -27.1709 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf --25.3709 -1.2 TD -(and )Tj -/TT4 1 Tf -2.3383 0 TD -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.392 Tw -[( without being careful about using a particular)]TJ --5.3383 -1.2 TD -0 Tw -(readtable may need to be fixed. )Tj --1.8 -1.9 TD -0.059 Tw -[()-1449.9(The Interlisp function )]TJ -/TT4 1 Tf -11.5375 0 TD -0 Tw -(SKREAD)Tj -/TT2 1 Tf -4.2227 0 TD -0.059 Tw -[( defaults its readtable argument)]TJ --13.9602 -1.2 TD -0.322 Tw -(to the current readtable, viz., the value of )Tj -/TT4 1 Tf -20.9754 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -(,)Tj --27.9202 -1.2 TD -(rather than )Tj -/TT4 1 Tf -5.1143 0 TD -(FILERDTBL)Tj -/TT2 1 Tf -5.5547 0 TD -(. )Tj --12.4689 -1.9 TD -0.56 Tw -[()-1449.9(FREEMENU and ICONW, formerly Library modules, are)]TJ -1.8 -1.2 TD -0 Tw -(included in the Lisp.sysout in Lyric and Medley. )Tj --1.8 -1.9 TD -0.155 Tw -[()-1449.9(The Lyric Lisp editor, SEdit, has been modified in Medley.)]TJ -ET -570 273.98 0.99 -18.99 re -f -BT -10 0 0 10 276 247.2 Tm -0 Tw -(DEdit is now a library module. )Tj -ET -570 254.98 0.99 -11.99 re -f -BT -10 0 0 10 258 228.2 Tm -0.128 Tw -[()-1449.9(Revised fonts: Lyric revised the naming convention for font)]TJ -1.8 -1.2 TD -0.586 Tw -(files, and printer width files had corrected line leading)Tj -T* -0.28 Tw -[(information. Old Koto fonts can still be used, but you are)]TJ -ET -0.75 w -339.4 207.53 m -558.04 207.53 l -S -BT -10 0 0 10 276 192.2 Tm -0.015 Tw -(encouraged to start using the new fonts as soon as practicable. )Tj -ET -276 195.53 m -563.51 195.53 l -S -BT -10 0 0 10 276 180.2 Tm -0 Tw -(Medley and Lyric fonts are completely compatible. )Tj -ET -503.31 183.53 m -503.31 183.53 l -S -BT -10 0 0 10 258 161.2 Tm -0.011 Tw -[()-1449.9(Lyric image objects are now stored on files in a way that cannot)]TJ -1.8 -1.2 TD -0.128 Tw -(always be read into Koto. \(Lyric, on the other hand, can read)Tj -T* -0.093 Tw -[(Koto image objects.\) This means, for example, that you may)]TJ -T* -0.108 Tw -[(not be able to share TEdit files or sketches containing image)]TJ -T* -0 Tw -(objects between Koto and Lyric.)Tj --1.8 -1.9 TD -0.538 Tw -[()-1449.9(The field names for the CURSOR datatype have been)]TJ -1.8 -1.2 TD -0 Tw -(changed. )Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT7 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -17 0 obj -<< -/Length 2148 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 230.68 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, NOTES AND CAUTIONS)Tj --17.668 74.479 TD -(2. NOTES AND CAUTIONS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.967 Tw -[()-1449.9(Masterscope has been removed from the standard)]TJ -1.8 -1.2 TD -0.27 Tw -[(environment. If you wish to use it, load the Masterscope)]TJ -T* -0 Tw -(Library module.)Tj --1.8 -1.9 TD -0.601 Tw -[()-1449.9(Pattern matching is no longer a part of the standard)]TJ -1.8 -1.2 TD -0.008 Tw -[(environment. Pattern matching can be found in the Lisp Library)]TJ -T* -0 Tw -(Module, Match.)Tj --1.8 -1.9 TD -0.158 Tw -[()-1449.9(PRESS fonts are not part of the standard Lisp environment.)]TJ -1.8 -1.2 TD -0 Tw -(PRESS is now available as a Library Module.)Tj --1.8 -1.9 TD -0.224 Tw -[()-1449.9(In Lyric, the Library module TCP/IP does not work on 1186)]TJ -1.8 -1.2 TD -0.051 Tw -(workstations that have )Tj -/TT6 1 Tf -10.3805 0 TD -0 Tw -(both)Tj -/TT2 1 Tf -1.9463 0 TD -0.051 Tw -[( IOPs with part number 140K03030)]TJ -/TT6 1 Tf --12.3268 -1.2 TD -0 Tw -(and)Tj -/TT2 1 Tf -1.6685 0 TD -0.109 Tw -[( "old" ROMs. The problem is not with the IOP board per)]TJ --1.6685 -1.2 TD -0.3 Tw -[(se, rather its a problem with the IOPs ROMs. If TCP/IP)]TJ -T* -0.141 Tw -(doesnt work on your 1186 you should check your IOP board)Tj -T* -0.066 Tw -[(revision. If you have the old IOP you may need to replace the)]TJ -T* -0.454 Tw -(ROMs before you can use TCP/IP, contact your service)Tj -T* -0 Tw -(representative.)Tj -0 -1.9 TD -(TCP/IP does work with newer IOPspart number 140K05560.)Tj -T* -0.169 Tw -(If you attempt to Teleraid a Lyric sysout from a Koto sysout,)Tj -0 -1.2 TD -0 Tw -(you should be aware of the following:)Tj -0 -1.9 TD -0.536 Tw -[(1.)-2166(All symbols will be read as if they were in the)]TJ -0 -1.2 TD -0.093 Tw -(INTERLISP package and you can only type a subset of the IL)Tj -T* -0 Tw -(symbols to it.)Tj -0 -1.9 TD -0.541 Tw -[(2.)-2166(Teleraid will not understand certain Common Lisp)]TJ -0 -1.2 TD -0 Tw -(datatypes, such as CHARACTER and strings.)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -20 0 obj -<< -/Length 362 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, NOTES AND CAUTIONS)Tj -38.009 74.479 TD -(2. NOTES AND CAUTIONS )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally blank])Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -22 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -23 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -24 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -25 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIKLJL+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 26 0 R ->> -endobj -26 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`Bi Cs}`flh@ _4H#ZKS))R &EEZ>*R -B1MO3{s}ͼ ُފ T{I(t86P,ˑ\GZ}cʵʐZ#wT ر%DžA=ax8b&׹K },aUN״X@fTDIţ8_s#TJ|AF.n*Z6e-sQiR6U#^x偲uep8VRH} -a>) @o lEϐܛ( Le `&2d&cqX'|2[ \ܹo8\Δky'4kXXh l\lcKl\jm\fcm\aJWٸZqkm|ƧmG6m|6qsjBD7T-Q TҨa E(t%`D5RY(F h &WPU" t%ވ+Az3M)Q!.KL7-AWT0V"iN鯥05F`N;][HB3ոV[~tfmUтj(;4jn5H/W<EGIgH5MŀXf-I;e4@*hУy)nhÖ?%SAU^_@Mgw3g[E5d5~̧v>ExQsO!&| ?*c"c(>FCn:D5\W*6իrհa_p>&H#>oD|&(W0fF3[|ѴDl9=ڠ_cr,XwY"~›-KNfYtB-$6Bx{@IF"cϰQ6?Kh\/{3Q3A_J~QR!5xoecNjƲ#.vٝL~lj4a4هlSmݮ8M~r)mk^\7{\_Iiopi} -[ȕ{nNK=avo/ei]N[SvV]vOS+ZqR/uĶ.W=ZsL<#%V%yʗz_C=КKg uR#_(5)_e=RK=aw]ι6;pmOsykbQݔOjdۅ:f'ϝ[l15ޑ.y{>X.dwOoe\(o};Eqdf~9u0ⳬ*o ~wqu,<8\,J೗Ҙ{K (2S榁gP@AS5zD,YsSA_rm*cgQE٭ö131^EVC/р|< U:Hֱ9m9yۇt}].sS0a9:w;*#p6=Q -l`88/%>;8)k (|qh(D>mK0 JMP]jtr>Jmi%&]@d{ϝm":@BB{_݇z:%YM1U\Ԉ%A\tل>ϵ/t_,-XIluddioF}Ij0:0 2VV z@"#۵>G0F*|jr \dGƟ(Q ~:ʄ._(+Wv2_iF:4l0r1㰺X :cSxvQyl.tU%d,Q/-ndTFgh=6=/mqHBE`}G&-CF9\YX0=e-3=C?2Ϥ?$]Í8!c 5D'2#vXkp(?oU4j?GhuҊ١Q BG!\3|Wf$d Pϓdo|iƷEUWz:8%1uCccJ&حf}pdԬ#'6yZw -:Ɠ$A]8iaۜYo|TeYaO塦J^'vm̫Dْڹs`fp}0?5eo~\*J{ϟv|IˎH@.iWq$c~,rd*}fX]_]wԴ؊-Gzw8=u\w^ga(_wʪ~{"0P#qi]SZ~ؒ\u>3BXהb\{k\MmЛͅ$wD}&F9CHMOp -:F] {<(0tssѨ3`T$#baSiF-HƳ5VGr)mذ,E@N1 ir@FbTNu.mÝи6#,QUwv'0s<&D _3q OX wJX -`4C^Spe8y)Q#dOjȳd%yh$D^%d'y#oϤ#Ӥ\ UJڨQ7MSt}V%>OWi=@h;}G' `fž`2&`$[j^ea؇$;""9"|<̧2/x7|w??xK2A~Md6e: OT-~B83 bLbZ@qpXQ3CQT XLa;GJjnV Xz/2t_8f B,Ud7+Dm#Ŀ: dX1d#B#`-i2f3e2z0{"ѕ;PaGvQLÂz ;3U8V7[荚MM?@0M:N@\x6cے{GܗbM>.A7zߋp. -ZlP.E(Q˼..U>iu7Z<ôd E*j {%"_7BtôеX ޕQ[*jX?~@Fn2%e48YwwZ:WFh]KZ"Nc~cuUcYa^–EXnX(&i&^̋J TQrHb\z_,F8ot˲CYMLepr\ L[z|:ldžI~ V?2Չ暜8e:|ъn2=ݚeHb-Ǣ~Io8P6KY[M/*@]Y޼dt}vp|BUC ^ C"0Ҡ74x\NH:⳧$3rt.ik MĽI˟YtaZSF1d2ç$q-=zQ,-9P1;vL߂V.!h[bvYȒeRvJS`(}Ib D<cGίvUs.PVW1 xC7ӑ龓o|@R@ւ̋@2a3?Y, - -|t'CA\Ҥ0TU-Umݮyiɷ5!6,KemVu -hP{YJiW Z[9;&- p2Qۅ2B)=w惬0cv :],Oش>{yPOn]M4fGݨ`̪>QZ[&jifre4‘D^f) G[lKi EҌ/Yj TEB Zk扻+cSnZW2U,fQqx/mu("H?Ỳ,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ@qAy-K0oUW yU}fBAkff8߰΋j2@-} 5FaŭtfKt0dˀea33% -fM:{P+a+qw?vo>j[`[$jI[t.2 9d -P7J-}W -RHgR_coHVW+,j_Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xk פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(M^I-]Râb"T:X[{R}k*=z46_7Ο;99%R= :h_ ڳDKX]ͶSyLACүgbb>a 7BJUК?v<>#RKyu0fұAwӌc^s<{,+6zl5Y4y1TI*{E|ӽRJ"ƾ=1ˢ6n m'U 2ar&1`{Q -Z| r,Eˊt\O@f“mNП>{{B?(),',⒅cC}Rb2u u(8GTA"r wW5~/ Jܫ`iyZ Iz,4Vzb|肽 DE8 -'e8 _ .VRE:TWn4t͠7;nakp3~?7q/x -O8)|_Nj$HUE>M#v ϑdD49E %I6yGB'7H+rf ܓ\}&q?~[ܻ\h+|}}v!eeQQI f M d"j! -42JgL5#:ihkLc#N˂1jܳ}+얬I.OgEL^$/k-;wr|Q$)_[ -QdEQJx2ILUgsJRGydܕ@x2UH8P :&fPE%f#T XJ,@lhqĊT88j+Q1dž~lD4d6h–5y{c+ -*oa#fj&bGC=H0HJT|!/qLxMl}D!8hVZI"+b.u/đlyh~UsouYY扵aW֚0T&ͅ$k>hn̳-2-{:9e[J'w{!=x"+A z_+lyo!ͫ/q|t‘=)5$IUoǤ@fauYd{dU˥ibnh7:IyS^q<&-ӦKfMxꋺYH<Β 8:ՂLH$-_%ڱn(?pV*VA^}}|jz5"g͛db/GcFv~|Ө5!j7aqd4UIǪO$~4 _L $r>Z嚴936TwC*"Ǒ0x7BD^鹺#q #{RH^  0 Ȃ\*B 22xc -?ȭ^_x 6#ÊA'w_S'֧|f'q7H&#%ܸRE^!5uԑ7IV]dyGz1!9KJΓ+r(' NBF硩t2BLJZMWt-manm O?ѣ=K~z!"KR$- fVܬR#;"RԌMII]I sAt0llΜ,07l2Y6a -ly Re>&d fNA|1GVexGaY*\ay\sf܄!C=U۸ } Y-TrOKh"C9,mدPO3؈M2aagA#8;bŚ& # U0^#,U#cpFG yȒ(O^5r)dUm[m e~~yIr]TRV5qV?IȌm=j (o~ꘆRxWZtDWg5 ӭ˗t~rj?˗e|aѠctߩQ?)p4(H lgN@Nء#;cGPYי.J#w^32%šXaK{)キٽۄxG8D.A%#`d5 P[¿2NFQ+#r4Ԉ&2-A@8c;Crf2iuc5`;H^KS8w~ "h7,hb طjWjЗf͙WXpiƘЂK'ݜ[$ᄁ{8qo:kZpjMv*WT;_nڐK;^~Ie?x!Wjohd<Ԃcolf`e_S7gh-()Gu6䯍.dnX;Y6꠰6}7;IdeV(jԹA?8㢛'?@uQ02hSMO¾TtT vޖ;}ymֳ < *~*fR6 OܪKn-i[D'<0׎/lуa={rv%Cg։;nrrTakkEVX;DvV6T"7t(;`$;ugOnMȿqAˁn`ZGo}t[cw뛬,\߉ROVW\Uof*?J!aThR4y2KȦ]0&S}5fD3qtp Ң -5${®] ڌTa785h}bZy&vKxJ* Za -LC55JQO p'̃POX+`%ꩇalVh_n ꈫNYx50r&נ܈j٤| B=b^WG:DI ySd'"ϑC7~OgPc &9O!ROsu - Ԡ7ӯSVJ:ѻwbGWGhFh+}uszA<;2l,jkXT6ղ;*5WĚP}@vY{%rC>"(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kp6. hg3C%)A놲>֢TvEp_50!Bw Bbl3`A,$" _<rcDQ,4U#vEb]Ca>PC1MF1_i,ǂq)țGP?CeHIZm4356>|*/#EfݽHH^1rrBF;oz,HgQQ8nIv@X"cNyk>-Gud*X3uN~9 (ro +@Ut"ֽ\XOPΞdz` -@v9%Sk,!A}0+HV6~wR3 58-F{"nke*5lK"<ߐt_ݯNs[e!гN15O,iIZ@pB0=UVC1EF .YU_ը`z_I8![9zCAsO޼*_ Jh)7 4,,bO) -#"ٜp,\ԩB;\ı&߈N+ -4􄃬G6c8M45=lmFB"l&Z{,-NQ1hͭ%_%qnbʰXT==jQmY$Yʙ 9Һa׽*v6bAdTM$:0Wږy@8f:\^ 0gOMbVf<|@ ,$zsklbX?CeSr\[ Z|,toR[#CLX XS 7J*鋸b,)ꪻo \v,$jUg. Ll4jhv4\7U1lA+,3Y|7Q:]`%qBԇHI\)խ0"u% 9|Hns+$j$ԾJ zLھYjPe -r qmyvgg3}h6p;pR:]z]A?L)P8=AGQ@CϡYԤ[^ě>Vt<{BSޙK"ll848q̒yUZX:)nLnRz wAZ(5g޺vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk_8Oe:N阕]Jym*ә++ȩmW>Cz&> ÐVm0x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =Lө0^p`MQ}Aiay8ʩZHyo:GZwHV9cW{on8tjSH~պOxcu̩_h%,0{Z'̾ӏ+L̩8evdI Zflaezv)ZL`U֝҂|^3,'[h҂`FYƠ+Suʖ$ͼ4,6)sj*af+wn:f -A/фƈ5"c +Ad%-v;I)sla,f -װTvNC _V 5+H ܏&Q ZB|=߱7I4*-Uw!Xj-G-d'E E0GAz|'Ο_6Yn k~}$SXY얱[XjA u#̕,u|;^.YXc-Xϴ"q~C>Yc'ϴoi72gsssxSKYwb6Tu5~.Xꃤu'a9 ړs,ˤ*;$-EIZX^i06@@22XAC9 IZP7Ŧx%ҌZk.Q r̩hukՄy֤G[%6g `##'2 2k~ EMG6NCv{.1@ˍTϢѠ /b>/wC z S["@Io`p#/J?d^wO9pW=K!`eh/ ;>-T{bE܅!q'MIbzl`][ XnO>Wt|9᰽E%cV@hխCyAo'],O Uun|DnqM}֍qЂqriaȻ)^`1uxS^GipXoZ4'>ڎ׷?-vwwZF83u' ckgKx~ o_:F& ȣd|\"ÂGd@^&u.ʘ2|F9|YrAy -wUʯ^-PQW¢( YjeVk b]xhZz@aQ1t1tm>Z5gxxHp{g}S{~sg~z~Nƙf, bYl4s17zgv>fU<;^<'yIE>{뼙o~_.4*=# HBZ$5J6IJGuf9ANd_ueA~C^IbuYhޢ6kՉUޚmPܢDqG,>c]>IT%WZ]NXjXh4!>cEC;kWnVncqu˧?Ϸ<4fV&k쿥jibSy֕ٝoЌX{t{lnYq&gL_| odj++Cp]nspGg7Y43SmIģ(xo0RC Nc_~:I{ѽEEC,a񐄻 -` ~!Ȇc ,1 gII֟=4 }|" S0*IdISbTbL/%ڍX.b`YGݫ%,xBn'9.K[S3* -8xR)ϦZG:(9ۜb; -;*Z(Fy=ud=B$P[3&ZjZtc#Ċ BpLpi^͛jõiS80ixt, {Zr A?=CYCtQucqN]pc-.Z)>M 9C[\^oW+x^#önG'$Xb `q$H-TqHMMxjLZٕ)wTc>%@.B.nz'r-\Wl(O! g # NdK`,X_&Y kēC{EI]ucu< *> 80.EMð$m>IrNr1M&Mҏ/2(0 -$(¸,, .> ">/>Ȁ0 ";waY,?9*۽ϩd^-? v}N)ߢ2עQ|JUY)HʀZ\J/+Ol*~I}?ޣt~JKw/JbO(!TT$|ׯ\'1u bF[YzuJ"k_,: _>{*u@|Tn׊R1g#& G9Gv)>ܽ$52Z|!kTuALe7 > x~*>$n>OyDrc?&9/)rgoz'|n^~w -~ iۃ~q޿ĭ=<-y. ~E/ǴׯRrfZr\@@M} ⣋[jsc>s_X /,źZ;$s_H'.>~IZ|=з_y ̗V9f!‰ ޛb3`l:MgVZլGXmc *rs,Z?QmX!32dv34\#wL%mc$ ڱE?N睳I"КhԷerKSOͰ$-!Z -TYvzt櫭GgO;lϬֆc<ѰҐLΠgnr%0: ] N:Vn[[T\>gz#7llz2BVAԅ,];Τ -c& -iãΗGdxӺd:&wcZjx)nzZ2jrZdl2 ]z2 mACPm$7 Vm1Tm_W+tӶnBZǢf* -Y2",iFò{C$1߶6wFuH@$k=? D Ff =u!'$!@ڵFap Qϧ~q9 ->a,Cː3zl/Iccffү8xqu5Q$L}SuFٜɚgq16Z.H@X$}6]! KM ӵJM`>jYV:x͈al -5Z&-V 64jpe̫# sU0plXݗ2W Ww/ouoGzgݝO{_u>UX0BYlW@ -UB}@B1V$*EK"Q|g4QA(FԤi|`|Es83I}~sso^Pd5!/S&T|_Y=bݔ(ûg(;MjIew ;:*#a[_[=sC'M4n4glUzK[h㖣]gO"o> ]Xf0k~YfP/)ͮ]ִdgǻ_T}##5;W4- PLE'Nmo=}ʶ͹[N\^EI1 }yabYNZZfdժL{"w?x o?Nlot@*~eU -x^/߁os?o @}W,+rBs -I 8WMORM岥*]̌`]%>+h3ZBޓ*~'v?}12=-th/-ЉiaO(=S -?F懐wA@SloF!'60?5}ފ޶@~,1mG `+}u5dVL+XwQ\W? -Y.2db>(u[ؒKճ%s*Xdbp _EBʆ`oL>lffO5F՟ K9b3[:EXO؄F4Ig4p*8L'ȽqNN߃xȯq+`,>#K(ȑlFA  k˼< a)PphCcFȁ`9 ->TA ?07ӏwLze> /Rn r*~ ]rco-ztB u]]{Z t@ 2|ʄ;pG *[ -,asa(|4j)f/!-]'0kMRl)]ؤJRK*65=OM] zW}2e+w)5r5{/8JV+$r8<>VJJEj/9]KK'̲?Ԙ8# 5l`Gjg~_ru@sLmϣѿ2 -endstream -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 0 0 333 333 0 0 278 333 278 278 -556 556 556 556 556 556 556 0 556 556 278 278 584 584 584 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 0 944 667 667 0 278 278 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 260 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 22 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 333 0 0 0 0 0 0 0 0 389 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 0 0 278 0 722 611 833 722 778 -667 0 722 667 611 722 667 0 0 667 0 0 0 0 0 0 -0 556 0 556 611 556 0 611 611 278 0 0 278 0 611 611 -0 0 389 556 333 611 0 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 23 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0 -556 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 0 0 0 778 0 0 0 0 556 833 0 0 -0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 556 0 556 556 0 556 556 222 0 0 222 833 556 556 -556 0 333 500 278 556 0 0 0 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 24 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIKLJL+Symbol -/Encoding /Identity-H -/DescendantFonts [ 27 0 R ] -/ToUnicode 28 0 R ->> -endobj -27 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIKLJL+Symbol -/FontDescriptor 25 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -28 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPj0 {tJ!d.z-Mg+ &Az=I^\atdA3qJ6 ߖsG# < ӣ:|chJȹJH3Rm G!/:\ Pڵ%hiBh:(H`FYuZwdWjy -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -29 0 obj -<< -/S /D ->> -endobj -30 0 obj -<< -/Nums [0 29 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R 16 0 R 19 0 R] -/Count 5 -/MediaBox [0 0 612 792] ->> -endobj -31 0 obj -<< -/CreationDate (D:20210119174403-06'00') -/ModDate (D:20210119174403-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -32 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 30 0 R ->> -endobj -xref -0 33 -0000000000 65535 f -0000040613 00000 n -0000000016 00000 n -0000005240 00000 n -0000038505 00000 n -0000039077 00000 n -0000039507 00000 n -0000017461 00000 n -0000041092 00000 n -0000040693 00000 n -0000005357 00000 n -0000009515 00000 n -0000040775 00000 n -0000009633 00000 n -0000014524 00000 n -0000039976 00000 n -0000040858 00000 n -0000014643 00000 n -0000016844 00000 n -0000040941 00000 n -0000016951 00000 n -0000017365 00000 n -0000017601 00000 n -0000017796 00000 n -0000018002 00000 n -0000018207 00000 n -0000018397 00000 n -0000040119 00000 n -0000040322 00000 n -0000041024 00000 n -0000041052 00000 n -0000041200 00000 n -0000041332 00000 n -trailer -<< -/Size 33 -/Root 32 0 R -/Info 31 0 R -/ID [<5c6c425449410330960590c40c0f2c59><5c6c425449410330960590c40c0f2c59>] ->> -startxref -41401 -%%EOF diff --git a/docs/ReleaseNote/SEC3-IRMFEATURES-I.pdf b/docs/ReleaseNote/SEC3-IRMFEATURES-I.pdf deleted file mode 100644 index 3605ad76..00000000 --- a/docs/ReleaseNote/SEC3-IRMFEATURES-I.pdf +++ /dev/null @@ -1,2308 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4160 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -/TT4 1 Tf -18 0 0 18 285.97 762.97 Tm -(3. COMMON LISP/INTERLISP-D)Tj -8.2233 -1 TD -(INTEGRATION)Tj -ET -6 w -258.01 737.99 m -558.01 737.99 l -S -BT -10 0 0 10 258 691.2 Tm -(NOTE)Tj -/TT2 1 Tf -2.7778 0 TD -0.307 Tw -[(: Chapter 3 is organized to correspond to the original)]TJ -ET -570 722.98 0.99 -35.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 679.2 Tm -0.196 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.3979 0 TD -[(, and explains changes related to)]TJ -ET -570 686.98 0.99 -11.99 re -f -BT -10 0 0 10 258 667.2 Tm -0.527 Tw -(how Common Lisp affects Interlisp-D in your Lisp software)Tj -ET -570 674.98 0.99 -11.99 re -f -BT -10 0 0 10 258 655.2 Tm -0.133 Tw -[(development environment. To make it easy to use this chapter)]TJ -ET -570 662.98 0.99 -11.99 re -f -BT -10 0 0 10 258 643.2 Tm -0.296 Tw -(with the)Tj -/TT6 1 Tf -3.7423 0 TD -[( IRM,)]TJ -/TT2 1 Tf -2.6847 0 TD -[( information is organized by )]TJ -/TT6 1 Tf -15.134 0 TD -(IRM )Tj -/TT2 1 Tf -2.9807 0 TD -(volume and)Tj -ET -570 650.98 0.99 -11.99 re -f -BT -10 0 0 10 258 631.2 Tm -0.01 Tw -[(section numbers. Section headings from the)]TJ -/TT6 1 Tf -19.8486 0 TD -[( IRM)]TJ -/TT2 1 Tf -2.1208 0 TD -[( are maintained to)]TJ -ET -570 638.98 0.99 -11.99 re -f -BT -10 0 0 10 258 619.2 Tm -0 Tw -(aid in cross-referencing.)Tj -ET -570 626.98 0.99 -11.99 re -f -BT -10 0 0 10 258 583.2 Tm -0.297 Tw -(Lyric information as well as Medley release enhancements are)Tj -ET -570 614.98 0.99 -35.99 re -f -BT -10 0 0 10 258 571.2 Tm -0.054 Tw -[(included. Medley additions are indicated with revision bars in the)]TJ -ET -570 578.98 0.99 -11.99 re -f -BT -10 0 0 10 258 559.2 Tm -0 Tw -(right margin. )Tj -ET -570 566.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -14 0 0 14 198 508.08 Tm -(VOLUME ILANGUAGE)Tj -ET -2 w -54.01 453.99 m -558.01 453.99 l -S -BT -14 0 0 14 54 442.08 Tm -(Chapter 2 Litatoms)Tj -ET -1 w -54.01 438.49 m -558.01 438.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 419.2 Tm -(\(2.1\))Tj -/TT2 1 Tf -0 -1.9 TD -0.2 Tw -(What Interlisp calls a "LITATOM" is the same as what Common)Tj -0 -1.2 TD -0.222 Tw -[(Lisp calls a "SYMBOL." Symbols are partitioned into separate)]TJ -T* -0.443 Tw -[(name spaces called packages. When you type a string of)]TJ -T* -0.287 Tw -(characters, the resulting symbol is searched for in the "current)Tj -T* -0.006 Tw -[(package." A colon in the symbol separates a package name from a)]TJ -T* -0.292 Tw -(symbol name; for example, the string of characters "CL:AREF")Tj -T* -0.031 Tw -[(denotes the symbol AREF accessible in the package CL. For a full)]TJ -T* -0 Tw -(discussion, see Guy Steeles )Tj -/TT6 1 Tf -13.062 0 TD -(Common Lisp, the Language)Tj -/TT2 1 Tf -12.8418 0 TD -(.)Tj --25.9038 -1.9 TD -0.184 Tw -(All the functions in this section that create symbols do so in the)Tj -0 -1.2 TD -0.014 Tw -(INTERLISP package \(IL\), which is also where all the symbols in the)Tj -/TT6 1 Tf -T* -0.029 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.0639 0 TD -[( are found. Note that this is true even)]TJ --13.0639 -1.2 TD -0.211 Tw -[(in cases where you might not expect it. For example, U-CASE)]TJ -T* -0.412 Tw -(returns a symbol in the INTERLISP package, even when its)Tj -T* -0.258 Tw -(argument is in some other package; similarly with L-CASE and)Tj -T* -0.166 Tw -[(SUBATOM. In most cases, this is the right thing for an Interlisp)]TJ -T* -0.013 Tw -(program; e.g., U-CASE in some sense returns a "canonical" symbol)Tj -T* -0.071 Tw -(that one might pass to a SELECTQ, regardless of which executive)Tj -T* -0.193 Tw -[(it was typed in. However, to perform symbol manipulations that)]TJ -T* -0.363 Tw -(preserve package information, you should use the appropriate)Tj -T* -0.026 Tw -(Common Lisp functions \(See )Tj -/TT6 1 Tf -13.2212 0 TD -(Common Lisp the Language)Tj -/TT2 1 Tf -12.642 0 TD -(, Chapter)Tj --25.8631 -1.2 TD -0 Tw -(11, Packages and Chapter 18, Strings\).)Tj -0 -1.9 TD -0.015 Tw -(Symbols read under an old Interlisp readtable are also searched for)Tj -0 -1.2 TD -0.251 Tw -[(in the INTERLISP package. See Section 25.8, Readtables, for)]TJ -T* -0 Tw -(more details.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 5055 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 2.1 Using Litatoms as Variables)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 706.2 Tm -(\(I:2.3\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(BOUNDP)Tj -/TT2 1 Tf -4.3335 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(VAR)Tj -/TT2 1 Tf -2.0562 0 TD -[(\))-31475.5([Function])]TJ -ET -126.01 684.49 m -558.01 684.49 l -S -BT -10 0 0 10 258 669.2 Tm -0.079 Tw -(The Interlisp interpreter has been modified to consider any symbol)Tj -0 -1.2 TD -0.054 Tw -(bound to the distinguished symbol )Tj -/TT4 1 Tf -15.6689 0 TD -0 Tw -(NOBIND)Tj -/TT2 1 Tf -3.9421 0 TD -0.054 Tw -[( to be unbound. It will)]TJ --19.611 -1.2 TD -0.742 Tw -(signal an UNBOUND-VARIABLE condition on encountering)Tj -T* -0.093 Tw -[(references to such symbols. In prior releases, the interpreter only)]TJ -T* -0.115 Tw -(considered a symbol unbound if it had no dynamic binding and in)Tj -T* -0 Tw -(addition its top-level value was )Tj -/TT4 1 Tf -13.8408 0 TD -(NOBIND)Tj -/TT2 1 Tf -3.9443 0 TD -(.)Tj --17.7852 -1.9 TD -0.11 Tw -(For most user code, this change has no effect, as it is unusual to)Tj -0 -1.2 TD -0.038 Tw -(bind a variable to the particular value )Tj -/TT4 1 Tf -16.8871 0 TD -0 Tw -(NOBIND)Tj -/TT2 1 Tf -3.9443 0 TD -0.038 Tw -[( and still deliberately)]TJ --20.8314 -1.2 TD -0.368 Tw -[(want the variable to be considered bound. However, it is a)]TJ -T* -0.103 Tw -(particular problem when an interpreted Interlisp function is passed)Tj -T* -0.186 Tw -(to the function )Tj -/TT4 1 Tf -7.1181 0 TD -0 Tw -(MAPATOMS)Tj -/TT2 1 Tf -5.833 0 TD -0.186 Tw -[(. Since )]TJ -/TT4 1 Tf -4.1708 0 TD -0 Tw -(NOBIND)Tj -/TT2 1 Tf -3.9443 0 TD -0.186 Tw -[( is a symbol, it will)]TJ --21.0662 -1.2 TD -0.165 Tw -(eventually be passed as an argument to the interpreted function.)Tj -T* -0.009 Tw -(The first reference to that argument within the function will signal an)Tj -T* -0 Tw -(error.)Tj -0 -1.9 TD -0.115 Tw -(A work-around for this problem is to use a Common Lisp function)Tj -0 -1.2 TD -0.405 Tw -[(instead. Calls to this function will invoke the Common Lisp)]TJ -T* -0.238 Tw -(interpreter which will treat the argument as a local, not special,)Tj -T* -0.105 Tw -[(variable. Thus, no error will be signaled. Alternatively, one could)]TJ -T* -0.215 Tw -(include the argument to the Interlisp function in a )Tj -/TT4 1 Tf -23.7817 0 TD -0 Tw -(LOCALVARS)Tj -/TT2 1 Tf --23.7817 -1.2 TD -0.338 Tw -(declaration and then compile the function before passing it to)Tj -/TT4 1 Tf -T* -0 Tw -(MAPATOMS)Tj -/TT2 1 Tf -5.833 0 TD -0.073 Tw -[(. This has the advantage of significantly speeding up)]TJ --5.833 -1.2 TD -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(MAPATOMS)Tj -/TT2 1 Tf -5.833 0 TD -( call.)Tj -/TT4 1 Tf -12 0 0 12 54 375.64 Tm -(Section 2.3 Property Lists)Tj -ET -54.01 372.49 m -558.01 372.49 l -S -0.75 w -558 371.99 m -558 371.99 l -S -BT -/TT8 1 Tf -10 0 0 10 258 353.2 Tm -(\(I:2.6\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.36 Tw -(The value returned from the function )Tj -/TT4 1 Tf -19.1958 0 TD -0 Tw -(REMPROP)Tj -/TT2 1 Tf -5.0552 0 TD -0.36 Tw -[( has been)]TJ --24.251 -1.2 TD -0 Tw -(changed in one case:)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(REMPROP)Tj -/TT6 1 Tf -5.0562 0 TD -( ATM PROP)Tj -/TT2 1 Tf -5.5005 0 TD -[(\))-27586.3([Function])]TJ -ET -1 w -126.01 300.49 m -558.01 300.49 l -S -BT -10 0 0 10 258 285.2 Tm -0.01 Tw -(Removes all occurrences of the property)Tj -/TT6 1 Tf -18.0026 0 TD -[( PROP)]TJ -/TT2 1 Tf -3.1218 0 TD -[( \(and its value\) from)]TJ --21.1245 -1.2 TD -0.217 Tw -(the property list of)Tj -/TT6 1 Tf -8.5992 0 TD -[( ATM.)]TJ -/TT2 1 Tf -2.8835 0 TD -[( Returns )]TJ -/TT6 1 Tf -4.4911 0 TD -0 Tw -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -0.217 Tw -[( if any were found \()]TJ -/TT4 1 Tf -9.5894 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.217 Tw -[( if)]TJ -/TT6 1 Tf --29.0081 -1.2 TD -0 Tw -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -( is )Tj -/TT4 1 Tf -1.2778 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(\), otherwise)Tj -/TT4 1 Tf -5.1685 0 TD -( NIL)Tj -/TT2 1 Tf -1.8887 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 233.64 Tm -(Section 2.4 Print Names)Tj -ET -54.01 230.49 m -558.01 230.49 l -S -0.75 w -558 229.99 m -558 229.99 l -S -BT -10 0 0 10 258 211.2 Tm -(\(I:2.7\))Tj -/TT2 1 Tf -0 -1.9 TD -0.342 Tw -(The print functions now qualify the name of a symbol with a)Tj -0 -1.2 TD -0.388 Tw -(package prefix if the symbol is not accessible in the current)Tj -T* -0.131 Tw -[(package. The Interlisp "PRIN1" print name of a symbol does not)]TJ -T* -0 Tw -(include the package name. )Tj -/TT8 1 Tf -0 -1.9 TD -(\(I:2.10\))Tj -/TT2 1 Tf -T* -(The )Tj -/TT4 1 Tf -2.105 0 TD -(GENSYM )Tj -/TT2 1 Tf -4.7159 0 TD -0.104 Tw -(function in Interlisp creates symbols interned in the)Tj --6.8208 -1.2 TD -0.245 Tw -(INTERLISP package. The Common Lisp )Tj -/TT4 1 Tf -19.455 0 TD --0.0001 Tc -0.2451 Tw -[(CL:GENSYM )]TJ -/TT2 1 Tf -7.0447 0 TD -0 Tc -0 Tw -(function)Tj --26.4997 -1.2 TD -(creates uninterned symbols.)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -14 0 obj -<< -/Length 4248 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.563 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(\(I:2.11\))Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(MAPATOMS)Tj -/TT2 1 Tf -5.833 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FN)Tj -/TT2 1 Tf -1.333 0 TD -[(\))-30699.1([Function])]TJ -ET -126.01 708.49 m -558.01 708.49 l -S -BT -10 0 0 10 258 693.2 Tm -(See the note for )Tj -/TT4 1 Tf -7.394 0 TD -(BOUNDP)Tj -/TT2 1 Tf -4.3335 0 TD -( above.)Tj -/TT4 1 Tf -12 0 0 12 54 665.64 Tm -(Section 2.5 Characters)Tj -ET -54.01 662.49 m -558.01 662.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 643.2 Tm -0.212 Tw -(A "character" in Interlisp is different from the type "character" in)Tj -0 -1.2 TD -0.011 Tw -[(Common Lisp. In Common Lisp, "character" is a distinguished data)]TJ -T* -0.263 Tw -(type satisfying the predicate )Tj -/TT4 1 Tf -13.7258 0 TD -0 Tw -(CL:CHARACTERP)Tj -/TT2 1 Tf -8.666 0 TD -0.263 Tw -[(. In Interlisp, a)]TJ --22.3918 -1.2 TD -0.191 Tw -("character" is a single-character symbol, not distinguishable from)Tj -T* -0.019 Tw -[(the type symbol \(litatom\). Interlisp also uses a more efficient object)]TJ -T* -0.174 Tw -(termed "character code", which is indistinguishable from the type)Tj -T* -0 Tw -(integer.)Tj -0 -1.9 TD -0.414 Tw -(Interlisp functions that take as an argument a "character" or)Tj -0 -1.2 TD -0.006 Tw -("character code" do not in general accept Common Lisp characters.)Tj -T* -0.523 Tw -(Similarly, an Interlisp "character" or "character code" is not)Tj -T* -0.029 Tw -(acceptable to a Common Lisp function that operates on characters.)Tj -T* -0.443 Tw -(However, since Common Lisp characters are a distinguished)Tj -T* -0.006 Tw -(datatype, Interlisp string-manipulation functions are willing to accept)Tj -T* -0.433 Tw -(them any place that a "string or symbol" is acceptable; the)Tj -T* -0 Tw -(character object is treated as a single-character string.)Tj -0 -1.9 TD -0.3989 Tw -(To convert an Interlisp character code )Tj -/TT6 1 Tf -19.4576 0 TD -0 Tw -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.399 Tw -[( to a Common Lisp)]TJ --20.0137 -1.2 TD -0.152 Tw -(character, evaluate \()Tj -/TT4 1 Tf -9.4197 0 TD --0.0001 Tc -0 Tw -(CL:CODE-CHAR )Tj -/TT6 1 Tf -8.2051 0 TD -0 Tc -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.152 Tw -[(\). To convert a Common)]TJ --18.181 -1.2 TD -0.089 Tw -(Lisp character to an Interlisp character code, evaluate \()Tj -/TT4 1 Tf -25.1139 0 TD -0 Tw -(CL:CHAR-)Tj --25.1139 -1.2 TD -(CODE)Tj -/TT2 1 Tf -2.8892 0 TD -( )Tj -/TT6 1 Tf -0.3378 0 TD -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.06 Tw -[(\). For character literals, where in Interlisp one would write)]TJ --3.7831 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(CHARCODE)Tj -/TT2 1 Tf -5.777 0 TD -( )Tj -/TT6 1 Tf -0.3198 0 TD -(x)Tj -/TT2 1 Tf -0.5 0 TD -0.042 Tw -(\), to get the equivalent Common Lisp character one)Tj --6.9298 -1.2 TD -0.379 Tw -(writes #\\)Tj -/TT6 1 Tf -4.1021 0 TD -0 Tw -(x)Tj -/TT2 1 Tf -0.5 0 TD -0.379 Tw -[(. In this syntax, )]TJ -/TT6 1 Tf -9.1201 0 TD -0 Tw -(x)Tj -/TT2 1 Tf -0.5 0 TD -0.379 Tw -[( can be any character or string)]TJ --14.2222 -1.2 TD -0 Tw -(acceptable to )Tj -/TT4 1 Tf -6.2266 0 TD -(CHARCODE)Tj -/TT2 1 Tf -5.7778 0 TD -(; e.g., #\\GREEK-A.)Tj -ET -2 w -54.01 321.99 m -558.01 321.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 310.08 Tm -(Chapter 4 Strings)Tj -ET -1 w -54.01 306.49 m -558.01 306.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 287.2 Tm -(\(I:4.1\))Tj -/TT2 1 Tf -0 -1.9 TD -0.36 Tw -[(Interlisp strings are a subtype of Common Lisp strings. The)]TJ -0 -1.2 TD -0.054 Tw -(functions in this chapter accept Common Lisp strings, and produce)Tj -T* -0.233 Tw -(strings that can be passed to Common Lisp string manipulation)Tj -T* -0 Tw -(functions.)Tj -ET -2 w -54.01 176.99 m -558.01 176.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 165.08 Tm -(Chapter 5 Arrays)Tj -ET -1 w -54.01 161.49 m -558.01 161.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 142.2 Tm -0.19 Tw -(Interlisp arrays and Common Lisp arrays are disjoint data types.)Tj -T* -0.297 Tw -[(Interlisp arrays are not acceptable arguments to Common Lisp)]TJ -T* -0.009 Tw -[(array functions, and vice versa. There are no functions that convert)]TJ -T* -0 Tw -(between the two kinds of arrays.)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -17 0 obj -<< -/Length 4968 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 6 Hash Arrays)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 702.2 Tm -0.11 Tw -[(Interlisp hash arrays and Common Lisp hash tables are the same)]TJ -0 -1.2 TD -0.065 Tw -(data type, so Interlisp and Common Lisp hash array functions may)Tj -T* -0.443 Tw -[(be freely intermixed. However, some of the arguments are)]TJ -T* -0.315 Tw -(different; e.g., the order of arguments to the map functions in)Tj -/TT4 1 Tf -T* -0 Tw -(IL:MAPHASH)Tj -/TT2 1 Tf -6.2773 0 TD -0.069 Tw -[( and)]TJ -/TT4 1 Tf -2.0153 0 TD --0.0001 Tc -0.0691 Tw -[( CL:MAPHASH )]TJ -/TT2 1 Tf -7.4142 0 TD -0 Tc -0.069 Tw -[(differ. The extra functionality of)]TJ --15.7068 -1.2 TD -0.03 Tw -(specifying your own hashing function is available only from Interlisp)Tj -/TT4 1 Tf -T* -0 Tw -(HASHARRAY)Tj -/TT2 1 Tf -6.388 0 TD -0.314 Tw -(, not)Tj -/TT4 1 Tf -2.2598 0 TD -[( CL:MAKE-HASH-TABLE )]TJ -/TT2 1 Tf -12.626 0 TD -(, though the latter)Tj --21.2738 -1.2 TD -0.06 Tw -(does supply the three built-in types specified by)Tj -/TT6 1 Tf -21.4322 0 TD -[( Common Lisp, the)]TJ --21.4322 -1.2 TD -0 Tw -(Language)Tj -/TT2 1 Tf -4.4492 0 TD -(.)Tj -ET -2 w -54.01 550.99 m -558.01 550.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 539.08 Tm -(Chapter 7 Numbers and Arithmetic Functions)Tj -ET -1 w -54.01 535.49 m -558.01 535.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 516.2 Tm -(\(I:7.2\))Tj -/TT2 1 Tf -0 -1.9 TD -0.316 Tw -[(The addition of Common Lisp data structures within the Lisp)]TJ -0 -1.2 TD -0.147 Tw -(environment means that there are some invariants which used to)Tj -T* -0 Tw -(be true for anything in the environment that are no longer true. )Tj -0 -1.9 TD -0.0708 Tw -(For example, in Interlisp, there were two kinds of numbers: integer)Tj -0 -1.2 TD -0.2709 Tw -[(and floating. With Common Lisp, there are additional kinds of)]TJ -T* -0.381 Tw -[(numbers, namely ratios and complex numbers, both of which)]TJ -T* -0.104 Tw -(satisfy the Interlisp predicate )Tj -/TT4 1 Tf -13.3667 0 TD -0 Tw -(NUMBERP)Tj -/TT2 1 Tf -5.0543 0 TD -0.104 Tw -[(. Thus, )]TJ -/TT4 1 Tf -3.9243 0 TD -0 Tw -(NUMBERP)Tj -/TT2 1 Tf -5.0557 0 TD -0.104 Tw -[( is no)]TJ --27.401 -1.2 TD -0.044 Tw -(longer the simple union of)Tj -/TT4 1 Tf -11.6277 0 TD --0.0003 Tc -0.0443 Tw -[( FIXP )]TJ -/TT2 1 Tf -3.1872 0 TD -0 Tc -0.044 Tw -[( and )]TJ -/TT4 1 Tf -2.3121 0 TD -[( FLOATP)]TJ -/TT2 1 Tf -4.322 0 TD -[(. It used to be that)]TJ --21.449 -1.2 TD -0 Tw -(a program containing)Tj -/TT10 1 Tf -1.2 -1.771 TD -(\(if \(NUMBERP X\))Tj -0 -1 TD -( then \(if \(FIXP X\))Tj -0 -1.129 TD -( then)Tj -/TT6 1 Tf -8.4014 0 TD -( ...assume X is an integer ...)Tj -/TT10 1 Tf --8.4014 -1.129 TD -( else)Tj -/TT6 1 Tf -7.2012 0 TD -( ...can assume X is floating point...)Tj -/TT10 1 Tf -15.5078 0 TD -(\)\))Tj -/TT2 1 Tf --23.909 -1.829 TD -0.151 Tw -(would be correct in Interlisp. However, this is no longer true; this)Tj -0 -1.2 TD -0.258 Tw -(program will not deal correctly with ratios or complex numbers,)Tj -T* -0 Tw -(which are )Tj -/TT4 1 Tf -4.5576 0 TD -(NUMBERP)Tj -/TT2 1 Tf -5.0557 0 TD -( but neither )Tj -/TT4 1 Tf -5.2812 0 TD -(FIXP)Tj -/TT2 1 Tf -2.2227 0 TD -( nor )Tj -/TT4 1 Tf -2.001 0 TD -(FLOATP)Tj -/TT2 1 Tf -3.9995 0 TD -(. )Tj -/TT4 1 Tf -12 0 0 12 54 274.06 Tm -(Section 7.2 Integer Arithmetic)Tj -ET -54.01 270.91 m -558.01 270.91 l -S -BT -/TT2 1 Tf -10 0 0 10 258 251.62 Tm -0.299 Tw -(When typing to a )Tj -/TT6 1 Tf -8.9782 0 TD -0 Tw -(new)Tj -/TT2 1 Tf -1.8345 0 TD -0.299 Tw -[( Interlisp Executive, the input syntax for)]TJ --10.8127 -1.2 TD -0.011 Tw -(integers of radix other than 8 or 10 has been changed to match that)Tj -T* -0.205 Tw -[(of Common Lisp. Use # instead of |, e.g., #b10101 is the new)]TJ -T* -0.093 Tw -[(syntax for binary numbers, #x1A90 for hexadecimal, etc. Suffix Q)]TJ -T* -0.161 Tw -(is still recognized as specifying octal radix, but you can also use)Tj -T* -0 Tw -(Common Lisps #o syntax.)Tj -/TT8 1 Tf -0 -2.3 TD -(\(I:7.4\))Tj -/TT2 1 Tf -T* -0.338 Tw -(In the Lyric release, the FASL machinery would handle some)Tj -ET -570 164.4 0.99 -22.99 re -f -BT -10 0 0 10 258 133.62 Tm -0.634 Tw -(positive literals incorrectly, reading them back as negative)Tj -ET -570 141.4 0.99 -11.99 re -f -BT -10 0 0 10 258 121.62 Tm -0.11 Tw -(numbers. The numbers handled incorrectly were those numbers x)Tj -ET -570 129.4 0.99 -11.99 re -f -BT -10 0 0 10 258 109.62 Tm -0.06 Tw -(greater than 2**31-1 for which \(mod \(integer-length x\) 8\) was zero.)Tj -ET -570 117.4 0.99 -11.99 re -f -BT -10 0 0 10 258 97.62 Tm -0.121 Tw -[(The Medley release fixes this situation. Any files containing such)]TJ -ET -570 105.4 0.99 -11.99 re -f -BT -10 0 0 10 258 85.62 Tm -0 Tw -(numbers should be recompiled. )Tj -/TT10 1 Tf -8 0 0 8 400.2997 85.62 Tm -( )Tj -ET -570 93.4 0.99 -12.58 re -f -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 19 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -21 0 obj -<< -/Length 5127 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.563 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 10 Function Definition, Manipulation, and Evaluation)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -12 0 0 12 54 697.64 Tm -(Section 10.1 Function Types)Tj -ET -54.01 694.49 m -558.01 694.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 675.2 Tm -0.01 Tw -(All Interlisp)Tj -/TT4 1 Tf -4.9006 0 TD -0.0098 Tw -[( NLAMBDA)]TJ -/TT2 1 Tf -5.6301 0 TD -0 Tw -(s)Tj -/TT4 1 Tf -0.5 0 TD -( )Tj -/TT2 1 Tf -0.2878 0 TD -0.01 Tw -(appear to be macros from Common Lisps)Tj --11.3185 -1.2 TD -0.05 Tw -[(point of view. This is discussed at greater length in )]TJ -/TT6 1 Tf -23.4504 0 TD -[( Common Lisp)]TJ --23.4504 -1.2 TD -0 Tw -(Impementation Notes)Tj -/TT2 1 Tf -9.5049 0 TD -(, Chapter 8, Macros)Tj -/TT4 1 Tf -8.7812 0 TD -(.)Tj -12 0 0 12 54 623.64 Tm -(Section 10.6 Macros)Tj -ET -54.01 620.49 m -558.01 620.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 603.64 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(EXPANDMACRO)Tj -12 0 0 12 208.7782 603.64 Tm -( )Tj -/TT6 1 Tf -10 0 0 10 212.1122 603.64 Tm -(EXP QUIETFLG)Tj -/TT4 1 Tf -12 0 0 12 284.9052 603.64 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 288.2392 603.64 Tm -( )Tj -/TT4 1 Tf -12 0 0 12 311.0175 603.64 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 314.3515 603.64 Tm -[(\))-19640.8([Function])]TJ -ET -126.01 600.49 m -558.01 600.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 581.2 Tm -(EXPANDMACRO)Tj -/TT2 1 Tf -7.9448 0 TD -0.086 Tw -[( only works on Interlisp macros, those appearing)]TJ --7.9448 -1.2 TD -0.048 Tw -(on the MACRO, BYTEMACRO or DMACRO properties of symbols.)Tj -T* -0 Tw -(Use )Tj -/TT4 1 Tf -2.1742 0 TD -(CL:MACROEXPAND-1)Tj -/TT2 1 Tf -10.5 0 TD -0.118 Tw -[( to expand Common Lisp macros and)]TJ --12.6742 -1.2 TD -0.021 Tw -(those Interlisp macros that are visible to the Common Lisp compiler)Tj -T* -0 Tw -(and interpreter.)Tj -/TT4 1 Tf -12 0 0 12 54 505.64 Tm -(Section 10.6.1 DEFMACRO)Tj -ET -54.01 502.49 m -558.01 502.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 483.2 Tm -(\(I:10.24\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.077 Tw -(Common Lisp does not permit a symbol to simultaneously name a)Tj -0 -1.2 TD -0.292 Tw -[(function and a macro. In Lyric, this restriction also applies to)]TJ -T* -0.381 Tw -(Interlisp macros defined by )Tj -/TT4 1 Tf -13.751 0 TD -0 Tw -(DEFMACRO)Tj -/TT2 1 Tf -5.7773 0 TD -0.381 Tw -[(. That is, evaluating)]TJ -/TT4 1 Tf --19.5283 -1.2 TD -0 Tw -(DEFMACRO)Tj -/TT2 1 Tf -5.7773 0 TD -0.372 Tw -[( for a symbol automatically removes any function)]TJ --5.7773 -1.2 TD -0.016 Tw -[(definition for the symbol. Thus, if your purpose for using a macro is)]TJ -T* -0.171 Tw -(to make a function compile in a special way, you should instead)Tj -T* -0.547 Tw -(use the new form )Tj -/TT4 1 Tf -10.1362 0 TD -0 Tw -(XCL:DEFOPTIMIZER)Tj -/TT2 1 Tf -9.7778 0 TD -0.547 Tw -(, which affects only)Tj --19.914 -1.2 TD -0.435 Tw -[(compilation. The )]TJ -/TT6 1 Tf -9.1976 0 TD -(Xerox Common Lisp Implementation Notes)Tj -/TT2 1 Tf --9.1976 -1.2 TD -0 Tw -(describe )Tj -/TT4 1 Tf -4.0576 0 TD -(XCL:DEFOPTIMIZER)Tj -/TT2 1 Tf -9.7773 0 TD -(.)Tj --13.835 -1.9 TD -0.626 Tw -(Interlisp DMACRO properties have typically been used for)Tj -0 -1.2 TD -0.096 Tw -[(implementation-specific optimizations. They are not subject to the)]TJ -T* -0.121 Tw -[(above restriction on function definition. However, if a symbol has)]TJ -T* -0.4058 Tw -(both a function definition and a DMACRO property, the Lisp)Tj -T* -0.042 Tw -(compiler assumes that the DMACRO was intended as an optimizer)Tj -T* -0 Tw -(for the old Interlisp compiler and ignores it.)Tj -ET -2 w -54.01 233.99 m -558.01 233.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 222.08 Tm -(Chapter 11 Stack Functions)Tj -ET -1 w -54.01 218.49 m -558.01 218.49 l -S -BT -12 0 0 12 54 194.64 Tm -(Section 11.1 The Spaghetti Stack)Tj -ET -54.01 191.49 m -558.01 191.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 172.2 Tm -(Stack pointers now print in the form )Tj -/TT10 1 Tf -7.254 -1.7 TD -(#)Tj -/TT2 1 Tf -0.6001 0 TD -(.)Tj --22.4703 -1.829 TD -0.096 Tw -[(Some restrictions were placed on spaghetti stack manipulations in)]TJ -0 -1.2 TD -0.075 Tw -(order to integrate reasonably with Common Lisps )Tj -/TT4 1 Tf -22.8136 0 TD --0.0004 Tc -0 Tw -(CL:CATCH )Tj -/TT2 1 Tf -5.5153 0 TD -0 Tc -(and)Tj -/TT4 1 Tf --28.3288 -1.2 TD -(CL:THROW)Tj -/TT2 1 Tf -5.443 0 TD -0.146 Tw -[(. In Lyric, it is an error to return to the same frame)]TJ --5.443 -1.2 TD -0.033 Tw -[(twice, or to return to a frame that has been unwound through. This)]TJ -T* -0.059 Tw -(means, for example, that if you save a stack pointer to one of your)Tj -T* -0.214 Tw -(ancestor frames, then perform a )Tj -/TT4 1 Tf -15.5763 0 TD -0 Tw -(CL:THROW)Tj -/TT2 1 Tf -5.4429 0 TD -0.214 Tw -[( or )]TJ -/TT4 1 Tf -1.8728 0 TD -0 Tw -(RETFROM)Tj -/TT2 1 Tf -4.9438 0 TD -0.214 Tw -[( that)]TJ --27.8359 -1.2 TD -0.075 Tw -(returns "around" that frame, i.e., to an ancestor of that frame, then)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 19 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -24 0 obj -<< -/Length 5399 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.281 Tw -(the stack pointer is no longer valid, and any attempt to use it)Tj -0 -1.2 TD -0.148 Tw -[(signals an error "Stack Pointer has been released". It is also an)]TJ -T* -0.156 Tw -(error to attempt to return to a frame in a different process, using)Tj -/TT4 1 Tf -T* -0 Tw -(RETFROM)Tj -/TT2 1 Tf -4.9438 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(RETTO)Tj -/TT2 1 Tf -3.3887 0 TD -(, etc.)Tj --8.8882 -1.9 TD -0.165 Tw -(The existence of spaghetti stacks raises the issue of under what)Tj -0 -1.2 TD -0.231 Tw -(circumstances the cleanup forms of )Tj -/TT4 1 Tf -17.1618 0 TD -0 Tw -(CL:UNWIND-PROTECT)Tj -/TT2 1 Tf -10.8862 0 TD -0.231 Tw -[( are)]TJ --28.048 -1.2 TD -0.077 Tw -[(performed. In Lisp, )]TJ -/TT4 1 Tf -9.2011 0 TD -0 Tw -(CL:THROW)Tj -/TT2 1 Tf -5.4429 0 TD -0.077 Tw -[( always runs the cleanup forms of)]TJ --14.6439 -1.2 TD -0 Tw -(any )Tj -/TT4 1 Tf -1.8951 0 TD -(CL:UNWIND-PROTECT)Tj -/TT2 1 Tf -10.8872 0 TD -0.0002 Tc -0.0048 Tw -( it passes. Thanks to the integration of)Tj -/TT4 1 Tf --12.7823 -1.2 TD -0 Tc -0 Tw -(CL:UNWIND-PROTECT)Tj -/TT2 1 Tf -10.8872 0 TD -0.19 Tw -[( with )]TJ -/TT4 1 Tf -3.1818 0 TD -0 Tw -(RESETLST)Tj -/TT2 1 Tf -5.223 0 TD -0.19 Tw -[( and the other Interlisp)]TJ --19.292 -1.2 TD -0.102 Tw -(context-saving functions, )Tj -/TT4 1 Tf -11.4877 0 TD -0 Tw -(CL:THROW)Tj -/TT2 1 Tf -5.4429 0 TD -0.102 Tw -[( also runs the cleanup forms)]TJ --16.9306 -1.2 TD -0.474 Tw -(of any )Tj -/TT4 1 Tf -3.95 0 TD -0 Tw -(RESETLST)Tj -/TT2 1 Tf -5.2227 0 TD -0.474 Tw -[( it passes. The Interlisp control transfer)]TJ --9.1726 -1.2 TD -0 Tw -(constructs )Tj -/TT4 1 Tf -4.896 0 TD -( )Tj -/TT2 1 Tf -0.3388 0 TD -( )Tj -/TT4 1 Tf -0.3392 0 TD -(RETFROM)Tj -/TT2 1 Tf -4.9438 0 TD -(, )Tj -/TT4 1 Tf -0.6167 0 TD -(RETTO)Tj -/TT2 1 Tf -3.3895 0 TD -(, )Tj -/TT4 1 Tf -0.6167 0 TD -(RETEVAL)Tj -/TT2 1 Tf -4.6673 0 TD -0.061 Tw -[( and )]TJ -/TT4 1 Tf -2.3461 0 TD -0 Tw -(RETAPPLY )Tj -/TT2 1 Tf -5.6727 0 TD -0.061 Tw -[( also)]TJ --27.8268 -1.2 TD -0.11 Tw -(run the cleanup forms in the analogous case, viz., when returning)Tj -T* -0.268 Tw -[(to a direct ancestor of the current frame. This is a significant)]TJ -T* -0.096 Tw -(improvement over prior releases, where )Tj -/TT4 1 Tf -18.376 0 TD -0 Tw -(RETFROM)Tj -/TT2 1 Tf -4.9438 0 TD -0.096 Tw -[( never ran any)]TJ --23.3198 -1.2 TD -0 Tw -(cleanup forms at all.)Tj -0 -1.9 TD -0.238 Tw -(In the case of )Tj -/TT4 1 Tf -7.2337 0 TD -0 Tw -(RETFROM)Tj -/TT2 1 Tf -4.9438 0 TD -0.238 Tw -(, etc, returning to a non-ancestor, the)Tj --12.1776 -1.2 TD -0.054 Tw -(cleanup forms are run for any frames that are being abandoned as)Tj -T* -0.282 Tw -(a result of transferring control to the other stack control chain.)Tj -T* -0.082 Tw -(However, this should not be relied on, as the frames would not be)Tj -T* -0.304 Tw -(abandoned at that time if someone else happened to retain a)Tj -T* -0.492 Tw -(pointer to the callers control chain, but subsequently never)Tj -T* -0.119 Tw -[(returned to the frame held by the pointer. Cleanup forms are )]TJ -/TT6 1 Tf -28.6096 0 TD -0 Tw -(not)Tj -/TT2 1 Tf --28.6096 -1.2 TD -0.088 Tw -(run for frames abandoned when a stack pointer is released, either)Tj -T* -0.178 Tw -[(explicitly or by being garbage-collected. Cleanup forms are also)]TJ -T* -0.232 Tw -(not run for frames abandoned because of a control transfer via)Tj -/TT4 1 Tf -T* -0 Tw -(ENVEVAL)Tj -/TT2 1 Tf -4.7231 0 TD -0.194 Tw -[( or )]TJ -/TT4 1 Tf -1.8328 0 TD -0 Tw -(ENVAPPLY)Tj -/TT2 1 Tf -5.39 0 TD -0.194 Tw -[(. Callers of )]TJ -/TT4 1 Tf -6.111 0 TD -0 Tw -(ENVEVAL)Tj -/TT2 1 Tf -4.7231 0 TD -0.194 Tw -[( or )]TJ -/TT4 1 Tf -1.8328 0 TD -0 Tw -(ENVAPPLY)Tj -/TT2 1 Tf --24.6129 -1.2 TD -0.199 Tw -(should consider whether their intent would be served as well by)Tj -/TT4 1 Tf -T* -0 Tw -(RETEVAL)Tj -/TT2 1 Tf -4.667 0 TD -0.252 Tw -[( or )]TJ -/TT4 1 Tf -1.9488 0 TD -0 Tw -(RETAPPLY)Tj -/TT2 1 Tf -5.334 0 TD -0.252 Tw -(, which )Tj -/TT6 1 Tf -3.8941 0 TD -0 Tw -(do)Tj -/TT2 1 Tf -1.1123 0 TD -0.252 Tw -[( run cleanup forms in most)]TJ --16.9562 -1.2 TD -0 Tw -(cases.)Tj -ET -2 w -54.01 312.99 m -558.01 312.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 301.08 Tm -(Chapter 12 Miscellaneous)Tj -ET -1 w -54.01 297.49 m -558.01 297.49 l -S -BT -12 0 0 12 54 273.64 Tm -(Section 12.4 System Version Information)Tj -ET -54.01 270.49 m -558.01 270.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 251.2 Tm -0.121 Tw -(All the functions listed on page 12.12 in the )Tj -/TT6 1 Tf -20.4357 0 TD -(Interlisp-D Reference)Tj --20.4357 -1.2 TD -0 Tw -(Manual)Tj -/TT2 1 Tf -3.2798 0 TD -0.1098 Tw -[( have had their symbols moved to the LISP \(CL\) package.)]TJ --3.2798 -1.2 TD -0.443 Tw -(They are )Tj -/TT6 1 Tf -5.1101 0 TD -0 Tw -(not)Tj -/TT2 1 Tf -1.3901 0 TD -0.443 Tw -[( shared with the INTERLISP package and any)]TJ --6.5003 -1.2 TD -0.307 Tw -(references to them in your code will need to be qualified i.e.,)Tj -T* -0 Tw -(CL:)Tj -/TT6 1 Tf -1.5562 0 TD -(name)Tj -/TT2 1 Tf -2.5015 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 175.64 Tm -(Section 12.8 Pattern Matching)Tj -ET -54.01 172.49 m -558.01 172.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 153.2 Tm -0.115 Tw -[(Pattern matching is no longer a standard part of the environment.)]TJ -0 -1.2 TD -0.254 Tw -(The functionality for Pattern matching can be found in the Lisp)Tj -T* -0 Tw -(Library Module called MATCH.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 399 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.563 74.479 TD -(3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 508.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -29 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -30 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -31 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -32 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 0 667 0 278 278 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 260 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 29 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 0 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 0 0 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 30 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 0 278 0 0 556 833 722 778 -667 778 722 0 611 722 667 0 667 0 0 0 0 0 0 0 -0 556 0 500 556 556 278 556 556 222 0 0 222 833 556 556 -556 0 333 500 278 556 0 722 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 31 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 73 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 278 0 -556 556 556 556 556 0 556 556 0 0 333 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 32 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [600 0 0 600 0 0 0 0 600 600 0 0 0 0 0 600 -0 0 0 0 0 0 0 0 0 0 0 0 600 0 600 0 -0 0 600 0 0 600 600 0 0 600 0 0 0 600 600 0 -600 0 600 600 0 600 0 0 600 0 0 0 0 0 0 0 -0 600 0 600 0 600 600 0 600 600 0 600 600 0 600 0 -600 0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 33 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -34 0 obj -<< -/S /D ->> -endobj -35 0 obj -<< -/Nums [0 34 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 13 0 R 16 0 R 20 0 R 23 0 R 26 0 R] -/Count 7 -/MediaBox [0 0 612 792] ->> -endobj -36 0 obj -<< -/CreationDate (D:20210119174403-06'00') -/ModDate (D:20210119174403-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -37 0 obj -<< -/Type /Catalog -/Pages 9 0 R -/PageLabels 35 0 R ->> -endobj -xref -0 38 -0000000000 65535 f -0000033998 00000 n -0000000016 00000 n -0000004228 00000 n -0000031777 00000 n -0000032341 00000 n -0000032882 00000 n -0000033317 00000 n -0000030625 00000 n -0000034644 00000 n -0000034078 00000 n -0000004356 00000 n -0000009464 00000 n -0000034161 00000 n -0000009593 00000 n -0000013894 00000 n -0000034244 00000 n -0000014023 00000 n -0000019044 00000 n -0000033602 00000 n -0000034327 00000 n -0000019186 00000 n -0000024366 00000 n -0000034410 00000 n -0000024508 00000 n -0000029960 00000 n -0000034493 00000 n -0000030078 00000 n -0000030529 00000 n -0000030765 00000 n -0000030960 00000 n -0000031166 00000 n -0000031371 00000 n -0000031586 00000 n -0000034576 00000 n -0000034604 00000 n -0000034767 00000 n -0000034899 00000 n -trailer -<< -/Size 38 -/Root 37 0 R -/Info 36 0 R -/ID [<266c5eb770f27c75b2317e2218d9649e><266c5eb770f27c75b2317e2218d9649e>] ->> -startxref -34968 -%%EOF diff --git a/docs/ReleaseNote/SEC3-IRMFEATURES-II.pdf b/docs/ReleaseNote/SEC3-IRMFEATURES-II.pdf deleted file mode 100644 index d413e991..00000000 --- a/docs/ReleaseNote/SEC3-IRMFEATURES-II.pdf +++ /dev/null @@ -1,11140 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4150 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -14 0 0 14 258 727.08 Tm -(VOLUME IIENVIRONMENT)Tj -ET -2 w -54.01 672.99 m -558.01 672.99 l -S -BT -14 0 0 14 54 661.08 Tm -(Chapter 13 Interlisp Executive)Tj -ET -1 w -54.01 657.49 m -558.01 657.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 638.2 Tm -0.471 Tw -([This chapter of the )Tj -/TT6 1 Tf -10.7219 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.9479 0 TD -[( has been)]TJ --24.6697 -1.2 TD -0 Tw -(renamed Chapter 13, Executives.])Tj -0 -1.9 TD -0.059 Tw -(Lisp has a new kind of Executive \(or Exec\), designed for use in an)Tj -0 -1.2 TD -0.091 Tw -[(environment with both Interlisp and Common Lisp. This executive)]TJ -T* -0.085 Tw -(is available in three standard modes, distinguished by their default)Tj -T* -0 Tw -(settings for package and readtable:)Tj --4.345 -1.9 TD -[(XCL)-2399.7(New Exec. Uses XCL readtable, XCL-USER package)]TJ -0.667 -1.9 TD -[(CL)-2399.7(New Exec. Uses LISP readtable, USER package)]TJ -0.444 -1.9 TD -[(IL)-2400(New Exec. Uses INTERLISP readtable, INTERLISP package)]TJ -3.234 -1.9 TD -0.67 Tw -(In addition, the old Interlisp executive, the "Programmers)Tj -0 -1.2 TD -0.18 Tw -(Assistant", is still available in this release for the convenience of)Tj -T* -0 Tw -(Koto users:)Tj --9.957 -1.9 TD -0.408 Tw -[(OLD-INTERLISP)-2399.9(Old "Programmers Assistant" Exec. Uses OLD-INTERLISP-T)]TJ -9.957 -1.2 TD -0.121 Tw -[(readtable, INTERLISP package. It is likely that this executive will)]TJ -T* -0 Tw -(not be supported in future releases.)Tj -0 -1.9 TD -0.119 Tw -[(When Lisp starts, it is running a single executive, the XCL Exec.)]TJ -0 -1.2 TD -0.122 Tw -(You can spawn additional executives by selecting EXEC from the)Tj -T* -0.036 Tw -[(background menu. The type of an executive is indicated in the title)]TJ -T* -0.009 Tw -[(of its window; e.g., the initial executive has title "Exec \(XCL\)". Each)]TJ -T* -0.145 Tw -(executive runs in its own process; when you are finished with an)Tj -T* -0.243 Tw -(executive, you can simply close its window, and the process is)Tj -T* -0 Tw -(killed.)Tj -0 -1.9 TD -0.811 Tw -(The new executive is modeled, somewhat, on the old)Tj -0 -1.2 TD -0.1829 Tw -("Programmers Assistant" executive and, to a first approximation,)Tj -T* -0.01 Tw -[(you can type to it just as you did in past releases. You should note,)]TJ -T* -0.186 Tw -(however, that the default executive \(XCL\) expects Common Lisp)Tj -T* -0.513 Tw -(input syntax, and reads symbols relative to the XCL-USER)Tj -T* -0.266 Tw -[(package. This means that to type Interlisp symbols, you must)]TJ -T* -0.056 Tw -(prefix the symbol with the characters "IL:" \(in upper or lower case\).)Tj -T* -0.091 Tw -(And even in the new IL executive, the readtable being used is the)Tj -T* -0.415 Tw -(new INTERLISP readtable, in which the characters colon \(:\),)Tj -T* -0.228 Tw -(vertical bar \(|\) and hash \(#\) all have different meanings than in)Tj -T* -0 Tw -(Koto.)Tj -0 -1.9 TD -0.186 Tw -(The OLD-INTERLISP exec, with one exception, uses exactly the)Tj -0 -1.2 TD -0.16 Tw -(same input syntax as in Koto; this means in particular that colon)Tj -T* -0.01 Tw -(cannot be used to type package-qualfied symbols, since colon is an)Tj -T* -0.272 Tw -[(ordinary character there. The one exception is that there )]TJ -/TT6 1 Tf -28.1785 0 TD -0 Tw -(is)Tj -/TT2 1 Tf -0.7222 0 TD -0.272 Tc -( a)Tj --28.9007 -1.2 TD -0 Tc -0.406 Tw -(package delimiter character in the OLD-INTERLISP readtable,)Tj -T* -0.044 Tw -(should you have a need to use itControl-)Tj -/TT7 1 Tf -19.2641 0 TD -0 Tw -<0042>Tj -/TT2 1 Tf -0.603 0 TD -0.044 Tw -(, which usually echoes)Tj --19.8671 -1.329 TD -0 Tw -(as ")Tj -/TT7 1 Tf -1.689 0 TD -<00420042>Tj -/TT2 1 Tf -1.2061 0 TD -(", though it may appear as a black rectangle in some fonts.)Tj --2.895 -2.029 TD -0.029 Tw -(The new executive does differ from the old one in several respects,)Tj -0 -1.2 TD -0.067 Tw -[(especially in terms of its programmatic interface. Complete details)]TJ -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT7 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 5381 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.212 Tw -[(of the new executive can be found in Appendix A. The Exec.)]TJ -0 -1.2 TD -0 Tw -(Some of the important differences are:)Tj -0 -1.9 TD -[()-1449.9(Executives are numbered)]TJ -T* -0.282 Tw -(Executives, other than the first one, are labeled with a distinct)Tj -0 -1.2 TD -0.065 Tw -[(number. This number appears in the exec windows title, and also)]TJ -T* -0.254 Tw -[(in its prompt, next to the event number. The OLD-INTERLISP)]TJ -T* -0 Tw -(executive does not include this exec number.)Tj -0 -1.9 TD -[()-1449.9(Event number allocation)]TJ -T* -0.027 Tw -(The numbers for events are allocated at the time the prompt for the)Tj -0 -1.2 TD -0.115 Tw -(event is printed, but all execs still share a common event number)Tj -T* -0.147 Tw -[(space and history list. This means that ?? shows all events that)]TJ -T* -0.032 Tw -(have occurred in )Tj -/TT6 1 Tf -7.7669 0 TD -0 Tw -(any)Tj -/TT2 1 Tf -1.6123 0 TD -0.032 Tw -[( executive, though not necessarily in the order)]TJ --9.3792 -1.2 TD -0.064 Tw -(in which the events actually occurred \(since it is the order in which)Tj -T* -0.154 Tw -[(the event numbers were allocated\). Events for which the type-in)]TJ -T* -0.289 Tw -(has not been completed are labeled "" in the ??)Tj -T* -0.095 Tw -[(listing. In the old executive, event numbers are not allocated until)]TJ -T* -0.138 Tw -(type-in is complete, which means that the number printed next to)Tj -T* -0.015 Tw -(the prompt is not necessarily the number associated with the event,)Tj -T* -0 Tw -(in the case that there has been activity in other executives.)Tj -0 -1.9 TD -0.126 Tw -(In the new executive, relative event specifications are local to the)Tj -0 -1.2 TD -0.091 Tw -(exec; e.g., )Tj -/TT4 1 Tf -5.0736 0 TD -0 Tw -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.091 Tw -[( refers to the most recent event in that specific exec.)]TJ --5.9628 -1.2 TD -0.038 Tw -(In the old executive, )Tj -/TT4 1 Tf -9.3244 0 TD -0 Tw -(-1)Tj -/TT2 1 Tf -0.8892 0 TD -0.038 Tw -[( referred to the immediately preceding event)]TJ --10.2135 -1.2 TD -0 Tw -(in )Tj -/TT6 1 Tf -1.0562 0 TD -(any)Tj -/TT2 1 Tf -1.6123 0 TD -( executive. )Tj --2.6685 -1.9 TD -[()-1449.9(New facility for commands)]TJ -T* -0.048 Tw -(The old Executive has commands based on )Tj -/TT4 1 Tf -20.012 0 TD -0 Tw -(LISPXMACROS)Tj -/TT2 1 Tf -7.334 0 TD -0.048 Tw -[(. The)]TJ --27.346 -1.2 TD -1.712 Tw -(new Executive has its own command facility,)Tj -/TT4 1 Tf -T* -0 Tw -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -9.665 0 TD -0.527 Tw -(, which allows commands to be named)Tj --9.665 -1.2 TD -0.066 Tw -(without regard to package, and to be written with familiar Common)Tj -T* -0 Tw -(Lisp style of argument list.)Tj -0 -1.9 TD -[()-1449.9(Commands are typed )]TJ -/TT6 1 Tf -11.6379 0 TD -(without)Tj -/TT2 1 Tf -3.1685 0 TD -( parentheses)Tj --14.8063 -1.9 TD -0.196 Tw -(In the old executive, a command could be typed with or without)Tj -0 -1.2 TD -0.011 Tw -[(enclosing parentheses. In the new executive, a parenthesized form)]TJ -T* -0 Tw -(is always interpreted as an EVAL-style input, never a command.)Tj -0 -1.9 TD -()Tj -/TT4 1 Tf -1.8 0 TD -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -( does not interact with the File Manager)Tj --4.5227 -1.9 TD -(In the Koto release, when you typed in the Exec)Tj -0 -1.7 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(SETQ FOO)Tj -/TT2 1 Tf -5.167 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(some-new-value-for-FOO)Tj -/TT2 1 Tf -11.3359 0 TD -(\))Tj --17.1138 -1.7 TD -0.196 Tw -(the executive responded )Tj -/TT4 1 Tf -11.7623 0 TD -(\(FOO reset\))Tj -/TT2 1 Tf -5.697 0 TD -(, and the file package was)Tj --17.4593 -1.2 TD -0.064 Tw -(told that)Tj -/TT6 1 Tf -3.6221 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.3418 0 TD -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.064 Tw -[(s value changed. Any files on which)]TJ -/TT6 1 Tf -16.7908 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.3418 0 TD -(FOO)Tj -/TT6 1 Tf -2.1665 0 TD -( )Tj -/TT2 1 Tf -0.3418 0 TD -(appeared)Tj --25.7714 -1.2 TD -0.091 Tw -(as a variable would then be marked as needing to be cleaned up.)Tj -T* -0 Tw -(If)Tj -/TT6 1 Tf -0.5557 0 TD -( )Tj -/TT4 1 Tf -0.4648 0 TD -(FOO)Tj -/TT6 1 Tf -2.1665 0 TD -( )Tj -/TT2 1 Tf -0.4648 0 TD -0.187 Tw -(appeared on no file, youd be prompted to put it on one)Tj --3.6518 -1.2 TD -0 Tw -(when you ran \()Tj -/TT4 1 Tf -6.6147 0 TD -(FILES?)Tj -/TT2 1 Tf -3.4443 0 TD -(\).)Tj --10.0591 -1.9 TD -0.086 Tw -[(This is still the case in the old executive. However, it is no longer)]TJ -0 -1.2 TD -0.078 Tw -[(the case in the new executive. If you are setting a variable that is)]TJ -T* -0.243 Tw -(significant to a program and you want to save it on a file, you)Tj -T* -0.031 Tw -(should use the Common Lisp macro )Tj -/TT4 1 Tf -16.4716 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.031 Tw -[( instead)]TJ --26.4712 -1.2 TD -0 Tw -(of )Tj -/TT4 1 Tf -1.1198 0 TD -(SETQ)Tj -/TT2 1 Tf -2.7227 0 TD -0.008 Tw -[(. This will give the symbol a definition of type )]TJ -/TT4 1 Tf -20.3751 0 TD -0 Tw -(VARIABLES)Tj -/TT2 1 Tf --24.2176 -1.2 TD -0.078 Tw -(\(rather than )Tj -/TT4 1 Tf -5.6033 0 TD -0 Tw -(VARS)Tj -/TT2 1 Tf -2.7783 0 TD -0.078 Tw -[(\), and it will be noticed by the File manager. If)]TJ --8.3816 -1.2 TD -0.096 Tw -(you want to change the value of the variable, you must either use)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -14 0 obj -<< -/Length 4953 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.27 Tw -[( again, or edit the variable using )]TJ -/TT4 1 Tf -16.3436 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.27 Tw -[( \(not)]TJ -/TT4 1 Tf --27.7323 -1.2 TD -0 Tw -(DV)Tj -/TT2 1 Tf -1.3892 0 TD -(\).)Tj --1.3892 -1.9 TD -[()-1449.9(Programmatic interface completely different)]TJ -T* -0.266 Tw -(As a first approximation, all the functions and variables in )Tj -/TT6 1 Tf -28.1732 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf --28.1732 -1.2 TD -0.042 Tw -(Sections 13.3 \(except the )Tj -/TT4 1 Tf -11.7305 0 TD -0 Tw -(LISPXPRINT)Tj -/TT2 1 Tf -5.8896 0 TD -0.042 Tw -[( family\) and 13.6 apply only)]TJ --17.6201 -1.2 TD -0.499 Tw -(to the Old Interlisp Executive, unless specified otherwise in)Tj -T* -0.745 Tw -[(Appendix A. In particular, the variables )]TJ -/TT4 1 Tf -22.8913 0 TD -0 Tw -(PROMPT#FLG)Tj -/TT2 1 Tf -6.8327 0 TD -(,)Tj -/TT4 1 Tf --29.724 -1.2 TD -(PROMTPCHARFORMS)Tj -/TT2 1 Tf -10.7773 0 TD -(, )Tj -/TT4 1 Tf -10.9987 0 TD -(SYSPRETTYFLG)Tj -/TT2 1 Tf -7.9453 0 TD -(,)Tj -/TT4 1 Tf --29.7213 -1.2 TD -(HISTORYSAVEFORMS)Tj -/TT2 1 Tf -10.779 0 TD -(, )Tj -/TT4 1 Tf -3.082 0 TD -(RESETFORMS)Tj -/TT2 1 Tf -6.9448 0 TD -(, )Tj -/TT4 1 Tf -3.0817 0 TD -(ARCHIVEFN)Tj -/TT2 1 Tf -5.8335 0 TD -(,)Tj -/TT4 1 Tf --29.721 -1.2 TD -(ARCHIVEFLG)Tj -/TT2 1 Tf -6.5 0 TD -(, )Tj -/TT4 1 Tf -4.4437 0 TD -(LISPXUSERFN)Tj -/TT2 1 Tf -7.0013 0 TD -(, )Tj -/TT4 1 Tf -4.444 0 TD -(LISPXMACROS)Tj -/TT2 1 Tf -7.334 0 TD -(,)Tj -/TT4 1 Tf --29.723 -1.2 TD -(LISPXHISTORYMACROS)Tj -/TT2 1 Tf -11.7788 0 TD -0.02 Tw -[( and )]TJ -/TT4 1 Tf -2.2642 0 TD -0 Tw -(READBUF)Tj -/TT2 1 Tf -4.8887 0 TD -0.02 Tw -[( are not used by the new)]TJ --18.9317 -1.2 TD -0.0003 Tc -0.0047 Tw -(Exec. The function )Tj -/TT4 1 Tf -8.8579 0 TD -0 Tc -0 Tw -(USEREXEC)Tj -/TT2 1 Tf -5.5011 0 TD -0.0001 Tc -0.0049 Tw -( invokes an old-style Executive, but)Tj --14.359 -1.2 TD -0 Tc -0.438 Tw -[(uses the package and readtable of its caller. The function)]TJ -/TT4 1 Tf -T* -0 Tw -(LISPXUNREAD)Tj -/TT2 1 Tf -7.167 0 TD -0.41 Tw -[( has no effect on the new Exec. Callers of)]TJ -/TT4 1 Tf --7.167 -1.2 TD -0 Tw -(LISPXEVAL)Tj -/TT2 1 Tf -5.557 0 TD -( are encouraged to use )Tj -/TT4 1 Tf -10.563 0 TD -(EXEC-EVAL)Tj -/TT2 1 Tf -5.722 0 TD -( instead.)Tj --21.842 -1.9 TD -0.213 Tw -(Some subsystems still use the old-style Executivein particular,)Tj -0 -1.2 TD -0 Tw -(the tty structure editor.)Tj -ET -2 w -54.01 461.99 m -558.01 461.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 450.08 Tm -(Chapter 14 Errors and Breaks)Tj -ET -1 w -54.01 446.49 m -558.01 446.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 427.2 Tm -0.0539 Tw -(Lisp extends the Interlisp break package to support multiple values)Tj -T* -0.132 Tw -[(and the Common Lisp lambda syntax. Interlisp errors have been)]TJ -T* -0 Tw -(converted to Common Lisp conditions.)Tj -0 -1.9 TD -0.14 Tw -(Note that Sections 14.2 through 14.6 in the )Tj -/TT6 1 Tf -20.411 0 TD -(Interlisp-D Reference)Tj --20.411 -1.2 TD -0 Tw -(Manual )Tj -/TT2 1 Tf -3.7596 0 TD -0.202 Tw -[( have been replaced by new Debugger information \(see)]TJ -/TT6 1 Tf --3.7596 -1.2 TD -0 Tw -(Common Lisp Implementation Notes\))Tj -/TT2 1 Tf -16.5068 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 332.64 Tm -(Section 14.3 Break Commands)Tj -ET -54.01 329.49 m -558.01 329.49 l -S -BT -/TT9 1 Tf -10 0 0 10 258 310.2 Tm -(\(II:14.6\))Tj -/TT2 1 Tf -0 -1.9 TD -(The )Tj -/TT4 1 Tf -2.001 0 TD -(!EVAL)Tj -/TT2 1 Tf -3 0 TD -( debugger command no longer exists.)Tj -/TT9 1 Tf --5.001 -1.9 TD -(\(II:14.10-11\))Tj -/TT2 1 Tf -T* -(The Break Commands )Tj -/TT11 1 Tf -10.2817 0 TD -(=)Tj -/TT2 1 Tf -0.6001 0 TD -( and )Tj -/TT11 1 Tf -2.2241 0 TD -(->)Tj -/TT2 1 Tf -1.2002 0 TD -( are no longer supported.)Tj -/TT4 1 Tf -12 0 0 12 54 224.35 Tm -(Section 14.6 Creating Breaks with BREAK1)Tj -ET -54.01 221.2 m -558.01 221.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 201.91 Tm -0.023 Tw -(While the function )Tj -/TT4 1 Tf -8.2956 0 TD -0 Tw -(BREAK1)Tj -/TT2 1 Tf -4.1104 0 TD -0.023 Tw -[( still exists, broken and traced functions)]TJ --12.406 -1.2 TD -0.022 Tw -[(are no longer redefined in terms of it. More primitive constructs are)]TJ -T* -0 Tw -(used.)Tj -/TT4 1 Tf -12 0 0 12 54 150.35 Tm -(Section 14.7 Signalling Errors)Tj -ET -54.01 147.2 m -558.01 147.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 127.91 Tm -0.166 Tw -[(Interlisp errors now use the new XCL error system. Most of the)]TJ -T* -0.091 Tw -(functions still exist for compatibility with existing Interlisp code, but)Tj -T* -0.017 Tw -[(the underlying machinery is different. There are some incompatible)]TJ -T* -0 Tw -(differences, however, especially with respect to error numbers.)Tj -0 -1.9 TD -0.024 Tw -(The old Interlisp error system had a set of registered error numbers)Tj -0 -1.2 TD -0.082 Tw -[(for well known error conditions, and all other errors were identified)]TJ -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -19 0 obj -<< -/Length 7084 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.098 Tw -[(by a string \(an error message\). In the new Lisp error system, all)]TJ -0 -1.2 TD -1.054 Tw -(errors are handled by signalling an object of type)Tj -/TT4 1 Tf -T* -0 Tw -(XCL:CONDITION)Tj -/TT2 1 Tf -7.944 0 TD -0.208 Tw -[(. The mapping from Interlisp error numbers to)]TJ --7.944 -1.2 TD -0 Tw -(Lisp conditions is given below in Section 14.10.)Tj -0 -1.9 TD -0.095 Tw -(Since one cannot in general map a condition object to an Interlisp)Tj -0 -1.2 TD -0.377 Tw -(error number, the function )Tj -/TT4 1 Tf -13.9465 0 TD --0.0002 Tc -0 Tw -(ERRORN )Tj -/TT2 1 Tf -4.9873 0 TD -0 Tc -0.377 Tw -[(no longer exists. The)]TJ --18.9338 -1.2 TD -0.292 Tw -(equivalent functionality exists by examining the special variable)Tj -/TT4 1 Tf -T* -0 Tw -(*LAST-CONDITION*)Tj -/TT2 1 Tf -9.333 0 TD -0.316 Tw -(, whose value is the condition object most)Tj --9.333 -1.2 TD -0 Tw -(recently signaled.)Tj -/TT4 1 Tf -0 -1.9 TD -0.261 Tw -(\(ERRORX ERXM\))Tj -/TT2 1 Tf -8.372 0 TD -[( calls )]TJ -/TT4 1 Tf -3.0782 0 TD -0 Tw -(CL:ERROR)Tj -/TT2 1 Tf -5.2768 0 TD -0.261 Tw -[( after first converting)]TJ -/TT4 1 Tf -9.8421 0 TD -[( ERXM)]TJ -/TT2 1 Tf --26.5691 -1.2 TD -0.082 Tw -[(into a condition in the following way: If )]TJ -/TT4 1 Tf -18.0813 0 TD -0 Tw -(ERXM)Tj -/TT2 1 Tf -2.8892 0 TD -0.082 Tw -[( is )]TJ -/TT4 1 Tf -1.4418 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.082 Tw -(, the value of)Tj -/TT4 1 Tf --24.0231 -1.2 TD -0 Tw -(*LAST-CONDITION* )Tj -/TT2 1 Tf -10.1658 0 TD -0.555 Tw -(is used; if )Tj -/TT4 1 Tf -6.167 0 TD -0 Tw -(ERXM)Tj -/TT2 1 Tf -2.8892 0 TD -0.555 Tw -[( is an Interlisp error)]TJ --19.222 -1.2 TD -0.221 Tw -(descriptor, it is first converted to a condition; finally, if)Tj -/TT4 1 Tf -25.3879 0 TD -[( ERXM)]TJ -/TT2 1 Tf -3.388 0 TD -[( is)]TJ --28.7759 -1.2 TD -0.128 Tw -(already a condition, it is passed along unchanged. )Tj -/TT4 1 Tf -23.484 0 TD -0 Tw -(ERRORX)Tj -/TT2 1 Tf -4.2783 0 TD -0.128 Tw -[( also)]TJ --27.7623 -1.2 TD -0.116 Tw -(sets up a proceed case for)Tj -/TT4 1 Tf -12.3647 0 TD -[( XCL:PROCEED)]TJ -/TT2 1 Tf -7.6722 0 TD -(, which will attempt to)Tj --20.0368 -1.2 TD -0.272 Tw -(re-evaluate the caller of)Tj -/TT4 1 Tf -11.2662 0 TD -[( ERRORX)]TJ -/TT2 1 Tf -4.8282 0 TD -(, much as OK did in the old)Tj --16.0943 -1.2 TD -0 Tw -(Interlisp break package.)Tj -/TT4 1 Tf -0 -1.9 TD -(ERROR)Tj -/TT2 1 Tf -3.611 0 TD -(, )Tj -/TT4 1 Tf -2.028 0 TD -(HELP)Tj -/TT2 1 Tf -2.667 0 TD -(, )Tj -/TT4 1 Tf -2.028 0 TD -(SHOULDNT)Tj -/TT2 1 Tf -5.5552 0 TD -(, )Tj -/TT4 1 Tf -2.0277 0 TD -(RESET)Tj -/TT2 1 Tf -3.3342 0 TD -(,)Tj -/TT4 1 Tf -0.2778 0 TD -1.472 Tw -[( ERRORMESS)]TJ -/TT2 1 Tf -8.1952 0 TD -0 Tw -(,)Tj -/TT4 1 Tf --29.724 -1.2 TD -(ERRORMESS1)Tj -/TT2 1 Tf -7.0015 0 TD -0.03 Tw -(, and )Tj -/TT4 1 Tf -2.562 0 TD -0 Tw -(ERRORSTRING)Tj -/TT2 1 Tf -7.3886 0 TD -0.03 Tw -[( work as before. All output is)]TJ --16.952 -1.2 TD -0 Tw -(directed to )Tj -/TT4 1 Tf -4.9473 0 TD -(*ERROR-OUTPUT*)Tj -/TT2 1 Tf -8.8327 0 TD -(, initially the terminal.)Tj -/TT4 1 Tf --13.78 -1.9 TD -(ERROR!)Tj -/TT2 1 Tf -3.944 0 TD -0.326 Tw -[( is equivalent to the new error systems )]TJ -/TT4 1 Tf -20.171 0 TD -0 Tw -(XCL:ABORT)Tj -/TT2 1 Tf --24.115 -1.2 TD -0.193 Tw -(proceed function, except that if no )Tj -/TT4 1 Tf -16.4456 0 TD -0 Tw -(ERRORSET)Tj -/TT2 1 Tf -5.5554 0 TD -0.193 Tw -[( or )]TJ -/TT4 1 Tf -1.8308 0 TD -0 Tw -(XCL:CATCH-)Tj --23.8318 -1.2 TD -(ABORT)Tj -/TT2 1 Tf -3.555 0 TD -( is found, it unwinds all the way to the top of the process.)Tj -/TT4 1 Tf --3.555 -1.9 TD -(SETERRORN )Tj -/TT2 1 Tf -6.5672 0 TD -0.011 Tw -(converts its arguments into a condition, then sets the)Tj --6.5672 -1.2 TD -0 Tw -(value of )Tj -/TT4 1 Tf -3.7803 0 TD -(*LAST-CONDITION*)Tj -/TT2 1 Tf -9.333 0 TD -( to the result.)Tj -/TT4 1 Tf -12 0 0 12 54 379.64 Tm -( Section 14.8 Catching Errors)Tj -ET -54.01 376.49 m -558.01 376.49 l -S -BT -10 0 0 10 258 357.2 Tm -(ERRORSET)Tj -/TT2 1 Tf -5.5562 0 TD -(, )Tj -/TT4 1 Tf -0.6417 0 TD -(ERSETQ)Tj -/TT2 1 Tf -4.1118 0 TD -0.086 Tw -[( and )]TJ -/TT4 1 Tf -2.3961 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf -4.0557 0 TD -0.086 Tw -[( have been reimplemented in)]TJ --16.7614 -1.2 TD -0.05 Tw -[(terms of the new error system , but their behavior is essentially the)]TJ -T* -0.193 Tw -(same as before. )Tj -/TT4 1 Tf -8.4981 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf -4.0559 0 TD -0.193 Tw -[( catches all errors \(conditions of type)]TJ -/TT4 1 Tf --12.554 -1.2 TD -0 Tw -(CL:ERROR )Tj -/TT2 1 Tf -5.6482 0 TD -0.093 Tw -(and its descendants\), and sets up a proceed case for)Tj -/TT4 1 Tf --5.6482 -1.2 TD -0 Tw -(XCL:ABORT)Tj -/TT2 1 Tf -5.8882 0 TD -0.151 Tw -[( so that )]TJ -/TT4 1 Tf -4.0106 0 TD -0 Tw -(ERROR!)Tj -/TT2 1 Tf -3.9443 0 TD -0.151 Tw -[( will return from it. )]TJ -/TT4 1 Tf -9.7806 0 TD -0 Tw -(ERSETQ)Tj -/TT2 1 Tf -4.1122 0 TD -0.151 Tw -[( also)]TJ --27.736 -1.2 TD -0.08 Tw -(sets up a proceed case for)Tj -/TT4 1 Tf -12.1847 0 TD -[( XCL:ABORT)]TJ -/TT2 1 Tf -6.246 0 TD -0.0798 Tw -(, though it does not catch)Tj --18.4307 -1.2 TD -0 Tw -(errors.)Tj -0 -1.9 TD -0.132 Tw -(One consequence of the new implementation is that there are no)Tj -0 -1.2 TD -0.29 Tw -(longer frames named )Tj -/TT4 1 Tf -10.597 0 TD -0 Tw -(ERRORSET)Tj -/TT2 1 Tf -5.5562 0 TD -0.29 Tw -[( on the stack; programs that)]TJ --16.1532 -1.2 TD -0 Tw -(explicitly searched for such frames will have to be changed.)Tj -/TT4 1 Tf -0 -1.9 TD -(ERRORTYPELIST)Tj -/TT2 1 Tf -8.39 0 TD -0.72 Tw -[( is no longer supported. The equivalent)]TJ --8.39 -1.2 TD -0.2268 Tw -[(functionality is provided by default handlers. Although condition)]TJ -T* -0.062 Tw -(handlers provide a more powerful mechanism for programmatically)Tj -T* -0.332 Tw -(responding to an error condition, old )Tj -/TT4 1 Tf -18.2801 0 TD -0 Tw -(ERRORTYPELST)Tj -/TT2 1 Tf -8.1118 0 TD -0.332 Tw -[( entries)]TJ --26.3919 -1.2 TD -0.255 Tw -[(generally cannot be translated directly. Condition handlers that)]TJ -T* -0.07 Tw -(want to resume a computation \(rather than, say, abort from a well-)Tj -T* -0.029 Tw -(know stack location\) generally require the cooperation of a proceed)Tj -T* -0.258 Tw -(case in the signalling code; there is no easy way to provide a)Tj -T* -0 Tw -(substitute value for the "culprit" to be re-evaluated in a general way.)Tj -0 -1.9 TD -0.007 Tw -(One important difference between )Tj -/TT4 1 Tf -15.3703 0 TD -0 Tw -(ERRORTYPELIST)Tj -/TT2 1 Tf -8.3896 0 TD -0.007 Tw -[( and condition)]TJ --23.7599 -1.2 TD -0.166 Tw -(handlers is their behavior with respect to )Tj -/TT4 1 Tf -19.3378 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf -4.0557 0 TD -0.166 Tw -[(. In Koto, the)]TJ --23.3934 -1.2 TD -0.179 Tw -(relevant error handler on )Tj -/TT4 1 Tf -11.9445 0 TD -0 Tw -(ERRORTYPELST)Tj -/TT2 1 Tf -8.1118 0 TD -0.179 Tw -[( would be tried, even)]TJ --20.0563 -1.2 TD -0.016 Tw -(for errors occurring underneath an )Tj -/TT4 1 Tf -15.5326 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf -4.0557 0 TD -0.016 Tw -[(. In Lyric, the )]TJ -/TT4 1 Tf -6.3603 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf --25.9486 -1.2 TD -0.171 Tw -(traps all errors before the default condition handlers can see the)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -22 0 obj -<< -/Length 4901 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.232 Tw -[(error. This means, for example, that the behavior of )]TJ -/TT4 1 Tf -25.6086 0 TD -0 Tw -(\(NLSETQ)Tj --25.6086 -1.2 TD -0.096 Tw -(\(OPENSTREAM --\)\))Tj -/TT2 1 Tf -9.095 0 TD -[( is now different if the )]TJ -/TT4 1 Tf -10.3031 0 TD -0 Tw -(OPENSTREAM)Tj -/TT2 1 Tf -7.0559 0 TD -0.096 Tw -[( causes)]TJ --26.454 -1.2 TD -0.598 Tw -(a file not found errorin Koto, the system would search)Tj -/TT4 1 Tf -T* -0 Tw -(DIRECTORIES)Tj -/TT2 1 Tf -6.834 0 TD -0.357 Tw -[( for the file; in Lyric, the )]TJ -/TT4 1 Tf -13.1147 0 TD -0 Tw -(NLSETQ)Tj -/TT2 1 Tf -4.0557 0 TD -0.357 Tw -[( returns )]TJ -/TT4 1 Tf -4.382 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf --28.3863 -1.2 TD -0.53 Tw -(immediately without searching, since the default handler for)Tj -/TT4 1 Tf -T* -0 Tw -(XCL:FILE-NOT-FOUND)Tj -/TT2 1 Tf -10.8315 0 TD -( is not invoked.)Tj -/TT4 1 Tf -12 0 0 12 54 642.64 Tm -(Section 14.9 Changing and Restoring System State)Tj -ET -54.01 639.49 m -558.01 639.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 624.2 Tm -0.743 Tw -(The special forms )Tj -/TT4 1 Tf -10.3984 0 TD -0 Tw -(RESETLST)Tj -/TT2 1 Tf -5.2227 0 TD -(, )Tj -/TT4 1 Tf -1.2987 0 TD -(RESETSAVE)Tj -/TT2 1 Tf -6.0571 0 TD -(, )Tj -/TT4 1 Tf -1.2987 0 TD -(RESETVAR)Tj -/TT2 1 Tf -5.4453 0 TD -(,)Tj -/TT4 1 Tf --29.7209 -1.2 TD -(RESETVARS)Tj -/TT2 1 Tf -6.1123 0 TD -0.041 Tw -[( and )]TJ -/TT4 1 Tf -2.3061 0 TD -0 Tw -(RESETFORM)Tj -/TT2 1 Tf -6.2778 0 TD -0.0409 Tw -[( still exist, but are implemented by)]TJ --14.6963 -1.2 TD -0.027 Tw -(a new mechanism that also supports Common Lisps )Tj -/TT4 1 Tf -23.8932 0 TD -0 Tw -(CL:UNWIND-)Tj --23.8932 -1.2 TD -(PROTECT)Tj -/TT2 1 Tf -4.778 0 TD -0.347 Tw -[(. Common Lisps )]TJ -/TT4 1 Tf -9.3904 0 TD -0 Tw -(CL:THROW)Tj -/TT2 1 Tf -5.4426 0 TD -0.347 Tw -[( and \(in most cases\))]TJ --19.611 -1.2 TD -0 Tw -(Interlisps )Tj -/TT4 1 Tf -4.5355 0 TD -(RETFROM)Tj -/TT2 1 Tf -4.9435 0 TD -0.034 Tw -[( and related control transfer constructs cause)]TJ --9.479 -1.2 TD -0.015 Tw -(the cleanup forms of both )Tj -/TT4 1 Tf -11.6375 0 TD -0 Tw -(CL:UNWIND-PROTECT)Tj -/TT2 1 Tf -10.8872 0 TD -0.015 Tw -[( and )]TJ -/TT4 1 Tf -2.2541 0 TD -0 Tw -(RESETLST)Tj -/TT2 1 Tf --24.7788 -1.2 TD -0.038 Tw -[(\(etc\) to be performed. This is discussed in more detail in the notes)]TJ -T* -0 Tw -(for Chapter 11, the stack.)Tj -/TT4 1 Tf -12 0 0 12 54 512.64 Tm -(Section 14.10 Error List)Tj -ET -54.01 509.49 m -558.01 509.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 490.2 Tm -0.017 Tw -[(Most of the Interlisp errors are mapped into condition types in Lisp.)]TJ -T* -0.171 Tw -(Some are no longer supported. Following is the list of error type)Tj -T* -0.36 Tw -(mappings. The first name is the condition type that the error)Tj -T* -0.055 Tw -(descriptor turns into. If there is a second name, it is the slot whose)Tj -T* -0.041 Tw -(value is set to)Tj -/TT4 1 Tf -6.2373 0 TD -[( CADR )]TJ -/TT2 1 Tf -3.5263 0 TD -(of the error descriptor. Any additional pairs of)Tj --9.7636 -1.2 TD -0.09 Tw -(items are the values of other slots set by the mapping. Attempting)Tj -T* -0.216 Tw -[(to use an unsupported error type number will result in a simple)]TJ -T* -0 Tw -(error to that effect.)Tj -/TT4 1 Tf --2.4 -1.9 TD -(0)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -(1)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(2)-1843.8(STACK-OVERFLOW)]TJ -T* -[(3)-1843.8(ILLEGAL-RETURN )]TJ -T* -[(4)-1843.8(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6228 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE LIST)Tj --19.9011 -1.7 TD -[(5)-1843.8(XCL:SIMPLE-DEVICE-ERROR )]TJ -/TT6 1 Tf -16.7338 0 TD -(MESSAGE)Tj -/TT4 1 Tf --16.7338 -1.7 TD -[(6)-1843.8(XCL:ATTEMPT-TO-CHANGE-CONSTANT)]TJ -T* -[(7)-1843.8(XCL:ATTEMPT-TO-RPLAC-NIL )]TJ -/TT6 1 Tf -17.1758 0 TD -(MESSAGE)Tj -/TT4 1 Tf --17.1758 -1.7 TD -0.0001 Tc --0.0001 Tw -[(8)-1843.7(ILLEGAL-GO TAG)]TJ -T* -0 Tc -0 Tw -[(9)-1843.8(XCL:FILE-WONT-OPEN PATHNAME)]TJ -T* -[(10)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6227 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE)Tj --17.501 -1 TD -(CL:NUMBER)Tj --2.4 -1.7 TD -[(11)-1287.7(XCL:SYMBOL-NAME-TOO-LONG)]TJ -T* -[(12)-1287.7(XCL:SYMBOL-HT-FULL)]TJ -T* -[(13)-1287.7(XCL:STREAM-NOT-OPEN )]TJ -/TT6 1 Tf -14.8438 0 TD -(STREAM)Tj -/TT4 1 Tf --14.8438 -1.7 TD -[(14)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6227 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE)Tj --17.501 -1 TD -(CL:SYMBOL)Tj --2.4 -1.7 TD -(15)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(16)-1287.7(END-OF-FILE )]TJ -/TT6 1 Tf -9.011 0 TD -(STREAM)Tj -/TT4 1 Tf --9.011 -1.7 TD -[(17)-1287.7(INTERLISP-ERROR )]TJ -/TT6 1 Tf -11.8448 0 TD -(MESSAGE)Tj -/TT4 1 Tf --11.8448 -1.7 TD -(18)Tj -/TT2 1 Tf -2.4 0 TD -(Not supported \(control-B interrupt\))Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -25 0 obj -<< -/Length 3564 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 234 730.2 Tm -[(19)-1287.7(ILLEGAL-STACK-ARG )]TJ -/TT6 1 Tf -13.2878 0 TD -(ARG)Tj -/TT4 1 Tf --13.2878 -1.7 TD -(20)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(21)-1287.7(XCL:ARRAY-SPACE-FULL)]TJ -T* -[(22)-1287.7(XCL:FS-RESOURCES-EXCEEDED)]TJ -T* -[(23)-1287.7(XCL:FILE-NOT-FOUND )]TJ -/TT6 1 Tf -13.5098 0 TD -(PATHNAME)Tj -/TT4 1 Tf --13.5098 -1.7 TD -(24)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(25)-1287.7(INVALID-ARGUMENT-LIST )]TJ -/TT6 1 Tf -15.2878 0 TD -(ARGUMENT)Tj -/TT4 1 Tf --15.2878 -1.7 TD -[(26)-1287.7(XCL:HASH-TABLE-FULL )]TJ -/TT6 1 Tf -14.3978 0 TD -(TABLE)Tj -/TT4 1 Tf --14.3978 -1.7 TD -[(27)-1287.7(INVALID-ARGUMENT-LIST )]TJ -/TT6 1 Tf -15.2877 0 TD -(ARGUMENT)Tj -/TT4 1 Tf --15.2877 -1.7 TD -[(28)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -17.3987 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -1.776 Tw -[( :EXPECTED-TYPE)]TJ --19.277 -1 TD -0 Tw -(ARRAYP)Tj --2.4 -1.7 TD -(29)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(30)-1287.7(STACK-POINTER-RELEASED )]TJ -/TT6 1 Tf -16.678 0 TD -(NAME)Tj -/TT4 1 Tf --16.678 -1.7 TD -[(31)-1287.7(XCL:STORAGE-EXHAUSTED)]TJ -T* -(32)Tj -/TT2 1 Tf -2.4 0 TD -(Not supported \(attempt to use item of incorrect type\))Tj -/TT4 1 Tf --2.4 -1.7 TD -(33)Tj -/TT2 1 Tf -2.4 0 TD -(Not supported \(illegal data type number\))Tj -/TT4 1 Tf --2.4 -1.7 TD -[(34)-1287.7(XCL:DATA-TYPES-EXHAUSTED)]TJ -T* -[(35)-1287.7(XCL:ATTEMPT-TO-CHANGE-CONSTANT)]TJ -T* -(36)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -(37)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(38)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6227 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE)Tj --17.501 -1 TD -(READTABLEP)Tj --2.4 -1.7 TD -[(39)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6227 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE)Tj --17.501 -1 TD -(TERMTABLEP)Tj --2.4 -1.7 TD -(40)Tj -/TT2 1 Tf -2.4 0 TD -(Obsolete)Tj -/TT4 1 Tf --2.4 -1.7 TD -[(41)-1287.7(XCL:FS-PROTECTION-VIOLATION)]TJ -T* -[(42)-1287.7(XCL:INVALID-PATHNAME )]TJ -/TT6 1 Tf -15.0098 0 TD -(PATHNAME)Tj -/TT4 1 Tf --15.0098 -1.7 TD -(43)Tj -/TT2 1 Tf -2.4 0 TD -(Not supported \(user break\))Tj -/TT4 1 Tf --2.4 -1.7 TD --0.0001 Tc -[(44)-1287.8(UNBOUND-VARIABLE )]TJ -/TT6 1 Tf -13.2318 0 TD -0 Tc -(NAME)Tj -/TT4 1 Tf --13.2318 -1.7 TD -[(45)-1287.7(UNDEFINED-CAR-OF-FORM )]TJ -/TT6 1 Tf -16.0088 0 TD -(FUNCTION)Tj -/TT4 1 Tf --16.0088 -1.7 TD -[(46)-1287.7(UNDEFINED-FUNCTION-IN-APPLY)]TJ -T* -[(47)-1287.7(XCL:CONTROL-E-INTERRUPT)]TJ -T* -[(48)-1287.7(XCL:FLOATING-UNDERFLOW)]TJ -T* -[(49)-1287.7(XCL:FLOATING-OVERFLOW)]TJ -T* -(50)Tj -/TT2 1 Tf -2.4 0 TD -(Not supported \(integer overflow\))Tj -/TT4 1 Tf --2.4 -1.7 TD -[(51)-1287.7(XCL:SIMPLE-TYPE-ERROR )]TJ -/TT6 1 Tf -15.6227 0 TD -(CULPRIT)Tj -/TT4 1 Tf -4.2783 0 TD -( :EXPECTED-TYPE)Tj --17.501 -1 TD -(CL:HASH-TABLE)Tj --2.4 -1.7 TD -[(52)-1287.7(TOO-MANY-ARGUMENTS )]TJ -/TT6 1 Tf -14.8988 0 TD -(CALLEE)Tj -/TT4 1 Tf -3.8354 0 TD -( :MAXIMUM CL:CALL-)Tj --16.3343 -1 TD -(ARGUMENTS-LIMIT)Tj -/TT2 1 Tf -0 -1.7 TD -0.179 Tw -[(Note that there are many other condition types in Lisp; see the)]TJ -0 -1.2 TD -0.189 Tw -(error system documentation in the)Tj -/TT6 1 Tf -15.8742 0 TD -[( Common Lisp Implementation)]TJ --15.8742 -1.2 TD -0 Tw -(Notes)Tj -/TT2 1 Tf -2.6123 0 TD -( for details.)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -28 0 obj -<< -/Length 6325 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 15 Breaking Functions and Debugging)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 702.2 Tm -0.0001 Tc -0.0029 Tw -(In Lyric the uses of BREAK, TRACE, and ADVISE are unchanged,)Tj -0 -1.2 TD -0 Tc -0.499 Tw -[(from the users point of view, but the internals of their)]TJ -T* -0 Tw -(implementation are quite different.)Tj -0 -1.9 TD -0.57 Tw -(For complete documentation on the new implementation of)Tj -0 -1.2 TD -0.919 Tw -(breaking, tracing and advising, see the)Tj -/TT6 1 Tf -21.7171 0 TD -[( Common Lisp)]TJ --21.7171 -1.2 TD -0 Tw -(Implementation Notes)Tj -/TT2 1 Tf -9.7271 0 TD -(, Section 25.3.)Tj --9.7271 -1.9 TD -(In particular, you should note the following differences:)Tj -1.8 -1.9 TD -0.096 Tw -[()-849.9(The variable )]TJ -/TT4 1 Tf -7.1728 0 TD -0 Tw -(BRKINFOLST)Tj -/TT2 1 Tf -6.4432 0 TD -0.096 Tw -[( no longer exists and the format)]TJ --12.416 -1.2 TD -0.099 Tw -(of the value of the variable )Tj -/TT4 1 Tf -12.601 0 TD -0 Tw -(BROKENFNS)Tj -/TT2 1 Tf -6.3335 0 TD -0.099 Tw -[( has changed. In)]TJ --18.9345 -1.2 TD -0 Tw -(addition, the )Tj -/TT4 1 Tf -5.7266 0 TD -(BRKINFO)Tj -/TT2 1 Tf -4.5552 0 TD -( property is no longer used.)Tj --11.4817 -1.9 TD -()Tj -/TT4 1 Tf -1.2 0 TD -(BREAK)Tj -/TT2 1 Tf -3.5557 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(TRACE)Tj -/TT2 1 Tf -3.4443 0 TD -( no longer work on CLISP words.)Tj --10.4241 -1.9 TD -[()-849.9(The )]TJ -/TT4 1 Tf -3.327 0 TD -(BREAKIN)Tj -/TT2 1 Tf -4.555 0 TD -0.126 Tw -[( and )]TJ -/TT4 1 Tf -2.4761 0 TD -0 Tw -(UNBREAKIN)Tj -/TT2 1 Tf -5.9989 0 TD -0.126 Tw -[( functions no longer exist.)]TJ --15.157 -1.2 TD -0.421 Tw -[(No comparable facility exists in Lisp. The user can)]TJ -T* -0.713 Tw -(manually insert calls to the Common Lisp function)Tj -/TT4 1 Tf -T* -0 Tw -(CL:BREAK)Tj -/TT2 1 Tf -5.221 0 TD -0.12 Tw -[( in order to create a breakpoint at that point in)]TJ --5.221 -1.2 TD -0 Tw -(the function.)Tj --3 -1.9 TD -(Please note the following additional changes to breaking functions: )Tj -/TT4 1 Tf -12 0 0 12 54 440.64 Tm -(Section 15.1 Breaking Functions and Debugging)Tj -ET -54.01 437.49 m -558.01 437.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 422.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(BREAK0)Tj -/TT2 1 Tf -4.1118 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FN WHEN COMS)Tj -/TT2 1 Tf -7.9438 0 TD -[( \))-23253.8([Function])]TJ -ET -126.01 419.49 m -558.01 419.49 l -S -BT -10 0 0 10 258 404.2 Tm -0.196 Tw -(The function )Tj -/TT4 1 Tf -6.1732 0 TD -0 Tw -(BREAK0)Tj -/TT2 1 Tf -4.1118 0 TD -0.196 Tw -[( now works when applied to an undefined)]TJ --10.2851 -1.2 TD -0.256 Tw -[(function. This allows you to use the breaking facility to create)]TJ -T* -0.266 Tw -[("stubs" that generate a breakpoint when called. You can then)]TJ -T* -0.042 Tw -(examine the arguments passed and use the )Tj -/TT4 1 Tf -20.0289 0 TD -0 Tw -(RETURN)Tj -/TT2 1 Tf -4.1641 0 TD -0.042 Tw -[( command in)]TJ --24.193 -1.2 TD -0 Tw -(the debugger to return the proper result\(s\).)Tj -0 -1.9 TD -0.111 Tw -(The "break commands" facility \(the)Tj -/TT6 1 Tf -15.8811 0 TD -[( COMS)]TJ -/TT2 1 Tf -3.3888 0 TD -[( argument\) is no longer)]TJ --19.2699 -1.2 TD -0.177 Tw -(supported. )Tj -/TT4 1 Tf -5.6353 0 TD -0 Tw -(BREAK0)Tj -/TT2 1 Tf -4.1118 0 TD -0.177 Tw -[( now signals an error when supplied with a)]TJ --9.7471 -1.2 TD -0 Tw -(non-)Tj -/TT4 1 Tf -2.0015 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.383 Tw -[( third argument. If you need finer control over the)]TJ --3.6123 -1.2 TD -0.026 Tw -(functioning of breakpoints you are directed to the )Tj -/TT4 1 Tf -22.1108 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.026 Tw -[( facility; it)]TJ --25.834 -1.2 TD -0.293 Tw -(offers complete control of how and when the given function is)Tj -T* -0 Tw -(evaluated.)Tj -0 -1.9 TD -0.146 Tw -(Passing a non-atomic argument in the form )Tj -/TT4 1 Tf -20.4204 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -0.146 Tw -[( IN )]TJ -/TT6 1 Tf -1.8477 0 TD -0 Tw -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.146 Tw -[( as the)]TJ --26.7124 -1.2 TD -0.46 Tw -(first argument to )Tj -/TT4 1 Tf -8.8829 0 TD -0 Tw -(BREAK0)Tj -/TT2 1 Tf -4.1118 0 TD -0.46 Tw -[( still has the effect of creating a)]TJ --12.9947 -1.2 TD -0.049 Tw -(breakpoint wherever )Tj -/TT6 1 Tf -9.4364 0 TD -0 Tw -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -0.049 Tw -[( calls )]TJ -/TT6 1 Tf -2.6542 0 TD -0 Tw -(FN1)Tj -/TT2 1 Tf -1.8892 0 TD -0.049 Tw -[(. However, it no longer creates)]TJ --15.8689 -1.2 TD -0.096 Tw -(a function named )Tj -/TT6 1 Tf -8.2377 0 TD -0 Tw -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -0.096 Tw -[( to do so. In addition, the format of)]TJ --13.682 -1.2 TD -0.073 Tw -(the value of the )Tj -/TT4 1 Tf -7.4082 0 TD -0 Tw -(NAMESCHANGED)Tj -/TT2 1 Tf -8.667 0 TD -0.073 Tw -[( property has changed and the)]TJ -/TT4 1 Tf --16.0752 -1.2 TD -0 Tw -(ALIAS)Tj -/TT2 1 Tf -3 0 TD -( property is no longer used.)Tj --16.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(TRACE)Tj -/TT2 1 Tf -3.4443 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(\))Tj -34.0868 0 TD -([Function])Tj -ET -126.01 176.49 m -558.01 176.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 161.2 Tm -(TRACE)Tj -/TT2 1 Tf -3.4443 0 TD -0.427 Tw -[( is no longer a special case of )]TJ -/TT4 1 Tf -16.8681 0 TD -0 Tw -(BREAK)Tj -/TT2 1 Tf -3.5557 0 TD -0.427 Tw -(, though the)Tj --23.8681 -1.2 TD -0 Tw -(functions )Tj -/TT4 1 Tf -4.4733 0 TD -(UNBREAK)Tj -/TT2 1 Tf -5 0 TD -0.193 Tw -[( and )]TJ -/TT4 1 Tf -2.6101 0 TD -0 Tw -(REBREAK)Tj -/TT2 1 Tf -4.9426 0 TD -0.193 Tw -[( continue to work on traced)]TJ --17.026 -1.2 TD -0 Tw -(functions.)Tj -0 -1.9 TD -0.004 Tw -(In addition, the function )Tj -/TT4 1 Tf -10.6346 0 TD -0 Tw -(TRACE)Tj -/TT2 1 Tf -3.4443 0 TD -0.0002 Tc -0.0038 Tw -( no longer calls )Tj -/TT4 1 Tf -7.0199 0 TD -0 Tc -0 Tw -(BREAK0)Tj -/TT2 1 Tf -4.1118 0 TD -0.0003 Tc -0.0037 Tw -( in order to)Tj --25.2107 -1.2 TD -0.0001 Tc -0.0039 Tw -(do its job. Also, non-atomic arguments to )Tj -/TT4 1 Tf -18.7078 0 TD -0 Tc -0 Tw -(TRACE)Tj -/TT2 1 Tf -3.4443 0 TD -0.0002 Tc -0.0038 Tw -( no longer specify)Tj --22.1521 -1.2 TD -0 Tc -0 Tw -(forms the user wishes to see in the tracing output.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -31 0 obj -<< -/Length 5106 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 126 730.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(UNBREAK)Tj -/TT2 1 Tf -5 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(\))Tj -32.5312 0 TD -([Function])Tj -ET -126.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 712.2 Tm -0.314 Tw -(The function )Tj -/TT4 1 Tf -6.4092 0 TD -0 Tw -(UNBREAK)Tj -/TT2 1 Tf -5 0 TD -0.314 Tw -[( is no longer implemented in terms of)]TJ -/TT4 1 Tf --11.4092 -1.2 TD -0 Tw -(UNBREAK0)Tj -/TT2 1 Tf -5.5562 0 TD -(, although that function continues to exist.)Tj -/TT4 1 Tf -12 0 0 12 54 672.64 Tm -(Section 15.2 Advising)Tj -ET -54.01 669.49 m -558.01 669.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 650.2 Tm -0.292 Tw -[(The implementation of advising has been completely reworked.)]TJ -0 -1.2 TD -0.014 Tw -(While the semantics implied by the code shown in Section 15.2.1 of)Tj -T* -0 Tw -(the )Tj -/TT6 1 Tf -1.784 0 TD -0.116 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.2379 0 TD -[( is still supported, the details are)]TJ --15.0218 -1.2 TD -0.11 Tw -[(quite different. In particular, it is now possible to advise functions)]TJ -T* -0.166 Tw -(that return multiple values and for )Tj -/TT4 1 Tf -16.1151 0 TD -0 Tw -(AFTER)Tj -/TT2 1 Tf -3.333 0 TD -0.166 Tw -(-style advice to access)Tj --19.4481 -1.2 TD -0.41 Tw -[(those values. Also, all advice is now compiled, rather than)]TJ -T* -0.332 Tw -[(interpreted. The advising facility no longer makes use of the)]TJ -T* -0 Tw -(special forms )Tj -/TT4 1 Tf -6.1685 0 TD -(ADV-PROG)Tj -/TT2 1 Tf -5.3892 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(ADV-RETURN)Tj -/TT2 1 Tf -6.6108 0 TD -(, and )Tj -/TT4 1 Tf -2.502 0 TD -(ADV-SETQ)Tj -/TT2 1 Tf -5.167 0 TD -(.)Tj --26.3931 -1.9 TD -(You should also note the following changes to the advise facility:)Tj -1.8 -1.9 TD -0.301 Tw -[()-849.9(The editing of advice has changed slightly. In previous)]TJ -1.2 -1.2 TD -0.133 Tw -(releases, the advice and original function-body were edited)Tj -T* -0.036 Tw -[(simultaneously. In Lyric, they can only be edited separately.)]TJ -T* -0.394 Tw -(When you finish editing the advice for a function, that)Tj -T* -0 Tw -(function is automatically re-advised using the new advice.)Tj --1.2 -1.9 TD -0.103 Tw -[()-849.9(The variable)]TJ -/TT4 1 Tf -6.8059 0 TD -0.1022 Tw -[( ADVINFOLST)]TJ -/TT2 1 Tf -6.7687 0 TD -0.103 Tw -[( no longer exists and the format)]TJ --12.3747 -1.2 TD -0.088 Tw -(of the value of the variable )Tj -/TT4 1 Tf -12.535 0 TD -0 Tw -(ADVISEDFNS)Tj -/TT2 1 Tf -6.4453 0 TD -0.088 Tw -[( has changed. In)]TJ --18.9803 -1.2 TD -0.324 Tw -(addition, the properties )Tj -/TT4 1 Tf -11.4232 0 TD -0 Tw -(ADVICE)Tj -/TT2 1 Tf -3.7783 0 TD -0.324 Tw -[( and )]TJ -/TT4 1 Tf -2.8721 0 TD -0 Tw -(READVICE)Tj -/TT2 1 Tf -5.1675 0 TD -0.324 Tw -[( are no)]TJ --23.2411 -1.2 TD -0.082 Tw -(longer used, except in the handling of advice saved on files)Tj -T* -0.066 Tw -[(from previous releases. Advice saved in Lyric does not use)]TJ -T* -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(READVICE)Tj -/TT2 1 Tf -5.1675 0 TD -( property.)Tj --8.0354 -1.9 TD -[()-849.9(The function )]TJ -/TT4 1 Tf -6.9813 0 TD -(ADVISEDUMP)Tj -/TT2 1 Tf -6.6668 0 TD -( no longer exists.)Tj --13.648 -1.9 TD -0.147 Tw -[()-849.9(Advice saved on files in previous releases can, in general,)]TJ -1.2 -1.2 TD -0.388 Tw -[(be loaded into the Lyric system compatibly. A known)]TJ -T* -0.008 Tw -(exception is the case in which a list of the form )Tj -/TT4 1 Tf -20.9869 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT2 1 Tf -1.8892 0 TD -( )Tj -/TT4 1 Tf -0.2858 0 TD -(IN)Tj -/TT2 1 Tf -1 0 TD -( )Tj -/TT6 1 Tf -0.2858 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf --26.6699 -1.2 TD -0.617 Tw -(was given to the )Tj -/TT4 1 Tf -9.9724 0 TD -0 Tw -(ADVICE)Tj -/TT2 1 Tf -3.7783 0 TD -0.617 Tw -[( or )]TJ -/TT4 1 Tf -2.6788 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.617 Tw -[( file package)]TJ --20.1527 -1.2 TD -0.0003 Tc -0.0037 Tw -(commands. When )Tj -/TT4 1 Tf -8.6263 0 TD -0 Tc -0 Tw -(READVISE)Tj -/TT2 1 Tf -5.1117 0 TD -0.0001 Tc -0.0039 Tw -( is called on such a name, the)Tj --13.738 -1.2 TD -0 Tc -0.145 Tw -(old-style advice, on the )Tj -/TT4 1 Tf -11.0859 0 TD -0 Tw -(READVICE)Tj -/TT2 1 Tf -5.1675 0 TD -0.145 Tw -[( property of the symbol)]TJ -/TT6 1 Tf --16.2533 -1.2 TD -0 Tw -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -0.132 Tw -[(, will not be found. This will eventually lead to)]TJ --5.4443 -1.2 TD -0 Tw -(an )Tj -/TT4 1 Tf -1.5101 0 TD -(XCL:ATTEMPT-TO-RPLAC-NIL)Tj -/TT2 1 Tf -14.4976 0 TD -0.12 Tw -[( error. The user should)]TJ --16.0077 -1.2 TD -0 Tw -(evaluate the form)Tj -/TT4 1 Tf -1.8 -1.2 TD -(\(RETFROM READVISE1\))Tj -/TT2 1 Tf --1.8 -1.2 TD -(in the debugger to proceed from the error and later evaluate)Tj -/TT4 1 Tf -1.8 -1.2 TD -(\(READVISE)Tj -/TT2 1 Tf -5.4453 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf --12.9675 -1.2 TD -(by hand to install the advice.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -34 0 obj -<< -/Length 5159 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 276 730.2 Tm -[()-849.9(The )]TJ -/TT4 1 Tf -3.47 0 TD -(ADVICE)Tj -/TT2 1 Tf -3.778 0 TD -0.269 Tw -[( and )]TJ -/TT4 1 Tf -2.7621 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7229 0 TD -0.269 Tw -[( File Manager commands now)]TJ --12.533 -1.2 TD -0 Tw -(accept three kinds of arguments:)Tj -1.8 -1.2 TD -(a symbol, naming an advised function,)Tj -T* -(a list in the form )Tj -/TT4 1 Tf -7.3359 0 TD -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT2 1 Tf -1.8892 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(:IN)Tj -/TT2 1 Tf -1.333 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -(, and)Tj --13.6689 -1.2 TD -(a symbol of the form )Tj -/TT6 1 Tf -9.3369 0 TD -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -(.)Tj --16.5812 -1.2 TD -0.043 Tw -(Arguments of the form )Tj -/TT4 1 Tf -10.3429 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT2 1 Tf -1.8892 0 TD -( )Tj -/TT4 1 Tf -0.3208 0 TD -(IN)Tj -/TT2 1 Tf -1 0 TD -( )Tj -/TT6 1 Tf -0.3208 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -0.043 Tw -[( are not acceptable any)]TJ --16.4289 -1.2 TD -0.395 Tw -[(longer. Arguments of the form )]TJ -/TT6 1 Tf -16.1542 0 TD -0 Tw -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -0.395 Tw -[( should be)]TJ --21.5985 -1.2 TD -0 Tw -(converted into the equivalent form )Tj -/TT4 1 Tf -15.3423 0 TD -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT2 1 Tf -1.8892 0 TD -( )Tj -/TT4 1 Tf -0.2778 0 TD -(:IN)Tj -/TT2 1 Tf -1.333 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -(.)Tj --37.8753 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(WHO WHEN WHERE WHAT)Tj -/TT2 1 Tf -12.9985 0 TD -[(\))-21143.5([Function])]TJ -ET -126.01 624.49 m -558.01 624.49 l -S -BT -10 0 0 10 258 609.2 Tm -0.025 Tw -[(In the Lyric release of Lisp, )]TJ -/TT4 1 Tf -12.6813 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.025 Tw -[( has some changes in the way)]TJ --16.4045 -1.2 TD -0.658 Tw -(arguments are treated and the possible values for those)Tj -T* -0 Tw -(arguments. Most notably:)Tj -1.8 -1.9 TD -0.258 Tw -[()-849.9(In earlier releases, you could call )]TJ -/TT4 1 Tf -17.5888 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.258 Tw -[( with only one)]TJ --20.112 -1.2 TD -0.017 Tw -[(argument, the name of a function. In this case, )]TJ -/TT4 1 Tf -21.293 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.017 Tw -[( "set)]TJ --25.0162 -1.2 TD -0.07 Tw -(up" the named function for advising, but installed no advice.)Tj -T* -0 Tw -(This usage is no longer supported.)Tj --1.2 -1.9 TD -0.133 Tw -[()-849.9(Previously, an undocumented value of )]TJ -/TT4 1 Tf -19.0979 0 TD -0 Tw -(BIND)Tj -/TT2 1 Tf -2.4443 0 TD -0.133 Tw -[( was accepted)]TJ --20.3422 -1.2 TD -0.1 Tw -(for the )Tj -/TT6 1 Tf -3.3128 0 TD -0 Tw -(WHEN)Tj -/TT2 1 Tf -3.0552 0 TD -0.1 Tw -[( argument to )]TJ -/TT4 1 Tf -6.1921 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.1 Tw -[(. This kind of advice is)]TJ --16.2832 -1.2 TD -0.116 Tw -[(no longer supported. It can be adequately simulated using)]TJ -/TT4 1 Tf -T* -0 Tw -(AROUND)Tj -/TT2 1 Tf -4.3887 0 TD -( advice.)Tj --7.3887 -1.9 TD -0.387 Tw -(In addition, advising Common Lisp functions works somewhat)Tj -0 -1.2 TD -0.116 Tw -[(differently with respect to a functions arguments. The arguments)]TJ -T* -0.071 Tw -[(are not available by name. Instead, the variable )]TJ -/TT4 1 Tf -22.2078 0 TD -0 Tw -(XCL:ARGLIST)Tj -/TT2 1 Tf -6.7202 0 TD -0.071 Tw -[( is)]TJ --28.928 -1.2 TD -0.174 Tw -(bound to a list of the values passed to the function and may be)Tj -T* -0 Tw -(changed to affect what will be passed on. )Tj -0 -1.9 TD -0.01 Tw -(As with the breaking facility \(see above\), )Tj -/TT4 1 Tf -18.2453 0 TD -0 Tw -(ADVISE)Tj -/TT2 1 Tf -3.7231 0 TD -0.01 Tw -[( no longer creates)]TJ --21.9684 -1.2 TD -0 Tw -(a function named )Tj -/TT6 1 Tf -7.9497 0 TD -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -(-IN-)Tj -/TT6 1 Tf -1.666 0 TD -(FN2)Tj -/TT2 1 Tf -1.8892 0 TD -( as a part of advising )Tj -/TT4 1 Tf -9.5054 0 TD -(\()Tj -/TT6 1 Tf -0.333 0 TD -(FN1)Tj -/TT4 1 Tf -1.8892 0 TD -( IN )Tj -/TT6 1 Tf -1.5557 0 TD -(FN2)Tj -/TT4 1 Tf -1.8892 0 TD -(\))Tj -/TT2 1 Tf -0.333 0 TD -(.)Tj -ET -2 w -54.01 321.99 m -558.01 321.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 310.08 Tm -(Chapter 16 List Structure Editor)Tj -ET -1 w -54.01 306.49 m -558.01 306.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 287.2 Tm -0.085 Tw -(The list structure editor, DEdit, is not part of the Lisp environment.)Tj -0 -1.2 TD -0.175 Tw -[(It is now a Lisp Library Module. Chapter 16 has been renamed)]TJ -T* -0 Tw -(Structure Editor.)Tj -0 -1.9 TD -0.054 Tw -(SEdit, the new Lisp editor, replaced DEdit in the Lyric release. The)Tj -0 -1.2 TD -0.17 Tw -(description of SEdit may be found in Appendix B of this volume.)Tj -T* -0 Tw -(The commands used to invoke both SEdit and DEdit are the same. )Tj -0 -1.9 TD -(Following is a description of the interface to the Lisp editor. )Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -37 0 obj -<< -/Length 6328 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Switching Between Editors)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.0998 Tw -(If you have both SEdit and DEdit loaded, you can switch between)Tj -0 -1.2 TD -0.729 Tw -[(them by calling: \()]TJ -/TT4 1 Tf -10.7524 0 TD -0 Tw -(EDITMODE)Tj -/TT6 1 Tf -5.2776 0 TD -0.729 Tw -[( EDITORNAME)]TJ -/TT2 1 Tf -7.896 0 TD -[(\) where)]TJ -/TT6 1 Tf --23.926 -1.2 TD -0 Tw -(EDITORNAME)Tj -/TT2 1 Tf -6.667 0 TD -( is one of the symbols SEdit or DEdit. )Tj -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Packages )Tj -ET -570 677.98 0.99 -25.99 re -f -54.01 651.49 m -558.01 651.49 l -S -570 651.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 636.2 Tm -(The )Tj -/TT4 1 Tf -2.339 0 TD -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.338 Tw -[( editor interface accepts TYPE information from the)]TJ -ET -570 650.98 0.99 -18.99 re -f -BT -10 0 0 10 258 624.2 Tm -0 Tw -(Interlisp or Common Lisp packages. )Tj -ET -570 631.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 596.64 Tm -(Starting a Lisp Editor)Tj -ET -54.01 593.49 m -558.01 593.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 574.2 Tm -0.115 Tw -(In the XCL environment, calling ED with a pathname will start the)Tj -ET -570 592.98 0.99 -22.99 re -f -BT -10 0 0 10 258 562.2 Tm -0 Tw -(editor on the coms of the file \(as if DC had been called\).)Tj -/TT11 1 Tf -8 0 0 8 504.7968 562.2 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 509.5976 562.2 Tm -( )Tj -ET -570 569.98 0.99 -12.58 re -f -BT -/TT4 1 Tf -10 0 0 10 126 534.61 Tm -(\(ED)Tj -/TT6 1 Tf -1.7222 0 TD -( NAME &OPTIONAL OPTIONS)Tj -/TT2 1 Tf -13.9468 0 TD -[( \))-22529.2([Function])]TJ -ET -126.01 531.9 m -558.01 531.9 l -S -BT -10 0 0 10 258 516.61 Tm -0.034 Tw -[(This function starts the Lisp editor. )]TJ -/TT4 1 Tf -16.6468 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.034 Tw -[( is the default interface to)]TJ -ET -570 531.39 0.99 -18.99 re -f -BT -10 0 0 10 258 504.61 Tm -0.016 Tw -[(the editor. SEdit is the default Lisp editor. The same symbol, )]TJ -/TT4 1 Tf -28.3093 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -(, )Tj -/TT4 1 Tf -0.5717 0 TD -( )Tj -ET -570 512.39 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 492.61 Tm -(is exported in both the IL and CL packages. )Tj -ET -570 500.39 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 473.61 Tm -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( is the name of any File Manager object.)Tj -/TT6 1 Tf --2.8892 -1.9 TD -(OPTIONS)Tj -/TT2 1 Tf -4.5005 0 TD -0.18 Tw -[( is either a single symbol or a list of symbols, each of)]TJ -ET -570 469.39 0.99 -18.99 re -f -BT -10 0 0 10 258 442.61 Tm -0.033 Tw -(which is either a File Manager type or one or more of the keywords)Tj -ET -570 450.39 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 430.61 Tm -0 Tw -(:DISPLAY)Tj -/TT2 1 Tf -4.667 0 TD -(, )Tj -/TT4 1 Tf -2.4447 0 TD -(:DONTWAIT)Tj -/TT2 1 Tf -5.7207 0 TD -(, )Tj -/TT4 1 Tf -2.4447 0 TD -(:CURRENT,)Tj -/TT2 1 Tf -5.4995 0 TD -( )Tj -/TT4 1 Tf -2.1668 0 TD -(:COMPILE-ON-)Tj -ET -570 438.39 0.99 -11.99 re -f -BT -10 0 0 10 258 418.61 Tm -(COMPLETION,)Tj -/TT2 1 Tf -6.9443 0 TD -( )Tj -/TT4 1 Tf -0.4438 0 TD -(:CLOSE-ON-COMPLETION)Tj -/TT2 1 Tf -12.6104 0 TD -0.166 Tw -(, or)Tj -/TT4 1 Tf -1.6108 0 TD -[( :NEW)]TJ -/TT2 1 Tf -3.1099 0 TD -[(. If exactly)]TJ -ET -570 426.39 0.99 -11.99 re -f -BT -10 0 0 10 258 406.61 Tm -0.337 Tw -(one File Manager type is given, )Tj -/TT4 1 Tf -16.1963 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.337 Tw -[( tries to edit that type of)]TJ -ET -570 414.39 0.99 -11.99 re -f -BT -10 0 0 10 258 394.61 Tm -0.11 Tw -(definition for )Tj -/TT6 1 Tf -5.9456 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.11 Tw -[(. If more than one type is given in )]TJ -/TT6 1 Tf -16.3861 0 TD -0 Tw -(OPTIONS)Tj -/TT2 1 Tf -4.5005 0 TD -(,)Tj -ET -570 402.39 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 382.61 Tm -(ED )Tj -/TT2 1 Tf -1.851 0 TD -0.184 Tw -(will determine for which of them )Tj -/TT6 1 Tf -15.3872 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.184 Tw -[( has a definition. If a)]TJ -ET -570 390.39 0.99 -11.99 re -f -BT -10 0 0 10 258 370.61 Tm -0.189 Tw -(definition exists for more than one of the types, )Tj -/TT4 1 Tf -22.7127 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.189 Tw -[( gives you a)]TJ -ET -570 378.39 0.99 -11.99 re -f -BT -10 0 0 10 258 358.61 Tm -0.023 Tw -[(choice of which one to edit. If no File Manager types are given, )]TJ -/TT4 1 Tf -28.6155 0 TD -0 Tw -(ED)Tj -ET -570 366.39 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 346.61 Tm -(treats )Tj -/TT6 1 Tf -2.8648 0 TD -(OPTIONS)Tj -/TT2 1 Tf -4.5005 0 TD -0.086 Tw -[( as a list of all of the existing types; thus you are)]TJ -ET -570 354.39 0.99 -11.99 re -f -BT -10 0 0 10 258 334.61 Tm -0 Tw -(given a choice of all of the existing definitions of )Tj -/TT6 1 Tf -21.4019 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -(.)Tj -ET -570 342.39 0.99 -11.99 re -f -BT -10 0 0 10 258 315.61 Tm -0.394 Tw -(The variable)Tj -/TT4 1 Tf -5.8969 0 TD -[( FILEPKGTYPES)]TJ -/TT2 1 Tf -8.2841 0 TD -[( contains a complete list of the)]TJ --14.181 -1.2 TD -0 Tw -(currently-known manager types.)Tj -0 -1.9 TD -0.009 Tw -(If the keyword )Tj -/TT4 1 Tf -6.5299 0 TD -0 Tw -(:DISPLAY)Tj -/TT2 1 Tf -4.667 0 TD -0.009 Tw -[( is included in )]TJ -/TT6 1 Tf -6.3729 0 TD -0 Tw -(OPTIONS)Tj -/TT2 1 Tf -4.5005 0 TD -(, )Tj -/TT4 1 Tf -0.5647 0 TD -(ED )Tj -/TT2 1 Tf -1.676 0 TD -0.009 Tw -[( uses menus)]TJ --24.311 -1.2 TD -0.474 Tw -(for any prompting, \(e.g., to choose one of several possible)Tj -T* -0.292 Tw -[(definitions to edit\). If )]TJ -/TT4 1 Tf -10.9649 0 TD -0 Tw -(:DISPLAY)Tj -/TT2 1 Tf -4.667 0 TD -0.292 Tw -[( is not included, )]TJ -/TT4 1 Tf -8.3946 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.292 Tw -[( prints its)]TJ --25.4156 -1.2 TD -0.116 Tw -(queries to and reads the users replies from )Tj -/TT4 1 Tf -20.4378 0 TD -0 Tw -(*QUERY-IO*)Tj -/TT2 1 Tf -5.7231 0 TD -0.116 Tw -[( \(usually)]TJ --26.1609 -1.2 TD -0.179 Tw -[(the Exec in which you are typing\). Thus all of the following are)]TJ -T* -0 Tw -(correct ways to call the editor:)Tj -/TT11 1 Tf -0 -1.771 TD -(\(ED NAME :DISPLAY\))Tj -0 -1.7 TD -(\(ED NAME FUNCTIONS\))Tj -T* -(\(ED NAME \(:DISPLAY\)\))Tj -T* -(\(ED NAME \(FUNCTIONS :DISPLAY\)\))Tj -T* -(\(ED NAME \(FUNCTIONS VARIABLES :DISPLAY\)\))Tj -/TT2 1 Tf -0 -1.829 TD -(The other keywords are interpreted as follows:)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -40 0 obj -<< -/Length 4639 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(:CURRENT )Tj -ET -570 744.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 713.2 Tm -0.011 Tw -[(This is a new option with Medley that causes ED to call TYPESOF)]TJ -ET -570 727.98 0.99 -18.99 re -f -BT -10 0 0 10 258 701.2 Tm -0.447 Tw -[(with SOURCE=CURRENT. This prevents TYPESOF from)]TJ -ET -570 708.98 0.99 -11.99 re -f -BT -10 0 0 10 258 689.2 Tm -0.157 Tw -(searching FILECOMS and from looking in WHERE-IS databases.)Tj -ET -570 696.98 0.99 -11.99 re -f -BT -10 0 0 10 258 677.2 Tm -0 Tw -(The )Tj -/TT4 1 Tf -2.154 0 TD -(CURRENT)Tj -/TT2 1 Tf -4.8887 0 TD -0.153 Tw -[( option looks only for definitions that are currently)]TJ -ET -570 684.98 0.99 -11.99 re -f -BT -10 0 0 10 258 665.2 Tm -0.032 Tw -[(loaded. When you know that the definition is loaded, use of the)]TJ -ET -570 672.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 653.2 Tm -0 Tw -(CURRENT)Tj -/TT2 1 Tf -4.8887 0 TD -( option results in ED being significantly faster. )Tj -ET -570 660.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 634.2 Tm -(:DONTWAIT)Tj -/TT2 1 Tf -0 -1.7 TD -0.074 Tw -(Lets the edit interface return right away, rather than waiting for the)Tj -0 -1.2 TD -0.072 Tw -(edit to be complete. )Tj -/TT4 1 Tf -9.6432 0 TD -0 Tw -(DF)Tj -/TT2 1 Tf -1.333 0 TD -(, )Tj -/TT4 1 Tf -0.6277 0 TD -(DV)Tj -/TT2 1 Tf -1.3892 0 TD -(, )Tj -/TT4 1 Tf -0.6277 0 TD -(DC)Tj -/TT2 1 Tf -1.4443 0 TD -0.072 Tw -(, and )Tj -/TT4 1 Tf -2.646 0 TD -0 Tw -(DP)Tj -/TT2 1 Tf -1.3892 0 TD -0.072 Tw -[( specify this option now,)]TJ --19.1001 -1.2 TD -0 Tw -(so editing from the exec will not cause the exec to wait.)Tj -/TT4 1 Tf -0 -1.9 TD -(:NEW)Tj -/TT2 1 Tf -0 -1.7 TD -0.035 Tw -[(Lets you install a new definition for the name to be edited. You will)]TJ -0 -1.2 TD -0.12 Tw -(be asked what type of dummy definition you wish to install based)Tj -T* -0 Tw -(on which file manager types were included in )Tj -/TT6 1 Tf -20.1777 0 TD -(OPTIONS)Tj -/TT2 1 Tf -4.5005 0 TD -(. )Tj -/TT4 1 Tf --24.6782 -1.9 TD -(:COMPILE-ON-COMPLETION)Tj -/TT2 1 Tf -13.7212 0 TD -( )Tj -ET -570 528.98 0.99 -18.99 re -f -BT -10 0 0 10 258 495.2 Tm -0.301 Tw -(This option specifies that the definition being edited should be)Tj -ET -570 509.98 0.99 -16.99 re -f -BT -10 0 0 10 258 485.2 Tm -0.125 Tw -(compiled upon completion regardless of the completion command)Tj -ET -570 492.98 0.99 -9.99 re -f -BT -10 0 0 10 258 475.2 Tm -0 Tw -(used.)Tj -ET -570 482.98 0.99 -19.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 448.2 Tm -(:CLOSE-ON-COMPLETION)Tj -/TT2 1 Tf -0 -1.7 TD -0.147 Tw -(Tells the editor that it must close the editor window after the first)Tj -0 -1.2 TD -0.345 Tw -[(completion. So in SEdit, CONTROL-X will close the window;)]TJ -T* -0.019 Tw -[(shrinking the window is not allowed. Editor windows opened by the)]TJ -T* -0 Tw -(exec command)Tj -/TT4 1 Tf -6.7808 0 TD -( FIX)Tj -/TT2 1 Tf -1.8335 0 TD -( specify this option.)Tj --8.6143 -1.9 TD -(If )Tj -/TT6 1 Tf -0.9515 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.118 Tw -[( does not have a definition of any of the given types, )]TJ -/TT4 1 Tf -24.7651 0 TD -0 Tw -(ED)Tj -ET -570 390.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 364.2 Tm -0.068 Tw -[(can create a dummy definition of any of those types. If )]TJ -/TT4 1 Tf -25.3292 0 TD -0 Tw -(:DISPLAY)Tj -ET -570 371.98 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 352.2 Tm -0.024 Tw -(is provided in )Tj -/TT6 1 Tf -6.2419 0 TD -0 Tw -(OPTIONS,)Tj -/TT2 1 Tf -4.7783 0 TD -0.024 Tc -( )Tj -/TT4 1 Tf -0.6037 0 TD -0 Tc -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.024 Tw -[( will pop-up the following menu asking)]TJ -ET -570 359.98 0.99 -11.99 re -f -BT -10 0 0 10 258 340.2 Tm -0.097 Tw -[(you which type of definition to install. Select the template for the)]TJ -ET -570 347.98 0.99 -11.99 re -f -BT -10 0 0 10 258 328.2 Tm -0.098 Tw -[(type of definition you wish to create from the DEFN menus and)]TJ -ET -570 335.98 0.99 -11.99 re -f -BT -10 0 0 10 258 316.2 Tm -0 Tw -(submenus:)Tj -ET -570 323.98 0.99 -30.99 re -f -q -185.5972 0 0 -139.1979 258.01 285.9879 cm -/Im1 Do -Q -570 292.98 0.99 -148.19 re -f -BT -10 0 0 10 258 130 Tm -0.338 Tw -[(New kinds of dummy definitions can be added to the system)]TJ -ET -570 144.78 0.99 -18.99 re -f -BT -10 0 0 10 258 118 Tm -1.138 Tw -(through the use of the )Tj -/TT4 1 Tf -15.6973 0 TD -0 Tw -(:PROTOTYPE)Tj -/TT2 1 Tf -6.5005 0 TD -1.138 Tw -[( option to)]TJ -ET -570 125.78 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 106 Tm -0 Tw -(XCL:DEFDEFINER. )Tj -ET -570 113.78 0.99 -30.99 re -f -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/XObject << -/Im1 42 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -46 0 obj -<< -/Length 7003 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -0.0001 Tc --0.0001 Tw -(Mapping the Old Edit Interface to ED )Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 710.2 Tm -0 Tc -0.059 Tw -(The old functions for starting the Lisp editor \()Tj -/TT4 1 Tf -20.2601 0 TD -0 Tw -(DF)Tj -/TT2 1 Tf -1.3319 0 TD -(, )Tj -/TT4 1 Tf -0.6147 0 TD -(DV)Tj -/TT2 1 Tf -1.3893 0 TD -(, )Tj -/TT4 1 Tf -0.6147 0 TD -(DP)Tj -/TT2 1 Tf -1.3893 0 TD -0.059 Tw -(, and )Tj -/TT4 1 Tf -2.62 0 TD -0 Tw -(DC)Tj -/TT2 1 Tf -1.4443 0 TD -(\))Tj --29.6643 -1.2 TD -0.202 Tw -(have been reimplemented so that they work with Common Lisp.)Tj -T* -0.206 Tw -(The old edit commands map to the new editor function \(ED\) as)Tj -T* -0 Tw -(follows: )Tj -/TT11 1 Tf --5.289 -1.9 TD -(DF )Tj -/TT6 1 Tf -1.8003 0 TD -(NAME)Tj -/TT7 1 Tf -3.4887 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED )Tj -/TT6 1 Tf -3.6006 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( \(FUNCTIONS FNS :DONTWAIT\)\))Tj --12.7656 -1.829 TD -(DV )Tj -/TT6 1 Tf -1.8003 0 TD -(NAME)Tj -/TT7 1 Tf -3.4887 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED )Tj -/TT6 1 Tf -3.6006 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( \(VARIABLES VARS :DONTWAIT\)\))Tj --12.7656 -1.829 TD -(DP )Tj -/TT6 1 Tf -1.8003 0 TD -(NAME)Tj -/TT7 1 Tf -3.4887 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED )Tj -/TT6 1 Tf -3.6006 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( \(PROPERTY-LIST :DONTWAIT\)\))Tj --17.0736 -1.829 TD -(DP )Tj -/TT6 1 Tf -1.8003 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( )Tj -/F1 1 Tf -0.2778 0 TD -( )Tj -/TT6 1 Tf -0.278 0 TD -(MYPROP)Tj -/TT7 1 Tf -4.3517 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED \()Tj -/TT6 1 Tf -4.2007 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( )Tj -/TT6 1 Tf -1.2002 0 TD -(MYPROP)Tj -/TT11 1 Tf -4.334 0 TD -(\) \(PROPS :DONTWAIT\)\) )Tj --18.4108 -1.829 TD -(DC NAME)Tj -/TT7 1 Tf -4.8 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED NAME \(FILES :DONTWAIT\)\))Tj -/TT2 1 Tf --0.9868 -1.829 TD -0.151 Tw -(Thus, for example, when )Tj -/TT4 1 Tf -11.8315 0 TD -0 Tw -(DF)Tj -/TT2 1 Tf -1.333 0 TD -0.151 Tw -[( is invoked it looks first for Common)]TJ --13.1645 -1.2 TD -0 Tw -(Lisp )Tj -/TT11 1 Tf -2.4013 0 TD -(FUNCTIONS)Tj -/TT2 1 Tf -5.4009 0 TD -0.289 Tw -[( and then for Interlisp )]TJ -/TT11 1 Tf -11.1174 0 TD -0 Tw -(FNS)Tj -/TT2 1 Tf -1.8003 0 TD -0.289 Tw -(. )Tj -/TT4 1 Tf -1.4115 0 TD -0 Tw -(DV)Tj -/TT2 1 Tf -1.3892 0 TD -(, )Tj -/TT4 1 Tf -0.8447 0 TD -(DP)Tj -/TT2 1 Tf -1.3892 0 TD -0.289 Tw -[( and )]TJ -/TT4 1 Tf -2.8021 0 TD -0 Tw -(DC)Tj -/TT2 1 Tf --28.5564 -1.329 TD -(operate in an analogous fashion. )Tj -/TT4 1 Tf -12 0 0 12 54 510.9 Tm -(Editing Values Directly)Tj -ET -570 534.24 0.99 -25.99 re -f -54.01 507.75 m -558.01 507.75 l -S -570 508.24 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 492.46 Tm -0.14 Tw -(The TYPE you specify for the object you want to edit determines)Tj -ET -570 507.24 0.99 -18.99 re -f -BT -10 0 0 10 258 480.46 Tm -0.055 Tw -[(how that object is edited, i.e. by DEFINITION or VALUE. Normally)]TJ -ET -570 488.24 0.99 -11.99 re -f -BT -10 0 0 10 258 468.46 Tm -0.022 Tw -[(you want to edit the DEFINITION \(this is the default\). For example,)]TJ -ET -570 476.24 0.99 -11.99 re -f -BT -10 0 0 10 258 456.46 Tm -0.045 Tw -(suppose )Tj -/TT6 1 Tf -4.4264 0 TD -0 Tw -(FOO )Tj -/TT2 1 Tf -2.4893 0 TD -0.045 Tw -[( is defined as a variable; to start the editor on the)]TJ -ET -570 464.24 0.99 -11.99 re -f -BT -10 0 0 10 258 444.46 Tm -0 Tw -(DEFINITION of )Tj -/TT6 1 Tf -7.0562 0 TD -(FOO, )Tj -/TT2 1 Tf -3 0 TD -(use the form:)Tj -ET -570 452.24 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 426.75 Tm -(\(ED FOO\) or \(ED FOO VARIABLES\))Tj -ET -570 440.24 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 408.46 Tm -0.448 Tw -(There may be times when you do not have access to the)Tj -ET -570 423.24 0.99 -18.99 re -f -BT -10 0 0 10 258 396.46 Tm -0.118 Tw -[(DEFINITION of an object that you need to edit. This can occur)]TJ -ET -570 404.24 0.99 -11.99 re -f -BT -10 0 0 10 258 384.46 Tm -0.144 Tw -[(when you do not have the source code loaded. You can edit its)]TJ -ET -570 392.24 0.99 -11.99 re -f -BT -10 0 0 10 258 372.46 Tm -0 Tw -(VALUE directly using the form:)Tj -ET -570 380.24 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 353.46 Tm -(FOR VARIABLES: )Tj -/TT7 1 Tf -9.6016 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED )Tj -/TT6 1 Tf -3.6006 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( IL:VARS\))Tj -ET -570 368.24 0.99 -20.28 re -f -BT -10 0 0 10 258 333.17 Tm -(FOR FUNCTIONS: )Tj -/TT7 1 Tf -9.6016 0 TD -<0089>Tj -/TT11 1 Tf -0.9868 0 TD -( \(ED )Tj -/TT6 1 Tf -3.6006 0 TD -(NAME)Tj -/TT11 1 Tf -2.8892 0 TD -( IL:FNS\) )Tj -ET -570 347.95 0.99 -20.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 312.88 Tm -0.042 Tw -[(By starting the editor on the VALUE of an object, you can change)]TJ -ET -570 327.66 0.99 -18.99 re -f -BT -10 0 0 10 258 300.88 Tm -0 Tw -(its value without changing its definition. \( AR 8971\))Tj -ET -570 308.66 0.99 -11.99 re -f -BT -10 0 0 10 258 281.88 Tm -0.161 Tw -(To start the editor on the VALUE of )Tj -/TT6 1 Tf -17.5686 0 TD -0 Tw -(FOO)Tj -/TT2 1 Tf -2.1665 0 TD -0.161 Tw -(, for example, use the)Tj -ET -570 296.66 0.99 -18.99 re -f -BT -10 0 0 10 258 269.88 Tm -0 Tw -(form:)Tj -ET -570 277.66 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 252.17 Tm -(\(ED FOO VARS\) )Tj -ET -570 265.66 0.99 -16.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 233.88 Tm -(EXAMPLE:)Tj -ET -570 248.66 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 214.88 Tm -0.054 Tw -(When you load a compiled file, the DEFINITION of an object is not)Tj -ET -570 229.66 0.99 -18.99 re -f -BT -10 0 0 10 258 202.88 Tm -0.084 Tw -[(loaded. Only the VALUE is loaded. The compiler does not store)]TJ -ET -570 210.66 0.99 -11.99 re -f -BT -10 0 0 10 258 190.88 Tm -0.132 Tw -[(the defining forms for objects. Suppose you have compiled code)]TJ -ET -570 198.66 0.99 -11.99 re -f -BT -10 0 0 10 258 178.88 Tm -0.225 Tw -[(for a system file loaded, but you do not have access to the)]TJ -ET -570 186.66 0.99 -11.99 re -f -BT -10 0 0 10 258 166.88 Tm -0.165 Tw -(sources that contain the DEFINITIONS, and you need to change)Tj -ET -570 174.66 0.99 -11.99 re -f -BT -10 0 0 10 258 154.88 Tm -0.177 Tw -[(the value of a system variable, say NETWORKLOGINFO. This)]TJ -ET -570 162.66 0.99 -11.99 re -f -BT -10 0 0 10 258 142.88 Tm -0.152 Tw -[(variable has a defining form and the system knows this, but the)]TJ -ET -570 150.66 0.99 -11.99 re -f -BT -10 0 0 10 258 130.88 Tm -0.0138 Tw -[(form is not loaded and is not available. You can edit the VALUE of)]TJ -ET -570 138.66 0.99 -11.99 re -f -BT -10 0 0 10 258 118.88 Tm -0 Tw -(the variable directly using:)Tj -ET -570 126.66 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 101.17 Tm -(\(ED NETWORKLOGINFO IL:VARS\))Tj -ET -570 114.66 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 80.88 Tm -0.863 Tw -[(An editor window opens displaying the VALUE of)]TJ -ET -570 95.66 0.99 -18.99 re -f -BT -10 0 0 10 258 68.88 Tm -0 Tw -(NETWORKLOGINFO: )Tj -ET -570 76.66 0.99 -11.99 re -f -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 48 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT7 7 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -50 0 obj -<< -/Length 2776 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-19)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -q -327.75 0 0 -203.25 258.01 718.99 cm -/Im2 Do -Q -BT -/TT4 1 Tf -12 0 0 12 54 478.39 Tm -(Section 16.18 Editor Functions)Tj -ET -54.01 475.24 m -558.01 475.24 l -S -BT -/TT9 1 Tf -10 0 0 10 258 455.95 Tm -(\(II:16.74\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The function )Tj -/TT4 1 Tf -5.781 0 TD -(FINDCALLERS)Tj -/TT2 1 Tf -7.0552 0 TD -( has the following limitations in Lisp:)Tj --12.8362 -1.9 TD -0.092 Tw -(1. )Tj -/TT4 1 Tf -1.5736 0 TD -0 Tw -(FINDCALLERS)Tj -/TT2 1 Tf -7.0552 0 TD -0.092 Tw -[( only identifies by name the occurrences inside)]TJ --8.6288 -1.2 TD -0 Tw -(of Interlisp FNS, not Common Lisp FUNCTIONS.)Tj -0 -1.9 TD -0.155 Tw -[(2. Because )]TJ -/TT4 1 Tf -6.0241 0 TD -0 Tw -(FINDCALLERS)Tj -/TT2 1 Tf -7.0552 0 TD -0.155 Tw -[( uses a textual search, it may report)]TJ --13.0793 -1.2 TD -0.079 Tw -(more occurrences of the specified )Tj -/TT6 1 Tf -15.6802 0 TD -0 Tw -(ATOMS)Tj -/TT2 1 Tf -3.5557 0 TD -0.079 Tw -[( than there actually are,)]TJ --19.2358 -1.2 TD -0.069 Tw -(if the file contains symbols by the same name in another package,)Tj -T* -0.221 Tw -(or symbols with the same p-name but different alphabetic case.)Tj -/TT4 1 Tf -T* -0 Tw -(EDITCALLERS)Tj -/TT2 1 Tf -7 0 TD -0.346 Tw -[( still edits only the actual occurrences, since it)]TJ --7 -1.2 TD -0.084 Tw -(reads the functions and operates on the real Lisp structure, not its)Tj -T* -0 Tw -(printed representation.)Tj -ET -2 w -54.01 259.74 m -558.01 259.74 l -S -BT -/TT4 1 Tf -14 0 0 14 54 247.83 Tm -(Chapter 17 File Package)Tj -ET -1 w -54.01 244.24 m -558.01 244.24 l -S -BT -/TT2 1 Tf -10 0 0 10 258 224.95 Tm --0.0001 Tc -0.0791 Tw -(The Interlisp-D File Package has been renamed the File Manager.)Tj -T* -0 Tc -0.332 Tw -(Its operation is unchanged; however, it has been extended to)Tj -T* -0.11 Tw -(manipulate, load and save Common Lisp functions, variables, etc.)Tj -T* -0.048 Tw -(It also allows specification of the reader environment \(package and)Tj -T* -0.338 Tw -(readtable\) to use when writing and reading a file, solving the)Tj -T* -0.332 Tw -(problem of compatibility between old and new \(Common Lisp\))Tj -T* -0 Tw -(syntax.)Tj -0 -1.9 TD -0.054 Tw -(Note that although source files from earlier releases can be loaded)Tj -0 -1.2 TD -0.13 Tw -(into Lyric, files produced by the File Manager in the Lyric release)Tj -T* -0.15 Tw -[(cannot be loaded into previous releases. This is true for several)]TJ -T* -0.171 Tw -(reasons, the most important being that previous releases did not)Tj -T* -0 Tw -(have packages, so symbols cannot be read back consistently.)Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R ->> -/XObject << -/Im2 52 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -54 0 obj -<< -/Length 4872 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-20)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.075 Tw -(The new File Manager includes several new types to deal with the)Tj -0 -1.2 TD -0.227 Tw -[(various definition forms supported in Xerox Common Lisp. The)]TJ -T* -0.388 Tw -(following table associates each new type with the forms that)Tj -T* -0 Tw -(produce definitions of that type:)Tj --8.233 -1.9 TD -(FUNCTIONS)Tj -/TT4 1 Tf -8.233 0 TD -(CL:DEFUN, CL:DEFMACRO, CL:DEFINE-MODIFY-MACRO,)Tj -0 -1.2 TD -(XCL:DEFINLINE, XCL:DEFDEFINER, XCL:DEFINE-PROCEED-)Tj -T* -(FUNCTION.)Tj -/TT2 1 Tf --7.958 -1.9 TD -(VARIABLES)Tj -/TT4 1 Tf -7.958 0 TD -(CL:DEFCONSTANT, CL:DEFVAR, CL:DEFPARAMETER,)Tj -0 -1.2 TD -(XCL:DEFGLOBALVAR, XCL:DEFGLOBALPARAMETER)Tj -/TT2 1 Tf --9.511 -1.9 TD -(STRUCTURES )Tj -/TT4 1 Tf -9.511 0 TD -(CL:DEFSTRUCT, XCL:DEFINE-CONDITION)Tj -/TT2 1 Tf --5.957 -1.9 TD -(TYPES )Tj -/TT4 1 Tf -5.957 0 TD -(CL:DEFTYPE)Tj -/TT2 1 Tf --5.901 -1.9 TD -(SETFS )Tj -/TT4 1 Tf -5.901 0 TD -(CL:DEFSETF, CL:DEFINE-SETF-METHOD)Tj -/TT2 1 Tf --9.957 -1.9 TD -(DEFINE-TYPES )Tj -/TT4 1 Tf -9.957 0 TD -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf --8.79 -1.9 TD -(OPTIMIZERS )Tj -/TT4 1 Tf -8.79 0 TD -(XCL:DEFOPTIMIZER)Tj -/TT2 1 Tf --8.622 -1.9 TD -(COMMANDS )Tj -/TT4 1 Tf -8.622 0 TD -(XCL:DEFCOMMAND)Tj -/TT2 1 Tf -0 -1.9 TD -0.029 Tw -(Note that the types listed above, as well as all the old File Manager)Tj -0 -1.2 TD -0.204 Tw -[(types, are symbols in the INTERLISP package. In addition, the)]TJ -T* -0.153 Tw -("filecoms" variable of a file and its rootname are also both in the)Tj -T* -0.271 Tw -[(INTERLISP package. You should be careful when typing to a)]TJ -T* -0.12 Tw -(Common Lisp exec to qualify all such symbols with the prefix )Tj -/TT4 1 Tf -28.4982 0 TD -0 Tw -(IL:)Tj -/TT2 1 Tf -1.2217 0 TD -(;)Tj --29.7199 -1.2 TD -(e.g., )Tj -/TT11 1 Tf -8 0 0 8 258 408.2 Tm -(3>)Tj -/TT4 1 Tf -10 0 0 10 267.6015 408.2 Tm -(\(setq il:foocoms \(\(il:functions bar\) \(il:prop il:filetype il:foo\)\)\))Tj -/TT2 1 Tf --0.9602 -1.759 TD -0.13 Tw -(to indicate you want the function BAR \(in the current package\) to)Tj -0 -1.2 TD -0.115 Tw -(live on a file with rootname FOO, and also that FOOs FILETYPE)Tj -T* -0 Tw -(property should be saved.)Tj -/TT4 1 Tf -12 0 0 12 54 339.05 Tm -(Reader Environments and the File Manager)Tj -ET -54.01 335.9 m -558.01 335.9 l -S -BT -/TT9 1 Tf -10 0 0 10 258 316.61 Tm -(\(II:17.1\))Tj -/TT2 1 Tf -0 -1.9 TD -0.065 Tw -(In order for )Tj -/TT4 1 Tf -5.3639 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8331 0 TD -0.065 Tw -[( to correctly read back the same expression that)]TJ -/TT4 1 Tf --8.197 -1.2 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.038 Tw -[( printed, it is necessary that both operations be performed in)]TJ --3 -1.2 TD -0.029 Tw -(the same reader environment, i.e., the collection of parameters that)Tj -T* -0.015 Tw -(affect the way the reader interprets the characters appearing on the)Tj -T* -0.201 Tw -[(input stream. In previous releases of Interlisp there was, for all)]TJ -T* -0.13 Tw -(practical purposes, a single such environment, defined entirely by)Tj -T* -0.155 Tw -(the readtable )Tj -/TT6 1 Tf -6.4257 0 TD -0 Tw -(FILERDTBL)Tj -/TT2 1 Tf -5.3901 0 TD -0.155 Tw -[(. In the Lyric release of Lisp there are)]TJ --11.8159 -1.2 TD -0.011 Tw -(two significantly different readtables in which to read \(Common Lisp)Tj -T* -0.054 Tw -[(and Interlisp\). In addition, there are more parameters than just the)]TJ -T* -0.241 Tw -(readtable that can potentially affect)Tj -/TT4 1 Tf -16.4743 0 TD -[( READ:)]TJ -/TT2 1 Tf -3.6853 0 TD -[( the current package)]TJ --20.1596 -1.2 TD -0.332 Tw -(and the read base \(the bindings of )Tj -/TT4 1 Tf -17.7796 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7764 0 TD -0.332 Tw -[( and )]TJ -/TT4 1 Tf -2.8881 0 TD -0 Tw -(*READ-)Tj --26.4441 -1.2 TD -(BASE*)Tj -/TT2 1 Tf -3.167 0 TD -(\).)Tj --3.167 -1.9 TD -0.221 Tw -(To handle this diversity, a new type of object is introduced, the)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(READER-ENVIRONMENT)Tj -/TT2 1 Tf -11.944 0 TD -0.202 Tw -(, consisting of a readtable, a package,)Tj --11.944 -1.2 TD -0.013 Tw -[(and a read/print base. Every file produced by the File Manager has)]TJ -T* -0.208 Tw -(a header at the beginning specifying the reader environment for)Tj -T* -0.165 Tw -(that file. )Tj -/TT4 1 Tf -4.1098 0 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1112 0 TD -0.165 Tw -[( and the compiler produce this header, while)]TJ -/TT4 1 Tf --9.221 -1.2 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -(, )Tj -/TT4 1 Tf -0.5747 0 TD -(LOADFNS)Tj -/TT2 1 Tf -4.8333 0 TD -0.019 Tw -[(, and other file-reading functions read the header)]TJ --8.241 -1.2 TD -0.09 Tw -[(in order to set their reading environment correctly. Files written in)]TJ -T* -0.315 Tw -(older releases of Lisp lack this header and are interpreted as)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -57 0 obj -<< -/Length 6272 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-21)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.097 Tw -(having been written in the environment consisting of the readtable)Tj -/TT6 1 Tf -0 -1.2 TD -0 Tw -(FILERDTBL)Tj -/TT2 1 Tf -5.3901 0 TD -0.021 Tw -[( and the package INTERLISP. Thus, you need take no)]TJ --5.3901 -1.2 TD -0.342 Tw -(special action to be able to load Koto source files into Lyric;)Tj -T* -0.039 Tw -(characters that are "special" in Common Lisp, such as colon, semi-)Tj -T* -0.16 Tw -(colon and hash, are interpreted as the "ordinary" characters they)Tj -T* -0 Tw -(were in Koto.)Tj -0 -1.9 TD -0.485 Tw -(The File Managers reader environments are specified as a)Tj -0 -1.2 TD -0.456 Tw -(property list of alternating keywords and values of the form)Tj -T* -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(:READTABLE)Tj -/TT2 1 Tf -6.4995 0 TD -( )Tj -/TT6 1 Tf -0.3248 0 TD -(readtable)Tj -/TT2 1 Tf -4.1699 0 TD -( )Tj -/TT4 1 Tf -0.3248 0 TD -(:PACKAGE)Tj -/TT2 1 Tf -5.3335 0 TD -( )Tj -/TT6 1 Tf -0.3248 0 TD -(package)Tj -/TT4 1 Tf -3.7808 0 TD -0.047 Tw -[( :BASE)]TJ -/TT2 1 Tf -3.4362 0 TD -0 Tw -( )Tj -/TT6 1 Tf -0.3248 0 TD -(base)Tj -/TT2 1 Tf -2.1685 0 TD -0.047 Tw -[(\). The)]TJ -/TT4 1 Tf --27.0206 -1.2 TD -0 Tw -(:BASE )Tj -/TT2 1 Tf -3.4162 0 TD -0.027 Tw -[(pair is optional and defaults to 10. The values for )]TJ -/TT6 1 Tf -22.4215 0 TD -0 Tw -(readtable)Tj -/TT2 1 Tf --25.8377 -1.2 TD -(and )Tj -/TT6 1 Tf -2.2653 0 TD -(package)Tj -/TT2 1 Tf -3.7808 0 TD -0.319 Tw -[( should either be strings naming a readtable and)]TJ --6.0461 -1.2 TD -0.387 Tw -(package, or expressions that can be evaluated to produce a)Tj -T* -0.337 Tw -[(readtable and package. In the former case, the readtable or)]TJ -T* -0 Tw -(package )Tj -/TT6 1 Tf -4.1226 0 TD -(must)Tj -/TT2 1 Tf -2.167 0 TD -0.064 Tw -[( be one that already exists in a virgin Lisp sysout \(or)]TJ --6.2896 -1.2 TD -0.022 Tw -(at least in any Lisp image in which you might attempt )Tj -/TT6 1 Tf -23.9207 0 TD -0 Tw -(any)Tj -/TT2 1 Tf -1.6123 0 TD -0.022 Tw -[( operation)]TJ --25.533 -1.2 TD -0.295 Tw -[(that reads the file\). If an expression is used, care should be)]TJ -T* -0.097 Tw -(exercised that the expression can be evaluated in an environment)Tj -T* -0.338 Tw -(where no packages or readtables, other than the documented)Tj -T* -0.15 Tw -[(ones, are presumed to exist. For hints and guidelines on writing)]TJ -T* -0 Tw -(the )Tj -/TT6 1 Tf -1.692 0 TD -(package)Tj -/TT2 1 Tf -3.7808 0 TD -0.024 Tw -[( expression for files that create or use their own private)]TJ --5.4727 -1.2 TD -0.622 Tw -(packages, please see Chapter 11 of the )Tj -/TT6 1 Tf -22.3105 0 TD -[( Common Lisp)]TJ --22.3105 -1.2 TD -0 Tw -(Implementation Notes)Tj -/TT2 1 Tf -9.7271 0 TD -(. )Tj --9.7271 -1.9 TD -(When )Tj -/TT4 1 Tf -3.1781 0 TD -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.288 Tw -[( is writing a source file, it uses the following)]TJ --8.289 -1.2 TD -0 Tw -(algorithm to determine the reading environment for the new file:)Tj -0 -1.9 TD -0.33 Tw -[(1.)-966(If the root name for the file has the property )]TJ -/TT4 1 Tf -24.5551 0 TD -0 Tw -(MAKEFILE-)Tj --22.7551 -1.2 TD -(ENVIRONMENT)Tj -/TT2 1 Tf -7.389 0 TD -0.102 Tw -[(, the propertys value is used. It should be in)]TJ --7.389 -1.2 TD -0.034 Tw -[(the form described above. Note that if you want the file always)]TJ -T* -0.515 Tw -(to be written in this environment, you should save the)Tj -/TT4 1 Tf -T* -0 Tw -(MAKEFILE-ENVIRONMENT)Tj -/TT2 1 Tf -12.833 0 TD -0.099 Tw -[( property itself on the file, using a)]TJ --12.833 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -0.528 Tw -(PROP MAKEFILE-ENVIRONMENT)Tj -/TT2 1 Tf -16.4728 0 TD -0 Tw -( )Tj -/TT6 1 Tf -0.8058 0 TD -(file)Tj -/TT2 1 Tf -1.2783 0 TD -0.528 Tw -(\) command in the)Tj --18.89 -1.2 TD -0 Tw -(filecoms.)Tj --1.8 -1.9 TD -0.236 Tw -[(2.)-966(If a previous version of the file exists,)]TJ -/TT4 1 Tf -19.8485 0 TD -[( MAKEFILE)]TJ -/TT2 1 Tf -5.6247 0 TD -[( uses the)]TJ --23.6732 -1.2 TD -0.25 Tw -(previous versions environment. )Tj -/TT4 1 Tf -15.6177 0 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.25 Tw -[( does this even)]TJ --20.7285 -1.2 TD -0.169 Tw -(when given option )Tj -/TT4 1 Tf -8.8464 0 TD -0 Tw -(NEW)Tj -/TT2 1 Tf -2.3316 0 TD -0.169 Tw -[( or the previous version is no longer)]TJ --11.178 -1.2 TD -0.623 Tw -(accessible, assuming it still has the previous versions)Tj -T* -0.042 Tw -[(environment in its cache. If the previous version was written in)]TJ -T* -0.753 Tw -(an older release, and hence has no explicit reader)Tj -T* -0 Tw -(environment, )Tj -/TT4 1 Tf -6.0756 0 TD -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.017 Tw -[( uses the environment \()]TJ -/TT4 1 Tf -10.5177 0 TD -0 Tw -(:READTABLE)Tj -/TT2 1 Tf --21.7041 -1.2 TD -("INTERLISP")Tj -/TT4 1 Tf -5.8779 0 TD -( :PACKAGE )Tj -/TT2 1 Tf -5.8892 0 TD -("INTERLISP")Tj -/TT4 1 Tf -5.8779 0 TD -( :BASE )Tj -/TT2 1 Tf -3.667 0 TD -(10\).)Tj --23.112 -1.9 TD -0.219 Tw -[(3.)-966(If no previous version exists \(this is a new file\), )]TJ -/TT4 1 Tf -24.887 0 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf --23.087 -1.2 TD -0.368 Tw -[(uses the value of)]TJ -/TT4 1 Tf -8.6638 0 TD -[( *DEFAULT-MAKEFILE-ENVIRONMENT*)]TJ -/TT2 1 Tf -19.2562 0 TD -0 Tw -(,)Tj --27.92 -1.2 TD -(initially )Tj -/TT4 1 Tf -3.2788 0 TD -(\(:READTABLE )Tj -/TT2 1 Tf -7.1104 0 TD -("XCL" )Tj -/TT4 1 Tf -2.9331 0 TD -(:PACKAGE)Tj -/TT2 1 Tf -5.3335 0 TD -( "INTERLISP")Tj -/TT4 1 Tf -6.1558 0 TD -( :BASE)Tj -/TT2 1 Tf --24.8115 -1.2 TD -(10\).)Tj --1.8 -1.9 TD -0.841 Tw -(Note that changing the value of)Tj -/TT4 1 Tf -18.0483 0 TD -[( *DEFAULT-MAKEFILE-)]TJ --18.0483 -1.2 TD -0 Tw -(ENVIRONMENT*)Tj -/TT2 1 Tf -7.7783 0 TD -0.009 Tw -[( only affects new files. If you decide you dont like)]TJ --7.7783 -1.2 TD -0.125 Tw -(the environment in which an existing file is written, you must give)Tj -T* -0.324 Tw -(the file a )Tj -/TT4 1 Tf -5.0301 0 TD -0 Tw -(MAKEFILE-ENVIRONMENT)Tj -/TT2 1 Tf -12.8329 0 TD -0.324 Tw -[( property to override any)]TJ --17.863 -1.2 TD -0 Tw -(prior default.)Tj -0 -1.9 TD -0.0001 Tc -0.0049 Tw -(Since the XCL readtable is case-insensitive, you should avoid using)Tj -0 -1.2 TD -0 Tc -0.369 Tw -(it for files that contain many mixed-case symbols or old-style)Tj -T* -0.289 Tw -(Interlisp comments, as these will be printed with many escape)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -60 0 obj -<< -/Length 5133 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-22)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.045 Tw -[(delimiters. This is why the default for reprinted Koto sources is the)]TJ -0 -1.2 TD -0 Tw -(INTERLISP readtable.)Tj -0 -1.9 TD -0.318 Tw -(The readtable named LISP \(the pure Common Lisp readtable\))Tj -0 -1.2 TD -0.049 Tw -(should ordinarily not be used as part of a )Tj -/TT4 1 Tf -18.7857 0 TD -0 Tw -(MAKEFILE )Tj -/TT2 1 Tf -5.4377 0 TD -(environment.)Tj --24.2234 -1.2 TD -0.175 Tw -(It exists solely for the use of "pure" Common Lisp \(as in the CL)Tj -T* -0.085 Tw -(Exec\), and thus has no provision for font escapes \(inserted by the)Tj -T* -0.232 Tw -[(Lisp prettyprinter\) to be treated as whitespace. Most users will)]TJ -T* -0 Tw -(want to use either XCL or INTERLISP as the readtable for files.)Tj -0 -1.9 TD -0.046 Tw -(If the environment for the new version of the file differs from that of)Tj -0 -1.2 TD -0.786 Tw -(the previous version,)Tj -/TT4 1 Tf -10.799 0 TD -[( MAKEFILE )]TJ -/TT2 1 Tf -7.2385 0 TD -(copies unchanged FNS)Tj --18.0376 -1.2 TD -0.254 Tw -(definitions by actually reading from the old file, rather than just)Tj -T* -0.562 Tw -[(copying characters as it otherwise would. Similarly, when)]TJ -/TT4 1 Tf -T* -0 Tw -(RECOMPILE)Tj -/TT2 1 Tf -5.945 0 TD -0.346 Tw -[( or )]TJ -/TT4 1 Tf -2.1368 0 TD -0 Tw -(BRECOMPILE)Tj -/TT2 1 Tf -6.6672 0 TD -0.346 Tw -[( attempt to recompile a file for)]TJ --14.749 -1.2 TD -0.467 Tw -(which the previous compiled versions reader environment is)Tj -T* -0.064 Tw -(different, they must compile afresh all the functions on the file, i.e.,)Tj -T* -0 Tw -(they behave like )Tj -/TT4 1 Tf -7.504 0 TD -(TCOMPL)Tj -/TT2 1 Tf -4.2217 0 TD -( or)Tj -/TT4 1 Tf -1.167 0 TD -( BCOMPL)Tj -/TT2 1 Tf -4.6113 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 508.64 Tm -(Modifying Standard Readtables)Tj -ET -54.01 505.49 m -558.01 505.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 486.2 Tm -0.005 Tw -(In the past, programmers have been periodically tempted to change)Tj -0 -1.2 TD -0.381 Tw -(standard readtables, such as )Tj -/TT4 1 Tf -14.6431 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.381 Tw -[( and )]TJ -/TT4 1 Tf -2.9861 0 TD -0 Tw -(FILERDTBL)Tj -/TT2 1 Tf -5.5539 0 TD -0.381 Tw -(, typically by)Tj --23.794 -1.2 TD -0.176 Tw -[(adding macros to read certain objects in a convenient way. For)]TJ -T* -0.011 Tw -(example, the PQUOTE LispUsers module defined single quote as a)Tj -T* -0.562 Tw -(macro in )Tj -/TT4 1 Tf -5.2363 0 TD -0 Tw -(FILERDTBL)Tj -/TT2 1 Tf -5.5547 0 TD -0.562 Tw -[(. Unfortunately, changing a standard)]TJ --10.791 -1.2 TD -0.065 Tw -[(readtable means that unless you are very careful, you cannot read)]TJ -T* -0.11 Tw -(other users files that were not written with your change, and they)Tj -T* -0.085 Tw -[(cannot read your files without obtaining your macro. Furthermore,)]TJ -T* -0.265 Tw -[(the effects are often subtle. Rather than breaking, the system)]TJ -T* -0.024 Tw -[(merely reads the file incorrectly. For example, reading a file written)]TJ -T* -0.061 Tw -(with PQUOTE in an environment lacking PQUOTE produces many)Tj -T* -0 Tw -(symbols with a single quote packed on the front.)Tj -0 -1.9 TD -0.864 Tw -(This confusion can be avoided with MAKEFILE reader)Tj -0 -1.2 TD -0 Tw -(environments. To add your own special macro:)Tj -0 -1.9 TD -1.06 Tw -[(1.)-966(Copy some standard readtable; e.g., \(COPYRDTBL)]TJ -1.8 -1.2 TD -0 Tw -("INTERLISP"\).)Tj --1.8 -1.9 TD -0.762 Tw -[(2.)-966(Give it a distinguished name of its own, by using)]TJ -1.8 -1.2 TD -0 Tw -(\(READTABLEPROP )Tj -/TT6 1 Tf -9.3911 0 TD -(rdtbl)Tj -/TT2 1 Tf -1.9453 0 TD -( NAME ")Tj -/TT6 1 Tf -4.022 0 TD -(yourname)Tj -/TT2 1 Tf -4.4468 0 TD -("\).)Tj --21.6052 -1.9 TD -[(3.)-966(Make your change in the copied readtable.)]TJ -T* -0.032 Tw -[(4.)-966(Use your new private readtable to write your files: use its name)]TJ -1.8 -1.2 TD -0 Tw -(\(")Tj -/TT6 1 Tf -0.688 0 TD -(yourname)Tj -/TT2 1 Tf -4.4468 0 TD -0.297 Tw -("\) in the )Tj -/TT4 1 Tf -4.5809 0 TD -0 Tw -(MAKEFILE-ENVIRONMENT)Tj -/TT2 1 Tf -12.833 0 TD -0.297 Tw -[( property of)]TJ --22.5487 -1.2 TD -1.16 Tw -(selected files and/or change )Tj -/TT4 1 Tf -17.3705 0 TD -0 Tw -(*DEFAULT-MAKEFILE-)Tj --17.3705 -1.2 TD -(ENVIRONMENT*)Tj -/TT2 1 Tf -7.7783 0 TD -( to affect all your new files.)Tj --9.5783 -1.9 TD -0.275 Tw -[(5.)-966(Make sure to save your new readtable. It is usually most)]TJ -1.8 -1.2 TD -0.128 Tw -(convenient to include the code to create it \(steps 1-3\) in your)Tj -T* -0.114 Tw -(system initialization, but you could even write a self-contained)Tj -T* -0.028 Tw -(expression to use in a single files )Tj -/TT4 1 Tf -15.3708 0 TD -0 Tw -(MAKEFILE-ENVIRONMENT)Tj -/TT2 1 Tf --15.3708 -1.2 TD -(property.)Tj --1.8 -1.9 TD -0.292 Tw -(With this strategy, your system will read all files in the proper)Tj -0 -1.2 TD -0.11 Tw -(environmentyour own files with your private readtable and other)Tj -T* -0.768 Tw -(users files in their environments, including the standard)Tj -T* -0.422 Tw -[(environments, which you have carefully avoided polluting. If)]TJ -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -63 0 obj -<< -/Length 5839 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-23)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.05 Tw -(another user tries to load one of your files into an environment that)Tj -0 -1.2 TD -0.049 Tw -(doesnt know about your private readtable, )Tj -/TT4 1 Tf -19.417 0 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.049 Tw -[( will give an error)]TJ --22.25 -1.2 TD -0.373 Tw -(immediately \(readtable not found\), rather than loading the file)Tj -T* -0 Tw -(quietly but incorrectly. )Tj -/TT4 1 Tf -12 0 0 12 54 666.64 Tm -(Programmers Interface to Reader Environments)Tj -ET -54.01 663.49 m -558.01 663.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 644.2 Tm -0.067 Tw -(The following function and macro are available for programmers to)Tj -T* -0.184 Tw -[(use. Note that reader environments only control the parameters)]TJ -T* -0.033 Tw -[(that determine read/print consistency. There are other parameters,)]TJ -T* -0.153 Tw -(such as)Tj -/TT4 1 Tf -3.5993 0 TD -[( *PRINT-CASE*)]TJ -/TT2 1 Tf -7.3205 0 TD -(, that affect the appearance of the output)Tj --10.9198 -1.2 TD -0.11 Tw -[(without affecting its ability to be read. Thus, reader environments)]TJ -T* -0.227 Tw -(are not sufficient to handle problems of, for example, repainting)Tj -T* -0.038 Tw -(expressions on the display in exactly the same total environment in)Tj -T* -0 Tw -(which they were first written.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(MAKE-READER-ENVIRONMENT)Tj -/TT2 1 Tf -15.221 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(PACKAGE)Tj -/TT2 1 Tf -4.835 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(READTABLE)Tj -/TT2 1 Tf -5.9463 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(BASE)Tj -/TT2 1 Tf -2.668 0 TD -[(\))-8639.3([Function])]TJ -ET -126.01 538.49 m -558.01 538.49 l -S -BT -10 0 0 10 258 523.2 Tm -0.416 Tw -(Creates a )Tj -/TT4 1 Tf -5.4453 0 TD -0 Tw -(READER-ENVIRONMENT)Tj -/TT2 1 Tf -11.9448 0 TD -0.416 Tw -[( object with the indicated)]TJ --17.3901 -1.2 TD -0.026 Tw -[(components. The arguments must be valid values for the variables)]TJ -/TT4 1 Tf -T* -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -(,)Tj -/TT4 1 Tf -0.2778 0 TD -0.11 Tw -[( *READTABLE* )]TJ -/TT2 1 Tf -7.7205 0 TD -0 Tw -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.11 Tw -[( *PRINT-BASE*)]TJ -/TT2 1 Tf -7.2775 0 TD -(; names are not)Tj --22.7231 -1.2 TD -0.101 Tw -[(sufficient. If any of the arguments is)]TJ -/TT4 1 Tf -16.7148 0 TD -[( NIL)]TJ -/TT2 1 Tf -1.9897 0 TD -(, the current value of the)Tj --18.7045 -1.2 TD -0.823 Tw -[(corresponding variable is used. Thus )]TJ -/TT4 1 Tf -21.8359 0 TD -0 Tw -(\(MAKE-READER-)Tj --21.8359 -1.2 TD -(ENVIRONMENT\) )Tj -/TT2 1 Tf -8.491 0 TD -0.491 Tw -(returns an object that captures the current)Tj --8.491 -1.2 TD -0 Tw -(environment.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(WITH-READER-ENVIRONMENT )Tj -/TT6 1 Tf -15.1098 0 TD -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -( )Tj -/TT9 1 Tf -0.5557 0 TD -(.)Tj -/TT6 1 Tf -0.2778 0 TD -( FORMS)Tj -/TT2 1 Tf -4.1665 0 TD -[(\))-11701([Macro])]TJ -ET -126.01 429.49 m -558.01 429.49 l -S -BT -10 0 0 10 258 414.2 Tm -0.086 Tw -(Evaluates each of the )Tj -/TT6 1 Tf -10.2395 0 TD -0 Tw -(FORMS)Tj -/TT2 1 Tf -3.6108 0 TD -0.086 Tw -[( with)]TJ -/TT4 1 Tf -2.1422 0 TD -[( *PACKAGE*)]TJ -/TT2 1 Tf -6.1426 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6417 0 TD -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -(,)Tj -/TT4 1 Tf --29.7216 -1.2 TD -(*PRINT-BASE*)Tj -/TT2 1 Tf -6.8896 0 TD -0.304 Tw -[( and )]TJ -/TT4 1 Tf -2.8321 0 TD -0 Tw -(*READ-BASE* )Tj -/TT2 1 Tf -7.305 0 TD -0.304 Tw -(bound to the values in the)Tj -/TT6 1 Tf --17.0267 -1.2 TD -0 Tw -(ENVIRONMENT)Tj -/TT2 1 Tf -7.3892 0 TD -0.11 Tw -[( object. Both )]TJ -/TT4 1 Tf -6.5547 0 TD -0 Tw -(*PRINT-BASE* )Tj -/TT2 1 Tf -7.2775 0 TD -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.11 Tw -[( *READ-BASE*)]TJ -/TT2 1 Tf --22.8898 -1.2 TD -0 Tw -(are bound to the single )Tj -/TT6 1 Tf -10.4521 0 TD -(BASE)Tj -/TT2 1 Tf -2.668 0 TD -( value in the environment.)Tj --26.3201 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(GET-ENVIRONMENT-AND-FILEMAP)Tj -/TT2 1 Tf -16.999 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DONTCACHE)Tj -/TT2 1 Tf -6.3335 0 TD -[(\))-10087.8([Function])]TJ -ET -126.01 356.49 m -558.01 356.49 l -S -BT -10 0 0 10 258 341.2 Tm -0.256 Tw -(Parses the header of a file produced by the File Manager and)Tj -0 -1.2 TD -0 Tw -(returns up to four values:)Tj -0 -1.9 TD -[(1.)-966(The reader environment in which the file was written;)]TJ -T* -[(2.)-966(The files "filemap", used to locate functions on the file;)]TJ -T* -0.178 Tw -[(3.)-966(The file position where the FILECREATED expression starts;)]TJ -1.8 -1.2 TD -0 Tw -(and)Tj --1.8 -1.9 TD -[(4.)-966(A value used internally by the File Manager.)]TJ -/TT6 1 Tf -T* -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -0.022 Tw -[( can be a full file name, in which case this function returns)]TJ --4.167 -1.2 TD -0.304 Tw -[(NIL unless the information was previously cached. Otherwise,)]TJ -/TT6 1 Tf -T* -0 Tw -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -0.0001 Tc -0.0029 Tw -( is a stream open for input on the file. It must be randomly)Tj --4.167 -1.2 TD -0 Tc -0.11 Tw -[(accessible \(unless information is available from the cache\). If the)]TJ -T* -0.242 Tw -(file is in Common Lisp format \(it begins with a comment\), then)Tj -T* -0.073 Tw -(value 1 is the default Common Lisp reader environment \(readtable)Tj -T* -0.075 Tw -[(LISP, package USER\) and the other values are NIL. Otherwise, if)]TJ -T* -0.092 Tw -(the file is not in File Manager format, values 1 and 2 are NIL, 3 is)Tj -T* -0 Tw -(zero.)Tj -0 -1.9 TD -(If )Tj -/TT6 1 Tf -1.4065 0 TD -(DONTCACHE)Tj -/TT2 1 Tf -6.3335 0 TD -0.573 Tw -[( is true, the function does not cache any)]TJ --7.74 -1.2 TD -0.443 Tw -(information it learns about File Manager files; otherwise, the)Tj -T* -0 Tw -(information is cached to speed up future inquiries.)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -66 0 obj -<< -/Length 5288 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-24)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 17.1 Loading Files)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT9 1 Tf -10 0 0 10 258 706.2 Tm -(\(II:17.5\) )Tj -/TT4 1 Tf --20.4 -2.2 TD -(Integration of Interlisp and Common Lisp LOAD functions )Tj -ET -54.01 681.49 m -558.01 681.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 662.2 Tm -(There are four kinds of files that can be loaded in Lisp:)Tj -0 -1.9 TD -0.182 Tw -[(1.)-966(Interlisp and Common Lisp source files produced by the File)]TJ -1.8 -1.2 TD -0 Tw -(Manager using, for example, the )Tj -/TT4 1 Tf -14.6191 0 TD -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -( function.)Tj --21.53 -1.9 TD -0.039 Tw -[(2.)-966(Standard Common Lisp source files produced with a text editor)]TJ -1.8 -1.2 TD -0 Tw -(either in Lisp or from some other Common Lisp implementation.)Tj --1.8 -1.9 TD -0.336 Tw -[(3.)-966(DFASL files of compiled code, produced by the new XCL)]TJ -1.8 -1.2 TD -0 Tw -(Compiler, )Tj -/TT4 1 Tf -4.8345 0 TD -(CL:COMPILE-FILE)Tj -/TT2 1 Tf -8.7215 0 TD -( \(extension DFASL\))Tj --15.356 -1.9 TD -0.256 Tw -[(4.)-966(LCOM files of compiled code, produced by the old Interlisp)]TJ -1.8 -1.2 TD -0 Tw -(Compiler \()Tj -/TT4 1 Tf -4.6118 0 TD -(BCOMPL, TCOMPL)Tj -/TT2 1 Tf -9.1104 0 TD -(\).)Tj --15.5222 -1.9 TD -0.174 Tw -(Types 1 and 4 were the only kind of files that you could load in)Tj -0 -1.2 TD -0.328 Tw -[(Koto; types 2 and 3 are new with Lyric. Both)]TJ -/TT4 1 Tf -23.0686 0 TD -[( IL:LOAD )]TJ -/TT2 1 Tf -5.2663 0 TD -0 Tw -(and)Tj -/TT4 1 Tf --28.3348 -1.2 TD -(CL:LOAD )Tj -/TT2 1 Tf -4.8918 0 TD -0.115 Tw -[(are capable of loading all four kinds of files. However,)]TJ --4.8918 -1.2 TD -0.029 Tw -(they use the following rules to make the types of files unambiguous)Tj -T* -0 Tw -(so that they can be loaded in the correct reader environment.)Tj -0 -1.9 TD -0.367 Tw -[()-1449.9(If the file begins with an open parenthesis \(possibly after)]TJ -1.8 -1.2 TD -0.097 Tw -(whitespace and font switch characters\), it is assumed to be of)Tj -T* -0.261 Tw -[(type 1 or 4: files produced by the File Manager. The first)]TJ -T* -0.067 Tw -(expression on the file \(at least\) is assumed to be written in the)Tj -T* -0 Tw -(old )Tj -/TT4 1 Tf -1.6153 0 TD -(FILERDTBL)Tj -/TT2 1 Tf -5.5547 0 TD -0.0001 Tc -0.0029 Tw -( environment; for new Lyric files this expression)Tj --7.17 -1.2 TD -0 Tc -0.206 Tw -(defines the reader environment for the remainder of the file.)Tj -T* -0.197 Tw -(See the section, Reader Environments and File Manager for)Tj -T* -0 Tw -(details.)Tj --1.8 -1.9 TD -0.202 Tw -[()-1449.9(If the file begins with the special FASL signature byte \(octal)]TJ -1.8 -1.2 TD -0.036 Tw -(221\), it is assumed to be a compiled file in FASL format, and is)Tj -T* -0.113 Tw -[(processed by the FASL loader. The FASL loader ignores the)]TJ -/TT6 1 Tf -T* -0 Tw -(LDFLG)Tj -/TT2 1 Tf -3.2231 0 TD -0.392 Tw -[( argument to)]TJ -/TT4 1 Tf -6.3983 0 TD -[( IL:LOAD)]TJ -/TT2 1 Tf -4.7245 0 TD -(, treating all files as though)Tj -/TT6 1 Tf --14.3459 -1.2 TD -0 Tw -(LDFLG)Tj -/TT2 1 Tf -3.2231 0 TD -0.154 Tw -[( were)]TJ -/TT4 1 Tf -2.5993 0 TD -[( SYSLOAD )]TJ -/TT2 1 Tf -5.6974 0 TD -(\(redefinition occurs, is not undoable,)Tj --11.5198 -1.2 TD -0 Tw -(and no File Manager information is saved\).)Tj --1.8 -1.9 TD -0.117 Tw -[()-1449.9(If the file begins with a semicolon, it is assumed to be a pure)]TJ -1.8 -1.2 TD -0.149 Tw -[(Common Lisp file. The expressions on the file are read with)]TJ -T* -0.204 Tw -(the standard Common Lisp readtable and in package USER)Tj -T* -0 Tw -(\(unless a package argument was given to)Tj -/TT4 1 Tf -18.4551 0 TD -( LOAD)Tj -/TT2 1 Tf -3.1108 0 TD -(; see below\).)Tj --23.3659 -1.9 TD -0.074 Tw -[()-1449.9(If the file begins with any other character, )]TJ -/TT4 1 Tf -20.9018 0 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.074 Tw -[( doesnt know)]TJ --21.9348 -1.2 TD -0.057 Tw -[(what to do. Currently, it treats the file as a pure Common Lisp)]TJ -T* -0 Tw -(file \(as if it started with a comment\).)Tj --1.8 -1.9 TD -0.073 Tw -(Thus, if you prepare Common Lisp text files you should be sure to)Tj -0 -1.2 TD -0.204 Tw -(begin them with a comment so that )Tj -/TT4 1 Tf -17.2136 0 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.204 Tw -[( can tell the file is in)]TJ --20.0466 -1.2 TD -0 Tw -(Common Lisp syntax.)Tj -0 -1.9 TD -0.023 Tw -(The function)Tj -/TT4 1 Tf -5.5264 0 TD -[( CL:LOAD)]TJ -/TT2 1 Tf -4.7999 0 TD -[( accepts an additional keyword )]TJ -/TT4 1 Tf -14.0676 0 TD -0 Tw -(:PACKAGE)Tj -/TT2 1 Tf -5.3335 0 TD -(,)Tj --29.7274 -1.2 TD -0.301 Tw -(whose value must be a package object; the function )Tj -/TT4 1 Tf -25.9458 0 TD -0 Tw -(IL:LOAD)Tj -/TT2 1 Tf --25.9458 -1.2 TD -0.06 Tw -(similarly has an optional fourth argument )Tj -/TT6 1 Tf -18.6471 0 TD -0 Tw -(PACKAGE)Tj -/TT2 1 Tf -4.835 0 TD -0.06 Tw -[(. If a package)]TJ --23.4821 -1.2 TD -0.082 Tw -(argument is given, then )Tj -/TT4 1 Tf -11.0009 0 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.082 Tw -[( reads Common Lisp text files \(type)]TJ --13.8339 -1.2 TD -0.049 Tw -(2 above\) with )Tj -/TT4 1 Tf -6.3726 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -0.049 Tw -[( bound to the specified package. In the)]TJ -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -69 0 obj -<< -/Length 6233 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-25)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.105 Tw -(case of File Manager files \(types 1 and 4\), the package argument)Tj -0 -1.2 TD -0 Tw -(overrides the package specified in the files reader environment.)Tj -/TT9 1 Tf -0 -1.9 TD -(\(II:17.6-17.8\))Tj -/TT2 1 Tf -0 -1.7 TD -0.11 Tw -(The Interlisp functions)Tj -/TT4 1 Tf -10.0027 0 TD -[( LOADFNS)]TJ -/TT2 1 Tf -5.2203 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6657 0 TD -(LOADFROM)Tj -/TT2 1 Tf -5.7773 0 TD -(, )Tj -/TT4 1 Tf -0.6657 0 TD -(LOADVARS)Tj -/TT2 1 Tf -5.6113 0 TD -0.11 Tw -[( and)]TJ -/TT4 1 Tf --27.943 -1.2 TD -0 Tw -(LOADCOMP)Tj -/TT2 1 Tf -5.833 0 TD -0.038 Tw -[( do not work on FASL files. )]TJ -/TT4 1 Tf -12.494 0 TD -0 Tw -( )Tj -/TT2 1 Tf -0.3158 0 TD -0.038 Tw -(They do still work on files)Tj --18.6429 -1.2 TD -0 Tw -(produced by the old compiler \(extension LCOM\).)Tj -/TT9 1 Tf -0 -1.9 TD -(\(II:17.9\))Tj -/TT4 1 Tf -0 -1.7 TD -(FILESLOAD)Tj -/TT2 1 Tf -5.6665 0 TD -0.186 Tw -[( \(also used by the File Managers)]TJ -/TT4 1 Tf -15.8505 0 TD -[( FILES)]TJ -/TT2 1 Tf -3.299 0 TD -[( command\))]TJ --24.816 -1.2 TD -0.018 Tw -(now searches for compiled files by looking for a file by the specified)Tj -T* -0.165 Tw -(name whose extension is in the list )Tj -/TT4 1 Tf -16.8855 0 TD -0 Tw -(*COMPILED-EXTENSIONS*)Tj -/TT2 1 Tf -12.8335 0 TD -(.)Tj --29.719 -1.2 TD -0.298 Tw -(The default value for )Tj -/TT4 1 Tf -10.5865 0 TD -0 Tw -(*COMPILED-EXTENSIONS*)Tj -/TT2 1 Tf -12.835 0 TD -0.298 Tw -[( in the Lyric)]TJ --23.4215 -1.2 TD -0.206 Tw -[(release is \(DFASL LCOM\). It searches the list of extensions in)]TJ -T* -0.031 Tw -[(order for each directory on the search path. This means that FASL)]TJ -T* -0 Tw -(files are loaded in preference to old-style compiled files.)Tj -/TT4 1 Tf -12 0 0 12 54 522.64 Tm -(Section 17.2 Storing Files)Tj -ET -54.01 519.49 m -558.01 519.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 500.2 Tm -0.29 Tw -(The Lyric release contains two different compilers, the Interlisp)Tj -T* -0.104 Tw -(Compiler that was present in Koto and previous releases, and the)Tj -T* -0.196 Tw -(new XCL Compiler \(see the next section, Chapter 18 Compiler\).)Tj -T* -0.16 Tw -(With more than one compiler available, the question arises as to)Tj -T* -0.394 Tw -(which compiler will be used by the functions )Tj -/TT4 1 Tf -22.8283 0 TD -0 Tw -(CLEANUP)Tj -/TT2 1 Tf -4.8307 0 TD -0.394 Tw -[( and)]TJ -/TT4 1 Tf --27.659 -1.2 TD -0 Tw -(MAKEFILE.)Tj -/TT2 1 Tf -5.3888 0 TD -0.115 Tw -[( The default behavior of these functions in Lyric is to)]TJ --5.3888 -1.2 TD -0.1 Tw -[(always use the new XCL Compiler. This default can be changed,)]TJ -T* -0.077 Tw -[(either on a file-by-file basis or system-wide. Most users, however,)]TJ -T* -0 Tw -(will have no need to change the default.)Tj -0 -1.9 TD -0.302 Tw -(When the)Tj -/TT6 1 Tf -4.5823 0 TD -[( C )]TJ -/TT2 1 Tf -1.8818 0 TD -0 Tw -(or)Tj -/TT6 1 Tf -0.8892 0 TD -0.302 Tw -[( RC)]TJ -/TT2 1 Tf -2.0242 0 TD -[( option has been given to)]TJ -/TT4 1 Tf -12.6853 0 TD -[( MAKEFILE,)]TJ -/TT2 1 Tf -5.9685 0 TD -[( the)]TJ --28.0312 -1.2 TD -0.155 Tw -(system first looks for the value of the )Tj -/TT4 1 Tf -17.747 0 TD -0 Tw -(FILETYPE)Tj -/TT2 1 Tf -4.7783 0 TD -0.155 Tw -[( property on the)]TJ --22.5253 -1.2 TD -0.968 Tw -[(symbol naming the file. For example, for the file)]TJ -T* -0.537 Tw -("{DSK}MYFILE", the property list of the symbol)Tj -/TT4 1 Tf -T* -0 Tw -(MYFILE)Tj -/TT2 1 Tf -3.6665 0 TD -( would be examined.)Tj --3.6665 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.216 Tw -[( FILETYPE)]TJ -/TT2 1 Tf -5.2722 0 TD -[( property should be either a symbol from the list)]TJ --6.9953 -1.2 TD -0.236 Tw -[(below or a list containing one of those symbols. The following)]TJ -T* -0 Tw -(symbols are allowed and have the given meanings:)Tj -/TT4 1 Tf --8.4 -1.9 TD -(:TCOMPL)Tj -/TT2 1 Tf -8.4 0 TD -0.444 Tw -(Compile this file by calling either)Tj -/TT4 1 Tf -16.5042 0 TD --0.0003 Tc -0.4443 Tw -[( TCOMPL )]TJ -/TT2 1 Tf -5.6637 0 TD -0 Tc -0 Tw -(or )Tj -/TT4 1 Tf -1.611 0 TD -(RECOMPILE)Tj -/TT2 1 Tf -5.9452 0 TD -(,)Tj --29.724 -1.2 TD -0.287 Tw -(depending upon which of the C or RC options was passed to)Tj -/TT4 1 Tf -T* -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -(.)Tj -/TT4 1 Tf --13.5108 -1.9 TD -(:BCOMPL)Tj -/TT2 1 Tf -8.4 0 TD -0.34 Tw -(Compile this file by calling either)Tj -/TT4 1 Tf -15.9842 0 TD -0.338 Tw -[( BCOMPL )]TJ -/TT2 1 Tf -5.5667 0 TD -0 Tw -(or )Tj -/TT4 1 Tf -1.507 0 TD -(BRECOMPILE)Tj -/TT2 1 Tf -6.6672 0 TD -(,)Tj --29.725 -1.2 TD -0.287 Tw -(depending upon which of the C or RC options was passed to)Tj -/TT4 1 Tf -T* -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -(. This is equivalent to the Koto behavior.)Tj -/TT4 1 Tf --13.5108 -1.9 TD -(:COMPILE-FILE)Tj -/TT2 1 Tf -8.4 0 TD -0.041 Tw -(Compile this file by calling)Tj -/TT4 1 Tf -11.6689 0 TD -[( CL:COMPILE-FILE)]TJ -/TT2 1 Tf -9.0391 0 TD -(, regardless of which)Tj --20.708 -1.2 TD -0 Tw -(option was passed to )Tj -/TT4 1 Tf -9.6729 0 TD -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -(.)Tj --14.7837 -1.9 TD -0.034 Tw -(If no)Tj -/TT4 1 Tf -1.9798 0 TD -[( FILETYPE )]TJ -/TT2 1 Tf -5.402 0 TD -(property is found, then the function whose name is)Tj --7.3818 -1.2 TD -0.314 Tw -(the value of the variable )Tj -/TT4 1 Tf -12.466 0 TD -0 Tw -(*DEFAULT-CLEANUP-COMPILER*)Tj -/TT2 1 Tf -16.22 0 TD -0.314 Tw -[( is)]TJ --28.686 -1.2 TD -0.405 Tw -[(used. The only legal values for this variable are)]TJ -/TT4 1 Tf -24.8232 0 TD -[( TCOMPL)]TJ -/TT2 1 Tf -4.9045 0 TD -0 Tw -(,)Tj -/TT4 1 Tf --29.7277 -1.2 TD -(BCOMPL)Tj -/TT2 1 Tf -4.333 0 TD -0.922 Tw -(, and )Tj -/TT4 1 Tf -4.346 0 TD -0 Tw -(CL:COMPILE-FILE)Tj -/TT2 1 Tf -8.7212 0 TD -0.922 Tw -[(. Initially,)]TJ -/TT4 1 Tf -6.012 0 TD -[( *DEFAULT-)]TJ --23.4121 -1.2 TD -0 Tw -(CLEANUP-COMPILER*)Tj -/TT2 1 Tf -10.8335 0 TD -( is set to)Tj -/TT4 1 Tf -3.7236 0 TD -( CL:COMPILE-FILE)Tj -/TT2 1 Tf -8.999 0 TD -(.)Tj --23.5562 -1.9 TD -0.277 Tw -(If you choose to set the)Tj -/TT4 1 Tf -11.7248 0 TD -[( FILETYPE )]TJ -/TT2 1 Tf -5.888 0 TD -(property of file name, you)Tj --17.6128 -1.2 TD -0.152 Tw -(should take care that the filecoms for that file saves the value of)Tj -T* -0.138 Tw -[(that property on the file. This will ensure that the same compiler)]TJ -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -72 0 obj -<< -/Length 4898 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-26)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.058 Tw -[(will be used every time the file is loaded. To save the value of the)]TJ -0 -1.2 TD -0 Tw -(property, you should include a line in the coms like the following:)Tj -/TT11 1 Tf -0 -1.771 TD -( \(PROP FILETYPE MYFILE\))Tj -/TT2 1 Tf -0 -2.029 TD -(where MYFILE is the symbol naming your file.)Tj -/TT4 1 Tf -12 0 0 12 54 652.64 Tm -(Section 17.8.2 Defining New File Manager Types)Tj -ET -54.01 649.49 m -558.01 649.49 l -S -BT -/TT9 1 Tf -10 0 0 10 258 630.2 Tm -(\(II:17.30\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.093 Tw -(The File Manager has been extended to allow File Manager types)Tj -0 -1.2 TD -0.152 Tw -(that accept any Lisp object as a name. A consequence of this is)Tj -T* -0.082 Tw -(that any user-defined types )Tj -/TT4 1 Tf -12.891 0 TD -0 Tw -(HASDEF)Tj -/TT2 1 Tf -4.11 0 TD -0.082 Tw -[( function should be prepared)]TJ --17.001 -1.2 TD -0.313 Tw -(to accept objects other than symbols as the )Tj -/TT6 1 Tf -22.0147 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.313 Tw -[( argument.)]TJ --24.9039 -1.2 TD -0 Tw -(Names are compared using )Tj -/TT4 1 Tf -12.56 0 TD -(EQUAL)Tj -/TT2 1 Tf -3.5 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 535.64 Tm -(Definers: A New Facility for Extending the File Manager)Tj -ET -54.01 532.49 m -558.01 532.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 513.2 Tm -0.191 Tw -(The Definer facility is provided to make the process of adding a)Tj -0 -1.2 TD -0.02 Tw -[(certain common kind of File Manager type easy. All of the new File)]TJ -T* -0.539 Tw -(Manager types in the Lyric release \(including )Tj -/TT4 1 Tf -23.8946 0 TD -0 Tw -(FUNCTIONS)Tj -/TT2 1 Tf -5.833 0 TD -(,)Tj -/TT4 1 Tf --29.7276 -1.2 TD -(VARIABLES)Tj -/TT2 1 Tf -5.7783 0 TD -(, )Tj -/TT4 1 Tf -0.9297 0 TD -(STRUCTURES)Tj -/TT2 1 Tf -6.8335 0 TD -0.374 Tw -(, etc.\) and almost all of the new)Tj --13.5415 -1.2 TD -0.541 Tw -(defining macros \(including )Tj -/TT4 1 Tf -13.518 0 TD -0 Tw -(CL:DEFUN)Tj -/TT2 1 Tf -5.1104 0 TD -(, )Tj -/TT4 1 Tf -1.0967 0 TD -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -(,)Tj -/TT4 1 Tf --29.7245 -1.2 TD -(CL:DEFSTRUCT)Tj -/TT2 1 Tf -7.7212 0 TD -0.078 Tw -(, etc.\) were themselves created using the Definer)Tj --7.7212 -1.2 TD -0 Tw -(facility.)Tj -0 -1.9 TD -0.093 Tw -(In previous releases, adding new types and commands to the File)Tj -0 -1.2 TD -0.042 Tw -(Manager involved deeply understanding the way in which it worked)Tj -T* -0.115 Tw -(and defining a number of functions to carry out certain operations)Tj -T* -0.073 Tw -[(on the new type/command. Further, making functions and macros)]TJ -T* -0.26 Tw -(save away definitions of the new type was similarly subtle and)Tj -T* -0.388 Tw -[(generally difficult or complicated to do. With the addition of)]TJ -T* -0.013 Tw -(Common Lisp, it was realized that a large number of new types and)Tj -T* -0.38 Tw -(commands would be added, all needing essentially the same)Tj -T* -0.159 Tw -[(implementation of the various operations. In addition, many new)]TJ -T* -0.082 Tw -(defining macros were to be added and all of them needed to save)Tj -T* -0 Tw -(definitions.)Tj -0 -1.9 TD -0.304 Tw -(As an explanation of the Definer facility, we will describe how)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(VARIABLES)Tj -/TT2 1 Tf -5.7783 0 TD -0.189 Tw -[( and )]TJ -/TT4 1 Tf -2.6021 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9986 0 TD -0.189 Tw -[( could be added into the)]TJ --18.379 -1.2 TD -0 Tw -(system, if they were not already there.)Tj -0 -1.9 TD -0.579 Tw -[(First, a little background about our example. The macro)]TJ -/TT4 1 Tf -0 -1.2 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.09 Tw -[( is used in Common Lisp to globally declare)]TJ --9.9995 -1.2 TD -0.014 Tw -[(a given variable to be special and to give it an initial value. \(For the)]TJ -T* -0.13 Tw -(purposes of this example, we will ignore the documentation-string)Tj -T* -0.1 Tw -(given to real )Tj -/TT4 1 Tf -6.0256 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.1 Tw -[( forms.\) The value of a call to)]TJ --16.0251 -1.2 TD -0.133 Tw -[(the macro should be the name of the variable being defined. An)]TJ -T* -0 Tw -(acceptable definition of this macro might appear as follows:)Tj -/TT11 1 Tf -0 -1.371 TD -(\(DEFMACRO CL:DEFPARAMETER \(SYMBOL EXPRESSION\))Tj -0 -1 TD -( \(PROGN)Tj -T* -( \(CL:PROCLAIM \(CL:SPECIAL ,SYMBOL\)\))Tj -T* -( \(SETQ ,SYMBOL ,EXPRESSION\))Tj -T* -( ,SYMBOL\)\))Tj -/TT2 1 Tf -0 -1.829 TD -0.039 Tw -(There are some problems with using such a simple definition in the)Tj -0 -1.2 TD -0.181 Tw -[(Lisp environment, however. For example, if a call to this macro)]TJ -T* -0.235 Tw -(were typed to the Exec, the File Manager would not be told to)Tj -T* -0.064 Tw -[(notice it. Thus, there would be no convenient way to remember to)]TJ -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -75 0 obj -<< -/Length 5110 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-27)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.07 Tw -(add the form to the filecoms of some file and thus to save it away.)Tj -0 -1.2 TD -0.15 Tw -(Also, note that the macro does not pay attention to the )Tj -/TT4 1 Tf -25.9435 0 TD -0 Tw -(DFNFLG)Tj -/TT2 1 Tf --25.9435 -1.2 TD -0.277 Tw -(variable; thus, loading a file containing a )Tj -/TT4 1 Tf -20.0064 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf --20.0064 -1.2 TD -0.358 Tw -(form would always set the variable to the value of the initial)Tj -T* -0.021 Tw -(expression, even when )Tj -/TT4 1 Tf -10.5693 0 TD -0 Tw -(DFNFLG)Tj -/TT2 1 Tf -4.0547 0 TD -0.021 Tw -[( was set to )]TJ -/TT4 1 Tf -5.1416 0 TD -0 Tw -(ALLPROP)Tj -/TT2 1 Tf -4.7778 0 TD -0.021 Tw -[(. This could)]TJ --24.5435 -1.2 TD -0 Tw -(make editing code using this variable difficult.)Tj -0 -1.9 TD -0.14 Tw -(We will now proceed to fix these problems by getting the Definer)Tj -0 -1.2 TD -0 Tw -(facility involved. There are two steps involved in using Definers:)Tj -1.8 -1.9 TD -0.2 Tw -[()-849.9(Unless one of the currently-existing File Manager types is)]TJ -1.2 -1.2 TD -0.091 Tw -(appropriate for definitions using the new macro, a new type)Tj -T* -0.237 Tw -[(must be created. The macro )]TJ -/TT4 1 Tf -14.483 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.278 0 TD -0.237 Tw -[( is)]TJ --25.761 -1.2 TD -0 Tw -(used for this purpose.)Tj --1.2 -1.9 TD -0.272 Tw -[()-849.9(The macro must be defined in such a way that the File)]TJ -1.2 -1.2 TD -0.11 Tw -(Manager can tell that it should notice and save uses of the)Tj -T* -0.116 Tw -(macro and under which File Manager type the uses should)Tj -T* -0.178 Tw -[(be saved. The macro )]TJ -/TT4 1 Tf -10.8392 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.178 Tw -[( is used for this)]TJ --19.5614 -1.2 TD -0 Tw -(purpose.)Tj --3 -1.9 TD -0.014 Tw -(Since we are pretending for the example that the File Manager type)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(VARIABLES)Tj -/TT2 1 Tf -5.7783 0 TD -0.443 Tw -[( is not defined, we decide that definitions using)]TJ -/TT4 1 Tf --5.7783 -1.2 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.311 Tw -[( should not be given any of the already-)]TJ --9.9995 -1.2 TD -0.04 Tw -[(existing types. We must define a type, therefore, and we decide to)]TJ -T* -0.158 Tw -(call it )Tj -/TT4 1 Tf -2.8722 0 TD -0 Tw -(VARIABLES)Tj -/TT2 1 Tf -5.7783 0 TD -0.158 Tw -[(. The following )]TJ -/TT4 1 Tf -7.6354 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.2778 0 TD -0.158 Tw -[( form)]TJ --27.5637 -1.2 TD -0 Tw -(will do the trick:)Tj -/TT11 1 Tf --2.4 -1.371 TD -(\(XCL:DEF-DEFINE-TYPE VARIABLES "Common Lisp)Tj -0 -1 TD -(variables"\))Tj -/TT2 1 Tf -2.4 -1.829 TD -0.073 Tw -(The first argument to )Tj -/TT4 1 Tf -9.7959 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.2778 0 TD -0.073 Tw -[( is the name for the)]TJ --21.0737 -1.2 TD -0.05 Tw -[(new type. The second argument is a descriptive string, to be used)]TJ -T* -0 Tw -(when printing out messages about the type.)Tj -0 -1.9 TD -0.949 Tw -(With the new type thus created, we can now use)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.214 Tw -[( to redefine the macro. Simply changing the)]TJ --8.7222 -1.2 TD -0 Tw -(word )Tj -/TT4 1 Tf -3.1573 0 TD -(DEFMACRO)Tj -/TT2 1 Tf -5.7773 0 TD -0.712 Tw -[( into )]TJ -/TT4 1 Tf -3.592 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.712 Tw -[( and adding an)]TJ --21.2488 -1.2 TD -0.221 Tw -(argument specifying the new type suffices to change our earlier)Tj -T* -0 Tw -(definition into a use of the Definer facility:)Tj -/TT11 1 Tf --2.4 -1.371 TD -(\(XCL:DEFDEFINER CL:DEFPARAMETER VARIABLES)Tj -0 -1 TD -( \(SYMBOL EXPRESSION\))Tj -T* -( \(PROGN)Tj -T* -( \(CL:PROCLAIM \(CL:SPECIAL ,SYMBOL\)\))Tj -T* -( \(SETQ ,SYMBOL ,EXPRESSION\))Tj -T* -( ,SYMBOL\)\))Tj -/TT2 1 Tf -2.4 -1.829 TD -0.943 Tw -(\(In fact, we could also remove the final )Tj -/TT4 1 Tf -24.8858 0 TD -0 Tw -(,SYMBOL)Tj -/TT2 1 Tf -4.8335 0 TD -(;)Tj -/TT4 1 Tf --29.7193 -1.2 TD -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.221 Tw -[( automatically arranges for the new macro to)]TJ --8.7222 -1.2 TD -0.043 Tw -[(return the name of the new definition.\) Now, if we were to type the)]TJ -T* -0 Tw -(form)Tj -/TT11 1 Tf --2.4 -1.371 TD -(\(CL:DEFPARAMETER *FOO* 17\))Tj -/TT2 1 Tf -2.4 -1.829 TD -0.271 Tw -(into the Exec and then call the function )Tj -/TT4 1 Tf -19.6241 0 TD -0 Tw -(FILES?)Tj -/TT2 1 Tf -3.4443 0 TD -0.271 Tw -(, we would be)Tj --23.0684 -1.2 TD -0 Tw -(presented with something like the following:)Tj -8 0 0 8 258 124.2 Tm -(24> )Tj -/TT4 1 Tf -10 0 0 10 273.7929 124.2 Tm -(\(FILES?\))Tj -/TT11 1 Tf --1.5793 -0.871 TD -(the Common Lisp variables: *FOO*)Tj -0 -1 TD -(...to be dumped. want to say where the above go?)Tj -/TT2 1 Tf -0 -1.829 TD -0.204 Tw -(As with other File Manager types, our definitions are being kept)Tj -0 -1.2 TD -0.05 Tw -[(track of. If we answer Yes to the above question and specify a file)]TJ -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -79 0 obj -<< -/Length 6724 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-28)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.041 Tw -(in which to save the definition, a command like the following will be)Tj -0 -1.2 TD -0 Tw -(added to the filecoms:)Tj -/TT11 1 Tf -0 -1.771 TD -(\(VARIABLES *FOO*\))Tj -/TT2 1 Tf -0 -1.829 TD -0.288 Tw -(Actually, the output from )Tj -/TT4 1 Tf -12.213 0 TD -0 Tw -(FILES?)Tj -/TT2 1 Tf -3.4443 0 TD -0.288 Tw -[( as shown above is not quite)]TJ --15.6574 -1.2 TD -0 Tw -(accurate. In reality, we would also be asked about the following:)Tj -/TT11 1 Tf -0 -1.771 TD -(the Common Lisp functions/macros: CL:DEFPARAMETER)Tj -0 -1 TD -(the Definition types: VARIABLES)Tj -/TT2 1 Tf -0 -1.829 TD -0.049 Tw -(The File Manager is also watching for new types and new Definers)Tj -0 -1.2 TD -0.068 Tw -[(being created and will let us save those definitions as well. These)]TJ -T* -0 Tw -(would be listed in the filecoms as follows:)Tj -/TT11 1 Tf -0 -1.771 TD -(\(DEFINE-TYPES VARIABLES\))Tj -0 -1 TD -(\(FUNCTIONS CL:DEFPARAMETER\))Tj -/TT2 1 Tf -0 -1.829 TD -0.11 Tw -[(All of these definitions are full-fledged File Manager citizens. The)]TJ -0 -1.2 TD -0 Tw -(functions )Tj -/TT4 1 Tf -4.5733 0 TD -(GETDEF)Tj -/TT2 1 Tf -4.0557 0 TD -(, )Tj -/TT4 1 Tf -0.8487 0 TD -(HASDEF)Tj -/TT2 1 Tf -4.1113 0 TD -(, )Tj -/TT4 1 Tf -0.8487 0 TD -(PUTDEF)Tj -/TT2 1 Tf -4.0003 0 TD -(, )Tj -/TT4 1 Tf -0.8487 0 TD -(DELDEF)Tj -/TT2 1 Tf -4.0003 0 TD -0.293 Tw -(, etc. all work)Tj --23.287 -1.2 TD -0.24 Tw -[(with the new type. We can edit the definition of )]TJ -/TT4 1 Tf -23.8187 0 TD -0 Tw -(*FOO*)Tj -/TT2 1 Tf -2.9448 0 TD -0.24 Tw -[( above)]TJ --26.7635 -1.2 TD -0 Tw -(simply by specifying the type to the )Tj -/TT4 1 Tf -15.7856 0 TD -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -( function:)Tj -/TT11 1 Tf --17.1748 -1.771 TD -(\(ED *FOO* VARIABLES\))Tj -/TT2 1 Tf -0 -1.829 TD -0.272 Tw -(When we exit the editor, the new definition will be saved and,)Tj -0 -1.2 TD -0 Tw -(unless )Tj -/TT4 1 Tf -3.1685 0 TD -(DFNFLG)Tj -/TT2 1 Tf -4.0547 0 TD -( is set to )Tj -/TT4 1 Tf -4.0015 0 TD -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -( or )Tj -/TT4 1 Tf -1.4448 0 TD -(ALLPROP)Tj -/TT2 1 Tf -4.7778 0 TD -(, evaluated.)Tj --20.2812 -1.9 TD -0.018 Tw -(It is now time to fully describe the macros )Tj -/TT4 1 Tf -18.7245 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf --18.7245 -1.2 TD -(and )Tj -/TT4 1 Tf -1.9463 0 TD -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -(.)Tj -/TT4 1 Tf --23.8685 -1.9 TD -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.278 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DESCRIPTION)Tj -/TT2 1 Tf -6.834 0 TD -[( &KEY :UNDEFINER)-8974.2([)]TJ -/TT6 1 Tf -18.587 0 TD -(Macro)Tj -/TT2 1 Tf -2.7783 0 TD -(])Tj -ET -126.01 417.49 m -558.01 417.49 l -S -BT -10 0 0 10 258 402.2 Tm -0.227 Tw -(Creates a new File Manager type and command with the given)Tj -/TT6 1 Tf -0 -1.2 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.019 Tw -[(. The string )]TJ -/TT6 1 Tf -5.6336 0 TD -0 Tw -(DESCRIPTION)Tj -/TT2 1 Tf -6.834 0 TD -0.019 Tw -[( will be used to describe the type)]TJ --15.3568 -1.2 TD -0.568 Tw -[(in printed messages. The new type implements )]TJ -/TT4 1 Tf -25.9986 0 TD -0 Tw -(PUTDEF)Tj -/TT2 1 Tf --25.9986 -1.2 TD -0.625 Tw -(operations by evaluating the definition form, )Tj -/TT4 1 Tf -23.373 0 TD -0 Tw -(GETDEF)Tj -/TT2 1 Tf -4.0557 0 TD -0.625 Tw -[( and)]TJ -/TT4 1 Tf --27.4287 -1.2 TD -0 Tw -(HASDEF)Tj -/TT2 1 Tf -4.1113 0 TD -0.138 Tw -[( by looking up the given name in an internal hash-table,)]TJ --4.1113 -1.2 TD -0 Tw -(using )Tj -/TT4 1 Tf -2.8895 0 TD -(EQUAL)Tj -/TT2 1 Tf -3.5 0 TD -0.221 Tw -[( as the equality test on names, and )]TJ -/TT4 1 Tf -18.0544 0 TD -0 Tw -(DELDEF)Tj -/TT2 1 Tf -4 0 TD -0.221 Tw -[( by)]TJ --28.4439 -1.2 TD -0.492 Tw -[(removing any named definition from the hash-table. If the)]TJ -/TT4 1 Tf -T* -0 Tw -(:UNDEFINER)Tj -/TT2 1 Tf -6.1665 0 TD -0.216 Tw -[( argument is provided, it should be the name of a)]TJ --6.1665 -1.2 TD -0.243 Tw -(function to be called with the )Tj -/TT6 1 Tf -14.355 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.243 Tw -[( argument to any )]TJ -/TT4 1 Tf -8.7542 0 TD -0 Tw -(DELDEF)Tj -/TT2 1 Tf --25.9984 -1.2 TD -0.172 Tw -[(operations on this type. The )]TJ -/TT4 1 Tf -13.9285 0 TD -0 Tw -(:UNDEFINER)Tj -/TT2 1 Tf -6.1665 0 TD -0.172 Tw -[( function can perform)]TJ --20.095 -1.2 TD -0 Tw -(any other operations necessary to completely delete a definition.)Tj -/TT4 1 Tf -0 -1.9 TD -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.2778 0 TD -0.007 Tw -[( forms are File Manager definitions of type)]TJ -/TT4 1 Tf --11.2778 -1.2 TD -0 Tw -(DEFINE-TYPES)Tj -/TT2 1 Tf -7.2788 0 TD -(.)Tj --7.2788 -1.9 TD -0.094 Tw -(As an example of the full use of )Tj -/TT4 1 Tf -14.9825 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.2778 0 TD -0.094 Tw -(, here is)Tj --26.2603 -1.2 TD -0.14 Tw -(the complete definition of the type VARIABLES as it exists in the)Tj -T* -0 Tw -(Lyric release:)Tj -/TT11 1 Tf --4.8 -1.771 TD -[(\(XCL:DEF-DEFINE-TYPE)-1198(VARIABLES "Common Lisp variables")]TJ -13.2 -1 TD -(:UNDEFINER UNDOABLY-MAKUNBOUND\))Tj -/TT2 1 Tf --8.4 -1.829 TD -0.833 Tw -(The function )Tj -/TT4 1 Tf -7.4473 0 TD -0 Tw -(UNDOABLY-MAKUNBOUND)Tj -/TT2 1 Tf -13.3857 0 TD -0.833 Tw -[( is described in)]TJ --20.833 -1.2 TD -0 Tw -(Appendix D of these Release Notes.)Tj -/TT4 1 Tf --13.2 -1.9 TD -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.722 0 TD -( {)Tj -/TT6 1 Tf -0.6118 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( | \()Tj -/TT6 1 Tf -1.1484 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -( {)Tj -/TT6 1 Tf -0.6118 0 TD -(OPTION)Tj -/TT2 1 Tf -3.8335 0 TD -(}*\)} )Tj -/TT6 1 Tf -1.668 0 TD -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(ARG-LIST)Tj -/TT2 1 Tf -4.6118 0 TD -( &BODY )Tj -/TT6 1 Tf -4.0566 0 TD -(BODY)Tj -/TT2 1 Tf -5.934 0 TD -([)Tj -/TT6 1 Tf -0.2778 0 TD -(Macro)Tj -/TT2 1 Tf -2.7783 0 TD -(])Tj -ET -126.01 128.49 m -558.01 128.49 l -S -BT -10 0 0 10 258 113.2 Tm -0.201 Tw -(Creates a macro named )Tj -/TT6 1 Tf -11.8089 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.201 Tw -(, calls to which are seen as File)Tj --14.698 -1.2 TD -0.08 Tw -(Manager definitions of type )Tj -/TT6 1 Tf -12.6052 0 TD -0 Tw -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -0.08 Tw -(. )Tj -/TT6 1 Tf -0.9935 0 TD -0 Tw -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -0.08 Tw -[( must be a File Manager)]TJ --18.8223 -1.2 TD -0.017 Tw -(type previously defined using )Tj -/TT4 1 Tf -13.2428 0 TD -0 Tw -(XCL:DEF-DEFINE-TYPE)Tj -/TT2 1 Tf -11.2778 0 TD -0.017 Tw -(. )Tj -/TT6 1 Tf -0.8675 0 TD -0 Tw -(ARG-LIST)Tj -/TT2 1 Tf --25.3881 -1.2 TD -(and )Tj -/TT6 1 Tf -1.9503 0 TD -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.0002 Tc -0.0038 Tw -( are precisely as in )Tj -/TT4 1 Tf -8.6347 0 TD -0 Tc -0 Tw -(DEFMACRO)Tj -/TT2 1 Tf -5.7773 0 TD -0.0002 Tc -0.0038 Tw -(. A macro defined using)Tj -ET -endstream -endobj -80 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -82 0 obj -<< -/Length 5946 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-29)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.102 Tw -[( differs from one defined using )]TJ -/TT4 1 Tf -14.342 0 TD -0 Tw -(DEFMACRO)Tj -/TT2 1 Tf -5.7773 0 TD -0.102 Tw -[( in)]TJ --28.8415 -1.2 TD -0 Tw -(the following ways:)Tj -1.8 -1.9 TD -()Tj -/TT6 1 Tf -1.2 0 TD -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.008 Tw -[( will be evaluated if and only if the value of )]TJ -/TT4 1 Tf -19.0997 0 TD -0 Tw -(DFNFLG)Tj -/TT2 1 Tf -4.0547 0 TD -0.008 Tw -[( is)]TJ --25.9884 -1.2 TD -0 Tw -(not one of )Tj -/TT4 1 Tf -4.7261 0 TD -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -( or )Tj -/TT4 1 Tf -1.4448 0 TD -(ALLPROP)Tj -/TT2 1 Tf -4.7778 0 TD -(.)Tj --14.9827 -1.9 TD -0.039 Tw -[()-849.9(The form returned by )]TJ -/TT6 1 Tf -10.9712 0 TD -0 Tw -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.039 Tw -[( will be evaluated in a context in)]TJ --12.6052 -1.2 TD -0.036 Tw -[(which the File Manager has been temporarily disabled. This)]TJ -T* -0.249 Tw -(allows Definers to expand into other Definers without the)Tj -T* -0 Tw -(subordinate ones being noticed by the File Manager.)Tj --1.2 -1.9 TD -0.121 Tw -[()-849.9(Calls to Definers return the name of the new definition \(as,)]TJ -1.2 -1.2 TD -0.433 Tw -(for example, )Tj -/TT4 1 Tf -6.6463 0 TD -0 Tw -(CL:DEFUN)Tj -/TT2 1 Tf -5.1104 0 TD -0.433 Tw -[( and )]TJ -/TT4 1 Tf -3.0901 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -0.433 Tw -[( are)]TJ --24.8463 -1.2 TD -0 Tw -(defined to do\).)Tj --1.2 -1.9 TD -0.138 Tw -[()-849.9(Calls to Definers are noticed and remembered by the File)]TJ -1.2 -1.2 TD -0 Tw -(Manager, saved as a definition of type )Tj -/TT6 1 Tf -17.1772 0 TD -(TYPE)Tj -/TT2 1 Tf -2.6118 0 TD -(.)Tj --20.9891 -1.9 TD -0.082 Tw -[()-849.9(SEdit- and Interlisp-style comment forms \(those with a CAR)]TJ -1.2 -1.2 TD -0.018 Tw -(of IL:*\) are stripped from the macro call before it is passed to)Tj -/TT6 1 Tf -T* -0 Tw -(BODY)Tj -/TT2 1 Tf -2.834 0 TD -0.062 Tw -[(. \(This comment-removal is partially controlled by the)]TJ --2.834 -1.2 TD -0.165 Tw -(value of the variable )Tj -/TT4 1 Tf -9.888 0 TD -0 Tw -(*REMOVE-INTERLISP-COMMENTS*)Tj -/TT2 1 Tf -16.833 0 TD -(,)Tj --26.721 -1.2 TD -(described below.\))Tj --3 -1.9 TD -(The following )Tj -/TT6 1 Tf -6.1699 0 TD -(OPTION)Tj -/TT2 1 Tf -3.8335 0 TD -(s are allowed:)Tj -/TT11 1 Tf --12.4034 -1.9 TD -(\(:UNDEFINER )Tj -/TT6 1 Tf -7.2012 0 TD -(FN)Tj -/TT11 1 Tf -1.333 0 TD -(\))Tj -/TT2 1 Tf --6.1342 -1.829 TD -0.142 Tw -(If )Tj -/TT4 1 Tf -1.3953 0 TD -0 Tw -(DELDEF)Tj -/TT2 1 Tf -4 0 TD -0.142 Tw -[( is called on a name whose definition is a call to this)]TJ --5.3953 -1.2 TD -0 Tw -(Definer, )Tj -/TT6 1 Tf -4.0463 0 TD -(FN)Tj -/TT2 1 Tf -1.333 0 TD -0.267 Tw -[( will be called with one argument, the name of the)]TJ --5.3793 -1.2 TD -0.295 Tw -[(definition. This option allows for Definer-specific actions to be)]TJ -T* -0.036 Tw -(taken at )Tj -/TT4 1 Tf -3.9079 0 TD -0 Tw -(DELDEF)Tj -/TT2 1 Tf -4 0 TD -0.036 Tw -[( time. This is useful when more than one Definer)]TJ --7.9079 -1.2 TD -0.178 Tw -(exists for a given type. )Tj -/TT6 1 Tf -11.5729 0 TD -0 Tw -(FN)Tj -/TT2 1 Tf -1.333 0 TD -0.178 Tw -[( should be a form acceptable as the)]TJ --12.9059 -1.2 TD -0 Tw -(argument to the )Tj -/TT4 1 Tf -7.2822 0 TD -(FUNCTION)Tj -/TT2 1 Tf -5.166 0 TD -( special form.)Tj -/TT11 1 Tf --14.8482 -1.9 TD -(\(:NAME )Tj -/TT6 1 Tf -4.2007 0 TD -(NAME-FN)Tj -/TT11 1 Tf -4.5552 0 TD -(\))Tj -/TT2 1 Tf --6.3559 -1.829 TD -0.165 Tw -(By default, the Definer facility assumes that the first argument to)Tj -0 -1.2 TD -0.325 Tw -(any macro defined using )Tj -/TT4 1 Tf -12.4733 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.325 Tw -[( will be the name)]TJ --21.1955 -1.2 TD -0.032 Tw -[(under which the definition should be saved. This assumption holds)]TJ -T* -0.506 Tw -(true for almost all Common Lisp defining macros, including)Tj -/TT4 1 Tf -T* -0 Tw -(CL:DEFUN)Tj -/TT2 1 Tf -5.11 0 TD -(, )Tj -/TT4 1 Tf -2.0187 0 TD -(CL:DEFMACRO)Tj -/TT2 1 Tf -7.4433 0 TD -(, )Tj -/TT4 1 Tf -2.0187 0 TD -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9993 0 TD -1.463 Tw -[( and)]TJ -/TT4 1 Tf --26.59 -1.2 TD -0 Tw -(CL:DEFVAR)Tj -/TT2 1 Tf -5.777 0 TD -0.019 Tw -[(. It doesnt work, however, for a few other forms, such)]TJ --5.777 -1.2 TD -0 Tw -(as )Tj -/TT4 1 Tf -1.397 0 TD -(CL:DEFSTRUCT)Tj -/TT2 1 Tf -7.7212 0 TD -0.063 Tw -[( and )]TJ -/TT4 1 Tf -2.3501 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.063 Tw -[( itself. When defining)]TJ --20.1905 -1.2 TD -0.288 Tw -(a macro for which that assumption is false, the )Tj -/TT4 1 Tf -23.4348 0 TD -0 Tw -(:NAME)Tj -/TT2 1 Tf -3.2773 0 TD -0.288 Tw -[( option)]TJ --26.7121 -1.2 TD -0.069 Tw -(should be used. )Tj -/TT6 1 Tf -7.8927 0 TD -0 Tw -(NAME-FN)Tj -/TT2 1 Tf -4.5552 0 TD -0.069 Tw -[( should be a function of one argument,)]TJ --12.4479 -1.2 TD -0.148 Tw -[(a call to the Definer. It should return the Lisp object naming the)]TJ -T* -0.154 Tw -(given definition \(most commonly a symbol, but any Lisp object is)Tj -T* -0.11 Tw -[(permissible\). For example, the )]TJ -/TT4 1 Tf -14.5549 0 TD -0 Tw -(:NAME)Tj -/TT2 1 Tf -3.2773 0 TD -0.11 Tw -[( option in the definitions of)]TJ -/TT4 1 Tf --17.8322 -1.2 TD -0 Tw -(CL:DEFSTRUCT)Tj -/TT2 1 Tf -7.7212 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -( is as follows:)Tj -/TT11 1 Tf --18.6675 -1.771 TD -(\(:NAME \(LAMBDA \(FORM\))Tj -0 -1 TD -( \(LET \(\(NAME \(CADR FORM\)\)\))Tj -T* -( \(COND \(\(LITATOM NAME\))Tj -T* -( NAME\))Tj -T* -( \(T \(CAR NAME\)\)\)\)\)\))Tj -/TT6 1 Tf -0 -1.829 TD -(NAME-FN)Tj -/TT2 1 Tf -4.5552 0 TD -0.232 Tw -[( should be a form acceptable as the argument to the)]TJ -/TT4 1 Tf --4.5552 -1.2 TD -0 Tw -(FUNCTION)Tj -/TT2 1 Tf -5.166 0 TD -0.249 Tw -[( special form \(i.e., a symbol naming a function or a)]TJ --5.166 -1.2 TD -0 Tw -(LAMBDA-form\).)Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -85 0 obj -<< -/Length 6911 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-30)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT11 1 Tf -10 0 0 10 234 730.2 Tm -(\(:PROTOTYPE )Tj -/TT6 1 Tf -7.2012 0 TD -(DEFN-FN)Tj -/TT11 1 Tf -4.3882 0 TD -(\))Tj -/TT2 1 Tf --9.1894 -1.829 TD -0.08 Tw -(When the editor function )Tj -/TT4 1 Tf -11.4377 0 TD -0 Tw -(ED)Tj -/TT2 1 Tf -1.3892 0 TD -0.08 Tw -[( is passed a name with no definitions,)]TJ --12.8268 -1.2 TD -0.115 Tw -(the user is offered a choice of several ways to create a prototype)Tj -T* -0.283 Tw -[(definition. Those choices are specified with the )]TJ -/TT4 1 Tf -23.4979 0 TD -0 Tw -(:PROTOTYPE)Tj -/TT2 1 Tf --23.4979 -1.2 TD -0.142 Tw -(option to )Tj -/TT4 1 Tf -4.3983 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT11 1 Tf -8.7222 0 TD -(.)Tj -/TT2 1 Tf -0.6001 0 TD -0.142 Tc -( )Tj -/TT6 1 Tf -0.8397 0 TD -0 Tc -(DEFN-FN)Tj -/TT2 1 Tf -4.3882 0 TD -0.142 Tw -[( should be a function of)]TJ --18.9484 -1.329 TD -0.105 Tw -(one argument, the name to be defined using this Definer. )Tj -/TT6 1 Tf -26.9489 0 TD -0 Tw -(DEFN-)Tj --26.9489 -1.2 TD -(FN)Tj -/TT2 1 Tf -1.333 0 TD -0.175 Tw -[( should return either NIL, if no definition of that name can be)]TJ --1.333 -1.2 TD -0.204 Tw -(created with this Definer, or a form that, when evalauted, would)Tj -T* -0.115 Tw -[(create a definition of that name. For example, the )]TJ -/TT4 1 Tf -23.4957 0 TD -0 Tw -(:PROTOTYPE)Tj -/TT2 1 Tf --23.4957 -1.2 TD -(option for )Tj -/TT4 1 Tf -4.4473 0 TD -(CL:DEFPARAMETER)Tj -/TT2 1 Tf -9.9995 0 TD -( might look as follows:)Tj -/TT11 1 Tf --19.2468 -1.771 TD -(\(:PROTOTYPE \(LAMBDA \(NAME\))Tj -0 -1 TD -( \(AND \(LITATOM NAME\))Tj -T* -( \(CL:DEFPARAMETER ,NAME "Value"\)\)\)\))Tj -/TT2 1 Tf -4.8 -1.829 TD -0.132 Tw -(An example using all of the features of )Tj -/TT4 1 Tf -18.3441 0 TD -0 Tw -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -0.132 Tw -[( is the)]TJ --27.0662 -1.2 TD -0 Tw -(definition of )Tj -/TT4 1 Tf -5.3926 0 TD -(XCL:DEFDEFINER)Tj -/TT2 1 Tf -8.7222 0 TD -( itself, which begins as follows:)Tj -/TT11 1 Tf --23.7147 -1.771 TD -(\(XCL:DEFDEFINER \(XCL:DEFDEFINER)Tj -0 -1 TD -( \(:UNDEFINER \\DELETE-DEFINER\))Tj -T* -( \(:NAME)Tj -T* -( \(LAMBDA \(FORM\))Tj -T* -( \(LET \(\(NAME \(CADR FORM\)\)\))Tj -T* -( \(COND \(\(LITATOM NAME\))Tj -T* -( NAME\))Tj -T* -( \(T \(CAR NAME\)\)\)\)\)\))Tj -T* -( \(:PROTOTYPE)Tj -T* -( \(LAMBDA \(NAME\))Tj -T* -( \(AND \(LITATOM NAME\))Tj -T* -( \(XCL:DEFDEFINER ,NAME "Type")Tj -T* -( \("Arg List"\))Tj -T* -( "Body"\)\)\)\)\))Tj -T* -( FUNCTIONS)Tj -T* -( \(NAME-AND-OPTIONS TYPE ARG-LIST &BODY BODY\))Tj -T* -( ...\))Tj -/TT2 1 Tf -9.6 -1.829 TD -0.188 Tw -(The following variable is used in the process of removing SEdit-)Tj -0 -1.2 TD -0 Tw -(and Interlisp-style comments from Definer forms:)Tj -/TT4 1 Tf --13.2 -1.9 TD -(*REMOVE-INTERLISP-COMMENTS*)Tj -ET -0.75 w -126 317.41 m -294.34 317.41 l -S -BT -/TT2 1 Tf -10 0 0 10 515.7599 319.62 Tm -([)Tj -ET -294.34 317.41 m -518.54 317.41 l -S -BT -/TT6 1 Tf -10 0 0 10 518.54 319.62 Tm -(Variable)Tj -ET -518.54 317.41 m -555.22 317.41 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 319.62 Tm -(])Tj -ET -555.22 317.41 m -558 317.41 l -S -BT -10 0 0 10 258 302.62 Tm -0.092 Tw -(Interlisp-style comments are forms whose )Tj -/TT4 1 Tf -19.188 0 TD -0 Tw -(CAR)Tj -/TT2 1 Tf -2.1665 0 TD -0.092 Tw -[( is the symbol )]TJ -/TT4 1 Tf -6.7591 0 TD -0 Tw -(IL:*)Tj -/TT2 1 Tf -1.6108 0 TD -(.)Tj --29.7245 -1.2 TD -0.074 Tw -(It is possible for certain lists in Lisp code to begin with )Tj -/TT4 1 Tf -24.8997 0 TD -0 Tw -(IL:*)Tj -/TT2 1 Tf -1.6108 0 TD -0.074 Tw -[( but not)]TJ --26.5106 -1.2 TD -0.004 Tw -(be a comment \(for example, a )Tj -/TT4 1 Tf -13.5855 0 TD -0 Tw -(SELECTQ)Tj -/TT2 1 Tf -4.7227 0 TD -0.0003 Tc -0.0037 Tw -( clause\). When such a list)Tj --18.3082 -1.2 TD -0 Tc -0.054 Tw -(is discovered, the value of )Tj -/TT4 1 Tf -12.1098 0 TD -0 Tw -(*REMOVE-INTERLISP-COMMENTS*)Tj -/TT2 1 Tf -16.834 0 TD -0.054 Tw -[( is)]TJ --28.9438 -1.2 TD -0.144 Tw -[(examined. If it is )]TJ -/TT4 1 Tf -8.5008 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.144 Tw -(, the list is assumed to be a comment and is)Tj --9.1116 -1.2 TD -0.105 Tw -[(removed without comment. If it is )]TJ -/TT4 1 Tf -15.9069 0 TD -0 Tw -(:WARN)Tj -/TT2 1 Tf -3.4434 0 TD -0.105 Tw -(, a warning message is)Tj --19.3502 -1.2 TD -0.088 Tw -(printed, saying that a possible comment was not stripped from the)Tj -T* -0.036 Tw -[(code. If )]TJ -/TT4 1 Tf -3.9434 0 TD -0 Tw -(*REMOVE-INTERLISP-COMMENTS*)Tj -/TT2 1 Tf -16.834 0 TD -0.036 Tw -[( is )]TJ -/TT4 1 Tf -1.3498 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.036 Tw -(, the list is not)Tj --23.7381 -1.2 TD -0.096 Tw -[(removed, but no warning is printed. This variable is initially set to)]TJ -/TT4 1 Tf -T* -0 Tw -(:WARN)Tj -/TT2 1 Tf -3.4434 0 TD -(.)Tj -/TT4 1 Tf --16.6434 -1.9 TD -(\(CL:EVAL-WHEN )Tj -ET -126 171.41 m -209.32 171.41 l -S -BT -/TT2 1 Tf -10 0 0 10 209.32 175.62 Tm -( )Tj -ET -209.32 171.41 m -212.1 171.41 l -S -BT -/TT6 1 Tf -10 0 0 10 212.1 175.62 Tm -(WHEN COM)Tj -ET -212.1 171.41 m -268.76 171.41 l -S -BT -10 0 0 10 268.76 173.62 Tm -(1)Tj -ET -268.76 171.41 m -274.32 171.41 l -S -BT -10 0 0 10 274.32 175.62 Tm -( ... COM)Tj -ET -274.32 171.41 m -311.55 171.41 l -S -BT -10 0 0 10 311.55 173.62 Tm -(N)Tj -ET -311.55 171.41 m -318.77 171.41 l -S -BT -10 0 0 10 318.77 175.62 Tm -(\) )Tj -ET -318.77 171.41 m -327.66 171.41 l -S -BT -/TT2 1 Tf -10 0 0 10 327.66 175.62 Tm -11.2522 Tc -( [)Tj -ET -327.66 171.41 m -445.74 171.41 l -S -BT -/TT6 1 Tf -10 0 0 10 445.74 175.62 Tm -0 Tc -(File Package Command )Tj -ET -445.74 171.41 m -555.22 171.41 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 175.62 Tm -(])Tj -ET -555.22 171.41 m -558 171.41 l -S -570 190.4 0.99 -18.99 re -f -BT -10 0 0 10 258 156.62 Tm -0.405 Tw -(Interprets each of the commands )Tj -/TT6 1 Tf -16.9215 0 TD -0 Tw -(COM)Tj -2.3325 -0.2 TD -(1)Tj -0.556 0.2 TD -0.405 Tw -[( ... COM)]TJ -4.533 -0.2 TD -0 Tw -(N)Tj -/TT2 1 Tf -0.722 0.2 TD -0.405 Tw -[( as a file)]TJ -ET -570 171.4 0.99 -20.99 re -f -BT -10 0 0 10 258 142.62 Tm -0 Tw -(package command, but output is wrapped in CL:EVAL-WHEN.)Tj -ET -570 150.4 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 123.62 Tm -(EXAMPLE:)Tj -ET -570 138.4 0.99 -18.99 re -f -BT -/TT11 1 Tf -10 0 0 10 126 105.91 Tm -(\(CL:EVAL-WHEN \(CL:EVAL CL:COMPILE\) )Tj -ET -570 119.4 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 87.62 Tm -( )Tj -/TT11 1 Tf -0.8335 0 TD -(\(OPTIMIZERS FOO\)\) )Tj -/TT2 1 Tf -10.8018 0 TD -( )Tj -ET -570 102.4 0.99 -18.28 re -f -BT -10 0 0 10 258 69.33 Tm -(will cause the following to be written to the file:)Tj -ET -570 84.11 0.99 -18.99 re -f -endstream -endobj -86 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -88 0 obj -<< -/Length 5035 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-31)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT11 1 Tf -10 0 0 10 126 731.49 Tm -(\(CL:EVAL-WHEN \(CL:COMPILE\) )Tj -ET -570 744.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 713.2 Tm -( )Tj -/TT11 1 Tf -0.8335 0 TD -(\(DEFOPTIMIZER FOO \)\) )Tj -/TT2 1 Tf -24.0039 0 TD -( )Tj -ET -570 727.98 0.99 -18.28 re -f -2 w -54.01 658.7 m -558.01 658.7 l -S -BT -/TT4 1 Tf -14 0 0 14 54 646.79 Tm -(Chapter 18 Compiler)Tj -ET -1 w -54.01 643.2 m -558.01 643.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 623.91 Tm -(The Lyric release contains two distinct Lisp compilers:)Tj -0 -1.9 TD -0.097 Tw -[()-1449.9(The Interlisp Compiler, described in detail in Section 18 of the)]TJ -/TT6 1 Tf -1.8 -1.2 TD -0 Tw -(IRM, )Tj -/TT2 1 Tf --1.8 -1.9 TD -0.475 Tw -[()-1449.9(The new XCL Compiler, described in the)]TJ -/TT6 1 Tf -22.6031 0 TD -[( Common Lisp)]TJ --20.8031 -1.2 TD -0 Tw -(Implementation Notes)Tj -/TT2 1 Tf -9.7271 0 TD -(.)Tj --11.5271 -1.9 TD -0.031 Tw -(The Interlisp Compiler provides compatibility with previous releases)Tj -0 -1.2 TD -0.027 Tw -[(of Interlisp-D. It continues to work in very much the same way as it)]TJ -T* -0.037 Tw -[(did in Koto; as before, it compiles all of the Interlisp language. The)]TJ -T* -0.207 Tw -(Interlisp Compiler does not, however, compile the Common Lisp)Tj -T* -0.114 Tw -[(language and will not be extended to do so. The Lyric release is)]TJ -T* -0.121 Tw -(the last release to contain the Interlisp Compiler as a component;)Tj -T* -0.152 Tw -[(future releases will have only the new XCL Compiler. The XCL)]TJ -T* -0 Tw -(Compiler is designed to handle both Interlisp and Common Lisp.)Tj -0 -1.9 TD -0.241 Tw -(Several incompatible changes have been made in the compiled)Tj -0 -1.2 TD -0.014 Tw -[(object code produced by the Interlisp Compiler. This means that )]TJ -/TT6 1 Tf -28.9996 0 TD -0 Tw -(all)Tj --28.9996 -1.2 TD -0.092 Tw -(user code must be recompiled in Lyric)Tj -/TT2 1 Tf -17.3928 0 TD -[(. Code compiled in Koto or)]TJ --17.3928 -1.2 TD -0.238 Tw -(previous releases will not load into Lyric, and code compiled in)Tj -T* -0.09 Tw -[(Lyric wil not load into earlier releases. The filename extension for)]TJ -T* -0.071 Tw -(Interlisp compiled files has been changed from DCOM to LCOM in)Tj -T* -0 Tw -(order to minimize possible confusion. )Tj -0 -1.9 TD -0.042 Tw -[(The XCL Compiler writes its output on a new kind of object file, the)]TJ -0 -1.2 TD -0.105 Tw -[(DFASL file. These files are quite different from the DCOM/LCOM)]TJ -T* -0.0001 Tc -0.0039 Tw -(files produced by the Interlisp Compiler. DFASL files are somewhat)Tj -T* -0 Tc -0.277 Tw -(more compact, much faster to load and can represent a wider)Tj -T* -0 Tw -(range of data objects than was possible in LCOMs.)Tj -0 -1.9 TD -0.029 Tw -(Interlisp source files from Koto can be compiled using the new XCL)Tj -0 -1.2 TD -0.105 Tw -[(compiler. However, some files need to be remade in Lyric before)]TJ -T* -0.538 Tw -(compilation: files containing bitmaps, Interlisp arrays, or the)Tj -/TT4 1 Tf -T* -0 Tw -(UGLYVARS )Tj -/TT2 1 Tf -6.133 0 TD -(and/or )Tj -/TT4 1 Tf -3.4123 0 TD -(HORRIBLEVARS )Tj -/TT2 1 Tf -8.5773 0 TD -0.299 Tw -(File Manager commands.)Tj --18.1226 -1.2 TD -0.025 Tw -(To compile such a file, first )Tj -/TT4 1 Tf -12.2652 0 TD -0 Tw -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.025 Tw -[( it, then call )]TJ -/TT4 1 Tf -5.4359 0 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.025 Tw -[( to write it)]TJ --25.645 -1.2 TD -0.338 Tw -[(back out. This action causes the bitmaps and other unusual)]TJ -T* -0.337 Tw -(objects to be written back in a format acceptable to the new)Tj -T* -0 Tw -(compiler.)Tj -0 -1.9 TD -0.526 Tw -(The default behavior of the File Managers )Tj -/TT4 1 Tf -22.6927 0 TD -0 Tw -(CLEANUP)Tj -/TT2 1 Tf -4.8335 0 TD -0.526 Tw -[( and)]TJ -/TT4 1 Tf --27.5262 -1.2 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.149 Tw -[( functions is to use the new XCL Compiler to compile)]TJ --5.1108 -1.2 TD -0.347 Tw -[(files, rather than the old Interlisp Compiler. To change this)]TJ -T* -0 Tw -(behavior, see Section 17.2, Storing Files.)Tj -0 -1.9 TD -0.477 Tw -(Note that if you call the compiler explicitly, rather than via)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(CLEANUP)Tj -/TT2 1 Tf -4.8335 0 TD -0.264 Tw -[( or )]TJ -/TT4 1 Tf -1.9728 0 TD -0 Tw -(MAKEFILE)Tj -/TT2 1 Tf -5.1108 0 TD -0.264 Tw -(, you should be careful to specify the)Tj --11.9172 -1.2 TD -0.555 Tw -[(correct compiler. The new compiler is invoked by calling)]TJ -/TT4 1 Tf -T* -0 Tw -(CL:COMPILE-FILE)Tj -/TT2 1 Tf -8.7212 0 TD -0.044 Tw -[(. If you inadvertantly call )]TJ -/TT4 1 Tf -11.5472 0 TD -0 Tw -(BCOMPL)Tj -/TT2 1 Tf -4.333 0 TD -0.044 Tw -[( on a file for)]TJ --24.6014 -1.2 TD -0 Tw -(which )Tj -/TT4 1 Tf -2.9325 0 TD -(CLEANUP)Tj -/TT2 1 Tf -4.8335 0 TD -0.098 Tw -[( has routinely been using the new XCL compiler,)]TJ --7.766 -1.2 TD -0.221 Tw -(there are two undesirable consequences: \(1\) Any Common Lisp)Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -91 0 obj -<< -/Length 5460 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-32)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.009 Tw -(functions on the file will not be compiled \(the Interlisp compiler does)Tj -0 -1.2 TD -0.172 Tw -(not recognize )Tj -/TT4 1 Tf -6.6257 0 TD -0 Tw -(CL:DEFUN)Tj -/TT2 1 Tf -5.1104 0 TD -0.172 Tw -(\), and \(2\) the DFASL files produced by)Tj --11.7361 -1.2 TD -0.025 Tw -(earlier calls on the XCL compiler will still be loaded by )Tj -/TT4 1 Tf -24.3414 0 TD -0 Tw -(FILESLOAD)Tj -/TT2 1 Tf --24.3414 -1.2 TD -(in preference to the LCOM file produced by )Tj -/TT4 1 Tf -19.3994 0 TD -(BCOMPL)Tj -/TT2 1 Tf -4.333 0 TD -(.)Tj --23.7324 -1.9 TD -0.207 Tw -(Lisp provides a facility, )Tj -/TT4 1 Tf -11.1659 0 TD -0 Tw -(XCL:DEFOPTIMIZER)Tj -/TT2 1 Tf -9.7771 0 TD -0.207 Tw -(, by which you can)Tj -ET -570 689.98 0.99 -18.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.11 Tw -(advise the compiler about efficient compilation of certain functions)Tj -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.464 Tw -(and macros. )Tj -/TT4 1 Tf -7.4501 0 TD -0 Tw -(XCL:DEFOPTIMIZER)Tj -/TT2 1 Tf -9.7773 0 TD -0.464 Tw -[( works with both the old)]TJ -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 639.2 Tm -0.075 Tw -[(Interlisp Compiler and the Lyric XCL Compiler. See the )]TJ -/TT6 1 Tf -25.5942 0 TD -[( Common)]TJ -ET -570 646.98 0.99 -11.99 re -f -BT -10 0 0 10 258 627.2 Tm -0 Tw -(Lisp Implementation Notes )Tj -/TT2 1 Tf -12.1172 0 TD -(for a description of the compiler.)Tj -ET -570 634.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 599.64 Tm -(Warning when Loading Compiled Files )Tj -ET -570 622.98 0.99 -25.99 re -f -54.01 596.49 m -558.01 596.49 l -S -570 596.98 0.99 -0.99 re -f -BT -10 0 0 10 258 581.2 Tm -(CAUTION: )Tj -/TT2 1 Tf -5.266 0 TD -0.1 Tw -[( Files compiled in Medley cannot be loaded back into)]TJ -ET -570 595.98 0.99 -18.99 re -f -BT -10 0 0 10 258 569.2 Tm -0.105 Tw -[(Lyric. Medley-compiled .LCOM and .DFASL files will produce an)]TJ -ET -570 576.98 0.99 -11.99 re -f -BT -10 0 0 10 258 557.2 Tm -0.0002 Tc -0.0048 Tw -(error message when loaded into Lyric. \(Lyric-compiled .LCOM and)Tj -ET -570 564.98 0.99 -11.99 re -f -BT -10 0 0 10 258 545.2 Tm -0 Tc -0.1 Tw -[(.DFASL files can be loaded and run in Medley. \) If you need to)]TJ -ET -570 552.98 0.99 -11.99 re -f -BT -10 0 0 10 258 533.2 Tm -0.183 Tw -(run a Medley file in Lyric, load the source file and use the Lyric)Tj -ET -570 540.98 0.99 -11.99 re -f -BT -10 0 0 10 258 521.2 Tm -0 Tw -(compiler. )Tj -ET -570 528.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 493.64 Tm -(Warning with Declarations )Tj -ET -570 516.98 0.99 -25.99 re -f -54.01 490.49 m -558.01 490.49 l -S -570 490.98 0.99 -0.99 re -f -BT -10 0 0 10 258 475.2 Tm -(CAUTION: )Tj -/TT2 1 Tf -5.315 0 TD -0.149 Tw -(There is a feature of the BYTECOMPILER that is not)Tj -ET -570 489.98 0.99 -18.99 re -f -BT -10 0 0 10 258 463.2 Tm -0.226 Tw -(supported by either the XCL compiler or SEdit. It is possible to)Tj -ET -570 470.98 0.99 -11.99 re -f -BT -10 0 0 10 258 451.2 Tm -0 Tw -(insert a comment at the beginning of your function that looks like)Tj -ET -570 458.98 0.99 -23.99 re -f -BT -10 0 0 10 270 427.2 Tm -(\(* DECLARATIONS: --\))Tj -ET -570 434.98 0.99 -23.99 re -f -BT -10 0 0 10 258 403.2 Tm -0.088 Tw -[(The tail, or -- section, of this comment is taken as a set of local)]TJ -ET -570 410.98 0.99 -11.99 re -f -BT -10 0 0 10 258 391.2 Tm -0.176 Tw -[(record declarations which are then used by the compiler in that)]TJ -ET -570 398.98 0.99 -11.99 re -f -BT -10 0 0 10 258 379.2 Tm -0.307 Tw -[(function just as if they had been declared globally. The XCL)]TJ -ET -570 386.98 0.99 -11.99 re -f -BT -10 0 0 10 258 367.2 Tm -0.097 Tw -[(compiler does not directly support this feature. If the body of the)]TJ -ET -570 374.98 0.99 -11.99 re -f -BT -10 0 0 10 258 355.2 Tm -0.45 Tw -(function gets DWIMIFIED for some other reason, the record)Tj -ET -570 362.98 0.99 -11.99 re -f -BT -10 0 0 10 258 343.2 Tm -0.16 Tw -(declarations will happen to be noticed, otherwise they will not be)Tj -ET -570 350.98 0.99 -11.99 re -f -BT -10 0 0 10 258 331.2 Tm -0.383 Tw -(seen and the compiler will signal an error if it cant find an)Tj -ET -570 338.98 0.99 -11.99 re -f -BT -10 0 0 10 258 319.2 Tm -0 Tw -(appropriate top-level record definition.)Tj -ET -570 326.98 0.99 -11.99 re -f -BT -10 0 0 10 258 300.2 Tm -(There are two caveats that you should note:)Tj -ET -570 314.98 0.99 -18.99 re -f -BT -10 0 0 10 258 281.2 Tm -0.132 Tw -(1. The compiler will give error messages "undefined record name)Tj -ET -570 295.98 0.99 -18.99 re -f -BT -10 0 0 10 258 269.2 Tm -0.234 Tw -(..." for the records that are declared this way, but will generate)Tj -ET -570 276.98 0.99 -11.99 re -f -BT -10 0 0 10 258 257.2 Tm -0 Tw -(correct code.)Tj -ET -570 264.98 0.99 -23.99 re -f -BT -10 0 0 10 258 233.2 Tm -0.468 Tw -(2. SEdit does not recognize such declarations. Thus, if the)Tj -ET -570 240.98 0.99 -11.99 re -f -BT -10 0 0 10 258 221.2 Tm -0.005 Tw -("Expand" command is used in SEdit, the expansion will not be done)Tj -ET -570 228.98 0.99 -11.99 re -f -BT -10 0 0 10 258 209.2 Tm -0.13 Tw -(with these record declarations in effect. The code that you see in)Tj -ET -570 216.98 0.99 -11.99 re -f -BT -10 0 0 10 258 197.2 Tm -0.699 Tw -(the editor will not be the same code compiled by the)Tj -ET -570 204.98 0.99 -11.99 re -f -BT -10 0 0 10 258 185.2 Tm -0 Tw -(BYTECOMPILER. )Tj -ET -570 192.98 0.99 -32.99 re -f -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -94 0 obj -<< -/Length 4530 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-33)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 18.3 Local Variables and Special Variables )Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -/TT9 1 Tf -10 0 0 10 258 706.2 Tm -(\(II:18.5\) )Tj -ET -570 724.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 687.2 Tm -0.122 Tw -(The new execs always use the Common Lisp interpreter, causing)Tj -ET -570 701.98 0.99 -18.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.116 Tw -(LET and PROG statements at top level, particularly in a so-called)Tj -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.394 Tw -(Interlisp exec, to create lexical bindings, rather than deep or)Tj -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.556 Tw -[("special" bindings This can be worked around by setting)]TJ -ET -570 658.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 639.2 Tm -0 Tw -(il:specvars)Tj -/TT2 1 Tf -5.2256 0 TD -0.099 Tw -[( to T, which will cause the interpreter to create special)]TJ -ET -570 646.98 0.99 -11.99 re -f -BT -10 0 0 10 258 627.2 Tm -0.267 Tw -[(bindings for all variables. This can also be worked around by)]TJ -ET -570 634.98 0.99 -11.99 re -f -BT -10 0 0 10 258 615.2 Tm -0.13 Tw -(wrapping the form to be "interlisp evaluated" in the IL:INTERLISP)Tj -ET -570 622.98 0.99 -11.99 re -f -BT -10 0 0 10 258 603.2 Tm -0 Tw -(special form, which causes the Interlisp interpreter to be invoked. )Tj -ET -570 610.98 0.99 -11.99 re -f -2 w -54.01 547.99 m -558.01 547.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 536.08 Tm -(Chapter 19 Masterscope)Tj -ET -1 w -54.01 532.49 m -558.01 532.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 513.2 Tm -0.46 Tw -(Masterscope is now a Lisp Library Module, not part of the)Tj -0 -1.2 TD -0 Tw -(environment.)Tj -ET -2 w -54.01 445.99 m -558.01 445.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 434.08 Tm -(Chapter 21 CLISP)Tj -ET -1 w -54.01 430.49 m -558.01 430.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 411.2 Tm -0.121 Tw -[(CLISP infix forms do not work under the Common Lisp evaluator;)]TJ -T* -0.211 Tw -[(only "clean" CLISP prefix forms are supported. You should run)]TJ -T* -0.009 Tw -(DWIMIFY in Koto on all other CLISP code before attempting to load)Tj -T* -0.337 Tw -[(it in Lyric. The remainder of this note describes the specific)]TJ -T* -0 Tw -(limitations on CLISP in Lyric.)Tj -0 -1.9 TD -0.073 Tw -(There are two broad classes of transformations that DWIM applies)Tj -0 -1 TD -0 Tw -(to Lisp code:)Tj -0 -1.7 TD -0.014 Tw -[(1.)-966(A sort of macro expander that transforms )]TJ -/TT4 1 Tf -20.3501 0 TD -0 Tw -(IF)Tj -/TT2 1 Tf -0.8889 0 TD -(, )Tj -/TT4 1 Tf -0.5697 0 TD -(FOR)Tj -/TT2 1 Tf -2.1113 0 TD -(, )Tj -/TT4 1 Tf -0.5697 0 TD -(FETCH)Tj -/TT2 1 Tf -3.3333 0 TD -0.014 Tw -(, etc.)Tj --26.023 -1.2 TD -0 Tw -(forms into "pure" Lisp code in well-defined ways.)Tj --1.8 -1.9 TD -0.307 Tw -[(2.)-966(A heuristic "corrector" that performs spelling correction and)]TJ -1.8 -1.2 TD -0.194 Tw -(transforms CLISP infix forms such as X+Y into \(PLUS X Y\),)Tj -T* -0.123 Tw -(sometimes having to make guesses as to whether X+Y might)Tj -T* -0 Tw -(really have been the name of a variable.)Tj --1.8 -1.9 TD -0.332 Tw -(An operational way of distinguishing the two is that DWIMIFY)Tj -0 -1.2 TD -0.317 Tw -(applied to code of type \(1\) makes no alterations in the code,)Tj -T* -0.388 Tw -(whereas for code of type \(2\) it physically changes the form.)Tj -T* -0.024 Tw -(Another difference is that code of type \(2\) must be dwimified before)Tj -T* -0.135 Tw -(it can be compiled \(user typically sets )Tj -/TT4 1 Tf -17.784 0 TD -0 Tw -(DWIMIFYCOMPFLG )Tj -/TT2 1 Tf -9.7449 0 TD -(to )Tj -/TT4 1 Tf -1.2468 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(\),)Tj --29.3865 -1.2 TD -0.089 Tw -(whereas the compiler is able to treat code of type \(1\) as a special)Tj -T* -0 Tw -(kind of macro.)Tj -0 -1.9 TD -0.078 Tw -[(Broadly speaking, code of type \(2\) is no longer fully supported. In)]TJ -0 -1.2 TD -0.077 Tw -(particular, DWIM is invoked only when the code is encountered by)Tj -T* -0.04 Tw -[(the Interlisp evaluator. This means code typed to an "Old Interlisp")]TJ -T* -0.338 Tw -(Executive, and code inside of an interpreted Interlisp function.)Tj -T* -0.013 Tw -(Furthermore, some CLISP infix forms no longer DWIMIFY correctly.)Tj -T* -0.234 Tw -(It is likely that CLISP infix will not be supported at all in future)Tj -T* -0 Tw -(releases.)Tj -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT9 16 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -97 0 obj -<< -/Length 5462 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-34)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.171 Tw -(Expressions typed to the new Executives and inside of Common)Tj -0 -1.2 TD -0.116 Tw -(Lisp functions are run by the Common Lisp evaluator \()Tj -/TT4 1 Tf -25.0562 0 TD -0 Tw -(CL:EVAL)Tj -/TT2 1 Tf -4.333 0 TD -(\).)Tj --29.3892 -1.2 TD -0.171 Tw -(As far as this evaluator is concerned, DWIM does not exist, and)Tj -T* -0.223 Tw -(forms beginning with "CLISP" words )Tj -/TT4 1 Tf -17.3875 0 TD -0 Tw -(\(IF)Tj -/TT2 1 Tf -1.2217 0 TD -(, )Tj -/TT4 1 Tf -0.7787 0 TD -(FOR)Tj -/TT2 1 Tf -2.1108 0 TD -(,)Tj -/TT4 1 Tf -0.2778 0 TD -0.223 Tw -[( FETCH,)]TJ -/TT2 1 Tf -4.1117 0 TD -[( etc\) are)]TJ --25.8881 -1.2 TD -0.05 Tw -[(macros. These macros perform no DWIM corrections, so all of the)]TJ -T* -0.02 Tw -[(subforms must be correct to begin with. This is a change from past)]TJ -T* -0.143 Tw -(releases, where the DWIM expansion of a CLISP word form also)Tj -T* -0.211 Tw -(had the side effect of transforming any CLISP infix that it might)Tj -T* -0 Tw -(have contained. For example, the macro expansion of)Tj -/TT11 1 Tf -1.2 -1.771 TD -(\(if X then Y+1\))Tj -/TT2 1 Tf --1.2 -1.829 TD -0.14 Tw -[(treats Y+1 as a variable, rather than as an addition. The correct)]TJ -0 -1.2 TD -0 Tw -(form is)Tj -0 -1.9 TD -( )Tj -/TT11 1 Tf -1.3892 0 TD -(\(if X then \(PLUS Y 1\)\))Tj -/TT2 1 Tf -13.2021 0 TD -(,)Tj --14.5913 -1.829 TD -(which is the way an explicit call to DWIMIFY would transform it.)Tj -0 -1.9 TD -0.013 Tw -(If you have CLISP code from Koto you are advised to DWIMIFY the)Tj -0 -1.2 TD -0.166 Tw -[(code before attempting to run or compile it in Lyric. Because of)]TJ -T* -0.402 Tw -(differences in the environments, not all CLISP constructs will)Tj -T* -0.05 Tw -[(DWIMIFY correctly in Lyric. In particular, the following do not work)]TJ -T* -0 Tw -(reliably, or at all:)Tj -0 -1.9 TD -0.016 Tw -[(1.)-966(The list-composing constructs using )]TJ -/TT11 1 Tf -18.0373 0 TD -0 Tw -(<)Tj -/TT2 1 Tf -0.6001 0 TD -0.016 Tw -[( and )]TJ -/TT11 1 Tf -2.2561 0 TD -0 Tw -(>)Tj -/TT2 1 Tf -0.6001 0 TD -0.016 Tw -[( do not DWIMIFY if)]TJ --19.6937 -1.329 TD -0 Tw -(the )Tj -/TT11 1 Tf -1.82 0 TD -(<)Tj -/TT2 1 Tf -0.6001 0 TD -0.152 Tw -[( is unpacked \(an isolated symbol\), because in Common)]TJ --2.4201 -1.329 TD -0 Tw -(Lisp, )Tj -/TT11 1 Tf -2.4161 0 TD -(<)Tj -/TT2 1 Tf -0.6001 0 TD -0.026 Tw -[( is a perfectly valid CAR of form. On the other hand, the)]TJ --3.0162 -1.329 TD -0 Tw -(closing )Tj -/TT11 1 Tf -3.5296 0 TD -(>)Tj -/TT2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -0.4168 0 TD -(must)Tj -/TT2 1 Tf -2.167 0 TD -0.139 Tw -[( be unpacked if the last list element is quoted,)]TJ --6.7135 -1.329 TD -0 Tw -(since, for example, )Tj -/TT11 1 Tf -8.6704 0 TD -(\(\))Tj -/TT2 1 Tf -4.8008 0 TD -( reads as )Tj -/TT11 1 Tf -4.3911 0 TD -(\(\))Tj -/TT2 1 Tf -8.4014 0 TD -(\).)Tj --28.0637 -2.029 TD -0.115 Tw -[(2. )-573.2(Because of the conventional use of the characters )]TJ -/TT11 1 Tf -25.1785 0 TD -0 Tw -(*)Tj -/TT2 1 Tf -0.6001 0 TD -0.115 Tw -[( and )]TJ -/TT11 1 Tf -2.4541 0 TD -0 Tw -(-)Tj -/TT2 1 Tf -0.6001 0 TD -0.115 Tw -[( in)]TJ --27.0328 -1.329 TD -0.058 Tw -(Common Lisp names, those characters are only recognized as)Tj -0 -1.2 TD -0 Tw -(CLISP operators when they appear unpacked.)Tj --1.8 -1.9 TD -0.212 Tw -[(3.)-966(On the other hand, the operators + and / are the names of)]TJ -1.8 -1.2 TD -0.069 Tw -[(special variables in Common Lisp \(Steele, p. 325\), and hence)]TJ -T* -0.074 Tw -[(cause no error when passed unpacked to the evaluator. Thus)]TJ -/TT11 1 Tf -0 -1.329 TD -0.051 Tw -(\(LIST X + Y\) )Tj -/TT2 1 Tf -8.0053 0 TD -0.024 Tw -(returns a list of three elements, with no resort)Tj --8.0053 -1.329 TD -0.119 Tw -(to DWIM; however, the parenthesized version)Tj -/TT11 1 Tf -20.8264 0 TD -0.258 Tw -[( \(LIST \(X +)]TJ --20.8264 -1.329 TD -0 Tw -(Y\)\) )Tj -/TT2 1 Tf -2.4004 0 TD -(and the packed version)Tj -/TT11 1 Tf -10.3403 0 TD -( \(LIST X+Y\) )Tj -/TT2 1 Tf -7.2012 0 TD -(both work.)Tj --21.7419 -2.029 TD -0.013 Tw -(If you routinely DWIMIFY code, so that no CLISP infix forms \(type 2)Tj -0 -1.2 TD -0.036 Tw -(above\) remain on your source files, you may not need to make any)Tj -T* -0.024 Tw -[(changes. However, note that the fact that DWIMIFY of prefix forms)]TJ -T* -0.53 Tw -(implicitly performed infix transformations can hide code that)Tj -T* -0 Tw -(escaped being completely dwimified before being written to a file. )Tj -0 -1.9 TD -0.11 Tw -(There is a further caution regarding even routinely dwimified code)Tj -0 -1.2 TD -0.276 Tw -[(that has not been edited since before Koto. Two uses of the)]TJ -T* -0.111 Tw -(assignment operator \()Tj -/TT11 1 Tf -9.9491 0 TD -0 Tw -(_)Tj -/TT2 1 Tf -0.6001 0 TD -0.111 Tw -(\) no longer work, if not explicitly dwimified,)Tj --10.5491 -1.329 TD -0.526 Tw -(because their canonical form \(the output of DWIMIFY\) has)Tj -0 -1.2 TD -0.05 Tw -(changed, and the old form is no longer supported when the form is)Tj -T* -1.276 Tw -(simply evaluated, macro-expanded, or compiled \(with)Tj -/TT4 1 Tf -T* -0 Tw -(DWIMIFYCOMPFLG)Tj -/TT2 1 Tf -9.332 0 TD -( = )Tj -/TT4 1 Tf -1.1396 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(\):)Tj --12.0825 -1.9 TD -0.015 Tw -[(1.)-966(Iterative statement bindings must always be lists. For example,)]TJ -1.8 -1.2 TD -0 Tw -(the old form)Tj -/TT11 1 Tf -0 -1.771 TD -( \(bind X_2 for Y in --\))Tj -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -100 0 obj -<< -/Length 4003 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-35)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.285 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 276 730.2 Tm -(is now canonically)Tj -/TT11 1 Tf -0 -1.771 TD -( \(bind \(X _ 2\) for Y in --\).)Tj -/TT2 1 Tf --1.8 -2.029 TD -0.378 Tw -[(2.)-966(In a WITH expression, assignments must be dwimified to)]TJ -1.8 -1.2 TD -0 Tw -(remove )Tj -/TT11 1 Tf -3.6123 0 TD -(_)Tj -/TT2 1 Tf -0.6001 0 TD -(. For example, the old form)Tj -/TT11 1 Tf --4.2124 -1.9 TD -( \(with MYRECORD MYFIELD _ \(FOO\)\))Tj -/TT2 1 Tf -0 -2.029 TD -(is now canonically)Tj -/TT11 1 Tf -0 -1.771 TD -( \(with MYRECORD \(SETQ MYFIELD \(FOO\)\)\).)Tj -/TT2 1 Tf --1.8 -2.029 TD -0.134 Tw -(DWIMIFY in Koto correctly made these transformations; however,)Tj -0 -1.2 TD -0.042 Tw -[(in some older releases, it did not. Such old code must be explicitly)]TJ -T* -0.101 Tw -[(dwimified \(which you can do for these cases in Lyric\). The errors)]TJ -T* -0.24 Tw -[(resulting from failure to do so can be subtle. In particular, the)]TJ -T* -0.166 Tw -(compiler issues no special warning when such code is compiled.)Tj -T* -0.05 Tw -(For example, in case 1, the macro expansion of the old form treats)Tj -T* -0.001 Tw -(the symbol )Tj -/TT11 1 Tf -5.1153 0 TD -0 Tw -(X_2)Tj -/TT2 1 Tf -1.8003 0 TD -0.001 Tw -( as a variable to bind, rather than as a binding of the)Tj --6.9156 -1.329 TD -0 Tw -(variable )Tj -/TT11 1 Tf -3.8318 0 TD -(X)Tj -/TT2 1 Tf -0.6001 0 TD -0.052 Tw -[( with initial value 2. The only hint from the compiler that)]TJ --4.4319 -1.329 TD -0.09 Tw -(anything is amiss is likely to be an indication that the variable )Tj -/TT11 1 Tf -28.3168 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.6001 0 TD -0.09 Tw -[( is)]TJ --28.9169 -1.329 TD -0.175 Tw -[(used freely but not bound. Case 2 is even subtler: the symbols)]TJ -/TT11 1 Tf -0 -1.2 TD -0 Tw -(MYFIELD)Tj -/TT2 1 Tf -4.2007 0 TD -0.032 Tw -[( and )]TJ -/TT11 1 Tf -2.2881 0 TD -0 Tw -(_)Tj -/TT2 1 Tf -0.6001 0 TD -0.032 Tw -[( are treated as symbols to be evaluated; since their)]TJ --7.0889 -1.329 TD -0.141 Tw -(values are not used, the compiler optimizes them away, reducing)Tj -0 -1.2 TD -0.009 Tw -(the entire expression to simply )Tj -/TT11 1 Tf -13.8292 0 TD -0 Tw -(\(FOO\))Tj -/TT2 1 Tf -3.0005 0 TD -0.009 Tw -(, and there is thus no warning)Tj --16.8297 -1.329 TD -0 Tw -(of any sort from the compiler.)Tj -ET -2 w -54.01 385.25 m -558.01 385.25 l -S -BT -/TT4 1 Tf -14 0 0 14 54 373.34 Tm -(Chapter 22 Performance Issues)Tj -ET -1 w -54.01 369.75 m -558.01 369.75 l -S -BT -12 0 0 12 54 345.9 Tm -(Section 22.3 Performance Measuring)Tj -ET -54.01 342.75 m -558.01 342.75 l -S -BT -/TT9 1 Tf -10 0 0 10 258 323.46 Tm -(\(II:22.8\))Tj -/TT2 1 Tf -0 -1.9 TD -0.165 Tw -[(The Interlisp-D )]TJ -/TT4 1 Tf -7.6083 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -0.165 Tw -[( function has been withdrawn and replaced)]TJ --9.997 -1.2 TD -0.194 Tw -(with the Common Lisp )Tj -/TT4 1 Tf -10.9469 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -0.194 Tw -[( macro \(the symbol )]TJ -/TT4 1 Tf -9.5563 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -0.194 Tw -[( is shared)]TJ --25.2805 -1.2 TD -0.188 Tw -(between IL and CL and thus need not be typed with a package)Tj -T* -0.027 Tw -[(prefix\). The functionality of the )]TJ -/TT6 1 Tf -14.1132 0 TD -0 Tw -(TIMEN)Tj -/TT2 1 Tf -3.1108 0 TD -0.027 Tw -[( and )]TJ -/TT6 1 Tf -2.2781 0 TD -0 Tw -(TIMETYP)Tj -/TT2 1 Tf -4.3335 0 TD -0.027 Tw -[( arguments to)]TJ --23.8356 -1.2 TD -0.207 Tw -(the old )Tj -/TT4 1 Tf -3.6943 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -0.207 Tw -[( can be had by keywords to the )]TJ -/TT4 1 Tf -15.7756 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3887 0 TD -0.207 Tw -[( macro. The)]TJ -/TT6 1 Tf --24.2472 -1.2 TD -0.034 Tw -(Common Lisp Implementation Notes )Tj -/TT2 1 Tf -16.5877 0 TD -(describe the new )Tj -/TT4 1 Tf -7.9399 0 TD -0 Tw -(TIME)Tj -/TT2 1 Tf -2.3865 0 TD -0.034 Tw -[( macro)]TJ --26.914 -1.2 TD -0 Tw -(and its associated command in more detail.)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT9 16 0 R -/TT11 17 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -103 0 obj -<< -/Length 396 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-36)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 139 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --8.5 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -42 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 232 -/Height 174 -/BitsPerComponent 1 -/ImageMask true -/Length 5047 ->> -stream -f$O2fysN~d2fpsNN~d̜2ftsNN~f <2fdsNN~g<2ffsNNNd̜2fNs`?F`NNNx`CNN`O矀Ʉ矟OɄ矟O$矟O$灟@dÜOdϙOϙ<@I<8>y03y'?L'y>L'?I'y>I'?I'y>IC0C'y>C!G'y>G'?G3y'?O80 0'y'y9>~sg39>~sg9>~sg39>3>瓇3>~p瓇3>~sy3>~sy3>0???g? pg'g'?''?O `0@`8|?y39>fy?9'~y9 |I'~y''~y9`>$! # !pC"!!  $H"!D$A"!!$2Q D$A "" !'Q D$ "" !$H"D&A 3$A1  #<pŃ f,@  @ p -endstream -endobj -52 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 437 -/Height 271 -/BitsPerComponent 1 -/ImageMask true -/Length 14906 ->> -stream -~qp߿{;Ǘn݃ǯ7v{?߻fvnտݻۿ7v{?߻vvv`տݻvz߻vwnտV{vz߻fw<8uuՇ?uV;vyǗ=vuɿuݻVۿyvyvuɿuݻvۿ{;ww{݃?w8߿߿|wǏ^;߿{۽wnwn߻f[~ݻw]۷ݻ{۽mn߷f [~w]wݷ{=ww}߯V[V~߯{sÇW]XW_~Ϟw߇{۽nn߻7\W_~v۷ݻ{{۽nn߻7\w_~v۷ݻ߿{qdgn߻f[~ۺݻ~G9>dgn߷f [~ ۺۻ~S9> W}߯V[un׻~dWsÇW]Xw^|nû?~9>dw7n߻7\w]۵nݻ~s9>dw7n߻7\w]۷nݻs9 wwqw?{wwv?W~~ハx8x> -endobj -105 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -106 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -107 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -108 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIKODO+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 109 0 R ->> -endobj -109 0 obj -<< -/Filter /FlateDecode -/Length 20133 -/Length1 39484 ->> -stream -HW}tWovgvfwvrz,BBZKBS F4r0ݷ)̒ I)V&)J[("BA@ovvcy{}3omxsB#]:ohQ`@<38 n|(h -7 2"/|gR#* #-ͨZehضo!8ǗT ߾ ``tZC3]RmGc $v`ewX;{:$ugOcn[ωAqCT(׵#~+PGcej}p֒U-Wz4|2 R<^rG7_@XY{ ɽr8X K 0 Γ&x,d)x0`+^}8"#a Sr l_CMz`&=f߆͎K\<\āˀqT61ЂTs Lgv q\AcpF+-pl!;;I9@xVC<I3 Ha܋+ף5jl_E&duhIXE^/!~&ԣ -&R5Jsw@a, vÕ qMCa*Wo&'`%߀GjOR1 -%r#3qH\K`eڼͫYN& A8_ ~ Bf2JxH|B.^o(:6 c$$pa^p| s(LaMA*ZX/r܁Uct9 )g*9ebSgb_ɴdJ_IH 0@*11ebH?JHxzdZ_I$gfo:ғUBg7SO4 _!7: Z}4|/f/r\+86;H&[~$}RU%Dcf~`Bm|E66.ql\n -WXcS6qO656gm\gm9/8'%OqCbё/ -50O%P bHWLT!5 BHj΀ -J~onq%H_]Ucf1%j4deF%** -)h #cbRݲkIh*+߯lT-8ڠ*ZP ~'FͭBPE̓S4 ?x8ΑzTT Ge<4CHO;}R֘ =ǙfalXbK=TaaT=Ѵv8sEYiPUV'|jQW}MlM5th2I蛑_N2v@N+2i }W24#}Bz|ǝ1){S7=Ҕ? =]~.EsRܖ7,-pdƯddWFWeVkɎ^ogjviJok_0zNrM~KzWBssMt_ yKe%|)cNr(R:q7zjR*$ܜ֜;>Νv9GvITP5csgvk|X`f_Ѹk lIq(m<~ؾ8x`R֜XQ* %ҮIԺhZJ.PCHB(aR6Cet(`" t:t[a=wI }u~ޏ;VuF݅Kb<&+zBCLt >ϵ)/ZBEp$w:2fQlnm47$M5z{V+@~FAj Z#XXh#~e59d.2b`{#ϫȨNǪSg!;"-W7: F&\wqX -R12Hoao=̑66˝iFE2^U.dmy5sG=>ԥjHO>eR -=[ 2fZu_v]6~EO!UD"\"@!^$5]3G"ѹ`5]١lg-s &Uin7;ɺXHe3@tK7H -ske]436}:{>5.],_)VjwU͊(9Ҫ~)'?SOrTYvAS%dtډy\/wo Cg,sKGp% CbKP+7ᖭ'CjXXۥ2GVYX,WEG\sm;H`oY-'4`gTYd>v@ۀ''6DC{FF%hp7csfK)P@p2ᖦ -) #az Kgz':~;@e?$]Í8#c$ _k$A梎_,4A=dc{ 0i`Q#}X7t:cݪX'kAFj7xbep}>.Hʐn= 茳'!g톗#cWgV[p]ώ&zFOhrg׊_'uŻ|1O;1{,:~uׯzý'.5=Z2(0MsjY [6EuFQr9VkoXֹ=J,R۽<&qss!QBb g(v iNtR0˼~dTy9nn.=uƂ\d$C0,v"hexڪrhX& V(HU)F8MOhCө cfD^4vFbDS+{&<s)XYY k^0l&h6 ]x/p -y W0H,A d -yI9Cj,YI^& WI I 3"4%%rj6ꤹMЇTet6G?t=ӕEZG7-5FGߢ. =C}&eƲl*+b3X=ճWY kcow!!;N(ȮNGp7')Ǽ?ƟK%^7|;wA0?OO)ˣc_|_&j22LYX'n*|?A!HPgn&1StN-D88Z,Ĩƙ(*ԌG&0VbYxo5Abdb, [MJH/k3AĄW!YS[2ћEw6 U_Rf2F][042XJD=w=ʇذ#Z(z& TaA*X+LfF&æ Y F}' OW.v-vu%.=kKlMo'% h~/u޻\szgR _Bٖ ?&m9AalڍhKHdrHR:l?[l?968UbTlEi lBm)w}ZAh\}~۲}nn}y2!56(}Å-2*`Si PM^:=L6tX@,Z-ĸ v7X<p"5eLOa-tl / p!%.01  K~hem59qQ,te{5:e[ZEqx8|l;,,(췰,^P TH-&xBַfdm-ݙzjVjYes~0e!ΘZ}:yarcLE`AqO鱩#nhʝtzgOI0g,\"y!{'?ȧbjx7/dDI㘅[zB|>YZds|b>w옾?[󝂅]\ECѶ$͑%lh7֕PF^ʼnZ)x|7ǎ_ . ]H9#acR{pI+n6#}':v56-9jQ2y2d4f*<;ҹY<_N:6-t -GIgati72Zں] J6ok.C%mX^:6 3PKmٕ,s.wѱMZ:L1p;e. ?bARżYaDt& (aYi} h Qҗ U}&?L(Һ,h#&R&j^6@a_% :3K +֘w)W'Ǧ:_T2U,fQqx/mu("H?]̀,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ@qAy-K0oUW yU}fBAkff8߰΋j2@-} 5Fa󥭀tft0dˀea33% -fM:{P+a+qw?v`>j[`[$jI[t.2 9d -P7J-}W -RHgR_coHVW+,j_Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xk פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(M^I-]Râb"T:X[{r/|k*=F46_ԷΟ;99%R= :h_ ڳDKX]ͶSyLACүgbb>a 7BJUК?v<>#RKyu0fұAӌc^s<{,+6zl5Y4e1TI*{E|ӽRJ"}{cEm=lOt|w_a1dZ,Mb~?,Y _ߧ`!F'd}EM?}$Xh7(),',⒅cC}Rb2u u(8GTA"r wW5~/ Jܫ`iyZ Mz<4Vzb|肽 D%8 -'8  VRE:TЗn=4t͠лnakp3~?wq/x -O8)|_Nj$HOொ|7Mr?~3h+|}}v!eeQQI f M d"j! -$2JgL5#:ihkLڱc'zeAMܳ}+얬I.OgEL^$/kߔwɝ{q#_D(_C-((N%YIQ*u/đlyh~UsouYY扵aW֚0T&ͅ$k>hn̳-2-{:9e[J'w{!=x"+A z_+ly!ͫ/q|t‘=*5$IUoǤ@fauYd{dU˥ibnh7:IyS^q<&-ӦKfMxꋺYH<Β 8:ՂLH$-_%ܱn(?pV*VA^}}|jz5"g͛db/GcFv~|Ө5!j7aqd4UIǪO$~4 _L $ I}5isjgh;mezTD#ana83uG%FR$@"|Ra2)0YUdVe<,~ˑ[ -נ"lFN8 : -O0OsnN"n2LFKq%ϑ'Djȫd-#(2d;i#>6ycr'$&ɗ1(PF-AԅCSd:fә-Z@t#JېAnG1z"CEv$H>I)[̬YT--GvV'E&9Z~'dii525` ٚ٘9Y"Kane$=6elr(@H߈KI<%;!ńJxW![=gvL 7rasU^Ι s T8oj6'1/daP&}?.mlYf"aBy?9όc#6ɄuyXpk$菰/TxT U-2q KLO/}p&h;‘&t *#DI@Z8AE)P  9LɈtՑCը"񶿷{I.N}[%h7,hb طjWjЗf]p"""Ҍ1u9.N%rGMGIEaXbY:kf͆v5/[T;`n~ژK:^~IeMK?V+577MS{?i"[UY3fR6 |`ܪOl-i۫D'<0׎*lу aw9_3ԝ7tj{ dy"E{* -BЮy"{i"ڝ'OnMȿqIˁ|IcH[.27KPw GMykm|wka8/>txoA9zGNwt@O^E-]PZXߜ* ?2|[3+Ώo>d -3q}'HJ>aGI^qQdo\(GPIE,1"vPNDUzBL$ƕn2KN-;rnz4*6 gwEVh3Ryć,d`Li#,})ȃjB(0t(E=UzjT]0F=X>X+PO=aC;8GyT]Euއ8H6UUE&TVm"[,!P_=H֐4 NtQTX'H3'IGgy\$owROs -ԠЯSVJ:ѻw"OW54L#>N:izFi=ID_qz^fj6ֵ,jk -jVj<VϖB[֡jbY36_:=ź!bϲ>OPRwRRE gFG 5*^Qndը#<mqz-ےHU(n| w/^Jk,h -۟^I mR@܊ܨ4䑒L3hL7*՝cKMS0cRE;peh *x2IČo!z ZE;p-0}ml^_b`U5q ~$%(6>|PZ4T -ėE dq$hH⹐a#`P, #X#h Ib?p MՈbyX+zةP+oy?84ud `\ -,ԏ1PRdۃ1H5IKlmHG:pw8eS7W.i, Y̯8mh7_(Sޣ|O $Q;tѻ Ix@:Ic G,z'? ІXxf EEY*: }`^y,ȧX(. 0y xrc)qqX[aBE >$+[UD)\S#=c!5Yf`2%oHa/WqNb:/YGd!гN15O,iqZ@pB0=UVC1EF .YU_ը`z_8 yfq 6I۠'Ok^H%GzKe[]v'JnmlY,TYf!y.X׎oEixazA#1tl&|6ldf6gMdCn-X,-NQ1h-%_%qnb!ʰHT==qjQmY$iYپҺa׿*v6bAdTM$z0Wؖy@8z%:\^ 0gOKbVf<|@ ,f'zsklb0CSr\[ :|,toR[-CLX X'7J.* bV/){/oi \v,$jUg/ Ll4jhv4\7U1lA+,3Y(vw}{N0s8!Cs$nA@:P{ FTt>$95Rվ$$^{J&m,g JyQovv6h6p;pR:]z]A?L)P8=AGQ@CϡYԤ[^ě>Vt<{BSޙK"ll848q̒yUZX:)nLnRz wAZ(5g޺vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk_8Oe:N阕]Jym*ә++ȩmW>Cz&> ÐVm0x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =L-4iA T0,TcbjeKf^lQ950xmmd7LLgu LhRc]Zf1|Սw ֒tHUZ9wX5Tx3kX*;/+XGd~HM -f! >؞؛Y$Z|h}̻]~,[XD 2p"kZk\/^,c ^b7c}bY 5EH),q,vY-,k:^Q}?ԉ:>~}Q֝x/bkpQ,,Ͽ̱phogh^!|g,ɱg7شI?wtěAtchK\T -Z@s^); n亀ɍ?{,ARd˺u簜MI M~ݹ eRȢ$-DKZ, -/TQff `g !hlb$j\BśbSkiF5(v[hUrE۵j" EZTY츦>z8hӸ0/0݋~wm)}tXۀ4~]8vVB MZ7-wm[f;;҂;-T }ptN:| 13c%Cނ/p -# O aQ2MI.aA#L^$%u.ʘ2|F9|YrAy -wUʯ^-PQW¢( YjeVk b]xhZz@aQ1ttm>Z5gxxHp{g}S{~sgvӫqf`Y"KaX\~沅f&viƇ1|:o.~*-K=%MJHä1R4EIM҇t]YN,!O_EzU#)_o*LP)?Rr,eXY|vrX9T*+R.)*SUըުxuf\Bݮ;<X 33=JT*Z*  -jEE - "=H8L`FI"U0G#HK BQĨʣ(Fx -}G辱5  -v&#Q"|E @eDpHs) P};θhz0r3<"f=bHz[zR3K$ Ї`pq -CN(!W#ZBP uD P'qB7@ۛ8[!mPWϵA“@ɶlrџۗ(ث;?}^?tJк U+>vTl\iU+ˮުY_hX>* %omybc)]{%zЕΔWj\J߸yDk-GL^^sƿ>w0fF+T.& ޲cYBa?z4 @[*9lyViAȯ^(ungo|uUzZBܧXν,o+I̾N" [Ԇ\{9:[S QJrSo6(tDܑ/=rc,{FO(Uɕ*n1MX}Q,խ[h\ݾ͇UIGoZ6>c9imTuf%}v4c/^u97uDVIudj3_`/K)Ƈ/|R -L"=uAlewj"."Fa!z7+bmU*q)(%9R,z=HLg5,^B1W -l,qq[5&}qNm˒jԌ/B'\>%>pAʳ֑'J=6؎NQcOb|.? T̰EV3# łP6;\W溽pm7Lz89gsޭ\CO~.PP{@hfX?slvWŢ9mX˅VwGycc1`J<^o@w-(%ǡ< X!H$Xp.1F198R+U=RSgnt|Vve]~(kmO9n-P)g@1&މ\K3z:SȣhA‡S<> #֗8IVdPޅwnٮPDZ2v}Pqd"MҦaX6isDLiMz/2(0 -$(8 "Âˠ22 ;waY,sRzL%{rv!u̫ĮO}9WʷH(>*^Ȕ $e@-/u%igT~|R zQ:;3{'/KbO)!'TT&|ׯ\' u$bF[Y6fMJ"k_,: _>㻇*u@|Tn׊P1g#& gG9GR|xWi_{De*#I;$T!wk}.q#1YMk?%x/#U~P}x%ك+ĆJ\)nDKBx{oH^kz1>ŗOv:{)GlKh+7 -T$? Y#rZ|tByGm/wg. EXkdK)丼=$-|B{n7MF'מ%Ճxlvf`Ep!g&̓E6OzMHmc *rs"Z?qmTK~* M7HӁkI Fv'u'it0l;T8 Z8-fT!֓D+ANT|iI@K\ ƆalȜ&"gAy謚LtFtѮ?I2,mMqgoS] .3eԧt3$ruu7-mbq8f9ڐaԶHL)UE2Dh8Y[eAofYxcw| -U:JS5AuE(osh5qtl/Z*!qyO#f)8fH[p QdD^qGsyַ&]&dL0. xaNW\Z3 3 -nˉCPjc+ h6d;v~*ƱHy݋]#16`iw%3']CA$X:3! g,3em-578:X~5cߚp ڜ:>3밳aŘ z4l$$:S(c NCqHծ֣87QOrmCL4cYf\*hbgՙuzL]$u(SU`zy]QqV\-l\ 0LCDہҩuWg#[T ȄU[ Ub%ݢxֱhB|u0KѰp`.FķmE5͝q5v"P4yO$Qö'jشP*YS D. pJא% |ܕoXx5#{x50E8㸵xM֧-\E8<]Y(\IIS0^lSdCS5=1@E TBLcI$ d.#;s -Ѕ>s`Dڲ L<*hIǬővN55X54vI:cAV0܏p#J8YcG8E2 Ȧ949v;fng"OO7%PgyZk@c%\) -Z=$!baQɻieU7FPen؁˭@m "C6E,:0Y8; -NaO}y@7*Ν_~W;~t~e|? 2yuCBQW$ʠD$eV:tFĸFŨeQ>KTLL)hD&j$5q bGU*2~sν4eQHymoבֿʼ]Ɗ#c/߽Ħd=!|t%k9y9 msgn^PqJOqV -/!! ܔbɔ!Ȱʼ$VOl.M= F -+* oƐhU1** -):tj'G |DV}{YIV]^9(ߑhx9]V N^#ߑ!/ߒȋ7@ 3ԝl.ꚯ(&SrIyc7By, d>'ŁqjѿQ%W,RTXI-*]/{=^kR{{Xn7{XdzudLAN9t --|*1wvr t?-= W{ҕ9=]&(v#̉*X{={[Gy-F_DzZ^WQ\r\JdU"Z 8L:9?W1y%JY=Yb6m' K-irT^5ZTPL{$tEu=Z'gtQc?Yj5#SՓq&5kskT(I$ag?ıMt886]XI$G#Pr9D{@9OƑ!c~"d2Us#_#;nt܅#Iv&;brGF'_NPȶdSnC&_ 炸B[Q$l)XS>R7 d#{:#,K'hw^/|{vټz2TfP̹æV n -endstream -endobj -110 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -111 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -112 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -48 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 112 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 667 0 333 333 389 584 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 260 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 105 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 333 0 556 0 0 0 0 333 333 389 0 278 333 278 0 -556 556 556 556 556 556 556 556 556 556 333 0 0 0 0 611 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 106 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 667 0 0 333 0 0 278 333 278 0 -0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 0 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 107 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIKODO+Symbol -/Encoding /Identity-H -/DescendantFonts [ 113 0 R ] -/ToUnicode 114 0 R ->> -endobj -113 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIKODO+Symbol -/FontDescriptor 108 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -66 [603] -137 [986] -] ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 73 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 333 278 0 -556 556 556 556 556 556 556 556 556 556 333 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 110 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 0 0 0 600 0 600 600 600 600 600 600 600 600 -0 600 600 600 0 0 0 600 0 0 600 0 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 0 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 111 0 R ->> -endobj -114 0 obj -<< -/Filter /FlateDecode -/Length 229 ->> -stream -HTPMo +|ܴ V&۝"-rȿ/Ьg?؞Zg#Oup i A-X7TT:GZ7xh)9GZ__gd_߉~pB)Mw5!"#5 m78 A:?]uUl%t%V B 3[ِuT!Ώ+VmT -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -78 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 80 0 R -/Contents 79 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -84 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 86 0 R -/Contents 85 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -115 0 obj -<< -/S /D ->> -endobj -116 0 obj -<< -/Nums [0 115 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 13 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R] -/Count 10 -/Parent 43 0 R ->> -endobj -44 0 obj -<< -/Type /Pages -/Kids [39 0 R 45 0 R 49 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R] -/Count 10 -/Parent 43 0 R ->> -endobj -77 0 obj -<< -/Type /Pages -/Kids [74 0 R 78 0 R 81 0 R 84 0 R 87 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R] -/Count 10 -/Parent 43 0 R ->> -endobj -43 0 obj -<< -/Type /Pages -/Kids [9 0 R 44 0 R 77 0 R ] -/Count 30 -/MediaBox [0 0 612 792] ->> -endobj -117 0 obj -<< -/CreationDate (D:20210119174403-06'00') -/ModDate (D:20210119174403-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -118 0 obj -<< -/Type /Catalog -/Pages 43 0 R -/PageLabels 116 0 R ->> -endobj -xref -0 119 -0000000000 65535 f -0000206298 00000 n -0000000016 00000 n -0000004218 00000 n -0000203139 00000 n -0000203724 00000 n -0000204284 00000 n -0000204800 00000 n -0000181180 00000 n -0000208881 00000 n -0000206378 00000 n -0000004346 00000 n -0000009780 00000 n -0000206461 00000 n -0000009898 00000 n -0000014904 00000 n -0000205159 00000 n -0000205454 00000 n -0000206544 00000 n -0000015047 00000 n -0000022184 00000 n -0000206627 00000 n -0000022291 00000 n -0000027245 00000 n -0000206710 00000 n -0000027363 00000 n -0000030980 00000 n -0000206793 00000 n -0000031098 00000 n -0000037476 00000 n -0000206876 00000 n -0000037594 00000 n -0000042753 00000 n -0000206959 00000 n -0000042871 00000 n -0000048083 00000 n -0000207042 00000 n -0000048201 00000 n -0000054582 00000 n -0000207125 00000 n -0000054713 00000 n -0000059405 00000 n -0000160940 00000 n -0000209294 00000 n -0000209017 00000 n -0000207209 00000 n -0000059558 00000 n -0000066614 00000 n -0000202962 00000 n -0000207293 00000 n -0000066767 00000 n -0000069596 00000 n -0000166130 00000 n -0000207377 00000 n -0000069761 00000 n -0000074686 00000 n -0000207461 00000 n -0000074829 00000 n -0000081154 00000 n -0000207545 00000 n -0000081272 00000 n -0000086458 00000 n -0000207629 00000 n -0000086576 00000 n -0000092468 00000 n -0000207713 00000 n -0000092598 00000 n -0000097939 00000 n -0000207797 00000 n -0000098069 00000 n -0000104355 00000 n -0000207881 00000 n -0000104485 00000 n -0000109436 00000 n -0000207965 00000 n -0000109579 00000 n -0000114742 00000 n -0000209155 00000 n -0000208049 00000 n -0000114862 00000 n -0000121639 00000 n -0000208133 00000 n -0000121770 00000 n -0000127769 00000 n -0000208217 00000 n -0000127900 00000 n -0000134864 00000 n -0000208301 00000 n -0000134995 00000 n -0000140083 00000 n -0000208385 00000 n -0000140214 00000 n -0000145727 00000 n -0000208469 00000 n -0000145845 00000 n -0000150428 00000 n -0000208553 00000 n -0000150547 00000 n -0000156062 00000 n -0000208637 00000 n -0000156193 00000 n -0000160250 00000 n -0000208723 00000 n -0000160394 00000 n -0000160843 00000 n -0000181320 00000 n -0000181516 00000 n -0000181723 00000 n -0000181929 00000 n -0000182121 00000 n -0000202345 00000 n -0000202561 00000 n -0000202753 00000 n -0000204944 00000 n -0000205995 00000 n -0000208810 00000 n -0000208839 00000 n -0000209392 00000 n -0000209525 00000 n -trailer -<< -/Size 119 -/Root 118 0 R -/Info 117 0 R -/ID [] ->> -startxref -209597 -%%EOF diff --git a/docs/ReleaseNote/SEC3-IRMFEATURES-III.pdf b/docs/ReleaseNote/SEC3-IRMFEATURES-III.pdf deleted file mode 100644 index bf31af56..00000000 --- a/docs/ReleaseNote/SEC3-IRMFEATURES-III.pdf +++ /dev/null @@ -1,5406 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6010 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-37)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -14 0 0 14 258 727.08 Tm -(VOLUME IIIINPUT/OUTPUT)Tj -ET -2 w -54.01 672.99 m -558.01 672.99 l -S -BT -14 0 0 14 54 661.08 Tm -(Chapter 24 Streams and Files)Tj -ET -1 w -54.01 657.49 m -558.01 657.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 638.2 Tm -0.284 Tw -(The Xerox Common Lisp file system supports multiple streams)Tj -0 -1.2 TD -0.254 Tw -[(open simultaneously on the same file. This is an )]TJ -/TT6 1 Tf -24.3847 0 TD -0 Tw -(incompatible)Tj --24.3847 -1.2 TD -(change)Tj -/TT2 1 Tf -3.2808 0 TD -0.115 Tw -[( to the semantics of Interlisp-D. You may have to modify)]TJ --3.2808 -1.2 TD -0.095 Tw -(old programs if they have not followed the guidelines listed in Sec)Tj -T* -0.06 Tw -(24.5 of the)Tj -/TT6 1 Tf -4.8461 0 TD -[( Interlisp-D Reference Manual)]TJ -/TT2 1 Tf -13.4637 0 TD -(. Some of the implications)Tj --18.3098 -1.2 TD -0 Tw -(of this change for Interlisp programs are described below.)Tj -0 -1.9 TD -0.105 Tw -(In prior releases of Interlisp-D, the system treated the )Tj -/TT6 1 Tf -24.7887 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.105 Tw -[( of an)]TJ --27.2902 -1.2 TD -0.054 Tw -(open file as a synonym for the )Tj -/TT6 1 Tf -13.9967 0 TD -0 Tw -(stream)Tj -/TT2 1 Tf -3.0562 0 TD -0.054 Tw -[( open on the file. This meant)]TJ --17.0528 -1.2 TD -0.073 Tw -[(that only one stream could be open at any time on a given file. In)]TJ -T* -0.157 Tw -(the Lyric release, a file name is no longer a unique name for an)Tj -T* -0.226 Tw -(open stream. Thus, file names are no longer acceptable as the)Tj -T* -0.054 Tw -(file/stream argument to any input/output or file system function that)Tj -T* -0.8 Tw -(operates on an open stream \()Tj -/TT4 1 Tf -17.1191 0 TD -(READ, PRINT, CLOSEF)Tj -/TT2 1 Tf -12.6005 0 TD -0 Tw -(,)Tj -/TT4 1 Tf --29.7196 -1.2 TD -(COPYBYTES)Tj -/TT2 1 Tf -6.168 0 TD -0.249 Tw -[(, etc\). The only non-stream values acceptable as)]TJ --6.168 -1.2 TD -0.233 Tw -(stream designators are the symbols)Tj -/TT4 1 Tf -16.7723 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.1217 0 TD -[( and )]TJ -/TT4 1 Tf -2.6901 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.233 Tw -(, designating the)Tj --22.195 -1.2 TD -0.204 Tw -[(primary and terminal input/output streams. An attempt to use a)]TJ -T* -0.101 Tw -(litatom, even a "full file name," as a stream designator signals the)Tj -T* -0.08 Tw -[(error "LITATOM streams no longer supported." Strings no longer)]TJ -T* -0.304 Tw -[(designate an input stream whose source is the string itself)]TJ -T* -0.165 Tw -(programs should call )Tj -/TT4 1 Tf -9.9994 0 TD --0.0001 Tc -0 Tw -(OPENSTRINGSTREAM )Tj -/TT2 1 Tf -11.2754 0 TD -0 Tc -0.165 Tw -(instead, or use the)Tj --21.2748 -1.2 TD -0.018 Tw -(comparable Common Lisp forms, such as )Tj -/TT4 1 Tf -18.8375 0 TD -0 Tw -(CL:WITH-INPUT-FROM-)Tj --18.8375 -1.2 TD -(STRING)Tj -/TT2 1 Tf -3.778 0 TD -(.)Tj --3.778 -1.9 TD -0.934 Tw -(The functions)Tj -/TT4 1 Tf -6.9374 0 TD -[( OPENFILE)]TJ -/TT2 1 Tf -6.2126 0 TD -[( and)]TJ -/TT4 1 Tf -2.8803 0 TD -[( OPENSTREAM )]TJ -/TT2 1 Tf -9.4795 0 TD -(are now)Tj --25.5098 -1.2 TD -0.228 Tw -(synonymousboth return a stream instead of a "full file name.")Tj -T* -0.314 Tw -(The functions)Tj -/TT4 1 Tf -6.3174 0 TD -[( INPUT)]TJ -/TT2 1 Tf -3.5916 0 TD -[( and)]TJ -/TT4 1 Tf -2.2603 0 TD -[( OUTPUT)]TJ -/TT2 1 Tf -4.7027 0 TD -[( also return streams. One)]TJ --16.872 -1.2 TD -0.11 Tw -(exception to this is that )Tj -/TT4 1 Tf -11.0002 0 TD -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -0.11 Tw -[( and )]TJ -/TT4 1 Tf -2.4441 0 TD -0 Tw -(OUTPUT)Tj -/TT2 1 Tf -4.1108 0 TD -0.11 Tw -[( return)]TJ -/TT4 1 Tf -3.0001 0 TD -0.11 Tc -0 Tw -( T)Tj -/TT2 1 Tf -0.9987 0 TD -0 Tc -0.11 Tw -[( in the case)]TJ --24.554 -1.2 TD -0.021 Tw -(where the primary input or output stream was previously directed to)Tj -T* -0.0001 Tc -0.0039 Tw -(the terminal. However, this special behavior is for the Lyric release)Tj -T* -0 Tc -0.126 Tw -(only; we recommend that you convert old code that depended on)Tj -T* -0 Tw -(testing )Tj -/TT4 1 Tf -3.4001 0 TD -0.176 Tw -(\(EQ \(OUTPUT\) T\))Tj -/TT2 1 Tf -8.4062 0 TD -[(. Note that the values of the variables)]TJ -/TT4 1 Tf --11.8063 -1.2 TD --0.0001 Tc -0 Tw -(*STANDARD-INPUT* )Tj -/TT2 1 Tf -10.5408 0 TD -0 Tc -(and )Tj -/TT4 1 Tf -2.4883 0 TD -(*STANDARD-OUTPUT*)Tj -/TT2 1 Tf -10.8319 0 TD -0.542 Tw -[( are always)]TJ --23.861 -1.2 TD -0 Tw -(streams, even if they are directed to the terminal.)Tj -0 -1.9 TD -0.226 Tw -(The function )Tj -/TT4 1 Tf -6.2332 0 TD -0 Tw -(FULLNAME)Tj -/TT2 1 Tf -5.4987 0 TD -0.226 Tw -[( can be used to obtain the name of a)]TJ --11.732 -1.2 TD -0.166 Tw -[(stream. For your convenience, the print syntax of streams now)]TJ -T* -0.089 Tw -(includes the name of the stream \(if to a file\) and its access \(input,)Tj -T* -0.523 Tw -[(output, etc.\). Functions, such as)]TJ -/TT4 1 Tf -17.0667 0 TD -[( UNPACKFILENAME)]TJ -/TT2 1 Tf -10.1893 0 TD -(, that)Tj --27.256 -1.2 TD -0.036 Tw -(manipulate file names generally accept a stream as well, extracting)Tj -T* -0 Tw -(the name of the file from the stream.)Tj -/TT4 1 Tf -0 -1.9 TD -(INFILEP)Tj -/TT2 1 Tf -3.834 0 TD -0.12 Tw -[( still returns a full file name, as it is merely recognizing a)]TJ --3.834 -1.2 TD -0.123 Tw -[(file, not opening a stream to it. Programmers should be wary of)]TJ -T* -0.256 Tw -(code that subsequently tries to use the value of )Tj -/TT4 1 Tf -23.4842 0 TD -0 Tw -(INFILEP)Tj -/TT2 1 Tf -3.8335 0 TD -0.256 Tw -[( as a)]TJ --27.3177 -1.2 TD -0.258 Tw -[(stream argument. And, of course, the )]TJ -/TT6 1 Tf -18.87 0 TD -0 Tw -(FILENAME)Tj -/TT2 1 Tf -5.001 0 TD -0.258 Tw -[( argument to)]TJ -/TT4 1 Tf --23.8709 -1.2 TD -0 Tw -(OPENSTREAM)Tj -/TT2 1 Tf -7.056 0 TD -0.126 Tw -[( is still a name \(a symbol or string\), not a stream.)]TJ -/TT4 1 Tf --7.056 -1.2 TD -0 Tw -(OPENSTREAM)Tj -/TT2 1 Tf -7.0562 0 TD -0.311 Tw -[( also accepts a Common Lisp pathname as its)]TJ -/TT6 1 Tf --7.0562 -1.2 TD -0 Tw -(FILENAME)Tj -/TT2 1 Tf -5.001 0 TD -( argument. )Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 5164 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-38)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.116 Tw -(The function)Tj -/TT4 1 Tf -5.6194 0 TD -[( CLOSEALL)]TJ -/TT2 1 Tf -5.7826 0 TD -[( is no longer implemented. The function)]TJ -/TT4 1 Tf --11.402 -1.2 TD -0 Tw -(OPENP)Tj -/TT2 1 Tf -3.501 0 TD -0.049 Tw -[( returns )]TJ -/TT4 1 Tf -3.766 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.049 Tw -[( when passed a file name \(or anything else but)]TJ --8.8778 -1.2 TD -0.15 Tw -[(an open stream\). However, for the Lyric release,)]TJ -/TT8 1 Tf -22.8763 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.9231 0 TD -0.15 Tw -(\(OPENP NIL\))Tj -/TT2 1 Tf --23.7994 -1.329 TD -0 Tw -(still returns a list of all streams open to files.)Tj -0 -1.9 TD -0.089 Tw -(The functions )Tj -/TT4 1 Tf -6.4592 0 TD -0 Tw -(GETFILEINFO)Tj -/TT2 1 Tf -6.6118 0 TD -0.089 Tw -[( and )]TJ -/TT4 1 Tf -2.4021 0 TD -0 Tw -(SETFILEINFO)Tj -/TT2 1 Tf -6.5009 0 TD -0.089 Tw -[( can still be given)]TJ --21.974 -1.2 TD -0.076 Tw -[(either an open stream or a file name. However, in the latter case,)]TJ -T* -0.165 Tw -(the request refers to the file, not to any stream open on the file.)Tj -T* -0.049 Tw -(Thus, requesting the value of the attribute )Tj -/TT4 1 Tf -19.0769 0 TD -0 Tw -(LENGTH)Tj -/TT2 1 Tf -4.1108 0 TD -0.049 Tw -[( for a file name)]TJ --23.1877 -1.2 TD -0.354 Tw -(may return a different value than requesting the value of the)Tj -T* -0 Tw -(attribute )Tj -/TT4 1 Tf -4.3791 0 TD -(LENGTH)Tj -/TT2 1 Tf -4.1108 0 TD -0.488 Tw -[( for a stream currently open on the file. )]TJ -/TT4 1 Tf --8.49 -1.2 TD -0 Tw -(GETFILEINFO)Tj -/TT2 1 Tf -6.6108 0 TD -0.029 Tw -[( returns)]TJ -/TT4 1 Tf -3.4191 0 TD -[( NIL)]TJ -/TT2 1 Tf -1.9177 0 TD -[( if given a file name and an attribute that)]TJ --11.9476 -1.2 TD -1.573 Tw -(only makes sense for streams \(e.g., )Tj -/TT4 1 Tf -25.5552 0 TD -0 Tw -(ACCESS)Tj -/TT2 1 Tf -4.1668 0 TD -(,)Tj -/TT4 1 Tf --29.722 -1.2 TD -(ENDOFSTREAMOP)Tj -/TT2 1 Tf -9.167 0 TD -(\).)Tj --9.167 -1.9 TD -0.512 Tw -(There is no difference between Common Lisp and Interlisp)Tj -0 -1.2 TD -0.085 Tw -[(streams. A stream opened by an Interlisp function can be passed)]TJ -T* -0.276 Tw -(as argument to a Common Lisp input/output function, and vice)Tj -T* -0 Tw -(versa.)Tj -0 -1.9 TD -0.147 Tw -(Even though multiple streams per file are supported, the streams)Tj -0 -1.2 TD -0.038 Tw -[(must still obey consistent access rules. That is, if a stream is open)]TJ -T* -0.134 Tw -[(for output, no other streams on that file can be opened. It is not)]TJ -T* -0.221 Tw -(possible to )Tj -/TT4 1 Tf -5.5006 0 TD -0 Tw -(RENAMEFILE)Tj -/TT2 1 Tf -6.4994 0 TD -0.221 Tw -[( or )]TJ -/TT4 1 Tf -1.8868 0 TD -0 Tw -(DELFILE)Tj -/TT2 1 Tf -4.1672 0 TD -0.221 Tw -[( a file that has )]TJ -/TT6 1 Tf -7.6089 0 TD -0 Tw -(any)Tj -/TT2 1 Tf -1.6123 0 TD -0.221 Tw -[( open)]TJ --27.2752 -1.2 TD -0 Tw -(stream on it.)Tj -0 -1.9 TD -0.042 Tw -(The RS-232 or TTY ports are inherently single-user devices \(rather)Tj -0 -1.2 TD -0.818 Tw -(than real files\) thus, multiple streams cannot be open)Tj -T* --0.0001 Tc -0.0001 Tw -(simultaneously on RS-232 or TTY.)Tj -/TT4 1 Tf -12 0 0 12 54 385.35 Tm -0 Tc -0 Tw -(Section 24.15 Deleting, Copying, and Renaming Files)Tj -ET -54.01 382.2 m -558.01 382.2 l -S -BT -/TT10 1 Tf -10 0 0 10 258 363.91 Tm -(\(III:24.15\) )Tj -/TT2 1 Tf -0 -1.7 TD -0.14 Tw -(The support of multiple streams per file now makes it possible to)Tj -0 -1.2 TD -0 Tw -(use )Tj -/TT4 1 Tf -1.9131 0 TD -(COPYFILE)Tj -/TT2 1 Tf -5.0009 0 TD -0.023 Tw -[( without worrying about there being other readers of)]TJ --6.914 -1.2 TD -0.087 Tw -(the file, in particular even when there is already a stream open on)Tj -T* -0.371 Tw -(the file for sequential-only access \(a case that failed in prior)Tj -T* -0.076 Tw -(releases\). Of course, )Tj -/TT4 1 Tf -9.7871 0 TD -0 Tw -(COPYFILE)Tj -/TT2 1 Tf -5.0005 0 TD -0.076 Tw -[( cannot be used if the file already)]TJ --14.7876 -1.2 TD -0 Tw -(has an )Tj -/TT6 1 Tf -3.2803 0 TD -(output)Tj -/TT2 1 Tf -2.7803 0 TD -( stream open.)Tj -ET -2 w -54.01 231.7 m -558.01 231.7 l -S -BT -/TT4 1 Tf -14 0 0 14 54 219.79 Tm -(Chapter 25 Input/Output Functions)Tj -ET -1 w -54.01 216.2 m -558.01 216.2 l -S -BT -12 0 0 12 54 192.35 Tm -(Variables Affecting Input/Output)Tj -ET -54.01 189.2 m -558.01 189.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 169.91 Tm -0.026 Tw -(There are several implicit parameters that affect the behavior of the)Tj -0 -1.2 TD -0.179 Tw -(input/output functions: the numeric print base, the primary output)Tj -T* -0.271 Tw -[(file, etc. In Common Lisp, these parameters are controlled by)]TJ -T* -0.299 Tw -[(binding special variables. In Interlisp they are controlled by a)]TJ -T* -0.422 Tw -(functional interface; e.g., an output expression is wrapped in)Tj -/TT8 1 Tf -0 -1.329 TD -0.023 Tw -(\(RESETFORM \(RADIX 8\) --\) )Tj -/TT2 1 Tf -15.0944 0 TD -0.011 Tw -(to cause numbers to be printed in)Tj --15.0944 -1.329 TD -0 Tw -(octal.)Tj -0 -1.9 TD -0.165 Tw -(Where the input/output parameters in Common Lisp and Interlisp)Tj -0 -1.2 TD -0.06 Tw -(have essentially the same semantics, they have been integrated in)Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -15 0 obj -<< -/Length 6683 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-39)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.019 Tw -[(Lisp. That is, binding the Common Lisp special variable and calling)]TJ -0 -1.2 TD -0.023 Tw -(the Interlisp function are equivalent operations, and they affect both)Tj -T* -0.721 Tw -[(Interlisp and Common Lisp input/output. However, it is)]TJ -T* -0.08 Tw -(considerably more efficient to bind a special variable than to call a)Tj -T* -0.32 Tw -(function in a )Tj -/TT4 1 Tf -6.6304 0 TD -0 Tw -(RESETFORM )Tj -/TT2 1 Tf -6.8754 0 TD -0.32 Tw -[(expression. In addition, binding a)]TJ --13.5058 -1.2 TD -0.09 Tw -(variable has only a local effect, whereas calling a function to side-)Tj -T* -0.081 Tw -(effect the input/output parameters can also affect other processes.)Tj -T* -0.394 Tw -(Thus, you are encouraged to use special variable binding to)Tj -T* -0 Tw -(change parameters formerly changed via functional interface.)Tj -0 -1.9 TD -0.07 Tw -(All of these variables are accessible in both the Common Lisp and)Tj -0 -1.2 TD -0.06 Tw -(Interlisp packages, so no package qualifier is required when typing)Tj -T* -0 Tw -(them.)Tj -0 -1.9 TD -(These parameters are as follows:)Tj -/TT4 1 Tf --12.868 -1.9 TD -(*PRINT-BASE* vs RADIX)Tj -/TT2 1 Tf -12.868 0 TD -(Binding )Tj -/TT4 1 Tf -3.9308 0 TD -(*PRINT-BASE*)Tj -/TT2 1 Tf -6.8882 0 TD -0.317 Tw -[( to an integer )]TJ -/TT6 1 Tf -7.3832 0 TD -0 Tw -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.317 Tw -[( from 2 to 36 tells the)]TJ --18.7584 -1.2 TD -0.078 Tw -[(printing functions to print numbers in base n. This is equivalent to)]TJ -T* -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(RADIX )Tj -/TT6 1 Tf -3.7772 0 TD -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.388 Tw -[(\). Note: this variable should not be confused with)]TJ -/TT4 1 Tf --4.6663 -1.2 TD -0 Tw -(*PRINT-RADIX*)Tj -/TT2 1 Tf -7.222 0 TD -0.48 Tw -(, another Common Lisp variable that controls)Tj --7.222 -1.2 TD -0.38 Tw -(whether Common Lisp functions include radix specifiers when)Tj -T* -0 Tw -(printing numbers.)Tj -/TT4 1 Tf --15.589 -1.9 TD -(*STANDARD-INPUT* vs INPUT)Tj -/TT2 1 Tf -15.589 0 TD -(Binding )Tj -/TT4 1 Tf -3.9778 0 TD -(*STANDARD-INPUT*)Tj -/TT2 1 Tf -9.7222 0 TD -0.364 Tw -[( to an input stream specifies the)]TJ --13.6999 -1.2 TD -0.456 Tw -(stream from which to read when an input functions stream)Tj -T* -0.208 Tw -(argument is)Tj -/TT4 1 Tf -5.4326 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.0967 0 TD -[( or omitted. Evaluating )]TJ -/TT4 1 Tf -11.5454 0 TD -0 Tw -(*STANDARD-INPUT*)Tj -/TT2 1 Tf -9.7222 0 TD -0.208 Tw -[( is)]TJ --28.7968 -1.2 TD -0.132 Tw -(the same as evaluating \()Tj -/TT4 1 Tf -11.423 0 TD -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -0.132 Tw -(\), except that \()Tj -/TT4 1 Tf -6.7876 0 TD -0 Tw -(INPUT)Tj -/TT2 1 Tf -3 0 TD -0.132 Tw -(\) returns )Tj -/TT4 1 Tf -4.265 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.132 Tw -[( if)]TJ --29.0864 -1.2 TD -0.082 Tw -(the primary input for the process is the same as the terminal input)Tj -T* -0 Tw -(stream \(this compatibility feature is for the Lyric release only\).)Tj -/TT4 1 Tf --17.811 -1.9 TD -(*STANDARD-OUTPUT* vs OUTPUT)Tj -/TT2 1 Tf -17.811 0 TD -(Binding )Tj -/TT4 1 Tf -3.7318 0 TD -(*STANDARD-OUTPUT*)Tj -/TT2 1 Tf -10.833 0 TD -0.118 Tw -[( to an output stream specifies the)]TJ --14.5648 -1.2 TD -0.021 Tw -(stream to which to print when an output functions stream argument)Tj -T* -0.08 Tw -[(is NIL or omitted. Evaluating )]TJ -/TT4 1 Tf -13.5415 0 TD -0 Tw -(*STANDARD-OUTPUT*)Tj -/TT2 1 Tf -10.833 0 TD -0.08 Tw -[( is the same)]TJ --24.3745 -1.2 TD -0.234 Tw -(as evaluating \()Tj -/TT4 1 Tf -6.9719 0 TD -0 Tw -(OUTPUT)Tj -/TT2 1 Tf -4.1108 0 TD -0.234 Tw -(\) except that \()Tj -/TT4 1 Tf -6.8158 0 TD -0 Tw -(OUTPUT)Tj -/TT2 1 Tf -4.1108 0 TD -0.234 Tw -(\) returns )Tj -/TT4 1 Tf -4.469 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.234 Tw -[( if the)]TJ --27.0892 -1.2 TD -0.13 Tw -(primary output for the process is the same as the terminal output)Tj -T* -0 Tw -(stream \(this compatibility feature is for the Lyric release only\).)Tj -/TT4 1 Tf --18.034 -1.9 TD -(*PRINT-LEVEL* & *PRINT-LENGTH*)Tj -9.221 -1.2 TD -(vs PRINTLEVEL)Tj -/TT2 1 Tf -8.813 0 TD -(Binding )Tj -/TT4 1 Tf -3.8738 0 TD -(*PRINT-LEVEL* )Tj -/TT2 1 Tf -7.8718 0 TD -0.26 Tw -(to a positive integer)Tj -/TT8 1 Tf -9.4519 0 TD -0 Tw -( )Tj -/TT6 1 Tf -1.1611 0 TD -(a)Tj -/TT8 1 Tf -0.5562 0 TD -( )Tj -/TT2 1 Tf -1.1611 0 TD -(and )Tj -/TT4 1 Tf -2.2063 0 TD -(*PRINT-)Tj --26.2821 -1.329 TD -(LENGTH*)Tj -/TT2 1 Tf -4.5 0 TD -0.538 Tw -[( to a positive integer )]TJ -/TT6 1 Tf -11.9175 0 TD -0 Tw -(d)Tj -/TT2 1 Tf -0.5562 0 TD -0.538 Tw -[( is equivalent to calling)]TJ --16.9737 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(PRINTLEVEL)Tj -/TT2 1 Tf -6.2227 0 TD -( )Tj -/TT6 1 Tf -0.3188 0 TD -0.041 Tw -[( a d)]TJ -/TT2 1 Tf -1.75 0 TD -[(\). Binding either variable to )]TJ -/TT4 1 Tf -12.6972 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.041 Tw -[( is equivalent to)]TJ --22.9325 -1.2 TD -0.492 Tw -(specifying a value of -1 for the corresponding argument to)Tj -/TT4 1 Tf -T* -0 Tw -(PRINTLEVEL,)Tj -/TT2 1 Tf -6.5005 0 TD -0.054 Tw -[( i.e., it specifies infinite depth or length. Note that in)]TJ --6.5005 -1.2 TD -0 Tw -(Interlisp, print level is "triangular"the print length decreases as the)Tj -T* -0.019 Tw -[(depth increases. In Common Lisp, the two are independent. Thus,)]TJ -T* -0.015 Tw -(although print level for both Interlisp and Common Lisp is controlled)Tj -T* -0.029 Tw -(by a common pair of variables, the Interlisp and Common Lisp print)Tj -T* -0.388 Tw -(functions interpret them \(specifically )Tj -/TT4 1 Tf -17.7253 0 TD -0 Tw -(*PRINT-LENGTH*)Tj -/TT2 1 Tf -8.2222 0 TD -0.388 Tw -(\) slightly)Tj --25.9475 -1.2 TD -0.276 Tw -[(differently. In addition, Interlisp observes print level only when)]TJ -T* -0.154 Tw -(printing to the terminal, whereas Common Lisp observes it on all)Tj -T* -0 Tw -(output.)Tj -/TT4 1 Tf --17.923 -1.9 TD -(*READTABLE* vs SETREADTABLE)Tj -/TT2 1 Tf -17.923 0 TD -(Binding )Tj -/TT4 1 Tf -3.8208 0 TD -(*READTABLE*)Tj -/TT2 1 Tf -6.9432 0 TD -0.207 Tw -[( to a readtable specifies the readtable to)]TJ --10.764 -1.2 TD -0.085 Tw -(use in any input/output function with a readtable argument omitted)Tj -T* -0.221 Tw -(or specified as )Tj -/TT4 1 Tf -7.3886 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.221 Tw -[(. Evaluating )]TJ -/TT4 1 Tf -6.4442 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -0.221 Tw -[( is the same as)]TJ --22.3885 -1.2 TD -0.124 Tw -(evaluating \()Tj -/TT4 1 Tf -5.2939 0 TD -0 Tw -(GETREADTABLE)Tj -/TT2 1 Tf -8.2211 0 TD -0.124 Tw -[(\). There is no longer a "NIL" or "T")]TJ --13.515 -1.2 TD -0.171 Tw -[(readtable in Interlisp. See the discussion of readtables for more)]TJ -T* -0 Tw -(details.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -18 0 obj -<< -/Length 5970 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-40)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.138 Tw -(Although the binding style is to be preferred to the)Tj -/TT4 1 Tf -23.3118 0 TD -0.1363 Tw -[( RESETFORM)]TJ -/TT2 1 Tf --23.3118 -1.2 TD -0.196 Tw -(expression, one difference should be noted with respect to error)Tj -T* -0 Tw -(checking. In a form such as)Tj -0 -1.9 TD -( \()Tj -/TT4 1 Tf -2.8335 0 TD -(RESETFORM)Tj -/TT2 1 Tf -6.2778 0 TD -( \(RADIX )Tj -/TT6 1 Tf -3.9448 0 TD -(n)Tj -/TT2 1 Tf -0.5561 0 TD -(\))Tj --8.8123 -1.1 TD -( )Tj -/TT6 1 Tf -1.3892 0 TD -(some-printing-code)Tj -/TT2 1 Tf -8.5596 0 TD -(\))Tj --14.7487 -1.7 TD -0.133 Tw -(the value of )Tj -/TT6 1 Tf -5.8472 0 TD -0 Tw -(n)Tj -/TT2 1 Tf -0.5562 0 TD -0.133 Tw -[( is checked immediately for validity, and an error is)]TJ --6.4034 -1.2 TD -0 Tw -(signalled if )Tj -/TT6 1 Tf -5.0029 0 TD -(n)Tj -/TT2 1 Tf -0.5562 0 TD -( is not an integer between 2 and 36. However, in)Tj --5.5591 -1.9 TD -( \()Tj -/TT4 1 Tf -2.5557 0 TD -(LET)Tj -/TT2 1 Tf -1.8887 0 TD -( \(\()Tj -/TT4 1 Tf -0.9438 0 TD -(*PRINT-BASE*)Tj -/TT2 1 Tf -6.8896 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(n)Tj -/TT2 1 Tf -0.5562 0 TD -(\)\))Tj --8.3118 -1.1 TD -( )Tj -/TT6 1 Tf -1.3892 0 TD -(some-printing-code)Tj -/TT2 1 Tf -8.5596 0 TD -(\))Tj --14.7487 -1.7 TD -0.02 Tw -(there is no error checking at the time of the binding; rather, an error)Tj -0 -1.2 TD -0 Tw -(will not be signalled until the code attempts to print a number.)Tj -0 -1.9 TD -0.24 Tw -(Similarly, the values of )Tj -/TT4 1 Tf -11.2417 0 TD -0 Tw -(*STANDARD-INPUT*)Tj -/TT2 1 Tf -9.7222 0 TD -0.24 Tw -[( and )]TJ -/TT4 1 Tf -2.7041 0 TD -0 Tw -(*STANDARD-)Tj --23.668 -1.2 TD -(OUTPUT*)Tj -/TT2 1 Tf -4.5 0 TD -0.437 Tw -[( must be actual streams, not the values that print)]TJ --4.5 -1.2 TD -0 Tw -(functions coerce to streams, such as )Tj -/TT4 1 Tf -16.5073 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, )Tj -/TT4 1 Tf -0.5557 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -( or window objects.)Tj -/TT4 1 Tf -12 0 0 12 54 517.64 Tm -(Integration of Common Lisp and Interlisp Input/output Functions)Tj -ET -54.01 514.49 m -558.01 514.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 495.2 Tm -0.104 Tw -(Common Lisp and Interlisp have slightly different rules for reading)Tj -0 -1.2 TD -0.276 Tw -(and printing, regarding such things as escape characters, case)Tj -T* -0.282 Tw -[(sensitivity and number format. Each has two kinds of printing)]TJ -T* -0.065 Tw -(function, an escaped version \(intended for reading back in\) and an)Tj -T* -0.357 Tw -[(unescaped version. In order that Common Lisp and Interlisp)]TJ -T* -0.066 Tw -(programs can more freely intermix, Xerox Lisp isolates most of the)Tj -T* -0.609 Tw -(reading/printing differences in the readtables used by both)Tj -T* -0.27 Tw -[(languages, rather than in the functions themselves. The exact)]TJ -T* -0.276 Tw -(rules have been chosen as a reasonable compromise between)Tj -T* -0.118 Tw -(backward compatibility with Interlisp and integration with Common)Tj -T* -0 Tw -(Lisp. This section outlines the details of this integration.)Tj -0 -1.9 TD -0.139 Tw -(In what follows, the phrase "the readtable" generally refers to the)Tj -0 -1.2 TD -0.132 Tw -(readtable in force for the read or print operation being discussed.)Tj -T* -0.11 Tw -(Specifically, this means an explicit readtable \(other than NIL or T\))Tj -T* -0.121 Tw -(passed as readtable argument to an Interlisp function, or else the)Tj -T* -0.11 Tw -(current binding of )Tj -/TT4 1 Tf -8.3349 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -0.11 Tw -[(. See the section on readtables)]TJ --15.2797 -1.2 TD -0 Tw -(for more details.)Tj -/TT4 1 Tf -12 0 0 12 54 268.64 Tm -(Section 25.2 Input Functions)Tj -ET -54.01 265.49 m -558.01 265.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 246.2 Tm -0.11 Tw -(The functions)Tj -/TT4 1 Tf -6.1134 0 TD --0.0001 Tc -0.1101 Tw -[( IL:READ )]TJ -/TT2 1 Tf -4.8304 0 TD -0 Tc -0 Tw -(and )Tj -/TT4 1 Tf -2.0563 0 TD -(CL:READ)Tj -/TT2 1 Tf -4.4989 0 TD -0.11 Tw -(, given the same readtable,)Tj --17.499 -1.2 TD -0.128 Tw -[(interpret an input in exactly the same way. That is, the functions)]TJ -T* -0.351 Tw -(obey Common Lisp syntax rules when given a Common Lisp)Tj -T* -0.179 Tw -(readtable, and Interlisp syntax when given an Interlisp readtable.)Tj -T* -0.032 Tw -(Thus, the principal difference between the two is in the functionality)Tj -T* -0.104 Tw -(provided by)Tj -/TT4 1 Tf -5.2739 0 TD -[( CL:READ)]TJ -/TT2 1 Tf -4.8813 0 TD -(s extra arguments: end of file handling and)Tj --10.1553 -1.2 TD -0.252 Tw -(the ability to specify that the read is recursive, which is mostly)Tj -T* -0.767 Tw -(important when reading input containing circular structure)Tj -T* -0.363 Tw -[(references \(the ## and #= macros\). See )]TJ -/TT6 1 Tf -21.1638 0 TD -(Common Lisp, the)Tj --21.1638 -1.2 TD -0 Tw -(Language )Tj -/TT2 1 Tf -4.7271 0 TD -(for details of)Tj -/TT4 1 Tf -5.4473 0 TD -( CL:READ)Tj -/TT2 1 Tf -4.7773 0 TD -(s optional arguments.)Tj --14.9517 -1.9 TD -0.017 Tw -(There is one further difference between )Tj -/TT4 1 Tf -17.8344 0 TD -0 Tw -(IL:READ )Tj -/TT2 1 Tf -4.35 0 TD -(and )Tj -/TT4 1 Tf -1.9633 0 TD -(CL:READ)Tj -/TT2 1 Tf -4.4995 0 TD -0.017 Tw -(, in)Tj --28.6472 -1.2 TD -0.039 Tw -[(the handling of the terminating character. If the read terminates on)]TJ -T* -0.075 Tw -(a white space character, )Tj -/TT4 1 Tf -11.4167 0 TD -0 Tw -(CL:READ)Tj -/TT2 1 Tf -4.4995 0 TD -0.075 Tw -[( consumes the character, while)]TJ -/TT4 1 Tf --15.9162 -1.2 TD -0 Tw -(IL:READ)Tj -/TT2 1 Tf -4.0552 0 TD -0.073 Tw -[( leaves the character in the buffer, to be read by the next)]TJ --4.0552 -1.2 TD -0.457 Tw -[(input operation. Thus, )]TJ -/TT4 1 Tf -12.0565 0 TD -0 Tw -(IL:READ)Tj -/TT2 1 Tf -4.0552 0 TD -0.457 Tw -[( is equivalent to )]TJ -/TT4 1 Tf -9.0546 0 TD -0 Tw -(CL:READ-)Tj --25.1662 -1.2 TD -(PRESERVING-WHITESPACE)Tj -/TT2 1 Tf -13.557 0 TD -0.142 Tw -[(. This difference is so that Interlisp)]TJ -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -21 0 obj -<< -/Length 6658 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-41)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.327 Tw -(code that calls \()Tj -/TT4 1 Tf -7.9844 0 TD -0 Tw -(READC)Tj -/TT2 1 Tf -3.5546 0 TD -0.327 Tw -(\) following a \()Tj -/TT4 1 Tf -6.9278 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.327 Tw -(\) of a symbol will)Tj --21.3003 -1.2 TD -0 Tw -(behave consistently between Koto and Lyric.)Tj -/TT4 1 Tf -19.79 0 TD -( )Tj -/TT2 1 Tf --19.79 -1.9 TD -0.012 Tw -(The Interlisp function )Tj -/TT4 1 Tf -9.5965 0 TD -0 Tw -(SKREAD)Tj -/TT2 1 Tf -4.2215 0 TD -0.012 Tw -[( now defaults its readtable argument)]TJ --13.818 -1.2 TD -0.165 Tw -(to the current readtable, viz., the value of )Tj -/TT4 1 Tf -19.7194 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9436 0 TD -0.165 Tw -(, rather)Tj --26.663 -1.2 TD -0 Tw -(than )Tj -/TT4 1 Tf -2.2891 0 TD -(FILERDTBL)Tj -/TT2 1 Tf -5.5547 0 TD -0.065 Tw -[(. This makes it consistent with all the other input)]TJ --7.8438 -1.2 TD -0.115 Tw -(functions, and is usually the correct thing, especially with the new)Tj -T* -0.416 Tw -(reader environments used by the File Manager, but it is an)Tj -T* -0.742 Tw -(incompatible change from Koto. )Tj -/TT4 1 Tf -18.3291 0 TD -0 Tw -(SKREAD)Tj -/TT2 1 Tf -4.2227 0 TD -0.742 Tw -[( is also now)]TJ --22.5518 -1.2 TD -1.193 Tw -(implemented using Common Lisps )Tj -/TT4 1 Tf -20.6123 0 TD -0 Tw -(*READ-SUPPRESS*)Tj -/TT2 1 Tf --20.6123 -1.2 TD -0.178 Tw -(mechanism, which means that, unlike in Koto, it does something)Tj -T* -0 Tw -(reasonable when it encounters read macros. )Tj -0 -1.9 TD -0.093 Tw -(In the Medley release, reading in bitmaps from files is significantly)Tj -ET -570 598.98 0.99 -18.99 re -f -BT -10 0 0 10 258 572.2 Tm -0 Tw -(faster. )Tj -/TT8 1 Tf -8 0 0 8 291.3447 572.2 Tm -( )Tj -ET -570 579.98 0.99 -12.58 re -f -BT -/TT4 1 Tf -12 0 0 12 54 544.05 Tm -(Section 25.3 Output Functions )Tj -ET -54.01 540.9 m -558.01 540.9 l -S -BT -/TT2 1 Tf -10 0 0 10 258 521.61 Tm -0.138 Tw -(The discussion here is limited to the four basic printing functions:)Tj -0 -1.2 TD -0.109 Tw -(the unescaped and escaped Interlisp printing functions \()Tj -/TT4 1 Tf -25.5569 0 TD -0 Tw -(IL:PRIN1)Tj -/TT2 1 Tf -4.1641 0 TD -(,)Tj -/TT4 1 Tf --29.721 -1.2 TD -(IL:PRIN2)Tj -/TT2 1 Tf -4.167 0 TD -0.758 Tw -(\) and the corresponding Common Lisp functions)Tj --4.167 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(CL:PRINC)Tj -/TT2 1 Tf -4.777 0 TD -(, )Tj -/TT4 1 Tf -0.6247 0 TD -(CL:PRIN1)Tj -/TT2 1 Tf -4.6113 0 TD -0.069 Tw -[(\). All other print functions ultimately reduce)]TJ --10.346 -1.2 TD -0.256 Tw -[(to these. For example,)]TJ -/TT4 1 Tf -11.251 0 TD -[( IL:PRINT)]TJ -/TT2 1 Tf -4.7555 0 TD -[( calls )]TJ -/TT4 1 Tf -3.0681 0 TD -0 Tw -(IL:PRIN2)Tj -/TT2 1 Tf -4.167 0 TD -(; )Tj -/TT4 1 Tf -0.8117 0 TD -(CL:FORMAT)Tj -/TT2 1 Tf --24.0534 -1.2 TD -(with the )Tj -/TT8 1 Tf -3.7241 0 TD -(~)Tj -/TT2 1 Tf -0.6001 0 TD -(S directive performs a)Tj -/TT4 1 Tf -9.7256 0 TD -( CL:PRIN1)Tj -/TT2 1 Tf -4.8892 0 TD -(.)Tj -/TT4 1 Tf --18.939 -2.029 TD -(IL:PRIN1)Tj -/TT2 1 Tf -4.167 0 TD -0.054 Tw -[( is essentially unchanged from previous releases. It uses)]TJ --4.167 -1.2 TD -0.019 Tw -(no readtable at all, so is unaffected by the value of )Tj -/TT4 1 Tf -22.7793 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -(.)Tj --29.7241 -1.2 TD -(It can be thought of as implicitly using the INTERLISP readtable.)Tj -0 -1.9 TD -0.364 Tw -(Roughly speaking,)Tj -/TT4 1 Tf -8.5915 0 TD -[( IL:PRIN2)]TJ -/TT2 1 Tf -4.8088 0 TD -[( and)]TJ -/TT4 1 Tf -2.3103 0 TD -[( CL:PRIN1)]TJ -/TT2 1 Tf -5.2513 0 TD -[( behave the same)]TJ --20.962 -1.2 TD -0.148 Tw -[(when given the same readtable. In particular, they both produce)]TJ -T* -0.533 Tw -(output acceptable to either )Tj -/TT4 1 Tf -14.196 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.533 Tw -[( function given the same)]TJ --17.0295 -1.2 TD -0 Tw -(readtable. Their minor differences are listed below.)Tj -/TT4 1 Tf -0 -1.9 TD -(CL:PRINC)Tj -/TT2 1 Tf -4.777 0 TD -0.346 Tw -[( behaves like)]TJ -/TT4 1 Tf -6.5289 0 TD -[( CL:PRIN1)]TJ -/TT2 1 Tf -5.2352 0 TD -(, except that it never prints)Tj --16.5411 -1.2 TD -0.01 Tw -[(escape characters or package prefixes. Thus, unlike )]TJ -/TT4 1 Tf -23.7587 0 TD -0 Tw -(IL:PRIN1)Tj -/TT2 1 Tf -4.167 0 TD -0.01 Tw -(, it )Tj -/TT6 1 Tf -1.3535 0 TD -0 Tw -(is)Tj -/TT2 1 Tf --29.2792 -1.2 TD -(affected by the value of )Tj -/TT4 1 Tf -10.6182 0 TD -(*READTABLE*)Tj -/TT2 1 Tf -6.9438 0 TD -(.)Tj --17.562 -1.9 TD -0.429 Tw -(For the benefit of user-defined print functions,)Tj -/TT4 1 Tf -22.7522 0 TD -[( IL:PRIN2)]TJ -/TT2 1 Tf -4.8738 0 TD -[( and)]TJ -/TT4 1 Tf --27.626 -1.2 TD -0 Tw -(CL:PRIN1)Tj -/TT2 1 Tf -4.6113 0 TD -0.499 Tw -[( bind )]TJ -/TT4 1 Tf -3.4443 0 TD --0.0001 Tc -0 Tw -(*PRINT-ESCAPE* )Tj -/TT2 1 Tf -8.9992 0 TD -0 Tc -(to)Tj -/TT4 1 Tf -0.834 0 TD -0.499 Tw -[( T,)]TJ -/TT2 1 Tf -1.6655 0 TD -[( while)]TJ -/TT4 1 Tf -3.0556 0 TD -[( IL:PRIN1 )]TJ -/TT2 1 Tf -5.7207 0 TD -0 Tw -(and)Tj -/TT4 1 Tf --28.3306 -1.2 TD -(CL:PRINC )Tj -/TT2 1 Tf -5.3322 0 TD -0.277 Tw -(bind it to)Tj -/TT4 1 Tf -4.3343 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.1657 0 TD -[(. Thus, the print function can always)]TJ --11.8321 -1.2 TD -0 Tw -(examine )Tj -/TT4 1 Tf -4.3616 0 TD -(*PRINT-ESCAPE*)Tj -/TT2 1 Tf -8.2236 0 TD -0.304 Tw -[( to decide whether it needs to print)]TJ --12.5853 -1.2 TD -0.141 Tw -(objects in a way that will read back correctly \(Common Lisp user)Tj -T* -0.394 Tw -(print functions may want to use )Tj -/TT4 1 Tf -16.4265 0 TD -0 Tw -(CL:WRITE)Tj -/TT2 1 Tf -4.8875 0 TD -0.394 Tw -[( to pass )]TJ -/TT4 1 Tf -4.9618 0 TD -0 Tw -(*PRINT-)Tj --26.2758 -1.2 TD -(ESCAPE*)Tj -/TT2 1 Tf -4.5015 0 TD -0.118 Tw -[( through transparently; Interlisp functions should choose)]TJ -/TT4 1 Tf --4.5015 -1.2 TD -0 Tw -(IL:PRIN2)Tj -/TT2 1 Tf -4.167 0 TD -( or)Tj -/TT4 1 Tf -1.167 0 TD -( IL:PRIN1)Tj -/TT2 1 Tf -4.4448 0 TD -( appropriately\).)Tj -/TT4 1 Tf -12 0 0 12 54 188.76 Tm -(Printing Differences Between IL:PRIN2 and CL:PRIN1)Tj -ET -54.01 185.61 m -558.01 185.61 l -S -BT -/TT2 1 Tf -10 0 0 10 258 166.32 Tm -0.138 Tw -(There are two respects in which the Interlisp print functions \(both)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(IL:PRIN1 )Tj -/TT2 1 Tf -4.8808 0 TD -(and )Tj -/TT4 1 Tf -2.3823 0 TD -(IL:PRIN2)Tj -/TT2 1 Tf -4.167 0 TD -0.436 Tw -(\) differ from the Common Lisp ones,)Tj --11.4301 -1.2 TD -0 Tw -(independent of readtable:)Tj -/TT4 1 Tf -0 -1.9 TD -0.153 Tw -(Line Length)Tj -/TT2 1 Tf -5.819 0 TD -[(. The Interlisp functions respect the output streams)]TJ --5.819 -1.2 TD -0.26 Tw -(line length, while the Common Lisp functions all ignore it \(they)Tj -T* -0.13 Tw -(never insert newline characters when output approaches the right)Tj -T* -0 Tw -(margin\).)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -24 0 obj -<< -/Length 5906 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-42)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -0.021 Tw -(Print Level)Tj -/TT2 1 Tf -5.1338 0 TD -[(. The Interlisp functions respect the print level variables)]TJ --5.1338 -1.2 TD -0.172 Tw -(only when printing to the terminal \(unless )Tj -/TT4 1 Tf -19.6581 0 TD --0.0001 Tc -0 Tw -(PLVLFILEFLG )Tj -/TT2 1 Tf -7.1707 0 TD -0 Tc -0.172 Tw -(is true,)Tj --26.8288 -1.2 TD -0.314 Tw -(see the )Tj -/TT6 1 Tf -4.1861 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.6339 0 TD -(\) or when printing with a)Tj --17.82 -1.2 TD -0.379 Tw -(Common Lisp readtable, whereas the Common Lisp functions)Tj -T* -0 Tw -(respect them on )Tj -/TT6 1 Tf -7.4482 0 TD -(all)Tj -/TT2 1 Tf -1.0005 0 TD -( output.)Tj -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Internal Printing Functions)Tj -ET -54.01 651.49 m -558.01 651.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 632.2 Tm -0.304 Tw -(Interlisp has several functions \(e.g.,)Tj -/TT4 1 Tf -16.946 0 TD -[( NCHARS)]TJ -/TT2 1 Tf -4.858 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.8597 0 TD -(STRINGWIDTH)Tj -/TT2 1 Tf -7.0553 0 TD -(,)Tj -/TT4 1 Tf --29.719 -1.2 TD -(CHCON)Tj -/TT2 1 Tf -3.666 0 TD -(, )Tj -/TT4 1 Tf -0.8217 0 TD -(MKSTRING)Tj -/TT2 1 Tf -5.3333 0 TD -0.266 Tw -(\) that operate on the "prin1 pname" of an)Tj --9.821 -1.2 TD -0.096 Tw -(object, or optionally on its "prin2 pname" when given an extra flag)Tj -T* -0.373 Tw -[(and readtable as arguments. These functions are essentially)]TJ -T* -0 Tw -(unchanged in Lyric.)Tj -0 -1.9 TD -0.156 Tw -(In terms of the discussion above, the "prin1 pname" of an object)Tj -0 -1.2 TD -0.073 Tw -(continues to be the characters that would be produced by a call to)Tj -/TT4 1 Tf -T* -0 Tw -(IL:PRIN1)Tj -/TT2 1 Tf -4.167 0 TD -0.193 Tw -[( at infinite print level and line length, and with )]TJ -/TT4 1 Tf -22.1092 0 TD -0 Tw -(*PRINT-)Tj --26.2762 -1.2 TD -(BASE*)Tj -/TT2 1 Tf -3.167 0 TD -0.4 Tw -[( bound to 10 \(unless )]TJ -/TT4 1 Tf -11.3398 0 TD -0 Tw -(PRXFLG)Tj -/TT2 1 Tf -4.0552 0 TD -0.4 Tw -[( is true, see )]TJ -/TT6 1 Tf -7.0468 0 TD -0 Tw -(Interlisp-d)Tj --25.6088 -1.2 TD -0.139 Tw -(Reference Manual)Tj -/TT2 1 Tf -8.3104 0 TD -[(\). The "prin2 pname" of an object is the list of)]TJ --8.3104 -1.2 TD -0.366 Tw -(characters that would be produced by a call to )Tj -/TT4 1 Tf -23.9727 0 TD -0 Tw -(IL:PRIN2)Tj -/TT2 1 Tf -4.167 0 TD -0.366 Tw -[( \(or)]TJ -/TT4 1 Tf --28.1397 -1.2 TD -0 Tw -(CL:PRIN1)Tj -/TT2 1 Tf -4.611 0 TD -0.006 Tw -(\) using the specified readtable \(or )Tj -/TT4 1 Tf -15.1556 0 TD --0.0002 Tc -0 Tw -(*READTABLE* )Tj -/TT2 1 Tf -7.2262 0 TD -0 Tc -0.006 Tw -(if none)Tj --26.9928 -1.2 TD -0 Tw -(is given\), again at infinite print level and line length.)Tj -0 -2.3 TD -0.11 Tw -(Exception: the function )Tj -/TT4 1 Tf -10.7255 0 TD -0 Tw -(STRINGWIDTH)Tj -/TT2 1 Tf -7.0547 0 TD -0.11 Tw -[( computes the width of the)]TJ --17.7802 -1.2 TD -0.077 Tw -(expression as if it were printed at the current )Tj -/TT4 1 Tf -20.6471 0 TD -0 Tw -(*PRINT-LEVEL*)Tj -/TT2 1 Tf -7.334 0 TD -0.077 Tw -[( and)]TJ -/TT4 1 Tf --27.9811 -1.2 TD -0 Tw -(*PRINT-LENGTH*)Tj -/TT2 1 Tf -8.2222 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 410.64 Tm -(Printing Differences between Koto and Lyric)Tj -ET -54.01 407.49 m -558.01 407.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 388.2 Tm -0.221 Tw -(The Common Lisp and Interlisp printing functions use the same)Tj -0 -1.2 TD -0.0001 Tc -0.0039 Tw -(strategy for escaping characters in symbol names. Because of this,)Tj -T* -0 Tc -0.078 Tw -(symbols may print differently in Lyric than they did in Koto, for two)Tj -T* -0.159 Tw -(reasons: the use of the Common Lisp multiple escape character,)Tj -T* -0.61 Tw -[(and the escaping of numeric print names. Although the)]TJ -T* -0.068 Tw -(appearance is different, the functionality is the samesymbols are)Tj -T* -0 Tw -(still printed in a way that allows them to be correctly read.)Tj -0 -1.9 TD -0.042 Tw -(Roughly speaking, the multiple escape character is used to escape)Tj -0 -1.2 TD -0.375 Tw -(symbol names that would require two or more single escape)Tj -T* -0.204 Tw -[(characters. Thus, for example, a symbol that printed as )]TJ -/TT8 1 Tf -26.9956 0 TD -0 Tw -(%\(OH%)Tj --26.9956 -1.329 TD -(NO%\))Tj -/TT2 1 Tf -2.4004 0 TD -0.031 Tw -[( in Koto will print in Lyric as )]TJ -/TT8 1 Tf -12.5859 0 TD -0.067 Tw -(|\(OH NO\)|)Tj -/TT2 1 Tf -5.4679 0 TD -0.031 Tw -[(. However, in the old)]TJ --20.4542 -1.329 TD -0.45 Tw -(readtables that lack a multiple escape character \(e.g., OLD-)Tj -0 -1.2 TD -0.061 Tw -[(INTERLISP-T\), the single escapes are still used. Multiple escapes)]TJ -T* -0.077 Tw -(are also used to print a symbol containing lower-case letters when)Tj -T* -0.051 Tw -(the readtable is case-insensitive, e.g., )Tj -/TT8 1 Tf -17.2643 0 TD -0 Tw -(|Small|)Tj -/TT2 1 Tf -4.2007 0 TD -0.051 Tw -[( in a Common Lisp)]TJ --21.465 -1.329 TD -0.115 Tw -[(readtable. Keep in mind also that some additional characters are)]TJ -0 -1.2 TD -0.34 Tw -(now "special", e.g., colon in all new readtables, semi-colon in)Tj -T* -0.056 Tw -[(Common Lisp. Thus, the typical NS FIle "full name" will be printed)]TJ -T* -0 Tw -(with the multiple escape character.)Tj -0 -1.9 TD -0.035 Tw -(Since it is now possible to create symbols that have "numeric" print)Tj -0 -1.2 TD -0.492 Tw -(names, such symbols must be printed with suitable escape)Tj -T* -(characters, so that on input they are not misinterpreted as)Tj -T* -0.051 Tw -[(numbers. For example, the symbol whose print name is "1.2E3" is)]TJ -T* -0.279 Tw -(printed as )Tj -/TT8 1 Tf -5.2274 0 TD -0 Tw -(|1.2E3|)Tj -/TT2 1 Tf -4.2007 0 TD -0.279 Tw -[(. In read tables lacking a multiple escape)]TJ --9.4281 -1.329 TD -0.45 Tw -(character, the single escape character is used instead, e.g.,)Tj -/TT8 1 Tf -0 -1.2 TD -0 Tw -(%1.2E3)Tj -/TT2 1 Tf -3.6006 0 TD -0.023 Tw -[( in the old Interlisp T readtable. A print name is considered)]TJ -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -27 0 obj -<< -/Length 5917 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-43)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.521 Tw -(numeric according to the definition of "potential number" in)Tj -0 -1.2 TD -0.127 Tw -[(Common Lisp \(p. 341\). Even if such a symbol is not readable in)]TJ -T* -0.012 Tw -(the current system as a number, it still needs to be escaped in case)Tj -T* -0.312 Tw -(it is read into another system that treats it as numeric \(either)Tj -T* -0.133 Tw -(another Common Lisp implementation, or a future implementation)Tj -T* -0.0001 Tc -0.0039 Tw -(of Xerox Lisp\). Thus, some old Interlisp symbols now print escaped)Tj -T* -0 Tc -0.034 Tw -(where they didnt in Koto; e.g., the )Tj -/TT4 1 Tf -15.6364 0 TD -0 Tw -(PRINTOUT)Tj -/TT2 1 Tf -5.1106 0 TD -0.034 Tw -[( directive )]TJ -/TT8 1 Tf -4.3473 0 TD -0 Tw -(|.P2|)Tj -/TT2 1 Tf -3.0005 0 TD -0.034 Tw -[( is a)]TJ --28.0948 -1.329 TD -0 Tw -(potential number.)Tj -/TT4 1 Tf -12 0 0 12 54 617.35 Tm -(Bitmap Syntax)Tj -ET -54.01 614.2 m -558.01 614.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 598.91 Tm -0.297 Tw -[(Bitmaps are printed in a new syntax in Lyric. When )]TJ -/TT4 1 Tf -26.2772 0 TD -0 Tw -(*PRINT-)Tj --26.2772 -1.2 TD -(ARRAY*)Tj -/TT2 1 Tf -3.944 0 TD -0.059 Tw -[( is )]TJ -/TT4 1 Tf -1.3958 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.059 Tw -[( \(the default at top level\), a bitmap prints in roughly)]TJ --6.9507 -1.2 TD -0 Tw -(the same compact form as previously: )Tj -0 -1.9 TD -( )Tj -/TT8 1 Tf -1.2 0 TD -(#)Tj -/TT2 1 Tf --12.5281 -2.029 TD -(If )Tj -/TT4 1 Tf -0.8375 0 TD -(*PRINT-ARRAY*)Tj -/TT2 1 Tf -7.667 0 TD -0.001 Tc -0.003 Tw -( is )Tj -/TT4 1 Tf -1.2858 0 TD -0 Tc -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.004 Tw -(, a bitmap prints in a manner that allows it to)Tj --10.4012 -1.2 TD -0 Tw -(be read back: )Tj -0 -1.9 TD -( )Tj -/TT8 1 Tf -1.2 0 TD -(#*\()Tj -/TT6 1 Tf -1.8003 0 TD -(Width)Tj -/TT8 1 Tf -2.5562 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(Height)Tj -/TT8 1 Tf -2.8906 0 TD -( )Tj -/TT2 1 Tf -0.6001 0 TD -([)Tj -/TT6 1 Tf -0.2778 0 TD -(BitsPerPixel)Tj -/TT2 1 Tf -5.3906 0 TD -(])Tj -/TT8 1 Tf -0.2778 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(XXXXXXXXX)Tj -/TT2 1 Tf -6.0029 0 TD -(...)Tj -/TT6 1 Tf --22.1966 -2.029 TD -(Width)Tj -/TT2 1 Tf -2.5562 0 TD -0.116 Tw -[( and )]TJ -/TT6 1 Tf -2.4561 0 TD -0 Tw -(Height )Tj -/TT2 1 Tf -3.2845 0 TD -0.116 Tw -(are measured in pixels; )Tj -/TT6 1 Tf -11.0802 0 TD -0 Tw -(BitsPerPixel)Tj -/TT2 1 Tf -5.3906 0 TD -0.116 Tw -[( is supplied)]TJ --24.7676 -1.2 TD -0.238 Tw -(for bitmaps of other than the default of 1 bit per pixel. Each )Tj -/TT6 1 Tf -29.3318 0 TD -0 Tw -(X)Tj -/TT2 1 Tf --29.3318 -1.2 TD -0.073 Tw -(represents four bits of a row of the bitmap; the characters )Tj -/TT8 1 Tf -26.4265 0 TD -0 Tw -(@)Tj -/TT2 1 Tf -0.6001 0 TD -0.073 Tw -[( and )]TJ -/TT8 1 Tf -2.3701 0 TD -0 Tw -(A)Tj -/TT2 1 Tf --29.3967 -1.329 TD -(through )Tj -/TT8 1 Tf -4.3414 0 TD -(O)Tj -/TT2 1 Tf -0.6001 0 TD -0.672 Tw -[( are used in this encoding. Thus, there are)]TJ --4.9415 -1.329 TD -0 Tw -(4*)Tj -/TT11 1 Tf -0.9453 0 TD -<0095>Tj -/TT6 1 Tf -0.3838 0 TD -(Width)Tj -/TT2 1 Tf -2.5562 0 TD -(*)Tj -/TT6 1 Tf -0.3892 0 TD -(BitsPerPixel)Tj -/TT2 1 Tf -5.3906 0 TD -(/16)Tj -/TT11 1 Tf -1.3901 0 TD -<0097>Tj -/TT2 1 Tf -0.3838 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(s for each row. )Tj -/TT4 1 Tf --12.3838 -1.9 TD -(MAKEFILE)Tj -/TT2 1 Tf -5.111 0 TD -0.374 Tw -[( binds )]TJ -/TT4 1 Tf -3.6943 0 TD -0 Tw -(*PRINT-ARRAY*)Tj -/TT2 1 Tf -7.667 0 TD -0.374 Tw -[( to )]TJ -/TT4 1 Tf -2.1376 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.374 Tw -[( so that bitmaps print)]TJ --19.2208 -1.2 TD -0.341 Tw -[(readably in files. E.g., if the value of FOO is a bitmap, the)]TJ -T* -0 Tw -(command \(VARS FOO\) dumps something like)Tj -/TT8 1 Tf -1.2 -1.9 TD -(\(RPAQQ FOO #*\(10 10\)ADSDKJFDKJH)Tj -/TT2 1 Tf -18.603 0 TD -(...)Tj -/TT8 1 Tf -0.8335 0 TD -(\))Tj -/TT2 1 Tf --20.6365 -2.029 TD -0.064 Tw -(Note that with this new format, bitmaps are readable even inside a)Tj -0 -1.2 TD -0.201 Tw -[(complex list structure. This means you need no longer use the)]TJ -/TT4 1 Tf -T* -0 Tw -(UGLYVARS)Tj -/TT2 1 Tf -5.556 0 TD -0.158 Tw -[( command when dumping a list containing bitmaps if)]TJ --5.556 -1.2 TD -0 Tw -(the bitmaps were previously the only "unprintable" part of the list.)Tj -/TT4 1 Tf -12 0 0 12 54 287.9 Tm -(Section 25.8 Readtables)Tj -ET -54.01 284.75 m -558.01 284.75 l -S -BT -/TT10 1 Tf -10 0 0 10 258 269.46 Tm -(\(III:25.34\))Tj -/TT2 1 Tf -0 -1.7 TD -0.088 Tw -(The input/output syntaxes of Common Lisp and Interlisp differ in a)Tj -0 -1.2 TD -0.126 Tw -[(few significant ways. For example, Common Lisp uses "\\" as the)]TJ -T* -0.056 Tw -[(escape character, whereas Interlisp uses "%". Common Lisp input)]TJ -T* -0.316 Tw -(is case-insensitive \(lower-case letters are read as upper-case\),)Tj -T* -0.645 Tw -[(whereas Interlisp is case-sensitive. In Xerox Lisp, these)]TJ -T* -0.204 Tw -(differences are accommodated by having different readtables for)Tj -T* -0.054 Tw -[(the two dialects. Which syntax is used for input or output depends)]TJ -T* -0.059 Tw -(on which readtable is being used \(either as an explicit argument to)Tj -T* -0 Tw -(the read/print function or by being the "current" readtable\).)Tj -0 -1.9 TD -0.331 Tw -(Interlisp readtables have been extended to include features of)Tj -0 -1.2 TD -0.12 Tw -[(Common Lisp syntax. There is a registry of named readtables to)]TJ -T* -0.427 Tw -[(make it easier to choose a readtable. The default Interlisp)]TJ -T* -0.337 Tw -(readtable has been modified to make it look a little closer to)Tj -T* -0 Tw -(Common Lisp.)Tj -0 -1.9 TD -0.513 Tw -(Also, Lisp has a new mechanism for maintaining read/print)Tj -0 -1.2 TD -0.099 Tw -[(consistency. This means that even though Koto files may contain)]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R -/TT11 29 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -31 0 obj -<< -/Length 6224 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-44)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.139 Tw -(characters that are now "special", such as colon, you need make)Tj -0 -1.2 TD -0.171 Tw -(no changes to themthe File Manager knows how to load them)Tj -T* -0.215 Tw -[(correctly. See )]TJ -/TT6 1 Tf -7.3139 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.215 Tw -(, Chapter 17, Reader Environments and File)Tj --9.147 -1.2 TD -0 Tw -(Manager for details of this mechanism.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(Differences Between Interlisp and Common Lisp Read Tables)Tj -ET -54.01 669.49 m -558.01 669.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 650.2 Tm -0.184 Tw -(When reading or printing, the readtable dictates the syntax rules)Tj -0 -1.2 TD -0.088 Tw -[(being followed. As in past releases, the readtable indicates which)]TJ -T* -0.073 Tw -(characters must be escaped when printing a symbol \(and )Tj -/TT4 1 Tf -26.2815 0 TD -0 Tw -(*PRINT-)Tj --26.2815 -1.2 TD -(ESCAPE* )Tj -/TT2 1 Tf -4.8083 0 TD -0.029 Tw -[(is true\). In addition, in Lyric the readtable specifies such)]TJ --4.8083 -1.2 TD -0.082 Tw -(things as which escape character to use \(\\ or %\) and the package)Tj -T* -0.122 Tw -[(delimiter to print on package-qualified symbols. The less obvious)]TJ -T* -0 Tw -(rules are detailed below.)Tj -/TT4 1 Tf -0 -1.9 TD -0.01 Tw -(Printing numbers.)Tj -/TT2 1 Tf -8.5662 0 TD -[( Numbers are always printed in the current print)]TJ --8.5662 -1.2 TD -0.085 Tw -(base \(the value of the variable)Tj -/TT4 1 Tf -13.8225 0 TD -[( *PRINT-BASE*)]TJ -/TT2 1 Tf -7.2505 0 TD -(, or equivalently the)Tj --21.073 -1.2 TD -(value of \()Tj -/TT4 1 Tf -4.2833 0 TD -0 Tw -(RADIX)Tj -/TT2 1 Tf -3.1107 0 TD -0.085 Tw -[(\). Whether to print a radix specifier is determined)]TJ --7.394 -1.2 TD -0.257 Tw -[(by the readtable. In Common Lisp, a radix specifier is printed)]TJ -T* -0.327 Tw -(exactly when the value of )Tj -/TT4 1 Tf -13.1418 0 TD -0 Tw -(*PRINT-RADIX*)Tj -/TT2 1 Tf -7.2212 0 TD -0.327 Tw -[( is true. The radix)]TJ --20.363 -1.2 TD -0.059 Tw -(specifier is a suffix decimal point in base 10, or a prefix using # for)Tj -T* -0.119 Tw -[(other bases. In Interlisp, a radix specifier is printed if the base is)]TJ -T* -0.085 Tw -(not 10, )Tj -/TT4 1 Tf -3.5059 0 TD -0 Tw -(*PRINT-ESCAPE*)Tj -/TT2 1 Tf -8.2231 0 TD -0.085 Tw -[( is true, and the number is not less than)]TJ --11.729 -1.2 TD -0.04 Tw -[(the print base. The radix specifier is a suffix Q for octal, or a prefix)]TJ -T* -0.016 Tw -[(using # \(or | in old Interlisp readtables\) for other bases. There is no)]TJ -T* -0 Tw -(decimal radix specifier.)Tj -/TT4 1 Tf -0 -1.9 TD -0.227 Tw -(Reading numbers.)Tj -/TT2 1 Tf -8.9506 0 TD -[( In Common Lisp, numbers are read in the)]TJ --8.9506 -1.2 TD -0.295 Tw -(current value of )Tj -/TT4 1 Tf -8.0554 0 TD -0 Tw -(*READ-BASE*)Tj -/TT2 1 Tf -6.7216 0 TD -0.295 Tw -(, and a trailing decimal point is)Tj --14.777 -1.2 TD -0.127 Tw -[(interpreted as a decimal radix specifier. In Interlisp, numbers are)]TJ -T* -0.349 Tw -(always read in base 10, and trailing decimal point denotes a)Tj -T* -0 Tw -(floating-point number. )Tj -/TT4 1 Tf -0 -1.9 TD -0.207 Tw -(Case conversion.)Tj -/TT2 1 Tf -8.4883 0 TD -[( In a case-insensitive readtable \(as Common)]TJ --8.4883 -1.2 TD -0.346 Tw -(Lisp is\), the value of )Tj -/TT4 1 Tf -10.9014 0 TD --0.0001 Tc -0 Tw -(*PRINT-CASE* )Tj -/TT2 1 Tf -7.5124 0 TD -0 Tc -0.346 Tw -(controls how upper-case)Tj --18.4138 -1.2 TD -0.527 Tw -(symbols are printed, and lower-case letters in symbols are)Tj -T* -0.178 Tw -[(escaped. In a case-sensitive readtable \(as Interlisp is\), )]TJ -/TT4 1 Tf -26.2807 0 TD -0 Tw -(*PRINT-)Tj --26.2807 -1.2 TD -(CASE* )Tj -/TT2 1 Tf -3.6163 0 TD -0.171 Tw -(is ignored, so all letters in symbols are printed verbatim. )Tj -/TT4 1 Tf --3.6163 -1.2 TD -0 Tw -(*PRINT-CASE*)Tj -/TT2 1 Tf -6.8896 0 TD -0.098 Tw -[( is also ignored by)]TJ -/TT4 1 Tf -8.4521 0 TD -[( PRIN1)]TJ -/TT2 1 Tf -3.3211 0 TD -(, which implicitly uses an)Tj --18.6628 -1.2 TD -0 Tw -(Interlisp readtable.)Tj -/TT4 1 Tf -0 -1.9 TD -(Ratios.)Tj -/TT2 1 Tf -3.334 0 TD -0.032 Tw -[( The character slash \(/\) is interpreted as the ratio marker in)]TJ --3.334 -1.2 TD -0.292 Tw -(all readtables except old Interlisp readtables \(specifically, those)Tj -T* -0 Tw -(whose)Tj -/TT4 1 Tf -2.8906 0 TD -0.0003 Tc -0.0047 Tw -( COMMONNUMSYNTAX)Tj -/TT2 1 Tf -11.2814 0 TD -( property is)Tj -/TT4 1 Tf -4.9563 0 TD -0.0013 Tc -0.0037 Tw -( NIL)Tj -/TT2 1 Tf -1.8937 0 TD -0.0002 Tc -0.0048 Tw -(\). This is so that old)Tj --21.022 -1.2 TD -0 Tc -0.297 Tw -(files containing symbols with slashes are not misinterpreted as)Tj -T* -0.009 Tw -[(ratios. Thus, the characters "1/2" are read in new readtables as the)]TJ -T* -0.126 Tw -(ratio 1/2, but in old Interlisp readtables as the 3-character symbol)Tj -T* -0.109 Tw -(|1/2| \()Tj -/TT8 1 Tf -2.7965 0 TD -0 Tw -(| )Tj -/TT2 1 Tf -1.4352 0 TD -0.109 Tw -[(is the multiple-escape character, see below\). Ratios are)]TJ --4.2317 -1.329 TD -0.211 Tw -(printed in old Interlisp readtables in the form)Tj -/TT8 1 Tf -20.9321 0 TD -0.456 Tw -[( |.\(/ )]TJ -/TT2 1 Tf -4.5126 0 TD -0 Tw -(numerator)Tj --25.4447 -1.329 TD -(denominator\).)Tj -/TT4 1 Tf -0 -1.9 TD -(Packages.)Tj -/TT2 1 Tf -4.8926 0 TD -0.304 Tw -[( Symbols are interned with respect to the current)]TJ --4.8926 -1.2 TD -0.443 Tw -[(package \(the binding of)]TJ -/TT4 1 Tf -11.7247 0 TD -[( *PACKAGE*)]TJ -/TT2 1 Tf -6.4983 0 TD -(\) except in old Interlisp)Tj --18.223 -1.2 TD -0.176 Tw -(readtables \(specifically, those whose )Tj -/TT4 1 Tf -17.268 0 TD -0 Tw -(USESILPACKAGE)Tj -/TT2 1 Tf -8.61 0 TD -0.176 Tw -[( property)]TJ --25.878 -1.2 TD -0 Tw -(is)Tj -/TT4 1 Tf -0.7222 0 TD -0.299 Tc -( T)Tj -/TT2 1 Tf -1.1877 0 TD -0 Tc -0.299 Tw -(\), where symbols are read with respect to the INTERLISP)Tj --1.9098 -1.2 TD -0.021 Tw -(package, independent of the binding of)Tj -/TT4 1 Tf -17.3413 0 TD -[( *PACKAGE*)]TJ -/TT2 1 Tf -6.0776 0 TD -[(. Again, this is)]TJ --23.419 -1.2 TD -0.07 Tw -(a backward-compatibility feature: Interlisp had no package system,)Tj -T* -0.204 Tw -(so programmers were not confronted with the need to read and)Tj -T* -0 Tw -(print in a consistent package environment.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -34 0 obj -<< -/Length 6209 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-45)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -0.102 Tw -(Print Level elision.)Tj -/TT2 1 Tf -9.0399 0 TD -[( When )]TJ -/TT4 1 Tf -3.7518 0 TD -0 Tw -(*PRINT-LEVEL*)Tj -/TT2 1 Tf -7.334 0 TD -0.102 Tw -[( or )]TJ -/TT4 1 Tf -1.6488 0 TD -0 Tw -(*PRINT-LENGTH*)Tj -/TT2 1 Tf --21.7745 -1.2 TD -0.29 Tw -(is exceeded, the printing functions denote elided elements and)Tj -T* -0.141 Tw -(elided tails by printing ")Tj -/TT8 1 Tf -10.8135 0 TD -0 Tw -(&)Tj -/TT2 1 Tf -0.6001 0 TD -0.141 Tw -(" and ")Tj -/TT8 1 Tf -3.2161 0 TD -0 Tw -(--)Tj -/TT2 1 Tf -1.2002 0 TD -0.141 Tw -(" with an Interlisp readtable, or)Tj --15.8299 -1.329 TD -0 Tw -(")Tj -/TT8 1 Tf -0.355 0 TD -(#)Tj -/TT2 1 Tf -0.6001 0 TD -(" and ")Tj -/TT8 1 Tf -2.9341 0 TD -(...)Tj -/TT2 1 Tf -1.8003 0 TD -(" with a Common Lisp readtable.)Tj -/TT4 1 Tf --26.0895 -2.329 TD -(Section 25.8.2 New Readtable Syntax Classes)Tj -ET -54.01 666.91 m -558.01 666.91 l -S -BT -/TT2 1 Tf -10 0 0 10 258 647.62 Tm -0.075 Tw -(The following new syntax classes are recognized by )Tj -/TT4 1 Tf -23.8895 0 TD -0 Tw -(GETSYNTAX)Tj -/TT2 1 Tf --23.8895 -1.2 TD -(and)Tj -/TT4 1 Tf -1.6685 0 TD -( SETSYNTAX)Tj -/TT2 1 Tf -6.2785 0 TD -(:)Tj -/TT4 1 Tf --18.747 -1.9 TD -(MULTIPLE-ESCAPE)Tj -/TT2 1 Tf -10.8 0 TD -0.193 Tw -(This character inhibits any special interpretation of all characters)Tj -0 -1.2 TD -0.021 Tw -(\(except the single escape character\) up until the next occurrence of)Tj -T* -0.186 Tw -[(the multiple escape character. In Common Lisp and in the new)]TJ -T* -0.319 Tw -[(Interlisp readtables this character is the vertical bar \("|"\). For)]TJ -T* -0.198 Tw -(example, |\(a\)| is read as the 3-character symbol "\(a\)"; |x\\|y\\\\z| is)Tj -T* -0 Tw -(read as the 5 character symbol "x|y\\z".)Tj -0 -1.9 TD -0.579 Tw -(There is no multiple escape character in the old Interlisp)Tj -0 -1.2 TD -0 Tw -(readtables.)Tj -/TT4 1 Tf --10.8 -1.9 TD -(PACKAGEDELIM)Tj -/TT2 1 Tf -10.8 0 TD -0.01 Tw -(This character separates a package name from the symbol name in)Tj -0 -1.2 TD -0.299 Tw -[(a package-qualified symbol. In Common Lisp and in the new)]TJ -T* -0.086 Tw -[(Interlisp readtables this character is colon \(":"\). In the old Interlisp)]TJ -T* -0.417 Tw -(readtables the package delimiter is control-)Tj -/TT11 1 Tf -21.1504 0 TD -0 Tw -<0042>Tj -/TT2 1 Tf -0.603 0 TD -0.417 Tw -[( \(")]TJ -/TT11 1 Tf -1.3828 0 TD -0 Tw -<00420042>Tj -/TT2 1 Tf -1.2061 0 TD -0.417 Tw -("\); it is not)Tj --24.3423 -1.329 TD -0.155 Tw -(intended to be easily typed, but exists only to have a compatible)Tj -0 -1.2 TD -0.017 Tw -[(way to print package-qualified symbols in obsolete readtables. See)]TJ -/TT6 1 Tf -T* -0 Tw -(Common Lisp, the Language )Tj -/TT2 1 Tf -13.1196 0 TD -(for details of package specification. )Tj -/TT4 1 Tf --33.5196 -2.2 TD -(Additional Readtable Properties)Tj -ET -54.01 408.62 m -558.01 408.62 l -S -BT -/TT2 1 Tf -10 0 0 10 258 389.33 Tm -0.387 Tw -(Read tables have several additional properties in Xerox Lisp.)Tj -0 -1.2 TD -0 Tw -(These are accessible via the function )Tj -/TT4 1 Tf -16.7314 0 TD -(READTABLEPROP)Tj -/TT2 1 Tf -8.9986 0 TD -(:)Tj -/TT4 1 Tf --38.93 -1.9 TD -(\(READTABLEPROP)Tj -/TT2 1 Tf -9.3335 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NEWVALUE)Tj -/TT2 1 Tf -5.6123 0 TD -[(\))-16584.4([Function])]TJ -ET -126.01 355.62 m -558.01 355.62 l -S -BT -10 0 0 10 258 340.33 Tm -0.171 Tw -(Returns the current value of the property )Tj -/TT6 1 Tf -19.4289 0 TD -0 Tw -(PROP)Tj -/TT2 1 Tf -2.834 0 TD -0.171 Tw -[( of the readtable)]TJ -/TT6 1 Tf --22.2629 -1.2 TD -0 Tw -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -0.277 Tw -[(. In addition, if )]TJ -/TT6 1 Tf -8.1667 0 TD -0 Tw -(NEWVALUE)Tj -/TT2 1 Tf -5.6123 0 TD -0.277 Tw -[( is specified, the propertys)]TJ --17.0574 -1.2 TD -0.536 Tw -(value is set to )Tj -/TT6 1 Tf -8.5361 0 TD -0 Tw -(NEWVALUE)Tj -/TT2 1 Tf -5.6123 0 TD -0.536 Tw -[(. The following properties are)]TJ --14.1484 -1.2 TD -0 Tw -(recognized:)Tj -/TT4 1 Tf --5.622 -1.9 TD -(NAME)Tj -/TT2 1 Tf -2.9443 0 TD -0.033 Tw -[( )-2366.8(The name of the readtable \(a string, case is ignored\). The name is)]TJ -2.6777 -1.2 TD -0.079 Tw -(used for identification when printing the readtable object itself, and)Tj -T* -0.345 Tw -(can be given to the function )Tj -/TT4 1 Tf -14.5788 0 TD -0 Tw -(FIND-READTABLE)Tj -/TT2 1 Tf -8.8312 0 TD -0.345 Tw -[( to retrieve a)]TJ --23.41 -1.2 TD -0 Tw -(particular readtable.)Tj -/TT4 1 Tf --11.402 -1.9 TD -(CASEINSENSITIVE)Tj -/TT2 1 Tf -11.402 0 TD -0.132 Tw -(If true, then unescaped lower-case letters in symbols are read as)Tj -0 -1.2 TD -0.022 Tw -[(upper-case when this readtable is in effect. This property is true by)]TJ -T* -0 Tw -(default in Common Lisp readtables and false in Interlisp readtables.)Tj -/TT4 1 Tf --9.289 -1.9 TD -(COMMONLISP)Tj -/TT2 1 Tf -9.289 0 TD -0.505 Tw -(If true, then input/output obeys certain Common Lisp rules;)Tj -0 -1.2 TD -0.008 Tw -[(otherwise it obeys Interlisp rules. This is described in more detail in)]TJ -T* -0.165 Tw -[(the section on reading and printing. Setting this property to true)]TJ -T* -0.388 Tw -(also sets )Tj -/TT4 1 Tf -5.0001 0 TD -0 Tw -(COMMONNUMSYNTAX )Tj -/TT2 1 Tf -11.6653 0 TD -0.388 Tw -(true and )Tj -/TT4 1 Tf -4.7233 0 TD -0 Tw -(USESILPACKAGE)Tj -/TT2 1 Tf --21.3887 -1.2 TD -(false.)Tj -/TT4 1 Tf --13.197 -1.9 TD -(COMMONNUMSYNTAX)Tj -/TT2 1 Tf -13.197 0 TD -0.399 Tw -(If true, then the Common Lisp rules for number parsing are)Tj -0 -1.2 TD -0.019 Tw -[(followed; otherwise the old Interlisp rules are used. This affects the)]TJ -T* -0.182 Tw -(interpretation of "/" and the floating-point exponent specifiers "d",)Tj -T* -0.037 Tw -[("f", "l" and "s". It does not affect the interpretation of decimal point)]TJ -T* -0 Tw -(and )Tj -/TT4 1 Tf -2.1913 0 TD -(*READ-BASE*)Tj -/TT2 1 Tf -6.7231 0 TD -0.245 Tw -(, which are controlled by the )Tj -/TT4 1 Tf -14.199 0 TD -0 Tw -(COMMONLISP)Tj -/TT2 1 Tf --23.1134 -1.2 TD -0.515 Tw -(property. )Tj -/TT4 1 Tf -5.532 0 TD -0 Tw -(COMMONNUMSYNTAX)Tj -/TT2 1 Tf -10.9995 0 TD -0.515 Tw -[( is true for Common Lisp)]TJ -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT11 29 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -37 0 obj -<< -/Length 5794 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-46)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.338 Tw -(readtables and the new Interlisp readtables; it is false for old)Tj -0 -1.2 TD -0 Tw -(Interlisp readtables.)Tj -/TT4 1 Tf --11.012 -1.9 TD -(USESILPACKAGE)Tj -/TT2 1 Tf -11.012 0 TD -0.141 Tw -[(This is a backward compatibility feature. If )]TJ -/TT4 1 Tf -20.2467 0 TD -0 Tw -(USESILPACKAGE)Tj -/TT2 1 Tf -8.6123 0 TD -0.141 Tw -[( is)]TJ --28.859 -1.2 TD -0.017 Tw -(true, then the Interlisp input/output functions read and print symbols)Tj -T* -0.202 Tw -(with respect to the Interlisp package, independent of the current)Tj -T* -0.282 Tw -(value of)Tj -/TT4 1 Tf -3.7844 0 TD -[( *PACKAGE*)]TJ -/TT2 1 Tf -6.3376 0 TD -[(. This property is true by default for old)]TJ --10.122 -1.2 TD -0 Tw -(Interlisp readtables and false for others.)Tj -0 -1.9 TD -0.61 Tw -(The following properties let the print functions know what)Tj -0 -1.2 TD -0.202 Tw -(characters are being used for certain variable syntax classes so)Tj -T* -0.17 Tw -(that they can print objects in a way that will read back correctly.)Tj -T* -0.216 Tw -(Note that it is possible for several characters to have the same)Tj -T* -0.11 Tw -(syntax on input, but only one of the characters is used for output.)Tj -T* -0.054 Tw -(Also note that only the three syntax classes)Tj -/TT4 1 Tf -19.6109 0 TD -[( ESCAPE)]TJ -/TT2 1 Tf -4.4441 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6097 0 TD -(MULTIPLE-)Tj --24.6647 -1.2 TD -(ESCAPE)Tj -/TT2 1 Tf -4.1123 0 TD -0.102 Tw -[( and )]TJ -/TT4 1 Tf -2.4281 0 TD -0 Tw -(PACKAGEDELIM )Tj -/TT2 1 Tf -8.4912 0 TD -0.102 Tw -(are parameterized for output; the)Tj --15.0316 -1.2 TD -0.15 Tw -(others \(such as )Tj -/TT4 1 Tf -7.5643 0 TD -0 Tw -(LEFTPAREN)Tj -/TT2 1 Tf -6 0 TD -0.15 Tw -[( and )]TJ -/TT4 1 Tf -2.5241 0 TD -0 Tw -(STRINGDELIM)Tj -/TT2 1 Tf -6.8887 0 TD -0.15 Tw -(\) are hardwired)Tj --22.9771 -1.2 TD -0 Tw -(the same character is always used.)Tj -/TT4 1 Tf --9.4 -1.9 TD -(ESCAPECHAR)Tj -/TT2 1 Tf -9.4 0 TD -0.332 Tw -(This is the character code for the character to use for single)Tj -0 -1.2 TD -0.116 Tw -[(escape. Setting this property also gives the designated character)]TJ -T* -0 Tw -(the syntax )Tj -/TT4 1 Tf -4.8359 0 TD -(ESCAPE )Tj -/TT2 1 Tf -4.3901 0 TD -(in the readtable.)Tj -/TT4 1 Tf --22.4231 -1.9 TD -(MULTIPLE-ESCAPECHAR)Tj -/TT2 1 Tf -13.197 0 TD -0.257 Tw -(This is the character code for the character to use for multiple)Tj -0 -1.2 TD -0.116 Tw -[(escape. Setting this property also gives the designated character)]TJ -T* -0 Tw -(the syntax )Tj -/TT4 1 Tf -4.8359 0 TD -(MULTIPLE-ESCAPE)Tj -/TT2 1 Tf -9.4448 0 TD -( in the readtable.)Tj -/TT4 1 Tf --24.5688 -1.9 TD -(PACKAGECHAR)Tj -/TT2 1 Tf -10.288 0 TD -0.14 Tw -[(This is the character code for the package delimiter. Setting this)]TJ -0 -1.2 TD -0.784 Tw -(property also gives the designated character the syntax)Tj -/TT4 1 Tf -T* -0 Tw -(PACKAGEDELIM)Tj -/TT2 1 Tf -8.1113 0 TD -( in the readtable.)Tj --21.3113 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FIND-READTABLE)Tj -/TT2 1 Tf -8.8325 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -[(\))-26143.5([Function])]TJ -ET -126.01 385.49 m -558.01 385.49 l -S -BT -10 0 0 10 258 370.2 Tm -0.171 Tw -(Returns the readtable whose name is )Tj -/TT6 1 Tf -17.8688 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.171 Tw -(, which should be a)Tj --20.7579 -1.2 TD -0.065 Tw -(symbol or string \(case is ignored\); returns)Tj -/TT4 1 Tf -18.7855 0 TD -[( NIL)]TJ -/TT2 1 Tf -1.9537 0 TD -[( if no such readtable)]TJ --20.7392 -1.2 TD -1.11 Tw -[(is registered. Readtables are registered by calling)]TJ -T* -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(READTABLEPROP)Tj -/TT2 1 Tf -9.0005 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(rdtbl)Tj -/TT2 1 Tf -1.9453 0 TD -( NAME )Tj -/TT6 1 Tf -3.667 0 TD -(name)Tj -/TT2 1 Tf -2.5015 0 TD -(\).)Tj --30.9251 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(COPYREADTABLE)Tj -/TT2 1 Tf -9 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -[(\))-25586.8([Function])]TJ -ET -126.01 312.49 m -558.01 312.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 297.2 Tm -(COPYREADTABLE )Tj -/TT2 1 Tf -9.6493 0 TD -0.371 Tw -(has been extended to accept a readtable)Tj --9.6493 -1.2 TD -0.366 Tw -(name as its )Tj -/TT6 1 Tf -6.4891 0 TD -0 Tw -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -0.366 Tw -[( argument \(the old value ORIG could be)]TJ --9.7674 -1.2 TD -1.068 Tw -[(considered a special case of this\). For example,)]TJ -T* -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(COPYREADTABLE)Tj -/TT2 1 Tf -9.0005 0 TD -0.797 Tw -[( "INTERLISP"\) returns a copy of the)]TJ --9.3335 -1.2 TD -0.24 Tw -(INTERLISP readtable. )Tj -/TT4 1 Tf -10.6514 0 TD -[( COPYREADTABLE)]TJ -/TT2 1 Tf -9.5183 0 TD -[( preserves all syntax)]TJ --20.1697 -1.2 TD -0 Tw -(settings and properties except NAME.)Tj -/TT4 1 Tf -12 0 0 12 54 209.64 Tm -(Section 25.8 Predefined Readtables)Tj -ET -54.01 206.49 m -558.01 206.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 187.2 Tm -(The following readtables are registered in the Lyric release of Lisp:)Tj -/TT4 1 Tf --7.623 -1.9 TD -(INTERLISP)Tj -/TT2 1 Tf -7.623 0 TD -0.171 Tw -[(This is the "new" Interlisp readtable. It is used by default in the)]TJ -0 -1.2 TD -0.013 Tw -(Interlisp Exec and by the File Manager to write new versions of pre-)Tj -T* -0.477 Tw -[(existing source files. It thus replaces the old T readtable,)]TJ -T* -0.027 Tw -[(FILERDTBL, CODERDTBL and DEDITRDTBL. It differs from them)]TJ -T* -0 Tw -(in the following ways:)Tj -/TT4 1 Tf --8.96 -1.9 TD -(| \(vertical bar\))Tj -/TT2 1 Tf -8.96 0 TD -0.381 Tw -(has syntax )Tj -/TT4 1 Tf -5.8201 0 TD -0 Tw -(MULTIPLE-ESCAPE)Tj -/TT2 1 Tf -9.4448 0 TD -0.381 Tw -[( rather than being used as a)]TJ --15.2649 -1.2 TD -0 Tw -(variant of the Common Lisp dispatching # macro character.)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -40 0 obj -<< -/Length 4865 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-47)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 228.44 730.2 Tm -(#)Tj -/TT2 1 Tf -2.956 0 TD -0.125 Tw -[(is used as the Common Lisp dispatching # macro character. For)]TJ -0 -1.2 TD -0.21 Tw -(example, to type a number in hexadecimal, the syntax is #xnnn)Tj -T* -0 Tw -(rather than |xnnn.)Tj -/TT4 1 Tf --6.344 -1.9 TD -(: \(colon\))Tj -/TT2 1 Tf -6.344 0 TD -(has syntax )Tj -/TT4 1 Tf -5.0581 0 TD -(PACKAGEDELIM)Tj -/TT2 1 Tf -8.1109 0 TD -(.)Tj -/F1 1 Tf --19.476 -1.9 TD -()Tj -/TT4 1 Tf -0.241 0 TD -( \(quote\))Tj -/TT2 1 Tf -6.066 0 TD -(reads the next expression as \(QUOTE expression\).)Tj -/F1 1 Tf --8.586 -1.906 TD -()Tj -/TT4 1 Tf -0.241 0 TD -( \(backquote\))Tj -/TT2 1 Tf -8.345 0 TD -(are used to read backquoted expressions)Tj --7.401 -1.206 TD -( )Tj -/F1 1 Tf -0.2778 0 TD -(,)Tj -/TT4 1 Tf -0.278 0 TD -( \(comma\))Tj -/TT2 1 Tf -6.8452 -1.906 TD -0.049 Tw -(In addition, the Common Lisp syntax for numbers is supported \(the)Tj -0 -1.2 TD -0.015 Tw -(readtable has property )Tj -/TT4 1 Tf -10.3292 0 TD -0 Tw -(COMMUNNUMSYNTAX)Tj -/TT2 1 Tf -10.9438 0 TD -0.015 Tw -[(\). For example, the)]TJ --21.273 -1.2 TD -0.076 Tw -[(characters "1/2" denote a ratio, not a symbol. Note, however, that)]TJ -T* -0.043 Tw -(trailing decimal point still means floating point, rather than forcing a)Tj -T* -0 Tw -(decimal read base for an integer. )Tj -0 -1.9 TD -0.196 Tw -(The syntax for quote, backquote, and comma is the same as in)Tj -0 -1.2 TD -0.067 Tw -(OLD-INTERLISP-T, so you will not see any difference when typing)Tj -T* -0.059 Tw -[(to an Interlisp Exec. However, the fact that files are also written in)]TJ -T* -0.11 Tw -(the new INTERLISP readtable means that the prettyprinter is now)Tj -T* -0.394 Tw -(able to print quoted and backquoted expressions much more)Tj -T* -0 Tw -(attractively on files \(and to the display as well\).)Tj -/TT4 1 Tf --4.623 -1.9 TD -(LISP)Tj -/TT2 1 Tf -4.623 0 TD -0.172 Tw -(This readtable implements Common Lisp read syntax, exactly as)Tj -0 -1.2 TD -0 Tw -(described in )Tj -/TT6 1 Tf -5.6699 0 TD -(Common Lisp, the Language)Tj -/TT2 1 Tf -12.8418 0 TD -(.)Tj -/TT4 1 Tf --22.9117 -1.9 TD -(XCL)Tj -/TT2 1 Tf -4.4 0 TD -0.034 Tw -(This readtable is the same as LISP, except that the characters with)Tj -0 -1.2 TD -0.27 Tw -(ASCII codes 1 thru 26 have white-space \()Tj -/TT4 1 Tf -20.3441 0 TD -0 Tw -(SEPRCHAR)Tj -/TT2 1 Tf -5.6118 0 TD -0.27 Tw -(\) syntax.)Tj --25.9559 -1.2 TD -0.04 Tw -(This readtable is intended for use in File Manager files, so that font)Tj -T* -0 Tw -(information can be encoded on the file.)Tj -0 -1.9 TD -0.181 Tw -(The following readtables are provided for backward compatibility.)Tj -0 -1.2 TD -0.204 Tw -(They are the same as the corresponding readtables in the Koto)Tj -T* -0 Tw -(release, with the addition of the )Tj -/TT4 1 Tf -14.1201 0 TD -(USESILPACKAGE)Tj -/TT2 1 Tf -8.6123 0 TD -( property.)Tj -/TT4 1 Tf --27.6884 -1.9 TD -(ORIG)Tj -/TT2 1 Tf -4.956 0 TD -0.024 Tw -(This is the same as the ORIG readtable described in the )Tj -/TT6 1 Tf -25.4432 0 TD -0 Tw -(Interlisp-D)Tj --25.4432 -1.2 TD -0.582 Tw -(Reference Manual)Tj -/TT2 1 Tf -8.7534 0 TD -[(. When using a readtable produced by)]TJ --8.7534 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(COPYREADTABLE)Tj -/TT2 1 Tf -9.0005 0 TD -0.546 Tw -[( ORIG\), expressions will read and print)]TJ --9.3335 -1.2 TD -0 Tw -(exactly the same in Koto and Lyric.)Tj -/TT4 1 Tf --12.567 -1.9 TD -(OLD-INTERLISP-FILE)Tj -/TT2 1 Tf -12.567 0 TD -0.188 Tw -(This is the same as the FILERDTBL described in the )Tj -/TT6 1 Tf -25.4459 0 TD -0 Tw -(Interlisp-D)Tj --25.4459 -1.2 TD -0.249 Tw -(Reference Manual)Tj -/TT2 1 Tf -8.4204 0 TD -[(. This readtable is used to read source files)]TJ --8.4204 -1.2 TD -0.045 Tw -[(produced in the Koto release. Note that in Lyric, FILERDTBL is no)]TJ -T* -0.12 Tw -(longer used when reading or writing new files; see the section on)Tj -T* -0 Tw -(reader environments.)Tj -/TT4 1 Tf --11.011 -1.9 TD -(OLD-INTERLISP-T)Tj -/TT2 1 Tf -11.011 0 TD -0.201 Tw -(This is the same as the T readtable described in the )Tj -/TT6 1 Tf -25.4454 0 TD -0 Tw -(Interlisp-D)Tj --25.4454 -1.2 TD -(Reference Manual)Tj -/TT2 1 Tf -8.1714 0 TD -(.)Tj --8.1714 -1.9 TD -0.037 Tw -(If you wish to change the syntax used by a standard readtable, it is)Tj -0 -1.2 TD -0.418 Tw -(recommended instead that you copy the readtable, give it a)Tj -T* -0.183 Tw -(distinguished name, and make the change in the new readtable.)Tj -T* -0.008 Tw -(This will reduce the likelihood that you will try to read another users)Tj -T* -0.293 Tw -(files in an incompatible readtable, or that another user will fail)Tj -T* -0.06 Tw -[(reading yours. See chpater 17, Reader Environments and the File)]TJ -T* -0 Tw -(Manager, for more details.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 42 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -46 0 obj -<< -/Length 5914 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-48)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Koto Compatibility Considerations)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.415 Tw -(In order to consistently read a data structure that you have)Tj -0 -1.2 TD -0.127 Tw -(previously printed, it is important that )Tj -/TT4 1 Tf -17.325 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.832 0 TD -0.127 Tw -[( and )]TJ -/TT4 1 Tf -2.4781 0 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -2.9999 0 TD -0.127 Tw -[( both use)]TJ --25.635 -1.2 TD -0.039 Tw -[(the same readtable and package. Code that calls)]TJ -/TT4 1 Tf -22.3262 0 TD -[( READ)]TJ -/TT2 1 Tf -3.1503 0 TD -[( or)]TJ -/TT4 1 Tf -1.206 0 TD -[( PRINT)]TJ -/TT2 1 Tf --26.6825 -1.2 TD -0.144 Tw -(without explicitly specifying a readtable \(via the )Tj -/TT6 1 Tf -22.0744 0 TD -0 Tw -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -0.144 Tw -[( argument)]TJ --25.3527 -1.2 TD -0.039 Tw -(or by doing a )Tj -/TT4 1 Tf -6.2156 0 TD -0 Tw -(SETREADTABLE)Tj -/TT2 1 Tf -8.1104 0 TD -0.039 Tw -(\) is thus in some danger of reading)Tj --14.326 -1.2 TD -0 Tw -(and printing inconsistently.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(Specifying Readtables and Packages)Tj -ET -54.01 621.49 m -558.01 621.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 606.2 Tm -0.062 Tw -(In Koto, the "primary" \(NIL\) readtable was not significantly different)Tj -0 -1.2 TD -0.126 Tw -(from the other Interlisp readtables, and users tended not to make)Tj -T* -0.233 Tw -[(significant modifications to the primary readtable anyway. As a)]TJ -T* -0.398 Tw -(result, it was easy to write code that was not careful about)Tj -T* -0.302 Tw -[(readtables and get away with it. In Lyric, however, there are)]TJ -T* -0.089 Tw -[(significant differences among commonly used readtables. Thus, if)]TJ -T* -0.301 Tw -(code using the default readtable called )Tj -/TT4 1 Tf -19.2074 0 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.301 Tw -[( under, say, the)]TJ --22.2074 -1.2 TD -0.184 Tw -(Common Lisp Executive and tried to )Tj -/TT4 1 Tf -17.4453 0 TD -0 Tw -(READ )Tj -/TT2 1 Tf -3.2953 0 TD -0.184 Tw -(the expression back)Tj --20.7406 -1.2 TD -0.188 Tw -(while running under an Interlisp Executive, it might very well get)Tj -T* -0 Tw -(inconsistent results.)Tj -0 -1.9 TD -0.054 Tw -(Lyric also introduces the extra complication of the default package,)Tj -0 -1.2 TD -0.221 Tw -(which is the other important parameter affecting the behavior of)Tj -/TT4 1 Tf -T* -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(PRINT)Tj -/TT2 1 Tf -3 0 TD -(. )Tj --8.0576 -1.9 TD -0.019 Tw -(Programmers are thus advised to fix any code that uses )Tj -/TT4 1 Tf -25.2022 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.019 Tw -[( and)]TJ -/TT4 1 Tf --28.0357 -1.2 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.166 Tw -[( as a way of storing and retrieving Lisp expressions to be)]TJ --3 -1.2 TD -0.204 Tw -[(sure to specify a readtable and package environment. For new)]TJ -T* -0.211 Tw -(code in Lyric, this can be done by binding the special variables)Tj -/TT4 1 Tf -T* -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.944 0 TD -0.11 Tw -[( and )]TJ -/TT4 1 Tf -2.4441 0 TD -0 Tw -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -0.11 Tw -[(. If it is necessary to write code)]TJ --15.1669 -1.2 TD -0.075 Tw -(that works in both Koto and Lyric, the programmer should pass an)Tj -T* -0.277 Tw -(explicit readtable to all )Tj -/TT4 1 Tf -11.2804 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.277 Tw -[( and )]TJ -/TT4 1 Tf -2.7781 0 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.277 Tw -[( functions, or set the)]TJ --19.892 -1.2 TD -0.074 Tw -(primary readtable using \()Tj -/TT4 1 Tf -11.2825 0 TD -0 Tw -(RESETFORM)Tj -/TT2 1 Tf -6.2778 0 TD -0.074 Tc -( \()Tj -/TT4 1 Tf -0.6848 0 TD -0 Tc -(SETREADTABLE)Tj -/TT2 1 Tf -8.1113 0 TD -( )Tj -/TT6 1 Tf -0.3518 0 TD -(rdtbl)Tj -/TT2 1 Tf -1.9453 0 TD -0.074 Tw -(\) --)Tj --28.6537 -1.2 TD -0.029 Tw -[(\). If the readtable chosen is either FILERDTBL or one derived as a)]TJ -T* -0.177 Tw -(copy of ORIG, then )Tj -/TT4 1 Tf -9.5454 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.177 Tw -[( and )]TJ -/TT4 1 Tf -2.5781 0 TD -0 Tw -(PRINT)Tj -/TT2 1 Tf -3 0 TD -0.177 Tw -[( will automatically use the)]TJ --17.957 -1.2 TD -0.06 Tw -(INTERLISP package in Lyric, thereby avoiding any need to specify)Tj -T* -0 Tw -(a binding for )Tj -/TT4 1 Tf -5.7817 0 TD -(*PACKAGE*)Tj -/TT2 1 Tf -5.7788 0 TD -(.)Tj -/TT4 1 Tf --31.9605 -2.2 TD -(The T Readtable)Tj -ET -54.01 279.49 m -558.01 279.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 264.2 Tm -0.06 Tw -(An additional possible incompatibility exists with regard to the Koto)Tj -0 -1.2 TD -0.341 Tw -[(T readtable: The T readtable was "the readtable used when)]TJ -T* -0.027 Tw -[(reading from the terminal". In Lyric, the T readtable is synonymous)]TJ -T* -0.03 Tw -(with NIL, and all Executives bind )Tj -/TT4 1 Tf -14.8543 0 TD -0 Tw -(*READTABLE*)Tj -/TT2 1 Tf -6.9448 0 TD -0.03 Tw -[( to the appropriate)]TJ --21.7991 -1.2 TD -0.32 Tw -[(value for the Exec. This is unlikely to be a major source of)]TJ -T* -0.158 Tw -(incompatibility, as few programs depend on printing something in)Tj -T* -0 Tw -(the T readtable in a way that needs to read back consistently.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(PQUOTE Printed Files)Tj -ET -54.01 167.49 m -558.01 167.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 152.2 Tm -0.729 Tw -(In Lyric, the prettyprinter automatically prints quoted and)Tj -0 -1.2 TD -0.665 Tw -[(backquoted expressions attractively. Hence, the PQUOTE)]TJ -T* -0.16 Tw -[(Lispusers module is now obsolete. However, if you have written)]TJ -T* -0.416 Tw -(files in the past with the PQUOTE module loaded into your)Tj -T* -0.091 Tw -(environment, you need to do the following in Lyric in order to load)Tj -T* -0 Tw -(those files:)Tj -0 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -0.122 Tw -(SETSYNTAX \(CHARCODE ""\) \(MACRO FIRST READQUOTE\))Tj --0.333 -1 TD -0 Tw -(FILERDTBL\))Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -49 0 obj -<< -/Length 2687 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-49)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj -28.007 74.479 TD -( 3. COMMON LISP/INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.191 Tw -[(You can then load the old files. New files produced in Lyric by)]TJ -/TT4 1 Tf -0 -1.2 TD -0 Tw -(MAKEFILE )Tj -/TT2 1 Tf -5.8318 0 TD -0.443 Tw -(will automatically be loadable, so you need only)Tj --5.8318 -1.2 TD -0.044 Tw -(perform the )Tj -/TT4 1 Tf -5.4791 0 TD -0 Tw -(SETSYNTAX)Tj -/TT2 1 Tf -6.001 0 TD -0.044 Tw -[( change as long as you still have old files)]TJ --11.4801 -1.2 TD -0.12 Tw -[(written with PQUOTE. Remember, of course, that as long as the)]TJ -/TT4 1 Tf -T* -0 Tw -(SETSYNTAX)Tj -/TT2 1 Tf -6.001 0 TD -0.08 Tw -[( is in effect \(as with the old PQUOTE module\), if you)]TJ --6.001 -1.2 TD -0.243 Tw -(read old files that were written without PQUOTE you may read)Tj -T* -0 Tw -(them incorrectly.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(Back-Quote Facility)Tj -ET -54.01 633.49 m -558.01 633.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 618.2 Tm -0.141 Tw -[(The back-quote facility now fully conforms with )]TJ -/TT6 1 Tf -21.8836 0 TD -(Common Lisp the)Tj --21.8836 -1.2 TD -0 Tw -(Language)Tj -/TT2 1 Tf -4.4492 0 TD -0.245 Tw -[(. This means some cases of nested back-quote now)]TJ --4.4492 -1.2 TD -0.464 Tw -[(work correctly. Back-quote forms are also more attractively)]TJ -T* -0.042 Tw -[(displayed by the prettyprinter. Users should beware, however, that)]TJ -T* -0.492 Tw -(the back-quote facility does not attempt to create fresh list)Tj -T* -0 Tw -(structures unless it is necessary to do so. Thus for example,)Tj -4.8 -1.9 TD -(\(1 2 3\))Tj --4.8 -1.9 TD -(is equivalent to)Tj -4.8 -1.9 TD -(\(1 2 3\))Tj --4.8 -1.9 TD -(not)Tj -4.8 -1.9 TD -(\(LIST 1 2 3\))Tj --4.8 -1.9 TD -0.249 Tw -(If you need to avoid sharing structure you should explicitly use)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(LIST)Tj -/TT2 1 Tf -2.1665 0 TD -(, or )Tj -/TT4 1 Tf -1.7227 0 TD -(COPY)Tj -/TT2 1 Tf -2.8348 0 TD -( the output of the back-quote form.)Tj -ET -2 w -54.01 376.99 m -558.01 376.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 363.08 Tm -(Chapter 28 Windows and Menus)Tj -ET -1 w -54.01 359.49 m -558.01 359.49 l -S -BT -12 0 0 12 54 335.64 Tm -(Section 28.5.1 Menu Fields)Tj -ET -54.01 332.49 m -558.01 332.49 l -S -BT -/TT10 1 Tf -10 0 0 10 258 313.2 Tm -(\(III:28.38\))Tj -ET -570 331.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 294.2 Tm -0.188 Tw -[(With the Medley release, multi-column menus can have rollout)]TJ -ET -570 308.98 0.99 -18.99 re -f -BT -10 0 0 10 258 282.2 Tm -0 Tw -(submenus. )Tj -ET -570 289.98 0.99 -11.99 re -f -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 13 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -52 0 obj -<< -/Length 403 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-50)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 133.44 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP/INTERLISP-D INTEGRATION)Tj --7.944 74.479 TD -(3. COMMON LISP/ INTERLISP-D INTEGRATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -54 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -55 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -56 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -57 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -58 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -59 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AILGFA+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 60 0 R ->> -endobj -60 0 obj -<< -/Filter /FlateDecode -/Length 20117 -/Length1 39476 ->> -stream -HW}tovgvfwv9 -UH8֊Pbԃ4P;o#̒ )4ՔҔRj)Bȇآ"-P)@z&@?ޙ}ݹf܇SP:;h1`@~<+{8 nn\X5C9M2"羻l)Oі;fzeـ `ԑzl&gp -=Z8DVj -;GE(۹YbԵ;U@5\80H=_I:&S_=7cd#ɃK|)Js6/gcɂ -gs%|Eh"1E%[[0tc{jqXÕ`\>Z|Dz ;ſl4%lLa`L1/YXIz>웎tixjs42'MdW4Od2sq; p! ً-W>-?ɶYdXXRi.t'\\:pp5>*W;O;X\Z|u>`9|=)i"NK|QjE*4ܤoÆxg k1ͪlzb?wd%)Qa2o&")ƭHcӰKL&6z톡W~5^$ܠRBOI0iFŢmf1--WVf_q٨[| AStU 'NT{C):|Jum"u bg5MmmAԎ@5V҈QS",>њ?Nkj0-C1݁ft4gζ4*MjZ DOm|2Z$QkOa2| 6ə3{C4fXoJ\ EPWA56!oFcdzG[QŊLO;i+1oӎOV ,Yd˗ K&3mےف,q=z|> |Rzw=N }%3E1ҧX -`%N:C 9J7zӠu(M%QM= M1'uzk{c[Hʹĥlm˲m=J|ҋTG/pLuv^ikxJa^A&nGB.]s}Mt_拈 d#e|cnrؾ 6j=Rwfo-\.v[s%r"+yCa,Ԁ3=g"/"ϲ/r؟^U! rpr  ./yE&0*3i8}߄'t9@ mb{ ZsNVozxE y{/[C_;wkw SQ_Ǥ~HǗd(؁4^ J||Y{@gO2Ƃκ /.GѧW[q]ώ%zFMhrg׊'NuGA<|Y]HqpAuב4Id@&u]"h DtFQr9ZkoX޹=R,ES۽<&qss!QBb g(v iNtRȐ0~dTy9on.C=uƂ\d$0$v"hexƪrHX. R"H)F8MOhө cf^4vF`DSa+{&<sIXY k /C6AB}.8g<\+o qH!B!^RA69HL119Mzr\%Z:iu1AUi9Mѧi]rst%}J[=E?g3L=X6MeEl'=Vz -kamM;>d'ia6)pd>GS|)Fo{>.?? ?{y_yiu7Zfaru&g N8j޾hlvnͲxNAٖcQ7xgD2m>(pd%, -/&T R Y*YwmKwZ -^,X9j2g >Y޼dt}vp|BUC ^ C"0Ҡ74x\NH:⳧$3rt.ik MĽI˟YtaZSF1d2g$q-=zQ,-9P1;vL߂NN!h[bvYȒeRvJS`(}Ib D<cGίvUs.PVW1 xC7ӑ龓o_|@R@ւ̋t@2a3?Y, - -|t'CA\Ҥ0T:U-Umݮyiɷ5!6,KemVu -hP{YJiW Z[9;&- p2Qۅ1B)=wì0c :],Oش>{yPOn]M4fGݨ`̪>QZ[&jifre4‘D^f) G[lKi EҌXj TEB Zs扻cSnZ/*nNt[3B8ֶ:VYqdKf@ i=䯳AQAm0{ȍ?d\ Cy ;Ct\EƅYjO/~I-z ^iӁ'pYxؚcSX YjMG%ت̄qӼt*>3ʠ5I33ewQ}hoEE5f>sfV@:|i:hvex~~`KD3P=(Ѹ;ωb-X--Kp:R|}2+qeq)1cJ7$+ՕrOtПUr]~\g6ZYD[ \(t*ZDiH.'ǥVNƜ"(s",qZ*Ǧ1OM#aPj {XنDz9̅kR4Ouxi!DsrR!d2K |d^0EmokP< &t.aQJ{V*zEAh,\xr5~#~[ϝќZt ]c4BЎY"R揎%f)< [ҟgbb>a 7BJUК?v<>#RKyu0f{̓泍xXVl z+Ƴـ=k.*ZiGc2U7!Sk@#4D}{cEm=lOt|w_a}1dZ,Mb~}?,^ ?ߧ`!F'[d}EM?}$XhNqUblfqBҡ>rKm)1x|:qmz#kmNKPMyKU<)AyjŪfϽ^gw[ =x -n:Y,Š ,}*:,aCpx>Mz<4Vc|肽 D%8 -'8  VRE:TЗn=4t͠лnakp3~?wq/x -O8)|_Nj$HOUE>K#v ϑdD49E$#IyOJ> 7H+rfKܓ\}&s?~{jۅ2oEFE-D*v`432JMS# ltw(4ڙ:1i (j4Ft&3֘c#N˂1jܳ}OؿevSV$Y3"y\&/5rPoȻNm=/*_/_W!BYQ(ūLR(Sl)eR(Q/+w$o0"Lfb!v2T,T*c"2l $Zs*`9?Z0NJuṮQ$ Y -ZF-bMޞX㊂9[؈ azsO7(&R'ߪ@u2^n$[8y_yQDE"jV -O%bB$%8 - -^m L(O30:6f\9Eeˆlzp[sm$6\z1CSHZ*/$@nIsDkkp&85Af H -P1Hn};։2pz{Qc'H{^ ' `omn;s) u" 3n_[}FM:laj%~N2 }^x(z:O^[K1)͊43p}[Sh^+ yD/ov:}e-akw_Hm$ jI]'!y@CZt7ɱ eUQZzmgIy 8HHr-+J=/KsT*֧e{blrw}"Y_*͝E}]ܖf5U|B";=t_>(K7>S}w+WUY < |ZG[x\Hcv1~`ۄ ݰޒp-剏 -r q$[^/_\۱r]VykVeybmؕXa8};&.'eusI+dO-(,5|K=FK㞎2q~!dYR^H)r|lJ&[[HK*pxOEw|tM hRh1)!YXqM%|t^j?QriXZƪtRޮW3@>i˵钙An'V}A78󓯪WL]r`ҍ #غrO8hl?|ϙ|7uSw8v:cTF/9۾>>c5C[@D3˃D2#M#}vF?WiKŚT {V2*c$cX'?w&GCR9a俻rMthc|ctٻ^H~!yP"p@t]{8=.$ ߅Tj -dA.DVcU<1?rVUhaŠ;ȯI SD{L$in\sɳd)"/ -YKk$k+N.MH%=(!%?ɿ%N -Qc'u!T:Ntu h%+j60H6dv{zgi?@D%I)OzRʖ3+GnV)UKˑIIjF&ŤK.tYYiyڠtUL Cff6fgNRyD6}Mc,\#gl6,lDT{C!L6W('ql&0  sbM}** -U8#T<dI'/SpF*қho|y2?<}m.*QQ)rظ)wkޛ$qvdƿ657|k?ouLC5w@>k+-y+سХ@S?>9wLK60mzhЁa:¾ԨGuB8g!fp1#h(qìL~cӑxk^32%šXA#|8{mv/6!F34QKIl02IĚo (e xGh1ȴ  9LɈvՑCQEmo\ZLۿ}9vÂ&}˹~}),վʈH3&\ܪ]%yEݣ{C}S 3u3.l¢ΛA8yw׫/fh5z|i`jM-_`(,+/ 'xfƻ Ȣ!;C Ox#OR6V>'(ʁ<*b PMͅRS娧C - vS?%ԃO:CpCMuUT }HCdQUMC]UDAe5@*|RC=bɽVud#i&-< -1TX'GI3 Ggy ȻB ꧹JWjj9ԤBt ]J:FD4=BG8XMFu9 ںEuau6el%[Am@̶3T_Pu aPfb}\F@o@sjT G1+7;r&DZd%B0P<^T; -Yy.?=^}-Qi#%Gf2磙o^UF;a&'v$C>5Td"%&/>C $gZ^P]y)-UF-J:播 hegfT(vw}{N0s8!*Rs$nA@:P{ FTt>$9u%D_ /^k%oڇ3+Gn-,-ćÝnFJfM71ƴݸmɲ덦ʩҀ#{S6>ZeEF4t-h.GU.l-yu53]c'=l`hQq-0XYh+cٽS:fejc۲tfq0 - -rm^ǕsC0$k좕~bA-1BOt g2+M&W.ӜyqSSJڥ,'mZCSqi\Zxun (pL/秡lF' Z(IܳaS%{ĺu꠴p={EyyE/ȵqJoS82It S /$:`VbGgk=.^Chg'- .{t*CeK ZLj.E:`1\wiBp1"jw]tRע'liNlujR4"8 3Nm@ WvޖBW -f1!djcA7iZ8 TFg&N %A(-4nmv.'c ޵П9sE>1eTq -xA¹#TZ(޵Pw:5.->Z$ ^Êr%-HAy@OL -=4A^#n‘Bt4؋B$5,Bu~<*EFxъ-xVrVT8,& LMVH9#6YK΅(vfXMZ6Eh]Ehu2p0x6e;V k!U%i+8 b{)C!@z&'VТty,eET_PZnmrrRsKD(NkUG_XK8V73mH\O3lmlڤǟ;: EyL\|y}.f-9^R֝X 7Ur]@g= @eúsX&&{ux 2IddQ%-ja* q3P3̳ VAN461wV.!M)^ε4֚K\;s-*"Zx]Z5al5QnxV oYHbȉL=ȅ{̚_c}Q栅ᦣІ1K Gh+r#ճG4(F1eKC^#xd>PRezH ynSN|/CbXAhln$Ž} U~dޣlءhwa`fysR!24oqFs>l&Ejh4-_e8low iظ#ZpuІvmj[ ~C}}{"-,v\Suci\\ZwFE]6Q,m~.h;+&-V;͉-Oni*}Q: | cZ^o[BH0(& w !Y&"%uʘ2|Z9|IrAy -wU' ʿh3>@`waQC0HFmYp1.DI"?E 13?}{f'*`X_R2syl!gzmgmcv]ea,Cy"|gq7M|?s ~ߖ¥ޒ&Y8X*UHFw&Ct^.s,'ir쐧/"uy*O/7D()%e2WYRQ>Pv`ZW9QN*gϕ)NjTMj_U/du:XP3j.J!ȁn X 33JT*Z* -zQE% - !H8L`FI"PU0 z$ҭaQĨʣQG XĀ:6GB!LDpY>L5P$|h$Եyi>=/#܌v3Y-Eo _ojp)D"Th8Da!1J(];):"qB7@ۛZAmXWεAp_p}Xd[Y6OVUyw@E,WmN(Rg9n}w'Ox`ӭ;osvD|3Q19B*_ge)0.t%@NGpD+.>7WV@Y!ӳ ['Wl2ej럙?)ZYlyB%{~٧F.|sOVH ϧ,[ƿ"W@Zʲ붷jIn.쨪k`fۥ{[sGgXXt:@G-_re 3啻:7n5̵֣J,w}9{_9_3Ns k_]WUoى,ky0şkX[Τj@Nw W/BE7:*=Km!iE,Q^[7$f_'-jC֜_X孩ن, %)7[th:*ȗgl9C1C=c˟,Uɕ*n1MȢX}Q,}խ[h\ݾ-UIGnZ61c9icTuf%}z4c萦/^}97}DVI}dj3_fOK<12^'i/$:~QwQ4BIZa S0 ~0`c5qa5^נ -ja)^+a5h lpav7\v @8&}I'I$|d8$vKƒ dL4RJd6 0k& I-YH YAj ć$'4 K*AהP ϼpj1i*Mh&<:sF-t:sr:.=@}O]KGG^5A-I09f( <3E>eqY{ dO gmOQa -F%,r"ZJD{ A8K)8Fm*QGD!xU' .˽ƒRp-#)]g6<ȍ&b"®h+C"VJ%._ҕt׃t\*ɒ7Q -JM%.`fѤ\6vYR=Q|Wh@䱒'$Ǔy6:DɱashĪh9T?(~Y@m Rnժi93>R+R,X j#jd3y5o۫ԦOu+:J'q3,pZ|6Wj5 qz x]PD(;YGk>6y>kh9mo=ra;319GSbB5v,>8m?la ` #?8t'+  %(>gjqGjlSc햎OʮLnJ-kP+pp+[@(r}ɎÛd%W]xlW_XO *> 00.EMð$m4mӛ䰈i4mmoeXQadAaa}aŇAepA;waY,s|3{y z qZ_@߿`3gwr SA -].+ϘU?C3'/2G[;0sϙW}ὸbQ:gw7 o2 -}_> -}5mq9)־0gc{9xx -0FjsP`怛B|0A \,#Mcso0?rm._ט]_:\aZKq|ɀÕg_~y8Z?U!ԺÕ9v盐]܀X/iE-1\, Xwk0 ;9.oOw6 ?Ms۟N·{4k^}^ڷ$kLxK # m>gb=ƭ^9դ ۉޠ -@э"^yj\ -e&xMг=MD0XGjPxx2mv1NkhNB[fi(dQ)Omby \AQ]^F=-y͹;dE >ƌ52y=͵:h.zXq4E!Nݰz/OMI4!xib4lTJ6H;|ۮEkmtXϑ8ŒψM-a&pr"Jg[V%[Ա\Zz>*cQUy܎[>Q3ZLaMɲmFba@83Ab$]o(>Ut4Xʛˆq,8Z\s3Z*\ XoDB#V1\9tW+WL'0VcFaZ&KEyҔs2R<48qמQDliP5V(H3ؿey;IuN搩jAde<CL_EI>\--;C#PѐEeH!;`zפ珧KK>IvG2ˊkf@Cl9Sn >JK:cȎµIνR*p#A]VHGu3764 Y)uhH![fa6!'Z8Lh5[Q7$tKTXjerjtep7uJ.]ti -MTm[ANۜF5šB,.:DSH.T>Ȫ)BJlûiMu)b99Nl̪hET7 -%ucHZqRߡay."fbdB@QPWwbϏkŵOWY}}Ν±{8/ǿc.ZmS]~S'F huф nR#cM5)C*mr|{MEns1/R[vZMA6hM5"u^w%K7*f}~@U=,Yի!\[Pv/1>ȱU6-'W߰u_H;MZ~vЪ cݖ_l3!"ݯ-jau3R* 8}6nZ%ayZʡlKnv̘󋏥\':9K^]jNs7@TӚ{\\`~+³Ҵ#9Km -gQSz¸Ƞp:usȁmGjie߹q\'tӭ흎$_yo:p>Yﻱ,}@`SKB|2,*/L!W7/,SH֩KS6DK/Y5P3J夕(UJdԙ?A3ݦZ*IfӸʼD!ԗ|ȃ6+LC+Ҟ7ԁjMi:R.ͦh\Hqi\r7GcܦJ,A!K*HZg`+#O?Of1|~>FO{z~emXooWo+!u.7Cwe5AQhA> ր%S`5xcq(X  -R$=V LetRFnȥ e])>K?s?-"[mIXbp -ny:= ,2S9E u -gh/4)oG˧!ȉFGf'&2mAmi=\Zp ZX `.\J2@X˰L60۾eA\l;90e2e|2Q"`]eK,TŖtZȽ*L!)<"4"ZE? h>J-hϡ( -͟pfln$>l¸fR{5F9՟K"9blzzn6V6&42%N<8NcIDp8AGsp, `FC~ Gk906>u|䳾/!]('kNMm[ש+;ICդ\yk. ^jjM=[oYi-jz JRWkW UTHuryZGX8 Wµal2qM袕 *֍rkQlQZ/T(=٢Q9~Woo@s ۠ʵ,U,eZuKOU-jF&4T++KgKJrN̮@Hs9'BNmN9<)gZ86dqYDd5d ˙摣‡cRgM=3Hyd;t -LB2K1\߱`li=f;?oKu -y")tW̺*M5ա -endstream -endobj -61 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -42 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 44 -/LastChar 146 -/Widths [278 333 278 278 574 574 574 574 574 574 574 574 574 574 278 278 -606 606 606 500 747 759 778 778 833 759 722 833 870 444 648 815 -722 981 833 833 759 833 815 667 722 833 759 981 722 722 667 389 -606 389 606 500 333 611 648 556 667 574 389 611 685 370 352 667 -352 963 685 611 667 648 519 500 426 685 611 889 611 611 537 389 -606 389 606 606 0 606 241 574 481 1000 500 500 333 1000 667 333 -1000 606 667 606 606 241 241 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 61 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 889 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 584 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 0 278 278 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 260 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 54 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 474 556 0 0 722 0 333 333 389 0 278 333 278 278 -0 556 556 556 556 556 0 0 556 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 0 0 280 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 55 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 0 722 278 0 0 556 833 722 778 -667 0 722 0 611 722 667 944 667 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 0 222 833 556 556 -556 0 333 500 278 556 0 0 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 56 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 126 -/Widths [600 0 0 600 0 600 600 0 600 600 600 0 0 600 600 600 -600 600 600 600 0 0 0 0 600 0 0 0 600 0 600 0 -600 600 600 0 600 600 600 0 600 600 600 600 0 600 600 600 -600 600 600 600 600 0 0 0 600 0 0 0 0 0 0 0 -0 600 0 0 0 0 0 0 0 0 0 0 600 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 57 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 73 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 278 0 -0 556 556 556 556 556 0 0 556 0 333 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 58 0 R ->> -endobj -29 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AILGFA+Symbol -/Encoding /Identity-H -/DescendantFonts [ 62 0 R ] -/ToUnicode 63 0 R ->> -endobj -62 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AILGFA+Symbol -/FontDescriptor 59 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -66 [603] -149 [383] -151 [383] -] ->> -endobj -63 0 obj -<< -/Filter /FlateDecode -/Length 239 ->> -stream -HTAO 9j> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -64 0 obj -<< -/S /D ->> -endobj -65 0 obj -<< -/Nums [0 64 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 14 0 R 17 0 R 20 0 R 23 0 R 26 0 R 30 0 R 33 0 R 36 0 R] -/Count 10 -/Parent 43 0 R ->> -endobj -44 0 obj -<< -/Type /Pages -/Kids [39 0 R 45 0 R 48 0 R 51 0 R] -/Count 4 -/Parent 43 0 R ->> -endobj -43 0 obj -<< -/Type /Pages -/Kids [8 0 R 44 0 R ] -/Count 14 -/MediaBox [0 0 612 792] ->> -endobj -66 0 obj -<< -/CreationDate (D:20210119174405-06'00') -/ModDate (D:20210119174405-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -67 0 obj -<< -/Type /Catalog -/Pages 43 0 R -/PageLabels 65 0 R ->> -endobj -xref -0 68 -0000000000 65535 f -0000102263 00000 n -0000000016 00000 n -0000006078 00000 n -0000099301 00000 n -0000099871 00000 n -0000100424 00000 n -0000076949 00000 n -0000103493 00000 n -0000102343 00000 n -0000006195 00000 n -0000011412 00000 n -0000100863 00000 n -0000101301 00000 n -0000102425 00000 n -0000011555 00000 n -0000018291 00000 n -0000102508 00000 n -0000018421 00000 n -0000024444 00000 n -0000102591 00000 n -0000024562 00000 n -0000031273 00000 n -0000102674 00000 n -0000031403 00000 n -0000037362 00000 n -0000102757 00000 n -0000037492 00000 n -0000043462 00000 n -0000101585 00000 n -0000102840 00000 n -0000043618 00000 n -0000049895 00000 n -0000102923 00000 n -0000050025 00000 n -0000056287 00000 n -0000103006 00000 n -0000056430 00000 n -0000062277 00000 n -0000103089 00000 n -0000062395 00000 n -0000067313 00000 n -0000098710 00000 n -0000103723 00000 n -0000103628 00000 n -0000103173 00000 n -0000067442 00000 n -0000073409 00000 n -0000103257 00000 n -0000073527 00000 n -0000076267 00000 n -0000103341 00000 n -0000076398 00000 n -0000076853 00000 n -0000077089 00000 n -0000077284 00000 n -0000077490 00000 n -0000077695 00000 n -0000077886 00000 n -0000078101 00000 n -0000078291 00000 n -0000098498 00000 n -0000101728 00000 n -0000101951 00000 n -0000103425 00000 n -0000103453 00000 n -0000103814 00000 n -0000103946 00000 n -trailer -<< -/Size 68 -/Root 67 0 R -/Info 66 0 R -/ID [] ->> -startxref -104016 -%%EOF diff --git a/docs/ReleaseNote/SEC4-IRMERRATA.pdf b/docs/ReleaseNote/SEC4-IRMERRATA.pdf deleted file mode 100644 index 243ea0c6..00000000 --- a/docs/ReleaseNote/SEC4-IRMERRATA.pdf +++ /dev/null @@ -1,13557 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4311 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -/TT4 1 Tf -18 0 0 18 271.95 762.97 Tm -(4. CHANGES TO INTERLISP-D IN)Tj -8.4456 -1 TD -(LYRIC/MEDLEY)Tj -ET -6 w -258.01 737.99 m -558.01 737.99 l -S -570 734.98 0.99 -18.99 re -f -BT -10 0 0 10 258 701.2 Tm -(NOTE)Tj -/TT2 1 Tf -2.7778 0 TD -0.258 Tw -[(: Chapter 4 is organized to correspond to the original)]TJ -ET -570 715.98 0.99 -18.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 689.2 Tm -0.262 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.5299 0 TD -[(, and explains changes that have)]TJ -ET -570 696.98 0.99 -11.99 re -f -BT -10 0 0 10 258 677.2 Tm -0.17 Tw -[(occurred in Interlisp-D with the Lyric and Medley releases. To)]TJ -ET -570 684.98 0.99 -11.99 re -f -BT -10 0 0 10 258 665.2 Tm -0.277 Tw -(make it easy to use this chapter with the)Tj -/TT6 1 Tf -20.0026 0 TD -[( IRM,)]TJ -/TT2 1 Tf -2.6657 0 TD -[( information is)]TJ -ET -570 672.98 0.99 -11.99 re -f -BT -10 0 0 10 258 653.2 Tm -0.318 Tw -(organized by )Tj -/TT6 1 Tf -7.2357 0 TD -[(IRM )]TJ -/TT2 1 Tf -3.6205 0 TD -[(volume and section numbers. Section)]TJ -ET -570 660.98 0.99 -11.99 re -f -BT -10 0 0 10 258 641.2 Tm -0 Tw -(headings from the)Tj -/TT6 1 Tf -8.0049 0 TD -( IRM)Tj -/TT2 1 Tf -2.1108 0 TD -( are maintained to aid in cross-referencing.)Tj -ET -570 648.98 0.99 -11.99 re -f -BT -10 0 0 10 258 622.2 Tm -0.297 Tw -(Lyric information as well as Medley release enhancements are)Tj -ET -570 636.98 0.99 -18.99 re -f -BT -10 0 0 10 258 610.2 Tm -0.054 Tw -[(included. Medley additions are indicated with revision bars in the)]TJ -ET -570 617.98 0.99 -11.99 re -f -BT -10 0 0 10 258 598.2 Tm -0 Tw -(right margin. )Tj -ET -570 605.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -14 0 0 14 258 552.08 Tm -(VOLUME ILANGUAGE )Tj -/TT2 1 Tf -10 0 0 10 423.6689 552.08 Tm -( )Tj -ET -2 w -54.01 497.99 m -558.01 497.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 486.08 Tm -(Chapter 3 Lists)Tj -ET -1 w -54.01 482.49 m -558.01 482.49 l -S -BT -12 0 0 12 54 444.64 Tm -(Section 3.2 Building Lists From Left To Right)Tj -ET -54.01 441.49 m -558.01 441.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 419.2 Tm -(\(I:3.7\))Tj -/TT2 1 Tf -0 -1.7 TD -0.324 Tw -(The functions)Tj -/TT4 1 Tf -6.3274 0 TD -[( DOCOLLECT )]TJ -/TT2 1 Tf -7.4254 0 TD -0 Tw -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.324 Tw -[( ENDCOLLECT )]TJ -/TT2 1 Tf -8.0365 0 TD -(are no longer)Tj --23.4578 -1.2 TD -0 Tw -(supported.)Tj -/TT8 1 Tf -T* -(\(I:3.8\))Tj -/TT2 1 Tf -0 -1.7 TD -0.189 Tw -(The description of the)Tj -/TT4 1 Tf -10.1837 0 TD -0.1885 Tw -[( ADDTOSCRATCHLIST )]TJ -/TT2 1 Tf -11.5435 0 TD -0.189 Tw -(function has been)Tj --21.7272 -1.2 TD -0 Tw -(revised to read:)Tj -/TT4 1 Tf --13.2 -1.9 TD -(\(ADDTOSCRATCHLIST)Tj -/TT2 1 Tf -10.9434 0 TD -( )Tj -/TT6 1 Tf -0.5557 0 TD -(VALUE\))Tj -/TT2 1 Tf -27.032 0 TD -( [Function])Tj -ET -126.01 327.49 m -558.01 327.49 l -S -BT -10 0 0 10 258 312.2 Tm -0.11 Tw -(For use inside a)Tj -/TT4 1 Tf -7.4447 0 TD -0.1094 Tw -[( SCRATCHLIST )]TJ -/TT2 1 Tf -7.8303 0 TD -0 Tw -(form. )Tj -/TT6 1 Tf -2.6657 0 TD -(VALUE )Tj -/TT2 1 Tf -3.6671 0 TD -0.11 Tw -(is added on to the)Tj --21.6078 -1.2 TD -0.27 Tw -(end of the value being collected by )Tj -/TT4 1 Tf -17.5677 0 TD -0 Tw -(SCRATCHLIST.)Tj -/TT2 1 Tf -7.333 0 TD -0.27 Tw -[( When the)]TJ -/TT4 1 Tf --24.9007 -1.2 TD -0 Tw -(SCRATCHLIST)Tj -/TT2 1 Tf -7.0552 0 TD -0.014 Tw -[( returns, its value is a list containing all of the things)]TJ --7.0552 -1.2 TD -0 Tw -(that )Tj -/TT4 1 Tf -1.9458 0 TD -(ADDTOSCRATCHLIST)Tj -/TT2 1 Tf -10.6104 0 TD -( has added.)Tj -/TT4 1 Tf -12 0 0 12 54 248.64 Tm -(Section 3.10 Sorting Lists)Tj -ET -54.01 245.49 m -558.01 245.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 226.2 Tm -(\(I:3.17\))Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(SORT)Tj -/TT2 1 Tf -2.778 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DATE COMPAREFN)Tj -/TT2 1 Tf -9.334 0 TD -[(\))-25753.2([Function])]TJ -ET -126.01 204.49 m -558.01 204.49 l -S -BT -10 0 0 10 258 189.2 Tm -0.05 Tw -(There is no safe interrupt to )Tj -/TT4 1 Tf -12.8063 0 TD -0 Tw -(SORT)Tj -/TT2 1 Tf -2.7778 0 TD -0.05 Tw -(if you abort a call to )Tj -/TT4 1 Tf -10.2492 0 TD -0 Tw -(SORT)Tj -/TT2 1 Tf -2.7778 0 TD -0.05 Tw -[( by)]TJ -/TT6 1 Tf --28.6112 -1.2 TD -0 Tw -(any)Tj -/TT2 1 Tf -1.6123 0 TD -0.188 Tw -[( means the possibility exists for losing elements from the list)]TJ --1.6123 -1.2 TD -0 Tw -(being sorted.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 4415 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 6 Hash Arrays)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 702.2 Tm -(\(I:6.1\) )Tj -/TT2 1 Tf --13.2 -1.7 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(HASHARRAY)Tj -/TT6 1 Tf -13.75 0 TD -(MINKEYS OVERFLOW HASHBITSFN EQUIVFN RECLAIMABLE)Tj --7.483 -1 TD -(REHASH-THRESHOLD)Tj -/TT2 1 Tf -10.668 0 TD -[(\))-21208([Function])]TJ -ET -126.01 672.49 m -558.01 672.49 l -S -BT -10 0 0 10 258 657.2 Tm -0.419 Tw -(The function )Tj -/TT4 1 Tf -6.6193 0 TD -0 Tw -(HASHARRAY)Tj -/TT2 1 Tf -6.3892 0 TD -0.419 Tw -[( has two new optional arguments,)]TJ -/TT6 1 Tf --13.0084 -1.2 TD -0 Tw -(RECLAIMABLE)Tj -/TT2 1 Tf -7.0024 0 TD -0.073 Tw -[( and )]TJ -/TT6 1 Tf -2.3701 0 TD -0 Tw -(REHASH-THRESHOLD)Tj -/TT2 1 Tf -10.668 0 TD -0.073 Tw -[(. If )]TJ -/TT6 1 Tf -1.886 0 TD -0 Tw -(RECLAIMABLE)Tj -/TT2 1 Tf -7.0024 0 TD -0.073 Tw -[( is)]TJ --28.929 -1.2 TD -0.083 Tw -(true, then entries in the hash table are considered "reclaimable" in)Tj -T* -0.124 Tw -(the sense that the system is permitted to remove any key and its)Tj -T* -0.096 Tw -[(associated value from the hash table at any time. In practice, the)]TJ -T* -0.019 Tw -(contract is less severe: the system only removes keys when a hash)Tj -T* -0.165 Tw -(table fills and is about to be rehashed, and then it only removes)Tj -T* -0.05 Tw -(keys whose reference count is one, and to which there are thus no)Tj -T* -0.665 Tw -(pointers outstanding except possibly from the stack \(local)Tj -T* -0.312 Tw -[(variables\). This is useful for hash tables that serve to cache)]TJ -T* -0.033 Tw -(information about Lisp objects to avoid recomputation; for example,)Tj -T* -0.697 Tw -[(the system hash table CLISPARRAY is now reclaimable.)]TJ -T* -0.073 Tw -(Discarding keys keeps the table from necessarily needing to grow,)Tj -T* -0.132 Tw -(and potentially allows the storage consumed by both the key and)Tj -T* -0 Tw -(value to be reclaimed.)Tj -/TT4 1 Tf -12 0 0 12 54 461.64 Tm -(Section 6.1 Hash Overflow)Tj -ET -54.01 458.49 m -558.01 458.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 439.2 Tm -(\(I:6.3\) )Tj -/TT2 1 Tf -0 -1.7 TD -0.115 Tw -(You should note changes to the wording of two of the possibilites)Tj -0 -1.2 TD -0 Tw -(for the overflow method:)Tj -0 -1.9 TD -0.09 Tw -(The first sentence for )Tj -/TT4 1 Tf -10.0309 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.09 Tw -[( should read: The array is automatically)]TJ --11.6417 -1.2 TD -0 Tw -(enlarged by )Tj -/TT6 1 Tf -5.5039 0 TD -(at least)Tj -/TT2 1 Tf -3.2241 0 TD -( a factor of 1.5 every time it overflows.)Tj --8.728 -1.9 TD -0.023 Tw -[(The explanation for "a positive integer N" should read: The array is)]TJ -0 -1.2 TD -0 Tw -(enlarged to include )Tj -/TT6 1 Tf -8.7285 0 TD -(at least)Tj -/TT2 1 Tf -3.2241 0 TD -( N more slots than it currently has.)Tj -ET -2 w -54.01 292.99 m -558.01 292.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 281.08 Tm -(Chapter 7 Integer Arithmetic)Tj -ET -1 w -54.01 277.49 m -558.01 277.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 258.2 Tm -(\(I:7.5\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.508 Tw -(The variables)Tj -/TT4 1 Tf -6.5109 0 TD -[( MIN.INTEGER )]TJ -/TT2 1 Tf -8.1269 0 TD -0 Tw -(and )Tj -/TT4 1 Tf -2.4543 0 TD -(MAX.INTEGER )Tj -/TT2 1 Tf -7.7307 0 TD -0.508 Tw -(have been)Tj --24.8228 -1.2 TD -0.086 Tw -(removed from the )Tj -/TT6 1 Tf -8.3723 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.1779 0 TD -(. Therefore, calling)Tj -/TT4 1 Tf --21.5501 -1.2 TD -0 Tw -(\(MIN\) )Tj -/TT2 1 Tf -2.7768 0 TD -(and )Tj -/TT4 1 Tf -1.9463 0 TD --0.0001 Tc -(\(MAX\))Tj -/TT2 1 Tf -2.8879 0 TD -0 Tc -( is an error.)Tj --7.611 -1.9 TD -(\()Tj -/TT8 1 Tf -0.333 0 TD -(I:7.7)Tj -/TT2 1 Tf -2.001 0 TD -(\))Tj --15.534 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FIXR)Tj -/TT2 1 Tf -2.2778 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -(\))Tj -35.1982 0 TD -([Function])Tj -ET -126.01 174.49 m -558.01 174.49 l -S -BT -10 0 0 10 258 159.2 Tm -0.022 Tw -(When N is exactly half way between two integers, FIXR rounds it to)Tj -0 -1.2 TD -0.053 Tw -[(the even number. For example \(FIXR 1.5\) )]TJ -/TT9 1 Tf -19.4875 0 TD -0 Tw -<0089>Tj -/TT2 1 Tf -0.9868 0 TD -0.053 Tw -[( 2 and \(FIXR 2.5\) )]TJ -/TT9 1 Tf -8.5436 0 TD -0 Tw -<0089>Tj -/TT2 1 Tf --29.0179 -1.206 TD -(2.)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 13 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -15 0 obj -<< -/Length 4489 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 7.3 Logical Arithmetic Functions)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.332 Tw -(The function )Tj -/TT4 1 Tf -6.4452 0 TD -0 Tw -(INTEGERLENGTH)Tj -/TT2 1 Tf -8.5558 0 TD -0.332 Tw -[( does )]TJ -/TT6 1 Tf -3.3881 0 TD -0 Tw -(not)Tj -/TT2 1 Tf -1.3901 0 TD -0.332 Tw -[( coerce floating point)]TJ --19.7793 -1.2 TD -0.161 Tw -(numbers to integers; rather, it signals an error, "Arg not Integer".)Tj -T* -0 Tw -(\(This was true in Koto as well.\))Tj -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Section 7.5 Other Arithmetic Functions)Tj -ET -54.01 651.49 m -558.01 651.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 632.2 Tm -(\(I:7.13\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.054 Tw -(The algorithms for)Tj -/TT4 1 Tf -8.1666 0 TD -[( SIN)]TJ -/TT2 1 Tf -1.9984 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6097 0 TD -(COS)Tj -/TT2 1 Tf -2.1673 0 TD -0.054 Tw -[(, and other trigometric functions have)]TJ --12.942 -1.2 TD -0 Tw -(been tuned and are now accurate to at least six significant figures.)Tj -ET -2 w -54.01 545.99 m -558.01 545.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 532.08 Tm -[(Chapter 8)-530.6(Record Package)]TJ -ET -1 w -54.01 528.49 m -558.01 528.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 509.2 Tm -(\(I:8.11\))Tj -/TT2 1 Tf -0 -1.9 TD -0.247 Tw -(When using )Tj -/TT4 1 Tf -6.052 0 TD -0 Tw -(BLOCKRECORD)Tj -/TT2 1 Tf -7.8887 0 TD -0.247 Tw -(, it is an error to try to declare a)Tj -ET -570 504.98 0.99 -18.99 re -f -BT -10 0 0 10 258 478.2 Tm -0.177 Tw -[(record with a zero-length field. Previously, the system would go)]TJ -ET -570 485.98 0.99 -11.99 re -f -BT -10 0 0 10 258 466.2 Tm -0.175 Tw -[(into an infinite loop. In the Medley release, the system will now)]TJ -ET -570 473.98 0.99 -11.99 re -f -BT -10 0 0 10 258 454.2 Tm -0 Tw -(detect this and signal an error. )Tj -ET -570 461.98 0.99 -11.99 re -f -2 w -54.01 398.99 m -558.01 398.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 385.08 Tm -(Chapter 9 Conditionals and Iterative Statements)Tj -ET -1 w -54.01 381.49 m -558.01 381.49 l -S -BT -12 0 0 12 54 357.64 Tm -(Section 9.2 Equality Predicates)Tj -ET -54.01 354.49 m -558.01 354.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 335.2 Tm -(\(I:9.3\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(EQUALALL)Tj -/TT2 1 Tf -5.444 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(X Y)Tj -/TT2 1 Tf -1.6118 0 TD -[(\))-30809.3([Function])]TJ -ET -126.01 313.49 m -558.01 313.49 l -S -BT -10 0 0 10 258 298.2 Tm -(Add the following NOTE to the)Tj -/TT4 1 Tf -13.7295 0 TD -( EQUALALL )Tj -/TT2 1 Tf -5.9995 0 TD -(function:)Tj --19.729 -1.9 TD -0.403 Tw -[(Note:)-1209.9(In general,)]TJ -/TT4 1 Tf -8.7286 0 TD -[( EQUALALL)]TJ -/TT2 1 Tf -6.1247 0 TD -[( descends all the way into all)]TJ --11.2533 -1.2 TD -0.141 Tw -(datatypes, both those defined by the user and those built)Tj -T* -0.023 Tw -[(into the system. If you have a data structure with fonts and)]TJ -T* -0.183 Tw -(pointers to windows,)Tj -/TT4 1 Tf -9.4261 0 TD -[( EQUALALL )]TJ -/TT2 1 Tf -6.3655 0 TD -(will descend into those)Tj --15.7916 -1.2 TD -0.216 Tw -(also. If the data structures are circular, as windows are,)Tj -/TT4 1 Tf -T* -0 Tw -(EQUALALL)Tj -/TT2 1 Tf -5.4438 0 TD -( can cause a Stack Overflow error.)Tj -/TT4 1 Tf -12 0 0 12 54 191.64 Tm -(Section 9.8.3 Condition I.s. oprs)Tj -ET -54.01 188.49 m -558.01 188.49 l -S -BT -10 0 0 10 126 173.2 Tm -(UNTIL)Tj -/TT2 1 Tf -2.944 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -( \()Tj -/TT6 1 Tf -0.6108 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -[( a number\))-26806.5([I.S. Operator])]TJ -ET -126.01 170.49 m -558.01 170.49 l -S -BT -/TT4 1 Tf -10 0 0 10 126 155.2 Tm -(REPEATUNTIL)Tj -/TT2 1 Tf -7 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -( \()Tj -/TT6 1 Tf -0.6108 0 TD -(N)Tj -/TT2 1 Tf -0.7222 0 TD -[( a number\))-22750.5([I.S. Operator])]TJ -ET -126.01 152.49 m -558.01 152.49 l -S -BT -10 0 0 10 258 137.2 Tm -0.387 Tw -(These descriptions were included in the )Tj -/TT6 1 Tf -20.1653 0 TD -(Interlisp-D Reference)Tj --20.1653 -1.2 TD -0 Tw -(Manual)Tj -/TT2 1 Tf -3.2798 0 TD -0.758 Tw -[( in error and should be removed. )]TJ -/TT4 1 Tf -21.0723 0 TD -0 Tw -(UNTIL)Tj -/TT2 1 Tf -2.9438 0 TD -0.758 Tw -[( and)]TJ -/TT4 1 Tf --27.2959 -1.2 TD -0 Tw -(REPEATUNTIL)Tj -/TT2 1 Tf -7 0 TD -( work )Tj -/TT6 1 Tf -2.667 0 TD -(only)Tj -/TT2 1 Tf -1.8345 0 TD -( with predicate expressions, not numbers.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -18 0 obj -<< -/Length 4832 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 10 Function Definition, Manipulation , and Evaluation)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -12 0 0 12 54 697.64 Tm -(Section 10.2 Defining Functions)Tj -ET -54.01 694.49 m -558.01 694.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 675.2 Tm -(\(I:10.11\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.063 Tw -(In the definition of the)Tj -/TT4 1 Tf -9.8145 0 TD --0.0001 Tc -0.0631 Tw -[( MOVD )]TJ -/TT2 1 Tf -3.6813 0 TD -0 Tc -0.063 Tw -(function, the sentence ")Tj -/TT4 1 Tf -10.6065 0 TD -0 Tw -(COPYDEF)Tj -/TT2 1 Tf -4.8337 0 TD -0.063 Tw -[( is)]TJ --28.936 -1.2 TD -0.35 Tw -(a higher-level function that only moves expr definitions, but...")Tj -T* -0 Tw -(should be revised to read:)Tj -/TT4 1 Tf -0 -1.9 TD -(COPYDEF )Tj -/TT2 1 Tf -5.4378 0 TD -0.326 Tw -(is a higher-level function that not only moves expr)Tj --5.4378 -1.2 TD -0 Tw -(definitions, but also works for variables, records, etc.)Tj -/TT4 1 Tf -12 0 0 12 54 573.64 Tm -(Section 10.5 Functional Arguments)Tj -ET -54.01 570.49 m -558.01 570.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 551.2 Tm -(\(I:10.19\))Tj -/TT4 1 Tf -0 -1.9 TD --0.0001 Tc -(FUNARG )Tj -/TT2 1 Tf -4.7298 0 TD -0 Tc -0.175 Tw -(functionality \(non-)Tj -/TT4 1 Tf -8.0681 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.175 Tw -[( second argument to )]TJ -/TT4 1 Tf -10.0945 0 TD -0 Tw -(FUNCTION)Tj -/TT2 1 Tf -5.166 0 TD -(\))Tj --29.6693 -1.2 TD -0.065 Tw -[(has been withdrawn. Most of the uses for Interlisp )]TJ -/TT4 1 Tf -23.2169 0 TD -0 Tw -(FUNARG)Tj -/TT2 1 Tf -4.2773 0 TD -0.065 Tw -(s are)Tj --27.4942 -1.2 TD -0.29 Tw -(better written using the lexical closure functionality of Common)Tj -T* -0 Tw -(Lisp.)Tj -/TT4 1 Tf -12 0 0 12 54 468.64 Tm -(Section 10.6.2 Interpreting Macros)Tj -ET -54.01 465.49 m -558.01 465.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 450.2 Tm -1.869 Tw -(The variables )Tj -/TT4 1 Tf -10.018 0 TD -0 Tw -(SHOULDCOMPILEMACROATOMS)Tj -/TT2 1 Tf -16.166 0 TD -1.869 Tw -[( and)]TJ -/TT4 1 Tf --26.184 -1.2 TD -0 Tw -(UNSAFEMACROATOMS)Tj -/TT2 1 Tf -11.499 0 TD -( no longer exist. )Tj -ET -2 w -54.01 382.99 m -558.01 382.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 371.08 Tm -(Chapter 11 Variable Bindings and the Interlisp Stack)Tj -ET -1 w -54.01 367.49 m -558.01 367.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 348.2 Tm -(\(II:11.2\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.157 Tw -[(In Lisp there is a fixed amount of space allocated for the stack.)]TJ -0 -1.2 TD -0.325 Tw -(When this space is exhausted, the )Tj -/TT4 1 Tf -17.4588 0 TD -(STACK OVERFLOW)Tj -/TT2 1 Tf -9.8242 0 TD -[( error)]TJ --27.283 -1.2 TD -0.13 Tw -[(occurs. However, if the system waited until the stack were )]TJ -/TT6 1 Tf -27.6068 0 TD -0 Tw -(really)Tj -/TT2 1 Tf --27.6068 -1.2 TD -0.1 Tw -[(exhausted, there wouldnt be room to run the debugger. Thus, a)]TJ -T* -0.044 Tw -(portion of the stack space is reserved; when the stack intrudes into)Tj -T* -0.449 Tw -(the reserved area, it causes a stack overflow interrupt, and)Tj -T* -0 Tw -(subsequently a call to the debugger.)Tj -0 -1.9 TD -0.181 Tw -(In order not to get a )Tj -/TT4 1 Tf -10.0919 0 TD -(STACK OVERFLOW)Tj -/TT2 1 Tf -9.6805 0 TD -[( error while inside the)]TJ --19.7724 -1.2 TD -0.098 Tw -(debugger, this intrusion into the reserved area is only noted once.)Tj -T* -0.25 Tw -(If the reserved area is exhausted, then a "hard" stack overflow)Tj -T* -0.161 Tw -(occurs \(a 9319 MP halt\), from which the only recourse is a hard)Tj -T* -0.09 Tw -[(reset via STOP \(or Ctrl-D from TeleRaid\). Following a hard reset,)]TJ -T* -0.099 Tw -(the stack is cleared, stack overflow detection is reenabled, and all)Tj -T* -0 Tw -(processes are restarted.)Tj -0 -1.9 TD -0.125 Tw -(The implications of this are that you should not attempt any deep)Tj -0 -1.2 TD -0.097 Tw -(computations while inside the debugger for a stack overflow error,)Tj -T* -0.155 Tw -(and you should call )Tj -/TT4 1 Tf -9.4594 0 TD --0.0002 Tc -0 Tw -(\(HARDRESET\))Tj -/TT2 1 Tf -6.8867 0 TD -0 Tc -0.155 Tw -[( as soon as possible in order)]TJ --16.346 -1.2 TD -0.418 Tw -(that subsequent stack overflows can again be caught in the)Tj -T* -0.003 Tw -(debugger before they advance to the MP halt. In order to make this)Tj -T* -0.126 Tw -(more convenient, the system automatically calls )Tj -/TT4 1 Tf -22.2096 0 TD -0 Tw -(\(HARDRESET\))Tj -/TT2 1 Tf -6.8887 0 TD -0.126 Tw -[( if)]TJ --29.0983 -1.2 TD -0.099 Tw -(you exit the debugger via the )Tj -/TT4 1 Tf -13.7141 0 TD -0 Tw -(^)Tj -/TT2 1 Tf -0.584 0 TD -0.099 Tw -[( or )]TJ -/TT4 1 Tf -1.6428 0 TD -0 Tw -(OK)Tj -/TT2 1 Tf -1.5 0 TD -0.099 Tw -[( commands, or abort with a)]TJ --17.4409 -1.2 TD -0.368 Tw -[(Ctrl-D. The only way to exit the debugger without having a)]TJ -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -21 0 obj -<< -/Length 5830 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 258 730.2 Tm -(\(HARDRESET\))Tj -/TT2 1 Tf -6.8887 0 TD -0.01 Tw -[( occur is by using the )]TJ -/TT4 1 Tf -9.7314 0 TD -0 Tw -(RETURN)Tj -/TT2 1 Tf -4.1649 0 TD -0.01 Tw -[( command. You can)]TJ --20.785 -1.2 TD -0.173 Tw -(disable this feature by setting )Tj -/TT4 1 Tf -14.095 0 TD -0 Tw -(AUTOHARDRESETFLG)Tj -/TT2 1 Tf -11.0552 0 TD -0.172 Tw -[( to )]TJ -/TT4 1 Tf -1.7347 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.173 Tw -(, in)Tj --28.4957 -1.2 TD -0.382 Tw -(which case you must be sure to perform the )Tj -/TT4 1 Tf -23.1138 0 TD -0 Tw -(\(HARDRESET\))Tj -/TT2 1 Tf --23.1138 -1.2 TD -0.176 Tw -(yourself if you want the next stack overflow to be detected early)Tj -T* -0 Tw -(enough to enter the debugger.)Tj -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Section 11.2.1 Searching the Stack)Tj -ET -54.01 651.49 m -558.01 651.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 636.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(STKPOS)Tj -/TT2 1 Tf -4.1118 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FRAMENAME N POS OLDPOS)Tj -/TT2 1 Tf -14.2246 0 TD -[(\))-19528.7([Function])]TJ -ET -126.01 633.49 m -558.01 633.49 l -S -BT -10 0 0 10 258 614.2 Tm -0.004 Tw -(\(STKPOS STKPOS\) does not cause an error; it merely returns NIL.)Tj -0 -1.2 TD -0.036 Tw -[(\(This was true in Koto as well.\) It is still not permissible to create a)]TJ -T* -0.128 Tw -(pointer to the active frame; however, )Tj -/TT4 1 Tf -17.2206 0 TD -0 Tw -(STKPOS)Tj -/TT2 1 Tf -4.1114 0 TD -0.128 Tw -[( never attempts to,)]TJ --21.332 -1.2 TD -0.133 Tw -(as it starts searching for the specified frame by looking first at its)Tj -T* -0 Tw -(caller. )Tj -/TT4 1 Tf -12 0 0 12 54 538.64 Tm -(Section 11.2.2 Variable Bindings in Stack Frames)Tj -ET -54.01 535.49 m -558.01 535.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 516.2 Tm -(\(I:11.7\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(STKARG)Tj -/TT2 1 Tf -4.222 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(N POS)Tj -/TT2 1 Tf -3.1118 0 TD -[( \))-29253.5([Function])]TJ -ET -126.01 494.49 m -558.01 494.49 l -S -BT -10 0 0 10 126 479.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(STKNARGS)Tj -/TT2 1 Tf -5.611 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(POS)Tj -/TT2 1 Tf -2.1118 0 TD -[( \))-28864.5([Function])]TJ -ET -126.01 476.49 m -558.01 476.49 l -S -BT -10 0 0 10 258 461.2 Tm -0.416 Tw -(The functions )Tj -/TT4 1 Tf -7.1133 0 TD -0 Tw -(STKARG )Tj -/TT2 1 Tf -4.916 0 TD -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.416 Tw -[( STKNARGS)]TJ -/TT2 1 Tf -6.3052 0 TD -[( will now return the)]TJ --20.0029 -1.2 TD -0.091 Tw -(number of arguments supplied to a Lambda Nospread when there)Tj -T* -0 Tw -(is a break. The)Tj -/TT4 1 Tf -7.1699 0 TD -( ?= )Tj -/TT2 1 Tf -1.7505 0 TD -(command will show all the arguments.)Tj --22.1204 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(SETSTKARGNAME)Tj -/TT2 1 Tf -9.111 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(N POS NAME)Tj -/TT2 1 Tf -6.2788 0 TD -[(\))-22475.4([Function])]TJ -ET -126.01 415.49 m -558.01 415.49 l -S -BT -10 0 0 10 258 400.2 Tm -0.3 Tw -(The function )Tj -/TT4 1 Tf -6.3812 0 TD -0 Tw -(SETSTKARGNAME)Tj -/TT2 1 Tf -9.1113 0 TD -0.3 Tw -[( does not work for interpreted)]TJ --15.4926 -1.2 TD -0 Tw -(frames.)Tj -/TT4 1 Tf -12 0 0 12 54 360.64 Tm -(Section 11.2.5 Releasing and Reusing Stack Pointers)Tj -ET -54.01 357.49 m -558.01 357.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 342.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(CLEARSTK)Tj -/TT2 1 Tf -5.444 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FLG)Tj -/TT2 1 Tf -1.9448 0 TD -[(\))-30476.3([Function])]TJ -ET -126.01 339.49 m -558.01 339.49 l -S -BT -10 0 0 10 258 320.2 Tm -0.004 Tw -(\(CLEARSTK NIL\) is a no-opthe ability to clear all stack pointers is)Tj -0 -1.2 TD -0.475 Tw -(inconsistent with the modularity implicit in a multi-processing)Tj -T* -0 Tw -(environment.)Tj -/TT4 1 Tf --13.2 -1.9 TD -(CLEARSTKLST)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 274.49 m -558.01 274.49 l -S -BT -/TT4 1 Tf -10 0 0 10 126 259.2 Tm -(NOCLEARSTKLST)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 256.49 m -558.01 256.49 l -S -BT -10 0 0 10 258 237.2 Tm -0.443 Tw -(The variables CLEARSTKLST and NOCLEARSTKLST are no)Tj -0 -1.2 TD -0.322 Tw -[(longer used. \(More precisely, they are used only by the Old)]TJ -T* -0.339 Tw -(Interlisp Executive, which means that programs can no longer)Tj -T* -0 Tw -(depend on them.\))Tj -/TT4 1 Tf -12 0 0 12 54 177.64 Tm -(Section 11.2.7 Other Stack Functions)Tj -ET -54.01 174.49 m -558.01 174.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 155.2 Tm -(\(II:11.13\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.693 Tw -(In the )Tj -/TT4 1 Tf -4.1658 0 TD -0 Tw -(REALFRAMEP)Tj -/TT2 1 Tf -6.9442 0 TD -0.693 Tw -[( function, the )]TJ -/TT6 1 Tf -8.0829 0 TD -0 Tw -(INTERPFLG)Tj -/TT2 1 Tf -5.6118 0 TD -0.693 Tw -[( argument)]TJ --24.8047 -1.2 TD -0 Tw -(description has been corrected to read:)Tj -0 -1.9 TD -(If)Tj -/TT6 1 Tf -0.5557 0 TD -0.224 Tw -[( INTERPFLG=)]TJ -/TT4 1 Tf -6.6976 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.224 Tw -[( returns)]TJ -/TT6 1 Tf -3.6141 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.5018 0 TD -(T)Tj -/TT6 1 Tf -0.6108 0 TD -( )Tj -/TT2 1 Tf -0.5018 0 TD -(if)Tj -/TT6 1 Tf -0.5 0 TD -0.224 Tw -[( POS )]TJ -/TT2 1 Tf -3.1155 0 TD -[(is not a dummy frame. For)]TJ --16.7083 -1.2 TD -0.3 Tw -(example, if \()Tj -/TT4 1 Tf -6.0463 0 TD -0 Tw -(STKNAME)Tj -/TT6 1 Tf -4.9443 0 TD -0.3 Tw -[( POS)]TJ -/TT2 1 Tf -2.6896 0 TD -0 Tw -(\))Tj -/TT4 1 Tf -0.333 0 TD -(=COND)Tj -/TT2 1 Tf -3.5283 0 TD -0.3 Tw -(, \()Tj -/TT4 1 Tf -1.1887 0 TD -0 Tw -(REALFRAMEP)Tj -/TT2 1 Tf -6.9443 0 TD -( )Tj -/TT6 1 Tf -0.5778 0 TD -(POS)Tj -/TT2 1 Tf -2.1118 0 TD -0.3 Tw -(\) is)Tj -/TT4 1 Tf --28.3643 -1.2 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, but \()Tj -/TT4 1 Tf -2.5566 0 TD -(REALFRAMEP)Tj -/TT6 1 Tf -6.9443 0 TD -( POS )Tj -/TT4 1 Tf -2.6675 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(\) is )Tj -/TT4 1 Tf -1.6108 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -24 0 obj -<< -/Length 5828 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 12 Miscellaneous)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -12 0 0 12 54 697.64 Tm -(Section 12.2 Idle Mode)Tj -ET -54.01 694.49 m -558.01 694.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 675.2 Tm -0.464 Tw -(The following properties in )Tj -/TT4 1 Tf -13.8067 0 TD -0 Tw -(IDLE.PROFILE)Tj -/TT2 1 Tf -6.8883 0 TD -0.464 Tw -[( are new or have)]TJ --20.695 -1.2 TD -0.49 Tw -(meanings different from the documentation in the )Tj -/TT6 1 Tf -25.4427 0 TD -0 Tw -(Interlisp-D)Tj --25.4427 -1.2 TD -(Reference Manual)Tj -/TT2 1 Tf -8.1714 0 TD -(:)Tj -/TT4 1 Tf --19.7384 -1.9 TD -(ALLOWED.LOGINS)Tj -/TT2 1 Tf -11.567 0 TD -0.185 Tw -(The authentication aspects of this property have been separated)Tj -0 -1.329 TD -0.049 Tw -(into the )Tj -/TT4 1 Tf -3.6561 0 TD -0 Tw -(AUTHENTICATE)Tj -/TT2 1 Tf -7.7773 0 TD -0.049 Tw -[( property. The value of this property now)]TJ --11.4334 -1.2 TD -0.042 Tw -[(speaks specifically to who is allowed to exit idle mode: If the value)]TJ -T* -0 Tw -(is )Tj -/TT4 1 Tf -1.098 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.098 Tw -[( \(or any other non-list\), no login at all is required to exit Idle)]TJ --2.7088 -1.2 TD -0.295 Tw -[(mode. Otherwise, the value is a list composed of any of the)]TJ -T* -0 Tw -(following:)Tj -/TT4 1 Tf --2.789 -1.9 TD -(*)Tj -/TT2 1 Tf -2.789 0 TD -0.036 Tw -[(Require login, but let anyone exit idle mode. This will overwrite the)]TJ -0 -1.2 TD -0 Tw -(previous users name and password each time idle mode is exited.)Tj -/TT4 1 Tf --3.011 -1.9 TD -(T)Tj -/TT2 1 Tf -3.011 0 TD -0.21 Tw -(Let the previous user \(as determined by )Tj -/TT4 1 Tf -19.855 0 TD -0 Tw -(USERNAME)Tj -/TT2 1 Tf -5.7227 0 TD -0.21 Tw -(\) exit idle)Tj --25.5777 -1.2 TD -0 Tw -(mode. If the user name has not been set, this is equivalent to )Tj -/TT4 1 Tf -27.5718 0 TD -(*.)Tj -/TT2 1 Tf --35.6408 -1.9 TD -[(A user name)-2399.6(Let this specific user exit idle mode.)]TJ --0.612 -1.9 TD -0.283 Tw -[(A )283(group )283(name)-2399.3(Allow any members of this group \(an NS Clearinghouse group)]TJ -8.681 -1.2 TD -0 Tw -(name\) to exit idle mode.)Tj -0 -1.9 TD -0.222 Tw -(The initial value for )Tj -/TT4 1 Tf -9.5589 0 TD -0 Tw -(ALLOWED.LOGINS)Tj -/TT2 1 Tf -9.166 0 TD -0.222 Tw -[( is )]TJ -/TT4 1 Tf -1.7218 0 TD -(\(T *\))Tj -/TT2 1 Tf -2.1659 0 TD -(, i.e., anyone is)Tj --22.6126 -1.2 TD -0 Tw -(allowed to exit idle mode.)Tj -/TT4 1 Tf --10.177 -1.9 TD -(AUTHENTICATE)Tj -/TT2 1 Tf -10.177 0 TD -0.116 Tw -(The value of this property determines what mechanism is used to)Tj -0 -1.2 TD -0.468 Tw -[(check passwords. If )]TJ -/TT4 1 Tf -11.2089 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.468 Tw -(, use the NS authentication protocol)Tj --11.8198 -1.2 TD -0.151 Tw -(\(requires the presence of an NS Authentication server accessible)Tj -T* -0.073 Tw -[(via the network\). If )]TJ -/TT4 1 Tf -9.0906 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.073 Tw -(, do not check the password at allaccept)Tj --10.7014 -1.2 TD -1.145 Tw -[(any password. This is only particularly useful if)]TJ -/TT4 1 Tf -T* -0 Tw -(ALLOWED.LOGINS)Tj -/TT2 1 Tf -9.167 0 TD -( contains )Tj -/TT4 1 Tf -4.2803 0 TD -(*.)Tj -/TT2 1 Tf --13.4473 -1.9 TD -(The initial value of )Tj -/TT4 1 Tf -8.3379 0 TD -(AUTHENTICATE)Tj -/TT2 1 Tf -7.7773 0 TD -( is )Tj -/TT4 1 Tf -1.2778 0 TD -(T)Tj -/TT2 1 Tf -0.6108 0 TD -(.)Tj -/TT4 1 Tf --24.5709 -1.9 TD -(FORGET)Tj -/TT2 1 Tf -6.567 0 TD -0.226 Tw -(If this is the symbol )Tj -/TT4 1 Tf -9.9108 0 TD -0 Tw -(FIRST)Tj -/TT2 1 Tf -2.8887 0 TD -0.226 Tw -(, the users password will be erased)Tj --12.7994 -1.2 TD -0.21 Tw -[(when idle mode is entered. Otherwise, this property is relevant)]TJ -T* -0.097 Tw -(only when )Tj -/TT4 1 Tf -4.9748 0 TD -0 Tw -(ALLOWED.LOGINS)Tj -/TT2 1 Tf -9.166 0 TD -0.097 Tw -[( is )]TJ -/TT4 1 Tf -1.4718 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.097 Tw -[( \(if )]TJ -/TT4 1 Tf -1.5827 0 TD -0 Tw -(ALLOWED.LOGINS)Tj -/TT2 1 Tf -9.166 0 TD -0.097 Tw -[( is a)]TJ --27.9721 -1.2 TD -0.033 Tw -(list, then some sort of login is required, which will have the effect of)Tj -T* -0.301 Tw -(erasing any previous login\): If )Tj -/TT4 1 Tf -14.8453 0 TD -0 Tw -(FORGET)Tj -/TT2 1 Tf -4.1665 0 TD -0.301 Tw -[( is non-)]TJ -/TT4 1 Tf -3.8813 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.301 Tw -(, the users)Tj --24.504 -1.2 TD -0.029 Tw -[(password will be erased when idle mode is exited. Initial value is )]TJ -/TT4 1 Tf -29.3916 0 TD -0 Tw -(T)Tj -/TT2 1 Tf --29.3916 -1.2 TD -(\(erase password on exit\).)Tj -0 -1.9 TD -0.321 Tw -[(Note:)-609.9(If the password is erased on )]TJ -/TT6 1 Tf -17.7107 0 TD -0 Tw -(entry)Tj -/TT2 1 Tf -2.2231 0 TD -0.321 Tw -[( to Idle mode \(value)]TJ -/TT4 1 Tf --16.9338 -1.2 TD -0 Tw -(FIRST)Tj -/TT2 1 Tf -2.8887 0 TD -0.048 Tw -(\), any program left running when idle mode is entered)Tj --2.8887 -1.2 TD -0.122 Tw -(may fail if it tries doing anything requiring passwords \(such)Tj -T* -0 Tw -(as accessing file servers\).)Tj -/TT4 1 Tf --13.345 -1.9 TD -(LOGIN.TIMEOUT)Tj -/TT2 1 Tf -10.345 0 TD -0.029 Tw -(Value is a number indicating how many seconds Idles prompt for a)Tj -0 -1.2 TD -0.014 Tw -(login should remain up before timing it out and resuming Idle mode.)Tj -T* -0.012 Tw -[(Initial value is 30. This feature avoids the problem of having an Idle)]TJ -T* -0.099 Tw -(machine "freeze up" indefinitely \(stop running the idle pattern\) just)Tj -T* -0 Tw -(because someone brushed against the keyboard.)Tj -/TT4 1 Tf --8.512 -1.9 TD -(RESETVARS)Tj -/TT2 1 Tf -8.512 0 TD -0.251 Tw -(This property is no longer used; rather, the value of the global)Tj -0 -1.2 TD -0 Tw -(variable )Tj -/TT4 1 Tf -3.7798 0 TD -(IDLE.RESETVARS)Tj -/TT2 1 Tf -8.668 0 TD --0.0002 Tw -( is used instead.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 5249 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 95.09 730.2 Tm -(SUSPEND.PROCESS.NAMES)Tj -/TT2 1 Tf -16.291 0 TD -0.251 Tw -(This property is no longer used; rather, the value of the global)Tj -0 -1.2 TD -0 Tw -(variable )Tj -/TT4 1 Tf -3.7798 0 TD -(IDLE.SUSPEND.PROCESS.NAMES)Tj -/TT2 1 Tf -16.4462 0 TD -( is used instead.)Tj -/TT4 1 Tf -12 0 0 12 54 690.64 Tm -(Section 12.3 Saving Virtual Memory State)Tj -ET -54.01 687.49 m -558.01 687.49 l -S -BT -10 0 0 10 126 672.2 Tm -(AROUNDEXITFNS)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 669.49 m -558.01 669.49 l -S -BT -10 0 0 10 258 654.2 Tm -0.015 Tw -(This variable provides a way to "advise" the system on cleanup and)Tj -0 -1.2 TD -0.573 Tw -(restoration activities to perform around )Tj -/TT4 1 Tf -20.2048 0 TD -0 Tw -(LOGOUT)Tj -/TT2 1 Tf -4.2773 0 TD -(, )Tj -/TT4 1 Tf -1.1287 0 TD -(SYSOUT)Tj -/TT2 1 Tf -4.1132 0 TD -(,)Tj -/TT4 1 Tf --29.724 -1.2 TD -(MAKESYS)Tj -/TT2 1 Tf -4.945 0 TD -0.626 Tw -[( and )]TJ -/TT4 1 Tf -3.4761 0 TD -0 Tw -(SAVEVM)Tj -/TT2 1 Tf -4.2229 0 TD -0.626 Tw -(; it subsumes the functionality of)Tj -/TT4 1 Tf --12.644 -1.2 TD -0 Tw -(BEFORESYSOUTFORMS)Tj -/TT2 1 Tf -11.8896 0 TD -(, )Tj -/TT4 1 Tf -1.1937 0 TD -(AFTERLOGOUTFORMS)Tj -/TT2 1 Tf -11.2227 0 TD -0.638 Tw -[(, etc. Its)]TJ --24.306 -1.2 TD -0.047 Tw -(value is a list of functions \(names\) to call around every "exit" of the)Tj -T* -0.299 Tw -[(system. Each function is called with one argument, a symbol)]TJ -T* -0 Tw -(indicating which particular event is occurring:)Tj -/TT4 1 Tf --10.845 -1.9 TD -(BEFORELOGOUT)Tj -/TT2 1 Tf -10.845 0 TD -0.161 Tw -(The system is about to perform a )Tj -/TT4 1 Tf -16.022 0 TD -0 Tw -(LOGOUT)Tj -/TT2 1 Tf -4.2773 0 TD -0.161 Tw -[(. The event function)]TJ --20.2994 -1.2 TD -0.003 Tw -(might want to save state, notify a network connection that it is about)Tj -T* -0 Tw -(to go away, etc.)Tj -/TT4 1 Tf --10.679 -1.2 TD -(BEFORESYSOUT)Tj --0.833 -1.2 TD -(BEFOREMAKESYS)Tj -0.722 -1.2 TD -(BEFORESAVEVM)Tj -/TT2 1 Tf -10.79 0 TD -0.45 Tw -(The system is about to perform a )Tj -/TT4 1 Tf -18.045 0 TD -0 Tw -(SYSOUT)Tj -/TT2 1 Tf -4.1118 0 TD -(, )Tj -/TT4 1 Tf -1.0057 0 TD -(MAKESYS)Tj -/TT2 1 Tf -4.9453 0 TD -0.45 Tw -(, or)Tj -/TT4 1 Tf --28.1078 -1.2 TD -0 Tw -(SAVEVM)Tj -/TT2 1 Tf -4.2231 0 TD -0.38 Tw -[(. Often these three events are treated equivalently;)]TJ --4.2231 -1.2 TD -0.116 Tw -[(however, sometimes the distinction is interesting. For example, a)]TJ -T* -0.122 Tw -(program might want to perform a much more extensive tidying-up)Tj -T* -0 Tw -(before )Tj -/TT4 1 Tf -3.1133 0 TD -(MAKESYS)Tj -/TT2 1 Tf -4.9453 0 TD -( than if it is merely doing a routine )Tj -/TT4 1 Tf -15.23 0 TD -(SAVEVM)Tj -/TT2 1 Tf -4.2231 0 TD -(.)Tj -/TT4 1 Tf --37.5227 -3.6 TD -(AFTERLOGOUT)Tj -0.166 -1.2 TD -(AFTERSYSOUT)Tj --0.833 -1.2 TD -(AFTERMAKESYS)Tj -0.722 -1.2 TD -(AFTERSAVEVM)Tj -/TT2 1 Tf -9.956 0 TD -0.115 Tw -(The system is starting up a virtual memory image that was saved)Tj -0 -1.2 TD -0.24 Tw -(by performing a )Tj -/TT4 1 Tf -7.9456 0 TD -0 Tw -(LOGOUT)Tj -/TT2 1 Tf -4.2773 0 TD -(, )Tj -/TT4 1 Tf -0.7957 0 TD -(SYSOUT)Tj -/TT2 1 Tf -4.1118 0 TD -0.24 Tw -[(, etc. Ordinarily, the event)]TJ --17.1304 -1.2 TD -0.049 Tw -(function should treat all of these the samein all four cases, some)Tj -T* -0.099 Tw -(arbitrary amount of time has passed, remote files may have come)Tj -T* -0.064 Tw -(and gone, a different user may be logged in, or the virtual memory)Tj -T* -0 Tw -(image might even be running on a different workstation.)Tj -/TT4 1 Tf --11.345 -1.2 TD -(AFTERDOSYSOUT)Tj --0.833 -1.2 TD -(AFTERDOMAKESYS)Tj -0.722 -1.2 TD -(AFTERDOSAVEVM)Tj -/TT2 1 Tf -11.456 0 TD -0.413 Tw -(The system is continuing in the same virtual memory image)Tj -0 -1.2 TD -0.318 Tw -(following a )Tj -/TT4 1 Tf -5.6389 0 TD -0 Tw -(SYSOUT)Tj -/TT2 1 Tf -4.1118 0 TD -(, )Tj -/TT4 1 Tf -0.8737 0 TD -(MAKESYS)Tj -/TT2 1 Tf -4.9453 0 TD -0.318 Tw -(, or )Tj -/TT4 1 Tf -2.3587 0 TD -0 Tw -(SAVEVM)Tj -/TT2 1 Tf -4.2231 0 TD -0.318 Tw -[( \(as opposed to)]TJ --22.1515 -1.2 TD -0.215 Tw -[(having just booted the same virtual memory image\). Ordinarily,)]TJ -T* -0.252 Tw -(these events are uninteresting; they exist solely so that actions)Tj -T* -0.026 Tw -(taken by the )Tj -/TT4 1 Tf -5.8041 0 TD -0 Tw -(BEFORExxx)Tj -/TT2 1 Tf -5.8354 0 TD -0.026 Tw -[( events can be compensated for after the)]TJ --11.6395 -1.2 TD -0.087 Tw -[(event. For example, if the before event cleared a cache, the after)]TJ -T* -0.358 Tw -[(event might initiate refilling it. There is, of course, no event)]TJ -/TT4 1 Tf -T* -0 Tw -(AFTERDOLOGOUT)Tj -/TT2 1 Tf -9.1104 0 TD -(, as )Tj -/TT4 1 Tf -1.8896 0 TD -(LOGOUT)Tj -/TT2 1 Tf -4.2773 0 TD -( does not "continue".)Tj -/TT4 1 Tf -12 0 0 12 54 175.64 Tm -(Section 12.4 System Version Information)Tj -ET -54.01 172.49 m -558.01 172.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 153.2 Tm -(\(I:12.13\))Tj -/TT2 1 Tf -0 -1.9 TD -0.297 Tw -(In the description of the)Tj -/TT4 1 Tf -11.5835 0 TD -0.2967 Tw -[( MACHINETYPE )]TJ -/TT2 1 Tf -8.4276 0 TD -0.297 Tw -(function, add another)Tj --20.0112 -1.2 TD -0 Tw -(machine, the )Tj -/TT4 1 Tf -6.0034 0 TD -(DOVE )Tj -/TT2 1 Tf -3.1118 0 TD -(\(for the Xerox 1186\).)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -30 0 obj -<< -/Length 3504 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -14 0 0 14 258 727.08 Tm -(VOLUME IIENVIRONMENT)Tj -ET -2 w -54.01 672.99 m -558.01 672.99 l -S -BT -14 0 0 14 54 661.08 Tm -(Chapter 13 Interlisp Executive)Tj -ET -1 w -54.01 657.49 m -558.01 657.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 638.2 Tm -(\(I:23.37\))Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(READLINE)Tj -/TT2 1 Tf -5.111 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -[( \))-26920.2([Function])]TJ -ET -126.01 616.49 m -558.01 616.49 l -S -BT -10 0 0 10 258 601.2 Tm -(The )Tj -/TT6 1 Tf -2.001 0 TD -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.0059 0 TD -( states:)Tj --15.0068 -1.9 TD -0.104 Tw -(The description on p 13.37 of )Tj -/TT4 1 Tf -13.855 0 TD -0 Tw -(READLINE)Tj -/TT2 1 Tf -5.1113 0 TD -0.104 Tw -(s behavior when one or)Tj --18.9663 -1.2 TD -0.464 Tw -(more spaces precede the carriage return applies only when)Tj -/TT4 1 Tf -T* -0 Tw -(LISPXREADFN)Tj -/TT2 1 Tf -7.056 0 TD -0.055 Tw -[( is )]TJ -/TT4 1 Tf -1.3878 0 TD -0 Tw -(READ)Tj -/TT2 1 Tf -2.8335 0 TD -0.055 Tw -(. )Tj -/TT4 1 Tf -0.9435 0 TD -0 Tw -(LISPXREADFN)Tj -/TT2 1 Tf -7.0561 0 TD -0.055 Tw -[( is initially )]TJ -/TT4 1 Tf -4.7216 0 TD -0 Tw -(TTYINREAD)Tj -/TT2 1 Tf -5.7222 0 TD -(,)Tj --29.7208 -1.2 TD -0.004 Tw -(which ignores spaces before the carriage return, and thus will never)Tj -T* -0.037 Tw -[(prompt you with "..." for an additional line. Also, the new Executive)]TJ -T* -0.059 Tw -(does not use )Tj -/TT4 1 Tf -6.1814 0 TD -0 Tw -(READLINE)Tj -/TT2 1 Tf -5.1113 0 TD -0.059 Tw -[( at all, so you will never see this behavior)]TJ --11.2927 -1.2 TD -0 Tw -(in a new Executive, independent of the setting of )Tj -/TT4 1 Tf -21.7925 0 TD -(LISPXREADFN)Tj -/TT2 1 Tf -7.0562 0 TD -(.)Tj -ET -2 w -54.01 454.99 m -558.01 454.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 443.08 Tm -(Chapter 14 Errors and Breaks)Tj -ET -1 w -54.01 439.49 m -558.01 439.49 l -S -BT -12 0 0 12 54 415.64 Tm -(Section 14.5 Break Window Variables)Tj -ET -54.01 412.49 m -558.01 412.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 393.2 Tm -(\(II:14.15\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.507 Tw -(Setting the variable)Tj -/TT4 1 Tf -9.575 0 TD -[( BREAKREGIONSPEC)]TJ -/TT2 1 Tf -11.007 0 TD -[( to NIL no longer)]TJ --20.582 -1.2 TD -0 Tw -(creates problems if there is a subsequent break.)Tj -/TT4 1 Tf -12 0 0 12 54 334.64 Tm -(Section 14.8 Catching Errors)Tj -ET -54.01 331.49 m -558.01 331.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 312.2 Tm -(\(II:14.22\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.626 Tw -(The Nlambda functions)Tj -/TT4 1 Tf -11.5352 0 TD -[( ERSETQ)]TJ -/TT2 1 Tf -5.0148 0 TD -[( and)]TJ -/TT4 1 Tf -2.5723 0 TD -[( NLSETQ)]TJ -/TT2 1 Tf -4.9595 0 TD -0.6262 Tw -[( now allow)]TJ --24.0818 -1.2 TD -0 Tw -(evaluation of an arbitrary number of forms, rather than only one.)Tj -/TT8 1 Tf -0 -2.3 TD -(\(II:14.26\) )Tj -ET -570 276.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 239.2 Tm -0.027 Tw -(For Medley, the Interlisp interpreters handler for )Tj -/TT4 1 Tf -21.8096 0 TD -0 Tw -(RESETFORM)Tj -/TT2 1 Tf -6.2778 0 TD -0.027 Tw -[( has)]TJ -ET -570 253.98 0.99 -18.99 re -f -BT -10 0 0 10 258 227.2 Tm -0.455 Tw -(been fixed \(in Lyric, it worked only from the Common Lisp)Tj -ET -570 234.98 0.99 -11.99 re -f -BT -10 0 0 10 258 215.2 Tm -0 Tw -(interpreter, or compiled\) . )Tj -/TT11 1 Tf -8 0 0 8 372.4873 215.2 Tm -( )Tj -ET -570 222.98 0.99 -12.58 re -f -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -34 0 obj -<< -/Length 5401 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 17 File Package)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 702.2 Tm -[(Note:)-609.9(The File Package is now known as the File Manager.)]TJ -/TT4 1 Tf -12 0 0 12 54 674.64 Tm -(Section 17.8.1 Functions for Manipulating Typed Definitions)Tj -ET -54.01 671.49 m -558.01 671.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 652.2 Tm -(\(II:17.26\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(HASDEF)Tj -/TT2 1 Tf -4.111 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NAME TYPE SOURCE SPELLFLG)Tj -/TT2 1 Tf -15.6709 0 TD -[(\))-18083.3([Function])]TJ -ET -126.01 630.49 m -558.01 630.49 l -S -BT -10 0 0 10 258 615.2 Tm -(Clarification: )Tj -/TT4 1 Tf -5.9148 0 TD -(HASDEF)Tj -/TT2 1 Tf -4.1113 0 TD -0.135 Tw -[( for type FNS \(or NIL\) indicates that )]TJ -/TT6 1 Tf -17.0859 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf --27.112 -1.2 TD -0.125 Tw -(has an editable source definition, not that )Tj -/TT6 1 Tf -19.3877 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.125 Tw -[( is defined at all.)]TJ --22.2769 -1.2 TD -0.119 Tw -(Thus if )Tj -/TT6 1 Tf -3.5168 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.119 Tw -[( exists on a file for which you have loaded only the)]TJ --6.406 -1.2 TD -0 Tw -(compiled version but not the source, )Tj -/TT4 1 Tf -16.3423 0 TD -(HASDEF)Tj -/TT2 1 Tf -4.1113 0 TD -( returns )Tj -/TT4 1 Tf -3.668 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 551.64 Tm -(Section 17.8.2 Defining New File Package Types)Tj -ET -54.01 548.49 m -558.01 548.49 l -S -0.75 w -558 547.99 m -558 547.99 l -S -BT -/TT8 1 Tf -10 0 0 10 258 529.2 Tm -(\(II:17.31\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.041 Tw -(In the )Tj -/TT4 1 Tf -2.8618 0 TD -0 Tw -(WHENCHANGED)Tj -/TT2 1 Tf -8.1102 0 TD -0.041 Tw -[( File Package Type Property the )]TJ -/TT6 1 Tf -14.8085 0 TD -0 Tw -(REASON)Tj -/TT2 1 Tf --25.7805 -1.2 TD -0.075 Tw -(argument passed to )Tj -/TT4 1 Tf -9.3417 0 TD -0 Tw -(WHENCHANGED )Tj -/TT2 1 Tf -8.4637 0 TD -0.075 Tw -(no longer is )Tj -/TT4 1 Tf -5.6728 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.075 Tw -[( or)]TJ -/TT4 1 Tf -1.242 0 TD -[( NIL)]TJ -/TT2 1 Tf -1.9637 0 TD -[(. The)]TJ --27.2946 -1.2 TD -0 Tw -(Note has been revised as follows:)Tj -0 -1.9 TD -0.601 Tw -(Note: The )Tj -/TT6 1 Tf -5.8709 0 TD -0 Tw -(REASON )Tj -/TT2 1 Tf -5.102 0 TD -0.601 Tw -(argument passed to )Tj -/TT4 1 Tf -10.9197 0 TD -0 Tw -(WHENCHANGED)Tj -/TT2 1 Tf --21.8926 -1.2 TD -(functions is either )Tj -/TT4 1 Tf -8.0596 0 TD -(CHANGED )Tj -/TT2 1 Tf -5.3335 0 TD -(or)Tj -/TT4 1 Tf -0.8892 0 TD -( DEFINED)Tj -/TT2 1 Tf -4.667 0 TD -(.)Tj -/TT8 1 Tf --18.9492 -1.9 TD -(\(II:17.32\) )Tj -/TT2 1 Tf -T* -0.38 Tw -(The Nospread Function)Tj -/TT4 1 Tf -11.2102 0 TD -[( FILEPKGTYPE)]TJ -/TT2 1 Tf -7.6028 0 TD -[( returns a property list)]TJ --18.813 -1.2 TD -0 Tw -(rather than an alist.)Tj -/TT4 1 Tf -12 0 0 12 54 377.64 Tm -(Section 17.9.2 Variables)Tj -ET -570 400.98 0.99 -25.99 re -f -1 w -54.01 374.49 m -558.01 374.49 l -S -570 374.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 355.2 Tm -(\(II:17.36\) )Tj -ET -570 373.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 336.2 Tm -0.18 Tw -(In the Lyric release, )Tj -/TT4 1 Tf -9.7244 0 TD -0 Tw -(HORRIBLEVARS)Tj -/TT2 1 Tf -8.0005 0 TD -0.18 Tw -[( did not preserve common)]TJ -ET -570 350.98 0.99 -18.99 re -f -BT -10 0 0 10 258 324.2 Tm -0 Tw -(substructures across several variables. )Tj -ET -570 331.98 0.99 -11.99 re -f -BT -10 0 0 10 258 305.2 Tm -0.024 Tw -(In Lyric, you could not dump an )Tj -/TT4 1 Tf -14.342 0 TD -0 Tw -(UGLYVARS)Tj -/TT2 1 Tf -5.5562 0 TD -0.024 Tc -[( o)24(r)]TJ -/TT4 1 Tf -1.4928 0 TD -0 Tc -0.0242 Tw -[( HORRIBLEVARS)]TJ -ET -570 319.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 293.2 Tm -0.128 Tw -(whose printed representation required more than )Tj -/TT6 1 Tf -22.6699 0 TD -0 Tw -(ARRAY-TOTAL-)Tj -ET -570 300.98 0.99 -11.99 re -f -BT -10 0 0 10 258 281.2 Tm -(SIZE-LIMIT )Tj -/TT2 1 Tf -5.4072 0 TD -0.018 Tw -[(characters. This is no longer the case with the Medley)]TJ -ET -570 288.98 0.99 -11.99 re -f -BT -10 0 0 10 258 269.2 Tm -0 Tw -(release. )Tj -ET -570 276.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 229.64 Tm -(Section 17.9.8 Defining New File Package Commands)Tj -ET -54.01 226.49 m -558.01 226.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 207.2 Tm -(\(II:17.47\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.006 Tw -(The Nospread Function )Tj -/TT4 1 Tf -10.746 0 TD -0 Tw -(FILEPKGCOM)Tj -/TT2 1 Tf -6.666 0 TD -0.006 Tw -[( returns a property list rather)]TJ --17.412 -1.2 TD -0 Tw -(than an alist.)Tj -/TT4 1 Tf -12 0 0 12 54 148.64 Tm -(Section 17.11 Symbolic File Format)Tj -ET -54.01 145.49 m -558.01 145.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 130.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(PRETTYDEF)Tj -/TT6 1 Tf -6.267 0 TD -(PRTTYFNS PRTTYFILE PRTTYCOMS REPRINTFNS SOURCEFILE)Tj -0 -1 TD -(CHANGES)Tj -/TT2 1 Tf -4.9453 0 TD -[(\))-26930.7([Function])]TJ -ET -126.01 117.49 m -558.01 117.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 102.2 Tm -(PRETTYDEF)Tj -/TT2 1 Tf -5.9448 0 TD -( accepts only a symbol for its file argument.)Tj --5.9448 -1.9 TD -0.077 Tw -[(In Lyric and Medley, SYSPRETTYFLG is ignored in Interlisp exec)]TJ -ET -570 97.98 0.99 -18.99 re -f -BT -10 0 0 10 258 71.2 Tm -0 Tw -(and does not pretty-print values in the executive. )Tj -ET -570 78.98 0.99 -11.99 re -f -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -37 0 obj -<< -/Length 4879 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 126 730.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(LISPSOURCEFILEP)Tj -/TT2 1 Tf -9.335 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FILE)Tj -/TT2 1 Tf -2.1118 0 TD -[(\))-26418.3([Function])]TJ -ET -126.01 727.49 m -558.01 727.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 712.2 Tm -(LISPSOURCEFILEP)Tj -/TT2 1 Tf -9.3345 0 TD -0.117 Tw -[( is more specifically defined to mean that the)]TJ --9.3345 -1.2 TD -0 Tw -(file is in File Manager format )Tj -/TT6 1 Tf -12.8379 0 TD -(and)Tj -/TT2 1 Tf -1.6685 0 TD -( has a file map.)Tj -/TT4 1 Tf -12 0 0 12 54 672.64 Tm -(Section 17.11.3 File Maps)Tj -ET -54.01 669.49 m -558.01 669.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 654.2 Tm -0.206 Tw -[(File maps are no longer stored on the FILEMAP property. See)]TJ -/TT4 1 Tf -0 -1.2 TD -0 Tw -(GET-ENVIRONMENT-AND-FILEMAP )Tj -/TT2 1 Tf -18.1089 0 TD -0.832 Tw -(in the section entitled)Tj --18.1089 -1.2 TD -0 Tw -("Programmers Interface to Reader Environments")Tj -/TT4 1 Tf -22.4966 0 TD -( )Tj -/TT2 1 Tf -0.2778 0 TD -(in chapter 3. )Tj -ET -2 w -54.01 574.99 m -558.01 574.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 563.08 Tm -(Chapter 18 Compiler)Tj -ET -1 w -54.01 559.49 m -558.01 559.49 l -S -BT -10 0 0 10 258 544.2 Tm -(CAUTION: )Tj -/TT2 1 Tf -5.266 0 TD -0.1 Tw -[( Files compiled in Medley cannot be loaded back into)]TJ -ET -570 558.98 0.99 -18.99 re -f -BT -10 0 0 10 258 532.2 Tm -0.105 Tw -[(Lyric. Medley-compiled .LCOM and .DFASL files will produce an)]TJ -ET -570 539.98 0.99 -11.99 re -f -BT -10 0 0 10 258 520.2 Tm -0.0002 Tc -0.0046 Tw -(error message when loaded into Lyric. \(Lyric-compiled .LCOM and)Tj -ET -570 527.98 0.99 -11.99 re -f -BT -10 0 0 10 258 508.2 Tm -0 Tc -0.1 Tw -[(.DFASL files can be loaded and run in Medley. \) If you need to)]TJ -ET -570 515.98 0.99 -11.99 re -f -BT -10 0 0 10 258 496.2 Tm -0.183 Tw -(run a Medley file in Lyric, load the source file and use the Lyric)Tj -ET -570 503.98 0.99 -11.99 re -f -BT -10 0 0 10 258 484.2 Tm -0 Tw -(compiler. )Tj -ET -570 491.98 0.99 -11.99 re -f -BT -10 0 0 10 258 461.2 Tm -0.241 Tw -(Note that you should not attempt to compile a file containing a)Tj -0 -1.2 TD -0.085 Tw -(function named )Tj -/TT4 1 Tf -7.2857 0 TD -0 Tw -(STOP)Tj -/TT2 1 Tf -2.7223 0 TD -0.085 Tw -[(. The format of the .LCOM file produced by)]TJ -/TT4 1 Tf --10.008 -1.2 TD -0 Tw -(BCOMPL)Tj -/TT2 1 Tf -4.333 0 TD -0.346 Tw -[( or )]TJ -/TT4 1 Tf -2.1368 0 TD -0 Tw -(TCOMPL)Tj -/TT2 1 Tf -4.2222 0 TD -0.346 Tw -[( admits an unfortunate ambiguity in the)]TJ --10.692 -1.2 TD -0.216 Tw -(treatment of the symbol )Tj -/TT4 1 Tf -11.591 0 TD -0 Tw -(STOP)Tj -/TT2 1 Tf -2.7227 0 TD -()Tj -/TT4 1 Tf -1 0 TD -(LOAD)Tj -/TT2 1 Tf -2.833 0 TD -0.216 Tw -[( prefers to treat it as the)]TJ --18.1467 -1.2 TD -0.292 Tw -(token signifying the end of the file, rather than as starting the)Tj -T* -0 Tw -(definition of the function )Tj -/TT4 1 Tf -10.8408 0 TD -(STOP)Tj -/TT2 1 Tf -2.7227 0 TD -(.)Tj --13.5635 -1.9 TD -0.327 Tw -(There is no such restriction for the .DFASL files produced by)Tj -/TT4 1 Tf -0 -1.2 TD -0.0001 Tc -0 Tw -(CL:COMPILE-FILE.)Tj -ET -2 w -54.01 314.99 m -558.01 314.99 l -S -BT -14 0 0 14 54 301.08 Tm -0 Tc -(Chapter 21 CLISP)Tj -ET -1 w -54.01 297.49 m -558.01 297.49 l -S -BT -12 0 0 12 54 273.64 Tm -(Section 21.8 Miscellaneous Functions and Variables)Tj -ET -54.01 270.49 m -558.01 270.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 255.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(CLEARCLISPARRAY)Tj -/TT6 1 Tf -9.944 0 TD -( NAME)Tj -/TT8 1 Tf -3.167 0 TD -( )Tj -/TT2 1 Tf -0.2778 0 TD -[( \))-22476.3([)]TJ -/TT6 1 Tf -25.365 0 TD -(Function)Tj -/TT2 1 Tf -3.8354 0 TD -(])Tj -ET -126.01 252.49 m -558.01 252.49 l -S -BT -10 0 0 10 258 237.2 Tm -0.242 Tw -(Macro and CLISP expansions are cached in CLISPARRAY, the)Tj -0 -1.2 TD -0.171 Tw -[(systems CLISP hash array. When anything changes that would)]TJ -T* -0.165 Tw -(invalidate an expansion, it needs to be removed from the cache.)Tj -T* -0.047 Tw -(CLEARCLISPARRAY removes from the CLISP hash array any key)Tj -T* -0.462 Tw -(whose CAR is )Tj -/TT6 1 Tf -7.9436 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.462 Tw -[(. The system does this automatically)]TJ --10.8328 -1.2 TD -0.129 Tw -(whenever you edit a clisp or macro form, or when you redefine a)Tj -T* -0.231 Tw -[(clisp word or macro definition. However, you may need to call)]TJ -T* -0.089 Tw -(CLEARCLISPARRAY explicitly if you change something in a more)Tj -T* -0.084 Tw -[(subtle way, e.g., you redefine a function used by a macro. If your)]TJ -T* -0.023 Tw -(change invalidates an unknown set of expansions, you might prefer)Tj -T* -0.903 Tw -(to take the performance penalty of calling \(CLRHASH)Tj -T* -0.076 Tw -(CLISPARRAY\) to invalidate the entire cache, just to make sure no)Tj -T* -0 Tw -(incorrect expansions are kept around.)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -40 0 obj -<< -/Length 3857 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm -(Chapter 22 Performance Issues)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -12 0 0 12 54 697.64 Tm -(Section 22.1 Storage Allocation and Garbage Collection)Tj -ET -54.01 694.49 m -558.01 694.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 675.2 Tm -0.202 Tw -(The following should be appended to the description of garbage)Tj -0 -1.2 TD -0 Tw -(collection in Interlisp-D:)Tj -0 -1.9 TD -0.276 Tw -(Another limitation of the reference-counting garbage collector is)Tj -0 -1.2 TD -0.11 Tw -(that the table in which reference counts are maintained is of fixed)Tj -T* -0.105 Tw -[(size. For typical Lisp objects that are pointed to from exactly one)]TJ -T* -0.091 Tw -(place \(e.g., the individual conses in a list\), no burden is placed on)Tj -T* -0.404 Tw -(this table, since objects whose reference count is 1 are not)Tj -T* -0.309 Tw -[(explicitly represented in the table. However, large, "rich" data)]TJ -T* -0.489 Tw -(structures, with many interconnections, backward links, cross)Tj -T* -0.06 Tw -(references, etc, can contribute many entries to the reference count)Tj -T* -0.074 Tw -[(table. For example, if you created a data structure that functioned)]TJ -T* -0.132 Tw -(as a doubly-linked list, such a structure would contribute an entry)Tj -T* -0 Tw -(\(reference count 2\) for each element.)Tj -0 -1.9 TD -0.115 Tw -(When the reference count table fills up, the garbage collector can)Tj -0 -1.2 TD -0.015 Tw -(no longer maintain consistent reference counts, so it stops doing so)Tj -T* -0.068 Tw -[(altogether. At this point, a window appears on the screen with the)]TJ -T* -0 Tw -(following message, and the debugger is entered:)Tj -2.4 -1.9 TD -(Internal garbage collector tables have overflowed, due)Tj -0 -1.2 TD -(to too many pointers with reference count greater than 1.)Tj -T* -(*** The garbage collector is now disabled. ***)Tj -T* -(Save your work and reload as soon as possible.)Tj --2.4 -1.9 TD -0.022 Tw -([This message is slightly misleading, in that it should say "count not)Tj -0 -1.2 TD -0.002 Tw -(equal to 1". In the current implementation, the garbage collection of)Tj -T* -0.093 Tw -(a large pointer array whose elements are not otherwise pointed to)Tj -T* -0.399 Tw -(can place a special burden on the table, as each elements)Tj -T* -0.076 Tw -(reference count simultaneously drops to zero and is thus added to)Tj -T* -0.059 Tw -(the reference count table for the short period before the element is)Tj -T* -0 Tw -(itself reclaimed.])Tj -0 -1.9 TD -0.579 Tw -(If you exit the debugger window \(e.g., with the RETURN)Tj -0 -1.2 TD -0.149 Tw -(command\), your computation can proceed; however, the garbage)Tj -T* -0.232 Tw -[(collector is no longer operating. Thus, your virtual memory will)]TJ -T* -0.283 Tw -(become cluttered with objects no longer accessible, and if you)Tj -T* -0.014 Tw -(continue for long enough in the same virtual memory image you will)Tj -T* -0.161 Tw -(eventually fill up the virtual memory backing store and grind to a)Tj -T* -0 Tw -(halt.)Tj -/TT4 1 Tf -12 0 0 12 54 204.64 Tm -(Section 22.5 Using Data Types Instead of Records)Tj -ET -54.01 201.49 m -558.01 201.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 182.2 Tm -(\(II:22.13\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.369 Tw -(The note in this section states that "pages for datatypes are)Tj -0 -1.2 TD -0 Tw -(allocated one page at a time." The note should read:)Tj -0 -1.9 TD -0.091 Tw -[(Space for datatypes is allocated two pages at a time. Thus, each)]TJ -0 -1.2 TD -0.079 Tw -(datatype for which any instances at all have been allocated has at)Tj -T* -0 Tw -(least two pages assigned to it.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -45 0 obj -<< -/Length 5437 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 723.08 Tm -(Chapter 23 Processes)Tj -ET -1 w -54.01 719.49 m -558.01 719.49 l -S -BT -12 0 0 12 54 695.64 Tm -(Section 23.1 Creating and Destroying Processes)Tj -ET -570 718.98 0.99 -25.99 re -f -54.01 692.49 m -558.01 692.49 l -S -570 692.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 673.2 Tm -(\(III:23.2\) )Tj -ET -570 691.98 0.99 -22.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 654.2 Tm -(ADD.PROCESS )Tj -/TT2 1 Tf -7.6728 0 TD -0.061 Tw -(no longer coerces the process name to a symbol.)Tj -ET -570 668.98 0.99 -18.99 re -f -BT -10 0 0 10 258 642.2 Tm -0.332 Tw -(Rather, process names are treated as case-insensitive strings.)Tj -ET -570 649.98 0.99 -11.99 re -f -BT -10 0 0 10 258 630.2 Tm -0.226 Tw -(Thus, you can use strings for process names, and when typing)Tj -ET -570 637.98 0.99 -11.99 re -f -BT -10 0 0 10 258 618.2 Tm -0.132 Tw -(process commands to an exec, you need not worry about getting)Tj -ET -570 625.98 0.99 -11.99 re -f -BT -10 0 0 10 258 606.2 Tm -0 Tw -(the alphabetic case correct. )Tj -ET -570 613.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 552.64 Tm -(Section 23.2 Process Control Constructs)Tj -ET -570 575.98 0.99 -25.99 re -f -54.01 549.49 m -558.01 549.49 l -S -570 549.98 0.99 -12.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 522.2 Tm -1.193 Tw -(The Medley release fixes the )Tj -/TT4 1 Tf -19.027 0 TD -0 Tw -(PROCESS.EVAL)Tj -/TT2 1 Tf -7.834 0 TD -1.193 Tw -[( and)]TJ -ET -570 536.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 510.2 Tm -0 Tw -(PROCESS.APPLY)Tj -/TT2 1 Tf -8.502 0 TD -0.869 Tw -[( functions. In )]TJ -/TT4 1 Tf -10.8484 0 TD -0 Tw -(PROCESS.EVAL)Tj -/TT2 1 Tf -7.835 0 TD -0.869 Tw -[( and)]TJ -ET -570 517.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 498.2 Tm -0 Tw -(PROCESS.APPLY)Tj -/TT2 1 Tf -8.502 0 TD -0.193 Tw -(, with argument )Tj -/TT6 1 Tf -7.6933 0 TD -0 Tw -(WAITFORRESULT)Tj -/TT2 1 Tf -8.5557 0 TD -0.193 Tc -( =)Tj -/TT4 1 Tf -1.0548 0 TD -( T)Tj -/TT2 1 Tf -1.0817 0 TD -0 Tc -0.193 Tw -(, if the)Tj -ET -570 505.98 0.99 -11.99 re -f -BT -10 0 0 10 258 486.2 Tm -0.132 Tw -(computation in the other process aborts \(or the process is killed\),)Tj -ET -570 493.98 0.99 -11.99 re -f -BT -10 0 0 10 258 474.2 Tm -0 Tw -(then )Tj -/TT4 1 Tf -2.3781 0 TD -(PROCESS.EVAL)Tj -/TT2 1 Tf -7.835 0 TD -0.154 Tw -[( and)]TJ -/TT4 1 Tf -2.1003 0 TD -[( PROCESS.APPLY)]TJ -/TT2 1 Tf -8.9336 0 TD -[( return )]TJ -/TT4 1 Tf -3.476 0 TD -0 Tw -(:ABORTED)Tj -ET -570 481.98 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 462.2 Tm -(instead)Tj -/TT11 1 Tf -8 0 0 8 290.2461 462.2 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 295.0468 462.2 Tm -(of hanging. )Tj -ET -570 469.98 0.99 -12.58 re -f -BT -/TT4 1 Tf -12 0 0 12 54 434.05 Tm -(Section 23.6 Typein and the TTY Process)Tj -ET -54.01 430.9 m -558.01 430.9 l -S -BT -10 0 0 10 126 411.61 Tm -(BACKGROUNDFNS)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 408.9 m -558.01 408.9 l -S -BT -10 0 0 10 258 393.61 Tm -0.091 Tw -[(A list of functions to call "in the background". The system runs a)]TJ -0 -1.2 TD -0.118 Tw -(process \(called "BACKGROUND"\) whose sole task is to call each)Tj -T* -0.11 Tw -(of the functions on the list )Tj -/TT4 1 Tf -12.2782 0 TD -0 Tw -(BACKGROUNDFNS)Tj -/TT2 1 Tf -9.333 0 TD -0.11 Tw -[( repeatedly. Each)]TJ --21.6112 -1.2 TD -0.05 Tw -[(element is the name of a function of no arguments. This is a good)]TJ -T* -0.093 Tw -(place to put cheap background tasks that only do something once)Tj -T* -0.235 Tw -(in a while and hence do not want to spend their own separate)Tj -T* -0.064 Tw -[(process on it. However, note that it is considered good citizenship)]TJ -T* -0.126 Tw -(for a background function with a time-consuming task to spawn a)Tj -T* -0.148 Tw -(separate process to do it, so that the other background functions)Tj -T* -0 Tw -(are not delayed.)Tj -/TT4 1 Tf --13.2 -2.3 TD -(TTYBACKGROUNDFNS)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 259.9 m -558.01 259.9 l -S -BT -10 0 0 10 258 244.61 Tm -0.277 Tw -(This list is like )Tj -/TT4 1 Tf -7.5533 0 TD -0 Tw -(BACKGROUNDFNS)Tj -/TT2 1 Tf -9.333 0 TD -0.277 Tw -(, but the functions are only)Tj --16.8863 -1.2 TD -0.114 Tw -[(called while in a tty input wait. That is, they always run in the tty)]TJ -T* -0.368 Tw -[(process, and only when the user is not actively typing. For)]TJ -T* -0.009 Tw -(example, the flashing caret is implemented by a function on this list.)Tj -T* -0.039 Tw -(Again, functions on this list should spend very little time \(much less)Tj -T* -0 Tw -(than a second\), or else spawn a separate process.)Tj -/TT4 1 Tf -12 0 0 12 54 157.05 Tm -(Section 23.8 Process Status Window)Tj -ET -570 180.39 0.99 -25.99 re -f -54.01 153.9 m -558.01 153.9 l -S -570 154.39 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 138.61 Tm -0.093 Tw -(The Medley release modifies the way in which the Process Status)Tj -ET -570 153.39 0.99 -18.99 re -f -BT -10 0 0 10 258 126.61 Tm -0 Tw -(Window can be reshaped and refreshed.)Tj -ET -570 134.39 0.99 -11.99 re -f -BT -10 0 0 10 258 107.61 Tm -0.221 Tw -[(The Process Status Window is now created in such a way that)]TJ -ET -570 122.39 0.99 -18.99 re -f -BT -10 0 0 10 258 95.61 Tm -0.137 Tw -(reshaping the window reshapes ONLY the backtrace window, not)Tj -ET -570 103.39 0.99 -11.99 re -f -BT -10 0 0 10 258 83.61 Tm -0 Tw -(the main window.)Tj -ET -570 91.39 0.99 -11.99 re -f -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -48 0 obj -<< -/Length 545 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.419 Tw -(The process status window now refreshes itself automatically)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(following a KILL command. )Tj -ET -570 725.98 0.99 -11.99 re -f -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -51 0 obj -<< -/Length 4854 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -14 0 0 14 258 727.08 Tm -(VOLUME III)Tj -ET -0.75 w -258 723.99 m -333.45 723.99 l -S -BT -14 0 0 14 333.45 727.08 Tm -(INPUT/OUTPUT)Tj -ET -347.45 723.99 m -450.89 723.99 l -S -2 w -54.01 672.99 m -558.01 672.99 l -S -BT -14 0 0 14 54 661.08 Tm -(Chapter 24 Streams and Files)Tj -ET -1 w -54.01 657.49 m -558.01 657.49 l -S -BT -12 0 0 12 54 633.64 Tm -(Section 24.7 File Attributes)Tj -ET -54.01 630.49 m -558.01 630.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 608.08 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(GETFILEINFO)Tj -14 0 0 14 195.4384 608.08 Tm -( )Tj -/TT6 1 Tf -10 0 0 10 199.328 608.08 Tm -(FILE ATTRIB)Tj -/TT2 1 Tf -5.9453 0 TD -[(\))-25197.9([Function])]TJ -ET -126.01 604.49 m -558.01 604.49 l -S -BT -10 0 0 10 258 589.2 Tm -0.297 Tw -(NS file servers implement the following additional attributes for)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(GETFILEINFO)Tj -/TT2 1 Tf -6.6108 0 TD -0.068 Tw -[( \(neither of these attributes is currently settable with)]TJ -/TT4 1 Tf --6.6108 -1.2 TD -0 Tw -(SETFILEINFO)Tj -/TT2 1 Tf -6.501 0 TD -(\):)Tj -/TT4 1 Tf --13.123 -1.9 TD -(READER)Tj -/TT2 1 Tf -6.622 0 TD -(The name of the user who last read the file.)Tj -/TT4 1 Tf --8.956 -1.9 TD -(PROTECTION)Tj -/TT2 1 Tf -8.956 0 TD -0.097 Tw -[(A list specifying the access rights to the file. Each element of the)]TJ -0 -1.2 TD -0.217 Tw -(list is of the form \()Tj -/TT6 1 Tf -8.9756 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -( )Tj -/TT6 1 Tf -0.4948 0 TD -(nametype)Tj -/TT2 1 Tf -4.3916 0 TD -0.217 Tw -[( . )]TJ -/TT6 1 Tf -1.2675 0 TD -0 Tw -(rights)Tj -/TT2 1 Tf -2.4453 0 TD -0.217 Tw -(\), where )Tj -/TT6 1 Tf -4.3241 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.217 Tw -[( is the)]TJ --26.9019 -1.2 TD -0.15 Tw -(name of a user or group or a name pattern, and )Tj -/TT6 1 Tf -22.9962 0 TD -0 Tw -(rights)Tj -/TT2 1 Tf -2.4453 0 TD -0.15 Tw -[( is one or)]TJ --25.4415 -1.2 TD -0.485 Tw -(more of the symbols ALL READ WRITE DELETE CREATE)Tj -T* -0.339 Tw -[(MODIFY. For servers running Services release 10.0 or later,)]TJ -/TT6 1 Tf -T* -0 Tw -(nametype)Tj -/TT2 1 Tf -4.3916 0 TD -0.484 Tw -[( is the symbol "--"; in earlier releases it is either)]TJ --4.3916 -1.2 TD -0.282 Tw -[(INDIVIDUAL or GROUP, to distinguish the type of name. For)]TJ -T* -0.07 Tw -(example, the value \(\(Jane Jones: -- ALL\) \(*: -- READ\)\) means that)Tj -T* -0.012 Tw -(user Jane Jones has full access to the file, while all members of the)Tj -T* -0 Tw -(default domain only have read access to the file.)Tj -/TT4 1 Tf -12 0 0 12 54 391.64 Tm -(Section 24.9 Local Hard Disk Device)Tj -ET -570 414.98 0.99 -25.99 re -f -54.01 388.49 m -558.01 388.49 l -S -570 388.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 369.2 Tm -(\(III:24.22\))Tj -ET -570 387.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 350.2 Tm -0.246 Tw -[(In the Medley release, the {DSK} device now accepts a wider)]TJ -ET -570 364.98 0.99 -18.99 re -f -BT -10 0 0 10 258 338.2 Tm -0.031 Tw -[(range of characters in file names. Almost any character in char set)]TJ -ET -570 345.98 0.99 -11.99 re -f -BT -10 0 0 10 258 326.2 Tm -0.016 Tw -[(0 is acceptable. Previously, if you tried to create a file whose name)]TJ -ET -570 333.98 0.99 -11.99 re -f -BT -10 0 0 10 258 314.2 Tm -0.063 Tw -(included, for example, an underscore, you would see a "FILE NOT)Tj -ET -570 321.98 0.99 -11.99 re -f -BT -10 0 0 10 258 302.2 Tm -0 Tw -(FOUND" error. )Tj -ET -570 309.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 274.64 Tm -0.0001 Tc --0.0001 Tw -(Section 24.10Floppy Disk Device)Tj -ET -570 297.98 0.99 -25.99 re -f -54.01 271.49 m -558.01 271.49 l -S -570 271.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 252.2 Tm -0 Tc -0 Tw -(\(III:24.26\))Tj -ET -570 270.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 233.2 Tm -0.249 Tw -(As of the Lyric release, CPM-format floppy disks are no longer)Tj -ET -570 247.98 0.99 -18.99 re -f -BT -10 0 0 10 258 221.2 Tm -0 Tw -(supported.)Tj -ET -570 228.98 0.99 -23.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 195.64 Tm -(Section 24.12Temporary Files and CORE Device)Tj -ET -570 204.98 0.99 -11.99 re -f -54.01 192.49 m -558.01 192.49 l -S -570 192.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 173.2 Tm -(\(III:24.30\))Tj -ET -570 191.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 154.2 Tm -0.172 Tw -[(In Medley, \()]TJ -/TT4 1 Tf -6.018 0 TD -0 Tw -(GETFILEINFO)Tj -/TT2 1 Tf -6.6108 0 TD -0.172 Tw -[( xx LENGTH\) works for both opened)]TJ -ET -570 168.98 0.99 -18.99 re -f -BT -10 0 0 10 258 142.2 Tm -0 Tw -(and closed)Tj -/TT4 1 Tf -4.8369 0 TD -( NODIRCORE)Tj -/TT2 1 Tf -6.3892 0 TD -( streams.)Tj -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 123.2 Tm -( A closed )Tj -/TT4 1 Tf -4.391 0 TD -(NODIRCORE)Tj -/TT2 1 Tf -6.1113 0 TD -( stream can be reopened.)Tj -ET -570 137.98 0.99 -18.99 re -f -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6303 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 24.18.1 Pup File Server Protocols)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -10 0 0 10 126 706.2 Tm -(UNIXFTPFLG)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 703.49 m -558.01 703.49 l -S -BT -10 0 0 10 258 688.2 Tm -0.232 Tw -(When the Leaf protocol was first implemented for the Vax Unix)Tj -0 -1.2 TD -0.038 Tw -(operating system, its use was inconsistent with the operation of the)Tj -T* -0.256 Tw -[(Pup FTP server on the same host: the Leaf server supported)]TJ -T* -0.021 Tw -(versions, but the Ftp server knew only about the native, versionless)Tj -T* -0.577 Tw -[(file system. Thus, Lisp could not use the two protocols)]TJ -T* -0.02 Tw -[(interchangeably. For example, if it used Ftp to write a file FOO, the)]TJ -T* -0.061 Tw -(Ftp server would, in versionless style, overwrite the versionless file)Tj -T* -0.193 Tw -(FOO, rather than create a new version FOO;6 to supersede the)Tj -T* -0 Tw -(highest version FOO;5 created by the Leaf server.)Tj -0 -1.9 TD -0.043 Tw -(Lisp thus makes the conservative assumption that the Ftp server is)Tj -0 -1.2 TD -0.021 Tw -(unusable for anything other than directory enumeration on a host of)Tj -T* -0.035 Tw -[(type UNIX. This is unfortunate, since it is often the case that Ftp is)]TJ -T* -0.128 Tw -(more efficiently implemented than Leaf, since one need only tune)Tj -T* -0 Tw -(the performance of sequential access.)Tj -0 -1.9 TD -0.027 Tw -(More recent versions of the Unix Pup software have a Leaf and Ftp)Tj -0 -1.2 TD -0.11 Tw -[(server more in agreement with each other. Setting )]TJ -/TT4 1 Tf -23.7234 0 TD -0 Tw -(UNIXFTPFLG)Tj -/TT2 1 Tf --23.7234 -1.2 TD -0.268 Tw -(to true \(it is initially NIL\) informs Lisp that all the Unix servers)Tj -T* -0.104 Tw -(accessible on your internetwork that possess Ftp servers are safe)Tj -T* -0 Tw -(to use in parallel with their Leaf servers.)Tj -/TT4 1 Tf -12 0 0 12 54 430.64 Tm -(Section 24.18.1 and 24.18.2 Use of BREAKCONNECTION with File Servers )Tj -ET -570 453.98 0.99 -25.99 re -f -54.01 427.49 m -558.01 427.49 l -S -570 427.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 408.2 Tm -(\(III:24.37\))Tj -ET -570 426.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 389.2 Tm -0.026 Tw -(In Medley, the function )Tj -/TT4 1 Tf -10.447 0 TD -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.026 Tw -[( can be used equally)]TJ -ET -570 403.98 0.99 -18.99 re -f -BT -10 0 0 10 258 377.2 Tm -0.036 Tw -[(well with NS servers and Leaf servers. Formerly, it only worked on)]TJ -ET -570 384.98 0.99 -11.99 re -f -BT -10 0 0 10 258 365.2 Tm -1.268 Tw -(Leaf servers, and there was a separate function)Tj -ET -570 372.98 0.99 -11.99 re -f -BT -10 0 0 10 258 353.2 Tm -0 Tw -(\(BREAK.NSFILING.CONNECTION )Tj -/TT6 1 Tf -15.8906 0 TD -(HOST)Tj -/TT2 1 Tf -2.7778 0 TD -(\) to handle NS servers. )Tj -ET -570 360.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 126 332.64 Tm -(\()Tj -10 0 0 10 130 332.64 Tm -(BREAKCONNECTION )Tj -/TT6 1 Tf -10.8335 0 TD -(HOST FAST)Tj -/TT4 1 Tf -12 0 0 12 294.4482 332.64 Tm -(\))Tj -/TT2 1 Tf -10 0 0 10 514.09 332.64 Tm -([Function])Tj -ET -570 348.98 0.99 -18.99 re -f -126.01 329.49 m -558.01 329.49 l -S -570 329.98 0.99 -0.99 re -f -BT -10 0 0 10 258 314.2 Tm -0.131 Tw -(Breaks the file server connection to )Tj -/TT6 1 Tf -16.683 0 TD -0 Tw -(HOST)Tj -/TT2 1 Tf -2.7778 0 TD -0.131 Tw -[(. If )]TJ -/TT6 1 Tf -2.06 0 TD -0 Tw -(HOST)Tj -/TT2 1 Tf -2.7778 0 TD -0.131 Tw -[( = T, breaks)]TJ -ET -570 328.98 0.99 -18.99 re -f -BT -10 0 0 10 258 302.2 Tm -1.181 Tw -(connections to all file servers that understand the)Tj -ET -570 309.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 290.2 Tm -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -1.043 Tw -[( method \(currently Leaf and NS\).)]TJ -ET -570 297.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 278.2 Tm -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.169 Tw -[( returns the server name, or if )]TJ -/TT6 1 Tf -14.577 0 TD -0 Tw -(HOST)Tj -/TT2 1 Tf -2.7778 0 TD -0.169 Tw -[( = T,)]TJ -ET -570 285.98 0.99 -11.99 re -f -BT -10 0 0 10 258 266.2 Tm -1.085 Tw -(returns a list of all hosts that responded to the)Tj -ET -570 273.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 254.2 Tm -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -( request.)Tj -ET -570 261.98 0.99 -23.99 re -f -BT -10 0 0 10 258 223.2 Tm -0.125 Tw -(This function may be useful if Lisp and the server disagree about)Tj -ET -570 237.98 0.99 -18.99 re -f -BT -10 0 0 10 258 211.2 Tm -0.05 Tw -(what files are open, or if the Lisp system is caching something that)Tj -ET -570 218.98 0.99 -11.99 re -f -BT -10 0 0 10 258 199.2 Tm -0.032 Tw -[(you do not want it to; e.g., if you get a file busy error from another)]TJ -ET -570 206.98 0.99 -11.99 re -f -BT -10 0 0 10 258 187.2 Tm -0.56 Tw -(workstation for a file that you may have touched on this)Tj -ET -570 194.98 0.99 -11.99 re -f -BT -10 0 0 10 258 175.2 Tm -0 Tw -(workstation.)Tj -ET -570 182.98 0.99 -23.99 re -f -BT -10 0 0 10 258 144.2 Tm -0.152 Tw -(The behavior of )Tj -/TT4 1 Tf -7.6826 0 TD -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.152 Tw -[( is server-specific. On an)]TJ -ET -570 158.98 0.99 -18.99 re -f -BT -10 0 0 10 258 132.2 Tm -0.309 Tw -(NS server, )Tj -/TT4 1 Tf -5.619 0 TD -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.309 Tw -[( releases any locks that Lisp)]TJ -ET -570 139.98 0.99 -11.99 re -f -BT -10 0 0 10 258 120.2 Tm -0.042 Tw -(may have on recently-accessed files, including those for open files,)Tj -ET -570 127.98 0.99 -11.99 re -f -BT -10 0 0 10 258 108.2 Tm -0.471 Tw -(but does not close any files from Lisps point of view--any)Tj -ET -570 115.98 0.99 -11.99 re -f -BT -10 0 0 10 258 96.2 Tm -0.363 Tw -(subsequent access to an open file will quietly reestablish the)Tj -ET -570 103.98 0.99 -11.99 re -f -BT -10 0 0 10 258 84.2 Tm -0.068 Tw -[(connection. Most NS servers have a short timeout on the order of)]TJ -ET -570 91.98 0.99 -11.99 re -f -BT -10 0 0 10 258 72.2 Tm -0.09 Tw -(10 minutes after which an implicit )Tj -/TT4 1 Tf -15.5463 0 TD -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.09 Tw -[( occurs if)]TJ -ET -570 79.98 0.99 -11.99 re -f -BT -10 0 0 10 258 60.2 Tm -0 Tw -(you have no files open.)Tj -ET -570 67.98 0.99 -11.99 re -f -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -57 0 obj -<< -/Length 5398 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.138 Tw -(On a Leaf server, )Tj -/TT4 1 Tf -8.5559 0 TD -0 Tw -(BREAKCONNECTION)Tj -/TT2 1 Tf -10.2778 0 TD -0.138 Tw -[( first closes any files. If)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.388 Tw -(the argument )Tj -/TT6 1 Tf -6.9464 0 TD -0 Tw -(FAST)Tj -/TT2 1 Tf -2.5557 0 TD -0.388 Tw -[( is true, it marks the files closed without)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.178 Tw -[(attempting to close them cleanly. Leaf connections ordinarily do)]TJ -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0 Tw -(not timeout if any files at all are open.)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Section 24.18.2 NS File Server Protocols)Tj -ET -570 677.98 0.99 -25.99 re -f -54.01 651.49 m -558.01 651.49 l -S -570 651.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 632.2 Tm -(\(III:24.37\))Tj -ET -570 650.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 613.2 Tm -0.152 Tw -(Medley incorporates the random access capability on NS servers)Tj -ET -570 627.98 0.99 -18.99 re -f -BT -10 0 0 10 258 601.2 Tm -0 Tw -(provided by the NSRANDOM LispUsers module in Lyric.)Tj -ET -570 608.98 0.99 -11.99 re -f -BT -10 0 0 10 258 582.2 Tm -0.457 Tw -(The Medley release also supports NS file names containing)Tj -ET -570 596.98 0.99 -18.99 re -f -BT -10 0 0 10 258 570.2 Tm -0 Tw -(characters other than character set 0 \(e.g., Greek characters\).)Tj -ET -570 577.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 542.64 Tm -(Section 24.18.3 Operating System Designations)Tj -ET -54.01 539.49 m -558.01 539.49 l -S -BT -10 0 0 10 126 524.2 Tm -(DEFAULT.OSTYPE)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 521.49 m -558.01 521.49 l -S -BT -10 0 0 10 258 506.2 Tm -0.027 Tw -(If a hosts name is not found in )Tj -/TT4 1 Tf -14.0573 0 TD -0 Tw -(NETWORKOSTYPES)Tj -/TT2 1 Tf -9.8897 0 TD -0.027 Tw -(, its operating)Tj --23.947 -1.2 TD -0.203 Tw -(system type is assumed to be the value of )Tj -/TT4 1 Tf -20.7254 0 TD -0 Tw -(DEFAULT.OSTYPE)Tj -/TT2 1 Tf -9.0005 0 TD -(.)Tj --29.7259 -1.2 TD -0.149 Tw -(This variable may be of use to sites with many servers all of the)Tj -T* -0.104 Tw -[(same type. Its default value \(IFS\) is, unfortunately, inappropriate)]TJ -T* -0.08 Tw -[(for most sites. It is recommended you set )]TJ -/TT4 1 Tf -19.8625 0 TD -0 Tw -(DEFAULT.OSTYPE)Tj -/TT2 1 Tf -9.0005 0 TD -0.08 Tw -[( in)]TJ --28.863 -1.2 TD -0.01 Tw -(the initialization file that lives on the local disk \()Tj -/TT6 1 Tf -20.7672 0 TD -0 Tw -(not)Tj -/TT2 1 Tf -1.3901 0 TD -0.01 Tw -[( in an init file on a)]TJ --22.1574 -1.2 TD -0.221 Tw -(file server, since Lisp needs to know the operating system type)Tj -T* -0 Tw -(before talking to the server\).)Tj -ET -2 w -54.01 366.99 m -558.01 366.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 355.08 Tm -(Chapter 25 Input/Output Functions)Tj -ET -1 w -54.01 351.49 m -558.01 351.49 l -S -BT -12 0 0 12 54 327.64 Tm -(Section 25.2 Input Functions)Tj -ET -54.01 324.49 m -558.01 324.49 l -S -BT -12 0 0 12 126 307.64 Tm -(\()Tj -10 0 0 10 129.9961 307.64 Tm -(LASTC)Tj -12 0 0 12 163.33 307.64 Tm -( )Tj -/TT6 1 Tf -10 0 0 10 166.664 307.64 Tm -(FILE)Tj -/TT4 1 Tf -12 0 0 12 187.7821 307.64 Tm -(\))Tj -/TT2 1 Tf -10 0 0 10 514.09 307.64 Tm -([Function])Tj -ET -126.01 304.49 m -558.01 304.49 l -S -BT -10 0 0 10 258 289.2 Tm -0.258 Tw -(The function )Tj -/TT4 1 Tf -6.2972 0 TD -0 Tw -(LASTC)Tj -/TT2 1 Tf -3.333 0 TD -0.258 Tw -[( can return an incorrect result when called)]TJ --9.6303 -1.2 TD -0.159 Tw -(immediately following a )Tj -/TT4 1 Tf -11.0927 0 TD -0 Tw -(PEEKC)Tj -/TT2 1 Tf -3.4433 0 TD -0.159 Tw -[( on a file that contains run-coded)]TJ --14.536 -1.2 TD -0 Tw -(NS characters.)Tj -/TT4 1 Tf -12 0 0 12 54 237.64 Tm -(Section 25.3.2 Printing Numbers)Tj -ET -54.01 234.49 m -558.01 234.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 215.2 Tm -(\(III:25.15\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.055 Tw -[( In the)]TJ -/TT4 1 Tf -2.8898 0 TD -[( PRINTNUM )]TJ -/TT2 1 Tf -5.943 0 TD -(function, the)Tj -/TT4 1 Tf -5.5032 0 TD -[( FLOAT )]TJ -/TT2 1 Tf -3.9982 0 TD -(format option)Tj -/TT4 1 Tf -5.8914 0 TD -[( \(FLOAT 7 2)]TJ --24.2257 -1.2 TD -0 Tw -(NIL T\) )Tj -/TT2 1 Tf -3.1104 0 TD -( is illegal; change the option to )Tj -/TT4 1 Tf -13.7314 0 TD -(\(FLOAT 7 2 NIL 0\))Tj -/TT2 1 Tf -8.3892 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 156.64 Tm -(Section 25.3.4 Printing Unusual Data Structures)Tj -ET -54.01 153.49 m -558.01 153.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 138.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(HPRINT)Tj -/TT2 1 Tf -3.722 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(EXPR FILE UNCIRCULAR DATATYPESEEN)Tj -/TT2 1 Tf -20.2266 0 TD -[(\))-13916.6([Function])]TJ -ET -126.01 135.49 m -558.01 135.49 l -S -BT -10 0 0 10 258 120.2 Tm -(Using )Tj -/TT4 1 Tf -3.1725 0 TD -(HPRINT)Tj -/TT2 1 Tf -3.7222 0 TD -0.338 Tw -[( to save structures that include pointers to raw)]TJ --6.8946 -1.2 TD -0.135 Tw -[(storage will cause stack overflows. This includes dumping things)]TJ -T* -0.258 Tw -(using the )Tj -/TT4 1 Tf -4.8524 0 TD -0 Tw -(VARS)Tj -/TT2 1 Tf -2.7776 0 TD -(, )Tj -/TT4 1 Tf -0.8137 0 TD -(UGLYVARS)Tj -/TT2 1 Tf -5.5563 0 TD -0.258 Tw -(, or )Tj -/TT4 1 Tf -2.2387 0 TD -0 Tw -(HORRIBLEVARS)Tj -/TT2 1 Tf -8.0003 0 TD -0.258 Tw -[( filemanager)]TJ --24.239 -1.2 TD -0 Tw -(commands.)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -60 0 obj -<< -/Length 4736 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.024 Tw -(For example, a font descriptor points to raw storage, and cannot be)Tj -0 -1.2 TD -0.165 Tw -(dumped; for that reason, other system data types \(e.g. windows\))Tj -T* -0 Tw -(that point to fonts also cannot be dumped.)Tj -/TT4 1 Tf -12 0 0 12 54 678.64 Tm -(Section 25.4 Random Access File Operations)Tj -ET -54.01 675.49 m -558.01 675.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 656.2 Tm -(\(III:25.20\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.104 Tw -(The first argument in the )Tj -/TT4 1 Tf -11.6362 0 TD -0 Tw -(FILEPOS)Tj -/TT2 1 Tf -4.2788 0 TD -0.104 Tw -[( function should be called )]TJ -/TT6 1 Tf -12.0835 0 TD -0 Tw -(STR)Tj -/TT2 1 Tf --27.9985 -1.2 TD -(not )Tj -/TT6 1 Tf -1.668 0 TD -(PATTERN)Tj -/TT2 1 Tf -4.667 0 TD -(. )Tj -/TT8 1 Tf --6.335 -1.9 TD -(\(III:25.20\))Tj -ET -570 620.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 587.2 Tm -0.239 Tw -(In the Medley release, the function)Tj -/TT4 1 Tf -16.4821 0 TD -[( COPYBYTES)]TJ -/TT2 1 Tf -6.6839 0 TD -[( now accepts)]TJ -ET -570 601.98 0.99 -18.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 575.2 Tm -0 Tw -(START)Tj -/TT2 1 Tf -3.2778 0 TD -0.216 Tw -[( and )]TJ -/TT6 1 Tf -2.6561 0 TD -0 Tw -(END)Tj -/TT2 1 Tf -2.1113 0 TD -0.216 Tw -[( arguments even when the input stream is not)]TJ -ET -570 582.98 0.99 -11.99 re -f -BT -10 0 0 10 258 563.2 Tm -0 Tw -(random access. This caused an error in earlier releases. )Tj -/TT11 1 Tf -8 0 0 8 518.6689 563.2 Tm -( )Tj -ET -570 570.98 0.99 -12.58 re -f -BT -/TT4 1 Tf -12 0 0 12 54 535.05 Tm -(Section 25.6 PRINTOUT)Tj -ET -54.01 531.9 m -558.01 531.9 l -S -BT -/TT8 1 Tf -10 0 0 10 258 512.61 Tm -(\(III:25.27\))Tj -/TT2 1 Tf -0 -1.9 TD -0.316 Tw -(The PRINTOUT command)Tj -/TT4 1 Tf -12.4123 0 TD -[( .FONT)]TJ -/TT2 1 Tf -3.5937 0 TD -[( changes the )]TJ -/TT4 1 Tf -6.9524 0 TD -0 Tw -(DSPFONT )Tj -/TT2 1 Tf -5.3714 0 TD -(font)Tj --28.3298 -1.2 TD -(permanently, that is, even after printout finishes.)Tj -/TT4 1 Tf -12 0 0 12 54 454.05 Tm -(Section 25.8.3 READ Macros)Tj -ET -54.01 450.9 m -558.01 450.9 l -S -BT -/TT8 1 Tf -10 0 0 10 258 431.61 Tm -(\(III:25.42-43\))Tj -/TT2 1 Tf -0 -1.9 TD -(These)Tj -/TT4 1 Tf -2.7793 0 TD --0.0001 Tc -0.4431 Tw -[( READMACROS )]TJ -/TT2 1 Tf -8.7185 0 TD -0 Tc -0.443 Tw -(appear only in the OLD-INTERLISP-T)Tj --11.4978 -1.2 TD -0 Tw -(readtable. \(See Section 2 for a description of Lyric readtables.\))Tj -ET -2 w -54.01 345.4 m -558.01 345.4 l -S -BT -/TT4 1 Tf -14 0 0 14 54 333.49 Tm -(Chapter 26 User Input/Output Packages)Tj -ET -1 w -54.01 329.9 m -558.01 329.9 l -S -0.75 w -558 329.4 m -558 329.4 l -S -BT -12 0 0 12 54 306.05 Tm -(Section 26.3 ASKUSER)Tj -ET -1 w -54.01 302.9 m -558.01 302.9 l -S -BT -/TT2 1 Tf -10 0 0 10 126 287.61 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(ASKUSER)Tj -/TT6 1 Tf -5.067 0 TD -(WAIT DEFAULT MESS KEYLST TYPEAHEAD LISPXPRNTFLG)Tj -0 -1 TD -(OPTIONSLST FILE)Tj -/TT2 1 Tf -8.7241 0 TD -[(\))-24351.9([Function])]TJ -ET -126.01 274.9 m -558.01 274.9 l -S -BT -/TT4 1 Tf -10 0 0 10 258 259.61 Tm -(ASKUSER)Tj -/TT2 1 Tf -4.8896 0 TD -0.05 Tw -[( does not accept a string to mean a stream open on the)]TJ --4.8896 -1.2 TD -0.291 Tw -(string; you must call )Tj -/TT4 1 Tf -10.2783 0 TD -0 Tw -(OPENSTRINGSTREAM)Tj -/TT2 1 Tf -10.8337 0 TD -0.291 Tw -[( if thats what you)]TJ --21.112 -1.2 TD -0 Tw -(mean.)Tj -/TT4 1 Tf -12 0 0 12 54 208.05 Tm -(Section 26.4 TTYIN Display Typein Editor)Tj -ET -570 231.39 0.99 -25.99 re -f -54.01 204.9 m -558.01 204.9 l -S -570 205.39 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 185.61 Tm -(\(III:26.22\))Tj -ET -570 204.39 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 166.61 Tm -0.354 Tw -(The following fixes have been made to TTYIN in the Medley)Tj -ET -570 181.39 0.99 -18.99 re -f -BT -10 0 0 10 258 154.61 Tm -0 Tw -(release:)Tj -ET -570 162.39 0.99 -11.99 re -f -BT -10 0 0 10 258 135.61 Tm -1.068 Tw -[()-849.9(TTYIN now respects the )]TJ -/TT4 1 Tf -16.4759 0 TD -0 Tw -(DSPLEFTMARGIN)Tj -/TT2 1 Tf -8.6108 0 TD -1.068 Tw -[( of the)]TJ -ET -570 150.39 0.99 -18.99 re -f -BT -10 0 0 10 270 123.61 Tm -0 Tw -(ttydisplaystream, rather than assuming it is zero.)Tj -ET -570 131.39 0.99 -11.99 re -f -BT -10 0 0 10 258 104.61 Tm -0.081 Tw -[( )-491.1(You can now assign the keyaction 194 \(octal 302--acute accent)]TJ -ET -570 119.39 0.99 -18.99 re -f -BT -10 0 0 10 270 92.61 Tm -0.088 Tw -(in the NS character set\) to a key and TTYIN will not treat it like)Tj -ET -570 100.39 0.99 -11.99 re -f -BT -10 0 0 10 270 80.61 Tm -0.157 Tw -(the UNDO key \(except on the 1132, where this functionality is)Tj -ET -570 88.39 0.99 -11.99 re -f -BT -10 0 0 10 270 68.61 Tm -0 Tw -(still on blank-middle\).)Tj -ET -570 76.39 0.99 -11.99 re -f -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -63 0 obj -<< -/Length 6576 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -[( )-572.1(TTYIN correctly handles prompts that are wider than the window.)]TJ -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 711.2 Tm -0.045 Tw -[( )-527.1(TTYIN now handles NS characters correctly when you are using)]TJ -ET -570 725.98 0.99 -18.99 re -f -BT -10 0 0 10 270 699.2 Tm -0.273 Tw -(a fixed-width font into which you have coerced, say, Classic)Tj -ET -570 706.98 0.99 -11.99 re -f -BT -10 0 0 10 270 687.2 Tm -0 Tw -(characters for the non-zero character sets.)Tj -ET -570 694.98 0.99 -11.99 re -f -BT -10 0 0 10 258 668.2 Tm -0.057 Tw -[( )-515.1(TTYIN now handles Escape completion much more efficiently. If)]TJ -ET -570 682.98 0.99 -18.99 re -f -BT -10 0 0 10 270 656.2 Tm -0.327 Tw -(the completion is ambiguous, it completes the unambiguous)Tj -ET -570 663.98 0.99 -11.99 re -f -BT -10 0 0 10 270 644.2 Tm -0.098 Tw -(prefix \(as it did in Koto but not Lyric\); it also correctly interprets)Tj -ET -570 651.98 0.99 -11.99 re -f -BT -10 0 0 10 270 632.2 Tm -0.062 Tw -[(escape characters. For example, in an exec with Common Lisp)]TJ -ET -570 639.98 0.99 -11.99 re -f -BT -10 0 0 10 270 620.2 Tm -0.102 Tw -[(readtable, it correctly completes symbols that start with \\\\, or a)]TJ -ET -570 627.98 0.99 -11.99 re -f -BT -10 0 0 10 270 608.2 Tm -0.328 Tw -[(mixed-case symbol written with vertical bars. Also, Escape)]TJ -ET -570 615.98 0.99 -11.99 re -f -BT -10 0 0 10 270 596.2 Tm -0.715 Tw -(completion computes character widths correctly when it)Tj -ET -570 603.98 0.99 -11.99 re -f -BT -10 0 0 10 270 584.2 Tm -0.46 Tw -(lowercases an upper case string, rather than leave some)Tj -ET -570 591.98 0.99 -11.99 re -f -BT -10 0 0 10 270 572.2 Tm -0 Tw -(garbage bits on the display.)Tj -ET -570 579.98 0.99 -11.99 re -f -BT -10 0 0 10 258 553.2 Tm -0.097 Tw -[( )-475.1(The off-by-the-descent bug wherein TTYIN sometimes left stray)]TJ -ET -570 567.98 0.99 -18.99 re -f -BT -10 0 0 10 270 541.2 Tm -0 Tw -(bits at the bottom of the window has been fixed.)Tj -ET -570 548.98 0.99 -30.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 494.64 Tm -(Section 26.4.3 Display Editing Commands)Tj -ET -570 517.98 0.99 -25.99 re -f -54.01 491.49 m -558.01 491.49 l -S -570 491.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 472.2 Tm -(\(III:26.25\))Tj -ET -570 490.98 0.99 -22.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 453.2 Tm -(?=)Tj -/TT2 1 Tf -1.1948 0 TD -0.203 Tw -[( and Meta-P no longer hang if you had an unbalanced string)]TJ -ET -570 467.98 0.99 -18.99 re -f -BT -10 0 0 10 258 441.2 Tm -0 Tw -(quote in the input.)Tj -ET -570 448.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 422.2 Tm -(?=)Tj -/TT2 1 Tf -1.1948 0 TD -0.085 Tw -(, Meta-P, and the )Tj -/TT4 1 Tf -8.2887 0 TD -0 Tw -(FIX)Tj -/TT2 1 Tf -1.5557 0 TD -0.085 Tw -[( command now work correctly when there)]TJ -ET -570 436.98 0.99 -18.99 re -f -BT -10 0 0 10 258 410.2 Tm -0 Tw -(are NS characters in the input.)Tj -ET -570 417.98 0.99 -11.99 re -f -BT -10 0 0 10 258 391.2 Tm -0.313 Tw -(The printout for)Tj -/TT4 1 Tf -7.4072 0 TD -[( ?=)]TJ -/TT2 1 Tf -1.7857 0 TD -[( is now improved; it respects *print-case*,)]TJ -ET -570 405.98 0.99 -18.99 re -f -BT -10 0 0 10 258 379.2 Tm -0.792 Tw -(matches up keywords better, and prints abstract syntax)Tj -ET -570 386.98 0.99 -11.99 re -f -BT -10 0 0 10 258 367.2 Tm -0 Tw -(descriptions \(such as for cl:do\) a bit more clearly.)Tj -ET -570 374.98 0.99 -11.99 re -f -BT -10 0 0 10 258 348.2 Tm -0.693 Tw -(SMARTARGLIST fetches the argument lists of cl:compiled)Tj -ET -570 362.98 0.99 -18.99 re -f -BT -10 0 0 10 258 336.2 Tm -0 Tw -(functions, so )Tj -/TT4 1 Tf -6.1699 0 TD -( ?=)Tj -/TT2 1 Tf -1.4727 0 TD -( now works in more cases.)Tj -ET -570 343.98 0.99 -11.99 re -f -BT -10 0 0 10 258 317.2 Tm -0.149 Tw -(The Ctrl-X command, when the caret is already positioned at the)Tj -ET -570 331.98 0.99 -18.99 re -f -BT -10 0 0 10 258 305.2 Tm -0.054 Tw -(end of the input and everything but parentheses are balanced \(i.e.,)Tj -ET -570 312.98 0.99 -11.99 re -f -BT -10 0 0 10 258 293.2 Tm -0.363 Tw -(no unbalanced string quotes or vertical bars\), types as many)Tj -ET -570 300.98 0.99 -11.99 re -f -BT -10 0 0 10 258 281.2 Tm -0.134 Tw -(closing parentheses as necessary to complete the input and then)Tj -ET -570 288.98 0.99 -11.99 re -f -BT -10 0 0 10 258 269.2 Tm -0.217 Tw -(returns, much as if you had typed right bracket \("]"\) in Interlisp.)Tj -ET -570 276.98 0.99 -11.99 re -f -BT -10 0 0 10 258 257.2 Tm -0.096 Tw -(Thus, if the cursor is somewhere in the middle of the input, typing)Tj -ET -570 264.98 0.99 -11.99 re -f -BT -10 0 0 10 258 245.2 Tm -0.143 Tw -(two Ctrl-Xs is sufficient to complete \(assuming all you needed to)Tj -ET -570 252.98 0.99 -11.99 re -f -BT -10 0 0 10 258 233.2 Tm -0 Tw -(type were some more parens\). )Tj -ET -570 240.98 0.99 -11.99 re -f -BT -10 0 0 10 258 214.2 Tm -0.11 Tw -(TTYIN can now be used as a substitute for PROMPTFORWORD.)Tj -ET -570 228.98 0.99 -18.99 re -f -BT -10 0 0 10 258 202.2 Tm -0.142 Tw -(The new function TTYINPROMPTFORWORD takes the same set)Tj -ET -570 209.98 0.99 -11.99 re -f -BT -10 0 0 10 258 190.2 Tm -0.024 Tw -[(of arguments as PROMPTFORWORD. In the most common cases)]TJ -ET -570 197.98 0.99 -11.99 re -f -BT -10 0 0 10 258 178.2 Tm -0.121 Tw -(it then calls TTYIN in "promptforword" mode, so that you can use)Tj -ET -570 185.98 0.99 -11.99 re -f -BT -10 0 0 10 258 166.2 Tm -0.082 Tw -[(the mouse and other TTYIN commands on the input. For cases it)]TJ -ET -570 173.98 0.99 -11.99 re -f -BT -10 0 0 10 258 154.2 Tm -0.184 Tw -[(cant handle, it calls the old PROMPTFORWORD. These cases)]TJ -ET -570 161.98 0.99 -11.99 re -f -BT -10 0 0 10 258 142.2 Tm -0.288 Tw -(are: DONTECHOTYPEIN.FLG or KEYBD.CHANNEL is non-NIL;)Tj -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 130.2 Tm -0.156 Tw -(ECHO.CHANNEL is not a displaystream; or TERMINCHARS.LST)Tj -ET -570 137.98 0.99 -11.99 re -f -BT -10 0 0 10 258 118.2 Tm -0.117 Tw -(contains a character other than cr, space or ^X and you have set)Tj -ET -570 125.98 0.99 -11.99 re -f -BT -10 0 0 10 258 106.2 Tm -0.055 Tw -[(the variable TTYIN.USE.EXACT.CHARS \(initially NIL\) to T. TTYIN)]TJ -ET -570 113.98 0.99 -11.99 re -f -BT -10 0 0 10 258 94.2 Tm -0.079 Tw -(saves the old definition of PROMPTFORWORD, so you can either)Tj -ET -570 101.98 0.99 -11.99 re -f -BT -10 0 0 10 258 82.2 Tm -0.61 Tw -(have your program explicitly call TTYINPROMPTFORWORD)Tj -ET -570 89.98 0.99 -11.99 re -f -BT -10 0 0 10 258 70.2 Tm -0.388 Tw -(instead of PROMPTFORWORD, or you can have all calls to)Tj -ET -570 77.98 0.99 -11.99 re -f -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -66 0 obj -<< -/Length 5243 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-19)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -1.566 Tw -(PROMPTFORWORD changed by doing a \(MOVD)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(TTYINPROMPTFORWORD PROMPTFORWORD\).)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 664.64 Tm -(Section 26.4.5 Useful Macros)Tj -ET -54.01 661.49 m -558.01 661.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 642.2 Tm -(\(III:26.29\) )Tj -/TT4 1 Tf -0 -1.9 TD -(CTRLUFLG )Tj -/TT2 1 Tf -5.7368 0 TD -0.071 Tw -(is no longer supported by default. To use this feature,)Tj --5.7368 -1.2 TD -0.708 Tw -(turn it on explicitly: )Tj -/TT4 1 Tf -11.3354 0 TD -(\(INTERRUPTCHAR \(CHARCODE ^U\))Tj --11.3354 -1.2 TD -0 Tw -(CTRLUFLG\))Tj -/TT2 1 Tf -5.9985 0 TD -(.)Tj -ET -2 w -54.01 543.99 m -558.01 543.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 532.08 Tm -(Chapter 27 Graphic Output Operations)Tj -ET -1 w -54.01 528.49 m -558.01 528.49 l -S -BT -12 0 0 12 54 504.64 Tm -(Section 27.1.3 Bitmaps)Tj -ET -54.01 501.49 m -558.01 501.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 482.2 Tm -0.061 Tw -[(Note:)-609.9(The printed representation of bitmaps has changed. Please)]TJ -3 -1.2 TD -0.419 Tw -(see release notes Chapter 3, Integration of Interlisp-D/)Tj -T* -0 Tw -(Common Lisp, "Bitmap Syntax.")Tj -/TT8 1 Tf --3 -2.3 TD -(\(III:27.4\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.401 Tw -(The following function has been added to Bitmap Operations)Tj -0 -1.2 TD -0 Tw -(between the functions )Tj -/TT4 1 Tf -10.0068 0 TD -(EXPANDBITMAP)Tj -/TT2 1 Tf -7.9992 0 TD -( and )Tj -/TT4 1 Tf -2.2241 0 TD -(SHRINKBITMAP)Tj -/TT2 1 Tf -7.6659 0 TD -(:)Tj --41.096 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(ROTATE-BITMAP)Tj -/TT6 1 Tf -8.277 0 TD -( BITMAP)Tj -/TT2 1 Tf -4.0005 0 TD -[(\))-25865.5([Function])]TJ -ET -126.01 382.49 m -558.01 382.49 l -S -BT -10 0 0 10 258 367.2 Tm -0.11 Tw -(Given an m-high by n-wide bitmap, this function returns an n-high)Tj -0 -1.2 TD -0.06 Tw -(by m-wide bitmap. The returned bitmap is the image of the original)Tj -T* -0 Tw -(bitmap, rotated 90 degrees clockwise.)Tj -/TT8 1 Tf -0 -1.9 TD -(\(III:27.4\))Tj -ET -570 338.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 305.2 Tm -0.018 Tw -(In the Medley release, the )Tj -/TT4 1 Tf -11.874 0 TD -0 Tw -(EDITBM)Tj -/TT2 1 Tf -3.833 0 TD -0.018 Tw -[( function is substantially faster)]TJ -ET -570 319.98 0.99 -18.99 re -f -BT -10 0 0 10 258 293.2 Tm -0.061 Tw -(with the inclusion of )Tj -/TT4 1 Tf -9.2489 0 TD -0 Tw -(FASTEDITBM)Tj -/TT2 1 Tf -6.4438 0 TD -0.061 Tw -[( \(a former LispUsers module\) in)]TJ -ET -570 300.98 0.99 -11.99 re -f -BT -10 0 0 10 258 281.2 Tm -0 Tw -(the sysout. )Tj -ET -570 288.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 253.64 Tm -(Section 27.3 Accessing Image Stream Fields)Tj -ET -54.01 250.49 m -558.01 250.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 231.2 Tm -0.021 Tw -(The following functions were not documented in the Koto release of)Tj -0 -1.2 TD -0 Tw -(the)Tj -/TT6 1 Tf -1.3901 0 TD -( Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.2837 0 TD -(:)Tj --27.8738 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(DSPCLEOL)Tj -/TT2 1 Tf -5.445 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(XPOS YPOS HEIGHT)Tj -/TT2 1 Tf -9.8911 0 TD -[(\))-22529([Function])]TJ -ET -126.01 197.49 m -558.01 197.49 l -S -BT -10 0 0 10 258 182.2 Tm -0.12 Tw -[("Clear to end of line". Clears a region from \()]TJ -/TT6 1 Tf -20.8074 0 TD -0 Tw -(XPOS,YPOS)Tj -/TT2 1 Tf -5.8354 0 TD -0.12 Tw -(\) to the)Tj --26.6429 -1.2 TD -0.063 Tw -(right margin of the display, with a height of )Tj -/TT6 1 Tf -19.5773 0 TD -0 Tw -(HEIGHT)Tj -/TT2 1 Tf -3.7778 0 TD -0.063 Tw -[(. If )]TJ -/TT6 1 Tf -1.856 0 TD -0 Tw -(XPOS)Tj -/TT2 1 Tf -2.7788 0 TD -0.063 Tw -[( and)]TJ -/TT6 1 Tf --27.9899 -1.2 TD -0 Tw -(YPOS)Tj -/TT2 1 Tf -2.7788 0 TD -0.227 Tw -[( are )]TJ -/TT4 1 Tf -2.455 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.227 Tw -(, clears the remainder of the current display line,)Tj --6.8446 -1.2 TD -0 Tw -(using the height of the current font.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(DSPRUBOUTCHAR)Tj -/TT2 1 Tf -9.221 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(DS CHAR X Y TTBL)Tj -/TT2 1 Tf -9.1128 0 TD -[(\))-19531.4([Function])]TJ -ET -126.01 124.49 m -558.01 124.49 l -S -BT -10 0 0 10 258 109.2 Tm -0.227 Tw -(Backs up over character code )Tj -/TT6 1 Tf -14.6418 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.227 Tw -[( in the display stream )]TJ -/TT6 1 Tf -10.8616 0 TD -0 Tw -(DS)Tj -/TT2 1 Tf -1.3892 0 TD -(,)Tj --29.7261 -1.2 TD -0.213 Tw -[(erasing it. If )]TJ -/TT6 1 Tf -6.5766 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -(, )Tj -/TT6 1 Tf -0.7687 0 TD -(Y)Tj -/TT2 1 Tf -0.667 0 TD -0.213 Tw -[( are supplied, the rubbing out starts from the)]TJ --8.6793 -1.2 TD -0.472 Tw -(position specified. )Tj -/TT4 1 Tf -9.917 0 TD -0 Tw -(DSPRUBOUTCHAR)Tj -/TT2 1 Tf -9.2222 0 TD -0.472 Tw -[( assumes )]TJ -/TT6 1 Tf -5.4978 0 TD -0 Tw -(CHAR)Tj -/TT2 1 Tf -2.8335 0 TD -0.472 Tw -[( was)]TJ --27.4705 -1.2 TD -0.095 Tw -(printed with the terminal table )Tj -/TT6 1 Tf -13.8153 0 TD -0 Tw -(TTBL)Tj -/TT2 1 Tf -2.4448 0 TD -0.095 Tw -(, so it knows to handle control)Tj --16.2602 -1.2 TD -0 Tw -(characters, etc. )Tj -/TT6 1 Tf -7.3916 0 TD -(TTBL)Tj -/TT2 1 Tf -2.4448 0 TD -( defaults to the primary terminal table.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -69 0 obj -<< -/Length 6116 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-20)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Section 27.6 Drawing Lines)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 706.2 Tm -(\(III:27.17\))Tj -ET -570 724.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 683.2 Tm -0.048 Tw -(The non-)Tj -/TT4 1 Tf -4.0504 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.048 Tw -[( value of the )]TJ -/TT6 1 Tf -5.9181 0 TD -0 Tw -(DASHING)Tj -/TT2 1 Tf -4.5562 0 TD -0.048 Tw -[( argument of )]TJ -/TT4 1 Tf -6.0361 0 TD -0 Tw -(DRAWLINE)Tj -/TT2 1 Tf -5.3882 0 TD -0.048 Tw -[( uses)]TJ -ET -570 701.98 0.99 -22.99 re -f -BT -10 0 0 10 258 671.2 Tm -0.222 Tw -[(LINEWITHBRUSH. LINEWITHBRUSH is a width-by-width brush)]TJ -ET -570 678.98 0.99 -11.99 re -f -BT -10 0 0 10 258 659.2 Tm -0 Tw -(which draws then lifts.)Tj -ET -570 666.98 0.99 -11.99 re -f -BT -10 0 0 10 258 636.2 Tm -0.077 Tw -(In the Medley release,)Tj -/TT11 1 Tf -8 0 0 8 358.6986 636.2 Tm -0 Tw -( )Tj -/TT2 1 Tf -10 0 0 10 364.8294 636.2 Tm -0.077 Tw -(when using the color argument,)Tj -/TT11 1 Tf -8 0 0 8 507.4358 636.2 Tm -0 Tw -( )Tj -/TT2 1 Tf -10 0 0 10 513.5665 636.2 Tm -(Interpress)Tj -ET -570 654.98 0.99 -23.58 re -f -BT -/TT4 1 Tf -10 0 0 10 258 623.61 Tm -(DRAWLINE)Tj -/TT2 1 Tf -5.3882 0 TD -0.618 Tw -[( treats 16x16 bitmaps or negative numbers as)]TJ -ET -570 631.39 0.99 -11.99 re -f -BT -10 0 0 10 258 611.61 Tm -0.042 Tw -[(shades/textures. Positive numbers continue to refer to color maps,)]TJ -ET -570 619.39 0.99 -11.99 re -f -BT -10 0 0 10 258 599.61 Tm -0.119 Tw -[(and so cannot be used as textures. To convert an integer shade)]TJ -ET -570 607.39 0.99 -11.99 re -f -BT -10 0 0 10 258 587.61 Tm -0.019 Tw -(into a negative number use NEGSHADE \(e.g. \(NEGSHADE 42495\))Tj -ET -570 595.39 0.99 -11.99 re -f -BT -10 0 0 10 258 575.61 Tm -0 Tw -(is -23041\).)Tj -ET -570 583.39 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 552.61 Tm -(\(III:27.18\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.038 Tw -[( RELDRAWTO )]TJ -/TT2 1 Tf -7.1307 0 TD -(function has been corrected so that it no longer)Tj --8.8538 -1.2 TD -0 Tw -(draws a spot if the)Tj -/TT6 1 Tf -8.1152 0 TD -( DX )Tj -/TT2 1 Tf -1.9448 0 TD -(and)Tj -/TT6 1 Tf -1.6685 0 TD -( DY)Tj -/TT2 1 Tf -1.667 0 TD -( arguments are 0.)Tj -/TT4 1 Tf -12 0 0 12 54 494.05 Tm -(Section 27.7 Drawing Curves)Tj -ET -54.01 490.9 m -558.01 490.9 l -S -BT -/TT8 1 Tf -10 0 0 10 258 471.61 Tm -(\(III:27.18\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.382 Tw -(For the brush width value of )Tj -/TT4 1 Tf -14.9097 0 TD -0 Tw -(NIL,)Tj -/TT2 1 Tf -1.8887 0 TD -0.382 Tw -[( the previous default value)]TJ -/TT4 1 Tf --16.7983 -1.2 TD -0.221 Tw -(\(ROUND 1\) )Tj -/TT2 1 Tf -5.8863 0 TD -(has been changed. The default value for the brush)Tj --5.8863 -1.2 TD -0.008 Tw -(width value )Tj -/TT4 1 Tf -5.2968 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.008 Tw -[( is the )]TJ -/TT4 1 Tf -3.2556 0 TD -0 Tw -(DSPSCALE)Tj -/TT2 1 Tf -5.4448 0 TD -0.008 Tw -[( of the stream \(that is, 1 printers)]TJ --15.608 -1.2 TD -0 Tw -(point wide\).)Tj -/TT8 1 Tf -0 -2.3 TD -(\(III:27.19\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.034 Tw -(A new image stream function, )Tj -/TT4 1 Tf -13.6207 0 TD -0 Tw -(DRAWARC)Tj -/TT2 1 Tf -5.2753 0 TD -0.034 Tw -(, follows )Tj -/TT6 1 Tf -3.9581 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.3118 0 TD -(DRAWCIRCLE)Tj -/TT2 1 Tf --23.166 -1.2 TD -(in the )Tj -/TT6 1 Tf -2.7241 0 TD -(InterLisp-D Reference Manual)Tj -/TT2 1 Tf -13.3398 0 TD -(.)Tj --29.264 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(DRAWARC)Tj -/TT6 1 Tf -5.667 0 TD -(CENTERX CENTERY RADIUS STARTANGLE NDEGREES BRUSH)Tj -0 -1 TD -(DASHINGSTREAM)Tj -/TT2 1 Tf -8.7231 0 TD -[(\))-23752.8([Function])]TJ -ET -126.01 330.9 m -558.01 330.9 l -S -BT -10 0 0 10 258 315.61 Tm -0.366 Tw -(Draws an arc of the circle whose center point is \()Tj -/TT6 1 Tf -25.2245 0 TD -0 Tw -(CENTERX)Tj --25.2245 -1.2 TD -(CENTERY)Tj -/TT2 1 Tf -4.7783 0 TD -0.326 Tw -(\) and whose radius is)Tj -/TT6 1 Tf -10.7532 0 TD -[( RADIUS )]TJ -/TT2 1 Tf -4.986 0 TD -(from the position at)Tj -/TT6 1 Tf --20.5175 -1.2 TD -0 Tw -(STARTANGLE)Tj -/TT2 1 Tf -6.668 0 TD -0.256 Tw -[( degrees for)]TJ -/TT6 1 Tf -5.8484 0 TD -[( NDEGREES)]TJ -/TT2 1 Tf -6.1461 0 TD -[( number of degrees. If)]TJ -/TT6 1 Tf --18.6625 -1.2 TD -0 Tw -(STARTANGLE )Tj -/TT2 1 Tf -7.5838 0 TD -0.638 Tw -(is 0, the starting point will be \()Tj -/TT6 1 Tf -17.6389 0 TD -0 Tw -(CENTERX)Tj --25.2227 -1.2 TD -0.063 Tw -(\(CENTERY + RADIUS\))Tj -/TT2 1 Tf -10.4883 0 TD -[(\). If )]TJ -/TT6 1 Tf -2.189 0 TD -0 Tw -(NDEGREES)Tj -/TT2 1 Tf -5.6123 0 TD -0.063 Tw -[( is positive, the arc will be)]TJ --18.2896 -1.2 TD -0.376 Tw -[(counterclockwise. If )]TJ -/TT6 1 Tf -10.4092 0 TD -0 Tw -(NDEGREES)Tj -/TT2 1 Tf -5.6123 0 TD -0.376 Tw -[( is negative, the arc will be)]TJ --16.0216 -1.2 TD -0.202 Tw -[(clockwise. The other arguments are interpreted as described in)]TJ -/TT4 1 Tf -T* -0 Tw -(DRAWCIRCLE)Tj -/TT2 1 Tf -6.8325 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 204.05 Tm -(Section 27.8 Miscellaneous Drawing and Printing Operations)Tj -ET -54.01 200.9 m -558.01 200.9 l -S -BT -/TT8 1 Tf -10 0 0 10 258 181.61 Tm -(\(III:27.20\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.288 Tw -(To have a filled polygon print correctly, set the global variable)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(PRINTSERVICE)Tj -/TT2 1 Tf -7.3901 0 TD -0.318 Tw -[( to floating point value 9.0 for printers running)]TJ --7.3901 -1.2 TD -0 Tw -(Services 9.0 or later.)Tj -0 -1.9 TD -0.159 Tw -(When using )Tj -/TT4 1 Tf -5.8766 0 TD -0.0001 Tc -0 Tw -(FILLPOLYGON )Tj -/TT2 1 Tf -7.5482 0 TD -0 Tc -0.159 Tw -(to be sent to Xerox 8044 Interpress)Tj --13.4248 -1.2 TD -0.233 Tw -(printers, the global variable )Tj -/TT4 1 Tf -13.2167 0 TD --0.0002 Tc -0 Tw -(PRINTSERVICE )Tj -/TT2 1 Tf -7.8992 0 TD -0 Tc -0.233 Tw -(must be set to the)Tj --21.1158 -1.2 TD -0.088 Tw -(same value as the Print Service installed on your printer, currently)Tj -T* -0.037 Tw -[(either 8.0, 9.0 or 10.0. Thus, if your printer is running Print Service)]TJ -T* -0.004 Tw -(9.0, you must set the global variable )Tj -/TT4 1 Tf -16.3151 0 TD -0 Tw -(PRINTSERVICE)Tj -/TT2 1 Tf -7.3901 0 TD -0.0003 Tc -0.0037 Tw -( to the floating)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -72 0 obj -<< -/Length 5081 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-21)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.121 Tw -(point value 9.0. This works around an incompatible change in the)Tj -0 -1.2 TD -0 Tw -(Xerox 8044 Interpress implementation.)Tj -0 -1.9 TD -0.173 Tw -[(In Medley, Interpress curves are now rendered at a lower)]TJ -ET -570 713.98 0.99 -18.99 re -f -BT -10 0 0 10 258 687.2 Tm -0.055 Tw -[(accuracy, allowing faster hardcopy. The spline is now rendered)]TJ -ET -570 694.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0 Tw -(at 1/150 inch; in Lyric it was 1/300 inch. )Tj -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 656.2 Tm -0.233 Tw -(The following function was omitted from previous version of the)Tj -/TT6 1 Tf -0 -1.2 TD -0 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.0059 0 TD -(:)Tj --26.2059 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(DRAWPOLYGON)Tj -/TT2 1 Tf -8.111 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(POINTS CLOSED BRUSH DASHING STREAM)Tj -/TT2 1 Tf -21.1699 0 TD -[(\))-8584.2([Function])]TJ -ET -126.01 622.49 m -558.01 622.49 l -S -BT -10 0 0 10 258 607.2 Tm -0.069 Tw -(Draws a polygon on the image stream )Tj -/TT6 1 Tf -17.6026 0 TD -0 Tw -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -0.069 Tw -(. )Tj -/TT6 1 Tf -0.9715 0 TD -0 Tw -(POINTS)Tj -/TT2 1 Tf -3.7227 0 TD -0.069 Tw -[( is a list)]TJ --26.4638 -1.2 TD -0.212 Tw -(of positions to which the figure will be fitted \(the vertices of the)Tj -T* -0.31 Tw -[(polygon\). If )]TJ -/TT6 1 Tf -6.4329 0 TD -0 Tw -(CLOSED)Tj -/TT2 1 Tf -4.1123 0 TD -0.31 Tw -[( is non-NIL, then the starting position is)]TJ --10.5452 -1.2 TD -0.008 Tw -(specified only once in )Tj -/TT6 1 Tf -9.8714 0 TD -0 Tw -(POINTS)Tj -/TT2 1 Tf -3.7227 0 TD -0.008 Tw -[(. If )]TJ -/TT6 1 Tf -1.691 0 TD -0 Tw -(CLOSED)Tj -/TT2 1 Tf -4.1123 0 TD -0.008 Tw -[( is NIL, then the starting)]TJ --19.3973 -1.2 TD -0.049 Tw -(vertex must be specified twice in )Tj -/TT6 1 Tf -14.9669 0 TD -0 Tw -(POINTS)Tj -/TT2 1 Tf -3.7227 0 TD -0.049 Tw -(. )Tj -/TT6 1 Tf -0.9315 0 TD -0 Tw -(BRUSH)Tj -/TT2 1 Tf -3.5005 0 TD -0.049 Tw -[( and )]TJ -/TT6 1 Tf -2.3221 0 TD -0 Tw -(DASHING)Tj -/TT2 1 Tf --25.4436 -1.2 TD -0.406 Tw -(are interpreted as described in Chapter 27 of the )Tj -/TT6 1 Tf -25.445 0 TD -0 Tw -(Interlisp-D)Tj --25.445 -1.2 TD -(Reference Manual)Tj -/TT2 1 Tf -8.1714 0 TD -(.)Tj --8.1714 -1.9 TD -(For example,)Tj -/TT11 1 Tf --1.2 -1.771 TD -(\(DRAWPOLYGON \(\(100 . 100\) \(50 . 125\))Tj -0 -1 TD -( \(150 . 175\) \(200 . 100\) \(150 . 50\)\))Tj -T* -( T \(ROUND 3\) \(4 2\) XX\))Tj -/TT2 1 Tf -1.2 -1.829 TD -(would draw a polygon like the following on the display stream XX.)Tj -ET -q -161 0 0 -136 327.51 448.99 cm -/Im1 Do -Q -BT -/TT8 1 Tf -10 0 0 10 258 298.2 Tm -(\(III:27.20\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.646 Tw -(The function )Tj -/TT4 1 Tf -7.0732 0 TD -0 Tw -(FILLPOLYGON)Tj -/TT2 1 Tf -7.1108 0 TD -0.646 Tw -[( contains two new arguments,)]TJ -/TT6 1 Tf --14.1841 -1.2 TD -0 Tw -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -0.131 Tw -[( and )]TJ -/TT6 1 Tf -2.4861 0 TD -0 Tw -(WINDNUMBER)Tj -/TT2 1 Tf -6.9995 0 TD -0.131 Tw -(. The new form for the function,)Tj --15.3753 -1.2 TD -0 Tw -(and definitions for added arguments, follow.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FILLPOLYGON)Tj -/TT6 1 Tf -7.112 0 TD -( POINTS TEXTURE OPERATION WINDNUMBER STREAM)Tj -/TT2 1 Tf -26.835 0 TD -[(\))-4196([Function])]TJ -ET -126.01 233.49 m -558.01 233.49 l -S -BT -/TT6 1 Tf -10 0 0 10 258 218.2 Tm -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -0.326 Tw -[( is the )]TJ -/TT4 1 Tf -3.9238 0 TD -0 Tw -(BITBLT )Tj -/TT2 1 Tf -4.1585 0 TD -0.326 Tw -(operation \(see page 27.15 in the)Tj -/TT6 1 Tf --13.972 -1.2 TD -0.338 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.6819 0 TD -[(\) used to fill the polygon. If the)]TJ -/TT6 1 Tf --13.6819 -1.2 TD -0 Tw -(OPERATION )Tj -/TT2 1 Tf -6.4305 0 TD -(is)Tj -/TT4 1 Tf -0.7222 0 TD -0.263 Tw -[( NIL)]TJ -/TT2 1 Tf -2.1517 0 TD -(, the )Tj -/TT6 1 Tf -2.7496 0 TD -0 Tw -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -0.263 Tw -[( defaults to the )]TJ -/TT6 1 Tf -7.8899 0 TD -0 Tw -(STREAM)Tj -/TT2 1 Tf --25.8335 -1.2 TD -(default )Tj -/TT6 1 Tf -3.2803 0 TD -(OPERATION)Tj -/TT2 1 Tf -5.8896 0 TD -(.)Tj -/TT6 1 Tf --9.1699 -1.9 TD -(WINDNUMBER)Tj -/TT2 1 Tf -6.9995 0 TD -0.01 Tw -[( is the number for the winding rule convention . This)]TJ --6.9995 -1.2 TD -0.235 Tw -[(number is either 0 or 1; 0 indicates the "zero" winding rule, 1)]TJ -T* -0 Tw -(indicates the "odd" winding rule.)Tj -0 -1.9 TD -0.078 Tw -(When filling a polygon, there is more than one way of dealing with)Tj -0 -1.2 TD -0.115 Tw -(the situation where two polygon sides intersect, or one polygon is)Tj -T* -0.357 Tw -[(fully inside the other. Currently, )]TJ -/TT4 1 Tf -16.4818 0 TD -0 Tw -(FILLPOLYGON )Tj -/TT2 1 Tf -7.7457 0 TD -0.357 Tw -(to a display)Tj --24.2275 -1.2 TD -0.099 Tw -(stream uses the "odd" winding rule, which means that intersecting)Tj -T* -0.029 Tw -(polygon sides define areas that are filled or not filled somewhat like)Tj -T* -0 Tw -(a checkerboard. For example, )Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/XObject << -/Im1 74 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -77 0 obj -<< -/Length 3950 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-22)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT11 1 Tf -10 0 0 10 246 731.49 Tm -(\(FILLPOLYGON \(\(125 . 125\) \(150 . 200\) \(175 . 125\))Tj -0 -1 TD -( \(125 . 175\) \(175 . 175\)\))Tj -T* -( GRAYSHADE WINDOW\))Tj -/TT2 1 Tf -1.2 -1.829 TD -(would produce a display something like this:)Tj -ET -q -47 0 0 -69 384.51 681.99 cm -/Im2 Do -Q -BT -10 0 0 10 258 598.2 Tm -0.014 Tw -(This fill convention also takes into account all polygons in )Tj -/TT6 1 Tf -26.0016 0 TD -0 Tw -(POINTS)Tj -/TT2 1 Tf -3.7227 0 TD -(,)Tj --29.7243 -1.2 TD -(if it specifies multiple polygons.)Tj -/TT4 1 Tf -12 0 0 12 54 558.64 Tm -(Section 27.12 Fonts)Tj -ET -54.01 555.49 m -558.01 555.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 536.2 Tm -0.01 Tw -[(A revised set of font printing metrics is a part of the Lyric release of)]TJ -T* -0.327 Tw -(Lisp. Note that Koto font files are still available to users who)Tj -T* -0 Tw -(request them. )Tj -0 -1.9 TD -0.09 Tw -(With the revised font set the interline spacing \(line leading\) is now)Tj -0 -1.2 TD -0.065 Tw -[(consistent across all fonts within a point size. Previously, text with)]TJ -T* -0.207 Tw -(multiple fonts \(but with the same point size, i.e., if a word were)Tj -T* -0.262 Tw -(made bold or italic, or if the family were changed\) would have)Tj -T* -0.206 Tw -[(different leading on different lines. The new .WD files clean up)]TJ -T* -0 Tw -(document appearance.)Tj -0 -1.9 TD -0.021 Tw -(Note that these printer metric changes affect only hardcopy, not the)Tj -0 -1.2 TD -0.554 Tw -[(display. The contents of the display fonts are essentially)]TJ -T* -0 Tw -(unchanged in Lyric.)Tj -0 -1.9 TD -0.332 Tw -(Generally, line leading in the Lyric font files is tighter than in)Tj -0 -1.2 TD -0.082 Tw -[(previous releases of the fonts. The default line leading is now the)]TJ -T* -0.186 Tw -(same as the fonts nominal point size. As a consequence of the)Tj -T* -0.032 Tw -(above, any text file \(one not already formatted for Interpress\) which)Tj -T* -0.152 Tw -(is printed after installation of the new fonts will be formatted to a)Tj -T* -0.227 Tw -[(different length. This means that decisions regarding TEdit line)]TJ -T* -0.137 Tw -(leading, widows and orphans, left/right pages, references to page)Tj -T* -0.103 Tw -[(numbers, etc. will need to change. Koto documentation produced)]TJ -T* -0.21 Tw -(by users may need to be reformatted with different line leading,)Tj -T* -0 Tw -(using the new fonts. )Tj -0 -1.9 TD -0.092 Tw -(All of the font files now have a new naming scheme, which allows)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(FONTSAVAILABLE)Tj -/TT2 1 Tf -9.111 0 TD -0.457 Tw -[( to be able to do more accurate pattern)]TJ --9.111 -1.2 TD -0.236 Tw -[(matching. For example, the display font file for modern 8 bold)]TJ -T* -0 Tw -(italics used to be named:)Tj -/TT11 1 Tf -1.2 -1.771 TD -(Modern8-B-I-C41.Displayfont)Tj -/TT2 1 Tf --1.2 -2.029 TD -(The file is now named:)Tj -/TT11 1 Tf -1.2 -1.771 TD -(Modern08-BIR-C41.Displayfont)Tj -/TT2 1 Tf --1.2 -2.029 TD -(In general font files use the following format: )Tj -0 -1.9 TD -0.058 Tw -(The family name \(e.g., )Tj -/TT11 1 Tf -10.4581 0 TD -0 Tw -(Modern)Tj -/TT2 1 Tf -3.6006 0 TD -0.058 Tw -(\); a two digit size \(e.g., )Tj -/TT11 1 Tf -10.6297 0 TD -0 Tw -(08)Tj -/TT2 1 Tf -1.2002 0 TD -0.058 Tw -(\); a three)Tj --25.8886 -1.329 TD -0.073 Tw -(letter Face \(e.g., )Tj -/TT11 1 Tf -7.7776 0 TD -0 Tw -(BIR)Tj -/TT2 1 Tf -1.8003 0 TD -0.073 Tw -(, for Bold Italic Regular\); the letter C followed)Tj --9.5779 -1.329 TD -0.233 Tw -(by the fonts character set in base 8 \(e.g., )Tj -/TT11 1 Tf -20.7181 0 TD -0 Tw -(C41)Tj -/TT2 1 Tf -1.8003 0 TD -0.233 Tw -(\); and finally an)Tj --22.5184 -1.329 TD -0 Tw -(extension \(e.g., )Tj -/TT11 1 Tf -7.1152 0 TD -(Displayfont)Tj -/TT2 1 Tf -6.6011 0 TD -(\).)Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 32 0 R ->> -/XObject << -/Im2 79 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -81 0 obj -<< -/Length 4837 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-23)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -8 0 0 8 358.22 729.96 Tm -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: SKIO.GETFN.2)Tj -ET -0.02 w [0.32 0.16 0.16 0.16 ]0 d -358.19 721.93 m -457.78 721.93 l -457.78 721.93 m -457.78 737.95 l -358.19 737.95 m -457.78 737.95 l -358.19 737.95 m -358.19 721.93 l -S -BT -/TT6 1 Tf -10 0 0 10 294 711.14 Tm -( )Tj -/TT2 1 Tf --3.6 -1.9 TD -0.065 Tw -(The old file naming convention is still supported, however, with the)Tj -0 -1.2 TD -0.393 Tw -[(exception of the old Strike file naming convention. In Lyric,)]TJ -/TT4 1 Tf -T* -0 Tw -(FONTCREATE)Tj -/TT2 1 Tf -6.833 0 TD -0.049 Tw -[( will first search for fonts using the new font naming)]TJ --6.833 -1.2 TD -0.096 Tw -(convention, and if the desired font is not found it will search using)Tj -T* -0 Tw -(the Koto convention.)Tj -/TT4 1 Tf -0 -1.9 TD -0.332 Tw -(Compatibility considerations)Tj -/TT2 1 Tf -14.0561 0 TD -[( You can continue using the old)]TJ --14.0561 -1.2 TD -0.067 Tw -(printer metrics \(.WD files\) in Lyric, thus preserving document looks)Tj -T* -0.016 Tw -[(between Koto and Lyric. If you choose to do so, it is recommended)]TJ -T* -0.018 Tw -(that you rename your old .WD files to the new naming scheme \(see)Tj -T* -0.079 Tw -(above\), so that you benefit from the changes to the font searching)Tj -T* -0.075 Tw -[(mechanisms. However, we strongly urge you to use the new .WD)]TJ -T* -0.08 Tw -[(files. Otherwise, if you exchange TEdit documents with a site that)]TJ -T* -0.045 Tw -(is using the new files, the documents will print differently at the two)Tj -T* -0.369 Tw -[(sites. The creation date, rather than the naming convention,)]TJ -T* -0 Tw -(determines whether a .WD file represents the old or new format.)Tj -0 -1.9 TD -0.115 Tw -(If, after installing the new .WD files, you wish to print a document)Tj -0 -1.2 TD -0.86 Tw -(using the old Koto formatting, make the font variable)Tj -/TT4 1 Tf -T* -0 Tw -(INTERPRESSFONTDIRECTORIES)Tj -/TT2 1 Tf -15.946 0 TD -0.143 Tw -[( point to a directory containing)]TJ --15.946 -1.2 TD -0.078 Tw -[(the Koto font files. Also any Lyric printer font file information must)]TJ -T* -0 Tw -(be uncached from the sysout. To uncache the fonts, perform)Tj -/TT11 1 Tf -0 -1.771 TD -(\(for INFO in \(FONTSAVAILABLE * * * *)Tj -10.8 -1 TD -(INTERPRESS\))Tj --10.8 -1.2 TD -( do \(APPLY SETFONTDESCRIPTOR INFO\)\))Tj -/TT8 1 Tf -0 -1.829 TD -(\(III:27.30)Tj -/TT11 1 Tf -8 0 0 8 298.0195 392.14 Tm -(\))Tj -/TT2 1 Tf -10 0 0 10 126 374.55 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(STRINGWIDTH)Tj -/TT2 1 Tf -7.055 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(STR FONT FLG RDTBL)Tj -/TT2 1 Tf -10.7783 0 TD -[(\))-20031.8([Function])]TJ -ET -1 w []0 d -126.01 371.84 m -558.01 371.84 l -S -BT -10 0 0 10 258 356.55 Tm -0.258 Tw -(In Lyric )Tj -/TT4 1 Tf -4.017 0 TD -0 Tw -(STRINGWIDTH)Tj -/TT2 1 Tf -7.0547 0 TD -0.258 Tw -[( observes )]TJ -/TT4 1 Tf -5.1293 0 TD -0 Tw -(*PRINT-LEVEL*)Tj -/TT2 1 Tf -7.334 0 TD -0.258 Tw -[( and )]TJ -/TT4 1 Tf -2.7401 0 TD -0 Tw -(*PRINT-)Tj --26.2751 -1.2 TD -(LENGTH*)Tj -/TT2 1 Tf -4.5 0 TD -(.)Tj --4.5 -1.9 TD -0.071 Tw -[(In Medley, STRINGWIDTH with a NIL argument no longer returns)]TJ -ET -570 340.33 0.99 -18.99 re -f -BT -10 0 0 10 258 313.55 Tm -0.069 Tw -[(the string width of the string with *STANDARD-OUTPUT* font. It)]TJ -ET -570 321.33 0.99 -11.99 re -f -BT -10 0 0 10 258 301.55 Tm -0 Tw -(now uses DEFAULTFONT. )Tj -ET -570 309.33 0.99 -11.99 re -f -BT -10 0 0 10 258 282.55 Tm -0.132 Tw -[(Some new font manipulation functions have been added to Lisp.)]TJ -0 -1.2 TD -0 Tw -(They are:)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(WRITESTRIKEFONTFILE)Tj -/TT2 1 Tf -11.778 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(FONT CHARSET FILENAME)Tj -/TT2 1 Tf -13.0566 0 TD -[(\))-13030.5([Function])]TJ -ET -126.01 248.84 m -558.01 248.84 l -S -BT -10 0 0 10 258 233.55 Tm -0.171 Tw -[(Takes a display font font descriptor and a character set number,)]TJ -0 -1.2 TD -0.027 Tw -(and writes that character set into a file suitable for reading in again.)Tj -T* -0.243 Tw -(Note that the font descriptors current state is used \(which was)Tj -T* -0.184 Tw -(perhaps modified by INSPECTing the datum\), so this provides a)Tj -T* -0 Tw -(mechanism for creating/modifying new fonts.)Tj -0 -1.9 TD -(For example:)Tj -/TT11 1 Tf -0 -1.771 TD -(\(WRITESTRIKEFONTFILE \(FONTCREATE GACHA 10\) 0)Tj -2.4 -1.2 TD -({DSK}Magic10-MRR-C0.DISPLAYFONT\))Tj -/TT2 1 Tf --2.4 -2.029 TD -0.004 Tw -(writes a font file which is identical in appearance to the current state)Tj -0 -1.2 TD -0 Tw -(of Gacha 10 charset 0.)Tj -0 -1.9 TD -0.48 Tw -[(If your DISPLAYFONTDIRECTORIES includes {DSK}, then a)]TJ -0 -1.2 TD -0.291 Tw -(subsequent \(FONTCREATE MAGIC 10\) will create a new font)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -84 0 obj -<< -/Length 4397 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-24)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.13 Tw -[(descriptor whose appearance is the same as the old Gacha font)]TJ -0 -1.2 TD -0 Tw -(descriptor.)Tj -0 -1.9 TD -0.196 Tw -(However, the new font is identical to the old one in appearance)Tj -0 -1.2 TD -0.211 Tw -[(only. The individual datatype fields and bitmap may not be the)]TJ -T* -0.231 Tw -(same as those in the old font descriptor, due to peculiarities of)Tj -T* -0 Tw -(different font file formats.)Tj -/TT4 1 Tf -12 0 0 12 54 635.64 Tm -(Section 27.13 Font Files and Font Directories)Tj -ET -54.01 632.49 m -558.01 632.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 617.2 Tm -(\(III:27.31\))Tj -/TT2 1 Tf -0 -1.7 TD -0.205 Tw -[(Press fonts are not part of the sysout since PRESS is now a)]TJ -0 -1.2 TD -0 Tw -(Library module. )Tj -/TT4 1 Tf -12 0 0 12 54 560.64 Tm -(Section 27.14 Font Classes)Tj -ET -54.01 557.49 m -558.01 557.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 538.2 Tm -(\(III:27.32-27.48\))Tj -/TT2 1 Tf -0 -1.9 TD -0.2 Tw -(This section has been expunged from the )Tj -/TT6 1 Tf -20.0226 0 TD -(InterLisp-D Reference)Tj --20.0226 -1.2 TD -0 Tw -(Manual)Tj -/TT2 1 Tf -3.2798 0 TD -0.215 Tw -[(. Renumber the sections which followed the old Section)]TJ --3.2798 -1.2 TD -0 Tw -(27.14 as)Tj -/TT4 1 Tf -0 -1.9 TD -(SECTION 27.15 )Tj -/TT9 1 Tf -7.5029 0 TD -<0089>Tj -/TT4 1 Tf -0.9868 0 TD -( SECTION 27.14 Font Profiles)Tj --8.4897 -1.706 TD -(SECTION 27.16 )Tj -/TT9 1 Tf -7.5029 0 TD -<0089>Tj -/F1 1 Tf -0.9868 0 TD -( )Tj -/TT4 1 Tf -0.278 0 TD -(SECTION 27.15 Image Objects)Tj --8.7677 -1.706 TD -0.209 Tw -(SECTION 27.17)Tj -/F1 1 Tf -7.4341 0 TD -0 Tw -( )Tj -/TT9 1 Tf -0.487 0 TD -<0089>Tj -/F1 1 Tf -0.9868 0 TD -( )Tj -/TT4 1 Tf -0.487 0 TD -0.209 Tw -[(SECTION 27.16 Implementation of Image)]TJ --9.3949 -1.006 TD -0 Tw -(Streams)Tj -12 0 0 12 54 406.46 Tm -(Section 27.14 Font Profiles)Tj -ET -54.01 403.31 m -558.01 403.31 l -S -BT -/TT8 1 Tf -10 0 0 10 258 384.02 Tm -(\(III:27.34\))Tj -/TT2 1 Tf -0 -1.9 TD -0.2 Tw -(The variable)Tj -/TT4 1 Tf -5.7029 0 TD -[( FONTCHANGEFLG )]TJ -/TT2 1 Tf -10.0099 0 TD -[( has an additional value,)]TJ -/TT4 1 Tf -11.5856 0 TD -[( ALL)]TJ -/TT2 1 Tf -2.4217 0 TD -0 Tw -(.)Tj -/TT4 1 Tf --29.7202 -1.2 TD -(FONTCHANGEFLG=ALL)Tj -/TT2 1 Tf -11.5825 0 TD -0.041 Tw -[( indicates that all calls to)]TJ -/TT4 1 Tf -11.0439 0 TD -[( CHANGEFONT)]TJ -/TT2 1 Tf --22.6264 -1.2 TD -0 Tw -(are executed.)Tj -/TT4 1 Tf -0 -1.9 TD -(\(III:27.33-34\))Tj -ET -570 336.8 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 303.02 Tm -0.301 Tw -(The function )Tj -/TT4 1 Tf -6.3832 0 TD -0 Tw -(FONTNAME)Tj -/TT2 1 Tf -5.666 0 TD -0.301 Tw -[( no longer exists. This function was)]TJ -ET -570 317.8 0.99 -18.99 re -f -BT -10 0 0 10 258 291.02 Tm -0.101 Tw -[(previously used in Interlisp-D to collect the names and values of)]TJ -ET -570 298.8 0.99 -11.99 re -f -BT -10 0 0 10 258 279.02 Tm -0.055 Tw -(variables on )Tj -/TT4 1 Tf -5.7799 0 TD -0 Tw -(FONTDEFSVARS)Tj -/TT2 1 Tf -8.167 0 TD -0.055 Tw -[(. The variable )]TJ -/TT4 1 Tf -6.8343 0 TD -0 Tw -(FONTDEFSVARS)Tj -/TT2 1 Tf -8.167 0 TD -0.055 Tw -[( is)]TJ -ET -570 286.8 0.99 -11.99 re -f -BT -10 0 0 10 258 267.02 Tm -0.065 Tw -(no longer used; it was appropriate when most output devices were)Tj -ET -570 274.8 0.99 -11.99 re -f -BT -10 0 0 10 258 255.02 Tm -0.198 Tw -(fixed-pitch, "line-printer" style devices, but is not suitable for use)Tj -ET -570 262.8 0.99 -11.99 re -f -BT -10 0 0 10 258 243.02 Tm -0 Tw -(when most output devices are laser printers.)Tj -ET -570 250.8 0.99 -11.99 re -f -2 w -54.01 187.81 m -558.01 187.81 l -S -BT -/TT4 1 Tf -14 0 0 14 54 175.9 Tm -(Chapter 28 Windows and Menus)Tj -ET -1 w -54.01 172.31 m -558.01 172.31 l -S -BT -12 0 0 12 54 148.46 Tm -(Section 28.4 Windows)Tj -ET -54.01 145.31 m -558.01 145.31 l -S -BT -/TT8 1 Tf -10 0 0 10 258 126.02 Tm -(\(III:28.13, 28.38\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.041 Tw -[( ADDMENU)]TJ -/TT2 1 Tf -5.4289 0 TD -[( function will change a windows )]TJ -/TT4 1 Tf -14.6982 0 TD -0 Tw -(RESHAPEFN)Tj -/TT2 1 Tf -6.1649 0 TD -0.041 Tw -[( and)]TJ --28.015 -1.2 TD -0 Tw -(also will change the windows)Tj -/TT4 1 Tf -13.0625 0 TD -( REPAINTFN)Tj -/TT2 1 Tf -5.9975 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 67.46 Tm -(Section 28.4.5 Reshaping Windows)Tj -ET -54.01 64.31 m -558.01 64.31 l -S -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 86 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 13 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -88 0 obj -<< -/Length 4651 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-25)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT8 1 Tf -10 0 0 10 258 730.2 Tm -(\(III:28.17\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.2836 Tw -(The Lisp window system allows the following minimum window)Tj -0 -1.2 TD -0 Tw -(sizes:)Tj -0 -1.9 TD -0.082 Tw -(When creating a new window, the width and height specified must)Tj -0 -1.2 TD -0.087 Tw -(be at least 9, or else you will get an error "region too small to use)Tj -T* -0 Tw -(as a window")Tj -0 -1.9 TD -0.029 Tw -(When reshaping a window, the smallest shape you can get is width)Tj -0 -1.2 TD -0.113 Tw -[(= 26 and height = height of the font to be used in the window. If)]TJ -T* -0.181 Tw -(you specify a smaller region, )Tj -/TT4 1 Tf -13.8552 0 TD -0 Tw -(SHAPEW)Tj -/TT2 1 Tf -4.3878 0 TD -0.181 Tw -[( will simply adjust it to fit)]TJ --18.243 -1.2 TD -0 Tw -(these limits.)Tj -/TT4 1 Tf -12 0 0 12 54 561.64 Tm -(Section 28.4.8 Shrinking Windows Into Icons)Tj -ET -54.01 558.49 m -558.01 558.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 539.2 Tm -(\(III:28.22\))Tj -/TT4 1 Tf --13.2 -1.9 TD -(SHRINKFN)Tj -/TT2 1 Tf -35.142 0 TD -([Window property])Tj -ET -126.01 517.49 m -558.01 517.49 l -S -BT -10 0 0 10 258 502.2 Tm -0.293 Tw -(In previous releases, there was a bug in the attached window)Tj -0 -1.2 TD -0.145 Tw -(system such that if an attached window had a )Tj -/TT4 1 Tf -21.7611 0 TD -0 Tw -(SHRINKFN)Tj -/TT2 1 Tf -5.1649 0 TD -0.145 Tw -[( of the)]TJ --26.926 -1.2 TD -0.032 Tw -(single symbol DONT, attempting to shrink the window resulted in a)Tj -T* -0.137 Tw -[(break with the message "UNDEFINED FUNCTION DONT." For)]TJ -T* -0.212 Tw -(this case in Lyric, all windows that can be shrunk will be, while)Tj -T* -0.08 Tw -(those windows with a )Tj -/TT4 1 Tf -10.047 0 TD -0 Tw -(SHRINKFN)Tj -/TT2 1 Tf -5.1665 0 TD -0.08 Tw -[( of the symbol DONT will be left)]TJ --15.2136 -1.2 TD -0 Tw -(open.)Tj -ET -258.01 425.49 m -558.01 425.49 l -S -BT -10 0 0 10 258 408.2 Tm -0.408 Tw -(To facilitate the management of window regions, the window)Tj -T* -0 Tw -(property)Tj -/TT4 1 Tf -3.6685 0 TD -0.326 Tw -[( EXPANDREGIONFN)]TJ -/TT2 1 Tf -10.0485 0 TD -[( has been added to Lisp. This)]TJ --13.717 -1.2 TD -0.023 Tw -(feature allows applications to arrange for reshaping a window when)Tj -T* -0 Tw -(it is expanded.)Tj -/TT4 1 Tf --13.2 -1.9 TD -(EXPANDREGIONFN)Tj -/TT2 1 Tf -35.142 0 TD -([Window property])Tj -ET -126.01 350.49 m -558.01 350.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 335.2 Tm -(EXPANDREGIONFN)Tj -/TT2 1 Tf -9.4453 0 TD -0.346 Tw -(, if non-)Tj -/TT4 1 Tf -4.027 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.346 Tw -(, should be the function to be)Tj --15.0831 -1.2 TD -0.288 Tw -(called \(with the window as its argument\) before the window is)Tj -T* -0 Tw -(actually expanded.)Tj -0 -1.9 TD -(The )Tj -/TT4 1 Tf -2.191 0 TD -(EXPANDREGIONFN)Tj -/TT2 1 Tf -9.4453 0 TD -0.19 Tw -[( must return )]TJ -/TT4 1 Tf -6.1828 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.19 Tw -[( or a valid region, and)]TJ --19.4299 -1.2 TD -0.14 Tw -[(must not do any window operations \(e.g., redisplaying\). If )]TJ -/TT4 1 Tf -27.2467 0 TD -0 Tw -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.14 Tw -[( is)]TJ --28.8575 -1.2 TD -0.867 Tw -(returned, the window is expanded normally, as if the)Tj -/TT4 1 Tf -T* -0 Tw -(EXPANDREGIONFN)Tj -/TT2 1 Tf -9.4453 0 TD -0.554 Tw -[( had not existed. The region returned)]TJ --9.4453 -1.2 TD -0.008 Tw -(specifies the new region for the main window only, not for the group)Tj -T* -0.064 Tw -[(including any of its attached windows. The window will be opened)]TJ -T* -0.049 Tw -(in its new shape, and any attached windows will be repositioned or)Tj -T* -0.666 Tw -[(rejustified appropriately. The main window must have a)]TJ -/TT4 1 Tf -T* -0 Tw -(REPAINTFN)Tj -/TT2 1 Tf -5.722 0 TD -0.325 Tw -[( which can repaint the entire window under these)]TJ --5.722 -1.2 TD -0 Tw -(conditions.)Tj -0 -1.9 TD -0.196 Tw -(As with expanding windows normally, the )Tj -/TT4 1 Tf -19.6853 0 TD -0 Tw -(OPENFN)Tj -/TT2 1 Tf -4.1647 0 TD -0.196 Tw -[( for the main)]TJ --23.85 -1.2 TD -0 Tw -(window is not called.)Tj -0 -1.9 TD -0.071 Tw -(Also, the window is reshaped without checking for a special shape)Tj -0 -1.2 TD -0 Tw -(function \(e.g., a )Tj -/TT4 1 Tf -7.1709 0 TD -(DOSHAPEFN)Tj -/TT2 1 Tf -6.2781 0 TD -(\).)Tj -/TT8 1 Tf --13.449 -2.3 TD -(\(III:28.23\))Tj -/TT2 1 Tf -0 -1.9 TD -0.314 Tw -(Add the variable)Tj -/TT4 1 Tf -7.855 0 TD --0.0001 Tc -[( DEFAULTICONFN )]TJ -/TT2 1 Tf -9.6818 0 TD -0 Tc -(to the Icon section of the)Tj -/TT6 1 Tf --17.5368 -1.2 TD -0 Tw -(InterLisp-D Reference Manual)Tj -/TT2 1 Tf -13.3398 0 TD -(:)Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -91 0 obj -<< -/Length 5612 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-26)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 126 730.2 Tm -(DEFAULTICONFN)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 258 708.2 Tm -0.404 Tw -(Changes how an icon is created when a window having no)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(ICONFN)Tj -/TT2 1 Tf -3.833 0 TD -0.08 Tw -[( is shrunk or when )]TJ -/TT4 1 Tf -8.7926 0 TD -0 Tw -(SHRINKW,)Tj -/TT2 1 Tf -5.0552 0 TD -0.08 Tw -[( with a )]TJ -/TT6 1 Tf -3.408 0 TD -0 Tw -(TOWHAT)Tj -/TT2 1 Tf -4.3325 0 TD -0.08 Tw -[( argument)]TJ --25.4212 -1.2 TD -0.059 Tw -[(of a string, is called. The value of)]TJ -/TT4 1 Tf -15.3685 0 TD -[( DEFAULTICONFN)]TJ -/TT2 1 Tf -8.8359 0 TD -[( is a function)]TJ --24.2043 -1.2 TD -0.302 Tw -(of two arguments \(window text\); text is either)Tj -/TT4 1 Tf -21.8996 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.1907 0 TD -[( or a string.)]TJ -/TT4 1 Tf --24.0903 -1.2 TD -0 Tw -(DEFAULTICONFN )Tj -/TT2 1 Tf -8.7769 0 TD -(returns an icon window.)Tj --8.7769 -1.9 TD -0.055 Tw -(The initial value of)Tj -/TT4 1 Tf -8.2251 0 TD -[( DEFAULTICONFN )]TJ -/TT2 1 Tf -9.1647 0 TD -0 Tw -(is )Tj -/TT4 1 Tf -1.055 0 TD -(MAKETITLEBARICON)Tj -/TT2 1 Tf -10.3873 0 TD -0.055 Tw -(. It)Tj --28.832 -1.2 TD -0.095 Tw -[(creates a window that is a title bar only; the title is either the text)]TJ -T* -0.235 Tw -(argument, the windows title, or "Icon made " for titleless)Tj -T* -0 Tw -(windows. )Tj -/TT4 1 Tf -4.8186 0 TD -(MAKETITLEBARICON)Tj -/TT2 1 Tf -10.3882 0 TD -0.428 Tw -[( places the title bar at some)]TJ --15.2068 -1.2 TD -0 Tw -(corner of the main window.)Tj -0 -1.9 TD -0.013 Tw -(An alternative behavior is available by setting )Tj -/TT4 1 Tf -20.3806 0 TD -0 Tw -(DEFAULTICONFN)Tj -/TT2 1 Tf -8.499 0 TD -0.013 Tw -[( to)]TJ --28.8796 -1.2 TD -0 Tw -(be )Tj -/TT4 1 Tf -1.4101 0 TD -(TEXTICON)Tj -/TT11 1 Tf -5.0559 0 TD -0.043 Tw -(. )Tj -/TT4 1 Tf -1.8863 0 TD -0 Tw -(TEXTICON )Tj -/TT2 1 Tf -5.3535 0 TD -0.02 Tw -(creates a titled icon window from the)Tj --13.7058 -1.329 TD -0.403 Tw -[(text or windows title. It is described further in Appendix B)]TJ -0 -1.2 TD -0 Tw -(\(ICONW\).)Tj -/TT8 1 Tf -0 -1.9 TD -(\(III:28.23\))Tj -ET -570 532.69 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 498.91 Tm -0.365 Tw -[(You can now copy-select titled icons such as those used by)]TJ -ET -570 513.69 0.99 -18.99 re -f -BT -10 0 0 10 258 486.91 Tm -0.071 Tw -[(FileBrowser, SEdit, TEdit, Sketch. The default behavior is that the)]TJ -ET -570 494.69 0.99 -11.99 re -f -BT -10 0 0 10 258 474.91 Tm -0.032 Tw -(icons title is unread \(via )Tj -/TT4 1 Tf -11.1092 0 TD -0 Tw -(BKSYSBUF)Tj -/TT2 1 Tf -5.5005 0 TD -0.032 Tw -(\), but if the icon window has a)Tj -ET -570 482.69 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 462.91 Tm -0 Tw -(COPYFN )Tj -/TT2 1 Tf -4.4488 0 TD -0.004 Tw -(property, that gets called instead, with the icon window as)Tj -ET -570 470.69 0.99 -11.99 re -f -BT -10 0 0 10 258 450.91 Tm -0.212 Tw -[(its argument. For example, if the name displayed in an icon is)]TJ -ET -570 458.69 0.99 -11.99 re -f -BT -10 0 0 10 258 438.91 Tm -0.05 Tw -(really a symbol, and you want copy selection to cause the name to)Tj -ET -570 446.69 0.99 -11.99 re -f -BT -10 0 0 10 258 426.91 Tm -0.11 Tw -(be unread correctly with respect to the package and read table of)Tj -ET -570 434.69 0.99 -11.99 re -f -BT -10 0 0 10 258 414.91 Tm -0.398 Tw -[(the exec you are copying into, you could put the following)]TJ -ET -570 422.69 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 402.91 Tm -0 Tw -(COPYFN)Tj -/TT2 1 Tf -4.167 0 TD -( property on the icon window:)Tj -ET -570 410.69 0.99 -25.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 376.2 Tm -(\(lambda \(window\))Tj -ET -570 384.69 0.99 -13.99 re -f -BT -10 0 0 10 258 360.91 Tm -(\(il:bksysbuf)Tj -/TT4 1 Tf -7.2012 0 TD -( )Tj -/TT11 1 Tf -0.2778 0 TD -( )Tj -/TT2 1 Tf -0.6001 0 TD -()Tj -/TT11 1 Tf -6.4746 0 TD -( )Tj -/TT2 1 Tf -0.6001 0 TD -( t )Tj -/TT11 1 Tf -0.8335 0 TD -(\)\))Tj -ET -570 370.69 0.99 -15.28 re -f -BT -/TT4 1 Tf -12 0 0 12 54 332.06 Tm -(Section 28.4.11 Terminal I/O and Page Holding)Tj -ET -54.01 328.91 m -558.01 328.91 l -S -BT -/TT8 1 Tf -10 0 0 10 258 309.62 Tm -(\(III:28.29\) )Tj -/TT4 1 Tf -0 -1.9 TD -(TTYDISPLAYSTREAM )Tj -/TT2 1 Tf -11.4018 0 TD -0.679 Tw -(has been fixed so that it can be)Tj --11.4018 -1.2 TD -0 Tw -(successfully used with non-windows.)Tj -/TT4 1 Tf -12 0 0 12 54 251.06 Tm -(Section 28.5 Menus)Tj -ET -54.01 247.91 m -558.01 247.91 l -S -BT -/TT2 1 Tf -10 0 0 10 258 232.62 Tm -0.054 Tw -(Two features have been added to this section, ICONW for creating)Tj -T* -0.121 Tw -(icons, and FREE MENU, for creating and using free menus. Both)Tj -T* -0 Tw -(features were formerly part of the Lisp Library. )Tj -0 -1.9 TD -0.205 Tw -(The description for ICONW is in Appendix C. The FREE MENU)Tj -0 -1.2 TD -0 Tw -(description is in Appendix D.)Tj -ET -258.01 172.91 m -558.01 172.91 l -S -BT -10 0 0 10 258 155.62 Tm -0.125 Tw -(The Lyric version of Free Menu differs in some respects from the)Tj -T* -0.312 Tw -[(Koto version of Free Menu. Following is a description of the)]TJ -T* -0.332 Tw -(incompatible feature changes from the old version to the new)Tj -T* -0.241 Tw -[(version of Free Menu. Some of the terminology used in these)]TJ -T* -0.344 Tw -(notes is introduced in the Free Menu documentation found in)Tj -T* -0.301 Tw -[(Appendix B. Please reference Appendix B before reading the)]TJ -T* -0 Tw -(following notes.)Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -94 0 obj -<< -/Length 6610 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-27)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.33 Tw -[()-1449.9(The function )]TJ -/TT4 1 Tf -8.2412 0 TD --0.0001 Tc -0 Tw -(FREEMENU )Tj -/TT2 1 Tf -6.2186 0 TD -0 Tc -0.33 Tw -(is used to create a Free Menu,)Tj --12.6598 -1.2 TD -0.263 Tw -(replacing and combining the functions )Tj -/TT4 1 Tf -18.3814 0 TD -0 Tw -(FM.MAKEMENU)Tj -/TT2 1 Tf -7.6076 0 TD -0.263 Tw -[( and)]TJ -/TT4 1 Tf --25.989 -1.2 TD -0 Tw -(FM.FORMATMENU.)Tj -/TT2 1 Tf --1.8 -1.9 TD -(The description of Free Menu has these changes:)Tj -T* -0.18 Tw -[(1.)-966(There is no longer a )]TJ -/TT4 1 Tf -11.8719 0 TD -0 Tw -(WINDOWPROPS)Tj -/TT2 1 Tf -7.8881 0 TD -0.18 Tw -[( list in the Free Menu)]TJ --17.96 -1.2 TD -0.543 Tw -[(Description. Instead, the window properties )]TJ -/TT4 1 Tf -22.9348 0 TD -0 Tw -(TITLE)Tj -/TT2 1 Tf -2.7773 0 TD -0.543 Tw -[( and)]TJ -/TT4 1 Tf --25.7121 -1.2 TD -0 Tw -(BORDER)Tj -/TT2 1 Tf -4.3335 0 TD -0.139 Tw -[( thatwere previously set in the )]TJ -/TT4 1 Tf -14.3408 0 TD -0 Tw -(WINDOWPROPS )Tj -/TT2 1 Tf -8.3055 0 TD -(list)Tj --26.9798 -1.2 TD -0.019 Tw -(can now be passed to the function)Tj -/TT4 1 Tf -15.2912 0 TD -[( FREEMENU)]TJ -/TT2 1 Tf -5.9082 0 TD -[(. Other window)]TJ --21.1994 -1.2 TD -0.004 Tw -(properties \(like )Tj -/TT4 1 Tf -6.8439 0 TD -0 Tw -(FM.PROMPTWINDOW)Tj -/TT2 1 Tf -10.3872 0 TD -0.004 Tw -(\) can be set directly after)Tj --17.2311 -1.2 TD -0.392 Tw -(Free Menu returns the window using the system function)Tj -/TT4 1 Tf -T* -0 Tw -(WINDOWPROP)Tj -/TT2 1 Tf -7.222 0 TD -0.01 Tw -[(. See Appendix B, Section 28.7.14, Free Menu)]TJ --7.222 -1.2 TD -0 Tw -(Window Properties.)Tj --1.8 -1.9 TD -0.187 Tw -[(2.)-966(Setting the initial state of an item is now done with the item)]TJ -1.8 -1.2 TD -0 Tw -(property)Tj -/TT4 1 Tf -3.6685 0 TD -0.253 Tw -[( INITSTATE)]TJ -/TT2 1 Tf -5.6975 0 TD -[( in the item description, rather than the)]TJ -/TT4 1 Tf --9.366 -1.2 TD -0 Tw -(STATE)Tj -/TT2 1 Tf -3.278 0 TD -( property.)Tj --5.078 -1.9 TD -(Free Menu Items has been modified as follows:)Tj -0 -1.7 TD -(1.)Tj -/TT4 1 Tf -1.8 0 TD -(3STATE)Tj -/TT2 1 Tf -3.834 0 TD -0.078 Tw -[( items now have states)]TJ -/TT4 1 Tf -10.4834 0 TD -[( OFF)]TJ -/TT2 1 Tf -2.3553 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.6337 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.078 Tw -(, and )Tj -/TT4 1 Tf -2.658 0 TD -0 Tw -(T)Tj -/TT2 1 Tf -0.6108 0 TD -0.078 Tw -[( \(instead of a)]TJ -/TT4 1 Tf --22.186 -1.2 TD -0 Tw -(NEUTRAL )Tj -/TT2 1 Tf -5.0552 0 TD -(state\). They appear by default in the)Tj -/TT4 1 Tf -16.2876 0 TD -( NIL)Tj -/TT2 1 Tf -1.8887 0 TD -( state.)Tj --25.0314 -1.9 TD -(2.)Tj -/TT4 1 Tf -1.8 0 TD -(STATE)Tj -/TT2 1 Tf -3.2778 0 TD -0.093 Tw -[( items are general purpose items which maintain state,)]TJ --3.2778 -1.2 TD -0.13 Tw -(and replace the functionality of)Tj -/TT4 1 Tf -14.0844 0 TD -[( NCHOOSE)]TJ -/TT2 1 Tf -5.4626 0 TD -[( items. To get the)]TJ --19.547 -1.2 TD -0.754 Tw -(functionality of )Tj -/TT4 1 Tf -8.1784 0 TD -0 Tw -(NCHOOSE)Tj -/TT2 1 Tf -5.0562 0 TD -0.754 Tw -[( items, specify the property)]TJ -/TT4 1 Tf --13.2346 -1.2 TD -0 Tw -(MENUITEMS)Tj -/TT2 1 Tf -6 0 TD -0.189 Tw -[( \(a list of items to go in a popup menu\), which)]TJ --6 -1.2 TD -0.402 Tw -(instructs the)Tj -/TT4 1 Tf -5.7931 0 TD -[( STATE )]TJ -/TT2 1 Tf -4.6375 0 TD -(item to popup the menu when it is)Tj --10.4306 -1.2 TD -0.186 Tw -(selected. )Tj -/TT4 1 Tf -4.9301 0 TD -0 Tw -(STATE )Tj -/TT2 1 Tf -3.7417 0 TD -0.186 Tw -(items do not display their current state by)Tj --8.6718 -1.2 TD -0.042 Tw -(default, like )Tj -/TT4 1 Tf -5.4204 0 TD -0 Tw -(NCHOOSE)Tj -/TT2 1 Tf -5.0562 0 TD -0.042 Tw -[( items used to. Instead, if you want the)]TJ --10.4766 -1.2 TD -0.088 Tw -(state displayed in the Free Menu, you have to link the )Tj -/TT4 1 Tf -24.9265 0 TD -0 Tw -(STATE)Tj -/TT2 1 Tf --24.9265 -1.2 TD -0.118 Tw -(item to a )Tj -/TT4 1 Tf -4.4668 0 TD -0 Tw -(DISPLAY)Tj -/TT2 1 Tf -4.3342 0 TD -0.118 Tw -[( item using a Free Menu Item Link named)]TJ --8.801 -1.2 TD -0.248 Tw -[("DISPLAY". The current state of the )]TJ -/TT4 1 Tf -18.1203 0 TD -0 Tw -(STATE)Tj -/TT2 1 Tf -3.2778 0 TD -0.248 Tw -[( item will then)]TJ --21.3981 -1.2 TD -0.021 Tw -(automatically be displayed in the specified )Tj -/TT4 1 Tf -19.0816 0 TD -0 Tw -(DISPLAY)Tj -/TT2 1 Tf -4.334 0 TD -0.021 Tw -[( item. The)]TJ --23.4155 -1.2 TD -0.017 Tw -(item properties )Tj -/TT4 1 Tf -6.9256 0 TD -0 Tw -(MENUFONT)Tj -/TT2 1 Tf -5.666 0 TD -0.017 Tw -[( and )]TJ -/TT4 1 Tf -2.2581 0 TD -0 Tw -(MENUTITLE)Tj -/TT2 1 Tf -5.7217 0 TD -0.017 Tw -[( also apply to the)]TJ --20.5714 -1.2 TD -0 Tw -(popup menu.)Tj --1.8 -1.9 TD -(3.)Tj -/TT4 1 Tf -1.8 0 TD -(NWAY)Tj -/TT2 1 Tf -3.055 0 TD -0.047 Tw -[( items are declared slightly differently. There is now the)]TJ --3.055 -1.2 TD -0.214 Tw -(notion of an NWay Collection, which is a collection of items)Tj -T* -0.179 Tw -[(acting an a single nway item. The Collection is declared by)]TJ -T* -0.25 Tw -(specifying any number of NWay items, each with the same)Tj -/TT4 1 Tf -T* -0 Tw -(COLLECTION)Tj -/TT2 1 Tf -6.4995 0 TD -0.31 Tw -[( property. NWay Collections have properties)]TJ --6.4995 -1.2 TD -0.605 Tw -(themselves, accessible by the macro )Tj -/TT4 1 Tf -19.6432 0 TD -0 Tw -(FM.NWAYPROPS)Tj -/TT2 1 Tf -8.2768 0 TD -(.)Tj --27.92 -1.2 TD -0.058 Tw -(These properties can be specified in property list format as the)Tj -T* -0.008 Tw -(value of the )Tj -/TT4 1 Tf -5.4722 0 TD -0 Tw -(NWAYPROPS)Tj -/TT2 1 Tf -6.5558 0 TD -0.008 Tw -[( Item Property of the first NWay item)]TJ --12.028 -1.2 TD -0.308 Tw -[(declared for each Collection. NWay Collections by default)]TJ -T* -0.336 Tw -(cannot be deselected \(a state in which no item selected\).)Tj -T* -0.03 Tw -(Setting the Collection property )Tj -/TT4 1 Tf -13.7943 0 TD -0 Tw -(DESELECT)Tj -/TT2 1 Tf -5.334 0 TD -0.03 Tw -[( to any non-nil value)]TJ --19.1283 -1.2 TD -0.202 Tw -[(changes this behavior. The state of the NWay Collection is)]TJ -T* -0 Tw -(maintained in its )Tj -/TT4 1 Tf -7.5039 0 TD -(STATE)Tj -/TT2 1 Tf -3.2778 0 TD -( property.)Tj --12.5817 -1.9 TD -(4.)Tj -/TT4 1 Tf -1.8 0 TD -0.0001 Tc -(EDIT )Tj -/TT2 1 Tf -2.8308 0 TD -0 Tc -0.275 Tw -(items no longer will stop at the edge of the window.)Tj --2.8308 -1.2 TD -0.077 Tw -(Editing is either restricted by the )Tj -/TT4 1 Tf -14.9688 0 TD -0 Tw -(MAXWIDTH)Tj -/TT2 1 Tf -5.499 0 TD -0.077 Tw -[( property, or else)]TJ --20.4679 -1.2 TD -0.103 Tw -[(it is not restricted at all. The )]TJ -/TT4 1 Tf -13.6067 0 TD -0 Tw -(EDITSTOP)Tj -/TT2 1 Tf -5.0005 0 TD -0.103 Tw -[( property is obsolete.)]TJ --18.6072 -1.2 TD -(When you start editing with the right mouse button the item is)Tj -T* -0 Tw -(first cleared.)Tj -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -97 0 obj -<< -/Length 7108 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-28)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -(5.)Tj -/TT4 1 Tf -1.8 0 TD -(EDITSTART)Tj -/TT2 1 Tf -5.611 0 TD -0.024 Tw -[( items now specify their associated edit item \(there)]TJ --5.611 -1.2 TD -0.017 Tw -(can only be one, now\) by a Free Menu Item Link named "EDIT")Tj -T* -0 Tw -(from the )Tj -/TT4 1 Tf -3.9458 0 TD -(EDITSTART)Tj -/TT2 1 Tf -5.6108 0 TD -( item to the )Tj -/TT4 1 Tf -5.2246 0 TD -(EDIT)Tj -/TT2 1 Tf -2.2778 0 TD -( item.)Tj --18.8591 -1.9 TD -(6.)Tj -/TT4 1 Tf -1.8 0 TD -(TITLE)Tj -/TT2 1 Tf -2.778 0 TD -0.126 Tw -[( items are replaced by)]TJ -/TT4 1 Tf -10.3419 0 TD -[( DISPLAY)]TJ -/TT2 1 Tf -4.7378 0 TD -[( items, which work the)]TJ --17.8577 -1.2 TD -0 Tw -(same way.)Tj --1.8 -1.9 TD -0.171 Tw -(With Free Menu, the item interface functions can take the actual)Tj -0 -1.2 TD -0.374 Tw -(item datatype, the items )Tj -/TT6 1 Tf -12.6122 0 TD -0 Tw -(ID)Tj -/TT2 1 Tf -1 0 TD -0.374 Tw -[( or)]TJ -/TT6 1 Tf -1.541 0 TD -[( LABEL)]TJ -/TT2 1 Tf -3.7651 0 TD -(, or a list of the form)Tj --18.9183 -1.2 TD -0 Tw -(\()Tj -/TT4 1 Tf -0.333 0 TD -(GROUPID)Tj -/TT6 1 Tf -4.667 0 TD -0.055 Tw -[( ITEMID)]TJ -/TT2 1 Tf -3.7215 0 TD -[(\) specifying a particular item in a group, as the)]TJ -/TT6 1 Tf --8.7215 -1.2 TD -0 Tw -(ITEM )Tj -/TT2 1 Tf -2.6665 0 TD -(argument.)Tj --2.6665 -1.9 TD -0.21 Tw -(The description for ICONW is in Appendix B. The FREE MENU)Tj -0 -1.2 TD -0 Tw -(description is in Appendix C.)Tj -ET -258.01 584.49 m -558.01 584.49 l -S -BT -10 0 0 10 258 567.2 Tm -0.568 Tw -(These changes have occurred in the Free Menu Interface)Tj -T* -0 Tw -(functions:)Tj -/TT4 1 Tf --13.2 -1.9 TD -(\(FREEMENU)Tj -/TT6 1 Tf -5.944 0 TD -( DESCRIPTION TITLE BACKGROUND BORDER)Tj -/TT2 1 Tf -22.1138 0 TD -[(\))-10009.2([Function])]TJ -ET -126.01 533.49 m -558.01 533.49 l -S -BT -10 0 0 10 258 518.2 Tm -(Replaces)Tj -/TT4 1 Tf -4.1689 0 TD --0.0001 Tc -0.1881 Tw -[( FM.MAKEMENU )]TJ -/TT2 1 Tf -8.5409 0 TD -0 Tc -0 Tw -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.188 Tw -[( FM.FORMATMENU)]TJ -/TT2 1 Tf -9.4087 0 TD -(. The desired)Tj --23.787 -1.2 TD -0.05 Tw -(format is not specified as the value of the )Tj -/TT4 1 Tf -18.9046 0 TD -0 Tw -(FORMAT)Tj -/TT2 1 Tf -4.2769 0 TD -0.05 Tw -[( property in the)]TJ --23.1814 -1.2 TD -0 Tw -(groups PROPS list.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.GETITEM)Tj -/TT6 1 Tf -6.167 0 TD -( ID GROUP WINDOW)Tj -/TT2 1 Tf -9.8882 0 TD -[(\))-21678.8([Function])]TJ -ET -126.01 472.49 m -558.01 472.49 l -S -BT -10 0 0 10 258 457.2 Tm -(Replaces )Tj -/TT4 1 Tf -4.4468 0 TD -(FM.ITEMFROMID)Tj -/TT2 1 Tf -8.0542 0 TD -(.)Tj --12.501 -1.9 TD -(Searches within )Tj -/TT6 1 Tf -7.3369 0 TD -(GROUP)Tj -/TT2 1 Tf -3.667 0 TD -( for an item whose ID property is )Tj -/TT6 1 Tf -14.6724 0 TD -(ID)Tj -/TT2 1 Tf -1 0 TD -(. )Tj -/TT6 1 Tf --26.6763 -1.9 TD -(ID)Tj -/TT2 1 Tf -1 0 TD -0.174 Tw -[( is matched against the item ID and then the item )]TJ -/TT4 1 Tf -23.9257 0 TD -0 Tw -(LABEL)Tj -/TT2 1 Tf -3.333 0 TD -0.174 Tw -[(. If)]TJ -/TT6 1 Tf --28.2587 -1.2 TD -0 Tw -(GROUP)Tj -/TT2 1 Tf -3.667 0 TD -( is )Tj -/TT4 1 Tf -1.2778 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -(, the entire menu is searched.)Tj --19.7557 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.GETSTATE)Tj -/TT2 1 Tf -7.056 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(WINDOW)Tj -/TT2 1 Tf -4.3877 0 TD -[(\))-26012.5([Function] )]TJ -ET -126.01 385.49 m -558.01 385.49 l -S -BT -10 0 0 10 258 370.2 Tm -(Replaces)Tj -/TT4 1 Tf -4.1689 0 TD -( FM.READSTATE)Tj -/TT2 1 Tf -8.1101 0 TD -(.)Tj --12.279 -1.9 TD -0.119 Tw -[(Returns a property list of the selected item in the menu. This list)]TJ -0 -1.2 TD -0 Tw -(now also includes the NWay Collections and their selected item.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.CHANGELABEL)Tj -/TT2 1 Tf -9.388 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(ITEM NEWLABEL WINDOW UPDATEFLG)Tj -/TT2 1 Tf -19.0571 0 TD -[(\))-9142( [Function])]TJ -ET -126.01 317.49 m -558.01 317.49 l -S -BT -10 0 0 10 258 302.2 Tm -0.05 Tw -(Has a new argument order. Now works by rebuilding the item label)Tj -0 -1.2 TD -0.186 Tw -(from scratch, taking the original specification of )Tj -/TT4 1 Tf -22.3674 0 TD -0 Tw -(MAXWIDTH )Tj -/TT2 1 Tf -5.9629 0 TD -(and)Tj -/TT4 1 Tf --28.3303 -1.2 TD -(MAXHEIGHT )Tj -/TT2 1 Tf -6.3208 0 TD -0.043 Tw -(into account. )Tj -/TT6 1 Tf -6.3551 0 TD -0 Tw -(NEWLABEL )Tj -/TT2 1 Tf -5.7671 0 TD -0.043 Tw -(can be an atom, string, or)Tj --18.443 -1.2 TD -0.009 Tw -[(bitmap. If )]TJ -/TT6 1 Tf -4.6955 0 TD -0 Tw -(UPDATEFLG )Tj -/TT2 1 Tf -6.2878 0 TD -0.009 Tw -(is set, then the Free Menu Groups regions)Tj --10.9833 -1.2 TD -0 Tw -(are recalculated, so that boxed groups will be redisplayed properly.)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.CHANGESTATE)Tj -/TT2 1 Tf -9.333 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(X NEWSTATE WINDOW)Tj -/TT2 1 Tf -11.166 0 TD -[(\))-16810.1( [Function] )]TJ -ET -126.01 232.49 m -558.01 232.49 l -S -BT -10 0 0 10 258 217.2 Tm -(Has a new argument order.)Tj -/TT6 1 Tf -0 -1.9 TD -(X )Tj -/TT2 1 Tf -1.0768 0 TD -0.132 Tw -(is either an item or an NWay Collection ID. )Tj -/TT6 1 Tf -20.716 0 TD -0 Tw -(NEWSTATE)Tj -/TT2 1 Tf -5.5557 0 TD -0.132 Tw -[( is an)]TJ --27.3485 -1.2 TD -0.342 Tw -[(appropriate state to the type of item. If an NWay collection,)]TJ -/TT6 1 Tf -T* -0 Tw -(NEWSTATE)Tj -/TT2 1 Tf -5.5557 0 TD -0.13 Tw -[( is the actual item to be selected, or)]TJ -/TT4 1 Tf -16.7705 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.0187 0 TD -[( to deselect.)]TJ --24.3448 -1.2 TD -0.188 Tw -(Toggle items take either)Tj -/TT4 1 Tf -11.2359 0 TD -0.188 Tc -0 Tw -( T)Tj -/TT2 1 Tf -1.0767 0 TD -0 Tc -0.188 Tw -[( or)]TJ -/TT4 1 Tf -1.355 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.0767 0 TD -[( as NEWSTATE, and)]TJ -/TT4 1 Tf -9.9556 0 TD -[( 3STATE)]TJ -/TT2 1 Tf --25.6998 -1.2 TD -0.032 Tw -(items take)Tj -/TT4 1 Tf -4.5891 0 TD -[( OFF)]TJ -/TT2 1 Tf -2.3093 0 TD -0 Tw -(, )Tj -/TT4 1 Tf -0.5877 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.032 Tw -(, or )Tj -/TT4 1 Tf -1.7867 0 TD -0 Tw -(T,)Tj -/TT2 1 Tf -0.8887 0 TD -0.032 Tw -[( and )]TJ -/TT4 1 Tf -2.2881 0 TD -0 Tw -(STATE )Tj -/TT2 1 Tf -3.5877 0 TD -0.032 Tw -(items take any atom, string,)Tj --17.6481 -1.2 TD -0.115 Tw -[(or bitmap as their new state. For )]TJ -/TT4 1 Tf -15.815 0 TD -0 Tw -(EDIT)Tj -/TT2 1 Tf -2.2778 0 TD -0.115 Tw -[( items, )]TJ -/TT6 1 Tf -3.4527 0 TD -0 Tw -(NEWSTATE)Tj -/TT2 1 Tf -5.5557 0 TD -0.115 Tw -[( is the)]TJ --27.1012 -1.2 TD -0.016 Tw -(new label, and )Tj -/TT4 1 Tf -6.775 0 TD -0 Tw -(FM.CHANGELABEL)Tj -/TT2 1 Tf -9.387 0 TD -0.016 Tw -[( is called to change the label of)]TJ --16.162 -1.2 TD -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -(EDIT )Tj -/TT2 1 Tf -2.5557 0 TD -(item.)Tj --17.4236 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.RESETSHAPE)Tj -/TT2 1 Tf -8.501 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(WINDOW ALWAYSFLG)Tj -/TT2 1 Tf -10.7783 0 TD -[(\))-18176.8([Function])]TJ -ET -126.01 92.49 m -558.01 92.49 l -S -BT -10 0 0 10 258 77.2 Tm -(Replaces )Tj -/TT4 1 Tf -4.4468 0 TD -(FM.FIXSHAPE)Tj -/TT2 1 Tf --17.6468 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(FM.HIGHLIGHTITEM)Tj -/TT2 1 Tf -9.611 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(ITEM WINDOW)Tj -/TT2 1 Tf -7.0542 0 TD -20.5131 Tw -(\) [Function])Tj -ET -126.01 55.49 m -558.01 55.49 l -S -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -100 0 obj -<< -/Length 5849 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-29)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -(Replaces )Tj -/TT4 1 Tf -4.4468 0 TD -( FM.SHADEITEM )Tj -/TT2 1 Tf -8.1661 0 TD -(and )Tj -/TT4 1 Tf -1.9463 0 TD -(FM.SHADEITEMBM)Tj -/TT2 1 Tf -9.1659 0 TD -(.)Tj -/TT4 1 Tf --23.725 -1.7 TD -(FM.HIGHLIGHTITEM )Tj -/TT2 1 Tf -10.1647 0 TD -0.277 Tw -(will programmatically highlight an item, as)Tj --10.1647 -1.2 TD -0.603 Tw -(specified by its )Tj -/TT4 1 Tf -8.6454 0 TD -0 Tw -(HIGHLIGHT )Tj -/TT2 1 Tf -6.3803 0 TD -0.603 Tw -[(property. The highlighting is)]TJ --15.0258 -1.2 TD -0.398 Tw -[(temporary, and will be undone by a redisplay or scroll. To)]TJ -T* -0.172 Tw -(programmatically shade an item an arbitrary shade, use the new)Tj -T* -0 Tw -(function )Tj -/TT4 1 Tf -3.7803 0 TD -(FM.SHADE)Tj -/TT2 1 Tf -5.2217 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 637.64 Tm -(Section 28.6.2 Attached Prompt Windows )Tj -ET -54.01 634.49 m -558.01 634.49 l -S -BT -/TT2 1 Tf -10 0 0 10 126 619.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(GETPROMPTWINDOW)Tj -/TT2 1 Tf -10.722 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(MAINWINDOW #LINES FONT DONTCREATE)Tj -/TT2 1 Tf -27.4762 0 TD -([Function])Tj -ET -126.01 616.49 m -558.01 616.49 l -S -BT -10 0 0 10 258 601.2 Tm -0.957 Tw -(In the Lyric release, the prompt window created by)Tj -/TT4 1 Tf -0 -1.2 TD -0 Tw -(GETPROMPTWINDOW)Tj -/TT2 1 Tf -10.7212 0 TD -0.013 Tw -[( is )]TJ -/TT6 1 Tf -1.3038 0 TD -0 Tw -(not)Tj -/TT2 1 Tf -1.3901 0 TD -0.013 Tw -[( independently closeable, as it was in)]TJ --13.4152 -1.2 TD -0.059 Tw -[(Koto. That is, selecting )]TJ -/TT4 1 Tf -10.9669 0 TD -0 Tw -(Close)Tj -/TT2 1 Tf -2.7231 0 TD -0.059 Tw -[( from the right-button window menu)]TJ --13.69 -1.2 TD -0.076 Tw -(in the prompt window is the same as selecting it from the menu of)Tj -T* -0 Tw -(any other window in the groupthe entire window group is closed.)Tj -/TT4 1 Tf -12 0 0 12 54 525.64 Tm -(Section 28.6.3 Window Operations and Attached Windows)Tj -ET -570 548.98 0.99 -25.99 re -f -54.01 522.49 m -558.01 522.49 l -S -570 522.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 503.2 Tm -(\(III:28.51\))Tj -ET -570 521.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 484.2 Tm -0.276 Tw -(Communication of Window Menu Commands between Attached)Tj -ET -570 498.98 0.99 -18.99 re -f -BT -10 0 0 10 258 472.2 Tm -0.076 Tw -[(Windows is dependent on the name of function used to implement)]TJ -ET -570 479.98 0.99 -11.99 re -f -BT -10 0 0 10 258 460.2 Tm -0.055 Tw -(the window command, e.g., )Tj -/TT4 1 Tf -12.6707 0 TD -0 Tw -(CLOSEW )Tj -/TT2 1 Tf -4.7215 0 TD -0.055 Tw -[( implements )]TJ -/TT4 1 Tf -6.4441 0 TD -0 Tw -(CLOSE)Tj -/TT2 1 Tf -3.4448 0 TD -0.055 Tw -[( \(refer)]TJ -ET -570 467.98 0.99 -11.99 re -f -BT -10 0 0 10 258 448.2 Tm -0 Tw -(to )Tj -/TT4 1 Tf -1.1878 0 TD -(PASSTOMAINCOMS )Tj -/TT2 1 Tf -10.0208 0 TD -0.076 Tw -(documentation under Attached Windows\).)Tj -ET -570 455.98 0.99 -11.99 re -f -BT -10 0 0 10 258 436.2 Tm -0.165 Tw -(Consequently, if an application intercepts a window command by)Tj -ET -570 443.98 0.99 -11.99 re -f -BT -10 0 0 10 258 424.2 Tm -0 Tw -(changing )Tj -/TT4 1 Tf -4.5369 0 TD -0.2 Tw -(WHENSELECTEDFN )Tj -/TT2 1 Tf -10.6778 0 TD -(for an item in the WindowMenu)Tj -ET -570 431.98 0.99 -11.99 re -f -BT -10 0 0 10 258 412.2 Tm -0.304 Tw -(\(for example, to advise the application that a window is being)Tj -ET -570 419.98 0.99 -11.99 re -f -BT -10 0 0 10 258 400.2 Tm -0.054 Tw -(closed\), windows may not behave correctly when attached to other)Tj -ET -570 407.98 0.99 -11.99 re -f -BT -10 0 0 10 258 388.2 Tm -0 Tw -(windows.)Tj -ET -570 395.98 0.99 -11.99 re -f -BT -10 0 0 10 258 369.2 Tm -0.369 Tw -(To get around this problem, the Medley release provides the)Tj -ET -570 383.98 0.99 -18.99 re -f -BT -10 0 0 10 258 357.2 Tm -0.1 Tw -[(variable *attached-window-command-synonyms*. This variable is)]TJ -ET -570 364.98 0.99 -11.99 re -f -BT -10 0 0 10 258 345.2 Tm -0.301 Tw -(an ALIST, where each element is of the form \(new-command-)Tj -ET -570 352.98 0.99 -11.99 re -f -BT -10 0 0 10 258 333.2 Tm -0 Tw -(function-name . old-command-function-name\).)Tj -ET -570 340.98 0.99 -11.99 re -f -BT -10 0 0 10 258 314.2 Tm -0.184 Tw -(For example, if an application redefines the WindowMenu to call)Tj -ET -570 328.98 0.99 -18.99 re -f -BT -10 0 0 10 258 302.2 Tm -0 Tw -(my-close-window when )Tj -/TT4 1 Tf -10.6147 0 TD -(CLOSE)Tj -/TT2 1 Tf -3.4448 0 TD -( is selected, that application should:)Tj -ET -570 309.98 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 284.49 Tm -2.2 Tw -(\(cl:push \(my-close-window . il:closew\))Tj -ET -570 297.98 0.99 -18.99 re -f -BT -10 0 0 10 258 272.49 Tm -0 Tw -(il:*attached-window-command-synonyms*\))Tj -ET -570 278.98 0.99 -11.99 re -f -BT -10 0 0 10 126 253.49 Tm -( )Tj -ET -570 266.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 235.2 Tm -0.021 Tw -(in order to tell the attached window system that my-close-window is)Tj -ET -570 249.98 0.99 -18.99 re -f -BT -10 0 0 10 258 223.2 Tm -0 Tw -(a synonym function for )Tj -/TT4 1 Tf -10.6162 0 TD -(CLOSEW)Tj -/TT2 1 Tf -4.3887 0 TD -(.)Tj -ET -570 230.98 0.99 -11.99 re -f -2 w -54.01 167.99 m -558.01 167.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 156.08 Tm -(Chapter 29 Hardcopy Facilities)Tj -ET -1 w -54.01 152.49 m -558.01 152.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 133.2 Tm -(\(III:29.3\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The)Tj -/TT4 1 Tf -1.7231 0 TD -0.403 Tw -[( HARDCOPYW)]TJ -/TT2 1 Tf -7.3469 0 TD -[( function now has an additional argument,)]TJ -/TT6 1 Tf --9.07 -1.2 TD -0 Tw -(HARDCOPYTITLE)Tj -/TT2 1 Tf -8.3901 0 TD -0.221 Tw -(, which allows you to change or eliminate the)Tj --8.3901 -1.2 TD -0.452 Tw -[("Window Image" message on IP screen images. Moreover,)]TJ -/TT4 1 Tf -T* -0 Tw -(HARDCOPYW)Tj -/TT2 1 Tf -6.6665 0 TD -0.395 Tw -[( function now allows you to print large images)]TJ --6.6665 -1.2 TD -0 Tw -(occupying more than one page.)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -103 0 obj -<< -/Length 5650 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-30)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 126 730.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(HARDCOPYW)Tj -/TT6 1 Tf -6.867 0 TD -(WINDOW/BITMAP/REGION FILE HOST SCALEFACTOR ROTATION)Tj -0 -1 TD -(PRINTERTYPE HARDCOPYTITLE)Tj -/TT2 1 Tf -15.6689 0 TD -[(\))-15607([Function])]TJ -ET -126.01 717.49 m -558.01 717.49 l -S -BT -/TT6 1 Tf -10 0 0 10 258 702.2 Tm -(HARDCOPYTITLE )Tj -/TT2 1 Tf -8.738 0 TD -0.07 Tw -(is a string specifying a title to print on the page)Tj --8.738 -1.2 TD -0.128 Tw -(containing the screen image. If NIL, the string "Window Image" is)Tj -T* -0 Tw -(used. To omit a title, specify the null string.)Tj -ET -2 w -54.01 622.99 m -558.01 622.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 611.08 Tm -(Chapter 30 Terminal Input/Output)Tj -ET -1 w -54.01 607.49 m -558.01 607.49 l -S -BT -12 0 0 12 54 583.64 Tm -(Section 30.1 Interrupt Characters)Tj -ET -54.01 580.49 m -558.01 580.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 561.2 Tm -(\(III:30.2\))Tj -/TT2 1 Tf --6.623 -1.9 TD -0.316 Tw -[(Control-P)-2399.4(The Control-P \()]TJ -/TT4 1 Tf -14.0904 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT2 1 Tf -6.2226 0 TD -0.316 Tw -(\) interrupt is no longer supported.)Tj --13.69 -1.2 TD -0.145 Tw -(The interrupt of that name still exists and is defaultly assigned to)Tj -T* -0 Tw -(Control-P, but has no effect on printing.)Tj --6.567 -1.9 TD -0.27 Tw -[(Control-T)-2399.5(The Control-T interrupt flashes the window belonging to the tty)]TJ -6.567 -1.2 TD -0.264 Tw -(process and prints its status information in the prompt window.)Tj -T* -0 Tw -(This avoids disrupting the user typescript.)Tj -/TT8 1 Tf -0 -1.9 TD -(\(III:30.3\))Tj -/TT4 1 Tf -12 0 0 12 126 437.64 Tm -(\()Tj -10 0 0 10 129.9961 437.64 Tm -(INTERRUPTCHAR)Tj -12 0 0 12 216.1 437.64 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 219.434 437.64 Tm -[(CHAR TYP/FORM HARDFLG \))-14520.8([Function])]TJ -ET -126.01 434.49 m -558.01 434.49 l -S -BT -10 0 0 10 258 419.2 Tm -0.147 Tw -(If the argument )Tj -/TT6 1 Tf -7.4449 0 TD -0 Tw -(TYP/FORM)Tj -/TT2 1 Tf -5.1665 0 TD -0.147 Tw -[( is a symbol designating a predefined)]TJ --12.6114 -1.2 TD -0.02 Tw -(system interrupt \()Tj -/TT4 1 Tf -7.7641 0 TD -0 Tw -(RESET)Tj -/TT2 1 Tf -3.334 0 TD -(, )Tj -/TT4 1 Tf -0.5757 0 TD -(ERROR)Tj -/TT2 1 Tf -3.6113 0 TD -(, )Tj -/TT4 1 Tf -0.5757 0 TD -(BREAK)Tj -/TT2 1 Tf -3.5557 0 TD -0.02 Tw -(, etc\), and )Tj -/TT6 1 Tf -4.7846 0 TD -0 Tw -(HARDFLG)Tj -/TT2 1 Tf -4.7783 0 TD -0.02 Tw -[( is)]TJ --28.9794 -1.2 TD -0.486 Tw -(omitted or)Tj -/TT4 1 Tf -4.9323 0 TD -[( NIL)]TJ -/TT2 1 Tf -2.3747 0 TD -(, then the hardness defaults to the standard)Tj --7.307 -1.2 TD -0.246 Tw -(hardness of the system interrupt \(e.g., )Tj -/TT4 1 Tf -18.5951 0 TD -0 Tw -(MOUSE)Tj -/TT2 1 Tf -3.667 0 TD -0.246 Tw -[( for the)]TJ -/TT4 1 Tf -3.6048 0 TD -[( ERROR)]TJ -/TT2 1 Tf --25.8669 -1.2 TD -0 Tw -(interrupt\).)Tj -/TT4 1 Tf -12 0 0 12 54 343.64 Tm -(Section 30.2.3 Line Buffering)Tj -ET -54.01 340.49 m -558.01 340.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 325.2 Tm -(\(III:30.11-12\) )Tj -/TT2 1 Tf -0 -1.7 TD -(The )Tj -/TT4 1 Tf -2.388 0 TD -(BKSYSBUF)Tj -/TT2 1 Tf -5.5005 0 TD -0.387 Tw -[( function has been changed, for compatibility)]TJ --7.8885 -1.2 TD -0 Tw -(reasons. The description now reads as follows:)Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(BKSYSBUF)Tj -/TT6 1 Tf -5.5005 0 TD -( X FLG RDTBL)Tj -/TT2 1 Tf -6.7236 0 TD -[(\))-25918.9([Function])]TJ -ET -126.01 274.49 m -558.01 274.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 259.2 Tm -(BKSYSBUF)Tj -/TT2 1 Tf -5.5005 0 TD -0.215 Tw -[( appends the )]TJ -/TT4 1 Tf -6.7055 0 TD -0 Tw -(PRIN1)Tj -/TT2 1 Tf -2.944 0 TD -0.215 Tw -(-name of )Tj -/TT6 1 Tf -4.6541 0 TD -0 Tw -(X)Tj -/TT2 1 Tf -0.667 0 TD -0.215 Tw -[( to the system input)]TJ --20.4711 -1.2 TD -0.216 Tw -(buffer. The effect is the same as though the user had typed)Tj -/TT6 1 Tf -28.5586 0 TD -0.216 Tc -0 Tw -( X)Tj -/TT2 1 Tf -1.1608 0 TD -0 Tc -(.)Tj --29.7194 -1.2 TD -(Returns )Tj -/TT6 1 Tf -3.7793 0 TD -(X)Tj -/TT2 1 Tf -0.667 0 TD -(.)Tj --4.4463 -1.9 TD -(If)Tj -/TT6 1 Tf -0.5557 0 TD -0.217 Tw -[( FLG)]TJ -/TT2 1 Tf -2.4397 0 TD -[( is )]TJ -/TT6 1 Tf -1.7118 0 TD -0 Tw -(T,)Tj -/TT2 1 Tf -0.8887 0 TD -0.217 Tw -[( then the )]TJ -/TT4 1 Tf -4.8209 0 TD -0 Tw -(PRIN2)Tj -/TT2 1 Tf -2.9463 0 TD -0.217 Tw -(-name of)Tj -/TT6 1 Tf -4.1633 0 TD -0.217 Tc -0 Tw -( X)Tj -/TT2 1 Tf -1.1618 0 TD -0 Tc -0.217 Tw -[( is used, computed with)]TJ --18.6881 -1.2 TD -0.156 Tw -(respect to the readtable )Tj -/TT6 1 Tf -11.4087 0 TD -0 Tw -(RDTBL)Tj -/TT2 1 Tf -3.2783 0 TD -0.156 Tw -(. If )Tj -/TT6 1 Tf -1.7012 0 TD -0 Tw -(RDTBL )Tj -/TT2 1 Tf -3.7122 0 TD -(is )Tj -/TT4 1 Tf -1.156 0 TD -(NIL)Tj -/TT2 1 Tf -1.6108 0 TD -0.156 Tw -[( or omitted, the)]TJ --22.8671 -1.2 TD -0.327 Tw -(current readtable of the TTY process \(which is to receive the)Tj -T* -0.039 Tw -[(characters\) is used. Use this for copy selection functions that want)]TJ -T* -0 Tw -(their output to be a readable expression in an Exec.)Tj -0 -1.9 TD -0.089 Tw -(Note that if you are typing at the same time as the )Tj -/TT4 1 Tf -23.4132 0 TD -0 Tw -(BKSYSBUF)Tj -/TT2 1 Tf -5.5005 0 TD -0.089 Tw -[( is)]TJ --28.9137 -1.2 TD -0.037 Tw -(being performed, the relative order of the typein and the characters)Tj -T* -0 Tw -(of)Tj -/TT6 1 Tf -0.834 0 TD -( X)Tj -/TT2 1 Tf -0.9448 0 TD -( is unpredictable.)Tj -/TT8 1 Tf --1.7788 -1.9 TD -(\(III:30.12\) )Tj -/TT2 1 Tf -T* -(Add the function )Tj -/TT4 1 Tf -7.5054 0 TD -(BKSYSCHARCODE)Tj -/TT2 1 Tf -9.2216 0 TD -( used in line buffering:)Tj --29.927 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(BKSYSCHARCODE)Tj -/TT6 1 Tf -9.2231 0 TD -( CODE)Tj -/TT2 1 Tf -3.167 0 TD -[(\))-25752.9([Function])]TJ -ET -126.01 65.49 m -558.01 65.49 l -S -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -106 0 obj -<< -/Length 5339 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-31)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.252 Tw -(This function appends the character code )Tj -/TT6 1 Tf -20.1346 0 TD -0 Tw -(CODE )Tj -/TT2 1 Tf -3.419 0 TD -0.252 Tw -(to the system)Tj --23.5535 -1.2 TD -0.075 Tw -(input buffer. The function )Tj -/TT4 1 Tf -11.6403 0 TD -0 Tw -(BKSYSBUF)Tj -/TT2 1 Tf -5.4997 0 TD -0.075 Tw -[( is implemented by repeated)]TJ --17.14 -1.2 TD -0 Tw -(calls to)Tj -/TT4 1 Tf -3.1123 0 TD -( BKSYSCHARCODE)Tj -/TT2 1 Tf -9.501 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 678.64 Tm -(Section 30.4.1 Changing the Cursor Image)Tj -ET -54.01 675.49 m -558.01 675.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 660.2 Tm -(\()Tj -/TT8 1 Tf -0.333 0 TD -(III:30.14)Tj -/TT2 1 Tf -3.6689 0 TD -(\))Tj --4.002 -1.9 TD -(The )Tj -/TT4 1 Tf -2.105 0 TD -(CURSOR)Tj -/TT2 1 Tf -4.333 0 TD -0.104 Tw -[( record has been changed to a DATATYPE, and its)]TJ --6.438 -1.2 TD -0 Tw -(field names have changed in the following way:)Tj -4.8 -1.9 TD -[(Old Field Name)-6253.2(New Field Name)]TJ -ET -306.01 607.49 m -516.01 607.49 l -S -BT -/TT4 1 Tf -10 0 0 10 306 592.2 Tm -[(CURSORBITMAP)-6833.5(CUIMAGE)]TJ -0 -1.7 TD -[(CURSORHOTSPOTX)-3966(CUHOTSPOTX)]TJ -T* -[(CURSORHOTSPOTY)-3966(CUHOTSPOTY)]TJ -/TT2 1 Tf --4.8 -1.7 TD -(The )Tj -/TT4 1 Tf -2.216 0 TD -(CURSORHOTSPOT)Tj -/TT2 1 Tf -9.167 0 TD -0.215 Tw -[( field no longer exists; its value can be)]TJ --11.383 -1.2 TD -0.165 Tw -(fetched by composing )Tj -/TT4 1 Tf -10.5009 0 TD -0 Tw -(CUHOTSPOTX)Tj -/TT2 1 Tf -6.9448 0 TD -0.165 Tw -[( and )]TJ -/TT4 1 Tf -2.5541 0 TD -0 Tw -(CUHOTSPOTY)Tj -/TT2 1 Tf -6.9448 0 TD -0.165 Tw -[( into a)]TJ -/TT4 1 Tf --26.9446 -1.2 TD -0 Tw -(POSITION)Tj -/TT2 1 Tf -4.7783 0 TD -0.353 Tw -(, or stored by destructuring a )Tj -/TT4 1 Tf -15.1243 0 TD -0 Tw -(POSITION)Tj -/TT2 1 Tf -4.7783 0 TD -0.353 Tw -[( into those)]TJ --24.681 -1.2 TD -0 Tw -(fields. )Tj -0 -1.9 TD -0.11 Tw -(In Lyric, the )Tj -/TT4 1 Tf -5.777 0 TD -0 Tw -(CURSORCREATE)Tj -/TT2 1 Tf -8.4448 0 TD -0.11 Tw -[( function accepted as its argument)]TJ -ET -570 500.98 0.99 -18.99 re -f -BT -10 0 0 10 258 474.2 Tm -0.14 Tw -[(bitmaps of any size, but caused an obscure error. In Medley, a)]TJ -ET -570 481.98 0.99 -11.99 re -f -BT -10 0 0 10 258 462.2 Tm -0.36 Tw -(bitmap that is bigger than 16 high or 16 wide will cause an)Tj -ET -570 469.98 0.99 -11.99 re -f -BT -10 0 0 10 258 450.2 Tm -0 Tw -(ILLEGAL ARGUMENT error.)Tj -ET -570 457.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 422.64 Tm -(Section 30.5 Keyboard Interpretation)Tj -ET -54.01 419.49 m -558.01 419.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 400.2 Tm -(\()Tj -/TT8 1 Tf -0.333 0 TD -(III)Tj -/TT2 1 Tf -0.8335 0 TD -(:)Tj -/TT8 1 Tf -0.2778 0 TD -(30. 1920)Tj -/TT2 1 Tf -4.4487 0 TD -(\))Tj --19.0931 -1.9 TD -(\()Tj -ET -0.75 w -126 378.99 m -129.33 378.99 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 381.2 Tm -(KEYDOWNP)Tj -ET -129.33 378.99 m -188.22 378.99 l -S -BT -/TT2 1 Tf -10 0 0 10 188.22 381.2 Tm -( )Tj -ET -188.22 378.99 m -191 378.99 l -S -BT -/TT6 1 Tf -10 0 0 10 191 381.2 Tm -(KEYNAME)Tj -ET -191 378.99 m -239.9 378.99 l -S -BT -/TT2 1 Tf -10 0 0 10 239.9 381.2 Tm -[(\))-27086([Function])]TJ -ET -239.9 378.99 m -558 378.99 l -S -BT -10 0 0 10 126 364.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -(KEYACTION)Tj -/TT2 1 Tf -5.889 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(KEYNAME ACTIONS)Tj -/TT2 1 Tf -9.6128 0 TD -[( \))-21085.5([Function])]TJ -ET -1 w -126.01 361.49 m -558.01 361.49 l -S -BT -/TT6 1 Tf -10 0 0 10 258 329.2 Tm -(KEYNAME)Tj -/TT2 1 Tf -4.8901 0 TD -0.26 Tw -[( is interpreted differently in Lyric: If )]TJ -/TT6 1 Tf -17.8642 0 TD -0 Tw -(KEYNAME)Tj -/TT2 1 Tf -4.8901 0 TD -0.26 Tw -[( is a)]TJ --27.6444 -1.2 TD -0.033 Tw -(small integer, it is taken to be the )Tj -/TT6 1 Tf -15.1605 0 TD -0 Tw -(internal)Tj -/TT2 1 Tf -3.2798 0 TD -0.033 Tw -[( key number. Otherwise,)]TJ --18.4403 -1.2 TD -0.014 Tw -[(it is taken to be the name of the key. This means, for example, that)]TJ -T* -0.098 Tw -[(the name of the "6" key is not the number 6. Instead, spelled-out)]TJ -T* -0.154 Tw -[(names for all the digit keys have been assigned. The "6" key is)]TJ -T* -[(named SIX. It happens that the key number of the "6" key is 2.)]TJ -T* -0 Tw -(Therefore, the following two forms are equivalent:)Tj -/TT11 1 Tf -1.2 -1.771 TD -(\(KEYDOWNP SIX\))Tj -0 -1.9 TD -(\(KEYDOWNP 2\))Tj -/TT2 1 Tf --1.2 -2.029 TD -0.043 Tw -[(Note:)-609.9(The key labeled HELP on the 1186 is named DBK-HELP for)]TJ -3 -1.2 TD -0 Tw -(use in KEYACTION.)Tj -/TT4 1 Tf -12 0 0 12 54 160.64 Tm -(Section 30.6 Display Screen)Tj -ET -54.01 157.49 m -558.01 157.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 138.2 Tm -(\(III:30.22-23\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(CHANGEBACKGROUND)Tj -/TT2 1 Tf -11.665 0 TD -[( SHADE \))-21477([Function])]TJ -ET -126.01 116.49 m -558.01 116.49 l -S -BT -10 0 0 10 258 101.2 Tm -0.877 Tw -(The function )Tj -/TT4 1 Tf -7.5353 0 TD -0 Tw -(CHANGEBACKGROUND)Tj -/TT2 1 Tf -11.6665 0 TD -0.877 Tw -[( treats the)]TJ -/TT6 1 Tf -6.2008 0 TD -[( SHADE)]TJ -/TT2 1 Tf --25.4025 -1.2 TD -2.197 Tw -(argument as a 4 X 4 texture. The)Tj -/TT4 1 Tf -T* -0 Tw -(CHANGEBACKGROUNDBORDER )Tj -/TT2 1 Tf -16.5878 0 TD -0.31 Tw -(function, on the other hand,)Tj --16.5878 -1.2 TD -0 Tw -(treats the )Tj -/TT6 1 Tf -4.4468 0 TD -(SHADE)Tj -/TT2 1 Tf -3.4453 0 TD -( argument as a 2 X 8 texture.)Tj -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -110 0 obj -<< -/Length 5053 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-32)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.021 Tw -(Therefore, note that the same)Tj -/TT6 1 Tf -13.2583 0 TD -[( SHADE)]TJ -/TT2 1 Tf -3.7441 0 TD -[( argument, when used by the)]TJ --17.0025 -1.2 TD -0.186 Tw -(two functions, will not necessarily produce the same background)Tj -T* -0 Tw -(and border shades on the display screen.)Tj -ET -258.01 701.49 m -558.01 701.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 686.2 Tm -(\(III:30.23\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The )Tj -/TT4 1 Tf -2.189 0 TD -(VIDEORATE )Tj -/TT2 1 Tf -6.2999 0 TD -0.188 Tw -[(function works only on the 1108. Append the)]TJ --8.4888 -1.2 TD -0 Tw -(following note to the)Tj -/TT4 1 Tf -8.895 0 TD -( VIDEORATE )Tj -/TT2 1 Tf -6.3896 0 TD -(function description:)Tj --28.4847 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(VIDEORATE)Tj -/TT2 1 Tf -5.834 0 TD -[( TYPE\))-29419.3([Function])]TJ -ET -126.01 633.49 m -558.01 633.49 l -S -BT -10 0 0 10 258 618.2 Tm -(Note: )Tj -/TT4 1 Tf -2.9458 0 TD -(VIDEORATE)Tj -/TT2 1 Tf -5.834 0 TD -( does not work on the 1186. )Tj -/TT4 1 Tf -12 0 0 12 54 590.64 Tm -(Section 30.7 Miscellaneous Terminal I/O)Tj -ET -54.01 587.49 m -558.01 587.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 568.2 Tm -(\(III:30.24\) )Tj -/TT2 1 Tf --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(BEEPON)Tj -/TT2 1 Tf -4.223 0 TD -[( FREQ\))-30864.3([Function])]TJ -ET -126.01 546.49 m -558.01 546.49 l -S -BT -10 0 0 10 258 531.2 Tm -(The argument )Tj -/TT6 1 Tf -6.5034 0 TD -(FREQ )Tj -/TT2 1 Tf -3.0557 0 TD -(is measured in hertz, not in )Tj -/TT4 1 Tf -12.2837 0 TD -(TICKS)Tj -/TT2 1 Tf -3 0 TD -(.)Tj -ET -2 w -54.01 475.99 m -558.01 475.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 464.08 Tm -(Chapter 31 Ethernet)Tj -ET -1 w -54.01 460.49 m -558.01 460.49 l -S -BT -12 0 0 12 54 436.64 Tm -(Section 31.3.1 Name and Address Conventions)Tj -ET -54.01 433.49 m -558.01 433.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 414.2 Tm -(\(III:31.8-9\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.318 Tw -(Amend the first paragraph, describing )Tj -/TT4 1 Tf -18.5436 0 TD -0 Tw -(NSADDRESS)Tj -/TT2 1 Tf -6.2764 0 TD -0.318 Tw -(, to list, in)Tj --24.82 -1.2 TD -0 Tw -(order, the components of )Tj -/TT4 1 Tf -11.3955 0 TD -(NSADDRESS:)Tj -/TT2 1 Tf --11.3955 -1.9 TD -0.342 Tw -(Addresses of hosts in the NS world consist of three parts, a)Tj -0 -1.2 TD -0.085 Tw -(network number, a machine number, and a socket number. These)Tj -T* -0.005 Tw -(three parts are embodied in the Interlisp-D data type)Tj -/TT4 1 Tf -23.164 0 TD -0.0005 Tc -0.0045 Tw -( NSADDRESS)Tj -/TT2 1 Tf -6.5616 0 TD -0 Tc -0 Tw -(.)Tj --29.7257 -1.2 TD -0.091 Tw -(The components of )Tj -/TT4 1 Tf -9.1114 0 TD -0 Tw -(NSADDRESS )Tj -/TT2 1 Tf -6.6476 0 TD -0.091 Tw -[(are 32-bit network, 48-bit host,)]TJ --15.759 -1.2 TD -0 Tw -(16-bit socket.)Tj -0 -1.9 TD -0.073 Tw -(Move the following sentence from page 31.9 of the )Tj -/TT6 1 Tf -23.3377 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.073 Tw -[( to the last)]TJ --25.1707 -1.2 TD -0 Tw -(paragraph of Name and Address Conventions on page 31.8:)Tj -0 -1.9 TD -0.304 Tw -(If you wish to manipulate)Tj -/TT4 1 Tf -12.2219 0 TD -[( NSADDRESS )]TJ -/TT2 1 Tf -7.4425 0 TD -0 Tw -(and)Tj -/TT4 1 Tf -1.6685 0 TD -0.304 Tw -[( NSNAME)]TJ -/TT2 1 Tf -4.9132 0 TD -[( objects)]TJ --26.246 -1.2 TD -1.269 Tw -(directly you should load the Lisp Library Module)Tj -T* -0 Tw -(ETHERRECORDS.)Tj -/TT4 1 Tf --20.4 -2.2 TD -(NS Address Format)Tj -ET -570 237.98 0.99 -19.99 re -f -54.01 217.49 m -558.01 217.49 l -S -570 217.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 202.2 Tm -0.065 Tw -(In Medley, you can now specify NS addresses in decimal notation,)Tj -ET -570 216.98 0.99 -18.99 re -f -BT -10 0 0 10 258 190.2 Tm -0.266 Tw -[(the form presented by the Chat interface of Network Services)]TJ -ET -570 197.98 0.99 -11.99 re -f -BT -10 0 0 10 258 178.2 Tm -0.302 Tw -[(software. In this notation, a decimal number is broken up by)]TJ -ET -570 185.98 0.99 -11.99 re -f -BT -10 0 0 10 258 166.2 Tm -0.166 Tw -(hyphens every 3 digits, much like commas in standard American)Tj -ET -570 173.98 0.99 -11.99 re -f -BT -10 0 0 10 258 154.2 Tm -0.075 Tw -[(numerical notation. You can also specify a full 48-bit host number)]TJ -ET -570 161.98 0.99 -11.99 re -f -BT -10 0 0 10 258 142.2 Tm -0 Tw -(in octal without breaking it into 16-bit segments.)Tj -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 123.2 Tm -(An NS address is specified in the form:)Tj -ET -570 137.98 0.99 -18.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 104.2 Tm -(net#host#socket)Tj -ET -570 118.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 85.2 Tm -0.077 Tw -(If the address contains a hyphen in any field, the entire address is)Tj -ET -570 99.98 0.99 -18.99 re -f -BT -10 0 0 10 258 73.2 Tm -0.332 Tw -[(interpreted in decimal; otherwise in octal. The field )]TJ -/TT6 1 Tf -25.7771 0 TD -0 Tw -(socket )Tj -/TT2 1 Tf -3.5 0 TD -(is)Tj -ET -570 80.98 0.99 -11.99 re -f -BT -10 0 0 10 258 61.2 Tm -0.45 Tw -(optional, and is defaulted appropriately for the application; if)Tj -ET -570 68.98 0.99 -11.99 re -f -endstream -endobj -111 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -113 0 obj -<< -/Length 6651 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-33)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.094 Tw -(specified, it is a single integer in the same radix as the rest of the)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.039 Tw -[(address. The field)]TJ -/TT6 1 Tf -8.3436 0 TD -[( net)]TJ -/TT2 1 Tf -1.707 0 TD -[( and its terminating # are optional, defaulting)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.064 Tw -[(usually to the directly-connected network. The fields )]TJ -/TT6 1 Tf -24.3655 0 TD -0 Tw -(net )Tj -/TT2 1 Tf -1.732 0 TD -(and)Tj -/TT6 1 Tf -1.6685 0 TD -0.064 Tw -[( host)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 694.2 Tm -0 Tw -(are non-negative integers written in one of three forms:)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -( A sequence of 16-bit octal numbers, separated by periods.)Tj -ET -570 689.98 0.99 -18.99 re -f -BT -10 0 0 10 258 656.2 Tm -( A single integer in octal radix.)Tj -ET -570 670.98 0.99 -18.99 re -f -BT -10 0 0 10 258 637.2 Tm -( A sequence of 3-digit decimal numbers, separated by hyphens.)Tj -ET -570 651.98 0.99 -18.99 re -f -BT -10 0 0 10 258 618.2 Tm -0.175 Tw -(The special variable)Tj -/TT4 1 Tf -9.2436 0 TD --0.0001 Tc -0.1751 Tw -[( *NSADDRESS-FORMAT* )]TJ -/TT2 1 Tf -12.5703 0 TD -0 Tc -0.175 Tw -(specifies the form)Tj -ET -570 632.98 0.99 -18.99 re -f -BT -10 0 0 10 258 606.2 Tm -0.366 Tw -[(used whenever the system prints an NS address object. Its)]TJ -ET -570 613.98 0.99 -11.99 re -f -BT -10 0 0 10 258 594.2 Tm -0 Tw -(possible values are:)Tj -ET -570 601.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 270 575.2 Tm -(NIL)Tj -/TT2 1 Tf -3.6 0 TD -0.157 Tw -(Octal radix, with the host number in three 16-bit parts,)Tj -ET -570 589.98 0.99 -18.99 re -f -BT -10 0 0 10 258 563.2 Tm -0 Tw -(the same as in Lyric.)Tj -ET -570 570.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 270 544.2 Tm -(:OCTAL)Tj -/TT2 1 Tf -7.2 0 TD -(Octal radix without separators.)Tj -ET -570 558.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 270 525.2 Tm -(:DECIMAL)Tj -/TT2 1 Tf -7.2 0 TD -(Decimal radix with hyphens.)Tj -ET -570 539.98 0.99 -18.99 re -f -BT -10 0 0 10 258 506.2 Tm -0.132 Tw -(For example, the following all represent the same address, in the)Tj -ET -570 520.98 0.99 -18.99 re -f -BT -10 0 0 10 258 494.2 Tm -0 Tw -(three formats listed above:)Tj -ET -570 501.98 0.99 -11.99 re -f -BT -/TT11 1 Tf -10 0 0 10 258 476.49 Tm -(1750#0.125000.76771#)Tj -ET -570 489.98 0.99 -18.99 re -f -BT -10 0 0 10 258 457.49 Tm -(1750#25200076771#)Tj -ET -570 470.98 0.99 -18.99 re -f -BT -10 0 0 10 258 438.49 Tm -(1-000#2-852-158-969#)Tj -ET -570 451.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 418.2 Tm -(The following functions exist for manipulating NS addresses:)Tj -ET -570 432.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 399.2 Tm -(\(PARSE-NSADDRESS)Tj -ET -0.75 w -126 396.99 m -229.89 396.99 l -S -BT -/TT6 1 Tf -10 0 0 10 229.89 399.2 Tm -( STR DEFAULTSOCKET\))Tj -ET -229.89 396.99 m -351.02 396.99 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 399.2 Tm -([Function])Tj -ET -351.02 396.99 m -558 396.99 l -S -570 413.98 0.99 -16.99 re -f -BT -10 0 0 10 258 382.2 Tm -0.008 Tw -(Parses the string )Tj -/TT6 1 Tf -7.8052 0 TD -0 Tw -(STR)Tj -/TT2 1 Tf -2 0 TD -0.008 Tw -[( into an NS address by the rules listed above,)]TJ -ET -570 396.98 0.99 -18.99 re -f -BT -10 0 0 10 258 370.2 Tm -0.605 Tw -(or returns NIL if)Tj -/TT6 1 Tf -8.7061 0 TD -[( STR )]TJ -/TT2 1 Tf -3.7657 0 TD -[(is not a well-formed address. If)]TJ -ET -570 377.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 358.2 Tm -0 Tw -(DEFAULTSOCKET )Tj -/TT2 1 Tf -9.1418 0 TD -0.196 Tw -(is non-NIL and the string does not include a)Tj -ET -570 365.98 0.99 -11.99 re -f -BT -10 0 0 10 258 346.2 Tm -0.347 Tw -(socket field, the socket of the resulting NS address is set to)Tj -ET -570 353.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 334.2 Tm -0 Tw -(DEFAULTSOCKET.)Tj -ET -570 341.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 315.2 Tm -(\(COERCE-TO-NSADDRESS )Tj -ET -126 312.99 m -258.22 312.99 l -S -BT -/TT6 1 Tf -10 0 0 10 258.22 315.2 Tm -( HOST DEFAULTSOCKET\))Tj -ET -258.22 312.99 m -387.13 312.99 l -S -BT -/TT2 1 Tf -10 0 0 10 514.09 315.2 Tm -([Function])Tj -ET -387.13 312.99 m -558 312.99 l -S -570 329.98 0.99 -16.99 re -f -BT -10 0 0 10 258 298.2 Tm -0.004 Tw -(Returns an NSADDRESS object corresponding to )Tj -/TT6 1 Tf -22.3682 0 TD -0 Tw -(HOST)Tj -/TT2 1 Tf -2.7778 0 TD -0.004 Tw -(, or NIL if it)Tj -ET -570 312.98 0.99 -18.99 re -f -BT -10 0 0 10 258 286.2 Tm -0.16 Tw -[(cant. This function should be called by any software wanting to)]TJ -ET -570 293.98 0.99 -11.99 re -f -BT -10 0 0 10 258 274.2 Tm -0.436 Tw -(convert a user-supplied NS host specification into a network)Tj -ET -570 281.98 0.99 -11.99 re -f -BT -10 0 0 10 258 262.2 Tm -0 Tw -(address. )Tj -/TT6 1 Tf -4.1133 0 TD -( HOST )Tj -/TT2 1 Tf -3.3335 0 TD -(can be any one of the following:)Tj -ET -570 269.98 0.99 -11.99 re -f -BT -10 0 0 10 258 243.2 Tm -0.159 Tw -( The name of a host, whose address is found by consulting the)Tj -ET -570 257.98 0.99 -18.99 re -f -BT -10 0 0 10 258 231.2 Tm -0 Tw -(Clearinghouse data base.)Tj -ET -570 238.98 0.99 -11.99 re -f -BT -10 0 0 10 258 212.2 Tm -0.096 Tw -( A symbol or string in the syntax of an NS address, as described)Tj -ET -570 226.98 0.99 -18.99 re -f -BT -10 0 0 10 258 200.2 Tm -0 Tw -(above.)Tj -ET -570 207.98 0.99 -11.99 re -f -BT -10 0 0 10 258 181.2 Tm -( An NSADDRESS object.)Tj -ET -570 195.98 0.99 -18.99 re -f -BT -10 0 0 10 258 162.2 Tm -0.118 Tw -( A list of the form \(NSHOSTNUMBER )Tj -/TT6 1 Tf -18.0677 0 TD -(a b c\))Tj -/TT2 1 Tf -2.737 0 TD -(, specifying the host)Tj -ET -570 176.98 0.99 -18.99 re -f -BT -10 0 0 10 258 150.2 Tm -0.041 Tw -[(number as three 16-bit values. In this case, the network number is)]TJ -ET -570 157.98 0.99 -11.99 re -f -BT -10 0 0 10 258 138.2 Tm -0 Tw -(omitted \(zero\).)Tj -ET -570 145.98 0.99 -11.99 re -f -BT -10 0 0 10 258 119.2 Tm -(If)Tj -/TT6 1 Tf -0.5557 0 TD -0.067 Tw -[( DEFAULTSOCKET)]TJ -/TT2 1 Tf -9.0128 0 TD -[( is non-NIL and the socket is unspecified, the)]TJ -ET -570 133.98 0.99 -18.99 re -f -BT -10 0 0 10 258 107.2 Tm -0.216 Tw -(socket of the result is set to )Tj -/TT6 1 Tf -13.9065 0 TD -0 Tw -(DEFAULTSOCKET )Tj -/TT2 1 Tf -9.1618 0 TD -(\(if)Tj -/TT6 1 Tf -0.833 0 TD -0.216 Tw -[( HOST )]TJ -/TT2 1 Tf -3.7655 0 TD -(is an)Tj -ET -570 114.98 0.99 -11.99 re -f -BT -10 0 0 10 258 95.2 Tm -0 Tw -(NSADDRESS object, it is copied in this case\).)Tj -ET -570 102.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 73.2 Tm -(Network Routing Maintenance)Tj -ET -570 90.98 0.99 -19.99 re -f -1 w -54.01 70.49 m -558.01 70.49 l -S -570 70.98 0.99 -0.99 re -f -endstream -endobj -114 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -116 0 obj -<< -/Length 5812 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-34)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.032 Tw -(The representation of Pup and NS routing tables has changed, and)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.241 Tw -(the background gateway listener processes have been tuned to)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(significantly reduce their overhead.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 687.2 Tm -0.517 Tw -(The INFO command for the Pup and NS gateway listener)Tj -ET -570 701.98 0.99 -18.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.147 Tw -(processes in the process status window now display their routing)Tj -ET -570 682.98 0.99 -11.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.171 Tw -[(tables. Clicking with the left button displays the table in random)]TJ -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.141 Tw -(order, middle button displays the table sorted by network number)Tj -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 639.2 Tm -0 Tw -(\(this takes a little longer\).)Tj -ET -570 646.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 611.64 Tm -(Section 31.3.2 Clearinghouse Functions)Tj -ET -54.01 608.49 m -558.01 608.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 589.2 Tm -(\(III:31.9\) )Tj -/TT2 1 Tf -0 -1.9 TD -0.314 Tw -(The variable)Tj -/TT4 1 Tf -5.8169 0 TD -[( AUTHENTICATION.NET.HINT)]TJ -/TT2 1 Tf -14.3681 0 TD -[( has been added to)]TJ --20.185 -1.2 TD -0.197 Tw -(Clearinghouse Functions. It follows the)Tj -/TT4 1 Tf -17.9638 0 TD -[( CH.NET.HINT)]TJ -/TT2 1 Tf -6.8078 0 TD -[( variable in)]TJ --24.7716 -1.2 TD -0 Tw -(the)Tj -/TT6 1 Tf -1.3901 0 TD -( Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.2837 0 TD -(.)Tj -/TT4 1 Tf --27.8738 -1.9 TD -(AUTHENTICATION.NET.HINT)Tj -/TT2 1 Tf -38.976 0 TD -([Variable])Tj -ET -126.01 524.49 m -558.01 524.49 l -S -BT -/TT4 1 Tf -10 0 0 10 258 509.2 Tm -(AUTHENTICATION.NET.HINT )Tj -/TT2 1 Tf -14.4707 0 TD -0.416 Tw -(can be set to )Tj -/TT4 1 Tf -7.6679 0 TD -0 Tw -(CH.NET.HINT )Tj -/TT2 1 Tf -7.0268 0 TD -(to)Tj --29.1654 -1.2 TD -0.596 Tw -(speed up the initial authentication connection. Its value is)Tj -T* -0 Tw -(interpreted in the same manner as)Tj -/TT4 1 Tf -15.2305 0 TD -( CH.NET.HINT)Tj -/TT2 1 Tf -6.6108 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 457.64 Tm -(Section 31.3.3 NS Printing )Tj -ET -570 480.98 0.99 -25.99 re -f -54.01 454.49 m -558.01 454.49 l -S -570 454.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 435.2 Tm -(\(III:31.12\))Tj -ET -570 453.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 416.2 Tm -0.266 Tw -(With the Medley release there is now a single Printer Watcher)Tj -ET -570 430.98 0.99 -18.99 re -f -BT -10 0 0 10 258 404.2 Tm -0.282 Tw -[(process for all NS printers. This mean you wont get a stack)]TJ -ET -570 411.98 0.99 -11.99 re -f -BT -10 0 0 10 258 392.2 Tm -0 Tw -(overflow if you hardcopy many files in quick succession. )Tj -ET -570 399.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 364.64 Tm -(Section 31.3.5.3 Performing Courier Transactions)Tj -ET -54.01 361.49 m -558.01 361.49 l -S -BT -/TT8 1 Tf -10 0 0 10 258 342.2 Tm -(\(III:31.20-21\) )Tj -/TT2 1 Tf -0 -1.9 TD -(The )Tj -/TT4 1 Tf -2.257 0 TD -(COURIER.OPEN)Tj -/TT2 1 Tf -7.723 0 TD -0.256 Tw -[( function requires that a courier server be)]TJ --9.98 -1.2 TD -0 Tw -(running on the host machine.)Tj -/TT4 1 Tf -12 0 0 12 54 283.64 Tm -(Section 31.3.5.3.3 Using Bulk Data Transfer )Tj -ET -570 306.98 0.99 -25.99 re -f -54.01 280.49 m -558.01 280.49 l -S -570 280.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 258 261.2 Tm -(\(III:31.24-25\) )Tj -ET -570 279.98 0.99 -22.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 242.2 Tm -0.143 Tw -(The following is a correction and clarification to the description in)Tj -ET -570 256.98 0.99 -18.99 re -f -BT -10 0 0 10 258 230.2 Tm -0 Tw -(the )Tj -/TT6 1 Tf -1.84 0 TD -0.172 Tw -(Interlisp-D Reference Manual)Tj -/TT2 1 Tf -13.3499 0 TD -[( of receiving values from a bulk)]TJ -ET -570 237.98 0.99 -11.99 re -f -BT -10 0 0 10 258 218.2 Tm -0 Tw -(data transfer: )Tj -ET -570 225.98 0.99 -11.99 re -f -BT -10 0 0 10 258 199.2 Tm -0.025 Tw -(It is possible for a Courier procedure to return both bulk data, in the)Tj -ET -570 213.98 0.99 -18.99 re -f -BT -10 0 0 10 258 187.2 Tm -0.029 Tw -(form of a bulk data sink, and a single value \(or list of values\) as the)Tj -ET -570 194.98 0.99 -11.99 re -f -BT -10 0 0 10 258 175.2 Tm -0.783 Tw -[(normal result of the call. However, the Lisp function)]TJ -ET -570 182.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 163.2 Tm -0 Tw -(COURIER.CALL)Tj -/TT2 1 Tf -7.555 0 TD -0.408 Tw -[( only returns one value, either the bulk data)]TJ -ET -570 170.98 0.99 -11.99 re -f -BT -10 0 0 10 258 151.2 Tm -0.181 Tw -(stream \(when the bulk data sink argument is NIL\) or the regular)Tj -ET -570 158.98 0.99 -11.99 re -f -BT -10 0 0 10 258 139.2 Tm -0.147 Tw -[(value. There are two principal ways in which a caller can obtain)]TJ -ET -570 146.98 0.99 -11.99 re -f -BT -10 0 0 10 258 127.2 Tm -0 Tw -(both values.)Tj -ET -570 134.98 0.99 -11.99 re -f -BT -10 0 0 10 258 108.2 Tm -0.082 Tw -(The usual way to get both values is to pass a function as the bulk)Tj -ET -570 122.98 0.99 -18.99 re -f -BT -10 0 0 10 258 96.2 Tm -0.147 Tw -(data argument, have it retrieve the bulk data and prcoess it as a)Tj -ET -570 103.98 0.99 -11.99 re -f -BT -10 0 0 10 258 84.2 Tm -0.548 Tw -(side-effect \(e.g., store it into a variable bound around the)Tj -ET -570 91.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 72.2 Tm -0 Tw -(COURIER.CALL)Tj -/TT2 1 Tf -7.5552 0 TD -0.054 Tw -(\), then return NIL so that the procedures returned)Tj -ET -570 79.98 0.99 -11.99 re -f -BT -10 0 0 10 258 60.2 Tm -0 Tw -(value is returned from )Tj -/TT4 1 Tf -9.9487 0 TD -(COURIER.CALL)Tj -/TT2 1 Tf -7.5552 0 TD -(.)Tj -ET -570 67.98 0.99 -11.99 re -f -endstream -endobj -117 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -119 0 obj -<< -/Length 5330 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-35)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj -27.284 74.479 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.156 Tw -(The other way, which is documented incorrectly in the )Tj -/TT6 1 Tf -25.4709 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.156 Tw -(, is to)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.276 Tw -(pass NIL as the bulkdata argument, thus getting the bulk data)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.117 Tw -(stream back from )Tj -/TT4 1 Tf -8.353 0 TD -0 Tw -(COURIER.CALL)Tj -/TT2 1 Tf -7.5552 0 TD -0.117 Tw -(, process the stream, and then)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.038 Tw -[(get the procedures returned value by closing the stream. Contrary)]TJ -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0.059 Tw -(to the )Tj -/TT6 1 Tf -2.8978 0 TD -0 Tw -(IRM)Tj -/TT2 1 Tf -1.833 0 TD -0.059 Tw -(, however, you have to close the bulk data stream using)Tj -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 258 670.2 Tm -0.137 Tw -(its internal close function, )Tj -/TT4 1 Tf -12.0539 0 TD -0 Tw -(SPP.CLOSE)Tj -/TT2 1 Tf -5.7236 0 TD -0.137 Tw -(, rather than the user-level)Tj -ET -570 677.98 0.99 -11.99 re -f -BT -10 0 0 10 258 658.2 Tm -0 Tw -(function )Tj -/TT4 1 Tf -3.8133 0 TD -(CLOSEF)Tj -/TT2 1 Tf -4.0557 0 TD -0.033 Tw -(, which consumes the value internally and returns)Tj -ET -570 665.98 0.99 -11.99 re -f -BT -10 0 0 10 258 646.2 Tm -0 Tw -(only the stream.)Tj -ET -570 653.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 618.64 Tm -(Section 31.5 Pup Level One Functions)Tj -ET -54.01 615.49 m -558.01 615.49 l -S -BT -10 0 0 10 126 600.2 Tm -(\\10MBTYPE.PUP)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -126.01 597.49 m -558.01 597.49 l -S -BT -/TT4 1 Tf -10 0 0 10 126 582.2 Tm -(\\10MBTYPE.3TO10)Tj -/TT2 1 Tf -38.4 0 TD -([Variable])Tj -ET -126.01 579.49 m -558.01 579.49 l -S -BT -10 0 0 10 258 564.2 Tm -0.023 Tw -(The values of these variables are the 10MB Ethernet encapsulation)Tj -0 -1.2 TD -0.467 Tw -[(types for PUP packets and Pup-to-10MB address translation)]TJ -T* -0.065 Tw -[(packets, respectively. The initial values of these variables are 512)]TJ -T* -0.221 Tw -[(and 513, respectively. However, these values are illegal for an)]TJ -T* -0 Tw -(Ethernet conforming to IEEE 802.3 specifications.)Tj -0 -1.9 TD -0.45 Tw -(New encapsulation types have been defined for IEEE 802.3)Tj -0 -1.2 TD -0.049 Tw -[(networks. To use them, set the variable )]TJ -/TT4 1 Tf -18.4003 0 TD -0 Tw -(\\10MBTYPE.PUP)Tj -/TT2 1 Tf -7.8911 0 TD -0.049 Tw -[( to 2560)]TJ --26.2914 -1.2 TD -0.436 Tw -(\(decimal\) and )Tj -/TT4 1 Tf -7.2079 0 TD -0 Tw -(\\10MBTYPE.3TO10)Tj -/TT2 1 Tf -8.8921 0 TD -0.436 Tw -[( to 2561. Then call either)]TJ -/TT4 1 Tf --16.1 -1.2 TD -0 Tw -(\(RESTART.ETHER\))Tj -/TT2 1 Tf -9.0552 0 TD -0.117 Tw -[( or )]TJ -/TT4 1 Tf -1.6788 0 TD -0 Tw -(\(LOGOUT\))Tj -/TT2 1 Tf -4.9434 0 TD -0.117 Tw -(, so that the Ethernet code can)Tj --15.6774 -1.2 TD -0.166 Tw -[(reinitialize itself. It may be convenient for a site to smash these)]TJ -T* -0.097 Tw -(values directly into the standard sysout everyone fetches by using)Tj -T* -0.236 Tw -(the function )Tj -/TT4 1 Tf -5.9202 0 TD -0 Tw -(READSYS)Tj -/TT2 1 Tf -4.8338 0 TD -0.236 Tw -[( and its )]TJ -/TT11 1 Tf -4.21 0 TD -0 Tw -(^V)Tj -/TT2 1 Tf -1.2002 0 TD -0.236 Tw -[( command from the TeleRaid)]TJ --16.1642 -1.329 TD -0.024 Tw -[(Library module \(the sysout must be on disk or a random-access file)]TJ -0 -1.2 TD -0.119 Tw -[(server\). Note that )]TJ -/TT6 1 Tf -8.7568 0 TD -0 Tw -(all)Tj -/TT2 1 Tf -1.0005 0 TD -0.119 Tw -[( pup hosts on a network \(servers as well as)]TJ --9.7573 -1.2 TD -0.13 Tw -(workstations\) must simultaneously choose to use the new values;)Tj -T* -0.233 Tw -(those using different values will be unable to communicate with)Tj -T* -0.078 Tw -[(each other. The System Tool must also be upgraded at the same)]TJ -T* -0 Tw -(time.)Tj -/TT4 1 Tf -12 0 0 12 54 324.35 Tm -(Section 31.6.1 Creating and Managing XIPs)Tj -ET -54.01 321.2 m -558.01 321.2 l -S -BT -/TT2 1 Tf -10 0 0 10 258 305.91 Tm -(The function NSNET.DISTANCE was previously undocumented. )Tj --13.2 -1.9 TD -(\()Tj -/TT4 1 Tf -0.333 0 TD -(NSNET.DISTANCE)Tj -/TT2 1 Tf -8.778 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(NET#\))Tj -/TT2 1 Tf -29.0112 0 TD -([Function])Tj -ET -126.01 284.2 m -558.01 284.2 l -S -BT -10 0 0 10 258 268.91 Tm -0.311 Tw -(Returns the "hop count" to network )Tj -/TT6 1 Tf -17.5848 0 TD -0 Tw -(NET#,)Tj -/TT2 1 Tf -2.834 0 TD -0.311 Tw -[( i.e., the number of)]TJ --20.4187 -1.2 TD -0.462 Tw -(gateways through which an XIP must pass to reach )Tj -/TT6 1 Tf -27.1702 0 TD -0 Tw -(NET#,)Tj -/TT2 1 Tf --27.1702 -1.2 TD -0.095 Tw -[(according to the best routing information known at this point. The)]TJ -T* -0.221 Tw -(local \(directly-connected\) network is considered to be zero hops)Tj -T* -0.216 Tw -[(away. Current convention is that an inaccessible network is 16)]TJ -T* -0.032 Tw -(hops away. )Tj -/TT4 1 Tf -5.7103 0 TD -0 Tw -(NSNET.DISTANCE)Tj -/TT2 1 Tf -8.7783 0 TD -0.032 Tw -[( may need to wait to obtain routing)]TJ --14.4886 -1.2 TD -0.088 Tw -(information from an Internetwork Router if )Tj -/TT6 1 Tf -19.258 0 TD -0 Tw -(NET#)Tj -/TT2 1 Tf -2.5562 0 TD -0.088 Tw -[( is not currently in)]TJ --21.8141 -1.2 TD -0 Tw -(its routing cache.)Tj -ET -endstream -endobj -120 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 32 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -122 0 obj -<< -/Length 389 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-36)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 212.34 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, CHANGES TO INTERLISP-D)Tj --15.834 74.379 TD -(4. CHANGES TO INTERLISP-D IN LYRIC/MEDLEY )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 494.21 Tm -([This page intentionally blank])Tj -ET -endstream -endobj -123 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -74 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 161 -/Height 136 -/BitsPerComponent 1 -/ImageMask true -/Length 2857 ->> -stream -??????G?????????????????????????????????????????????????????????????>?>?~?????????????????>808>????????????????????????????????????????????????????????? -endstream -endobj -79 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 47 -/Height 69 -/BitsPerComponent 1 -/ImageMask true -/Length 415 ->> -stream -WW____UUUUU_UU_UUUUUUWU_WWW__W_W_UWUUUUUWWWW__ -endstream -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -124 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -125 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -126 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -127 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -128 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AILIJA+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 129 0 R ->> -endobj -129 0 obj -<< -/Filter /FlateDecode -/Length 20039 -/Length1 39384 ->> -stream -HW}tovgvfwv9Z - P|T0`IiAPo#̒ (4H#RKS))R ȇآ"-R -B1MO3{w{s}ͼ ُ(λRk w+*U[IXc<:TLB %bd#Ɂ| BFpٸ6/eb)BIWH:xઠ.'$1K߽pMDgB9 \n: _&k0C&2Kc*aw1G+"}xNd"ww'hJskęc2@&&F웎u xj>`&2d:cqX'|2[ \ܹo8\Δy'kYX*+h m\dcm\bl\j2۸ƕ6q6>iOXcm\g36mu6>gqsrBT7T-Q LҨay E$t%`E5RYQ/F h Dњ=KO9Unb{}Uh4mg647+ jjDO|"𚏹 v>NCM~ }3~lӪӊx5Y,R7x%ZѿeT^ek7AQ˅ &.6A@ю13wZӎJ47nBk,Ye˗4KOxm˒E8m.-F) >-gPƻ'3,h`l!~w\j?Mio0JS3$?] i/7RA#9enx6 [8KϺ% o*mUmtTfl| k}KinvkmF9Ww詢UK'?qi$&:#9L@6ul^NKNGWMgth׮圣* |csg6k|X`f߂1k lIey}q.9;70`U/FKFA]'um3\P@ lRZUCQ hK+D4Ju&{l>>=w6;ꌺ d5xLV)Vr]-G0F*jr \d GƟW+Q ~:JUoHC?wD -+[AE4!otvM6 ⰺX :ccdmbB5j1EDBHkc, GYt_^YUӇ{O\jr]{dP`2B]Ԫ%um"dꌢ15r$js{Xf{yMvB;I@9)ѡAP@Rq.颥,5aatyȨn2 -ir; \21z4*7t_paX<@(r2'YL4&AAgEiK.K*%BmIsчJl:>MF+{P+鋴n[kEߣ]z~AAh?M03bc0eTVf {-`K l5gdCCvfQv]arn>OSy)?͗Kov?;a~SG%~?Md6e: OT-~B83 bLbZ@qpXQ3CQT XLa;GJjnV Xz/2t_8f B,Ud7+Dm#Ŀ: dX1d#B#`-i2f3e2z0{"ѕ;PaGvQLÂz ;3U8V7[荚MM?@0:N@\x6cے{GܗbM~.!7zߋp. -ZlPNE(Q˼N.U>iu7Z<ôd *j {%"_7BtôеX ݕ[*jD?~@Fn2%e48YWwDZWF]KZcB|1} ~; Zm fI#KJfo+=N-%ڋ60RzoL9].W̹CY]rsF,ᒮWlLGbNuklZrԢ~QIe[ 2/ehHT6gyvsx*(ѝtmZrJPbW_odWu敦m&\.j,ˣFK$۰,Zum*j+ =@-f42f9+)^Es/Kwuy'h_dYmB2sKug<j -?Z#bZ[9sQ%jrYFUdMK!^Dig,1򑩞z &AKPtнZ"E+YE1uc̓泍xXVl z+Ƴـ=k.*ZiGc2U7!S{@#4E?,,ڸ%{,ٞVb.ȴY1E)dYm/0/+O*Br=:=, O;BH -uc?oP:uVSrYNY% +KPouĤe=8ĵ)QpEj;-A^7-WQ-7(AyjŪf׽HVzh!{,9 -ujYAY{7D+Tj^uXÆ8>o>A |Vyh$+ Ysp.[m䚹/qOrAn}n~gposq^5@Q]W{Bjٷˢ`"" -Q;@0b%DԦթ6CPGId4ڙ:1i (j4Ft&3֘c#N˂1g{9=cbW-Yd]&ϔ9rH^"A9");Gr|Q$!_[ -QdEQJx2ILU3JRGydܕ@x2UH8P :&fPE%f#T XJ,@lhqĊT88j+Q1dž~lD4d6h–5y{c+ -*oa#fj&bGC=H0HJT|!/qLxMl}D!8hVZI"+b-$%ke {gtUio,4ʔ#mu'I)F,m]٪\zZa+ւ>,?Ժj,@{?숵k&T_ mؾg-O|T~_#Fhzߎ[*;kî5k aݩFM0u9) HJt_!S}j@g[2d1Zt9\s$˒zOBzLDW -g;|-?V2_CW_V#{*U|峧kIF߆@;I Š*ᣳrɪ,K\Ū2VntvGPyLI[M wjuSoóx%ptTͫ&G+;HZJu5y2@qtO ᅟzM6gʔn־g׽{:?g!ccPu`Όpde滩gV}c ݴݭQkU6~qͱn mjDX7/ -^$6N\Q'.UkS=C4o[h 3pUcHiHK kkҦvkS :G?q:xgꂏTK1q!!xHD.$dTS ra& %ȬyX) #z~ AD ، +pA~uNA`X%"2ޛEd"L+pK# OHyԐWZRG^'Qd^[vFv}m.!, 9OIM./ bPZ8 t -ͦ3[@+i5]AWӵF!ۃn?=HHc,=GE:H$.IJ|ғR'Y9rJZZNHMR3r6)&N:$uI'3Ik dj531;sD&I{ld,2?+`Qt;(y0!K0#wB =B$z,[= 3"Po -̋窼33& ?plO'c_6o -L~ \JEۼ7aDl~~rFl ? ?+4Ia_aAP3Z>"Le@Dx2ׯiK!2ns*Ɨh[)˳HWr;vIgGf mQ3AyxGV44]~ƻҢ'= aPl ] ;SC}M_+sӦWX Nz^I)AqFj`;srjG8>7@t7V<팽)Ho,Ŋ|_/(;{ Mьw#MT? F&P%q0R  5i s0H#0QEmo\ZLۿ}B=KnX@o7ծՠ/ŹB3p*_ED`EcBr\.tKn厚"IJuP4ܛ kykn?_0vܚR%31;t~aWjo,ox<Ԃ% >%PaqOٌd__w xgί()Gt6'.dNd;Y6ꈰ6}7+Id~g^.9QhE78s/Aw=8[&=`uQ027h;_ǍO~كͯ(vC-Qu%ρ|D(jgn)[l:CUu: -X[JWtO5y8 a)>Tآ {sv%Cg֩;ovrT`{kEvd;DT6T"]7D(;HD;e}OV_ 7ݚ.E}㒈s%q\3\dn5;+.=r.U[0u׭Z |359{U@~dgJW]d}vgNB|ŽB/3SQ - BɓYbD6킡<5꫉4&I+3 eh[w|,8'iTlvmfYDc3ʳ GXSR9RP a*Pz ,`.܍z}Vz&)lvp󨩎 7QS p#Wlr- MH9EɷP]- #YBz!Ii&-d*d"O7~OgPO5H" -F3Q_Ao_&twEt1khFh+}u(zF";2l,jkY6ղy;-c l%[C6f3T_m:Pu=l{uCŞea}\@o@sjTQG1+7;x&DZd%B0P<^T; -Yy.?=^}-Qi#%Gf2磙o^U;a&Ǥv$C>5Td"%&/>C  !WSW&# qiꘉ/4c#Yc2KQ-ȶcj>"3ud^qvn$9\t9K!#X7< -_qW+dDn ,QfG\Hwwud*XN~9 (ro5@Ut"ֽ\XOP]ij` -@v9%S+b,!A}03HV6~wRѳ 58-F{Bnke*5lK"<ߐt_ݯNu^6C,gxYrckf+Yⴀ6ӧ܋az xdaE `0 uNuY`)ߤ`1[걈A&Odwo\Ur#ł5^SԕD/_{( t-5-TuuiqYHp } %,^RzTip3hnc.٪VvYfVsy17Q:]`%qBԇHI\)խ0"u% 9|Hns+$j}-HH zLھYjPe -r qmyvgg3}8|lvh: Nt25Z&YSxqb z4,PC I -7}Xu/ŭZ gwyc_3E-pvixq깙%󪴰!t|[9rSl8di&>t3P5kb]ϼu1ƵhOMw縔\o4UN,٣p]-e*,2k'Esm>2vfhΫ>e=Uԥ5`Ctha]:B ]^׾pu 1+PۖU3k7WpWSo68|tŇL|B!q]-f; ha4xK8OYi2vh΋ڼR.ea›uKOT7D{`z9? e6Z$<@IZk]qB <S -ө0^p`MQ}Aiay8ʩZHyo:GZwHV9cW{on8tjSH~պOxcu̩_h%,0{Z'̾ӏ+L̩8evdI Zflaezv)ZL`U֝҂|^3,'[h҂`FYƠ+Suʖ$ͼ<,6)sj*af+wn:f -A/фƈ5"c +Ad%-v;I)slak,f -װTvNC _V 5+H ܏&Q ZB|=߱7I4*-Uw!Xj-G-d'E E0GAz|'Ο_6Yn k~}$SXY얱[XjA u#̕,u|;^.YXc-Xϴ"q~C>Yc'ϴoi72gsrsxSKYwb6Tu5~.Xꃤu'a9 ړs,ˤ*;$-EIZX^i06@@22XAC9 IZP7Ŧx%ҌZk.Q r̩hukՄy֤G[%6g `##'2 2k~ EMG6NCv{.1@ˍTϢѠ /b>/wC z S["@Io`p#/J?d^wO9pW=K!`eh/ ;>-T{bE܅!q'MIbzl`][ XnO>Wt|9᰽E%cV@hխCyAo'],O Uun|DnqM}֍qЂqriaȻ)^`1uxS^GipXoZ4'>ڎ׷?-vwwZF83u' ckgKx ~o_:F& ȣd|\"ÂGdH~K^%]rK11e\rB5^O_)/*Z<݅EQ A4 -m˂|fĺ%4="Z-Mbjڴm}jϤXX1矹7t?=I?WizD,6e Y=[ֳMl;kc *kgP/<c$"=u7]?/U~[ -zJdIcbiT!-I#ye YC,$ˋrG>!S TS~*YeJyG@فi^rD9U>W\R:UQ5U @5CTH ]w$x:?…?*1A gfE{TT@& -"pUDzp0#@$D `@F$J QgGQxE -%ď}ck "Ѓ L4 G(1Dʈ >,R>R #ĥ8v؝q `fy FEzĦ;DfI$HAڇ$QBBF%N@NnnX7q!?Ct >1WPk';m@ѓmMGn?]/[QWw~(CfXgE頕:ʡukhEeXW,>y˞mysUn#ߞ yR =+K196/YGpj?#Z_qyAPR{_Y'ƗfL.oI3X_]somXOL ofheqi }@2UҪ6W]Uа|TrsAfGU=]k3J.ۚ;2ŲǢS1:j6J+ )5ոQq̉P?sZZJ+<޽}`~\;ύXW6\LA~u]Ue'Ʋbin;:Ur߭҂_t Q>̫8".OD{oYߐW}D Zs~ubf4䦼lnQ鈸#_{n X .$P+-U.'b,_5,4E!Y+z7[1и}Ӎˁ3Lj5Rl|r4Xe1֩I'PI$&2W,RAcVMZ;4d-s?d/9HOi慗Ur)yL)&TNLjyt,.ZDitt5t)]FW5zn0R>E)$$)Ch1*1F,h~r1QSTɣU 00.EMð$m4m$9'9&M&iӛ^ePaAIAQqDAAdew²X;9}'Jv/C .W]soQk?Q|FUY)HʀZ^J.+Ϩl*~A}?ڣtvJgJO_ R\C=JOJ9ϩ&M_Nv-jI($:Ō5"smD־X:u@|$wU&6+$?c$GM2rx2Y7Jg篈ҾFPTFpwH|C"\4G$7=cRR/~J._GG1pKW HS$k/;ė0%nqYߐb|L/I|*u~R,RWn8B H~Ar$ҋG?^\/ |Gܗ?R$qy{ 9IZWnƯoO軯={KK6qC1 -0M6'J+lQ-L{TDR~(ڨ!36T2Ln;CגvdhX]ONO`vphMAp[*aC4=d3'I+V>UݥjkљD9H=n -L% qؐ9MDjn<9qu,mkƒ5"9uPd}gaggÊ1hIHtƧP L79.nD]G-q"n&RWOY ۆ$h Ʋ̸P;Uu! {aΪ3$B7H\4݃Q@+ͧxxx:&w#Zjd%nzag-X59x-2S<F!· JiE7p!XcB3 -,a 4aY\oۊNk;kh:oEhٿ5RHm#NNհiT6H$5\ǵᔮ!K7@TmM+ Fi߰jF?j`p^qk+8O[(7iǟ0qyP̓`&٦n'؇jKyc{bÁ0p5ǒhIL0$\^Gvtb k}N& ԵeA@y\ TғYm#dzk kjHOi Z#tǂ+aFpƶp:dhr}AM3rl%irvLաU3EߟoJ(SY,7&&?րƤK>R+6I$ AzHBRdw,H-˪@o1LFl][;DUm$\Y2iulaqvžiUQ44aoU;?7Owɿ~'1Ue=p9`7$aPF9E `1(PFtI2^RAf)d\2 IƚLŴ~o`KHuKTE|mǧEf~􏸑;n_YtM4/Pm淞wRY}y~/?ܞ$_+?]#w_J1l .K_vR.¹ѝqSζYJ!Μ[ԲFY_n ^?UutlOs-Y)gV>MqzS7zZ˺YuUqafs6iIֽ8ӗo]շڶّ%&=.=x{n6>9;FJ~2݄^;kU -/^/4[@c8l_VP+t%Yl¸d` %E_4>raзTzƲ- L(. |p8C *9:?Q,LWHe%pN=ˋPPc4S'@pesB8|m2yCOǃ^h>K܆": t%krb]eEHM[&YBxql7󳏟2~Q$XS({&4![$Toz'L9OK\*JP5MFËf6JlpP[p^\=C9ys Gr29NGjxFI#Q4Aיsp9]9(y뻱YJvq'p v1o־]ҏuiz7Y)4|lhٮKHc?>ɖ|ua~ ;ؤf -RIJMhno~5{qqsqNTPݰCm28_*~=Q6 -{0_%ez$_$-z ٘"cr|LU{0[F`y -endstream -endobj -130 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -131 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -86 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 131 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 355 556 0 0 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 0 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 0 278 278 278 469 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 0 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 124 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 0 0 0 0 0 0 333 333 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 333 0 0 584 0 611 -0 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 0 0 278 0 584 0 -0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 -611 611 389 556 333 611 556 778 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 125 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 556 0 0 0 0 333 333 0 584 278 333 278 278 -0 0 0 0 0 0 0 0 0 0 0 0 0 584 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 126 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 150 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 333 278 0 -556 556 556 556 556 556 556 556 556 556 333 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 278 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 127 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AILIJA+Symbol -/Encoding /Identity-H -/DescendantFonts [ 132 0 R ] -/ToUnicode 133 0 R ->> -endobj -132 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AILIJA+Symbol -/FontDescriptor 128 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -137 [986] -] ->> -endobj -32 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 600 0 0 0 0 600 600 600 0 0 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 600 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 0 600 0 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 130 0 R ->> -endobj -133 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTP=o0 +<:$r0Cv%TȄ$:ؖ-ݥ#A~7=FYůl89Zu&]fd"qh4B~ya8=U ";򬾾ү!W J_A4!4Urjdu47VE"mx>ʜ,Ël|j9įj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 43 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 75 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -109 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 111 0 R -/Contents 110 0 R ->> -endobj -112 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 114 0 R -/Contents 113 0 R ->> -endobj -115 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 117 0 R -/Contents 116 0 R ->> -endobj -118 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 120 0 R -/Contents 119 0 R ->> -endobj -121 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 123 0 R -/Contents 122 0 R ->> -endobj -134 0 obj -<< -/S /D ->> -endobj -135 0 obj -<< -/Nums [0 134 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 14 0 R 17 0 R 20 0 R 23 0 R 26 0 R 29 0 R 33 0 R 36 0 R] -/Count 10 -/Parent 42 0 R ->> -endobj -43 0 obj -<< -/Type /Pages -/Kids [39 0 R 44 0 R 47 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R] -/Count 10 -/Parent 42 0 R ->> -endobj -75 0 obj -<< -/Type /Pages -/Kids [71 0 R 76 0 R 80 0 R 83 0 R 87 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R] -/Count 10 -/Parent 42 0 R ->> -endobj -108 0 obj -<< -/Type /Pages -/Kids [105 0 R 109 0 R 112 0 R 115 0 R 118 0 R 121 0 R] -/Count 6 -/Parent 42 0 R ->> -endobj -42 0 obj -<< -/Type /Pages -/Kids [9 0 R 43 0 R 75 0 R 108 0 R ] -/Count 36 -/MediaBox [0 0 612 792] ->> -endobj -136 0 obj -<< -/CreationDate (D:20210119174406-06'00') -/ModDate (D:20210119174406-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -137 0 obj -<< -/Type /Catalog -/Pages 42 0 R -/PageLabels 135 0 R ->> -endobj -xref -0 138 -0000000000 65535 f -0000215452 00000 n -0000000016 00000 n -0000004379 00000 n -0000212207 00000 n -0000212788 00000 n -0000213354 00000 n -0000213820 00000 n -0000190342 00000 n -0000218563 00000 n -0000215532 00000 n -0000004507 00000 n -0000008975 00000 n -0000214278 00000 n -0000215615 00000 n -0000009116 00000 n -0000013658 00000 n -0000215698 00000 n -0000013787 00000 n -0000018672 00000 n -0000215781 00000 n -0000018801 00000 n -0000024684 00000 n -0000215864 00000 n -0000024813 00000 n -0000030694 00000 n -0000215947 00000 n -0000030812 00000 n -0000036114 00000 n -0000216030 00000 n -0000036232 00000 n -0000039789 00000 n -0000214629 00000 n -0000216113 00000 n -0000039931 00000 n -0000045385 00000 n -0000216196 00000 n -0000045514 00000 n -0000050446 00000 n -0000216279 00000 n -0000050575 00000 n -0000054485 00000 n -0000219092 00000 n -0000218699 00000 n -0000216363 00000 n -0000054603 00000 n -0000060093 00000 n -0000216447 00000 n -0000060235 00000 n -0000060832 00000 n -0000216531 00000 n -0000060928 00000 n -0000065835 00000 n -0000216615 00000 n -0000065964 00000 n -0000072320 00000 n -0000216699 00000 n -0000072449 00000 n -0000077900 00000 n -0000216783 00000 n -0000078029 00000 n -0000082818 00000 n -0000216867 00000 n -0000082960 00000 n -0000089589 00000 n -0000216951 00000 n -0000089707 00000 n -0000095003 00000 n -0000217035 00000 n -0000095132 00000 n -0000101301 00000 n -0000217119 00000 n -0000101443 00000 n -0000106577 00000 n -0000186787 00000 n -0000218837 00000 n -0000217203 00000 n -0000106754 00000 n -0000110757 00000 n -0000189787 00000 n -0000217287 00000 n -0000110923 00000 n -0000115813 00000 n -0000217371 00000 n -0000115955 00000 n -0000120405 00000 n -0000212030 00000 n -0000217455 00000 n -0000120557 00000 n -0000125261 00000 n -0000217539 00000 n -0000125390 00000 n -0000131055 00000 n -0000217623 00000 n -0000131197 00000 n -0000137860 00000 n -0000217707 00000 n -0000137967 00000 n -0000145128 00000 n -0000217791 00000 n -0000145246 00000 n -0000151149 00000 n -0000217877 00000 n -0000151292 00000 n -0000156996 00000 n -0000217964 00000 n -0000157126 00000 n -0000162519 00000 n -0000218976 00000 n -0000218052 00000 n -0000162662 00000 n -0000167769 00000 n -0000218140 00000 n -0000167899 00000 n -0000174604 00000 n -0000218228 00000 n -0000174736 00000 n -0000180602 00000 n -0000218316 00000 n -0000180732 00000 n -0000186116 00000 n -0000218404 00000 n -0000186248 00000 n -0000186690 00000 n -0000190482 00000 n -0000190678 00000 n -0000190885 00000 n -0000191091 00000 n -0000191307 00000 n -0000191499 00000 n -0000211629 00000 n -0000211821 00000 n -0000214423 00000 n -0000215160 00000 n -0000218492 00000 n -0000218521 00000 n -0000219198 00000 n -0000219331 00000 n -trailer -<< -/Size 138 -/Root 137 0 R -/Info 136 0 R -/ID [] ->> -startxref -219403 -%%EOF diff --git a/docs/ReleaseNote/SEC5-LIBRARY-MODULES.pdf b/docs/ReleaseNote/SEC5-LIBRARY-MODULES.pdf deleted file mode 100644 index 4db26379..00000000 --- a/docs/ReleaseNote/SEC5-LIBRARY-MODULES.pdf +++ /dev/null @@ -1,2866 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 2514 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj -/TT4 1 Tf -18 0 0 18 258 762.97 Tm -[(5.)-6109.3(LIBRARY MODULES)]TJ -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 719.2 Tm -0.179 Tw -(This section contains release notes indicating changes that have)Tj -ET -570 733.98 0.99 -18.99 re -f -BT -10 0 0 10 258 707.2 Tm -0.124 Tw -[(occurred in the library modules since the Lyric release. Medley)]TJ -ET -570 714.98 0.99 -11.99 re -f -BT -10 0 0 10 258 695.2 Tm -0 Tw -(changes are indicated with revision bars in the right margin. )Tj -ET -570 702.98 0.99 -11.99 re -f -BT -10 0 0 10 258 676.2 Tm -0.119 Tw -(Refer to the )Tj -/TT6 1 Tf -5.8599 0 TD -(Lisp Library Modules )Tj -/TT2 1 Tf -9.8614 0 TD -[( manual)]TJ -/TT6 1 Tf -3.6766 0 TD -0 Tw -(,)Tj -/TT2 1 Tf -0.2778 0 TD -0.119 Tw -[( Medley release, for)]TJ -ET -570 690.98 0.99 -18.99 re -f -BT -10 0 0 10 258 664.2 Tm -0 Tw -(complete documentation of the library modules. )Tj -ET -570 671.98 0.99 -11.99 re -f -2 w -54.01 608.99 m -558.01 608.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 597.08 Tm -(Modules that are New, Moved, or Replaced)Tj -ET -1 w -54.01 593.49 m -558.01 593.49 l -S -BT -12 0 0 12 54 569.64 Tm -(Modules Moved from the Library to LispUsers)Tj -ET -54.01 566.49 m -558.01 566.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 547.2 Tm -(Big)Tj -0 -1.4 TD -(BitMapFns)Tj -0 -1.2 TD -(BusExtender)Tj -0 -1.4 TD -(BusMaster)Tj -T* -(CirclPrint)Tj -T* -(CheckSet)Tj -T* -(CompileBang)Tj -T* -(Color)Tj -T* -(C150Stream)Tj -T* -(DECL)Tj -T* -(DInfo)Tj -T* -(FileCache)Tj -T* -(HelpSys)Tj -T* -(Iris)Tj -T* -(LambdaTran)Tj -T* -(PCallStats)Tj -T* -(ReadAIS)Tj -/TT4 1 Tf -12 0 0 12 54 297.64 Tm -(Modules Moved from LispUsers to the Library )Tj -ET -54.01 294.49 m -558.01 294.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 275.2 Tm -(Cash-File)Tj -ET -570 293.98 0.99 -22.99 re -f -BT -10 0 0 10 258 261.2 Tm -(Hash-File)Tj -ET -570 270.98 0.99 -13.99 re -f -BT -10 0 0 10 258 247.2 Tm -(SysEdit)Tj -T* -(TableBrowser)Tj -/TT4 1 Tf -12 0 0 12 54 205.64 Tm -(Modules Moved to Their Own Manuals)Tj -ET -54.01 202.49 m -558.01 202.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 183.2 Tm -(TEdit)Tj -0 -1.2 TD -(Sketch)Tj -0 -1.4 TD -(CML, CMLArray, CMLArrayInspector \(part of Xerox Common Lisp\))Tj -/TT4 1 Tf -12 0 0 12 54 129.64 Tm -(Modules Moved From the Sysout Into the Library)Tj -ET -54.01 126.49 m -558.01 126.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 107.2 Tm -(DEdit)Tj -0 -1.2 TD -(Masterscope)Tj -0 -1.4 TD -(Match)Tj -T* -(Press)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 4017 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 251.23 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj --19.723 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Modules Moved From the Library Into the Sysout)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -(IconW)Tj -0 -1.2 TD -(FreeMenu)Tj -/TT4 1 Tf -12 0 0 12 54 666.64 Tm -(Modules Replaced)Tj -ET -54.01 663.49 m -558.01 663.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 644.2 Tm -(Old: FX-80stream, FastFX-80stream, FXprinter)Tj -T* -(New: FX-80Printer)Tj -0 -2.3 TD -(Old: WhereIs)Tj -ET -570 627.98 0.99 -20.99 re -f -BT -10 0 0 10 258 597.2 Tm -(New: Where-Is)Tj -ET -570 606.98 0.99 -13.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 569.64 Tm -(New Modules)Tj -ET -54.01 566.49 m -558.01 566.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 547.2 Tm -(SysEdit)Tj -ET -570 565.98 0.99 -22.99 re -f -BT -10 0 0 10 258 533.2 Tm -(TableBrowser)Tj -ET -570 542.98 0.99 -13.99 re -f -BT -10 0 0 10 258 519.2 Tm -(TextModules )Tj -ET -570 528.98 0.99 -13.99 re -f -2 w -54.01 463.99 m -558.01 463.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 452.08 Tm -(Details of Changes)Tj -ET -1 w -54.01 448.49 m -558.01 448.49 l -S -BT -12 0 0 12 54 403.64 Tm -(4045XLPStream)Tj -ET -54.01 400.49 m -558.01 400.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 381.2 Tm -0.093 Tw -(Enabled its graphics capabilities; added 1108 cable/connector pin-)Tj -0 -1 TD -0 Tw -(outs.)Tj -ET -258.01 357.49 m -558.01 357.49 l -S -BT -10 0 0 10 258 338.2 Tm -0.029 Tw -(A new function has been added to allow owners of the international)Tj -ET -570 356.98 0.99 -20.99 re -f -BT -10 0 0 10 258 328.2 Tm -0 Tw -(4045 \(non-USA model\) to use the 4045XLPStream software.)Tj -ET -570 335.98 0.99 -9.99 re -f -BT -10 0 0 10 198 311.2 Tm -(\(4045XLP.CHANGE.MODE )Tj -/TT6 1 Tf -12.5596 0 TD -(MODE)Tj -/TT2 1 Tf -3 0 TD -[(\))-15716.4([Function])]TJ -ET -570 325.98 0.99 -18.99 re -f -BT -10 0 0 10 258 288.2 Tm -0.196 Tw -(This function changes the internal parameters of the software to)Tj -ET -570 306.98 0.99 -22.99 re -f -BT -10 0 0 10 258 276.2 Tm -0.073 Tw -(allow printing on A4 paper with the international fonts. )Tj -/TT6 1 Tf -25.0225 0 TD -0 Tw -(MODE)Tj -/TT2 1 Tf -3 0 TD -0.073 Tw -[( is a)]TJ -ET -570 283.98 0.99 -11.99 re -f -BT -10 0 0 10 258 264.2 Tm -0.162 Tw -(string, either "USA" or "INTERNATIONAL", with the default being)Tj -ET -570 271.98 0.99 -11.99 re -f -BT -10 0 0 10 258 252.2 Tm -0.096 Tw -[("USA". Do not use this function unless you have the international)]TJ -ET -570 259.98 0.99 -11.99 re -f -BT -10 0 0 10 258 240.2 Tm -0.13 Tw -[(font set and A4 paper tray on a non-USA 4045. A4 page size is)]TJ -ET -570 247.98 0.99 -11.99 re -f -BT -10 0 0 10 258 228.2 Tm -0.02 Tw -(2475 pixels wide by 3525 pixels high in portrait, and 3525 x 2475 in)Tj -ET -570 235.98 0.99 -11.99 re -f -BT -10 0 0 10 258 216.2 Tm -0 Tw -(landscape mode. )Tj -ET -570 223.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 188.64 Tm -(Cash-File)Tj -ET -570 211.98 0.99 -25.99 re -f -54.01 185.49 m -558.01 185.49 l -S -570 185.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 166.2 Tm -0.381 Tw -(The new library module Cash-File was formerly in LispUsers.)Tj -ET -570 184.98 0.99 -22.99 re -f -BT -10 0 0 10 258 154.2 Tm -0.161 Tw -(Cash-File is a front end to Hash-File which uses a hash table to)Tj -ET -570 161.98 0.99 -11.99 re -f -BT -10 0 0 10 258 142.2 Tm -0.354 Tw -[(cache accesses to hash files. This can provide a significant)]TJ -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 130.2 Tm -0.292 Tw -(performance improvement in applications which access a small)Tj -ET -570 137.98 0.99 -11.99 re -f -BT -10 0 0 10 258 118.2 Tm -0.283 Tw -[(number of keys repeatedly. For example, the Where-Is library)]TJ -ET -570 125.98 0.99 -11.99 re -f -BT -10 0 0 10 258 106.2 Tm -0.594 Tw -(module uses this module to achieve acceptable interactive)Tj -ET -570 113.98 0.99 -11.99 re -f -BT -10 0 0 10 258 94.2 Tm -0 Tw -(performance.)Tj -ET -570 101.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 66.64 Tm -(Centronics)Tj -ET -54.01 63.49 m -558.01 63.49 l -S -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 4093 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj -39.786 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -(Added cable/connector pin-out. )Tj -/TT4 1 Tf -12 0 0 12 54 702.64 Tm -(Chat)Tj -ET -54.01 699.49 m -558.01 699.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 680.2 Tm -(Added information about EMACS. )Tj -/TT4 1 Tf -12 0 0 12 54 652.64 Tm -(CopyFiles)Tj -ET -54.01 649.49 m -558.01 649.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 630.2 Tm -0.054 Tw -(When told to copy to a non-existent NS subdirectory, it now asks if)Tj -0 -1.2 TD -0 Tw -(it should create it. )Tj -/TT4 1 Tf -12 0 0 12 54 590.64 Tm -(DataBaseFns )Tj -ET -570 613.98 0.99 -25.99 re -f -54.01 587.49 m -558.01 587.49 l -S -570 587.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 568.2 Tm -0.887 Tw -(Clarifications in the documentation of LOADDBFLG and)Tj -ET -570 586.98 0.99 -22.99 re -f -BT -10 0 0 10 258 556.2 Tm -0 Tw -(SAVEDBFLG are included in Medley. )Tj -ET -570 563.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 528.64 Tm -(EditBitMap)Tj -ET -54.01 525.49 m -558.01 525.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 506.2 Tm -(Added a description of its user interface. )Tj -/TT4 1 Tf -12 0 0 12 54 478.64 Tm -(FileBrowser)Tj -ET -54.01 475.49 m -558.01 475.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 456.2 Tm -0.066 Tw -(Added enhanced features to Load, Compile, Edit; it now preserves)Tj -T* -0.243 Tw -(path name of source files when copying to another machine or)Tj -T* -0.193 Tw -(user; sorts files by attributes; and prints hard copies of directory)Tj -T* -0 Tw -(listings.)Tj -0 -2.3 TD -0.16 Tw -(The FB command now ignores the package of the attributes you)Tj -ET -570 415.98 0.99 -22.99 re -f -BT -10 0 0 10 258 385.2 Tm -0.26 Tw -(optionally specify, so you can easily use it from a non-Interlisp)Tj -ET -570 392.98 0.99 -11.99 re -f -BT -10 0 0 10 258 373.2 Tm -0 Tw -(exec.)Tj -ET -570 380.98 0.99 -11.99 re -f -BT -10 0 0 10 258 350.2 Tm -0.044 Tw -(The enclosing *s are now included with the names of the variables)Tj -ET -570 368.98 0.99 -22.99 re -f -BT -10 0 0 10 258 338.2 Tm -0 Tw -(*EDITMODE* and *DEFAULT-CLEANUP-COMPILER* . )Tj -ET -570 345.98 0.99 -11.99 re -f -258.01 326.49 m -558.01 326.49 l -S -570 333.98 0.99 -7.99 re -f -BT -10 0 0 10 258 307.2 Tm -0.137 Tw -(In addition to having outstanding problems fixed, FileBrowser has)Tj -ET -570 325.98 0.99 -22.99 re -f -BT -10 0 0 10 258 295.2 Tm -0 Tw -(several new features and NS enhancements.)Tj -ET -570 302.98 0.99 -11.99 re -f -BT -10 0 0 10 258 273.2 Tm -(New features:)Tj -ET -570 290.98 0.99 -19.99 re -f -BT -10 0 0 10 258 253.2 Tm -0.391 Tw -( There is an Abort button available during any operation of)Tj -ET -570 270.98 0.99 -21.99 re -f -BT -10 0 0 10 270 241.2 Tm -0 Tw -(indefinite duration.)Tj -ET -570 248.98 0.99 -11.99 re -f -BT -10 0 0 10 258 219.2 Tm -0.068 Tw -( You can scroll or reshape a FileBrowser that is "busy", e.g, while)Tj -ET -570 236.98 0.99 -21.99 re -f -BT -10 0 0 10 270 207.2 Tm -0 Tw -(doing a Recompute.)Tj -ET -570 214.98 0.99 -11.99 re -f -BT -10 0 0 10 258 185.2 Tm -0.273 Tw -[()-849.9(The browser title includes a timestamp of when the browser)]TJ -ET -570 202.98 0.99 -21.99 re -f -BT -10 0 0 10 270 173.2 Tm -0 Tw -(contents were last Recomputed.)Tj -ET -570 180.98 0.99 -11.99 re -f -BT -10 0 0 10 258 151.2 Tm -0.052 Tw -[()-849.9(There is a new subcommand of See, "FileBrowse", which opens)]TJ -ET -570 168.98 0.99 -21.99 re -f -BT -10 0 0 10 270 139.2 Tm -0.162 Tw -[(a FileBrowser on the selected subdirectory. This replaces the)]TJ -ET -570 146.98 0.99 -11.99 re -f -BT -10 0 0 10 270 127.2 Tm -0.209 Tw -(odd functionality of the old See/Edit commands that assumed)Tj -ET -570 134.98 0.99 -11.99 re -f -BT -10 0 0 10 270 115.2 Tm -0.132 Tw -(that any file with null name and extension must be a directory;)Tj -ET -570 122.98 0.99 -11.99 re -f -BT -10 0 0 10 270 103.2 Tm -0.396 Tw -(those commands now always treat the selection as a file.)Tj -ET -570 110.98 0.99 -11.99 re -f -BT -10 0 0 10 270 91.2 Tm -0 Tw -(FileBrowse is mainly useful in the following situations:)Tj -ET -570 98.98 0.99 -11.99 re -f -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -16 0 obj -<< -/Length 4779 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 251.23 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj --19.723 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 270 730.2 Tm -0.133 Tw -[(-)-867(When browsing NS directories with depth set finite, or when)]TJ -ET -570 747.98 0.99 -21.99 re -f -BT -10 0 0 10 282 718.2 Tm -0.3 Tw -(browsing the top level of a server, which is automatically)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 282 706.2 Tm -0 Tw -(depth 1.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 270 684.2 Tm -0.02 Tw -[(-)-867(When browsing on Unix, a device that gives Lisp no indication)]TJ -ET -570 701.98 0.99 -21.99 re -f -BT -10 0 0 10 282 672.2 Tm -0 Tw -(of whether a filename is a directory or not.)Tj -ET -570 679.98 0.99 -11.99 re -f -BT -10 0 0 10 258 650.2 Tm -0.063 Tw -[()-849.9(There is a subcommand of Recompute, "Set Depth" that can be)]TJ -ET -570 667.98 0.99 -21.99 re -f -BT -10 0 0 10 270 638.2 Tm -0.211 Tw -(used to set the enumeration depth for future recomputes and)Tj -ET -570 645.98 0.99 -11.99 re -f -BT -10 0 0 10 270 626.2 Tm -0.213 Tw -[(recursive FileBrowses. You can also set the depth in an FB)]TJ -ET -570 633.98 0.99 -11.99 re -f -BT -10 0 0 10 270 614.2 Tm -0 Tw -(command by appending :DEPTH n to the command line, e.g., FB)Tj -ET -570 621.98 0.99 -11.99 re -f -BT -10 0 0 10 270 602.2 Tm -("{Pogo:}" :DEPTH 1. )Tj -ET -570 609.98 0.99 -11.99 re -f -BT -10 0 0 10 270 580.2 Tm -0.036 Tw -[(The depth counts levels of directories below the last directory in)]TJ -ET -570 597.98 0.99 -21.99 re -f -BT -10 0 0 10 270 568.2 Tm -0.206 Tw -(the pattern not containing a wildcard; depth 1 means just the)Tj -ET -570 575.98 0.99 -11.99 re -f -BT -10 0 0 10 270 556.2 Tm -0.168 Tw -[(immediate descendants of that directory. Depth is ignored for)]TJ -ET -570 563.98 0.99 -11.99 re -f -BT -10 0 0 10 270 544.2 Tm -0 Tw -(nontrivial patterns, i.e., anything but "*.*". )Tj -ET -570 551.98 0.99 -11.99 re -f -BT -10 0 0 10 258 522.2 Tm -0.01 Tw -[()-849.9(Another new subcommand of Recompute, "Shape to Fit", widens)]TJ -ET -570 539.98 0.99 -21.99 re -f -BT -10 0 0 10 270 510.2 Tm -0.015 Tw -(or narrows the browser so that all fields, and no more, are visible)Tj -ET -570 517.98 0.99 -11.99 re -f -BT -10 0 0 10 270 498.2 Tm -0 Tw -(but not wider than the screen.)Tj -ET -570 505.98 0.99 -11.99 re -f -BT -10 0 0 10 258 476.2 Tm -0.218 Tw -[()-849.9(Directory items are now displayed like files, e.g., youll see a)]TJ -ET -570 493.98 0.99 -21.99 re -f -BT -10 0 0 10 270 464.2 Tm -0 Tw -(single line)Tj -ET -570 471.98 0.99 -11.99 re -f -BT -10 0 0 10 270 442.2 Tm -(Lisp>)Tj -ET -570 459.98 0.99 -19.99 re -f -BT -10 0 0 10 270 422.2 Tm -(rather than the double line)Tj -ET -570 439.98 0.99 -19.99 re -f -BT -10 0 0 10 270 402.2 Tm -(Lisp> )Tj -ET -570 419.98 0.99 -19.99 re -f -BT -10 0 0 10 258 382.2 Tm -( NIL )Tj -ET -570 399.98 0.99 -19.99 re -f -BT -10 0 0 10 270 362.2 Tm -0.066 Tw -(In addition, the "page" count for a directory item is now the total)Tj -ET -570 379.98 0.99 -21.99 re -f -BT -10 0 0 10 270 350.2 Tm -0 Tw -(page size of the directory subtree rooted there.)Tj -ET -570 357.98 0.99 -11.99 re -f -BT -10 0 0 10 258 328.2 Tm -0.184 Tw -[()-849.9(FileBrowser consumes somewhat less storage now, and there)]TJ -ET -570 345.98 0.99 -21.99 re -f -BT -10 0 0 10 270 316.2 Tm -0.057 Tw -(have been some performance improvements, especially for very)Tj -ET -570 323.98 0.99 -11.99 re -f -BT -10 0 0 10 270 304.2 Tm -0 Tw -(large browsers.)Tj -ET -570 311.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 276.64 Tm -(FTPServer)Tj -ET -570 299.98 0.99 -25.99 re -f -54.01 273.49 m -558.01 273.49 l -S -570 273.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 254.2 Tm -(FTPServer now supports DELFILE.)Tj -ET -570 272.98 0.99 -22.99 re -f -258.01 242.49 m -558.01 242.49 l -S -570 249.98 0.99 -7.99 re -f -BT -10 0 0 10 258 223.2 Tm -0.154 Tw -(The Medley release fixes several bugs in Lisps handling of PUP)Tj -ET -570 241.98 0.99 -22.99 re -f -BT -10 0 0 10 258 211.2 Tm -0.459 Tw -(FTP connections relating to password handling and filename)Tj -ET -570 218.98 0.99 -11.99 re -f -BT -10 0 0 10 258 199.2 Tm -0 Tw -(recognition.)Tj -ET -570 206.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 171.64 Tm -(FX-80Driver)Tj -ET -54.01 168.49 m -558.01 168.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 149.2 Tm -0.18 Tw -(New software, new text, and 1108/1186 cable/connector pin-outs)Tj -ET -570 167.98 0.99 -22.99 re -f -BT -10 0 0 10 258 137.2 Tm -0 Tw -(have been added. )Tj -ET -570 144.98 0.99 -11.99 re -f -258.01 125.49 m -558.01 125.49 l -S -BT -10 0 0 10 258 106.2 Tm -(Comments are now printed in a compressed font . )Tj -ET -570 124.98 0.99 -22.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 78.64 Tm -(GCHax )Tj -ET -570 101.98 0.99 -25.99 re -f -54.01 75.49 m -558.01 75.49 l -S -570 75.98 0.99 -0.99 re -f -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -19 0 obj -<< -/Length 5003 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj -39.786 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.301 Tw -[(Documentation contains a new description of the STORAGE)]TJ -ET -570 748.98 0.99 -22.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(function. )Tj -ET -570 725.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 690.64 Tm -(Grapher)Tj -ET -570 713.98 0.99 -25.99 re -f -54.01 687.49 m -558.01 687.49 l -S -570 687.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 668.2 Tm -0.085 Tw -[(Grapher can now print graphs larger than one page. The variable)]TJ -ET -570 686.98 0.99 -22.99 re -f -BT -10 0 0 10 258 656.2 Tm -0.036 Tw -[(GRAPH/HARDCOPY/FORMAT is used to control the format of the)]TJ -ET -570 663.98 0.99 -11.99 re -f -BT -10 0 0 10 258 644.2 Tm -1.151 Tw -[(graph when printing to paper. See the function)]TJ -ET -570 651.98 0.99 -11.99 re -f -BT -10 0 0 10 258 632.2 Tm -4.461 Tw -(HARDCOPYGRAPH and the variable)Tj -ET -570 639.98 0.99 -11.99 re -f -BT -10 0 0 10 258 620.2 Tm -0.209 Tw -(GRAPH/HARDCOPY/FORMAT in the documentation for Grapher)Tj -ET -570 627.98 0.99 -11.99 re -f -BT -10 0 0 10 258 608.2 Tm -0 Tw -(for more information.)Tj -ET -570 615.98 0.99 -11.99 re -f -BT -10 0 0 10 258 585.2 Tm -0.221 Tw -[(A new GRAPH.PROPS field has been added to Graph record,)]TJ -ET -570 603.98 0.99 -22.99 re -f -BT -10 0 0 10 258 573.2 Tm -0.029 Tw -(which produces a list in property-list format, and is accessed by the)Tj -ET -570 580.98 0.99 -11.99 re -f -BT -10 0 0 10 258 561.2 Tm -0 Tw -(function GRAPHERPROP. )Tj -ET -570 568.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 533.64 Tm -(Hash)Tj -ET -570 556.98 0.99 -25.99 re -f -54.01 530.49 m -558.01 530.49 l -S -570 530.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 511.2 Tm -0.193 Tw -[(Hash is provided for backwards compatability. New applications)]TJ -ET -570 529.98 0.99 -22.99 re -f -BT -10 0 0 10 258 499.2 Tm -0.27 Tw -(should use the Medley library module Hash-File instead of this)Tj -ET -570 506.98 0.99 -11.99 re -f -BT -10 0 0 10 258 487.2 Tm -0 Tw -(module.)Tj -ET -570 494.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 459.64 Tm -(Hash-File)Tj -ET -570 482.98 0.99 -25.99 re -f -54.01 456.49 m -558.01 456.49 l -S -570 456.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 437.2 Tm -0.024 Tw -(Hash-File is a new library module, upgraded from LispUsers. Hash-)Tj -ET -570 455.98 0.99 -22.99 re -f -BT -10 0 0 10 258 425.2 Tm -0.156 Tw -(File is similar to but not compatible with the Lyric library module,)Tj -ET -570 432.98 0.99 -11.99 re -f -BT -10 0 0 10 258 413.2 Tm -0.216 Tw -[(Hash. Hash-File is modeled after the Common Lisp hash table)]TJ -ET -570 420.98 0.99 -11.99 re -f -BT -10 0 0 10 258 401.2 Tm -0 Tw -(facility, and Hash was modeled after the Interlisp hash array facility. )Tj -ET -570 408.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 373.64 Tm -(Kermit)Tj -ET -54.01 370.49 m -558.01 370.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 351.2 Tm -(Reference to an excellent text/reference book has been added.)Tj -/TT4 1 Tf -12 0 0 12 54 323.64 Tm -(MasterScope)Tj -ET -570 346.98 0.99 -25.99 re -f -54.01 320.49 m -558.01 320.49 l -S -570 320.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 301.2 Tm -(Break when graying a browser has been fixed.)Tj -ET -570 319.98 0.99 -22.99 re -f -BT -10 0 0 10 258 278.2 Tm -0.029 Tw -[(In Medley, MasterScope .LCOM files have been changed to .dfasl)]TJ -ET -570 296.98 0.99 -22.99 re -f -BT -10 0 0 10 258 266.2 Tm -0.301 Tw -[(file extensions. MasterScope now recognizes Common Lisp)]TJ -ET -570 273.98 0.99 -11.99 re -f -BT -10 0 0 10 258 254.2 Tm -0 Tw -(structures. )Tj -ET -570 261.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 226.64 Tm -(NSMaintain)Tj -ET -570 249.98 0.99 -25.99 re -f -54.01 223.49 m -558.01 223.49 l -S -570 223.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 204.2 Tm -0.134 Tw -(The module NSMaintain has been completely revised and has all)Tj -ET -570 222.98 0.99 -22.99 re -f -BT -10 0 0 10 258 192.2 Tm -0.023 Tw -[(new documentation. Most commands auto-complete on one or two)]TJ -ET -570 199.98 0.99 -11.99 re -f -BT -10 0 0 10 258 180.2 Tm -0.159 Tw -[(keystrokes. The Change Password command works again, and)]TJ -ET -570 187.98 0.99 -11.99 re -f -BT -10 0 0 10 258 168.2 Tm -0.53 Tw -(there are several new commands for listing objects in the)Tj -ET -570 175.98 0.99 -11.99 re -f -BT -10 0 0 10 258 156.2 Tm -0.153 Tw -(Clearinghouse data base and for manipulating the access lists of)Tj -ET -570 163.98 0.99 -11.99 re -f -BT -10 0 0 10 258 144.2 Tm -0.114 Tw -[(groups. There is a more rational set of default inputs offered for)]TJ -ET -570 151.98 0.99 -11.99 re -f -BT -10 0 0 10 258 132.2 Tm -0.249 Tw -(most commands, and better feedback is given as to whether a)Tj -ET -570 139.98 0.99 -11.99 re -f -BT -10 0 0 10 258 120.2 Tm -0 Tw -(command succeeded or failed.)Tj -ET -570 127.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 92.64 Tm -(RS232)Tj -ET -570 115.98 0.99 -25.99 re -f -54.01 89.49 m -558.01 89.49 l -S -570 89.98 0.99 -0.99 re -f -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -22 0 obj -<< -/Length 5811 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 251.23 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj --19.723 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.297 Tw -(The RS232.TRACE function is now documented in the Medley)Tj -ET -570 748.98 0.99 -22.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(release. )Tj -ET -570 725.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 690.64 Tm -(Spy)Tj -ET -570 713.98 0.99 -25.99 re -f -54.01 687.49 m -558.01 687.49 l -S -570 687.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 668.2 Tm -0.044 Tw -(This version of SPY library module works better with Common Lisp)Tj -ET -570 686.98 0.99 -22.99 re -f -BT -10 0 0 10 258 656.2 Tm -0 Tw -(and incorporates several new features:)Tj -ET -570 663.98 0.99 -11.99 re -f -BT -10 0 0 10 258 634.2 Tm -0.07 Tw -[()-849.9(Enters the pending mode when you bring up the SPY menu by)]TJ -ET -570 651.98 0.99 -21.99 re -f -BT -10 0 0 10 270 622.2 Tm -0.092 Tw -(pressing the left or middle button while the control key is down.)Tj -ET -570 629.98 0.99 -11.99 re -f -BT -10 0 0 10 270 610.2 Tm -0.251 Tw -(Any action invoked from the menu is deferred until you next)Tj -ET -570 617.98 0.99 -11.99 re -f -BT -10 0 0 10 270 598.2 Tm -0.135 Tw -[(press the left or middle mouse button. For example, you can)]TJ -ET -570 605.98 0.99 -11.99 re -f -BT -10 0 0 10 270 586.2 Tm -0 Tw -(delete several nodes and then do one update.)Tj -ET -570 593.98 0.99 -11.99 re -f -BT -10 0 0 10 258 563.2 Tm -[()-849.9(Keeps track of non-symbol frame names.)]TJ -ET -570 581.98 0.99 -20.99 re -f -BT -10 0 0 10 258 542.2 Tm -[()-849.9(Shows the package prefix of symbols in the display.)]TJ -ET -570 560.98 0.99 -20.99 re -f -BT -10 0 0 10 258 521.2 Tm -0.202 Tw -[()-849.9(Invokes "Merge" menu item from a node menu allowing for a)]TJ -ET -570 539.98 0.99 -22.99 re -f -BT -10 0 0 10 270 509.2 Tm -0 Tw -(node to merge with its caller.)Tj -ET -570 516.98 0.99 -11.99 re -f -BT -10 0 0 10 258 486.2 Tm -0.326 Tw -[()-849.9(Updates SPY.NOMERGEFNS to correspond more closely to)]TJ -ET -570 504.98 0.99 -22.99 re -f -BT -10 0 0 10 270 474.2 Tm -0 Tw -("system" functions in Medley. )Tj -ET -570 481.98 0.99 -11.99 re -f -BT -10 0 0 10 258 451.2 Tm -[()-849.9(Knows about the Medley interpreter.)]TJ -ET -570 469.98 0.99 -20.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 425.64 Tm -(TableBrowser)Tj -ET -570 448.98 0.99 -25.99 re -f -54.01 422.49 m -558.01 422.49 l -S -570 422.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 404.2 Tm -3.58 Tw -[()-849.9(New functions TB.UNSELECT.ITEM and)]TJ -ET -570 421.98 0.99 -21.99 re -f -BT -10 0 0 10 270 392.2 Tm -0.208 Tw -(TB.UNSELECT.ALL.ITEMS fill an inadvertant void in the Lyric)Tj -ET -570 399.98 0.99 -11.99 re -f -BT -10 0 0 10 270 380.2 Tm -0 Tw -(version.)Tj -ET -570 387.98 0.99 -11.99 re -f -BT -10 0 0 10 258 358.2 Tm -[()-849.9(Several off-by-ones in the display algorithms have been fixed.)]TJ -ET -570 375.98 0.99 -19.99 re -f -BT -10 0 0 10 258 338.2 Tm -[()-849.9(Performance on large browsers is improved.)]TJ -ET -570 355.98 0.99 -19.99 re -f -BT -10 0 0 10 258 318.2 Tm -0.002 Tw -[()-849.9(Clarification of TBAFTERCLOSEFN documentation is included in)]TJ -ET -570 335.98 0.99 -21.99 re -f -BT -10 0 0 10 270 306.2 Tm -0 Tw -(the Medley release. )Tj -ET -570 313.98 0.99 -11.99 re -f -BT -10 0 0 10 258 284.2 Tm -[()-849.9(New options to TB.MAKE.BROWSER:)]TJ -ET -570 301.98 0.99 -19.99 re -f -BT -10 0 0 10 270 264.2 Tm -0.181 Tw -[(-)-867(The option LINESPERITEM, previously documented but not)]TJ -ET -570 281.98 0.99 -21.99 re -f -BT -10 0 0 10 282 252.2 Tm -0.0001 Tc -0.0039 Tw -(implemented, is now supported. Alternatively, you can specify)Tj -ET -570 259.98 0.99 -11.99 re -f -BT -10 0 0 10 282 240.2 Tm -0 Tc -0.747 Tw -(explicitly the height of items by giving the options)Tj -ET -570 247.98 0.99 -11.99 re -f -BT -10 0 0 10 282 228.2 Tm -0.227 Tw -(ITEMHEIGHT \(total height of each item\) and/or BASELINE)Tj -ET -570 235.98 0.99 -11.99 re -f -BT -10 0 0 10 282 216.2 Tm -0.049 Tw -(\(the height of the "baseline" relative to the bottom of the item;)Tj -ET -570 223.98 0.99 -11.99 re -f -BT -10 0 0 10 282 204.2 Tm -0.011 Tw -[(zero if you dont set it\). The BASELINE is used for two things:)]TJ -ET -570 211.98 0.99 -11.99 re -f -BT -10 0 0 10 282 192.2 Tm -0.17 Tw -(\(1\) the )Tj -/TT6 1 Tf -3.508 0 TD -0 Tw -(ypos)Tj -/TT2 1 Tf -2.1123 0 TD -0.17 Tw -[( of the window is set there when the browsers)]TJ -ET -570 199.98 0.99 -11.99 re -f -BT -10 0 0 10 282 180.2 Tm -0.146 Tw -(print function is called, and \(2\) selection and deletion marks)Tj -ET -570 187.98 0.99 -11.99 re -f -BT -10 0 0 10 282 168.2 Tm -0.175 Tw -(are centered between the baseline and the top of the item.)Tj -ET -570 175.98 0.99 -11.99 re -f -BT -10 0 0 10 282 156.2 Tm -0.032 Tw -[(Specifying LINESPERITEM is a shorthand method for setting)]TJ -ET -570 163.98 0.99 -11.99 re -f -BT -10 0 0 10 282 144.2 Tm -0.885 Tw -(ITEMHEIGHT to fontheight*#lines and BASELINE to)Tj -ET -570 151.98 0.99 -11.99 re -f -BT -10 0 0 10 282 132.2 Tm -0.178 Tw -(fontheight*\(#lines-1\)+fontdescent \(i.e., fonts baseline for the)Tj -ET -570 139.98 0.99 -11.99 re -f -BT -10 0 0 10 282 120.2 Tm -0.198 Tw -(first line of the item\), so that the selection marker, deletion)Tj -ET -570 127.98 0.99 -11.99 re -f -BT -10 0 0 10 282 108.2 Tm -0.091 Tw -(lines, and positioning for printing all point at the first line of a)Tj -ET -570 115.98 0.99 -11.99 re -f -BT -10 0 0 10 282 96.2 Tm -0.075 Tw -[(multi-line item. One further difference: if you change the font)]TJ -ET -570 103.98 0.99 -11.99 re -f -BT -10 0 0 10 282 84.2 Tm -0.157 Tw -(of the browser, TableBrowser will recompute the height and)Tj -ET -570 91.98 0.99 -11.99 re -f -BT -10 0 0 10 282 72.2 Tm -0.06 Tw -(baseline parameters if you specified LINESPERITEM, but not)Tj -ET -570 79.98 0.99 -11.99 re -f -BT -10 0 0 10 282 60.2 Tm -0 Tw -(if you specified ITEMHEIGHT.)Tj -ET -570 67.98 0.99 -11.99 re -f -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -25 0 obj -<< -/Length 5163 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj -39.786 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 270 730.2 Tm -0.081 Tw -[(-)-867(You can specify an auxiliary window that is to be horizontally)]TJ -ET -570 747.98 0.99 -21.99 re -f -BT -10 0 0 10 282 718.2 Tm -0.031 Tw -(scrolled in parallel with the main window by giving the window)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 282 706.2 Tm -0.47 Tw -[(as the HEADINGWINDOW option. The WIDTH of the)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 282 694.2 Tm -0.095 Tw -(windows EXTENT property is maintained in synch with main)Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 282 682.2 Tm -0.076 Tw -[(window. You still need to create the auxiliary window, attach)]TJ -ET -570 689.98 0.99 -11.99 re -f -BT -10 0 0 10 282 670.2 Tm -0.045 Tw -[(it where you want it and supply it with a REPAINTFN. This is)]TJ -ET -570 677.98 0.99 -11.99 re -f -BT -10 0 0 10 282 658.2 Tm -0.354 Tw -(how FileBrowser implements its header line consisting of)Tj -ET -570 665.98 0.99 -11.99 re -f -BT -10 0 0 10 282 646.2 Tm -0 Tw -("Name" and the attribute names. )Tj -ET -570 653.98 0.99 -11.99 re -f -BT -10 0 0 10 270 624.2 Tm -0.354 Tw -[(-)-867(The option LINETHICKNESS specifies how thick to draw)]TJ -ET -570 641.98 0.99 -21.99 re -f -BT -10 0 0 10 282 612.2 Tm -0.46 Tw -[(deletion lines. It defaults to TB.DELETEDLINEHEIGHT,)]TJ -ET -570 619.98 0.99 -11.99 re -f -BT -10 0 0 10 282 600.2 Tm -0.058 Tw -[(initially 1. Making it the height of an item gives an alternative)]TJ -ET -570 607.98 0.99 -11.99 re -f -BT -10 0 0 10 282 588.2 Tm -0 Tw -("total blackout" method of deletion.)Tj -ET -570 595.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 560.64 Tm -(TCP-IP)Tj -ET -54.01 557.49 m -558.01 557.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 538.2 Tm -(Added revised/expanded installation procedure.)Tj -ET -258.01 526.49 m -558.01 526.49 l -S -BT -10 0 0 10 258 507.2 Tm -(DIR to VMS via TCP now works.)Tj -ET -570 525.98 0.99 -22.99 re -f -258.01 495.49 m -558.01 495.49 l -S -570 502.98 0.99 -7.99 re -f -BT -10 0 0 10 258 476.2 Tm -(TCP Chat hosts can now be lowercase.)Tj -ET -570 494.98 0.99 -22.99 re -f -258.01 464.49 m -558.01 464.49 l -S -570 471.98 0.99 -7.99 re -f -BT -10 0 0 10 258 445.2 Tm -(\(TCPFTP.SERVER\) now spawns process and runs in it .)Tj -ET -570 463.98 0.99 -22.99 re -f -258.01 433.49 m -558.01 433.49 l -S -570 440.98 0.99 -7.99 re -f -BT -10 0 0 10 258 414.2 Tm -(TCP-IP to a Sun returns the top-level directory. )Tj -ET -570 432.98 0.99 -22.99 re -f -258.01 398.49 m -558.01 398.49 l -S -570 409.98 0.99 -13.99 re -f -BT -10 0 0 10 258 377.2 Tm -0.287 Tw -(TCPFTP.DEFAULT.FILETYPES now contains correct entries for)Tj -ET -570 395.98 0.99 -22.99 re -f -BT -10 0 0 10 258 365.2 Tm -0 Tw -(LCOM, lcom, DFASL, and dfasl. )Tj -ET -570 372.98 0.99 -11.99 re -f -258.01 353.49 m -558.01 353.49 l -S -570 360.98 0.99 -7.99 re -f -BT -10 0 0 10 258 334.2 Tm -0.292 Tw -(Files loaded by the high-level modules TCPFTP, TCPFTPSRV,)Tj -ET -570 352.98 0.99 -22.99 re -f -BT -10 0 0 10 258 322.2 Tm -0.165 Tw -(TCPCHAT, and TCPTFTP automatically load their dependencies.)Tj -ET -570 329.98 0.99 -11.99 re -f -BT -10 0 0 10 258 310.2 Tm -0.133 Tw -[(If you load files by hand, you must also load their dependencies)]TJ -ET -570 317.98 0.99 -11.99 re -f -BT -10 0 0 10 258 298.2 Tm -0.525 Tw -[(first. See the section "File Dependencies," or the TCP-IP)]TJ -ET -570 305.98 0.99 -11.99 re -f -BT -10 0 0 10 258 286.2 Tm -0 Tw -(documentation for more information.)Tj -ET -570 293.98 0.99 -11.99 re -f -258.01 274.49 m -558.01 274.49 l -S -570 281.98 0.99 -7.99 re -f -BT -10 0 0 10 258 256.2 Tm -(There is a new flag:)Tj -ET -570 273.98 0.99 -19.99 re -f -BT -10 0 0 10 198 239.2 Tm -[(TCP.ALWAYS.READ.HOSTS.FILE)-16161.7([Variable])]TJ -ET -570 253.98 0.99 -18.99 re -f -BT -10 0 0 10 258 217.2 Tm -0.182 Tw -[(This flag is initially T. Setting it to NIL will cause the system to)]TJ -ET -570 234.98 0.99 -21.99 re -f -BT -10 0 0 10 258 205.2 Tm -0.365 Tw -(parse the hosts.txt file only when the filename \(stored in the)Tj -ET -570 212.98 0.99 -11.99 re -f -BT -10 0 0 10 258 193.2 Tm -0.11 Tw -(configuration file\) is different from the previously read filename, or)Tj -ET -570 200.98 0.99 -11.99 re -f -BT -10 0 0 10 258 181.2 Tm -0.042 Tw -[(the write date of the file has changed. The hosts.txt file will always)]TJ -ET -570 188.98 0.99 -11.99 re -f -BT -10 0 0 10 258 169.2 Tm -0.307 Tw -(be read at least once when loading the software into a clean)Tj -ET -570 176.98 0.99 -11.99 re -f -BT -10 0 0 10 258 157.2 Tm -0 Tw -(sysout.)Tj -ET -570 164.98 0.99 -11.99 re -f -258.01 145.49 m -558.01 145.49 l -S -570 152.98 0.99 -7.99 re -f -BT -10 0 0 10 258 130.2 Tm -0.073 Tw -(If you change your IP.INIT file while TCP-IP is running, you will be)Tj -ET -570 144.98 0.99 -18.99 re -f -BT -10 0 0 10 258 118.2 Tm -0.121 Tw -(prompted to confirm )Tj -/TT4 1 Tf -9.5334 0 TD -(Restarting TCP)Tj -/TT2 1 Tf -7.3441 0 TD -[(. In most cases, you should)]TJ -ET -570 125.98 0.99 -11.99 re -f -BT -10 0 0 10 258 106.2 Tm -0 Tw -(confirm the restart. )Tj -ET -570 113.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 78.64 Tm -(TExec)Tj -ET -54.01 75.49 m -558.01 75.49 l -S -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -28 0 obj -<< -/Length 4656 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 251.23 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj --19.723 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.211 Tw -(A TEXEC executive window no longer has GET in the menu of)Tj -ET -570 748.98 0.99 -22.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.346 Tw -(possible actions, since GETting text into an executive window)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(makes no sense.)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 678.64 Tm -(TextModules )Tj -ET -54.01 675.49 m -558.01 675.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 656.2 Tm -0.11 Tw -[(TextModules is a new library module with the Medley release. It)]TJ -ET -570 674.98 0.99 -22.99 re -f -BT -10 0 0 10 258 644.2 Tm -0.016 Tw -[(can be used to import and export textfiles and File Manager files. It)]TJ -ET -570 651.98 0.99 -11.99 re -f -BT -10 0 0 10 258 632.2 Tm -0.182 Tw -[(can bring portable Common Lisp sources into the File Manager)]TJ -ET -570 639.98 0.99 -11.99 re -f -BT -10 0 0 10 258 620.2 Tm -0.029 Tw -[(without losing any of their contents, and create new textfiles based)]TJ -ET -570 627.98 0.99 -11.99 re -f -BT -10 0 0 10 258 608.2 Tm -0 Tw -(on the File Managers description of the textfile contents.)Tj -ET -570 615.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 580.64 Tm -(Virtual Keyboards)Tj -ET -570 603.98 0.99 -25.99 re -f -54.01 577.49 m -558.01 577.49 l -S -570 577.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 558.2 Tm -0.049 Tw -(The Standard-Russian virtual keyboard now has uppercase Be \( . .)Tj -ET -570 576.98 0.99 -22.99 re -f -BT -10 0 0 10 258 546.2 Tm -0 Tw -(. \) and Ve \( . . . \) in the right places. )Tj -ET -570 553.98 0.99 -11.99 re -f -258.01 534.49 m -558.01 534.49 l -S -570 541.98 0.99 -7.99 re -f -BT -10 0 0 10 258 515.2 Tm -0.193 Tw -(Loading VirtualKeyboards now adds the item KEYBOARD to the)Tj -ET -570 533.98 0.99 -22.99 re -f -BT -10 0 0 10 258 503.2 Tm -0.104 Tw -[(default window menu as well as the background menu. Selecting)]TJ -ET -570 510.98 0.99 -11.99 re -f -BT -10 0 0 10 258 491.2 Tm -0.216 Tw -(this item from the default window menu allows you to specify a)Tj -ET -570 498.98 0.99 -11.99 re -f -BT -10 0 0 10 258 479.2 Tm -0 Tw -(keyboard for an individual window. )Tj -ET -570 486.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 451.64 Tm -(Where-Is)Tj -ET -570 474.98 0.99 -25.99 re -f -54.01 448.49 m -558.01 448.49 l -S -570 448.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 429.2 Tm -0.135 Tw -(Where-Is is a new library module, upgraded from LispUsers. This)Tj -ET -570 447.98 0.99 -22.99 re -f -BT -10 0 0 10 258 417.2 Tm -0.08 Tw -[(modules replaces the Lyric library module WhereIs. This is a new)]TJ -ET -570 424.98 0.99 -11.99 re -f -BT -10 0 0 10 258 405.2 Tm -0.177 Tw -(implementation of a facility similar to but not compatible with the)Tj -ET -570 412.98 0.99 -11.99 re -f -BT -10 0 0 10 258 393.2 Tm -0.184 Tw -[(Lyric library module WhereIs. Where-Is indexes all definers, but)]TJ -ET -570 400.98 0.99 -11.99 re -f -BT -10 0 0 10 258 381.2 Tm -0 Tw -(WhereIs only indexed Interlisp FNS definitions.)Tj -ET -570 388.98 0.99 -11.99 re -f -2 w -54.01 325.99 m -558.01 325.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 312.08 Tm -(Additional Notes)Tj -ET -1 w -54.01 308.49 m -558.01 308.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 289.2 Tm -0.204 Tw -[(DEdit is not error-protected. Doing a ^in a DEdit break window)]TJ -0 -1.2 TD -0 Tw -(closes the DEdit window, too. )Tj -0 -1.9 TD -0.005 Tw -(In addition, the modules work under all Lisp environments \(Interlisp-)Tj -0 -1.2 TD -0.093 Tw -[(D, Xerox Common Lisp, Common Lisp\). However, many of the)]TJ -T* -0.357 Tw -(functions and variables used within the modules are those of)Tj -T* -0.11 Tw -(Interlisp-D, and therefore youll have to make sure that, when you)Tj -T* -0 Tw -(are not in Interlisp, you use the IL: prefix. )Tj -ET -2 w -54.01 154.99 m -558.01 154.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 141.08 Tm -(Koto CML Library Module)Tj -ET -1 w -54.01 137.49 m -558.01 137.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 118.2 Tm -0.175 Tw -(If you have files that used the Koto CML library module, with its)Tj -ET -570 136.98 0.99 -22.99 re -f -BT -10 0 0 10 258 106.2 Tm -0.026 Tw -(package-style symbol naming conventions, you will need to convert)Tj -ET -570 113.98 0.99 -11.99 re -f -BT -10 0 0 10 258 94.2 Tm -0.022 Tw -[(them to use the correct symbols in Lyric /Medley. The procedure is)]TJ -ET -570 101.98 0.99 -11.99 re -f -BT -10 0 0 10 258 82.2 Tm -0.263 Tw -(briefly as follows: see the)Tj -/TT6 1 Tf -12.2239 0 TD -[( Common Lisp Implementation Notes)]TJ -/TT2 1 Tf -17.5037 0 TD -0 Tw -(,)Tj -ET -570 89.98 0.99 -11.99 re -f -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -31 0 obj -<< -/Length 1003 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj -39.786 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.153 Tw -(chapter 11, "Reader compatibility feature" for complete details on)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(this mechanism:)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 699.2 Tm -0.121 Tw -(First, set the global variable LITATOM-PACKAGE-CONVERSION-)Tj -0 -1.2 TD -0 Tw -(ENABLED to T. Then for each of your files, do)Tj -4.8 -1.9 TD -(\(LOAD )Tj -/TT6 1 Tf -3.334 0 TD -(file)Tj -/TT2 1 Tf -1.2783 0 TD -( PROP\))Tj --4.6123 -1.9 TD -(\(MAKEFILE )Tj -/TT6 1 Tf -5.5566 0 TD -(file)Tj -/TT2 1 Tf -1.2783 0 TD -( NEW\))Tj --11.635 -1.9 TD -0.047 Tw -(Afterwards be sure to set the global variable LITATOM-PACKAGE-)Tj -0 -1.2 TD -0 Tw -(CONVERSION-ENABLED back to NIL.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -34 0 obj -<< -/Length 361 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 251.23 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, LIBRARY MODULES)Tj --19.723 74.479 TD -(5. LIBRARY MODULES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -36 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -37 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -38 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [278 0 355 556 0 0 0 0 333 333 389 584 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 584 0 584 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 278 0 278 469 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 500 334 0 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 36 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0 -556 0 556 556 556 556 0 0 556 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 37 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 722 667 0 0 0 278 0 0 556 833 722 778 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 556 556 0 556 556 278 0 0 222 0 0 222 833 556 556 -556 0 333 500 278 556 0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 38 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -39 0 obj -<< -/S /D ->> -endobj -40 0 obj -<< -/Nums [0 39 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R 15 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R 33 0 R] -/Count 10 -/MediaBox [0 0 612 792] ->> -endobj -41 0 obj -<< -/CreationDate (D:20210119174408-06'00') -/ModDate (D:20210119174408-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -42 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 40 0 R ->> -endobj -xref -0 43 -0000000000 65535 f -0000041226 00000 n -0000000016 00000 n -0000002582 00000 n -0000039792 00000 n -0000040357 00000 n -0000040819 00000 n -0000039046 00000 n -0000042120 00000 n -0000041306 00000 n -0000002699 00000 n -0000006769 00000 n -0000041388 00000 n -0000006887 00000 n -0000011033 00000 n -0000041471 00000 n -0000011140 00000 n -0000015972 00000 n -0000041554 00000 n -0000016079 00000 n -0000021135 00000 n -0000041637 00000 n -0000021242 00000 n -0000027106 00000 n -0000041720 00000 n -0000027224 00000 n -0000032440 00000 n -0000041803 00000 n -0000032547 00000 n -0000037256 00000 n -0000041886 00000 n -0000037374 00000 n -0000038430 00000 n -0000041969 00000 n -0000038537 00000 n -0000038950 00000 n -0000039186 00000 n -0000039381 00000 n -0000039587 00000 n -0000042052 00000 n -0000042080 00000 n -0000042264 00000 n -0000042396 00000 n -trailer -<< -/Size 43 -/Root 42 0 R -/Info 41 0 R -/ID [] ->> -startxref -42465 -%%EOF diff --git a/docs/ReleaseNote/SEC6-USERS-GUIDES.pdf b/docs/ReleaseNote/SEC6-USERS-GUIDES.pdf deleted file mode 100644 index 19470335..00000000 --- a/docs/ReleaseNote/SEC6-USERS-GUIDES.pdf +++ /dev/null @@ -1,6295 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5363 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -/TT4 1 Tf -18 0 0 18 258 762.97 Tm -[(6.)-7996.6(USERS GUIDES)]TJ -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -2 w -54.01 701.99 m -558.01 701.99 l -S -BT -14 0 0 14 54 690.08 Tm -(A Users Guide to TEditRelease Notes)Tj -ET -1 w -54.01 686.49 m -558.01 686.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 667.2 Tm -0.3939 Tw -(For the Medley Release, TEdit has increased the number of)Tj -ET -570 685.98 0.99 -22.99 re -f -BT -10 0 0 10 258 655.2 Tm -0.011 Tw -(expanded characters, added options to the )Tj -/TT4 1 Tf -19.3018 0 TD -0 Tw -(Put)Tj -/TT2 1 Tf -1.6108 0 TD -0.011 Tw -[( and )]TJ -/TT4 1 Tf -2.2461 0 TD -0 Tw -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.011 Tw -[( submenus,)]TJ -ET -570 662.98 0.99 -11.99 re -f -BT -10 0 0 10 258 643.2 Tm -0.122 Tw -(clarified several options in the Paragraph Looks and Page Layout)Tj -ET -570 650.98 0.99 -11.99 re -f -BT -10 0 0 10 258 631.2 Tm -0.443 Tw -(menus, and added several minor items to the programmers)Tj -ET -570 638.98 0.99 -11.99 re -f -BT -10 0 0 10 258 619.2 Tm -0 Tw -(interface. )Tj -ET -570 626.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 595.64 Tm -(Expanded Characters)Tj -ET -570 614.98 0.99 -21.99 re -f -54.01 592.49 m -558.01 592.49 l -S -570 592.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 573.2 Tm -0.311 Tw -(TEdit added the following abbreviations and expansions to the)Tj -ET -570 591.98 0.99 -22.99 re -f -BT -10 0 0 10 258 561.2 Tm -0 Tw -(characters shown in Table 1.)Tj -ET -570 568.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 542.2 Tm -(Table 1. TEdits Abbreviations and their Expanded Characters )Tj -ET -570 556.98 0.99 -30.99 re -f -BT -/TT2 1 Tf -10 0 0 10 222 511.2 Tm -[(Abbreviation)-3440.9(Expanded character name)-3533.5(Expansion Character)]TJ -ET -570 525.98 0.99 -18.99 re -f -222.01 506.49 m -558.01 506.49 l -S -570 506.98 0.99 -0.99 re -f -BT -10 0 0 10 255.22 491.2 Tm -16.8995 Tw -[(p)-5121.8(Pilcrow )]TJ -ET -570 505.98 0.99 -16.99 re -f -BT -10 0 0 10 312 481.2 Tm -0 Tw -(\(proofreaders paragraph mark\))Tj -ET -570 488.98 0.99 -9.99 re -f -BT -10 0 0 10 256.61 464.2 Tm -[(t)-5261.2(Trademark)]TJ -/TT7 1 Tf -25.939 0 TD -<00bb>Tj -ET -570 478.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 252.45 447.2 Tm -[(tm)-4844.2(Trademark)]TJ -/TT7 1 Tf -26.355 0 TD -<00bb>Tj -ET -570 461.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 256.34 430.2 Tm -[(r)-5233(Registered trademark)]TJ -/TT7 1 Tf -25.966 0 TD -<00ba>Tj -ET -570 444.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 249.66 413.2 Tm -[( 1/3)-4566(Built-up fraction)]TJ -6.5 0 0 6 515.9999 415.96 Tm -(1)Tj -/TT8 1 Tf -10 0 0 10 519.6149 413.2 Tm -()Tj -/TT2 1 Tf -6.5 0 0 6 521.2849 413.2 Tm -(3)Tj -ET -570 427.98 0.99 -16.99 re -f -BT -10 0 0 10 255.5 396.2 Tm -[(x)-5150(Times sign)]TJ -/TT9 1 Tf -26.05 0 TD -()Tj -ET -570 410.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 256.61 379.2 Tm -[(/)-5261.2(Division sign)]TJ -/TT9 1 Tf -25.939 0 TD -()Tj -ET -570 393.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 244.94 362.2 Tm -[(o \(oh\))-4093.7(Degrees sign)]TJ -/TT9 1 Tf -27.106 0 TD -()Tj -ET -570 376.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 255.22 345.2 Tm -[(L)-5121.8(Pound sterling sign)-11894.6()]TJ -ET -570 359.98 0.99 -16.99 re -f -BT -10 0 0 10 254.67 328.2 Tm -[(Y)-5066(Yen sign)-16508.4()]TJ -ET -570 342.98 0.99 -16.99 re -f -BT -10 0 0 10 255.08 311.2 Tm -[(+)-5108(Plus-or-minus sign)]TJ -/TT9 1 Tf -26.092 0 TD -()Tj -ET -570 325.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 238.71 294.2 Tm -[(^\(shift-6\))-3470.6(Up arrow \(NS character\))]TJ -/TT7 1 Tf -27.729 0 TD -<0042>Tj -ET -570 308.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 252.44 277.2 Tm -[(ua)-4843.7(Up arrow \(NS character\))]TJ -/TT7 1 Tf -26.356 0 TD -<0042>Tj -ET -570 291.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 256.7 260.2 Tm -[(|)-5270.2(Down arrow \(NS character\))]TJ -/TT7 1 Tf -25.93 0 TD -<003f>Tj -ET -570 274.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 252.44 243.2 Tm -[(da)-4843.7(Down arrow \(NS character\))]TJ -/TT7 1 Tf -26.356 0 TD -<003f>Tj -ET -570 257.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 253.42 226.2 Tm -[(<-)-4941(Left arrow \(NS character\))]TJ -/TT7 1 Tf -26.258 0 TD -<0040>Tj -ET -570 240.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 254.11 209.2 Tm -[(la)-5010.7(Left arrow \(NS character\))]TJ -/TT7 1 Tf -26.189 0 TD -<0040>Tj -ET -570 223.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 225.49 192.2 Tm -[(_ \(underscore\))-2148.1(Left arrow \(NS character\))]TJ -/TT7 1 Tf -29.051 0 TD -<0040>Tj -ET -570 206.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 253.42 175.2 Tm -[(->)-4941(Right arrow \(NS character\))]TJ -/TT7 1 Tf -26.258 0 TD -<0041>Tj -ET -570 189.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 253.56 158.2 Tm -[(ra)-4954.8(Right arrow \(NS character\))]TJ -/TT7 1 Tf -26.244 0 TD -<0041>Tj -ET -570 172.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 255.08 141.2 Tm -[(=)-5108(Two-way arrows \(NS characters\))]TJ -/TT7 1 Tf -26.092 0 TD -<008b>Tj -ET -570 155.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 115.64 Tm -(Put Submenu)Tj -ET -570 138.98 0.99 -25.99 re -f -54.01 112.49 m -558.01 112.49 l -S -570 112.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 93.2 Tm -0.462 Tw -(The drag-through menu for the )Tj -/TT4 1 Tf -16.207 0 TD -0 Tw -(Put)Tj -/TT2 1 Tf -1.6108 0 TD -0.462 Tw -[( command now has the)]TJ -ET -570 111.98 0.99 -22.99 re -f -BT -10 0 0 10 258 81.2 Tm -0 Tw -(following entries:)Tj -ET -570 88.98 0.99 -11.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT7 7 0 R -/TT8 8 0 R -/TT9 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 4449 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -q -196.5 0 0 -96 309.76 737.99 cm -/Im1 Do -Q -570 744.98 0.99 -104.99 re -f -BT -10 0 0 10 258 625.2 Tm -(The )Tj -/TT4 1 Tf -2.1 0 TD -(Put)Tj -/TT2 1 Tf -1.6108 0 TD -0.099 Tw -[( command has a submenu that offers you several options)]TJ -ET -570 639.98 0.99 -18.99 re -f -BT -10 0 0 10 258 613.2 Tm -0 Tw -(for saving your file:)Tj -ET -570 620.98 0.99 -11.99 re -f -BT -10 0 0 10 258 594.2 Tm -0.429 Tw -[()-849.9(Keep the formatting in the file. Use this )]TJ -/TT4 1 Tf -22.7924 0 TD -(Put Formatted)Tj -ET -570 608.98 0.99 -18.99 re -f -BT -10 0 0 10 270 582.2 Tm -0 Tw -(Document)Tj -/TT2 1 Tf -4.8892 0 TD -0.075 Tw -[( option, which is the default, unless you have special)]TJ -ET -570 589.98 0.99 -11.99 re -f -BT -10 0 0 10 270 570.2 Tm -0 Tw -(requirements.)Tj -ET -570 577.98 0.99 -11.99 re -f -BT -10 0 0 10 258 551.2 Tm -0.127 Tw -[()-849.9(Save the file as plain text, regardless of formatting. Using this)]TJ -ET -570 565.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 270 539.2 Tm -0 Tw -(Plain-Text)Tj -/TT2 1 Tf -4.7788 0 TD -0.075 Tw -[( option removes all of TEdits formatting from the file,)]TJ -ET -570 546.98 0.99 -11.99 re -f -BT -10 0 0 10 270 527.2 Tm -0 Tw -(leaving plain text. )Tj -ET -570 534.98 0.99 -11.99 re -f -BT -10 0 0 10 258 508.2 Tm -0.258 Tw -[()-849.9(Save TEdit files in an "old" format. This )]TJ -/TT4 1 Tf -21.3501 0 TD -0 Tw -(Old-Format)Tj -/TT2 1 Tf -5.3887 0 TD -0.258 Tw -[( option)]TJ -ET -570 522.98 0.99 -18.99 re -f -BT -10 0 0 10 270 496.2 Tm -0.024 Tw -(allows you save files in the format of a previous release of TEdit.)Tj -ET -570 503.98 0.99 -11.99 re -f -BT -10 0 0 10 270 484.2 Tm -0 Tw -(This format option is provided for backward compatibility. )Tj -ET -570 491.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 456.64 Tm -(Get Submenu)Tj -ET -570 479.98 0.99 -25.99 re -f -54.01 453.49 m -558.01 453.49 l -S -570 453.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 434.2 Tm -0.455 Tw -(The drag-through menu for the )Tj -/TT4 1 Tf -16.172 0 TD -0 Tw -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.455 Tw -[( command now has the)]TJ -ET -570 452.98 0.99 -22.99 re -f -BT -10 0 0 10 258 422.2 Tm -0 Tw -(following entries:)Tj -ET -570 429.98 0.99 -11.99 re -f -q -197.25 0 0 -79.5 309.38 410.99 cm -/Im2 Do -Q -570 417.98 0.99 -88.49 re -f -BT -/TT4 1 Tf -10 0 0 10 258 316.7 Tm -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.327 Tw -[( has a submenu that offers you the option of retrieving a)]TJ -ET -570 329.48 0.99 -16.99 re -f -BT -10 0 0 10 258 304.7 Tm -0.191 Tw -(formatted file \()Tj -/TT4 1 Tf -6.7731 0 TD -(Get Formatted Document)Tj -/TT2 1 Tf -12.383 0 TD -(\), or retrieving a file as)Tj -ET -570 312.48 0.99 -11.99 re -f -BT -10 0 0 10 258 292.7 Tm -0.589 Tw -(though it were plain text, with most formatting information)Tj -ET -570 300.48 0.99 -11.99 re -f -BT -10 0 0 10 258 280.69 Tm -0 Tw -(appearing as black rectangles \()Tj -/TT11 1 Tf -12 0 0 12 396.9697 280.69 Tm -( )Tj -/TT2 1 Tf -10 0 0 10 418.5732 280.69 Tm -(\).)Tj -ET -570 288.48 0.99 -13.99 re -f -2 w -54.01 223.49 m -558.01 223.49 l -S -570 274.48 0.99 -51.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 211.58 Tm -(Clarified Paragraph Looks Menu Options )Tj -ET -570 222.48 0.99 -13.99 re -f -1 w -54.01 207.99 m -558.01 207.99 l -S -570 208.48 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 188.7 Tm -0.832 Tw -(Both the menu options )Tj -/TT4 1 Tf -13.6127 0 TD -(New Page: Before After)Tj -/TT2 1 Tf -13.6098 0 TD -[( and)]TJ -ET -570 207.48 0.99 -22.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 176.7 Tm -0 Tw -(Displaymode: Hardcopy)Tj -/TT2 1 Tf -11.4473 0 TD -( have expanded explanations.)Tj -ET -570 184.48 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 153.14 Tm -(New Page: Before After)Tj -ET -570 172.48 0.99 -21.99 re -f -54.01 149.99 m -558.01 149.99 l -S -570 150.48 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 130.7 Tm -0.16 Tw -(Sometimes a page break occurs so that the first paragraph on a)Tj -ET -570 149.48 0.99 -22.99 re -f -BT -10 0 0 10 258 118.7 Tm -0.017 Tw -(page is marked with the )Tj -/TT4 1 Tf -10.9239 0 TD -0 Tw -(Before)Tj -/TT2 1 Tf -3.1675 0 TD -0.017 Tw -[( command. In these cases, the text)]TJ -ET -570 126.48 0.99 -11.99 re -f -BT -10 0 0 10 258 106.7 Tm -0.215 Tw -(flows continuously from the previous page to this page; a blank)Tj -ET -570 114.48 0.99 -11.99 re -f -BT -10 0 0 10 258 94.7 Tm -0 Tw -(page does not appear between them.)Tj -ET -570 102.48 0.99 -11.99 re -f -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT11 15 0 R ->> -/XObject << -/Im1 16 0 R -/Im2 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -19 0 obj -<< -/Length 4064 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Displaymode: Hardcopy)Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.214 Tw -(The Hardcopy displaymode command now works only when the)Tj -ET -570 724.98 0.99 -22.99 re -f -BT -10 0 0 10 258 694.2 Tm -0 Tw -(text is printed in Interpress fonts.)Tj -ET -570 701.98 0.99 -11.99 re -f -2 w -54.01 638.99 m -558.01 638.99 l -S -570 689.98 0.99 -51.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 627.08 Tm -(Clarified Page Layout Menu Options )Tj -ET -570 637.98 0.99 -13.99 re -f -1 w -54.01 623.49 m -558.01 623.49 l -S -570 623.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 604.2 Tm -0.087 Tw -(When specifying text to appear before or after page numbers, you)Tj -ET -570 622.98 0.99 -22.99 re -f -BT -10 0 0 10 258 592.2 Tm -0 Tw -(can only enter text in the brackets; image objects are not allowed.)Tj -ET -570 599.98 0.99 -11.99 re -f -258.01 580.49 m -558.01 580.49 l -S -BT -10 0 0 10 258 561.2 Tm -(You may now specify a landscape page layout.)Tj -ET -258.01 549.49 m -558.01 549.49 l -S -BT -10 0 0 10 258 534.2 Tm -0.068 Tw -(In the page layout menu, Modern 10 MRR is now the default page)Tj -0 -1.2 TD -0.082 Tw -[(number font instead of Gacha 10. Also, there is a global variable,)]TJ -T* -0.467 Tw -(TEDIT.DEFAULT.FOLIO.LOOKS, that you can set to be any)Tj -T* -0.285 Tw -[(character-looks specification acceptable to TEDIT.LOOKS. The)]TJ -T* -0.17 Tw -(default \(i.e., if you dont specify one in the page layout menu\) is)Tj -T* -0 Tw -(taken from there. )Tj -0 -1.9 TD -0.187 Tw -(If you have set page formatting in the past, the page-numbering)Tj -0 -1.2 TD -0.226 Tw -[(font has been set as well \(even if you specified nothing\). This)]TJ -T* -0.171 Tw -(behavior continues, but the default is more sensible, and can be)Tj -T* -0 Tw -(changed.)Tj -ET -258.01 407.49 m -558.01 407.49 l -S -BT -10 0 0 10 258 392.2 Tm -(You may now number the first page of a TEdit file 0 \(zero\).)Tj -ET -258.01 382.49 m -558.01 382.49 l -S -BT -10 0 0 10 258 367.2 Tm -0.029 Tw -(TEdit now preserves text before and after page numbers after a file)Tj -T* -0 Tw -(is saved.)Tj -ET -258.01 343.49 m -558.01 343.49 l -S -BT -10 0 0 10 258 328.2 Tm -0.404 Tw -(Using numbers with decimal points in the "Text before page)Tj -T* -0 Tw -(number" field in the page-layout menu now works properly.)Tj -ET -2 w -54.01 260.99 m -558.01 260.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 249.08 Tm -(Added Items to Programmers Interface )Tj -ET -570 259.98 0.99 -13.99 re -f -1 w -54.01 245.49 m -558.01 245.49 l -S -570 245.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 226.2 Tm -1.11 Tw -(The TEXTOBJ data structure has a correction, the)Tj -ET -570 244.98 0.99 -22.99 re -f -BT -10 0 0 10 258 214.2 Tm -0.164 Tw -(TEDIT.INCLUDE, TEDIT.PARALOOKS and TEXTPROP functions)Tj -ET -570 221.98 0.99 -11.99 re -f -BT -10 0 0 10 258 202.2 Tm -0.189 Tw -(are expanded, and the global variable TEDIT.KNOWN.FONTS is)Tj -ET -570 209.98 0.99 -11.99 re -f -BT -10 0 0 10 258 190.2 Tm -0 Tw -(now documented.)Tj -ET -570 197.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 162.64 Tm -(Corrected the AFTERQUITFN Property )Tj -ET -570 185.98 0.99 -25.99 re -f -54.01 159.49 m -558.01 159.49 l -S -570 159.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 140.2 Tm -(\(AFTERQUITFN)Tj -/TT6 1 Tf -7.3325 0 TD -0.238 Tw -[( WINDOW TEXTSTREAM)]TJ -/TT2 1 Tf -12.142 0 TD -[(\) is an optional user-)]TJ -ET -570 158.98 0.99 -22.99 re -f -BT -10 0 0 10 258 128.2 Tm -0.039 Tw -[(supplied Lisp function that is called after ending an editing session)]TJ -ET -570 135.98 0.99 -11.99 re -f -BT -10 0 0 10 258 116.2 Tm -0.166 Tw -[(to peform any required cleanup. The )]TJ -/TT6 1 Tf -18.2821 0 TD -0 Tw -(WINDOW)Tj -/TT2 1 Tf -4.3877 0 TD -0.166 Tw -[( argument was)]TJ -ET -570 123.98 0.99 -11.99 re -f -BT -10 0 0 10 258 104.2 Tm -0 Tw -(omitted in the manual. )Tj -ET -570 111.98 0.99 -11.99 re -f -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -22 0 obj -<< -/Length 5392 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Corrected the TITLEMENUFN Property )Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.055 Tw -[(TEDIT.TITLEMENUFN is a window property, not a TEdit property)]TJ -ET -570 724.98 0.99 -22.99 re -f -BT -10 0 0 10 258 694.2 Tm -0 Tw -(as documented in the manual. )Tj -ET -570 701.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 666.64 Tm -(Corrected the TEXTOBJ Data Structure )Tj -ET -570 689.98 0.99 -25.99 re -f -54.01 663.49 m -558.01 663.49 l -S -570 663.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 644.2 Tm -0.095 Tw -(The data structure called TEXTOBJ has as its first field of interest)Tj -ET -570 662.98 0.99 -22.99 re -f -BT -10 0 0 10 258 632.2 Tm -0 Tw -(\\WINDOW, not WINDOW as documented in the manual. )Tj -ET -570 639.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 604.64 Tm -(Expanded the TEDIT.INCLUDE Function)Tj -ET -570 627.98 0.99 -25.99 re -f -54.01 601.49 m -558.01 601.49 l -S -570 601.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 582.2 Tm -0.823 Tw -(TEDIT.INCLUDE now accepts optional START and END)Tj -ET -570 600.98 0.99 -22.99 re -f -BT -10 0 0 10 258 570.2 Tm -0.101 Tw -(arguments that instruct it to restrict its attention to a portion of the)Tj -ET -570 577.98 0.99 -11.99 re -f -BT -10 0 0 10 258 558.2 Tm -0.033 Tw -[(TEdit file, treating this part as a separate file. This feature is useful)]TJ -ET -570 565.98 0.99 -11.99 re -f -BT -10 0 0 10 258 546.2 Tm -0.339 Tw -(when you require that several distinct TEdit documents reside)Tj -ET -570 553.98 0.99 -11.99 re -f -BT -10 0 0 10 258 534.2 Tm -0.202 Tw -(within a single TEdit file, for example, for database applications.)Tj -ET -570 541.98 0.99 -11.99 re -f -BT -10 0 0 10 258 522.2 Tm -0 Tw -(Each document can be formatted and extracted separately. )Tj -ET -570 529.98 0.99 -30.99 re -f -258.01 491.49 m -558.01 491.49 l -S -570 498.98 0.99 -9.99 re -f -BT -/TT4 1 Tf -10 0 0 10 385.22 474.2 Tm -(CAUTION)Tj -ET -570 488.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 455.2 Tm -0.16 Tw -(If you use START and END arguments with INCLUDE, and then)Tj -ET -570 469.98 0.99 -18.99 re -f -BT -10 0 0 10 258 443.2 Tm -0 Tw -(format the entire TEdit file, you will lose the formatting. )Tj -ET -570 450.98 0.99 -11.99 re -f -258.01 431.49 m -558.01 431.49 l -S -570 438.98 0.99 -28.99 re -f -BT -/TT4 1 Tf -10 0 0 10 385.22 395.2 Tm -(CAUTION)Tj -ET -570 409.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 376.2 Tm -1.179 Tw -(TEDIT.INCLUDE and OPENTEXTSTREAM take optional)Tj -ET -570 390.98 0.99 -18.99 re -f -BT -10 0 0 10 258 364.2 Tm -0.05 Tw -[(arguments that let you take a document out of the middle of a file.)]TJ -ET -570 371.98 0.99 -11.99 re -f -BT -10 0 0 10 258 352.2 Tm -0.003 Tw -(This option requires that Lisp be able to determine the length of the)Tj -ET -570 359.98 0.99 -11.99 re -f -BT -10 0 0 10 258 340.2 Tm -0.106 Tw -[(file before it is read. Some file protocols \(TCP FTP in particular\))]TJ -ET -570 347.98 0.99 -11.99 re -f -BT -10 0 0 10 258 328.2 Tm -0.141 Tw -[(dont let Lisp do this. If you try to use this option with a file that)]TJ -ET -570 335.98 0.99 -11.99 re -f -BT -10 0 0 10 258 316.2 Tm -0.11 Tw -(resides at the other end of a TCP connection \(or, more generally,)Tj -ET -570 323.98 0.99 -11.99 re -f -BT -10 0 0 10 258 304.2 Tm -0.084 Tw -(on any device where you cannot tell the length of the file until you)Tj -ET -570 311.98 0.99 -11.99 re -f -BT -10 0 0 10 258 292.2 Tm -0.147 Tw -[(have read the whole file\), it wont work. The result will be that)]TJ -ET -570 299.98 0.99 -11.99 re -f -BT -10 0 0 10 258 280.2 Tm -0 Tw -(your document will contain no characters. )Tj -ET -570 287.98 0.99 -11.99 re -f -258.01 268.49 m -558.01 268.49 l -S -570 275.98 0.99 -28.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 223.64 Tm -(Expanded the TEDIT.PARALOOKS Function)Tj -ET -570 246.98 0.99 -25.99 re -f -54.01 220.49 m -558.01 220.49 l -S -570 220.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 205.2 Tm -0.406 Tw -(TEDIT.PARALOOKS can be used to set NEWPAGEBEFORE,)Tj -ET -570 219.98 0.99 -18.99 re -f -BT -10 0 0 10 258 193.2 Tm -0.042 Tw -[(NEWPAGEAFTER, HARDCOPY, TYPE, SUBTYPE, REVISED,)]TJ -ET -570 200.98 0.99 -11.99 re -f -BT -10 0 0 10 258 181.2 Tm -0 Tw -(KEEP, STYLE, CHARSTYLES, and USERINFO parameters. )Tj -ET -570 188.98 0.99 -11.99 re -f -BT -10 0 0 10 258 162.2 Tm -0.075 Tw -(REVISED, if non-NIL, causes a revision bar to be printed one pica)Tj -ET -570 176.98 0.99 -18.99 re -f -BT -10 0 0 10 258 150.2 Tm -0.006 Tw -[(to the right of the right margin of the paragraph. It is a vertical bar 1)]TJ -ET -570 157.98 0.99 -11.99 re -f -BT -10 0 0 10 258 138.2 Tm -0.054 Tw -(point wide from the top of the top lines ascent to the bottom of the)Tj -ET -570 145.98 0.99 -11.99 re -f -BT -10 0 0 10 258 126.2 Tm -0 Tw -(bottom lines descent.)Tj -ET -570 133.98 0.99 -11.99 re -f -BT -10 0 0 10 258 107.2 Tm -0.049 Tw -(USERINFO can be used as a property list for saving information of)Tj -ET -570 121.98 0.99 -18.99 re -f -BT -10 0 0 10 258 95.2 Tm -0.49 Tw -[(interest to the user. It is generally used in a number of)]TJ -ET -570 102.98 0.99 -11.99 re -f -BT -10 0 0 10 258 83.2 Tm -0 Tw -(undocumented features \(e.g. footnote support\). )Tj -ET -570 90.98 0.99 -11.99 re -f -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -25 0 obj -<< -/Length 5275 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.288 Tw -[(KEEP, STYLE, and CHARSTYLES are reserved for a future)]TJ -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(release. )Tj -ET -570 725.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 690.64 Tm -(Expanded the TEXTPROP Function)Tj -ET -570 713.98 0.99 -25.99 re -f -54.01 687.49 m -558.01 687.49 l -S -570 687.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 668.2 Tm -0.004 Tw -(You can now also use your own properties, but these properties are)Tj -ET -570 686.98 0.99 -22.99 re -f -BT -10 0 0 10 258 656.2 Tm -0 Tw -(not saved with the document if you )Tj -/TT4 1 Tf -15.6758 0 TD -(Put)Tj -/TT2 1 Tf -1.6108 0 TD -( it. )Tj -ET -570 663.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 628.64 Tm -(Added Documentation for a Global Variable)Tj -ET -570 651.98 0.99 -25.99 re -f -54.01 625.49 m -558.01 625.49 l -S -570 625.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 606.2 Tm -0.248 Tw -(The following documentation should be added to TEdits Global)Tj -ET -570 624.98 0.99 -22.99 re -f -BT -10 0 0 10 258 594.2 Tm -0 Tw -(Variables.)Tj -ET -570 601.98 0.99 -11.99 re -f -BT -10 0 0 10 126 575.2 Tm -[(TEDIT.KNOWN.FONTS)-28310([Variable])]TJ -ET -570 589.98 0.99 -16.99 re -f -BT -10 0 0 10 258 558.2 Tm -0.12 Tw -(A list of available fonts that appear in the Character Looks menu.)Tj -ET -570 572.98 0.99 -18.99 re -f -BT -10 0 0 10 258 546.2 Tm -0.301 Tw -(The list in in the form \(\(name-in-the-menu-1 Real-font-name-1\))Tj -ET -570 553.98 0.99 -11.99 re -f -BT -10 0 0 10 258 534.2 Tm -0.065 Tw -(\(name-in-the-menu-2 Real-font-name-2\) ...\), for example, \(\(Classic)Tj -ET -570 541.98 0.99 -11.99 re -f -BT -10 0 0 10 258 522.2 Tm -0 Tw -(CLASSIC\) \(Times TIMESROMAN\)\).)Tj -ET -570 529.98 0.99 -11.99 re -f -2 w -54.01 466.99 m -558.01 466.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 455.08 Tm -(Changes to Programmers Interface to TEdit)Tj -ET -1 w -54.01 451.49 m -558.01 451.49 l -S -BT -12 0 0 12 54 427.64 Tm -(STREAM AND TEXTOBJ)Tj -ET -54.01 424.49 m -558.01 424.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 405.2 Tm -0.138 Tw -(All public TEdit functions \(non- \\\) that take a )Tj -/TT6 1 Tf -20.8626 0 TD -0 Tw -(TEXTOBJ)Tj -/TT2 1 Tf -4.5005 0 TD -0.138 Tw -[( argument)]TJ --25.3631 -1.2 TD -0.182 Tw -(accept either a TEXTOBJ or a text STREAM as that arguments)Tj -T* -0 Tw -(value.)Tj -/TT4 1 Tf -12 0 0 12 54 353.64 Tm -(Changes, Additions and Corrections to TEdit functions)Tj -ET -54.01 350.49 m -558.01 350.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 331.2 Tm -1.068 Tw -(The function TEDIT.SINGLE.PAGEFORMAT is incorrectly)Tj -T* -0.134 Tw -[(documented in the Lisp Library. The following corrections should)]TJ -T* -0.024 Tw -[(be noted: The arguments )]TJ -/TT6 1 Tf -11.8495 0 TD -0 Tw -(PG#X)Tj -/TT2 1 Tf -2.668 0 TD -(,)Tj -/TT6 1 Tf -0.2778 0 TD -0.024 Tw -[( PG#Y)]TJ -/TT2 1 Tf -2.9698 0 TD -0 Tw -(,)Tj -/TT6 1 Tf -0.2778 0 TD -( )Tj -/TT2 1 Tf -0.3018 0 TD -(and)Tj -/TT6 1 Tf -1.6685 0 TD -0.024 Tw -[( PG#FONT )]TJ -/TT2 1 Tf -5.6282 0 TD -(should be)Tj -/TT6 1 Tf --25.6414 -1.2 TD -0 Tw -(PX,)Tj -/TT2 1 Tf -1.6118 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(PY)Tj -/TT2 1 Tf -1.334 0 TD -(,)Tj -/TT6 1 Tf -0.2778 0 TD -( )Tj -/TT2 1 Tf -0.2778 0 TD -(and)Tj -/TT6 1 Tf -1.6685 0 TD -( PFONT)Tj -/TT2 1 Tf -3.6665 0 TD -(,)Tj -/TT6 1 Tf -0.2778 0 TD -( )Tj -/TT2 1 Tf -0.2778 0 TD -(respectively)Tj -/TT6 1 Tf -5.2798 0 TD -(. )Tj -/TT2 1 Tf -0.5557 0 TD -( )Tj --15.5054 -1.9 TD -(The argument )Tj -/TT6 1 Tf -6.5034 0 TD -(PG#ALIGNMENT)Tj -/TT2 1 Tf -7.835 0 TD -( should be )Tj -/TT6 1 Tf -4.8926 0 TD -(PQUAD)Tj -/TT2 1 Tf -3.5562 0 TD -(. )Tj --22.7871 -1.9 TD -0.116 Tw -(The order for the arguments, )Tj -/TT6 1 Tf -13.5863 0 TD -(TOP BOTTOM LEFT RIGHT)Tj -/TT2 1 Tf -13.0702 0 TD -[( should)]TJ --26.6565 -1.2 TD -0 Tw -(be )Tj -/TT6 1 Tf -1.668 0 TD -(LEFT RIGHT)Tj -/TT2 1 Tf -5.8335 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(TOP BOTTOM)Tj -/TT2 1 Tf -6.6108 0 TD -(. )Tj --14.3901 -1.9 TD -(The argument )Tj -/TT6 1 Tf -6.5034 0 TD -(#COLS)Tj -/TT2 1 Tf -3.2793 0 TD -( should be )Tj -/TT6 1 Tf -4.8926 0 TD -(COLS)Tj -/TT2 1 Tf -2.7231 0 TD -(.)Tj -/TT6 1 Tf --17.3984 -1.9 TD -(INTERCOLSPACE)Tj -/TT2 1 Tf -8.4463 0 TD -0.467 Tw -[( should be )]TJ -/TT6 1 Tf -6.2936 0 TD -0 Tw -(INTERCOL)Tj -/TT2 1 Tf -5.0562 0 TD -0.467 Tw -[(. And between the)]TJ -/TT6 1 Tf --19.796 -1.2 TD -0 Tw -(INTERCOL)Tj -/TT2 1 Tf -5.0562 0 TD -( and )Tj -/TT6 1 Tf -2.2241 0 TD -(UNITS)Tj -/TT2 1 Tf -3 0 TD -( arguments there is a )Tj -/TT6 1 Tf -9.6714 0 TD -(HEADINGS)Tj -/TT2 1 Tf -5.2231 0 TD -( argument.)Tj --25.1748 -1.9 TD -(The functions and its arguments look like:)Tj --12 -1.9 TD -(\(TEDIT.SINGLE.PAGEFORMAT)Tj -/TT6 1 Tf -16.8 0 TD -(PAGE#S? PX PY PFONT PQUAD LEFT RIGHT )Tj --2.4 -1 TD -(TOP BOTTOM COLS COLWIDTH INTERCOL )Tj -T* -(HEADINGS UNITS PAGEPROPS PAPERSIZE)Tj -/TT2 1 Tf -21.227 0 TD -(\))Tj --35.627 -1 TD -([Function] )Tj -/TT6 1 Tf -5.042 -1.7 TD -(PAGE#S?)Tj -/TT2 1 Tf -6.958 0 TD -(T if you want page numbers on this kind of page, else NIL.)Tj -/TT6 1 Tf --3.734 -1.9 TD -(PX)Tj -/TT2 1 Tf -3.734 0 TD -0.043 Tw -(The horizontal location of the page number, measured from the left)Tj -0 -1.2 TD -0.024 Tw -[(edge of the paper. Negative values are measured from the papers)]TJ -T* -0 Tw -(right edge.)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -28 0 obj -<< -/Length 5439 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT6 1 Tf -10 0 0 10 220.66 730.2 Tm -(PY)Tj -/TT2 1 Tf -3.734 0 TD -0.474 Tw -(The vertical location of the baseline for the page numbers,)Tj -0 -1.2 TD -0.299 Tw -[(measured from the bottom of the paper. Negative values are)]TJ -T* -0 Tw -(measured from the top of the paper.)Tj -/TT6 1 Tf --5.789 -1.9 TD -(PFONT)Tj -/TT2 1 Tf -5.789 0 TD -0.046 Tw -[(The font to be used to display the page numbers. This can be any)]TJ -0 -1.2 TD -0 Tw -(specification that is acceptable to TEDIT.LOOKS.)Tj -/TT6 1 Tf --5.956 -1.9 TD -(PQUAD)Tj -/TT2 1 Tf -5.956 0 TD -0.174 Tw -(An atom that tells how the page number is to be aligned on the)Tj -0 -1.2 TD -0.101 Tw -(location specified by)Tj -/TT6 1 Tf -9.2074 0 TD -[( PX)]TJ -/TT2 1 Tf -1.7128 0 TD -[( and )]TJ -/TT6 1 Tf -2.4261 0 TD -0 Tw -(PY.)Tj -/TT2 1 Tf -1.6118 0 TD -0.101 Tw -[( LEFT means the location is the)]TJ --14.9581 -1.2 TD -0.024 Tw -[(lower-left corner of the page number. RIGHT means the location is)]TJ -T* -0.0001 Tc -0.0049 Tw -(the lower-right corner. CENTERED means the page number will be)Tj -T* -0 Tc -0 Tw -(centered around the )Tj -/TT6 1 Tf -9.229 0 TD -(PX)Tj -/TT2 1 Tf -1.334 0 TD -( you specified.)Tj -/TT6 1 Tf --15.408 -1.9 TD -(LEFT)Tj -/TT2 1 Tf -4.845 0 TD -0.04 Tw -(The left marginthe distance from the left edge of the paper to the)Tj -0 -1.2 TD -0 Tw -(left edge of the first text column.)Tj -/TT6 1 Tf --5.511 -1.9 TD -(RIGHT)Tj -/TT2 1 Tf -5.511 0 TD -0.049 Tw -(The right marginthe distance from the right edge of the rightmost)Tj -0 -1.2 TD -0 Tw -(text column to the right edge of the paper.)Tj -/TT6 1 Tf --4.456 -1.9 TD -(TOP)Tj -/TT2 1 Tf -4.456 0 TD -0.031 Tw -(The top margin of the pagethe distance from the top of the paper)Tj -0 -1.2 TD -0 Tw -(to the top of the first line of body text.)Tj -/TT6 1 Tf --6.678 -1.9 TD -(BOTTOM)Tj -/TT2 1 Tf -6.678 0 TD -0.034 Tw -(The bottom marginthe distance from the bottom of the last line of)Tj -0 -1.2 TD -0 Tw -(body text to the bottom of the paper.)Tj -/TT6 1 Tf --5.123 -1.9 TD -(COLS)Tj -/TT2 1 Tf -5.123 0 TD -(Number of columns \(default is one\).)Tj -/TT6 1 Tf --7.733 -1.9 TD -(COLWIDTH)Tj -/TT2 1 Tf -7.733 0 TD -0.154 Tw -(The column width \(default is to evenly divide the available space)Tj -0 -1.2 TD -0 Tw -(among the )Tj -/TT6 1 Tf -5.0034 0 TD -(#COLS)Tj -/TT2 1 Tf -3.2793 0 TD -( columns\).)Tj -/TT6 1 Tf --15.7387 -1.9 TD -(INTERCOL)Tj -/TT2 1 Tf -7.456 0 TD -0.049 Tw -(The space between the right edge of one column and the left edge)Tj -0 -1.2 TD -0.138 Tw -[(of the next column. Defaults to evenly divide the space left after)]TJ -T* -0.094 Tw -[(the columns are set up. If there is more than one column, one or)]TJ -T* -0 Tw -(the other of )Tj -/TT6 1 Tf -5.3369 0 TD -(COLWIDTH)Tj -/TT2 1 Tf -5.333 0 TD -( and )Tj -/TT6 1 Tf -2.2241 0 TD -(INTERCOLSPACE)Tj -/TT2 1 Tf -8.4463 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(must)Tj -/TT2 1 Tf -2.167 0 TD -( be specified.)Tj -/TT6 1 Tf --31.4081 -1.9 TD -(HEADINGS)Tj -/TT2 1 Tf -7.623 0 TD -0.287 Tw -(A list of lists in the form of)Tj -/TT11 1 Tf -13.4016 0 TD -0.619 Tw -[( \(\(HEADINGNAME)]TJ -8 0 0 8 482.21 358.2 Tm -0 Tw -(1)Tj -10 0 0 10 487.01 360.2 Tm -0.619 Tw -[( XLOCATION)]TJ -8 0 0 8 553.2 358.2 Tm -0 Tw -(1)Tj -10 0 0 10 258 346.9 Tm -(YLOCATION)Tj -8 0 0 8 312 344.9 Tm -(1)Tj -10 0 0 10 316.8 346.9 Tm -0.56 Tw -(\) \(HEADINGNAME)Tj -8 0 0 8 406.4 344.9 Tm -0 Tw -(2)Tj -10 0 0 10 411.2 346.9 Tm -0.56 Tw -[( XLOCATION)]TJ -8 0 0 8 476.8 344.9 Tm -0 Tw -(2)Tj -10 0 0 10 481.6 346.9 Tm -0.56 Tw -[( YLOCATION)]TJ -8 0 0 8 547.2 344.9 Tm -0 Tw -(2)Tj -10 0 0 10 551.9999 346.9 Tm -(\))Tj --29.4 -1.459 TD -(. . .\(HEADINGNAME)Tj -8 0 0 8 360 330.31 Tm -(n)Tj -10 0 0 10 364.8 332.31 Tm -( XLOCATION)Tj -8 0 0 8 424.8 330.31 Tm -(n)Tj -10 0 0 10 429.6 332.31 Tm -( YLOCATION)Tj -8 0 0 8 489.6 330.31 Tm -(n)Tj -10 0 0 10 494.4 332.31 Tm -(\)\))Tj -/TT2 1 Tf -1.2002 0 TD -(.)Tj -/TT6 1 Tf --30.2402 -2.159 TD -(UNITS)Tj -/TT2 1 Tf -5.4 0 TD -0.08 Tw -[(The units used in setting the values you specified. May be one of)]TJ -0 -1.2 TD -0 Tw -(the atoms PICAS, IN, INCHES, CM, POINTS. Default is POINTS.)Tj -/TT6 1 Tf --8.68 -1.9 TD -(PAGEPROPS)Tj -/TT2 1 Tf -8.68 0 TD -0.992 Tw -[(A property list of extra information. Properties are)]TJ -0 -1.2 TD -0 Tw -(STARTINGPAGE#, FOLIOINFO, and LANDSCAPE?. )Tj -0 -1.9 TD -0.188 Tw -(STARTINGPAGE# is the first pages number; it is ignored if this)Tj -0 -1.2 TD -0 Tw -(isnt the first page.)Tj -0 -1.9 TD -0.042 Tw -(FOLIOINFO is a list of information about page numbers, \(FORMAT)Tj -0 -1.2 TD -0.152 Tw -[(TEXTBEFORE TEXTAFTER\). FORMAT can be one of ARABIC,)]TJ -T* -0.955 Tw -(LOWERROMAN, UPPERROMAN, or NIL \(i.e., ARABIC\).)Tj -T* -0.054 Tw -(TEXTBEFORE is the text preceding the number, and TEXTAFTER)Tj -T* -0 Tw -(is the text following the number.)Tj -0 -1.9 TD -0.147 Tw -(LANDSCAPE? determines if the document is printed in the usual)Tj -0 -1.2 TD -0.099 Tw -[(vertical format or printed in landscape format \(horizontally\). If NIL)]TJ -T* -0.357 Tw -(the document is printed vertically, if non-NIL the document is)Tj -T* -0 Tw -(printed landscape. Defaults to NIL.)Tj -/TT6 1 Tf --8.013 -1.9 TD -(PAPERSIZE)Tj -/TT2 1 Tf -8.013 0 TD -0.064 Tw -(Is one of LETTER, LEGAL, the metric paper sizes \(A0, A1, A2 A3,)Tj -0 -1.2 TD -0 Tw -(A4, A5, B0, B2, B3, B4\), or NIL \(which defaults to letter size\).)Tj -ET -174.01 72.01 m -558.01 72.01 l -S -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT11 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -31 0 obj -<< -/Length 5834 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.078 Tw -[(TEDIT.GET accepts an open stream as the file to GET from. You)]TJ -0 -1 TD -0 Tw -(may still pass it a TEXTOBJ, however.)Tj --8.4 -1.7 TD -(\(TEDIT.GET)Tj -/TT6 1 Tf -5.5552 0 TD -( STREAM FILE UNFORMATTED)Tj -/TT2 1 Tf -14.7783 0 TD -[(?\) )-11952.7([Function] )]TJ --11.9335 -1.7 TD -0.088 Tw -(Performs the TEdit Get command, loading the text from )Tj -/TT6 1 Tf -25.5801 0 TD -0 Tw -(FILE)Tj -/TT2 1 Tf -2.1118 0 TD -0.088 Tw -[( onto)]TJ --27.6919 -1.2 TD -0.036 Tw -(the editing stream )Tj -/TT6 1 Tf -8.3346 0 TD -0 Tw -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -0.036 Tw -(replacing the text that is being edited)Tj --12.5016 -1.2 TD -0.122 Tw -[(currently. If )]TJ -/TT6 1 Tf -5.8675 0 TD -0 Tw -(FILE)Tj -/TT2 1 Tf -2.1118 0 TD -0.122 Tw -[( is not supplied, the user will be asked for a file)]TJ --7.9793 -1.2 TD -0.075 Tw -[(name. If )]TJ -/TT6 1 Tf -4.3935 0 TD -0 Tw -(UNFORMATTED?)Tj -/TT2 1 Tf -8.2222 0 TD -0.075 Tw -[( is non-NIL, )]TJ -/TT6 1 Tf -5.6161 0 TD -0 Tw -(FILE)Tj -/TT2 1 Tf -2.1118 0 TD -0.075 Tw -[( is treated as a plain-)]TJ --20.3436 -1.2 TD -0.252 Tw -(text document, and all of its contents are includedeven TEdit)Tj -T* -0 Tw -(formatting information.)Tj -ET -174.01 614.49 m -558.01 614.49 l -S -BT -10 0 0 10 258 599.2 Tm -0.221 Tw -(You can now use TEDIT.PUT to store a TEdit document in the)Tj -T* -0.037 Tw -(middle of a larger file \(e.g., for saving TEdit documents as part of a)Tj -T* -0 Tw -(database\). The complete documentation is now as follows:)Tj --8.4 -1.9 TD -(\(TEDIT.PUT )Tj -/TT6 1 Tf -5.7773 0 TD -(STREAM FILE FORCENEW UNFORMATTED? OLDFORMAT?)Tj -/TT2 1 Tf -28.5571 0 TD -(\) )Tj --34.3345 -1 TD -([Function])Tj -8.4 -1.7 TD -0.238 Tw -(Performs the TEdit Put command, saving the text from the text)Tj -0 -1.2 TD -0 Tw -(stream )Tj -/TT6 1 Tf -3.376 0 TD -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -0.042 Tw -[( onto the file named )]TJ -/TT6 1 Tf -9.2715 0 TD -(FILE. )Tj -/TT2 1 Tf -3.0293 0 TD -0 Tw -(If )Tj -/TT6 1 Tf -0.8755 0 TD -(FILE)Tj -/TT2 1 Tf -2.1118 0 TD -0.042 Tw -[( is NIL, the user)]TJ --22.8311 -1.2 TD -0.157 Tw -[(will be prompted for a file name. In this case, if )]TJ -/TT6 1 Tf -23.0046 0 TD -0 Tw -(FORCENEW)Tj -/TT2 1 Tf -5.833 0 TD -0.157 Tw -[( is)]TJ --28.8376 -1.2 TD -0.019 Tw -(NIL, the user is offered the old file name as a default; if non-NIL, no)Tj -T* -0.402 Tw -[(default is given, forcing the user to specify a file name. If)]TJ -/TT6 1 Tf -T* -0 Tw -(UNFORMATTED?)Tj -/TT2 1 Tf -8.2222 0 TD -0.104 Tw -[( is non-NIL, only characters are put in the file)]TJ --8.2222 -1.2 TD -0.095 Tw -[(no formatting. If )]TJ -/TT6 1 Tf -7.8834 0 TD -0 Tw -(OLDFORMAT?)Tj -/TT2 1 Tf -6.834 0 TD -0.095 Tw -[( is non-NIL, the file will be written)]TJ --14.7174 -1.2 TD -0.13 Tw -(in the format used by the previous version of TEdit, for backward)Tj -T* -0 Tw -(compatibility.)Tj -0 -1.9 TD -0.258 Tw -(In order to store a TEdit document as part of another file, call)Tj -0 -1.2 TD -0.36 Tw -(TEDIT.PUT, passing an open stream on the file as the )Tj -/TT6 1 Tf -27.8896 0 TD -0 Tw -(FILE)Tj -/TT2 1 Tf --27.8896 -1.2 TD -0.034 Tw -[(argument. The stream should be open for output and positioned at)]TJ -T* -0.022 Tw -(the place you want TEdit to store the document \(call this file pointer)Tj -T* -0.006 Tw -[(START\). When TEDIT.PUT returns, the streams end-of-file pointer)]TJ -T* -0.064 Tw -[(will be just after the last byte in the newly-inserted document. Call)]TJ -T* -0.077 Tw -[(this file pointer END. To subsequently retrieve the document from)]TJ -T* -0.154 Tw -(the middle of this other file, call OPENTEXTSTREAM on the file,)Tj -T* -0.227 Tw -(passing the START and END pointers as the )Tj -/TT6 1 Tf -21.9371 0 TD -0 Tw -(START)Tj -/TT2 1 Tf -3.2778 0 TD -0.227 Tw -[( and )]TJ -/TT6 1 Tf -2.6781 0 TD -0 Tw -(END)Tj -/TT2 1 Tf --27.893 -1.2 TD -(arguments.)Tj --8.4 -1.9 TD -(Note: When TEDIT.PUT returns, the stream will be open for INPUT.)Tj -ET -174.01 277.49 m -558.01 277.49 l -S -BT -10 0 0 10 258 262.2 Tm -0.878 Tw -(The functions TEDIT.MOVE and TEDIT.COPY were not)Tj -0 -1.2 TD -0 Tw -(documented in Koto. They are:)Tj --8.4 -1.9 TD -(\(TEDIT.MOVE )Tj -/TT6 1 Tf -6.7222 0 TD -(FROM TO)Tj -/TT2 1 Tf -4.6104 0 TD -[(\))-22343.5([Function])]TJ -/TT6 1 Tf --2.9325 -1.7 TD -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.156 Tw -[( and )]TJ -/TT6 1 Tf -2.97 0 TD -0 Tw -(TO)Tj -/TT2 1 Tf -1.3887 0 TD -0.156 Tw -[( are SELECTIONs. Moves the text described by)]TJ -/TT6 1 Tf --7.3025 -1.2 TD -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.008 Tw -[( to the place described by )]TJ -/TT6 1 Tf -11.7218 0 TD -0 Tw -(TO)Tj -/TT2 1 Tf -1.3887 0 TD -0.008 Tw -(, within the same text stream or)Tj --16.0543 -1.2 TD -0.156 Tw -[(between different text streams. The text described by )]TJ -/TT6 1 Tf -25.9052 0 TD -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.156 Tw -[( is)]TJ --28.8491 -1.2 TD -0 Tw -(deleted from its original location. )Tj --8.4 -1.9 TD -(\(TEDIT.COPY )Tj -/TT6 1 Tf -6.6113 0 TD -(FROM TO)Tj -/TT2 1 Tf -4.6104 0 TD -[(\))-22454.3([Function])]TJ -/TT6 1 Tf --2.8217 -1.7 TD -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.14 Tw -[( and )]TJ -/TT6 1 Tf -2.922 0 TD -0 Tw -(TO)Tj -/TT2 1 Tf -1.3887 0 TD -0.14 Tw -[( are SELECTIONs. Copies the text described by)]TJ -/TT6 1 Tf --7.2545 -1.2 TD -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.008 Tw -[( to the place described by )]TJ -/TT6 1 Tf -11.7218 0 TD -0 Tw -(TO)Tj -/TT2 1 Tf -1.3887 0 TD -0.008 Tw -(, within the same text stream or)Tj --16.0543 -1.2 TD -0.0001 Tc -0.0039 Tw -(between different text streams. The text described by )Tj -/TT6 1 Tf -24.3852 0 TD -0 Tc -0 Tw -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -0.0006 Tc -0.0034 Tw -( is not)Tj --27.3291 -1.2 TD -0 Tc -0 Tw -(deleted in the )Tj -/TT6 1 Tf -6.2827 0 TD -(FROM)Tj -/TT2 1 Tf -2.9438 0 TD -( location.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -34 0 obj -<< -/Length 5859 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Changes in the Documentation of TEdit Functions)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 706.2 Tm -0.45 Tw -(The following functions have had the documentation of their)Tj -0 -1.2 TD -0.177 Tw -(arguments changed to reflect what will appear if you do a ?= or)Tj -T* -0.015 Tw -[(evaluate ARGLIST on one of these functions. Arguments that were)]TJ -T* -0.054 Tw -(corrected are indicated by bold italics \()Tj -/TT13 1 Tf -17.388 0 TD -0 Tw -(arg)Tj -/TT2 1 Tf -1.5562 0 TD -0.054 Tw -[(\). Please note that what)]TJ --18.9441 -1.2 TD -0.035 Tw -(changed was the documentation, not the way the functions operate)Tj -T* -0 Tw -(or the values of the arguments themselves.)Tj --14.4 -1.9 TD -(\(TEDIT.SETSEL)Tj -/TT6 1 Tf -23.564 0 TD -(STREAM )Tj -/TT13 1 Tf -4.4448 0 TD -(CH#)Tj -/TT6 1 Tf -2.0005 0 TD -( LEN POINT )Tj -/TT13 1 Tf -5.8345 0 TD -(PENDINGDELFLG)Tj -/TT6 1 Tf --28.6438 -1 TD -(LEAVECARETLOOKS OPERATION)Tj -/TT2 1 Tf -16.2266 0 TD -15.9716 Tw -(\) [Function])Tj --23.4266 -1.7 TD -0 Tw -(\(COERCETEXTOBJ)Tj -/TT6 1 Tf -9.1118 0 TD -( STREAM TYPE )Tj -/TT13 1 Tf -7.6123 0 TD -(OUTPUTSTREAM)Tj -/TT2 1 Tf -8.333 0 TD -[(\))-14618.9([Function])]TJ --25.0571 -1.7 TD -(\(TEDIT.DELETE )Tj -/TT6 1 Tf -7.6675 0 TD -(STREAM )Tj -/TT13 1 Tf -4.4448 0 TD -(SEL)Tj -/TT6 1 Tf -1.9448 0 TD -( LEN)Tj -/TT2 1 Tf -2.2231 0 TD -23.1179 Tw -(\) [Function])Tj --16.2803 -1.7 TD -0 Tw -(\(TEDIT.INCLUDE )Tj -/TT13 1 Tf -8.167 0 TD -(STREAM)Tj -/TT6 1 Tf -4.2222 0 TD -( FILE START END)Tj -/TT2 1 Tf -8.3345 0 TD -[(\))-18952.4([Function])]TJ --20.7236 -1.7 TD -(\(TEDIT.FIND )Tj -/TT13 1 Tf -6.1103 0 TD -(STREAM TARGETSTRING)Tj -/TT6 1 Tf -12.3887 0 TD -( START# END# WILDCARDS?)Tj -/TT2 1 Tf -14.1694 0 TD -6.7297 Tw -(\) [Function])Tj --32.6685 -1.7 TD -0 Tw -(\(TEDIT.GET.LOOKS )Tj -/TT13 1 Tf -9.5566 0 TD -(STREAM CH#ORCHARLOOKS)Tj -/TT2 1 Tf -14.4448 0 TD -15.3967 Tw -(\) [Function])Tj --24.0015 -1.7 TD -0 Tw -(\(TEDIT.PARALOOKS )Tj -/TT13 1 Tf -9.9463 0 TD -(STREAM)Tj -/TT6 1 Tf -4.2222 0 TD -( NEWLOOKS )Tj -/TT13 1 Tf -6.3345 0 TD -(SEL LEN)Tj -/TT2 1 Tf -4.2227 0 TD -14.6726 Tw -(\) [Function])Tj --24.7256 -1.7 TD -0 Tw -(\(TEDIT.COMPOUND.PAGEFORMAT )Tj -/TT13 1 Tf -17 0 TD -(FIRST VERSO RECTO)Tj -/TT2 1 Tf -10.7231 0 TD -[(\))-11952.8([Function])]TJ --27.7231 -1.7 TD -(\(TEXTOBJ )Tj -/TT13 1 Tf -5.1113 0 TD -(STREAM)Tj -/TT2 1 Tf -4.2222 0 TD -[(\))-30342.5([Function])]TJ --9.3335 -1.7 TD -(\(TEXTSTREAM )Tj -/TT13 1 Tf -7.3335 0 TD -(STREAM)Tj -/TT2 1 Tf -4.2222 0 TD -27.8425 Tw -(\) [Function])Tj --11.5557 -1.7 TD -0 Tw -(\(TEDIT.CARETLOOKS )Tj -/TT6 1 Tf -10.6123 0 TD -(STREAM )Tj -/TT13 1 Tf -4.4448 0 TD -(LOOKS)Tj -/TT2 1 Tf -3.5557 0 TD -[(\))-21063.2([Function])]TJ --18.6128 -1.7 TD -(\(TEDIT.NORMALIZECARET )Tj -/TT13 1 Tf -13.0005 0 TD -(STREAM)Tj -/TT6 1 Tf -4.2222 0 TD -( SEL)Tj -/TT2 1 Tf -2.168 0 TD -[(\))-20285.4([Function])]TJ --19.3906 -1.7 TD -(\(COPYTEXTSTREAM )Tj -/TT13 1 Tf -10.1675 0 TD -(ORIGINAL)Tj -/TT6 1 Tf -4.8887 0 TD -( CROSSCOPY)Tj -/TT2 1 Tf -6.668 0 TD -[(\))-17951.9([Function])]TJ --21.7241 -1.7 TD -(\(TEDIT.PROMPTPRINT )Tj -/TT13 1 Tf -11.0552 0 TD -(TEXTSTREAM)Tj -/TT6 1 Tf -6.7778 0 TD -( MSG CLEAR?)Tj -/TT2 1 Tf -6.7241 0 TD -[(\))-15118.9([Function])]TJ --24.5571 -1.7 TD -(\(TEDIT.SETSYNTAX )Tj -/TT13 1 Tf -9.7231 0 TD -(CHAR)Tj -/TT6 1 Tf -2.8887 0 TD -( CLASS TABLE)Tj -/TT2 1 Tf -7.0029 0 TD -19.7834 Tw -(\) [Function])Tj --19.6147 -1.7 TD -0 Tw -(\(TEDIT.GETSYNTAX )Tj -/TT13 1 Tf -9.834 0 TD -(CH)Tj -/TT6 1 Tf -1.4443 0 TD -( TABLE)Tj -/TT2 1 Tf -3.4458 0 TD -[(\))-24951.9([Function])]TJ --14.7241 -1.7 TD -(\(TEDIT.SETFUNCTION )Tj -/TT6 1 Tf -10.8882 0 TD -(CHARCODE FN )Tj -/TT13 1 Tf -7.6113 0 TD -(RTBL)Tj -/TT2 1 Tf -2.666 0 TD -[(\))-18510.5([Function])]TJ --21.1655 -1.7 TD -(\(TEDIT.WORDGET )Tj -/TT13 1 Tf -8.999 0 TD -(CH)Tj -/TT6 1 Tf -1.4443 0 TD -( TABLE)Tj -/TT2 1 Tf -3.4458 0 TD -[(\))-25786.8([Function])]TJ --13.8892 -1.7 TD -(\(TEDIT.WORDSET )Tj -/TT13 1 Tf -8.8882 0 TD -(CHARCODE)Tj -/TT6 1 Tf -5.7778 0 TD -( CLASS TABLE)Tj -/TT2 1 Tf -7.0029 0 TD -17.7292 Tw -(\) [Function])Tj --21.6689 -1.7 TD -0 Tw -(\(TEDIT.INSERT.OBJECT )Tj -/TT6 1 Tf -11.667 0 TD -(OBJECT STREAM )Tj -/TT13 1 Tf -8.6675 0 TD -(CH#)Tj -/TT2 1 Tf -2.0005 0 TD -[(\))-17341([Function])]TJ -ET -114.01 284.49 m -558.01 284.49 l -S -BT -10 0 0 10 258 269.2 Tm -0.012 Tw -(The following functions were previously documented as accepting a)Tj -0 -1.2 TD -0.127 Tw -[(TEXTOBJ. They all still take a TEXTOBJ but they will now also)]TJ -T* -0 Tw -(accept a STREAM as the first argument.)Tj --14.4 -1.9 TD -(\(TEDIT.FIND )Tj -/TT6 1 Tf -6.1103 0 TD -(STREAM TARGETSTRING START# END# WILDCARDS?)Tj -/TT2 1 Tf -26.4478 0 TD -6.8401 Tw -(\) [Function])Tj --32.5581 -1.7 TD -0 Tw -(\(TEDIT.GET.LOOKS )Tj -/TT6 1 Tf -9.5566 0 TD -(STREAM CH#ORCHARLOOKS)Tj -/TT2 1 Tf -14.2246 0 TD -15.6169 Tw -(\) [Function])Tj --23.7812 -1.7 TD -0 Tw -(\(TEDIT.PARALOOKS )Tj -/TT6 1 Tf -9.9463 0 TD -(STREAM NEWLOOKS SEL LEN)Tj -/TT2 1 Tf -14.6147 0 TD -14.8371 Tw -(\) [Function])Tj --24.561 -1.7 TD -0 Tw -(\(TEXTSTREAM )Tj -/TT6 1 Tf -7.3335 0 TD -(STREAM)Tj -/TT2 1 Tf -4.167 0 TD -27.8977 Tw -(\) [Function])Tj --11.5005 -1.7 TD -0 Tw -(\(TEDIT.NORMALIZECARET )Tj -/TT6 1 Tf -13.0005 0 TD -(STREAM SEL)Tj -/TT2 1 Tf -6.335 0 TD -[(\))-20340.5([Function])]TJ --19.3354 -1.7 TD -(\(TEDIT.PROMPTPRINT )Tj -/TT6 1 Tf -11.0552 0 TD -(TEXTSTREAM MSG CLEAR?)Tj -/TT2 1 Tf -13.4468 0 TD -[(\))-15174([Function])]TJ -/TT4 1 Tf -12 0 0 12 54 115.64 Tm -(New Features)Tj -ET -54.01 112.49 m -558.01 112.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 93.2 Tm -0.016 Tw -(For the benefit of NS file server users, TEdit now writes files of type)Tj -0 -1.2 TD -0.36 Tw -[(TEDIT, instead of BINARY. As a result, LISTFILES and the)]TJ -T* -0.008 Tw -(FileBrowser are able to determine that the file is a TEdit file and call)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT13 36 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -38 0 obj -<< -/Length 1064 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.039 Tw -[(TEdit to create the hardcopy. Previously, it was necessary that the)]TJ -0 -1.2 TD -0 Tw -(TEdit file explicitly have the extension ".TEdit".)Tj -/TT11 1 Tf -0 -1.9 TD -(\(OPENSTREAM file OUTPUT NEW \(\(TYPE TEDIT\)\)\))Tj -/TT2 1 Tf -27.6045 0 TD -(.)Tj --27.6045 -2.229 TD -0.249 Tw -[(This change is for formatted files only. Plain text files are still)]TJ -0 -1.2 TD -0.059 Tw -[(written as type TEXT. Also, on devices that dont support arbitrary)]TJ -T* -0.172 Tw -(file types \(such as conventional mainframe file servers\), the type)Tj -T* -0.29 Tw -[(TEDIT coerces to BINARY. Unfortunately, if you subsequently)]TJ -T* -0.016 Tw -(copy the file to an NS file server from such a device, the knowledge)Tj -T* -0 Tw -(of its "true" file type is lost.)Tj -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT11 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -41 0 obj -<< -/Length 4318 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 723.08 Tm -(A Users Guide to SketchRelease Notes)Tj -ET -1 w -54.01 719.49 m -558.01 719.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 697.2 Tm -0.0359 Tw -(The Medley release of Sketch includes several new features, many)Tj -ET -570 718.98 0.99 -25.99 re -f -BT -10 0 0 10 258 685.2 Tm -0.127 Tw -[(added in response to users requests. A programmers interface)]TJ -ET -570 692.98 0.99 -11.99 re -f -BT -10 0 0 10 258 673.2 Tm -0.321 Tw -[(allows sketches to be created by programs. This interface is)]TJ -ET -570 680.98 0.99 -11.99 re -f -BT -10 0 0 10 258 661.2 Tm -0.096 Tw -(described in a separate document \()Tj -/TT6 1 Tf -16.1558 0 TD -(The Programmers Interface to)Tj -ET -570 668.98 0.99 -11.99 re -f -BT -10 0 0 10 258 649.2 Tm -0 Tw -(Sketch)Tj -/TT2 1 Tf -3.0571 0 TD -(.\) )Tj -ET -570 656.98 0.99 -11.99 re -f -2 w -54.01 593.99 m -558.01 593.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 582.08 Tm -(Manipulating Sketch Elements)Tj -ET -1 w -54.01 578.49 m -558.01 578.49 l -S -BT -12 0 0 12 54 554.64 Tm -(Adding and Deleting Control Points)Tj -ET -54.01 551.49 m -558.01 551.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 536.2 Tm -0.221 Tw -(Individual control points can now be added to and deleted from)Tj -0 -1.2 TD -0 Tw -(wires and curves.)Tj -/TT4 1 Tf -12 0 0 12 54 496.64 Tm -(Deleting Control Points)Tj -ET -54.01 493.49 m -558.01 493.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 478.2 Tm -0.206 Tw -(You now have the option to delete elements or delete a control)Tj -T* -0.026 Tw -(point. Just select the)Tj -/TT4 1 Tf -9.197 0 TD -[( Delete)]TJ -/TT2 1 Tf -3.306 0 TD -[( command, move the mouse cursor out)]TJ --12.503 -1.2 TD -0 Tw -(through the grey arrow, then select the point to be deleted. )Tj -/TT4 1 Tf -12 0 0 12 54 426.64 Tm -(Defaults Command)Tj -ET -54.01 423.49 m -558.01 423.49 l -S -BT -10 0 0 10 54 405.2 Tm -(Better Feedback for Creating Wires, Circles and Ellipses)Tj -ET -54.01 402.49 m -558.01 402.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 387.2 Tm -0.011 Tw -(Sketch now provides better feedback when you are creating circles,)Tj -T* -0.101 Tw -[(ellipses and wires. You are now prompted with an image of what)]TJ -T* -0.11 Tw -[(the figure will look like if you release the left button. You can get)]TJ -T* -0.292 Tw -(the old feedback behavior \(for example, if this is too slow\) by)Tj -T* -0.054 Tw -(selecting the )Tj -/TT4 1 Tf -6.0006 0 TD -0 Tw -(Feedback)Tj -/TT2 1 Tf -4.6133 0 TD -0.054 Tw -[( subcommand from the )]TJ -/TT4 1 Tf -10.7204 0 TD -0 Tw -(Defaults)Tj -/TT2 1 Tf -3.9453 0 TD -0.054 Tw -[( submenu,)]TJ --25.2796 -1.2 TD -0 Tw -(then selecting the )Tj -/TT4 1 Tf -8.1167 0 TD -(Points only)Tj -/TT2 1 Tf -5.3892 0 TD -( subcommand from its submenu.)Tj -/TT4 1 Tf -12 0 0 12 54 299.64 Tm -(Arrowheads)Tj -ET -54.01 296.49 m -558.01 296.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 281.2 Tm -0.265 Tw -(A curved arrowhead shape was added and is now the default.)Tj -0 -1.2 TD -0.193 Tw -(Also, a command was added to the menu of arrowhead change)Tj -T* -0.087 Tw -[(operations that implements "look same" for arrowheads. To make)]TJ -T* -0.132 Tw -(the arrowheads on a collection of elements look the same: select)Tj -/TT4 1 Tf -T* -0 Tw -(Change)Tj -/TT2 1 Tf -3.667 0 TD -0.159 Tw -(; then, when prompted to select the elements to change,)Tj --3.667 -1.2 TD -0.039 Tw -(first select the element that has the desired arrowhead, then, in the)Tj -T* -0.027 Tw -(same selection, add the elements that you want to look like the first)Tj -T* -0.165 Tw -(one; then select the item )Tj -/TT4 1 Tf -11.9983 0 TD -0 Tw -(Arrowheads)Tj -/TT2 1 Tf -5.7793 0 TD -0.165 Tw -(, then the item )Tj -/TT4 1 Tf -7.2747 0 TD -0 Tw -(Both)Tj -/TT2 1 Tf -2.2769 0 TD -0.165 Tw -(, then)Tj --27.3292 -1.2 TD -0 Tw -(the item )Tj -/TT4 1 Tf -3.835 0 TD -(Same as First)Tj -/TT2 1 Tf -6.5034 0 TD -(.)Tj -/TT4 1 Tf -12 0 0 12 54 157.64 Tm -(Deleting Characters During Type-in)Tj -ET -54.01 154.49 m -558.01 154.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 139.2 Tm -0.017 Tw -(You can now delete characters by using the UNDO key, just as you)Tj -0 -1.2 TD -0.04 Tw -[(would in TEdit. Type in a word or a phrase, then press the UNDO)]TJ -T* -0 Tw -(key, and the text will be deleted.)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -44 0 obj -<< -/Length 4496 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Using Bit Maps in a Sketch)Tj -ET -54.01 725.49 m -558.01 725.49 l -S -BT -10 0 0 10 54 707.2 Tm -(Zooming Bitmaps)Tj -ET -54.01 704.49 m -558.01 704.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 689.2 Tm -0.014 Tw -[(The bit image element provides a bitmap that zooms. Selecting the)]TJ -/TT4 1 Tf -0 -1.2 TD -0.019 Tw -(Bit image)Tj -/TT2 1 Tf -4.52 0 TD -[( command from the command menu will prompt you for a)]TJ --4.52 -1.2 TD -0.174 Tw -(region of the screen that will be inserted as a bit image into the)Tj -T* -0 Tw -(sketch. )Tj -/TT4 1 Tf --20.4 -2.2 TD -(Changing Bitmaps)Tj -ET -54.01 628.49 m -558.01 628.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 613.2 Tm -0.05 Tw -(When you apply a )Tj -/TT4 1 Tf -8.4827 0 TD -0 Tw -(Change)Tj -/TT2 1 Tf -3.667 0 TD -0.05 Tw -[( command to a bit image that it is being)]TJ --12.1497 -1.2 TD -0.041 Tw -(viewed at actual size, you will be prompted with the same menu as)Tj -T* -0.003 Tw -(a bitmap image object. If the image is being displayed at other than)Tj -T* -0 Tw -(original scale, you will be given the menu shown below.)Tj -ET -q -316.4999 0 0 -60.75 234.01 565.99 cm -/Im3 Do -Q -BT -/TT6 1 Tf -10 0 0 10 282 476.45 Tm -0.107 Tw -(Menu of commands offered when )Tj -/TT13 1 Tf -15.6541 0 TD -0 Tw -(Change)Tj -/TT6 1 Tf -3.667 0 TD -0.107 Tw -[( command is)]TJ --19.3211 -1.2 TD -0 Tw -(applied to a bit image that is not at the original scale.)Tj -/TT4 1 Tf -12 0 0 12 54 436.89 Tm -(Freezing Sketch Elements)Tj -ET -54.01 433.74 m -558.01 433.74 l -S -BT -/TT2 1 Tf -10 0 0 10 258 418.45 Tm -0.393 Tw -(It is now possible to freeze elements, that is to make them)Tj -T* -0.176 Tw -[(unaffected by edit changes. Frozen elements will not have their)]TJ -T* -0.109 Tw -(control points highlighted \(and hence cannot be selected\) after an)Tj -T* -0.008 Tw -[(edit command has been selected. This provides a way to keep part)]TJ -T* -0.235 Tw -[(of the figure fixed while editing on an overlapping part. It also)]TJ -T* -0.115 Tw -[(reduces the number of control points. The )]TJ -/TT4 1 Tf -19.9859 0 TD -0 Tw -(Freeze)Tj -/TT2 1 Tf -3.1685 0 TD -0.115 Tw -[( command is a)]TJ --23.1544 -1.2 TD -0.242 Tw -(subcommand to the )Tj -/TT4 1 Tf -9.7865 0 TD -0 Tw -(Group)Tj -/TT2 1 Tf -2.9995 0 TD -0.242 Tw -[( command. It will prompt you for a)]TJ --12.7861 -1.2 TD -0.165 Tw -[(collection of elements that will then be frozen. Elements can be)]TJ -T* -0.082 Tw -(unfrozen by the )Tj -/TT4 1 Tf -7.4174 0 TD -0 Tw -(UnFreeze)Tj -/TT2 1 Tf -4.5015 0 TD -0.082 Tw -[( command that is a subcommand to the)]TJ -/TT4 1 Tf --11.9188 -1.2 TD -0 Tw -(UnGroup)Tj -/TT2 1 Tf -4.3325 0 TD -( command.)Tj -/TT4 1 Tf -12 0 0 12 54 282.89 Tm -(Aligning Sketch Elements)Tj -ET -54.01 279.74 m -558.01 279.74 l -S -BT -/TT2 1 Tf -10 0 0 10 258 264.45 Tm -0.125 Tw -[(Sketch contains a set of commands to align elements. The main)]TJ -0 -1.2 TD -0.016 Tw -(menu command )Tj -/TT4 1 Tf -7.4798 0 TD -0 Tw -(Align)Tj -/TT2 1 Tf -2.4995 0 TD -0.016 Tw -[( prompts for a collection of control points and)]TJ --9.9793 -1.2 TD -0 Tw -(moves them so that they all line up with the leftmost one.)Tj -/TT4 1 Tf -12 0 0 12 54 212.89 Tm -(Placing Multiple Copies of Elements)Tj -ET -54.01 209.74 m -558.01 209.74 l -S -BT -/TT2 1 Tf -10 0 0 10 258 194.45 Tm -0.016 Tw -(There is a new feature in Sketch that makes it much easier to place)Tj -T* -0.149 Tw -[(multiple copies of a collection of elements. While positioning the)]TJ -T* -0.121 Tw -(image of the elements during the )Tj -/TT4 1 Tf -15.5683 0 TD -0 Tw -(Copy)Tj -/TT2 1 Tf -2.5 0 TD -0.121 Tw -[( command, hold down the)]TJ --18.0683 -1.2 TD -0.393 Tw -[(COPY key. A new copy of the elements will be positioned)]TJ -T* -0.165 Tw -(everytime a mouse button \(left or right\) is pressed and released,)Tj -T* -0.024 Tw -(until either the image is placed completely outside the viewer or the)Tj -T* -0 Tw -(COPY key is released before the mouse button is released.)Tj -/TT4 1 Tf -12 0 0 12 54 94.89 Tm -(Making the Window Fit the Sketch)Tj -ET -54.01 91.74 m -558.01 91.74 l -S -BT -/TT2 1 Tf -10 0 0 10 258 76.45 Tm -(The )Tj -/TT4 1 Tf -2.086 0 TD -0.085 Tw -(Fit to window)Tj -/TT2 1 Tf -6.5572 0 TD -[( subcommand under the )]TJ -/TT4 1 Tf -11.402 0 TD -(Move View)Tj -/TT2 1 Tf -5.1978 0 TD -[( command)]TJ --25.243 -1.2 TD -0.051 Tw -[(will zoom the sketch so that it just fits within the current window. It)]TJ -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT13 36 0 R ->> -/XObject << -/Im3 46 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -50 0 obj -<< -/Length 4934 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.004 Tw -(has a sub-subcommand )Tj -/TT4 1 Tf -10.9622 0 TD -(Fit window to sketch)Tj -/TT2 1 Tf -9.8455 0 TD -0.0002 Tc -0.0038 Tw -( that will reshape the)Tj --20.8077 -1.2 TD -0 Tc -0.073 Tw -(window so that the entire sketch \(at the size shown\) just fits within)Tj -T* -0.178 Tw -[(it. This is useful if you change a sketch that was edited from a)]TJ -T* -0 Tw -(document.)Tj -/TT4 1 Tf -12 0 0 12 54 666.64 Tm -(Overlaying Figure Elements)Tj -ET -54.01 663.49 m -558.01 663.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 648.2 Tm -0.227 Tw -(Elements that have a filling property \(boxes, text boxes, circles,)Tj -T* -0.363 Tw -(polygons and closed curves\) now have a mode property that)Tj -T* -0.188 Tw -[(determines how the filling should effect elements it covers. The)]TJ -T* -0 Tw -(option )Tj -/TT4 1 Tf -3.0024 0 TD -(Filling mode)Tj -/TT2 1 Tf -5.8887 0 TD -( now appears in the )Tj -/TT4 1 Tf -9.2837 0 TD -(Which aspect? )Tj -/TT2 1 Tf -7.3345 0 TD -(submenu.)Tj -/TT4 1 Tf -12 0 0 12 54 584.64 Tm -(Changing How Elements Overlap)Tj -ET -54.01 581.49 m -558.01 581.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 566.2 Tm -0.11 Tw -[(Elements have an order in which they are displayed. An element)]TJ -0 -1.2 TD -0.226 Tw -(that is displayed early can be covered by elements layed down)Tj -T* -0.071 Tw -[(later. Thus, changing the order in which overlapping elements are)]TJ -T* -0.295 Tw -[(displayed can effect the resulting image. The )]TJ -/TT4 1 Tf -22.7604 0 TD -0 Tw -(Bury)Tj -/TT2 1 Tf -2.2783 0 TD -0.295 Tw -[( command)]TJ --25.0387 -1.2 TD -0.418 Tw -[(provides three subcommands to change the order in which)]TJ -T* -0 Tw -(elements are displayed. )Tj -0 -1.9 TD -(The )Tj -/TT4 1 Tf -2.372 0 TD -(Bury)Tj -/TT2 1 Tf -2.2783 0 TD -0.371 Tw -[( command will prompt you to select an element or)]TJ --4.6503 -1.2 TD -0.009 Tw -(elements and will change their order so that they are displayed first.)Tj -T* -0.191 Tw -[(That is, they will appear underneath any other elements. If you)]TJ -T* -0.022 Tw -[(select more than one element, they will all be displayed before any)]TJ -T* -0.242 Tw -[(non-selected elements and their relative order maintained. The)]TJ -/TT4 1 Tf -T* -0 Tw -(Send to bottom)Tj -/TT2 1 Tf -7.332 0 TD -( subcommand does the same thing as)Tj -/TT4 1 Tf -16.8984 0 TD -( Bury)Tj -/TT2 1 Tf -2.5562 0 TD -(.)Tj --26.7866 -2.3 TD -(The )Tj -/TT4 1 Tf -2.052 0 TD -0.051 Tw -(Bring to top)Tj -/TT2 1 Tf -5.767 0 TD -[( command is a subitem to the )]TJ -/TT4 1 Tf -13.6964 0 TD -0 Tw -(Bury)Tj -/TT2 1 Tf -2.2783 0 TD -0.051 Tw -[( command. It)]TJ --23.7937 -1.2 TD -0.13 Tw -(will prompt you to select an element or elements and will change)Tj -T* -0.046 Tw -[(their order so that they are displayed last. That is, they will appear)]TJ -T* -0.024 Tw -[(on top of any other elements. If you select more than one element,)]TJ -T* -0.06 Tw -(they will all be displayed after any non-selected elements and their)Tj -T* -0 Tw -(relative order maintained. )Tj -0 -2.3 TD -(The )Tj -/TT4 1 Tf -2.072 0 TD -0.071 Tw -(Reverse order)Tj -/TT2 1 Tf -6.7971 0 TD -[( command is a subitem to the )]TJ -/TT4 1 Tf -13.8363 0 TD -0 Tw -(Bury)Tj -/TT2 1 Tf -2.2783 0 TD -0.071 Tw -[( command.)]TJ --24.9837 -1.2 TD -0.045 Tw -(It will prompt you to select a collection of elements and will reverse)Tj -T* -0.247 Tw -[(their display orders. A special case is when two elements are)]TJ -T* -0 Tw -(selected. In this case the element positions are switched. )Tj -/TT4 1 Tf -12 0 0 12 54 257.64 Tm -(Loading the Sketch Library Module in the 1186 Environment)Tj -ET -570 280.98 0.99 -25.99 re -f -54.01 254.49 m -558.01 254.49 l -S -570 254.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 239.2 Tm -0.013 Tw -[(The SKETCH executable files are too large to be contained on one)]TJ -ET -570 253.98 0.99 -18.99 re -f -BT -10 0 0 10 258 227.2 Tm -0.226 Tw -[(floppy. The files are now distributed on two floppies: )]TJ -/TT6 1 Tf -26.7804 0 TD -0 Tw -(Medley)Tj -ET -570 234.98 0.99 -11.99 re -f -BT -10 0 0 10 258 215.2 Tm -0.004 Tw -(Library Floppy #3)Tj -/TT2 1 Tf -7.7341 0 TD -0.0008 Tc -0.0032 Tw -( and )Tj -/TT6 1 Tf -2.2321 0 TD -0 Tc -0.004 Tw -(Medley Library Floppy #4)Tj -/TT2 1 Tf -11.2395 0 TD -0.0002 Tc -0.0038 Tw -(. To load SKETCH,)Tj -ET -570 222.98 0.99 -11.99 re -f -BT -10 0 0 10 258 203.2 Tm -0 Tc -0 Tw -(type the Interlisp exec command:)Tj -ET -570 210.98 0.99 -11.99 re -f -BT -10 0 0 10 258 184.2 Tm -(\(FILESLOAD LOAD-SKETCH\))Tj -ET -570 198.98 0.99 -18.99 re -f -BT -10 0 0 10 258 165.2 Tm -0.16 Tw -(The LOAD-SKETCH function will copy all SKETCH files from #3;)Tj -ET -570 179.98 0.99 -18.99 re -f -BT -10 0 0 10 258 153.2 Tm -0.076 Tw -(then prompt you to insert #4, and the remainder of the files will be)Tj -ET -570 160.98 0.99 -11.99 re -f -BT -10 0 0 10 258 141.2 Tm -0 Tw -(copied. )Tj -ET -570 148.98 0.99 -11.99 re -f -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -53 0 obj -<< -/Length 2962 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 723.08 Tm -(The Programmers Interface )Tj -ET -1 w -54.01 719.49 m -558.01 719.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 704.2 Tm -0.09 Tw -(The programmers interface allows Sketch to be used as a tool by)Tj -0 -1.2 TD -0.019 Tw -[(other programs. It is documented in t)]TJ -/TT6 1 Tf -16.6965 0 TD -[(he Programmers Interface to)]TJ --16.6965 -1.2 TD -0 Tw -(Sketch )Tj -/TT2 1 Tf -3.335 0 TD -(. )Tj -/TT4 1 Tf -12 0 0 12 54 652.64 Tm -(New Behavior for the Get Command)Tj -ET -54.01 649.49 m -558.01 649.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 634.2 Tm -0.039 Tw -(The action of the )Tj -/TT4 1 Tf -7.883 0 TD -0 Tw -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.039 Tw -[( command was changed to be consistent with)]TJ --9.55 -1.2 TD -0.095 Tw -(the TEdit )Tj -/TT4 1 Tf -4.4698 0 TD -0 Tw -(Get )Tj -/TT2 1 Tf -2.0398 0 TD -0.095 Tw -[(command. It now deletes any sketch elements that)]TJ --6.5096 -1.2 TD -0.094 Tw -(are in the sketch prior to the )Tj -/TT4 1 Tf -13.3313 0 TD -0 Tw -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.094 Tw -[( command. The affect of the old)]TJ -/TT4 1 Tf --14.9983 -1.2 TD -0 Tw -(Get)Tj -/TT2 1 Tf -1.667 0 TD -0.038 Tw -[( command is available as the )]TJ -/TT4 1 Tf -13.4013 0 TD -0 Tw -(Include)Tj -/TT2 1 Tf -3.5005 0 TD -0.038 Tw -[( command on a submenu)]TJ --18.5688 -1.2 TD -0 Tw -(to the )Tj -/TT4 1 Tf -2.7798 0 TD -(Get)Tj -/TT2 1 Tf -1.667 0 TD -( command.)Tj -/TT4 1 Tf -12 0 0 12 54 558.64 Tm -(Establishing Initial Defaults for Sketch)Tj -ET -54.01 555.49 m -558.01 555.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 540.2 Tm -0.017 Tw -(The variable SK.DEFAULT.FONT, if non-NIL, is used as the default)Tj -0 -1.2 TD -0.936 Tw -[(font. If SK.DEFAULT.FONT is NIL, the default font)]TJ -T* -0 Tw -(\(DEFAULTFONT\) is used. )Tj -0 -1.9 TD -0.071 Tw -(The following variables are used to establish the default setting for)Tj -0 -1.2 TD -0.198 Tw -[(a new sketch. Descriptions of legal values can be found in the)]TJ -/TT6 1 Tf -T* -0.237 Tw -(Programmers Interface to Sketch)Tj -/TT2 1 Tf -15.6055 0 TD -[(. SK.DEFAULT.BRUSH is the)]TJ --15.6055 -1.2 TD -0.471 Tw -[(default brush. SK.DEFAULT.ARROW.LENGTH is the default)]TJ -T* -0.157 Tw -[(arrowhead size. SK.DEFAULT.ARROW.TYPE is the default type)]TJ -T* -1.397 Tw -(\(one of LINE, CURVE, CLOSEDLINE or SOLID\).)Tj -T* -0.026 Tw -(SK.DEFAULT.ARROW.ANGLE is the default angle for arrowheads.)Tj -T* -0.431 Tw -(SK.DEFAULT.TEXT.ALIGNMENT is the default text alignment.)Tj -T* -0.831 Tw -(SK.DEFAULT.TEXTBOX.ALIGNMENT is the default textbox)Tj -T* -0.637 Tw -[(alignment. SK.DEFAULT.DASHING is the default dashing.)]TJ -T* -1.83 Tw -(SK.DEFAULT.TEXTURE, SK.DEFAULT.BACKCOLOR and)Tj -T* -0.368 Tw -(SK.DEFAULT.OPERATION are combined to create the default)Tj -T* -0 Tw -(filling. )Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -56 0 obj -<< -/Length 6523 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 725.08 Tm --0.0001 Tc -0.0001 Tw -(1108 Users Guide Release Notes)Tj -ET -1 w -54.01 721.49 m -558.01 721.49 l -S -BT -12 0 0 12 54 697.64 Tm -0 Tc -0 Tw -(What to Look For)Tj -ET -54.01 694.49 m -558.01 694.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 675.2 Tm -(The )Tj -/TT6 1 Tf -2.104 0 TD -0.103 Tw -(1108 Users Guide)Tj -/TT2 1 Tf -8.4882 0 TD -[( was extensively reorganized and rewritten)]TJ -ET -570 693.98 0.99 -22.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.126 Tw -[(for the Lyric Release. This made it nearly identical to the )]TJ -/TT6 1 Tf -27.7762 0 TD -0 Tw -(1186)Tj -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.282 Tw -(Users Guide)Tj -/TT2 1 Tf -6.0618 0 TD -[(. This section contains a summary of changes)]TJ -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 639.2 Tm -0.138 Tw -[(affecting 1108 environments with the Medley release. Details)]TJ -ET -570 646.98 0.99 -11.99 re -f -BT -10 0 0 10 258 627.2 Tm -0.191 Tw -[(are described in update pages available for the )]TJ -/TT6 1 Tf -23.5355 0 TD -[(1108 Users)]TJ -ET -570 634.98 0.99 -11.99 re -f -BT -10 0 0 10 258 615.2 Tm -0 Tw -(Guide.)Tj -/TT2 1 Tf -2.9463 0 TD -( )Tj -ET -570 622.98 0.99 -11.99 re -f -BT -10 0 0 10 258 596.2 Tm -0.069 Tw -(In every 1108 chapter that requires use of Lisp expressions of any)Tj -0 -1.2 TD -0.003 Tw -(kind, there is a notice regarding the use of)Tj -/TT6 1 Tf -18.6466 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.2808 0 TD -(IL:)Tj -/TT6 1 Tf -1.2217 0 TD -( )Tj -/TT2 1 Tf -0.2808 0 TD -0.003 Tw -(and a suggestion that)Tj --20.4299 -1.2 TD -0.304 Tw -(expressions, functions, and variables be typed into an Interlisp)Tj -T* -0 Tw -(Exec.)Tj -/TT4 1 Tf -12 0 0 12 54 532.64 Tm -(4. File System)Tj -ET -570 555.98 0.99 -25.99 re -f -54.01 529.49 m -558.01 529.49 l -S -570 529.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 514.2 Tm -0.249 Tw -(Medley will accept floppy names up to 40 characters in length.)Tj -ET -570 528.98 0.99 -18.99 re -f -BT -10 0 0 10 258 502.2 Tm -0.352 Tw -(Some of the Lyric font floppies have names in excess of 40)Tj -ET -570 509.98 0.99 -11.99 re -f -BT -10 0 0 10 258 490.2 Tm -0.09 Tw -[(characters. Medley truncates the floppy name to 40 characters if)]TJ -ET -570 497.98 0.99 -11.99 re -f -BT -10 0 0 10 258 478.2 Tm -0.154 Tw -[(asked to read a Lyric floppy with a longer name. The function)]TJ -ET -570 485.98 0.99 -11.99 re -f -BT -10 0 0 10 258 466.2 Tm -0.025 Tw -[(FLOPPY.NAME is used to name a floppy. When it is not given any)]TJ -ET -570 473.98 0.99 -11.99 re -f -BT -10 0 0 10 258 454.2 Tm -0.059 Tw -[(arguments, it returns the name stored on the floppy disk. When it)]TJ -ET -570 461.98 0.99 -11.99 re -f -BT -10 0 0 10 258 442.2 Tm -0.029 Tw -(is given a )Tj -/TT6 1 Tf -4.5894 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.029 Tw -[( argument, the floppy name is set to )]TJ -/TT6 1 Tf -16.4073 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.029 Tw -[(. The)]TJ -ET -570 449.98 0.99 -11.99 re -f -BT -10 0 0 10 258 430.2 Tm -0 Tw -(40 character limitation holds for both 1108 and 1186 floppies. )Tj -ET -570 437.98 0.99 -11.99 re -f -258.01 418.49 m -558.01 418.49 l -S -570 425.98 0.99 -9.99 re -f -BT -10 0 0 10 258 401.2 Tm -0.251 Tw -(The {DSK} device on the 1108 and 1186 now accepts a wider)Tj -ET -570 415.98 0.99 -18.99 re -f -BT -10 0 0 10 258 389.2 Tm -0.421 Tw -[(range of characters in file names. Almost any character in)]TJ -ET -570 396.98 0.99 -11.99 re -f -BT -10 0 0 10 258 377.2 Tm -0.008 Tw -[(character set 0 is acceptable. Previously, if you tried to create a file)]TJ -ET -570 384.98 0.99 -11.99 re -f -BT -10 0 0 10 258 365.2 Tm -0.073 Tw -(whose name included, for example, an underscore, you would see)Tj -ET -570 372.98 0.99 -11.99 re -f -BT -10 0 0 10 258 353.2 Tm -0 Tw -(a "FILE NOT FOUND" error.)Tj -ET -570 360.98 0.99 -11.99 re -f -258.01 341.49 m -558.01 341.49 l -S -570 348.98 0.99 -9.99 re -f -BT -10 0 0 10 258 324.2 Tm -0.024 Tw -(The 1108 and 1186 file systems had a problem with large partitions)Tj -ET -570 338.98 0.99 -18.99 re -f -BT -10 0 0 10 258 312.2 Tm -0.174 Tw -(which would manifest itself as "HARD DISK error - cant find file)Tj -ET -570 319.98 0.99 -11.99 re -f -BT -10 0 0 10 258 300.2 Tm -0.041 Tw -[(page" when accessing newly created files. This would only appear)]TJ -ET -570 307.98 0.99 -11.99 re -f -BT -10 0 0 10 258 288.2 Tm -0.059 Tw -[(on logical volumes larger than 64K pages. This problem has been)]TJ -ET -570 295.98 0.99 -11.99 re -f -BT -10 0 0 10 258 276.2 Tm -0 Tw -(fixed.)Tj -ET -570 283.98 0.99 -11.99 re -f -258.01 264.49 m -558.01 264.49 l -S -570 271.98 0.99 -9.99 re -f -BT -10 0 0 10 258 247.2 Tm -(The function FILENAMEFROMID is now implemented.)Tj -ET -570 261.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 219.64 Tm -(6. System Tools)Tj -ET -570 242.98 0.99 -25.99 re -f -54.01 216.49 m -558.01 216.49 l -S -570 216.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 201.2 Tm -0.201 Tw -(In System Tools, it is no longer necessary to execute a )Tj -/TT4 1 Tf -26.7227 0 TD -0 Tw -(Floppy)Tj -ET -570 215.98 0.99 -18.99 re -f -BT -10 0 0 10 258 189.2 Tm -(Info!)Tj -/TT2 1 Tf -2.1655 0 TD -( command before attempting a )Tj -/TT4 1 Tf -13.8408 0 TD -(List!)Tj -/TT2 1 Tf -2.1108 0 TD -(.)Tj -ET -570 196.98 0.99 -11.99 re -f -258.01 177.49 m -558.01 177.49 l -S -570 184.98 0.99 -9.99 re -f -BT -10 0 0 10 258 160.2 Tm -0.077 Tw -(The Medley System Tool now displays an error message when an)Tj -ET -570 174.98 0.99 -18.99 re -f -BT -10 0 0 10 258 148.2 Tm -0.249 Tw -(NS Domain or Organization name is more than the allowed 20)Tj -ET -570 155.98 0.99 -11.99 re -f -BT -10 0 0 10 258 136.2 Tm -0 Tw -(characters long.)Tj -ET -570 143.98 0.99 -11.99 re -f -258.01 124.49 m -558.01 124.49 l -S -570 131.98 0.99 -9.99 re -f -BT -10 0 0 10 258 107.2 Tm -0.339 Tw -(The Medley System Tool now supports sysout and microcode)Tj -ET -570 121.98 0.99 -18.99 re -f -BT -10 0 0 10 258 95.2 Tm -0.049 Tw -[(installation using the TCP FTP protocol. This feature may be used)]TJ -ET -570 102.98 0.99 -11.99 re -f -BT -10 0 0 10 258 83.2 Tm -0.156 Tw -(by selecting the "TCP/FTP" device type in the main System Tool)Tj -ET -570 90.98 0.99 -11.99 re -f -BT -10 0 0 10 258 71.2 Tm -0.059 Tw -[(window. Update pages for the )]TJ -/TT6 1 Tf -14.1401 0 TD -[(1108 Users Guide)]TJ -/TT2 1 Tf -8.7371 0 TD -[( describing this)]TJ -ET -570 78.98 0.99 -11.99 re -f -BT -10 0 0 10 258 59.2 Tm -0 Tw -(feature, are included with the Medley release. )Tj -ET -570 66.98 0.99 -11.99 re -f -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -59 0 obj -<< -/Length 1991 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-15)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(7. Input/Output)Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 710.2 Tm -0.059 Tw -(Every time you allocate space on a floppy disk that has fewer than)Tj -ET -570 724.98 0.99 -18.99 re -f -BT -10 0 0 10 258 698.2 Tm -0.082 Tw -[(200 free pages, a message is printed in the prompt window. That)]TJ -ET -570 705.98 0.99 -11.99 re -f -BT -10 0 0 10 258 686.2 Tm -0.214 Tw -(message gives an approximate number of free pages remaining)Tj -ET -570 693.98 0.99 -11.99 re -f -BT -10 0 0 10 258 674.2 Tm -0.215 Tw -(after the allocation; its intended to give you warning when your)Tj -ET -570 681.98 0.99 -11.99 re -f -BT -10 0 0 10 258 662.2 Tm -0.138 Tw -[(floppy is nearing full. The page count is correct only within +/- 2)]TJ -ET -570 669.98 0.99 -11.99 re -f -BT -10 0 0 10 258 650.2 Tm -0.41 Tw -(pages because the message is printed in the course of the)Tj -ET -570 657.98 0.99 -11.99 re -f -BT -10 0 0 10 258 638.2 Tm -0.044 Tw -(allocation, and the floppys directory may grow when the new file is)Tj -ET -570 645.98 0.99 -11.99 re -f -BT -10 0 0 10 258 626.2 Tm -0 Tw -(added to it .)Tj -ET -570 633.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 598.64 Tm -(8. Machine Diagnostics )Tj -ET -570 621.98 0.99 -25.99 re -f -54.01 595.49 m -558.01 595.49 l -S -570 595.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 580.2 Tm -0.091 Tw -(Medley Boot Diagnostics for the 1108 include changed floppy disk)Tj -ET -570 594.98 0.99 -18.99 re -f -BT -10 0 0 10 258 568.2 Tm -0.159 Tw -(names and slight changes in the prompts for running diagnostics)Tj -ET -570 575.98 0.99 -11.99 re -f -BT -10 0 0 10 258 556.2 Tm -0 Tw -(from floppies. )Tj -ET -570 563.98 0.99 -11.99 re -f -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -62 0 obj -<< -/Length 5944 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-16)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -2 w -54.01 736.99 m -558.01 736.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 723.08 Tm -(1186 Users Guide Release Notes)Tj -ET -1 w -54.01 719.49 m -558.01 719.49 l -S -BT -12 0 0 12 54 695.64 Tm -(What to Look For)Tj -ET -54.01 692.49 m -558.01 692.49 l -S -BT -/TT2 1 Tf -10 0 0 10 258 673.2 Tm -(The )Tj -/TT6 1 Tf -2.104 0 TD -0.103 Tw -(1186 Users Guide)Tj -/TT2 1 Tf -8.4882 0 TD -[( was extensively reorganized and rewritten)]TJ -ET -570 691.98 0.99 -22.99 re -f -BT -10 0 0 10 258 661.2 Tm -0.368 Tw -[(for the Lyric Release. This section contains a summary of)]TJ -ET -570 668.98 0.99 -11.99 re -f -BT -10 0 0 10 258 649.2 Tm -0.255 Tw -[(changes affecting 1186 environments with the Medley release.)]TJ -ET -570 656.98 0.99 -11.99 re -f -BT -10 0 0 10 258 637.2 Tm -0.256 Tw -[(Details are described in update pages available for the )]TJ -/TT6 1 Tf -27.776 0 TD -0 Tw -(1186)Tj -ET -570 644.98 0.99 -11.99 re -f -BT -10 0 0 10 258 625.2 Tm -(Users Guide. )Tj -/TT2 1 Tf -6.6133 0 TD -( )Tj -ET -570 632.98 0.99 -11.99 re -f -BT -10 0 0 10 258 606.2 Tm -0.069 Tw -(In every 1186 chapter that requires use of Lisp expressions of any)Tj -0 -1.2 TD -0.003 Tw -(kind, there is a notice regarding the use of)Tj -/TT6 1 Tf -18.6466 0 TD -0 Tw -( )Tj -/TT4 1 Tf -0.2808 0 TD -(IL:)Tj -/TT6 1 Tf -1.2217 0 TD -( )Tj -/TT2 1 Tf -0.2808 0 TD -0.003 Tw -(and a suggestion that)Tj --20.4299 -1.2 TD -0.304 Tw -(expressions, functions, and variables be typed into an Interlisp)Tj -T* -0 Tw -(Exec. )Tj -/TT4 1 Tf -12 0 0 12 54 542.64 Tm -(1. Introduction )Tj -ET -570 565.98 0.99 -25.99 re -f -54.01 539.49 m -558.01 539.49 l -S -570 539.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 524.2 Tm -0.216 Tw -[(For Medley, the Xerox Lisp logo window has been changed to)]TJ -ET -570 538.98 0.99 -18.99 re -f -BT -10 0 0 10 258 512.2 Tm -0 Tw -(reflect the new name, Envos. )Tj -ET -570 519.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 484.64 Tm -(4. File System)Tj -ET -570 507.98 0.99 -25.99 re -f -54.01 481.49 m -558.01 481.49 l -S -570 481.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 466.2 Tm -0.249 Tw -(Medley will accept floppy names up to 40 characters in length.)Tj -ET -570 480.98 0.99 -18.99 re -f -BT -10 0 0 10 258 454.2 Tm -0.352 Tw -(Some of the Lyric font floppies have names in excess of 40)Tj -ET -570 461.98 0.99 -11.99 re -f -BT -10 0 0 10 258 442.2 Tm -0.126 Tw -[(characters. Medley truncates the floppy name to 40 characters if)]TJ -ET -570 449.98 0.99 -11.99 re -f -BT -10 0 0 10 258 430.2 Tm -0.154 Tw -[(asked to read a Lyric floppy with a longer name. The function)]TJ -ET -570 437.98 0.99 -11.99 re -f -BT -10 0 0 10 258 418.2 Tm -0.025 Tw -[(FLOPPY.NAME is used to name a floppy. When it is not given any)]TJ -ET -570 425.98 0.99 -11.99 re -f -BT -10 0 0 10 258 406.2 Tm -0.059 Tw -[(arguments, it returns the name stored on the floppy disk. When it)]TJ -ET -570 413.98 0.99 -11.99 re -f -BT -10 0 0 10 258 394.2 Tm -0.029 Tw -(is given a )Tj -/TT6 1 Tf -4.5894 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.029 Tw -[( argument, the floppy name is set to )]TJ -/TT6 1 Tf -16.4073 0 TD -0 Tw -(NAME)Tj -/TT2 1 Tf -2.8892 0 TD -0.029 Tw -[(. The)]TJ -ET -570 401.98 0.99 -11.99 re -f -BT -10 0 0 10 258 382.2 Tm -0 Tw -(40 character limitation holds for both 1108 and 1186 floppies. )Tj -ET -570 389.98 0.99 -11.99 re -f -258.01 370.49 m -558.01 370.49 l -S -570 377.98 0.99 -9.99 re -f -BT -10 0 0 10 258 353.2 Tm -0.251 Tw -(The {DSK} device on the 1108 and 1186 now accepts a wider)Tj -ET -570 367.98 0.99 -18.99 re -f -BT -10 0 0 10 258 341.2 Tm -0.421 Tw -[(range of characters in file names. Almost any character in)]TJ -ET -570 348.98 0.99 -11.99 re -f -BT -10 0 0 10 258 329.2 Tm -0.008 Tw -[(character set 0 is acceptable. Previously, if you tried to create a file)]TJ -ET -570 336.98 0.99 -11.99 re -f -BT -10 0 0 10 258 317.2 Tm -0.073 Tw -(whose name included, for example, an underscore, you would see)Tj -ET -570 324.98 0.99 -11.99 re -f -BT -10 0 0 10 258 305.2 Tm -0 Tw -(a "FILE NOT FOUND" error.)Tj -ET -570 312.98 0.99 -11.99 re -f -258.01 293.49 m -558.01 293.49 l -S -570 300.98 0.99 -9.99 re -f -BT -10 0 0 10 258 276.2 Tm -0.024 Tw -(The 1108 and 1186 file systems had a problem with large partitions)Tj -ET -570 290.98 0.99 -18.99 re -f -BT -10 0 0 10 258 264.2 Tm -0.174 Tw -(which would manifest itself as "HARD DISK error - cant find file)Tj -ET -570 271.98 0.99 -11.99 re -f -BT -10 0 0 10 258 252.2 Tm -0.041 Tw -[(page" when accessing newly created files. This would only appear)]TJ -ET -570 259.98 0.99 -11.99 re -f -BT -10 0 0 10 258 240.2 Tm -0.059 Tw -[(on logical volumes larger than 64K pages. This problem has been)]TJ -ET -570 247.98 0.99 -11.99 re -f -BT -10 0 0 10 258 228.2 Tm -0 Tw -(fixed.)Tj -ET -570 235.98 0.99 -11.99 re -f -258.01 216.49 m -558.01 216.49 l -S -570 223.98 0.99 -9.99 re -f -BT -10 0 0 10 258 199.2 Tm -(The function FILENAMEFROMID is now implemented.)Tj -ET -570 213.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 171.64 Tm -(5. Software Installation)Tj -ET -570 194.98 0.99 -25.99 re -f -54.01 168.49 m -558.01 168.49 l -S -570 168.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 153.2 Tm -0.013 Tw -[(The SKETCH executable files are too large to be contained on one)]TJ -ET -570 167.98 0.99 -18.99 re -f -BT -10 0 0 10 258 141.2 Tm -0.226 Tw -[(floppy. The files are now distributed on two floppies: )]TJ -/TT6 1 Tf -26.7804 0 TD -0 Tw -(Medley)Tj -ET -570 148.98 0.99 -11.99 re -f -BT -10 0 0 10 258 129.2 Tm -0.004 Tw -(Library Floppy #3)Tj -/TT2 1 Tf -7.7341 0 TD -0.0008 Tc -0.0032 Tw -( and )Tj -/TT6 1 Tf -2.2321 0 TD -0 Tc -0.004 Tw -(Medley Library Floppy #4)Tj -/TT2 1 Tf -11.2395 0 TD -0.0002 Tc -0.0038 Tw -(. To load SKETCH,)Tj -ET -570 136.98 0.99 -11.99 re -f -BT -10 0 0 10 258 117.2 Tm -0 Tc -0 Tw -(type the Interlisp exec command:)Tj -ET -570 124.98 0.99 -11.99 re -f -BT -10 0 0 10 258 98.2 Tm -(\(FILESLOAD LOAD-SKETCH\))Tj -ET -570 112.98 0.99 -18.99 re -f -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -65 0 obj -<< -/Length 5090 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-17)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj -41.509 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.16 Tw -(The LOAD-SKETCH function will copy all SKETCH files from #)Tj -/TT6 1 Tf -29.1705 0 TD -0 Tw -(3)Tj -/TT2 1 Tf -0.5561 0 TD -(;)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.076 Tw -(then prompt you to insert #)Tj -/TT6 1 Tf -12.2755 0 TD -0 Tw -(4)Tj -/TT2 1 Tf -0.5562 0 TD -0.076 Tw -(, and the remainder of the files will be)Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(copied. )Tj -ET -570 713.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 678.64 Tm -(6. System Tools)Tj -ET -570 701.98 0.99 -25.99 re -f -54.01 675.49 m -558.01 675.49 l -S -570 675.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 660.2 Tm -0.201 Tw -(In System Tools, it is no longer necessary to execute a )Tj -/TT4 1 Tf -26.7227 0 TD -0 Tw -(Floppy)Tj -ET -570 674.98 0.99 -18.99 re -f -BT -10 0 0 10 258 648.2 Tm -(Info!)Tj -/TT2 1 Tf -2.1655 0 TD -( command before attempting a )Tj -/TT4 1 Tf -13.8408 0 TD -(List!)Tj -/TT2 1 Tf -2.1108 0 TD -(.)Tj -ET -570 655.98 0.99 -11.99 re -f -258.01 636.49 m -558.01 636.49 l -S -570 643.98 0.99 -9.99 re -f -BT -10 0 0 10 258 619.2 Tm -0.077 Tw -(The Medley System Tool now displays an error message when an)Tj -ET -570 633.98 0.99 -18.99 re -f -BT -10 0 0 10 258 607.2 Tm -0.249 Tw -(NS Domain or Organization name is more than the allowed 20)Tj -ET -570 614.98 0.99 -11.99 re -f -BT -10 0 0 10 258 595.2 Tm -0 Tw -(characters long.)Tj -ET -570 602.98 0.99 -11.99 re -f -258.01 583.49 m -558.01 583.49 l -S -570 590.98 0.99 -9.99 re -f -BT -10 0 0 10 258 566.2 Tm -0.339 Tw -(The Medley System Tool now supports sysout and microcode)Tj -ET -570 580.98 0.99 -18.99 re -f -BT -10 0 0 10 258 554.2 Tm -0.082 Tw -(installation using the TCP FTP protocol. This feature may be used)Tj -ET -570 561.98 0.99 -11.99 re -f -BT -10 0 0 10 258 542.2 Tm -0.156 Tw -(by selecting the "TCP/FTP" device type in the main System Tool)Tj -ET -570 549.98 0.99 -11.99 re -f -BT -10 0 0 10 258 530.2 Tm -0.09 Tw -[(window. Update pages for the )]TJ -/TT6 1 Tf -14.3261 0 TD -(1186 Users Guide)Tj -/TT2 1 Tf -8.4622 0 TD -[( describing this)]TJ -ET -570 537.98 0.99 -11.99 re -f -BT -10 0 0 10 258 518.2 Tm -0 Tw -(feature, are included with the Medley release. )Tj -ET -570 525.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 490.64 Tm -(7. Input/Output)Tj -ET -570 513.98 0.99 -25.99 re -f -54.01 487.49 m -558.01 487.49 l -S -570 487.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 472.2 Tm -0.059 Tw -(Every time you allocate space on a floppy disk that has fewer than)Tj -ET -570 486.98 0.99 -18.99 re -f -BT -10 0 0 10 258 460.2 Tm -0.082 Tw -[(200 free pages, a message is printed in the prompt window. That)]TJ -ET -570 467.98 0.99 -11.99 re -f -BT -10 0 0 10 258 448.2 Tm -0.214 Tw -(message gives an approximate number of free pages remaining)Tj -ET -570 455.98 0.99 -11.99 re -f -BT -10 0 0 10 258 436.2 Tm -0.215 Tw -(after the allocation; its intended to give you warning when your)Tj -ET -570 443.98 0.99 -11.99 re -f -BT -10 0 0 10 258 424.2 Tm -0.138 Tw -[(floppy is nearing full. The page count is correct only within +/- 2)]TJ -ET -570 431.98 0.99 -11.99 re -f -BT -10 0 0 10 258 412.2 Tm -0.41 Tw -(pages because the message is printed in the course of the)Tj -ET -570 419.98 0.99 -11.99 re -f -BT -10 0 0 10 258 400.2 Tm -0.044 Tw -(allocation, and the floppys directory may grow when the new file is)Tj -ET -570 407.98 0.99 -11.99 re -f -BT -10 0 0 10 258 388.2 Tm -0 Tw -(added to it.)Tj -ET -570 395.98 0.99 -11.99 re -f -258.01 376.49 m -558.01 376.49 l -S -570 383.98 0.99 -9.99 re -f -BT -10 0 0 10 258 359.2 Tm -(The following function applies only to 1186 users:)Tj -ET -570 373.98 0.99 -18.99 re -f -BT -10 0 0 10 126 340.2 Tm -(\()Tj -/TT4 1 Tf -0.333 0 TD -( dove.xor.cursor)Tj -/TT15 1 Tf -7.8359 0 TD -( )Tj -/TT4 1 Tf -0.5 0 TD -( )Tj -/TT6 1 Tf -0.2778 0 TD -(&optional xor-p\))Tj -/TT2 1 Tf -29.6122 0 TD -([Function])Tj -/TT17 1 Tf -4.3911 0 TD -( )Tj -ET -570 354.98 0.99 -17.34 re -f -BT -/TT2 1 Tf -10 0 0 10 258 322.85 Tm -0.003 Tw -(If no argument is given, this function returns the current state of the)Tj -ET -570 337.63 0.99 -18.99 re -f -BT -10 0 0 10 258 310.85 Tm -0.047 Tw -[(1186 cursor \(nil implies an oring cursor, t an xoring cursor\). If an)]TJ -ET -570 318.63 0.99 -11.99 re -f -BT -10 0 0 10 258 298.85 Tm -0.591 Tw -(argument is given, changes the state of the 1186 cursor)Tj -ET -570 306.63 0.99 -11.99 re -f -BT -10 0 0 10 258 286.85 Tm -0 Tw -(appropriately.)Tj -ET -570 294.63 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 259.29 Tm -(8. Diagnostics )Tj -ET -570 282.63 0.99 -25.99 re -f -54.01 256.14 m -558.01 256.14 l -S -570 256.63 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 240.85 Tm -0.091 Tw -(Medley Boot Diagnostics for the 1186 include changed floppy disk)Tj -ET -570 255.63 0.99 -18.99 re -f -BT -10 0 0 10 258 228.85 Tm -0.159 Tw -(names and slight changes in the prompts for running diagnostics)Tj -ET -570 236.63 0.99 -11.99 re -f -BT -10 0 0 10 258 216.85 Tm -0 Tw -(from floppies. )Tj -ET -570 224.63 0.99 -11.99 re -f -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT15 67 0 R -/TT17 68 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -70 0 obj -<< -/Length 357 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-18)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 268.46 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, USERS GUIDES)Tj --21.446 74.379 TD -(6. USERS GUIDES)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -16 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 262 -/Height 128 -/BitsPerComponent 1 -/ImageMask true -/Length 4225 ->> -stream -`Lf 8?6ag&dɓ?"L3g&d?"O3gd?"@3`dɓ?L3g̃ 8?a3g?`?I?ɓ?ɓ?ɓ?ɒ?'8̙2s33s32dɛ?>d>?>dx>d9????fddd2d3 2d2g2|22|22d2g bfr~rbf s3g8g'sg'sf 'sAf3$s3!`83Q3)33U7)Q!A>`?3>I??>I??a0s?2y0s?2c22?<p~3 ;3?ϙ<̓s&~rdɓ2d3?ϙ<̓s~rd2|3?ϙ<Þp&~rd23?$s&~rdɓ2d2!p~s ;?~s~ -endstream -endobj -17 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 263 -/Height 106 -/BitsPerComponent 1 -/ImageMask true -/Length 3499 ->> -stream -`Lf 8?6ag&dɓ?"L3g&d?"O3gd?"@3`dɓ?L3g̃ 8?a3g?`?I?ɓ?ɓ?ɓ?ɒ?'8̙2s33s32dɛ?>d>?>dx>d9????fddd2d3 2d2g2|22|22d2g fgy0&?&g2y'f}̞fa8?92|əf}~?̒fy9?92də2f}|ݟ 8?9 C |??9} ?dd?g -endstream -endobj -46 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 422 -/Height 81 -/BitsPerComponent 1 -/ImageMask true -/Length 4294 ->> -stream -ra&f&0ÃOpp''&pq&rL&d?N99fg'''3$'&drx&d?O?9g'''3''&dra&f ?@9g''&gdrG&g?N99?''$dNrL&d?N99fg''$3$'&dÞ`a 0Ã?pg  fpp~?~?;?&f&3<9?ON`Ã>88133&d9rssNNO99g?N99<2s12s&dC9rsNNO9?g?O99<2$0&f 39rsNO??@99<32$0&g9rssNO?9?N99<2s$2s&d9rssNNI99g?N99$2ss8? 0838?A@Ã988ss??s??w1'098?pqɇIc&fg?99d'?93ə9c&d9?'9ə?I0a?9  ?9ɇI>a?99<'?9y9I&d?99d䓓'?93ə90p 8?p9??9>??9>??w1'09LL g0ys'0c&fg?99Lə''9s'?̜rsc&d9?Lə''0s'rI0a?9Lg'2&s ?᜜~I>a?99Lϙ'2&s'?ǜ~sI&d?99Lə'''rs'?̜rs0pA< `pgr p??>??>??9OϞ 3  L?g?98?g3əOO39ɟ'?99d&s2fs?ə399OϜ39'?9?&s2fs?ə39?OO39?'?9 &s3sə9@O39'?99<&s3sə99NNI39ɟ'?99d䓓&s2fs?ə399N` G  pL?` 8?dG #N?N?@?:8M$c#I$HI$@H"I$@HI$r@O!$ $HI@I:I$F8]lcc)@ -endstream -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /AIMCNA+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 76 0 R ->> -endobj -76 0 obj -<< -/Filter /FlateDecode -/Length 20852 -/Length1 40308 ->> -stream -HW}tovgvfwvr<5T!֊`B@cAPo#̒ "ՔҔRj)Bȇآ"-P)@z&@?ޙ}f[Ï{ys0v [Ip]Y|7.2E:cB翳l)U Éhݯoxl CVg y``JMaQT{g= DwY5& XЁ*SsEu ѧJ*!^Qj*o&?5!qcL/ _QPN@RB' -Pׅ_vn"ЫYZ*;.ثK 3pbXʍi 3irFbXMЊh ]p5ۇ=0s0Ѫ8nD >nz tN&C[n B32x 87/fs -IBIWD:xj.R c0=ǠC%,18 0qt8kL MO@)ZZ^ n\:?HU4נlF|~|xw@F.\8zNwHN9 kٜ&7Z*91fson#њ(er"9~\'SzN'I>ϾJOAWoS9i SDo>u'i/ ~_\jDžpqE2S j!7C4XcBm\bRٸ6'm\ejilkl|Ƶ6u6z۸gm|91"NMx^I*i0蜤mú4xg 1լjZ\Wc?wdWHU tEH(!z27#iQa.KL&6-AWt{(^,hN鯥47F` _[hR3ՄV[~u棢m$UBj8;!4jnB\5D/bV=\E GI)eH5MńXnͥIS;dD0y4D*荙cx)ilF͟2[* SW c/Af|;Y-"&*81lS!ca6niX 'alF2~9c9cث.1"-+ -EЕzuZ> 5W݇фhTg[ >0 oAE; -ͨbFrk -J,7ɖө 4Xf[/Lfd˓YCp]Z|UГ |JFČ=A }w%#E1ӧ168Chl y3fS3m~oJSQ6%Q5t)`eE"[8E%wF22M+++L|ԋTG/0]m;4u<`vݷz{FsWcvݓ~dҺik[nN=6o/gi]N囪SG}ϋmZwV+ȣO-_E]+ZO\9*RRRwMj˽؝kt%ӄ:/F*YOBOzM]P/sV:,q, ]9{v aMc~x"6?H ~p/uwrʥrw({"+Fyޡ,Ԁ=Ŭ]D=eUy#_ ;Y==C*@~+O_2& (0Cggк}Q[K XrFUQor:㧙a/ح1ӏwj"mϐ%+J偗vM|p@KTᅇ>&$蜼ּm;<{ΝwyGvI4_evkBX]Nv0(ܵEĿ{,JBƀia\こ J\'8JN$Sf!h)9C " H٤ѵJ'ЖVh2Е -4mM&)$$}}{y?pIVSgd/W)=bi.l]dz6OesmG&}  .s ^?V;f(w6YQF_N=ý  ՂF^*| 5v,,8!21ϑ絊dTă_rcKgA?"U~W79 F&\w8nVgHb7_HAr4#T|G"*n2JuuBsQV5m'X2rZZUḹ=[ 2fZs_vz]6~EOAUD:"\&$HkN3>|!ʒ e\ݾAON=DCFF%kt6бǦ%JZ.Pcg_Q|IːQ6W:dD:LzyLOcܽTTĵk1d |%kM$g.≹ !8 {2ܣ!yO}[yO%Z2hvym炡EȸF;լ 'xv7 -{ -\OJHcvt vc@֬.:^`&O|\^3A'xr$ '-ls"m,+, -¸ y{(_C_;w kw SQ_ǥ HmǗd(؉4^ RJ||E{@gO2ǂ /-GƚgV[jp]ώ'zGMhrtw׊%'NuDA<|Y]껲HIpAuד4Id@Ԛ'u}"h DtFQr9Z koXѵם+Vآ^zݸ䎨v$b g(v iNtRȰ0dTy9nn.=uƢ\d$C0,v"hex֪rhX! V"H5)F8MHhCөE cf^69HL119Mr\%Z:iu!0UiMѧh5]rt%}F[=M?g3,=6Mel'V*keM;>d'ia6)d>|)Fo{>.?? ?x_y\yhJ--'h4Oj>M'a`/<=0x x Nï7pf,yèգ&e5} qt@DE3 6[`;.kZ܌Oo.m]܋U:N7p -_")"+*"xUϒGH=i --$%ke ?xgtUio,4ʔ#mu'I)F,m]\zZa+ւ>,?Ժj,@{?숵k&T_ mؾ-O}\~_#Vhzߎ[*;kî5k aݩFM0u9) HJt_!S}j@g[2d1Zt9\s$˒zOBzLDW7 -g;|-?V2BW_V#{*S|峧kIF߆@;I Š*ᣳjɪ,K\Ū2VntvGPyLI[M wjuSoóx%ptTͫ&G+;HZJu5y2@qtO ᅟzC6gʔn־o׽{:?g!ccPu`Όpde{gV}c ݴݭQkU6~qͱn mjDX7/ -^$6N\Q'.UkS=C4o[h 3pUcHiHKI}5isjgh;mezTD#ana8suG%FR$@"|Ra2)0YUdVe",~ˑ[7"lFN8": -O0O -nN"n2LFKq%/'Bjd-#o(2d;i#>#ycCr'"&W1(PF-O@ԅCSd:fә-Z@t#JېAnG1z"CEv$H>i)[̬YT--GvV'E&9Z~/dii525` ٚ٘9Y"Kane$=6elr(@Hť$}LȝbB%+p ŭV|ÌHE;&T0*/ Cq{q5[徟R6 E6,rXk3۰_gƱd:ςSh;?8fknl0HEdI"$@Ao e VxGh(CMdZpv&d;H!`jvzx۽$`?q|>o{%h7,hb طjWjЗf͙WXpiƘЂK'ݜ[$ᄁ{$qo:kZprMv.WT;_nڐx%7/`[CF0Z4 Lx 6-gaqOGn_MևLaw$)T'(+.[pҐGJ2d݋G3]߼ Vw&*.7MqLsIYHJÕ-|j2$E3JLB_}A@0hyDܽ:a"ټ"xj 7AP-IJPl|hn~ėE dq0hH⹐a#`P, #X#h Ib?p MՈbyX+zةP+oy?84ud `\ -,ԏ1PRdۃ1L5LKlmHG:pw8eR7W.i,[ Y8kmh7_)Q{m:ӧbBRx PNߘ,CZs:IO<'t!ށCxYhNC_#Xĺk4)ʙsx6t^9h.dJ\AxX걐%d4ȢfɪV.Q -o=`J_b'`,& ^Rö$ I7,tIls:(۠Їud}=񯙭xRdNK,r/ 4,20dpɲF}OaT!?ߖaa} }UQrGKyϸaؼT5eag{jdnY朅{`N5Eh"5yF\tZP'd=C[ >DSӃنmFhasHr˗`mvˆAson-Q*x= t T%2QTGRUl,>"OoRNuKgQK_wA-U?8-mĂȂHֵ`- -e q&}u -F A `&ǟ,;Ĭy\Oc#YM6t>d~9K`0(5NuY`)ߤ`1W걈ANdwoUs#ł5YSUwE/{( u炚 \vN,$jUϫ Ll4jhv4\7U1lA+,3Y|47Q:]`5qBԇHI\)խ0"u% 9|Hns+$j}-HxAR_+if}8cPC*E7|ǵ ${۝}uJTeju-6-L2-@H-^F * -fQlyvo^[Y WNGV{w.$Zĕ3K:3iaCr䆸2q҂M|H1fikĺy*cLۍk, q)h* X8Gi8%ZjUYdDMs JO[|d^u?͖тSW=C)-<}zK3khº3u<2?4}=:cVv)1-LgG o@/ mp\讋8ׅC[.Zw-i.TDq6*d-p2yќ7y8]xҦŞKGB@f%xD}ƺjc%{<x -LyBG.L2[X8YiŤBM_E{&d\0,vMa.u-:Zpܖj-kA|XZ,%Hy^Q,S_9֮ penm.t`Bv>x t桅C1lPNetmb}ZdBs*Zضny"] ɺX[hխl}]Fuظ"^ -+;˨N] uNxnE5`:8N}![)'Z҂ʛ`@wY8B{B֝^QYFH/ZE/J. ڹŠ?瑅diC -)y5k9NPl \ҢITf1h->.]F/WyvIN/2ZHiIZ Xy~Z`0~08BĪs_Z1N=l‴ Jܭ [CQNB*-({="E߿ٞStTOZㅭ}cN -F=(nd*=a-~^9hbN)#O`N}7c +гHKqba9B@3ZB5-&XVt?qofNSS 6[Otԩ07tVWxԍ&,5F5bYW(p "k-i -Iw NX585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>AOƋ%UmQǏԿ+g{i;!>8\;;//-l%ʖF,طPWnv]ZvڎqƝ\`79'"-CWm4wl6`a;Y>[XJ_\}[9Wmh|ܦ񇾅wHp?1T7:GZQY(Ңb5[7A Eȥ!~xo^cO??,{‰ZhbiӜh;^6ۉib{7Jow<y sX> ?_Ë;4mx7B0F!"?!2yMPƔqsq7ʓ{*?W~Ԕ7E{@Ey\; /di)ږ#Z̮1u!JizE#K(4*{n"j2"Hh$Թqi>=.#܌r3YMIo ]ojp)D"Tp8D} I%$*`Y QBa:>@Hvu{gK|>@7 s -`6Hx|v=t62{U =C.۽:+JQ_~]E++rXtΛ=|ۼm_n`T ΣYY -˱1|zP<⸤S%˯%Ż Uar|iVȌ<ե-?6FdـgOV$v=SM>^yӪgg$jEǎ -_+ jUuۛ5 - +$7稪`V[{[sGgXXt:@G-~_re 3啻977{2/|k-GL]ns>s0fF/T.& ޲cY\a?z4Iԉ@[*9lyViAȯ^(uogo:*=Km!iE,Q^[7$f_'jC֜_X孩َ( %)[-:J4w@`3!SJUrD嫆EF3V_8,˸vefu۶?״|y9lC aiumґƁ[OXA,:g]YI::uq]Nv}],gp]p7ڌ0O&Q2B,<0pqFE33ݖ8cIeqY{ dO g-OQa -F%,rP"ZJD{ sEL#2b{Z_9[^AR%>)FB_t: 6=QXޫ XA[J\ -JIg5K^әs}M$Kb}D)t"K\VInmSZ{45 c%OcI'%luéc)pbSXGAv8%dO~??3ljU̴H16B(H`-ԪDռn6R1͍ӟ(!NtIJi\w%.0K ==A'YGk>6y>kh9o=rUs̘#p)X1ty9v,>8m?l! S` -{dI9~q*O%V, KLQ}JGلƤ-]=nJ-k+O%;oUV(82K&i{0,Imڜ$$Ӥi$I?2,0O" :,0 .0PO܅erN.Cs.W]W%? IoR%rV Gd9" $wS*=0 -='D(9@q@1U*<#U'7 + }L.A-DG9FdnE^|_ȗDαJƵ|CC:I9QQ/z̿V8߿$~HM#zW,R)M "񽗧kĿ[rq v48I~ MJ\ D~Gko/_!6T"Mqدٿ :_u7~M_ыqͿ ~rի/փq*Pߓ|;7H,G?^O]W/ |G֎?P$qy{ 8}>&;ǯoƱOۯ<{KKGMϊ6qCM1 -N0M6&R#A%;THRn(ʠ27Bfhs0zh"A ]KEH@4Su=~8>V~5™o1˄喦wͰ$-!Z -YzztˍGO<"q20,td04 cCf "xXrj0qݡ[yTF08Ϣ4 زF.WB -\|èLgdIh""j!oZlbr6>94'sۆ#7>+[&ϋdiDlM }O& -,U|ۖ`;f6Uʪ%J7j }7⶛i|ڀQP3"c;Y8ғd` j3| lj^[[Z-Q(ϢƐcI3E و氙3֬V&[!5!6-4 ,I)"i?+Ȓ5u6lKt5,=A -#UqXJ< :-O\E9tP̳`v"٦nG؇j yc{bž0zp9ŒhIL0$\VEvb +]N& ԵaA@yXTГYm#mjc +jHi LJ- UW8XqͨfS?µ(gm e=D6ȱՕѩ2Su;6z^T^O G'|w[zה@Q+Y,7F&?րƤK.R%K6I$5AjHBRdw$U0bBlF.7Fv5 I`塅9̪I86v;zE2W -w/qGǿxƧܝOѻ_x/(,ߪꢻYAh74- A-Ld b2qNDu!F qwMT$Hr\#Pq5qp#.3̭>ē?ߩ_徺ojuϺLcV^Ck'}=M{U7O+u*\:`yY 28p}2)}Ř ֆX[4eTzҨߧ}ʛn<[ؼmgÿcG;gmn4ڧ{{Ews\^Eqr;x(Bkg\nׂK_Mxy|_8,1Wh\qJdق-'O\}s1's O>[9!䌝38"aȞd^`o~:ݶns*ǼءԶ%qVkȭErߪ=?lS_B{ږWj+ro_;ݞp#~s;/m&tƺn.iu+%N=vJR~!uaڼ8%ug86jމs}Rl(.\Pf4p2 -Ťn J%ћdjǟ n;ݤJD#(ޡxШ괡(NԞœBP`jG/:rݴ&s -LP\飗7{# Bł t1-b $AJ< Ia 6M| >`XցyMw5݂}ւkUg2x ր?1yù3ΰ*ؕJ`9x3}<؏.RqZ*ٿHTD{ɕK l.K.DbFV=fKm#IXݍza'ƺG襁TΩS=msHL) -_/ [oMPQoTE hbHZ׀uL's%r .,"Y|駨 ~W-xl8ޘlfs癍1o<9K\:%ٔ^eHL5Y٣XSK$UQw_LZ3[s3C'8 Ӻ39T&Q:fJQg?M+k116Uh<ڤ1hp$8һC{; &AooDoi 8ر`  u` mZ5` -&Q0 ;hD}>d9Ю@_rcPf^Y13w #!uw[2^FN2GAMGwG;vjKmݰ\Πԃ: T(U"(@{KDƟOj6| _ - B9 ?G[}8Z^9o#OR_*2Ta݉L4]gY7pR8\׌WO[N -/v\Ҟڻx:ݑ:v2ty݉:q?3 -'/_ ڇkry*'7NAX0ad8Q8 f5;X!E4C8G_4yKϮ>!N/ìW7k_+o"5G4dQCA_#cuyuyb,c5Ԕ!uha_>{4YFT]g޼ΝdNS=#TY)N GNƺ:nq絍!&3)a|:%?i=mksl|f%C*b?eIIp:ОA#S'njkC̪&`A 3Oڜ/X"7 -2^IQdRPNtJ"iBԗ4ʋՏ_)YµKíbJsUe G?*!S~/df!{z(Gh#UoBZun3}F.z݃%w==,1贂W]{/cum:OfzkjCvUk#fKN̊?B#,fѣG -ol5Rq[ Mj&7+#F'?;o^.}Ż%Ew9r>8\蜠olВIUHn.Jπcu]YuTi::c(\:X5PYDEMEEńDEXT՘LMTҋn^5{ i%qQQoǤ$FFjzybԼ'ŨcfƔs"+^D&Eľk{9;߹}M*,`X*c8/dú Xb0;p203 s13 s3p{l, @s$p p -9rW]{' %AP8ݱ9#ntH̘҄@ҘFʦ,ӒZK˚5GX >c1 -Ji@ay%dч.9!/d9^ ـ,)P- U6wY@lPcf3l6 Q;27)?7h'E m``>! Xۿv)lVG ؗ',6H6_p|1偸iy> -endobj -78 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 32 -/FontBBox [-167 -299 1094 827] -/FontName /AIMCNG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 79 0 R ->> -endobj -79 0 obj -<< -/Filter /FlateDecode -/Length 20403 -/Length1 40124 ->> -stream -HW}t33;;I)Bα*P!Po#,У*0b[))R &|D@b}jQH{h *Ԫily0ǷnhXGQ!aXpg8b&ֺ˪w8&~fj, O뜶1iMDNhm\/bƿ&=/l2nܚơ 4E^Ӊv)_hYcZվ퇂YǬ6vXB] -9/JqJ7odL֔h`?a);f@ ̆L3<,Ra$- a+ؽ8##a SeqԯeZN`Fh`2/Lȃ-p͎lxܹ\@&SXV10`$!8vC'00 -ư~X ~v)l0S]L7)hqa$-Xbp;L#5^yp7Oƾk2pHXQJMѓJߍY W -(Lh@Xc[LJ5\Cy=P?xď!λӸ&A0[ 5p63'`%|cϤr2ʸ833qޑ<•p6kܼɝe%v2tr@ 3~;3a3= ``0P ˱8FBo1Lܠc:,W*+&+f"L:ӌ De5dU,v܆UϏ?ZTs<@.ۡf#^^+ľ29'kzNBj&'nbi_ω18|HkzNΉNvi_KJOAw3= wߴ7zz3tvxez/1 _@;XX˙v¯E2Z 6`{ l|4fIG6>ecl\lm|%6.qm\aJkm|U6qXgs6ym|u6ml%_vN뱟5CQcё%7OE BHLP!%UI>t%sg@_u9tL7_ MEYcnJ* tYb\]RXet$:!55nPof \7&-6 j*Z[~t꣬nh"A%*1Ae$0nkeh#kF&UU0!=[nv"a{I*rzcNW-CPfK&jD=>TH"f(Ҧ҆"xy5i.RۜP_ -]*W'a9+Z|MDd}q.î`̌fon5VA5x#iY.rLG*AJhz9Nvܛ-ONd it 'E+:By{@zE#A1gh (]8K^?>s20GoPJR2$/,B9I\r[X^,в[^v%SIo^,_I#,7]mn$ ovܷy{Fs=kozӤ5̕GnN=avox+iN[SG}; ZwV#JŤ+w@]۞ZOT9*bRwUlʽo\=Z霋fub+T# -3YLxvwNqεk#?7{ΉWvfA[nS1I>$uO;+О b2K]֜=RTFϞpv\ m};f83WLǥ:O㵬.m~w*k9q9ý}Pߢ^|i4nW>n="(YU}tTg|| >2Z:l5yvwwsdE4IO^hɝ*H'Ѥ9:/-`됖γ/]>cǥRޑ=p V?5S|!,/ey}1x`R֜XQ.# %ҮIԺhZ/PCHB(aR6Cet(`" t0;$EtT}u~ޏ;sEafqe Z5H9AoUן(i`J◪Z4q{+DٵMclbn'TJrgã&I33 -KTѩoaZhK%?,u0R9s^VSc@ #82V1JxQ.|ztFR|R`\(<x`ku88,V`>&/MAFzlp{۱.+_0B϶.1xUqQ- ##@i#<چJժW5jR\ȘÍ O)7?UMtUYvAS$d[9tىy\'l[v#3ة3yeV232:B^Yct_ -tx5ܺDsY k_kR<:j*]52* %訕 \R(S$|j}tC*K@,nj4o&'?-ndTRFgxc {tZ^!R -7yօ(Zru -Ȉt ApvPkp#'KךH2\EG2 vXkr?oQ4jJ*.ꤕ!Cϣl; -1 .Df6f}H8 +8n72oR 1L ~Ĺ> ]mGF`j0˚Q <i\3k:NluAтdz -R'HcZ^+vǭ̭xʹc̖@fp};?/=eo~L*ʀ$zϝvlq6ȎRH@.iǗqֹc~< q2|=RzV<L_޾H'JN|<.xpٳ [WK~wye{%ֵ'$ i]SjX؆+9?ɐ>3BXה˱b\{jŊ=b-7ٍ In'F9KHMOp -d>E]#{<(dș0xssѨ3`T#d!F[?-HƳVG -)c|ؐ,EAI3 Ʃr] -FdTNw.mÝи&+"QCwv'0s<&D #_31O|Xw -X 2a#4C {p% #d6Gj3dyh$L^!dy%oϤ%S'UJڨQ7MQVYt.}V>GWh=]O7Wi;}K4^4,}d6M`SX1 6-aϳUZY;{ vEv pE>x>O?Q_Ÿ/ony'Q~O>%:Ol2ecudZppf"YBÈsj!eb!F7 EQ`f<,Jߡ?j%VVt+Z02aX)Kcm>菘*jڢ_u0f`ez(~BTVb#9HЈ-vKLYFLD%;̞}tCTlؑ]D-z=ǰ^Î̃c,m&V3zfam,AuضI1؃W`΋p.C -ZlPˤ.E(Q..U;¿nxh -U(C-FK~?LEȼo.w$> hk@+-tԈ~Naʴdݽ?h/_Au-9rOi -:f|XYo ^ QR;y>Y/YbK_?w8$9hc9F!-[AZLڪs(5k7G\B$$gA&nikĩ6b+L`#nn/m=K}w3dػ;ne5G't%_vޱk]ի<,y06dženeVZ&l*JbZwf4恗j%U`K6.X$],VM^~>zIXvbO - R#pvf6Z\'B/Y5׫]!W,[lRvdx/M9Yeܽl`Ead -Dj5~0K5;vқmQq֫k=6 C^ayݧ3[-o,:6TNa(a[fQ:& IwQ|Fނfݶ٢/H8߸򅏝%GE>cRKֻu1+<|xNm,|m#%a0U 'm-iw$4%e-[eG$x1e_귁Q'7|z؅r*`=ݣڪ76f!VzaVs&?;p>XgRc?˚H:^y(CFC}$XiźIuUfSeqBҥ>[k)3x|Ӌu:88TA"J wk-A~ַ,W^ -)ayjŪfϿ^ WZ =xȽmEY, +,}*:,aC_px >KF"vc|.20D858 _9gx7a BȋG ohE1t -͠w{2nc뱂p+~ -?{wq?œx -O78H YMH«|S]O+WU zO\%[z H:;ӵs{ك*.tz[Vs`glO|H Z+ץuZ'VkW ;컓`1k2W7UO ~?/ػ/2 {ڋه [|'v:z!CF|78͵Hp퉿t#{JKKL%F-؆@I!kYlDyۭ0U9SHISRz"&-ג+V)-G|z[E$^W %pHi}g6IwվF1O&հ?wggJ$aSyAtO 8/g,/JN䷽} _֮.Ng5B5~/9 pewÁ uv+.VI7 Yz(^D賓p0*3L<0F;yl]]𧙧3V47fsg#+N<_ O^C{c7qa_{ލ3vP7ի Dv_V"Itmٝ3M&@ܐkRS#U6m¢[h 3qHi$˓Hj IcP*4~ӡkRwh;mZ8" D0XxCD\|5%FRB|`2)0 YU Ȭ9X *[ W"lFB~uNBdX%$*ޛ]M6MbaX2X& \6e>(呸BσYB_L7} `coXqqcAe + 3/E`f0M2$QO?&lO'c_Ҷh%&*|?.Ѷ E6,rX$k_gFb:φo훷wJʦsBZ~?}7V'B{ڍ-9Yhs V* N"ZXr餛*t -ǒg0S&FpjJfhCN^ZwK*_._aiS SeZ➲YYeo­]XQR܏vmK4vC]ɒ;wu۬7@6 ,_yPGPoHO. -f^~ű4lwa'F͚H+[a$OIB>PKA1LPM̈́RSeB5 S߃Ű -Xz!Xǰ g$pCMuUTg}HC䐫PUMB]&ףIn&d.&@uu'Rrdi"ͤlEE(*ߒc$$yN.ȻB,yWE:jWI+h%Ot1]B參4B>N:izh=IH_ z^bYJ6U,jkjkfv-Va l[!0[ʫmb'Pudؓ);žLI >!KIߞ%ԨxG[»Q{>+;x%D>jd&B0P,x,(䝅^ʨ,h -۟^I mR@܌,THQL{h뛗1@%incE=pfh ߚ,*x2IĈ%Z Z:v*< :ra!|">j -7AP-ARP>|PZ4T -#E dq8hH⽐£`>W, #X#h Ib_p MՈfd. !yqꘉd `\ -,ԏ1PR!؃1JM UIKlmtO@:2q8e;RNSʂ ~u,j`5 -m6nK{iQ{m:קRݤ@"Ĝ1U#~lryNhC, -3[",ov#ļk iʹ x5t^9h.g^%.X v |,XhddUjKEM2h10q[eV/Sa[~u:$s:,۠Їud}=/٭xD%2ۧܛazqr/r[:ZZ7ĺRӢF<,j ɺ̕z^a,$"~QW!>SeR*y>3X G y5e1YdqAs9X.ݙ j,tS['C\Xa,Ndoo\Yq#͂5YWUw.( u-5-RuuyqYHp_ } %ѕ,^TzXiМHȯ82nwڷ3&Q"1&%qTNCyBA uD H=;]m,@ - ^/͵I7KRlTA.v|I=f18Kcd C#ϡGtc [jKAbm,f+8hwԂ̣(\`.d!vL7B3Nt;=`aq}W΍"blxbq30p!L|vSl8d~ <@ZL !]ٲ-W+HWq*ƞ%XUKZOrd^?͖BѯFfsF-|x$S+h!Kusf4 -Lmx~hbg9mYpV$Zx~ wӣ>>d`P& Fj1{ɽ눨|Oa O {ƫ2E \ml{^Mc^E^%V&`OŎ -+2XhqT3.@. b`3csR%ThQ*Exq!M鎜pbU\u% ,kyAdPBt懻[]b8Mo~C ZQZ8#LgJQ7..1Hb J9Yh0ٳЗdp9,;-BH„˞x_urPT,XI{(M)ʞ @# ZD ;RY 63нҺH/کE/Z!bƙe=|c'R&AKBB-&kΛםEl;Cd@M.Fɢūܜbv.*кXL#4^M#N/Y -Y`hlb\` dNCz8E <D/$.&ER_pސ~}Krjٷ:wEqkl-3no3ŋ}!q! WoL6w;P-S:F[xxƜS&VѠD l†E]SJu'Yz(R ,8f U_u&*3 f^j[I줜:d}e]L/=vϚSQ/ւ房5"c@Ũ"mhOyt̩qʼ[LZ.NhR@#D,p?[r,< ٥c7,~'Nsk\uf~Sى''E˚ֲpaQzW_NB\_DsLc֚FMUbuq}1,P >`ѯ/(8')vVR Goyh!jWaĜE}߸Hu'w:3 '/H%<'ٛZd7n0g4v\X7Xp{07_]KjpڬF ب;)XR݉^pSEg>oXìْSu0& ^=ٯ;]FbYd -Y6Y\TAY07HC$[jcfBFj]ZhV=)GN[hjuwKkZ +8tVX_@dv7B7Pd@~ E]Z.oA:nw.3QA^Fjâ1DF1~ +C)M'hQH>p08RfH yaS/EbXQlmn$M} swآmivahW󦔬T9ih -p=[,ly/0d}>Wu7}9pgKːVAl!CzQoaf=,22 -#-(N,4Xb5[/AE(¢-^`zƧOalwG׻[dqiӼzA"5K 1=pN[p"9e/% 6Wcl}`OiMv} ek[[e[i{E{@Ey\;?@`waQCa,b5EӲb_+5 b]x6Z$PXiTl1ttm>ZMϤX[xHp{gQésLwv;;?wIx@>gx{l)BD†L6gY[6-l'ke*kgPS< %>{o{!~_.4*=-KE4\Z"5HoI[ce əC*,K7rO>)C(T PQr+eTY|´vrT9R)_(T.+*SUըԾ7du:XMW3ԑjR=n V&FÙFA/RDK%TxYA-(WU!h/NLHLFI#Ub@FHK BQԨʣ(Fx -}RG辱5 $Dڙ G(1D2"H EOA|dC`u b$#7c0(j#6u m f.H3~4#3sD>DI%$*`Y QB(a:j> "78[0?tZI|bCo% v}'ۚ -?p [QW¡ E(m(Pٰ~Á{ -WU몥NzȊg[&4t\SmgbpB+VԳ2>te%N{P umGBr2d̐YmuƓ+Jm&"i#`럑79ZYl}R8MOJ& l6OEH戯_}!}@65Un.n{zca:XoMfS%gLKKODuwm•WB8Snkq21~SHE]kn9~$xx6y?@\:neE)륒w''~N -ZkUa n -!|.}ۙ[qD\ni Is9(b:_3I^}nqbuY`ަkyUR_~YGq]}֖= c1>7R\av9c~ф(6 4YշIݾk4|0χo?|d!eZSt,aWƹJVWnV߄aC\߆r=n.b,?3`3_Fx2U5ڕq`!.w6!>"ohf[g=G͍=Q -{ ]q>^WfKKy1:^+i~ 7QoQ4%qj0~0~Ezf#̃؈˺k"."Fa!z7+bmU -kd$3$Kb}D)t"K\V胤6ѩuYR=Q| /c%OcI'%\uém.pbgSD|.? TmaS QZ5-{GbEAkVmBs&4q{Qڌinb)$L,{Zr G?CiCtQucΉN]pvc-.Z)/s9<+./8Xqy]z1`OvPS` -DȒUK$X,8Ndlŕ*Oɷ;>U+2{ )k?h&q%7 -9a;k =p _A~999y,u_p,@vqy}[ϘˁL1("f~+Os7=c{1{s~GΙ\,`;|1oQx” -!c0~n^ s3AGpsdn~ļY|Q`wQu|wƍ7#X>Fxf3a,΁Gg>xp~ -P5zZ,2 m' G wg}.q`CMss^h2or>_Ň̟ .Ҍ~%d+ڳ?B^kz9/OwxJl jڭT|>~; ‹^혯]W/_<}+O\}qq/ܗ侻g( ڳ|߸bzn9! H l&ٴԈkq_IG~e=m톣N75>TtA_Y17™bn= %lǾ"#ƱV0ZggSaV/l-xrN}-t]Sn<>[bs|fOt{Z -=::iKX.S5Mcw>K3S}-F M2yYf=wv+74ZW^!;'&4LT.K}^CJx~"U~I%ؒW()R[V -tjh;( {)Rw"W[, U -ZP*hދttVt.bM+)z%-}ɽB_l|M?:Y#(D E(Ƞ$4[3)- >o`6p}қH_Co :w -^w={L%r]cd X Oρg3'I<`9XWyk\%Hetl8TWwRDfJq?D̃D6 -~b%k1c -~K}fqLI1^K RȔJbX7Enp0? xKBꇘTdi+BFf>כm#p4ife %By& y"ǘCo)"['czNG"uDv[+]t-s8{T[!{M%4{FI 겁ԁZPA+PEL%""Q$2-JPdn}2[sl㧘H.Z*d*?uqKܕĝx;}0ℎpGyCEbYiya;\yqpPj)jajڍ:hyڳ@ԑAםszp^<҅NW=8/1 K2u(6X mm3x"A˛mQM!+rۥ֟@|Xb>?OirlK0g@)+ ҊwsiV*(HQrK5VJ\FVVz8HZbՂJ-^6ŴIbl Ex?JK4Eb= $KXp h=PoݿxN\QϫW~޿ebo{3YT҃?WŠR_D-gmmJV҈lq=U0Zt)h9,Zz1zPqi)S>…E/|{p?N:8|&<GZgtE r`y fcy> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 676 -/Descent -250 -/Flags 262178 -/FontBBox [-168 -218 1000 935] -/FontName /Times-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 461 -/StemH 139 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 653 -/Descent -250 -/Flags 98 -/FontBBox [-169 -217 1010 883] -/FontName /Times-Italic -/ItalicAngle -15 -/StemV 76 -/XHeight 441 -/StemH 76 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 182 -/Widths [278 0 355 556 0 0 0 0 333 333 0 584 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 278 278 278 469 556 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 260 334 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 350 0 1000 0 0 0 0 0 0 0 0 -0 0 0 556 0 556 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 72 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 333 0 0 0 0 0 0 0 0 0 0 278 333 278 278 -556 556 0 0 556 556 556 556 556 0 333 0 0 0 0 611 -0 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 0 611 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 73 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 556 0 0 667 0 0 333 0 0 278 333 278 0 -556 556 0 556 556 0 556 0 556 0 0 0 0 0 0 556 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 74 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /AIMCNA+Symbol -/Encoding /Identity-H -/DescendantFonts [ 84 0 R ] -/ToUnicode 85 0 R ->> -endobj -84 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /AIMCNA+Symbol -/FontDescriptor 75 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -63 [603 986 ] -65 [986 603 ] -139 [1041] -186 [790 786 ] -] ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 218 -/LastChar 218 -/Widths [167 ] -/Encoding /MacRomanEncoding -/BaseFont /Helvetica -/FontDescriptor 77 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 176 -/LastChar 247 -/Widths [400 549 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 549 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 549 ] -/Encoding /WinAnsiEncoding -/BaseFont /AIMCNG+Symbol -/FontDescriptor 78 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 0 0 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 0 600 600 600 0 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 600 600 0 0 600 0 0 600 0 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 80 0 R ->> -endobj -36 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 114 -/Widths [278 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 0 722 667 611 722 667 0 667 0 0 0 0 0 0 0 -0 556 0 0 0 556 0 611 611 0 0 0 0 0 611 0 -0 0 389 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 81 0 R ->> -endobj -67 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Bold -/FontDescriptor 82 0 R ->> -endobj -68 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Italic -/FontDescriptor 83 0 R ->> -endobj -85 0 obj -<< -/Filter /FlateDecode -/Length 257 ->> -stream -HTKK0T\- -ܫЅluǴlvo$|gr9Cͥf'<^!H6j)jh0ۼ~ӉPM[^7vJ>>Ү}v8=g^Ĉ@O6{IB/p*C#%KKx*2L,T&eKH@OcIfz$L=];-3bxȏ| -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -86 0 obj -<< -/S /D ->> -endobj -87 0 obj -<< -/Nums [0 86 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R 33 0 R 37 0 R 40 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [43 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 69 0 R] -/Count 8 -/Parent 47 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [11 0 R 48 0 R ] -/Count 18 -/MediaBox [0 0 612 792] ->> -endobj -88 0 obj -<< -/CreationDate (D:20210119174409-06'00') -/ModDate (D:20210119174409-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -89 0 obj -<< -/Type /Catalog -/Pages 47 0 R -/PageLabels 87 0 R ->> -endobj -xref -0 90 -0000000000 65535 f -0000142741 00000 n -0000000016 00000 n -0000005431 00000 n -0000138582 00000 n -0000139240 00000 n -0000139787 00000 n -0000140322 00000 n -0000140712 00000 n -0000140880 00000 n -0000095016 00000 n -0000144318 00000 n -0000142822 00000 n -0000005582 00000 n -0000010084 00000 n -0000141203 00000 n -0000082570 00000 n -0000086938 00000 n -0000142906 00000 n -0000010252 00000 n -0000014369 00000 n -0000142990 00000 n -0000014488 00000 n -0000019933 00000 n -0000143074 00000 n -0000020041 00000 n -0000025369 00000 n -0000143158 00000 n -0000025488 00000 n -0000030980 00000 n -0000143242 00000 n -0000031101 00000 n -0000036988 00000 n -0000143326 00000 n -0000037096 00000 n -0000043008 00000 n -0000141671 00000 n -0000143410 00000 n -0000043140 00000 n -0000044257 00000 n -0000143494 00000 n -0000044367 00000 n -0000048738 00000 n -0000143578 00000 n -0000048857 00000 n -0000053406 00000 n -0000090580 00000 n -0000144578 00000 n -0000144455 00000 n -0000143662 00000 n -0000053573 00000 n -0000058560 00000 n -0000143746 00000 n -0000058679 00000 n -0000061694 00000 n -0000143830 00000 n -0000061813 00000 n -0000068389 00000 n -0000143914 00000 n -0000068508 00000 n -0000070552 00000 n -0000143998 00000 n -0000070660 00000 n -0000076657 00000 n -0000144082 00000 n -0000076776 00000 n -0000081919 00000 n -0000142075 00000 n -0000142242 00000 n -0000144166 00000 n -0000082064 00000 n -0000082473 00000 n -0000095157 00000 n -0000095352 00000 n -0000095558 00000 n -0000095763 00000 n -0000095953 00000 n -0000116895 00000 n -0000117090 00000 n -0000117281 00000 n -0000137774 00000 n -0000137965 00000 n -0000138180 00000 n -0000138382 00000 n -0000140464 00000 n -0000142411 00000 n -0000144250 00000 n -0000144278 00000 n -0000144670 00000 n -0000144802 00000 n -trailer -<< -/Size 90 -/Root 89 0 R -/Info 88 0 R -/ID [<96b15a33513b2a3f160ed618761a875f><96b15a33513b2a3f160ed618761a875f>] ->> -startxref -144872 -%%EOF diff --git a/docs/ReleaseNote/SEC7-CLIMPLMNTN.pdf b/docs/ReleaseNote/SEC7-CLIMPLMNTN.pdf deleted file mode 100644 index a832980b..00000000 --- a/docs/ReleaseNote/SEC7-CLIMPLMNTN.pdf +++ /dev/null @@ -1,6451 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5820 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -/TT4 1 Tf -18 0 0 18 413.99 762.97 Tm -[(7.)-8666(CO)]TJ --20.9994 -1 TD -[(MMON LISP)-14332.9(IMPLEMENTATION )]TJ -ET -6 w -258.01 737.99 m -558.01 737.99 l -S -BT -/TT2 1 Tf -10 0 0 10 258 698.2 Tm -0.387 Tw -[(This section describes new features and enhancements that)]TJ -ET -570 716.98 0.99 -22.99 re -f -BT -10 0 0 10 258 686.2 Tm -0.277 Tw -[(implement Common Lisp into the Lisp operating environment)]TJ -ET -570 693.98 0.99 -11.99 re -f -BT -10 0 0 10 258 674.2 Tm -0.351 Tw -[(within the Medley release. This information supplements the )]TJ -ET -570 681.98 0.99 -11.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 662.2 Tm -0.638 Tw -(Common Lisp Implementation Notes, )Tj -/TT2 1 Tf -19.2815 0 TD -(Lyric release. Medley)Tj -ET -570 669.98 0.99 -11.99 re -f -BT -10 0 0 10 258 650.2 Tm -0 Tw -(enhancements are indicated with revision bars in the right margin. )Tj -ET -570 657.98 0.99 -11.99 re -f -2 w -54.01 594.99 m -558.01 594.99 l -S -570 645.98 0.99 -51.99 re -f -BT -/TT4 1 Tf -14 0 0 14 54 581.08 Tm -(New Features Since Lyric)Tj -ET -570 593.98 0.99 -15.99 re -f -1 w -54.01 577.49 m -558.01 577.49 l -S -570 577.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 558.2 Tm -0.443 Tw -(The following description summarizes the new Common Lisp)Tj -ET -570 576.98 0.99 -22.99 re -f -BT -10 0 0 10 258 546.2 Tm -0.0929 Tw -[(implementation features that have been added or changed since)]TJ -ET -570 553.98 0.99 -11.99 re -f -BT -10 0 0 10 258 534.2 Tm -0 Tw -(the Lyric release.)Tj -ET -570 541.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 511.2 Tm -0.255 Tw -(New compiler Interface )Tj -/TT2 1 Tf -11.9911 0 TD -[(-- The Medley compiler gives better)]TJ -ET -570 529.98 0.99 -22.99 re -f -BT -10 0 0 10 258 499.2 Tm -0.14 Tw -(progress reports and it is now possible to invoke the compiler on)Tj -ET -570 506.98 0.99 -11.99 re -f -BT -10 0 0 10 258 487.2 Tm -0 Tw -(any definer \(not just functions, as before\). )Tj -ET -570 494.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 464.2 Tm -0.138 Tw -(New Implementation of Defstruct )Tj -/TT2 1 Tf -16.4426 0 TD -[(-- A new version of defstruct)]TJ -ET -570 482.98 0.99 -22.99 re -f -BT -10 0 0 10 258 452.2 Tm -0.079 Tw -(compiles more compactly and gives more options so that defstruct)Tj -ET -570 459.98 0.99 -11.99 re -f -BT -10 0 0 10 258 440.2 Tm -0 Tw -(has at least as much functionality as the Interlisp record package. )Tj -ET -570 447.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 417.2 Tm -0.46 Tw -(Adoption of features and clarifications suggested by the)Tj -ET -570 435.98 0.99 -22.99 re -f -BT -10 0 0 10 258 405.2 Tm -0.115 Tw -[(Common Lisp Cleanup Committee )]TJ -/TT2 1 Tf -17.4651 0 TD -[(-- Among other changes,)]TJ -ET -570 412.98 0.99 -11.99 re -f -BT -10 0 0 10 258 393.2 Tm -0.039 Tw -[(the behavior of )]TJ -/TT4 1 Tf -7.3274 0 TD -0 Tw -(append )Tj -/TT2 1 Tf -3.8725 0 TD -0.039 Tw -[( on dotted lists is now better defined, and)]TJ -ET -570 400.98 0.99 -11.99 re -f -BT -10 0 0 10 258 381.2 Tm -0 Tw -(a new function )Tj -/TT4 1 Tf -7.0044 0 TD -( xcl:row-major-aref )Tj -/TT2 1 Tf -9.5581 0 TD -(has been added.)Tj -/TT4 1 Tf -7.4512 0 TD -( )Tj -ET -570 388.98 0.99 -11.99 re -f -BT -10 0 0 10 258 358.2 Tm -0.196 Tw -(Common Lisp Veneer on the Interlisp record package )Tj -/TT2 1 Tf -27.2408 0 TD -[( --)]TJ -/TT4 1 Tf -1.1399 0 TD -0 Tw -( )Tj -/TT2 1 Tf -0.4738 0 TD -0.196 Tc -( A)Tj -ET -570 376.98 0.99 -22.99 re -f -BT -10 0 0 10 258 346.2 Tm -0 Tc -0.41 Tw -[(collection of macros that make the use of existing Interlisp)]TJ -ET -570 353.98 0.99 -11.99 re -f -BT -10 0 0 10 258 334.2 Tm -0 Tw -(datatypes more appealing has been added. )Tj -ET -570 341.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 311.2 Tm -0.116 Tw -(Performance enhancements )Tj -/TT2 1 Tf -13.9039 0 TD -[( -- A closure caching scheme now)]TJ -ET -570 329.98 0.99 -22.99 re -f -BT -10 0 0 10 258 299.2 Tm -0.338 Tw -[(insures that repeated calls to symbol-functions of the same)]TJ -ET -570 306.98 0.99 -11.99 re -f -BT -10 0 0 10 258 287.2 Tm -0 Tw -(symbol will return EQ compiled-function objects. )Tj -ET -570 294.98 0.99 -11.99 re -f -BT -10 0 0 10 258 264.2 Tm -0.054 Tw -[(New opcodes have been added for several common list functions,)]TJ -ET -570 282.98 0.99 -22.99 re -f -BT -10 0 0 10 258 252.2 Tm -0 Tw -(such as )Tj -/TT4 1 Tf -3.7241 0 TD -( member )Tj -/TT2 1 Tf -4.4463 0 TD -(and )Tj -/TT4 1 Tf -1.9463 0 TD -(assoc)Tj -/TT2 1 Tf -2.8354 0 TD -(. )Tj -ET -570 259.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 224.64 Tm -(Common Lisp Definers)Tj -ET -570 247.98 0.99 -25.99 re -f -54.01 221.49 m -558.01 221.49 l -S -570 221.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 206.2 Tm -0.171 Tw -[(The Medley release contains a new implementation of definers)]TJ -ET -570 220.98 0.99 -18.99 re -f -BT -10 0 0 10 258 194.2 Tm -0.158 Tw -[(and a reworking of the top level of the XCL Compiler. These)]TJ -ET -570 201.98 0.99 -11.99 re -f -BT -10 0 0 10 258 182.2 Tm -0.394 Tw -(represent upward compatible changes that have the effect of)Tj -ET -570 189.98 0.99 -11.99 re -f -BT -10 0 0 10 258 170.2 Tm -0.184 Tw -(allowing the Common Lisp compiler to print out progress reports)Tj -ET -570 177.98 0.99 -11.99 re -f -BT -10 0 0 10 258 158.2 Tm -0.0001 Tc -0.0039 Tw -(indicating which definer is currently being compiled. To receive the)Tj -ET -570 165.98 0.99 -11.99 re -f -BT -10 0 0 10 258 146.2 Tm -0 Tc -0.226 Tw -[(full benefit of these changes, recompile any file containing a)]TJ -ET -570 153.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 134.2 Tm -0 Tw -(defdefiner)Tj -/TT2 1 Tf -4.834 0 TD -( expression. )Tj -ET -570 141.98 0.99 -11.99 re -f -BT -10 0 0 10 258 115.2 Tm -0.05 Tw -(It is now possible to compile individual definers by using any of the)Tj -ET -570 129.98 0.99 -18.99 re -f -BT -10 0 0 10 258 103.2 Tm -0 Tw -(following forms: )Tj -ET -570 110.98 0.99 -11.99 re -f -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 8275 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-2)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(Compile-Definer)Tj -ET -570 747.98 0.99 -19.99 re -f -54.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 712.2 Tm -(\()Tj -ET -0.75 w -126 709.64 m -129.33 709.64 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 712.2 Tm -(xcl:compile-definer)Tj -ET -129.33 709.64 m -221.02 709.64 l -S -BT -/TT8 1 Tf -10 0 0 10 221.02 712.2 Tm -( )Tj -ET -221.02 709.64 m -223.52 709.64 l -S -BT -/TT10 1 Tf -10 0 0 10 223.52 712.2 Tm -( )Tj -ET -223.52 709.64 m -226.02 709.64 l -S -BT -/TT6 1 Tf -10 0 0 10 226.02 712.2 Tm -(name type)Tj -ET -226.02 709.64 m -272.71 709.64 l -S -BT -/TT2 1 Tf -10 0 0 10 272.71 712.2 Tm -(\))Tj -ET -272.71 709.64 m -276.04 709.64 l -S -BT -10 0 0 10 555.22 712.2 Tm -( )Tj -ET -570 726.98 0.99 -17.34 re -f -BT -10 0 0 10 258 694.85 Tm -(Compile and install the definer of type )Tj -/TT6 1 Tf -17.2876 0 TD -(type)Tj -/TT2 1 Tf -1.8901 0 TD -( named )Tj -/TT6 1 Tf -3.6133 0 TD -( name)Tj -/TT2 1 Tf -2.7793 0 TD -( . )Tj -ET -570 709.63 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 675.85 Tm -(EXAMPLE:)Tj -ET -570 690.63 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 658.14 Tm -(\(xcl:compile-definer foo structures\))Tj -ET -570 671.63 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 639.85 Tm -0.149 Tw -(In this example, the definer will compile and install the structures)Tj -ET -570 654.63 0.99 -18.99 re -f -BT -10 0 0 10 258 627.85 Tm -0 Tw -(definition of foo.)Tj -ET -570 635.63 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 605.85 Tm -(Compile-Form)Tj -ET -570 623.63 0.99 -19.99 re -f -1 w -54.01 603.14 m -558.01 603.14 l -S -570 603.63 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 587.85 Tm -(\()Tj -ET -0.75 w -126 585.29 m -129.33 585.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 587.85 Tm -(xcl:compile-form)Tj -ET -129.33 585.29 m -209.9 585.29 l -S -BT -/TT10 1 Tf -10 0 0 10 209.9 587.85 Tm -( )Tj -ET -209.9 585.29 m -212.4 585.29 l -S -BT -/TT6 1 Tf -10 0 0 10 212.4 587.85 Tm -(form)Tj -ET -212.4 585.29 m -232.4 585.29 l -S -BT -/TT2 1 Tf -10 0 0 10 232.4 587.85 Tm -(\))Tj -ET -232.4 585.29 m -235.73 585.29 l -S -BT -10 0 0 10 555.22 587.85 Tm -( )Tj -ET -570 602.63 0.99 -17.34 re -f -BT -10 0 0 10 258 570.5 Tm -(Compile and evaluate )Tj -/TT6 1 Tf -10.5063 0 TD -(form)Tj -/TT2 1 Tf -2 0 TD -(. )Tj -ET -570 585.28 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 551.5 Tm -(EXAMPLE:)Tj -ET -570 566.28 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 533.79 Tm -(\(xcl:compile-form \(progn \(defconstant c 1\) \(defun foo \(a b\) \(+ c a)Tj -ET -570 547.28 0.99 -16.99 re -f -BT -10 0 0 10 126 523.79 Tm -(b\)\)\)\) )Tj -ET -570 530.28 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 505.5 Tm -0.165 Tw -[(In this example, the definer will compile and evaluate the progn)]TJ -ET -570 520.28 0.99 -18.99 re -f -BT -10 0 0 10 258 493.5 Tm -0 Tw -(using compile-file semantics.)Tj -ET -570 501.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 474.5 Tm -(EXAMPLE:)Tj -ET -570 489.28 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 456.79 Tm -(\(xcl:compile-form \(with-collection \(dotimes \(i 10\) \(collect i\)\)\)\))Tj -ET -570 470.28 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 438.5 Tm -(In this example, the definer returns:)Tj -ET -570 453.28 0.99 -18.99 re -f -BT -/TT14 1 Tf -10 0 0 10 126 419.85 Tm -(\(0 1 2 3 4 5 6 7 8 9\) )Tj -ET -570 434.28 0.99 -35.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 380.5 Tm -(Define-File-Environment)Tj -ET -570 398.28 0.99 -19.99 re -f -1 w -54.01 377.79 m -558.01 377.79 l -S -570 378.28 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 362.5 Tm -0.12 Tw -[(Rather than establishing )]TJ -/TT4 1 Tf -12.2182 0 TD -[( il:makefile-environment )]TJ -/TT2 1 Tf -12.4186 0 TD -[( props and)]TJ -ET -570 377.28 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 350.5 Tm -0 Tw -(il:filetypes)Tj -/TT2 1 Tf -4.9458 0 TD -0.265 Tw -[( on the root name of a file, you can define a file)]TJ -ET -570 358.28 0.99 -11.99 re -f -BT -10 0 0 10 258 338.5 Tm -0 Tw -(environment using the form: )Tj -ET -570 346.28 0.99 -11.99 re -f -BT -10 0 0 10 126 319.5 Tm -(\()Tj -ET -0.75 w -126 316.94 m -129.33 316.94 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 319.5 Tm -(xcl:define-file-environment)Tj -ET -129.33 316.94 m -257.13 316.94 l -S -BT -/TT8 1 Tf -10 0 0 10 257.13 319.5 Tm -( )Tj -ET -257.13 316.94 m -259.63 316.94 l -S -BT -/TT6 1 Tf -10 0 0 10 259.63 319.5 Tm -( filename)Tj -ET -259.63 316.94 m -302.98 316.94 l -S -BT -/TT14 1 Tf -10 0 0 10 302.98 319.5 Tm -( )Tj -ET -302.98 316.94 m -305.48 316.94 l -S -BT -/TT2 1 Tf -10 0 0 10 305.48 319.5 Tm -(&key)Tj -ET -305.48 316.94 m -327.71 316.94 l -S -BT -/TT14 1 Tf -10 0 0 10 327.71 319.5 Tm -( )Tj -ET -327.71 316.94 m -330.21 316.94 l -S -BT -/TT6 1 Tf -10 0 0 10 330.21 319.5 Tm -(readtable package base compiler)Tj -ET -330.21 316.94 m -477.5 316.94 l -S -BT -/TT2 1 Tf -10 0 0 10 477.5 319.5 Tm -(\))Tj -ET -477.5 316.94 m -480.83 316.94 l -S -BT -10 0 0 10 555.22 319.5 Tm -( )Tj -ET -570 334.28 0.99 -17.34 re -f -BT -10 0 0 10 258 302.15 Tm -0.927 Tw -(This produces an object of file-manager type )Tj -/TT4 1 Tf -26.4997 0 TD -0 Tw -(xcl:file-)Tj -ET -570 316.93 0.99 -18.99 re -f -BT -10 0 0 10 258 290.15 Tm -(environment)Tj -/TT2 1 Tf -6.001 0 TD -0.152 Tw -(s. The )Tj -/TT6 1 Tf -3.3606 0 TD -0 Tw -(filename )Tj -/TT2 1 Tf -4.2096 0 TD -0.152 Tw -(can be either a string or a symbol.)Tj -/TT6 1 Tf -16.127 0 TD -0.152 Tc -0 Tw -( )Tj -ET -570 297.93 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 278.15 Tm -0 Tc -0.04 Tw -(The rootname of the file is constructed by interning the )Tj -/TT6 1 Tf -25.1202 0 TD -0 Tw -(filename)Tj -/TT2 1 Tf -3.7798 0 TD -0.04 Tw -[( in)]TJ -ET -570 285.93 0.99 -11.99 re -f -BT -10 0 0 10 258 266.15 Tm -0.154 Tw -(the Interlisp package. Puts the )Tj -/TT6 1 Tf -14.5005 0 TD -0 Tw -(compiler)Tj -/TT2 1 Tf -3.7788 0 TD -0.154 Tw -[( argument \(if any\) under)]TJ -ET -570 273.93 0.99 -11.99 re -f -BT -10 0 0 10 258 254.15 Tm -0 Tw -(the )Tj -/TT4 1 Tf -2.099 0 TD -(il:filetype )Tj -/TT2 1 Tf -5.0985 0 TD -0.431 Tw -(prop of the file rootname. Puts the )Tj -/TT6 1 Tf -18.3593 0 TD -0 Tw -(readtable,)Tj -ET -570 261.93 0.99 -11.99 re -f -BT -10 0 0 10 258 242.15 Tm -(package )Tj -/TT2 1 Tf -4.3516 0 TD -(and)Tj -/TT6 1 Tf -1.6685 0 TD -0.293 Tw -[( base)]TJ -/TT2 1 Tf -3.3101 0 TD -[( arguments \(if any\) under the )]TJ -/TT4 1 Tf -15.4465 0 TD -0 Tw -(il:makefile-)Tj -ET -570 249.93 0.99 -11.99 re -f -BT -10 0 0 10 258 230.15 Tm -(environment )Tj -/TT2 1 Tf -6.3218 0 TD -0.043 Tw -(prop of the file rootname. None of the arguments are)Tj -ET -570 237.93 0.99 -11.99 re -f -BT -10 0 0 10 258 218.15 Tm -0 Tw -(evaluated. There are no defaults.)Tj -ET -570 225.93 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 199.15 Tm -(EXAMPLE:)Tj -ET -570 213.93 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 181.44 Tm -(\(xcl:define-file-environment myfile :package "XCL-USER" :readtable "XCL")Tj -ET -570 194.93 0.99 -16.99 re -f -BT -10 0 0 10 126 171.44 Tm -(:compiler :compile-file\) )Tj -ET -570 177.93 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 153.15 Tm -0.156 Tw -(In this example, )Tj -/TT6 1 Tf -8.1831 0 TD -0 Tw -(compile-file)Tj -/TT2 1 Tf -5.0571 0 TD -0.156 Tw -[( is put under the )]TJ -/TT4 1 Tf -8.2292 0 TD -[( il:filetype)]TJ -/TT2 1 Tf -4.8235 0 TD -[( prop of)]TJ -ET -570 167.93 0.99 -18.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 141.15 Tm -0 Tw -(myfile. )Tj -/TT2 1 Tf -3.203 0 TD -0.036 Tw -[( The )]TJ -/TT6 1 Tf -2.6646 0 TD -0 Tw -(readtable)Tj -/TT2 1 Tf -4.1699 0 TD -0.036 Tw -(, )Tj -/TT6 1 Tf -0.9055 0 TD -0 Tw -(XCL )Tj -/TT2 1 Tf -2.2591 0 TD -(and )Tj -/TT6 1 Tf -1.9823 0 TD -(compile )Tj -/TT2 1 Tf -3.7596 0 TD -0.036 Tw -(arguments are put under)Tj -ET -570 148.93 0.99 -11.99 re -f -BT -10 0 0 10 258 129.15 Tm -0 Tw -(the )Tj -/TT4 1 Tf -1.668 0 TD -( il:makefile-environment)Tj -/TT2 1 Tf -11.5029 0 TD -( prop of )Tj -/TT6 1 Tf -3.9468 0 TD -(myfile. )Tj -ET -570 136.93 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 110.15 Tm -(NOTE:)Tj -/TT6 1 Tf -3.1108 0 TD -0.121 Tc -( )Tj -/TT4 1 Tf -1.1965 0 TD -0 Tc -(xcl:define-file-environment )Tj -/TT2 1 Tf -13.1786 0 TD -0.121 Tw -[( is a definer and hence will)]TJ -ET -570 124.93 0.99 -18.99 re -f -BT -10 0 0 10 258 98.15 Tm -0 Tw -(not be installed if)Tj -/TT4 1 Tf -7.7827 0 TD -( il:dfnflg )Tj -/TT2 1 Tf -4.4985 0 TD -(is )Tj -/TT4 1 Tf -1.2778 0 TD -( il:prop)Tj -/TT2 1 Tf -3.3882 0 TD -( or if a file is prop loaded.)Tj -/TT6 1 Tf -11.4507 0 TD -( )Tj -ET -570 105.93 0.99 -11.99 re -f -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -17 0 obj -<< -/Length 5984 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-3)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(Site-Name Special Uses )Tj -ET -570 747.98 0.99 -19.99 re -f -54.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 712.2 Tm -0.07 Tw -(The following special variables are defined and may be set in your)Tj -ET -570 726.98 0.99 -18.99 re -f -BT -10 0 0 10 258 700.2 Tm -0 Tw -(init file to inform Common Lisp of site information:)Tj -ET -570 707.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 681.2 Tm -(xcl:*short-site-name)Tj -ET -0.75 w -126 678.64 m -222.13 678.64 l -S -BT -/TT8 1 Tf -10 0 0 10 222.13 681.2 Tm -(*)Tj -ET -222.13 678.64 m -227.13 678.64 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 681.2 Tm -( )Tj -ET -570 695.98 0.99 -17.34 re -f -BT -10 0 0 10 258 663.85 Tm -(This variable is used in the function )Tj -/TT4 1 Tf -16.4531 0 TD -(short-site-name.)Tj -ET -570 678.63 0.99 -18.99 re -f -BT -10 0 0 10 126 644.85 Tm -(xcl:*long-site-name)Tj -ET -126 642.29 m -218.24 642.29 l -S -BT -/TT8 1 Tf -10 0 0 10 218.24 644.85 Tm -(*)Tj -ET -218.24 642.29 m -223.24 642.29 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 644.85 Tm -( )Tj -ET -570 659.63 0.99 -17.34 re -f -BT -10 0 0 10 258 627.5 Tm -(This variable is used in the function)Tj -/TT4 1 Tf -16.1753 0 TD -( long-site-name)Tj -/TT2 1 Tf -7.3896 0 TD -(. )Tj -ET -570 642.28 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 608.5 Tm -(EXAMPLES:)Tj -ET -570 623.28 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 590.79 Tm -(\(setq xcl:*short-site-name* "AIS"\) )Tj -ET -570 604.28 0.99 -16.99 re -f -BT -10 0 0 10 126 573.79 Tm -(\(setq xcl:*long-site-name* "Artificial Intelligence Systems"\) )Tj -ET -570 587.28 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 555.5 Tm -0.151 Tw -(In these examples, \(short-site-name\) returns "AIS" and \(long-site-)Tj -ET -570 570.28 0.99 -18.99 re -f -BT -10 0 0 10 258 543.5 Tm -0 Tw -(name\) returns "Artificial Intelligence Systems".)Tj -ET -570 551.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 515.9399 Tm -(Record Access )Tj -ET -570 539.28 0.99 -25.99 re -f -1 w -54.01 512.79 m -558.01 512.79 l -S -570 513.28 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 493.5 Tm -0.32 Tw -[(The Medley release contains several methods for accessing)]TJ -ET -570 512.28 0.99 -22.99 re -f -BT -10 0 0 10 258 481.5 Tm -0.416 Tw -[(existing Interlisp records using Common Lisp syntax. These)]TJ -ET -570 489.28 0.99 -11.99 re -f -BT -10 0 0 10 258 469.5 Tm -0.0001 Tc -0.0039 Tw -(features help to integrate Interlisp and Common Lisp. The following)Tj -ET -570 477.28 0.99 -11.99 re -f -BT -10 0 0 10 258 457.5 Tm -0 Tc -0 Tw -(sections describe these additions. )Tj -ET -570 465.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 435.5 Tm -(Define-Record )Tj -ET -570 453.28 0.99 -19.99 re -f -54.01 432.79 m -558.01 432.79 l -S -570 433.28 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 422.5 Tm -(\()Tj -ET -0.75 w -126 420.29 m -129.33 420.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 422.5 Tm -(xcl:define-record )Tj -ET -129.33 420.29 m -213.24 420.29 l -S -BT -/TT6 1 Tf -10 0 0 10 213.24 422.5 Tm -(name interlisp-record-name)Tj -ET -213.24 420.29 m -335.49 420.29 l -S -570 432.28 0.99 -13.99 re -f -BT -/TT4 1 Tf -10 0 0 10 126 408.5 Tm -(&key)Tj -ET -126 406.29 m -149.9 406.29 l -S -BT -/TT2 1 Tf -10 0 0 10 149.9 408.5 Tm -( )Tj -ET -149.9 406.29 m -152.68 406.29 l -S -BT -/TT6 1 Tf -10 0 0 10 152.68 408.5 Tm -(conc-name constructor predicate fast-accessors)Tj -ET -152.68 406.29 m -365.53 406.29 l -S -BT -/TT2 1 Tf -10 0 0 10 365.53 408.5 Tm -[(\))-15135([Definer])]TJ -ET -365.53 406.29 m -558 406.29 l -S -570 418.28 0.99 -13.99 re -f -BT -10 0 0 10 258 389.5 Tm -0.394 Tw -(Creates a structures object named by the symbol )Tj -/TT6 1 Tf -25.1623 0 TD -0 Tw -(name)Tj -/TT2 1 Tf -2.5015 0 TD -0.394 Tw -[( that)]TJ -ET -570 404.28 0.99 -18.99 re -f -BT -10 0 0 10 258 377.5 Tm -0.721 Tw -(provides Common Lisp accessors, settors, predicates and)Tj -ET -570 385.28 0.99 -11.99 re -f -BT -10 0 0 10 258 365.5 Tm -0.079 Tw -(constructors for the Interlisp record named by the symbol )Tj -/TT6 1 Tf -26.2222 0 TD -0 Tw -(interlisp-)Tj -ET -570 373.28 0.99 -11.99 re -f -BT -10 0 0 10 258 353.5 Tm -(record-name)Tj -/TT2 1 Tf -5.6689 0 TD -0.374 Tw -(. The Interlisp record must be defined before the)Tj -ET -570 361.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 341.5 Tm -0 Tw -(xcl:define-record)Tj -/TT14 1 Tf -8.113 0 TD -( )Tj -/TT2 1 Tf -1.151 0 TD -1.002 Tw -(expression is evaluated. The keyword)Tj -ET -570 349.28 0.99 -12.34 re -f -BT -10 0 0 10 258 329.15 Tm -0.085 Tw -(arguments are treated as in defstruct. The package of constructed)Tj -ET -570 336.93 0.99 -11.99 re -f -BT -10 0 0 10 258 317.15 Tm -0.403 Tw -(names is taken from the value of *)Tj -/TT4 1 Tf -17.9397 0 TD -0 Tw -(package)Tj -/TT2 1 Tf -4.0024 0 TD -0.403 Tw -(* at the time of)Tj -ET -570 324.93 0.99 -11.99 re -f -BT -10 0 0 10 258 305.15 Tm -0.152 Tw -(evaluation \(as in defstruct\).)Tj -/TT14 1 Tf -12.4619 0 TD -0 Tw -( )Tj -/TT2 1 Tf -0.386 0 TD -0.152 Tw -[( The system contains no predeclared)]TJ -ET -570 312.93 0.99 -12.34 re -f -BT -/TT4 1 Tf -10 0 0 10 258 292.8 Tm -0 Tw -(define-record)Tj -/TT2 1 Tf -6.3901 0 TD -(s)Tj -/TT14 1 Tf -0.5 0 TD -(. )Tj -ET -570 300.58 0.99 -12.34 re -f -BT -/TT4 1 Tf -10 0 0 10 258 273.45 Tm -(EXAMPLE:)Tj -ET -570 288.23 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 254.45 Tm -(The )Tj -/TT12 1 Tf -2.2788 0 TD -[(form:)-3120.7( )]TJ -ET -570 269.23 0.99 -20.28 re -f -BT -10 0 0 10 126 235.45 Tm -[(\(xcl:define-record menu il:menu\))-23396.9( )]TJ -ET -570 248.94 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 217.16 Tm -(allows you to write:)Tj -ET -570 231.94 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 199.45 Tm -(\(menu-items foo\) and \(setf \(menu-items foo\) fie\))Tj -ET -570 212.94 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 181.16 Tm -(rather than: )Tj -ET -570 195.94 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 163.45 Tm -(\(il:fetch \(il:menu il:items\) il:of foo\) )Tj -ET -570 176.94 0.99 -16.99 re -f -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -20 0 obj -<< -/Length 10365 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-4)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(Record-Fetch)Tj -ET -570 747.98 0.99 -19.99 re -f -54.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 712.2 Tm -(\()Tj -ET -0.75 w -126 709.64 m -129.33 709.64 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 712.2 Tm -(xcl:record-fetch)Tj -ET -129.33 709.64 m -204.9 709.64 l -S -BT -/TT10 1 Tf -10 0 0 10 204.9 712.2 Tm -( )Tj -ET -204.9 709.64 m -207.4 709.64 l -S -BT -/TT6 1 Tf -10 0 0 10 207.4 712.2 Tm -(record field object)Tj -ET -207.4 709.64 m -286.32 709.64 l -S -BT -/TT2 1 Tf -10 0 0 10 286.32 712.2 Tm -[(\))-23223([Macro])]TJ -ET -286.32 709.64 m -555.22 709.64 l -S -BT -10 0 0 10 555.22 712.2 Tm -( )Tj -ET -570 726.98 0.99 -17.34 re -f -BT -10 0 0 10 258 694.85 Tm -(Evaluates )Tj -/TT6 1 Tf -4.6744 0 TD -(object)Tj -/TT2 1 Tf -2.6685 0 TD -0.0002 Tc -0.0048 Tw -(. Does not evaluate )Tj -/TT6 1 Tf -9.1974 0 TD -0 Tc -0 Tw -(record)Tj -/TT2 1 Tf -2.8345 0 TD -0.0013 Tc -0.0037 Tw -( and)Tj -/TT10 1 Tf -1.9513 0 TD -0 Tc -0 Tw -( )Tj -/TT6 1 Tf -0.255 0 TD -0.005 Tw -(field. )Tj -/TT2 1 Tf -2.678 0 TD -0.0014 Tc -0.0036 Tw -( Both )Tj -/TT6 1 Tf -2.9056 0 TD -0 Tc -0 Tw -(record)Tj -ET -570 709.63 0.99 -19.34 re -f -BT -/TT2 1 Tf -10 0 0 10 258 682.5 Tm -0.068 Tw -(and )Tj -/TT6 1 Tf -2.3601 0 TD -0 Tw -(field)Tj -/TT2 1 Tf -1.8345 0 TD -0.068 Tw -[( must be symbols. Symbols with the same p-names are)]TJ -ET -570 690.28 0.99 -11.99 re -f -BT -10 0 0 10 258 670.5 Tm -0.287 Tw -(interned in the Interlisp package and are used to construct an)Tj -ET -570 678.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 658.5 Tm -0 Tw -(il:fetch)Tj -/TT2 1 Tf -3.2778 0 TD -0.371 Tw -[( form. )]TJ -/TT4 1 Tf -4.2243 0 TD -0 Tw -(xcl:record-fetch )Tj -/TT2 1 Tf -8.2064 0 TD -0.371 Tw -[( may be used with )]TJ -/TT4 1 Tf -10.1924 0 TD -0 Tw -(setf )Tj -/TT2 1 Tf -2.4272 0 TD -(and)Tj -ET -570 666.28 0.99 -11.99 re -f -BT -10 0 0 10 258 646.5 Tm -(expands to the suitable replace form. )Tj -ET -570 654.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 624.5 Tm -(Record-FFetch)Tj -ET -570 642.28 0.99 -19.99 re -f -1 w -54.01 621.79 m -558.01 621.79 l -S -570 622.28 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 606.5 Tm -(\()Tj -ET -0.75 w -126 603.94 m -129.33 603.94 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 606.5 Tm -(xcl:record-ffetch)Tj -ET -129.33 603.94 m -208.23 603.94 l -S -BT -/TT10 1 Tf -10 0 0 10 208.23 606.5 Tm -( )Tj -ET -208.23 603.94 m -210.73 603.94 l -S -BT -/TT6 1 Tf -10 0 0 10 210.73 606.5 Tm -(record field object)Tj -ET -210.73 603.94 m -289.65 603.94 l -S -BT -/TT2 1 Tf -10 0 0 10 289.65 606.5 Tm -[(\))-22890([Macro] )]TJ -ET -289.65 603.94 m -558 603.94 l -S -570 621.28 0.99 -17.34 re -f -BT -10 0 0 10 258 589.15 Tm -0.339 Tw -(Similar to)Tj -/TT4 1 Tf -4.5065 0 TD -[( xcl:record-fetch)]TJ -/TT2 1 Tf -8.1744 0 TD -(, but an)Tj -/TT4 1 Tf -4.0139 0 TD -[( il:ffetch)]TJ -/TT2 1 Tf -4.2277 0 TD -[( form is generated)]TJ -ET -570 603.93 0.99 -18.99 re -f -BT -10 0 0 10 258 577.15 Tm -0.113 Tw -(instead. Evaluates )Tj -/TT10 1 Tf -8.6757 0 TD -0 Tw -( )Tj -/TT6 1 Tf -0.352 0 TD -0.113 Tw -(object. )Tj -/TT2 1 Tf -3.728 0 TD -(Does not evaluate )Tj -/TT6 1 Tf -8.6779 0 TD -(record )Tj -/TT2 1 Tf -3.6161 0 TD -0 Tw -(and )Tj -/TT6 1 Tf -2.0593 0 TD -0.113 Tw -[( field )]TJ -/TT2 1 Tf -2.6161 0 TD -0 Tw -(.)Tj -ET -570 584.93 0.99 -12.34 re -f -BT -10 0 0 10 258 564.8 Tm -(Both )Tj -/TT6 1 Tf -2.386 0 TD -0.051 Tw -(record )Tj -/TT2 1 Tf -3.4921 0 TD -0 Tw -(and )Tj -/TT6 1 Tf -1.9973 0 TD -0.051 Tw -[( field )]TJ -/TT2 1 Tf -2.4921 0 TD -[( must be symbols. Symbols with the same)]TJ -ET -570 572.58 0.99 -11.99 re -f -BT -10 0 0 10 258 552.8 Tm -0.271 Tw -(p-names are interned in the Interlisp package and are used to)Tj -ET -570 560.58 0.99 -11.99 re -f -BT -10 0 0 10 258 540.8 Tm -0.247 Tw -(construct an)Tj -/TT4 1 Tf -5.6943 0 TD -[( il:ffetch)]TJ -/TT2 1 Tf -4.1357 0 TD -[( form. Ffetch may be used with )]TJ -/TT4 1 Tf -16.2035 0 TD -0 Tw -(setf )Tj -/TT2 1 Tf -2.3032 0 TD -(and)Tj -ET -570 548.58 0.99 -11.99 re -f -BT -10 0 0 10 258 528.8 Tm -(expands to the suitable freplace form. )Tj -ET -570 536.58 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 506.8 Tm -(Record-Create)Tj -ET -570 524.58 0.99 -19.99 re -f -1 w -54.01 504.09 m -558.01 504.09 l -S -570 504.58 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 488.8 Tm -(\()Tj -ET -0.75 w -126 486.24 m -129.33 486.24 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 488.8 Tm -(xcl:record-create)Tj -ET -129.33 486.24 m -210.47 486.24 l -S -BT -/TT8 1 Tf -10 0 0 10 210.47 488.8 Tm -( )Tj -ET -210.47 486.24 m -212.97 486.24 l -S -BT -/TT6 1 Tf -10 0 0 10 212.97 488.8 Tm -(record)Tj -ET -212.97 486.24 m -241.31 486.24 l -S -BT -/TT10 1 Tf -10 0 0 10 241.31 488.8 Tm -( )Tj -ET -241.31 486.24 m -243.81 486.24 l -S -BT -/TT2 1 Tf -10 0 0 10 243.81 488.8 Tm -(&rest)Tj -ET -243.81 486.24 m -267.15 486.24 l -S -BT -/TT14 1 Tf -10 0 0 10 267.15 488.8 Tm -( )Tj -ET -267.15 486.24 m -269.65 486.24 l -S -BT -/TT6 1 Tf -10 0 0 10 269.65 488.8 Tm -(keyword-pairs)Tj -ET -269.65 486.24 m -331.88 486.24 l -S -BT -/TT2 1 Tf -10 0 0 10 331.88 488.8 Tm -[(\))-18667([Macro] )]TJ -ET -331.88 486.24 m -558 486.24 l -S -570 503.58 0.99 -17.34 re -f -BT -10 0 0 10 258 471.45 Tm -0.138 Tw -[(Evaluates the second element of each pair. Does not evaluate)]TJ -ET -570 486.23 0.99 -18.99 re -f -BT -/TT6 1 Tf -10 0 0 10 258 459.45 Tm -0.154 Tw -(record \(record )Tj -/TT2 1 Tf -6.8656 0 TD -[(must be a symbol\) . A symbol with the same p-)]TJ -ET -570 467.23 0.99 -11.99 re -f -BT -10 0 0 10 258 447.45 Tm -0.074 Tw -(name is interned in the Interlisp package and used to construct an)Tj -ET -570 455.23 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 435.45 Tm -0 Tw -(il:create )Tj -/TT2 1 Tf -4.1683 0 TD -0.055 Tw -[(form. The rest of the arguments form keyword pairs. The)]TJ -ET -570 443.23 0.99 -11.99 re -f -BT -10 0 0 10 258 423.45 Tm -0.129 Tw -(first element of each pair should be a symbol such that a symbol)Tj -ET -570 431.23 0.99 -11.99 re -f -BT -10 0 0 10 258 411.45 Tm -0.154 Tw -(with the same p-name exists in the Interlisp package and names)Tj -ET -570 419.23 0.99 -11.99 re -f -BT -10 0 0 10 258 399.45 Tm -0.179 Tw -(either a valid slot for this record or is one of )Tj -/TT4 1 Tf -21.3669 0 TD -[(:using, :copying,)]TJ -ET -570 407.23 0.99 -11.99 re -f -BT -10 0 0 10 258 387.45 Tm -0 Tw -(:reusing)Tj -/TT2 1 Tf -3.9448 0 TD -(, or )Tj -/TT4 1 Tf -2.0005 0 TD -(:smashing)Tj -/TT2 1 Tf -5.001 0 TD -(. )Tj -ET -570 395.23 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 365.45 Tm --0.0001 Tc -0.0001 Tw -( Array Reference )Tj -ET -570 383.23 0.99 -19.99 re -f -1 w -54.01 362.74 m -558.01 362.74 l -S -570 363.23 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 347.45 Tm -0 Tc -0 Tw -(\()Tj -ET -0.75 w -126 344.89 m -129.33 344.89 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 347.45 Tm -(xcl:row-major-aref)Tj -ET -129.33 344.89 m -216.57 344.89 l -S -BT -/TT8 1 Tf -10 0 0 10 216.57 347.45 Tm -( )Tj -ET -216.57 344.89 m -219.07 344.89 l -S -BT -/TT6 1 Tf -10 0 0 10 219.07 347.45 Tm -(array index)Tj -ET -219.07 344.89 m -268.53 344.89 l -S -BT -/TT2 1 Tf -10 0 0 10 268.53 347.45 Tm -[(\))-23945([Function] )]TJ -ET -268.53 344.89 m -558 344.89 l -S -570 362.23 0.99 -17.34 re -f -BT -10 0 0 10 54 330.1 Tm -[( )-7897.6(Returns )-141(the )-141(element )-141(of )]TJ -/TT6 1 Tf -31.3585 0 TD -(array)Tj -/TT2 1 Tf -2.2783 0 TD -0.141 Tw -[( given by the row-major-index )]TJ -/TT6 1 Tf -14.0995 0 TD -0 Tw -(index)Tj -/TT2 1 Tf -2.3906 0 TD -(.)Tj -ET -570 344.88 0.99 -19.34 re -f -BT -10 0 0 10 258 317.75 Tm -0.13 Tw -[(The array can be of any dimension. This function can be used)]TJ -ET -570 325.53 0.99 -11.99 re -f -BT -10 0 0 10 258 305.75 Tm -0 Tw -(with )Tj -/TT4 1 Tf -2.0562 0 TD -(setf )Tj -/TT2 1 Tf -2.0562 0 TD -(. )Tj -ET -570 313.53 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 283.75 Tm -0.0001 Tc --0.0001 Tw -( Shadowing of Global Macros )Tj -ET -570 301.53 0.99 -19.99 re -f -1 w -54.01 281.04 m -558.01 281.04 l -S -570 281.53 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 54 265.75 Tm -0 Tc -0 Tw -[( )-7897.6(The )-360(XCL )-360(Compiler )-360(now )-360(properly )-360(handles )-360(shadowing )-360(of )-360(global)]TJ -ET -570 280.53 0.99 -19.34 re -f -BT -10 0 0 10 258 253.4 Tm -0.014 Tw -[(macros by lexical functions. In the Lyric Compiler, lexical functions)]TJ -ET -570 261.18 0.99 -11.99 re -f -BT -10 0 0 10 258 241.4 Tm -0.265 Tw -(defined with )Tj -/TT4 1 Tf -6.144 0 TD -0 Tw -(flet )Tj -/TT2 1 Tf -2.0428 0 TD -0.265 Tw -(did not shadow global definitions of the same)Tj -ET -570 249.18 0.99 -11.99 re -f -BT -10 0 0 10 258 229.4 Tm -0 Tw -(name. This has been fixed in Medley. )Tj -ET -570 237.18 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 207.4 Tm -( Evaluating Load-time Expressions )Tj -ET -570 225.18 0.99 -19.99 re -f -54.01 204.69 m -558.01 204.69 l -S -570 205.18 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 54 189.4 Tm -[( )-7341.9(The )-351(XCL )-351(Compiler )-351(now )-351(handles)]TJ -/TT4 1 Tf -35.9222 0 TD --0.0001 Tc -0.3511 Tw -[( il:loadtimeconstant )]TJ -/TT2 1 Tf -10.4235 0 TD -0 Tc -0 Tw -(correctly.)Tj -ET -570 204.18 0.99 -19.34 re -f -BT -10 0 0 10 258 177.05 Tm -0.344 Tw -[(The new Compiler substitutes the entire expression for each)]TJ -ET -570 184.83 0.99 -11.99 re -f -BT -10 0 0 10 258 165.05 Tm -0.064 Tw -[(reference to the value of a load-time constant. There are potential)]TJ -ET -570 172.83 0.99 -11.99 re -f -BT -10 0 0 10 258 153.05 Tm -0.153 Tw -(problems if the code depends on the expression being evaluated)Tj -ET -570 160.83 0.99 -11.99 re -f -BT -10 0 0 10 258 141.05 Tm -0 Tw -(exactly once, e.g. if it contains \(IDATE\). )Tj -ET -570 148.83 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 113.49 Tm -(Common Lisp Defstruct Options)Tj -ET -570 136.83 0.99 -25.99 re -f -54.01 110.34 m -558.01 110.34 l -S -570 110.83 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 95.05 Tm -0.193 Tw -(The Medley release contains a new implementation of)Tj -/TT4 1 Tf -25.2529 0 TD -[( defstruct)]TJ -ET -570 109.83 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 83.05 Tm -0.3 Tw -(that offers greater compiled-code compaction, and several new)Tj -ET -570 90.83 0.99 -11.99 re -f -BT -10 0 0 10 258 71.05 Tm -0.673 Tw -[(extensions that increase efficiency. This implementation)]TJ -ET -570 78.83 0.99 -11.99 re -f -BT -10 0 0 10 258 59.05 Tm -0.026 Tw -(introduces functionality that allows)Tj -/TT4 1 Tf -15.2528 0 TD -0.0244 Tw -[( defstruct )]TJ -/TT2 1 Tf -4.8843 0 TD -0.026 Tw -(to parallel the Interlisp)Tj -ET -570 66.83 0.99 -11.99 re -f -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -23 0 obj -<< -/Length 6512 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-5)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.19 Tw -(record module in flexibility. These features also help to integrate)Tj -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.073 Tw -[(Interlisp and Common Lisp. The following sections describe these)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0 Tw -(additions. )Tj -ET -570 713.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 684.2 Tm -(Defstruct Options)Tj -ET -570 701.98 0.99 -19.99 re -f -54.01 681.49 m -558.01 681.49 l -S -570 681.98 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 126 666.2 Tm -(:)Tj -ET -0.75 w -126 663.64 m -129.33 663.64 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 666.2 Tm -(inline)Tj -ET -129.33 663.64 m -155.45 663.64 l -S -BT -/TT8 1 Tf -10 0 0 10 155.45 666.2 Tm -( )Tj -ET -155.45 663.64 m -157.95 663.64 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 666.2 Tm -( )Tj -ET -570 680.98 0.99 -17.34 re -f -BT -10 0 0 10 258 648.85 Tm -0.244 Tw -[(Can be one or both of :accessor and :predicate or t, implying)]TJ -ET -570 663.63 0.99 -18.99 re -f -BT -10 0 0 10 258 636.85 Tm -0.098 Tw -[(\(:accessor :predicate\) or nil, implying no optimizations allowed or)]TJ -ET -570 644.63 0.99 -11.99 re -f -BT -10 0 0 10 258 624.85 Tm -0.182 Tw -(:only, implying all accessors and the predicate will be inline only)Tj -ET -570 632.63 0.99 -11.99 re -f -BT -10 0 0 10 258 612.85 Tm -0.191 Tw -(and not funcallable \(not usable with the Lisp primitive ")Tj -/TT4 1 Tf -25.8098 0 TD -0 Tw -(funcall)Tj -/TT2 1 Tf -3.2227 0 TD -("\).)Tj -ET -570 620.63 0.99 -11.99 re -f -BT -10 0 0 10 258 600.85 Tm -(The default is \(:accessor :predicate\). )Tj -ET -570 608.63 0.99 -11.99 re -f -BT -10 0 0 10 258 581.85 Tm -0.06 Tw -(Copiers and constructors are never inline. The option \(:inline :only\))Tj -ET -570 596.63 0.99 -18.99 re -f -BT -10 0 0 10 258 569.85 Tm -0.172 Tw -(implies that no funcallable accessors will be generated \(similarly,)Tj -ET -570 577.63 0.99 -11.99 re -f -BT -10 0 0 10 258 557.85 Tm -0 Tw -(the predicate, if any, will not be funcallable\).)Tj -ET -570 565.63 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 126 538.85 Tm -(:)Tj -ET -126 536.29 m -129.33 536.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 538.85 Tm -(fast-accessors)Tj -ET -129.33 536.29 m -199.36 536.29 l -S -BT -/TT8 1 Tf -10 0 0 10 199.36 538.85 Tm -( )Tj -ET -199.36 536.29 m -201.86 536.29 l -S -BT -/TT2 1 Tf -10 0 0 10 555.22 538.85 Tm -( )Tj -ET -570 553.63 0.99 -17.34 re -f -BT -10 0 0 10 258 521.5 Tm -0.041 Tw -[(Can be t or nil. t implies inline accessors will not type check. The)]TJ -ET -570 536.28 0.99 -18.99 re -f -BT -10 0 0 10 258 509.5 Tm -0 Tw -(default is nil. )Tj -ET -570 517.28 0.99 -11.99 re -f -BT -10 0 0 10 258 490.5 Tm -0.338 Tw -(Note that funcallable accessors \(if any\), always type check, if)Tj -ET -570 505.28 0.99 -18.99 re -f -BT -10 0 0 10 258 478.5 Tm -0 Tw -(possible. )Tj -ET -570 486.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 459.5 Tm -(NOTE:)Tj -/TT6 1 Tf -3.1108 0 TD -0.075 Tc -( )Tj -/TT2 1 Tf -1.0585 0 TD -0 Tc -0.075 Tw -[( This represents a change from the Lyric implementation,)]TJ -ET -570 474.28 0.99 -18.99 re -f -BT -10 0 0 10 258 447.5 Tm -0.095 Tw -[(which allowed specification of a list of slot names that had fast)]TJ -ET -570 455.28 0.99 -11.99 re -f -BT -10 0 0 10 258 435.5 Tm -0 Tw -(inline accessors.)Tj -ET -570 443.28 0.99 -11.99 re -f -BT -/TT8 1 Tf -10 0 0 10 126 416.5 Tm -(:)Tj -ET -126 413.94 m -129.33 413.94 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 416.5 Tm -(template)Tj -ET -129.33 413.94 m -170.45 413.94 l -S -BT -/TT8 1 Tf -10 0 0 10 170.45 416.5 Tm -( )Tj -/TT2 1 Tf -38.477 0 TD -( )Tj -ET -570 431.28 0.99 -17.34 re -f -BT -10 0 0 10 258 399.15 Tm -0.238 Tw -[(Can be t or nil, t implies that no datatype will be instantiated.)]TJ -ET -570 413.93 0.99 -18.99 re -f -BT -10 0 0 10 258 387.15 Tm -[(\(:template t\) implies no :type option. The default is nil. )]TJ -ET -570 394.93 0.99 -11.99 re -f -BT -10 0 0 10 258 368.15 Tm -0.049 Tw -[(Templated defstructs have no predicates, copiers or constructs. It)]TJ -ET -570 382.93 0.99 -18.99 re -f -BT -10 0 0 10 258 356.15 Tm -0.039 Tw -(is an error to supply any such option in combination with \(:template)Tj -ET -570 363.93 0.99 -11.99 re -f -BT -10 0 0 10 258 344.15 Tm -0.538 Tw -[(t\). Templated defstructs are intended to be used as are)]TJ -ET -570 351.93 0.99 -11.99 re -f -BT -10 0 0 10 258 332.15 Tm -0.104 Tw -[(IL:blockrecords. It is possible for a templated defstruct to include)]TJ -ET -570 339.93 0.99 -11.99 re -f -BT -10 0 0 10 258 320.15 Tm -0.382 Tw -(another templated structure, but it is an error for a standard)Tj -ET -570 327.93 0.99 -11.99 re -f -BT -10 0 0 10 258 308.15 Tm -0 Tw -(defstruct to include a templated structure.)Tj -ET -570 315.93 0.99 -11.99 re -f -BT -10 0 0 10 258 289.15 Tm -0.135 Tw -(Funcallable accessors \(accessors that may be used with the Lisp)Tj -ET -570 303.93 0.99 -18.99 re -f -BT -10 0 0 10 258 277.15 Tm -0.173 Tw -[(primative "funcall"\) share code with suitable closure templates if)]TJ -ET -570 284.93 0.99 -11.99 re -f -BT -10 0 0 10 258 265.15 Tm -0.08 Tw -[(the defstruct is compiled with the XCL Compiler. Byte compiled)]TJ -ET -570 272.93 0.99 -11.99 re -f -BT -10 0 0 10 258 253.15 Tm -0 Tw -(defstructs still generate explicit defuns for all funcallable accessors. )Tj -ET -570 260.93 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 231.15 Tm -(Defstruct Slot Options)Tj -ET -570 248.93 0.99 -19.99 re -f -1 w -54.01 228.44 m -558.01 228.44 l -S -570 228.93 0.99 -0.99 re -f -BT -/TT8 1 Tf -10 0 0 10 126 213.15 Tm -(:)Tj -ET -0.75 w -126 210.59 m -129.33 210.59 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 213.15 Tm -(type)Tj -ET -129.33 210.59 m -149.89 210.59 l -S -BT -/TT8 1 Tf -10 0 0 10 149.89 213.15 Tm -( )Tj -/TT2 1 Tf -40.533 0 TD -( )Tj -ET -570 227.93 0.99 -17.34 re -f -BT -10 0 0 10 258 195.8 Tm -(The following specialized types are recognized)Tj -/TT14 1 Tf -20.6782 0 TD -(:)Tj -ET -570 210.58 0.99 -19.34 re -f -BT -/TT2 1 Tf -10 0 0 10 306 176.45 Tm -(\(unsigned-byte {1 - 16}\))Tj -ET -570 191.23 0.99 -19.34 re -f -BT -10 0 0 10 306 157.1 Tm -(\(signed-byte {16, 32}\))Tj -ET -570 171.88 0.99 -18.99 re -f -BT -10 0 0 10 306 138.1 Tm -(float, etc.)Tj -ET -570 152.88 0.99 -18.99 re -f -BT -10 0 0 10 306 119.1 Tm -(\(member t nil\))Tj -ET -570 133.88 0.99 -18.99 re -f -BT -10 0 0 10 306 100.1 Tm -(il:fullpointer)Tj -ET -570 114.88 0.99 -18.99 re -f -BT -10 0 0 10 306 81.1 Tm -(il:xpointer)Tj -ET -570 95.88 0.99 -18.99 re -f -BT -10 0 0 10 306 62.1 Tm -(il:fullxpointer)Tj -ET -570 76.88 0.99 -18.99 re -f -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -26 0 obj -<< -/Length 6221 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-6)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -570 744.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 708.2 Tm -(Warning When Using Defstruct )Tj -ET -570 725.98 0.99 -19.99 re -f -54.01 705.49 m -558.01 705.49 l -S -570 705.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 690.2 Tm -0.157 Tw -(Defstruct automatically generates a number of auxilliary functions)Tj -ET -570 704.98 0.99 -18.99 re -f -BT -10 0 0 10 258 678.2 Tm -0.13 Tw -(without checking whether redefining those functions will affect the)Tj -ET -570 685.98 0.99 -11.99 re -f -BT -10 0 0 10 258 666.2 Tm -0.059 Tw -[(system. To avoid redefining key functions, you should be aware)]TJ -ET -570 673.98 0.99 -11.99 re -f -BT -10 0 0 10 258 654.2 Tm -0 Tw -(of the names that will be used. For example:)Tj -ET -570 661.98 0.99 -11.99 re -f -BT -10 0 0 10 258 635.2 Tm -0.144 Tw -[(Do not attempt to define a Structure named TREE. This use of)]TJ -ET -570 649.98 0.99 -18.99 re -f -BT -10 0 0 10 258 623.2 Tm -0.348 Tw -(Defstruct implicitly redefines the built-in Common Lisp function)Tj -ET -570 630.98 0.99 -11.99 re -f -BT -10 0 0 10 258 611.2 Tm -0 Tw -(COPY-TREE, which renders your system inoperable. )Tj -ET -570 618.98 0.99 -11.99 re -f -BT -10 0 0 10 258 592.2 Tm -0.231 Tw -(If you have already tried to define a \(DEFSTRUCT TREE A B\))Tj -ET -570 606.98 0.99 -18.99 re -f -BT -10 0 0 10 258 580.2 Tm -0 Tw -(structure by mistake, you will need to reload your system. )Tj -ET -570 587.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 552.64 Tm -(Macros for Collecting Objects)Tj -ET -570 575.98 0.99 -25.99 re -f -54.01 549.49 m -558.01 549.49 l -S -BT -10 0 0 10 54 531.2 Tm -(xcl:with -collection )Tj -ET -570 548.98 0.99 -19.99 re -f -54.01 528.49 m -558.01 528.49 l -S -570 528.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 513.2 Tm -(\()Tj -ET -0.75 w -126 510.64 m -129.33 510.64 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 513.2 Tm -(xcl:with-collection &body)Tj -ET -129.33 510.64 m -250.46 510.64 l -S -BT -/TT8 1 Tf -10 0 0 10 250.46 513.2 Tm -( )Tj -ET -250.46 510.64 m -252.96 510.64 l -S -BT -/TT6 1 Tf -10 0 0 10 252.96 513.2 Tm -(forms)Tj -ET -252.96 510.64 m -277.96 510.64 l -S -BT -/TT2 1 Tf -10 0 0 10 277.96 513.2 Tm -[(\))-24059([Macro] )]TJ -ET -277.96 510.64 m -558 510.64 l -S -570 527.98 0.99 -17.34 re -f -BT -10 0 0 10 126 495.85 Tm -(\()Tj -ET -126 493.29 m -129.33 493.29 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 495.85 Tm -(xcl:collect)Tj -ET -129.33 493.29 m -178.24 493.29 l -S -BT -/TT8 1 Tf -10 0 0 10 178.24 495.85 Tm -( )Tj -ET -178.24 493.29 m -180.74 493.29 l -S -BT -/TT6 1 Tf -10 0 0 10 180.74 495.85 Tm -(form)Tj -ET -180.74 493.29 m -200.74 493.29 l -S -BT -/TT2 1 Tf -10 0 0 10 200.74 495.85 Tm -[(\))-31781([Macro] )]TJ -ET -200.74 493.29 m -558 493.29 l -S -570 510.63 0.99 -17.34 re -f -BT -10 0 0 10 258 478.5 Tm -0.071 Tw -(This pair of macros is provided for efficiently collecting objects into)Tj -ET -570 493.28 0.99 -18.99 re -f -BT -10 0 0 10 258 466.5 Tm -0.068 Tw -(a list. In Common Lisp, there is no direct facility provided for doing)Tj -ET -570 474.28 0.99 -11.99 re -f -BT -10 0 0 10 258 454.5 Tm -0.067 Tw -(this, so one must either push objects onto a list, then reverse it, or)Tj -ET -570 462.28 0.99 -11.99 re -f -BT -10 0 0 10 258 442.5 Tm -0.076 Tw -(maintain a tail pointer to the list and use)Tj -/TT4 1 Tf -18.2296 0 TD -[( rplacd )]TJ -/TT2 1 Tf -3.7086 0 TD -(to add new items.)Tj -ET -570 450.28 0.99 -11.99 re -f -BT -10 0 0 10 258 430.5 Tm -0.116 Tw -(The latter has an efficient implementation in Xerox Common Lisp,)Tj -ET -570 438.28 0.99 -11.99 re -f -BT -10 0 0 10 258 418.5 Tm -0 Tw -(and )Tj -/TT4 1 Tf -1.9463 0 TD -(xcl:with-collection )Tj -/TT2 1 Tf -9.001 0 TD -(is provided to take advantage of it.)Tj -ET -570 426.28 0.99 -11.99 re -f -BT -10 0 0 10 258 399.5 Tm -0.339 Tw -(Lexically within the body of an)Tj -/TT4 1 Tf -14.9806 0 TD -[( xcl:with-collection)]TJ -/TT2 1 Tf -9.34 0 TD -(, the macro)Tj -ET -570 414.28 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 387.5 Tm -0 Tw -(xcl:collect)Tj -/TT2 1 Tf -4.8911 0 TD -0.013 Tw -[( is defined. It will append the value of its argument to the)]TJ -ET -570 395.28 0.99 -11.99 re -f -BT -10 0 0 10 258 375.5 Tm -0.104 Tw -(end of the list being collected. The value of )Tj -/TT4 1 Tf -20.1704 0 TD -0 Tw -(xcl:with-collection )Tj -/TT2 1 Tf -9.105 0 TD -(is)Tj -ET -570 383.28 0.99 -11.99 re -f -BT -10 0 0 10 258 363.5 Tm -(the collected list.)Tj -ET -570 371.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 344.5 Tm -(xcl:collect )Tj -/TT2 1 Tf -5.2789 0 TD -0.11 Tw -(may be used inside of functions passed as arguments)Tj -ET -570 359.28 0.99 -18.99 re -f -BT -10 0 0 10 258 332.5 Tm -0 Tw -(to other functions. )Tj -ET -570 340.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 313.5 Tm -(EXAMPLE:)Tj -ET -570 328.28 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 302.79 Tm -(\(xcl:with-collection )Tj -ET -570 309.28 0.99 -9.99 re -f -BT -10 0 0 10 126 292.79 Tm -( \(maphash)Tj -ET -570 299.28 0.99 -9.99 re -f -BT -10 0 0 10 126 282.79 Tm -( #\(lambda \(key val\))Tj -ET -570 289.28 0.99 -9.99 re -f -BT -10 0 0 10 126 272.79 Tm -( \(when \(interesting-p val\) \(xcl:collect key\)\)\))Tj -ET -570 279.28 0.99 -9.99 re -f -BT -10 0 0 10 126 262.79 Tm -( the-hash-table\)\))Tj -ET -570 269.28 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 244.5 Tm -0.133 Tw -(will collect a list of all the "interesting" keys in the order that they)Tj -ET -570 259.28 0.99 -18.99 re -f -BT -10 0 0 10 258 232.5 Tm -0 Tw -(were encountered.)Tj -ET -570 240.28 0.99 -11.99 re -f -BT -10 0 0 10 258 213.5 Tm -0.128 Tw -(It is an error to use)Tj -/TT4 1 Tf -8.9769 0 TD -[( xcl:collect )]TJ -/TT2 1 Tf -5.7028 0 TD -(outside the scope of an )Tj -/TT4 1 Tf -11.2587 0 TD -0 Tw -(xcl:with-)Tj -ET -570 228.28 0.99 -18.99 re -f -BT -10 0 0 10 258 201.5 Tm -(collection.)Tj -/TT2 1 Tf -4.9453 0 TD -0.19 Tw -[( Proper lexical nesting is observed, so an instance of)]TJ -ET -570 209.28 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 189.5 Tm -0 Tw -(xcl:collect )Tj -/TT2 1 Tf -5.3019 0 TD -0.133 Tw -(applies to the most deeply nested )Tj -/TT4 1 Tf -15.9743 0 TD -0 Tw -(xcl:with-collection)Tj -ET -570 197.28 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 177.5 Tm -(that is is found in.)Tj -ET -570 185.28 0.99 -11.99 re -f -endstream -endobj -27 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -29 0 obj -<< -/Length 6771 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-7)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Macros for Writing Macros)Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -10 0 0 10 54 707.2 Tm -(xcl:once-only )Tj -ET -570 724.98 0.99 -19.99 re -f -54.01 704.49 m -558.01 704.49 l -S -570 704.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 126 689.2 Tm -(\()Tj -ET -0.75 w -126 685.7 m -129.33 685.7 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 689.2 Tm -(xcl:once-only)Tj -ET -129.33 685.7 m -193.79 685.7 l -S -BT -/TT12 1 Tf -10 0 0 10 193.79 689.2 Tm -( )Tj -ET -193.79 685.7 m -199.79 685.7 l -S -BT -/TT6 1 Tf -10 0 0 10 199.79 689.2 Tm -(\({ variable }*\))Tj -ET -199.79 685.7 m -257.59 685.7 l -S -BT -/TT12 1 Tf -10 0 0 10 257.59 689.2 Tm -( )Tj -ET -257.59 685.7 m -263.59 685.7 l -S -BT -/TT2 1 Tf -10 0 0 10 263.59 689.2 Tm -(&body)Tj -ET -263.59 685.7 m -291.94 685.7 l -S -BT -/TT8 1 Tf -10 0 0 10 291.94 689.2 Tm -( )Tj -ET -291.94 685.7 m -294.44 685.7 l -S -BT -/TT6 1 Tf -10 0 0 10 294.44 689.2 Tm -(forms)Tj -ET -294.44 685.7 m -319.44 685.7 l -S -BT -/TT2 1 Tf -10 0 0 10 319.44 689.2 Tm -[(\))-19911([Macro] )]TJ -ET -319.44 685.7 m -558 685.7 l -S -570 703.98 0.99 -18.28 re -f -BT -10 0 0 10 258 670.91 Tm -0.271 Tw -(This macro is provided to aid in writing macros. )Tj -/TT4 1 Tf -23.5576 0 TD -0 Tw -(xcl:once-only)Tj -ET -570 685.69 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 658.91 Tm -0.232 Tw -(helps solve the problem of multiple evaluation of subforms of a)Tj -ET -570 666.69 0.99 -11.99 re -f -BT -10 0 0 10 258 646.91 Tm -0 Tw -(macro. )Tj -ET -570 654.69 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 627.91 Tm -(EXAMPLE:)Tj -ET -570 642.69 0.99 -28.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 607.2 Tm -(\(defmacro test \(reference form\))Tj -ET -570 613.69 0.99 -9.99 re -f -BT -10 0 0 10 126 597.2 Tm -( \(setf ,reference \(cons ,form ,form\)\)\))Tj -ET -570 603.69 0.99 -19.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 568.91 Tm -0.019 Tw -(This example has the problem that )Tj -/TT4 1 Tf -15.7331 0 TD -0 Tw -(form )Tj -/TT2 1 Tf -2.519 0 TD -0.019 Tw -(will be evaluated twice. To)Tj -ET -570 583.69 0.99 -18.99 re -f -BT -10 0 0 10 258 556.91 Tm -0 Tw -(avoid this, one might instead write:)Tj -ET -570 564.69 0.99 -21.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 536.2 Tm -(\(defmacro test \(reference form\))Tj -ET -570 542.69 0.99 -9.99 re -f -BT -10 0 0 10 126 526.2 Tm -( \(let \(\(value \(gensym\)\)\))Tj -ET -570 532.69 0.99 -9.99 re -f -BT -10 0 0 10 126 516.2 Tm -( \(let \(\(,value ,form\)\))Tj -ET -570 522.69 0.99 -9.99 re -f -BT -10 0 0 10 126 506.2 Tm -( \(setf ,reference \(cons ,value ,value\)\)\)\)\))Tj -ET -570 512.69 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 477.91 Tm -0.023 Tw -(This solves the problem of multiple evaluation, but introduces some)Tj -ET -570 492.69 0.99 -18.99 re -f -BT -10 0 0 10 258 465.91 Tm -0.189 Tw -(others. If)Tj -/TT4 1 Tf -4.0796 0 TD -[( form )]TJ -/TT2 1 Tf -3.1558 0 TD -(is in fact something simple, like a reference to a)Tj -ET -570 473.69 0.99 -11.99 re -f -BT -10 0 0 10 258 453.91 Tm -0.221 Tw -(variable or a literal, there was no need to create the temporary)Tj -ET -570 461.69 0.99 -11.99 re -f -BT -10 0 0 10 258 441.91 Tm -0.068 Tw -(variable, thus "wasting" a symbol. This can be extremely important)Tj -ET -570 449.69 0.99 -11.99 re -f -BT -10 0 0 10 258 429.91 Tm -0.035 Tw -(in Xerox Common Lisp as symbol space is limited and symbols are)Tj -ET -570 437.69 0.99 -11.99 re -f -BT -10 0 0 10 258 417.91 Tm -0.404 Tw -[(never reclaimed. If there are many temporary values to be)]TJ -ET -570 425.69 0.99 -11.99 re -f -BT -10 0 0 10 258 405.91 Tm -0.304 Tw -(computed, the macro definition becomes cluttered with calls to)Tj -ET -570 413.69 0.99 -11.99 re -f -BT -10 0 0 10 258 393.91 Tm -0 Tw -(gensym that obscure the essence of the code.)Tj -ET -570 401.69 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 374.91 Tm -(xcl:once-only)Tj -/TT2 1 Tf -6.4458 0 TD -0.485 Tw -[( helps solve these problems. For each of the)]TJ -ET -570 389.69 0.99 -18.99 re -f -BT -10 0 0 10 258 362.91 Tm -0.713 Tw -(variables listed,)Tj -/TT4 1 Tf -7.6051 0 TD -[( xcl:once-only )]TJ -/TT2 1 Tf -8.4275 0 TD -(determines if its value \(at)Tj -ET -570 370.69 0.99 -11.99 re -f -BT -10 0 0 10 258 350.91 Tm -0.328 Tw -(macroexpansion time\) is simple: a symbol or a literal. If it is,)Tj -ET -570 358.69 0.99 -11.99 re -f -BT -10 0 0 10 258 338.91 Tm -0.256 Tw -(appearances of that variable in the macroexpansion will remain)Tj -ET -570 346.69 0.99 -11.99 re -f -BT -10 0 0 10 258 326.91 Tm -0.221 Tw -(unchanged. If it is not, the macroexpansion will contain code to)Tj -ET -570 334.69 0.99 -11.99 re -f -BT -10 0 0 10 258 314.91 Tm -0.135 Tw -(store the value in a temporary )Tj -/TT4 1 Tf -14.7297 0 TD -0 Tw -(gensym)Tj -/TT2 1 Tf -4.0571 0 TD -0.135 Tw -(ed variable and use that)Tj -ET -570 322.69 0.99 -11.99 re -f -BT -10 0 0 10 258 302.91 Tm -0.011 Tw -(variable in the macroexpansion. Thus, the example could be written)Tj -ET -570 310.69 0.99 -11.99 re -f -BT -10 0 0 10 258 290.91 Tm -0 Tw -(as)Tj -ET -570 298.69 0.99 -21.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 270.2 Tm -(\(defmacro test \(reference form\))Tj -ET -570 276.69 0.99 -9.99 re -f -BT -10 0 0 10 126 260.2 Tm -( \(xcl:once-only \(form\))Tj -ET -570 266.69 0.99 -9.99 re -f -BT -10 0 0 10 126 250.2 Tm -( \(setf ,reference \(cons ,form ,form\)\)\)\))Tj -ET -570 256.69 0.99 -19.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 221.91 Tm -(Then)Tj -/TT12 1 Tf -2.2793 0 TD -0.248 Tw -[( \(test \(aref the-array x\) y\) )]TJ -/TT2 1 Tf -21.4351 0 TD -0.115 Tw -(will expand to)Tj -ET -570 236.69 0.99 -20.28 re -f -BT -10 0 0 10 258 208.62 Tm -0 Tw -(something like )Tj -ET -570 216.4 0.99 -21.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 187.91 Tm -(\(setf \(aref the-array x\) \(cons y y\)\))Tj -ET -570 194.4 0.99 -9.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 169.62 Tm -(while)Tj -/TT12 1 Tf -2.2788 0 TD -0.289 Tw -[( \(test \(aref the-array x\) \(random-form\)\) )]TJ -/TT2 1 Tf -26.338 0 TD -0 Tw -(will)Tj -ET -570 184.4 0.99 -20.28 re -f -BT -10 0 0 10 258 156.33 Tm -(expand to something like)Tj -ET -570 164.11 0.99 -19.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 137.62 Tm -(\(let \(\(#:g377 \(random-form\)\)\))Tj -ET -570 144.11 0.99 -9.99 re -f -BT -10 0 0 10 126 127.62 Tm -( \(setf \(aref the-array x\) \(cons #:g377 #:g377\)\)\))Tj -ET -570 134.11 0.99 -19.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 99.33 Tm -0.276 Tw -(Note that)Tj -/TT4 1 Tf -4.3341 0 TD -[( xcl:once-only)]TJ -/TT2 1 Tf -6.9996 0 TD -[( does not attempt to preserve order of)]TJ -ET -570 114.11 0.99 -18.99 re -f -BT -10 0 0 10 258 87.33 Tm -0.267 Tw -(evaluation. If this is important then you will still have to create)Tj -ET -570 95.11 0.99 -11.99 re -f -BT -10 0 0 10 258 75.33 Tm -0 Tw -(temporary variables yourself.)Tj -ET -570 83.11 0.99 -21.99 re -f -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -32 0 obj -<< -/Length 5987 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-8)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -12 0 0 12 54 728.64 Tm -(Common Lisp Append Datatypes)Tj -ET -570 751.98 0.99 -25.99 re -f -54.01 725.49 m -558.01 725.49 l -S -570 725.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 710.2 Tm -0.363 Tw -(A clarification adopted by X3J13 involves the behavior of the)Tj -ET -570 724.98 0.99 -18.99 re -f -BT -10 0 0 10 258 698.2 Tm -0.123 Tw -[(APPEND function with non-lists. The cdr of the last cons in any)]TJ -ET -570 705.98 0.99 -11.99 re -f -BT -10 0 0 10 258 686.2 Tm -0.082 Tw -(but the last argument given to APPEND is discarded \(whether NIL)Tj -ET -570 693.98 0.99 -11.99 re -f -BT -10 0 0 10 258 674.2 Tm -0.119 Tw -[(or not\) when preparing the list to be returned. In the case where)]TJ -ET -570 681.98 0.99 -11.99 re -f -BT -10 0 0 10 258 662.2 Tm -0.015 Tw -[(there is no last cons \(i.e., the argument is not a list\) in any but the)]TJ -ET -570 669.98 0.99 -11.99 re -f -BT -10 0 0 10 258 650.2 Tm -0.008 Tw -[(last list argument, the entire argument is effectively ignored. In this)]TJ -ET -570 657.98 0.99 -11.99 re -f -BT -10 0 0 10 258 638.2 Tm -0.155 Tw -(situation, if the last argument is a non-list, the result of APPEND)Tj -ET -570 645.98 0.99 -11.99 re -f -BT -10 0 0 10 258 626.2 Tm -0.142 Tw -[(can be a non-list. NB: APPEND and COPY-LIST now produce)]TJ -ET -570 633.98 0.99 -11.99 re -f -BT -10 0 0 10 258 614.2 Tm -0 Tw -(different results for non-lists. )Tj -ET -570 621.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 595.2 Tm -(EXAMPLE:)Tj -ET -570 609.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 577.49 Tm -(\(append \(a b c . d\) \(\)\) )Tj -ET -570 590.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 559.2 Tm -(produces the result:)Tj -ET -570 573.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 541.49 Tm -(\(a b c\) )Tj -ET -570 554.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 523.2 Tm -(EXAMPLE:)Tj -ET -570 537.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 505.49 Tm -(\(append \(a b . c\) \(\) 3\) )Tj -ET -570 518.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 487.2 Tm -(produces the result:)Tj -ET -570 501.98 0.99 -18.99 re -f -BT -/TT14 1 Tf -10 0 0 10 126 468.55 Tm -(\(a b . 3\))Tj -ET -570 482.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 451.2 Tm -(EXAMPLE:)Tj -ET -570 465.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 433.49 Tm -(\(append 3 17\) )Tj -ET -570 446.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 415.2 Tm -(produces the result:)Tj -ET -570 429.98 0.99 -18.99 re -f -BT -/TT14 1 Tf -10 0 0 10 126 396.55 Tm -(17. )Tj -ET -570 410.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 370.64 Tm -(Closure Cache)Tj -ET -570 393.98 0.99 -25.99 re -f -54.01 367.49 m -558.01 367.49 l -S -570 367.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 352.2 Tm -0.54 Tw -(The Medley sysout contains a closure cache that provides)Tj -ET -570 366.98 0.99 -18.99 re -f -BT -10 0 0 10 258 340.2 Tm -0.394 Tw -[(increased time and space efficiency. Less new memory is)]TJ -ET -570 347.98 0.99 -11.99 re -f -BT -10 0 0 10 258 328.2 Tm -0.14 Tw -[(allocated because repeated calls to symbol-function of the same)]TJ -ET -570 335.98 0.99 -11.99 re -f -BT -10 0 0 10 258 316.2 Tm -0.073 Tw -[(symbol now will cons exactly one closure object. Repeated calls)]TJ -ET -570 323.98 0.99 -11.99 re -f -BT -10 0 0 10 258 304.2 Tm -0.095 Tw -[(to symbol-function of the same symbol now return EQ- compiled)]TJ -ET -570 311.98 0.99 -11.99 re -f -BT -10 0 0 10 258 292.2 Tm -0 Tw -(function objects. )Tj -ET -570 299.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 264.64 Tm -(Symbols and Packages )Tj -ET -570 287.98 0.99 -25.99 re -f -54.01 261.49 m -558.01 261.49 l -S -570 261.98 0.99 -0.99 re -f -BT -10 0 0 10 54 243.2 Tm -(Pkg -goto and In-package )Tj -ET -570 260.98 0.99 -19.99 re -f -54.01 240.49 m -558.01 240.49 l -S -570 240.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 225.2 Tm -0.03 Tw -[(PKG-GOTO is now a synonym for IN-PACKAGE. The PKG-GOTO)]TJ -ET -570 239.98 0.99 -18.99 re -f -BT -10 0 0 10 258 213.2 Tm -0 Tw -(function can be used to change packages in an exec. )Tj -ET -570 220.98 0.99 -11.99 re -f -BT -10 0 0 10 258 194.2 Tm -0.208 Tw -(PKG-GOTO takes one argument, which can be either a double-)Tj -ET -570 208.98 0.99 -18.99 re -f -BT -10 0 0 10 258 182.2 Tm -0.115 Tw -[(quoted string, a symbol, or a package structure. This function is)]TJ -ET -570 189.98 0.99 -11.99 re -f -BT -10 0 0 10 258 170.2 Tm -0 Tw -(used to set package in an exec. )Tj -ET -570 177.98 0.99 -11.99 re -f -BT -10 0 0 10 126 151.2 Tm -(\()Tj -ET -0.75 w -126 148.64 m -129.33 148.64 l -S -BT -/TT4 1 Tf -10 0 0 10 129.33 151.2 Tm -(xcl:pkg-goto)Tj -ET -129.33 148.64 m -189.33 148.64 l -S -BT -/TT8 1 Tf -10 0 0 10 189.33 151.2 Tm -( )Tj -ET -189.33 148.64 m -191.83 148.64 l -S -BT -/TT6 1 Tf -10 0 0 10 191.83 151.2 Tm -(package-name)Tj -ET -191.83 148.64 m -257.97 148.64 l -S -BT -/TT10 1 Tf -10 0 0 10 257.97 151.2 Tm -( )Tj -ET -257.97 148.64 m -260.47 148.64 l -S -BT -/TT2 1 Tf -10 0 0 10 260.47 151.2 Tm -( &key )Tj -ET -260.47 148.64 m -291.04 148.64 l -S -BT -/TT6 1 Tf -10 0 0 10 291.04 151.2 Tm -(nicknames use)Tj -ET -291.04 148.64 m -357.73 148.64 l -S -BT -/TT2 1 Tf -10 0 0 10 357.73 151.2 Tm -[(\))-15025([Function] )]TJ -ET -357.73 148.64 m -558 148.64 l -S -570 165.98 0.99 -17.34 re -f -BT -10 0 0 10 258 133.85 Tm -0.11 Tw -(PKG-GOTO operates like IN-PACKAGE, but asks for confirmation)Tj -ET -570 148.63 0.99 -18.99 re -f -BT -10 0 0 10 258 121.85 Tm -0.031 Tw -[(if a new package is being created. The function is useful at the top)]TJ -ET -570 129.63 0.99 -11.99 re -f -BT -10 0 0 10 258 109.85 Tm -0.082 Tw -(level in the exec, to avoid creating new packages when a name is)Tj -ET -570 117.63 0.99 -11.99 re -f -BT -10 0 0 10 258 97.85 Tm -0 Tw -(misspelled.)Tj -ET -570 105.63 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 75.85 Tm -(Defpackage Export argument )Tj -ET -570 93.63 0.99 -19.99 re -f -1 w -54.01 73.14 m -558.01 73.14 l -S -570 73.63 0.99 -0.99 re -f -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -35 0 obj -<< -/Length 6364 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 543.55 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-9)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.1178 Tw -(Defpackages EXPORT argument now accepts strings. Optionally,)Tj -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.277 Tw -[(strings can be given to :EXPORT instead of symbols. This is)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.713 Tw -(recommended when defpackage is used in the makefile-)Tj -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0.267 Tw -[(environment property of a file. The strings are interned in the)]TJ -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 682.2 Tm -0 Tw -(package being defined and then exported. )Tj -ET -570 689.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 654.64 Tm -(Debugging Tools )Tj -ET -570 677.98 0.99 -25.99 re -f -54.01 651.49 m -558.01 651.49 l -S -570 651.98 0.99 -0.99 re -f -BT -10 0 0 10 54 633.2 Tm -(Breaking )Tj -ET -570 650.98 0.99 -19.99 re -f -54.01 630.49 m -558.01 630.49 l -S -570 630.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 615.2 Tm -0.119 Tw -[(Even with HELPDEPTH set to zero, some errors do not cause a)]TJ -ET -570 629.98 0.99 -18.99 re -f -BT -10 0 0 10 258 603.2 Tm -0.011 Tw -[(break. In Koto and the old Interlisp execs in Lyric, the workaround)]TJ -ET -570 610.98 0.99 -11.99 re -f -BT -10 0 0 10 258 591.2 Tm -0 Tw -(is: )Tj -ET -570 598.98 0.99 -11.99 re -f -BT -10 0 0 10 258 572.2 Tm -(\(SETTOPVAL HELPFLAG BREAK!\))Tj -ET -570 586.98 0.99 -18.99 re -f -BT -10 0 0 10 258 553.2 Tm -0.156 Tw -[(In Medley and Lyrics new execs, HELPFLAG is bound but not)]TJ -ET -570 567.98 0.99 -18.99 re -f -BT -10 0 0 10 258 541.2 Tm -0 Tw -(continually reset. The workaround: )Tj -ET -570 548.98 0.99 -11.99 re -f -BT -10 0 0 10 258 522.2 Tm -(\(SETQ HELPFLAG BREAK!\))Tj -ET -570 536.98 0.99 -18.99 re -f -BT -10 0 0 10 258 503.2 Tm -0.246 Tw -(affects the current exec until the next time you call RESET \(or)Tj -ET -570 517.98 0.99 -18.99 re -f -BT -10 0 0 10 258 491.2 Tm -0.156 Tw -[(control-D\). If you want the change in HELPFLAG to be seen by)]TJ -ET -570 498.98 0.99 -11.99 re -f -BT -10 0 0 10 258 479.2 Tm -0.165 Tw -(other processes, you still need to use SETTOPVAL, and RESET)Tj -ET -570 486.98 0.99 -11.99 re -f -BT -10 0 0 10 258 467.2 Tm -0 Tw -(any execs in which you want to see the effect.)Tj -ET -570 474.98 0.99 -23.99 re -f -BT -10 0 0 10 258 443.2 Tm -0.374 Tw -(For related information, see the Medley error system variable)Tj -ET -570 450.98 0.99 -11.99 re -f -BT -10 0 0 10 258 431.2 Tm -0 Tw -(XCL:*BREAK-ON-SIGNALS* described in Appendix E. )Tj -ET -570 438.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 409.2 Tm -(Advising )Tj -ET -570 426.98 0.99 -19.99 re -f -54.01 406.49 m -558.01 406.49 l -S -570 406.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 391.2 Tm -0.015 Tw -[(In Lyric, putting a second piece of advice on a function caused the)]TJ -ET -570 405.98 0.99 -18.99 re -f -BT -10 0 0 10 258 379.2 Tm -0.082 Tw -(system to believe that the function was in fact not advised, so any)Tj -ET -570 386.98 0.99 -11.99 re -f -BT -10 0 0 10 258 367.2 Tm -0.034 Tw -[(further advice threw out the already existing advice. This has been)]TJ -ET -570 374.98 0.99 -11.99 re -f -BT -10 0 0 10 258 355.2 Tm -0.152 Tw -[(fixed. In Medley, the correct list entries are made regardless of)]TJ -ET -570 362.98 0.99 -11.99 re -f -BT -10 0 0 10 258 343.2 Tm -0 Tw -(whether the function was previously advised. )Tj -ET -570 350.98 0.99 -11.99 re -f -BT -10 0 0 10 258 324.2 Tm -0.05 Tw -[(In Lyric, loading a file with advice caused multiple instances of the)]TJ -ET -570 338.98 0.99 -18.99 re -f -BT -10 0 0 10 258 312.2 Tm -0.029 Tw -[(advice to be instantiated. To prevent this, ADVISE is now changed)]TJ -ET -570 319.98 0.99 -11.99 re -f -BT -10 0 0 10 258 300.2 Tm -0.055 Tw -[(in Medley in the following way: When a new piece of advice is put)]TJ -ET -570 307.98 0.99 -11.99 re -f -BT -10 0 0 10 258 288.2 Tm -0.115 Tw -(on a function, the system examines the already existing advice to)Tj -ET -570 295.98 0.99 -11.99 re -f -BT -10 0 0 10 258 276.2 Tm -0.178 Tw -[(see if the some advice is already there. If so, the old advice is)]TJ -ET -570 283.98 0.99 -11.99 re -f -BT -10 0 0 10 258 264.2 Tm -0.103 Tw -[(removed before adding the new advice. Sameness is determined)]TJ -ET -570 271.98 0.99 -11.99 re -f -BT -10 0 0 10 258 252.2 Tm -0.127 Tw -(by a test similar to CL:EQUALP, except that )Tj -/TT6 1 Tf -20.6908 0 TD -0 Tw -(case)Tj -/TT2 1 Tf -2.1123 0 TD -0.127 Tw -[( distinctions are)]TJ -ET -570 259.98 0.99 -11.99 re -f -BT -10 0 0 10 258 240.2 Tm -0.009 Tw -[(significant in strings and characters. The priority and location of the)]TJ -ET -570 247.98 0.99 -11.99 re -f -BT -10 0 0 10 258 228.2 Tm -0.257 Tw -(advice is taken into account when determining the "sameness.")Tj -ET -570 235.98 0.99 -11.99 re -f -BT -10 0 0 10 258 216.2 Tm -0.21 Tw -(This makes it possible, for instance, to have identical advice be)Tj -ET -570 223.98 0.99 -11.99 re -f -BT -10 0 0 10 258 204.2 Tm -0 Tw -(both :FIRST and :LAST. )Tj -ET -570 211.98 0.99 -11.99 re -f -BT -10 0 0 10 258 185.2 Tm -(Advice is no longer replicated when loaded more than once. )Tj -ET -570 199.98 0.99 -18.99 re -f -BT -10 0 0 10 258 166.2 Tm -0.554 Tw -(The debugger and inspector now display interpreted lexical)Tj -ET -570 180.98 0.99 -18.99 re -f -BT -10 0 0 10 258 154.2 Tm -0.067 Tw -[(closures conveniently. Displayed lexical closure contents include)]TJ -ET -570 161.98 0.99 -11.99 re -f -BT -10 0 0 10 258 142.2 Tm -0.282 Tw -(the function contained, and any lexical bindings in the closure.)Tj -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 130.2 Tm -0.026 Tw -[(Compiled closures are not conveniently inspectable. Common Lisp)]TJ -ET -570 137.98 0.99 -11.99 re -f -BT -10 0 0 10 258 118.2 Tm -0.178 Tw -(eval stack frames show their associated lexical environment in a)Tj -ET -570 125.98 0.99 -11.99 re -f -BT -10 0 0 10 258 106.2 Tm -0 Tw -(similar manner. )Tj -ET -570 113.98 0.99 -11.99 re -f -BT -10 0 0 10 258 87.2 Tm -0.207 Tw -[(The :when option to XCL:BREAK-FUNCTION no longer causes)]TJ -ET -570 101.98 0.99 -18.99 re -f -BT -10 0 0 10 258 75.2 Tm -0.046 Tw -[(the broken function to return NIL when the break is not taken. The)]TJ -ET -570 82.98 0.99 -11.99 re -f -BT -10 0 0 10 258 63.2 Tm -0 Tw -(correct values are returned. )Tj -ET -570 70.98 0.99 -11.99 re -f -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -38 0 obj -<< -/Length 6128 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-10)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -570 744.98 0.99 -18.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 708.2 Tm -(Argument Names Displayed for Interpreted Functions )Tj -ET -570 725.98 0.99 -19.99 re -f -54.01 705.49 m -558.01 705.49 l -S -570 705.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 690.2 Tm -0.143 Tw -(In the debugger, the frame inspector window will now display the)Tj -ET -570 704.98 0.99 -18.99 re -f -BT -10 0 0 10 258 678.2 Tm -0.832 Tw -(argument names for interpreted Common Lisp functions.)Tj -ET -570 685.98 0.99 -11.99 re -f -BT -10 0 0 10 258 666.2 Tm -0 Tw -(Previously, it gave them pseudonames "arg0" "arg1" etc. )Tj -ET -570 673.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 644.2 Tm -(Lexical Variables Evaluated by Debugger )Tj -ET -570 661.98 0.99 -19.99 re -f -54.01 641.49 m -558.01 641.49 l -S -570 641.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 626.2 Tm -0.22 Tw -(The debugger EVAL command now evaluate expressions in the)Tj -ET -570 640.98 0.99 -18.99 re -f -BT -10 0 0 10 258 614.2 Tm -0.043 Tw -[(lexical environment --i.e., you can evaluate an expression and use)]TJ -ET -570 621.98 0.99 -11.99 re -f -BT -10 0 0 10 258 602.2 Tm -0.156 Tw -[(variables that are lexically bound in your code. Only the lexical)]TJ -ET -570 609.98 0.99 -11.99 re -f -BT -10 0 0 10 258 590.2 Tm -0.019 Tw -[(environment at the point of the break can be evaluated. You cant)]TJ -ET -570 597.98 0.99 -11.99 re -f -BT -10 0 0 10 258 578.2 Tm -0 Tw -(presently back up to any given lexical environment. )Tj -ET -570 585.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 559.2 Tm -(EXAMPLE:)Tj -ET -570 573.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 541.49 Tm -(\(defun fact\(x\)\(if\(= 1 x\)nil\(*x\(fact\(1-x\)\)\)\)\) )Tj -ET -570 554.98 0.99 -16.99 re -f -BT -10 0 0 10 126 524.49 Tm -(\(fact 4\) )Tj -ET -570 537.98 0.99 -16.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 506.2 Tm -(;; breaks. if you then type)Tj -ET -570 520.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 488.49 Tm -(EVAL x)Tj -ET -570 501.98 0.99 -16.99 re -f -BT -10 0 0 10 126 471.49 Tm -(2 )Tj -ET -570 484.98 0.99 -16.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 450.2 Tm -(Pathname Component Fixed in FS-ERROR )Tj -ET -570 467.98 0.99 -19.99 re -f -54.01 447.49 m -558.01 447.49 l -S -570 447.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 432.2 Tm -0.039 Tw -(In Lyric, only one of the three FS-ERROR conditions was passed a)Tj -ET -570 446.98 0.99 -18.99 re -f -BT -10 0 0 10 258 420.2 Tm -0.283 Tw -(pathname component, resulting in the File Cacher not knowing)Tj -ET -570 427.98 0.99 -11.99 re -f -BT -10 0 0 10 258 408.2 Tm -0.092 Tw -[(which file had the error, or resulting in pathname being lost when)]TJ -ET -570 415.98 0.99 -11.99 re -f -BT -10 0 0 10 258 396.2 Tm -0.654 Tw -(PROTECTION VIOLATION or FILE SYSTEM RESOURCES)Tj -ET -570 403.98 0.99 -11.99 re -f -BT -10 0 0 10 258 384.2 Tm -0.006 Tw -[(EXCEEDED were signaled. This problem occurred most noticeably)]TJ -ET -570 391.98 0.99 -11.99 re -f -BT -10 0 0 10 258 372.2 Tm -0.0001 Tc -0.0039 Tw -(in Lyric when Interlisp errors were translated to XCL. This condition)Tj -ET -570 379.98 0.99 -11.99 re -f -BT -10 0 0 10 258 360.2 Tm -0 Tc -0.144 Tw -[(has been fixed in Medley. FS-ERROR now correctly receives all)]TJ -ET -570 367.98 0.99 -11.99 re -f -BT -10 0 0 10 258 348.2 Tm -0 Tw -(the pathname components. )Tj -ET -570 355.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -12 0 0 12 54 320.64 Tm -(Compiler Optimizations )Tj -ET -570 343.98 0.99 -25.99 re -f -54.01 317.49 m -558.01 317.49 l -S -570 317.98 0.99 -0.99 re -f -BT -10 0 0 10 54 299.2 Tm -0.0001 Tc --0.0001 Tw -(Warning when using LABELS construct )Tj -ET -570 316.98 0.99 -19.99 re -f -54.01 296.49 m -558.01 296.49 l -S -570 296.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 281.2 Tm -0 Tc -0.11 Tw -(In Lyric, use of the LABELS construct generated circular structure)Tj -ET -570 295.98 0.99 -18.99 re -f -BT -10 0 0 10 258 269.2 Tm -0.373 Tw -(that would not get collected. Interpreted, a LABELS construct)Tj -ET -570 276.98 0.99 -11.99 re -f -BT -10 0 0 10 258 257.2 Tm -0.545 Tw -(always creates this non-collectible structure. Compiled, such)Tj -ET -570 264.98 0.99 -11.99 re -f -BT -10 0 0 10 258 245.2 Tm -0.416 Tw -(structure would be created if there were non-tail-recursive or)Tj -ET -570 252.98 0.99 -11.99 re -f -BT -10 0 0 10 258 233.2 Tm -0.173 Tw -(mutually referencing subfunctions. The values of any closed-over)Tj -ET -570 240.98 0.99 -11.99 re -f -BT -10 0 0 10 258 221.2 Tm -0.038 Tw -(variables are captured by this structure and thus also not collected,)Tj -ET -570 228.98 0.99 -11.99 re -f -BT -10 0 0 10 258 209.2 Tm -0.297 Tw -(potentially causing large storage leaks. The latter situation has)Tj -ET -570 216.98 0.99 -11.99 re -f -BT -10 0 0 10 258 197.2 Tm -0 Tw -(been relieved somewhat for Medley.)Tj -ET -570 204.98 0.99 -11.99 re -f -BT -10 0 0 10 258 178.2 Tm -0.079 Tw -(In Medley, the unavoidable circularity has been reduced to include)Tj -ET -570 192.98 0.99 -18.99 re -f -BT -10 0 0 10 258 166.2 Tm -0.21 Tw -(only the mutually referencing functions, but not any of the other)Tj -ET -570 173.98 0.99 -11.99 re -f -BT -10 0 0 10 258 154.2 Tm -0.103 Tw -(data that they access. Thus, the uncollectable structure is created)Tj -ET -570 161.98 0.99 -11.99 re -f -BT -10 0 0 10 258 142.2 Tm -0.127 Tw -(only when a new copy of the code blocks are created, such a by)Tj -ET -570 149.98 0.99 -11.99 re -f -BT -10 0 0 10 258 130.2 Tm -0.004 Tw -(compiling the function containing the LABELS rather than each time)Tj -ET -570 137.98 0.99 -11.99 re -f -BT -10 0 0 10 258 118.2 Tm -0 Tw -(that function is called.)Tj -ET -570 125.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 96.2 Tm -(COMS added to dfasl files)Tj -ET -570 113.98 0.99 -19.99 re -f -54.01 93.49 m -558.01 93.49 l -S -570 93.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 78.2 Tm -0.31 Tw -[(The Medley compiler has been modified to better handle the)]TJ -ET -570 92.98 0.99 -18.99 re -f -BT -10 0 0 10 258 66.2 Tm -0.088 Tw -[(il:define-file-info, and defpackage forms. Now, loading a dfasl file)]TJ -ET -570 73.98 0.99 -11.99 re -f -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -41 0 obj -<< -/Length 7461 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-11)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.0059 Tw -[(is not implicitly SYSLOAD. Since the file COMS for the file is now)]TJ -ET -570 737.98 0.99 -11.99 re -f -BT -10 0 0 10 258 718.2 Tm -0.136 Tw -[(included in the dfasl, that file will be noticed by the file manager)]TJ -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 706.2 Tm -0.032 Tw -[(unless the load is explicitly SYSLOAD. \(SYSLOADing of compiled)]TJ -ET -570 713.98 0.99 -11.99 re -f -BT -10 0 0 10 258 694.2 Tm -0 Tw -(lcom and dfasl files is recommended.\) )Tj -ET -570 701.98 0.99 -11.99 re -f -BT -10 0 0 10 258 675.2 Tm -0.09 Tw -[(In Lyric, dfasls of file manager files did not contain the COMS of)]TJ -ET -570 689.98 0.99 -18.99 re -f -BT -10 0 0 10 258 663.2 Tm -0.045 Tw -[(the file. In Medley, COMS are present in dfasl files, just as they)]TJ -ET -570 670.98 0.99 -11.99 re -f -BT -10 0 0 10 258 651.2 Tm -0.095 Tw -[(are in lcom files. As with lcom files, the COMS will not be loaded)]TJ -ET -570 658.98 0.99 -11.99 re -f -BT -10 0 0 10 258 639.2 Tm -0.249 Tw -(when the LDFLG argument to LOAD is SYSLOAD, nor will the)Tj -ET -570 646.98 0.99 -11.99 re -f -BT -10 0 0 10 258 627.2 Tm -0.054 Tw -(name of the file be added to FILELST, but instead will be added to)Tj -ET -570 634.98 0.99 -11.99 re -f -BT -10 0 0 10 258 615.2 Tm -0 Tw -(SYSFILES. )Tj -ET -570 622.98 0.99 -23.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 591.2 Tm -(Note)Tj -/TT2 1 Tf -2.2222 0 TD -0.149 Tw -(: We discourage loading either sort of compiled file \(lcom or)Tj -ET -570 598.98 0.99 -11.99 re -f -BT -10 0 0 10 258 579.2 Tm -0.0219 Tw -[(dfasl\) with any value for LDFLG but SYSLOAD. Unless you intend)]TJ -ET -570 586.98 0.99 -11.99 re -f -BT -10 0 0 10 258 567.2 Tm -0.042 Tw -[(to edit a file, you should always load it SYSLOAD. Even when you)]TJ -ET -570 574.98 0.99 -11.99 re -f -BT -10 0 0 10 258 555.2 Tm -0.003 Tw -(intend to edit it, it is usually preferable to SYSLOAD it and then load)Tj -ET -570 562.98 0.99 -11.99 re -f -BT -10 0 0 10 258 543.2 Tm -0.074 Tw -[(the source PROP. If there are too many source files for this to be)]TJ -ET -570 550.98 0.99 -11.99 re -f -BT -10 0 0 10 258 531.2 Tm -0 Tw -(practical, we recommend use of the WHERE-IS Library module. )Tj -ET -570 538.98 0.99 -11.99 re -f -BT -10 0 0 10 258 512.2 Tm -0.044 Tw -(While the location of definitions is made known to the edit interface)Tj -ET -570 526.98 0.99 -18.99 re -f -BT -10 0 0 10 258 500.2 Tm -0.089 Tw -[(when files are loaded, it can be very inefficient when files are not)]TJ -ET -570 507.98 0.99 -11.99 re -f -BT -10 0 0 10 258 488.2 Tm -0.17 Tw -[(SYSLOADed. If, for example, you load ten compiled files with)]TJ -ET -570 495.98 0.99 -11.99 re -f -BT -10 0 0 10 258 476.2 Tm -0.157 Tw -(LDFLG=NIL and then evaluate \(ED FOO\), then the COMS of all)Tj -ET -570 483.98 0.99 -11.99 re -f -BT -10 0 0 10 258 464.2 Tm -0.009 Tw -(ten files must be searched for definitions of each manager type with)Tj -ET -570 471.98 0.99 -11.99 re -f -BT -10 0 0 10 258 452.2 Tm -0.05 Tw -[(name FOO. With forty manager types this comes to 400 parses of)]TJ -ET -570 459.98 0.99 -11.99 re -f -BT -10 0 0 10 258 440.2 Tm -0.231 Tw -[(COMS -- a time-consuming operation. If you instead load the)]TJ -ET -570 447.98 0.99 -11.99 re -f -BT -10 0 0 10 258 428.2 Tm -0.141 Tw -(compiled files SYSLOAD and the sources PROP, then no COMS)Tj -ET -570 435.98 0.99 -11.99 re -f -BT -10 0 0 10 258 416.2 Tm -0.239 Tw -(need be searched, as checking for definitions of each manager)Tj -ET -570 423.98 0.99 -11.99 re -f -BT -10 0 0 10 258 404.2 Tm -0 Tw -(type is sufficient.)Tj -ET -570 411.98 0.99 -23.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 370.2 Tm -(Loadflg argument )Tj -ET -570 387.98 0.99 -19.99 re -f -54.01 367.49 m -558.01 367.49 l -S -570 367.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 352.2 Tm -(The Medley release contains a new keyword argument to )Tj -/TT4 1 Tf -25.6245 0 TD -(cl:load.)Tj -ET -570 366.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 333.2 Tm -(\()Tj -ET -0.75 w -126 329.7 m -132 329.7 l -S -BT -/TT4 1 Tf -10 0 0 10 132 333.2 Tm -(cl:load)Tj -ET -132 329.7 m -164.23 329.7 l -S -BT -/TT12 1 Tf -10 0 0 10 164.23 333.2 Tm -( )Tj -ET -164.23 329.7 m -170.23 329.7 l -S -BT -/TT6 1 Tf -10 0 0 10 170.23 333.2 Tm -(filename)Tj -ET -170.23 329.7 m -208.02 329.7 l -S -BT -/TT10 1 Tf -10 0 0 10 208.02 333.2 Tm -( )Tj -ET -208.02 329.7 m -210.52 329.7 l -S -BT -/TT2 1 Tf -10 0 0 10 210.52 333.2 Tm -( &key )Tj -ET -210.52 329.7 m -241.09 329.7 l -S -BT -/TT6 1 Tf -10 0 0 10 241.09 333.2 Tm -(verbose print if-does-not-exist loadflg)Tj -ET -241.09 329.7 m -405.04 329.7 l -S -BT -/TT16 1 Tf -10 0 0 10 405.04 333.2 Tm -(\))Tj -ET -405.04 329.7 m -408.37 329.7 l -S -BT -/TT10 1 Tf -10 0 0 10 408.37 333.2 Tm -( )Tj -ET -408.37 329.7 m -410.87 329.7 l -S -570 347.98 0.99 -18.28 re -f -BT -/TT2 1 Tf -10 0 0 10 258 314.91 Tm -(The )Tj -/TT6 1 Tf -2.092 0 TD -(loadflg)Tj -/TT16 1 Tf -2.9468 0 TD -( )Tj -/TT2 1 Tf -0.3688 0 TD -0.091 Tw -(argument follows the sematics of the loadflg argument)Tj -ET -570 329.69 0.99 -18.99 re -f -BT -10 0 0 10 258 302.91 Tm -0 Tw -(to )Tj -/TT4 1 Tf -1.2158 0 TD -(il:load)Tj -/TT2 1 Tf -2.9443 0 TD -0.104 Tw -(, with the exception that the loadflg argument will always)Tj -ET -570 310.69 0.99 -11.99 re -f -BT -10 0 0 10 258 290.91 Tm -0 Tw -(be interned in the Interlisp package.)Tj -ET -570 298.69 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 271.91 Tm -(EXAMPLE:)Tj -ET -570 286.69 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 126 253.26 Tm -(\(cl:load)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.5 0 TD -("Mycompiled-file.dfasl" :loadflg :sysload\) )Tj -ET -570 267.69 0.99 -17.93 re -f -BT -/TT2 1 Tf -10 0 0 10 258 234.97 Tm -0.271 Tw -(In this example, "Mycompiled-file.dfasl" will load without the file)Tj -ET -570 249.75 0.99 -18.99 re -f -BT -10 0 0 10 258 222.97 Tm -0 Tw -(manager noticing that file. )Tj -ET -570 230.75 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 203.97 Tm -(Note)Tj -/TT2 1 Tf -2.2222 0 TD -0.049 Tw -[(: As explained in the previous section, we discourage loading)]TJ -ET -570 218.75 0.99 -18.99 re -f -BT -10 0 0 10 258 191.97 Tm -0.085 Tw -[(either sort of compiled file \(lcom or dfasl\) with any value for )]TJ -/TT6 1 Tf -27.7266 0 TD -[( ldflg )]TJ -ET -570 199.75 0.99 -11.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 179.97 Tm -0 Tw -(but SYSLOAD. )Tj -ET -570 187.75 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 157.97 Tm -(Changes in CL:MAP, CL:WRITE-STRING, CL:COERCE , CL:GENSYM and IL:DEFERREDCONSTANT )Tj -ET -570 175.75 0.99 -19.99 re -f -1 w -54.01 155.26 m -558.01 155.26 l -S -570 155.75 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 139.97 Tm -0.066 Tw -[(In Lyric, a compiled call to CL:MAP that had been used for effect)]TJ -ET -570 154.75 0.99 -18.99 re -f -BT -10 0 0 10 258 127.97 Tm -0.044 Tw -[(would occasionally cons up a new list anyway. It would fail in the)]TJ -ET -570 135.75 0.99 -11.99 re -f -BT -10 0 0 10 258 115.97 Tm -0.105 Tw -(case that the first argument was a constant that evaluated to NIL,)Tj -ET -570 123.75 0.99 -11.99 re -f -BT -10 0 0 10 258 103.97 Tm -0.166 Tw -[(but not NIL itself, e.g. NIL. This has been fixed and no longer)]TJ -ET -570 111.75 0.99 -11.99 re -f -BT -10 0 0 10 258 91.97 Tm -0 Tw -(occurs in Medley. )Tj -ET -570 99.75 0.99 -11.99 re -f -BT -10 0 0 10 258 72.97 Tm -0.357 Tw -[(CL:WRITE-STRING is now twice as fast and creates no new)]TJ -ET -570 87.75 0.99 -18.99 re -f -BT -10 0 0 10 258 60.97 Tm -0 Tw -(structure. )Tj -ET -570 68.75 0.99 -11.99 re -f -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 12 0 R -/TT10 13 0 R -/TT12 14 0 R -/TT16 43 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -47 0 obj -<< -/Length 6131 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-12)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 258 730.2 Tm -0.099 Tw -[(CL:COERCE now correctly returns the original object in all cases)]TJ -ET -570 744.98 0.99 -18.99 re -f -BT -10 0 0 10 258 718.2 Tm -0 Tw -(where Common Lisp and Lisp require it. )Tj -ET -570 725.98 0.99 -11.99 re -f -BT -10 0 0 10 258 699.2 Tm -(The CL Compiler now compiles CL:GENSYM properly. )Tj -ET -570 713.98 0.99 -18.99 re -f -BT -10 0 0 10 258 680.2 Tm -0.237 Tw -(IL:DEFERREDCONSTANT is now handled correctly by the XCL)Tj -ET -570 694.98 0.99 -18.99 re -f -BT -10 0 0 10 258 668.2 Tm -0 Tw -(compiler. )Tj -ET -570 675.98 0.99 -11.99 re -f -BT -10 0 0 10 258 649.2 Tm -0.067 Tw -[(ADD.PROCESS no longer coerces the process name to a symbol.)]TJ -ET -570 663.98 0.99 -18.99 re -f -BT -10 0 0 10 258 637.2 Tm -0.332 Tw -(Rather, process names are treated as case-insensitive strings.)Tj -ET -570 644.98 0.99 -11.99 re -f -BT -10 0 0 10 258 625.2 Tm -0.226 Tw -(Thus, you can use strings for process names, and when typing)Tj -ET -570 632.98 0.99 -11.99 re -f -BT -10 0 0 10 258 613.2 Tm -0.132 Tw -(process commands to an exec, you need not worry about getting)Tj -ET -570 620.98 0.99 -11.99 re -f -BT -10 0 0 10 258 601.2 Tm -0 Tw -(the alphabetic case correct. )Tj -ET -570 608.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 579.2 Tm -(Compiler keeps Special &REST arguments )Tj -ET -570 596.98 0.99 -19.99 re -f -54.01 576.49 m -558.01 576.49 l -S -570 576.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 561.2 Tm -0.106 Tw -[(The CL Compiler now retains special &REST arguments. The)]TJ -ET -570 575.98 0.99 -18.99 re -f -BT -10 0 0 10 258 549.2 Tm -0.16 Tw -[(Lyric compiler threw away special &REST arguments. This has)]TJ -ET -570 556.98 0.99 -11.99 re -f -BT -10 0 0 10 258 537.2 Tm -0 Tw -(been fixed in the Medley CL Compiler. )Tj -ET -570 544.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 515.2 Tm -(Compiler ignores TEdit formatting )Tj -ET -570 532.98 0.99 -19.99 re -f -54.01 512.49 m -558.01 512.49 l -S -570 512.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 497.2 Tm -0.044 Tw -(COMPILE-FILE will now ignore TEdit formatting, but only if TEdit is)Tj -ET -570 511.98 0.99 -18.99 re -f -BT -10 0 0 10 258 485.2 Tm -0 Tw -(loaded.)Tj -ET -570 492.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 463.2 Tm -(Compiler notices Tail-recursive Lexical Functions )Tj -ET -570 480.98 0.99 -19.99 re -f -54.01 460.49 m -558.01 460.49 l -S -570 460.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 445.2 Tm -0.381 Tw -[(The XCL Compiler now performs tail recursion elimination on)]TJ -ET -570 459.98 0.99 -18.99 re -f -BT -10 0 0 10 258 433.2 Tm -0 Tw -(FLETed lexical functions. )Tj -ET -570 440.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 411.2 Tm -(Compiler Error Message "BUG: Inconsistent stack depths seen" )Tj -ET -570 428.98 0.99 -19.99 re -f -54.01 408.49 m -558.01 408.49 l -S -570 408.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 393.2 Tm -0.318 Tw -(You may occasionally see this error message while compiling.)Tj -ET -570 407.98 0.99 -18.99 re -f -BT -10 0 0 10 258 381.2 Tm -0.091 Tw -(Normally, error messages from the compiler beginning with "BUG")Tj -ET -570 388.98 0.99 -11.99 re -f -BT -10 0 0 10 258 369.2 Tm -0.357 Tw -(indicate an internal compiler error. In this particular case, the)Tj -ET -570 376.98 0.99 -11.99 re -f -BT -10 0 0 10 258 357.2 Tm -0 Tw -(compiler error may reflect an error in the code you are compiling.)Tj -ET -570 364.98 0.99 -11.99 re -f -BT -10 0 0 10 258 338.2 Tm -0.457 Tw -[(There is currently no compile-time argument checking. The)]TJ -ET -570 352.98 0.99 -18.99 re -f -BT -10 0 0 10 258 326.2 Tm -0.539 Tw -(compiler performs an optimization that turns a tail-recursive)Tj -ET -570 333.98 0.99 -11.99 re -f -BT -10 0 0 10 258 314.2 Tm -0.02 Tw -(function call into a jump back to the beginning of the function. If this)Tj -ET -570 321.98 0.99 -11.99 re -f -BT -10 0 0 10 258 302.2 Tm -0.184 Tw -(tail-recursive call has the wrong number of arguments, the stack)Tj -ET -570 309.98 0.99 -11.99 re -f -BT -10 0 0 10 258 290.2 Tm -0.369 Tw -(modeler in the assembler will detect this as incosistent stack)Tj -ET -570 297.98 0.99 -11.99 re -f -BT -10 0 0 10 258 278.2 Tm -0 Tw -(depths, leading to the above error message.)Tj -ET -570 285.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 258 259.2 Tm -(EXAMPLE:)Tj -ET -570 273.98 0.99 -18.99 re -f -BT -/TT12 1 Tf -10 0 0 10 258 241.49 Tm -( \(defun bad-length \(x n\))Tj -ET -570 254.98 0.99 -18.99 re -f -BT -10 0 0 10 258 222.49 Tm -( \(if \(endp x\) n \(bad-length \(cdr x\)\)\)\))Tj -ET -570 235.98 0.99 -18.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 202.2 Tm -0.064 Tw -(Compiling this form will result in the error "BUG: Inconsistent stack)Tj -ET -570 216.98 0.99 -18.99 re -f -BT -10 0 0 10 258 190.2 Tm -0.416 Tw -(depths seen." The recursive call to bad-length has only one)Tj -ET -570 197.98 0.99 -11.99 re -f -BT -10 0 0 10 258 178.2 Tm -0 Tw -(argument, but the function expects two.)Tj -ET -570 185.98 0.99 -11.99 re -f -BT -10 0 0 10 258 159.2 Tm -0.252 Tw -(Thus, if you see this error message, you should check for tail-)Tj -ET -570 173.98 0.99 -18.99 re -f -BT -10 0 0 10 258 147.2 Tm -0 Tw -(recursive function calls with the wrong number of arguments.)Tj -ET -570 154.98 0.99 -11.99 re -f -BT -/TT4 1 Tf -10 0 0 10 54 125.2 Tm -(Format ~C and WRITE-CHAR )Tj -ET -570 142.98 0.99 -19.99 re -f -54.01 122.49 m -558.01 122.49 l -S -570 122.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 107.2 Tm -0.094 Tw -(In accordance with a recommendation of X3J13, the ~C FORMAT)Tj -ET -570 121.98 0.99 -18.99 re -f -BT -10 0 0 10 258 95.2 Tm -0.249 Tw -[(operation with no modifiers now behaves exactly the same as)]TJ -ET -570 102.98 0.99 -11.99 re -f -BT -10 0 0 10 258 83.2 Tm -0.055 Tw -[(WRITE-CHAR for characters with no bits. The Medley release of)]TJ -ET -570 90.98 0.99 -11.99 re -f -BT -10 0 0 10 258 71.2 Tm -0.204 Tw -[(XCL conforms to this; the Lyric release did not. If you need to)]TJ -ET -570 78.98 0.99 -11.99 re -f -BT -10 0 0 10 258 59.2 Tm -0 Tw -(obtain the Lyric behavior of ~C, use ~:C. )Tj -ET -570 66.98 0.99 -11.99 re -f -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -50 0 obj -<< -/Length 1099 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 537.9899 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-13)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj -33.008 74.479 TD -(7. COMMON LISP IMPLEMENTATION)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -/TT4 1 Tf -10 0 0 10 54 730.2 Tm -(WITH-OUTPUT-TO-STRING and WITH-INPUT-FROM-STRING )Tj -ET -570 747.98 0.99 -19.99 re -f -54.01 727.49 m -558.01 727.49 l -S -570 727.98 0.99 -0.99 re -f -BT -/TT2 1 Tf -10 0 0 10 258 712.2 Tm -0.433 Tw -(For consistency with WITH-OPEN-STREAM and WITH-OPEN-)Tj -ET -570 726.98 0.99 -18.99 re -f -BT -10 0 0 10 258 700.2 Tm -0.926 Tw -(FILE, WITH-OUTPUT-TO-STRING and WITH-INPUT-FROM-)Tj -ET -570 707.98 0.99 -11.99 re -f -BT -10 0 0 10 258 688.2 Tm -0.121 Tw -[(STRING now close the stream on exit from the form. WITH-)]TJ -ET -570 695.98 0.99 -11.99 re -f -BT -10 0 0 10 258 676.2 Tm -0.018 Tw -[(OUTPUT-TO-STRING is now significantly faster when writing long)]TJ -ET -570 683.98 0.99 -11.99 re -f -BT -10 0 0 10 258 664.2 Tm -0 Tw -(strings. )Tj -ET -570 671.98 0.99 -11.99 re -f -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -53 0 obj -<< -/Length 384 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-14)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 183.45 18.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, COMMON LISP IMPLEMENTATION)Tj --12.945 74.379 TD -(7. COMMON LISP IMPLEMENTATION )Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -55 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -56 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -57 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -58 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 676 -/Descent -250 -/Flags 262178 -/FontBBox [-168 -218 1000 935] -/FontName /Times-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 461 -/StemH 139 ->> -endobj -59 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 653 -/Descent -250 -/Flags 98 -/FontBBox [-169 -217 1010 883] -/FontName /Times-Italic -/ItalicAngle -15 -/StemV 76 -/XHeight 441 -/StemH 76 ->> -endobj -60 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -61 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -62 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 278 355 0 0 0 667 0 333 333 389 0 278 333 278 0 -556 556 556 556 556 556 556 556 556 556 278 278 0 584 0 0 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 0 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 334 0 334 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 55 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 474 0 0 0 722 0 0 0 389 0 278 333 278 0 -0 0 0 0 0 0 0 556 0 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 944 667 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 500 0 0 0 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 56 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 125 -/Widths [278 0 0 0 0 0 0 0 333 333 389 0 278 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 0 0 0 0 0 278 0 0 556 0 722 0 -0 0 0 0 0 0 0 0 667 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 0 222 222 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 0 334 0 334 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 57 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 58 -/Widths [250 0 0 0 0 0 0 0 0 0 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Bold -/FontDescriptor 58 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Italic -/FontDescriptor 59 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 0 0 0 600 600 600 600 600 600 600 0 -600 600 600 600 600 0 0 600 0 0 600 0 0 600 0 0 -0 600 0 600 0 600 0 0 0 600 0 0 600 600 0 0 -0 0 600 600 0 600 600 0 600 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 60 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 98 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 0 0 250 0 -500 500 500 500 500 500 500 500 500 500 278 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 61 0 R ->> -endobj -43 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 41 -/Widths [278 0 0 0 0 0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 62 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -25 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 27 0 R -/Contents 26 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 45 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 45 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 45 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 45 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -63 0 obj -<< -/S /D ->> -endobj -64 0 obj -<< -/Nums [0 63 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 16 0 R 19 0 R 22 0 R 25 0 R 28 0 R 31 0 R 34 0 R 37 0 R] -/Count 10 -/Parent 44 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [40 0 R 46 0 R 49 0 R 52 0 R] -/Count 4 -/Parent 44 0 R ->> -endobj -44 0 obj -<< -/Type /Pages -/Kids [8 0 R 45 0 R ] -/Count 14 -/MediaBox [0 0 612 792] ->> -endobj -65 0 obj -<< -/CreationDate (D:20210119174410-06'00') -/ModDate (D:20210119174410-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -66 0 obj -<< -/Type /Catalog -/Pages 44 0 R -/PageLabels 64 0 R ->> -endobj -xref -0 67 -0000000000 65535 f -0000090887 00000 n -0000000016 00000 n -0000005888 00000 n -0000087936 00000 n -0000088495 00000 n -0000089015 00000 n -0000086185 00000 n -0000092117 00000 n -0000090967 00000 n -0000006005 00000 n -0000014333 00000 n -0000089452 00000 n -0000089676 00000 n -0000089845 00000 n -0000090353 00000 n -0000091049 00000 n -0000014502 00000 n -0000020539 00000 n -0000091132 00000 n -0000020695 00000 n -0000031114 00000 n -0000091215 00000 n -0000031270 00000 n -0000037835 00000 n -0000091298 00000 n -0000037978 00000 n -0000044252 00000 n -0000091381 00000 n -0000044395 00000 n -0000051219 00000 n -0000091464 00000 n -0000051362 00000 n -0000057402 00000 n -0000091547 00000 n -0000057571 00000 n -0000063988 00000 n -0000091630 00000 n -0000064106 00000 n -0000070287 00000 n -0000091713 00000 n -0000070407 00000 n -0000077921 00000 n -0000090689 00000 n -0000092347 00000 n -0000092252 00000 n -0000091797 00000 n -0000078090 00000 n -0000084274 00000 n -0000091881 00000 n -0000084394 00000 n -0000085546 00000 n -0000091965 00000 n -0000085653 00000 n -0000086089 00000 n -0000086325 00000 n -0000086520 00000 n -0000086726 00000 n -0000086931 00000 n -0000087133 00000 n -0000087333 00000 n -0000087524 00000 n -0000087721 00000 n -0000092049 00000 n -0000092077 00000 n -0000092438 00000 n -0000092570 00000 n -trailer -<< -/Size 67 -/Root 66 0 R -/Info 65 0 R -/ID [<5af53c8976e9347a250fb6173398d556><5af53c8976e9347a250fb6173398d556>] ->> -startxref -92640 -%%EOF diff --git a/docs/ReleaseNote/TABS2L.pdf b/docs/ReleaseNote/TABS2L.pdf deleted file mode 100644 index b6afd96a..00000000 --- a/docs/ReleaseNote/TABS2L.pdf +++ /dev/null @@ -1,157 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 318 ->> -stream -BT -/TT2 1 Tf -8 0 0 8 0.04 783.96 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: SKIO.GETFN.2)Tj -ET -q -1 i -0 792 612 -791.94 re -W n -0 G -0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d -0.01 775.93 m -99.6 775.93 l -99.6 775.93 m -99.6 791.95 l -0.01 791.95 m -99.6 791.95 l -0.01 791.95 m -0.01 775.93 l -S -Q -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -5 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -7 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778 -0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611 -611 0 0 0 333 0 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 7 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/S /D ->> -endobj -9 0 obj -<< -/Nums [0 8 0 R ] ->> -endobj -6 0 obj -<< -/Type /Pages -/Kids [1 0 R] -/Count 1 -/MediaBox [0 0 612 792] ->> -endobj -10 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -11 0 obj -<< -/Type /Catalog -/Pages 6 0 R -/PageLabels 9 0 R ->> -endobj -xref -0 12 -0000000000 65535 f -0000001228 00000 n -0000000016 00000 n -0000000385 00000 n -0000000825 00000 n -0000000480 00000 n -0000001373 00000 n -0000000620 00000 n -0000001308 00000 n -0000001335 00000 n -0000001454 00000 n -0000001586 00000 n -trailer -<< -/Size 12 -/Root 11 0 R -/Info 10 0 R -/ID [<8a8c3746cf3e6e016b12f3bf4d7b0363><8a8c3746cf3e6e016b12f3bf4d7b0363>] ->> -startxref -1654 -%%EOF diff --git a/docs/ReleaseNote/TABSINFOP.pdf b/docs/ReleaseNote/TABSINFOP.pdf deleted file mode 100644 index bea8615a..00000000 --- a/docs/ReleaseNote/TABSINFOP.pdf +++ /dev/null @@ -1,157 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 318 ->> -stream -BT -/TT2 1 Tf -8 0 0 8 0.04 783.96 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: SKIO.GETFN.2)Tj -ET -q -1 i -0 792 612 -791.94 re -W n -0 G -0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d -0.01 775.93 m -99.6 775.93 l -99.6 775.93 m -99.6 791.95 l -0.01 791.95 m -99.6 791.95 l -0.01 791.95 m -0.01 775.93 l -S -Q -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -5 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -7 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778 -0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611 -611 0 0 0 333 0 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 7 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/S /D ->> -endobj -9 0 obj -<< -/Nums [0 8 0 R ] ->> -endobj -6 0 obj -<< -/Type /Pages -/Kids [1 0 R] -/Count 1 -/MediaBox [0 0 612 792] ->> -endobj -10 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -11 0 obj -<< -/Type /Catalog -/Pages 6 0 R -/PageLabels 9 0 R ->> -endobj -xref -0 12 -0000000000 65535 f -0000001228 00000 n -0000000016 00000 n -0000000385 00000 n -0000000825 00000 n -0000000480 00000 n -0000001373 00000 n -0000000620 00000 n -0000001308 00000 n -0000001335 00000 n -0000001454 00000 n -0000001586 00000 n -trailer -<< -/Size 12 -/Root 11 0 R -/Info 10 0 R -/ID [<04821c2e391d350e759a439f0a49e2f9><04821c2e391d350e759a439f0a49e2f9>] ->> -startxref -1654 -%%EOF diff --git a/docs/ReleaseNote/TABSLAYOUTL.pdf b/docs/ReleaseNote/TABSLAYOUTL.pdf deleted file mode 100644 index 85a18c8b..00000000 --- a/docs/ReleaseNote/TABSLAYOUTL.pdf +++ /dev/null @@ -1,157 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 318 ->> -stream -BT -/TT2 1 Tf -8 0 0 8 0.04 783.96 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: SKIO.GETFN.2)Tj -ET -q -1 i -0 792 612 -791.94 re -W n -0 G -0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d -0.01 775.93 m -99.6 775.93 l -99.6 775.93 m -99.6 791.95 l -0.01 791.95 m -99.6 791.95 l -0.01 791.95 m -0.01 775.93 l -S -Q -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -5 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -7 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778 -0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611 -611 0 0 0 333 0 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 7 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/S /D ->> -endobj -9 0 obj -<< -/Nums [0 8 0 R ] ->> -endobj -6 0 obj -<< -/Type /Pages -/Kids [1 0 R] -/Count 1 -/MediaBox [0 0 612 792] ->> -endobj -10 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -11 0 obj -<< -/Type /Catalog -/Pages 6 0 R -/PageLabels 9 0 R ->> -endobj -xref -0 12 -0000000000 65535 f -0000001228 00000 n -0000000016 00000 n -0000000385 00000 n -0000000825 00000 n -0000000480 00000 n -0000001373 00000 n -0000000620 00000 n -0000001308 00000 n -0000001335 00000 n -0000001454 00000 n -0000001586 00000 n -trailer -<< -/Size 12 -/Root 11 0 R -/Info 10 0 R -/ID [] ->> -startxref -1654 -%%EOF diff --git a/docs/ReleaseNote/TABSPEC.pdf b/docs/ReleaseNote/TABSPEC.pdf deleted file mode 100644 index a87c4513..00000000 --- a/docs/ReleaseNote/TABSPEC.pdf +++ /dev/null @@ -1,423 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 2294 ->> -stream -BT -/TT2 1 Tf -14 0 0 14 219.66 709.08 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(TAB SPECIFICATIONS for)Tj -6.1671 -1 TD -( )Tj --10.475 -1 TD -(LISP RELEASE NOTES, MEDLEY RELEASE )Tj -9.5864 -1 TD -(and)Tj --10.2243 -1 TD -(LISP LIBRARY MODULES, MEDLEY RELEASE )Tj --5.6014 -3 TD -(TABS)Tj -/TT4 1 Tf -12 0 0 12 72 584.64 Tm -(Tab Paper Size )Tj -/TT6 1 Tf -7.6694 0 TD -( 8 1/2 by 11 inches \(excluding the actual tab\))Tj -/TT4 1 Tf --7.6694 -2 TD -(Stock Type)Tj -/TT6 1 Tf -6 0 TD -( Ledger; matte finish)Tj -/TT4 1 Tf --6 -2 TD -(Stock Weight)Tj -/TT6 1 Tf -9 0 TD -(110 pound)Tj -/TT4 1 Tf --9 -2 TD -(Stock Color)Tj -/TT6 1 Tf -6 0 TD -( White)Tj -/TT4 1 Tf --6 -2 TD -(Tab Coating)Tj -/TT6 1 Tf -6 0 TD -( Mylar )Tj -/TT4 1 Tf --6 -2 TD -(Mylar Color)Tj -/TT6 1 Tf -6 0 TD -[( )-4888.7( )]TJ -3 -1 TD -(PMS 422-C coordinated gray)Tj -/TT4 1 Tf --9 -2 TD -(Holes )Tj -/TT6 1 Tf -3.5566 0 TD -( 3-hole punch)Tj -/TT4 1 Tf -6.6157 0 TD -(, )Tj -/TT6 1 Tf -0.8335 0 TD -( 5/16" diameter holes )Tj -/TT4 1 Tf --11.0059 -2 TD -(Hole Reinforcement)Tj -/TT6 1 Tf -12 0 TD -( clear mylar strip )Tj -/TT4 1 Tf --12 -2 TD -(Hole Placement 1st hole centered:)Tj -/TT6 1 Tf -16.561 0 TD -( 1 3/16" from top of page, 7/16" in from side )Tj -/TT4 1 Tf --10.561 -1 TD -( 2nd hole centered:)Tj -/TT6 1 Tf -10.8355 0 TD -( 5 7/16" from top of page, 7/16" in from side)Tj -/TT4 1 Tf --10.8355 -1 TD -( 3rd hole centered:)Tj -/TT6 1 Tf -10.8916 0 TD -( 9 11/16" from top of page, 7/16" in from side )Tj -/TT2 1 Tf --16.8916 -3.1667 TD -(Tab Cut Requirements)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -72.01 315.49 m -576.01 315.49 l -S -BT -/TT4 1 Tf -12 0 0 12 72 293.64 Tm -(Number of Tab Cuts)Tj -/TT6 1 Tf -12 0 TD -(5)Tj -/TT4 1 Tf --12 -2 TD -(Size of Cuts \(Length\))Tj -/TT6 1 Tf -12 0 TD -( 2 3/8" )Tj -/TT4 1 Tf --12 -2 TD -(Depth of Tab Cut)Tj -/TT6 1 Tf -9 0 TD -( 1/2 inch)Tj -/TT4 1 Tf -4.3359 0 TD -( )Tj --13.3359 -2 TD -(Cut Shapes)Tj -/TT6 1 Tf -6 0 TD -( straight edge, curved top, curved bottom )Tj -/TT2 1 Tf --6 -2.1667 TD -(Print Specifications)Tj -ET -72.01 192.49 m -576.01 192.49 l -S -BT -/TT4 1 Tf -12 0 0 12 72 170.64 Tm -(One or Both Sides)Tj -/TT6 1 Tf -9 0 TD -(Both sides)Tj -/TT4 1 Tf --9 -2 TD -(Font)Tj -/TT6 1 Tf -3 0 TD -(Modern/Optima )Tj -/TT4 1 Tf --3 -2 TD -(Point Size)Tj -/TT6 1 Tf -6 0 TD -(10)Tj -/TT4 1 Tf --6 -2 TD -(Ink Color)Tj -/TT6 1 Tf -6 0 TD -(Black)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 396 ->> -stream -BT -/TT6 1 Tf -10 0 0 10 72 756 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2)Tj -/TT4 1 Tf -12 0 0 12 72 710.64 Tm -(Type Spacing)Tj -/TT6 1 Tf -9 0 TD -(Centered)Tj -/TT2 1 Tf -14 0 0 14 72 661.08 Tm -(PACKAGING INSTRUCTIONS:)Tj -/TT6 1 Tf -14.2222 0 TD -( Shrink wrap with text)Tj -/TT2 1 Tf --14.2222 -3 TD -(TOTAL NUMBER COPIES:)Tj -/TT4 1 Tf -12 0 0 12 245.4414 619.08 Tm -( )Tj -/TT6 1 Tf -0.5557 0 TD -( 500 )Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -12 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -13 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262240 -/FontBBox [-174 -228 1114 962] -/FontName /Helvetica-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -14 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 -0 0 0 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 722 611 833 722 778 -667 0 722 667 611 722 0 0 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 0 0 278 0 0 0 889 611 611 -611 611 389 556 333 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 12 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 0 0 0 -0 556 556 556 0 0 0 0 0 0 333 0 0 0 0 0 -0 0 722 722 722 0 611 0 722 278 0 0 611 833 722 778 -667 0 722 667 611 0 0 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 0 0 0 556 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-BoldOblique -/FontDescriptor 13 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 355 0 0 0 0 0 333 333 0 0 278 333 0 278 -556 556 556 556 556 556 556 556 556 556 0 278 0 0 0 0 -0 0 667 722 0 0 0 0 0 0 0 0 556 833 0 778 -667 0 0 667 0 0 0 944 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 14 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -15 0 obj -<< -/S /D ->> -endobj -16 0 obj -<< -/Nums [0 15 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R] -/Count 2 -/MediaBox [0 0 612 792] ->> -endobj -17 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -18 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 16 0 R ->> -endobj -xref -0 19 -0000000000 65535 f -0000005115 00000 n -0000000016 00000 n -0000002362 00000 n -0000003801 00000 n -0000004221 00000 n -0000004670 00000 n -0000003045 00000 n -0000005345 00000 n -0000005195 00000 n -0000002479 00000 n -0000002927 00000 n -0000003185 00000 n -0000003391 00000 n -0000003606 00000 n -0000005277 00000 n -0000005305 00000 n -0000005432 00000 n -0000005564 00000 n -trailer -<< -/Size 19 -/Root 18 0 R -/Info 17 0 R -/ID [] ->> -startxref -5633 -%%EOF diff --git a/docs/ReleaseNote/TOC.pdf b/docs/ReleaseNote/TOC.pdf deleted file mode 100644 index e07f5f7e..00000000 --- a/docs/ReleaseNote/TOC.pdf +++ /dev/null @@ -1,3930 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4456 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 551.34 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(iii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -/TT4 1 Tf -18 0 0 18 363.97 762.97 Tm -(TABLE OF CONTENTS )Tj -ET -6 w -258.01 755.99 m -558.01 755.99 l -S -BT -14 0 0 14 54 672.08 Tm -(Preface )Tj -ET -0.75 w -54 668.99 m -543.56 668.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.56 672.08 Tm -(xvii)Tj -ET -543.56 668.99 m -558 668.99 l -S -BT -10 0 0 10 138 654.2 Tm -[(How the Release Notes are Organized )-22602.4(xvii)]TJ -ET -138 651.99 m -558 651.99 l -S -BT -10 0 0 10 138 637.2 Tm -[(Notational Conventions )-29160.7(xviii)]TJ -ET -138 634.99 m -558 634.99 l -S -BT -10 0 0 10 138 620.2 Tm -[(How to Use the Release Notes )-25549.3(xviii)]TJ -ET -138 617.99 m -558 617.99 l -S -BT -10 0 0 10 138 603.2 Tm -[(Related Literature )-31995.3(xix)]TJ -ET -138 600.99 m -558 600.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 583.08 Tm -(1. Introduction)Tj -ET -54 579.99 m -543.55 579.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 583.08 Tm -(1-1)Tj -ET -543.55 579.99 m -558 579.99 l -S -BT -10 0 0 10 138 565.2 Tm -[(Summary of Medley Changes )-25159( 1-1)]TJ -ET -138 562.99 m -558 562.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 545.08 Tm -(2. Notes and Cautions)Tj -ET -54 541.99 m -543.55 541.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 545.08 Tm -(2-1)Tj -ET -543.55 541.99 m -558 541.99 l -S -BT -10 0 0 10 138 527.2 Tm -[(Changes and Cautions in the Medley Release )-17985( 2-1)]TJ -ET -138 524.99 m -558 524.99 l -S -BT -10 0 0 10 138 510.2 Tm -[(Changes and Cautions in the Lyric Release )-20487.6(2-1)]TJ -ET -138 507.99 m -558 507.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 490.08 Tm -(3. Common Lisp/Interlisp-D Integration)Tj -ET -54 486.99 m -543.55 486.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 490.08 Tm -(3-1)Tj -ET -543.55 486.99 m -558 486.99 l -S -BT -10 0 0 10 138 472.2 Tm -(Chapter 2 Litatoms)Tj -40.555 0 TD -(3-1)Tj -ET -138 469.99 m -558 469.99 l -S -BT -10 0 0 10 162 455.2 Tm -[(Section 2.1 Using Litatoms as Variables)-20479.2(3-2)]TJ -ET -162 452.99 m -558 452.99 l -S -BT -10 0 0 10 162 438.2 Tm -[(Section 2.3 Property Lists)-26760.5(3-2)]TJ -ET -162 435.99 m -558 435.99 l -S -BT -10 0 0 10 162 421.2 Tm -[(Section 2.4 Print Names)-27372.3(3-2)]TJ -ET -162 418.99 m -558 418.99 l -S -BT -10 0 0 10 162 404.2 Tm -[(Section 2.5 Characters)-27983.1(3-3)]TJ -ET -162 401.99 m -558 401.99 l -S -BT -10 0 0 10 138 387.2 Tm -(Chapter 4 Strings)Tj -40.555 0 TD -(3-3)Tj -ET -138 384.99 m -558 384.99 l -S -BT -10 0 0 10 138 370.2 Tm -(Chapter 5 Arrays )Tj -40.555 0 TD -(3-3)Tj -ET -138 367.99 m -558 367.99 l -S -BT -10 0 0 10 138 353.2 Tm -[(Chapter 6 Hash Arrays)-30384.1(3-4)]TJ -ET -138 350.99 m -558 350.99 l -S -BT -10 0 0 10 138 336.2 Tm -[(Chapter 7 Numbers and Arithmetic Functions)-20546.2(3-4)]TJ -ET -138 333.99 m -558 333.99 l -S -BT -10 0 0 10 162 319.2 Tm -[(Section 7.2 Integer Arithmetic)-25037.3(3-4)]TJ -ET -162 316.99 m -558 316.99 l -S -BT -10 0 0 10 138 302.2 Tm -[(Chapter 10 Function Definition, Manipulation, and Evaluation)-13649.2(3-5)]TJ -ET -138 299.99 m -558 299.99 l -S -BT -10 0 0 10 162 285.2 Tm -[(Section 10.1 Function Types)-25481.2(3-5)]TJ -ET -162 282.99 m -558 282.99 l -S -BT -10 0 0 10 162 268.2 Tm -[(Section 10.6 Macros)-29039.3(3-5)]TJ -ET -162 265.99 m -558 265.99 l -S -BT -10 0 0 10 162 251.2 Tm -[(Section 10.6.1 DEFMACRO)-25761.4(3-5)]TJ -ET -162 248.99 m -558 248.99 l -S -BT -10 0 0 10 138 234.2 Tm -[(Chapter 11 Stack Functions)-28215.2(3-5)]TJ -ET -138 231.99 m -558 231.99 l -S -BT -10 0 0 10 162 217.2 Tm -[(Section 11.1 The Spaghetti Stack)-23312.2(3-5)]TJ -ET -162 214.99 m -558 214.99 l -S -BT -10 0 0 10 138 200.2 Tm -[(Chapter 12 Miscellaneous)-28993(3-6)]TJ -ET -138 197.99 m -558 197.99 l -S -BT -10 0 0 10 162 183.2 Tm -[(Section 12.4 System Version Information)-20034.9(3-6)]TJ -ET -162 180.99 m -558 180.99 l -S -BT -10 0 0 10 162 166.2 Tm -[(Section 12.8 Pattern Matching)-24758(3-6)]TJ -ET -162 163.99 m -558 163.99 l -S -BT -10 0 0 10 138 149.2 Tm -[(Chapter 13 Interlisp Executive)-27214.7(3-7)]TJ -ET -138 146.99 m -558 146.99 l -S -BT -10 0 0 10 138 132.2 Tm -[(Chapter 14 Errors and Breaks)-27270.8(3-9)]TJ -ET -138 129.99 m -558 129.99 l -S -BT -10 0 0 10 162 115.2 Tm -[(Section 14.3 Break Commands)-24314.7(3-9)]TJ -ET -162 112.99 m -558 112.99 l -S -BT -10 0 0 10 162 98.2 Tm -[(Section 14.6 Creating Breaks with BREAK1)-18867.4(3-9)]TJ -ET -162 95.99 m -558 95.99 l -S -BT -10 0 0 10 162 81.2 Tm -[(Section 14.7 Signalling Errors)-24981.2(3-9)]TJ -ET -162 78.99 m -558 78.99 l -S -BT -10 0 0 10 162 64.2 Tm -[(Section 14.8 Catching Errors)-24814.8(3-10)]TJ -ET -162 61.99 m -558 61.99 l -S -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -9 0 obj -<< -/Length 4744 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(iv)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(Section 14.9 Changing and Restoring System State)-14751.8(3-11)]TJ -ET -0.75 w -162 727.99 m -558 727.99 l -S -BT -10 0 0 10 162 713.2 Tm -[(Section 14.10 Error List)-27149.3(3-11)]TJ -ET -162 710.99 m -558 710.99 l -S -BT -10 0 0 10 138 696.2 Tm -[(Chapter 15 Breaking Functions and Debugging)-19151.8(3-13)]TJ -ET -138 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(Section 15.1 Breaking Functions and Debugging)-16140(3-13)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(Section 15.2 Advising)-27981.8(3-14)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 138 645.2 Tm -[(Chapter 16 List Structure Editor)-25992.2(3-15)]TJ -ET -138 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -[(Switching Between Editors)-25759.6(3-16)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -10 0 0 10 162 611.2 Tm -(Packages )Tj -37.599 0 TD -(3-16)Tj -ET -162 608.99 m -558 608.99 l -S -BT -10 0 0 10 162 594.2 Tm -[(Starting a Lisp Editor)-28316.3(3-16)]TJ -ET -162 591.99 m -558 591.99 l -S -BT -10 0 0 10 162 577.2 Tm -[(Mapping the Old Edit Interface to ED)-21312.4(3-18)]TJ -ET -162 574.99 m -558 574.99 l -S -BT -10 0 0 10 162 560.2 Tm -[(Editing Values Directly )-27316.8(3-18)]TJ -ET -162 557.99 m -558 557.99 l -S -BT -10 0 0 10 162 543.2 Tm -[(Section 16.18 Editor Functions)-23979.9(3-19)]TJ -ET -162 540.99 m -558 540.99 l -S -BT -10 0 0 10 138 526.2 Tm -[(Chapter 17 File Package)-28992.6(3-19)]TJ -ET -138 523.99 m -558 523.99 l -S -BT -10 0 0 10 162 509.2 Tm -[(Reader Environments and the File Manager)-18199.6(3-20)]TJ -ET -162 506.99 m -558 506.99 l -S -BT -10 0 0 10 162 492.2 Tm -[(Modifying Standard Readtables)-23645.9(3-22)]TJ -ET -162 489.99 m -558 489.99 l -S -BT -10 0 0 10 162 475.2 Tm -[(Programmers Interface to Reader Environments)-16090.2(3-23)]TJ -ET -162 472.99 m -558 472.99 l -S -BT -10 0 0 10 162 458.2 Tm -[(Section 17.1 Loading Files)-25813.3(3-24)]TJ -ET -162 455.99 m -558 455.99 l -S -BT -10 0 0 10 162 441.2 Tm -[(Integration of Interlisp and Common Lisp LOAD Functions)-11975(3-24)]TJ -ET -162 438.99 m -558 438.99 l -S -BT -10 0 0 10 162 424.2 Tm -[(Section 17.2 Storing Files)-26204(3-25)]TJ -ET -162 421.99 m -558 421.99 l -S -BT -10 0 0 10 162 407.2 Tm -[(Section 17.8.2 Defining New File Manager Types)-15865.6(3-26)]TJ -ET -162 404.99 m -558 404.99 l -S -BT -10 0 0 10 162 390.2 Tm -[(Definers: A New Facility for Extending the File Manager)-12755.2(3-26)]TJ -ET -162 387.99 m -558 387.99 l -S -BT -10 0 0 10 138 373.2 Tm -[(Chapter 18 Compiler)-30772.4(3-31)]TJ -ET -138 370.99 m -558 370.99 l -S -BT -10 0 0 10 162 356.2 Tm -[(Warning when Loading Compiled Files )-20201(3-32)]TJ -ET -162 353.99 m -558 353.99 l -S -BT -10 0 0 10 162 339.2 Tm -[(Warning with Declarations )-25427.6(3-32)]TJ -ET -162 336.99 m -558 336.99 l -S -BT -10 0 0 10 162 322.2 Tm -[(Section 18.3 Local Variables and Special Variables )-14695.7(3-33)]TJ -ET -162 319.99 m -558 319.99 l -S -BT -10 0 0 10 138 305.2 Tm -[(Chapter 19 Masterscope)-29048.8(3-33)]TJ -ET -138 302.99 m -558 302.99 l -S -BT -10 0 0 10 138 288.2 Tm -[(Chapter 21 CLISP)-31883.3(3-33)]TJ -ET -138 285.99 m -558 285.99 l -S -BT -10 0 0 10 138 271.2 Tm -[(Chapter 22 Performance Issues)-25880.8(3-36)]TJ -ET -138 268.99 m -558 268.99 l -S -BT -10 0 0 10 162 254.2 Tm -[(Section 22.3 Performance Measuring)-21090.2(3-36)]TJ -ET -162 251.99 m -558 251.99 l -S -BT -10 0 0 10 138 237.2 Tm -[(Chapter 24 Streams and Files)-26714.8(3-37)]TJ -ET -138 234.99 m -558 234.99 l -S -BT -10 0 0 10 162 220.2 Tm -[(Section 24.15 Deleting, Copying, and Renaming Files)-13862.7(3-38)]TJ -ET -162 217.99 m -558 217.99 l -S -BT -10 0 0 10 138 203.2 Tm -[(Chapter 25 Input/Output Functions)-24656.2(3-38)]TJ -ET -138 200.99 m -558 200.99 l -S -BT -10 0 0 10 162 186.2 Tm -[(Variables Affecting Input/Output)-23479.4(3-38)]TJ -ET -162 183.99 m -558 183.99 l -S -BT -10 0 0 10 162 169.2 Tm -[(Integration of Common Lisp and Interlisp Input/Output Functions)-9194.2(3-40)]TJ -ET -162 166.99 m -558 166.99 l -S -BT -10 0 0 10 162 152.2 Tm -[(Section 25.2 Input Functions)-24924.2(3-40)]TJ -ET -162 149.99 m -558 149.99 l -S -BT -10 0 0 10 162 135.2 Tm -[(Section 25.3 Output Functions)-24146.4(3-41)]TJ -ET -162 132.99 m -558 132.99 l -S -BT -10 0 0 10 162 118.2 Tm -[(Printing Differences Between IL:PRIN2 and CL:PRIN1)-13642.9(3-42)]TJ -ET -162 115.99 m -558 115.99 l -S -BT -10 0 0 10 162 101.2 Tm -[(Internal Printing Functions)-25981.8(3-42)]TJ -ET -162 98.99 m -558 98.99 l -S -BT -10 0 0 10 162 84.2 Tm -[(Printing Differences Between Koto and Lyric)-18033.1(3-42)]TJ -ET -162 81.99 m -558 81.99 l -S -BT -10 0 0 10 162 67.2 Tm -[(Bitmap Syntax)-31151.7(3-43)]TJ -ET -162 64.99 m -558 64.99 l -S -endstream -endobj -10 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -12 0 obj -<< -/Length 4807 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 553 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(v)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -39.787 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(Section 25.8 Readtables)-26702.5(3-43)]TJ -ET -0.75 w -162 727.99 m -558 727.99 l -S -BT -10 0 0 10 162 713.2 Tm -[(Differences Between Interlisp and Common Lisp Readtables)-10862.7(3-44)]TJ -ET -162 710.99 m -558 710.99 l -S -BT -10 0 0 10 162 696.2 Tm -[(Section 25.8.2 New Readtable Syntax Classes)-16920.8(3-45)]TJ -ET -162 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(Additional Readtable Properties)-23534.5(3-45)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(Section 25.8 Predefined Readtables)-21587.8(3-47)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 162 645.2 Tm -[(Koto Compatibility Considerations)-22591.7(3-48)]TJ -ET -162 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -[(Specifying Readtables and Packages)-21032.6(3-48)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -10 0 0 10 162 611.2 Tm -[(The T Readtable)-30150.3(3-48)]TJ -ET -162 608.99 m -558 608.99 l -S -BT -10 0 0 10 162 594.2 Tm -[(PQUOTE Printed Files)-27540.9(3-49)]TJ -ET -162 591.99 m -558 591.99 l -S -BT -10 0 0 10 162 577.2 Tm -[(Back-Quote Facility)-28929.6(3-49)]TJ -ET -162 574.99 m -558 574.99 l -S -BT -10 0 0 10 138 558.2 Tm -[(Chapter 28 Windows and Menus )-24935.5(3-49)]TJ -ET -138 555.99 m -558 555.99 l -S -BT -10 0 0 10 162 541.2 Tm -[(Section 28.5.1 Menu Fields )-24369.5(3-49)]TJ -ET -162 538.99 m -558 538.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 521.08 Tm -(4. Changes to Interlisp-D in Lyric/Medley )Tj -ET -54 517.99 m -331.64 517.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 521.08 Tm -(4-1)Tj -ET -331.64 517.99 m -558 517.99 l -S -BT -10 0 0 10 138 501.2 Tm -(Chapter 3 Lists)Tj -40.555 0 TD -(4-1)Tj -ET -138 498.99 m -558 498.99 l -S -BT -10 0 0 10 162 484.2 Tm -[(Section 3.2 Building Lists From Left To Right)-18090.1(4-1)]TJ -ET -162 481.99 m -558 481.99 l -S -BT -10 0 0 10 162 467.2 Tm -[(Section 3.10 Sorting Lists )-26259.5(4-1)]TJ -ET -162 464.99 m -558 464.99 l -S -BT -10 0 0 10 138 450.2 Tm -[(Chapter 6 Hash Arrays)-30106.3(4-1)]TJ -ET -138 447.99 m -558 447.99 l -S -BT -10 0 0 10 162 433.2 Tm -[(Section 6.1 Hash Overflow)-26316.1(4-2)]TJ -ET -162 430.99 m -558 430.99 l -S -BT -10 0 0 10 138 416.2 Tm -[(Chapter 7 Integer Arithmetic)-28049.1(4-2)]TJ -ET -138 413.99 m -558 413.99 l -S -BT -10 0 0 10 162 399.2 Tm -[(Section 7.3 Logical Arithmetic Functions)-20368.4(4-3)]TJ -ET -162 396.99 m -558 396.99 l -S -BT -10 0 0 10 162 382.2 Tm -[(Section 7.5 Other Arithmetic Functions)-21036.4(4-3)]TJ -ET -162 379.99 m -558 379.99 l -S -BT -10 0 0 10 138 365.2 Tm -[(Chapter 8 Record Package )-27936.8(4-3)]TJ -ET -138 362.99 m -558 362.99 l -S -BT -10 0 0 10 138 348.2 Tm -[(Chapter 9 Conditionals and Iterative Statements)-19265(4-3)]TJ -ET -138 345.99 m -558 345.99 l -S -BT -10 0 0 10 162 331.2 Tm -[(Section 9.2 Equality Predicates)-24313.7(4-3)]TJ -ET -162 328.99 m -558 328.99 l -S -BT -10 0 0 10 162 314.2 Tm -[(Section 9.8.3 Condition I.s. oprs)-23980.2(4-3)]TJ -ET -162 311.99 m -558 311.99 l -S -BT -10 0 0 10 138 297.2 Tm -[(Chapter 10 Function Definition, Manipulation, and Evaluation)-13649.2(4-4)]TJ -ET -138 294.99 m -558 294.99 l -S -BT -10 0 0 10 162 280.2 Tm -[(Section 10.2 Defining Functions)-24035.4(4-4)]TJ -ET -162 277.99 m -558 277.99 l -S -BT -10 0 0 10 162 263.2 Tm -[(Section 10.5 Functional Arguments)-22590.5(4-4)]TJ -ET -162 260.99 m -558 260.99 l -S -BT -10 0 0 10 162 246.2 Tm -[(Section 10.6.2 Interpreting Macros)-22868.9(4-4)]TJ -ET -162 243.99 m -558 243.99 l -S -BT -10 0 0 10 138 229.2 Tm -[(Chapter 11 Variable Bindings and the Interlisp Stack)-17374.3(4-4)]TJ -ET -138 226.99 m -558 226.99 l -S -BT -10 0 0 10 162 212.2 Tm -[(Section 11.2.1 Searching the Stack)-22533.9(4-5)]TJ -ET -162 209.99 m -558 209.99 l -S -BT -10 0 0 10 162 195.2 Tm -[(Section 11.2.2 Variable Bindings in Stack Frames)-16198.9(4-5)]TJ -ET -162 192.99 m -558 192.99 l -S -BT -10 0 0 10 162 178.2 Tm -[(Section 11.2.5 Releasing and Reusing Stack Pointers)-14418.2(4-5)]TJ -ET -162 175.99 m -558 175.99 l -S -BT -10 0 0 10 162 161.2 Tm -[(Section 11.2.7 Other Stack Functions)-21590.6(4-5)]TJ -ET -162 158.99 m -558 158.99 l -S -BT -10 0 0 10 138 144.2 Tm -[(Chapter 12 Miscellaneous)-28993(4-6)]TJ -ET -138 141.99 m -558 141.99 l -S -BT -10 0 0 10 162 127.2 Tm -[(Section 12.2 Idle Mode)-27926(4-6)]TJ -ET -162 124.99 m -558 124.99 l -S -BT -10 0 0 10 162 110.2 Tm -[(Section 12.3 Saving Virtual Memory State)-19645.7(4-7)]TJ -ET -162 107.99 m -558 107.99 l -S -BT -10 0 0 10 162 93.2 Tm -[(Section 12.4 System Version Information)-20034.9(4-7)]TJ -ET -162 90.99 m -558 90.99 l -S -BT -10 0 0 10 138 76.2 Tm -[(Chapter 13 Interlisp Executive)-27214.7(4-8)]TJ -ET -138 73.99 m -558 73.99 l -S -BT -10 0 0 10 138 59.2 Tm -[(Chapter 14 Errors and Breaks)-27270.8(4-8)]TJ -ET -138 56.99 m -558 56.99 l -S -endstream -endobj -13 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -15 0 obj -<< -/Length 4821 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(vi)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 728.2 Tm -[(Section 14.5 Break Window Variables)-21424(4-8)]TJ -ET -0.75 w -162 725.99 m -558 725.99 l -S -BT -10 0 0 10 162 709.2 Tm -[(Section 14.8 Catching Errors )-24815.2(4-8)]TJ -ET -162 706.99 m -558 706.99 l -S -BT -10 0 0 10 138 692.2 Tm -[(Chapter 17 File Package)-29548.7(4-9)]TJ -ET -138 689.99 m -558 689.99 l -S -BT -10 0 0 10 162 675.2 Tm -[(Section 17.8.1 Functions for Manipulating Typed Definitions)-11751.2(4-9)]TJ -ET -162 672.99 m -558 672.99 l -S -BT -10 0 0 10 162 658.2 Tm -[(Section 17.8.2 Defining New File Package Types)-16476.8(4-9)]TJ -ET -162 655.99 m -558 655.99 l -S -BT -10 0 0 10 162 641.2 Tm -[(Section 17.9.2 Variables )-27036.8(4-9)]TJ -ET -162 638.99 m -558 638.99 l -S -BT -10 0 0 10 162 624.2 Tm -[(Section 17.9.8 Defining New File Package Commands)-14087.1(4-9)]TJ -ET -162 621.99 m -558 621.99 l -S -BT -10 0 0 10 162 607.2 Tm -[(Section 17.11 Symbolic File Format)-22370.8(4-9)]TJ -ET -162 604.99 m -558 604.99 l -S -BT -10 0 0 10 162 590.2 Tm -[(Section 17.11.3 File Maps)-26037(4-10)]TJ -ET -162 587.99 m -558 587.99 l -S -BT -10 0 0 10 138 573.2 Tm -[(Chapter 18 Compiler)-30772.4(4-10)]TJ -ET -138 570.99 m -558 570.99 l -S -BT -10 0 0 10 138 556.2 Tm -[(Chapter 21 CLISP)-31883.3(4-10)]TJ -ET -138 553.99 m -558 553.99 l -S -BT -10 0 0 10 162 539.2 Tm -[(Section 21.8 Miscellaneous Functions and Variables)-14418.8(4-10)]TJ -ET -162 536.99 m -558 536.99 l -S -BT -10 0 0 10 138 522.2 Tm -[(Chapter 22 Performance Issues)-25603(4-11)]TJ -ET -138 519.99 m -558 519.99 l -S -BT -10 0 0 10 162 505.2 Tm -[(Section 22.1 Storage Allocation and Garbage Collection)-12860.7(4-11)]TJ -ET -162 502.99 m -558 502.99 l -S -BT -10 0 0 10 162 488.2 Tm -[(Section 22.5 Using Data Types Instead of Records)-15142.5(4-11)]TJ -ET -162 485.99 m -558 485.99 l -S -BT -10 0 0 10 138 471.2 Tm -[(Chapter 23 Processes)-30105(4-12)]TJ -ET -138 468.99 m -558 468.99 l -S -BT -10 0 0 10 162 454.2 Tm -[(Section 23.6 Typein and the TTY Process)-19089.2(4-12)]TJ -ET -162 451.99 m -558 451.99 l -S -BT -10 0 0 10 162 437.2 Tm -[(Section 23.8 Process Status Window )-20646.4(4-12)]TJ -ET -162 434.99 m -558 434.99 l -S -BT -10 0 0 10 138 420.2 Tm -[(Chapter 24 Streams and Files)-26714.8(4-13)]TJ -ET -138 417.99 m -558 417.99 l -S -BT -10 0 0 10 162 403.2 Tm -[(Section 24.7 File Attributes)-25648.3(4-13)]TJ -ET -162 400.99 m -558 400.99 l -S -BT -10 0 0 10 162 386.2 Tm -[(Section 24.9 Local Hard Disk Device )-20813.4(4-13)]TJ -ET -162 383.99 m -558 383.99 l -S -BT -10 0 0 10 162 369.2 Tm -[(Section 24.10 Floppy Disk Device )-22369.5(4-13)]TJ -ET -162 366.99 m -558 366.99 l -S -BT -10 0 0 10 162 352.2 Tm -[(Section 24.12 Temporary Files and CORE Device )-14978.4(4-13)]TJ -ET -162 349.99 m -558 349.99 l -S -BT -10 0 0 10 162 335.2 Tm -[(Section 24.18.1 Pup File Server Protocols)-19033.6(4-14)]TJ -ET -162 332.99 m -558 332.99 l -S -BT -10 0 0 10 162 318.2 Tm -[(Section 24.18.1-2 Use of BREAKCONNECTION withFile Servers )-8533.6(4-14)]TJ -ET -162 315.99 m -558 315.99 l -S -BT -10 0 0 10 162 301.2 Tm -[(Section 24.18.2 NS File Server Protocols )-19145.9(4-15)]TJ -ET -162 298.99 m -558 298.99 l -S -BT -10 0 0 10 162 284.2 Tm -[(Section 24.18.3 Operating System Designations)-16309(4-15)]TJ -ET -162 281.99 m -558 281.99 l -S -BT -10 0 0 10 138 267.2 Tm -[(Chapter 25 Input/Output Functions)-24378.4(4-15)]TJ -ET -138 264.99 m -558 264.99 l -S -BT -10 0 0 10 162 250.2 Tm -[(Section 25.2 Input Functions)-24924.2(4-15)]TJ -ET -162 247.99 m -558 247.99 l -S -BT -10 0 0 10 162 233.2 Tm -[(Section 25.3.2 Printing Numbers)-23202.5(4-15)]TJ -ET -162 230.99 m -558 230.99 l -S -BT -10 0 0 10 162 216.2 Tm -[(Section 25.3.4 Printing Unusual Data Structures)-16365.1(4-15)]TJ -ET -162 213.99 m -558 213.99 l -S -BT -10 0 0 10 162 199.2 Tm -[(Section 25.4 Random Access File Operations)-17144.4(4-16)]TJ -ET -162 196.99 m -558 196.99 l -S -BT -10 0 0 10 162 182.2 Tm -[(Section 25.6 PRINTOUT)-26650.8(4-16)]TJ -ET -162 179.99 m -558 179.99 l -S -BT -10 0 0 10 162 165.2 Tm -[(Section 25.8.3 READ Macros)-24593.1(4-16)]TJ -ET -162 162.99 m -558 162.99 l -S -BT -10 0 0 10 138 148.2 Tm -[(Chapter 26 User Input/Output Packages)-21933.1(4-16)]TJ -ET -138 145.99 m -558 145.99 l -S -BT -10 0 0 10 162 131.2 Tm -[(Section 26.3 ASKUSER)-26982.3(4-16)]TJ -ET -162 128.99 m -558 128.99 l -S -BT -10 0 0 10 162 114.2 Tm -[(Section 26.4 TTYIN Display Typein Editor )-18591.2(4-16)]TJ -ET -162 111.99 m -558 111.99 l -S -BT -10 0 0 10 162 97.2 Tm -[(Section 26.4.3 Display Editing Commands )-18367.1(4-17)]TJ -ET -162 94.99 m -558 94.99 l -S -BT -10 0 0 10 162 80.2 Tm -[(Section 26.4.5 Useful Macros)-24537(4-18)]TJ -ET -162 77.99 m -558 77.99 l -S -BT -10 0 0 10 138 63.2 Tm -[(Chapter 27 Graphic Output Operations)-22822.7(4-18)]TJ -ET -138 60.99 m -558 60.99 l -S -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -18 0 obj -<< -/Length 4897 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 548.5599 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(vii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -39.787 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(Section 27.1.3 Bitmaps)-26759.6(4-18)]TJ -ET -0.75 w -162 727.99 m -558 727.99 l -S -BT -10 0 0 10 162 713.2 Tm -[(Section 27.3 Accessing Image Stream Fields)-17700.6(4-18)]TJ -ET -162 710.99 m -558 710.99 l -S -BT -10 0 0 10 162 696.2 Tm -[(Section 27.6 Drawing Lines)-25147.3(4-19)]TJ -ET -162 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(Section 27.7 Drawing Curves)-24648.3(4-19)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(Section 27.8 Miscellaneous Drawing and Printing Operations)-10695.2(4-19)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 162 645.2 Tm -[(Section 27.12 Fonts)-28704.5(4-21)]TJ -ET -162 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -[(Section 27.13 Font Files and Font Directories)-17533.6(4-23)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -10 0 0 10 162 611.2 Tm -[(Section 27.14 Font Classes)-25092.2(4-23)]TJ -ET -162 608.99 m -558 608.99 l -S -BT -10 0 0 10 162 594.2 Tm -[(Section 27.14 Font Profiles)-25592.2(4-23)]TJ -ET -162 591.99 m -558 591.99 l -S -BT -10 0 0 10 138 577.2 Tm -[(Chapter 28 Windows and Menus)-25213.3(4-24)]TJ -ET -138 574.99 m -558 574.99 l -S -BT -10 0 0 10 162 560.2 Tm -[(Section 28.4 Windows)-27705(4-24)]TJ -ET -162 557.99 m -558 557.99 l -S -BT -10 0 0 10 162 543.2 Tm -[(Section 28.4.5 Reshaping Windows)-21811.9(4-24)]TJ -ET -162 540.99 m -558 540.99 l -S -BT -10 0 0 10 162 526.2 Tm -[(Section 28.4.8 Shrinking Windows Into Icons)-17532.6(4-24)]TJ -ET -162 523.99 m -558 523.99 l -S -BT -10 0 0 10 162 509.2 Tm -[(Section 28.4.11 Terminal I/O and Page Holding)-16642(4-25)]TJ -ET -162 506.99 m -558 506.99 l -S -BT -10 0 0 10 162 492.2 Tm -[(Section 28.5 Menus)-28760.1(4-26)]TJ -ET -162 489.99 m -558 489.99 l -S -BT -10 0 0 10 162 475.2 Tm -[(Section 28.6.2 Attached Prompt Windows)-18311.1( 4-28)]TJ -ET -162 472.99 m -558 472.99 l -S -BT -10 0 0 10 162 458.2 Tm -[(Section 28.6.3 Window Operations and Attached Windows )-10862.2(4-28)]TJ -ET -162 455.99 m -558 455.99 l -S -BT -10 0 0 10 138 441.2 Tm -[(Chapter 29 Hardcopy Facilities)-26326.1(4-29)]TJ -ET -138 438.99 m -558 438.99 l -S -BT -10 0 0 10 138 424.2 Tm -[(Chapter 30 Terminal Input/Output)-25102(4-29)]TJ -ET -138 421.99 m -558 421.99 l -S -BT -10 0 0 10 162 407.2 Tm -[(Section 30.1 Interrupt Characters)-22869(4-29)]TJ -ET -162 404.99 m -558 404.99 l -S -BT -10 0 0 10 162 390.2 Tm -[(Section 30.2.3 Line Buffering)-24756.7(4-30)]TJ -ET -162 387.99 m -558 387.99 l -S -BT -10 0 0 10 162 373.2 Tm -[(Section 30.4.1 Changing the Cursor Image)-18642.9(4-30)]TJ -ET -162 370.99 m -558 370.99 l -S -BT -10 0 0 10 162 356.2 Tm -[(Section 30.5 Keyboard Interpretation)-21310.4(4-31)]TJ -ET -162 353.99 m -558 353.99 l -S -BT -10 0 0 10 162 339.2 Tm -[(Section 30.6 Display Screen)-25036.5(4-31)]TJ -ET -162 336.99 m -558 336.99 l -S -BT -10 0 0 10 162 322.2 Tm -[(Section 30.7 Miscellaneous Terminal I/O)-19646.4(4-31)]TJ -ET -162 319.99 m -558 319.99 l -S -BT -10 0 0 10 138 305.2 Tm -[(Chapter 31 Ethernet)-30993.1(4-32)]TJ -ET -138 302.99 m -558 302.99 l -S -BT -10 0 0 10 162 288.2 Tm -[(Section 31.3.1 Name and Address Conventions)-16530.6(4-32)]TJ -ET -162 285.99 m -558 285.99 l -S -BT -10 0 0 10 162 271.2 Tm -[(Section 31.3.2 Clearinghouse Functions)-19865.6(4-33)]TJ -ET -162 268.99 m -558 268.99 l -S -BT -10 0 0 10 162 254.2 Tm -[(Section 31.3.3 NS Printing )-25592.2(4-34)]TJ -ET -162 251.99 m -558 251.99 l -S -BT -10 0 0 10 162 237.2 Tm -[(Section 31.3.5.3 Performing Courier Transactions)-15643.9(4-34)]TJ -ET -162 234.99 m -558 234.99 l -S -BT -10 0 0 10 162 220.2 Tm -[(Section 31.3.5.3.3 Using Bulk Data Transfer )-17255.2(4-34)]TJ -ET -162 217.99 m -558 217.99 l -S -BT -10 0 0 10 162 203.2 Tm -[(Section 31.5 Pup Level One Functions)-20532.6(4-34)]TJ -ET -162 200.99 m -558 200.99 l -S -BT -10 0 0 10 162 186.2 Tm -[(Section 31.6.1 Creating and Managing XIPs)-18142(4-35)]TJ -ET -162 183.99 m -558 183.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 166.08 Tm -(5. Library Modules)Tj -ET -61.78 162.99 m -181.55 162.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 166.08 Tm -(5-1)Tj -ET -181.55 162.99 m -558 162.99 l -S -BT -10 0 0 10 138 148.2 Tm -[(Modules That are New, Moved, or Replaced)-20990.1(5-1)]TJ -ET -138 145.99 m -558 145.99 l -S -BT -10 0 0 10 138 131.2 Tm -[(Modules Moved From the Library to LispUsers )-19769.4(5-1)]TJ -ET -138 128.99 m -558 128.99 l -S -BT -10 0 0 10 138 114.2 Tm -[(Modules Moved From LispUsers to the Library )-19769.4(5-1)]TJ -ET -138 111.99 m -558 111.99 l -S -BT -10 0 0 10 138 97.2 Tm -[(Modules Moved to Their Own Manuals)-23436.3(5-1)]TJ -ET -138 94.99 m -558 94.99 l -S -BT -10 0 0 10 138 80.2 Tm -[(Modules Moved From the Sysout into the Library )-18433.9(5-1)]TJ -ET -138 77.99 m -558 77.99 l -S -BT -10 0 0 10 138 63.2 Tm -[(Modules Moved From the Library into the Sysout)-18989.6(5-2)]TJ -ET -138 60.99 m -558 60.99 l -S -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -21 0 obj -<< -/Length 4062 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(viii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 138 730.2 Tm -(Modules Replaced)Tj -40.555 0 TD -(5-2)Tj -ET -0.75 w -138 727.99 m -558 727.99 l -S -BT -10 0 0 10 138 713.2 Tm -(New Modules)Tj -40.555 0 TD -(5-2)Tj -ET -138 710.99 m -558 710.99 l -S -BT -10 0 0 10 138 696.2 Tm -(Details of Change )Tj -40.555 0 TD -(5-2)Tj -ET -138 693.99 m -558 693.99 l -S -BT -10 0 0 10 138 679.2 Tm -(4045XLPStream)Tj -40.555 0 TD -(5-2)Tj -ET -138 676.99 m -558 676.99 l -S -BT -10 0 0 10 138 662.2 Tm -(Cash-File)Tj -40.555 0 TD -(5-2)Tj -ET -138 659.99 m -558 659.99 l -S -BT -10 0 0 10 138 645.2 Tm -(Centronics )Tj -40.555 0 TD -(5-3)Tj -ET -138 642.99 m -558 642.99 l -S -BT -10 0 0 10 138 628.2 Tm -(Chat )Tj -40.555 0 TD -(5-3)Tj -ET -138 625.99 m -558 625.99 l -S -BT -10 0 0 10 138 611.2 Tm -(CopyFiles )Tj -40.555 0 TD -(5-3)Tj -ET -138 608.99 m -558 608.99 l -S -BT -10 0 0 10 138 594.2 Tm -(DataBaseFns )Tj -40.555 0 TD -(5-3)Tj -ET -138 591.99 m -558 591.99 l -S -BT -10 0 0 10 138 577.2 Tm -(EditBitMap)Tj -40.555 0 TD -(5-3)Tj -ET -138 574.99 m -558 574.99 l -S -BT -10 0 0 10 138 560.2 Tm -(FileBrowser)Tj -40.555 0 TD -(5-3)Tj -ET -138 557.99 m -558 557.99 l -S -BT -10 0 0 10 138 543.2 Tm -(FTPServer)Tj -40.555 0 TD -(5-4)Tj -ET -138 540.99 m -558 540.99 l -S -BT -10 0 0 10 138 526.2 Tm -(FX-80Driver )Tj -40.555 0 TD -(5-4)Tj -ET -138 523.99 m -558 523.99 l -S -BT -10 0 0 10 138 509.2 Tm -(GCHax )Tj -40.555 0 TD -(5-5)Tj -ET -138 506.99 m -558 506.99 l -S -BT -10 0 0 10 138 492.2 Tm -(Grapher )Tj -40.555 0 TD -(5-5)Tj -ET -138 489.99 m -558 489.99 l -S -BT -10 0 0 10 138 475.2 Tm -(Hash )Tj -40.555 0 TD -(5-5)Tj -ET -138 472.99 m -558 472.99 l -S -BT -10 0 0 10 138 458.2 Tm -(Hash-File)Tj -40.555 0 TD -(5-5)Tj -ET -138 455.99 m -558 455.99 l -S -BT -10 0 0 10 138 441.2 Tm -(Kermit)Tj -40.555 0 TD -(5-5)Tj -ET -138 438.99 m -558 438.99 l -S -BT -10 0 0 10 138 424.2 Tm -(MasterScope )Tj -40.555 0 TD -(5-5)Tj -ET -138 421.99 m -558 421.99 l -S -BT -10 0 0 10 138 407.2 Tm -(NSMaintain)Tj -40.555 0 TD -(5-5)Tj -ET -138 404.99 m -558 404.99 l -S -BT -10 0 0 10 138 390.2 Tm -(RS232 )Tj -40.555 0 TD -(5-6)Tj -ET -138 387.99 m -558 387.99 l -S -BT -10 0 0 10 138 373.2 Tm -(Spy)Tj -40.555 0 TD -(5-6)Tj -ET -138 370.99 m -558 370.99 l -S -BT -10 0 0 10 138 356.2 Tm -(TableBrowser)Tj -39.999 0 TD -( 5-6)Tj -ET -138 353.99 m -558 353.99 l -S -BT -10 0 0 10 138 339.2 Tm -(TCP- IP )Tj -40.555 0 TD -(5-7)Tj -ET -138 336.99 m -558 336.99 l -S -BT -10 0 0 10 138 322.2 Tm -(TExec )Tj -40.555 0 TD -(5-8)Tj -ET -138 319.99 m -558 319.99 l -S -BT -10 0 0 10 138 305.2 Tm -(TextModules )Tj -39.999 0 TD -( 5-8)Tj -ET -138 302.99 m -558 302.99 l -S -BT -10 0 0 10 138 288.2 Tm -[(Virtual Keyboards )-31828.4(5-8)]TJ -ET -138 285.99 m -558 285.99 l -S -BT -10 0 0 10 138 271.2 Tm -(Where-Is )Tj -40.555 0 TD -(5-8)Tj -ET -138 268.99 m -558 268.99 l -S -BT -10 0 0 10 138 254.2 Tm -(Additional Notes)Tj -40.555 0 TD -(5-8)Tj -ET -138 251.99 m -558 251.99 l -S -BT -10 0 0 10 138 237.2 Tm -[(Koto CML Library Module)-29216.6(5-8)]TJ -ET -138 234.99 m -558 234.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 217.08 Tm -(6. Users Guides)Tj -ET -54 213.99 m -594 213.99 l -S -BT -/TT2 1 Tf -10 0 0 10 54 206.2 Tm -(6-1)Tj -ET -54 203.99 m -68.45 203.99 l -S -BT -10 0 0 10 138 189.2 Tm -[(A Users Guide to TEditRelease Notes)-22547.7(6-1)]TJ -ET -138 186.99 m -558 186.99 l -S -BT -10 0 0 10 162 172.2 Tm -[(Expanded Characters)-28482.6(6-1)]TJ -ET -162 169.99 m -558 169.99 l -S -BT -10 0 0 10 162 155.2 Tm -[(Put Submenu )-31261.9(6-1)]TJ -ET -162 152.99 m -558 152.99 l -S -BT -10 0 0 10 162 138.2 Tm -[(Get Submenu)-31984.6(6-2)]TJ -ET -162 135.99 m -558 135.99 l -S -BT -10 0 0 10 162 121.2 Tm -[(Clarified Paragraph Looks Menu Options)-20089.6(6-2)]TJ -ET -162 118.99 m -558 118.99 l -S -BT -10 0 0 10 162 104.2 Tm -[(New Page: Before After )-27094(6-3)]TJ -ET -162 101.99 m -558 101.99 l -S -BT -10 0 0 10 162 87.2 Tm -[(Displaymode: Hardcopy )-26428(6-3)]TJ -ET -162 84.99 m -558 84.99 l -S -BT -10 0 0 10 162 70.2 Tm -[(Clarified Page Layout Menu Options)-22090.1(6-3)]TJ -ET -162 67.99 m -558 67.99 l -S -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -24 0 obj -<< -/Length 4574 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 550.78 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(ix)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -39.787 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(Added Items to Programmers Interface)-20703.3(6-3)]TJ -ET -0.75 w -162 727.99 m -558 727.99 l -S -BT -10 0 0 10 162 713.2 Tm -[(Corrected the AFTERQUITFN Property )-20484.1(6-3)]TJ -ET -162 710.99 m -558 710.99 l -S -BT -10 0 0 10 162 696.2 Tm -[(Corrected th eTEXTOBJ Data Structure )-20037.3(6-4)]TJ -ET -162 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(Corrected th eTITLEMENUFN Property )-19928(6-4)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(Expanded the TEDIT.INCLUDE Function )-19758(6-4)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 162 645.2 Tm -[(Expanded the TEDIT.PARALOOKS Function )-17700.9(6-4)]TJ -ET -162 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -[(Expanded the TEXTPROP Function )-21924.5(6-5)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -10 0 0 10 162 611.2 Tm -[(Added Documentation for Global Variables )-18643.8(6-5)]TJ -ET -162 608.99 m -558 608.99 l -S -BT -10 0 0 10 162 594.2 Tm -[(Changes to Programmers Interface to TEdit)-18591(6-5)]TJ -ET -162 591.99 m -558 591.99 l -S -BT -10 0 0 10 162 577.2 Tm -[(STREAM and TEXTOBJ )-26707.7(6-5)]TJ -ET -162 574.99 m -558 574.99 l -S -BT -10 0 0 10 162 560.2 Tm -[(Changes, Additions and Corrections to TEdit Functions )-13531(6-5)]TJ -ET -162 557.99 m -558 557.99 l -S -BT -10 0 0 10 162 543.2 Tm -[(Changes in Documentation of TEdit Functions )-17199.4(6-7)]TJ -ET -162 540.99 m -558 540.99 l -S -BT -10 0 0 10 162 526.2 Tm -[(New Features)-31930.4(6-8)]TJ -ET -162 523.99 m -558 523.99 l -S -BT -10 0 0 10 138 509.2 Tm -[(A Users Guide to SketchRelease Notes)-21268.5(6-10)]TJ -ET -138 506.99 m -558 506.99 l -S -BT -10 0 0 10 162 492.2 Tm -[(Manipulating Sketch Elements)-24147.3(6-10)]TJ -ET -162 489.99 m -558 489.99 l -S -BT -10 0 0 10 162 475.2 Tm -[(Adding and Deleting Control Points)-22033.6(6-10)]TJ -ET -162 472.99 m -558 472.99 l -S -BT -10 0 0 10 162 458.2 Tm -[(Deleting Control Points)-27371.5(6-10)]TJ -ET -162 455.99 m -558 455.99 l -S -BT -10 0 0 10 162 441.2 Tm -[(Defaults Command)-29039.9(6-10)]TJ -ET -162 438.99 m -558 438.99 l -S -BT -10 0 0 10 162 424.2 Tm -[(Better Feedback for Creating Wires, Circles and Ellipses)-12644.9(6-10)]TJ -ET -162 421.99 m -558 421.99 l -S -BT -10 0 0 10 162 407.2 Tm -(Arrowheads)Tj -37.599 0 TD -(6-10)Tj -ET -162 404.99 m -558 404.99 l -S -BT -10 0 0 10 162 390.2 Tm -[(Deleting Characters During Type-in)-21925.7(6-10)]TJ -ET -162 387.99 m -558 387.99 l -S -BT -10 0 0 10 162 373.2 Tm -[(Using Bit Maps in a Sketch)-25371.5(6-11)]TJ -ET -162 370.99 m -558 370.99 l -S -BT -10 0 0 10 162 356.2 Tm -[(Zooming Bitmaps)-29818.2(6-11)]TJ -ET -162 353.99 m -558 353.99 l -S -BT -10 0 0 10 162 339.2 Tm -[(Changing Bitmaps)-29427.6(6-11)]TJ -ET -162 336.99 m -558 336.99 l -S -BT -10 0 0 10 162 322.2 Tm -[(Freezing Sketch Elements)-25927.1(6-11)]TJ -ET -162 319.99 m -558 319.99 l -S -BT -10 0 0 10 162 305.2 Tm -[(Aligning Sketch Elements)-26259.6(6-11)]TJ -ET -162 302.99 m -558 302.99 l -S -BT -10 0 0 10 162 288.2 Tm -[(Placing Multiple Copies of Elements)-21646.8(6-11)]TJ -ET -162 285.99 m -558 285.99 l -S -BT -10 0 0 10 162 271.2 Tm -[(Making the Window Fit the Sketch)-22203.5(6-12)]TJ -ET -162 268.99 m -558 268.99 l -S -BT -10 0 0 10 162 254.2 Tm -[(Overlaying Figure Elements)-25260.6(6-12)]TJ -ET -162 251.99 m -558 251.99 l -S -BT -10 0 0 10 162 237.2 Tm -[(Changing How Elements Overlap)-22813.8(6-12)]TJ -ET -162 234.99 m -558 234.99 l -S -BT -10 0 0 10 162 220.2 Tm -[(Loading the Sketch Library Module )-21311.4(6-12)]TJ -ET -162 217.99 m -558 217.99 l -S -BT -10 0 0 10 162 203.2 Tm -[(The Programmers Interface )-24872.4(6-13)]TJ -ET -162 200.99 m -558 200.99 l -S -BT -10 0 0 10 162 186.2 Tm -[(New Behavior for the Get Command)-21480.8(6-13)]TJ -ET -162 183.99 m -558 183.99 l -S -BT -10 0 0 10 162 169.2 Tm -[(Establishing Initial Defaults for Sketch)-20868.5(6-13)]TJ -ET -162 166.99 m -558 166.99 l -S -BT -10 0 0 10 138 152.2 Tm -[(1108 Users Guide Release Notes)-24879.9(6-14)]TJ -ET -138 149.99 m -558 149.99 l -S -BT -10 0 0 10 162 135.2 Tm -[(What to Look For)-29929.1(6-14)]TJ -ET -162 132.99 m -558 132.99 l -S -BT -10 0 0 10 162 118.2 Tm -[(File System )-31820.2(6-14)]TJ -ET -162 115.99 m -558 115.99 l -S -BT -10 0 0 10 162 101.2 Tm -[(System Tools)-31541.9(6-14)]TJ -ET -162 98.99 m -558 98.99 l -S -BT -10 0 0 10 162 84.2 Tm -31.8173 Tw -(Input/Output 6-15)Tj -ET -162 81.99 m -558 81.99 l -S -BT -10 0 0 10 162 67.2 Tm -0 Tw -[(Machine Diagnostics )-28094.6(6-15)]TJ -ET -162 64.99 m -558 64.99 l -S -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -27 0 obj -<< -/Length 4355 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(x)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 138 730.2 Tm -[(1186 Users Guide Release Notes)-24879.9(6-16)]TJ -ET -0.75 w -138 727.99 m -558 727.99 l -S -BT -10 0 0 10 162 713.2 Tm -[(What to Look For)-29929.1(6-16)]TJ -ET -162 710.99 m -558 710.99 l -S -BT -10 0 0 10 162 696.2 Tm -(File System)Tj -37.599 0 TD -(6-16)Tj -ET -162 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(Software Installation )-28316.3(6-16)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(System Tools)-31541.9(6-17)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 162 645.2 Tm -31.8173 Tw -(Input/Output 6-17)Tj -ET -162 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -0 Tw -[(Diagnostics )-31596.6(6-17)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 608.08 Tm -(7. Common Lisp Implementation )Tj -ET -54 604.99 m -543.55 604.99 l -S -BT -/TT2 1 Tf -10 0 0 10 543.55 608.08 Tm -(7-1)Tj -ET -543.55 604.99 m -558 604.99 l -S -BT -10 0 0 10 138 590.2 Tm -[(New Features Since Lyric )-28884.1(7-1)]TJ -ET -138 587.99 m -558 587.99 l -S -BT -10 0 0 10 138 573.2 Tm -[(Common Lisp Definers)-30384.6(7-1)]TJ -ET -138 570.99 m -558 570.99 l -S -BT -10 0 0 10 162 556.2 Tm -[(Compile-Definer )-30374.7(7-2)]TJ -ET -162 553.99 m -558 553.99 l -S -BT -10 0 0 10 162 539.2 Tm -[(Compile-Form)-31821(7-2)]TJ -ET -162 536.99 m -558 536.99 l -S -BT -10 0 0 10 162 522.2 Tm -27.0954 Tw -(Define-File-Environment 7-2)Tj -ET -162 519.99 m -558 519.99 l -S -BT -10 0 0 10 162 505.2 Tm -0 Tw -[(Site-Name Special Uses )-27039.8(7-3)]TJ -ET -162 502.99 m -558 502.99 l -S -BT -10 0 0 10 138 488.2 Tm -(Record Access)Tj -40.555 0 TD -(7-3)Tj -ET -138 485.99 m -558 485.99 l -S -BT -10 0 0 10 162 471.2 Tm -[(Define-Record )-30874.2(7-3)]TJ -ET -162 468.99 m -558 468.99 l -S -BT -10 0 0 10 162 454.2 Tm -(Record-Fetch)Tj -38.155 0 TD -(7-4)Tj -ET -162 451.99 m -558 451.99 l -S -BT -10 0 0 10 162 437.2 Tm -[(Record-FFetch )-30930.9(7-4)]TJ -ET -162 434.99 m -558 434.99 l -S -BT -10 0 0 10 162 420.2 Tm -31.3191 Tw -(Record-Create 7-4)Tj -ET -162 417.99 m -558 417.99 l -S -BT -10 0 0 10 162 403.2 Tm -0 Tw -[(Array Reference )-30596.4(7-4)]TJ -ET -162 400.99 m -558 400.99 l -S -BT -10 0 0 10 162 386.2 Tm -[(Shadowing of Global Macros )-25092.5(7-4)]TJ -ET -162 383.99 m -558 383.99 l -S -BT -10 0 0 10 162 369.2 Tm -[(Evaluating Load-time Expressions)-23035.9(7-4)]TJ -ET -162 366.99 m -558 366.99 l -S -BT -10 0 0 10 138 352.2 Tm -[(Common Lisp Defstruct Options )-25549.6(7-4)]TJ -ET -138 349.99 m -558 349.99 l -S -BT -10 0 0 10 162 335.2 Tm -[(Defstruct Options)-30429.9(7-5)]TJ -ET -162 332.99 m -558 332.99 l -S -BT -10 0 0 10 162 318.2 Tm -[(Defstruct Slot Options )-28151.1(7-5)]TJ -ET -162 315.99 m -558 315.99 l -S -BT -10 0 0 10 162 301.2 Tm -[(Warning When Using Defstruct )-24150.1(7-6)]TJ -ET -162 298.99 m -558 298.99 l -S -BT -10 0 0 10 138 284.2 Tm -[(Macros for Collecting Objects)-27494.9(7-6)]TJ -ET -138 281.99 m -558 281.99 l -S -BT -10 0 0 10 162 267.2 Tm -[(xcl:with-collection )-29819.1(7-6)]TJ -ET -162 264.99 m -558 264.99 l -S -BT -10 0 0 10 138 250.2 Tm -[(Macros for Writing Macros)-28886.5(7-7)]TJ -ET -138 247.99 m -558 247.99 l -S -BT -10 0 0 10 162 233.2 Tm -(xcl:once-only)Tj -38.155 0 TD -(7-7)Tj -ET -162 230.99 m -558 230.99 l -S -BT -10 0 0 10 138 216.2 Tm -[(Common Lisp Append Datatypes)-25602.4(7-8)]TJ -ET -138 213.99 m -558 213.99 l -S -BT -10 0 0 10 138 199.2 Tm -(Closure Cache )Tj -40.555 0 TD -(7-8)Tj -ET -138 196.99 m -558 196.99 l -S -BT -10 0 0 10 138 182.2 Tm -[(Symbols and Packages )-29271.3(7-8)]TJ -ET -138 179.99 m -558 179.99 l -S -BT -10 0 0 10 162 165.2 Tm -[(Pkg -goto and In -package )-26147.2(7-8)]TJ -ET -162 162.99 m -558 162.99 l -S -BT -10 0 0 10 162 148.2 Tm -[(Defpackage Export Argument)-25036.8(7-9)]TJ -ET -162 145.99 m -558 145.99 l -S -BT -10 0 0 10 138 131.2 Tm -(Debugging Tools)Tj -40.555 0 TD -(7-9)Tj -ET -138 128.99 m -558 128.99 l -S -BT -10 0 0 10 162 114.2 Tm -(Breaking )Tj -38.155 0 TD -(7-9)Tj -ET -162 111.99 m -558 111.99 l -S -BT -10 0 0 10 162 97.2 Tm -(Advising)Tj -38.155 0 TD -(7-9)Tj -ET -162 94.99 m -558 94.99 l -S -BT -10 0 0 10 162 80.2 Tm -[(Argument Names Displayed for Interpreted Functions )-13699.1(7-10)]TJ -ET -162 77.99 m -558 77.99 l -S -BT -10 0 0 10 162 63.2 Tm -[(Lexical Variables Evaluated by Debugger)-19309.9(7-10)]TJ -ET -162 60.99 m -558 60.99 l -S -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -30 0 obj -<< -/Length 4407 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 550.78 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xi)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -39.787 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(Pathname Component Fixed in FS-ERROR)-18313.4(7-10)]TJ -ET -0.75 w -162 727.99 m -558 727.99 l -S -BT -10 0 0 10 138 713.2 Tm -[(Compiler Optimizations )-29384.7(7-10)]TJ -ET -138 710.99 m -558 710.99 l -S -BT -10 0 0 10 162 696.2 Tm -[(Warning when using LABELS Construct )-19367.6(7-10)]TJ -ET -162 693.99 m -558 693.99 l -S -BT -10 0 0 10 162 679.2 Tm -[(COMS added to dfasl files)-25982.3(7-11)]TJ -ET -162 676.99 m -558 676.99 l -S -BT -10 0 0 10 162 662.2 Tm -[(Loadflg argument )-29538(7-11)]TJ -ET -162 659.99 m -558 659.99 l -S -BT -10 0 0 10 162 645.2 Tm -[(Changes in MAP, WRITE-STRING, COERCE, GENSYM, DEFERREDCONSTANT)-927.1(7-11)]TJ -ET -162 642.99 m -558 642.99 l -S -BT -10 0 0 10 162 628.2 Tm -[(Compiler keeps Special &REST arguments )-18202(7-12)]TJ -ET -162 625.99 m -558 625.99 l -S -BT -10 0 0 10 162 611.2 Tm -[(Compiler ignores TEdit formatting )-22426.6(7-12)]TJ -ET -162 608.99 m -558 608.99 l -S -BT -10 0 0 10 162 594.2 Tm -[(Compiler notices Tail-recursive Lexical Functions)-15869(7-12)]TJ -ET -162 591.99 m -558 591.99 l -S -BT -10 0 0 10 162 577.2 Tm -[(Compiler Error Message)-26762.6(7-12)]TJ -ET -162 574.99 m -558 574.99 l -S -BT -10 0 0 10 162 560.2 Tm -[(Format ~C and WRITE-CHAR )-23957.9(7-13)]TJ -ET -162 557.99 m -558 557.99 l -S -BT -10 0 0 10 162 543.2 Tm -[(WITH-OUTPUT-TO-STRING / WITH-INPUT-FROM-STRING)-10659.1(7-13)]TJ -ET -162 540.99 m -558 540.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 520.08 Tm -(A. The Exec )Tj -/TT2 1 Tf -10 0 0 10 542.4399 520.08 Tm -(A-1)Tj -ET -1 w -54.01 516.49 m -558.01 516.49 l -S -BT -10 0 0 10 138 499.2 Tm -(Input Formats)Tj -40.444 0 TD -(A-2)Tj -ET -138.01 494.49 m -558.01 494.49 l -S -BT -10 0 0 10 138 479.2 Tm -[(Multiple Execs and the Execs Type)-24658.8(A-4)]TJ -ET -138.01 476.49 m -558.01 476.49 l -S -BT -10 0 0 10 138 461.2 Tm -[(Event Specification)-31939.1(A-4)]TJ -ET -138.01 458.49 m -558.01 458.49 l -S -BT -10 0 0 10 138 443.2 Tm -(Exec Commands)Tj -40.444 0 TD -(A-5)Tj -ET -138.01 440.49 m -558.01 440.49 l -S -BT -10 0 0 10 138 425.2 Tm -(Variables)Tj -40.444 0 TD -(A-9)Tj -ET -138.01 422.49 m -558.01 422.49 l -S -BT -10 0 0 10 138 407.2 Tm -(Fonts in the Exec)Tj -39.888 0 TD -(A-10)Tj -ET -138.01 404.49 m -558.01 404.49 l -S -BT -10 0 0 10 138 389.2 Tm -[(Changing the Exec)-31437.8(A-11)]TJ -ET -138.01 386.49 m -558.01 386.49 l -S -BT -10 0 0 10 138 371.2 Tm -[(Defining New Commands)-28550.1(A-11)]TJ -ET -138.01 368.49 m -558.01 368.49 l -S -BT -10 0 0 10 138 353.2 Tm -(Undoing)Tj -39.888 0 TD -(A-12)Tj -ET -138.01 350.49 m -558.01 350.49 l -S -BT -10 0 0 10 138 335.2 Tm -[(Undoing in the Exec)-30937.8(A-13)]TJ -ET -138.01 332.49 m -558.01 332.49 l -S -BT -10 0 0 10 138 317.2 Tm -[(Undoing in Programs)-30494.4(A-13)]TJ -ET -138.01 314.49 m -558.01 314.49 l -S -BT -10 0 0 10 138 299.2 Tm -[(Undoable Versions of Common Functions)-21378.7(A-14)]TJ -ET -138.01 296.49 m -558.01 296.49 l -S -BT -10 0 0 10 138 281.2 Tm -[(Modifying the UNDO Facility)-27328.9(A-14)]TJ -ET -138.01 278.49 m -558.01 278.49 l -S -BT -10 0 0 10 138 263.2 Tm -[(Undoing Out of Order)-30327.5(A-16)]TJ -ET -138.01 260.49 m -558.01 260.49 l -S -BT -10 0 0 10 138 245.2 Tm -[(Format and Use of the History List)-24715.6(A-16)]TJ -ET -138.01 242.49 m -558.01 242.49 l -S -BT -10 0 0 10 138 227.2 Tm -[(Making or Changing an Exec)-27047.2(A-18)]TJ -ET -138.01 224.49 m -558.01 224.49 l -S -BT -10 0 0 10 138 209.2 Tm -[(Editing Exec Input)-31827.5(A-20)]TJ -ET -138.01 206.49 m -558.01 206.49 l -S -BT -10 0 0 10 138 191.2 Tm -[(Editing Your Input)-31938.3(A-21)]TJ -ET -138.01 188.49 m -558.01 188.49 l -S -BT -10 0 0 10 138 173.2 Tm -(Using the Mouse)Tj -39.888 0 TD -(A-21)Tj -ET -138.01 170.49 m -558.01 170.49 l -S -BT -10 0 0 10 138 155.2 Tm -[(Editing Commands)-31439.8(A-22)]TJ -ET -138.01 152.49 m -558.01 152.49 l -S -BT -10 0 0 10 162 137.2 Tm -[(Cursor Movement Commands)-24150.6(A-22)]TJ -ET -162.01 134.49 m -558.01 134.49 l -S -BT -10 0 0 10 162 119.2 Tm -[(Buffer Modification Commands)-23815.6(A-23)]TJ -ET -162.01 116.49 m -558.01 116.49 l -S -BT -10 0 0 10 162 101.2 Tm -[(Miscellaneous Commands)-25760.9(A-23)]TJ -ET -162.01 98.49 m -558.01 98.49 l -S -BT -10 0 0 10 138 83.2 Tm -(Useful Macros)Tj -39.888 0 TD -(A-24)Tj -ET -138.01 80.49 m -558.01 80.49 l -S -BT -10 0 0 10 138 65.2 Tm -(?= Handler)Tj -39.888 0 TD -(A-24)Tj -ET -138.01 62.49 m -558.01 62.49 l -S -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -33 0 obj -<< -/Length 4279 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 138 730.2 Tm -(Assorted Flags)Tj -39.888 0 TD -(A-24)Tj -ET -138.01 727.49 m -558.01 727.49 l -S -BT -/TT4 1 Tf -14 0 0 14 54 706.08 Tm -(B. SEditThe Lisp Editor)Tj -/TT2 1 Tf -10 0 0 10 542.4399 706.08 Tm -(B-1)Tj -ET -54.01 702.49 m -558.01 702.49 l -S -BT -10 0 0 10 138 687.2 Tm -[(16.1 SEDITThe Structure Editor)-25049(B-1)]TJ -ET -138.01 684.49 m -558.01 684.49 l -S -BT -10 0 0 10 162 669.2 Tm -[(16.1.1 An Edit Session)-27648.5(B-1)]TJ -ET -162.01 666.49 m -558.01 666.49 l -S -BT -10 0 0 10 162 651.2 Tm -[(16.1.2 SEdit Carets)-28816.9(B-2)]TJ -ET -162.01 648.49 m -558.01 648.49 l -S -BT -10 0 0 10 162 633.2 Tm -[(16.1.3 The Mouse)-29705.6(B-3)]TJ -ET -162.01 630.49 m -558.01 630.49 l -S -BT -10 0 0 10 162 615.2 Tm -(16.1.4 Gaps)Tj -38.044 0 TD -(B-4)Tj -ET -162.01 612.49 m -558.01 612.49 l -S -BT -10 0 0 10 162 597.2 Tm -[(16.1.5 Broken Atoms )-27872.1(B-4)]TJ -ET -162.01 594.49 m -558.01 594.49 l -S -BT -10 0 0 10 162 579.2 Tm -[(16.1.6 Special Characters)-26259.8(B-5)]TJ -ET -162.01 576.49 m -558.01 576.49 l -S -BT -10 0 0 10 162 561.2 Tm -[(16.1.7 Commands )-29317.4(B-6)]TJ -ET -162.01 558.49 m -558.01 558.49 l -S -BT -10 0 0 10 162 543.2 Tm -[(16.1.8 Editing Commands )-25982(B-7)]TJ -ET -162.01 540.49 m -558.01 540.49 l -S -BT -10 0 0 10 162 525.2 Tm -[(16.1.9 Completion Commands )-23981.5(B-7)]TJ -ET -162.01 522.49 m -558.01 522.49 l -S -BT -10 0 0 10 162 507.2 Tm -[(16.1.10 Undo Commands )-26092.8(B-7)]TJ -ET -162.01 504.49 m -558.01 504.49 l -S -BT -10 0 0 10 162 489.2 Tm -[(16.1.11 Find Commands )-26538.1(B-8)]TJ -ET -162.01 486.49 m -558.01 486.49 l -S -BT -10 0 0 10 162 471.2 Tm -[(16.1.12 General Commands )-24648(B-9)]TJ -ET -162.01 468.49 m -558.01 468.49 l -S -BT -10 0 0 10 162 453.2 Tm -[(16.1.13 Miscellaneous )-26426(B-11)]TJ -ET -162.01 450.49 m -558.01 450.49 l -S -BT -10 0 0 10 162 435.2 Tm -[(16.1.14 Help Menu )-28204.3(B-11)]TJ -ET -162.01 432.49 m -558.01 432.49 l -S -BT -10 0 0 10 162 417.2 Tm -[(16.1.15 Command Menu)-26203.8(B-12)]TJ -ET -162.01 414.49 m -558.01 414.49 l -S -BT -10 0 0 10 162 399.2 Tm -[(16.1.16 SEdit Programmers Interface )-19646.7(B-12)]TJ -ET -162.01 396.49 m -558.01 396.49 l -S -BT -10 0 0 10 162 381.2 Tm -[(16.1.17 SEdit Window Region Manager )-19422.1(B-12)]TJ -ET -162.01 378.49 m -558.01 378.49 l -S -BT -10 0 0 10 162 363.2 Tm -[(16.1.18 Options)-30149.6(B-13)]TJ -ET -162.01 360.49 m -558.01 360.49 l -S -BT -10 0 0 10 162 345.2 Tm -[(16.1.19 Control Functions )-24647.7(B-14)]TJ -ET -162.01 342.49 m -558.01 342.49 l -S -BT -10 0 0 10 162 327.2 Tm -[(Warning with Declarations )-25316.6(B-18)]TJ -ET -162.01 324.49 m -558.01 324.49 l -S -BT -/TT4 1 Tf -14 0 0 14 54 303.08 Tm -(C. ICONW )Tj -/TT2 1 Tf -10 0 0 10 541.89 303.08 Tm -(C-1)Tj -ET -54.01 299.49 m -558.01 299.49 l -S -BT -10 0 0 10 162 284.2 Tm -[(28.4.16 Creating Icons with ICONW)-21871.3(C-1)]TJ -ET -162.01 281.49 m -558.01 281.49 l -S -BT -10 0 0 10 186 266.2 Tm -[(28.4.16.1 Creating Icons)-24415.2(C-1)]TJ -ET -186.01 263.49 m -558.01 263.49 l -S -BT -10 0 0 10 186 248.2 Tm -[(28.4.16.2 Modifying Icons)-23915.2(C-2)]TJ -ET -186.01 245.49 m -558.01 245.49 l -S -BT -10 0 0 10 186 230.2 Tm -[(28.4.16.3 Default Icons)-24748.7(C-3)]TJ -ET -186.01 227.49 m -558.01 227.49 l -S -BT -10 0 0 10 186 212.2 Tm -[(28.4.16.4 Sample Icons)-24804.3(C-3)]TJ -ET -186.01 209.49 m -558.01 209.49 l -S -BT -/TT4 1 Tf -14 0 0 14 54 188.08 Tm -(D. Free Menu)Tj -/TT2 1 Tf -10 0 0 10 541.89 188.08 Tm -(D-1)Tj -ET -54.01 184.49 m -558.01 184.49 l -S -BT -10 0 0 10 138 169.2 Tm -(28.7 Free Menus)Tj -40.389 0 TD -(D-1)Tj -ET -138.01 166.49 m -558.01 166.49 l -S -BT -10 0 0 10 162 151.2 Tm -[(28.7.1 Making a Free Menu)-25482.2(D-1)]TJ -ET -162.01 148.49 m -558.01 148.49 l -S -BT -10 0 0 10 162 133.2 Tm -[(28.7.2 Free Menu Formatting)-24760.5(D-1)]TJ -ET -162.01 130.49 m -558.01 130.49 l -S -BT -10 0 0 10 162 115.2 Tm -[(28.7.3 Free Menu Descriptions)-24037.8(D-2)]TJ -ET -162.01 112.49 m -558.01 112.49 l -S -BT -10 0 0 10 162 97.2 Tm -[(28.7.4 Free Menu Group Properties)-21925(D-7)]TJ -ET -162.01 94.49 m -558.01 94.49 l -S -BT -10 0 0 10 162 79.2 Tm -[(28.7.5 Other Group Properties)-24259.5(D-8)]TJ -ET -162.01 76.49 m -558.01 76.49 l -S -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -36 0 obj -<< -/Length 3118 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 546.34 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xiii)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 54 17.21 Tm -(LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS )Tj -39.787 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 162 730.2 Tm -[(28.7.6 Free Menu Items)-27095(D-8)]TJ -ET -162.01 727.49 m -558.01 727.49 l -S -BT -10 0 0 10 162 712.2 Tm -[(28.7.7 Free Menu Item Description)-22315.2(D-8)]TJ -ET -162.01 709.49 m -558.01 709.49 l -S -BT -10 0 0 10 162 694.2 Tm -[(28.7.8 Free Menu Item Properties)-22759.5(D-9)]TJ -ET -162.01 691.49 m -558.01 691.49 l -S -BT -10 0 0 10 162 676.2 Tm -[(28.7.9 Mouse Properties)-26260.1(D-10)]TJ -ET -162.01 673.49 m -558.01 673.49 l -S -BT -10 0 0 10 162 658.2 Tm -[(28.7.10 System Properties)-25371.5(D-10)]TJ -ET -162.01 655.49 m -558.01 655.49 l -S -BT -10 0 0 10 162 640.2 Tm -[(28.7.11 Predefined Item Types)-23480.4(D-11)]TJ -ET -162.01 637.49 m -558.01 637.49 l -S -BT -10 0 0 10 162 622.2 Tm -[(28.7.12 Free Menu Item Highlighting)-20979.4(D-14)]TJ -ET -162.01 619.49 m -558.01 619.49 l -S -BT -10 0 0 10 162 604.2 Tm -[(28.7.13 Free Menu Item Links)-23870.5(D-14)]TJ -ET -162.01 601.49 m -558.01 601.49 l -S -BT -10 0 0 10 162 586.2 Tm -[(28.7.14 Free Menu Window Properties)-20035.5(D-15)]TJ -ET -162.01 583.49 m -558.01 583.49 l -S -BT -10 0 0 10 162 568.2 Tm -[(28.7.15 Free Menu Interface Functions)-19923.2(D-15)]TJ -ET -162.01 565.49 m -558.01 565.49 l -S -BT -10 0 0 10 162 550.2 Tm -[(28.7.16 Accessing Functions)-24370(D-15)]TJ -ET -162.01 547.49 m -558.01 547.49 l -S -BT -10 0 0 10 162 532.2 Tm -[(28.7.17 Changing Free Menus)-23646.4(D-16)]TJ -ET -162.01 529.49 m -558.01 529.49 l -S -BT -10 0 0 10 162 514.2 Tm -[(28.7.18 Editor Functions)-26315.3(D-17)]TJ -ET -162.01 511.49 m -558.01 511.49 l -S -BT -10 0 0 10 162 496.2 Tm -[(28.7.19 Miscellaneous Functions)-22591.2(D-18)]TJ -ET -162.01 493.49 m -558.01 493.49 l -S -BT -10 0 0 10 162 478.2 Tm -[(28.7.20 Free Menu Macros)-25149.3(D-18)]TJ -ET -162.01 474.49 m -558.01 474.49 l -S -BT -/TT4 1 Tf -14 0 0 14 54 456.08 Tm -(E. Error System )Tj -ET -0.75 w -54 452.99 m -542.44 452.99 l -S -BT -/TT2 1 Tf -10 0 0 10 542.4399 456.08 Tm -(E-1)Tj -ET -542.44 452.99 m -558 452.99 l -S -BT -10 0 0 10 138 438.2 Tm -[(Summary of Error System Changes )-24105.6(E-1)]TJ -ET -138 435.99 m -558 435.99 l -S -BT -10 0 0 10 138 421.2 Tm -[(Introduction to Error System Terminology)-22215(E-3)]TJ -ET -138 418.99 m -558 418.99 l -S -BT -10 0 0 10 138 404.2 Tm -[(Program Interface to the Condition System)-19600.1( E-5)]TJ -ET -138 401.99 m -558 401.99 l -S -BT -10 0 0 10 162 387.2 Tm -[(Defining and Creating Conditions )-22256.9(E-5)]TJ -ET -162 384.99 m -558 384.99 l -S -BT -10 0 0 10 162 370.2 Tm -[(Signalling Conditions)-28704.6(E-8)]TJ -ET -162 367.99 m -558 367.99 l -S -BT -10 0 0 10 162 353.2 Tm -[(Handling Conditions )-27704.3(E-11)]TJ -ET -162 350.99 m -558 350.99 l -S -BT -10 0 0 10 162 336.2 Tm -(Restarts )Tj -37.488 0 TD -(E-13)Tj -ET -162 333.99 m -558 333.99 l -S -BT -/TT4 1 Tf -14 0 0 14 54 316.08 Tm -[(INDEX )-4102.5( )]TJ -ET -54 312.99 m -518.55 312.99 l -S -BT -/TT2 1 Tf -10 0 0 10 518.5499 316.08 Tm -(INDEX-1)Tj -ET -518.55 312.99 m -558 312.99 l -S -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -41 0 obj -<< -/Length 364 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 54 15 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(xiv)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 27.5 m -558.01 27.5 l -S -BT -10 0 0 10 231.78 17.21 Tm -( LISP RELEASE NOTES, MEDLEY RELEASE, TABLE OF CONTENTS)Tj --17.778 74.479 TD -(TABLE OF CONTENTS)Tj -ET -54.01 759.29 m -558.01 759.29 l -S -BT -10 0 0 10 228 496.21 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 6 0 R ->> ->> -endobj -6 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -43 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -44 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 0 0 0 0 667 0 0 0 0 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 0 0 584 0 556 -0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 278 0 278 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 0 0 584 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 43 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 278 -0 556 556 556 556 556 556 556 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778 -667 0 0 667 611 722 0 944 667 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 0 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 44 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 10 0 R -/Contents 9 0 R ->> -endobj -11 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 13 0 R -/Contents 12 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 7 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 39 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 39 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -45 0 obj -<< -/S /D ->> -endobj -46 0 obj -<< -/Nums [0 45 0 R ] ->> -endobj -7 0 obj -<< -/Type /Pages -/Kids [1 0 R 8 0 R 11 0 R 14 0 R 17 0 R 20 0 R 23 0 R 26 0 R 29 0 R 32 0 R] -/Count 10 -/Parent 38 0 R ->> -endobj -39 0 obj -<< -/Type /Pages -/Kids [35 0 R 40 0 R] -/Count 2 -/Parent 38 0 R ->> -endobj -38 0 obj -<< -/Type /Pages -/Kids [7 0 R 39 0 R ] -/Count 12 -/MediaBox [0 0 612 792] ->> -endobj -47 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -48 0 obj -<< -/Type /Catalog -/Pages 38 0 R -/PageLabels 46 0 R ->> -endobj -xref -0 49 -0000000000 65535 f -0000052392 00000 n -0000000016 00000 n -0000004524 00000 n -0000051313 00000 n -0000051875 00000 n -0000050772 00000 n -0000053453 00000 n -0000052472 00000 n -0000004630 00000 n -0000009426 00000 n -0000052553 00000 n -0000009522 00000 n -0000014382 00000 n -0000052636 00000 n -0000014489 00000 n -0000019363 00000 n -0000052719 00000 n -0000019459 00000 n -0000024409 00000 n -0000052802 00000 n -0000024516 00000 n -0000028631 00000 n -0000052885 00000 n -0000028738 00000 n -0000033365 00000 n -0000052968 00000 n -0000033461 00000 n -0000037869 00000 n -0000053051 00000 n -0000037976 00000 n -0000042436 00000 n -0000053134 00000 n -0000042543 00000 n -0000046875 00000 n -0000053217 00000 n -0000046982 00000 n -0000050153 00000 n -0000053669 00000 n -0000053588 00000 n -0000053301 00000 n -0000050260 00000 n -0000050676 00000 n -0000050912 00000 n -0000051107 00000 n -0000053385 00000 n -0000053413 00000 n -0000053760 00000 n -0000053892 00000 n -trailer -<< -/Size 49 -/Root 48 0 R -/Info 47 0 R -/ID [<28c0cd76506e5861e704d3556d869e39><28c0cd76506e5861e704d3556d869e39>] ->> -startxref -53962 -%%EOF diff --git a/docs/ReleaseNote/Tab-Replacements.pdf b/docs/ReleaseNote/Tab-Replacements.pdf deleted file mode 100644 index d6480e3e..00000000 --- a/docs/ReleaseNote/Tab-Replacements.pdf +++ /dev/null @@ -1,886 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 246 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -2.3356 -1 TD -(Table of Contents)Tj -6.945 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -8 0 obj -<< -/Length 237 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -7.1672 -1 TD -(Preface)Tj -2.1133 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -9 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -11 0 obj -<< -/Length 246 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -3.5583 -1 TD -(1. Introduction)Tj -5.7222 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -14 0 obj -<< -/Length 251 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -0.0006 -1 TD -(2. Notes and Cautions )Tj -9.28 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -17 0 obj -<< -/Length 259 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj --2.555 -1 TD -(3. Integration of Languages)Tj -11.8356 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -20 0 obj -<< -/Length 259 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj --1.2767 -1 TD -(4. Changes to Interlisp-D )Tj -10.5572 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -23 0 obj -<< -/Length 249 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -1.6672 -1 TD -(5. Library Modules)Tj -7.6133 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -26 0 obj -<< -/Length 248 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -2.6661 -1 TD -(6. Users Guides )Tj -6.6144 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -27 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -29 0 obj -<< -/Length 263 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj --4.9433 -1 TD -(7. Common Lisp Implementation )Tj -14.2239 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -32 0 obj -<< -/Length 243 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -4.8333 -1 TD -(A. The Exec )Tj -4.4472 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -35 0 obj -<< -/Length 240 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -6.6689 -1 TD -(B. SEdit )Tj -2.6117 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -40 0 obj -<< -/Length 241 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -5.7811 -1 TD -(C. ICONW )Tj -3.4994 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -43 0 obj -<< -/Length 244 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -4.2239 -1 TD -(D. Free Menu )Tj -5.0567 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -46 0 obj -<< -/Length 242 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -3 -1 TD -(E. Error System )Tj -6.2806 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -49 0 obj -<< -/Length 236 ->> -stream -0 G -0 J 0 j 3 w 10 M []0 d -/GS1 gs -1 i -72.01 718.49 m -540.01 718.49 l -S -BT -/TT2 1 Tf -18 0 0 18 333.95 694.97 Tm -0 g -0 Tc -0 Tw -(Replace this page with)Tj -8.1683 -1 TD -(Index )Tj -1.1122 -1 TD -(tab)Tj -ET -228.01 653.49 m -528.01 653.49 l -S -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -5 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -51 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 556 556 556 556 556 556 556 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 778 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 51 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -7 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 9 0 R -/Contents 8 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -25 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 27 0 R -/Contents 26 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 38 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 38 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 38 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 38 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 38 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -52 0 obj -<< -/S /D ->> -endobj -53 0 obj -<< -/Nums [0 52 0 R ] ->> -endobj -6 0 obj -<< -/Type /Pages -/Kids [1 0 R 7 0 R 10 0 R 13 0 R 16 0 R 19 0 R 22 0 R 25 0 R 28 0 R 31 0 R] -/Count 10 -/Parent 37 0 R ->> -endobj -38 0 obj -<< -/Type /Pages -/Kids [34 0 R 39 0 R 42 0 R 45 0 R 48 0 R] -/Count 5 -/Parent 37 0 R ->> -endobj -37 0 obj -<< -/Type /Pages -/Kids [6 0 R 38 0 R ] -/Count 15 -/MediaBox [0 0 612 792] ->> -endobj -54 0 obj -<< -/CreationDate (D:20210119174411-06'00') -/ModDate (D:20210119174411-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -55 0 obj -<< -/Type /Catalog -/Pages 37 0 R -/PageLabels 53 0 R ->> -endobj -xref -0 56 -0000000000 65535 f -0000006786 00000 n -0000000016 00000 n -0000000313 00000 n -0000006282 00000 n -0000005936 00000 n -0000008098 00000 n -0000006866 00000 n -0000000408 00000 n -0000000696 00000 n -0000006946 00000 n -0000000791 00000 n -0000001089 00000 n -0000007029 00000 n -0000001185 00000 n -0000001488 00000 n -0000007112 00000 n -0000001584 00000 n -0000001895 00000 n -0000007195 00000 n -0000001991 00000 n -0000002302 00000 n -0000007278 00000 n -0000002398 00000 n -0000002699 00000 n -0000007361 00000 n -0000002795 00000 n -0000003095 00000 n -0000007444 00000 n -0000003191 00000 n -0000003506 00000 n -0000007527 00000 n -0000003602 00000 n -0000003897 00000 n -0000007610 00000 n -0000003993 00000 n -0000004285 00000 n -0000008335 00000 n -0000008233 00000 n -0000007694 00000 n -0000004381 00000 n -0000004674 00000 n -0000007778 00000 n -0000004770 00000 n -0000005066 00000 n -0000007862 00000 n -0000005162 00000 n -0000005456 00000 n -0000007946 00000 n -0000005552 00000 n -0000005840 00000 n -0000006076 00000 n -0000008030 00000 n -0000008058 00000 n -0000008426 00000 n -0000008558 00000 n -trailer -<< -/Size 56 -/Root 55 0 R -/Info 54 0 R -/ID [<3f19364b5f81ff960ce7bb49c7d95dc0><3f19364b5f81ff960ce7bb49c7d95dc0>] ->> -startxref -8628 -%%EOF diff --git a/docs/ReleaseNote/Titlepage.pdf b/docs/ReleaseNote/Titlepage.pdf deleted file mode 100644 index 849f6706..00000000 Binary files a/docs/ReleaseNote/Titlepage.pdf and /dev/null differ diff --git a/docs/ReleaseNote/bindercover.pdf b/docs/ReleaseNote/bindercover.pdf deleted file mode 100644 index a8769c0c..00000000 --- a/docs/ReleaseNote/bindercover.pdf +++ /dev/null @@ -1,157 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 318 ->> -stream -BT -/TT2 1 Tf -8 0 0 8 0.04 783.96 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(Unknown IMAGEOBJ type)Tj -0 -1 TD -(GETFN: SKIO.GETFN.2)Tj -ET -q -1 i -0 792 612 -791.94 re -W n -0 G -0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d -0.01 775.93 m -99.6 775.93 l -99.6 775.93 m -99.6 791.95 l -0.01 791.95 m -99.6 791.95 l -0.01 791.95 m -0.01 775.93 l -S -Q -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 5 0 R ->> ->> -endobj -5 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -7 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778 -0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611 -611 0 0 0 333 0 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 7 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 6 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -8 0 obj -<< -/S /D ->> -endobj -9 0 obj -<< -/Nums [0 8 0 R ] ->> -endobj -6 0 obj -<< -/Type /Pages -/Kids [1 0 R] -/Count 1 -/MediaBox [0 0 612 792] ->> -endobj -10 0 obj -<< -/CreationDate (D:20210119174412-06'00') -/ModDate (D:20210119174412-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -11 0 obj -<< -/Type /Catalog -/Pages 6 0 R -/PageLabels 9 0 R ->> -endobj -xref -0 12 -0000000000 65535 f -0000001228 00000 n -0000000016 00000 n -0000000385 00000 n -0000000825 00000 n -0000000480 00000 n -0000001373 00000 n -0000000620 00000 n -0000001308 00000 n -0000001335 00000 n -0000001454 00000 n -0000001586 00000 n -trailer -<< -/Size 12 -/Root 11 0 R -/Info 10 0 R -/ID [<037c8837cab2cb299e6b0b052324dbdc><037c8837cab2cb299e6b0b052324dbdc>] ->> -startxref -1654 -%%EOF diff --git a/docs/ReleaseNote/indexbase.pdf b/docs/ReleaseNote/indexbase.pdf deleted file mode 100644 index a949ce2a..00000000 --- a/docs/ReleaseNote/indexbase.pdf +++ /dev/null @@ -1,9734 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 12759 ->> -stream -BT -/TT2 1 Tf -8 0 0 8 58 22 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(INDEX)Tj -62.9925 0 TD -(1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf -18 0 0 18 506.98 761 Tm -(INDEX)Tj -ET -6 w -58.01 760 m -562.01 760 l -S -BT -10 0 0 10 58 640.2 Tm -(A)Tj -0 -1 TD -(Abort )Tj -/TT6 1 Tf -3.2217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj --12.2241 -1 TD -(ACCESS )Tj -/TT6 1 Tf -4.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.38)Tj -/TT4 1 Tf --5.5015 -1 TD -(Add-Command )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.14)Tj -/TT4 1 Tf --13.0566 -1 TD -(add.process )Tj -/TT6 1 Tf -6.7246 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.12; 7.12)Tj -/TT4 1 Tf --12.0596 -1 TD -(ADDMENU )Tj -/TT6 1 Tf -5.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.24)Tj -/TT4 1 Tf --11.0015 -1 TD -(ADDTOSCRATCHLIST )Tj -/TT6 1 Tf -11.166 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.1)Tj -/TT4 1 Tf --16.501 -1 TD -(ADVICE )Tj -/TT6 1 Tf -4.334 0 TD -(\(File Manager Command\) )Tj -/TT2 1 Tf -12.2261 0 TD -(3.15)Tj -/TT4 1 Tf --16.5601 -1 TD -(ADVINFOLST )Tj -/TT6 1 Tf -6.9443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.14)Tj -/TT4 1 Tf --12.1128 -1 TD -(ADVISE )Tj -/TT6 1 Tf -4.2788 0 TD -(\(File Manager Command\) )Tj -/TT2 1 Tf -12.2261 0 TD -(3.15)Tj -/TT4 1 Tf --16.5049 -1 TD -(ADVISE )Tj -/TT6 1 Tf -4.5566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13,15)Tj -/TT4 1 Tf --9.8916 -1 TD -(ADVISEDFNS )Tj -/TT6 1 Tf -7.001 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.14)Tj -/TT4 1 Tf --12.1694 -1 TD -(ADVISEDUMP )Tj -/TT6 1 Tf -7.2231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.14)Tj --12.5581 -1 TD -(Advising )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.14; 7.9)Tj --5.1689 -1 TD -(AFTERDOMAKESYS )Tj -/TT6 1 Tf -10.1685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --11.002 -1 TD -(AFTERDOSAVEVM )Tj -/TT6 1 Tf -9.5015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --10.335 -1 TD -(AFTERDOSYSOUT )Tj -/TT6 1 Tf -9.4453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --10.2788 -1 TD -(AFTERLOGOUT )Tj -/TT6 1 Tf -8.0562 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --8.8896 -1 TD -(AFTERLOGOUTFORMS )Tj -/TT6 1 Tf -11.667 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --12.5005 -1 TD -(AFTERMAKESYS )Tj -/TT6 1 Tf -8.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --9.502 -1 TD -(AFTERSAVEVM )Tj -/TT6 1 Tf -8.0015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --8.835 -1 TD -(AFTERSYSOUT )Tj -/TT6 1 Tf -7.9453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj -/TT4 1 Tf --8.7788 -1 TD -(AGAIN )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --12.7803 -1 TD -(ALL )Tj -/TT6 1 Tf -2.4995 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --10.5024 -1 TD -(ALLOWED.LOGINS )Tj -/TT6 1 Tf -9.5024 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --10.3359 -1 TD -(append )Tj -/TT6 1 Tf -4.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf --1.8892 -1 TD -(with non-list argument )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.8)Tj --13.9492 -1 TD -(Application Menus )Tj -/TT6 1 Tf -8.727 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.1)Tj --9.5605 -1 TD -(APPLY-format input )Tj -/TT6 1 Tf -9.6709 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-3)Tj -/TT4 1 Tf --10.5044 -1 TD -(ARCHIVEFLG )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --12.2241 -1 TD -(ARCHIVEFN )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --11.5576 -1 TD -(Arglist )Tj -/TT6 1 Tf -3.7227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.7251 -1 TD -(AROUNDEXITFNS )Tj -/TT6 1 Tf -9.167 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.7)Tj --14.3354 -1 TD -(array reference )Tj -/TT6 1 Tf -7.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.4)Tj --8.1699 -1 TD -(arrays )Tj -/TT6 1 Tf -3.334 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.3)Tj -/TT4 1 Tf --4.1675 -1 TD -(ASKUSER )Tj -/TT6 1 Tf -5.4453 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.16)Tj -/TT4 1 Tf --10.7803 -1 TD -(assert )Tj -/TT6 1 Tf -3.5024 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj -/TT4 1 Tf --7.7803 -1 TD -(Attach Menu )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj --15.5581 -1 TD -(Attached Windows )Tj -/TT6 1 Tf -8.8374 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.28)Tj --9.6709 -1 TD -(AUTHENTICATE )Tj -/TT6 1 Tf -8.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --9.0562 -1 TD -(AUTHENTICATION.NET.HINT )Tj -/TT6 1 Tf -14.3325 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.33)Tj --19.501 -1 TD -(AUTOHARDRESETFLG )Tj -/TT6 1 Tf -11.4458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.5)Tj -/TT4 1 Tf --12.2793 -2.2 TD -(B)Tj -/TT2 1 Tf -0 -1 TD -(back-quote facility )Tj -/TT6 1 Tf -8.5596 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.49)Tj -/TT4 1 Tf --9.3931 -1 TD -(BACKGROUND )Tj -/TT6 1 Tf -8.1665 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --21.3379 -1 TD -(BACKGROUND )Tj -/TT6 1 Tf -8.1665 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.10)Tj -/TT4 1 Tf --20.5034 -1 TD -(BACKGROUNDFNS )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.12)Tj -/TT4 1 Tf --15.0571 -1 TD -(BACKSPACE )Tj -/TT6 1 Tf -6.8896 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.3374 -1 TD -(BCOMPL )Tj -/TT6 1 Tf -4.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.22,25; 4.10)Tj -/TT4 1 Tf --10.2236 -1 TD -(BEEPON )Tj -/TT6 1 Tf -4.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.31)Tj --10.1138 -1 TD -(BEFORELOGOUT )Tj -/TT6 1 Tf -8.8901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --9.7236 -1 TD -(BEFOREMAKESYS )Tj -/TT6 1 Tf -9.5024 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --10.3359 -1 TD -(BEFORESAVEVM )Tj -/TT6 1 Tf -8.8354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --9.6689 -1 TD -(BEFORESYSOUT )Tj -/TT6 1 Tf -8.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --9.6128 -1 TD -(BEFORESYSOUTFORMS )Tj -/TT6 1 Tf -12.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj -/TT4 1 Tf --13.2236 -1 TD -(BITMAP )Tj -/TT6 1 Tf -4.6665 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.10)Tj -/TT4 1 Tf --18.3926 -1 TD -(BKSYSBUF )Tj -/TT6 1 Tf -6.0562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.30)Tj -/TT4 1 Tf --11.3911 -1 TD -(BKSYSCHARCODE )Tj -/TT6 1 Tf -9.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.30)Tj -/TT4 1 Tf -10.7862 58.2 TD -(BLOCKRECORD )Tj -/TT6 1 Tf -8.4443 0 TD -(\(Record Type\) )Tj -/TT2 1 Tf -7.2241 0 TD -(4.3)Tj -/TT4 1 Tf --15.6685 -1 TD -(BOTTOM )Tj -/TT6 1 Tf -5.166 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj --18.3374 -1 TD -(bound )Tj -/TT6 1 Tf -3.6143 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.4)Tj -/TT4 1 Tf --4.4478 -1 TD -(BOUNDP )Tj -/TT6 1 Tf -5.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.2)Tj -/TT4 1 Tf --10.502 -1 TD -(BOX )Tj -/TT6 1 Tf -3.0005 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.5,8)Tj -/TT4 1 Tf --16.1719 -1 TD -(BOX )Tj -/TT6 1 Tf -3.0005 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.10)Tj -/TT4 1 Tf --15.3374 -1 TD -(BOXSHADE )Tj -/TT6 1 Tf -6.501 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --19.6724 -1 TD -(BOXSHADE )Tj -/TT6 1 Tf -6.501 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.10)Tj -/TT4 1 Tf --18.8379 -1 TD -(BOXSPACE )Tj -/TT6 1 Tf -6.4458 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --19.6172 -1 TD -(BOXSPACE )Tj -/TT6 1 Tf -6.4458 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.10)Tj -/TT4 1 Tf --18.7827 -1 TD -(break )Tj -/TT6 1 Tf -3.2241 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13; E.13)Tj --8.5591 -1 TD -(break commands )Tj -/TT6 1 Tf -8.2256 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.13)Tj --9.0591 -1 TD -(Break packages )Tj -/TT6 1 Tf -8.0044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.9)Tj -/TT4 1 Tf --8.8379 -1 TD -(BREAK0 )Tj -/TT6 1 Tf -4.9453 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13)Tj -/TT4 1 Tf --10.2803 -1 TD -(BREAK1 )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.9)Tj -/TT4 1 Tf --10.0024 -1 TD -(BREAKCONNECTION )Tj -/TT6 1 Tf -10.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.14)Tj -/TT4 1 Tf --16.1685 -1 TD -(BREAKIN )Tj -/TT6 1 Tf -5.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13)Tj --10.4463 -1 TD -(breaking )Tj -/TT6 1 Tf -4.3916 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.9)Tj -/TT4 1 Tf --5.2251 -1 TD -(BREAKREGIONSPEC )Tj -/TT6 1 Tf -10.7793 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.8)Tj -/TT4 1 Tf --15.9478 -1 TD -(BRECOMPILE )Tj -/TT6 1 Tf -7.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.22,25)Tj -/TT4 1 Tf --12.5576 -1 TD -(BRKINFOLST )Tj -/TT6 1 Tf -6.9995 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.13)Tj -/TT4 1 Tf --12.168 -1 TD -(BROKENFNS )Tj -/TT6 1 Tf -6.8892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.13)Tj --12.0576 -1 TD -(bulk data transfer )Tj -/TT6 1 Tf -8.2822 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.34)Tj -/TT4 1 Tf --9.1157 -2.2 TD -(C)Tj -/TT2 1 Tf -0 -1 TD -(Catch errors )Tj -/TT6 1 Tf -6.335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --7.1685 -1 TD -(ccase )Tj -/TT6 1 Tf -3.3364 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj -/TT4 1 Tf --7.6143 -1 TD -(cerror )Tj -/TT6 1 Tf -3.4463 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.9)Tj -/TT4 1 Tf --8.7812 -1 TD -(Change Print Base )Tj -/TT6 1 Tf -9.4468 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj -/TT4 1 Tf --18.4492 -1 TD -(CHANGEBACKGROUND )Tj -/TT6 1 Tf -12.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.31)Tj -/TT4 1 Tf --17.5571 -1 TD -(CHANGEFONT )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.23)Tj -/TT4 1 Tf --12.9458 -1 TD -(CHANGESLICE )Tj -/TT6 1 Tf -7.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-11,17)Tj -/TT4 1 Tf --13.1689 -1 TD -(CHANGESTATE )Tj -/TT6 1 Tf -8.4448 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.11)Tj --20.7817 -1 TD -(changing a standard readtable )Tj -/TT6 1 Tf -14.0659 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.22)Tj --14.8994 -1 TD -(characters )Tj -/TT6 1 Tf -5.2241 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.3)Tj -/TT4 1 Tf --6.0576 -1 TD -(CHARCODE )Tj -/TT6 1 Tf -6.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.3)Tj -/TT4 1 Tf --11.6685 -1 TD -(CHCON )Tj -/TT6 1 Tf -4.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.42)Tj -/TT4 1 Tf --9.5571 -1 TD -(check-type )Tj -/TT6 1 Tf -5.7803 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj --10.0581 -1 TD -(CL Exec )Tj -/TT6 1 Tf -4.6128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.7)Tj -/TT4 1 Tf --5.4463 -1 TD -(CL:* )Tj -/TT6 1 Tf -2.6108 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.7793 -1 TD -(CL:** )Tj -/TT6 1 Tf -3 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.1685 -1 TD -(CL:*** )Tj -/TT6 1 Tf -3.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5576 -1 TD -(CL:+ )Tj -/TT6 1 Tf -2.8057 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.9741 -1 TD -(CL:++ )Tj -/TT6 1 Tf -3.3896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5581 -1 TD -(CL:+++ )Tj -/TT6 1 Tf -3.9736 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --9.1421 -1 TD -(CL:- )Tj -/TT6 1 Tf -2.5547 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.7231 -1 TD -(CL:/ )Tj -/TT6 1 Tf -2.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --7.9458 -1 TD -(CL:// )Tj -/TT6 1 Tf -3.0552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.2236 -1 TD -(CL:/// )Tj -/TT6 1 Tf -3.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --8.5015 -1 TD -(CL:BREAK )Tj -/TT6 1 Tf -5.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13)Tj -/TT4 1 Tf --11.1123 -1 TD -(CL:CATCH )Tj -/TT6 1 Tf -5.7212 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.5)Tj -/TT4 1 Tf --11.0562 -1 TD -(CL:CODE-CHAR )Tj -/TT6 1 Tf -8.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3)Tj -/TT4 1 Tf --13.6675 -1 TD -(CL:COMPILE-FILE )Tj -/TT6 1 Tf -9.2769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.24-25; 4.10)Tj -/TT4 1 Tf --14.6118 -1 TD -(CL:DEFCONSTANT )Tj -/TT6 1 Tf -9.7769 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20)Tj -/TT4 1 Tf --14.9453 -1 TD -(CL:DEFINE-MODIFY-MACRO )Tj -/TT6 1 Tf -14.2207 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj -/TT4 1 Tf --19.5557 -1 TD -(CL:DEFMACRO )Tj -/TT6 1 Tf -7.999 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj -/TT4 1 Tf --13.334 -1 TD -(CL:DEFMACRO )Tj -/TT6 1 Tf -7.999 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.29)Tj -/TT4 1 Tf --12.2769 -1 TD -(CL:DEFPARAMETER )Tj -/TT6 1 Tf -10.5552 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.26,29)Tj -/TT4 1 Tf --14.833 -1 TD -(CL:DEFPARAMETER )Tj -/TT6 1 Tf -10.5552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -10 0 obj -<< -/Length 15641 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 58 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58.01 22 Tm -(2)Tj -59.9412 0 TD -(INDEX)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(CL:DEFUN )Tj -/TT6 1 Tf -5.666 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj -/TT4 1 Tf --11.001 -1 TD -(CL:DEFUN )Tj -/TT6 1 Tf -5.666 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.29)Tj -/TT4 1 Tf --9.9438 -1 TD -(CL:DEFVAR )Tj -/TT6 1 Tf -6.333 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.29)Tj -/TT4 1 Tf --10.6108 -1 TD -(CL:DEFVAR )Tj -/TT6 1 Tf -6.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20)Tj --11.5015 -1 TD -(CL:ERROR )Tj -/TT6 1 Tf -5.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --6.5566 -1 TD -(CL:EVAL-WHEN )Tj -/TT6 1 Tf -8.2769 0 TD -(\(File Package Command\) )Tj -/TT2 1 Tf -12.1709 0 TD -(3.31)Tj -/TT4 1 Tf --20.4478 -1 TD -(CL:GENSYM )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.2)Tj -/TT4 1 Tf --11.8906 -1 TD -(CL:LOAD )Tj -/TT6 1 Tf -5.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.24)Tj -/TT4 1 Tf --10.3896 -1 TD -(CL:MAKE-HASH-TABLE )Tj -/TT6 1 Tf -11.9985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.4)Tj -/TT4 1 Tf --17.3335 -1 TD -(CL:MAPHASH )Tj -/TT6 1 Tf -7.2773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.4)Tj -/TT4 1 Tf --12.6123 -1 TD -(CL:PRIN1 )Tj -/TT6 1 Tf -5.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41-42)Tj -/TT4 1 Tf --10.502 -1 TD -(CL:PRINC )Tj -/TT6 1 Tf -5.333 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj -/TT4 1 Tf --10.668 -1 TD -(CL:READ )Tj -/TT6 1 Tf -5.0552 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.40)Tj -/TT4 1 Tf --10.3901 -1 TD -(CL:READ-PRESERVING-WHITESPACE )Tj -/TT6 1 Tf -18.9453 0 TD -(\(Function\))Tj -/TT2 1 Tf --11.4453 -1 TD -(3.41)Tj -/TT4 1 Tf --7.5 -1 TD -(CL:THROW )Tj -/TT6 1 Tf -5.9985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.5,11)Tj --11.3335 -1 TD -(CL:UNWIND-PROTECT )Tj -/TT6 1 Tf -11.333 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj -/TT4 1 Tf --12.1665 -1 TD -(CL:UNWIND-PROTECT )Tj -/TT6 1 Tf -11.4429 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.11)Tj --16.7778 -1 TD -(CL:WITH-INPUT-FROM-STRING )Tj -/TT6 1 Tf -15.3872 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.37)Tj -/TT4 1 Tf --16.2207 -1 TD -(CL:WRITE )Tj -/TT6 1 Tf -5.4434 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj -/TT4 1 Tf --10.7783 -1 TD -(CLEANUP )Tj -/TT6 1 Tf -5.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.25)Tj --10.7241 -1 TD -(cleanup forms )Tj -/TT6 1 Tf -6.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj -/TT4 1 Tf --7.6699 -1 TD -(CLEARCLISPARRAY )Tj -/TT6 1 Tf -10.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.10)Tj -/TT4 1 Tf --15.8354 -1 TD -(CLEARSTK )Tj -/TT6 1 Tf -6 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj -/TT4 1 Tf --11.335 -1 TD -(CLEARSTKLST )Tj -/TT6 1 Tf -7.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.5)Tj --13.0571 -1 TD -(CLISP infix forms )Tj -/TT6 1 Tf -8.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.33)Tj --9.1133 -1 TD -(CLISPARRAY )Tj -/TT6 1 Tf -6.8911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.2)Tj -/TT4 1 Tf --7.7246 -1 TD -(CLOSEALL )Tj -/TT6 1 Tf -5.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38)Tj --11.2793 -1 TD -(closure )Tj -/TT6 1 Tf -3.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.8)Tj -/TT4 1 Tf --4.6128 -1 TD -(coerce )Tj -/TT6 1 Tf -4.0581 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.12)Tj -/TT4 1 Tf --9.3931 -1 TD -(COERCE-TO-NSADDRESS )Tj -/TT6 1 Tf -13.1675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.33)Tj -/TT4 1 Tf --18.5024 -1 TD -(collect )Tj -/TT6 1 Tf -3.7236 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.6)Tj --8.0015 -1 TD -(collecting objects )Tj -/TT6 1 Tf -8.1709 0 TD -( )Tj -/TT2 1 Tf --5.6709 -1 TD -(macros for )Tj -/TT6 1 Tf -5.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.6)Tj -/TT4 1 Tf --8.8901 -1 TD -(COLLECTION )Tj -/TT6 1 Tf -7.333 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.12)Tj --19.6699 -1 TD -(COLLECTION property )Tj -/TT6 1 Tf -10.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.26)Tj -/TT4 1 Tf --11.7256 -1 TD -(COLUMN )Tj -/TT6 1 Tf -5.2217 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --18.3931 -1 TD -(COLUMNSPACE )Tj -/TT6 1 Tf -8.667 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --21.8384 -1 TD -(Comment Out Selection )Tj -/TT6 1 Tf -11.8901 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj --20.8926 -1 TD -(comment treated as declaration )Tj -/TT6 1 Tf -14.8408 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.32)Tj --15.6743 -1 TD -(Comments )Tj -/TT6 1 Tf -5.3901 0 TD -( )Tj -/TT2 1 Tf --2.8901 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.6)Tj --7.8911 -1 TD -(Common Lisp strings )Tj -/TT6 1 Tf -9.9478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.3)Tj --10.7812 -1 TD -(Common Lisp Symbols )Tj -/TT6 1 Tf -11.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.1)Tj --11.9482 -1 TD -(COMMONNUMSYNTAX )Tj -/TT6 1 Tf -11.5 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.44)Tj -/TT4 1 Tf --12.3335 -1 TD -(compile-definer )Tj -/TT6 1 Tf -8.0015 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7.2)Tj -/TT4 1 Tf --12.7246 -1 TD -(compile-form )Tj -/TT6 1 Tf -6.8896 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7.2)Tj --11.6128 -1 TD -(compiler )Tj -/TT6 1 Tf -4.3345 0 TD -( )Tj -/TT2 1 Tf --1.8345 -1 TD -(behavior with FLETed lexical functions )Tj -/TT6 1 Tf -17.8975 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --18.731 -1 TD -(behavior with recursion )Tj -/TT6 1 Tf -11.1162 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --11.9497 -1 TD -(ignoring TEdit formatting )Tj -/TT6 1 Tf -11.7275 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --12.561 -1 TD -(retaining special arguments )Tj -/TT6 1 Tf -13.0625 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --16.396 -1 TD -(complex numbers )Tj -/TT6 1 Tf -8.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj --9.2812 -1 TD -(coms )Tj -/TT6 1 Tf -3.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.11)Tj --4.0562 -1 TD -(condition )Tj -/TT6 1 Tf -4.5586 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj -/TT4 1 Tf --5.3921 -1 TD -(conditions:*break-on-signals* )Tj -/TT6 1 Tf -14.7241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E.9)Tj -/TT4 1 Tf --19.8926 -1 TD -(conditions:abort )Tj -/TT6 1 Tf -8.4438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.21)Tj -/TT4 1 Tf --13.7788 -1 TD -(conditions:compute-restarts )Tj -/TT6 1 Tf -14.1128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.18)Tj -/TT4 1 Tf --19.4478 -1 TD -(conditions:continue )Tj -/TT6 1 Tf -10.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.21)Tj -/TT4 1 Tf --15.4453 -1 TD -(conditions:define-condition )Tj -/TT6 1 Tf -13.7207 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.5)Tj -/TT4 1 Tf --17.9985 -1 TD -(conditions:find-restart )Tj -/TT6 1 Tf -11.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.19)Tj -/TT4 1 Tf --16.5571 -1 TD -(conditions:handler-bind )Tj -/TT6 1 Tf -11.999 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.4,11)Tj -/TT4 1 Tf --16.2769 -1 TD -(conditions:handler-case )Tj -/TT6 1 Tf -12.1133 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.11)Tj -/TT4 1 Tf --16.3911 -1 TD -(conditions:ignore-errors )Tj -/TT6 1 Tf -12.2231 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.12)Tj -/TT4 1 Tf --16.501 -1 TD -(conditions:invoke-debugger )Tj -/TT6 1 Tf -14.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.13)Tj -/TT4 1 Tf --19.3354 -1 TD -(conditions:invoke-restart )Tj -/TT6 1 Tf -12.5576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.5,20)Tj -/TT4 1 Tf --17.8926 -1 TD -(conditions:invoke-restart-interactively )Tj -/TT6 1 Tf -18.7271 0 TD -(\(Function\))Tj -/TT2 1 Tf --11.2271 -1 TD -(E.20)Tj -/TT4 1 Tf -18.4 67 TD -(conditions:make-condition )Tj -/TT6 1 Tf -13.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.6,8)Tj -/TT4 1 Tf --18.6685 -1 TD -(conditions:muffle-warning )Tj -/TT6 1 Tf -13.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --18.4453 -1 TD -(conditions:restart-bind )Tj -/TT6 1 Tf -11.5 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.17)Tj -/TT4 1 Tf --15.7778 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.5)Tj -/TT4 1 Tf --16.9492 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.13)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:restart-name )Tj -/TT6 1 Tf -12.002 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.19)Tj -/TT4 1 Tf --17.3369 -1 TD -(conditions:signal )Tj -/TT6 1 Tf -8.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.8)Tj -/TT4 1 Tf --14.1685 -1 TD -(conditions:store-value )Tj -/TT6 1 Tf -11.2793 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --16.6143 -1 TD -(conditions:use-value )Tj -/TT6 1 Tf -10.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:with-simple-restart )Tj -/TT6 1 Tf -14.8901 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.20)Tj -/TT4 1 Tf --19.168 -1 TD -(CONN )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --12.1133 -1 TD -(CONTROL-A )Tj -/TT6 1 Tf -6.5547 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.0024 -1 TD -(Control-C )Tj -/TT6 1 Tf -5.1655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.168 -1 TD -(Control-L )Tj -/TT6 1 Tf -5.0542 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.0566 -1 TD -(Control-Meta-; )Tj -/TT6 1 Tf -7.3877 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --16.3901 -1 TD -(Control-Meta-F )Tj -/TT6 1 Tf -7.6655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj --16.668 -1 TD -(compiler )Tj -/TT6 1 Tf -4.3345 0 TD -( )Tj -/TT2 1 Tf --1.8345 -1 TD -(behavior with FLETed lexical functions )Tj -/TT6 1 Tf -17.8975 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --18.731 -1 TD -(behavior with recursion )Tj -/TT6 1 Tf -11.1162 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --11.9497 -1 TD -(ignoring TEdit formatting )Tj -/TT6 1 Tf -11.7275 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --12.561 -1 TD -(retaining special arguments )Tj -/TT6 1 Tf -13.0625 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.12)Tj --16.396 -1 TD -(complex numbers )Tj -/TT6 1 Tf -8.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj --9.2812 -1 TD -(coms )Tj -/TT6 1 Tf -3.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.11)Tj --4.0562 -1 TD -(condition )Tj -/TT6 1 Tf -4.5586 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj -/TT4 1 Tf --5.3921 -1 TD -(conditions:*break-on-signals* )Tj -/TT6 1 Tf -14.7241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E.9)Tj -/TT4 1 Tf --19.8926 -1 TD -(conditions:abort )Tj -/TT6 1 Tf -8.4438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.21)Tj -/TT4 1 Tf --13.7788 -1 TD -(conditions:compute-restarts )Tj -/TT6 1 Tf -14.1128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.18)Tj -/TT4 1 Tf --19.4478 -1 TD -(conditions:continue )Tj -/TT6 1 Tf -10.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.21)Tj -/TT4 1 Tf --15.4453 -1 TD -(conditions:define-condition )Tj -/TT6 1 Tf -13.7207 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.5)Tj -/TT4 1 Tf --17.9985 -1 TD -(conditions:find-restart )Tj -/TT6 1 Tf -11.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.19)Tj -/TT4 1 Tf --16.5571 -1 TD -(conditions:handler-bind )Tj -/TT6 1 Tf -11.999 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.4,11)Tj -/TT4 1 Tf --16.2769 -1 TD -(conditions:handler-case )Tj -/TT6 1 Tf -12.1133 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.11)Tj -/TT4 1 Tf --16.3911 -1 TD -(conditions:ignore-errors )Tj -/TT6 1 Tf -12.2231 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.12)Tj -/TT4 1 Tf --16.501 -1 TD -(conditions:invoke-debugger )Tj -/TT6 1 Tf -14.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.13)Tj -/TT4 1 Tf --19.3355 -1 TD -(conditions:invoke-restart )Tj -/TT6 1 Tf -12.5576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.5,20)Tj -/TT4 1 Tf --17.8926 -1 TD -(conditions:invoke-restart-interactively )Tj -/TT6 1 Tf -18.7271 0 TD -(\(Function\))Tj -/TT2 1 Tf --11.2271 -1 TD -(E.20)Tj -/TT4 1 Tf --7.5 -1 TD -(conditions:make-condition )Tj -/TT6 1 Tf -13.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.6,8)Tj -/TT4 1 Tf --18.6685 -1 TD -(conditions:muffle-warning )Tj -/TT6 1 Tf -13.1104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --18.4453 -1 TD -(conditions:restart-bind )Tj -/TT6 1 Tf -11.5 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.17)Tj -/TT4 1 Tf --15.7778 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.5)Tj -/TT4 1 Tf --16.9492 -1 TD -(conditions:restart-case )Tj -/TT6 1 Tf -11.6143 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.13)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:restart-name )Tj -/TT6 1 Tf -12.002 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.19)Tj -/TT4 1 Tf --17.3369 -1 TD -(conditions:signal )Tj -/TT6 1 Tf -8.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.8)Tj -/TT4 1 Tf --14.1685 -1 TD -(conditions:store-value )Tj -/TT6 1 Tf -11.2793 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --16.6143 -1 TD -(conditions:use-value )Tj -/TT6 1 Tf -10.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.22)Tj -/TT4 1 Tf --15.8921 -1 TD -(conditions:with-simple-restart )Tj -/TT6 1 Tf -14.8901 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.20)Tj -/TT4 1 Tf --19.168 -1 TD -(CONN )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --12.1133 -1 TD -(CONTROL-A )Tj -/TT6 1 Tf -6.5547 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.0024 -1 TD -(Control-C )Tj -/TT6 1 Tf -5.1655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.168 -1 TD -(Control-L )Tj -/TT6 1 Tf -5.0542 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.0566 -1 TD -(Control-Meta-; )Tj -/TT6 1 Tf -7.3877 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --16.3901 -1 TD -(Control-Meta-F )Tj -/TT6 1 Tf -7.6655 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --16.668 -1 TD -(Control-Meta-O )Tj -/TT6 1 Tf -7.8325 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj --16.835 -1 TD -(Control-P )Tj -/TT6 1 Tf -4.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.29)Tj -/TT4 1 Tf --5.6128 -1 TD -(CONTROL-Q )Tj -/TT6 1 Tf -6.6104 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.0581 -1 TD -(CONTROL-R )Tj -/TT6 1 Tf -6.5547 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj --16.0024 -1 TD -(Control-T )Tj -/TT6 1 Tf -4.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.29)Tj -/TT4 1 Tf --5.5566 -1 TD -(CONTROL-W )Tj -/TT6 1 Tf -6.7764 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --16.2241 -1 TD -(Control-W )Tj -/TT6 1 Tf -5.3872 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.3896 -1 TD -(CONTROL-X )Tj -/TT6 1 Tf -6.4995 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --15.9473 -1 TD -(Control-X )Tj -/TT6 1 Tf -5.1103 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.1128 -1 TD -(Convert Comments )Tj -/TT6 1 Tf -9.7793 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --18.7817 -1 TD -(Convert-Upgrade )Tj -/TT6 1 Tf -8.7231 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.14)Tj --13.8916 -1 TD -(converting characters )Tj -/TT6 1 Tf -10.1157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.3)Tj --10.9492 -1 TD -(Converting old code )Tj -/TT6 1 Tf -9.4502 0 TD -( )Tj -/TT2 1 Tf --6.9502 -1 TD -(for use with new Error system )Tj -/TT6 1 Tf -14.0039 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.1)Tj -/TT4 1 Tf --17.3374 -1 TD -(COORDINATES )Tj -/TT6 1 Tf -8.2227 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -ET -endstream -endobj -11 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -13 0 obj -<< -/Length 14386 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 537.5399 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58 22 Tm -(INDEX)Tj -62.9925 0 TD -(3)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(COPY )Tj -/TT6 1 Tf -3.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.49)Tj -/TT4 1 Tf --8.7246 -1 TD -(COPYBYTES )Tj -/TT6 1 Tf -6.7236 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.16)Tj -/TT4 1 Tf --12.0586 -1 TD -(COPYDEF )Tj -/TT6 1 Tf -5.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.4)Tj -/TT4 1 Tf --10.7246 -1 TD -(COPYFILE )Tj -/TT6 1 Tf -5.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38)Tj -/TT4 1 Tf --10.8911 -1 TD -(COPYREADTABLE )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.46)Tj -/TT4 1 Tf --14.8911 -1 TD -(COS )Tj -/TT6 1 Tf -2.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.3)Tj -/TT4 1 Tf --8.0576 -1 TD -(COURIER.CALL )Tj -/TT6 1 Tf -8.1108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.34)Tj -/TT4 1 Tf --13.4458 -1 TD -(COURIER.OPEN )Tj -/TT6 1 Tf -8.2788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.34)Tj --13.6138 -1 TD -(Creating an Exec process )Tj -/TT6 1 Tf -12.0059 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-18)Tj --12.8394 -1 TD -(Creating conditions )Tj -/TT6 1 Tf -9.1162 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.4)Tj --9.9497 -1 TD -(Creating icons )Tj -/TT6 1 Tf -6.9478 0 TD -( )Tj -/TT2 1 Tf --4.4478 -1 TD -(with ICONW )Tj -/TT6 1 Tf -6.3335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C.1)Tj --9.667 -1 TD -(CTRLUFLG )Tj -/TT6 1 Tf -5.834 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.18)Tj -/TT4 1 Tf --6.6675 -1 TD -(ctypecase )Tj -/TT6 1 Tf -5.3926 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj --9.6704 -1 TD -(CUHOTSPOTX )Tj -/TT6 1 Tf -7.5005 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --8.334 -1 TD -(CUHOTSPOTY )Tj -/TT6 1 Tf -7.5005 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --8.334 -1 TD -(CUIMAGE )Tj -/TT6 1 Tf -5.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --6.0562 -1 TD -(current package )Tj -/TT6 1 Tf -7.7266 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.45)Tj --8.5601 -1 TD -(CURSOR )Tj -/TT6 1 Tf -4.8892 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --5.7227 -1 TD -(Cursor Movement Commands )Tj -/TT6 1 Tf -13.8931 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-22)Tj --14.7266 -1 TD -(CURSORBITMAP )Tj -/TT6 1 Tf -8.6118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj -/TT4 1 Tf --9.4453 -1 TD -(CURSORCREATE )Tj -/TT6 1 Tf -9.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.30)Tj --14.3354 -1 TD -(CURSORHOTSPOTX )Tj -/TT6 1 Tf -10.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --11.2231 -1 TD -(CURSORHOTSPOTY )Tj -/TT6 1 Tf -10.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj -/TT4 1 Tf --11.2231 -2.2 TD -(D)Tj -0 -1 TD -(DA )Tj -/TT6 1 Tf -2 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.6133 -1 TD -(DAUGHTERS )Tj -/TT6 1 Tf -7.167 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --20.3384 -1 TD -(DC )Tj -/TT6 1 Tf -2 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.18)Tj --7.335 -1 TD -(Declining by Condition handler )Tj -/TT6 1 Tf -14.3975 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.4)Tj --15.231 -1 TD -(DEdit )Tj -/TT6 1 Tf -3.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.15)Tj --3.8345 -1 TD -(Default handlers )Tj -/TT6 1 Tf -7.8379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --8.6714 -1 TD -(Default-Commands )Tj -/TT6 1 Tf -9.7231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.15)Tj -/TT4 1 Tf --15.0581 -1 TD -(DEFAULT.OSTYPE )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.15)Tj -/TT4 1 Tf --14.7246 -1 TD -(DEFAULTFONT )Tj -/TT6 1 Tf -8.2212 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(D.7)Tj -/TT4 1 Tf --13.3896 -1 TD -(DEFAULTICONFN )Tj -/TT6 1 Tf -9.0547 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.25)Tj -/TT4 1 Tf --14.2231 -1 TD -(DEFAULTTEXTICON )Tj -/TT6 1 Tf -10.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(C.3)Tj -/TT4 1 Tf --15.4458 -1 TD -(deferredconstant )Tj -/TT6 1 Tf -9.002 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.12)Tj -/TT4 1 Tf --14.3369 -1 TD -(define-file-environment )Tj -/TT6 1 Tf -11.6123 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7.2)Tj -/TT4 1 Tf --16.3354 -1 TD -(define-record )Tj -/TT6 1 Tf -6.9458 0 TD -(\(Definer\) )Tj -/TT2 1 Tf -4.7231 0 TD -(7.3)Tj --11.6689 -1 TD -(Defining New Terms )Tj -/TT6 1 Tf -9.6138 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-11)Tj -/TT4 1 Tf --10.4473 -1 TD -(DEFMACRO )Tj -/TT6 1 Tf -6.6108 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.5)Tj -/TT4 1 Tf --10.8887 -1 TD -(defstruct )Tj -/TT6 1 Tf -4.834 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.4)Tj --6.6118 -1 TD -(warning )Tj -/TT6 1 Tf -4.3355 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.6)Tj -/TT4 1 Tf --7.6689 -1 TD -(DELDEF )Tj -/TT6 1 Tf -4.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.28)Tj -/TT4 1 Tf --9.8906 -1 TD -(Delete Selection )Tj -/TT6 1 Tf -8.2808 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --17.2832 -1 TD -(Delete Structure )Tj -/TT6 1 Tf -8.2803 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --17.2827 -1 TD -(Delete Word )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --15.3921 -1 TD -(DELFILE )Tj -/TT6 1 Tf -4.7222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38)Tj -/TT4 1 Tf --10.0571 -1 TD -(DESELECT )Tj -/TT6 1 Tf -6.1675 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.12)Tj -/TT4 1 Tf --18.5044 -1 TD -(DF )Tj -/TT6 1 Tf -1.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.18)Tj --7.2236 -1 TD -(DFASL files )Tj -/TT6 1 Tf -6.1128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.1)Tj -/TT4 1 Tf --6.9463 -1 TD -(DFNFLG )Tj -/TT6 1 Tf -4.6104 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.27)Tj -/TT4 1 Tf --9.7788 -1 TD -(DIR )Tj -/TT6 1 Tf -2.2778 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.8911 -1 TD -(DISPLAY )Tj -/TT6 1 Tf -5.1675 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D.6-7,14)Tj --13.4473 -1 TD -(Display icons )Tj -/TT6 1 Tf -6.4468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C.1)Tj --7.2803 -1 TD -(DISPLAY item )Tj -/TT6 1 Tf -6.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.26)Tj -/TT4 1 Tf --7.7803 -1 TD -(DISPLAYFONTDIRECTORIES )Tj -/TT6 1 Tf -14.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.23)Tj -/TT4 1 Tf --19.6138 -1 TD -(DMACRO )Tj -/TT6 1 Tf -5.333 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3.5)Tj --10.6118 -1 TD -(DMACROs )Tj -/TT6 1 Tf -5.5 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.1)Tj -/TT4 1 Tf --6.3335 -1 TD -(DO-EVENTS )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --15.0029 -1 TD -(DOCOLLECT )Tj -/TT6 1 Tf -6.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.1)Tj -/TT4 1 Tf --12.1123 -1 TD -(DOSHAPEFN )Tj -/TT6 1 Tf -6.834 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4.25)Tj -/TT4 1 Tf --15.9473 -1 TD -(DOWNFN )Tj -/TT6 1 Tf -5.3325 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D.10)Tj -/TT4 1 Tf --18.7261 -1 TD -(DP )Tj -/TT6 1 Tf -1.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.18)Tj -/TT4 1 Tf --7.2798 -1 TD -(DRAWARC )Tj -/TT6 1 Tf -5.8325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.19)Tj -/TT4 1 Tf --11.1675 -1 TD -(DRAWLINE )Tj -/TT6 1 Tf -5.9438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.19)Tj -/TT4 1 Tf --11.2788 -1 TD -(DRAWPOLYGON )Tj -/TT6 1 Tf -8.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.20)Tj -/TT4 1 Tf -11.8985 67.2 TD -(DSPCLEOL )Tj -/TT6 1 Tf -6.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj --11.3354 -1 TD -(DSPFONT )Tj -/TT6 1 Tf -5.3335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.16)Tj -/TT4 1 Tf --6.167 -1 TD -(DSPRUBOUTCHAR )Tj -/TT6 1 Tf -9.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj --15.1128 -1 TD -(DSPSCALE )Tj -/TT6 1 Tf -5.8911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.19)Tj --6.7246 -1 TD -(dummy definitions )Tj -/TT6 1 Tf -8.6147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.17)Tj -/TT4 1 Tf --9.4482 -1 TD -(DV )Tj -/TT6 1 Tf -1.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.18)Tj -/TT4 1 Tf --7.2798 -1 TD -(DWIMIFYCOMPFLG )Tj -/TT6 1 Tf -9.8877 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.34)Tj -/TT4 1 Tf --15.0562 -2.2 TD -(E)Tj -0 -1 TD -(ecase )Tj -/TT6 1 Tf -3.3364 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj -/TT4 1 Tf --7.6143 -1 TD -(ECHOCHAR )Tj -/TT6 1 Tf -6.6113 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.13)Tj -/TT4 1 Tf --18.9482 -1 TD -(ED )Tj -/TT6 1 Tf -2.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.16)Tj -/TT4 1 Tf --7.5576 -1 TD -(Edit )Tj -/TT6 1 Tf -2.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --11.4468 -1 TD -(EDIT )Tj -/TT6 1 Tf -3.1113 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4.27; D.13)Tj --11.3911 -1 TD -(Edit caret in SEdit )Tj -/TT6 1 Tf -8.7817 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.2)Tj --9.6152 -1 TD -(Edit Interface )Tj -/TT6 1 Tf -6.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.18)Tj -/TT4 1 Tf --7.2812 -1 TD -(EDITBM )Tj -/TT6 1 Tf -4.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj -/TT4 1 Tf --9.7236 -1 TD -(EDITCALLERS )Tj -/TT6 1 Tf -7.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.19)Tj --12.8906 -1 TD -(Editing Exec Input )Tj -/TT6 1 Tf -8.894 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-20)Tj --9.7275 -1 TD -(Editing Lisp Code in Memory )Tj -/TT6 1 Tf -13.3394 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.1)Tj --14.1728 -1 TD -(Editing VALUES )Tj -/TT6 1 Tf -8.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.18)Tj -/TT4 1 Tf --8.9487 -1 TD -(EDITMODE )Tj -/TT6 1 Tf -5.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.16)Tj -/TT4 1 Tf --11.1685 -1 TD -(EDITSTART )Tj -/TT6 1 Tf -6.4443 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4.27; D.14)Tj -/TT4 1 Tf --14.7241 -1 TD -(END-OF-FILE )Tj -/TT6 1 Tf -6.8882 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --13.1108 -1 TD -(ENDCOLLECT )Tj -/TT6 1 Tf -7.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.1)Tj --12.7236 -1 TD -(Ending an SEdit session )Tj -/TT6 1 Tf -11.396 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.2)Tj --12.2295 -1 TD -(ENDOFSTREAMOP )Tj -/TT6 1 Tf -9.6675 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.38)Tj --10.501 -1 TD -(ENVAPPLY )Tj -/TT6 1 Tf -5.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj --6.6694 -1 TD -(ENVEVAL )Tj -/TT6 1 Tf -5.1689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj -/TT4 1 Tf --6.0024 -1 TD -(EQUAL )Tj -/TT6 1 Tf -4.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.26)Tj -/TT4 1 Tf --9.3906 -1 TD -(EQUALALL )Tj -/TT6 1 Tf -5.9995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.3)Tj -/TT4 1 Tf --11.3345 -1 TD -(ERROR )Tj -/TT6 1 Tf -4.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --9.502 -1 TD -(error )Tj -/TT6 1 Tf -3.168 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.9)Tj --8.5029 -1 TD -(Error conditions )Tj -/TT6 1 Tf -7.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj --8.6699 -1 TD -(error system )Tj -/TT6 1 Tf -6.1118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj --6.9453 -1 TD -(Error system )Tj -/TT6 1 Tf -6.2227 0 TD -( )Tj -/TT2 1 Tf --3.7227 -1 TD -(differences between old and new )Tj -/TT6 1 Tf -15.4546 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.1)Tj --18.7881 -1 TD -(Error system proposal )Tj -/TT6 1 Tf -10.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.1)Tj --11.1699 -1 TD -(Error type mapping )Tj -/TT6 1 Tf -9.0596 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.11)Tj --9.8931 -1 TD -(Error type name )Tj -/TT6 1 Tf -7.7251 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.11)Tj --8.5586 -1 TD -(Error type number )Tj -/TT6 1 Tf -8.6143 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.11)Tj -/TT4 1 Tf --9.4478 -1 TD -(ERROR! )Tj -/TT6 1 Tf -4.5 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --9.835 -1 TD -(ERRORMESS )Tj -/TT6 1 Tf -7.001 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --12.3359 -1 TD -(ERRORMESS1 )Tj -/TT6 1 Tf -7.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --12.8921 -1 TD -(ERRORN )Tj -/TT6 1 Tf -4.8892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(2.2; 3.10)Tj --10.2241 -1 TD -(Errors )Tj -/TT6 1 Tf -3.2778 0 TD -( )Tj -/TT2 1 Tf --0.7778 -1 TD -(definition of )Tj -/TT6 1 Tf -5.9482 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj --9.2817 -1 TD -(ERRORSET )Tj -/TT6 1 Tf -6.1118 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --6.9453 -1 TD -(ERRORSTRING )Tj -/TT6 1 Tf -7.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj --13.2798 -1 TD -(ERRORTYPELIST )Tj -/TT6 1 Tf -8.8906 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --9.7241 -1 TD -(ERRORTYPELIST )Tj -/TT6 1 Tf -8.9453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(2.2)Tj -/TT4 1 Tf --14.1138 -1 TD -(ERSETQ )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10; 4.8)Tj --10.0024 -1 TD -(ERXM )Tj -/TT6 1 Tf -3.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --4.2783 -1 TD -(ESCAPE )Tj -/TT6 1 Tf -4.668 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj --14.1157 -1 TD -(Escape )Tj -/TT6 1 Tf -3.8911 0 TD -( )Tj -/TT2 1 Tf --1.3911 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.6)Tj --7.6133 -1 TD -(Establishing handlers within dynamic context )Tj -/TT6 1 Tf -20.3994 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.4)Tj -/TT4 1 Tf --21.2329 -1 TD -(etypecase )Tj -/TT6 1 Tf -5.3926 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.10)Tj -/TT4 1 Tf --9.6704 -1 TD -(Eval )Tj -/TT6 1 Tf -2.6128 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj --11.6152 -1 TD -(EVAL-format input )Tj -/TT6 1 Tf -8.7261 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-2)Tj --9.5596 -1 TD -(Exec Editing Commands )Tj -/TT6 1 Tf -11.5049 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-22)Tj --12.3384 -1 TD -(Exec type )Tj -/TT6 1 Tf -4.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj -/TT4 1 Tf --5.7803 -1 TD -(EXEC-EVAL )Tj -/TT6 1 Tf -6.2788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.9)Tj -/TT4 1 Tf --11.6138 -1 TD -(EXPAND )Tj -/TT6 1 Tf -4.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --13.7256 -1 TD -(EXPANDBITMAP )Tj -/TT6 1 Tf -8.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj -/TT4 1 Tf --13.8911 -1 TD -(EXPANDMACRO )Tj -/TT6 1 Tf -8.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.5)Tj -/TT4 1 Tf --14.1133 -1 TD -(EXPANDREGIONFN )Tj -/TT6 1 Tf -10.001 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4.24)Tj -/TT4 1 Tf --19.1143 -1 TD -(EXPLICIT )Tj -/TT6 1 Tf -5.334 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -16 0 obj -<< -/Length 14263 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 58 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58.01 22 Tm -(4)Tj -59.9412 0 TD -(INDEX)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(export )Tj -/TT6 1 Tf -3.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.9)Tj -/TT4 1 Tf --9.2246 -1 TD -(Extract )Tj -/TT6 1 Tf -3.9463 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.9487 -2.2 TD -(F)Tj -0 -1 TD -(F )Tj -/TT6 1 Tf -1.1665 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --9.1694 -1 TD -(features )Tj -/TT6 1 Tf -4.1689 0 TD -( )Tj -/TT2 1 Tf --1.6689 -1 TD -(new Common Lisp )Tj -/TT6 1 Tf -9.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.1)Tj --12.4482 -1 TD -(FETCH )Tj -/TT6 1 Tf -3.8887 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.33)Tj --4.7222 -1 TD -(File Manager )Tj -/TT6 1 Tf -6.3916 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.19)Tj --7.2251 -1 TD -(file-reading functions )Tj -/TT6 1 Tf -9.7832 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.20)Tj -/TT4 1 Tf --10.6167 -1 TD -(FILEPKGCOM )Tj -/TT6 1 Tf -7.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.9)Tj -/TT4 1 Tf --12.5571 -1 TD -(FILEPKGTYPE )Tj -/TT6 1 Tf -7.501 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.9)Tj -/TT4 1 Tf --12.8359 -1 TD -(FILEPKGTYPES )Tj -/TT6 1 Tf -8.168 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.16)Tj -/TT4 1 Tf --13.3364 -1 TD -(FILEPOS )Tj -/TT6 1 Tf -4.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.16)Tj --10.1689 -1 TD -(FILERDTBL )Tj -/TT6 1 Tf -5.9458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.22)Tj --6.7793 -1 TD -(files containing bitmaps )Tj -/TT6 1 Tf -10.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.31)Tj -/TT4 1 Tf --11.7837 -1 TD -(FILES? )Tj -/TT6 1 Tf -4 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.28)Tj -/TT4 1 Tf --9.335 -1 TD -(FILETYPE )Tj -/TT6 1 Tf -5.334 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3.25)Tj -/TT4 1 Tf --10.6128 -1 TD -(FILLPOLYGON )Tj -/TT6 1 Tf -7.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.19-20)Tj -/TT4 1 Tf --13.0015 -1 TD -(FIND )Tj -/TT6 1 Tf -2.8887 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --11.8911 -1 TD -(Find Gap )Tj -/TT6 1 Tf -4.8887 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --13.8911 -1 TD -(FIND-READTABLE )Tj -/TT6 1 Tf -9.3882 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.45)Tj -/TT4 1 Tf --14.7231 -1 TD -(FINDCALLERS )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.19)Tj -/TT4 1 Tf --12.9458 -1 TD -(FIX )Tj -/TT6 1 Tf -2.1113 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --10.7246 -1 TD -(FIXP )Tj -/TT6 1 Tf -2.7783 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3.4)Tj -/TT4 1 Tf --8.5024 -1 TD -(flet )Tj -/TT6 1 Tf -2.0557 0 TD -(\(Special form\) )Tj -/TT2 1 Tf -7.0571 0 TD -(7.4)Tj --9.1128 -1 TD -(floating point )Tj -/TT6 1 Tf -6.5044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj -/TT4 1 Tf --7.3379 -1 TD -(FLOATP )Tj -/TT6 1 Tf -4.5552 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3.4)Tj -/TT4 1 Tf --10.2793 -1 TD -(FM.BACKGROUND )Tj -/TT6 1 Tf -9.8882 0 TD -(\(FreeMenu Window Property\))Tj -/TT2 1 Tf --2.3882 -1 TD -(D.15)Tj -/TT4 1 Tf --7.5 -1 TD -(FM.CHANGELABEL )Tj -/TT6 1 Tf -10.2217 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.16)Tj -/TT4 1 Tf --20.3921 -1 TD -(FM.CHANGELABEL )Tj -/TT6 1 Tf -9.9438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.27-28)Tj -/TT4 1 Tf --15.2788 -1 TD -(FM.CHANGESTATE )Tj -/TT6 1 Tf -10.1665 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.16)Tj -/TT4 1 Tf --20.3369 -1 TD -(FM.CHANGESTATE )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --15.2236 -1 TD -(FM.DONTRESHAPE )Tj -/TT6 1 Tf -10.2227 0 TD -(\(FreeMenu Window Property\))Tj -/TT2 1 Tf --2.7227 -1 TD -(D.15)Tj -/TT4 1 Tf --7.5 -1 TD -(FM.EDITITEM )Tj -/TT6 1 Tf -7.2217 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --17.3921 -1 TD -(FM.EDITP )Tj -/TT6 1 Tf -5.5 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --15.6704 -1 TD -(FM.ENDEDIT )Tj -/TT6 1 Tf -6.9443 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --17.1147 -1 TD -(FM.FIXSHAPE )Tj -/TT6 1 Tf -7.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --12.6133 -1 TD -(FM.FORMATMENU )Tj -/TT6 1 Tf -9.4985 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.26-27)Tj -/TT4 1 Tf --14.8335 -1 TD -(FM.GETITEM )Tj -/TT6 1 Tf -6.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.27)Tj -/TT4 1 Tf --12.0566 -1 TD -(FM.GETITEM )Tj -/TT6 1 Tf -6.9995 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.15)Tj -/TT4 1 Tf --17.1699 -1 TD -(FM.GETSTATE )Tj -/TT6 1 Tf -7.8887 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.16)Tj -/TT4 1 Tf --18.0591 -1 TD -(FM.GETSTATE )Tj -/TT6 1 Tf -7.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.27)Tj -/TT4 1 Tf --12.9458 -1 TD -(FM.GROUPPROP )Tj -/TT6 1 Tf -9.0562 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D.7,18)Tj -/TT4 1 Tf --18.1694 -1 TD -(FM.HIGHLIGHTITEM )Tj -/TT6 1 Tf -10.4434 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --20.6138 -1 TD -(FM.HIGHLIGHTITEM )Tj -/TT6 1 Tf -10.1655 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --15.5005 -1 TD -(FM.ITEMFROMID )Tj -/TT6 1 Tf -8.6099 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.27)Tj -/TT4 1 Tf --13.9448 -1 TD -(FM.ITEMPROP )Tj -/TT6 1 Tf -7.7778 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D.18)Tj -/TT4 1 Tf --16.8911 -1 TD -(FM.MAKEMENU )Tj -/TT6 1 Tf -8.166 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.26-27)Tj -/TT4 1 Tf --13.501 -1 TD -(FM.MENUPROP )Tj -/TT6 1 Tf -8.3335 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D.7,19)Tj -/TT4 1 Tf --17.4468 -1 TD -(FM.NWAYPROP )Tj -/TT6 1 Tf -8.4443 0 TD -(\(FreeMenu Macro\) )Tj -/TT2 1 Tf -9.1133 0 TD -(D.19)Tj -/TT4 1 Tf --17.5576 -1 TD -(FM.NWAYPROPS )Tj -/TT6 1 Tf -8.8335 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(4.27)Tj -/TT4 1 Tf --13.1113 -1 TD -(FM.PROMPTWINDOW )Tj -/TT6 1 Tf -11.2207 0 TD -(\(FreeMenu Window)Tj --3.7207 -1 TD -(Property\) )Tj -/TT2 1 Tf -4.9458 0 TD -(D.15)Tj -/TT4 1 Tf --12.4458 -1 TD -(FM.READSTATE )Tj -/TT6 1 Tf -8.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.27)Tj -/TT4 1 Tf --13.7236 -1 TD -(FM.REDISPLAYITEM )Tj -/TT6 1 Tf -10.667 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.18)Tj -/TT4 1 Tf --20.8374 -1 TD -(FM.REDISPLAYMENU )Tj -/TT6 1 Tf -11.2227 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.18)Tj -/TT4 1 Tf --21.3931 -1 TD -(FM.RESETGROUPS )Tj -/TT6 1 Tf -10.2231 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --20.3936 -1 TD -(FM.RESETMENU )Tj -/TT6 1 Tf -8.8335 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --19.0039 -1 TD -(FM.RESETSHAPE )Tj -/TT6 1 Tf -9.3345 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --19.5049 -1 TD -(FM.RESETSHAPE )Tj -/TT6 1 Tf -9.0566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --14.3916 -1 TD -(FM.RESETSTATE )Tj -/TT6 1 Tf -9.167 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --19.3374 -1 TD -(FM.SHADE )Tj -/TT6 1 Tf -6.0557 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.18)Tj -/TT4 1 Tf --16.2261 -1 TD -(FM.SHADE )Tj -/TT6 1 Tf -5.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --11.1128 -1 TD -(FM.SHADEITEM )Tj -/TT6 1 Tf -8.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --13.5015 -1 TD -(FM.SHADEITEMBM )Tj -/TT6 1 Tf -9.7217 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf -10.8434 67.2 TD -(FM.SKIPNEXT )Tj -/TT6 1 Tf -7.5562 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.17)Tj -/TT4 1 Tf --17.7266 -1 TD -(FM.TOPGROUPID )Tj -/TT6 1 Tf -9.2778 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.18)Tj -/TT4 1 Tf --19.4482 -1 TD -(FM.WHICHITEM )Tj -/TT6 1 Tf -8.332 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.18)Tj -/TT4 1 Tf --18.5024 -1 TD -(FONT )Tj -/TT6 1 Tf -3.5552 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --16.7266 -1 TD -(FONT )Tj -/TT6 1 Tf -3.5552 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj --15.8921 -1 TD -(font descriptor )Tj -/TT6 1 Tf -6.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.22)Tj -/TT4 1 Tf --7.7256 -1 TD -(FONTCHANGEFLG )Tj -/TT6 1 Tf -9.6104 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.23)Tj -/TT4 1 Tf --14.7788 -1 TD -(FONTCREATE )Tj -/TT6 1 Tf -7.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.22)Tj --12.7236 -1 TD -(FONTSAVAILABLE )Tj -/TT6 1 Tf -9.3364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.21)Tj --10.1699 -1 TD -(FOR )Tj -/TT6 1 Tf -2.6665 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.33)Tj -/TT4 1 Tf --3.5 -1 TD -(FOR )Tj -/TT6 1 Tf -2.6665 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj --11.2798 -1 TD -(FORGET )Tj -/TT6 1 Tf -4.7222 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --5.5557 -1 TD -(FORGET )Tj -/TT6 1 Tf -4.7222 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --13.3354 -1 TD -(FORMAT )Tj -/TT6 1 Tf -5.1103 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.4,7)Tj --18.2817 -1 TD -(Free Menu )Tj -/TT6 1 Tf -5.3911 0 TD -( )Tj -/TT2 1 Tf --2.8911 -1 TD -(How to make a )Tj -/TT6 1 Tf -7.5029 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.1)Tj --10.8364 -1 TD -(Free Menu format )Tj -/TT6 1 Tf -8.5029 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.2)Tj --9.3364 -1 TD -(Free Menu layout )Tj -/TT6 1 Tf -8.6152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.1)Tj -/TT4 1 Tf --9.4487 -1 TD -(FREEMENU )Tj -/TT6 1 Tf -6.4448 0 TD -(\(FreeMenu Function\) )Tj -/TT2 1 Tf -10.1704 0 TD -(D.15)Tj -/TT4 1 Tf --16.6152 -1 TD -(FREEMENU )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.26-27)Tj -/TT4 1 Tf --11.502 -1 TD -(FROM )Tj -/TT6 1 Tf -3.4995 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj -/TT4 1 Tf --11.5024 -1 TD -(FULLNAME )Tj -/TT6 1 Tf -6.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj --11.3896 -1 TD -(FUNARG )Tj -/TT6 1 Tf -4.7778 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.4)Tj -/TT4 1 Tf --5.6113 -2.2 TD -(G)Tj -/TT2 1 Tf -0 -1 TD -(Gaps )Tj -/TT6 1 Tf -2.9458 0 TD -( )Tj -/TT2 1 Tf --0.4458 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.4)Tj --7.6133 -1 TD -(garbage collector )Tj -/TT6 1 Tf -8.227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.11)Tj -/TT4 1 Tf --9.0605 -1 TD -(gensym )Tj -/TT6 1 Tf -4.6128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.2; 7.12)Tj -/TT4 1 Tf --9.9478 -1 TD -(GET-ENVIRONMENT-AND-FILEMAP )Tj -/TT6 1 Tf -17.5547 0 TD -(\(Function\))Tj -/TT2 1 Tf --10.0547 -1 TD -(3.23)Tj -/TT4 1 Tf --7.5 -1 TD -(Get-Prompt-Window )Tj -/TT6 1 Tf -10.2207 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.15)Tj -/TT4 1 Tf --15.5557 -1 TD -(Get-Selection )Tj -/TT6 1 Tf -7.0015 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.16)Tj -/TT4 1 Tf --12.3364 -1 TD -(Get-Window-Region )Tj -/TT6 1 Tf -10.1094 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.13)Tj -/TT4 1 Tf --15.4443 -1 TD -(GETDEF )Tj -/TT6 1 Tf -4.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.28)Tj -/TT4 1 Tf --9.9463 -1 TD -(GETFILEINFO )Tj -/TT6 1 Tf -7.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38; 4.13)Tj -/TT4 1 Tf --12.5015 -1 TD -(GETPROMPTWINDOW )Tj -/TT6 1 Tf -11.2769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.28)Tj -/TT4 1 Tf --16.6118 -1 TD -(GETREADTABLE )Tj -/TT6 1 Tf -8.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.39)Tj --14.1128 -1 TD -(GETSYNTAX )Tj -/TT6 1 Tf -6.6123 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.45)Tj --7.4458 -1 TD -(global macro shadowing )Tj -/TT6 1 Tf -11.3398 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.4)Tj -/TT4 1 Tf --12.1733 -1 TD -(GROUP )Tj -/TT6 1 Tf -4.5005 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --17.6719 -1 TD -(GROUPID )Tj -/TT6 1 Tf -5.5005 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.10)Tj -/TT4 1 Tf --19.2266 -2.2 TD -(H)Tj -0 -1 TD -(handler )Tj -/TT6 1 Tf -4.1675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.4)Tj --9.5024 -1 TD -(Handling conditions )Tj -/TT6 1 Tf -9.5615 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj -/TT4 1 Tf --10.395 -1 TD -(HARDCOPYW )Tj -/TT6 1 Tf -7.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.29)Tj -/TT4 1 Tf --12.5571 -1 TD -(HARDRESET )Tj -/TT6 1 Tf -6.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.4)Tj -/TT4 1 Tf --12.1133 -1 TD -(HASDEF )Tj -/TT6 1 Tf -4.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.26,28; 4.9)Tj --10.002 -1 TD -(hash arrays )Tj -/TT6 1 Tf -5.7803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj --6.6138 -1 TD -(HASHARRAY )Tj -/TT6 1 Tf -6.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj -/TT4 1 Tf --7.6128 -1 TD -(HASHARRAY )Tj -/TT6 1 Tf -6.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.2)Tj -/TT4 1 Tf --12.2798 -1 TD -(HELDFN )Tj -/TT6 1 Tf -4.8887 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D.10)Tj -/TT4 1 Tf --18.2822 -1 TD -(HELP )Tj -/TT6 1 Tf -3.2227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.2251 -1 TD -(HELP )Tj -/TT6 1 Tf -3.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj --8.5576 -1 TD -(Help Menu Commands )Tj -/TT6 1 Tf -10.7822 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.11)Tj -/TT4 1 Tf --11.6157 -1 TD -(HIGHLIGHT )Tj -/TT6 1 Tf -6.333 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9,14)Tj --18.6699 -1 TD -(History list )Tj -/TT6 1 Tf -5.167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-16)Tj -/TT4 1 Tf --6.0005 -1 TD -(HISTORYSAVEFORMS )Tj -/TT6 1 Tf -11.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --16.5029 -1 TD -(HJUSTIFY )Tj -/TT6 1 Tf -5.6675 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.4,9)Tj --18.0044 -1 TD -(HORRIBLEVARS )Tj -/TT6 1 Tf -8.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.9,15)Tj -/TT4 1 Tf --9.2246 -1 TD -(HPRINT )Tj -/TT6 1 Tf -4.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.15)Tj -/TT4 1 Tf --9.6128 -2.2 TD -(I)Tj -0 -1 TD -(ICONW )Tj -/TT6 1 Tf -4.2773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C.1)Tj --9.6123 -1 TD -(ICONW windows )Tj -/TT6 1 Tf -8.1123 0 TD -( )Tj -/TT2 1 Tf --5.6123 -1 TD -(from an image defined by a mask )Tj -/TT6 1 Tf -15.3408 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C.1)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -19 0 obj -<< -/Length 14368 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 537.5399 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58 22 Tm -(INDEX)Tj -62.9925 0 TD -(5)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj --11.7 72.52 TD -(with titles )Tj -/TT6 1 Tf -4.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(C.1)Tj -/TT4 1 Tf --8.0015 -1 TD -(ICONW.SHADE )Tj -/TT6 1 Tf -7.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C.2)Tj -/TT4 1 Tf --13.1128 -1 TD -(ICONW.TITLE )Tj -/TT6 1 Tf -7.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C.2)Tj -/TT4 1 Tf --12.3896 -1 TD -(ID )Tj -/TT6 1 Tf -1.8335 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --15.0049 -1 TD -(ID )Tj -/TT6 1 Tf -1.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj --14.1704 -1 TD -(IDLE.PROFILE )Tj -/TT6 1 Tf -7.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --8.1689 -1 TD -(IDLE.RESETVARS )Tj -/TT6 1 Tf -9.2236 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.6)Tj -/TT4 1 Tf --14.3921 -1 TD -(IDLE.SUSPEND.PROCESS.NAMES )Tj -/TT6 1 Tf -17.0029 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.7)Tj --22.1714 -1 TD -(IEEE 802.3 specification )Tj -/TT6 1 Tf -11.3955 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.34)Tj --12.229 -1 TD -(IF )Tj -/TT6 1 Tf -1.4443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.33)Tj --2.2778 -1 TD -(IL Exec )Tj -/TT6 1 Tf -4.1685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.7)Tj -/TT4 1 Tf --5.002 -1 TD -(IL:IT )Tj -/TT6 1 Tf -2.666 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-9)Tj -/TT4 1 Tf --7.8345 -1 TD -(IL:LOAD )Tj -/TT6 1 Tf -4.6104 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.24)Tj -/TT4 1 Tf --9.9453 -1 TD -(IL:MAPHASH )Tj -/TT6 1 Tf -6.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.4)Tj -/TT4 1 Tf --12.168 -1 TD -(IL:PRIN1 )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj -/TT4 1 Tf --10.0576 -1 TD -(IL:PRIN2 )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj -/TT4 1 Tf --10.0576 -1 TD -(IL:READ )Tj -/TT6 1 Tf -4.6108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.40)Tj -/TT4 1 Tf --9.9458 -1 TD -(ILLEGAL-GO )Tj -/TT6 1 Tf -6.7217 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --12.9443 -1 TD -(ILLEGAL-RETURN )Tj -/TT6 1 Tf -9.3325 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --15.5552 -1 TD -(ILLEGAL-STACK-ARG )Tj -/TT6 1 Tf -11.1655 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --17.3882 -1 TD -(IN )Tj -/TT6 1 Tf -1.5557 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --10.1689 -1 TD -(in-package )Tj -/TT6 1 Tf -6.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.8)Tj -/TT4 1 Tf --11.3926 -1 TD -(INFILEP )Tj -/TT6 1 Tf -4.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj -/TT4 1 Tf --9.7241 -1 TD -(INFINITEWIDTH )Tj -/TT6 1 Tf -8.2769 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.13)Tj -/TT4 1 Tf --20.6138 -1 TD -(INITSTATE )Tj -/TT6 1 Tf -5.7222 0 TD -(\(FreeMenu Item Prop\) )Tj -/TT2 1 Tf -10.6699 0 TD -(4.26)Tj -/TT4 1 Tf --16.3921 -1 TD -(INITSTATE )Tj -/TT6 1 Tf -6 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9,12)Tj -/TT4 1 Tf --18.3369 -1 TD -(INPUT )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj -/TT4 1 Tf --8.8906 -1 TD -(INPUTFONT )Tj -/TT6 1 Tf -6.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --11.4458 -1 TD -(Inspect )Tj -/TT6 1 Tf -4.0566 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --13.0591 -1 TD -(INTEGERLENGTH )Tj -/TT6 1 Tf -9.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.3)Tj --14.4463 -1 TD -(integers )Tj -/TT6 1 Tf -4.1133 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj --4.9468 -1 TD -(Interlisp Compiler )Tj -/TT6 1 Tf -8.3359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.31)Tj -/TT4 1 Tf --9.1694 -1 TD -(INTERLISP-ERROR )Tj -/TT6 1 Tf -9.7227 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --15.9453 -1 TD -(INTERPRESSFONTDIRECTORIES )Tj -/TT6 1 Tf -16.5015 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.22)Tj -/TT4 1 Tf --21.6699 -1 TD -(INTERRUPTCHAR )Tj -/TT6 1 Tf -9.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.29)Tj -/TT4 1 Tf --14.5015 -1 TD -(INVALID-ARGUMENT-LIST )Tj -/TT6 1 Tf -13.1655 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --19.3882 -1 TD -(ITEMS )Tj -/TT6 1 Tf -3.8892 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --17.0605 -2.2 TD -(J)Tj -0 -1 TD -(Join )Tj -/TT6 1 Tf -2.6113 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --11.6138 -2.2 TD -(K)Tj -0 -1 TD -(Keep-Window-Region )Tj -/TT6 1 Tf -10.8877 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.13)Tj -/TT4 1 Tf --16.0561 -1 TD -(KEYACTION )Tj -/TT6 1 Tf -6.4448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.31)Tj -/TT4 1 Tf --11.7798 -1 TD -(KEYDOWNP )Tj -/TT6 1 Tf -6.4448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.31)Tj -/TT4 1 Tf --11.7798 -2.2 TD -(L)Tj -0 -1 TD -(LABEL )Tj -/TT6 1 Tf -4.1665 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj --16.5034 -1 TD -(LABELS construct )Tj -/TT6 1 Tf -8.6709 0 TD -( )Tj -/TT2 1 Tf --6.1709 -1 TD -(warning )Tj -/TT6 1 Tf -4.3355 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.10)Tj -/TT4 1 Tf --7.6689 -1 TD -(LASTC )Tj -/TT6 1 Tf -3.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.15)Tj --9.2236 -1 TD -(Layout )Tj -/TT6 1 Tf -3.5581 0 TD -( )Tj -/TT2 1 Tf --1.0581 -1 TD -(of Free Menu )Tj -/TT6 1 Tf -6.7808 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.1)Tj --10.1143 -1 TD -(LCOM files )Tj -/TT6 1 Tf -5.7788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.1)Tj --6.6123 -1 TD -(ldflg )Tj -/TT6 1 Tf -2.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.11)Tj -/TT4 1 Tf --3.5015 -1 TD -(LEFT )Tj -/TT6 1 Tf -3.333 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --16.5044 -1 TD -(LEFT and BOTTOM )Tj -/TT6 1 Tf -9.7212 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj --22.0581 -1 TD -(Left mouse button )Tj -/TT6 1 Tf -8.561 0 TD -( )Tj -/TT2 1 Tf --6.061 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.3)Tj --7.6133 -1 TD -(lexical bindings )Tj -/TT6 1 Tf -7.3374 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.33)Tj --8.1709 -1 TD -(Library modules )Tj -/TT6 1 Tf -7.9478 0 TD -( )Tj -/TT2 1 Tf --5.4478 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(5.1)Tj -/TT4 1 Tf --13.4487 -1 TD -(LIMITCHARS )Tj -/TT6 1 Tf -6.9995 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.3,13)Tj -/TT4 1 Tf --19.3364 -1 TD -(LINKS )Tj -/TT6 1 Tf -3.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.10,15)Tj --16.1704 -1 TD -(LISP )Tj -/TT6 1 Tf -2.7236 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.47)Tj --3.5571 -1 TD -(Lisp structures )Tj -/TT6 1 Tf -7.0581 0 TD -( )Tj -/TT2 1 Tf --4.5581 -1 TD -(SEdit gaps for )Tj -/TT6 1 Tf -7.1147 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.4)Tj -/TT4 1 Tf -15.4518 66.6 TD -(LISPSOURCEFILEP )Tj -/TT6 1 Tf -9.8901 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.10)Tj -/TT4 1 Tf --15.2251 -1 TD -(LISPXEVAL )Tj -/TT6 1 Tf -6.1123 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.9)Tj -/TT4 1 Tf --11.4473 -1 TD -(LISPXFNS )Tj -/TT6 1 Tf -5.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-15)Tj -/TT4 1 Tf --10.6138 -1 TD -(LISPXHISTORY )Tj -/TT6 1 Tf -7.8901 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-16)Tj -/TT4 1 Tf --13.0586 -1 TD -(LISPXHISTORYMACROS )Tj -/TT6 1 Tf -12.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj --17.5029 -1 TD -(LISPXMACROS )Tj -/TT6 1 Tf -7.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.8)Tj -/TT4 1 Tf --8.6133 -1 TD -(LISPXMACROS )Tj -/TT6 1 Tf -7.8896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --13.0581 -1 TD -(LISPXREADFN )Tj -/TT6 1 Tf -7.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.8)Tj -/TT4 1 Tf --12.9468 -1 TD -(LISPXUNREAD )Tj -/TT6 1 Tf -7.7231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.9)Tj -/TT4 1 Tf --13.0581 -1 TD -(LISPXUSERFN )Tj -/TT6 1 Tf -7.5566 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --12.7251 -1 TD -(LIST )Tj -/TT6 1 Tf -2.7222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.49)Tj --8.0571 -1 TD -(Lists )Tj -/TT6 1 Tf -2.6118 0 TD -( )Tj -/TT2 1 Tf --0.1118 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.5)Tj -/TT4 1 Tf --7.8911 -1 TD -(LOAD )Tj -/TT6 1 Tf -3.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj -/TT4 1 Tf --6.2236 -1 TD -(loadflg )Tj -/TT6 1 Tf -4.1108 0 TD -(\(Argument\) )Tj -/TT2 1 Tf -5.835 0 TD -(7.11)Tj --12.4458 -1 TD -(load-time expression )Tj -/TT6 1 Tf -10.3379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.4)Tj -/TT4 1 Tf --11.1714 -1 TD -(LOADCOMP )Tj -/TT6 1 Tf -6.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.25)Tj -/TT4 1 Tf --11.7236 -1 TD -(LOADFNS )Tj -/TT6 1 Tf -5.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20,25)Tj -/TT4 1 Tf --10.7236 -1 TD -(LOADFROM )Tj -/TT6 1 Tf -6.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.25)Tj --11.6675 -1 TD -(loading compiled files )Tj -/TT6 1 Tf -10.1167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.32)Tj --10.9502 -1 TD -(loading Medley files into Lyric )Tj -/TT6 1 Tf -13.8955 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.10)Tj -/TT4 1 Tf --14.729 -1 TD -(LOADVARS )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.25)Tj --11.502 -1 TD -(Locally defined handler )Tj -/TT6 1 Tf -11.1187 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.4)Tj --11.9521 -1 TD -(LOCALVARS )Tj -/TT6 1 Tf -6.5581 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.2)Tj --7.3916 -1 TD -(LOGIN.TIMEOUT )Tj -/TT6 1 Tf -8.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --9.2783 -1 TD -(LOGOUT )Tj -/TT6 1 Tf -4.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.7)Tj -/TT4 1 Tf --10.168 -1 TD -(long-site-name )Tj -/TT6 1 Tf -7.6675 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(7.3)Tj -/TT4 1 Tf --12.8359 -2.2 TD -(M)Tj -0 -1 TD -(MACHINETYPE )Tj -/TT6 1 Tf -7.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.7)Tj -/TT4 1 Tf --13.1689 -1 TD -(MAKE-READER-ENVIRONMENT )Tj -/TT6 1 Tf -15.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.23)Tj -/TT4 1 Tf --21.1128 -1 TD -(MAKEFILE )Tj -/TT6 1 Tf -5.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20,25,43,49)Tj -/TT4 1 Tf --11.0015 -1 TD -(MAKEFILE-ENVIRONMENT )Tj -/TT6 1 Tf -13.3887 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(3.21)Tj -/TT4 1 Tf --18.6675 -1 TD -(MAKESYS )Tj -/TT6 1 Tf -5.501 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.7)Tj --10.8359 -1 TD -(MAKETITLEBARICON )Tj -/TT6 1 Tf -10.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.25)Tj -/TT4 1 Tf --11.502 -1 TD -(map )Tj -/TT6 1 Tf -2.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.11)Tj -/TT4 1 Tf --8.2246 -1 TD -(MAPATOMS )Tj -/TT6 1 Tf -6.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.2-3)Tj -/TT4 1 Tf --12.0015 -1 TD -(MAX )Tj -/TT6 1 Tf -2.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.2)Tj -/TT4 1 Tf --8.1128 -1 TD -(MAX.INTEGER )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.2)Tj -/TT4 1 Tf --12.6689 -1 TD -(MAXHEIGHT )Tj -/TT6 1 Tf -6.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj -/TT4 1 Tf --19.1704 -1 TD -(MAXREGION )Tj -/TT6 1 Tf -7.0005 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.11)Tj -/TT4 1 Tf --20.7266 -1 TD -(MAXWIDTH )Tj -/TT6 1 Tf -6.3325 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.7,9,13)Tj --18.6694 -1 TD -(Medley )Tj -/TT6 1 Tf -3.7793 0 TD -( )Tj -/TT2 1 Tf --1.2793 -1 TD -(on Sun workstations )Tj -/TT6 1 Tf -9.8384 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1.1)Tj --10.6719 -1 TD -(on Xerox workstations )Tj -/TT6 1 Tf -10.6714 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1.1)Tj --14.0049 -1 TD -(Medley compiled files )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.1)Tj --10.9487 -1 TD -(Medley enhancements )Tj -/TT6 1 Tf -10.895 0 TD -( )Tj -/TT2 1 Tf --8.395 -1 TD -(summary )Tj -/TT6 1 Tf -5.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(1.1)Tj -/TT4 1 Tf --8.5562 -1 TD -(MENU )Tj -/TT6 1 Tf -3.7778 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --16.9492 -1 TD -(MENUFONT )Tj -/TT6 1 Tf -6.4995 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.12)Tj -/TT4 1 Tf --18.8364 -1 TD -(MENUITEMS )Tj -/TT6 1 Tf -6.8335 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.6,12)Tj -/TT4 1 Tf --19.1704 -1 TD -(MENUTITLE )Tj -/TT6 1 Tf -6.5552 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.12)Tj -/TT4 1 Tf --18.8921 -1 TD -(MESSAGE )Tj -/TT6 1 Tf -5.8345 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj -/TT4 1 Tf --18.1714 -1 TD -(Meta- \( )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta- \) )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta- / )Tj -/TT6 1 Tf -3.7227 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.7251 -1 TD -(Meta-9 )Tj -/TT6 1 Tf -3.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --12.7256 -1 TD -(Meta-; )Tj -/TT6 1 Tf -3.5 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.5024 -1 TD -(Meta-A )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-B )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-Control-C )Tj -/TT6 1 Tf -7.7769 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --16.7793 -1 TD -(Meta-Control-S )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --16.7241 -1 TD -(Meta-Control-X )Tj -/TT6 1 Tf -7.7217 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --16.7241 -1 TD -(Meta-E )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-F )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --12.7803 -1 TD -(Meta-H )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-I )Tj -/TT6 1 Tf -3.4448 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --12.4473 -1 TD -(Meta-J )Tj -/TT6 1 Tf -3.7231 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -22 0 obj -<< -/Length 13679 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 58 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58.01 22 Tm -(6)Tj -59.9412 0 TD -(INDEX)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(Meta-M )Tj -/TT6 1 Tf -4 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj -/TT4 1 Tf --13.0024 -1 TD -(Meta-N )Tj -/TT6 1 Tf -4.167 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --13.1694 -1 TD -(Meta-O )Tj -/TT6 1 Tf -3.9448 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.9473 -1 TD -(Meta-P )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-R )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-Return )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --15.3916 -1 TD -(Meta-S )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-Space )Tj -/TT6 1 Tf -6.1133 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --15.1157 -1 TD -(Meta-U )Tj -/TT6 1 Tf -3.8892 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --12.8916 -1 TD -(Meta-X )Tj -/TT6 1 Tf -3.834 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.9)Tj -/TT4 1 Tf --12.8364 -1 TD -(Meta-Z )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj --12.7803 -1 TD -(Middle mouse button )Tj -/TT6 1 Tf -9.8389 0 TD -( )Tj -/TT2 1 Tf --7.3389 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.3)Tj -/TT4 1 Tf --7.6133 -1 TD -(MIN )Tj -/TT6 1 Tf -2.3887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.2)Tj -/TT4 1 Tf --7.7236 -1 TD -(MIN.INTEGER )Tj -/TT6 1 Tf -7.1113 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.2)Tj --12.2798 -1 TD -(minimum window size )Tj -/TT6 1 Tf -10.2803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.24)Tj -/TT4 1 Tf --11.1138 -1 TD -(MKSTRING )Tj -/TT6 1 Tf -5.8887 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.42)Tj -/TT4 1 Tf --11.2236 -1 TD -(MOMENTARY )Tj -/TT6 1 Tf -7.3887 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D.11)Tj -/TT4 1 Tf --15.6685 -1 TD -(MOTHER )Tj -/TT6 1 Tf -5.1665 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj --18.3379 -1 TD -(Mouse buttons )Tj -/TT6 1 Tf -7.3931 0 TD -( )Tj -/TT2 1 Tf --4.8931 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.3)Tj -/TT4 1 Tf --7.6133 -1 TD -(MOVD )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.4)Tj -/TT4 1 Tf --8.8906 -1 TD -(MOVEDFN )Tj -/TT6 1 Tf -5.8335 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D.10)Tj --19.227 -1 TD -(multiple escape character )Tj -/TT6 1 Tf -11.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.42)Tj --12.7837 -1 TD -(Multiple Execs )Tj -/TT6 1 Tf -7.0024 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj --7.8359 -1 TD -(multiple streams )Tj -/TT6 1 Tf -7.8354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.37)Tj --8.6689 -1 TD -(MULTIPLE-ESCAPE )Tj -/TT6 1 Tf -9.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.45)Tj -/TT4 1 Tf --10.6694 -1 TD -(Mutate )Tj -/TT6 1 Tf -3.7778 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj -/TT4 1 Tf --12.7803 -2.2 TD -(N)Tj -0 -1 TD -(NAME )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --12.1133 -1 TD -(NCHARS )Tj -/TT6 1 Tf -4.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.42)Tj --10.1685 -1 TD -(NCHOOSE item )Tj -/TT6 1 Tf -7.7788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.26)Tj -/TT4 1 Tf --8.6123 -1 TD -(NDIR )Tj -/TT6 1 Tf -3 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj --11.6133 -1 TD -(Nesting Free Menu Groups )Tj -/TT6 1 Tf -12.8945 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.2)Tj -/TT4 1 Tf --13.728 -1 TD -(NETWORKOSTYPES )Tj -/TT6 1 Tf -10.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.15)Tj -/TT4 1 Tf --15.6138 -1 TD -(NEW )Tj -/TT6 1 Tf -2.8887 0 TD -(\(MAKEFILE Option\) )Tj -/TT2 1 Tf -9.6694 0 TD -(3.21)Tj --12.5581 -1 TD -(NLAMBDA )Tj -/TT6 1 Tf -5.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.5)Tj -/TT4 1 Tf --6.2236 -1 TD -(NLSETQ )Tj -/TT6 1 Tf -4.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10; 4.8)Tj --9.9463 -1 TD -(NOBIND )Tj -/TT6 1 Tf -4.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.2)Tj -/TT4 1 Tf --5.2783 -1 TD -(NOCLEARSTKLST )Tj -/TT6 1 Tf -9.3887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.5)Tj -/TT4 1 Tf --14.5571 -1 TD -(NODIRCORE )Tj -/TT6 1 Tf -6.667 0 TD -(\(File Device\) )Tj -/TT2 1 Tf -6.4453 0 TD -(4.13)Tj -/TT4 1 Tf --13.1123 -1 TD -(Normalize Selection )Tj -/TT6 1 Tf -10.0586 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj --19.061 -1 TD -(notational conventions )Tj -/TT6 1 Tf -10.5073 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(18)Tj --11.3408 -1 TD -(NSADDRESS )Tj -/TT6 1 Tf -6.7793 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.32)Tj --7.6128 -1 TD -(NSNAME )Tj -/TT6 1 Tf -4.834 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.32)Tj -/TT4 1 Tf --5.6675 -1 TD -(NSNET.DISTANCE )Tj -/TT6 1 Tf -9.334 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.35)Tj -/TT4 1 Tf --14.6689 -1 TD -(NUMBER )Tj -/TT6 1 Tf -5.2222 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D.14)Tj -/TT4 1 Tf --13.502 -1 TD -(NUMBERP )Tj -/TT6 1 Tf -5.6113 0 TD -(\(Predicate\) )Tj -/TT2 1 Tf -5.7241 0 TD -(3.4)Tj -/TT4 1 Tf --11.3354 -1 TD -(NUMBERTYPE )Tj -/TT6 1 Tf -7.5562 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.14)Tj -/TT4 1 Tf --19.8931 -1 TD -(NWAY )Tj -/TT6 1 Tf -3.8887 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4.26; D.6; 12)Tj -/TT4 1 Tf --12.1685 -1 TD -(NWAYPROPS )Tj -/TT6 1 Tf -7.1118 0 TD -(\(FreeMenu Item Prop\) )Tj -/TT2 1 Tf -10.6699 0 TD -(4.27)Tj -/TT4 1 Tf --17.7817 -1 TD -(NWAYPROPS )Tj -/TT6 1 Tf -7.3896 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.6,12)Tj -/TT4 1 Tf --19.7266 -2.2 TD -(O)Tj -/TT2 1 Tf -0 -1 TD -(OLD-INTERLISP-FILE )Tj -/TT6 1 Tf -10.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.47)Tj --11.3911 -1 TD -(OLD-INTERLISP-T )Tj -/TT6 1 Tf -9.0566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.48)Tj -/TT4 1 Tf --9.8901 -1 TD -(once-only )Tj -/TT6 1 Tf -5.2783 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.7)Tj -/TT4 1 Tf --9.5562 -1 TD -(OPENFILE )Tj -/TT6 1 Tf -5.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj -/TT4 1 Tf --10.8911 -1 TD -(OPENFN )Tj -/TT6 1 Tf -4.7227 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4.25)Tj -/TT4 1 Tf --13.8359 -1 TD -(OPENP )Tj -/TT6 1 Tf -4.0566 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38)Tj -/TT4 1 Tf --9.3916 -1 TD -(OPENSTREAM )Tj -/TT6 1 Tf -7.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.11,37)Tj -/TT4 1 Tf --12.9468 -1 TD -(OPENSTRINGSTREAM )Tj -/TT6 1 Tf -11.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37; 4.16)Tj --16.7246 -1 TD -(options )Tj -/TT6 1 Tf -3.7803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.5)Tj --4.6138 -1 TD -(ORIG )Tj -/TT6 1 Tf -3.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.46)Tj -/TT4 1 Tf --3.9448 -1 TD -(OUTPUT )Tj -/TT6 1 Tf -4.6665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj -/TT4 1 Tf -15.8985 65.4 TD -(P)Tj -/TT2 1 Tf -0 -1 TD -(package delimiter )Tj -/TT6 1 Tf -8.3931 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.2)Tj --9.2266 -1 TD -(PACKAGEDELIM )Tj -/TT6 1 Tf -8.4468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.47)Tj --9.2803 -1 TD -(packages )Tj -/TT6 1 Tf -4.8364 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.19)Tj -/TT4 1 Tf --5.6699 -1 TD -(PARSE-NSADDRESS )Tj -/TT6 1 Tf -10.6128 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.33)Tj -/TT4 1 Tf --15.9478 -1 TD -(PAT )Tj -/TT6 1 Tf -2.5557 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --10.5586 -1 TD -(pattern matching )Tj -/TT6 1 Tf -8.0044 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj -/TT4 1 Tf --8.8379 -1 TD -(PEEKC )Tj -/TT6 1 Tf -4.001 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.15)Tj -/TT4 1 Tf --9.3359 -1 TD -(pkg-goto )Tj -/TT6 1 Tf -4.832 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.8)Tj -/TT4 1 Tf --10.167 -1 TD -(PL )Tj -/TT6 1 Tf -1.8335 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj --10.4468 -1 TD -(PLVLFILEFLG )Tj -/TT6 1 Tf -7.0586 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.42)Tj -/TT4 1 Tf --7.8921 -1 TD -(PP )Tj -/TT6 1 Tf -1.8896 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --10.5029 -1 TD -(PRETTYDEF )Tj -/TT6 1 Tf -6.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.9)Tj --11.8354 -1 TD -(PRIN1 )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj --4.3345 -1 TD -(PRIN2 )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.30)Tj -/TT4 1 Tf --4.3345 -1 TD -(PRINT )Tj -/TT6 1 Tf -3.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20,48)Tj --8.8906 -1 TD -(PRINTLEVEL )Tj -/TT6 1 Tf -6.6689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.29)Tj -/TT4 1 Tf --7.5024 -1 TD -(PRINTNUM )Tj -/TT6 1 Tf -5.833 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.15)Tj --11.168 -1 TD -(PRINTOUT )Tj -/TT6 1 Tf -5.6665 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.43)Tj -/TT4 1 Tf --6.5 -1 TD -(PRINTOUTFONT )Tj -/TT6 1 Tf -8.3882 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-11)Tj -/TT4 1 Tf --13.5566 -1 TD -(PRINTSERVICE )Tj -/TT6 1 Tf -7.9458 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.19)Tj --13.1143 -1 TD -(process status window )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.12)Tj -/TT4 1 Tf --11.4492 -1 TD -(PROCESS.APPLY )Tj -/TT6 1 Tf -9.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.12)Tj -/TT4 1 Tf --14.3926 -1 TD -(PROCESS.EVAL )Tj -/TT6 1 Tf -8.3906 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.12)Tj --13.7256 -1 TD -(Programmers interface )Tj -/TT6 1 Tf -11.5034 0 TD -( )Tj -/TT2 1 Tf --9.0034 -1 TD -(to SEdit )Tj -/TT6 1 Tf -4.3354 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.12)Tj -/TT4 1 Tf --7.6689 -1 TD -(PROMPT#FLG )Tj -/TT6 1 Tf -7.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --12.5576 -1 TD -(PROMPTFONT )Tj -/TT6 1 Tf -7.5552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-10)Tj -/TT4 1 Tf --12.7236 -1 TD -(PROMTPCHARFORMS )Tj -/TT6 1 Tf -11.333 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj --16.5015 -1 TD -(PROTECTION )Tj -/TT6 1 Tf -7.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.13)Tj --7.9448 -1 TD -(PRXFLG )Tj -/TT6 1 Tf -4.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.42)Tj -/TT4 1 Tf --5.3901 -1 TD -(PUTDEF )Tj -/TT6 1 Tf -4.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.28)Tj -/TT4 1 Tf --9.8906 -2.2 TD -(Q)Tj -0 -1 TD -(Quote )Tj -/TT6 1 Tf -3.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.10)Tj --12.4468 -1 TD -(Quoted structures )Tj -/TT6 1 Tf -8.5039 0 TD -( )Tj -/TT2 1 Tf --6.0039 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.5576 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.5)Tj -/TT4 1 Tf --7.8911 -2.2 TD -(R)Tj -0 -1 TD -(RADIX )Tj -/TT6 1 Tf -3.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.44)Tj --9.002 -1 TD -(ratios )Tj -/TT6 1 Tf -3.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.4)Tj -/TT4 1 Tf --3.8345 -1 TD -(READ )Tj -/TT6 1 Tf -3.3892 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20,48)Tj --8.7241 -1 TD -(read-eval-print )Tj -/TT6 1 Tf -7.2808 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-1)Tj --8.1143 -1 TD -(read/print consistency )Tj -/TT6 1 Tf -10.2827 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.44)Tj -/TT4 1 Tf --11.1162 -1 TD -(READBUF )Tj -/TT6 1 Tf -5.4443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --10.6128 -1 TD -(READC )Tj -/TT6 1 Tf -4.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj --9.4463 -1 TD -(READER )Tj -/TT6 1 Tf -4.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.13)Tj --5.5566 -1 TD -(READER-ENVIRONMENT )Tj -/TT6 1 Tf -12.4453 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.20)Tj -/TT4 1 Tf --13.2788 -1 TD -(READLINE )Tj -/TT6 1 Tf -5.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.8)Tj --11.002 -1 TD -(READMACROS )Tj -/TT6 1 Tf -7.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.16)Tj -/TT4 1 Tf --8.5566 -1 TD -(READSYS )Tj -/TT6 1 Tf -5.3901 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.35)Tj -/TT4 1 Tf --10.7251 -1 TD -(READTABLEPROP )Tj -/TT6 1 Tf -9.5562 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.45)Tj -/TT4 1 Tf --14.8911 -1 TD -(READVISE )Tj -/TT6 1 Tf -5.668 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.14)Tj -/TT4 1 Tf --11.0029 -1 TD -(REALFRAMEP )Tj -/TT6 1 Tf -7.5 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj -/TT4 1 Tf --12.835 -1 TD -(REBREAK )Tj -/TT6 1 Tf -5.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.14)Tj -/TT4 1 Tf --10.8355 -1 TD -(RECOMPILE )Tj -/TT6 1 Tf -6.5005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.22,25)Tj -/TT4 1 Tf --11.8354 -1 TD -(record-create )Tj -/TT6 1 Tf -6.9478 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.4)Tj -/TT4 1 Tf --11.2256 -1 TD -(record-fetch )Tj -/TT6 1 Tf -6.3901 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.4)Tj -/TT4 1 Tf --10.668 -1 TD -(record-ffetch )Tj -/TT6 1 Tf -6.7231 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.4)Tj -/TT4 1 Tf --11.001 -1 TD -(Redisplay )Tj -/TT6 1 Tf -5.2798 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --14.2822 -1 TD -(Redo )Tj -/TT6 1 Tf -3.0557 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --12.0581 -1 TD -(REDO )Tj -/TT6 1 Tf -3.4448 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --12.0581 -1 TD -(REGION )Tj -/TT6 1 Tf -4.7783 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.8)Tj -/TT4 1 Tf --17.9497 -1 TD -(REGION )Tj -/TT6 1 Tf -4.7783 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.11)Tj -/TT4 1 Tf --18.5044 -1 TD -(RELDRAWTO )Tj -/TT6 1 Tf -7.0547 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.19)Tj --12.3897 -1 TD -(Release Notes )Tj -/TT6 1 Tf -7.3926 0 TD -( )Tj -/TT2 1 Tf --4.8926 -1 TD -(organization of )Tj -/TT6 1 Tf -7.6714 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(17)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -25 0 obj -<< -/Length 14208 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 537.5399 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58 22 Tm -(INDEX)Tj -62.9925 0 TD -(7)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(REMEMBER )Tj -/TT6 1 Tf -6.3892 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --15.0024 -1 TD -(REMPROP )Tj -/TT6 1 Tf -5.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.2)Tj -/TT4 1 Tf --11.2246 -1 TD -(RENAMEFILE )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38)Tj --12.3906 -1 TD -(REPAINTFN )Tj -/TT6 1 Tf -6.2227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.24)Tj -/TT4 1 Tf --7.0562 -1 TD -(REPAINTFN )Tj -/TT6 1 Tf -6.2778 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4.25)Tj --15.3911 -1 TD -(REPEATUNTIL )Tj -/TT6 1 Tf -7.4458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.3)Tj -/TT4 1 Tf --8.2793 -1 TD -(Replace-Selection )Tj -/TT6 1 Tf -9.1699 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.16)Tj --14.5049 -1 TD -(Reporting a condition or restart )Tj -/TT6 1 Tf -14.2852 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.5)Tj -/TT4 1 Tf --15.1186 -1 TD -(Reset )Tj -/TT6 1 Tf -3.2793 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10; B.14)Tj -/TT4 1 Tf --8.6143 -1 TD -(Reset-Commands )Tj -/TT6 1 Tf -9.0576 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.15)Tj --14.3926 -1 TD -(RESETFORM )Tj -/TT6 1 Tf -6.8335 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.40)Tj --7.667 -1 TD -(RESETFORM )Tj -/TT6 1 Tf -7.1113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj -/TT4 1 Tf --7.9448 -1 TD -(RESETFORMS )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj --12.6689 -1 TD -(RESETLST )Tj -/TT6 1 Tf -5.7236 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj --6.5571 -1 TD -(Resetting system state )Tj -/TT6 1 Tf -10.9487 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.11)Tj --11.7822 -1 TD -(RESETVARS )Tj -/TT6 1 Tf -6.6128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj --7.4463 -1 TD -(RESHAPEFN )Tj -/TT6 1 Tf -6.668 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.24)Tj --7.5015 -1 TD -(Restart type )Tj -/TT6 1 Tf -5.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.5)Tj --6.7803 -1 TD -(Restarting computations )Tj -/TT6 1 Tf -11.3389 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj --12.1724 -1 TD -(Restarting conditions )Tj -/TT6 1 Tf -9.894 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.5)Tj --10.7275 -1 TD -(RETAPPLY )Tj -/TT6 1 Tf -5.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj --6.6133 -1 TD -(RETEVAL )Tj -/TT6 1 Tf -5.1128 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj --5.9463 -1 TD -(RETFROM )Tj -/TT6 1 Tf -5.4995 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj -/TT4 1 Tf --6.333 -1 TD -(RETFROM )Tj -/TT6 1 Tf -5.4995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.11)Tj -/TT4 1 Tf --10.8345 -1 TD -(RETRY )Tj -/TT6 1 Tf -3.9448 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj --12.5581 -1 TD -(RETTO )Tj -/TT6 1 Tf -3.9443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.6)Tj --4.7778 -1 TD -(RETURN )Tj -/TT6 1 Tf -4.7222 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.13; 4.5)Tj -/TT4 1 Tf --5.5557 -1 TD -(Reverse Find )Tj -/TT6 1 Tf -6.8359 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj --15.8384 -1 TD -(Right mouse button )Tj -/TT6 1 Tf -9.2275 0 TD -( )Tj -/TT2 1 Tf --6.7275 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.3)Tj -/TT4 1 Tf --7.6133 -1 TD -(ROTATE-BITMAP )Tj -/TT6 1 Tf -8.8325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj -/TT4 1 Tf --14.1675 -1 TD -(ROW )Tj -/TT6 1 Tf -3.2773 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --16.4487 -1 TD -(row-major-aref )Tj -/TT6 1 Tf -7.5571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.4)Tj -/TT4 1 Tf --12.8921 -1 TD -(ROWSPACE )Tj -/TT6 1 Tf -6.7227 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj --19.894 -1 TD -(RS232 or TTY ports )Tj -/TT6 1 Tf -9.4478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.38)Tj -/TT4 1 Tf --10.2812 -2.2 TD -(S)Tj -0 -1 TD -(Save-Window-Region )Tj -/TT6 1 Tf -10.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.13)Tj -/TT4 1 Tf --16.1128 -1 TD -(SAVEVM )Tj -/TT6 1 Tf -4.7788 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.7)Tj --10.1138 -1 TD -(SCRATCHLIST )Tj -/TT6 1 Tf -7.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.1)Tj --8.3345 -1 TD -(SEdit )Tj -/TT6 1 Tf -2.9458 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.15)Tj -/TT4 1 Tf --3.7793 -1 TD -(SEdit )Tj -/TT6 1 Tf -3.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(B.16)Tj --8.4463 -1 TD -(SEdit Command Menu )Tj -/TT6 1 Tf -10.6157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.12)Tj -/TT4 1 Tf --11.4492 -1 TD -(SEE )Tj -/TT6 1 Tf -2.5566 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.1699 -1 TD -(SEE* )Tj -/TT6 1 Tf -2.9458 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.5591 -1 TD -(SELECTEDFN )Tj -/TT6 1 Tf -7.5005 0 TD -(\(FreeMenu Mouse Property\) )Tj -/TT2 1 Tf -13.3936 0 TD -(D.10)Tj -/TT4 1 Tf --20.894 -1 TD -(Set Package )Tj -/TT6 1 Tf -6.4482 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.11)Tj -/TT4 1 Tf --15.4507 -1 TD -(SETERRORN )Tj -/TT6 1 Tf -6.834 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --12.1689 -1 TD -(SETFILEINFO )Tj -/TT6 1 Tf -7.0557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.38; 4.13)Tj -/TT4 1 Tf --12.3906 -1 TD -(SETREADTABLE )Tj -/TT6 1 Tf -8.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.48)Tj -/TT4 1 Tf --14.002 -1 TD -(SETSTKARGNAME )Tj -/TT6 1 Tf -9.667 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj --15.002 -1 TD -(SETSYNTAX )Tj -/TT6 1 Tf -6.5015 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.45,49)Tj -/TT4 1 Tf --7.335 -1 TD -(SHAPEW )Tj -/TT6 1 Tf -4.9448 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.24)Tj -/TT4 1 Tf --10.2798 -1 TD -(SHH )Tj -/TT6 1 Tf -2.667 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-8)Tj -/TT4 1 Tf --11.2803 -1 TD -(SHIFT-FIND )Tj -/TT6 1 Tf -6.1104 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --15.1128 -1 TD -(short-site-name )Tj -/TT6 1 Tf -8.0571 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(7.3)Tj -/TT4 1 Tf --13.2256 -1 TD -(SHOULDCOMPILEMACROATOMS )Tj -/TT6 1 Tf -16.7217 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.4)Tj -/TT4 1 Tf --21.8901 -1 TD -(SHOULDNT )Tj -/TT6 1 Tf -6.1108 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --11.4458 -1 TD -(SHOWPARENFLG )Tj -/TT6 1 Tf -9.4443 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-25)Tj -/TT4 1 Tf --14.6128 -1 TD -(SHRINKBITMAP )Tj -/TT6 1 Tf -8.2222 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.18)Tj -/TT4 1 Tf --13.5571 -1 TD -(SHRINKFN )Tj -/TT6 1 Tf -5.7222 0 TD -(\(Window Property\) )Tj -/TT2 1 Tf -9.1133 0 TD -(4.24)Tj --14.8354 -1 TD -(SIDE effects of event )Tj -/TT6 1 Tf -10.227 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-18)Tj --11.0605 -1 TD -(Signalling conditions )Tj -/TT6 1 Tf -9.6728 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.3)Tj -/TT4 1 Tf --10.5063 -1 TD -(SIN )Tj -/TT6 1 Tf -2.2227 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.3)Tj --7.5576 -1 TD -(Sketch )Tj -/TT6 1 Tf -3.6128 0 TD -( )Tj -/TT2 1 Tf --1.1128 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6.10)Tj -/TT4 1 Tf --13.4487 -1 TD -(SKIP-NEXT )Tj -/TT6 1 Tf -5.8896 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --14.8921 -1 TD -(SKREAD )Tj -/TT6 1 Tf -4.7783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.41)Tj -/TT4 1 Tf -15.7867 67.2 TD -(SORT )Tj -/TT6 1 Tf -3.3335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.1)Tj --8.6685 -1 TD -(Special characters )Tj -/TT6 1 Tf -9.0596 0 TD -( )Tj -/TT2 1 Tf --6.5596 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.5)Tj --7.6133 -1 TD -(Specifying event addresses )Tj -/TT6 1 Tf -12.7852 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-4)Tj --13.6187 -1 TD -(Specifying Free Menu Items )Tj -/TT6 1 Tf -13.0054 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.2)Tj --13.8389 -1 TD -(stack manipulations )Tj -/TT6 1 Tf -9.3379 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.5)Tj -/TT4 1 Tf --10.1714 -1 TD -(STACK OVERFLOW )Tj -/TT6 1 Tf -10.0552 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(4.4)Tj --16.2778 -1 TD -(Stack pointers )Tj -/TT6 1 Tf -6.8921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.5)Tj -/TT4 1 Tf --7.7256 -1 TD -(STACK-OVERFLOW )Tj -/TT6 1 Tf -10.1103 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --16.333 -1 TD -(STACK-POINTER-RELEASED )Tj -/TT6 1 Tf -14.5562 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj --20.7788 -1 TD -(Starting an SEdit session )Tj -/TT6 1 Tf -12.0063 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.2)Tj --12.8398 -1 TD -(STATE )Tj -/TT6 1 Tf -3.7783 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.26)Tj -/TT4 1 Tf --4.6118 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D.7,11)Tj -/TT4 1 Tf --12.3911 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.12)Tj -/TT4 1 Tf --16.4482 -1 TD -(STATE )Tj -/TT6 1 Tf -4.1113 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.10)Tj -/TT4 1 Tf --17.8374 -1 TD -(STKARG )Tj -/TT6 1 Tf -4.7778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj -/TT4 1 Tf --10.1128 -1 TD -(STKNARGS )Tj -/TT6 1 Tf -6.167 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj -/TT4 1 Tf --11.502 -1 TD -(STKPOS )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.5)Tj -/TT4 1 Tf --10.0024 -1 TD -(STOP )Tj -/TT6 1 Tf -3.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.10)Tj -/TT4 1 Tf --8.6133 -1 TD -(STOP-UNDOABLY )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-13)Tj --13.5557 -1 TD -(strings )Tj -/TT6 1 Tf -3.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.3)Tj --1.8345 -1 TD -(in SEdit )Tj -/TT6 1 Tf -4.002 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.6)Tj -/TT4 1 Tf --7.3354 -1 TD -(STRINGWIDTH )Tj -/TT6 1 Tf -7.6103 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.42; 4.22)Tj --12.9453 -1 TD -(Structure caret in SEdit )Tj -/TT6 1 Tf -11.1157 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.2)Tj --11.9492 -1 TD -(Structure editor )Tj -/TT6 1 Tf -7.3921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.15)Tj -/TT4 1 Tf --8.2256 -1 TD -(Substitute )Tj -/TT6 1 Tf -5.4443 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.8)Tj -/TT4 1 Tf --14.4468 -1 TD -(SUCHTHAT )Tj -/TT6 1 Tf -6.0552 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj --14.0581 -1 TD -(SUSPEND.PROCESS.NAMES )Tj -/TT6 1 Tf -14.3921 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.7)Tj --15.2256 -1 TD -(Switching between editors )Tj -/TT6 1 Tf -12.1733 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.16)Tj --13.0068 -1 TD -(Symbols )Tj -/TT6 1 Tf -4.3901 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.1,6)Tj --2.7236 -1 TD -(in Error system )Tj -/TT6 1 Tf -7.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(E.1)Tj --10.8901 -1 TD -(symbols in the INTERLISP package )Tj -/TT6 1 Tf -16.4517 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.20)Tj -/TT4 1 Tf --17.2852 -1 TD -(SYSDOWNFN )Tj -/TT6 1 Tf -7.3335 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.11)Tj --21.0596 -1 TD -(sysload )Tj -/TT6 1 Tf -4.2241 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.24; 7.11)Tj -/TT4 1 Tf --5.0576 -1 TD -(SYSMOVEDFN )Tj -/TT6 1 Tf -7.8345 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.11)Tj -/TT4 1 Tf --21.5605 -1 TD -(SYSOUT )Tj -/TT6 1 Tf -4.6675 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.7)Tj -/TT4 1 Tf --10.0024 -1 TD -(SYSPRETTYFLG )Tj -/TT6 1 Tf -8.501 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.9)Tj -/TT4 1 Tf --13.6694 -1 TD -(SYSSELECTEDFN )Tj -/TT6 1 Tf -9.5015 0 TD -(\(FreeMenu System Property\))Tj -/TT2 1 Tf --2.0015 -1 TD -(D.11)Tj -/TT4 1 Tf --7.5 -2.2 TD -(T)Tj -0 -1 TD -(TABLE )Tj -/TT6 1 Tf -4.4443 0 TD -(\(FreeMenu Group Property\) )Tj -/TT2 1 Tf -13.1714 0 TD -(D.7)Tj -/TT4 1 Tf --17.6157 -1 TD -(TCOMPL )Tj -/TT6 1 Tf -4.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.22,25; 4.10)Tj --10.1123 -1 TD -(TEdit )Tj -/TT6 1 Tf -2.8896 0 TD -( )Tj -/TT2 1 Tf --0.3896 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6.1)Tj --13.4487 -1 TD -(TeleRaid Library module )Tj -/TT6 1 Tf -11.4497 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.35)Tj -/TT4 1 Tf --12.2832 -1 TD -(TEXTICON )Tj -/TT6 1 Tf -5.6113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.25; C.3)Tj -/TT4 1 Tf --10.9463 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.5576 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.36)Tj -/TT4 1 Tf --8.2793 -1 TD -(TIME )Tj -/TT6 1 Tf -2.9443 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.36)Tj -/TT4 1 Tf --7.2222 -1 TD -(TITLE )Tj -/TT6 1 Tf -3.333 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4.27)Tj --11.6128 -1 TD -(titled icons )Tj -/TT6 1 Tf -5.2803 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.25)Tj -/TT4 1 Tf --6.1138 -1 TD -(TITLEDICONW )Tj -/TT6 1 Tf -7.7769 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(C.1)Tj -/TT4 1 Tf --13.1118 -1 TD -(TOGGLE )Tj -/TT6 1 Tf -5.0557 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(D.11)Tj -/TT4 1 Tf --13.3354 -1 TD -(TOO-MANY-ARGUMENTS )Tj -/TT6 1 Tf -12.7769 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --18.9995 -1 TD -(TRACE )Tj -/TT6 1 Tf -4.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13-14)Tj -/TT4 1 Tf --9.6128 -1 TD -(TTYBACKGROUNDFNS )Tj -/TT6 1 Tf -11.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.12)Tj -/TT4 1 Tf --16.9458 -1 TD -(TTYDISPLAYSTREAM )Tj -/TT6 1 Tf -11.0005 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.25)Tj --16.3355 -1 TD -(TTYIN display typein editor )Tj -/TT6 1 Tf -12.5605 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.16)Tj --13.394 -1 TD -(TTYIN Editor from Exec )Tj -/TT6 1 Tf -11.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-20)Tj -/TT4 1 Tf --12.2246 -1 TD -(TY )Tj -/TT6 1 Tf -1.8335 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --10.4468 -1 TD -(TYPE )Tj -/TT6 1 Tf -3.1675 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-9)Tj -/TT4 1 Tf --11.7808 -1 TD -(TYPE )Tj -/TT6 1 Tf -3.4453 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj -/TT4 1 Tf --15.7822 -2.2 TD -(U)Tj -/TT2 1 Tf -0 -1 TD -(UGLYVARS )Tj -/TT6 1 Tf -6.002 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.43; 4.9,15)Tj -/TT4 1 Tf --6.8354 -1 TD -(UNBOUND-VARIABLE )Tj -/TT6 1 Tf -11.1108 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -28 0 obj -<< -/Length 13335 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 58 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58.01 22 Tm -(8)Tj -59.9412 0 TD -(INDEX)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(UNBREAK )Tj -/TT6 1 Tf -5.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.14)Tj -/TT4 1 Tf --11.1685 -1 TD -(UNBREAKIN )Tj -/TT6 1 Tf -6.5557 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.13)Tj -/TT4 1 Tf --11.8906 -1 TD -(UNDEFINED-CAR-OF-FORM )Tj -/TT6 1 Tf -13.8872 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --20.1099 -1 TD -(UNDEFINED-FUNCTION-IN-APPLY )Tj -/TT6 1 Tf -16.8882 0 TD -(\(Error Type\))Tj -/TT2 1 Tf --9.3882 -1 TD -(3.12)Tj -/TT4 1 Tf --7.5 -1 TD -(UNDO )Tj -/TT6 1 Tf -3.5 0 TD -(\(Editor Command\) )Tj -/TT2 1 Tf -9.0024 0 TD -(B.7)Tj -/TT4 1 Tf --12.5024 -1 TD -(UNDO )Tj -/TT6 1 Tf -3.5 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-4,8,13)Tj -/TT4 1 Tf --12.1133 -1 TD -(UNDO key )Tj -/TT6 1 Tf -5.4463 0 TD -(\(Editing Command\) )Tj -/TT2 1 Tf -9.4478 0 TD -(A-21)Tj -/TT4 1 Tf --14.894 -1 TD -(UNDOABLY-MAKUNBOUND )Tj -/TT6 1 Tf -13.9434 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.29)Tj -/TT4 1 Tf --19.2783 -1 TD -(UNDOABLY-SETQ )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-15)Tj --14.6128 -1 TD -(Undoing in Functions )Tj -/TT6 1 Tf -9.9502 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-14)Tj --10.7837 -1 TD -(Undoing In Programs )Tj -/TT6 1 Tf -10.2827 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-13)Tj --11.1162 -1 TD -(Undoing out of order )Tj -/TT6 1 Tf -9.6728 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(A-16)Tj -/TT4 1 Tf --10.5063 -1 TD -(UNDOSAVE )Tj -/TT6 1 Tf -6.2231 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-15)Tj -/TT4 1 Tf --11.5581 -1 TD -(UNIXFTPFLG )Tj -/TT6 1 Tf -6.833 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.14)Tj -/TT4 1 Tf --12.0015 -1 TD -(UNPACKFILENAME )Tj -/TT6 1 Tf -9.9443 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.37)Tj -/TT4 1 Tf --15.2793 -1 TD -(UNSAFEMACROATOMS )Tj -/TT6 1 Tf -12.0552 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.4)Tj --17.2236 -1 TD -(UNTIL )Tj -/TT6 1 Tf -3.4448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.3)Tj -/TT4 1 Tf --4.2783 -1 TD -(USE )Tj -/TT6 1 Tf -2.6118 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-6)Tj -/TT4 1 Tf --11.2251 -1 TD -(USERDATA )Tj -/TT6 1 Tf -6.3892 0 TD -(\(FreeMenu System Property\) )Tj -/TT2 1 Tf -13.7261 0 TD -(D.11)Tj --20.1152 -1 TD -(USERDATA LIST )Tj -/TT6 1 Tf -8.6685 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(D.14)Tj -/TT4 1 Tf --9.502 -1 TD -(USEREXEC )Tj -/TT6 1 Tf -6.0571 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.9)Tj --11.3921 -1 TD -(USERNAME )Tj -/TT6 1 Tf -6.2231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.6)Tj -/TT4 1 Tf --7.0566 -1 TD -(USERWORDS )Tj -/TT6 1 Tf -7.167 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-25)Tj --12.3354 -1 TD -(USESILPACKAGE )Tj -/TT6 1 Tf -8.9478 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.45)Tj --9.7812 -1 TD -(Using Execs )Tj -/TT6 1 Tf -6.3911 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.7)Tj -/TT4 1 Tf --7.2246 -2.2 TD -(V)Tj -0 -1 TD -(VALUEFONT )Tj -/TT6 1 Tf -6.6665 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-11)Tj --11.835 -1 TD -(VARS )Tj -/TT6 1 Tf -3.2788 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.15)Tj --4.1123 -1 TD -(version delimiter )Tj -/TT6 1 Tf -7.8359 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.2)Tj -/TT4 1 Tf --8.6694 -1 TD -(VIDEORATE )Tj -/TT6 1 Tf -6.3896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.31)Tj -/TT4 1 Tf --11.7246 -1 TD -(VJUSTIFY )Tj -/TT6 1 Tf -5.6123 0 TD -(\(FreeMenu Item Property\) )Tj -/TT2 1 Tf -12.3369 0 TD -(D.9)Tj -/TT4 1 Tf --17.9492 -2.2 TD -(W)Tj -0 -1 TD -(warn )Tj -/TT6 1 Tf -2.8896 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(E.10)Tj --8.2246 -1 TD -(WHENCHANGED )Tj -/TT6 1 Tf -8.6113 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.9)Tj -/TT4 1 Tf --9.4448 -1 TD -(WINDOWPROP )Tj -/TT6 1 Tf -7.7773 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.26)Tj --13.1123 -1 TD -(WINDOWPROPS )Tj -/TT6 1 Tf -8.4443 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.26)Tj -/TT4 1 Tf --9.2778 -1 TD -(with-collection )Tj -/TT6 1 Tf -7.5557 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.6)Tj -/TT4 1 Tf --11.8335 -1 TD -(with-input-from-string )Tj -/TT6 1 Tf -11.2754 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.13)Tj -/TT4 1 Tf --15.5532 -1 TD -(with-output-to-string )Tj -/TT6 1 Tf -10.6631 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(7.13)Tj -/TT4 1 Tf --14.9409 -1 TD -(WITH-READER-ENVIRONMENT )Tj -/TT6 1 Tf -15.3882 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.23)Tj -/TT4 1 Tf --19.666 -1 TD -(write-string )Tj -/TT6 1 Tf -6.2783 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(7.12)Tj -/TT4 1 Tf --11.6133 -1 TD -(WRITESTRIKEFONTFILE )Tj -/TT6 1 Tf -12.3325 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(4.22)Tj --17.6675 -1 TD -(writing macros )Tj -/TT6 1 Tf -7.0015 0 TD -( )Tj -/TT2 1 Tf --4.5015 -1 TD -(macros for )Tj -/TT6 1 Tf -5.5566 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(7.7)Tj --8.8901 -1 TD -(Writing your own SEdit commands )Tj -/TT6 1 Tf -16.1167 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(B.14)Tj -/TT4 1 Tf --16.9502 -2.2 TD -(X)Tj -/TT2 1 Tf -0 -1 TD -(XCL )Tj -/TT6 1 Tf -2.501 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.47)Tj --3.3345 -1 TD -(XCL Compiler )Tj -/TT6 1 Tf -6.7798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.31)Tj --7.6133 -1 TD -(XCL Exec )Tj -/TT6 1 Tf -5.2798 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.7)Tj --6.1133 -1 TD -(XCL readtable )Tj -/TT6 1 Tf -6.9487 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.21)Tj -/TT4 1 Tf --7.7822 -1 TD -(xcl:*current-condition* )Tj -/TT6 1 Tf -11.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E.8)Tj -/TT4 1 Tf --16.5029 -1 TD -(XCL:*DEBUGGER-PROMPT* )Tj -/TT6 1 Tf -14.0561 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --19.2246 -1 TD -(XCL:*EVAL-FUNCTION* )Tj -/TT6 1 Tf -11.833 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --17.0015 -1 TD -(XCL:*EXEC-PROMPT* )Tj -/TT6 1 Tf -11.001 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-19)Tj -/TT4 1 Tf --16.1694 -1 TD -(XCL:*PER-EXEC-VARIABLES* )Tj -/TT6 1 Tf -14.8906 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-18)Tj -/TT4 1 Tf --20.0591 -1 TD -(XCL:ABORT )Tj -/TT6 1 Tf -6.4438 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.10)Tj -/TT4 1 Tf --11.7788 -1 TD -(XCL:ADD-EXEC )Tj -/TT6 1 Tf -8.1113 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-18)Tj -/TT4 1 Tf --13.4463 -1 TD -(XCL:ARGLIST )Tj -/TT6 1 Tf -7.2773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.15)Tj -/TT4 1 Tf --12.4458 -1 TD -(XCL:ARRAY-SPACE-FULL )Tj -/TT6 1 Tf -13.1104 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --19.333 -1 TD -(XCL:ATTEMPT-TO-CHANGE-CONSTANT )Tj -/TT6 1 Tf -19.8867 0 TD -(\(Error)Tj --12.3867 -1 TD -(Type\) )Tj -/TT2 1 Tf -3.3896 0 TD -(3.11-12)Tj -/TT4 1 Tf --10.8896 -1 TD -(XCL:ATTEMPT-TO-RPLAC-NIL )Tj -/TT6 1 Tf -15.0532 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj --21.2759 -1 TD -(XCL:CATCH-ABORT )Tj -/TT6 1 Tf -10.001 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf -15.0655 66.6 TD -(xcl:catch-abort )Tj -/TT6 1 Tf -7.7241 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.21)Tj --12.002 -1 TD -(XCL:CONDITION )Tj -/TT6 1 Tf -8.3896 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.10)Tj -/TT4 1 Tf --9.2231 -1 TD -(xcl:condition-case )Tj -/TT6 1 Tf -9.3354 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.11)Tj -/TT4 1 Tf --13.6133 -1 TD -(xcl:condition-handler )Tj -/TT6 1 Tf -10.7227 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.8)Tj -/TT4 1 Tf --15.0005 -1 TD -(xcl:condition-reporter )Tj -/TT6 1 Tf -10.9453 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(E.7)Tj -/TT4 1 Tf --15.2231 -1 TD -(XCL:CONTROL-E-INTERRUPT )Tj -/TT6 1 Tf -14.8877 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --21.1104 -1 TD -(XCL:DATA-TYPES-EXHAUSTED )Tj -/TT6 1 Tf -15.7783 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --22.001 -1 TD -(XCL:DEF-DEFINE-TYPE )Tj -/TT6 1 Tf -11.8335 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.27-28)Tj --16.1113 -1 TD -(XCL:DEFCOMMAND )Tj -/TT6 1 Tf -10.0562 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.8)Tj -/TT4 1 Tf --10.8896 -1 TD -(XCL:DEFCOMMAND )Tj -/TT6 1 Tf -10.2212 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-11)Tj -/TT4 1 Tf --14.499 -1 TD -(XCL:DEFDEFINER )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj -/TT4 1 Tf --14.6128 -1 TD -(XCL:DEFDEFINER )Tj -/TT6 1 Tf -9.2778 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.29)Tj -/TT4 1 Tf --13.5557 -1 TD -(XCL:DEFGLOBALPARAMETER )Tj -/TT6 1 Tf -15.4438 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20)Tj -/TT4 1 Tf --20.6123 -1 TD -(XCL:DEFGLOBALVAR )Tj -/TT6 1 Tf -11.2217 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20)Tj -/TT4 1 Tf --16.3901 -1 TD -(XCL:DEFINE-PROCEED-FUNCTION )Tj -/TT6 1 Tf -17.333 0 TD -(\(Function\))Tj -/TT2 1 Tf --9.833 -1 TD -(3.20)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:DEFINLINE )Tj -/TT6 1 Tf -8.1665 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(3.20)Tj --13.5015 -1 TD -(XCL:DEFOPTIMIZER )Tj -/TT6 1 Tf -10.2231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.32)Tj -/TT4 1 Tf --11.0566 -1 TD -(XCL:DEFOPTIMIZER )Tj -/TT6 1 Tf -10.6108 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(3.5)Tj -/TT4 1 Tf --14.8887 -1 TD -(XCL:EXEC )Tj -/TT6 1 Tf -5.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-18)Tj -/TT4 1 Tf --10.9468 -1 TD -(XCL:EXEC-EVAL )Tj -/TT6 1 Tf -8.6118 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-19)Tj -/TT4 1 Tf --13.9468 -1 TD -(XCL:EXEC-FORMAT )Tj -/TT6 1 Tf -10.4995 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-19)Tj -/TT4 1 Tf --15.8345 -1 TD -(XCL:FILE-NOT-FOUND )Tj -/TT6 1 Tf -11.3872 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --17.6099 -1 TD -(XCL:FILE-WONT-OPEN )Tj -/TT6 1 Tf -11.6099 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --17.8325 -1 TD -(XCL:FLOATING-OVERFLOW )Tj -/TT6 1 Tf -14.1094 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --20.332 -1 TD -(XCL:FLOATING-UNDERFLOW )Tj -/TT6 1 Tf -14.8311 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --21.0537 -1 TD -(XCL:FS-PROTECTION-VIOLATION )Tj -/TT6 1 Tf -16.8325 0 TD -(\(Error Type\))Tj -/TT2 1 Tf --9.3325 -1 TD -(3.12)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:FS-RESOURCES-EXCEEDED )Tj -/TT6 1 Tf -16.6685 0 TD -(\(Error Type\))Tj -/TT2 1 Tf --9.1685 -1 TD -(3.12)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:HASH-TABLE-FULL )Tj -/TT6 1 Tf -12.2759 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --18.4985 -1 TD -(XCL:INVALID-PATHNAME )Tj -/TT6 1 Tf -12.8882 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --19.1108 -1 TD -(XCL:SET-DEFAULT-EXEC-TYPE )Tj -/TT6 1 Tf -15.8335 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-20)Tj -/TT4 1 Tf --21.1685 -1 TD -(XCL:SET-EXEC-TYPE )Tj -/TT6 1 Tf -10.8345 0 TD -(\(Function\) )Tj -/TT2 1 Tf -5.335 0 TD -(A-20)Tj -/TT4 1 Tf --16.1694 -1 TD -(XCL:SIMPLE-DEVICE-ERROR )Tj -/TT6 1 Tf -14.6118 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --20.8345 -1 TD -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT6 1 Tf -13.5005 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --19.7231 -1 TD -(XCL:STORAGE-EXHAUSTED )Tj -/TT6 1 Tf -14.334 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.12)Tj -/TT4 1 Tf --20.5566 -1 TD -(XCL:STREAM-NOT-OPEN )Tj -/TT6 1 Tf -12.7217 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --18.9443 -1 TD -(XCL:SYMBOL-HT-FULL )Tj -/TT6 1 Tf -11.7202 0 TD -(\(Error Type\) )Tj -/TT2 1 Tf -6.2227 0 TD -(3.11)Tj -/TT4 1 Tf --17.9429 -1 TD -(XCL:SYMBOL-NAME-TOO-LONG )Tj -/TT6 1 Tf -16.165 0 TD -(\(Error Type\))Tj -/TT2 1 Tf --8.665 -1 TD -(3.11)Tj -/TT4 1 Tf --7.5 -1 TD -(XCL:UNDOABLY )Tj -/TT6 1 Tf -8.5552 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-13)Tj -/TT4 1 Tf --12.833 -1 TD -(XCL:UNDOABLY-SETF )Tj -/TT6 1 Tf -11.4438 0 TD -(\(Macro\) )Tj -/TT2 1 Tf -4.2778 0 TD -(A-15)Tj -/TT4 1 Tf --15.7217 -2.2 TD -(\\)Tj -0 -1 TD -(\\#UNDOSAVES )Tj -/TT6 1 Tf -7.7241 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-15)Tj -/TT4 1 Tf --12.8926 -1 TD -(\\10MBTYPE.3TO10 )Tj -/TT6 1 Tf -9.4478 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.34)Tj -/TT4 1 Tf --14.6162 -1 TD -(\\10MBTYPE.PUP )Tj -/TT6 1 Tf -8.4468 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.34)Tj -/TT4 1 Tf --13.6152 -2.2 TD -(~)Tj -0 -1 TD -(~C )Tj -/TT6 1 Tf -1.8618 0 TD -(\(Format directive\) )Tj -/TT2 1 Tf -8.668 0 TD -(7.13)Tj -/TT4 1 Tf --10.5298 -2.2 TD -(!)Tj -/TT2 1 Tf -0 -1 TD -(!EVAL )Tj -/TT6 1 Tf -3.3906 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(2.2)Tj -/TT4 1 Tf --4.2241 -2.2 TD -(")Tj -/TT2 1 Tf -0 -1 TD -("numeric" print names )Tj -/TT6 1 Tf -10.3247 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.43)Tj -/TT4 1 Tf --11.1582 -2.2 TD -(*)Tj -0 -1 TD -(*break-on-warnings* )Tj -/TT6 1 Tf -10.2798 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(E.10)Tj -/TT4 1 Tf --15.4482 -1 TD -(*Clear-Linear-On-Completion* )Tj -/TT6 1 Tf -14.7236 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.14)Tj -/TT4 1 Tf --19.8921 -1 TD -(*Compile-Fn* )Tj -/TT6 1 Tf -6.8335 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.16)Tj -/TT4 1 Tf --12.002 -1 TD -(*COMPILED-EXTENSIONS* )Tj -/TT6 1 Tf -13.3906 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.25)Tj -/TT4 1 Tf --18.5591 -1 TD -(*DEFAULT-CLEANUP-COMPILER* )Tj -/TT6 1 Tf -16.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.25)Tj -/TT4 1 Tf --21.9458 -1 TD -(*DEFAULT-MAKEFILE-ENVIRONMENT* )Tj -/TT6 1 Tf -19.166 0 TD -(\(Variable\))Tj -/TT2 1 Tf --11.666 -1 TD -(3.21)Tj -/TT4 1 Tf --7.5 -1 TD -(*Edit-Fn* )Tj -/TT6 1 Tf -4.7773 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.16)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -31 0 obj -<< -/Length 5485 ->> -stream -BT -/TT2 1 Tf -10 0 0 10 200 775 Tm -0 g -/GS1 gs -0 Tc -0 Tw -( )Tj -8 0 0 8 537.5399 761 Tm -(INDEX)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -58.01 757.5 m -562.01 757.5 l -S -BT -8 0 0 8 58 22 Tm -(INDEX)Tj -62.9925 0 TD -(9)Tj -ET -58.01 30.5 m -562.01 30.5 l -S -BT -10 0 0 10 200 5 Tm -( )Tj -/TT4 1 Tf --14.2 72.52 TD -(*ERROR-OUTPUT* )Tj -/TT6 1 Tf -9.3892 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.10)Tj -/TT4 1 Tf --14.5576 -1 TD -(*Fetch-Definition-Error-Break-Flag* )Tj -/TT6 1 Tf -17.2241 0 TD -(\(Variable\))Tj -/TT2 1 Tf --9.7241 -1 TD -(B.16)Tj -/TT4 1 Tf --7.5 -1 TD -(*Getdef-Error-Fn* )Tj -/TT6 1 Tf -8.834 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.16)Tj -/TT4 1 Tf --14.0024 -1 TD -(*Getdef-Fn* )Tj -/TT6 1 Tf -6.0557 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.16)Tj -/TT4 1 Tf --11.2241 -1 TD -(*LAST-CONDITION* )Tj -/TT6 1 Tf -9.8887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.10)Tj -/TT4 1 Tf --15.0571 -1 TD -(*LISPXPRINT* )Tj -/TT6 1 Tf -7.2236 0 TD -(\(Property\) )Tj -/TT2 1 Tf -5.2788 0 TD -(A-18)Tj -/TT4 1 Tf --12.5024 -1 TD -(*NSADDRESS-FORMAT* )Tj -/TT6 1 Tf -12.2227 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.32)Tj -/TT4 1 Tf --17.3911 -1 TD -(*PACKAGE* )Tj -/TT6 1 Tf -6.3345 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20,45-46; A-1)Tj -/TT4 1 Tf --11.5029 -1 TD -(*PRINT-ARRAY* )Tj -/TT6 1 Tf -8.2227 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.43)Tj -/TT4 1 Tf --13.3911 -1 TD -(*PRINT-BASE* )Tj -/TT6 1 Tf -7.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.39,42,44)Tj --12.6138 -1 TD -(*PRINT-BASE* vs RADIX )Tj -/TT6 1 Tf -11.9468 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj -/TT4 1 Tf --12.7803 -1 TD -(*PRINT-CASE* )Tj -/TT6 1 Tf -7.4453 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.44)Tj -/TT4 1 Tf --12.6138 -1 TD -(*PRINT-ESCAPE* )Tj -/TT6 1 Tf -8.7793 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.41,44)Tj -/TT4 1 Tf --13.9478 -1 TD -(*PRINT-LENGTH* )Tj -/TT6 1 Tf -8.7778 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.22)Tj -/TT4 1 Tf --13.9463 -1 TD -(*PRINT-LEVEL* )Tj -/TT6 1 Tf -7.8896 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(4.22)Tj --13.0581 -1 TD -[(*PRINT-LEVEL* & *PRINT-LENGTH* )-1107.4(vs)]TJ -7.5 -1 TD -(PRINTLEVEL )Tj -/TT6 1 Tf -6.6689 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj --15.0024 -1 TD -(*PRINT-LEVEL* or *PRINT-LENGTH* is exceeded )Tj -7.5 -1 TD -(3.45)Tj -/TT4 1 Tf --7.5 -1 TD -(*PRINT-RADIX* )Tj -/TT6 1 Tf -7.7783 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.39,44)Tj -/TT4 1 Tf --12.9468 -1 TD -(*READ-BASE* )Tj -/TT6 1 Tf -7.2788 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.20,44)Tj -/TT4 1 Tf --12.4473 -1 TD -(*READ-SUPPRESS* )Tj -/TT6 1 Tf -9.9468 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.41)Tj -/TT4 1 Tf --15.1152 -1 TD -(*READTABLE* )Tj -/TT6 1 Tf -7.5005 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.39,41-42,48)Tj --12.6689 -1 TD -(*READTABLE* vs SETREADTABLE )Tj -/TT6 1 Tf -16.727 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj -/TT4 1 Tf --17.5605 -1 TD -(*REMOVE-INTERLISP-COMMENTS* )Tj -/TT6 1 Tf -17.3896 0 TD -(\(Variable\))Tj -/TT2 1 Tf --9.8896 -1 TD -(3.29-30)Tj -/TT4 1 Tf --7.5 -1 TD -(*STANDARD-INPUT* )Tj -/TT6 1 Tf -10.2778 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.37)Tj --15.4463 -1 TD -(*STANDARD-INPUT* vs INPUT )Tj -/TT6 1 Tf -14.7231 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj -/TT4 1 Tf --15.5566 -1 TD -(*STANDARD-OUTPUT* )Tj -/TT6 1 Tf -11.3887 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(3.37)Tj --16.5571 -1 TD -(*STANDARD-OUTPUT* vs OUTPUT )Tj -/TT6 1 Tf -16.9448 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(3.39)Tj -/TT4 1 Tf --17.7783 -1 TD -(*Wrap-Parens* )Tj -/TT6 1 Tf -7.5024 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.13)Tj -/TT4 1 Tf --12.6709 -1 TD -(*Wrap-Search* )Tj -/TT6 1 Tf -7.5024 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(B.14)Tj -/TT4 1 Tf --12.6709 -2.2 TD -(.)Tj -/TT2 1 Tf -0 -1 TD -(.FONT )Tj -/TT6 1 Tf -3.5552 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.16)Tj -/TT4 1 Tf --4.3887 -2.2 TD -(1)Tj -/TT2 1 Tf -0 -1 TD -(10MB Ethernet encapsulation types )Tj -/TT6 1 Tf -16.3433 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(4.34)Tj --17.1768 -1 TD -(1108 Users Guide )Tj -/TT6 1 Tf -9.1157 0 TD -( )Tj -/TT2 1 Tf --6.6157 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6.14)Tj --13.4487 -1 TD -(1186 Users Guide )Tj -/TT6 1 Tf -9.1157 0 TD -( )Tj -/TT2 1 Tf --6.6157 -1 TD -(summary of changes )Tj -/TT6 1 Tf -10.1152 0 TD -( )Tj -/TT2 1 Tf -0.8335 0 TD -(6.16)Tj -/TT4 1 Tf --13.4487 -2.2 TD -(3)Tj -0 -1 TD -(3STATE )Tj -/TT6 1 Tf -4.6675 0 TD -(\(FreeMenu Item\) )Tj -/TT2 1 Tf -8.2798 0 TD -(4.26; D.11)Tj -/TT4 1 Tf --12.9473 -2.2 TD -(:)Tj -0 -1 TD -(:fast-accessors )Tj -/TT6 1 Tf -7.8931 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7.5)Tj -/TT4 1 Tf --16.396 -1 TD -(:inline )Tj -/TT6 1 Tf -3.5 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7.5)Tj -/TT4 1 Tf --12.0029 -1 TD -(:template )Tj -/TT6 1 Tf -5.001 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7.5)Tj -/TT4 1 Tf --13.5039 -1 TD -(:type )Tj -/TT6 1 Tf -2.9448 0 TD -(\(Defstruct option\) )Tj -/TT2 1 Tf -8.5029 0 TD -(7.5)Tj -/TT4 1 Tf --11.4478 -2.2 TD -(=)Tj -0 -1 TD -(= )Tj -/TT6 1 Tf -1.1396 0 TD -(\(Event Address\) )Tj -/TT2 1 Tf -8.0029 0 TD -(A-5)Tj -/TT4 1 Tf --9.1426 -2.2 TD -(?)Tj -0 -1 TD -(? )Tj -/TT6 1 Tf -1.1665 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --9.7798 -1 TD -(?? )Tj -/TT6 1 Tf -1.7773 0 TD -(\(Exec Command\) )Tj -/TT2 1 Tf -8.6133 0 TD -(A-7)Tj -/TT4 1 Tf --10.3906 -1 TD -(?ACTIVATEFLG )Tj -/TT6 1 Tf -8.166 0 TD -(\(Variable\) )Tj -/TT2 1 Tf -5.1685 0 TD -(A-24)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R ->> -/ExtGState << -/GS1 7 0 R ->> ->> -endobj -7 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -34 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -35 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 278 355 0 0 0 667 0 0 0 389 0 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 0 0 0 0 -0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 -556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 222 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 33 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 126 -/Widths [278 333 474 556 0 0 0 0 333 333 389 584 0 333 278 278 -556 556 556 556 0 0 0 0 0 556 333 333 0 584 0 611 -0 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 -667 778 722 667 611 722 667 944 667 667 611 0 278 0 0 0 -0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 500 0 0 0 584 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 34 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 0 278 0 667 556 833 0 778 -667 0 722 667 611 0 667 944 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 278 556 0 222 0 500 222 833 556 556 -556 0 333 500 278 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 35 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -9 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 11 0 R -/Contents 10 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 8 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -36 0 obj -<< -/S /D ->> -endobj -37 0 obj -<< -/Nums [0 36 0 R ] ->> -endobj -8 0 obj -<< -/Type /Pages -/Kids [1 0 R 9 0 R 12 0 R 15 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R] -/Count 9 -/MediaBox [0 0 612 792] ->> -endobj -38 0 obj -<< -/CreationDate (D:20210119174412-06'00') -/ModDate (D:20210119174412-06'00') -/Producer (PSNormalizer.framework) ->> -endobj -39 0 obj -<< -/Type /Catalog -/Pages 8 0 R -/PageLabels 37 0 R ->> -endobj -xref -0 40 -0000000000 65535 f -0000121923 00000 n -0000000016 00000 n -0000012828 00000 n -0000120431 00000 n -0000120976 00000 n -0000121484 00000 n -0000119685 00000 n -0000122734 00000 n -0000122003 00000 n -0000012945 00000 n -0000028640 00000 n -0000122085 00000 n -0000028758 00000 n -0000043198 00000 n -0000122168 00000 n -0000043316 00000 n -0000057633 00000 n -0000122251 00000 n -0000057751 00000 n -0000072173 00000 n -0000122334 00000 n -0000072291 00000 n -0000086024 00000 n -0000122417 00000 n -0000086142 00000 n -0000100404 00000 n -0000122500 00000 n -0000100522 00000 n -0000113911 00000 n -0000122583 00000 n -0000114029 00000 n -0000119567 00000 n -0000119825 00000 n -0000120020 00000 n -0000120226 00000 n -0000122666 00000 n -0000122694 00000 n -0000122870 00000 n -0000123002 00000 n -trailer -<< -/Size 40 -/Root 39 0 R -/Info 38 0 R -/ID [] ->> -startxref -123071 -%%EOF diff --git a/docs/ReleaseNote/test.pdf b/docs/ReleaseNote/test.pdf deleted file mode 100644 index 3a703f9b..00000000 Binary files a/docs/ReleaseNote/test.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/000-COVER.pdf b/docs/Sun Users Guide/000-COVER.pdf deleted file mode 100644 index 00161185..00000000 Binary files a/docs/Sun Users Guide/000-COVER.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/001-TITLEPAGE.pdf b/docs/Sun Users Guide/001-TITLEPAGE.pdf deleted file mode 100644 index 63cd5794..00000000 Binary files a/docs/Sun Users Guide/001-TITLEPAGE.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/002-TOC.pdf b/docs/Sun Users Guide/002-TOC.pdf deleted file mode 100644 index 3afe052e..00000000 Binary files a/docs/Sun Users Guide/002-TOC.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/003-LOF.pdf b/docs/Sun Users Guide/003-LOF.pdf deleted file mode 100644 index e01218a9..00000000 Binary files a/docs/Sun Users Guide/003-LOF.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/004-PREFACE.pdf b/docs/Sun Users Guide/004-PREFACE.pdf deleted file mode 100644 index 59db2185..00000000 Binary files a/docs/Sun Users Guide/004-PREFACE.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/1-INTRODUCTION.pdf b/docs/Sun Users Guide/1-INTRODUCTION.pdf deleted file mode 100644 index 32069b87..00000000 Binary files a/docs/Sun Users Guide/1-INTRODUCTION.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/2-software-installation.pdf b/docs/Sun Users Guide/2-software-installation.pdf deleted file mode 100644 index 1cc50cee..00000000 Binary files a/docs/Sun Users Guide/2-software-installation.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/2-software-installation.tedit b/docs/Sun Users Guide/2-software-installation.tedit deleted file mode 100644 index 0ac19d63..00000000 Binary files a/docs/Sun Users Guide/2-software-installation.tedit and /dev/null differ diff --git a/docs/Sun Users Guide/3-GETTING-STARTED.pdf b/docs/Sun Users Guide/3-GETTING-STARTED.pdf deleted file mode 100644 index e5a9b41e..00000000 Binary files a/docs/Sun Users Guide/3-GETTING-STARTED.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/4-USING-MEDLEY.pdf b/docs/Sun Users Guide/4-USING-MEDLEY.pdf deleted file mode 100644 index a5eafa9b..00000000 Binary files a/docs/Sun Users Guide/4-USING-MEDLEY.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/5-MEDLEY-FILES.pdf b/docs/Sun Users Guide/5-MEDLEY-FILES.pdf deleted file mode 100644 index 16cccd5c..00000000 Binary files a/docs/Sun Users Guide/5-MEDLEY-FILES.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/6-ERRORS.pdf b/docs/Sun Users Guide/6-ERRORS.pdf deleted file mode 100644 index 802f61b8..00000000 Binary files a/docs/Sun Users Guide/6-ERRORS.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/APP-A-INSTALL-HINTS.pdf b/docs/Sun Users Guide/APP-A-INSTALL-HINTS.pdf deleted file mode 100644 index a255755c..00000000 Binary files a/docs/Sun Users Guide/APP-A-INSTALL-HINTS.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/APP-B-VERIFYING-TAPE-VALIDITY.pdf b/docs/Sun Users Guide/APP-B-VERIFYING-TAPE-VALIDITY.pdf deleted file mode 100644 index bc77a8ba..00000000 Binary files a/docs/Sun Users Guide/APP-B-VERIFYING-TAPE-VALIDITY.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/APP-C-FILE-LAYOUT.pdf b/docs/Sun Users Guide/APP-C-FILE-LAYOUT.pdf deleted file mode 100644 index 7ffb037b..00000000 Binary files a/docs/Sun Users Guide/APP-C-FILE-LAYOUT.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/APP-D-DIFFERENCES.pdf b/docs/Sun Users Guide/APP-D-DIFFERENCES.pdf deleted file mode 100644 index cdac781a..00000000 Binary files a/docs/Sun Users Guide/APP-D-DIFFERENCES.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/COVERMEMO.pdf b/docs/Sun Users Guide/COVERMEMO.pdf deleted file mode 100644 index 3cf7d820..00000000 Binary files a/docs/Sun Users Guide/COVERMEMO.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/GLOSSARY.pdf b/docs/Sun Users Guide/GLOSSARY.pdf deleted file mode 100644 index 1d6d2e41..00000000 Binary files a/docs/Sun Users Guide/GLOSSARY.pdf and /dev/null differ diff --git a/docs/Sun Users Guide/INDEX.pdf b/docs/Sun Users Guide/INDEX.pdf deleted file mode 100644 index cfa8dfac..00000000 Binary files a/docs/Sun Users Guide/INDEX.pdf and /dev/null differ diff --git a/docs/Sun-Users-Guide.pdf b/docs/Sun-Users-Guide.pdf deleted file mode 100644 index 2c6a2b23..00000000 Binary files a/docs/Sun-Users-Guide.pdf and /dev/null differ diff --git a/docs/medley-irm/001-TITLEPAGE.pdf b/docs/medley-irm/001-TITLEPAGE.pdf deleted file mode 100644 index ce2586c2..00000000 Binary files a/docs/medley-irm/001-TITLEPAGE.pdf and /dev/null differ diff --git a/docs/medley-irm/003-TOC.pdf b/docs/medley-irm/003-TOC.pdf deleted file mode 100644 index cbd9540a..00000000 --- a/docs/medley-irm/003-TOC.pdf +++ /dev/null @@ -1,1822 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5233 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 475.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(TABLE of CONTENTS)Tj -ET -0 G -0 J 0 j 6 w 10 M []0 d -1 i -54.01 562.99 m -510.01 562.99 l -S -BT -14 0 0 14 204.11 515.08 Tm -(Volume 1 - Lanuage Reference)Tj -/TT6 1 Tf -12 0 0 12 54 492.39 Tm -[(1. Introduction )-223.1(......................................................................................................1)]TJ -0 -1.9167 TD -[(2. Litatoms \(Symbols\) )-85(......................................................................................)-166.7(2-1)]TJ -/TT8 1 Tf -9 0 0 9 138 456.54 Tm -[(Using Symbols as Variables)-178.9(......................................................................................)-83.3(2-1)]TJ -0 -1.3333 TD -[(Function Definition Cells)-47.5(...........................................................................................)-83.3(2-3)]TJ -T* -[(Property Lists)-188.6(..............................................................................................................)-83.3(2-4)]TJ -T* -[(Print Names)-101.7(.................................................................................................................)-83.3(2-5)]TJ -T* -[(Characters and Character Codes)-121.3(..............................................................................)-83.3(2-9)]TJ -/TT6 1 Tf -12 0 0 12 54 386.39 Tm -[(3. Lists )-85.4(.................................................................................................................)-166.7(3-1)]TJ -/TT8 1 Tf -9 0 0 9 138 373.54 Tm -[(Creating Lists...............................................................................................................)-83.3(3-)]TJ -34.833 0 TD -(3)Tj --34.833 -1.3333 TD -[(Building Lists from Left to Right)-53.9(..............................................................................)-83.3(3-4)]TJ -T* -[(Copying Lists)-249.7(..............................................................................................................)-83.3(3-6)]TJ -T* -[(Extracting Tails of Lists)-46.1(..............................................................................................)-83.3(3-6)]TJ -T* -[(Counting List Cells)-125.7(.....................................................................................................)-83.3(3-8)]TJ -T* -[(Logical Operations)-247.7(.....................................................................................................)-83.3(3-9)]TJ -T* -[(Searching Lists)-237(..........................................................................................................)-83.3(3-10)]TJ -T* -[(Substitution Functions)-166.2(.............................................................................................)-83.3(3-10)]TJ -T* -[(Association Lists and Property Lists)-18.7(......................................................................)-83.3(3-11)]TJ -T* -[(Sorting Lists)-119.8(...............................................................................................................)-83.3(3-1)]TJ -34.833 0 TD -(3)Tj --34.833 -1.3333 TD -[(Other List Functions)-92.4(.................................................................................................)-83.3(3-15)]TJ -/TT6 1 Tf -12 0 0 12 54 231.39 Tm -[(4. Strings )-223.1(............................................................................................................)-166.7(4-1)]TJ -0 -1.9167 TD -[(5. Arrays )-193.8(.............................................................................................................)-166.7(5-1)]TJ -T* -[(6. Hash Arrays )-56.2(...................................................................................................)-166.7(6-1)]TJ -/TT8 1 Tf -9 0 0 9 138 172.54 Tm -[(Hash Overflow)-99.8(............................................................................................................)-83.3(6-3)]TJ -0 -1.3333 TD -[(User-Specified Hashing Functions)-83.2(...........................................................................)-83.3(6-3)]TJ -/TT6 1 Tf -12 0 0 12 54 138.39 Tm -[(7. Numbers and Arithmetic Functions )-60.1(.........................................................)-166.7(7-1)]TJ -/TT8 1 Tf -9 0 0 9 138 125.54 Tm -[(Generic Arithmetic)-188.6(.....................................................................................................)-83.3(7-2)]TJ -T* -[(Integer Arithmetic)-217.4(......................................................................................................)-83.3(7-3)]TJ -T* -[(Logical Arithmetic Functions)-29(....................................................................................)-83.3(7-6)]TJ -T* -[(Floating-Point Arithmetic)-41.2(..........................................................................................)-83.3(7-8)]TJ -T* -[(Other Arithmetic Functions)-199.4(....................................................................................)-83.3(7-10)]TJ -/TT6 1 Tf -12 0 0 12 54 55.39 Tm -[(8. Record Package )-56.2(.............................................................................................)-166.7(8-1)]TJ -/TT8 1 Tf -9 0 0 9 138 42.54 Tm -[(FETCH and REPLACE)-61.7(...............................................................................................)-83.3(8-1)]TJ -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 6103 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2)Tj -/TT8 1 Tf -9.3333 60.6156 TD -[(CREATE)-94.1(.......................................................................................................................)-166.7(8-)]TJ -34.833 0 TD -(2)Tj --34.833 -1.3333 TD -[(TYPE?)-144.9(..........................................................................................................................)]TJ -33.5833 0 TD -[(.)-166.7(8-3)]TJ --33.5833 -1.3333 TD -[(WITH)-51.6(...........................................................................................................................)]TJ -33.5833 0 TD -[(.)-166.7(8-4)]TJ --33.5833 -1.3333 TD -[(Record Declarations)-139(...................................................................................................)-166.7(8-4)]TJ -2 -1.3333 TD -[(Record Types)-17.9(.......................................................................................................)-166.7(8-5)]TJ -T* -[(Optional Record Specifications)-190.8(......................................................................)-166.7(8-10)]TJ --2 -1.3333 TD -[(Defining New Record Types)-235.7(..................................................................................)-166.7(8-12)]TJ -T* -[(Record Manipulation Functions)-27.7(.............................................................................)-166.7(8-12)]TJ -T* -[(Changetran)-121.9(................................................................................................................)-166.7(8-13)]TJ -T* -[(Built-in and User Data Types)-213.7(.................................................................................)-166.7(8-15)]TJ -/TT6 1 Tf -12 0 0 12 102 439.39 Tm -[(9. Conditionals and Iterative Statements )-198.2(....................................................)-166.7(9-1)]TJ -/TT8 1 Tf -9 0 0 9 186 426.54 Tm -[(Data Type Predicates)-181.5(.................................................................................................)-166.7(9-1)]TJ -T* -[(Equality Predicates)-42.3(.....................................................................................................)-166.7(9-2)]TJ -T* -[(Logical Predicates)-41.8(.......................................................................................................)-166.7(9-3)]TJ -T* -[(COND Conditional Function)-28.2(....................................................................................)-166.7(9-3)]TJ -T* -[(The IF Statement)-90.2(.........................................................................................................)-166.7(9-4)]TJ -T* -[(Selection Functions)-16.4(.....................................................................................................)-166.7(9-5)]TJ -T* -[(PROG and Associated Control Functions)-247.9(..............................................................)-166.7(9-6)]TJ -T* -[(The Iterative Statement)-35(..............................................................................................)-166.7(9-7)]TJ -2 -1.3333 TD -[(I.s. Types)-149.7(..............................................................................................................)-166.7(9-8)]TJ -T* -[(Iterative Variable I.s.oprs)-177.1(..................................................................................)-166.7(9-9)]TJ -T* -[(Condition I.s.oprs)-122.9(.............................................................................................)-166.7(9-12)]TJ -T* -[(Other I.s.oprs)-38.4(.....................................................................................................)-166.7(9-13)]TJ -T* -[(Miscellaneous Hints on I.s.oprs)-224.4(.....................................................................)-166.7(9-13)]TJ -T* -[(Errors in Iterative Statements)-146.3(.........................................................................)-166.7(9-15)]TJ -T* -[(Defining New Iterative Statement Operators)-224.4(..............................................)-166.7(9-15)]TJ -/TT6 1 Tf -12 0 0 12 102 236.39 Tm -[(10. Function Definition, Manipulation, and Evaluation )-116.2(........................)-166.7(10-1)]TJ -/TT8 1 Tf -9 0 0 9 186 223.54 Tm -[(Function Types)-230.3(.........................................................................................................)-166.7(10-2)]TJ -2 -1.3333 TD -[(Lambda-Spread Functions)-127.8(..............................................................................)-166.7(10-2)]TJ -T* -[(Nlambda-Spread Functions)-116.5(............................................................................)-166.7(10-3)]TJ -T* -[(Lambda-Nospread Functions)-101.9(.........................................................................)-166.7(10-4)]TJ -T* -[(Nlambda-Nospread Functions)-90.7(.......................................................................)-166.7(10-4)]TJ -T* -[(Compiled Functions)-68.7(.........................................................................................)-166.7(10-5)]TJ -T* -[(Function Type Functions)-50.1(.................................................................................)-166.7(10-5)]TJ --2 -1.3333 TD -[(Defining Functions)-91.1(...................................................................................................)-166.7(10-7)]TJ -T* -[(Function Evaluation)-88.2(.................................................................................................)-166.7(10-1)]TJ -T* -[(Iterating and Mapping Functions)-166.8(..........................................................................)-166.7(10-1)]TJ -T* -[(Function Arguments)-127.3(................................................................................................)-166.7(10-1)]TJ -T* -[(Macros)-78.9(........................................................................................................................)-166.7(1)]TJ -34 0 TD -(0-1)Tj --32 -1.3333 TD -[(DEFMACRO)-5.7(....................................................................................................)-166.7(10-15)]TJ -T* -[(Interpreting Macros)-229.3(.......................................................................................)-166.7(10-15)]TJ -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -14 0 obj -<< -/Length 5808 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 475.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3)Tj -/TT6 1 Tf -12 0 0 12 54 567.39 Tm -[(11. Variable Binds and the Interlisp Stack )-33.7(................................................)-166.7(11-1)]TJ -/TT8 1 Tf -9 0 0 9 138 554.54 Tm -[(Spaghetti Stack)-129.1(..........................................................................................................)-83.3(11-2)]TJ -0 -1.3333 TD -[(Stack Functions)-211.6(.........................................................................................................)-83.3(11-3)]TJ -2 -1.3333 TD -[(Searching the Stack)-74.4(...........................................................................................)-83.3(11-4)]TJ -T* -[(Variable Binds in Stack Frames)-205.7(......................................................................)-83.3(11-5)]TJ -T* -[(Evaluating Expressions in Stack Frames)-88.1(.......................................................)-83.3(11-6)]TJ -T* -[(Altering Flow of Control)-217.4(.................................................................................)-83.3(11-6)]TJ -T* -[(Releasing and Reusing Stack Pointers)-102.7(...........................................................)-83.3(11-7)]TJ -T* -[(Backtrace Functions)-57.8(..........................................................................................)-83.3(11-8)]TJ -T* -[(Other Stack Functions)-143.2(....................................................................................)-83.3(11-10)]TJ --2 -1.3333 TD -[(The Stack and the Interpreter)-17.3(................................................................................)-83.3(11-10)]TJ -T* -[(Generators)-27.5(................................................................................................................)-83.3(11-12)]TJ -T* -[(Coroutines)-15.8(................................................................................................................)-83.3(11-14)]TJ -T* -[(Possibilities Lists)-106.1(.....................................................................................................)-83.3(11-15)]TJ -/TT6 1 Tf -12 0 0 12 54 388.39 Tm -[(12. Miscellaneous )-141.6(...........................................................................................)-166.7(12-1)]TJ -/TT8 1 Tf -9 0 0 9 138 375.54 Tm -[(Greeting and Initialization Files)-156.9(.............................................................................)-83.3(12-1)]TJ -T* -[(Idle Mode)-117.3(...................................................................................................................)-83.3(12-)]TJ -34.833 0 TD -(3)Tj --34.833 -1.3333 TD -[(Saving Virtual Memory State)-58.3(..................................................................................)-83.3(12-5)]TJ -T* -[(System Version Information)-214(...................................................................................)-83.3(12-9)]TJ -T* -[(Date and Time Functions)-25.1(.......................................................................................)-83.3(12-11)]TJ -T* -[(Timers and Duration Functions)-18.2(............................................................................)-83.3(12-13)]TJ -T* -[(Resources)-205.2(.................................................................................................................)-83.3(12-15)]TJ -2 -1.3333 TD -[(A Simple Example)-188.2(..........................................................................................)-83.3(12-16)]TJ -T* -[(Trade-offs in More Complicated Cases)-145.2(.......................................................)-83.3(12-18)]TJ -T* -[(Macros for Accessing Resources)-255.5(..................................................................)-83.3(12-18)]TJ -T* -[(Saving Resources in a File)-196(.............................................................................)-83.3(12-19)]TJ --2 -1.3333 TD -[(Pattern Matching)-227.2(....................................................................................................)-83.3(12-19)]TJ -2 -1.3333 TD -[(Pattern Elements)-129.6(.............................................................................................)-83.3(12-20)]TJ -T* -[(Element Patterns)-129.6(.............................................................................................)-83.3(12-20)]TJ -T* -[(Segment Patterns)-200.4(............................................................................................)-83.3(12-21)]TJ -T* -[(Assignments)-168.1(....................................................................................................)-83.3(12-23)]TJ -T* -[(Place-Markers)-71(..................................................................................................)-83.3(12-23)]TJ -T* -[(Replacements)-10.9(...................................................................................................)-83.3(12-24)]TJ -T* -[(Reconstruction)-10.9(.................................................................................................)-83.3(12-24)]TJ -T* -[(Examples)-112(..........................................................................................................)-83.3(12-25)]TJ -/TT4 1 Tf -14 0 0 14 190.11 100.08 Tm -(Volume 2 - Environment Reference)Tj -/TT6 1 Tf -12 0 0 12 54 77.39 Tm -[(13. Interlisp Executive )-169.4(...................................................................................)-166.7(13-1)]TJ -/TT8 1 Tf -9 0 0 9 138 64.54 Tm -[(Input Formats)-87.6(............................................................................................................)-83.3(13-3)]TJ -T* -[(Programmers Assistant Commands)-117.3(.....................................................................)-83.3(13-4)]TJ -2 -1.3333 TD -[(Event Specification)-200.8(...........................................................................................)-83.3(13-4)]TJ -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -17 0 obj -<< -/Length 6160 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4)Tj -/TT8 1 Tf -11.3333 60.6156 TD -[(Commands)-196.1(........................................................................................................)-166.7(13-6)]TJ -0 -1.3333 TD -[(P.A. Commands Applied to P.A. Commands)-21.3(............................................)-166.7(13-15)]TJ --2 -1.3333 TD -[(Changing the Programmers Assistant)-175.6(...............................................................)-166.7(13-16)]TJ -T* -[(Undoing)-137.5(...................................................................................................................)-166.7(13-19)]TJ -2 -1.3333 TD -[(Undoing Out of Order)-127.3(...................................................................................)-166.7(13-20)]TJ -T* -[(SAVESET)-199.1(.........................................................................................................)-166.7(13-21)]TJ -T* -[(UNDONLSETQ and RESETUNDO)-48.7(.............................................................)-166.7(13-22)]TJ --2 -1.3333 TD -[(Format and Use of the History List)-215.7(.....................................................................)-166.7(13-23)]TJ -T* -[(Programmers Assistant Functions)-67.2(......................................................................)-166.7(13-26)]TJ -T* -[(The Editor and the Programmers Assistant)-137.5(......................................................)-166.7(13-32)]TJ -/TT6 1 Tf -12 0 0 12 102 439.39 Tm -[(14. Errors and Breaks )-139.2(.....................................................................................)-166.7(14-1)]TJ -/TT8 1 Tf -9 0 0 9 186 426.54 Tm -[(Breaks)-118.5(.........................................................................................................................)]TJ -33.5 0 TD -(14-1)Tj --33.5 -1.3333 TD -[(Break Windows.........................................................................................................)-166.7(14-2)]TJ -T* -[(Break Commands)-155.1(.....................................................................................................)-166.7(14-3)]TJ -T* -[(Controlling When to Break)-161.9(...................................................................................)-166.7(14-10)]TJ -T* -[(Break Window Variables)-23.3(.......................................................................................)-166.7(14-11)]TJ -T* -[(Creating Breaks with BREAK1)-103.4(.............................................................................)-166.7(14-12)]TJ -T* -[(Signalling Errors)-102.4(.....................................................................................................)-166.7(14-14)]TJ -T* -[(Catching Errors)-77.5(.......................................................................................................)-166.7(14-16)]TJ -T* -[(Changing and Restoring System State)-165.9(................................................................)-166.7(14-18)]TJ -T* -[(Error List)-89.7(..................................................................................................................)-166.7(14-)]TJ -34.333 0 TD -(20)Tj -/TT6 1 Tf -12 0 0 12 102 296.39 Tm -[(15. Breaking, Tracing, and Advising )-139.6(..........................................................)-166.7(15-1)]TJ -/TT8 1 Tf -9 0 0 9 186 283.54 Tm -[(Breaking Functions and Debugging)-115.6(......................................................................)-166.7(15-1)]TJ -0 -1.3333 TD -[(Advising)-235.7(....................................................................................................................)-166.7(15-)]TJ -34.833 0 TD -(7)Tj --32.833 -1.3333 TD -[(Implementation of Advising...........................................................................)-166.7(15-7)]TJ -T* -[(Advise Functions)-81.9(..............................................................................................)-166.7(15-8)]TJ -/TT6 1 Tf -12 0 0 12 102 225.39 Tm -[(16. List Structure Editor )-225.6(................................................................................)-166.7(16-1)]TJ -/TT8 1 Tf -9 0 0 9 186 212.54 Tm -[(SEdit)-219.6(..........................................................................................................................)]TJ -33.0833 0 TD -[(.)-166.7(16-1)]TJ --33.0833 -1.3333 TD -[(Local Attention-Changing Commands)-126.8(...............................................................)-166.7(16-10)]TJ -T* -[(Commands That Search)-250.3(........................................................................................)-166.7(16-14)]TJ -2 -1.3333 TD -[(Search Algorithm)-10.6(............................................................................................)-166.7(16-15)]TJ -T* -[(Search Commands)-21.3(..........................................................................................)-166.7(16-16)]TJ -T* -[(Location Specification)-84.8(....................................................................................)-166.7(16-18)]TJ --2 -1.3333 TD -[(Commands That Save and Restore the Edit Chain)-206.4(...........................................)-166.7(16-21)]TJ -T* -[(Commands That Modify Structure)-46.2(......................................................................)-166.7(16-22)]TJ -2 -1.3333 TD -[(Implementation)-227.4(..............................................................................................)-166.7(16-23)]TJ -T* -[(The A, B, and : Commands)-190.8(...........................................................................)-166.7(16-24)]TJ -T* -[(Form Oriented Editing and the Role of UP)-161.5(................................................)-166.7(16-26)]TJ -T* -[(Extract and Embed)-135.6(.........................................................................................)-166.7(16-26)]TJ -T* -[(The MOVE Command)-131.2(...................................................................................)-166.7(16-28)]TJ -T* -[(Commands That Move Parentheses)-115.6(............................................................)-166.7(16-30)]TJ -T* -[(TO and THRU)-100.9(.................................................................................................)-166.7(16-31)]TJ -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -20 0 obj -<< -/Length 6225 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 475.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5)Tj -/TT8 1 Tf --35.5 60.6156 TD -[(The R Command)-111.5(.............................................................................................)-83.3(16-34)]TJ --2 -1.3333 TD -[(Commands That Print)-60.2(............................................................................................)-83.3(16-35)]TJ -T* -[(Commands for Leaving the Editor.......................................................................)-83.3(16-37)]TJ -T* -[(Nested Calls to Editor)-150.1(............................................................................................)-83.3(16-39)]TJ -T* -[(Manipulating the Characters of an Atom or String)-96.4(...........................................)-83.3(16-39)]TJ -T* -[(Manipulating Predicates and Conditional Expressions)-34.3(....................................)-83.3(16-40)]TJ -T* -[(History Commands in the Editor)-119.3(.........................................................................)-83.3(16-41)]TJ -T* -[(Miscellaneous Commands)-230.1(....................................................................................)-83.3(16-41)]TJ -T* -[(Commands That Evaluate)-133.5(.....................................................................................)-83.3(16-43)]TJ -T* -[(Commands That Test)-166.7(.............................................................................................)-83.3(16-45)]TJ -T* -[(Edit Macros)-73.4(..............................................................................................................)-83.3(16-46)]TJ -T* -[(Undo)-150.1(.........................................................................................................................)-83.3(16)]TJ -34 0 TD -(-48)Tj --34 -1.3333 TD -[(EDITDEFAULT)-112(.......................................................................................................)-83.3(16-50)]TJ -T* -[(Editor Functions)-32.9(......................................................................................................)-83.3(16-51)]TJ -T* -[(Time Stamps)-142.3(............................................................................................................)-83.3(16-57)]TJ -/TT6 1 Tf -12 0 0 12 54 379.39 Tm -[(17. File Package )-56.2(...............................................................................................)-166.7(17-1)]TJ -/TT8 1 Tf -9 0 0 9 138 366.54 Tm -[(Loading Files)-178.9(.............................................................................................................)-83.3(17-3)]TJ -T* -[(Storing Files)-154.5(...............................................................................................................)-83.3(17-)]TJ -34.833 0 TD -(8)Tj --34.833 -1.3333 TD -[(Remaking a Symbolic File)-195.5(.....................................................................................)-83.3(17-12)]TJ -T* -[(Loading Files in a Distributed Environment)-140.8(......................................................)-83.3(17-13)]TJ -T* -[(Marking Changes)-8.5(....................................................................................................)-83.3(17-13)]TJ -T* -[(Noticing Files)-8.5(...........................................................................................................)-83.3(17-15)]TJ -T* -[(Distributing Change Information)-25.1(.........................................................................)-83.3(17-16)]TJ -T* -[(File Package Types)-237.5(.................................................................................................)-83.3(17-16)]TJ -2 -1.3333 TD -[(Functions for Manipulating Typed Definitions)-190.6(.........................................)-83.3(17-19)]TJ -T* -[(Defining New File Package Types)-205.2(...............................................................)-83.3(17-23)]TJ --2 -1.3333 TD -[(File Package Commands)-23.1(........................................................................................)-83.3(17-25)]TJ -2 -1.3333 TD -[(Functions and Macros)-115.4(....................................................................................)-83.3(17-26)]TJ -T* -[(Variables)-11.4(...........................................................................................................)-83.3(17-27)]TJ -T* -[(Litatom Properties)-143.7(..........................................................................................)-83.3(17-29)]TJ -T* -[(Miscellaneous File Package Commands)-223.8(.....................................................)-83.3(17-30)]TJ -T* -[(DECLARE:)-155.4(.......................................................................................................)-83.3(17-31)]TJ -T* -[(Exporting Definitions)-73.4(.....................................................................................)-83.3(17-33)]TJ -T* -[(FileVars)-8.5(.............................................................................................................)-83.3(17-34)]TJ -T* -[(Defining New File Package Commands)-240.9(.....................................................)-83.3(17-35)]TJ --2 -1.3333 TD -[(Functions for Manipulating File Command Lists)-63.1(..............................................)-83.3(17-37)]TJ -T* -[(Symbolic File Format..............................................................................................)-83.3(17-38)]TJ -2 -1.3333 TD -[(Copyright Notices)-13.3(...........................................................................................)-83.3(17-40)]TJ -T* -[(Functions Used Within Source Files)-166.2(............................................................)-83.3(17-42)]TJ -T* -[(File Maps)-78.8(..........................................................................................................)-83.3(17-42)]TJ -/TT6 1 Tf -12 0 0 12 54 68.39 Tm -[(18. Compiler )-166.5(....................................................................................................)-166.7(18-1)]TJ -/TT8 1 Tf -9 0 0 9 138 55.54 Tm -[(Compiler Printout)-48.5(.....................................................................................................)-83.3(18-2)]TJ -T* -[(Global Variables)-67.1(........................................................................................................)-83.3(18-3)]TJ -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -23 0 obj -<< -/Length 6163 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6)Tj -/TT8 1 Tf -9.3333 60.6156 TD -[(Local Variables and Special Variables)-57.5(...................................................................)-166.7(18-4)]TJ -0 -1.3333 TD -[(Constants)-164.4(...................................................................................................................)-166.7(18-)]TJ -34.833 0 TD -(5)Tj --34.833 -1.3333 TD -[(Compiling Function Calls)-188.3(.......................................................................................)-166.7(18-6)]TJ -T* -[(FUNCTION and Functional Arguments)-202.5(..............................................................)-166.7(18-7)]TJ -T* -[(Open Functions)-31.1(.........................................................................................................)-166.7(18-8)]TJ -T* -[(COMPILETYPELST)-236.7(.................................................................................................)-166.7(18-8)]TJ -T* -[(Compiling CLISP)-47.7(......................................................................................................)-166.7(18-9)]TJ -T* -[(Compiler Functions)-34.5(..................................................................................................)-166.7(18-9)]TJ -T* -[(Block Compiling)-135.6(.....................................................................................................)-166.7(18-12)]TJ -2 -1.3333 TD -[(Block Declarations)-83.8(..........................................................................................)-166.7(18-13)]TJ -T* -[(Block Compiling Functions)-31.6(...........................................................................)-166.7(18-15)]TJ --2 -1.3333 TD -[(Compiler Error Messages)-65.3(......................................................................................)-166.7(18-16)]TJ -/F1 1 Tf -14 0 0 14 102 413.17 Tm -[(19. DWIM )30.3(............................................................................)-146.3(20-1)]TJ -/TT8 1 Tf -9 0 0 9 186 400.54 Tm -[(Spelling Correction Protocol)-56.5(...................................................................................)-166.7(20-3)]TJ -T* -[(Parentheses Errors Protocol)-96(....................................................................................)-166.7(20-4)]TJ -T* -[(Undefined Function T Errors)-29.1(..................................................................................)-166.7(20-4)]TJ -T* -[(DWIM Operation)-20.3(......................................................................................................)-166.7(20-5)]TJ -2 -1.3333 TD -[(DWIM Correction: Unbound Atoms)-102.4(............................................................)-166.7(20-6)]TJ -T* -[(Undefined CAR of Form)-174.2(.................................................................................)-166.7(20-7)]TJ -T* -[(Undefined Function in APPLY)-20.8(.......................................................................)-166.7(20-8)]TJ --2 -1.3333 TD -[(DWIMUSERFORMS)-214.2(................................................................................................)-166.7(20-8)]TJ -T* -[(DWIM Functions and Variables)-74.5(...........................................................................)-166.7(20-10)]TJ -T* -[(Spelling Correction.................................................................................................)-166.7(20-11)]TJ -2 -1.3333 TD -[(Synonyms)-179.5(........................................................................................................)-166.7(20-12)]TJ -T* -[(Spelling Lists)-141.4(...................................................................................................)-166.7(20-12)]TJ -T* -[(Generators for Spelling Correction)-91.1(..............................................................)-166.7(20-14)]TJ -T* -[(Spelling Corrector Algorithm)-84.3(.......................................................................)-166.7(20-14)]TJ -T* -[(Spelling Corrector Functions and Variables)-30.1(...............................................)-166.7(20-15)]TJ -/TT6 1 Tf -12 0 0 12 102 210.39 Tm -[(20. CLISP )-56.2(..........................................................................................................)-166.7(21-1)]TJ -/TT8 1 Tf -9 0 0 9 186 197.54 Tm -[(CLISP Interaction with User)-130.7(...................................................................................)-166.7(21-4)]TJ -T* -[(CLISP Character Operators)-15.5(.....................................................................................)-166.7(21-5)]TJ -T* -[(Declarations)-31.6(...............................................................................................................)-166.7(21-9)]TJ -T* -[(CLISP Operation)-41.3(.....................................................................................................)-166.7(21-10)]TJ -T* -[(CLISP Translations)-74.1(.................................................................................................)-166.7(21-12)]TJ -T* -[(DWIMIFY)-216.6(................................................................................................................)-166.7(21-13)]TJ -T* -[(CLISPIFY)-237.6(.................................................................................................................)-166.7(21-16)]TJ -T* -[(Miscellaneous Functions and Variables)-81.9(..............................................................)-166.7(21-18)]TJ -T* -[(CLISP Internal Conventions)-173.7(.................................................................................)-166.7(21-20)]TJ -/TT6 1 Tf -12 0 0 12 102 79.39 Tm -[(21. Performance Issues )-140.1(..................................................................................)-166.7(22-1)]TJ -/TT8 1 Tf -9 0 0 9 186 66.54 Tm -[(Storage Allocation and Garbage Collection)-217.1(.........................................................)-166.7(22-1)]TJ -T* -[(Variable Bindings)-154.1(.....................................................................................................)-166.7(22-4)]TJ -T* -[(Performance Measuring)-167.8(..........................................................................................)-166.7(22-5)]TJ -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 25 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 5816 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 475.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7)Tj -/TT8 1 Tf --37.5 60.6156 TD -[(BREAKDOWN)-132(..........................................................................................................)-83.3(22-7)]TJ -0 -1.3333 TD -[(GAINSPACE)-231.1(.............................................................................................................)-83.3(22-9)]TJ -T* -[(Using Data Types Instead of Records)-58.8(....................................................................)-83.3(22-9)]TJ -T* -[(Using Incomplete File Names)-84.1(...............................................................................)-83.3(22-10)]TJ -T* -[(Using "Fast" and "Destructive" Functions)-92.4(...........................................................)-83.3(22-10)]TJ -/TT6 1 Tf -12 0 0 12 54 499.39 Tm -[(22. Processes )-168.5(....................................................................................................)-166.7(23-1)]TJ -/TT8 1 Tf -9 0 0 9 138 486.54 Tm -[(Creating and Destroying Processes)-238(.......................................................................)-83.3(23-1)]TJ -T* -[(Process Control Constructs)-177.4(.....................................................................................)-83.3(23-4)]TJ -T* -[(Events)-179.9(.........................................................................................................................)]TJ -33.5 0 TD -(23-5)Tj --33.5 -1.3333 TD -[(Monitors)-111(.....................................................................................................................)-83.3(23)]TJ -34.5 0 TD -(-7)Tj --34.5 -1.3333 TD -[(Global Resources)-10.9(.......................................................................................................)-83.3(23-8)]TJ -T* -[(Typein and the TTY Process)-6.5(....................................................................................)-83.3(23-9)]TJ -2 -1.3333 TD -[(Switing the TTY Process)-166.2(..................................................................................)-83.3(23-9)]TJ -T* -[(Handling of Interrupts)-74.4(...................................................................................)-83.3(23-11)]TJ --2 -1.3333 TD -[(Keeping the Mouse Alive)-163.7(......................................................................................)-83.3(23-12)]TJ -T* -[(Process Status Window)-33.4(..........................................................................................)-83.3(23-12)]TJ -T* -[(Non-Process Compatibility)-144.7(...................................................................................)-83.3(23-14)]TJ -/TT4 1 Tf -14 0 0 14 223.55 323.08 Tm -(Volume 3 - I/O Reference)Tj -/TT6 1 Tf -12 0 0 12 54 300.39 Tm -[(23. Streams and Files )-196.3(.....................................................................................)-166.7(24-1)]TJ -/TT8 1 Tf -9 0 0 9 138 287.54 Tm -[(Opening and Closing File Streams)-48.5(.........................................................................)-83.3(24-1)]TJ -T* -[(File Names)-182.8(.................................................................................................................)-83.3(24-4)]TJ -T* -[(Incomplete File Names)-215(............................................................................................)-83.3(24-7)]TJ -T* -[(Version Recognition)-166.7(.................................................................................................)-83.3(24-9)]TJ -T* -[(Using File Names Instead of Streams)-132.5(..................................................................)-83.3(24-10)]TJ -2 -1.3333 TD -[(File Name Efficiency Considerations)-37.3(...........................................................)-83.3(24-11)]TJ -T* -[(Obsolete File Opening Functions)-183.8(.................................................................)-83.3(24-11)]TJ -T* -[(Converting Old Programs)-144.7(.............................................................................)-83.3(24-11)]TJ --2 -1.3333 TD -[(Using Files with Processes)-243.3(....................................................................................)-83.3(24-12)]TJ -T* -[(File Attributes)-48(..........................................................................................................)-83.3(24-12)]TJ -T* -[(Closing and Reopening Files)-249.7(................................................................................)-83.3(24-15)]TJ -T* -[(Local Hard Disk Device)-110.5(.........................................................................................)-83.3(24-16)]TJ -T* -[(Floppy Disk Device)-188.6(................................................................................................)-83.3(24-18)]TJ -T* -[(I/O Operations To and From Strings)-176.9(..................................................................)-83.3(24-22)]TJ -T* -[(Temporary Files and the CORE Device)-22.1(...............................................................)-83.3(24-23)]TJ -T* -[(NULL Device)-54.4(...........................................................................................................)-83.3(24-24)]TJ -T* -[(Deleting, Copying, and Renaming Files)-22.1(..............................................................)-83.3(24-24)]TJ -T* -[(Searching File Directories)-101.7(......................................................................................)-83.3(24-24)]TJ -T* -[(Listing File Directories)-124.7(...........................................................................................)-83.3(24-25)]TJ -T* -[(File Servers)-37.8(...............................................................................................................)-83.3(24-2)]TJ -34.833 0 TD -(8)Tj --32.833 -1.3333 TD -[(PUP File Server Protocols)-104.2(..............................................................................)-83.3(24-28)]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -30 0 obj -<< -/Length 6123 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8)Tj -/TT8 1 Tf -11.3333 60.6156 TD -[(Xerox NS File Server Protocols)-47.7(.....................................................................)-166.7(24-28)]TJ -0 -1.3333 TD -[(Operating System Designations)-99(...................................................................)-166.7(24-29)]TJ -T* -[(Logging In)-216.1(.......................................................................................................)-166.7(24-30)]TJ -T* -[(Abnormal Conditions)-147.8(....................................................................................)-166.7(24-31)]TJ -/TT6 1 Tf -12 0 0 12 102 511.39 Tm -[(24. Input/Output Functions )-69.3(..........................................................................)-166.7(25-1)]TJ -/TT8 1 Tf -9 0 0 9 186 498.54 Tm -[(Specifying Streams for Input/Output Functions)-214.7(................................................)-166.7(25-1)]TJ -T* -[(Input Functions)-30.1(.........................................................................................................)-166.7(25-2)]TJ -T* -[(Output Functions)-233.7(.....................................................................................................)-166.7(25-6)]TJ -2 -1.3333 TD -[(PRINTLEVEL)-115.1(....................................................................................................)-166.7(25-8)]TJ -T* -[(Printing Numbers)-37.9(...........................................................................................)-166.7(25-10)]TJ -T* -[(User Defined Printing)-81.4(....................................................................................)-166.7(25-12)]TJ -T* -[(Printing Unusual Data Structures)-55(................................................................)-166.7(25-13)]TJ --2 -1.3333 TD -[(Random Access File Operations...........................................................................)-166.7(25-14)]TJ -T* -[(Input/Output Operations with Characters and Bytes)-226.4(.....................................)-166.7(25-17)]TJ -T* -[(PRINTOUT)-103.8(..............................................................................................................)-166.7(25-17)]TJ -2 -1.3333 TD -[(Horizontal Spacing Commands)-138(...................................................................)-166.7(25-19)]TJ -T* -[(Vertical Spacing Commands)-248.9(........................................................................)-166.7(25-20)]TJ -T* -[(Special Formatting Controls)-172.2(.........................................................................)-166.7(25-20)]TJ -T* -[(Printing Specifications)-129.2(...................................................................................)-166.7(25-20)]TJ -T* -[(Paragraph Format)-244(..........................................................................................)-166.7(25-21)]TJ -T* -[(Right-Flushing)-191.7(................................................................................................)-166.7(25-21)]TJ -T* -[(Centering)-183.9(.........................................................................................................)-166.7(25-22)]TJ -T* -[(Numbering)-160(......................................................................................................)-166.7(25-22)]TJ -T* -[(Escaping to Lisp)-25.7(..............................................................................................)-166.7(25-23)]TJ -T* -[(User-Defined Commands)-238.6(.............................................................................)-166.7(25-23)]TJ -T* -[(Special Printing Functions)-221(............................................................................)-166.7(25-24)]TJ --2 -1.3333 TD -[(READFILE and WRITEFILE)-101.9(.................................................................................)-166.7(25-25)]TJ -T* -[(Read Tables)-215.7(.............................................................................................................)-166.7(25-25)]TJ -2 -1.3333 TD -[(Read Table Functions)-35.5(.....................................................................................)-166.7(25-26)]TJ -T* -[(Syntax Classes)-77.5(.................................................................................................)-166.7(25-26)]TJ -T* -[(Read Macros)-71.1(....................................................................................................)-166.7(25-29)]TJ -/TT6 1 Tf -12 0 0 12 102 176.39 Tm -[(25. User Input/Output Packages )-41.5(..................................................................)-166.7(26-1)]TJ -/TT8 1 Tf -9 0 0 9 186 163.54 Tm -[(Inspector)-199.5(....................................................................................................................)-166.7(26)]TJ -34.5 0 TD -(-1)Tj --32.5 -1.3333 TD -[(Calling the Inspector)-92.1(........................................................................................)-166.7(26-1)]TJ -T* -[(Multiple Ways of Inspecting)-24.3(...........................................................................)-166.7(26-2)]TJ -T* -[(Inspect Windows)-102.9(..............................................................................................)-166.7(26-3)]TJ -T* -[(Inspect Window Commands)-139.5(..........................................................................)-166.7(26-3)]TJ -T* -[(Interaction with Break Windows)-163.4(...................................................................)-166.7(26-4)]TJ -T* -[(Controlling the Amount Displayed During Inspection)-23.3(..............................)-166.7(26-4)]TJ -T* -[(Inspect Macros)-136.1(..................................................................................................)-166.7(26-4)]TJ -T* -[(INSPECTWs)-180(......................................................................................................)-166.7(26-5)]TJ --2 -1.3333 TD -[(PROMPTFORWORD)-124.3(...............................................................................................)-166.7(26-7)]TJ -T* -[(ASKUSER)-223(..................................................................................................................)-166.7(26-9)]TJ -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -33 0 obj -<< -/Length 6307 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 475.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9)Tj -/TT8 1 Tf --35.5 60.6156 TD -[(Format of KEYLST)-79.3(..........................................................................................)-83.3(26-10)]TJ -0 -1.3333 TD -[(Options)-110.5(.............................................................................................................)-83.3(26-12)]TJ -T* -[(Operation)-160.3(.........................................................................................................)-83.3(26-13)]TJ -T* -[(Completing a Key)-141.3(...........................................................................................)-83.3(26-14)]TJ -T* -[(Special Keys)-100.7(.....................................................................................................)-83.3(26-15)]TJ -T* -[(Startup Protocol and Typeahead)-78.8(..................................................................)-83.3(26-16)]TJ --2 -1.3333 TD -[(TTYIN Typein Editor)-204.3(.............................................................................................)-83.3(26-17)]TJ -2 -1.3333 TD -[(Entering Input with TTYIN)-51.4(...........................................................................)-83.3(26-17)]TJ -T* -[(Mouse Commands \(Interlisp-D Only\))-67.5(.........................................................)-83.3(26-19)]TJ -T* -[(Display Editing Commands)-74.4(..........................................................................)-83.3(26-19)]TJ -T* -[(Using TTYIN for Lisp Input)-75.4(..........................................................................)-83.3(26-22)]TJ -T* -[(Useful Macros..................................................................................................)-83.3(26-23)]TJ -T* -[(Programming with TTYIN)-132(............................................................................)-83.3(26-23)]TJ -T* -[(Using TTYIN as a General Editor)-32.4(.................................................................)-83.3(26-25)]TJ -T* -[(?= Handler)-176.9(.......................................................................................................)-83.3(26-26)]TJ -T* -[(Read Macros)-154.5(....................................................................................................)-83.3(26-27)]TJ -T* -[(Assorted Flags)-107.1(.................................................................................................)-83.3(26-28)]TJ -T* -[(Special Responses)-159.3(...........................................................................................)-83.3(26-29)]TJ -T* -[(Display Types)-56.8(..................................................................................................)-83.3(26-30)]TJ --2 -1.3333 TD -[(Prettyprint)-34.8(................................................................................................................)-83.3(26-3)]TJ -34.833 0 TD -(1)Tj --32.833 -1.3333 TD -[(Comment Feature)-170.6(...........................................................................................)-83.3(26-33)]TJ -T* -[(Comment Pointers)-112(..........................................................................................)-83.3(26-34)]TJ -T* -[(Converting Comments to Lowercase)-220.4(..........................................................)-83.3(26-35)]TJ -T* -[(Special Prettyprint Controls)-85.1(..........................................................................)-83.3(26-36)]TJ -/TT6 1 Tf -12 0 0 12 54 271.39 Tm -[(26. Graphics Output Operations )-144(.................................................................)-166.7(27-1)]TJ -/TT8 1 Tf -9 0 0 9 138 258.54 Tm -[(Primitive Graphics Concepts )-180.8(................................................................................)-83.3(27-1)]TJ -2 -1.3333 TD -[(Positions)-133(.............................................................................................................)-83.3(27-1)]TJ -T* -[(Regions)-120.8(...............................................................................................................)-83.3(27-1)]TJ -T* -[(Bitmaps)-30.9(...............................................................................................................)-83.3(27-2)]TJ -T* -[(Textures)-81.7(..............................................................................................................)-83.3(27-5)]TJ --2 -1.3333 TD -[(Opening Image Streams...........................................................................................)-83.3(27-6)]TJ -T* -[(Accessing Image Stream Fields)-230.6(..............................................................................)-83.3(27-8)]TJ -T* -[(Current Position of an Image Stream)-243.8(..................................................................)-83.3(27-10)]TJ -T* -[(Moving Bits Between Bitmaps with BITBLT)-175(......................................................)-83.3(27-11)]TJ -T* -[(Drawing Lines)-97.8(.........................................................................................................)-83.3(27-13)]TJ -T* -[(Drawing Curves)-59.7(......................................................................................................)-83.3(27-14)]TJ -T* -[(Miscellaneous Drawing and Printing Operations)-184.7(.............................................)-83.3(27-15)]TJ -T* -[(Drawing and Shading Grids)-160.8(.................................................................................)-83.3(27-17)]TJ -T* -[(Display Streams)-197.9(......................................................................................................)-83.3(27-18)]TJ -T* -[(Fonts)-232.6(.........................................................................................................................)-83.3(2)]TJ -33.5 0 TD -(7-19)Tj --33.5 -1.3333 TD -[(Font Files and Font Directories)-68.5(.............................................................................)-83.3(27-24)]TJ -T* -[(Font Profiles)-43.6(.............................................................................................................)-83.3(27-24)]TJ -T* -[(Image Objects)-165.7(..........................................................................................................)-83.3(27-27)]TJ -2 -1.3333 TD -[(IMAGEFNS Methods)-156.4(.....................................................................................)-83.3(27-28)]TJ -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -36 0 obj -<< -/Length 5905 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10)Tj -/TT8 1 Tf -11.3333 60.6156 TD -[(Registering Image Objects)-35(.............................................................................)-166.7(27-30)]TJ -0 -1.3333 TD -[(Reading and Writing Image Objects on Files)-92.1(.............................................)-166.7(27-31)]TJ -T* -[(Copying Image Objects Between Windows)-163.4(...............................................)-166.7(27-31)]TJ --2 -1.3333 TD -[(Implementation of Image Streams)-61.8(.......................................................................)-166.7(27-32)]TJ -/TT6 1 Tf -12 0 0 12 102 511.39 Tm -[(27. Windows and Menus )-225.1(..............................................................................)-166.7(28-1)]TJ -/TT8 1 Tf -9 0 0 9 186 498.54 Tm -[(Using the Window System)-8.6(......................................................................................)-166.7(28-1)]TJ -T* -[(Changing the Window System)-31.1(...............................................................................)-166.7(28-6)]TJ -T* -[(Interactive Display Functions)-68.2(.................................................................................)-166.7(28-7)]TJ -T* -[(Windows)-45.7(....................................................................................................................)-166.7(28-9)]TJ -2 -1.3333 TD -[(Window Properties)-179.5(........................................................................................)-166.7(28-10)]TJ -T* -[(Creating Windows)-207.4(.........................................................................................)-166.7(28-10)]TJ -T* -[(Opening and Closing Windows)-76.5(...................................................................)-166.7(28-11)]TJ -T* -[(Redisplaying Windows)-195.6(.................................................................................)-166.7(28-12)]TJ -T* -[(Reshaping Windows)-112.6(......................................................................................)-166.7(28-13)]TJ -T* -[(Moving Windows)-59.9(...........................................................................................)-166.7(28-14)]TJ -T* -[(Exposing and Burying Windows)-131.7(.................................................................)-166.7(28-16)]TJ -T* -[(Shrinking Windows into Icons)-107.7(.....................................................................)-166.7(28-16)]TJ -T* -[(Coordinate Systems, Extents, and Scrolling)-103.8(...............................................)-166.7(28-18)]TJ -T* -[(Mouse Activity in Windows)-98(.........................................................................)-166.7(28-21)]TJ -T* -[(Terminal I/O and Page Holding)-29.6(..................................................................)-166.7(28-22)]TJ -T* -[(TTY Process and the Caret)-136.1(............................................................................)-166.7(28-23)]TJ -T* -[(Miscellaneous Window Functions)-66.2(...............................................................)-166.7(28-24)]TJ -T* -[(Miscellaneous Window Properties)-130.2(..............................................................)-166.7(28-25)]TJ -T* -[(Example: A Scrollable Window)-245.9(...................................................................)-166.7(28-26)]TJ --2 -1.3333 TD -[(Menus)-49.6(.......................................................................................................................)-166.7(28-)]TJ -34.333 0 TD -(28)Tj --32.333 -1.3333 TD -[(Menu Fields)-71.6(.....................................................................................................)-166.7(28-29)]TJ -T* -[(Miscellaneous Menu Functions)-70.1(....................................................................)-166.7(28-32)]TJ -T* -[(Examples of Menu Use)-109.2(..................................................................................)-166.7(28-32)]TJ --2 -1.3333 TD -[(Attached Windows)-249.8(................................................................................................)-166.7(28-34)]TJ -2 -1.3333 TD -[(Attaching Menus to Windows......................................................................)-166.7(28-37)]TJ -T* -[(Attached Prompt Windows)-144.9(..........................................................................)-166.7(28-38)]TJ -T* -[(Window Operations and Attached Windows)-13(............................................)-166.7(28-39)]TJ -T* -[(Window Properties of Attached Windows)-217.1(................................................)-166.7(28-41)]TJ -/TT6 1 Tf -12 0 0 12 102 152.39 Tm -[(28. Hardcopy Facilities )-141.1(..................................................................................)-166.7(29-1)]TJ -/TT8 1 Tf -9 0 0 9 186 139.54 Tm -[(Hardcopy Functions)-244.5(................................................................................................)-166.7(29-1)]TJ -T* -[(Low-Level Hardcopy Variables)-194.7(.............................................................................)-166.7(29-4)]TJ -/TT6 1 Tf -12 0 0 12 102 105.39 Tm -[(29. Terminal Input/Output )-95.7(...........................................................................)-166.7(30-1)]TJ -/TT8 1 Tf -9 0 0 9 186 92.54 Tm -[(Interrupt Characters)-35(.................................................................................................)-166.7(30-1)]TJ -T* -[(Terminal Tables)-189.8(........................................................................................................)-166.7(30-4)]TJ -2 -1.3333 TD -[(Terminal Syntax Classes)-43.8(..................................................................................)-166.7(30-4)]TJ -T* -[(Terminal Control Functions)-50.6(............................................................................)-166.7(30-5)]TJ -T* -[(Line-Buffering)-104.3(...................................................................................................)-166.7(30-7)]TJ -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -39 0 obj -<< -/Length 5982 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 471 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11)Tj -/TT8 1 Tf --37 60.6156 TD -[(Dribble Files)-39.2(.............................................................................................................)-83.3(30-10)]TJ -0 -1.3333 TD -[(Cursor and Mouse)-154.5(..................................................................................................)-83.3(30-10)]TJ -2 -1.3333 TD -[(Changing the Cursor Image)-94.4(..........................................................................)-83.3(30-11)]TJ -T* -[(Flashing Bars on the Cursor)-117.8(..........................................................................)-83.3(30-13)]TJ -T* -[(Cursor Position)-235(...............................................................................................)-83.3(30-13)]TJ -T* -[(Mouse Button Testing)-154(....................................................................................)-83.3(30-14)]TJ -T* -[(Low-Level Mouse Functions)-66.6(.........................................................................)-83.3(30-15)]TJ --2 -1.3333 TD -[(Keyboard Interpretation)-134.9(........................................................................................)-83.3(30-15)]TJ -T* -[(Display Screen)-75.8(.........................................................................................................)-83.3(30-18)]TJ -T* -[(Miscellaneous Terminal I/O)-104.7(.................................................................................)-83.3(30-19)]TJ -/TT6 1 Tf -12 0 0 12 54 439.39 Tm -[(30. Ethernet )-112.3(......................................................................................................)-166.7(31-1)]TJ -/TT8 1 Tf -9 0 0 9 138 426.54 Tm -[(Ethernet Protocols)-14.8(.....................................................................................................)-83.3(31-1)]TJ -2 -1.3333 TD -[(Protocol Layering)-248.7(.............................................................................................)-83.3(31-1)]TJ -T* -[(Level Zero Protocols)-33.4(.........................................................................................)-83.3(31-2)]TJ -T* -[(Level One Protocols)-23.1(..........................................................................................)-83.3(31-2)]TJ -T* -[(Higher Level Protocols)-235(....................................................................................)-83.3(31-3)]TJ -T* -[(Connecting Networks: Routers and Gateways)-162.3(............................................)-83.3(31-3)]TJ -T* -[(Addressing Conflicts with Level Zero Mediums)-39.2(.........................................)-83.3(31-3)]TJ -T* -[(References)-154.9(..........................................................................................................)-83.3(31-4)]TJ --2 -1.3333 TD -[(Higher-Level PUP Protocol Functions)-236(..................................................................)-83.3(31-4)]TJ -T* -[(Higher-Level NS Protocol Functions)-115.9(.....................................................................)-83.3(31-5)]TJ -2 -1.3333 TD -[(Name and Address Conventions)-177.9(...................................................................)-83.3(31-5)]TJ -T* -[(Clearinghouse Functions)-125.6(.................................................................................)-83.3(31-7)]TJ -T* -[(NS Printing)-183.3(........................................................................................................)-83.3(31-9)]TJ -T* -[(SPP Stream Interface)-200.8(........................................................................................)-83.3(31-9)]TJ -T* -[(Courier Remote Procedure Call Protocol)-73.4(....................................................)-83.3(31-11)]TJ -3.3333 -1.3333 TD -[(Defining Courier Programs)-224.4(.............................................................)-83.3(31-11)]TJ -T* -[(Courier Type Definitions)-247.4(.................................................................)-83.3(31-12)]TJ -T* -[(Pre-defined Types)-213.7(.............................................................................)-83.3(31-13)]TJ -T* -[(Constructed Types)-215.7(............................................................................)-83.3(31-13)]TJ -T* -[(User Extensions to the Type Language)-81.4(..........................................)-83.3(31-15)]TJ -T* -[(Performing Courier Transactions)-224.9(...................................................)-83.3(31-16)]TJ -T* -[(Expedited Procedure Call)-211.7(................................................................)-83.3(31-17)]TJ -T* -[(Expanding Ring Broadcast)-29.6(...............................................................)-83.3(31-18)]TJ -T* -[(Using Bulk Data Transfer)-70.6(.................................................................)-83.3(31-18)]TJ -T* -[(Courier Subfunctions for Data Transfer)-8.6(.........................................)-83.3(31-19)]TJ --5.3333 -1.3333 TD -[(Level One Ether Packet Format)-136.4(............................................................................)-83.3(31-20)]TJ -T* -[(PUP Level One Functions)-54.8(......................................................................................)-83.3(31-21)]TJ -2 -1.3333 TD -[(Creating and Managing Pups)-140.3(.......................................................................)-83.3(31-21)]TJ -T* -[(Sockets)-116.9(..............................................................................................................)-83.3(31-22)]TJ -T* -[(Sending and Receiving Pups)-10.9(.........................................................................)-83.3(31-23)]TJ -T* -[(Pup Routing Information)-215.5(..............................................................................)-83.3(31-23)]TJ -T* -[(Miscellaneous PUP Utilities)-134.4(..........................................................................)-83.3(31-24)]TJ -T* -[(PUP Debugging Aids)-126.6(.....................................................................................)-83.3(31-24)]TJ -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -44 0 obj -<< -/Length 1353 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12)Tj -/TT8 1 Tf -9.3333 60.6156 TD -[(NS Level One Functions)-101.4(........................................................................................)-166.7(31-28)]TJ -2 -1.3333 TD -[(Creating and Managing XIPs)-7.2(........................................................................)-166.7(31-28)]TJ -T* -[(NS Sockets)-177.6(.......................................................................................................)-166.7(31-28)]TJ -T* -[(Sending and Receiving XIPs)-127.8(.........................................................................)-166.7(31-29)]TJ -T* -[(NS Debugging Aids)-173.2(.......................................................................................)-166.7(31-29)]TJ --2 -1.3333 TD -[(Support for Other Level One Protocols...............................................................)-166.7(31-29)]TJ -T* -[(The SYSQUEUE Mechanism)-248.9(................................................................................)-166.7(31-31)]TJ -/TT6 1 Tf -12 0 0 12 102 475.39 Tm -[(Glossary)-194.8(...........................................................................................GLOSSARY-1)]TJ -0 -1.9167 TD -[(Index)-139.2(..........................................................................................................)-83.3(INDEX-1)]TJ -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -47 0 obj -<< -/Length 129 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 471 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13)Tj -/TT8 1 Tf --27 52.2833 TD -([This page intentionally left blank])Tj -ET -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -49 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -50 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -51 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -52 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -53 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -25 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 87 -/Widths [287 296 333 574 574 833 852 241 389 389 500 606 278 333 278 278 -574 574 574 574 574 574 574 574 574 574 278 278 606 606 606 500 -747 759 778 778 833 759 722 833 870 444 648 815 722 981 833 833 -759 833 815 667 722 833 759 981 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 53 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 48 -/LastChar 57 -/Widths [500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 49 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 118 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 278 -0 556 556 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 0 667 0 0 0 278 0 0 611 0 722 778 -0 0 722 667 611 0 667 0 0 0 0 0 0 0 0 0 -0 556 0 556 0 556 333 611 0 278 0 0 278 889 611 611 -0 0 389 0 333 611 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 50 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 296 -500 500 500 500 500 500 500 500 500 500 0 0 0 0 0 0 -0 778 667 722 833 611 556 833 833 389 0 0 611 1000 833 833 -611 0 722 611 667 778 778 1000 667 667 0 0 0 0 0 0 -0 500 611 444 611 500 389 556 611 333 0 611 333 889 611 556 -611 0 389 444 333 611 556 833 500 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 51 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 0 0 606 0 444 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 786 668 525 613 778 722 1000 667 667 667 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 52 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 42 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -54 0 obj -<< -/S /D ->> -endobj -55 0 obj -<< -/Nums [0 54 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 13 0 R 16 0 R 19 0 R 22 0 R 26 0 R 29 0 R 32 0 R 35 0 R] -/Count 10 -/Parent 41 0 R ->> -endobj -42 0 obj -<< -/Type /Pages -/Kids [38 0 R 43 0 R 46 0 R] -/Count 3 -/Parent 41 0 R ->> -endobj -41 0 obj -<< -/Type /Pages -/Kids [9 0 R 42 0 R ] -/Count 13 -/MediaBox [0 0 612 792] ->> -endobj -56 0 obj -<< -/CreationDate (D:20210202102637-06'00') -/ModDate (D:20210202102637-06'00') -/Producer (Apple pstopdf) ->> -endobj -57 0 obj -<< -/Type /Catalog -/Pages 41 0 R -/PageLabels 55 0 R ->> -endobj -xref -0 58 -0000000000 65535 f -0000072779 00000 n -0000000016 00000 n -0000005301 00000 n -0000071134 00000 n -0000071337 00000 n -0000071747 00000 n -0000072224 00000 n -0000069576 00000 n -0000073926 00000 n -0000072859 00000 n -0000005429 00000 n -0000011585 00000 n -0000072942 00000 n -0000011703 00000 n -0000017564 00000 n -0000073025 00000 n -0000017693 00000 n -0000023906 00000 n -0000073108 00000 n -0000024024 00000 n -0000030302 00000 n -0000073191 00000 n -0000030420 00000 n -0000036636 00000 n -0000070736 00000 n -0000073274 00000 n -0000036765 00000 n -0000042634 00000 n -0000073357 00000 n -0000042763 00000 n -0000048939 00000 n -0000073440 00000 n -0000049057 00000 n -0000055417 00000 n -0000073523 00000 n -0000055535 00000 n -0000061493 00000 n -0000073606 00000 n -0000061611 00000 n -0000067646 00000 n -0000074150 00000 n -0000074062 00000 n -0000073690 00000 n -0000067764 00000 n -0000069170 00000 n -0000073774 00000 n -0000069288 00000 n -0000069469 00000 n -0000069716 00000 n -0000069913 00000 n -0000070119 00000 n -0000070324 00000 n -0000070524 00000 n -0000073858 00000 n -0000073886 00000 n -0000074241 00000 n -0000074364 00000 n -trailer -<< -/Size 58 -/Root 57 0 R -/Info 56 0 R -/ID [<262867cb2c4972b47e22e2c65ab73e32><262867cb2c4972b47e22e2c65ab73e32>] ->> -startxref -74434 -%%EOF diff --git a/docs/medley-irm/01-INTRO.pdf b/docs/medley-irm/01-INTRO.pdf deleted file mode 100644 index dfac3c11..00000000 --- a/docs/medley-irm/01-INTRO.pdf +++ /dev/null @@ -1,1676 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4452 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(1. INTRODUCTION)Tj -/TT6 1 Tf -9 0 0 9 54 559.54 Tm -( )Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -56.26 560.54 m -510.01 560.54 l -S -BT -9 0 0 9 78 535.54 Tm -0.0022 Tw -(Medley is a )Tj -/TT8 1 Tf -5.3333 0 TD -(programming system)Tj -/TT6 1 Tf -8.5862 0 TD -0.0001 Tc -0.0021 Tw -( that consists of a programming )Tj -/TT8 1 Tf -14.2751 0 TD -0 Tc -0 Tw -(language)Tj -/TT6 1 Tf -3.667 0 TD -0.0022 Tw -(, a large number of predefined)Tj --31.8616 -1.2222 TD -0.0711 Tw -(programs \(or )Tj -/TT8 1 Tf -6.216 0 TD -0 Tw -(functions)Tj -/TT6 1 Tf -3.7974 0 TD -0.0711 Tw -(\) that you can use directly or as subroutines, and an )Tj -/TT8 1 Tf -23.8452 0 TD -0 Tw -(environment)Tj -/TT6 1 Tf -5.1685 0 TD -0.0711 Tw -[( that supports)]TJ --39.027 -1.2222 TD -0.0422 Tw -[(you with a variety of specialized programming tools. The language and predefined functions of Lisp)]TJ -T* -0.1322 Tw -[(are rich, but similar to those of other modern programming languages. The Medley programming)]TJ -T* -0.3444 Tw -[(environment, on the other hand, is very distinctive. Its main feature is an integrated set of)]TJ -T* -0.0656 Tw -(programming tools that know enough about Interlisp and Common Lisp to act as semi-autonomous,)Tj -T* -0.2456 Tw -[(intelligent "assistants" to you. This environment provides a completely self-contained world for)]TJ -T* -0 Tw -(creating, debugging and maintaining Lisp programs.)Tj -0 -2.8889 TD -0.15 Tw -[(This manual describes all three parts of Medley. There are discussions of the language, about the)]TJ -0 -1.2222 TD -0.1011 Tw -[(pieces of the system that can be incorporated into your programs, and about the environment. The)]TJ -T* -0.3833 Tw -[(line between your code and the environment is thin and changing. Most users extend the)]TJ -T* -0.1944 Tw -[(environment with some special features of their own. Because Medley is so easily extended, the)]TJ -T* -0.1067 Tw -(system has grown over time to incorporate many different ideas about effective and useful ways to)Tj -T* -0.0333 Tw -[(program. This gradual accumulation over many years has resulted in a rich and diverse system. It is)]TJ -T* -0 Tw -(also the reason this manual is so large. )Tj -0 -2.8889 TD -0.0789 Tw -(The rest of this manual describes the individual pieces of Medley; this chapter describes system as a)Tj -0 -1.2222 TD -0.0233 Tw -[(wholeincluding the otherwise-unstated philosophies that tie it all together. It will give you a global)]TJ -T* -0 Tw -(view of Medley.)Tj -/TT4 1 Tf -10 0 0 10 54 291.2 Tm -(Lisp as a Programming Language)Tj -ET -1 w -54.01 288.49 m -510.01 288.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 266.54 Tm -0.0533 Tw -[(This manual is not an introduction to programming in Lisp. This section highlights a few key points)]TJ -T* -0 Tw -(about lisp that will make the rest of the manual clear. )Tj -0 -2.8889 TD -0.0044 Tw -(In Lisp, large programs \(or functions\) are built up by composing the results of smaller ones. Although)Tj -0 -1.2222 TD -0.0956 Tw -(Medley, like most modern Lisps, lets you program in almost any style you can imagine, the natural)Tj -T* -0.1989 Tw -(style of Lisp is functional and recursiveeach function computes its result by calling lower-level)Tj -T* -0.0433 Tw -(building-block functions, then passing that result back to its caller \(rather than by producing side-)Tj -T* -0 Tw -(effects on external data structures, for example\). )Tj -0 -2.8889 TD -0.2133 Tw -[(Lisp is also a list-manipulation language. Like other languages, Lisp can process characters and)]TJ -0 -1.2222 TD -0.0001 Tc -0.0043 Tw -(numbers. But you get more power if you program at a higher level. The primitive data objects of Lisp)Tj -T* -0 Tc -0.2556 Tw -(are atoms \(symbols or identifiers\) and lists \(sequences of atoms or lists\), which you use to)Tj -T* -0.1 Tw -[(represent information and relationships. Each Lisp dialect has a set of operations that act on atoms)]TJ -T* -0 Tw -(and lists, and these operations comprise the core of the language.)Tj -0 -2.8889 TD -0.1433 Tw -(Invisible in the programs, but essential to the Lisp style of programming, is an automatic memory)Tj -0 -1.2222 TD -0.5056 Tw -[(management system \(an allocator and a garbage collector\). New storage is allocated)]TJ -T* -0.0711 Tw -[(automatically whenever a you create a new data object. And that storage is automatically reclaimed)]TJ -T* -0.12 Tw -[(for reuse when no other object refers to it. Automated memory management is essential for rapid,)]TJ -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 4961 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-2)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1933 Tw -(large-scale program development because it frees you from the task of maintaining the details of)Tj -0 -1.2222 TD -0 Tw -(memory administration, which change constantly during rapid program evolution.)Tj -0 -2.8889 TD -0.2656 Tw -[(A key property of Lisp is that Lisp function definitions are just pieces of Lisp list data. Each)]TJ -0 -1.2222 TD -0.1478 Tw -(subfunction "call" \(or )Tj -/TT8 1 Tf -10.0224 0 TD -(function application)Tj -/TT6 1 Tf -8.2674 0 TD -(\) is written as a list with the function first, followed by its)Tj --18.2898 -1.2222 TD -0.0433 Tw -(arguments. Thus, )Tj -/TT12 1 Tf -8.0564 0 TD -0.1033 Tw -(\(PLUS 1 2\))Tj -/TT6 1 Tf -6.2076 0 TD -0.0433 Tw -[( represents the expression )]TJ -/TT12 1 Tf -11.8813 0 TD -0 Tw -(1+2)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[(. A functions definition, then, is just a)]TJ --27.9457 -1.2889 TD -0.0122 Tw -[(list of such function applications, to be evaluated in order. This representation of program as data lets)]TJ -0 -1.2222 TD -0.1178 Tw -(you use the same operations on programs that you use on datamaking it very easy to write Lisp)Tj -T* -0.2667 Tw -(programs that look at and change )Tj -/TT8 1 Tf -16.7353 0 TD -(other Lisp programs)Tj -/TT6 1 Tf -8.6447 0 TD -[(. This, in turn, makes it easy to develop)]TJ --25.3799 -1.2222 TD -0.4455 Tw -(programming tools and translators, which was essential to the development of the Medley)Tj -T* -0 Tw -(environment.)Tj -0 -2.8889 TD -0.0756 Tw -[(The most important benefit of this is that you can extend the Lisp programming language itself. Do)]TJ -0 -1.2222 TD -0.2678 Tw -[(you miss some favorite programming idiom? Just define a function that translates the desired)]TJ -T* -0.0711 Tw -[(expression into simpler Lisp. Now your idiom is )]TJ -/TT8 1 Tf -22.5599 0 TD -(part of the language)Tj -/TT6 1 Tf -8.2402 0 TD -[(. Medley has extensive facilities)]TJ --30.8001 -1.2222 TD -0.3589 Tw -[(for making this type of language extension. Using this ability to extend itself, Interlisp has)]TJ -T* -0.3178 Tw -(incorporated many of the constructs that have been developed in other modern programming)Tj -T* -0 Tw -(languages \(e.g. if-then-else, do loops, etc.\).)Tj -/TT4 1 Tf -10 0 0 10 102 346.6 Tm -(Medley as an Interactive Environment)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 343.89 m -558.01 343.89 l -S -BT -/TT6 1 Tf -9 0 0 9 126 321.94 Tm -0.0633 Tw -[(Medley programs should not be thought of as simple files of source code. All Medley programming)]TJ -T* -0.1933 Tw -(takes place within the Medley environment, which is a completely self-sufficient environment for)Tj -T* -0.1244 Tw -(developing and using Medley programs. Beyond the obvious programming facilities \(e.g., program)Tj -T* -0.0667 Tw -(editors, compilers, debuggers, etc.\), the envionrment also contains a variety of tools that "keep track")Tj -T* -0.0878 Tw -[(of what happens. For example, the Medley File Manager notices when programs or data have been)]TJ -T* -0.0967 Tw -[(changed, so the system will know what needs to be saved at the end of a session. The "residential")]TJ -T* -0.05 Tw -(style, where you stay inside the environment throughout the development, is essential for these tools)Tj -T* -0.0689 Tw -[(to operate. Furthermore, this same environment is available to support the final production version,)]TJ -T* -0.0333 Tw -(some parts providing run time support and other parts being ignored until the need arises for further)Tj -T* -0 Tw -(debugging or development.)Tj -0 -2.8889 TD -0.3244 Tw -(For terminal interaction, Medley provides a top level "Read-Eval-Print" executive, which reads)Tj -0 -1.2222 TD -0.0267 Tw -[(whatever you type in, evaluates it, and prints the result. \(This interaction is also recorded, so you can)]TJ -T* -0.1589 Tw -[(ask to do an action again, or even to undo the effects of a previous action.\) Although Executives)]TJ -T* -0.4267 Tw -(understand some specialized commands, most of the interaction will consist of simple Lisp)Tj -T* -0.1233 Tw -[(expressions. So rather than special commands for operations like manipulating your files, you just)]TJ -T* -0.0656 Tw -[(type the same expressions that you would use to accomplish them in a Lisp program. This creates a)]TJ -T* -0.0278 Tw -(very rich, simple, and uniform set of interactive commands, since any Lisp expression can be typed at)Tj -T* -0 Tw -(an executive and evaluated immediately.)Tj -0 -2.8889 TD -0.1233 Tw -(In normal use, you write a program \(or rather, "define a function"\) by typing in an expression that)Tj -0 -1.2222 TD -0.0256 Tw -(invokes the "function defining" function )Tj -/TT12 1 Tf -18.0892 0 TD -0 Tw -(\(DEFINEQ\))Tj -/TT6 1 Tf -5.4009 0 TD -0.0256 Tw -(, giving it the name of the function being defined)Tj --23.4901 -1.2889 TD -0.0644 Tw -[(and its new definition. The newly-defined function can be executed immediately, simply by using it)]TJ -0 -1.2222 TD -0 Tw -(in a Lisp expression.)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -16 0 obj -<< -/Length 3944 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-3)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(INTRODUCTION)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0911 Tw -(In addition to these basic programming tools, Medley also provides a wide variety of programming)Tj -0 -1.2222 TD -0 Tw -(support mechanisms: )Tj -3.87 -2 TD -0.2867 Tw -[(List )286.7(structure )286.7(editor)-668.4(Since Lisp programs are represented as list structure, Medley)]TJ -9.4633 -1.2222 TD -0.01 Tw -(provides an editor which allows one to change the list structure of)Tj -T* -0 Tw -(a functions definition directly. See Chapter 16.)Tj --6.7556 -2 TD -0.5267 Tw -[(Pretty-printer)-666.7(The pretty printer is a function that prints Lisp function)]TJ -6.7556 -1.2222 TD -0.2311 Tw -(definitions so that their syntactic structure is displayed by the)Tj -T* -0 Tw -(indentation and fonts used. See page Chapter 26.)Tj --5.0622 -2 TD -0.3833 Tw -[(Debugger)-666.7(When errors occur, the debugger is called, allowing you to)]TJ -5.0622 -1.2222 TD -0.0867 Tw -[(examine and modify the context at the point of the error. Often,)]TJ -T* -0.4889 Tw -(this lets you continue execution without starting from the)Tj -T* -0.0456 Tw -[(beginning. Within a break, the full power of Interlisp is available)]TJ -T* -0.1011 Tw -[(to you. Thus, the broken function can be edited, data structures)]TJ -T* -0.2 Tw -(can be inspected and changed, other computations carried out,)Tj -T* -0.2122 Tw -[(and so on. All of this occurs in the context of the suspended)]TJ -T* -0.4578 Tw -[(computation, which remains available to be resumed. See)]TJ -T* -0 Tw -(Chapter 14.)Tj --3.7233 -2 TD -0.1344 Tw -[(DWIM)-666.7(The "Do What I Mean" package automatically fixes misspellings)]TJ -3.7233 -1.2222 TD -0 Tw -(and errors in typing. See Chapter 20.)Tj --11.3322 -2 TD -0.1333 Tw -[(Programmers )133.3(Assistant)-670.1(Medley keeps track of your actions during a session and allows)]TJ -11.3322 -1.2222 TD -0 Tw -(each one to be replayed, undone, or altered. See Chapter 13.)Tj --6.2311 -2 TD -0.15 Tw -[(Masterscope)-667.6(Masterscope is a program analysis and management tool which)]TJ -6.2311 -1.2222 TD -0.5411 Tw -(can analyze users functions and build \(and automatically)Tj -T* -0.2778 Tw -[(maintain\) a data base of the results. This allows you to ask)]TJ -T* -0.1789 Tw -(questions like ")Tj -/TT12 1 Tf -7.0809 0 TD -0.4278 Tw -(WHO CALLS ARCTAN)Tj -/TT6 1 Tf -10.4571 0 TD -0.1789 Tw -(" or ")Tj -/TT12 1 Tf -2.5409 0 TD -0.4278 Tw -(WHO USES COEF1)Tj --20.0789 -1.2889 TD -0 Tw -(FREELY)Tj -/TT6 1 Tf -3.6006 0 TD -0.2478 Tw -(" or to request systematic changes like ")Tj -/TT12 1 Tf -19.1427 0 TD -0.5933 Tw -(EDIT WHERE)Tj --22.7432 -1.2889 TD -0 Tw -(ANY )Tj -/TT6 1 Tf -2.5282 0 TD -([function])Tj -/TT12 1 Tf -4.373 0 TD -0.1278 Tw -[( FETCHES ANY FIELD OF )]TJ -/TT6 1 Tf -13.841 0 TD -0.0533 Tw -([the data structure])Tj -/TT12 1 Tf --20.7423 -1.2889 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(". See Chapter 19.)Tj --14.1659 -2.0667 TD -0.1511 Tw -[(Record/Datatype )151.1(Package)-665.4(Medley allows you to define new data structures. This enables)]TJ -12.3656 -1.2222 TD -0.1067 Tw -(one to separate the issues of data access from the details of how)Tj -T* -0 Tw -(the data is actually stored. See Chapter 8.)Tj --6.4911 -2 TD -0.0089 Tw -[(File )8.9(Manager)-665.9(Source code files in Medley are managed by the system, removing)]TJ -6.4911 -1.2222 TD -0.1378 Tw -[(the problem of ensuring timely file updates from the user. The)]TJ -T* -0.1522 Tw -(file manager can be modified and extended to accomodate new)Tj -T* -0 Tw -(types of data. See Chapter 17.)Tj --10.4056 -2 TD -0.1167 Tw -[(Performance )116.7(Analysis)-670.2(These tools allow statistics on program operation to be collected)]TJ -10.4056 -1.2222 TD -0 Tw -(and analyzed. See Chapter 22.)Tj --8.9656 -2 TD -0.3156 Tw -[(Multiple )315.6(Processes)-669.2(Multiple and independent processes simplify problems which)]TJ -8.9656 -1.2222 TD -0.0078 Tw -[(require logically separate pieces of code to operate in parallel. See)]TJ -T* -0 Tw -(Chapter 23.)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 13 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -19 0 obj -<< -/Length 5101 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-4)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 201.4 569.54 Tm -0.0056 Tw -[(Windows)-668(The ability to have multiple, independent windows on the display)]TJ -4.9556 -1.2222 TD -0.1478 Tw -(allows many different processes or activities to be active on the)Tj -T* -0 Tw -(screen at once. See Chapter 28.)Tj --4.8011 -2 TD -0.3856 Tw -[(Inspector)-667.3(The inspector is a display tool for examining complex data)]TJ -4.8011 -1.2222 TD -0 Tw -(structures encountered during debugging. See Chapter 26.)Tj --13.3333 -2.8889 TD -0.0344 Tw -(These facilities are tightly integrated, so they know about and use each other, just as they can be used)Tj -0 -1.2222 TD -0.0844 Tw -[(by user programs. For example, Masterscope uses the structural editor to make systematic changes.)]TJ -T* -0.0489 Tw -(By combining the program analysis features of Masterscope with the features of the structural editor,)Tj -T* -0.0456 Tw -[(large scale system changes can be made with a single command. For example, when the lowest-level)]TJ -T* -0.01 Tw -(interface of the Medley I/O system was changed to a new format, the entire edit was made by a single)Tj -0 -1.2278 TD -0.0133 Tw -(call to Masterscope of the form)Tj -/TT12 1 Tf -10 0 0 10 249.3085 437.49 Tm -0 Tw -( )Tj -9 0 0 9 255.6395 437.49 Tm -0.0322 Tw -(EDIT WHERE ANY CALLS \(BIN BOUT ...\))Tj -/TT6 1 Tf -21.7969 0 TD -0.0133 Tw -(. [Burton et al., 1980])Tj --36.2012 -1.3278 TD -0.0089 Tw -(This caused Masterscope to invoke the editor at each point in the system where any of the functions in)Tj -0 -1.2222 TD -0.0267 Tw -(the list )Tj -/TT12 1 Tf -3.2726 0 TD -0.0633 Tw -(\(BIN BOUT ...\))Tj -/TT6 1 Tf -9.1281 0 TD -0.0267 Tw -[( were called. This ensured that no functions used in input or output were)]TJ --12.4007 -1.2889 TD -0 Tw -(overlooked during the modification. )Tj -/TT4 1 Tf -10 0 0 10 102 375.6 Tm -(Philosophy)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 372.89 m -558.01 372.89 l -S -BT -/TT6 1 Tf -9 0 0 9 126 350.94 Tm -0.0322 Tw -[(Medleys extensive environmental support has developed over the years to support a particular style)]TJ -0 -1.2222 TD -0.1378 Tw -[(of programming called "exploratory programming" [Sheil, 1983]. For many complex programming)]TJ -T* -0.04 Tw -(problems, the task of program creation is )Tj -/TT8 1 Tf -18.678 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.04 Tw -[( simply one of writing a program to fulfill specifications.)]TJ --20.011 -1.2222 TD -0.1967 Tw -(Instead, it is a matter of exploring the problem \(trying out various solutions expressed as partial)Tj -T* -0.0544 Tw -[(programs\) until one finds a good solution \(or sometimes, any solution at all!\). Such programs are by)]TJ -T* -0.0722 Tw -(nature evolutionary; they are transformed over time from one realization to another in response to a)Tj -T* -0.1233 Tw -[(growing understanding of the problem. This point of view has lead to an emphasis on having the)]TJ -T* -0.0044 Tw -(tools available to analyze, alter, and test programs easily. One important aspect of this is that the tools)Tj -T* -0.0611 Tw -(be designed to work together in an integrated fashion, so that knowledge about the users programs,)Tj -T* -0 Tw -(once gained, is available throughout the environment. )Tj -0 -2.8889 TD -0.0544 Tw -(The development of programming tools to support exploratory programming is itself an exploration.)Tj -0 -1.2222 TD -0.0567 Tw -(No one knows all the tools that will eventually be found useful, and not all programmers want all of)Tj -T* -0.1678 Tw -[(the tools to behave the same way. In response to this diversity, Interlisp has been shaped, by its)]TJ -T* -0.0478 Tw -[(implementors and by its users, to be easily extensible in several different ways. First, there are many)]TJ -T* -0.0322 Tw -[(places in the system where its behavior can be adjusted by the user. One way that this can be done is)]TJ -T* -0.1078 Tw -(by changing the value of various "flags" or variables whose values are examined by system code to)Tj -T* -0.1989 Tw -[(enable or suppress certain behavior. The other is where the user can provide functions or other)]TJ -T* -0.0978 Tw -[(behavioral specifications of what is to happen in certain contexts. For example, the format used for)]TJ -T* -0.0511 Tw -(each type of list structure when it is printed by the pretty-printer is determined by specifications that)Tj -T* -0.0056 Tw -(are found on the list )Tj -/TT12 1 Tf -9.1738 0 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -0.0056 Tw -[(. Thus, this format can be changed for a given type simply)]TJ --19.3754 -1.2889 TD -0 Tw -(by putting a printing specification for it on that list.)Tj -0 -2.8889 TD -0.2756 Tw -(Another way in which users can affect Medleys behavior is by redefining or changing system)Tj -0 -1.2222 TD -0.2644 Tw -[(functions. The "Advise" capability, for instance, lets you modify the operation of virtually any)]TJ -T* -0.2011 Tw -[(function in the system by wrapping code "around" the selected function. \(This same philosophy)]TJ -T* -0.0378 Tw -[(extends to breaking and tracing, so almost any function in the system can be broken or traced.\) Since)]TJ -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -22 0 obj -<< -/Length 5364 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-5)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(INTRODUCTION)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.08 Tw -(the entire system is implemented in Lisp, there are few places where the systems behavior depends)Tj -0 -1.2222 TD -0 Tw -(on anything that you cant modify \(such as a low level system implementation language\). )Tj -0 -2.8889 TD -0.1756 Tw -[(While these techniques provide a fair amount of tailorability, theres a price: Medley is complex.)]TJ -0 -1.2222 TD -0.1156 Tw -[(There are many flags, parameters, and controls that affect its behavior. Because of this complexity,)]TJ -T* -0.23 Tw -[(Interlisp tends to be more comfortable for experts, rather than casual users. Beginning users of)]TJ -T* -0.16 Tw -(Interlisp should depend on the default settings of parameters until they learn what dimensions of)Tj -T* -0 Tw -(flexibility are available. At that point, they can begin to "tune" the system to their preferences.)Tj -0 -2.8889 TD -0.0889 Tw -(Appropriately enough, even Medleys underlying philosophy was itself discovered during Medleys)Tj -0 -1.2222 TD -0.0122 Tw -[(development, rather than laid out beforehand. The Medley environment and its interactive style were)]TJ -T* -0.43 Tw -[(first analyzed in Sandewalls excellent paper [Sandewall, 1978]. The notion of "exploratory)]TJ -T* -0.2622 Tw -(programming" and the genesis of the Interlisp programming tools in terms of the characteristic)Tj -T* -0.0311 Tw -[(demands of this style of programming was developed in [Sheil, 1983]. The evolution and structure of)]TJ -T* -0.2011 Tw -(the Interlisp programming environment are discussed in greater depth in [Teitelman & Masinter,)Tj -T* -0 Tw -(1981]. )Tj -/TT4 1 Tf -10 0 0 10 54 369.2 Tm -(How to Use this Manual)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 366.49 m -510.01 366.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 344.54 Tm -0.2189 Tw -[(This document is a reference manual, not a primer. We have tried to provide a manual that is)]TJ -T* -0.1089 Tw -[(complete, and that lets you find particular items as easily as possible. Sometimes, these goals have)]TJ -T* -0.0056 Tw -[(been achieved at the expense of simplicity. For example, many functions have a number of arguments)]TJ -T* -0.1856 Tw -[(that are rarely used. In the interest of providing a complete reference, these arguments are fully)]TJ -T* -0.2 Tw -[(explained, even though you will normally let them default. There is a lot of information in this)]TJ -T* -0 Tw -(manual that is of interest only to experts.)Tj -0 -2.8889 TD -0.0811 Tw -[(Do not try to read straight through this manual, like a novel. In general, the chapters are organized)]TJ -0 -1.2222 TD -0.2611 Tw -(with overview explanations and the most useful functions at the beginning of the chapter, and)Tj -T* -0.0722 Tw -[(implementation details towards the end. If you are interested in becoming acquainted with Medley,)]TJ -T* -0 Tw -(we urge you to work through )Tj -/TT8 1 Tf -13.3447 0 TD -(An Introduction to Medley)Tj -/TT6 1 Tf -10.9346 0 TD -( before attempting this manual.)Tj --24.2793 -2.8889 TD -(A few comments about the notational conventions used in this manual:)Tj -3.7089 -2 TD -0.1267 Tw -[(Lisp )126.7(object )126.7(notation:)-666.4(All Interlisp objects in this manual are printed in the same font:)]TJ -9.6244 -1.2278 TD -0 Tw -(Functions )Tj -/TT12 1 Tf -10 0 0 10 242.456 175.49 Tm -(\()Tj -9 0 0 9 248.457 175.49 Tm -(AND)Tj -10 0 0 10 264.6596 175.49 Tm -(, )Tj -9 0 0 9 284.7116 175.49 Tm -(PLUS)Tj -10 0 0 10 306.3151 175.49 Tm -(, )Tj -9 0 0 9 326.3671 175.49 Tm -(DEFINEQ)Tj -10 0 0 10 364.1732 175.49 Tm -(, )Tj -9 0 0 9 384.2252 175.49 Tm -(LOAD)Tj -10 0 0 10 405.8287 175.49 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 411.8297 175.49 Tm -0.3356 Tw -[(; Variables)]TJ -/TT12 1 Tf -10 0 0 10 198 163.49 Tm -0 Tw -(\()Tj -9 0 0 9 204.0009 163.49 Tm -(MAX)Tj -10 0 0 10 220.2036 163.49 Tm -(.)Tj -9 0 0 9 226.2046 163.49 Tm -(INTEGER)Tj -10 0 0 10 264.0107 163.49 Tm -(, )Tj -9 0 0 9 276.7427 163.49 Tm -(FILELST)Tj -10 0 0 10 314.5488 163.49 Tm -(, )Tj -9 0 0 9 327.2808 163.49 Tm -(DFNFLG)Tj -10 0 0 10 359.6861 163.49 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 365.687 163.49 Tm -0.03 Tw -[(; and arbitrary Interlisp)]TJ --18.6319 -1.3333 TD -0 Tw -(expressions: )Tj -/TT12 1 Tf -5.9106 0 TD -(\(PLUS 2 3\))Tj -10 0 0 10 305.2046 151.49 Tm -(, )Tj -9 0 0 9 317.2065 151.49 Tm -(\(PROG \(\(A 1\)\) ...\))Tj -/TT6 1 Tf -10.8018 0 TD -(, etc.)Tj --32.9125 -2.1056 TD -(Case is significant:)Tj -/TT8 1 Tf -8.8656 0 TD -0.0911 Tw -(In Interlisp, upper and lower case is significant.)Tj -/TT6 1 Tf -19.8722 0 TD -[( The variable )]TJ -/TT12 1 Tf -6.6125 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0911 Tw -[( is)]TJ --28.2849 -1.2889 TD -0.3667 Tw -(not the same as the variable )Tj -/TT12 1 Tf -14.7122 0 TD -0 Tw -(foo)Tj -/TT6 1 Tf -1.8003 0 TD -0.3667 Tw -[( or the variable )]TJ -/TT12 1 Tf -8.369 0 TD -0 Tw -(Foo)Tj -/TT6 1 Tf -1.8003 0 TD -0.3667 Tw -[(. By)]TJ --26.6818 -1.2889 TD -0.1078 Tw -(convention, most Interlisp system functions and variables are all)Tj -0 -1.2222 TD -0.0167 Tw -(uppercase, but users are free to use upper and lower case for their)Tj -T* -0 Tw -(own functions and variables as they wish.)Tj -0 -2 TD -0.2489 Tw -(One exception to the case-significance rule is provided by the)Tj -0 -1.2222 TD -0.0144 Tw -(CLISP facility, which lets you type iterative statements and record)Tj -T* -0.01 Tw -(operations in either all uppercase or all lowercase letters: )Tj -/TT12 1 Tf -25.7079 0 TD -0.0233 Tw -(\(for X)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -25 0 obj -<< -/Length 3692 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(1-6)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 246 569.54 Tm -0.2133 Tw -(from 1 to 5 ...\))Tj -/TT6 1 Tf -10.4549 0 TD -0.0889 Tw -[( is the same as )]TJ -/TT12 1 Tf -7.006 0 TD -0.2133 Tw -(\(FOR X FROM 1 TO 5)Tj --17.4609 -1.2889 TD -0 Tw -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.2267 Tw -[(. The few situations where this is the case are explicitly)]TJ --2.4004 -1.2889 TD -0.4711 Tw -[(mentioned in the manual. Generally, assume that case is)]TJ -0 -1.2222 TD -0 Tw -(significant. )Tj --13.3333 -2.8889 TD -0.0078 Tw -(This manual contains a large number of descriptions of functions, variables, commands, etc, which are)Tj -0 -1.2222 TD -0 Tw -(printed in the following standard format:)Tj -3.3333 -3.2222 TD -(\()Tj -/TT14 1 Tf -0.333 0 TD -(FOO)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(BAR BAZ)Tj -/TT6 1 Tf -4.2007 0 TD -[(\) )-27319.7([Function])]TJ -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -156.01 465.69 m -510.01 465.69 l -S -BT -9 0 0 9 186 451.74 Tm -0.0367 Tw -(This is a description for the function named )Tj -/TT12 1 Tf -19.8304 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -(. )Tj -/TT12 1 Tf -0.8233 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -[( has two arguments,)]TJ -/TT18 1 Tf --24.2544 -1.2889 TD -0 Tw -(BAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.08 Tw -[( and )]TJ -/TT18 1 Tf -2.3529 0 TD -0 Tw -(BAZ)Tj -/TT6 1 Tf -1.8003 0 TD -0.08 Tw -[(. Some system functions have extra optional arguments that)]TJ --5.9535 -1.2889 TD -0.1189 Tw -[(are not documented and should not be used. These extra arguments are)]TJ -0 -1.2222 TD -0 Tw -(indicated by "".)Tj -0 -2 TD -0.1955 Tw -(The descriptor [Function] indicates that this is a function, rather than a)Tj -0 -1.2222 TD -0.0056 Tw -[([Variable], [Macro], etc. For function definitions only, this can also indicate)]TJ -T* -0.11 Tw -(whether the function takes a fixed or variable number of arguments, and)Tj -T* -0.0011 Tw -(whether the arguments are evaluated or not. [Function] indicates a lambda)Tj -T* -0.0044 Tw -(spread function \(fixed number of arguments, evaluated\), the most common)Tj -T* -0 Tw -(type.)Tj -/TT4 1 Tf -10 0 0 10 102 317.2 Tm -(References)Tj -ET -102.01 314.49 m -564.01 314.49 l -S -BT -/TT6 1 Tf -9 0 0 9 178.57 293.54 Tm -0.2722 Tw -[([Burton, )272.2(et )272.2(al., )272.2(1980])-2000.4(Burton, R. R., L. M. Masinter, A. Bell, D. G. Bobrow, W. S.)]TJ -10.8256 -1 TD -0.0789 Tw -(Haugeland, R.M. Kaplan and B.A. Sheil, "Interlisp-D: Overview)Tj -T* -0 Tw -(and Status" in [Sheil & Masinter, 1983].)Tj --9.78 -1.5556 TD -0.0933 Tw -[([Sandewall, )93.3(1978])-2001.2(Sandewall, Erik, "Programming in the Interactive Environmnet:)]TJ -9.78 -1 TD -0.1167 Tw -(The LISP Experience" )Tj -/TT8 1 Tf -11.4652 0 TD -(ACM Computing Surveys)Tj -/TT6 1 Tf -10.9579 0 TD -(, vol 10, no 1,)Tj --22.4231 -1 TD -0 Tw -(pp 35-72, \(March 1978\).)Tj --7.3344 -1.5556 TD -0.3089 Tw -[([Sheil, )308.9(1983])-2000.5(Sheil, B.A., "Environments for Exploratory Programming" )]TJ -/TT8 1 Tf -7.3344 -1 TD -0 Tw -(Datamation)Tj -/TT6 1 Tf -4.8311 0 TD -(, \(February, 1983\) also in [Sheil & Masinter, 1983].)Tj --17.3866 -1.5556 TD -0.1789 Tw -[([Sheil )178.9(& )178.9(Masinter, )178.9(1983])-2000.9(Sheil, B.A. and L. M. Masinter, "Papers on Interlisp-D", Xerox)]TJ -12.5556 -1 TD -0 Tw -(PARC Technical Report CIS-5 \(Revised\), \(January, 1983\).)Tj --14.8322 -1.5556 TD -0.1022 Tw -[([Teitelman )102.2(& )102.2(Masinter, )102.2(1981])-2001.7(Teitelman, W. and L. M. Masinter, "The Interlisp Programming)]TJ -14.8322 -1 TD -0.0056 Tw -(Environment" )Tj -/TT8 1 Tf -7.724 0 TD -0 Tw -(Computer)Tj -/TT6 1 Tf -4.0562 0 TD -0.0056 Tw -(, vol 14, no 4, pp 25-34, \(April 1981\) )Tj --11.7802 -1 TD -0 Tw -(also in [Sheil & Masinter, 1983].)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 14 0 R -/TT14 27 0 R -/TT16 28 0 R -/TT18 29 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -30 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -31 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -32 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -34 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -35 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -36 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -37 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -38 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 54 -/Widths [333 0 0 0 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 30 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 722 667 0 0 722 278 0 0 611 833 722 778 -667 0 722 0 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 0 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 31 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 278 371 0 0 0 778 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 0 0 444 -0 778 611 709 774 611 556 763 832 337 333 726 611 946 831 786 -604 0 668 525 613 778 722 1000 667 0 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 32 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 667 778 0 0 0 0 333 0 0 556 944 0 0 -0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 407 500 389 278 500 500 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 722 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 33 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 34 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 0 0 0 0 0 600 600 0 600 600 0 600 0 -0 600 600 600 0 600 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 600 600 600 600 600 0 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 600 0 0 0 0 0 0 600 0 600 -0 0 600 0 600 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 35 0 R ->> -endobj -27 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 70 -/LastChar 79 -/Widths [600 0 0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 36 0 R ->> -endobj -28 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 37 0 R ->> -endobj -29 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 90 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 38 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -39 0 obj -<< -/S /D ->> -endobj -40 0 obj -<< -/Nums [0 39 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 15 0 R 18 0 R 21 0 R 24 0 R] -/Count 6 -/MediaBox [0 0 612 792] ->> -endobj -41 0 obj -<< -/CreationDate (D:20210202102637-06'00') -/ModDate (D:20210202102637-06'00') -/Producer (Apple pstopdf) ->> -endobj -42 0 obj -<< -/Type /Catalog -/Pages 9 0 R -/PageLabels 40 0 R ->> -endobj -xref -0 43 -0000000000 65535 f -0000033752 00000 n -0000000016 00000 n -0000004520 00000 n -0000030707 00000 n -0000030904 00000 n -0000031328 00000 n -0000031900 00000 n -0000028767 00000 n -0000034315 00000 n -0000033832 00000 n -0000004648 00000 n -0000009662 00000 n -0000032313 00000 n -0000032620 00000 n -0000033915 00000 n -0000009817 00000 n -0000013814 00000 n -0000033998 00000 n -0000013947 00000 n -0000019101 00000 n -0000034081 00000 n -0000019256 00000 n -0000024673 00000 n -0000034164 00000 n -0000024828 00000 n -0000028573 00000 n -0000033094 00000 n -0000033283 00000 n -0000033453 00000 n -0000028907 00000 n -0000029104 00000 n -0000029310 00000 n -0000029510 00000 n -0000029713 00000 n -0000029908 00000 n -0000030099 00000 n -0000030301 00000 n -0000030506 00000 n -0000034247 00000 n -0000034275 00000 n -0000034431 00000 n -0000034554 00000 n -trailer -<< -/Size 43 -/Root 42 0 R -/Info 41 0 R -/ID [<62e9d3965b181a0ba551a9211a027bdc><62e9d3965b181a0ba551a9211a027bdc>] ->> -startxref -34623 -%%EOF diff --git a/docs/medley-irm/02-LITATOM.pdf b/docs/medley-irm/02-LITATOM.pdf deleted file mode 100644 index beba7960..00000000 --- a/docs/medley-irm/02-LITATOM.pdf +++ /dev/null @@ -1,6745 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 7300 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-1)Tj -/TT4 1 Tf -10 0 0 10 386.1 568.2 Tm -(2. SYMBOLS \(LITATOMS\))Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0122 Tw -(A litatom \(for literal atom\) is an object that conceptually consists of a print name, a value, a function)Tj -0 -1.2222 TD -0.0789 Tw -[(definition, and a property list. Litatoms are also known as symbols in Common Lisp. For clarity,)]TJ -T* -0 Tw -(we will use the term symbol.)Tj -0 -2 TD -0.0978 Tw -(A symbol is read as any string of non-delimiting characters that cannot be interpreted as a number.)Tj -0 -1.2222 TD -0.0044 Tw -(The syntactic characters that delimit symbols are called separator or break characters \(see Chapter)Tj -T* -0.0289 Tw -(25\) and normally are space, end-of-line, line-feed, left parenthesis )Tj -/TT8 1 Tf -29.4016 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -(, right parenthesis )Tj -/TT8 1 Tf -8.3201 0 TD -0 Tw -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -(, double quote)Tj -/TT8 1 Tf --38.9219 -1.2889 TD -0 Tw -(")Tj -/TT6 1 Tf -0.6001 0 TD -0.1244 Tw -(, left square bracket )Tj -/TT8 1 Tf -9.3913 0 TD -0 Tw -([)Tj -/TT6 1 Tf -0.6001 0 TD -0.1244 Tw -(, and right square bracket )Tj -/TT8 1 Tf -12.1798 0 TD -0 Tw -(])Tj -/TT6 1 Tf -0.6001 0 TD -0.1244 Tw -[(. However, any character may be included in a)]TJ --23.3715 -1.2889 TD -0 Tw -(symbol by preceding it with the character )Tj -/TT8 1 Tf -18.6528 0 TD -(%)Tj -/TT6 1 Tf -0.6001 0 TD -(. Here are some examples of symbols:)Tj -/TT8 1 Tf --10.5863 -2 TD -(A wxyz 23SKIDDOO %] )Tj -0 -1.2222 TD -(Long% Litatom% With% Embedded% Spaces)Tj -10 0 0 10 102 409.46 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 409.46 Tm -(LITATOM)Tj -/TT8 1 Tf -10 0 0 10 145.8 409.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 151.801 409.46 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 157.2018 409.46 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 409.46 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a symbol, )Tj -/TT8 1 Tf -5.7178 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise. Note that a number is not a symbol.)Tj -/TT8 1 Tf --8.236 -1.6667 TD -(\(LITATOM NIL\) = T)Tj -10 0 0 10 102 359.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 359.63 Tm -(ATOM)Tj -/TT8 1 Tf -10 0 0 10 129.6045 359.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 135.6 359.63 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 141.0009 359.63 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 359.63 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.8093 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( if )]TJ -/TT12 1 Tf -1.2885 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( is an atom \(i.e., a symbol or a number\) or )]TJ -/TT8 1 Tf -19.5221 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0822 Tw -[( \(e.g. )]TJ -/TT8 1 Tf -2.5326 0 TD -0.1978 Tw -(\(ATOM NIL\) = T\))Tj -/TT6 1 Tf -9.5948 0 TD -0 Tw -(;)Tj --39.7478 -1.2889 TD -(otherwise)Tj -/TT8 1 Tf -4.356 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(returns)Tj -/TT8 1 Tf -3.2041 0 TD -( NIL.)Tj -/TT14 1 Tf --8.1602 -2.0667 TD -(Warning:)Tj -/TT6 1 Tf -4.25 0 TD -0.0978 Tc -( )Tj -/TT8 1 Tf -0.6956 0 TD -0 Tc -0.2356 Tw -(\(ATOM X\))Tj -/TT6 1 Tf -5.0363 0 TD -0.0978 Tw -[( is )]TJ -/TT8 1 Tf -1.4104 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0978 Tw -[( if )]TJ -/TT8 1 Tf -1.3196 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0978 Tw -[( is an array, string, etc. In Common Lisp, the function)]TJ -/TT8 1 Tf --15.1123 -1.2889 TD -0 Tw -(CL:ATOM)Tj -/TT6 1 Tf -4.2007 0 TD -( is defined equivalent to the Interlisp function )Tj -/TT8 1 Tf -20.4692 0 TD -(NLISTP)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --33.6038 -2.0667 TD -0.1822 Tw -[(Each symbol has a print name, a string of characters that uniquely identifies that symbol: Those)]TJ -0 -1.2222 TD -0.0189 Tw -(characters that are output when the symbol is printed using )Tj -/TT8 1 Tf -26.8647 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0189 Tw -(, e.g., the print name of the symbol)Tj -/TT8 1 Tf --29.8652 -1.2889 TD -0 Tw -(ABC%\(D)Tj -/TT6 1 Tf -3.6006 0 TD -( consists of the five characters )Tj -/TT8 1 Tf -13.3833 0 TD -(ABC\(D)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --19.9844 -2.0667 TD -0.0311 Tw -[(Symbols are unique: If two symbols print the same, they will always be )]TJ -/TT8 1 Tf -32.4141 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[(. Note that this is not true)]TJ --33.6143 -1.2889 TD -0.0589 Tw -[(for strings, large integers, floating-point numbers, etc.; they all can print the same without being )]TJ -/TT8 1 Tf -43.8792 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --45.0794 -1.2889 TD -0.1056 Tw -(Thus, if )Tj -/TT8 1 Tf -3.8068 0 TD -0 Tw -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -0.1056 Tw -[( or )]TJ -/TT8 1 Tf -1.652 0 TD -0 Tw -(MKATOM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1056 Tw -[( is given a list of characters corresponding to a symbol that already exists,)]TJ --11.4598 -1.2889 TD -0.0144 Tw -[(they return a pointer to that symbol, and do not make a new symbol. Similarly, if the read program is)]TJ -0 -1.2222 TD -0.0644 Tw -(given as input a sequence of characters for which a symbol already exists, it returns a pointer to that)Tj -T* -0 Tw -(symbol.)Tj -0 -2 TD -0.0289 Tw -[(Symbol names are limited to 255 characters. Attempting to create a larger symbol will cause an error:)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(Atom too long)Tj -/TT6 1 Tf -7.8013 0 TD -(. )Tj --7.8013 -2.0667 TD -0.0889 Tw -(Sometimes well refer to a )Tj -/TT8 1 Tf -12.1559 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.6006 0 TD -0.0889 Tw -[(-name. The )]TJ -/TT8 1 Tf -6.2174 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0889 Tw -(-name of a symbol is those characters output)Tj --24.9743 -1.2889 TD -0.1822 Tw -(when it is printed using )Tj -/TT8 1 Tf -11.7114 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1822 Tw -[(. So the )]TJ -/TT8 1 Tf -4.4369 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1822 Tw -(-name of the symbol )Tj -/TT8 1 Tf -10.0248 0 TD -0 Tw -(ABC%\(D)Tj -/TT6 1 Tf -3.6006 0 TD -0.1822 Tw -[( is the six characters)]TJ -/TT8 1 Tf --35.7747 -1.2889 TD -0 Tw -(ABC%\(D)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[(. The )]TJ -/TT8 1 Tf -3.2672 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1978 Tw -(-name depends on what readtable is being used \(see Chapter 25\), since this)Tj --9.8682 -1.2889 TD -0.2067 Tw -(determines where )Tj -/TT8 1 Tf -8.6311 0 TD -0 Tw -(%)Tj -/TT6 1 Tf -0.6001 0 TD -0.2067 Tw -[(s will be inserted. Many of the functions below allow either print names or)]TJ -/TT8 1 Tf --9.2312 -1.2889 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0667 Tw -(-names to be used, as specified by )Tj -/TT8 1 Tf -15.6742 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0667 Tw -[( and )]TJ -/TT8 1 Tf -2.3262 0 TD -0 Tw -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0667 Tw -[( arguments. If )]TJ -/TT8 1 Tf -6.9346 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0667 Tw -[( is )]TJ -/TT8 1 Tf -1.3482 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0667 Tw -(, print names are)Tj --37.6851 -1.2889 TD -0.21 Tw -[(used. Otherwise, )]TJ -/TT8 1 Tf -8.5929 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.21 Tw -(-names are used, computed with respect to the readtable )Tj -/TT8 1 Tf -27.1488 0 TD -0 Tw -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -0.21 Tw -[( \(or the)]TJ --41.7427 -1.2889 TD -0 Tw -(current readtable, if )Tj -/TT8 1 Tf -8.9824 0 TD -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\).)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 7020 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-2)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -5.4 -4.374 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 568.26 Tm -(MKATOM)Tj -10 0 0 10 188.4 568.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 568.26 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 199.8018 568.26 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.26 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0378 Tw -(Creates and returns a symbol whose print name is the name as that of the string )Tj -/TT12 1 Tf -36.1147 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0378 Tw -[( or, if )]TJ -/TT12 1 Tf -2.6783 0 TD -0 Tw -(X)Tj -/TT6 1 Tf --39.3931 -1.2889 TD -(is not a string, the same as that of )Tj -/TT8 1 Tf -14.9531 0 TD -(\(MKSTRING X\))Tj -/TT6 1 Tf -7.2012 0 TD -(. Examples:)Tj -/TT8 1 Tf --16.821 -1.6667 TD -(\(MKATOM \(A B C\)\) => %\(A% B% C%\))Tj -0 -1 TD -(\(MKATOM "1.5"\) => 1.5)Tj -/TT6 1 Tf --5.3333 -2.0667 TD -0.2156 Tw -[(Note that the last example returns a number, not a symbol. It is a deeply-ingrained)]TJ -0 -1.2222 TD -0 Tw -(feature of Interlisp that no symbol can have the print name of a number.)Tj -/TT8 1 Tf -10 0 0 10 150 466.83 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 466.83 Tm -(SUBATOM)Tj -/TT12 1 Tf -4.1999 0 TD -( X N M)Tj -/TT8 1 Tf -10 0 0 10 226.2053 466.83 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 466.83 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0033 Tw -(Returns a symbol made from the )Tj -/TT12 1 Tf -14.7666 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0033 Tw -(th through )Tj -/TT12 1 Tf -5.0052 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.0033 Tw -(th characters of the print name of )Tj -/TT12 1 Tf -14.9545 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0006 Tc -0.0027 Tw -(. If )Tj -/TT12 1 Tf -1.6799 0 TD -0 Tc -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0011 Tc -0.0022 Tw -( or)Tj -/TT12 1 Tf --38.8066 -1.2889 TD -0 Tc -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( are negative, they specify positions counting backwards from the end of the print name.)]TJ --0.6001 -1.2889 TD -0 Tw -(Equivalent to )Tj -/TT8 1 Tf -6.1802 0 TD -(\(MKATOM \(SUBSTRING X N M\)\))Tj -/TT6 1 Tf -15.6025 0 TD -(. Examples:)Tj -/TT8 1 Tf --16.4494 -1.6667 TD -(\(SUBATOM "FOO1.5BAR" 4 6\) => 1.5)Tj -0 -1 TD -(\(SUBATOM \(A B C\) 2 -2\) => A% B% C)Tj -10 0 0 10 150 382.8 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 382.8 Tm -(PACK)Tj -10 0 0 10 177.6 382.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 183.601 382.8 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 189.0018 382.8 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 382.8 Tm -([Function])Tj --35.4033 -1.8833 TD -(If )Tj -/TT12 1 Tf -1.281 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.3611 Tw -[( is a list of symbols, )]TJ -/TT8 1 Tf -11.0192 0 TD -0 Tw -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -0.3611 Tw -[( returns a single symbol whose print name is the)]TJ --15.3007 -1.2889 TD -0.1011 Tw -(concatenation of the print names of the symbols in )Tj -/TT12 1 Tf -23.453 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[(. If the concatenated print name is)]TJ --24.0531 -1.2889 TD -0 Tw -(the same as that of a number, )Tj -/TT8 1 Tf -13.2051 0 TD -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -( returns that number. For example:)Tj -/TT8 1 Tf --10.2721 -1.6667 TD -(\(PACK \(A BC DEF G\)\) => ABCDEFG)Tj -0 -1 TD -(\(PACK \(1 3.4\)\) => 13.4)Tj -T* -(\(PACK \(1 E -2\)\) => .01)Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(Although )Tj -/TT8 1 Tf -4.6042 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -[( is usually a list of symbols, it can be a list of arbitrary objects. The value of)]TJ -/TT8 1 Tf --5.2043 -1.2889 TD -0 Tw -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -0.0578 Tw -[( is still a single symbol whose print name is the concatenation of the print names of)]TJ --2.4004 -1.2889 TD -0 Tw -(all the elements of )Tj -/TT12 1 Tf -8.291 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, e.g.,)Tj -/TT8 1 Tf --3.5578 -1.6667 TD -(\(PACK \(\(A B\) "CD"\)\) => %\(A% B%\)CD)Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a list or )Tj -/TT8 1 Tf -6.4419 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -( generates the error )Tj -/TT8 1 Tf -8.8174 0 TD -(Illegal arg)Tj -/TT6 1 Tf -6.6011 0 TD -(. )Tj -/TT8 1 Tf -10 0 0 10 150 218.37 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 218.37 Tm -(PACK*)Tj -/TT12 1 Tf -10 0 0 10 183.0054 218.37 Tm -( )Tj -9 0 0 9 189.0063 218.37 Tm -(X)Tj -0.5993 -0.2222 TD -(1)Tj -10 0 0 10 199.8 218.37 Tm -( )Tj -9 0 0 9 205.801 218.37 Tm -(X)Tj -0.5999 -0.2222 TD -(2)Tj -0.6 0.2222 TD -(... X)Tj -3 -0.2222 TD -(N)Tj -/F2 1 Tf -10 0 0 10 249 218.37 Tm -( )Tj -/TT8 1 Tf -0.287 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 218.37 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -(Version of )Tj -/TT8 1 Tf -4.8179 0 TD -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -( that takes an arbitrary number of arguments, instead of a list. Examples:)Tj -/TT8 1 Tf --1.8849 -1.6667 TD -(\(PACK* A BC DEF G => ABCDEFG)Tj -0 -1 TD -(\(PACK* 1 3.4\)\) => 13.4)Tj -10 0 0 10 150 157.89 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 157.89 Tm -(GENSYM)Tj -10 0 0 10 188.4 157.89 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 157.89 Tm -(PREFIX)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -10 0 0 10 275.4142 157.89 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 157.89 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1544 Tw -(Returns a symbol of the form )Tj -/TT8 1 Tf -14.0795 0 TD -0 Tw -(Xnnnn)Tj -/TT6 1 Tf -3.0005 0 TD -0.1544 Tw -(, where )Tj -/TT8 1 Tf -3.8279 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1544 Tw -[( = )]TJ -/TT12 1 Tf -1.4148 0 TD -0 Tw -(PREFIX)Tj -/TT6 1 Tf -3.6006 0 TD -0.1544 Tw -[( \(or )]TJ -/TT8 1 Tf -2.0828 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1544 Tw -[( if )]TJ -/TT12 1 Tf -1.4329 0 TD -0 Tw -(PREFIX)Tj -/TT6 1 Tf -3.6006 0 TD -0.1544 Tw -[( is )]TJ -/TT8 1 Tf -1.5237 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1544 Tw -(\) and)Tj -/TT8 1 Tf --37.5639 -1.2889 TD -0 Tw -(nnnn)Tj -/TT6 1 Tf -2.4004 0 TD -0.0989 Tw -[( is an integer. Thus, the first one generated is )]TJ -/TT8 1 Tf -21.35 0 TD -0 Tw -(A0001)Tj -/TT6 1 Tf -3.0005 0 TD -0.0989 Tw -(, the second )Tj -/TT8 1 Tf -5.7693 0 TD -0 Tw -(A0002)Tj -/TT6 1 Tf -3.0005 0 TD -0.0989 Tw -[(, etc. The)]TJ --35.5207 -1.2889 TD -0.1478 Tw -[(integer suffix is always at least four characters long, but it can grow beyond that. For)]TJ -0 -1.2222 TD -0.0844 Tw -(example, the next symbol produced after )Tj -/TT8 1 Tf -18.8719 0 TD -0 Tw -(A9999)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( would be )]TJ -/TT8 1 Tf -4.9203 0 TD -0 Tw -(A10000)Tj -/TT6 1 Tf -3.6006 0 TD -0.0844 Tw -(. )Tj -/TT8 1 Tf -0.9189 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0844 Tw -[( provides a)]TJ --34.9128 -1.2889 TD -0 Tw -(way of generating symbols for various uses within the system .)Tj -0 -2 TD -0.1222 Tw -[(Note:)-1567.9(The Common Lisp function )]TJ -/TT8 1 Tf -16.9449 0 TD -0 Tw -(CL:GENSYM)Tj -/TT6 1 Tf -5.4009 0 TD -0.1222 Tw -[( is not the same as Interlisps )]TJ -/TT8 1 Tf -13.7989 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --39.7453 -1.2889 TD -0.4533 Tw -(Interlisp always creates interned symbols whereas )Tj -/TT8 1 Tf -25.2127 0 TD -0 Tw -(CL:GENSYM)Tj -/TT6 1 Tf -5.4009 0 TD -0.4533 Tw -[( creates uninterned)]TJ --30.6136 -1.2889 TD -0 Tw -(symbols.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -20 0 obj -<< -/Length 6498 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-3)Tj -/TT16 1 Tf -10 0 0 10 402.2 612 Tm -(SYMBOLS \(LITATOMS\))Tj -/TT10 1 Tf -9 0 0 9 102 568.26 Tm -(GENNUM)Tj -/F1 1 Tf -10 0 0 10 134.4 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 568.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0333 Tw -(The value of )Tj -/TT8 1 Tf -5.8407 0 TD -0 Tw -(GENNUM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -(, initially )Tj -/TT8 1 Tf -4.2361 0 TD -0 Tw -(0)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -(, determines the next )Tj -/TT8 1 Tf -9.6226 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -(, e.g., if )Tj -/TT8 1 Tf -3.5092 0 TD -0 Tw -(GENNUM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -[( is set to )]TJ -/TT8 1 Tf -3.9493 0 TD -0 Tw -(23)Tj -/TT6 1 Tf -1.2002 0 TD -(,)Tj -/TT8 1 Tf --39.7599 -1.2889 TD -(\(GENSYM\) )Tj -/TT6 1 Tf -5.4009 0 TD -(= )Tj -/TT8 1 Tf -0.856 0 TD -(A0024)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --9.2573 -2.0667 TD -0.2356 Tw -(The term gensym is used to indicate a symbol that was produced by the function)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1044 Tw -[(. Symbols generated by )]TJ -/TT8 1 Tf -11.3167 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1044 Tw -[( are the same as any other symbols: they have)]TJ --18.5178 -1.2889 TD -0.0767 Tw -[(property lists, and can be given function definitions. The symbols are not guaranteed to)]TJ -0 -1.2222 TD -0.0689 Tw -[(be new. For example, if the user has previously created )]TJ -/TT8 1 Tf -25.584 0 TD -0 Tw -(A0012)Tj -/TT6 1 Tf -3.0005 0 TD -0.0689 Tw -(, either by typing it in, or)Tj --28.5844 -1.2889 TD -0 Tw -(via )Tj -/TT8 1 Tf -1.8137 0 TD -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -0.2078 Tw -[( or )]TJ -/TT8 1 Tf -1.8565 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.2078 Tw -[( itself, then if )]TJ -/TT8 1 Tf -6.8184 0 TD -0 Tw -(GENNUM)Tj -/TT6 1 Tf -3.6006 0 TD -0.2078 Tw -[( is set to )]TJ -/TT8 1 Tf -4.647 0 TD -0 Tw -(11)Tj -/TT6 1 Tf -1.2002 0 TD -0.2078 Tw -(, the next symbol returned by)Tj -/TT8 1 Tf --25.9374 -1.2944 TD -0 Tw -(GENSYM)Tj -10 0 0 10 158.4053 464.61 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 164.4062 464.61 Tm -(will be the )Tj -/TT8 1 Tf -4.8765 0 TD -(A0012)Tj -/TT6 1 Tf -3.0005 0 TD -( already in existence.)Tj -/TT8 1 Tf -10 0 0 10 102 444.38 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 444.38 Tm -(MAPATOMS)Tj -/TT8 1 Tf -10 0 0 10 151.2 444.38 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 157.201 444.38 Tm -(FN)Tj -/TT8 1 Tf -10 0 0 10 168.0027 444.38 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 444.38 Tm -([Function])Tj --35.4033 -1.8833 TD -(Applies )Tj -/TT12 1 Tf -3.8771 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1622 Tw -[( \(a function or lambda expression\) to every symbol in the system. Returns)]TJ -/TT8 1 Tf --5.0773 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. For example:)Tj -/TT8 1 Tf --0.467 -2 TD -(\(MAPATOMS \(FUNCTION \(LAMBDA\(X\) \(if \(GETD X\) then \(PRINTX\)])Tj -/TT6 1 Tf --1.3333 -2.0667 TD -(will print every symbol with a function definition.)Tj -/TT14 1 Tf -0 -2 TD -(Warning)Tj -/TT6 1 Tf -4 0 TD -0.2389 Tw -[(: Be careful if )]TJ -/TT12 1 Tf -7.4532 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2389 Tw -[( is a lambda expression or an interpreted function: since)]TJ -/TT8 1 Tf --12.6534 -1.2889 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.1033 Tw -[( is a symbol, it will eventually be passed as an argument. The first reference to)]TJ --3.6006 -1.2889 TD -0 Tw -(that argument within the function will signal an error.)Tj -0 -2 TD -0.0578 Tw -(A way around this problem is to use a Common Lisp function, so that the Common Lisp)Tj -0 -1.2222 TD -0.11 Tw -[(interpreter will be invoked. It will treat the argument as local, not special and no error)]TJ -T* -0.2489 Tw -[(will be signaled. An alternative solution is to include the argument to the Interlisp)]TJ -T* -0.1044 Tw -(function in a )Tj -/TT8 1 Tf -6.1434 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1044 Tw -[( declaration and then compile the function before passing it to)]TJ -/TT8 1 Tf --11.5443 -1.2889 TD -0 Tw -(MAPATOMS)Tj -/TT6 1 Tf -4.8008 0 TD -(. This will significantly speed up )Tj -/TT8 1 Tf -14.8818 0 TD -(MAPATOMS)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 255.55 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 255.55 Tm -(APROPOS)Tj -/TT8 1 Tf -10 0 0 10 145.8 255.55 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 151.801 255.55 Tm -(STRING ALLFLG QUITFLG OUTPUT)Tj -/TT8 1 Tf -10 0 0 10 303.0256 255.55 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 255.55 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8833 TD -(APROPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0133 Tw -[( scans all symbols in the system for those which have )]TJ -/TT12 1 Tf -23.8708 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -[( as a substring and)]TJ --31.6721 -1.2889 TD -0.1933 Tw -(prints them on the terminal along with a line for each relevant item defined for each)Tj -0 -1.2222 TD -0 Tw -(selected symbol. Relevant items are:)Tj -2.6667 -1.6667 TD -[()-727.4(function definitions, for which only the arglist is printed)]TJ -T* -[()-727.4(dynamic variable values)]TJ -T* -[()-727.4(non-null property lists)]TJ -/TT8 1 Tf --2.6667 -2 TD -(PRINTLEVEL)Tj -/TT6 1 Tf -6.001 0 TD -( \(see Chapter 25\) is set to)Tj -/TT8 1 Tf -10.9561 0 TD -( \(3 . 5\) )Tj -/TT6 1 Tf -5.4009 0 TD -(when )Tj -/TT8 1 Tf -2.7271 0 TD -(APROPOS)Tj -/TT6 1 Tf -4.2007 0 TD -( is printing.)Tj --29.2856 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.2044 0 TD -(ALLFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.2844 Tw -[( is )]TJ -/TT8 1 Tf -1.7837 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2844 Tw -(, then symbols with no relevant items and internal symbols are)Tj --8.389 -1.2889 TD -0.0822 Tw -(omitted \(internal currently means those symbols whose print name begins with a \\ or)Tj -0 -1.2222 TD -0.0333 Tw -(those symbols produced by )Tj -/TT8 1 Tf -12.566 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -[(\). If )]TJ -/TT12 1 Tf -2.1029 0 TD -0 Tw -(ALLFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -[( is a function, it is used as a predicate on)]TJ --21.8701 -1.2889 TD -0.0522 Tw -(symbols selected by the substring match, with value )Tj -/TT8 1 Tf -23.7342 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( meaning to omit the symbol. If)]TJ -/TT12 1 Tf --25.5345 -1.2889 TD -0 Tw -(ALLFLG)Tj -/TT6 1 Tf -3.6006 0 TD -( is any other non-)Tj -/TT8 1 Tf -7.7241 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( value, then no symbols are omitted.)Tj --13.125 -2.0667 TD -0.1844 Tw -[(Note: Unlike )]TJ -/TT8 1 Tf -6.7125 0 TD -0 Tw -(CL:APROPOS)Tj -/TT6 1 Tf -6.001 0 TD -0.1844 Tw -[( which lets you designate the package to search, )]TJ -/TT8 1 Tf -23.0853 0 TD -0 Tw -(APROPOS)Tj -/TT6 1 Tf --35.7988 -1.2889 TD -(searches )Tj -/TT18 1 Tf -3.9766 0 TD -(all)Tj -/TT6 1 Tf -0.9995 0 TD -( packages.)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 18 0 R -/TT18 22 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -24 0 obj -<< -/Length 9235 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-4)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Using Symbols as Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 551.54 Tm -0.01 Tw -[(Symbols are commonly used as variable names. Each symbol has a top level value, which can be an)]TJ -0 -1.2222 TD -0.1822 Tw -[(arbitrary object. Symbols may also be given special variable bindings within )]TJ -/TT8 1 Tf -36.3136 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1822 Tw -(s or functions,)Tj --38.714 -1.2889 TD -0.0411 Tw -[(which only exist for the duration of the function. When a symbol is evaluated, the current variable)]TJ -0 -1.2222 TD -0.1089 Tw -[(binding is returned. This is the most recent special variable binding, or the top-level binding if the)]TJ -T* -0.0933 Tw -(symbol hasnt been rebound. )Tj -/TT8 1 Tf -13.7738 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0933 Tw -[( is used to change the current binding. For more information on)]TJ --16.1742 -1.2889 TD -0 Tw -(variable bindings in Interlisp, see Chapter 11.)Tj -0 -2 TD -0.0033 Tw -(A symbol whose top-level value is the symbol )Tj -/TT8 1 Tf -20.6263 0 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0001 Tc -0.0032 Tw -( is considered to have no value. If a symbol has)Tj --24.2269 -1.2889 TD -0 Tc -0.0311 Tw -(no local bindings, and its top-level value is )Tj -/TT8 1 Tf -19.3866 0 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0311 Tw -(, trying to evaluate it will cause an unbound-atom)Tj --22.9872 -1.2889 TD -0 Tw -(error. In addition, if a symbols local binding is to )Tj -/TT8 1 Tf -22.3403 0 TD -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -(, trying to evaluate it will cause an error.)Tj --25.9409 -2.0667 TD -0.0711 Tw -(The symbols )Tj -/TT8 1 Tf -5.9928 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[( and )]TJ -/TT8 1 Tf -2.3351 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0711 Tw -[( always evaluate to themselves. Attempting to change the value of )]TJ -/TT8 1 Tf -30.6229 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[( or )]TJ -/TT8 1 Tf -1.5831 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf --43.5344 -1.2944 TD -(with the functions below will generate the error; )Tj -/TT8 1 Tf -21.605 0 TD -(Attempt to set T)Tj -/TT6 1 Tf -9.6016 0 TD -( or)Tj -/TT8 1 Tf -10 0 0 10 422.0771 423.89 Tm -( )Tj -9 0 0 9 428.0781 423.89 Tm -(Attempt to set NIL)Tj -/TT6 1 Tf -10.8018 0 TD -(.)Tj --44.366 -2.1056 TD -0.0133 Tw -(The following functions \(except )Tj -/TT8 1 Tf -14.3063 0 TD -0 Tw -(BOUNDP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -(\) will also generate the error )Tj -/TT8 1 Tf -12.7743 0 TD -0.0311 Tw -(Arg not litatom)Tj -/TT6 1 Tf -9.0637 0 TD -0.0133 Tw -(, if not given)Tj --39.7449 -1.2889 TD -0 Tw -(a symbol.)Tj -/TT8 1 Tf -10 0 0 10 150 374.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 374.06 Tm -(BOUNDP)Tj -/TT8 1 Tf -10 0 0 10 188.4 374.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 374.06 Tm -(VAR)Tj -/TT8 1 Tf -10 0 0 10 210.6036 374.06 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 374.06 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7793 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -[( if )]TJ -/TT12 1 Tf -1.2285 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( has a special variable binding, or if )]TJ -/TT12 1 Tf -16.3089 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( has a top-level value other than)]TJ -/TT8 1 Tf --25.5173 -1.2889 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.14 Tw -[(; otherwise )]TJ -/TT8 1 Tf -5.776 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.14 Tw -[(. That is, if )]TJ -/TT8 1 Tf -5.8099 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.14 Tw -[( is a symbol, )]TJ -/TT8 1 Tf -6.2778 0 TD -0.3356 Tw -(\(EVAL X\))Tj -/TT6 1 Tf -5.1363 0 TD -0.14 Tw -[( will cause an )]TJ -/TT8 1 Tf -6.7988 0 TD -0 Tw -(Unbound)Tj --35.7997 -1.4311 TD -(atom)Tj -/TT6 1 Tf -2.4004 0 TD -( error if and only if )Tj -/TT8 1 Tf -8.626 0 TD -(\(BOUNDP X\))Tj -/F1 1 Tf -10 0 0 10 327.2461 332.63 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 330.0261 332.63 Tm -(returns)Tj -/F1 1 Tf -10 0 0 10 358.863 332.63 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 361.643 332.63 Tm -(NIL)Tj -/F1 1 Tf -10 0 0 10 377.8456 332.63 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 174 314.03 Tm -0.1544 Tw -[(Note: The Interlisp interpreter has been modified so that it will generate an )]TJ -/TT8 1 Tf -35.7931 0 TD -0 Tw -(Unbound)Tj --35.7931 -1.2889 TD -(Variable)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[( error when it encounters any symbol bound to )]TJ -/TT8 1 Tf -21.2823 0 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0233 Tw -[(. This is a change from)]TJ --29.6836 -1.2889 TD -0.1222 Tw -(previous releases that only signaled an error when a symbol had a top-level binding of)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -( in addition to no dynamic binding.)Tj -/TT8 1 Tf -10 0 0 10 150 259.95 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 259.95 Tm -(SET)Tj -/F2 1 Tf -10 0 0 10 172.2 259.95 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 175.07 259.95 Tm -(VAR VALUE)Tj -/TT8 1 Tf -10 0 0 10 223.6779 259.95 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 259.95 Tm -([NoSpread Function])Tj --30.6656 -1.8833 TD -(Sets the current value of )Tj -/TT12 1 Tf -11.9321 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -(, and returns )Tj -/TT12 1 Tf -5.897 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf --27.0024 -2.0667 TD -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( is a normal function, so both )Tj -/TT12 1 Tf -13.1113 0 TD -0 Tc -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0004 Tc -0.0018 Tw -( and )Tj -/TT12 1 Tf -2.1973 0 TD -0 Tc -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0021 Tw -( are evaluated before it is called. Thus, if)Tj --21.9097 -1.2889 TD -0 Tc -0.0411 Tw -(the value of )Tj -/TT8 1 Tf -5.5774 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( is )]TJ -/TT8 1 Tf -1.2971 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -(, and value of )Tj -/TT8 1 Tf -6.4242 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( is )]TJ -/TT8 1 Tf -1.2971 0 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -(, then )Tj -/TT8 1 Tf -2.8015 0 TD -0.0978 Tw -(\(SET X Y\))Tj -/TT6 1 Tf -5.5964 0 TD -0.0411 Tw -[( would result in )]TJ -/TT8 1 Tf -7.4403 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( being set to )]TJ -/TT8 1 Tf -5.7269 0 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj --39.7615 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -( being returned as the value of )Tj -/TT8 1 Tf -13.7095 0 TD -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 181.32 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 181.32 Tm -(SETQ)Tj -/F2 1 Tf -10 0 0 10 177.6 181.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 180.47 181.32 Tm -(VAR VALUE)Tj -/TT8 1 Tf -10 0 0 10 229.0779 181.32 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 181.32 Tm -([NoSpread Function])Tj --30.6656 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.217 0 TD -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -(, but )Tj -/TT12 1 Tf -2.2924 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -[( is not evaluated, )]TJ -/TT12 1 Tf -7.893 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( is. Thus, if the value of )]TJ -/TT8 1 Tf -11.0047 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.03 Tw -[( is )]TJ -/TT8 1 Tf -1.2748 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.03 Tw -[( and the value of)]TJ -/TT8 1 Tf --32.4831 -1.2889 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(SETQ X Y\))Tj -/TT6 1 Tf -6.001 0 TD -( would result in )Tj -/TT8 1 Tf -7.2759 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( \(not )Tj -/TT8 1 Tf -2.2871 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(\) being set to )Tj -/TT8 1 Tf -5.8955 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -( being returned.)Tj --29.2178 -2.0667 TD -0.0467 Tw -[(Actually, neither argument is evaluated during the calling process. However, )]TJ -/TT8 1 Tf -35.1525 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -[( itself)]TJ --37.5529 -1.2889 TD -0 Tw -(calls )Tj -/TT8 1 Tf -2.3175 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1178 Tw -[( on its second argument. As a result, typing )]TJ -/TT8 1 Tf -20.8887 0 TD -0.2822 Tw -(\(SETQ VAR FORM\))Tj -/TT6 1 Tf -9.5659 0 TD -0.1178 Tw -[( and )]TJ -/TT8 1 Tf -2.4284 0 TD -0 Tw -(SETQ)Tj --37.6009 -1.2889 TD -0.7 Tw -(\(VAR FORM\))Tj -/TT6 1 Tf -6.701 0 TD -0.2911 Tw -[( to the Interlisp Executive are equivalent: in both cases )]TJ -/TT8 1 Tf -27.7027 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2911 Tw -[( is not)]TJ --36.204 -1.2889 TD -0 Tw -(evaluated, and )Tj -/TT8 1 Tf -6.7969 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is.)Tj -/TT8 1 Tf -10 0 0 10 150 79.49 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 79.49 Tm -(SETQQ)Tj -10 0 0 10 183 79.49 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 189.0009 79.49 Tm -(VAR)Tj -10 0 0 10 205.2036 79.49 Tm -( )Tj -9 0 0 9 211.2046 79.49 Tm -(VALUE)Tj -/TT8 1 Tf -10 0 0 10 238.209 79.49 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 79.49 Tm -([NoSpread Function])Tj --30.6656 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.2137 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0267 Tw -(, but neither argument is evaluated, e.g., )Tj -/TT8 1 Tf -18.2316 0 TD -0.0644 Tw -(\(SETQQ X \(A B C\)\))Tj -/TT6 1 Tf -10.4594 0 TD -0.0267 Tw -[( sets )]TJ -/TT8 1 Tf -2.2062 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( to )]TJ -/TT8 1 Tf -1.4254 0 TD -0.0644 Tw -(\(A B)Tj --37.5368 -1.2889 TD -0 Tw -(C\))Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -27 0 obj -<< -/Length 6571 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-5)Tj -/TT16 1 Tf -10 0 0 10 402.2 612 Tm -(SYMBOLS \(LITATOMS\))Tj -/TT8 1 Tf --30.02 -4.374 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 568.26 Tm -(PSETQ)Tj -10 0 0 10 135 568.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 141.001 568.26 Tm -(VAR)Tj -1.7999 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( VALUE)Tj -3.6 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( ... VAR)Tj -4.8 -0.2222 TD -(N)Tj -0.6 0.2222 TD -( VALUE)Tj -3.6 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 286.8 568.26 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 454.52 568.26 Tm -([Macro])Tj --36.5022 -2.0667 TD -0.0989 Tw -(Does a )Tj -/TT8 1 Tf -3.4204 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0989 Tw -[( in parallel of )]TJ -/TT12 1 Tf -6.4957 0 TD -0 Tw -(VAR)Tj -1.8013 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0989 Tw -[( \(unevaluated\) to )]TJ -/TT12 1 Tf -8.1238 0 TD -0 Tw -(VALUE)Tj -2.9995 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT12 1 Tf -0.5989 0 TD -(VAR)Tj -1.8 -0.2222 TD -(2)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0989 Tw -[( to )]TJ -/TT12 1 Tf -1.5699 0 TD -0 Tw -(VALUE)Tj -2.999 -0.2222 TD -(2)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0989 Tw -[(, etc. All of)]TJ --34.6089 -1.5111 TD -0 Tw -(the )Tj -/TT12 1 Tf -1.6861 0 TD -(VALUE)Tj -2.9995 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0489 Tw -[( terms are evaluated before any of the assignments. Therefore, )]TJ -/TT8 1 Tf -28.4836 0 TD -0.1167 Tw -(\(PSETQ A B)Tj --33.7691 -1.5111 TD -0 Tw -(B A\))Tj -/TT6 1 Tf -2.4004 0 TD -( can be used to swap the values of the variables )Tj -/TT8 1 Tf -21.1689 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(. )Tj -/TT8 1 Tf -10 0 0 10 102 502.58 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 502.58 Tm -(GETTOPVAL)Tj -10 0 0 10 156.6 502.58 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 162.601 502.58 Tm -(VAR)Tj -/TT8 1 Tf -10 0 0 10 178.8036 502.58 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 502.58 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1022 Tw -(Returns the top level value of )Tj -/TT12 1 Tf -13.8726 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1022 Tw -[( \(even if )]TJ -/TT8 1 Tf -4.1187 0 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.1022 Tw -(\), regardless of any intervening local)Tj --23.3922 -1.2889 TD -0 Tw -(bindings.)Tj -/TT8 1 Tf -10 0 0 10 102 454.75 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 454.75 Tm -(SETTOPVAL)Tj -10 0 0 10 156.6 454.75 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 162.601 454.75 Tm -(VAR)Tj -10 0 0 10 178.8036 454.75 Tm -( )Tj -9 0 0 9 184.8046 454.75 Tm -(VALUE)Tj -/TT8 1 Tf -10 0 0 10 211.809 454.75 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 454.75 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1789 Tw -(Sets the top level value of )Tj -/TT12 1 Tf -12.6095 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1789 Tw -[( to )]TJ -/TT12 1 Tf -1.7298 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1789 Tw -(, regardless of any intervening bindings, and)Tj --19.1401 -1.2889 TD -0 Tw -(returns )Tj -/TT12 1 Tf -3.4541 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 406.32 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 406.32 Tm -(GETATOMVAL)Tj -10 0 0 10 162 406.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 168.001 406.32 Tm -(VAR)Tj -/TT8 1 Tf -10 0 0 10 184.2036 406.32 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 406.32 Tm -([Function])Tj --35.4033 -1.8833 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(\(GETTOPVAL VAR\))Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 369.49 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 369.49 Tm -(SETATOMVAL)Tj -10 0 0 10 162 369.49 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 168.001 369.49 Tm -(VAR)Tj -10 0 0 10 184.2036 369.49 Tm -( )Tj -9 0 0 9 190.2046 369.49 Tm -(VALUE)Tj -/TT8 1 Tf -10 0 0 10 217.209 369.49 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 369.49 Tm -([Function])Tj --35.4033 -1.8833 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(SETTOPVAL)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --14.5448 -2.0667 TD -0.0122 Tw -[(Note:)-1567.9(The compiler \(see Chapter 18\) treats variables somewhat differently from the interpreter, and)]TJ -4 -1.2222 TD -0.0367 Tw -[(you need to be aware of these differences when writing functions that will be compiled. For)]TJ -T* -0.0133 Tw -(example, variable references in compiled code are not checked for )Tj -/TT8 1 Tf -29.4903 0 TD -0 Tw -(NOBIND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -(, so compiled code)Tj --33.0909 -1.2889 TD -0.1433 Tw -[(will not generate unbound-atom errors. In general, it is better to debug interpreted code,)]TJ -0 -1.2222 TD -0.0322 Tw -[(before compiling it for speed. The compiler offers some facilities to increase the efficiency of)]TJ -T* -0.0222 Tw -[(variable use in compiled functions: Global variables can be defined so that the entire stack is)]TJ -T* -0.1344 Tw -[(not searched at each variable reference. Local variables have bindings that are not visible)]TJ -T* -0 Tw -(outside the function, which reduces variable conflicts and makes variable lookup faster.)Tj -/TT4 1 Tf -10 0 0 10 54 234 Tm -(Function Definition Cells)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 231.29 m -510.01 231.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 217.34 Tm -0.0544 Tw -(Each symbol has a function-definition cell, which is accessed when that symbol is used as a function.)Tj -T* -0 Tw -(This is described in detail in Chapter 10.)Tj -/TT4 1 Tf -10 0 0 10 54 184 Tm -(Property Lists)Tj -ET -54.01 181.29 m -510.01 181.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 167.34 Tm -0.0178 Tw -(Each symbol has an associated property list, which allows a set of named objects to be associated with)Tj -T* -0.0822 Tw -[(the symbol. A property list associates a name \(known as a property name or property\) with an)]TJ -T* -0.0311 Tw -[(arbitrary object \(the property value or value\). Sometimes the phrase to store on the property X)]TJ -T* -0 Tw -(is used, meaning to place the indicated information on a property list under the property name X.)Tj -0 -2 TD -0.2656 Tw -[(Property names are usually symbols or numbers, although no checks are made. However, the)]TJ -0 -1.2222 TD -0.0778 Tw -(standard property list functions all use )Tj -/TT8 1 Tf -17.8656 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0778 Tw -[( to search for property names, so they may not work with)]TJ --19.0658 -1.2889 TD -0.1144 Tw -[(non-atomic property names. The same object can be used as both a property name and a property)]TJ -0 -1.2222 TD -0 Tw -(value.)Tj -0 -2 TD -0.1233 Tw -(Many symbols in the system already have property lists, with properties used by the compiler, the)Tj -0 -1.2222 TD -0.0278 Tw -[(break package, DWIM, etc. Be careful not to clobber such system properties. The variable )]TJ -/TT8 1 Tf -40.5216 0 TD -0 Tw -(SYSPROPS)Tj -/TT6 1 Tf --40.5216 -1.2889 TD -(is a list of property names used by the system.)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -30 0 obj -<< -/Length 8682 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-6)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1311 Tw -[(The functions below are used to manipulate the property lists of symbols. Except when indicated,)]TJ -0 -1.2222 TD -0 Tw -(they generate the error )Tj -/TT12 1 Tf -10.3369 0 TD -(ATM)Tj -/TT8 1 Tf -1.8003 0 TD -( is not a SYMBOL)Tj -/TT6 1 Tf -9.6016 0 TD -(, if given an object that is not a symbol.)Tj -/TT8 1 Tf -10 0 0 10 150 538.66 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 538.66 Tm -(GETPROP)Tj -10 0 0 10 193.8 538.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.801 538.66 Tm -(ATM)Tj -10 0 0 10 216.0036 538.66 Tm -( )Tj -9 0 0 9 222.0046 538.66 Tm -(PROP)Tj -/TT8 1 Tf -10 0 0 10 243.6081 538.66 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 538.66 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0444 Tw -(Returns the property value for )Tj -/TT12 1 Tf -13.9478 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( from the property list of )]TJ -/TT12 1 Tf -11.421 0 TD -0 Tw -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -0.0444 Tw -[(. Returns )]TJ -/TT8 1 Tf -4.6104 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0444 Tw -[( if )]TJ -/TT12 1 Tf -1.2129 0 TD -0 Tw -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -0.0444 Tw -[( is)]TJ --38.9933 -1.2889 TD -0.0144 Tw -(not a symbol, or )Tj -/TT12 1 Tf -7.4557 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[( is not found. )]TJ -/TT8 1 Tf -6.416 0 TD -0 Tw -(GETPROP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0144 Tw -[( also returns )]TJ -/TT8 1 Tf -5.7582 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0144 Tw -[( if there is an occurrence of)]TJ -/TT12 1 Tf --28.0312 -1.2889 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1867 Tw -[( but the corresponding property value is )]TJ -/TT8 1 Tf -19.4302 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1867 Tw -[(. This can be a source of program)]TJ --23.6309 -1.2889 TD -0 Tw -(errors.)Tj -0 -2 TD -(Note: )Tj -/TT8 1 Tf -2.9321 0 TD -(GETPROP)Tj -/TT6 1 Tf -4.2007 0 TD -( used to be called )Tj -/TT8 1 Tf -7.8867 0 TD -(GETP)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 449.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 449.03 Tm -(PUTPROP)Tj -10 0 0 10 193.8 449.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.801 449.03 Tm -(ATM)Tj -10 0 0 10 216.0036 449.03 Tm -( )Tj -9 0 0 9 222.0046 449.03 Tm -(PROP)Tj -10 0 0 10 243.6081 449.03 Tm -( )Tj -9 0 0 9 249.6091 449.03 Tm -(VAL)Tj -/TT8 1 Tf -10 0 0 10 265.8117 449.03 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 449.03 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1478 Tw -(Puts the property )Tj -/TT12 1 Tf -8.437 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -[( with value )]TJ -/TT12 1 Tf -5.6645 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -[( on the property list of )]TJ -/TT12 1 Tf -11.0122 0 TD -0 Tw -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -(. )Tj -/TT12 1 Tf -1.0456 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -[( replaces any)]TJ --33.9605 -1.2889 TD -0 Tw -(previous value for the property )Tj -/TT12 1 Tf -14.1523 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -( on this property list. Returns )Tj -/TT12 1 Tf -13.4595 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 400.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 400.6 Tm -(ADDPROP)Tj -10 0 0 10 193.8 400.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.801 400.6 Tm -(ATM)Tj -10 0 0 10 216.0036 400.6 Tm -( )Tj -9 0 0 9 222.0046 400.6 Tm -(PROP)Tj -10 0 0 10 243.6081 400.6 Tm -( )Tj -9 0 0 9 249.6091 400.6 Tm -(NEW FLG)Tj -/TT8 1 Tf -10 0 0 10 287.4152 400.6 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 400.6 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0433 Tw -(Adds the value )Tj -/TT12 1 Tf -7.1285 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( to the list which is the value of property )]TJ -/TT12 1 Tf -18.5759 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -[( on the property list of)]TJ --29.9051 -1.2944 TD -0 Tw -(the )Tj -/TT12 1 Tf -1.8739 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -0.2367 Tw -[(. If )]TJ -/TT12 1 Tf -2.3799 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.2367 Tw -[( is )]TJ -/TT8 1 Tf -10 0 0 10 259.883 372 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 265.884 372 Tm -(, )Tj -/TT12 1 Tf -0.7367 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.2367 Tw -[( is )]TJ -/TT8 1 Tf -1.6882 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.2367 Tw -(ed onto the front of the property value of )Tj -/TT12 1 Tf -20.5216 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -(;)Tj --39.7569 -1.3278 TD -0.1144 Tw -(otherweise, it is )Tj -/TT8 1 Tf -7.5103 0 TD -0 Tw -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1144 Tw -(ed on the end \(using )Tj -/TT8 1 Tf -9.8881 0 TD -0 Tw -(NCONC1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1144 Tw -[(\). If )]TJ -/TT12 1 Tf -2.3463 0 TD -0 Tw -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -0.1144 Tw -[( does not have a property)]TJ -/TT12 1 Tf --28.1461 -1.2889 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1678 Tw -(, or the value is not a list, then the effect is the same as )Tj -/TT8 1 Tf -26.5958 0 TD -0.4022 Tw -(\(PUTPROP ATM PROP)Tj --28.9962 -1.2889 TD -0 Tw -(\(LIST NEW\)\))Tj -/TT6 1 Tf -6.6011 0 TD -(. )Tj -/TT8 1 Tf -0.75 0 TD -(ADDPROP)Tj -/TT6 1 Tf -4.2007 0 TD -( returns the \(new\) property value. Example:)Tj -/TT19 1 Tf --6.2184 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(PUTPROP POCKET CONTENTS NIL\))Tj --0.3201 -1 TD -(\(NIL\))Tj -/TT19 1 Tf --0.6667 -1 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(ADDPROP POCKET CONTENTS COMB\))Tj --0.3201 -1.2222 TD -(\(COMB\))Tj -/TT19 1 Tf --0.6667 -1 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(ADDPROP POCKET CONTENTS WALLET\))Tj --0.3201 -1.2222 TD -(\(COMB WALLET\))Tj -10 0 0 10 150 254.97 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 254.97 Tm -(REMPROP)Tj -10 0 0 10 193.8 254.97 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.801 254.97 Tm -(ATM)Tj -10 0 0 10 216.0036 254.97 Tm -( )Tj -9 0 0 9 222.0046 254.97 Tm -(PROP)Tj -/TT8 1 Tf -10 0 0 10 243.6081 254.97 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 254.97 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1489 Tw -(Removes all occurrences of the property )Tj -/TT12 1 Tf -18.9187 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1489 Tw -[( \(and its value\) from the property list of)]TJ -/TT12 1 Tf --21.3191 -1.2889 TD -0 Tw -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -(. Returns )Tj -/TT12 1 Tf -4.4771 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -( if any were found \()Tj -/TT8 1 Tf -8.707 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\), otherwise )Tj -/TT8 1 Tf -5.439 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 206.54 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 206.54 Tm -(CHANGEPROP)Tj -10 0 0 10 210 206.54 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 216.0009 206.54 Tm -(X PROP1 PROP2)Tj -/TT8 1 Tf -10 0 0 10 286.2124 206.54 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 206.54 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1333 Tw -(Changes the property name of property )Tj -/TT12 1 Tf -18.6408 0 TD -0 Tw -(PROP1)Tj -/TT6 1 Tf -3.0005 0 TD -0.1333 Tw -[( to )]TJ -/TT12 1 Tf -1.6387 0 TD -0 Tw -(PROP2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1333 Tw -[( on the property list of )]TJ -/TT12 1 Tf -10.9255 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1333 Tw -[( \(but)]TJ --37.8061 -1.2889 TD -0.0244 Tw -[(does not affect the value of the property\). Returns )]TJ -/TT12 1 Tf -22.7239 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0244 Tw -(, unless )Tj -/TT12 1 Tf -3.6016 0 TD -0 Tw -(PROP1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0244 Tw -[( is not found, in which)]TJ --29.9261 -1.2889 TD -0 Tw -(case it returns )Tj -/TT8 1 Tf -6.418 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 146.51 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 146.51 Tm -(PROPNAMES)Tj -10 0 0 10 204.6 146.51 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 210.601 146.51 Tm -(ATM)Tj -/TT8 1 Tf -10 0 0 10 226.8036 146.51 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 146.51 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns a list of the property names on the property list of )Tj -/TT12 1 Tf -25.9678 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 109.68 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 109.68 Tm -(DEFLIST)Tj -/TT12 1 Tf -4.1999 0 TD -( L PROP)Tj -/TT8 1 Tf -10 0 0 10 231.6061 109.68 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 109.68 Tm -([Function])Tj --35.4033 -1.8833 TD -0.2911 Tw -(Used to put values under the same property name on the property lists of several)Tj -0 -1.2222 TD -0.11 Tw -(symbols. )Tj -/TT12 1 Tf -4.6468 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.11 Tw -[( is a list of two-element lists. The first element of each is a symbol, and the)]TJ --5.2469 -1.2889 TD -0 Tw -(second element is the property vqalue of the property )Tj -/TT12 1 Tf -24.0195 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -(. Returns )Tj -/TT8 1 Tf -4.4771 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. For example:)Tj -/TT8 1 Tf --27.3639 -1.6667 TD -(\(DEFLIST \(\(FOO MA\)\(BAR CA\)\(BAZ RI\)\) STATE\))Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R -/TT19 32 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -34 0 obj -<< -/Length 7429 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-7)Tj -/TT16 1 Tf -10 0 0 10 402.2 612 Tm -(SYMBOLS \(LITATOMS\))Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(puts )Tj -/TT8 1 Tf -2.2585 0 TD -(MA)Tj -/TT6 1 Tf -1.2002 0 TD -0.0544 Tw -[( on )]TJ -/TT8 1 Tf -1.7368 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(s )Tj -/TT8 1 Tf -1.0061 0 TD -(STATE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -[( property, )]TJ -/TT8 1 Tf -4.7583 0 TD -0 Tw -(CA)Tj -/TT6 1 Tf -1.2002 0 TD -0.0544 Tw -[( on )]TJ -/TT8 1 Tf -1.7368 0 TD -0 Tw -(BAR)Tj -/TT6 1 Tf -1.8003 0 TD -(s )Tj -/TT8 1 Tf -1.0061 0 TD -(STATE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -[( property, and )]TJ -/TT8 1 Tf -6.7556 0 TD -0 Tw -(RI)Tj -/TT6 1 Tf -1.2002 0 TD -0.0544 Tw -[( on )]TJ -/TT8 1 Tf -1.7368 0 TD -0 Tw -(BAZ)Tj -/TT6 1 Tf -1.8003 0 TD -(s )Tj -/TT8 1 Tf -1.0061 0 TD -(STATE)Tj -/TT6 1 Tf --37.0037 -1.2889 TD -(property.)Tj --5.3333 -2 TD -(Property lists are conventionally implemented as lists of the form)Tj -/TT8 1 Tf -10 0 0 10 174 524.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 180.001 524.89 Tm -(NAME)Tj -2.3999 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( VALUE)Tj -3.6 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( NAME)Tj -3 -0.2222 TD -(2)Tj -0.6 0.2222 TD -( VALUE)Tj -3.6 -0.2222 TD -(2)Tj -0.6 0.2222 TD -(...)Tj -/TT8 1 Tf -10 0 0 10 331.2026 524.89 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 78 506.29 Tm -0.0311 Tw -[(although the user can store anything as the property list of a symbol. However, thge functions which)]TJ -0 -1.2222 TD -0.0422 Tw -(manipulate property lists observe this convention by searching down the property lists two )Tj -/TT8 1 Tf -41.2008 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -(s at a)Tj --43.001 -1.2889 TD -0.0078 Tw -[(time. Most of these functions also generate the error )]TJ -/TT8 1 Tf -23.5026 0 TD -0.02 Tw -(Arg not litatom)Tj -/TT6 1 Tf -9.0415 0 TD -0.0078 Tw -[( if given an argument which)]TJ --32.5441 -1.2889 TD -0.2256 Tw -[(is not a symbol, so they cannot be used directly on lists. \()]TJ -/TT8 1 Tf -28.256 0 TD -0 Tw -(LISTPUT)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.7256 0 TD -(LISTPUT1)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.7256 0 TD -(LISTGET)Tj -/TT6 1 Tf -4.2007 0 TD -0.2256 Tw -(, and)Tj -/TT8 1 Tf --42.9092 -1.2889 TD -0 Tw -(LISTGET1)Tj -/TT6 1 Tf -4.8008 0 TD -0.0156 Tw -[( are functions similar to )]TJ -/TT8 1 Tf -10.7794 0 TD -0 Tw -(PUTPROP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0156 Tw -[( and )]TJ -/TT8 1 Tf -2.224 0 TD -0 Tw -(GETPROP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0156 Tw -[( that work directly on lists \(see Chapter 3\) .)]TJ --26.2056 -1.2889 TD -0 Tw -(The property lists of symbols can be directly accessed with the following functions.)Tj -/TT8 1 Tf -10 0 0 10 102 429.61 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 429.61 Tm -(GETPROPLIST)Tj -10 0 0 10 167.4 429.61 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 173.401 429.61 Tm -(ATM)Tj -/TT8 1 Tf -10 0 0 10 189.6036 429.61 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 429.61 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns the property list of )Tj -/TT12 1 Tf -12.2246 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 392.78 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 392.78 Tm -(SETPROPLIST)Tj -10 0 0 10 167.4 392.78 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 173.401 392.78 Tm -(ATM)Tj -10 0 0 10 189.6036 392.78 Tm -( )Tj -9 0 0 9 195.6046 392.78 Tm -(LST)Tj -/TT8 1 Tf -10 0 0 10 211.8072 392.78 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 392.78 Tm -([Function])Tj --35.4033 -1.8833 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -( is a symbol, sets the property list of )Tj -/TT12 1 Tf -16.1182 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -( to be )Tj -/TT12 1 Tf -2.6543 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(, and returns )Tj -/TT12 1 Tf -5.897 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -( as its value.)Tj -/TT8 1 Tf -10 0 0 10 102 355.95 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 355.95 Tm -(GETLIS)Tj -10 0 0 10 140.4 355.95 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 146.401 355.95 Tm -(X)Tj -10 0 0 10 151.8018 355.95 Tm -( )Tj -9 0 0 9 157.8028 355.95 Tm -(PROPS)Tj -/TT8 1 Tf -10 0 0 10 184.8072 355.95 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 355.95 Tm -([Function])Tj --35.4033 -1.8889 TD -0.1411 Tw -(Searches the property list of )Tj -/TT12 1 Tf -10 0 0 10 245.5267 338.95 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 251.5277 338.95 Tm -0.1411 Tw -(, and returns the property list as of the first property on)Tj -/TT12 1 Tf --13.9475 -1.3278 TD -0 Tw -(PROPS)Tj -/TT6 1 Tf -3.0005 0 TD -( that it finds. For example:)Tj -/TT19 1 Tf -2.3328 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GETPROPLIST X\))Tj --0.3202 -1 TD -(\(PROP1 A PROP3 B A C\))Tj -/TT19 1 Tf --0.6667 -1 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GETLIS X \(PROP2 PROP3\)\))Tj --0.3202 -1.2222 TD -(\(PROP3 B A C\))Tj -/TT6 1 Tf --6 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.7715 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0444 Tw -[( if no element on props is found. )]TJ -/TT12 1 Tf -15.2555 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0444 Tw -[( can also be a list itself, in which case it is)]TJ --21.4274 -1.2889 TD -0 Tw -(searched as described above. If )Tj -/TT12 1 Tf -14.187 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a symbol or a list, returns )Tj -/TT8 1 Tf -14.3989 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 234.92 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 234.92 Tm -(REMPROPLIST)Tj -10 0 0 10 167.4 234.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 173.401 234.92 Tm -(ATM)Tj -10 0 0 10 189.6036 234.92 Tm -( )Tj -9 0 0 9 195.6046 234.92 Tm -(PROPS)Tj -/TT8 1 Tf -10 0 0 10 222.609 234.92 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 234.92 Tm -([Function])Tj --35.4033 -1.8833 TD -0.2278 Tw -(Removes all occurrences of all properties on the list )Tj -/TT12 1 Tf -25.0051 0 TD -0 Tw -(PROPS)Tj -/TT6 1 Tf -3.0005 0 TD -0.2278 Tw -[( \(and their corresponding)]TJ --28.0056 -1.2889 TD -0 Tw -(property values\) from the property list of )Tj -/TT12 1 Tf -18.4985 0 TD -(ATM)Tj -/TT6 1 Tf -1.8003 0 TD -(. Returns )Tj -/TT8 1 Tf -4.4771 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 183.43 Tm -(Print Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 180.72 m -510.01 180.72 l -S -BT -/TT6 1 Tf -9 0 0 9 78 166.77 Tm -0.0944 Tw -[(The term print name has an extended meaning: The characters that are output when )]TJ -/TT18 1 Tf -40.11 0 TD -(any object)Tj -/TT6 1 Tf -4.1584 0 TD -[( is)]TJ --44.2684 -1.2222 TD -0.0633 Tw -[(printed. In Medley, all objects have print names, although only symbols and strings have their print)]TJ -T* -0 Tw -(names explicitly stored. Symbol print names are limited to 255 characters. )Tj -0 -2 TD -0.05 Tw -(This section describes a set of functions that can be used to access and manipulate the print names of)Tj -0 -1.2222 TD -0.2511 Tw -[(any object, though they are primarily used with the print names of symbols. In Medley, print)]TJ -T* -0.1189 Tw -(functions qualify symbol names with a package prefix if the symbol is not accessible in the current)Tj -T* -0 Tw -(package. The exception is Interlisps )Tj -/TT8 1 Tf -16.4668 0 TD -(PRIN1,)Tj -/TT6 1 Tf -3.6006 0 TD -( which does not include a package prefix.)Tj --20.0674 -2.0667 TD -0.0078 Tw -(The print name of an object is those characters that are output when the object is printed using )Tj -/TT8 1 Tf -42.0726 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --45.0731 -1.2889 TD -0.1278 Tw -(e.g., the print name of the list )Tj -/TT8 1 Tf -14.0541 0 TD -0.3067 Tw -(\(A B "C"\))Tj -/TT6 1 Tf -6.0142 0 TD -0.1278 Tw -[( consists of the seven characters )]TJ -/TT8 1 Tf -15.0108 0 TD -0.3067 Tw -(\(A B C\))Tj -/TT6 1 Tf -4.814 0 TD -0.1278 Tw -[( \(two of the)]TJ --39.8932 -1.2889 TD -0 Tw -(characters are spaces\).)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R -/TT18 22 0 R -/TT19 32 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -37 0 obj -<< -/Length 8276 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-8)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(The )Tj -/TT8 1 Tf -1.9327 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -(-name of an object is those characters output when the object is printed using )Tj -/TT8 1 Tf -34.4125 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -[(. Thus)]TJ --42.3462 -1.2889 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.7239 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0867 Tw -(-name of the list )Tj -/TT8 1 Tf -7.7217 0 TD -0.2078 Tw -(\(A B "C"\))Tj -/TT6 1 Tf -5.8164 0 TD -0.0867 Tw -[( is the 9 characters )]TJ -/TT8 1 Tf -8.7742 0 TD -0.2078 Tw -(\(A B "C"\))Tj -/TT6 1 Tf -5.8164 0 TD -0.0867 Tw -[( \(including the two spaces\).)]TJ --32.8531 -1.2889 TD -0 Tw -(The )Tj -/TT8 1 Tf -2.0749 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1511 Tw -(-name depends on what readtable is being used \(see Chapter 25\), since this determines)Tj --5.0754 -1.2889 TD -0.0444 Tw -[(where %s will be inserted. Many of the functions below allow either print names of )]TJ -/TT8 1 Tf -37.9601 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0444 Tw -(-names to)Tj --40.9606 -1.2889 TD -0.0433 Tw -(be used, as specified by )Tj -/TT8 1 Tf -10.8514 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( and )]TJ -/TT8 1 Tf -2.2795 0 TD -0 Tw -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( arguments. If )]TJ -/TT8 1 Tf -6.8413 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( is )]TJ -/TT8 1 Tf -1.3015 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[(, print names are used. Otherwise,)]TJ -/TT8 1 Tf --29.6752 -1.2889 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1378 Tw -(-names are used, computed with respect to the readtable )Tj -/TT8 1 Tf -26.4988 0 TD -0 Tw -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1378 Tw -[( \(or the current readtable, if)]TJ -/TT8 1 Tf --32.4998 -1.2889 TD -0 Tw -(RDTBL = NIL)Tj -/TT6 1 Tf -6.6011 0 TD -(\).)Tj --6.6011 -2.0667 TD -0.2256 Tw -(The print name of an integer depends on the setting of )Tj -/TT8 1 Tf -26.7785 0 TD -0 Tw -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -0.2256 Tw -[( \(see Chapter 25\). The functions)]TJ --29.779 -1.2889 TD -0.1389 Tw -(described in this section \()Tj -/TT8 1 Tf -11.7631 0 TD -0 Tw -(UNPACK)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.6389 0 TD -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1389 Tw -(, etc.\) define the print name of an integer as though the)Tj --19.6031 -1.2889 TD -0.0278 Tw -(radix was )Tj -/TT8 1 Tf -4.6264 0 TD -0 Tw -(10)Tj -/TT6 1 Tf -1.2002 0 TD -0.0278 Tw -(, so that)Tj -/TT8 1 Tf -3.5097 0 TD -0.0656 Tw -[( \(PACK \(UNPACK X9\)\))]TJ -/TT6 1 Tf -12.1986 0 TD -0.0278 Tw -[( will always be )]TJ -/TT8 1 Tf -6.9553 0 TD -0 Tw -(X9)Tj -/TT6 1 Tf -1.2002 0 TD -0.0278 Tw -[( \(and not )]TJ -/TT8 1 Tf -4.3133 0 TD -0 Tw -(X11)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(, if )Tj -/TT8 1 Tf -1.4296 0 TD -0 Tw -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0278 Tw -[( is set to )]TJ -/TT8 1 Tf -3.927 0 TD -0 Tw -(8)Tj -/TT6 1 Tf -0.6001 0 TD -(\).)Tj --44.7612 -1.2889 TD -0.1289 Tw -(However, integers will still be printed by )Tj -/TT8 1 Tf -19.3212 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.1289 Tw -[( using the current radix. The user can force these)]TJ --22.3217 -1.2889 TD -0.0578 Tw -(functions to use print names in the current radix by changing the setting of the variable )Tj -/TT8 1 Tf -39.7081 0 TD -0 Tw -(PRXFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0578 Tw -[( \(see)]TJ --43.3087 -1.2889 TD -0 Tw -(Chapter 25\). )Tj -/TT8 1 Tf -10 0 0 10 150 405.29 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 405.29 Tm -(CL:SYMBOL-NAME)Tj -/TT8 1 Tf -10 0 0 10 231.6133 405.29 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 237.6142 405.29 Tm -(SYM)Tj -/TT8 1 Tf -10 0 0 10 253.8169 405.29 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 433.44 405.29 Tm -([Common Lisp Function])Tj --28.8267 -1.8889 TD -0.1289 Tw -(Returns a string displaced to the )Tj -/TT12 1 Tf -10 0 0 10 312.0181 388.29 Tm -0 Tw -(SYM)Tj -/TT6 1 Tf -9 0 0 9 330.021 388.29 Tm -0.1289 Tw -[( print name. Strings returned from )]TJ -/TT8 1 Tf -16.6674 0 TD -0 Tw -(CL:SYMBOL-)Tj --34.003 -1.3278 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -( may be destructively modified without affecting )Tj -/TT12 1 Tf -21.9082 0 TD -(SYM)Tj -/TT6 1 Tf -1.8003 0 TD -(s print name.)Tj -/TT8 1 Tf -10 0 0 10 150 356.46 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 356.46 Tm -(NCHARS)Tj -/TT12 1 Tf -10 0 0 10 188.4062 356.46 Tm -( )Tj -9 0 0 9 194.4072 356.46 Tm -(X FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 253.8 356.46 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 356.46 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0744 Tw -(Returns the number of characters in the print name of )Tj -/TT12 1 Tf -24.7498 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -[(. If )]TJ -/TT12 1 Tf -1.8933 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0745 Tw -[( = )]TJ -/TT8 1 Tf -1.2548 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -(, the )Tj -/TT8 1 Tf -2.2861 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -(-name is)Tj --36.185 -1.2889 TD -0 Tw -(used. Examples:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(NCHARS ABC\) => 3)Tj -0 -1 TD -(\(NCHARS "ABC" T\) => 5)Tj --5.3333 -2.0667 TD -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -( works most efficiently on symbols and strings, but can be given any object. )Tj -/TT8 1 Tf -10 0 0 10 150 266.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 266.03 Tm -(NTHCHAR)Tj -/TT8 1 Tf -10 0 0 10 193.8071 266.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.8081 266.03 Tm -(X N FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 270 266.03 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 266.03 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT12 1 Tf -3.7882 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -(, if )Tj -/TT12 1 Tf -1.4962 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -[( is a tail of the list )]TJ -/TT8 1 Tf -8.399 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -(; otherwise )Tj -/TT8 1 Tf -5.2282 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -(. )Tj -/TT12 1 Tf -0.8722 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -[( is a tail of )]TJ -/TT8 1 Tf -5.0575 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -[( if it is )]TJ -/TT8 1 Tf -3.2005 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0611 Tw -[( to )]TJ -/TT8 1 Tf -1.4943 0 TD -0 Tw -(0)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -[( or more)]TJ -/TT8 1 Tf --36.1372 -1.2889 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(s of )Tj -/TT8 1 Tf -1.8027 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -1.1302 -1.6667 TD -(\(NTHCHAR ABC 2\) => B)Tj -0 -1 TD -(\(NTHCHAR 15.6 2\) => 5)Tj -T* -(\(NTHCHAR ABC%\(D -3 T\) => %%)Tj -T* -(\(NTHCHAR "ABC" 2\) => B)Tj -T* -(\(NTHCHAR "ABC" 2 T\) => A)Tj --5.3333 -1.8444 TD -(NTHCAR)Tj -/TT6 1 Tf -3.6006 0 TD -0.3978 Tw -[( and )]TJ -/TT8 1 Tf -2.9884 0 TD -0 Tw -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -0.3978 Tw -[( work much faster on objects that actually have an internal)]TJ --10.1896 -1.2889 TD -0.02 Tw -(representation of their print name, i.e., symbols and strings, than they do on numbers and)Tj -0 -1.2222 TD -0 Tw -(lists, since they dont have to simulate printing. )Tj -/TT8 1 Tf -10 0 0 10 150 128 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 128 Tm -(L-CASE)Tj -10 0 0 10 188.4 128 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 128 Tm -(X FLG)Tj -/TT8 1 Tf -10 0 0 10 221.4053 128 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 128 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0367 Tw -(Returns a lowercase version of )Tj -/TT12 1 Tf -13.9626 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[(. If )]TJ -/TT12 1 Tf -1.7799 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -[( is )]TJ -/TT8 1 Tf -1.2882 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[(, the first letter is capitalized. If )]TJ -/TT12 1 Tf -14.4647 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[( is a string,)]TJ --35.096 -1.2889 TD -0.0589 Tw -(the value of )Tj -/TT8 1 Tf -5.6308 0 TD -0 Tw -(L-CASE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -[( is also a string. If )]TJ -/TT12 1 Tf -8.6319 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0589 Tw -[( is a list, )]TJ -/TT8 1 Tf -4.0324 0 TD -0 Tw -(L-CASE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -[( returns a new list in which )]TJ -/TT8 1 Tf -12.6993 0 TD -0 Tw -(L-)Tj --38.7958 -1.2889 TD -(CASE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1267 Tw -[( is computed for each corresponding element and non-)]TJ -/TT8 1 Tf -25.2062 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1267 Tw -[( tail of the original list.)]TJ --29.4069 -1.2889 TD -0 Tw -(Examples:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(L-CASE FOO\) => foo)Tj -0 -1 TD -(\(L-CASE FOO T\) => Foo)Tj -T* -(\(L-CASE "FILE NOT FOUND" T\) => "File not found")Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -40 0 obj -<< -/Length 5753 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-9)Tj -/TT16 1 Tf -10 0 0 10 402.2 612 Tm -(SYMBOLS \(LITATOMS\))Tj -/TT8 1 Tf -9 0 0 9 174 570.14 Tm -(\(L-CASE \(JANUARY FEBRUARY \(MARCH "APRIL"\)\) T\) =>)Tj -2 -1 TD -(\(January February \(March "April"\)\))Tj -10 0 0 10 102 543.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 543.26 Tm -(U-CASE)Tj -10 0 0 10 140.4 543.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 146.401 543.26 Tm -(X)Tj -/F3 1 Tf -10 0 0 10 151.8018 543.26 Tm -( )Tj -/TT8 1 Tf -0.278 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 543.26 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(L-CASE)Tj -/TT6 1 Tf -3.6006 0 TD -(, but returns the uppercase version of )Tj -/TT12 1 Tf -16.7603 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 506.43 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 506.43 Tm -(U-CASEP)Tj -10 0 0 10 145.8 506.43 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 151.801 506.43 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 157.2018 506.43 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 506.43 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( contains no lowercase letters; )Tj -/TT8 1 Tf -13.6846 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT4 1 Tf -10 0 0 10 54 466.54 Tm -(Characters and Character Codes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 463.83 m -510.01 463.83 l -S -BT -/TT6 1 Tf -9 0 0 9 78 449.88 Tm -0.0467 Tw -[(Characters are represented 3 different ways in Medley. In Interlisp they are single-character symbols)]TJ -0 -1.2222 TD -0.21 Tw -[(or integer character codes. In Common Lisp they are instances of the )]TJ -/TT8 1 Tf -33.4771 0 TD -0 Tw -(CHARACTER)Tj -/TT6 1 Tf -5.4009 0 TD -0.21 Tw -[( datatype. In)]TJ --38.878 -1.2889 TD -0.0844 Tw -[(general Interlisp character functions dont accept Common Lisp characters and vice versa. The only)]TJ -0 -1.2222 TD -0.3778 Tw -(exceptions are Interlisp string-manipulation functions that accept string or symbol types as)Tj -T* -0 Tw -(arguments.)Tj -0 -2 TD -0.1 Tw -(You can convert between Interlisp and Common Lisp characaters by using the functions )Tj -/TT8 1 Tf -40.5275 0 TD -0 Tw -(CL:CODE-)Tj --40.5275 -1.2889 TD -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(CL:CHAR-CODE)Tj -/TT6 1 Tf -7.2012 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -( \(see below\).)Tj --17.3452 -2.0667 TD -0.0767 Tw -(Medley uses the 16-bit NS character set, described in the document Character Code Standard \(Xerox)Tj -0 -1.2222 TD -0.0467 Tw -[(System Integration Standards, XSIS 058404, April 1984\). Legal character codes range from 0 to 65535.)]TJ -T* -0.0511 Tw -(The NS \(Network Systems\) character encoding encompasses a much wider set of available characters)Tj -T* -0.2056 Tw -(than the 8-bit character standards \(such as ASCII\), including characters comprising many foreign)Tj -T* -0.2878 Tw -[(alphabets and special symbols. For instance, Medley supports the display and printing of the)]TJ -T* -0 Tw -(following:)Tj -/F1 1 Tf -10 0 0 10 78 285.8 Tm -()Tj -/TT6 1 Tf -9 0 0 9 90 285.8 Tm -(Le systme dinformation Medley est remarqueablement polyglotte)Tj -/F1 1 Tf -10 0 0 10 78 269.52 Tm -()Tj -/TT6 1 Tf -9 0 0 9 90 269.52 Tm -(Das Medley Kommunikationssystem bietet merkwrdige multilinguale Nutzmglichkeiten)Tj -/F1 1 Tf -10 0 0 10 78 253.24 Tm -()Tj -/TT6 1 Tf -9 0 0 9 90 253.24 Tm -(M )Tj -/TT19 1 Tf -1.1958 0 TD -<0085>Tj -/TT6 1 Tf -0.7129 0 TD -( )Tj -/TT20 1 Tf -0.25 0 TD -<0054>Tj -/TT6 1 Tf -0.7588 0 TD -( [w] )Tj -/TT19 1 Tf -2 0 TD -<008b>Tj -/TT6 1 Tf -1.042 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -<0099>Tj -/TT6 1 Tf -0.7129 0 TD -( v with Rwv: M )Tj -/TT19 1 Tf -7.1108 0 TD -<0085>Tj -/TT6 1 Tf -0.7129 0 TD -( [v])Tj --16.0794 -2 TD -0.1378 Tw -(These characters can be used in strings, symbol print names, symbolic files, or anywhere else 8-bit)Tj -0 -1.2222 TD -0.17 Tw -[(characters could be used. All of the standard string and print name functions \()]TJ -/TT8 1 Tf -37.2072 0 TD -0 Tw -(RPLSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.67 0 TD -(GNC)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj -/TT8 1 Tf --45.0783 -1.2889 TD -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -(, etc.\) accept symbols and strings containing NS characters. For example:)Tj -/TT19 1 Tf --2.3678 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(STRPOS "char""this is an 8-bit character string"\))Tj -1.0132 -1.2222 TD -(18)Tj -/TT19 1 Tf --2 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(STRPOS "char""celui-ci comports des characteres NS"\))Tj -1.0132 -1.2222 TD -(23)Tj -/TT6 1 Tf --7.3333 -1.8444 TD -0.0444 Tw -(In almost all cases, a program does not have to distinguish between NS characters or 8-bit characters.)Tj -0 -1.2222 TD -0 Tw -(The exception to this rule is the handling of input/output operations \(see Chapter 25\).)Tj -0 -2 TD -0.0944 Tw -(The function )Tj -/TT8 1 Tf -6.0697 0 TD -0 Tw -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0944 Tw -[( \(see below\) provides a simple way to create individual NS character codes.)]TJ --10.8705 -1.2889 TD -0.1711 Tw -(The VirtualKeyboards library module provides a set of virtual keyboards that allows keyboard or)Tj -0 -1.2222 TD -0 Tw -(mouse entry of NS characters.)Tj -/TT8 1 Tf -10 0 0 10 102 75.16 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 75.16 Tm -(PACKC)Tj -/TT8 1 Tf -10 0 0 10 135 75.16 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 141.001 75.16 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 146.4018 75.16 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 75.16 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -( except )Tj -/TT12 1 Tf -3.3452 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list of character codes. For example,)Tj -/TT8 1 Tf --3.1994 -1.6667 TD -(\(PACKC \(70 79 79\)\) => FOO)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 42 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R -/TT19 32 0 R -/TT20 43 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -45 0 obj -<< -/Length 7376 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-10)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -5.4 -4.374 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 568.26 Tm -(CHCON)Tj -/TT8 1 Tf -10 0 0 10 183 568.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 189.0009 568.26 Tm -(X FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 248.4106 568.26 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.26 Tm -([Function])Tj --35.4033 -1.8889 TD -(Like )Tj -/TT8 1 Tf -2.2292 0 TD -(UNPACK)Tj -/TT6 1 Tf -3.6006 0 TD -0.0422 Tw -(, but returns the print name o)Tj -/TT12 1 Tf -10 0 0 10 345.8275 551.26 Tm -0 Tw -(f)Tj -/TT6 1 Tf -9 0 0 9 351.8285 551.26 Tm -( )Tj -/TT12 1 Tf -0.2922 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -[( as a list of character codes. If )]TJ -/TT12 1 Tf -13.753 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -[( = )]TJ -/TT8 1 Tf -10 0 0 10 510.553 551.26 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 516.554 551.26 Tm -0.0422 Tw -(, the)Tj -/TT8 1 Tf --38.0616 -1.3278 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -(-name is used. For example:)Tj -/TT8 1 Tf -2.3328 -1.6667 TD -(\(CHCON FOO\) => \(70 79 79\))Tj -10 0 0 10 150 506.43 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 506.43 Tm -(DCHCON)Tj -/TT8 1 Tf -10 0 0 10 188.4 506.43 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 506.43 Tm -(X SCRATCHLIST FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 318.6212 506.43 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 506.43 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(DUNPACK)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 469.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 469.6 Tm -(NTHCHARCODE)Tj -/TT8 1 Tf -10 0 0 10 215.4 469.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 221.401 469.6 Tm -(X N FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 291.6124 469.6 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 469.6 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.2448 0 TD -(NTHCHAR)Tj -/TT6 1 Tf -4.2007 0 TD -0.0578 Tw -(, but returns the character code of the )Tj -/TT12 1 Tf -17.1966 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0578 Tw -(th character of the print name of )Tj -/TT12 1 Tf -14.9118 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --39.754 -1.2889 TD -(If )Tj -/TT12 1 Tf -0.9977 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[( is negative, it is interpreted as a count backwards from the end of )]TJ -/TT12 1 Tf -30.4649 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[(. If the absolute)]TJ --32.6628 -1.2889 TD -0.3267 Tw -(value of )Tj -/TT12 1 Tf -4.4702 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.3267 Tw -[( is greater than the number of characters in )]TJ -/TT12 1 Tf -22.1485 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.3267 Tw -(, or )Tj -/TT8 1 Tf -2.3442 0 TD -0 Tw -(0)Tj -/TT6 1 Tf -0.6001 0 TD -0.3267 Tw -(, then the value of)Tj -/TT8 1 Tf --30.7633 -1.2889 TD -0 Tw -(NTHCHARCODE)Tj -/TT6 1 Tf -6.6011 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --9.6162 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, then the )Tj -/TT8 1 Tf -4.3564 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -(-name of )Tj -/TT12 1 Tf -4.1558 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is used, computed with respect to the readtable.)Tj -/TT8 1 Tf -10 0 0 10 150 379.37 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 379.37 Tm -(CHCON1)Tj -/TT8 1 Tf -10 0 0 10 188.4 379.37 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 194.401 379.37 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 199.8018 379.37 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 379.37 Tm -([Function])Tj --35.4033 -1.8833 TD -0.3089 Tw -(Returns the character code of the first character of the print name of )Tj -/TT12 1 Tf -34.1586 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.3089 Tw -[(; equal to)]TJ -/TT8 1 Tf --34.7587 -1.2889 TD -0 Tw -(\(NTHCHARCODE X 1\))Tj -/TT6 1 Tf -10.2017 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 330.94 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 330.94 Tm -(CHARACTER)Tj -/TT8 1 Tf -10 0 0 10 204.6 330.94 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 210.601 330.94 Tm -(N)Tj -/TT8 1 Tf -10 0 0 10 216.0018 330.94 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 330.94 Tm -([Function])Tj -/TT12 1 Tf --35.4033 -1.8833 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -[( is a character code. Returns the symbol having the corresponding single character as its)]TJ --0.6001 -1.2889 TD -0 Tw -(print name.)Tj -/TT8 1 Tf -5.3333 -1.6 TD -( \(CHARACTER 70\) => F)Tj -10 0 0 10 150 270.11 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 270.11 Tm -(FCHARACTER)Tj -/TT8 1 Tf -10 0 0 10 210 270.11 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 216.0009 270.11 Tm -(N)Tj -/TT8 1 Tf -10 0 0 10 221.4018 270.11 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 270.11 Tm -([Function])Tj --35.4033 -1.8833 TD -(Fast version of )Tj -/TT8 1 Tf -6.7168 0 TD -(CHARACTER)Tj -/TT6 1 Tf -5.4009 0 TD -( that compiles open.)Tj --17.451 -2.0667 TD -0.0044 Tw -(The following function makes it possible to gain the efficiency that comes from dealinig with character)Tj -0 -1.2222 TD -0 Tw -(codes without losing the symbolic advantages of character symbols.)Tj -/TT8 1 Tf -10 0 0 10 150 204.28 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 204.28 Tm -(CHARCODE)Tj -/TT8 1 Tf -10 0 0 10 199.2 204.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 205.201 204.28 Tm -(CHAR)Tj -/TT8 1 Tf -10 0 0 10 226.8045 204.28 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 204.28 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1178 Tw -(Returns the character code specified by )Tj -/TT12 1 Tf -18.2775 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1178 Tw -[( \(unevaluated\). If )]TJ -/TT12 1 Tf -8.5961 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1178 Tw -[( is a one-character)]TJ --31.6744 -1.2889 TD -0.02 Tw -[(symbol or string, the corresponding character code is simply returned. Thus, )]TJ -/TT8 1 Tf -34.594 0 TD -0 Tw -(\(CHARCODE)Tj --34.594 -1.2889 TD -(A\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0006 Tc -0.0016 Tw -( is )Tj -/TT8 1 Tf -1.2193 0 TD -0 Tc -0 Tw -(65)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5022 0 TD -0.0044 Tw -(\(CHARCODE 0\))Tj -/TT6 1 Tf -7.2056 0 TD -0.0006 Tc -0.0016 Tw -( is )Tj -/TT8 1 Tf -1.2193 0 TD -0 Tc -0 Tw -(48)Tj -/TT6 1 Tf -1.2002 0 TD -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT12 1 Tf -1.6766 0 TD -0 Tc -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0022 Tw -( is a multi-character symbol or string, it specifies a)Tj --17.824 -1.2889 TD -0.2689 Tw -[(character code as described below. If )]TJ -/TT12 1 Tf -18.6103 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.2689 Tw -[( is )]TJ -/TT8 1 Tf -1.7526 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7689 0 TD -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2689 Tw -[( simply returns )]TJ -/TT8 1 Tf -7.8067 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --39.7402 -1.2889 TD -0.0478 Tw -(Finally, if )Tj -/TT12 1 Tf -4.537 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0478 Tw -[( is a list structure, the value is a copy of )]TJ -/TT12 1 Tf -18.1335 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0478 Tw -[( with all the leaves replaced)]TJ --27.4712 -1.2889 TD -(by the corresponding character codes. For instance, )Tj -/TT8 1 Tf -23.226 0 TD -0.1144 Tw -(\(CHARCODE \(A \(B C\)\)\) => \(65)Tj --23.226 -1.2889 TD -0 Tw -(\(66 67\)\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --4.8008 -2.0667 TD -0.0378 Tw -(If a character is specified by a multi-character symbol or string, )Tj -/TT8 1 Tf -28.4873 0 TD -0 Tw -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0378 Tw -[( interprets it as)]TJ --33.2881 -1.2889 TD -0 Tw -(follows:)Tj -/TT8 1 Tf -0 -2 TD -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(SPACE)Tj -/TT6 1 Tf -3.0005 0 TD -(, etc.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -48 0 obj -<< -/Length 5202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-11)Tj -/TT16 1 Tf -10 0 0 10 402.2 612 Tm -(SYMBOLS \(LITATOMS\))Tj -/TT6 1 Tf -9 0 0 9 150 569.54 Tm -0.1233 Tw -(The variable )Tj -/TT8 1 Tf -5.9947 0 TD -0 Tw -(CHARACTERNAMES)Tj -/TT6 1 Tf -8.4014 0 TD -0.1233 Tw -[( contains an association list mapping special)]TJ --14.3961 -1.2889 TD -0.1189 Tw -[(symbols to character codes. Among the characters defined this way are CR)]TJ -0 -1.2278 TD -0 Tw -(\()Tj -/TT8 1 Tf -10 0 0 10 152.9971 546.89 Tm -(13)Tj -/TT6 1 Tf -9 0 0 9 164.999 546.89 Tm -0.0944 Tw -(\), LF \(10\), SPACE or SP \(32\), ESCAPE or ESC \(27\), BELL \(7\), BS \(8\), TAB)Tj --1.6666 -1.3278 TD -0.1489 Tw -[(\(9\), NULL \(0\), and DEL \(127\). The symbol EOL maps into the appropriate)]TJ -0 -1.2222 TD -0.2111 Tw -(end-of-line character code in the different Interlisp implementations \(31 in)Tj -T* -0 Tw -(Interlisp-10, 13 in Interlisp-D, 10 in Interlisp-VAX\). Examples:)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(\(CHARCODE SPACE\) => 32)Tj -0 -1 TD -(\(CHARCODE CR\) => 13)Tj --5.3333 -1.85 TD -(CHARSET)Tj -10 0 0 10 163.8061 472.89 Tm -(, )Tj -9 0 0 9 175.8081 472.89 Tm -(CHARNUM)Tj -10 0 0 10 213.6142 472.89 Tm -(, )Tj -9 0 0 9 225.6162 472.89 Tm -(CHARSET-CHARNUM)Tj -/TT6 1 Tf --8.4018 -2.1056 TD -0.2611 Tw -(If the character specification is a symbol or string of the form )Tj -/TT8 1 Tf -30.2129 0 TD -0 Tw -(CHARSET)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj -/TT8 1 Tf --34.4136 -1.2889 TD -(CHARNUM)Tj -/TT6 1 Tf -4.2007 0 TD -0.0022 Tw -(, or )Tj -/TT8 1 Tf -1.6954 0 TD -0 Tw -(CHARSET-CHARNUM)Tj -/TT6 1 Tf -9.0015 0 TD -0.0022 Tw -(, the character code for the character number)Tj -/TT8 1 Tf --14.8975 -1.2889 TD -0 Tw -(CHARNUM)Tj -/TT6 1 Tf -4.2007 0 TD -( in the character set )Tj -/TT8 1 Tf -8.8042 0 TD -(CHARSET)Tj -/TT6 1 Tf -4.2007 0 TD -( is returned.)Tj --17.2056 -2.0667 TD -0.0322 Tw -(The 16-bit NS character encoding is divided into a large number of character)Tj -/F1 1 Tf -10 0 0 10 150 399.86 Tm -0 Tw -(s)Tj -/TT6 1 Tf -9 0 0 9 154.63 399.86 Tm -0.1389 Tw -[(ets. Each 16-bit character can be decoded into a character set \(an integer)]TJ --0.5144 -1.2222 TD -0.0344 Tw -(from 0 to 254 inclusive\) and a character number \(also an integer from 0 to 254)Tj -T* -0.0489 Tw -(inclusive\). )Tj -/TT8 1 Tf -5.1505 0 TD -0 Tw -(CHARSET)Tj -/TT6 1 Tf -4.2007 0 TD -0.0489 Tw -[( is either an octal number, or a symbol in the association)]TJ --9.3512 -1.2889 TD -0 Tw -(list )Tj -/TT8 1 Tf -1.9865 0 TD -(CHARACTERSETNAMES)Tj -/TT6 1 Tf -10.2017 0 TD -0.4044 Tw -[( \(which defines the character sets for )]TJ -/TT8 1 Tf -19.2247 0 TD -0 Tw -(GREEK)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj -/TT8 1 Tf --34.4133 -1.2889 TD -(CYRILLIC)Tj -/TT6 1 Tf -4.8008 0 TD -(, etc.\).)Tj -/TT8 1 Tf --4.8008 -2.0667 TD -(CHARNUM)Tj -/TT6 1 Tf -4.2007 0 TD -0.1633 Tw -[( is either an octal number, a single-character symbol, or a symbol)]TJ --4.2007 -1.2889 TD -0.2644 Tw -(from the association list )Tj -/TT8 1 Tf -11.8073 0 TD -0 Tw -(CHARACTERNAMES)Tj -/TT6 1 Tf -8.4014 0 TD -0.2644 Tw -[(. If )]TJ -/TT8 1 Tf -2.4633 0 TD -0 Tw -(CHARNUM)Tj -/TT6 1 Tf -4.2007 0 TD -0.2644 Tw -[( is a single-digit)]TJ --26.8726 -1.2889 TD -0.0511 Tw -(number, it is interpreted as the character 2, rather than as the octal number)Tj -0 -1.2222 TD -0 Tw -(2. Examples:)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(\(CHARCODE 12,6\) => 2566)Tj -0 -1 TD -(\(CHARCODE 12,SPACE\) => 2592)Tj -T* -(\(CHARCODE GREEK,A\) => 9793)Tj -/TT19 1 Tf --5.3333 -2 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(CHARSPEC \(control chars\))Tj -/TT6 1 Tf -2.0636 -2.0667 TD -0.0911 Tw -(If the character specification is a symbol or string of one of the forms above,)Tj -0 -1.2222 TD -0.0267 Tw -(preceded by the character )Tj -/TT19 1 Tf -11.7668 0 TD -0 Tw -<0042>Tj -/TT6 1 Tf -0.603 0 TD -0.0267 Tw -(, this indicates a control character, derived from)Tj --12.3699 -1.2222 TD -0.1567 Tw -(the normal character code by clearing the seventh bit of the character code)Tj -T* -0 Tw -(\(normally set\). Examples:)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(\(CHARCODE )Tj -/TT19 1 Tf -6.001 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(A\) => 1)Tj --6.604 -1 TD -(\(CHARCODE )Tj -/TT19 1 Tf -6.001 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(GREEK,A\) => 9729)Tj --11.9373 -2.2089 TD -(#CHARSPEC)Tj -/F1 1 Tf -10 0 0 10 174.6079 156.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 177.3879 156.58 Tm -(\(meta chars\))Tj -/TT6 1 Tf --3.0431 -2.0667 TD -0.0911 Tw -(If the character specification is a symbol or string of one of the forms above,)Tj -0 -1.2222 TD -0.0033 Tw -(preceded by the charactger )Tj -/TT8 1 Tf -12.2296 0 TD -0 Tw -(#)Tj -/TT6 1 Tf -0.6001 0 TD -0.0033 Tw -(, this indicates a meta character, derived from the)Tj --12.8297 -1.2889 TD -0.0056 Tw -(normal character code by setting the eighth bit of the character code \(normally)Tj -0 -1.2222 TD -0 Tw -(cleared\). )Tj -/TT19 1 Tf -4.0317 0 TD -<0042>Tj -/TT6 1 Tf -0.603 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(#)Tj -/TT6 1 Tf -0.6001 0 TD -( can both be set at once. Examples:)Tj -/TT8 1 Tf --4.7611 -1.6667 TD -(\(CHARCODE #A\) => 193)Tj -0 -1 TD -(\(CHARCODE #)Tj -/TT19 1 Tf -6.6011 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(GREEK,A\) => 9857)Tj -/TT6 1 Tf --12.5374 -1.8444 TD -(A )Tj -/TT8 1 Tf -1.3556 0 TD -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3278 Tw -[( form can be used wherever a structure of character codes would be)]TJ --6.1564 -1.2889 TD -0 Tw -(appropriate. For example:)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT16 18 0 R -/TT19 32 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -53 0 obj -<< -/Length 4365 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-12)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 570.14 Tm -(\(FMEMB \(NTHCHARCODE X 1\)\(CHARCODE \(CR LF SPACE )Tj -/TT19 1 Tf -28.2046 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(A\)\)\))Tj --28.8076 -1 TD -(\(EQ \(READCCODE FOO\)\(CHARCODE GREEK,A\)\))Tj -/TT6 1 Tf --5.3333 -2.0667 TD -0.4178 Tw -(There is a macro for )Tj -/TT8 1 Tf -11.1431 0 TD -0 Tw -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.4178 Tw -[( which causes the character-code structure to be)]TJ --15.9439 -1.2889 TD -0.1589 Tw -[(constructed at compile-time. Thus, the compiled code for these examples is exactly as)]TJ -0 -1.2222 TD -0 Tw -(efficient as the less readable:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(FMEMB \(NTHCHARCODE X 1\)\(QUOTE \(13 10 32 1\)\)\))Tj -0 -1 TD -(\(EQ \(READCCODE FOO\)9793\))Tj -/TT6 1 Tf --8 -2.0722 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(CL:CHAR-CODE)Tj -/TT8 1 Tf -10 0 0 10 217.8076 477.89 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 223.8086 477.89 Tm -(CHAR )Tj -/TT6 1 Tf -3.0005 0 TD -[(\))-19958.9([Common Lisp Function])]TJ --8.5348 -1.8833 TD -0.0389 Tw -(Returns the Interlisp character code of )Tj -/TT12 1 Tf -17.3471 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0389 Tw -[(. Use to convert a Common Lisp character to)]TJ --19.7475 -1.2889 TD -0 Tw -(an Interlisp character code.)Tj --2.6667 -2.0056 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(CL:CODE-CHAR)Tj -/TT8 1 Tf -10 0 0 10 217.8076 431.29 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 223.8086 431.29 Tm -(N )Tj -/TT6 1 Tf -1.2002 0 TD -[(\))-21759.2([Common Lisp Function])]TJ --6.7345 -1.8833 TD -0.2156 Tw -(Returns a character with the given non-negative integer )Tj -/TT12 1 Tf -26.5897 0 TD -0 Tw -(N )Tj -/TT6 1 Tf -1.718 0 TD -0.2156 Tw -[(code. Returns )]TJ -/TT8 1 Tf -7.2033 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2156 Tw -[( if no)]TJ --37.3113 -1.2889 TD -0.0267 Tw -(character is possible with )Tj -/TT12 1 Tf -11.5285 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[(. Use to convert an Interlisp character code to a Common Lisp)]TJ --12.1286 -1.2889 TD -0 Tw -(character.)Tj --2.6667 -2.1422 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(SELCHARQ)Tj -/TT8 1 Tf -10 0 0 10 196.2 371.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 202.201 371.86 Tm -(E CLAUSE)Tj -4.7999 -0.2222 TD -(1)Tj -0.6 0.2222 TD -(... CLAUSE)Tj -6 -0.2222 TD -(N)Tj -10 0 0 10 310.2 371.86 Tm -( )Tj -9 0 0 9 316.201 371.86 Tm -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 357.0042 371.86 Tm -[( )-12329.6([Function])]TJ -/TT6 1 Tf -9 0 0 9 174 353.26 Tm -0.0189 Tw -(Lets you branch one of several ways, based on the character code )Tj -/TT12 1 Tf -29.2369 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.0189 Tw -[(. The first item in each)]TJ -/TT12 1 Tf --29.837 -1.2889 TD -0 Tw -(CLAUSE)Tj -3.6 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0089 Tw -[( is a character code or list of character codes, given in the form )]TJ -/TT8 1 Tf -27.8442 0 TD -0 Tw -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0089 Tw -[( would)]TJ --36.845 -1.5111 TD -0.0867 Tw -[(accept. If the value of )]TJ -/TT12 1 Tf -10.438 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( is a character code or )]TJ -/TT8 1 Tf -10.3203 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -(, and it is )Tj -/TT8 1 Tf -4.6216 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0867 Tw -[( or )]TJ -/TT8 1 Tf -1.6143 0 TD -0 Tw -(MEMB)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( to the result of)]TJ --32.9951 -1.2889 TD -0 Tw -(applying )Tj -/TT8 1 Tf -4.2485 0 TD -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -0.02 Tw -[( to the first element of a clause, the remaining forms of that clause are)]TJ --9.0493 -1.2889 TD -0 Tw -(evaluated. Otherwise, the default is evaluated.)Tj -0 -2 TD -(Thus)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(SELCHARQ \(BIN FOO\)\))Tj -2.6667 -1 TD -(\(\(SPACE TAB\)\(FUM\)\))Tj -T* -(\(\()Tj -/TT19 1 Tf -1.2002 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(D NIL\)\(BAR\)\))Tj --1.8032 -1 TD -(\(a \(BAZ\)\))Tj -T* -(\(ZIP\)\)\))Tj -/TT6 1 Tf --8 -1.8444 TD -(is exactly equivalent to)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(SELECTQ \(BIN FOO\)\))Tj -2.6667 -1 TD -(\(\(32 9\)\(FUM\)\))Tj -T* -(\(\(4 NIL\)\(BAR\)\))Tj -T* -(\(97 \(BAZ\)\))Tj -T* -(\(ZIP\)\)\))Tj -/TT6 1 Tf --8 -1.8444 TD -(If )Tj -/TT8 1 Tf -0.9199 0 TD -(\(BIN FOO\))Tj -/TT6 1 Tf -5.4009 0 TD -( returned )Tj -/TT8 1 Tf -4.3701 0 TD -(32)Tj -/TT6 1 Tf -1.2002 0 TD -( \(the )Tj -/TT8 1 Tf -2.2202 0 TD -(SPACE)Tj -/TT6 1 Tf -3.0005 0 TD -( character\), the function )Tj -/TT8 1 Tf -10.7422 0 TD -(FUM)Tj -/TT6 1 Tf -1.8003 0 TD -( would be called.)Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT16 18 0 R -/TT19 32 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -56 0 obj -<< -/Length 70 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-13)Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -59 0 obj -<< -/Length 202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(2-14)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -12 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -61 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -62 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -63 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -64 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -65 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -66 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -67 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -68 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -69 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -70 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBDPBO+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 71 0 R ->> -endobj -71 0 obj -<< -/Filter /FlateDecode -/Length 20477 -/Length1 39872 ->> -stream -HW}tovgvfwv - `@(XR81 r(ݷّffɆIb -ՔҔRj)Bȇآ"-P)@z&@?ޙ߻ケf[G ;uТ@38nb(h -; 2*gy QOe{ -h 2"t]_X; yS*4c XaX8b&׺K* },aUNkZ,̝u驈G$ׇQV"@U@U"tڄE`r4~1w@J#^x9#Qep8jm+SH} -a>) @o l,}?G9`,n̄H3l|xw@F<LVL=&gb;k ˓{LBZ&&nɥRq1$܀G=&QJDs'{LR'I>7}12# O_zI̸2XIWw.c|=w>~0{13j'pމE2՚3 J!34Xe6.6.۸ƕ6'm\milkm|zl:`6n9wNI豟3↪Ţ_"j4aҟJ5 :?hŐL5FCjT5+ϝ-T0|7J,)+pSJhMnKU<>*ʣ -)h #B1nٵE$4SkWLg6*VOmP-B M6!.P"m Ń.P4 ?x8Α4Ei*2kM![$~/ɝRU)Ck̄LpFkI,ݞrR0u0h?S9*Hܬ0&Qf>(«>&&؍{}: i4$HQ/2v@Nwd5Өyb_hF"JPņzuZ: VÇiDYM>0oE; -̈bvk2ւO;ho-Bk,Yf˗c4Kď{ӲeɉLG8.-FI >%gP;^'{,h`;1p̬20wmm#ey}1x`RF (XiђQPi׉$|j] 4-%`A$!PP)ԡ2VP|J0MRF0;$Et{?ǝ9AoUg.\0YhKJwXEٽMclben+TIrG#cE&K^n%i0˰Z[-h4zRll‚C:~/1 sQ@FOV;uFT#\+| x`ku88,V`~&/茍AFz|p{e.)_L3B%wd/v!dm]_<'|]kC\&UP+_?wg`BƬO^P}ҡ#>)Q X>PK(ċ$F_shH-\,^7}`Wv(Y*t *ɮlU $Cl=3:B@FqEyP5{FҞ{ls8^seske]ħ34}:{=9.]])V -޻vEi:~_)'],;젩2m\ :D<{Yס39MVfdt8!Υr_Mߞ/7'jH|XۥrGVY᪖D,WEG\{m;H`oy%4Cg,Yi:6NO|h]Ȩ$} Цb:DqC¥j(݊_ PKSe~S@F5TLt 2~;@e¼?$]Í8!c+]k$8sQ/O c 1=̷UѨǾd]I+fGv. -aA\ pl]Mq2@'8n7yӌoQ7/>t qĸ> )Gǘ`j0d:zdԬ<#'6yZv -:Ɠ$A]XuΉ̷q>,?+HJ^'vo̫xْڹs@@_3K^7?& @=OMm=$eG J U08|17tmxq92V>Rzv.3jZlEۖ=V,>u\W8 -i=fPoE/uU}DÀ BMkI #:V}%7AK 3BXה"\{kνb-7ٍ In'F9CHMOp -:F]#ʻ=(0xssѨ3`T$#d!SiF[?-HƳ-5VGrr)mؐ,E@N1 irmFdTNu.mÝа6#,QUwv'0s<&$#_31 OX wJXxB `/w}膿)8 2\CX<@ -2'5D4"AAgEiK.K*%BmIs҇Jl:>EN{P+ 4@7-UFGߢ. =C}&eƲl*+b3=yճWX kcow!!;NȮNȇs7')'?ʟKsE^7|;wA0?OO)#̣_|_q5MLN7t L$X3w1StN-D88Z,Ĩƙ(*Ԍ0a;GJ3jnV ^&l5+#ep^dMYn,Loя\4tÊQl$ )nI1)؈Ds|ȁ ;EgOkرyrűDjFol2l 9hqtndzۖܣ=3nxrI -ƿ^wWRf[ԅZ&wP-BZurEI ֯%K(PQ4-0!ܥ,e~o𮴌fRQ9i*SZRFu|p8|5jѵd~/%"l`=ƣ=oz4 -FIu]] 1~]STU"$h#akec{sNR sA6VcK!۲Ǥ:'(YMQr LIF'92Gv+M[8j:شNLH0 zwC(,Y} -kݝBk7ȰÒoo[m]խ/?,y06oe[&Vl*kZgz8怗.E%U`g6[$],iVM\z>z XvBO2 R"pVf:\\'B/Z1ۭ]&[,SlPX/ s~پs"2 @Ԣk'daJv;SO-¬W-K5ֺlί2sBOg7/,Y.]_p)aPW̢4()=6u W"N) 挜KtCd>/#qod~>r]QL-慌(9IqyKOo'K`/TgӷgkSu?ږغ`9dmƺ"J|_Ҩk8Q+ؑr{K1)7?g$lBj/.zt$vn~Ʀ%G~@-5T& "/Px،OesgG:7竂IЦE.WA41 N-vqFFK}U[ka^ifmvȲ:6IKG?.\|Ev"hPJ0r2m:dWz|%,6m^ē@q1Q7*X'v ZZep$$#YC+R"l4+ָD/`Y0t[Ak-,k \V+"Vr>.(oZbe -3aq4/ݴuL2hb gY]T7vqQ YY:2;l,|e1x,,^p߳z&ظ@ь)TgJ~%l~4sG@-| lyD-iXfA5LFoJa\jtl\Js؟ ɪ~u%Em!t\Yq.E%,-*?J$]J~ƣ졖.ru>q)Fe1J9Ky\ʱ)lkge@b< سb"ulp4*#XE?yop|box>wV -4Z@cK}طg\=fY-cDwsA5L$y/J#ro{YnŰxY}V;Өòd $Y_QS8>{{Bcr J}Jn1 pu3dePjtL]:qmz#km5~/ Jܫ`iyhZ OLt^xz`""*_ VRE:TЗn=4t͠{nakp3~?wq/x -O7[8)|_Nj$HOUE>K#v ϑdD49E"%I.yOJ> 7H+rfKܓ\}&r ^5@Q]W{{Bjٷˢ`"" ? -Q;@0b%DԦթ6Q5tԉI[@Q13ΘƤ1v?^Q;=?|ߏ}>ab NQglD].VԐU_Ww[QC_T=^PT/C hin-QK|_M&kӵZVCyTܑ@|*HX8+ب&U+&⋨Tذ '6#`bGs*\ apqY-A-űh/r1E.bV(}>“" -cԍyK'0Q7IⰅ[UDNP-'Zvj'^쀊bq#! E8+(XՖ:2)MQcSkeKݎűYXv?yȦO5B;q#o;ăEO3`CwGs;"!!l3S\uܺ @^ؐt$= .̂r2s~xvy:\;ޤφ̳NqD0$- ݖAC -oIoK`4%7WNGbξts""&=Ѥ&{aa^(2Z@IsD 91մzºtU z4XR^WF.E$I$QO-7Sx8 kjS҂{m z@K` ,l~`^E}k3J[2;#GMeF]fu5IKHՍ@>^0'ķ ,2w K\y9w8{!CEBg͵hh퉿uDJgM%Fۊ@IYxxEǣB4SIiSZv"&ɺWS*V,Dzy[A$>w8%HpY}gIw╾F1O&ٰ/&oŹ+K$S9Alw /g,/NɨwSDrt ɔ;6p0*3'H:0zut]]gY's207Y6fODWiIˏnXM.V1o#oz[ߋ3vP7U Dv6!Ilmٝ3M&H<ܐkRS#M6mbc[hܖg&;|ع(}7I'?mUhƃ:67rj $CŒmɃqGr +OׄkIBB:]H Ȩ&Ad dUx,!*` Xe5u`2}6p$Q&%DdZY$79Y2THy!5URk FZNED!=y&"\#&ʨ1zh2H'tui9*@Vdvazgh?=OB%(IJ@yRdKfVܬ\T!;QJ҄UPP)digi25` ٚ9Y*m\bcRmPds"E6 q *)xf q(3ls$ǂxgBXӢ`d}kyF5hň0ΐǁ2e_(BVeUy퉍/ᶀPg-7d%*+e]j ;򆾶IgGz mQ3!uxG5\~ߜdo ,Ay%|B7O ]ǯ7~|o/,_2 `Al -2;UH!bԇ1Ȭ;thG.4~f;uJRN{sn2% ᎂ_>QTw6\sdG(%$ L&A[Jk' ޑ9j&2-AD8c;Crf2iu"Ոbmo\ZLۿ}wm_S'h7,hb طjwjЗn]WXpiƔвKݙ[${,qW:kZvz̡gUtT ޞ|X]撶3 5*{$fR6 @ܪ+Ol-mmU"ݓ7p|kGA0s9{_+tjZQfHѾʦP$gms4DWxU rڭV47Ήx9=?W/jN"sky. Oxw^qDawͷ4-lnXx/ OwJO]Sŝ=7SngvEK7o&7g|Ĵ -ȏ "_WT7u7Y2݅3P%$(T.~B#Ф"hdMa,OMbj"*=!fJLSw@ڥE//;rnz4*6 gwMVh3Ry,ddLie>ATAT!ljj>*C=&X -p'5-~ -m j㮢: g-TCE$\j"r*:RNj-TWAB}l"[Hi&-ATX}EղwX=5lj&WP}DF- {s%5z|,%EP{j{PH^M8BA]Aq3&"-QYpJQ襴ϒv镔F .ʭlJc)i>4v/>t}2Zݙ<D4 3A=%e]#*Wɠ'I(1 }U-!]+VUg jKRb eEC%p;I|iXDG$ "&< ł01O4ފ,YXɍ'T)'- PlYϿ@ż7I>OSL|A ƥ oB1%_jA=ӂXT&Aq wS7u#y_ -P E ,A fڍva-0;=jg@uCW7&Py'8 n6Ƣ;0c̽ /(ͪVikXrcF>B93g#0H39%S+J,!Q0Hֶ6~wRS#=c95Yf`1%oHa/WrNb8/ZGd1سN15O,ieZ@p[B8=UVC1E& .YU_ըO`z_8s!盒9l zCAsϞۼ6_ Jj)7 4,,b. -#"ٜp/ܺKMg?wcC^Vi, Ycl-}N Ghjz>۰EB"l.&Z:|=n'կΌW¸|Y`JeX[*S KŁz8U(6,,0Ltn-oЇ=EXY0pɺ5z^a,$Τo"vNW%>$#egh6;yZ>U^f[ FA&Α,Z<4,Z%, -f!-Qaj8Kg}T~hGs WN/\ϚW‡oMyeBxM|Ht3Y(5g߼9vZ!`&ǻ \J?͖тSWB=8 ZTђN3gVтO,j"@ L+9YLs^g-ƶeZha ˸+ȫ{m\!}a@^+6Z#-<̓%g]1F |.<,Hte؂ 5s,M߻8N!ܷ]N bעmPh] 0Nb!uBkrEx -8WN-%M!_η4֚M|;- -,[x]R8c:G]a6f C}Cdz0ڔ5Wc}Qfᦣ3І1MGl+ڴG4(eQ,vx'Pa{`kZ2/[ۆ_=yXнKB!m;ߺ1Z .BANߐѽw&6?eu^r`본& 79B#+M&G{EnY!(Sp߄s$0pb-,~/oЀ7- \cc,8{MoX-_߲W{R eDS>W|U9<%'ʿh3>@`waQC0HFmYp1.DI"?E 13?}{ot3Nӓszv0 /Kd)lbc<ճl=Ķ61v߁?_೸Λ&G9oKRoISiT,M*ERIP:"\6 r%;)rH~]^/{? M)GJ2EyIU+wU+GYs_%SeUW /YV3LuRrǯۂCV%&#Lh/ -D!^TQv BH/&bDT hItAذw1hgHa:V(1 bP@30p@ TF 0"u' ?*A^CpuϋH#7c0(b#6u Eכ!\ -'g~$#+kQ?D"a -p0⪅(!}>s &x;?A}oPq'j7smog1v=tM6u2GUޝ =A.U۽:+JY[n]E+*bXtΛ=|ܭ_n`TLΣoYY -˱1|:P<⸤Ss%˯%Ż ~r|iVk?QW\3LyiƅgM=s衴){kgsܨujWU[vb,Z/LZ/施;):1hS%->/*-ՋnμJ#Rk[H~KԹ y%Idyڐk5W'Vykj!KCIn%;ey [PxKUrD嫆F+V_8,˸vEfu?W|9lC `iUmґƁ[MXN,:g]YI:鋵q_Nv}_,gp_p;ڌ0O&Q2B,{˝|NPNw[R}b$hzwcOboc0ReʽS~8{{ I>:_] C>V} @6<oMgy\*7ey͆W5ZXJX oC3Z1cp ס:*j<#I_GII!'d(N2䒱dD&"222M*ڪBRK|@~CV&üJnv5%T3/i4} 3dJ0I4ǜE4:ܱ.*F"7Pmt撇Q=E?ez~Eovzv#a1όdQbYxg((!t[CSiQI"K2cz)‚}P>N&j -uJ1yQ(у{8^ 9˃-vr EuC&HeJ虍+r#/뮉C+裺ߐRKAt(]$0]9J$F !G8>R `Sdت}4)Mpj]TkfT48|?p8yI},I񤄳sMv85?QrA؜b;':*ZhF{=ud=B$Pc[5æ[jZ c#Ċ BHLpi^͛j#S81ID , {Zr C^8^"tNaњ p8'8}{fwZ,Zof\+L:FLp8Pp l>py]z1`z4؂?,)O<I -C%tE6Z\葚:Ԙt+S緛Rv YCrca24#p okP>Z:f -/0ʖ|,\_&Y kĕCٮ;.όЖZi%)d3>EaٖGO{c)%˲%cl?BҴCPXJ{hBB)=/=@B)L²_;L{)/Oq9{)6s|pFN]@g&~;7 GpZ||Aal.w.+ ‚/>}#N]}q~Oܧ侾0 ڳ|_dv:!1Hsl٤XqWN~y5inv756Pt~WZ1׷©bn- ^%lǾl"#ƑT0Lg a/,m-<&c&.d)cT -'=`[Xv,(pGCT-bOE}K^s.N3YpQ1#GL^".yls޶3As(Mha7lyG!ީSSo bݪ مɩ 7Ycv]>/D6vgN]KN"\6DQ<ͤe#1o8>hRLO|-t]Rn<>b}tju{Z -<:iIX,SU#w6M3U}-F1M2yQÄ놝z5+3*$Q'..-tCIqQf~m|k_p檩x߼Uw>o+rߕ>??ܳs&s~dW&s-sKo 'o>^>p>aӼnwX2:2,cviX[urRjJ[dyu s"^~摿r~kSbO=WmJzݘ:(h^ĭW-R=x۲ܺI=V~w]3Vm,_\bZ5<[]T|BRWł-S/jϟ >ł] -JqѪӸ괥`C^ԁLNb R 4ݪ8 -Jo }Jc_roSP7.YLr$ȠÐFj`O'c>_{`=x6[t> ZN%:x W/E3xρgSRΝvm*aWRSN.tRxc?< -p?X>*l5WM 'r\]A a-y[m IY݃z!cE;٣wMI;(s4O;Z{J$7vdY?4зV(e 4EhB_HZo ׃}Lk5(Ua%J (];YEXQ'0-ߺw`K4#gjú|p.p̡C\NiUA"Ƈ=5Dbjj-ΦY5%?Pk&)`2f=#\'&[&RS$FXi(IGXDm*}L=Y՟iD&Nǃc8p 8EᬏB=s$X0F#Ra Kt}9_[!TI>ȏ7_guKJx;⠿ps@䢿mEfm[tG)](mzT7hCʃɛ,v66[A6(XT-HlAVp19رƜ([{v.H4<\qQiM5špaU\ZZcJq> -endobj -73 0 obj -<< -/Filter /FlateDecode -/Length 4500 -/Length1 7408 ->> -stream -Hmlg.MΫ.'5Y+'q7iΟqbgkB>$Nb7Nc4LULUӄL]AgP[@+@P G$@餂6~g;4&!ě{>(0=y9FH6G^X=7o}{uX}ӏXatnէ O Z΋O} kh?ZDƁw`]խ} }.4[nHKemvh˅`1grN:ɕbRԋxx=E/)4aW߽vQw/穞Kͯ_g.!ß` Ws-i%|Nϗ`n@ȴ;!|3UxibV5IZUYzd-ETYl)×zt/9fkfB^{RMLrvAԮ$1'HnY0{3=}a{,AIeBy  #l6sܐEB߉ t:C$o$DӒgii>n}'a7ɮj$5Su[k*P_`K U*z 6,ͫIL5Y"qr-#5$z߫o:`R$+~4c|.զSXRKE?g3N40[$sWi)E ^8 IGI^RS SGD&bYm)[c}LHfLL/ 2vcj/CkhNrAz =NfMoOTIцXH|(NN ۅw"OT>mS[=e~vz 7)p? N߅S@bFb0< -us!d΃}\M¶CA`~[, D BL> 28!p_EذF6/n@@ SW`˂|CP{0f& ʼz`0-1zƜ.2|};@9P<`,!yèC54`#7Nx<PLOCo ki @Q'(Lg.&߀D̯ cN&xH}ŜC曘%`h}x=uFMW |3])nu8U?8oy= ʭH[O{i]pv;w -N;h;Ε "w;CJsqrJjvw ' ?[zݭ/w$bͬm&tV.͹6yjq8r瓅Y^3)5Jˎ\6-YKr%nelY -Xj:pdj4ꈄWzdտXoτd<VRv0R"/%Jr8*N-/:Epu|ٷ8۔eLysőg<^z5cJuUuh@-+prQT -Cɥ}ٰ$WㅡY5){s%# eZGʮT8L#[x%ėgFŭ@e_ ה@*1V"h::J.sύ;rCq)t|6Df-r rںe%l !x0a%޵cْm)z,˶lK~JHiNӒɣi!@)!4!Q(-J[4m̝̽s#0'J@c:&@ -R{b+ -d8Hj&ui704RXe&h(&Jj+|՛k;aǵb'R`f Yۂ!*$xVBx-RȖq]`U(̀(톥4ބh[MdE:by!DYsRq|)IfVT^q' xRQ/81hąpduT$nWd@4QKFLh2G -IJ%q -Y06j14YDpg`7eYE>9΂cq]T#?Du],n/i!*&i[.FYR<Uf.iU{Z3'˒ߓY/)7jFqĮp/B!AVDr^frdtc3A{}RK^:xL2]>`a#틹?yڿpυu}c\++C6qccx;mI>x@{Jnι~džGǷmƒsZۗ! br`UԎĢ{?:?C?u5.1C}JS[BGƧk&_=ho>3n:3Ub7T|[qf.6xۑ'O߶rۜxǽY Û軟<],<̛cߛ wgx<~wK&dN|qa/ΡS/nw]^w;pfb<Zj/֟ސ4OT>y=ƺ,yrzWG^zae 9`61fR22X2! 12&e4X;~ ʠ` Y8Nف]rӏ:[Tp[Oa~;l&7n4mwF5} FGM_]GM:`Met/wfW;@?~h2;9i0X-f L&s i|`ȴ?X>48pq3}'}!j=G -kRa ̀ffX7w6w,_:34!{Ll٘21q02q2s0dཻn:xAccb;1˚>e?,ۮF151(IӠ?fax_ـ,5, 'PDfbcP6 =fwz9iG%d'%',|\P!!\L> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 127 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 481 333 606 333 606 606 -] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 74 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 75 0 R ->> -endobj -42 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 76 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 61 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 0 611 0 0 278 0 0 611 833 722 778 -667 0 0 667 611 722 667 0 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 62 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 252 -/Widths [250 0 0 0 0 840 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 606 0 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 606 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 479 0 0 0 0 0 0 0 -0 0 0 0 0 0 546 0 0 0 0 0 603 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 63 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 600 600 0 600 0 0 600 600 600 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 0 0 600 600 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 600 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 64 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 600 0 0 600 0 0 -0 600 0 0 0 0 0 0 0 0 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 65 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 105 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 66 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 58 -/LastChar 114 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 1000 0 0 -0 0 0 0 0 0 0 500 0 0 0 0 0 556 0 333 -0 0 0 0 611 0 0 0 389 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 67 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 68 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 0 389 0 0 0 0 278 0 278 0 556 444 -0 0 0 0 333 0 0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 69 0 R ->> -endobj -32 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBDPBO+Symbol -/Encoding /Identity-H -/DescendantFonts [ 77 0 R ] -/ToUnicode 78 0 R ->> -endobj -77 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBDPBO+Symbol -/FontDescriptor 70 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -133 [712] -139 [1041] -153 [712] -] ->> -endobj -43 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBDPNN+ZapfDingbats -/Encoding /Identity-H -/DescendantFonts [ 79 0 R ] -/ToUnicode 80 0 R ->> -endobj -79 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBDPNN+ZapfDingbats -/FontDescriptor 72 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -84 [758] -] ->> -endobj -78 0 obj -<< -/Filter /FlateDecode -/Length 246 ->> -stream -HTn > -stream -HTP=O0 +<FwbK>D {.qK$Dn:ߓmO>7'8-GOPipަ۲L:'ZԵy8'^zP _!{3tqBJi 3!_گAo}s4ЈP+u>5GAr:/֏y{ \u3bq;}3R,xwbE`zj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -81 0 obj -<< -/S /D ->> -endobj -82 0 obj -<< -/Nums [0 81 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 19 0 R 23 0 R 26 0 R 29 0 R 33 0 R 36 0 R 39 0 R 44 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -51 0 obj -<< -/Type /Pages -/Kids [47 0 R 52 0 R 55 0 R 58 0 R] -/Count 4 -/Parent 50 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [13 0 R 51 0 R ] -/Count 14 -/MediaBox [0 0 612 792] ->> -endobj -83 0 obj -<< -/CreationDate (D:20210202102638-06'00') -/ModDate (D:20210202102638-06'00') -/Producer (Apple pstopdf) ->> -endobj -84 0 obj -<< -/Type /Catalog -/Pages 50 0 R -/PageLabels 82 0 R ->> -endobj -xref -0 85 -0000000000 65535 f -0000121209 00000 n -0000000016 00000 n -0000007368 00000 n -0000115242 00000 n -0000116156 00000 n -0000116367 00000 n -0000116799 00000 n -0000117582 00000 n -0000118141 00000 n -0000118478 00000 n -0000118857 00000 n -0000087134 00000 n -0000122450 00000 n -0000121290 00000 n -0000007545 00000 n -0000014618 00000 n -0000115804 00000 n -0000119156 00000 n -0000121374 00000 n -0000014796 00000 n -0000021347 00000 n -0000119479 00000 n -0000121458 00000 n -0000021540 00000 n -0000030828 00000 n -0000121542 00000 n -0000031017 00000 n -0000037641 00000 n -0000121626 00000 n -0000037819 00000 n -0000046554 00000 n -0000119855 00000 n -0000121710 00000 n -0000046734 00000 n -0000054216 00000 n -0000121794 00000 n -0000054420 00000 n -0000062749 00000 n -0000121878 00000 n -0000062916 00000 n -0000068722 00000 n -0000115979 00000 n -0000120241 00000 n -0000121962 00000 n -0000068937 00000 n -0000076366 00000 n -0000122046 00000 n -0000076533 00000 n -0000081788 00000 n -0000122682 00000 n -0000122587 00000 n -0000122130 00000 n -0000081943 00000 n -0000086361 00000 n -0000122214 00000 n -0000086541 00000 n -0000086662 00000 n -0000122298 00000 n -0000086759 00000 n -0000087013 00000 n -0000087275 00000 n -0000087472 00000 n -0000087678 00000 n -0000087878 00000 n -0000088069 00000 n -0000088271 00000 n -0000088472 00000 n -0000088677 00000 n -0000088872 00000 n -0000089075 00000 n -0000089265 00000 n -0000109832 00000 n -0000110024 00000 n -0000114612 00000 n -0000114820 00000 n -0000115032 00000 n -0000119998 00000 n -0000120599 00000 n -0000120390 00000 n -0000120918 00000 n -0000122382 00000 n -0000122410 00000 n -0000122774 00000 n -0000122897 00000 n -trailer -<< -/Size 85 -/Root 84 0 R -/Info 83 0 R -/ID [<759059f1c379c0014a40184b4b90425e><759059f1c379c0014a40184b4b90425e>] ->> -startxref -122967 -%%EOF diff --git a/docs/medley-irm/03-lists.pdf b/docs/medley-irm/03-lists.pdf deleted file mode 100644 index 517671a8..00000000 --- a/docs/medley-irm/03-lists.pdf +++ /dev/null @@ -1,10439 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 8533 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-1)Tj -/TT4 1 Tf -10 0 0 10 467.76 568.2 Tm -(3. LISTS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0611 Tw -(One of the most useful datatypes in Lisp is the list cell, a data structure that contains pointers to two)Tj -0 -1.2222 TD -0.0933 Tw -(other objects, called the )Tj -/TT8 1 Tf -10.9602 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0933 Tw -[( and the )]TJ -/TT8 1 Tf -4.1101 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0933 Tw -[( of the list cell. You can build very complicated structures)]TJ --18.6709 -1.2889 TD -0.0233 Tw -(out of list cells, including lattices and trees, but most often theyre used to represent simple linear lists)Tj -0 -1.2222 TD -0 Tw -(of objects.)Tj -0 -2 TD -(The following functions are used to manipulate individual list cells:)Tj -/TT8 1 Tf -10 0 0 10 102 470.66 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 470.66 Tm -(CONS)Tj -/F1 1 Tf -10 0 0 10 129.6 470.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 132.47 470.66 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 148.6726 470.66 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 470.66 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8833 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.2322 Tw -[( is the primary list construction function. It creates and returns a new list cell)]TJ --2.4004 -1.2889 TD -0.2122 Tw -(containing pointers to )Tj -/TT12 1 Tf -10.603 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2122 Tw -[( and )]TJ -/TT12 1 Tf -2.6173 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.2122 Tw -[(. If )]TJ -/TT12 1 Tf -2.3066 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.2122 Tw -[( is a list, this returns a list with )]TJ -/TT12 1 Tf -15.6493 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2122 Tw -[( added at the)]TJ --33.5765 -1.2889 TD -0 Tw -(beginning of )Tj -/TT12 1 Tf -5.8516 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 410.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 410.63 Tm -(LISTP)Tj -/F1 1 Tf -10 0 0 10 135 410.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 410.63 Tm -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(\) )Tj -33.4844 0 TD -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list cell, e.g., something created by )Tj -/TT8 1 Tf -17.3491 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -(; )Tj -/TT8 1 Tf -0.5 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --24.1011 -1.6667 TD -(\(LISTP NIL\) = NIL)Tj -10 0 0 10 102 360.8 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 360.8 Tm -(NLISTP)Tj -/F1 1 Tf -10 0 0 10 140.4 360.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 360.8 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 148.6709 360.8 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 154.6718 360.8 Tm -[( )-31717.6([Function])]TJ --3.1858 -2.0256 TD -0.2267 Tw -(The same as )Tj -/TT8 1 Tf -6.3133 0 TD -0.5422 Tw -(\(NOT \(LISTP )Tj -/TT12 1 Tf -8.2856 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\)\))Tj -/F2 1 Tf -10 0 0 10 273.5929 342.57 Tm -(. )Tj -/TT6 1 Tf -9 0 0 9 281.6629 342.57 Tm -0.2267 Tw -[( Returns )]TJ -/TT8 1 Tf -4.4304 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2267 Tw -[( if )]TJ -/TT12 1 Tf -1.5774 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2267 Tw -[( is not a list cell, )]TJ -/TT8 1 Tf -8.6159 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2267 Tw -[( otherwise.)]TJ --34.92 -1.2889 TD -0 Tw -(However, )Tj -/TT8 1 Tf -4.6299 0 TD -(\(NLISTP NIL\) = T)Tj -10 0 0 10 102 311.09 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 311.09 Tm -(CAR)Tj -/F1 1 Tf -10 0 0 10 124.2 311.09 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 127.07 311.09 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 132.4709 311.09 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 311.09 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1011 Tw -(Returns the first element of the list )Tj -/TT12 1 Tf -16.2083 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -(. )Tj -/TT8 1 Tf -0.9522 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1011 Tw -[( of )]TJ -/TT8 1 Tf -1.5811 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1011 Tw -[( is always )]TJ -/TT8 1 Tf -4.8732 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1011 Tw -[(. For all other nonlists)]TJ --29.6158 -1.2889 TD -0 Tw -(\(e.g., symbols, numbers, etc.\), the value returned is controlled by )Tj -/TT8 1 Tf -28.8262 0 TD -(CAR/CDRERR)Tj -/TT6 1 Tf -6.001 0 TD -( \(below\).)Tj -/TT8 1 Tf -10 0 0 10 102 262.66 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 262.66 Tm -(CDR)Tj -/F1 1 Tf -10 0 0 10 124.2 262.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 127.07 262.66 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 132.4709 262.66 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 262.66 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0211 Tw -(Returns all but the first element of the list )Tj -/TT12 1 Tf -18.7549 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0211 Tw -(. )Tj -/TT8 1 Tf -0.7922 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( of )]TJ -/TT8 1 Tf -1.4211 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( is always )]TJ -/TT8 1 Tf -4.6332 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[(. The value of )]TJ -/TT8 1 Tf -6.5963 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf --38.1987 -1.2889 TD -(for other nonlists is controlled by )Tj -/TT8 1 Tf -14.9028 0 TD -(CAR/CDRERR)Tj -/TT6 1 Tf -6.001 0 TD -( \(below\).)Tj -/TT10 1 Tf --23.5705 -2.2089 TD -(CAR/CDRERR)Tj -/F2 1 Tf -10 0 0 10 156 214.23 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 214.23 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1267 Tw -(The variable )Tj -/TT8 1 Tf -6.0014 0 TD -0 Tw -(CAR/CDRERR)Tj -/TT6 1 Tf -6.001 0 TD -0.1267 Tw -[( controls the behavior of )]TJ -/TT8 1 Tf -11.6143 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1267 Tw -[( and )]TJ -/TT8 1 Tf -2.4462 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1267 Tw -[( when they are passed)]TJ --29.6634 -1.2889 TD -0 Tw -(non-lists \(other than )Tj -/TT8 1 Tf -9.2002 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\).)Tj --11.0005 -2.0667 TD -(If )Tj -/TT8 1 Tf -1.0266 0 TD -0.2556 Tw -(CAR/CDRERR = NIL)Tj -/TT6 1 Tf -10.1127 0 TD -0.1067 Tw -[( \(the current default\), then )]TJ -/TT8 1 Tf -12.423 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1067 Tw -[( or )]TJ -/TT8 1 Tf -1.6543 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1067 Tw -[( of a non-list \(other than)]TJ -/TT8 1 Tf --28.8171 -1.4311 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -(\) return the string)Tj -/F2 1 Tf -10 0 0 10 217.275 154.55 Tm -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 221.965 154.55 Tm -0.4122 Tw -("{car of non-list}" )Tj -/TT6 1 Tf -13.2386 0 TD -0 Tw -(or)Tj -/TT8 1 Tf -0.9409 0 TD -0.4122 Tw -[( "{cdr of non-list}")]TJ -/F2 1 Tf -10 0 0 10 468.7284 154.55 Tm -0 Tw -(. )Tj -/TT6 1 Tf -9 0 0 9 476.1984 154.55 Tm -0.1722 Tw -[( If)]TJ -/TT8 1 Tf --38.9109 -1.2889 TD -0 Tw -(CAR/CDRERR = T)Tj -/TT6 1 Tf -8.4014 0 TD -(, then )Tj -/TT8 1 Tf -2.7192 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( of a non-list \(other than )Tj -/TT8 1 Tf -10.9053 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\) causes an error.)Tj --29.6196 -2.0667 TD -(If )Tj -/TT8 1 Tf -0.9721 0 TD -0.1267 Tw -(CAR/CDRERR = ONCE)Tj -/TT6 1 Tf -10.455 0 TD -0.0522 Tw -(, then )Tj -/TT8 1 Tf -2.8237 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( or )]TJ -/TT8 1 Tf -1.5454 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( of a string causes an error, but )]TJ -/TT8 1 Tf -14.2689 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( or )]TJ -/TT8 1 Tf -1.5454 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( of)]TJ --38.8116 -1.4311 TD -0.01 Tw -(anything else returns the string)Tj -/F2 1 Tf -10 0 0 10 250.6857 111.47 Tm -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 253.5757 111.47 Tm -0.0233 Tw -("{car of non-list}")Tj -/F2 1 Tf -10 0 0 10 356.6124 111.47 Tm -0.011 Tw -[( or )]TJ -/TT8 1 Tf -9 0 0 9 371.8324 111.47 Tm -0.0233 Tw -("{cdr of non-list}")Tj -/F2 1 Tf -10 0 0 10 474.8691 111.47 Tm -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 477.7591 111.47 Tm -(as)Tj --39.0843 -1.2889 TD -0.1222 Tw -[(above. This catches loops which repeatedly take )]TJ -/TT8 1 Tf -22.6985 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1222 Tw -[( or )]TJ -/TT8 1 Tf -1.6854 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1222 Tw -[( of an object, but it allows)]TJ --27.9844 -1.2889 TD -0 Tw -(one-time errors to pass undetected.)Tj -0 -2.1422 TD -(If )Tj -/TT8 1 Tf -1.0799 0 TD -0.3844 Tw -(CAR/CDRERR = CDR)Tj -/TT6 1 Tf -10.3705 0 TD -0.16 Tw -(, then )Tj -/TT8 1 Tf -3.0392 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.16 Tw -[( of a non-list returns)]TJ -/F2 1 Tf -10 0 0 10 358.9912 68.99 Tm -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 363.5512 68.99 Tm -0.3844 Tw -("{car of non-list}")Tj -/F2 1 Tf -10 0 0 10 473.0879 68.99 Tm -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 477.6479 68.99 Tm -(as)Tj --39.072 -1.2889 TD -0.0456 Tw -(above, but )Tj -/TT8 1 Tf -4.9666 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[( of a non-list causes an error. This setting is based on the observation that)]TJ -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 9571 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-2)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.09 Tw -(nearly all infinite loops involving non-lists occur from taking )Tj -/TT8 1 Tf -27.996 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.09 Tw -(s, but a fair amount of)Tj --29.7963 -1.2889 TD -0 Tw -(careless code takes )Tj -/TT8 1 Tf -8.5503 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of something it has not tested to be a list.)Tj -/TT8 1 Tf -10 0 0 10 150 538.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 538.06 Tm -(CAAR)Tj -/F1 1 Tf -10 0 0 10 177.6 538.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 180.47 538.06 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 185.8708 538.06 Tm -(\) \()Tj -/TT10 1 Tf -9 0 0 9 203.8738 538.06 Tm -(CADR)Tj -/TT8 1 Tf -10 0 0 10 225.47 538.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 231.4709 538.06 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 236.8718 538.06 Tm -(\) \()Tj -/TT10 1 Tf -9 0 0 9 254.87 538.06 Tm -(CDDR)Tj -/TT8 1 Tf -10 0 0 10 276.4735 538.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 282.4745 538.06 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 287.8753 538.06 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( etc. )Tj -/TT6 1 Tf -9 0 0 9 492.6299 538.06 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0978 Tw -(Often, combinations of )Tj -/TT8 1 Tf -10.6464 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0978 Tw -[( and )]TJ -/TT8 1 Tf -2.3884 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0978 Tw -[( are used to extract parts of complex list structures.)]TJ --16.6354 -1.2889 TD -0 Tw -(Functions of the form )Tj -/TT8 1 Tf -9.7769 0 TD -(C...R)Tj -/TT6 1 Tf -3.0005 0 TD -( may be used for some of these combinations:)Tj -/TT8 1 Tf --8.7773 -1.6667 TD -(\(CAAR X\) ==> \(CAR \(CAR X\)\))Tj -0 -1 TD -(\(CADR X\) ==> \(CAR \(CDR X\)\))Tj -T* -(\(CDDDDR X\) ==> \(CDR \(CDR \(CDR \(CDR X\)\)\)\))Tj -/TT6 1 Tf --4 -1.8444 TD -(All 30 combinations of nested )Tj -/TT8 1 Tf -13.3574 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -(s and )Tj -/TT8 1 Tf -2.6167 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(s up to 4 deep are included in the system.)Tj -/TT8 1 Tf -10 0 0 10 150 440.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 440.03 Tm -(RPLACD)Tj -/F1 1 Tf -10 0 0 10 188.4 440.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 440.03 Tm -(X)Tj -/F3 1 Tf -10 0 0 10 196.6709 440.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.4509 440.03 Tm -(Y)Tj -/TT8 1 Tf -10 0 0 10 204.8517 440.03 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 440.03 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0211 Tw -(Replaces the )Tj -/TT8 1 Tf -5.8152 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( of the list cell )]TJ -/TT12 1 Tf -6.4586 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0211 Tw -[( with )]TJ -/TT12 1 Tf -2.5754 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0211 Tw -[(. This physically changes the internal structure of)]TJ -/TT12 1 Tf --17.8497 -1.2889 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0189 Tw -(, as opposed to )Tj -/TT8 1 Tf -6.9291 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0189 Tw -[(, which creates a new list cell. You can make a circular list by using)]TJ -/TT8 1 Tf --9.9296 -1.2889 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -( to place a pointer to the beginning of a list at the end of the list.)Tj --3.6006 -2.0667 TD -0.0578 Tw -(The value of )Tj -/TT8 1 Tf -5.9141 0 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.0578 Tw -[( is )]TJ -/TT12 1 Tf -1.3304 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0578 Tw -[(. An attempt to )]TJ -/TT8 1 Tf -7.4622 0 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.3078 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0578 Tw -[( will cause an error, )]TJ -/TT8 1 Tf -9.2376 0 TD -0.14 Tw -(Attempt to)Tj --33.8536 -1.2889 TD -0.12 Tw -(RPLACD NIL )Tj -/TT6 1 Tf -6.8411 0 TD -0.05 Tw -(\(except for )Tj -/TT8 1 Tf -5.0522 0 TD -0.12 Tw -(\(RPLACD NIL NIL\))Tj -/TT6 1 Tf -9.8416 0 TD -0.05 Tw -[(\). An attempt to )]TJ -/TT8 1 Tf -7.7563 0 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.05 Tw -[( any other non-)]TJ --33.0917 -1.4311 TD -0 Tw -(list will cause an error,)Tj -/F2 1 Tf -10 0 0 10 264.2769 356.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 267.0569 356.8 Tm -(Arg not list)Tj -/F2 1 Tf -10 0 0 10 331.8674 356.8 Tm -(.)Tj -/TT8 1 Tf --18.1867 -1.988 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 336.92 Tm -(RPLACA)Tj -/F1 1 Tf -10 0 0 10 188.4 336.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 336.92 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 207.4726 336.92 Tm -(\) )Tj -/F2 1 Tf -1.2002 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 336.92 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.2237 0 TD -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -(, but replaces the )Tj -/TT8 1 Tf -7.8791 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -[( of )]TJ -/TT12 1 Tf -1.4522 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[( with )]TJ -/TT12 1 Tf -2.6065 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[(. The value of )]TJ -/TT8 1 Tf -6.6741 0 TD -0 Tw -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -[( is )]TJ -/TT12 1 Tf -1.2882 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[(. An attempt to)]TJ -/TT8 1 Tf --32.9255 -1.4311 TD -0 Tw -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.2767 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -[( will cause an error)]TJ -/F2 1 Tf -10 0 0 10 302.0965 307.09 Tm -0 Tw -(, )Tj -/TT8 1 Tf -9 0 0 9 307.9565 307.09 Tm -0.0644 Tw -(Attempt to RPLACA NIL)Tj -/F2 1 Tf -10 0 0 10 423.1149 307.09 Tm -0 Tw -(, )Tj -/TT6 1 Tf -9 0 0 9 428.9749 307.09 Tm -0.0267 Tw -(\(except for )Tj -/TT8 1 Tf -5.0055 0 TD -0.0644 Tw -(\(RPLACA NIL)Tj --33.336 -1.4311 TD -0 Tw -(NIL\))Tj -/TT6 1 Tf -2.4004 0 TD -(\). An attempt to )Tj -/TT8 1 Tf -7.5063 0 TD -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -( any other non-list will cause an error)Tj -/F2 1 Tf -10 0 0 10 444.4263 294.21 Tm -(, )Tj -/TT10 1 Tf -9 0 0 9 449.9863 294.21 Tm -( )Tj -/TT8 1 Tf -0.6001 0 TD -(Arg not list)Tj -/F2 1 Tf -10 0 0 10 520.1977 294.21 Tm -(.)Tj -/TT8 1 Tf --37.0198 -1.988 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 274.33 Tm -(RPLNODE)Tj -/F1 1 Tf -10 0 0 10 193.8 274.33 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.67 274.33 Tm -(X A D)Tj -/TT8 1 Tf -10 0 0 10 223.6744 274.33 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 274.33 Tm -([Function])Tj --35.4033 -1.8833 TD -(Performs )Tj -/TT8 1 Tf -4.3086 0 TD -(\(RPLACA)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(RPLACD)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(D)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, and returns )Tj -/TT12 1 Tf -5.897 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 237.5 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 237.5 Tm -(RPLNODE2)Tj -/F1 1 Tf -10 0 0 10 199.2 237.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 202.07 237.5 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 218.2726 237.5 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 237.5 Tm -([Function])Tj --35.4033 -1.8833 TD -(Performs)Tj -/TT8 1 Tf -4.0586 0 TD -( \(RPLACA )Tj -/TT12 1 Tf -5.4009 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( \(CAR )Tj -/TT12 1 Tf -3.6006 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(RPLACD )Tj -/TT12 1 Tf -4.8008 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( \(CDR )Tj -/TT12 1 Tf -3.6006 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -( and returns )Tj -/TT12 1 Tf -5.647 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 203.67 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 203.67 Tm -(FRPLACD)Tj -/F1 1 Tf -10 0 0 10 193.8 203.67 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.67 203.67 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 212.8726 203.67 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 203.67 Tm -([Function])Tj -/TT8 1 Tf -10 0 0 10 150 192.44 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 192.44 Tm -(FRPLACA)Tj -/F1 1 Tf -10 0 0 10 193.8 192.44 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.67 192.44 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 212.8726 192.44 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 192.44 Tm -([Function])Tj -/TT8 1 Tf -10 0 0 10 150 181.21 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 181.21 Tm -(FRPLNODE)Tj -/F1 1 Tf -10 0 0 10 199.2 181.21 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 202.07 181.21 Tm -(X A D)Tj -/TT8 1 Tf -10 0 0 10 229.0744 181.21 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 181.21 Tm -([Function])Tj -/TT8 1 Tf -10 0 0 10 150 169.98 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 169.98 Tm -(FRPLNODE2)Tj -/F1 1 Tf -10 0 0 10 204.6 169.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 207.47 169.98 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 223.6726 169.98 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 169.98 Tm -([Function])Tj --35.4033 -1.8833 TD -(Faster versions of )Tj -/TT8 1 Tf -8.0146 0 TD -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -(, etc.)Tj --16.9486 -2.0667 TD -0.0122 Tw -[(Usually, you dont use list cells alone, but in structures called lists. A list is represented by a list cell)]TJ -0 -1.2222 TD -0 Tw -(whose )Tj -/TT8 1 Tf -3.1181 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -( is the first element of the list, and whose )Tj -/TT8 1 Tf -18.3292 0 TD -0 Tc -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -( is the rest of the list. Thats normally another)Tj --25.0479 -1.2889 TD -0 Tc -0 Tw -(list cell \(with another element of the list\) or the empty list, )Tj -/TT8 1 Tf -26.8322 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, marking the lists end. List elements)Tj --28.6325 -1.2889 TD -(may be any Lisp objects, including other lists.)Tj -0 -2 TD -0.1 Tw -(You type in a list as a sequence of Lisp data objects \(symbols, numbers, other lists, etc.\) enclosed in)Tj -0 -1.2222 TD -0 Tw -(parentheses or brackets. Note that )Tj -/TT8 1 Tf -15.5557 0 TD -(\(\))Tj -/TT6 1 Tf -1.2002 0 TD -( is read as the symbol )Tj -/TT8 1 Tf -9.7637 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 17 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -20 0 obj -<< -/Length 8198 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-3)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0611 Tw -(Sometimes, you wont want your list to end in )Tj -/TT8 1 Tf -21.2478 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -[(, but just with the final element. To indicate that,)]TJ --23.0481 -1.2889 TD -0.1033 Tw -[(type a period \(with spaces on both sides\) in front of the final element. This makes )]TJ -/TT8 1 Tf -38.1654 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1033 Tw -[( of the lists)]TJ --39.9657 -1.2889 TD -0.01 Tw -(final cell be the element immediately following the period, e.g. )Tj -/TT8 1 Tf -27.9955 0 TD -0.0233 Tw -(\(A . B\))Tj -/TT6 1 Tf -4.2473 0 TD -0.01 Tw -[( or )]TJ -/TT8 1 Tf -1.4609 0 TD -0.0233 Tw -(\(A B C . D\))Tj -/TT6 1 Tf -6.6944 0 TD -0.01 Tw -[(. Note that)]TJ --40.3982 -1.2889 TD -0.1689 Tw -(a list neednt end in )Tj -/TT8 1 Tf -9.8083 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1689 Tw -[(. It is simply a structure composed of one or more list cells. The input)]TJ --11.6086 -1.2889 TD -0 Tw -(sequence )Tj -/TT8 1 Tf -4.3165 0 TD -0.04 Tw -(\(A B C . NIL\))Tj -/TT6 1 Tf -7.9613 0 TD -0.0167 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.3299 0 TD -0.04 Tw -(\(A B C\))Tj -/TT6 1 Tf -4.2807 0 TD -0.0167 Tw -(, and )Tj -/TT8 1 Tf -2.4762 0 TD -0.04 Tw -(\(A B . \(C D\)\))Tj -/TT6 1 Tf -7.9613 0 TD -0.0167 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.3299 0 TD -0.04 Tw -(\(A B C)Tj --41.6556 -1.2889 TD -0 Tw -(D\))Tj -/TT6 1 Tf -1.2002 0 TD -(. Note, however, that )Tj -/TT8 1 Tf -9.7964 0 TD -(\(A B . C D\))Tj -/TT6 1 Tf -6.6011 0 TD -( will create a list containing the five symbols )Tj -/TT8 1 Tf -19.8442 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(%.)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(D)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --44.9854 -2.0667 TD -0.0611 Tw -(Lists are printed by printing a left parenthesis, and then printing the first element of the list, a space,)Tj -0 -1.2222 TD -0.01 Tw -[(the second element, etc., until the final list cell is reached. The individual elements of a list are printed)]TJ -T* -0 Tw -(by )Tj -/TT8 1 Tf -1.3894 0 TD -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[(, if the list is being printed by )]TJ -/TT8 1 Tf -13.6841 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -(, and by )Tj -/TT8 1 Tf -3.8922 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( if the list is being printed by )]TJ -/TT8 1 Tf -13.1541 0 TD -0 Tw -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( or)]TJ -/TT8 1 Tf --44.1217 -1.2889 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0333 Tw -[(. Lists are considered to terminate when )]TJ -/TT8 1 Tf -18.4381 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( of some node is not a list. If )]TJ -/TT8 1 Tf -13.1825 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( of this terminal)]TJ --38.2216 -1.2889 TD -0.0411 Tw -(node is )Tj -/TT8 1 Tf -3.5148 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( \(the usual case\), )]TJ -/TT8 1 Tf -7.7352 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( of the last node is printed followed by a right parenthesis. If )]TJ -/TT8 1 Tf -27.5027 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( of)]TJ --44.1537 -1.2889 TD -0.0911 Tw -(the terminal node is )Tj -/TT16 1 Tf -9.4313 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -( )Tj -/TT8 1 Tf -0.3411 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0911 Tw -[( of the last node is printed, followed by a space, a period, another)]TJ --15.2972 -1.2889 TD -0 Tw -(space, )Tj -/TT8 1 Tf -3 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( of the last node, and the right parenthesis. A list input as )]TJ -/TT8 1 Tf -26.5065 0 TD -0.1244 Tw -(\(A B C . NIL\))Tj -/TT6 1 Tf -8.299 0 TD -0.0522 Tw -[( will print as)]TJ -/TT8 1 Tf --39.6058 -1.2889 TD -0.1367 Tw -(\(A B C\))Tj -/TT6 1 Tf -4.474 0 TD -0.0567 Tw -(, and a list input as )Tj -/TT8 1 Tf -8.9421 0 TD -0.1367 Tw -(\(A B . \(C D\)\))Tj -/TT6 1 Tf -8.3479 0 TD -0.0567 Tw -[( will print as )]TJ -/TT8 1 Tf -6.0528 0 TD -0.1367 Tw -(\(A B C D\))Tj -/TT6 1 Tf -5.8109 0 TD -0.0567 Tw -(. )Tj -/TT8 1 Tf -0.8633 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT6 1 Tf -6.001 0 TD -0.0567 Tw -[( affects the)]TJ --40.492 -1.2889 TD -0.0044 Tw -(printing of lists \(see the )Tj -/TT8 1 Tf -10.6336 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.0043 Tw -( section of Chapter 25\), and that carriage returns may be inserted)Tj --16.6345 -1.2889 TD -0 Tc -0 Tw -(where dictated by )Tj -/TT8 1 Tf -8.2163 0 TD -(LINELENGTH)Tj -/TT6 1 Tf -6.001 0 TD -( \(see the Output Functions section of Chapter 25\).)Tj --10.884 -2.0667 TD -[(Note:)-1567.9(Be careful when testing the equality of list structures. )]TJ -/TT8 1 Tf -27.9697 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( will be true only when the)Tj --25.1699 -1.2889 TD -(two lists are the )Tj -/TT16 1 Tf -7.2231 0 TD -(exact)Tj -/TT6 1 Tf -2.0732 0 TD -( same list. For example,)Tj -/TT17 1 Tf --7.2964 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(SETQ A \(1 2\)\))Tj -1.0132 -1 TD -(\(1 2\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(SETQ B A\))Tj -1.0132 -1 TD -(\(1 2\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(EQ A B\))Tj -1.0132 -1 TD -(T)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ C \(1 2\)\))Tj -1.0132 -1 TD -(\(1 2\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(EQ A C\))Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(EQUAL A C\))Tj -1.0132 -1 TD -(T)Tj -/TT6 1 Tf --6 -1.8444 TD -0.2167 Tw -(In the example above, the values of )Tj -/TT8 1 Tf -17.3428 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.2167 Tw -[( and )]TJ -/TT8 1 Tf -2.6262 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.2167 Tw -[( are the exact same list, so they are )]TJ -/TT8 1 Tf -17.3812 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --39.7506 -1.2889 TD -0.1133 Tw -(However, the value of )Tj -/TT8 1 Tf -10.5373 0 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -[( is a totally different list, although it happens to have the same)]TJ --11.1374 -1.2889 TD -0.1189 Tw -(elements. )Tj -/TT8 1 Tf -4.9306 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1189 Tw -[( should be used to compare the elements of two lists. In general, one)]TJ --7.9311 -1.2889 TD -0.1178 Tw -(should notice whether list manipulation functions use )Tj -/TT8 1 Tf -24.9411 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1178 Tw -[( or )]TJ -/TT8 1 Tf -1.6765 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1178 Tw -[( for comparing lists.)]TJ --30.8183 -1.2889 TD -0 Tw -(This is a frequent source of errors.)Tj -/TT4 1 Tf -10 0 0 10 54 150.8 Tm -(Creating Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 148.09 m -510.01 148.09 l -S -BT -/TT8 1 Tf -10 0 0 10 102 132.86 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 132.86 Tm -(LIST)Tj -/F1 1 Tf -10 0 0 10 129.6 132.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 132.47 132.86 Tm -(X)Tj -0.6 -0.2222 TD -(1)Tj -/F3 1 Tf -10 0 0 10 143.27 132.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 146.05 132.86 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F3 1 Tf -10 0 0 10 156.85 132.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 159.63 132.86 Tm -(... X)Tj -3 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 192.03 132.86 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 401.99 132.86 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -(Returns a list of its arguments, e.g.)Tj -/TT8 1 Tf -4 -1.6 TD -(\(LIST A B \(C D\)\) => \(A B \(C D\)\))Tj -10 0 0 10 102 81.98 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 81.98 Tm -(LIST*)Tj -/F1 1 Tf -10 0 0 10 135 81.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 81.98 Tm -(X)Tj -0.6 -0.2222 TD -(1)Tj -/F3 1 Tf -10 0 0 10 148.67 81.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 151.45 81.98 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F3 1 Tf -10 0 0 10 162.25 81.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 165.03 81.98 Tm -(... X)Tj -3 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 197.43 81.98 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 401.99 81.98 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -0.0611 Tw -[(Returns a list of its arguments, using the last argument for the tail of the list. This is like)]TJ -0 -1.2222 TD -0 Tw -(an iterated )Tj -/TT8 1 Tf -4.9893 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -(: )Tj -/TT8 1 Tf -0.75 0 TD -(\(LIST* A B C\) == \(CONS A \(CONS B C\)\))Tj -/TT6 1 Tf -21.6035 0 TD -(. For example,)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 17 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -25 0 obj -<< -/Length 7429 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-4)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 210 570.14 Tm -(\(LIST* A B C\) => \(A B . C\))Tj -0 -1 TD -(\(LIST* A B \(C D\)\) => \(A B C D\))Tj -10 0 0 10 150 543.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 543.26 Tm -(APPEND)Tj -/F1 1 Tf -10 0 0 10 188.4 543.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 543.26 Tm -(X)Tj -0.6 -0.2222 TD -(1)Tj -/F3 1 Tf -10 0 0 10 202.07 543.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 204.85 543.26 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F3 1 Tf -10 0 0 10 215.65 543.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 218.43 543.26 Tm -(... X)Tj -3 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 250.83 543.26 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 543.26 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -0.0322 Tw -(Copies the top level of the list )Tj -/TT12 1 Tf -13.5888 0 TD -0 Tw -(X)Tj -0.5978 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0322 Tw -[( and appends this to a copy of the top level of the list )]TJ -/TT12 1 Tf -24.0263 0 TD -0 Tw -(X)Tj -0.5981 -0.2222 TD -(2)Tj -/TT6 1 Tf --39.4111 -1.2889 TD -(appended to )Tj -/TT8 1 Tf -5.8359 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -( appended to )Tj -/TT12 1 Tf -6.0859 0 TD -(X)Tj -0.5989 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, e.g.,)Tj -/TT8 1 Tf --10.9211 -1.8889 TD -(\(APPEND \(A B\) \(C D E\) \(F G\)\) => \(A B C D E F G\))Tj -/TT6 1 Tf --4 -1.8444 TD -0.1056 Tw -(Only the first )Tj -/TT12 1 Tf -6.4382 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(-1)Tj -/TT6 1 Tf -1.2002 0 TD -0.1056 Tw -[( lists are copied. However )]TJ -/TT12 1 Tf -12.6148 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2533 Tw -[( = 1)]TJ -/TT6 1 Tf -2.9071 0 TD -0.1056 Tw -[( is treated specially; )]TJ -/TT8 1 Tf -9.3802 0 TD -0.2533 Tw -(\(APPEND X\))Tj -/TT6 1 Tf --33.7407 -1.2889 TD -0 Tw -(copies the top level of a single list. To copy a list to all levels, use )Tj -/TT8 1 Tf -28.9605 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --31.3608 -2.0667 TD -(The following examples illustrate the treatment of non-lists:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(APPEND \(A B C\) D\) => \(A B C . D\))Tj -0 -1 TD -(\(APPEND A \(B C D\)\) => \(B C D\))Tj -T* -(\(APPEND \(A B C . D\) \(E F G\)\) => \(A B C E F G\))Tj -T* -(\(APPEND \(A B C . D\)\) => \(A B C . D\))Tj -10 0 0 10 150 387.98 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 387.98 Tm -(NCONC)Tj -/F1 1 Tf -10 0 0 10 183 387.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 387.98 Tm -(X)Tj -0.6 -0.2222 TD -(1)Tj -/F3 1 Tf -10 0 0 10 196.67 387.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.45 387.98 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F3 1 Tf -10 0 0 10 210.25 387.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 213.03 387.98 Tm -(... X)Tj -3 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 245.43 387.98 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -[( )-18015.9([NoSpread Function])]TJ -/TT6 1 Tf -9 0 0 9 174 368.1 Tm -(Returns the same value as )Tj -/TT8 1 Tf -11.7617 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -(, but modifies the list structure of )Tj -/TT12 1 Tf -14.9331 0 TD -(X)Tj -0.6035 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(... )Tj -/TT12 1 Tf -2.4004 0 TD -(X)Tj -0.5996 -0.2222 TD -(n-1)Tj -/F2 1 Tf -10 0 0 10 502.94 368.1 Tm -(. )Tj -/TT8 1 Tf -9 0 0 9 174 347.5 Tm -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -( cannot change )Tj -/TT8 1 Tf -6.873 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( to a list:)Tj -/TT17 1 Tf --7.6738 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO NIL\))Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(NCONC FOO \(A B C\)\))Tj -1.0132 -1 TD -(\(A B C\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -(NIL)Tj -/TT6 1 Tf --6 -1.8444 TD -0.0289 Tw -(Although the value of the )Tj -/TT8 1 Tf -11.7499 0 TD -0 Tw -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0289 Tw -[( is )]TJ -/TT8 1 Tf -1.2726 0 TD -0.0689 Tw -(\(A B C\))Tj -/TT6 1 Tf -4.3385 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5289 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -[( has )]TJ -/TT16 1 Tf -2.0636 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0289 Tw -[( been changed. The problem)]TJ --26.0873 -1.2889 TD -0.03 Tw -(is that while it is possible to alter list structure with )Tj -/TT8 1 Tf -23.1708 0 TD -0 Tw -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -[( and )]TJ -/TT8 1 Tf -2.2529 0 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -(, there is no way)Tj --32.6249 -1.2889 TD -0 Tw -(to change the non-list )Tj -/TT8 1 Tf -9.7773 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( to a list.)Tj -/TT8 1 Tf -10 0 0 10 150 223.82 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 223.82 Tm -(NCONC1)Tj -/F1 1 Tf -10 0 0 10 188.4 223.82 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 223.82 Tm -(LST X)Tj -/TT8 1 Tf -10 0 0 10 218.2744 223.82 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 223.82 Tm -([Function])Tj --35.4033 -1.8833 TD -(Adds )Tj -/TT12 1 Tf -2.6733 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( to the end of )Tj -/TT12 1 Tf -6.0601 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(: )Tj -/TT8 1 Tf -0.75 0 TD -(\(NCONC)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(LST)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(\(LIST )Tj -/TT12 1 Tf -3.6006 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\)\))Tj -10 0 0 10 150 186.99 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 186.99 Tm -(ATTACH)Tj -/F1 1 Tf -10 0 0 10 188.4 186.99 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 186.99 Tm -(X L)Tj -/TT8 1 Tf -10 0 0 10 207.4726 186.99 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 186.99 Tm -([Function])Tj --35.4033 -1.8833 TD -(Attaches )Tj -/TT12 1 Tf -5.2244 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1156 Tw -[( to the front of )]TJ -/TT12 1 Tf -7.1481 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.1156 Tw -[( by doing a )]TJ -/TT8 1 Tf -5.6575 0 TD -0 Tw -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -0.1156 Tw -[( and )]TJ -/TT8 1 Tf -2.424 0 TD -0 Tw -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.1156 Tw -[(. The value is )]TJ -/TT8 1 Tf -6.9044 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1156 Tw -[( to)]TJ -/TT8 1 Tf --38.7603 -1.2889 TD -0 Tw -(\(CONS)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.7023 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.7023 0 TD -(L)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -(, but )Tj -/TT8 1 Tf -2.6091 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0422 Tw -[( to )]TJ -/TT12 1 Tf -1.4565 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -(, which it physically changes \(except if )Tj -/TT12 1 Tf -17.5509 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -[( is )]TJ -/TT8 1 Tf -1.2993 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -(\). )Tj -/TT8 1 Tf -1.1674 0 TD -0.1022 Tw -(\(ATTACH X)Tj --34.4894 -1.4311 TD -0 Tw -(NIL\))Tj -/TT6 1 Tf -2.4004 0 TD -0.07 Tw -[( is the same as )]TJ -/TT8 1 Tf -6.9115 0 TD -0.1678 Tw -(\(CONS X NIL\))Tj -/TT6 1 Tf -7.5367 0 TD -0.07 Tw -[(. Otherwise, if )]TJ -/TT12 1 Tf -7.0002 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.07 Tw -[( is not a list, an error is generated, )]TJ -/TT8 1 Tf --24.449 -1.4311 TD -0 Tw -(Arg not list)Tj -/F2 1 Tf -10 0 0 10 238.8105 132.68 Tm -(.)Tj -/TT8 1 Tf --8.8811 -1.988 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 112.8 Tm -(MKLIST)Tj -/F1 1 Tf -10 0 0 10 188.4 112.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 112.8 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 196.6709 112.8 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 112.8 Tm -([Function])Tj --35.4033 -1.8833 TD -(Make List. If )Tj -/TT12 1 Tf -7.0527 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list or )Tj -/TT8 1 Tf -4.7378 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, returns )Tj -/TT12 1 Tf -3.9541 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(; Otherwise, returns )Tj -/TT8 1 Tf -9.3003 0 TD -(\(LIST )Tj -/TT12 1 Tf -3.6006 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\).)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 17 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -28 0 obj -<< -/Length 6612 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-5)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT4 1 Tf --42.221 -4.38 TD -(Building Lists From Left to Right)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -10 0 0 10 102 550.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 550.26 Tm -(TCONC)Tj -/F1 1 Tf -10 0 0 10 135 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 550.26 Tm -(PTR X)Tj -/TT8 1 Tf -10 0 0 10 164.8744 550.26 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 173.6553 550.26 Tm -29.8583 Tw -[( [Function])]TJ -/TT8 1 Tf --5.295 -1.8833 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1267 Tw -[( is similar to )]TJ -/TT8 1 Tf -6.1683 0 TD -0 Tw -(NCONC1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1267 Tw -(; it is useful for building a list by adding elements one at a)Tj --12.7694 -1.2889 TD -0.0233 Tw -[(time at the end. Unlike )]TJ -/TT8 1 Tf -10.7313 0 TD -0 Tw -(NCONC1)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5233 0 TD -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0233 Tw -[( does not have to search to the end of the list each)]TJ --17.8557 -1.2889 TD -0.1311 Tw -[(time it is called. Instead, it keeps a pointer to the end of the list being assembled, and)]TJ -0 -1.2222 TD -0.0167 Tw -[(updates this pointer after each call. This can be considerably faster for long lists. The cost)]TJ -T* -0.09 Tw -(is an extra list cell, )Tj -/TT12 1 Tf -8.8001 0 TD -0 Tw -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.09 Tw -(. )Tj -/TT8 1 Tf -0.93 0 TD -0 Tw -(\(CAR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.8179 0 TD -(PTR)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -[( is the list being assembled, )]TJ -/TT8 1 Tf -12.8291 0 TD -0 Tw -(\(CDR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.8179 0 TD -(PTR)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -[( is )]TJ -/TT8 1 Tf -1.3948 0 TD -0 Tw -(\(LAST)Tj --36.9916 -1.2889 TD -(\(CAR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(PTR)Tj -/TT8 1 Tf -1.8003 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(. )Tj -/TT8 1 Tf -0.75 0 TD -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -( returns )Tj -/TT12 1 Tf -3.7041 0 TD -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -(, with its )Tj -/TT8 1 Tf -4.0742 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( appropriately modified.)Tj -/TT12 1 Tf --25.1235 -2.0667 TD -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -[( can be initialized in two ways. If )]TJ -/TT12 1 Tf -15.3142 0 TD -0 Tw -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -[( is )]TJ -/TT8 1 Tf -1.2682 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0267 Tw -[( will create and return a )]TJ -/TT12 1 Tf -10.9632 0 TD -0 Tw -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -[(. In)]TJ --38.2739 -1.2889 TD -0.0256 Tw -(this case, the program must set some variable to the value of the first call to )Tj -/TT8 1 Tf -33.8928 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0256 Tw -[(. After)]TJ --36.8933 -1.2889 TD -0.21 Tw -(that, it is unnecessary to reset the variable, since )Tj -/TT8 1 Tf -23.3304 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.21 Tw -[( physically changes its value.)]TJ --26.3309 -1.2889 TD -0 Tw -(Example:)Tj -/TT17 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(TCONC NIL 1\)\))Tj -1.0132 -1.2222 TD -(\(\(1\) 1\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for I from 2 to 5 do \(TCONC FOO I\)\))Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -(\(\(1 2 3 4 5\) 5\))Tj -/TT6 1 Tf --6 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.0033 0 TD -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0833 Tw -[( is initially )]TJ -/TT8 1 Tf -5.1343 0 TD -0 Tw -(\(NIL\))Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -(, the value of )Tj -/TT8 1 Tf -6.2874 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -[( is the same as for )]TJ -/TT12 1 Tf -8.5855 0 TD -0 Tw -(PTR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1989 Tw -[( = NIL)]TJ -/TT6 1 Tf -3.9984 0 TD -0.0833 Tw -(. but )Tj -/TT8 1 Tf -2.3991 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf --37.0094 -1.2889 TD -(changes )Tj -/TT12 1 Tf -3.9847 0 TD -(PTR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1678 Tw -[(. This method allows the program to initialize the )]TJ -/TT8 1 Tf -24.0147 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1678 Tw -[( variable before)]TJ --32.8001 -1.2889 TD -0 Tw -(adding any elements to the list. Example:)Tj -/TT17 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(CONS\)\))Tj -1.0132 -1.2222 TD -(\(NIL\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for I from 1 to 5 do \(TCONC FOO I\)\))Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -(\(\(1 2 3 4 5\) 5\))Tj -10 0 0 10 102 234.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 234.63 Tm -(LCONC)Tj -/F1 1 Tf -10 0 0 10 135 234.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 234.63 Tm -(PTR X)Tj -/TT8 1 Tf -10 0 0 10 164.8744 234.63 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 234.63 Tm -([Function])Tj --35.4033 -1.8833 TD -(Where )Tj -/TT8 1 Tf -3.2284 0 TD -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( is used to add )]TJ -/TT16 1 Tf -6.892 0 TD -0 Tw -(elements)Tj -/TT6 1 Tf -3.5015 0 TD -0.0433 Tw -[( at the end of a list, )]TJ -/TT8 1 Tf -8.8995 0 TD -0 Tw -(LCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( is used for building a list)]TJ --28.5223 -1.2889 TD -0 Tw -(by adding )Tj -/TT16 1 Tf -4.7603 0 TD -(lists)Tj -/TT6 1 Tf -1.667 0 TD -( at the end, i.e., it is similar to )Tj -/TT8 1 Tf -13.1841 0 TD -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -( instead of )Tj -/TT8 1 Tf -4.8418 0 TD -(NCONC1)Tj -/TT6 1 Tf -3.6006 0 TD -(. Example:)Tj -/TT17 1 Tf --27.0542 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(CONS\)\))Tj -1.0132 -1.2222 TD -(\(NIL\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LCONC FOO \(1 2\)\))Tj -1.0132 -1.2222 TD -(\(\(1 2\) 2\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LCONC FOO \(3 4 5\)\))Tj -1.0132 -1.2222 TD -(\(\(1 2 3 4 5\) 5\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LCONC FOO NIL\))Tj -1.0132 -1.2222 TD -(\(\(1 2 3 4 5\) 5\))Tj --6 -1.8444 TD -(LCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( uses the same pointer conventions as )]TJ -/TT8 1 Tf -17.4544 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( for eliminating searching to the end)]TJ --23.4554 -1.2889 TD -0.1233 Tw -(of the list, so that the same pointer can be given to )Tj -/TT8 1 Tf -23.8286 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1233 Tw -[( and )]TJ -/TT8 1 Tf -2.4395 0 TD -0 Tw -(LCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1233 Tw -[( interchangeably.)]TJ --32.2691 -1.2889 TD -0 Tw -(Therefore, continuing from above,)Tj -/TT17 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(TCONC FOO NIL\))Tj -1.0132 -1.2222 TD -(\(\(1 2 3 4 5 NIL\) NIL\))Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -31 0 obj -<< -/Length 7701 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-6)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 210 570.14 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(TCONC FOO \(3 4 5\)\))Tj -1.0132 -1.2222 TD -(\(\(1 2 3 4 5 NIL \(3 4 5\)\) \(3 4 5\)\))Tj -/TT6 1 Tf --11.3333 -1.8444 TD -0.0456 Tw -(The functions )Tj -/TT8 1 Tf -6.3958 0 TD -0 Tw -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -0.0456 Tw -[( and )]TJ -/TT8 1 Tf -2.284 0 TD -0 Tw -(ENDCOLLECT)Tj -/TT6 1 Tf -6.001 0 TD -0.0456 Tw -[( also let you build lists from left-to-right like )]TJ -/TT8 1 Tf -20.2186 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0456 Tw -(, but)Tj --43.3007 -1.2889 TD -0.1056 Tw -[(without the overhead of an extra list cell. The listis kept as a circular list. )]TJ -/TT8 1 Tf -34.4126 0 TD -0 Tw -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -0.1056 Tw -[( adds items;)]TJ -/TT8 1 Tf --39.8135 -1.2889 TD -0 Tw -(ENDCOLLECT)Tj -/TT6 1 Tf -6.001 0 TD -( replaces the tail with its second argument, and returns the full list.)Tj -/TT8 1 Tf -10 0 0 10 150 499.46 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 499.46 Tm -(DOCOLLECT)Tj -/F1 1 Tf -10 0 0 10 204.6 499.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 207.47 499.46 Tm -(ITEM LST)Tj -/TT8 1 Tf -10 0 0 10 250.677 499.46 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 499.46 Tm -([Function])Tj --35.4033 -1.8833 TD -(Adds )Tj -/TT12 1 Tf -3.6944 0 TD -(ITEM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0211 Tw -[( to the end of )]TJ -/TT12 1 Tf -6.1656 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[(. Returns the new circular list. Note that )]TJ -/TT12 1 Tf -18.5817 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( is modified,)]TJ --34.4428 -1.2889 TD -0.0378 Tw -(but it is not )Tj -/TT8 1 Tf -5.4197 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0378 Tw -[( to the new list. The new list should be stored and used as )]TJ -/TT12 1 Tf -26.5569 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0378 Tw -[( to the next)]TJ --34.9771 -1.2889 TD -0 Tw -(call to )Tj -/TT8 1 Tf -2.8979 0 TD -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 439.43 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 439.43 Tm -(ENDCOLLECT)Tj -/F1 1 Tf -10 0 0 10 210 439.43 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 212.87 439.43 Tm -(LST TAIL)Tj -/TT8 1 Tf -10 0 0 10 256.077 439.43 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 439.43 Tm -([Function])Tj --35.4033 -1.8833 TD -(Takes )Tj -/TT12 1 Tf -2.9884 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1667 Tw -(, a list returned by )Tj -/TT8 1 Tf -9.1449 0 TD -0 Tw -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -0.1667 Tw -(, and returns it as a non-circular list, adding)Tj -/TT12 1 Tf --19.3345 -1.2889 TD -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -( as the terminating )Tj -/TT8 1 Tf -8.5225 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --12.7231 -2.0667 TD -0.1489 Tw -(Here is an example using )Tj -/TT8 1 Tf -12.1815 0 TD -0 Tw -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -0.1489 Tw -[( and )]TJ -/TT8 1 Tf -2.4907 0 TD -0 Tw -(ENDCOLLECT)Tj -/TT6 1 Tf -6.001 0 TD -0.1489 Tw -(. )Tj -/TT8 1 Tf -1.0478 0 TD -0 Tw -(HPRINT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1489 Tw -[( is used to print the)]TJ --30.7223 -1.2889 TD -0.2333 Tw -[(results because they are circular lists. Notice that )]TJ -/TT8 1 Tf -24.1112 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.2333 Tw -[( has to be set to the value of)]TJ -/TT8 1 Tf --25.9115 -1.2889 TD -0 Tw -(DOCOLLECT)Tj -/TT6 1 Tf -5.4009 0 TD -( as each element is added.)Tj -/TT17 1 Tf --1.4009 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO NIL])Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(HPRINT \(SETQ FOO \(DOCOLLECT 1 FOO])Tj -/TT17 1 Tf -1.0132 -1 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(\(1 . {1}\))Tj -/TT17 1 Tf --2.603 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(HPRINT \(SETQ FOO \(DOCOLLECT 2 FOO])Tj -/TT17 1 Tf -1.0132 -1 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(\(2 1 . {1}\))Tj -/TT17 1 Tf --2.603 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(HPRINT \(SETQ FOO \(DOCOLLECT 3 FOO])Tj -/TT17 1 Tf -1.0132 -1 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(\(3 1 2 . {1}\))Tj -/TT17 1 Tf --2.603 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(HPRINT \(SETQ FOO \(DOCOLLECT 4 FOO])Tj -/TT17 1 Tf -1.0132 -1 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(\(4 1 2 3 . {1}\))Tj -/TT17 1 Tf --2.603 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(ENDCOLLECT FOO 5])Tj -1.0132 -1 TD -(\(1 2 3 4 . 5\))Tj -/TT6 1 Tf --11.3333 -1.8444 TD -0.1922 Tw -(The following two functions are useful when writing programs that reuse a scratch list to collect)Tj -0 -1.2222 TD -0 Tw -(together some result\(s\) \(both of these compile open\):)Tj -/TT8 1 Tf -10 0 0 10 150 198.2 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 198.2 Tm -(SCRATCHLIST)Tj -/F1 1 Tf -10 0 0 10 215.4 198.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 218.27 198.2 Tm -(LST X)Tj -3 -0.2222 TD -(1)Tj -/F3 1 Tf -10 0 0 10 250.67 198.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 253.45 198.2 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F3 1 Tf -10 0 0 10 264.25 198.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 267.03 198.2 Tm -(...)Tj -/F3 1 Tf -10 0 0 10 283.2326 198.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 286.0126 198.2 Tm -(X)Tj -0.5997 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 296.81 198.2 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 198.2 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --25.9256 -2.0667 TD -(SCRATCHLIST)Tj -/TT6 1 Tf -6.6011 0 TD -0.0322 Tw -[( sets up a context in which the value of )]TJ -/TT12 1 Tf -17.7085 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0322 Tw -[( is used as a scratch list. The)]TJ --26.1098 -1.2889 TD -0 Tw -(expressions )Tj -/TT12 1 Tf -5.4806 0 TD -(X)Tj -0.6016 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT12 1 Tf -0.57 0 TD -(X)Tj -0.6 -0.2222 TD -(2)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT8 1 Tf -0.57 0 TD -(... )Tj -/TT12 1 Tf -2.5682 0 TD -(X)Tj -0.5996 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.07 Tw -[( are evaluated in turn. During the course of evaluation, any)]TJ --12.79 -1.5111 TD -0.0544 Tw -(value passed to )Tj -/TT8 1 Tf -7.262 0 TD -0 Tw -(ADDTOSCRATCHLIST)Tj -/TT6 1 Tf -9.6016 0 TD -0.0544 Tw -[( will be saved, reusing )]TJ -/TT8 1 Tf -10.4202 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0544 Tw -[( cells from the value of)]TJ -/TT12 1 Tf --29.6841 -1.2889 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0178 Tw -[(. If the value of )]TJ -/TT12 1 Tf -7.2307 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0178 Tw -[( is not long enough, new )]TJ -/TT8 1 Tf -11.2439 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0178 Tw -[( cells will be added onto its end. If)]TJ --24.4755 -1.2889 TD -0.1167 Tw -(the value of )Tj -/TT12 1 Tf -5.8041 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1167 Tw -[( is )]TJ -/TT8 1 Tf -1.4482 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1167 Tw -(, the entire value of )Tj -/TT8 1 Tf -9.3397 0 TD -0 Tw -(SCRATCHLIST)Tj -/TT6 1 Tf -6.6011 0 TD -0.1167 Tw -[( will be new \(i.e., no )]TJ -/TT8 1 Tf -10.8152 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf --37.6089 -1.2889 TD -(cells will be reused\).)Tj -/TT8 1 Tf -10 0 0 10 150 100.32 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 100.32 Tm -(ADDTOSCRATCHLIST)Tj -/F1 1 Tf -10 0 0 10 242.4 100.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 245.27 100.32 Tm -(VALUE)Tj -/TT8 1 Tf -10 0 0 10 272.2744 100.32 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 100.32 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0744 Tw -(For use under calls to )Tj -/TT8 1 Tf -10.1168 0 TD -0 Tw -(SCRATCHLIST)Tj -/TT6 1 Tf -6.6011 0 TD -0.0744 Tw -(. )Tj -/TT12 1 Tf -0.8989 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -[( is added on to the end of the list of things)]TJ --20.6173 -1.2889 TD -0.3289 Tw -(being collected by )Tj -/TT8 1 Tf -9.2181 0 TD -0 Tw -(SCRATCHLIST)Tj -/TT6 1 Tf -6.6011 0 TD -0.3289 Tw -[(. When )]TJ -/TT8 1 Tf -4.6297 0 TD -0 Tw -(SCRATCHLIST)Tj -/TT6 1 Tf -6.6011 0 TD -0.3289 Tw -[( returns, its value is a list)]TJ --27.05 -1.2889 TD -0 Tw -(containing all of the things added by )Tj -/TT8 1 Tf -16.4805 0 TD -(ADDTOSCRATCHLIST)Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 17 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -34 0 obj -<< -/Length 7418 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-7)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT4 1 Tf --42.221 -4.38 TD -(Copying Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -10 0 0 10 102 550.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 550.26 Tm -(COPY)Tj -/F1 1 Tf -10 0 0 10 129.6 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 132.47 550.26 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 137.8708 550.26 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 550.26 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0933 Tw -(Creates and returns a copy of the list )Tj -/TT12 1 Tf -17.2008 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0933 Tw -[(. All levels of )]TJ -/TT12 1 Tf -6.7342 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0933 Tw -[( are copied down to non-lists, so)]TJ --25.1352 -1.2889 TD -0 Tw -(that if )Tj -/TT12 1 Tf -2.8584 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( contains arrays and strings, the copy of )Tj -/TT12 1 Tf -17.8189 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( will contain the same arrays and strings,)Tj --21.8774 -1.2889 TD -(not copies. )Tj -/TT8 1 Tf -5.2388 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -( is recursive in the )Tj -/TT8 1 Tf -8.2998 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( direction only, so very long lists can be copied.)Tj --17.7393 -2.0667 TD -(To copy just the )Tj -/TT16 1 Tf -7.2798 0 TD -(top level)Tj -/TT6 1 Tf -3.3608 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, do )Tj -/TT8 1 Tf -1.9067 0 TD -(\(APPEND)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 471.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 471.63 Tm -(COPYALL)Tj -/F1 1 Tf -10 0 0 10 145.8 471.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 471.63 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 154.0708 471.63 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 471.63 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.1992 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -0.0122 Tw -[(, but it copies down to atoms. Arrays, hash-arrays, strings, user data types, etc.,)]TJ --4.5996 -1.2889 TD -0.0233 Tw -[(are all copied. Analagous to )]TJ -/TT8 1 Tf -12.9696 0 TD -0 Tw -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[( \(see the Equality Predicates section of Chapter 9\).)]TJ --17.7704 -1.2889 TD -0.2611 Tw -(This will not work if given a data structure with circular pointers; in this case, use)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(HCOPYALL)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 400.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 400.6 Tm -(HCOPYALL)Tj -/F1 1 Tf -10 0 0 10 151.2 400.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 154.07 400.6 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 159.4709 400.6 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 165.4718 400.6 Tm -[( )-30517.6([Function])]TJ --4.3858 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(COPYALL)Tj -/TT6 1 Tf -4.2007 0 TD -(, but it will work even if the data structure contains circular pointers.)Tj -/TT4 1 Tf -10 0 0 10 54 360.71 Tm -(Extracting Tails of Lists)Tj -ET -54.01 358 m -510.01 358 l -S -BT -/TT8 1 Tf -10 0 0 10 102 342.77 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 342.77 Tm -(NTH)Tj -/F1 1 Tf -10 0 0 10 124.2 342.77 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 127.07 342.77 Tm -(X N)Tj -/TT8 1 Tf -10 0 0 10 143.2726 342.77 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 149.2736 342.77 Tm -( )Tj -32.8174 0 TD -([Function])Tj --35.4033 -1.8833 TD -0.0811 Tw -(Returns the tail of )Tj -/TT12 1 Tf -8.4758 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -[( beginning with the )]TJ -/TT12 1 Tf -9.2175 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -[(th element. Returns )]TJ -/TT8 1 Tf -9.4787 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0811 Tw -[( if )]TJ -/TT12 1 Tf -1.2862 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -[( has fewer than )]TJ -/TT12 1 Tf -7.3406 0 TD -0 Tw -(N)Tj -/TT6 1 Tf --39.3995 -1.2889 TD -(elements. This is different from Common Lisps )Tj -/TT8 1 Tf -21.5801 0 TD -(NTH)Tj -/TT6 1 Tf -1.8003 0 TD -(. Examples:)Tj -/TT8 1 Tf --19.3804 -1.6667 TD -(\(NTH \(A B C D\) 1\) => \(A B C D\))Tj -0 -1 TD -(\(NTH \(A B C D\) 3\) => \(C D\))Tj -T* -(\(NTH \(A B C D\) 9\) => NIL)Tj -T* -(\(NTH \(A . B\) 2\) => B)Tj -/TT6 1 Tf --4 -1.8444 TD -(For consistency, if )Tj -/TT12 1 Tf -8.2188 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( = 0)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(NTH)Tj -/TT6 1 Tf -1.8003 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(\(CONS NIL)Tj -/TT10 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(:)Tj -/TT8 1 Tf --20.4248 -1.6667 TD -(\(NTH \(A B\) 0\) => \(NIL A B\))Tj -10 0 0 10 102 222.74 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 222.74 Tm -(FNTH)Tj -/F1 1 Tf -10 0 0 10 129.6 222.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 132.47 222.74 Tm -(X N)Tj -/TT8 1 Tf -10 0 0 10 148.6726 222.74 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 222.74 Tm -([Function])Tj --35.4033 -1.8833 TD -(Faster version of )Tj -/TT8 1 Tf -7.5908 0 TD -(NTH)Tj -/TT6 1 Tf -1.8003 0 TD -( that terminates on a null-check.)Tj -/TT8 1 Tf -10 0 0 10 102 185.91 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 185.91 Tm -(LAST)Tj -/F1 1 Tf -10 0 0 10 129.6 185.91 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 132.47 185.91 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 137.8708 185.91 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 185.91 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns the last list cell in the list )Tj -/TT12 1 Tf -14.8345 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. Returns )Tj -/TT8 1 Tf -4.4771 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a list. Examples:)Tj -/TT8 1 Tf --19.436 -1.6667 TD -(\(LAST \(A B C\)\) => \(C\))Tj -0 -1 TD -(\(LAST \(A B . C\)\) => \(B . C\))Tj -T* -(\(LAST A\) => NIL)Tj -10 0 0 10 102 118.08 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 118.08 Tm -(FLAST)Tj -/F1 1 Tf -10 0 0 10 135 118.08 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 118.08 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 143.2709 118.08 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 149.2718 118.08 Tm -( )Tj -32.8176 0 TD -([Function])Tj --35.4033 -1.8833 TD -(Faster version of )Tj -/TT8 1 Tf -7.5908 0 TD -(LAST)Tj -/TT6 1 Tf -2.4004 0 TD -( that terminates on a null-check.)Tj -/TT8 1 Tf -10 0 0 10 102 81.25 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 81.25 Tm -(NLEFT)Tj -/F1 1 Tf -10 0 0 10 135 81.25 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 81.25 Tm -(L N TAIL)Tj -/TT8 1 Tf -10 0 0 10 181.077 81.25 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 187.078 81.25 Tm -[( )-28116.9([Function])]TJ -/TT8 1 Tf --6.7864 -1.8833 TD -(NLEFT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0002 Tc -0.0031 Tw -( returns the tail of )Tj -/TT12 1 Tf -8.1451 0 TD -0 Tc -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( that contains )Tj -/TT12 1 Tf -6.1892 0 TD -0 Tc -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( more elements than )Tj -/TT12 1 Tf -9.2492 0 TD -0 Tc -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0006 Tc -0.0027 Tw -(. If )Tj -/TT12 1 Tf -1.6799 0 TD -0 Tc -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( does not contain)Tj -/TT16 1 Tf --32.4646 -1.2889 TD -0 Tc -0 Tw -(N)Tj -/TT6 1 Tf -0.7778 0 TD -0.0378 Tw -[( more elements than )]TJ -/TT12 1 Tf -9.387 0 TD -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5378 0 TD -(NLEFT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0378 Tw -[( returns )]TJ -/TT8 1 Tf -3.7797 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0378 Tw -[(. If )]TJ -/TT12 1 Tf -1.7833 0 TD -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0378 Tw -[( is )]TJ -/TT8 1 Tf -1.2904 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0378 Tw -[( or not a tail of )]TJ -/TT12 1 Tf -6.9088 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5378 0 TD -(NLEFT)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -37 0 obj -<< -/Length 6859 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-8)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.1344 Tw -(returns the last )Tj -/TT12 1 Tf -7.2857 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1344 Tw -[( list cells in )]TJ -/TT12 1 Tf -5.6716 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.1344 Tw -(. )Tj -/TT8 1 Tf -1.0189 0 TD -0 Tw -(NLEFT)Tj -/TT6 1 Tf -3.0005 0 TD -0.1344 Tw -[( can be used to work backwards through a list.)]TJ --18.1768 -1.2889 TD -0 Tw -(Example:)Tj -/TT17 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(A B C D E\)\))Tj -1.0132 -1 TD -(\(A B C D E\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(NLEFT FOO 2\))Tj -1.0132 -1 TD -(\(D E\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(NLEFT FOO 1 \(CDDR FOO\)\))Tj -1.0132 -1 TD -(\(B C D E\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(NLEFT FOO 3 \(CDDR FOO\)\))Tj -1.0132 -1 TD -(NIL)Tj -10 0 0 10 150 456.66 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 456.66 Tm -(LASTN)Tj -/F1 1 Tf -10 0 0 10 183 456.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 456.66 Tm -(L N)Tj -/TT8 1 Tf -10 0 0 10 202.0726 456.66 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.0736 456.66 Tm -[( )-31117.4([Function])]TJ --3.786 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(\(CONS X Y\))Tj -/TT6 1 Tf -6.001 0 TD -(, where )Tj -/TT8 1 Tf -3.519 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( is the last )Tj -/TT12 1 Tf -4.6431 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( elements of )Tj -/TT12 1 Tf -5.5718 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is the initial segment, e.g.,)Tj -/TT8 1 Tf --24.3052 -1.6667 TD -(\(LASTN \(A B C D E\) 2\) => \(\(A B C\) D E\))Tj -0 -1 TD -(\(LASTN \(A B\) 2\) => \(NIL A B\))Tj -/TT6 1 Tf --4 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a list containing at least)Tj -/TT16 1 Tf -13.2974 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( elements.)Tj -/TT8 1 Tf -10 0 0 10 150 379.23 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 379.23 Tm -(TAILP)Tj -/F1 1 Tf -10 0 0 10 183 379.23 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 379.23 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 202.0726 379.23 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 379.23 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT12 1 Tf -3.7948 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -(, if )Tj -/TT12 1 Tf -1.5096 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -[( is a )]TJ -/TT16 1 Tf -2.1682 0 TD -0 Tw -(tail)Tj -/TT6 1 Tf -1.3325 0 TD -0.0678 Tw -[( of the list )]TJ -/TT12 1 Tf -4.8693 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -(; otherwise )Tj -/TT8 1 Tf -5.2415 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0678 Tw -(. )Tj -/TT12 1 Tf -0.8856 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -[( is a tail of )]TJ -/TT12 1 Tf -5.0908 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -[( if it is )]TJ -/TT8 1 Tf -3.2272 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0678 Tw -[( to 0 or more)]TJ -/TT8 1 Tf --34.1204 -1.2889 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(s of )Tj -/TT12 1 Tf -1.8027 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --4.2031 -2.0667 TD -(Note: If )Tj -/TT12 1 Tf -3.8521 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to 1 or more )Tj -/TT8 1 Tf -5.8657 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(s of )Tj -/TT12 1 Tf -1.8027 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is called a proper tail.)Tj -/TT4 1 Tf -10 0 0 10 102 309.14 Tm -(Counting List Cells)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 306.43 m -558.01 306.43 l -S -BT -/TT8 1 Tf -10 0 0 10 150 291.2 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 291.2 Tm -(LENGTH)Tj -/F1 1 Tf -10 0 0 10 188.4 291.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 291.2 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 196.6709 291.2 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 202.6718 291.2 Tm -[( )-31717.6([Function])]TJ --3.1858 -1.8833 TD -0.0289 Tw -(Returns the length of the list )Tj -/TT12 1 Tf -12.9521 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -(, where length is defined as the number of )Tj -/TT8 1 Tf -20.1311 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -(s required)Tj --35.4836 -1.2889 TD -0 Tw -(to reach a non-list. Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(LENGTH \(A B C\)\) => 3)Tj -0 -1 TD -(\(LENGTH \(A B C . D\)\) => 3)Tj -T* -(\(LENGTH A\) => 0)Tj -10 0 0 10 150 212.37 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 212.37 Tm -(FLENGTH)Tj -/F1 1 Tf -10 0 0 10 193.8 212.37 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.67 212.37 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 202.0709 212.37 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.0718 212.37 Tm -[( )-31117.6([Function])]TJ --3.7858 -1.8833 TD -(Faster version of )Tj -/TT8 1 Tf -7.5908 0 TD -(LENGTH)Tj -/TT6 1 Tf -3.6006 0 TD -( that terminates on a null-check.)Tj -/TT8 1 Tf -10 0 0 10 150 175.54 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 175.54 Tm -(EQLENGTH)Tj -/F1 1 Tf -10 0 0 10 199.2 175.54 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 202.07 175.54 Tm -(X N)Tj -/TT8 1 Tf -10 0 0 10 218.2726 175.54 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 224.2736 175.54 Tm -[( )-29317.4([Function])]TJ --5.586 -1.8833 TD -0.0433 Tw -(Equivalent to )Tj -/TT8 1 Tf -6.2668 0 TD -0.1033 Tw -(\(EQUAL \(LENGTH)Tj -/TT10 1 Tf -8.5047 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.7034 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.7034 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0433 Tw -(, but more efficient, because )Tj -/TT8 1 Tf -12.7919 0 TD -0 Tw -(EQLENGTH)Tj -/TT6 1 Tf -4.8008 0 TD -0.0433 Tw -[( stops as)]TJ --36.1714 -1.2889 TD -0.0944 Tw -(soon as it knows that )Tj -/TT12 1 Tf -10.0372 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0944 Tw -[( is longer than )]TJ -/TT12 1 Tf -6.932 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0944 Tw -(. )Tj -/TT8 1 Tf -0.9389 0 TD -0 Tw -(EQLENGTH)Tj -/TT6 1 Tf -4.8008 0 TD -0.0944 Tw -[( is safe to use on \(possibly\) circular)]TJ --23.909 -1.2889 TD -0 Tw -(lists, since it is bounded by )Tj -/TT12 1 Tf -13.1519 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 115.51 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 115.51 Tm -(COUNT)Tj -/F1 1 Tf -10 0 0 10 183 115.51 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 115.51 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 191.2709 115.51 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 197.2718 115.51 Tm -( )Tj -32.8176 0 TD -([Function])Tj --35.4033 -1.8833 TD -0.0233 Tw -(Returns the number of list cells in the list )Tj -/TT12 1 Tf -18.5513 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -[(. Thus, )]TJ -/TT8 1 Tf -3.5417 0 TD -0 Tw -(COUNT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0233 Tw -[( is like a )]TJ -/TT8 1 Tf -3.9254 0 TD -0 Tw -(LENGTH)Tj -/TT6 1 Tf -3.6006 0 TD -0.0233 Tw -[( that goes to all)]TJ --33.2195 -1.2889 TD -0 Tw -(levels. )Tj -/TT8 1 Tf -3.2788 0 TD -(COUNT)Tj -/TT6 1 Tf -3.0005 0 TD -( of a non-list is 0. Examples:)Tj -/TT8 1 Tf --2.2793 -1.6667 TD -(\(COUNT \(A\)\) => 1)Tj -0 -1 TD -(\(COUNT \(A . B\)\) => 1)Tj -T* -(\(COUNT \(A \(B\) C\)\) => 4)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -40 0 obj -<< -/Length 8459 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-9)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0856 Tw -(In this last example, the value is 4 because the list )Tj -/TT8 1 Tf -23.0144 0 TD -0 Tw -(\(A )Tj -/TT12 1 Tf -2.0047 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2044 Tw -[( C\))]TJ -/TT6 1 Tf -2.0047 0 TD -0.0856 Tw -[( uses three list cells for any)]TJ --27.6239 -1.2889 TD -0 Tw -(object )Tj -/TT12 1 Tf -2.832 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(\(B\))Tj -/TT6 1 Tf -1.8003 0 TD -( uses another list cell.)Tj -/TT8 1 Tf -10 0 0 10 102 538.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 538.06 Tm -(COUNTDOWN)Tj -/F1 1 Tf -10 0 0 10 156.6 538.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 159.47 538.06 Tm -(X N)Tj -/TT8 1 Tf -10 0 0 10 175.6726 538.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 181.6736 538.06 Tm -[( )-28717.4([Function])]TJ --6.186 -1.8833 TD -0.12 Tw -(Counts the number of list cells in )Tj -/TT12 1 Tf -15.675 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.12 Tw -(, decrementing )Tj -/TT12 1 Tf -7.0969 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.12 Tw -[( for each one. Stops and returns )]TJ -/TT12 1 Tf -15.4146 0 TD -0 Tw -(N)Tj -/TT6 1 Tf --39.3867 -1.2889 TD -0.1944 Tw -(when it finishes counting, or when )Tj -/TT12 1 Tf -16.7648 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1944 Tw -[( reaches 0. )]TJ -/TT8 1 Tf -5.8305 0 TD -0 Tw -(COUNTDOWN)Tj -/TT6 1 Tf -5.4009 0 TD -0.1944 Tw -[( can be used on circular)]TJ --28.5963 -1.2889 TD -0 Tw -(structures since it is bounded by )Tj -/TT12 1 Tf -15.5649 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(. Examples:)Tj -/TT8 1 Tf --12.165 -1.6667 TD -(\(COUNTDOWN \(A\) 100\) => 99)Tj -0 -1 TD -(\(COUNTDOWN \(A . B\) 100\) => 99)Tj -T* -(\(COUNTDOWN \(A \(B\) C\) 100\) => 96)Tj -T* -(\(COUNTDOWN \(DOCOLLECT 1 NIL\) 100\) => 0)Tj -10 0 0 10 102 438.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 438.03 Tm -(EQUALN)Tj -/F1 1 Tf -10 0 0 10 140.4 438.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 438.03 Tm -(X Y DEPTH)Tj -/TT8 1 Tf -10 0 0 10 191.8779 438.03 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 197.8789 438.03 Tm -[( )-26916.8([Function])]TJ --7.9865 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.4281 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.2411 Tw -[(, for use with \(possibly\) circular structures. Whenever the depth of )]TJ -/TT8 1 Tf -32.7664 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf --38.195 -1.2889 TD -0.0078 Tw -(recursion plus the depth of )Tj -/TT8 1 Tf -12.2318 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( recursion exceeds )]TJ -/TT12 1 Tf -8.3637 0 TD -0 Tw -(DEPTH)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5078 0 TD -(EQUALN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( does not search further)]TJ --29.5046 -1.2889 TD -0.1167 Tw -(along that chain, and returns the symbol )Tj -/TT8 1 Tf -18.9622 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.1167 Tw -[(. If recursion never exceeds )]TJ -/TT12 1 Tf -13.2103 0 TD -0 Tw -(DEPTH)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6167 0 TD -(EQUALN)Tj -/TT6 1 Tf --36.3897 -1.2889 TD -(returns )Tj -/TT8 1 Tf -3.4541 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if the expressions )Tj -/TT12 1 Tf -8.1719 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT12 1 Tf -2.1929 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( are )Tj -/TT8 1 Tf -1.874 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -(; otherwise )Tj -/TT8 1 Tf -5.106 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --23.3999 -1.6667 TD -(\(EQUALN \(\(\(A\)\) B\) \(\(\(Z\)\) B\) 2\) => ?)Tj -0 -1 TD -(\(EQUALN \(\(\(A\)\) B\) \(\(\(Z\)\) B\) 3\) => NIL)Tj -T* -(\(EQUALN \(\(\(A\)\) B\) \(\(\(A\)\) B\) 3\) => T)Tj -/TT4 1 Tf -10 0 0 10 54 332.34 Tm -(Set Operations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 329.63 m -510.01 329.63 l -S -BT -/TT8 1 Tf -10 0 0 10 102 314.4 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 314.4 Tm -(INTERSECTION)Tj -/F1 1 Tf -10 0 0 10 172.8 314.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 175.67 314.4 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 191.8726 314.4 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 197.8736 314.4 Tm -[( )-26917.4([Function])]TJ --7.986 -1.8833 TD -0.1911 Tw -(Returns a list whose elements are members of both lists )Tj -/TT12 1 Tf -26.6396 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1911 Tw -[( and )]TJ -/TT12 1 Tf -2.5751 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1911 Tw -[( \(using )]TJ -/TT8 1 Tf -3.6713 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1911 Tw -[( to do)]TJ --37.0867 -1.2889 TD -0 Tw -(compares\).)Tj -0 -2 TD -(Note that )Tj -/TT8 1 Tf -4.4165 0 TD -(\(INTERSECTION)Tj -/TT6 1 Tf -7.8013 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(X\))Tj -/TT6 1 Tf -1.2002 0 TD -( gives a list of all members of )Tj -/TT8 1 Tf -13.0825 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( without duplicates.)Tj -/TT8 1 Tf -10 0 0 10 102 247.97 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 247.97 Tm -(UNION)Tj -/F1 1 Tf -10 0 0 10 135 247.97 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 247.97 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 154.0726 247.97 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 160.0736 247.97 Tm -[( )-31117.4([Function])]TJ --3.786 -1.8833 TD -0.0822 Tw -(Returns a \(new\) list consisting of all elements included on either of the two original lists)Tj -0 -1.2222 TD -0 Tw -(\(using )Tj -/TT8 1 Tf -3.0391 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( to compare elements\). It is more efficient for )Tj -/TT12 1 Tf -20.2583 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( to be the shorter list.)Tj --26.898 -2.0667 TD -0.2389 Tw -(The value of )Tj -/TT8 1 Tf -6.4574 0 TD -0 Tw -(UNION)Tj -/TT6 1 Tf -3.0005 0 TD -0.2389 Tw -[( is )]TJ -/TT12 1 Tf -1.6926 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.2389 Tw -[( with all elements of )]TJ -/TT12 1 Tf -10.3815 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2389 Tw -[( not in )]TJ -/TT12 1 Tf -3.7938 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.4889 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.2389 Tw -(ed on the front of it.)Tj --30.0153 -1.2889 TD -0.0533 Tw -(Therefore, if an element appears twice in )Tj -/TT12 1 Tf -18.6463 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -(, it will appear twice in )Tj -/TT8 1 Tf -10.7175 0 TD -0 Tw -(\(UNION)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.7279 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.7279 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -[(. Since)]TJ -/TT8 1 Tf --36.8205 -1.2889 TD -0.0878 Tw -(\(UNION \(A\) \(A A\)\) = \(A A\))Tj -/TT6 1 Tf -16.7293 0 TD -0.0367 Tw -(, while )Tj -/TT8 1 Tf -3.3004 0 TD -0.0878 Tw -(\(UNION \(A A\) \(A\)\) = \(A\))Tj -/TT6 1 Tf -15.4413 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5367 0 TD -(UNION)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( is)]TJ --39.0082 -1.2889 TD -0 Tw -(non-commutative.)Tj -/TT8 1 Tf -10 0 0 10 102 147.34 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 147.34 Tm -(LDIFFERENCE)Tj -/F1 1 Tf -10 0 0 10 167.4 147.34 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 170.27 147.34 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 186.4726 147.34 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 192.4736 147.34 Tm -[( )-27517.4([Function])]TJ --7.386 -1.8833 TD -0.1378 Tw -[(List Difference. Returns a list of the elements in )]TJ -/TT12 1 Tf -23.7596 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1378 Tw -[( that are not members of )]TJ -/TT12 1 Tf -11.8638 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1378 Tw -[( \(using)]TJ -/TT8 1 Tf --36.8236 -1.2889 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( to compare elements\).)Tj --3.0005 -2.0667 TD -(Note: If )Tj -/TT12 1 Tf -3.8521 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT12 1 Tf -2.1929 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( share no elements, )Tj -/TT8 1 Tf -8.7007 0 TD -(LDIFFERENCE)Tj -/TT6 1 Tf -6.6011 0 TD -( returns a copy of )Tj -/TT12 1 Tf -7.98 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 80.31 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 80.31 Tm -(LDIFF)Tj -/F1 1 Tf -10 0 0 10 135 80.31 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 80.31 Tm -(LST TAIL ADD)Tj -/TT8 1 Tf -10 0 0 10 202.6805 80.31 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.6815 80.31 Tm -[( )-25716.5([Function])]TJ -/TT12 1 Tf --9.1868 -1.8833 TD -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( must be a tail of )]TJ -/TT12 1 Tf -7.7218 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(, i.e., )Tj -/TT8 1 Tf -2.3256 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0278 Tw -[( to the result of applying some number of )]TJ -/TT8 1 Tf -18.8403 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(s to )Tj -/TT12 1 Tf -1.8515 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --39.7407 -1.2889 TD -(\(LDIFF)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(LST)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( returns a list of all elements in )Tj -/TT12 1 Tf -13.813 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -( up to )Tj -/TT12 1 Tf -2.8262 0 TD -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6142 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-10)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(If )Tj -/TT12 1 Tf -0.9455 0 TD -(ADD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -[( is not )]TJ -/TT8 1 Tf -2.9956 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -(, the value of )Tj -/TT8 1 Tf -6.0563 0 TD -0 Tw -(LDIFF)Tj -/TT6 1 Tf -3.0005 0 TD -0.0256 Tw -[( is effectively )]TJ -/TT8 1 Tf -6.1177 0 TD -0 Tw -(\(NCONC)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6601 0 TD -(ADD)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.6601 0 TD -(\(LDIFF)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6601 0 TD -(LST)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6601 0 TD -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(,)Tj --39.7589 -1.2889 TD -(i.e., the list difference is added at the end of )Tj -/TT12 1 Tf -19.4556 0 TD -(ADD)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --21.2559 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.0244 0 TD -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1044 Tw -[( is not a tail of )]TJ -/TT12 1 Tf -7.0827 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6044 0 TD -(LDIFF)Tj -/TT6 1 Tf -3.0005 0 TD -0.1044 Tw -[( generates an error, )]TJ -/TT8 1 Tf -9.18 0 TD -0.25 Tw -(LDIFF: not a tail)Tj -/TT6 1 Tf -10.9517 0 TD -0.1044 Tw -(. )Tj -/TT8 1 Tf -0.9589 0 TD -0 Tw -(LDIFF)Tj -/TT6 1 Tf --37.0032 -1.2889 TD -0.1067 Tw -(terminates on a null-check, so it will go into an infinite loop if )Tj -/TT12 1 Tf -28.811 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1067 Tw -[( is a circular list and)]TJ -/TT12 1 Tf --30.6113 -1.2889 TD -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -( is not a tail.)Tj --2.4004 -2.0667 TD -(Example:)Tj -/TT17 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(A B C D E F\)\))Tj -1.0132 -1 TD -(\(A B C D E F\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(CDDR FOO\))Tj -1.0132 -1 TD -(\(C D E F\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LDIFF FOO \(CDDR FOO\)\))Tj -1.0132 -1 TD -(\(A B\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LDIFF FOO \(CDDR FOO\) \(1 2\)\))Tj -1.0132 -1 TD -(\(1 2 A B\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LDIFF FOO \(C D E F\)\))Tj -1.0132 -1 TD -(LDIFF: not a tail)Tj -T* -(\(C D E F\))Tj -/TT6 1 Tf --6 -1.8444 TD -0.0622 Tw -(Note that the value of )Tj -/TT8 1 Tf -10.1817 0 TD -0 Tw -(LDIFF)Tj -/TT6 1 Tf -3.0005 0 TD -0.0622 Tw -[( is always new list structure unless )]TJ -/TT12 1 Tf -16.0303 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.15 Tw -[( = NIL)]TJ -/TT6 1 Tf -3.9006 0 TD -0.0622 Tw -(, in which)Tj --35.5135 -1.2889 TD -0 Tw -(case the value is )Tj -/TT12 1 Tf -7.3867 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -( itself.)Tj -/TT4 1 Tf -10 0 0 10 102 334 Tm -(Searching Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 331.29 m -558.01 331.29 l -S -BT -/TT8 1 Tf -10 0 0 10 150 316.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 316.06 Tm -(MEMB)Tj -/F1 1 Tf -10 0 0 10 177.6 316.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 180.47 316.06 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 196.6726 316.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 202.6736 316.06 Tm -[( )-31717.4([Function])]TJ --3.186 -1.8833 TD -0.0722 Tw -(Determines if )Tj -/TT12 1 Tf -6.3803 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -[( is a member of the list )]TJ -/TT12 1 Tf -10.7404 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -[(. If there is an element of )]TJ -/TT12 1 Tf -11.9538 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3222 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0722 Tw -[( to )]TJ -/TT12 1 Tf -1.5165 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -(, returns the)Tj --34.5138 -1.2889 TD -0 Tw -(tail of )Tj -/TT12 1 Tf -2.7871 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( starting with that element. Otherwise, returns )Tj -/TT8 1 Tf -20.9873 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. Examples:)Tj -/TT8 1 Tf --22.1748 -1.6667 TD -(\(MEMB A \(A \(W\) C D\)\) => \(A \(W\) C D\))Tj -0 -1 TD -(\(MEMB C \(A \(W\) C D\)\) => \(C D\))Tj -T* -(\(MEMB W \(A \(W\) C D\)\) => NIL)Tj -T* -(\(MEMB \(W\) \(A \(W\) C D\)\) => NIL)Tj -10 0 0 10 150 227.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 227.63 Tm -(FMEMB)Tj -/F1 1 Tf -10 0 0 10 183 227.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 227.63 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 202.0726 227.63 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.0736 227.63 Tm -[( )-31117.4([Function])]TJ --3.786 -1.8833 TD -(Faster version of )Tj -/TT8 1 Tf -7.5908 0 TD -(MEMB)Tj -/TT6 1 Tf -2.4004 0 TD -( that terminates on a null-check.)Tj -/TT8 1 Tf -10 0 0 10 150 190.8 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 190.8 Tm -(MEMBER)Tj -/F1 1 Tf -10 0 0 10 188.4 190.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 190.8 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 207.4726 190.8 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 213.4736 190.8 Tm -[( )-30517.4([Function])]TJ --4.386 -1.8833 TD -0.0622 Tw -(Identical to )Tj -/TT8 1 Tf -5.3574 0 TD -0 Tw -(MEMB)Tj -/TT6 1 Tf -2.4004 0 TD -0.0622 Tw -[( except that it uses )]TJ -/TT8 1 Tf -8.6876 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0622 Tw -[( instead of )]TJ -/TT8 1 Tf -5.0285 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0622 Tw -[( to check membership of )]TJ -/TT12 1 Tf -11.3868 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( in )]TJ -/TT12 1 Tf -1.4975 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --39.759 -1.2889 TD -(Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(MEMBER C \(A \(W\) C D\)\) => \(C D\))Tj -0 -1 TD -(\(MEMBER W \(A \(W\) C D\)\) => NIL)Tj -T* -(\(MEMBER \(W\) \(A \(W\) C D\)\) => \(\(W\) C D\))Tj -10 0 0 10 150 111.97 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 111.97 Tm -(EQMEMB)Tj -/F1 1 Tf -10 0 0 10 188.4 111.97 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 191.27 111.97 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 207.4726 111.97 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 213.4736 111.97 Tm -[( )-30517.4([Function])]TJ --4.386 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if either )Tj -/TT12 1 Tf -3.9263 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, or else )Tj -/TT12 1 Tf -3.6138 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list and )Tj -/TT12 1 Tf -5.4897 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is an )Tj -/TT8 1 Tf -2.5469 0 TD -(FMEMB)Tj -/TT6 1 Tf -3.0005 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -46 0 obj -<< -/Length 8017 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-11)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT4 1 Tf --42.221 -4.38 TD -(Substitution Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -10 0 0 10 102 550.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 550.26 Tm -(SUBST)Tj -/F1 1 Tf -10 0 0 10 135 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.87 550.26 Tm -(NEW OLD EXPR)Tj -/TT8 1 Tf -10 0 0 10 202.6805 550.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.6815 550.26 Tm -[( )-25716.5([Function])]TJ --9.1868 -1.8833 TD -0.0867 Tw -(Returns the result of substituting )Tj -/TT12 1 Tf -15.2502 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( for all occurrences of )]TJ -/TT12 1 Tf -10.1526 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( in the expression )]TJ -/TT12 1 Tf -8.3437 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --39.7475 -1.2889 TD -0.1478 Tw -(Substitution occurs whenever )Tj -/TT12 1 Tf -13.8403 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -[( is )]TJ -/TT8 1 Tf -1.5104 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1478 Tw -[( to )]TJ -/TT8 1 Tf -1.6676 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -[( of some subexpression of )]TJ -/TT12 1 Tf -12.3951 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -(, or)Tj --38.4149 -1.2889 TD -0 Tw -(when )Tj -/TT12 1 Tf -2.9493 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.2222 Tw -[( is atomic and )]TJ -/TT8 1 Tf -7.2864 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.2222 Tw -[( to a non-)]TJ -/TT8 1 Tf -4.8317 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.4722 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2222 Tw -[( of some subexpression of )]TJ -/TT12 1 Tf -12.7674 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.2222 Tw -[(. For)]TJ --37.3084 -1.2889 TD -0 Tw -(example:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(SUBST A B \(C B \(X . B\)\)\) => \(C A \(X . A\)\))Tj -0 -1 TD -(\(SUBST A \(B C\) \(\(B C\) D B C\)\) => \(A D B C\) )Tj -/TT12 1 Tf -27.6045 0 TD -(not)Tj -/TT8 1 Tf -1.8003 0 TD -( \(A D . A\))Tj --33.4048 -1.8444 TD -(SUBST)Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -[( returns a copy of )]TJ -/TT12 1 Tf -8.0689 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0178 Tw -[( with the appropriate changes. Furthermore, if )]TJ -/TT12 1 Tf -21.1281 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.0178 Tw -[( is a list,)]TJ --36.3981 -1.2889 TD -0 Tw -(it is copied at each substitution.)Tj -/TT8 1 Tf -10 0 0 10 102 427.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 427.63 Tm -(DSUBST)Tj -/F1 1 Tf -10 0 0 10 140.4 427.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 427.63 Tm -(NEW OLD EXPR)Tj -/TT8 1 Tf -10 0 0 10 208.0805 427.63 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 214.0815 427.63 Tm -[( )-25116.5([Function])]TJ --9.7868 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.3059 0 TD -(SUBST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1189 Tw -(, but it does not copy )Tj -/TT12 1 Tf -10.2236 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1189 Tw -(, but changes the list structure )Tj -/TT12 1 Tf -14.227 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1189 Tw -[( itself. Like)]TJ -/TT8 1 Tf --34.5578 -1.2889 TD -0 Tw -(SUBST)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(DSUBST)Tj -/TT6 1 Tf -3.6006 0 TD -( substitutes with a copy of )Tj -/TT12 1 Tf -11.8384 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -(. More efficient than )Tj -/TT8 1 Tf -9.4141 0 TD -(SUBST)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 379.2 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 379.2 Tm -(LSUBST)Tj -/F1 1 Tf -10 0 0 10 140.4 379.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 379.2 Tm -(NEW OLD EXPR)Tj -/TT8 1 Tf -10 0 0 10 208.0805 379.2 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 379.2 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.417 0 TD -(SUBST,)Tj -/TT6 1 Tf -3.6006 0 TD -0.23 Tw -[( but )]TJ -/TT12 1 Tf -2.4424 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.23 Tw -[( is substituted as a segment of the list )]TJ -/TT12 1 Tf -18.7521 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.23 Tw -[( rather than as an)]TJ --31.4128 -1.2889 TD -0 Tw -(element. For instance,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(LSUBST \(A B\) Y \(X Y Z\)\) => \(X A B Z\))Tj -/TT6 1 Tf --4 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -( is not a list, )Tj -/TT8 1 Tf -5.501 0 TD -(LSUBST)Tj -/TT6 1 Tf -3.6006 0 TD -( returns a copy of )Tj -/TT12 1 Tf -7.98 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -( with all )Tj -/TT12 1 Tf -3.8652 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -(s deleted:)Tj -/TT8 1 Tf --23.8677 -1.6667 TD -(\(LSUBST NIL Y \(X Y Z\)\) => \(X Z\))Tj -10 0 0 10 102 282.77 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 282.77 Tm -(SUBLIS)Tj -/F1 1 Tf -10 0 0 10 140.4 282.77 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 282.77 Tm -(ALST EXPR FLG)Tj -/TT8 1 Tf -10 0 0 10 213.4814 282.77 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 219.4824 282.77 Tm -[( )-24516.4([Function])]TJ -/TT12 1 Tf --10.3869 -1.8833 TD -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -( is a list of pairs:)Tj -/TT8 1 Tf -1.5996 -1.6667 TD -(\(\()Tj -/TT12 1 Tf -1.2002 0 TD -(OLD)Tj -1.7998 -0.2222 TD -(1)Tj -/TT10 1 Tf -0.6 0.2222 TD -( . )Tj -/TT12 1 Tf -1.8003 0 TD -(NEW)Tj -1.7997 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(OLD)Tj -1.7997 -0.2222 TD -(2)Tj -/TT10 1 Tf -0.6 0.2222 TD -( . )Tj -/TT12 1 Tf -1.8003 0 TD -(NEW)Tj -1.7997 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(...)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(OLD)Tj -1.7993 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -( . )Tj -/TT12 1 Tf -1.8003 0 TD -(NEW)Tj -1.7997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT6 1 Tf --31 -2.2889 TD -(Each )Tj -/TT12 1 Tf -2.6167 0 TD -(OLD)Tj -1.8011 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.23 Tw -[( is an atom. )]TJ -/TT8 1 Tf -6.7018 0 TD -0 Tw -(SUBLIS)Tj -/TT6 1 Tf -3.6006 0 TD -0.23 Tw -[( returns the result of substituting each )]TJ -/TT12 1 Tf -18.6588 0 TD -0 Tw -(NEW)Tj -1.8022 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.23 Tw -[( for the)]TJ --36.3811 -1.5111 TD -0 Tw -(corresponding )Tj -/TT12 1 Tf -6.7017 0 TD -(OLD)Tj -1.8017 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -( in )Tj -/TT12 1 Tf -1.373 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(, e.g.,)Tj -/TT8 1 Tf --8.8768 -1.8889 TD -(\(SUBLIS \(\(A . X\) \(C . Y\)\) \(A B C D\)\) => \(X B Y D\))Tj -/TT6 1 Tf --4 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9344 0 TD -(FLG )Tj -/TT8 1 Tf -2.4348 0 TD -0.0344 Tw -(= NIL)Tj -/TT6 1 Tf -3.0349 0 TD -0.0144 Tw -(, new structure is created only if needed, so if there are no substitutions, the)Tj --6.4041 -1.2889 TD -0 Tw -(value is )Tj -/TT8 1 Tf -3.6528 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(. If )Tj -/TT12 1 Tf -1.6699 0 TD -(FLG )Tj -/TT8 1 Tf -2.4004 0 TD -(= T)Tj -/TT6 1 Tf -1.8003 0 TD -(, the value is always a copy of )Tj -/TT12 1 Tf -13.4209 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 149.54 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 149.54 Tm -(DSUBLIS)Tj -/F1 1 Tf -10 0 0 10 145.8 149.54 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 149.54 Tm -(ALST EXPR FLG)Tj -/TT8 1 Tf -10 0 0 10 218.8814 149.54 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 224.8824 149.54 Tm -[( )-23916.4([Function])]TJ --10.9869 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(SUBLIS)Tj -/TT6 1 Tf -3.6006 0 TD -(, but it changes the list structure )Tj -/TT12 1 Tf -14.3809 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -( itself instead of copying it.)Tj -/TT8 1 Tf -10 0 0 10 102 112.71 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 112.71 Tm -(SUBPAIR)Tj -/F1 1 Tf -10 0 0 10 145.8 112.71 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 112.71 Tm -(OLD NEW EXPR FLG)Tj -/TT8 1 Tf -10 0 0 10 235.084 112.71 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 241.085 112.71 Tm -[( )-22116.1([Function])]TJ --12.7872 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.3837 0 TD -(SUBLIS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1967 Tw -(, but elements of )Tj -/TT12 1 Tf -8.3409 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.1967 Tw -[( are substituted for corresponding atoms of )]TJ -/TT12 1 Tf -20.7502 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1967 Tw -[( in)]TJ -/TT12 1 Tf --38.6759 -1.2889 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(, e.g.,)Tj -/TT8 1 Tf -1.5996 -1.6667 TD -(\(SUBPAIR \(A C\) \(X Y\) \(A B C D\)\) => \(X B Y D\))Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -51 0 obj -<< -/Length 7577 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-12)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0811 Tw -(As with )Tj -/TT8 1 Tf -3.8971 0 TD -0 Tw -(SUBLIS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0811 Tw -(, new structure is created only if needed, or if )Tj -/TT12 1 Tf -21.0548 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1956 Tw -[( = T)]TJ -/TT6 1 Tf -2.7915 0 TD -0.0811 Tw -(, e.g., if )Tj -/TT12 1 Tf -3.6525 0 TD -0 Tw -(FLG )Tj -/TT8 1 Tf -2.5959 0 TD -(=)Tj --39.3927 -1.2889 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( and there are no substitutions, the value is )Tj -/TT8 1 Tf -19.2153 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --25.9883 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9533 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( ends in an atom other than )]TJ -/TT8 1 Tf -12.6074 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -(, the rest of the elements on )Tj -/TT12 1 Tf -12.5815 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( are substituted for)]TJ --31.543 -1.2889 TD -0.1289 Tw -[(that atom. For example, if )]TJ -/TT12 1 Tf -12.6327 0 TD -0 Tw -(OLD )Tj -/TT8 1 Tf -2.7093 0 TD -0.3089 Tw -(= \(A B . C\))Tj -/TT6 1 Tf -7.8366 0 TD -0.1289 Tw -[( and )]TJ -/TT12 1 Tf -2.4506 0 TD -0 Tw -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -0.3089 Tw -[( = \(U V X)]TJ -/TT10 1 Tf -6.6364 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.909 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.909 0 TD -(Z\))Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6289 0 TD -(U)Tj -/TT6 1 Tf -0.6001 0 TD -0.1289 Tw -[( is)]TJ --38.9133 -1.2889 TD -0.0722 Tw -(substituted for )Tj -/TT8 1 Tf -6.8847 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5722 0 TD -(V)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -[( for )]TJ -/TT8 1 Tf -1.9184 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -(, and )Tj -/TT8 1 Tf -2.5873 0 TD -0.1744 Tw -(\(X Y Z\) )Tj -/TT6 1 Tf -5.3241 0 TD -0 Tw -(for )Tj -/TT8 1 Tf -1.5961 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -[(. Similarly, if )]TJ -/TT12 1 Tf -6.4359 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[( itself is an atom \(other)]TJ --29.5194 -1.2889 TD -0 Tw -(than )Tj -/TT8 1 Tf -2.2402 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\), the entire list )Tj -/TT12 1 Tf -6.8545 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -( is substituted for it. Examples:)Tj -/TT8 1 Tf --8.6953 -1.6667 TD -(\(SUBPAIR \(A B . C\) \(W X Y Z\) \(C A B B Y\)\) => \(\(Y Z\) W X X)Tj -0 -1.2222 TD -(Y\))Tj --9.3333 -2.0667 TD -(SUBST)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.64 0 TD -(DSUBST)Tj -/TT6 1 Tf -3.6006 0 TD -0.14 Tw -(, and )Tj -/TT8 1 Tf -2.7229 0 TD -0 Tw -(LSUBST)Tj -/TT6 1 Tf -3.6006 0 TD -0.14 Tw -[( all substitute copies of the appropriate expression, whereas )]TJ -/TT8 1 Tf -27.9133 0 TD -0 Tw -(SUBLIS)Tj -/TT6 1 Tf -3.6006 0 TD -(,)Tj --45.0784 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(DSUBLIS)Tj -/TT6 1 Tf -4.2007 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(SUBPAIR)Tj -/TT6 1 Tf -4.2007 0 TD -( substitute the identical structure \(unless )Tj -/TT12 1 Tf -18.1885 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( = T)Tj -/TT6 1 Tf -2.4004 0 TD -(\). For example:)Tj -/TT17 1 Tf --25.8429 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(SETQ FOO \(A B\)\))Tj -1.0132 -1 TD -(\(A B\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(SETQ BAR \(X Y Z\)\))Tj -1.0132 -1 TD -(\(X Y Z\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DSUBLIS \(LIST \(CONS X FOO\)\) BAR\))Tj -1.0132 -1 TD -(\(\(A B\) Y Z\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DSUBLIS \(LIST \(CONS Y FOO\)\) BAR T\))Tj -1.0132 -1 TD -(\(\(A B\) \(A B\) Z\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(EQ \(CAR BAR\) FOO\))Tj -1.0132 -1 TD -(T)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(EQ \(CADR BAR\) FOO\))Tj -1.0132 -1 TD -(NIL)Tj -/TT4 1 Tf -10 0 0 10 102 303.4 Tm -(Association Lists and Property Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 300.69 m -558.01 300.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 286.74 Tm -0.1567 Tw -(It is often useful to associate a set of property names \()Tj -/TT12 1 Tf -25.364 0 TD -0 Tw -(NAME1)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT12 1 Tf -0.6567 0 TD -(NAME2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1567 Tw -(, etc.\), with a set of property)Tj --32.0216 -1.2889 TD -0.1778 Tw -(values \()Tj -/TT12 1 Tf -3.6226 0 TD -0 Tw -(VALUE1)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT12 1 Tf -0.6778 0 TD -(VALUE2)Tj -/TT6 1 Tf -3.6006 0 TD -0.1778 Tw -[(, etc.\). Two list structures commonly used to store such associations are)]TJ --11.5016 -1.2889 TD -0.1022 Tw -[(called property lists and association lists. A list in association list format is a list where each)]TJ -0 -1.2222 TD -0 Tw -(element is a call whose )Tj -/TT8 1 Tf -10.3745 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is a property name, and whose )Tj -/TT8 1 Tf -14.1157 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( is the value:)Tj -/TT8 1 Tf --18.7575 -1.6667 TD -(\( \()Tj -/TT12 1 Tf -1.8003 0 TD -(NAME1)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VALUE1)Tj -/TT8 1 Tf -3.6006 0 TD -(\) \()Tj -/TT12 1 Tf -1.8003 0 TD -(NAME2)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VALUE2)Tj -/TT8 1 Tf -3.6006 0 TD -(\) ...\))Tj -/TT6 1 Tf --29.7367 -1.8444 TD -0.0156 Tw -(A list in property list format is a list where the first, third, etc. elements are the property names, and)Tj -0 -1.2222 TD -0 Tw -(the second, forth, etc. elements are the associated values:)Tj -/TT8 1 Tf -9.3333 -1.6 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(NAME1)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VALUE1)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(NAME2)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VALUE2)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(...\))Tj -/TT6 1 Tf --26.1361 -1.8444 TD -0.0544 Tw -(Another data structure that offers some of the advantages of association lists and property lists is the)Tj -0 -1.2222 TD -0 Tw -(hash array \(see the first page of Chapter 6\).)Tj -0 -2 TD -0.0833 Tw -(The functions below provide facilities for searching and changing lists in property list or association)Tj -0 -1.2222 TD -0 Tw -(list format. )Tj -/TT19 1 Tf -0 -2 TD -(Note:)Tj -/TT6 1 Tf -2.4722 0 TD -0.0411 Tw -[( Property lists are used in many Medley system datatypes. There are special functions that can)]TJ --2.4722 -1.2222 TD -0.0456 Tw -(be used to set and retrieve values from the property lists of symbols \(see the Property Lists section of)Tj -T* -0 Tw -(Chapter 2\), from properties of windows \(see the Window Properties section of Chapter 28\), etc.)Tj -/TT8 1 Tf -10 0 0 10 150 79.66 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 79.66 Tm -(ASSOC)Tj -/F1 1 Tf -10 0 0 10 183 79.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 79.66 Tm -(KEY ALST)Tj -/TT8 1 Tf -10 0 0 10 229.077 79.66 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 235.078 79.66 Tm -[( )-28116.9([Function])]TJ -/TT12 1 Tf --6.7864 -1.8833 TD -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -[( is a list of lists. )]TJ -/TT8 1 Tf -7.5783 0 TD -0 Tw -(ASSOC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -[( returns the first sublist of )]TJ -/TT12 1 Tf -11.9914 0 TD -0 Tw -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -[( whose )]TJ -/TT8 1 Tf -3.4781 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[( is )]TJ -/TT8 1 Tf -1.3282 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0567 Tw -[( to )]TJ -/TT12 1 Tf -1.4854 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[(. If)]TJ --38.4634 -1.2889 TD -0 Tw -(such a list is not found, )Tj -/TT8 1 Tf -10.4785 0 TD -(ASSOC)Tj -/TT6 1 Tf -3.0005 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. Example:)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT17 23 0 R -/TT19 53 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -55 0 obj -<< -/Length 8484 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-13)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT8 1 Tf -9 0 0 9 162 570.14 Tm -(\(ASSOC B \(\(A . 1\) \(B . 2\) \(C . 3\)\)\) => \(B . 2\))Tj -10 0 0 10 102 552.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 552.26 Tm -(FASSOC)Tj -/F1 1 Tf -10 0 0 10 140.4 552.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 552.26 Tm -(KEY ALST)Tj -/TT8 1 Tf -10 0 0 10 186.477 552.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 192.478 552.26 Tm -[( )-27516.9([Function])]TJ --7.3864 -1.8833 TD -(Faster version of )Tj -/TT8 1 Tf -7.5908 0 TD -(ASSOC)Tj -/TT6 1 Tf -3.0005 0 TD -( that terminates on a null-check.)Tj -/TT8 1 Tf -10 0 0 10 102 515.43 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 515.43 Tm -(SASSOC)Tj -/F1 1 Tf -10 0 0 10 140.4 515.43 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 515.43 Tm -(KEY ALST)Tj -/TT8 1 Tf -10 0 0 10 186.477 515.43 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 192.478 515.43 Tm -[( )-27516.9([Function])]TJ --7.3864 -1.8833 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(ASSOC,)Tj -/TT6 1 Tf -3.6006 0 TD -( but uses )Tj -/TT8 1 Tf -4.1621 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( instead of )Tj -/TT8 1 Tf -4.8418 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( when searching for )Tj -/TT12 1 Tf -9.0039 0 TD -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 478.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 478.6 Tm -(PUTASSOC)Tj -/F1 1 Tf -10 0 0 10 151.2 478.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 154.07 478.6 Tm -(KEY VAL ALST)Tj -/TT8 1 Tf -10 0 0 10 218.8805 478.6 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 224.8815 478.6 Tm -[( )-23916.5([Function])]TJ --10.9868 -1.8833 TD -(Searches )Tj -/TT12 1 Tf -4.0887 0 TD -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -0.0111 Tw -[( for a sublist )]TJ -/TT8 1 Tf -5.7305 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0111 Tw -[( of which is )]TJ -/TT8 1 Tf -5.3711 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0111 Tw -[( to )]TJ -/TT12 1 Tf -1.3943 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.0111 Tw -[(. If one is found, the )]TJ -/TT8 1 Tf -9.3815 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0111 Tw -[( is replaced)]TJ --34.9676 -1.2889 TD -0 Tw -(\(using )Tj -/TT8 1 Tf -3.0846 0 TD -(RPLACD)Tj -/TT6 1 Tf -3.6006 0 TD -0.0456 Tw -(\) with )Tj -/TT12 1 Tf -2.9573 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[(. If no such sublist is found, )]TJ -/TT8 1 Tf -13.0168 0 TD -0 Tw -(\(CONS)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.709 0 TD -(KEY)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.709 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0456 Tw -[( is added at the)]TJ --33.0788 -1.2889 TD -0 Tw -(end of )Tj -/TT12 1 Tf -3.0508 0 TD -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -(. Returns )Tj -/TT12 1 Tf -4.4771 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -(. If )Tj -/TT12 1 Tf -1.6699 0 TD -(ALST)Tj -/TT6 1 Tf -2.4004 0 TD -( is not a list, generates an error, )Tj -/TT8 1 Tf -14.0132 0 TD -(Arg not list.)Tj -/TT6 1 Tf --35.1453 -2.0667 TD -(The argument order for )Tj -/TT8 1 Tf -10.6978 0 TD -(ASSOC)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(PUTASSOC)Tj -/TT6 1 Tf -4.8008 0 TD -(, etc. is different from that of )Tj -/TT8 1 Tf -12.813 0 TD -(LISTGET)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(LISTPUT)Tj -/TT6 1 Tf -4.2007 0 TD -(, etc.)Tj -/TT8 1 Tf -10 0 0 10 102 399.97 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 399.97 Tm -(LISTGET)Tj -/F1 1 Tf -10 0 0 10 145.8 399.97 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 399.97 Tm -(LST PROP)Tj -/TT8 1 Tf -10 0 0 10 191.877 399.97 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 197.878 399.97 Tm -[( )-26916.9([Function])]TJ --7.9864 -1.8833 TD -(Searches )Tj -/TT12 1 Tf -4.1143 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -[( two elements at a time, by )]TJ -/TT8 1 Tf -12.3201 0 TD -0 Tw -(CDDR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -(, looking for an element )Tj -/TT8 1 Tf -10.9265 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0367 Tw -[( to )]TJ -/TT12 1 Tf -1.4454 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -[(. If one)]TJ --36.6076 -1.2889 TD -0.0311 Tw -(is found, returns the next element of )Tj -/TT12 1 Tf -16.5 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -(, otherwise )Tj -/TT8 1 Tf -5.1682 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -[(. Returns )]TJ -/TT8 1 Tf -4.5704 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -[( if )]TJ -/TT12 1 Tf -1.1862 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -[( is not a list.)]TJ --34.626 -1.2889 TD -0 Tw -(Example:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(LISTGET \(A 1 B 2 C 3\) B\) => 2)Tj -0 -1 TD -(\(LISTGET \(A 1 B 2 C 3\) W\) => NIL)Tj -10 0 0 10 102 318.54 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 318.54 Tm -(LISTPUT)Tj -/F1 1 Tf -10 0 0 10 145.8 318.54 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 318.54 Tm -(LST PROP VAL)Tj -/TT8 1 Tf -10 0 0 10 213.4805 318.54 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 219.4815 318.54 Tm -[( )-24516.5([Function])]TJ --10.3868 -1.8833 TD -(Searches )Tj -/TT12 1 Tf -4.2265 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1489 Tw -[( two elements at a time, by )]TJ -/TT8 1 Tf -13.1057 0 TD -0 Tw -(CDDR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1489 Tw -(, looking for an element )Tj -/TT8 1 Tf -11.4876 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1489 Tw -[( to )]TJ -/TT12 1 Tf -1.6698 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1489 Tw -[(. If)]TJ -/TT12 1 Tf --38.291 -1.2889 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0411 Tw -[( is found, replaces the next element of )]TJ -/TT12 1 Tf -17.2698 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( with )]TJ -/TT12 1 Tf -2.6154 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[(. Otherwise, )]TJ -/TT12 1 Tf -5.9695 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0411 Tw -[( and )]TJ -/TT12 1 Tf -2.2751 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( are)]TJ --38.3315 -1.2889 TD -0.1044 Tw -(added to the end of )Tj -/TT12 1 Tf -9.3938 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1044 Tw -[(. If )]TJ -/TT12 1 Tf -1.9833 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1044 Tw -[( is a list with an odd number of elements, or ends in a)]TJ --14.9776 -1.2889 TD -0.0211 Tw -(non-list other than )Tj -/TT8 1 Tf -8.5067 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT12 1 Tf -0.5211 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0211 Tw -[( and )]TJ -/TT12 1 Tf -2.2351 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( are added at its beginning. Returns )]TJ -/TT12 1 Tf -16.4213 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[(. If )]TJ -/TT12 1 Tf -1.7333 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0211 Tw -[( is)]TJ --39.019 -1.4311 TD -0 Tw -(not a list, generates an error,)Tj -/F2 1 Tf -10 0 0 10 238.935 253.91 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 241.715 253.91 Tm -(Arg not list)Tj -/F2 1 Tf -10 0 0 10 306.5256 253.91 Tm -(.)Tj -/TT8 1 Tf --20.4526 -1.988 TD -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 234.03 Tm -(LISTGET1)Tj -/F1 1 Tf -10 0 0 10 151.2 234.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 154.07 234.03 Tm -(LST PROP)Tj -/TT8 1 Tf -10 0 0 10 197.277 234.03 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 234.03 Tm -([Function])Tj --35.4033 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.1892 0 TD -(LISTGET)Tj -/TT6 1 Tf -4.2007 0 TD -0.0022 Tw -(, but searches )Tj -/TT12 1 Tf -6.2157 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0004 Tc -0.0018 Tw -( one )Tj -/TT8 1 Tf -2.1114 0 TD -0 Tc -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( at a time, i.e., looks at each element. Returns the)Tj --18.3175 -1.2889 TD -0 Tc -0 Tw -(next element after )Tj -/TT12 1 Tf -8.2056 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -(. Examples:)Tj -/TT8 1 Tf --6.606 -1.6667 TD -(\(LISTGET1 \(A 1 B 2 C 3\) B\) => 2)Tj -0 -1 TD -(\(LISTGET1 \(A 1 B 2 C 3\) 1\) => B)Tj -T* -(\(LISTGET1 \(A 1 B 2 C 3\) W\) => NIL)Tj -10 0 0 10 102 154.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 154.6 Tm -(LISTPUT1)Tj -/F1 1 Tf -10 0 0 10 151.2 154.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 154.07 154.6 Tm -(LST PROP VAL)Tj -/TT8 1 Tf -10 0 0 10 218.8805 154.6 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 224.8815 154.6 Tm -[( )-23916.5([Function])]TJ --10.9868 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(LISTPUT)Tj -/TT6 1 Tf -4.2007 0 TD -(, but searches )Tj -/TT12 1 Tf -6.209 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -( one )Tj -/TT8 1 Tf -2.1069 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( at a time. Returns the modified )Tj -/TT12 1 Tf -14.4639 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(. Example:)Tj -/TT17 1 Tf --30.5684 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(A 1 B 2\)\))Tj -1.0132 -1.2222 TD -(\(A 1 B 2\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LISTPUT1 FOO B 3\))Tj -1.0132 -1 TD -(\(A 1 B 3\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LISTPUT1 FOO C 4\))Tj -1.0132 -1 TD -(\(A 1 B 3 C 4\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LISTPUT1 FOO 1 W\))Tj -1.0132 -1 TD -(\(A 1 W 3 C 4\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -58 0 obj -<< -/Length 8395 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-14)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 570.14 Tm -(\(A 1 W 3 C 4\))Tj -/TT6 1 Tf --6 -1.8444 TD -(If )Tj -/TT12 1 Tf -0.9244 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0043 Tw -( is not a list, no error is generated. However, since a non-list cannot be changed into)Tj --2.7247 -1.2889 TD -0 Tc -0.2867 Tw -(a list, )Tj -/TT12 1 Tf -3.1554 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.2867 Tw -[( is not modified. In this case, the value of )]TJ -/TT8 1 Tf -21.7095 0 TD -0 Tw -(LISTPUT1)Tj -/TT6 1 Tf -4.8008 0 TD -0.2867 Tw -[( should be saved.)]TJ --31.4659 -1.2889 TD -0 Tw -(Example:)Tj -/TT17 1 Tf -4 -1.9333 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO NIL\))Tj -1.0132 -1.2222 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(LISTPUT1 FOO A 5\))Tj -1.0132 -1 TD -(\(A 5\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -(NIL)Tj -/TT4 1 Tf -10 0 0 10 102 441 Tm -(Sorting Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 438.29 m -558.01 438.29 l -S -BT -/TT8 1 Tf -10 0 0 10 150 423.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 423.06 Tm -(SORT)Tj -/F1 1 Tf -10 0 0 10 177.6 423.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 180.47 423.06 Tm -(DATA COMPAREFN)Tj -/TT8 1 Tf -10 0 0 10 256.0823 423.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 262.0833 423.06 Tm -[( )-25116.3([Function])]TJ -/TT12 1 Tf --9.787 -1.8833 TD -(DATA)Tj -/TT6 1 Tf -2.4004 0 TD -0.2878 Tw -[( is a list of items to be sorted using )]TJ -/TT12 1 Tf -18.3475 0 TD -0 Tw -(COMPAREFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.2878 Tw -(, a predicate function of two)Tj --26.1488 -1.2889 TD -0.2433 Tw -(arguments which can compare any two items on )Tj -/TT12 1 Tf -23.6762 0 TD -0 Tw -(DATA)Tj -/TT6 1 Tf -2.4004 0 TD -0.2433 Tw -[( and return )]TJ -/TT8 1 Tf -5.9531 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2433 Tw -[( if the first one)]TJ --32.6298 -1.2889 TD -0.2733 Tw -[(belongs before the second. If )]TJ -/TT12 1 Tf -14.7489 0 TD -0 Tw -(COMPAREFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.2733 Tw -[( is )]TJ -/TT8 1 Tf -1.7615 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7733 0 TD -(ALPHORDER)Tj -/TT6 1 Tf -5.4009 0 TD -0.2733 Tw -[( is used; thus )]TJ -/TT8 1 Tf -7.1099 0 TD -0 Tw -(\(SORT)Tj -/TT12 1 Tf --36.9957 -1.2889 TD -(DATA)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( will alphabetize a list. If )]TJ -/TT12 1 Tf -11.5449 0 TD -0 Tw -(COMPAREFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( is )]TJ -/TT8 1 Tf -1.2815 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5333 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -(s of items that are lists are given to)Tj -/TT8 1 Tf --24.1615 -1.2889 TD -0 Tw -(ALPHORDER)Tj -/TT6 1 Tf -5.4009 0 TD -0.1 Tw -(, otherwise the items themselves; thus )Tj -/TT8 1 Tf -17.6127 0 TD -0.2389 Tw -(\(SORT A-LIST T\))Tj -/TT6 1 Tf -9.4792 0 TD -0.1 Tw -[( will alphabetize)]TJ --32.4928 -1.2889 TD -0 Tw -(an assoc list by the )Tj -/TT8 1 Tf -8.498 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of each item. )Tj -/TT8 1 Tf -6.3628 0 TD -(\(SORT X ILESSP\))Tj -/TT6 1 Tf -9.6016 0 TD -( will sort a list of integers.)Tj --26.2627 -2.0667 TD -0.0133 Tw -(The value of )Tj -/TT8 1 Tf -5.7807 0 TD -0 Tw -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( is the sorted list. The sort is destructive and uses no extra storage. The)]TJ --8.1811 -1.2889 TD -0.0778 Tw -(value returned is )Tj -/TT8 1 Tf -8.0063 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0778 Tw -[( to )]TJ -/TT12 1 Tf -1.5276 0 TD -0 Tw -(DATA)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -[( but elements have been switched around. There is no safe)]TJ --13.1345 -1.2889 TD -0.0356 Tw -(way to interrupt )Tj -/TT8 1 Tf -7.6174 0 TD -0 Tw -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -(. If you abort a call to )Tj -/TT8 1 Tf -9.8421 0 TD -0 Tw -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( by any means, you may loose elements)]TJ --22.2603 -1.2889 TD -0.2189 Tw -[(from the list beeing sorted. The algorithm used by )]TJ -/TT8 1 Tf -24.8061 0 TD -0 Tw -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2189 Tw -[( is such that the maximum)]TJ --27.2065 -1.2889 TD -0 Tw -(number of compares is )Tj -/TT16 1 Tf -10.3604 0 TD -(N)Tj -/TT6 1 Tf -0.7778 0 TD -(*log)Tj -1.7851 -0.3333 TD -(2)Tj -/TT16 1 Tf -0.5 0.3333 TD -(N)Tj -/TT6 1 Tf -0.7778 0 TD -(, where )Tj -/TT16 1 Tf -3.519 0 TD -(N)Tj -/TT6 1 Tf -0.7778 0 TD -( is \()Tj -/TT8 1 Tf -1.5479 0 TD -(LENGTH)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(DATA)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --24.5804 -2.3333 TD -0.0289 Tw -[(Note: If )]TJ -/TT8 1 Tf -3.9387 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(COMPAREFN)Tj -/TT10 1 Tf -5.4009 0 TD -( )Tj -/TT8 1 Tf -0.669 0 TD -0.0689 Tw -(A B\) = )Tj -/TT12 1 Tf -4.4074 0 TD -0 Tw -(\(COMPAREFN)Tj -/TT10 1 Tf -6.001 0 TD -( )Tj -/TT8 1 Tf -0.669 0 TD -(B)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.669 0 TD -(A\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0289 Tw -(, then the ordering of )Tj -/TT8 1 Tf -9.7348 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -[( and )]TJ -/TT8 1 Tf -2.2507 0 TD -0 Tw -(B)Tj -/TT6 1 Tf --34.0741 -1.2889 TD -(may or may not be preserved.)Tj --5.3333 -2 TD -0.0411 Tw -(For example, if )Tj -/TT8 1 Tf -6.9935 0 TD -0.0978 Tw -(\(FOO . FIE\))Tj -/TT6 1 Tf -6.7966 0 TD -0.0411 Tw -[( appears before )]TJ -/TT8 1 Tf -7.1585 0 TD -0.0978 Tw -(\(FOO . FUM\))Tj -/TT6 1 Tf -6.7966 0 TD -0.0411 Tw -[( in )]TJ -/TT8 1 Tf -1.4553 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5411 0 TD -0.0978 Tw -(\(SORT X T\))Tj -/TT6 1 Tf -6.1965 0 TD -0.0411 Tw -[( may or)]TJ --36.5382 -1.2889 TD -0 Tw -(may not reverse the order of these two elements. )Tj -/TT8 1 Tf -10 0 0 10 150 201.63 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 201.63 Tm -(MERGE)Tj -/F1 1 Tf -10 0 0 10 183 201.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.87 201.63 Tm -(A B COMPAREFN)Tj -/TT8 1 Tf -10 0 0 10 256.0814 201.63 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 262.0824 201.63 Tm -[( )-25116.4([Function])]TJ -/TT12 1 Tf --9.7869 -1.8833 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -[( and )]TJ -/TT12 1 Tf -2.224 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -[( are lists which have previously been sorted using)]TJ -/TT19 1 Tf -22.1943 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2656 0 TD -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0156 Tw -[( and )]TJ -/TT12 1 Tf -2.224 0 TD -0 Tw -(COMPAREFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.0156 Tw -(. Value is)Tj --35.9093 -1.2889 TD -0.2222 Tw -[(a destructive merging of the two lists. It does not matter which list is longer. After)]TJ -0 -1.2222 TD -0 Tw -(merging both )Tj -/TT12 1 Tf -6.2495 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT12 1 Tf -2.1929 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -( are equal to the merged list. \(In fact, )Tj -/TT8 1 Tf -16.4062 0 TD -(\(CDR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(\(CDR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(\).)Tj -/TT19 1 Tf -0.583 0 TD -( )Tj -/TT8 1 Tf -10 0 0 10 150 142.2 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 142.2 Tm -(ALPHORDER)Tj -/F1 1 Tf -10 0 0 10 204.6 142.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 207.47 142.2 Tm -(A B CASEARRAY)Tj -/TT8 1 Tf -10 0 0 10 277.6814 142.2 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 283.6824 142.2 Tm -[( )-22716.4([Function])]TJ --12.1869 -1.8833 TD -0.0578 Tw -[(A predicate function of two arguments, for alphabetizing. Returns a non-)]TJ -/TT8 1 Tf -33.1761 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0578 Tw -[( value if its)]TJ --34.9764 -1.2889 TD -0.0811 Tw -(arguments are in lexicographic order, i.e., if )Tj -/TT12 1 Tf -20.0688 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -[( does not belong before )]TJ -/TT12 1 Tf -10.9617 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -[(. Numbers come)]TJ --32.2307 -1.2889 TD -0.0389 Tw -(before literal atoms, and are ordered by magnitude \(using )Tj -/TT8 1 Tf -26.1991 0 TD -0 Tw -(GREATERP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0389 Tw -[(\). Literal atoms and)]TJ --30.9999 -1.2889 TD -0.3467 Tw -[(strings are ordered by comparing the character codes in their print names. Thus)]TJ -/TT8 1 Tf -0 -1.2222 TD -0.1511 Tw -(\(ALPHORDER 23 123\))Tj -/TT6 1 Tf -11.104 0 TD -0.0622 Tw -[( is )]TJ -/TT8 1 Tf -1.3393 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -(, whereas )Tj -/TT8 1 Tf -4.5673 0 TD -0.1511 Tw -(\(ALPHORDER A23 A123\))Tj -/TT6 1 Tf -13.5044 0 TD -0.0622 Tw -[( is )]TJ -/TT8 1 Tf -1.3393 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0622 Tw -(, because the)Tj --34.2546 -1.2889 TD -0 Tw -(character code for the digit 2 is greater than the code for 1.)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R -/TT19 53 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -61 0 obj -<< -/Length 8122 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-15)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0544 Tw -(Atoms and strings are ordered before all other data types. If neither )Tj -/TT12 1 Tf -30.7632 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0544 Tw -[( nor )]TJ -/TT12 1 Tf -2.1318 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0544 Tw -[( are atoms or)]TJ --34.0952 -1.2889 TD -0 Tw -(strings, the value of )Tj -/TT8 1 Tf -8.9521 0 TD -(ALPHORDER)Tj -/TT6 1 Tf -5.4009 0 TD -( is always)Tj -/TT8 1 Tf -4.3198 0 TD -( T)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --19.8731 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9244 0 TD -(CASEARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0006 Tc -0.0038 Tw -( is non-)Tj -/TT8 1 Tf -3.2667 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0044 Tw -(, it is a casearray \(see the Random Access File Operations section)Tj --11.3922 -1.2889 TD -0.3333 Tw -(of Chapter 25\) that the characters of )Tj -/TT12 1 Tf -18.3768 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.3333 Tw -[( and )]TJ -/TT12 1 Tf -2.8595 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.3333 Tw -[( are translated through before being)]TJ --22.4365 -1.2889 TD -0 Tw -(compared. Numbers are not passed through )Tj -/TT12 1 Tf -20.0835 0 TD -(CASEARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT19 1 Tf --25.4844 -2.0667 TD -(Note:)Tj -/TT6 1 Tf -2.4722 0 TD -0.0589 Tw -[( If either )]TJ -/TT12 1 Tf -4.4577 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0589 Tw -[( or )]TJ -/TT12 1 Tf -1.5587 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0589 Tw -[( is a number, the value returned in the true case is )]TJ -/TT8 1 Tf -23.9869 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0589 Tw -[(. Otherwise,)]TJ -/TT8 1 Tf --34.2758 -1.2889 TD -0 Tw -(ALPHORDER)Tj -/TT6 1 Tf -5.4009 0 TD -0.1511 Tw -[( returns either )]TJ -/TT8 1 Tf -6.9597 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1511 Tw -[( or )]TJ -/TT8 1 Tf -1.7431 0 TD -0 Tw -(LESSP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1511 Tw -[( to discriminate the cases of )]TJ -/TT12 1 Tf -13.332 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[( and )]TJ -/TT12 1 Tf -2.4951 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[( being)]TJ --37.1319 -1.2889 TD -0 Tw -(equal or unequal strings/atoms.)Tj -/TT19 1 Tf -0 -2 TD -(Note:)Tj -/TT6 1 Tf -2.4722 0 TD -0.1044 Tc -( )Tj -/TT8 1 Tf -0.7089 0 TD -0 Tc -(ALPHORDER)Tj -/TT6 1 Tf -5.4009 0 TD -0.1044 Tw -[( does no )]TJ -/TT8 1 Tf -4.2508 0 TD -0 Tw -(UNPACK)Tj -/TT6 1 Tf -3.6006 0 TD -(s, )Tj -/TT8 1 Tf -1.0283 0 TD -(CHCON)Tj -/TT6 1 Tf -3.0005 0 TD -(s, )Tj -/TT8 1 Tf -1.0283 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1044 Tw -(es or )Tj -/TT8 1 Tf -2.5526 0 TD -0 Tw -(NTHCHAR)Tj -/TT6 1 Tf -4.2007 0 TD -0.1044 Tw -[(s. It is several times)]TJ --30.6441 -1.2889 TD -0 Tw -(faster for alphabetizing than anything that can be written using these other functions.)Tj -/TT8 1 Tf -10 0 0 10 102 425.46 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 425.46 Tm -(UALPHORDER)Tj -/F1 1 Tf -10 0 0 10 162 425.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 164.87 425.46 Tm -(A B)Tj -/TT8 1 Tf -10 0 0 10 181.0726 425.46 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 187.0736 425.46 Tm -[( )-28117.4([Function])]TJ --6.786 -1.8833 TD -0.1889 Tw -(Defined as )Tj -/TT8 1 Tf -5.3504 0 TD -0 Tw -(\(ALPHORDER)Tj -/TT10 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -1.0534 0 TD -(A)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -1.0534 0 TD -(B)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -1.0534 0 TD -(UPPERCASEARRAY\))Tj -/TT6 1 Tf -9.0015 0 TD -0.1889 Tw -(. )Tj -/TT8 1 Tf -1.1278 0 TD -0 Tw -(UPPERCASEARRAY)Tj -/TT6 1 Tf -8.4014 0 TD -0.1889 Tw -[( maps every)]TJ --34.2425 -1.2889 TD -0.0144 Tw -[(lowercase character into the corresponding uppercase character. For more information on)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(UPPERCASEARRAY)Tj -/TT6 1 Tf -8.4014 0 TD -( see Chapter 25.)Tj -/TT8 1 Tf -10 0 0 10 102 366.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 366.03 Tm -(MERGEINSERT)Tj -/F1 1 Tf -10 0 0 10 167.4 366.03 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 170.27 366.03 Tm -(NEW LST ONEFLG)Tj -/TT8 1 Tf -10 0 0 10 245.8823 366.03 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 251.8833 366.03 Tm -[( )-20916.3([Function])]TJ -/TT12 1 Tf --13.987 -1.8833 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0006 Tc -0.0016 Tw -( is )Tj -/TT8 1 Tf -1.2193 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( or a list of partially sorted items.)Tj -/TT19 1 Tf -14.6025 0 TD -0 Tc -0 Tw -( )Tj -/TT8 1 Tf -0.2522 0 TD -(MERGEINSERT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0001 Tc -0.0021 Tw -( tries to find the best place to)Tj --26.2756 -1.2889 TD -0 Tc -0 Tw -(\(destructively\) insert )Tj -/TT12 1 Tf -9.4531 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -(, e.g.,)Tj -/TT8 1 Tf --7.2534 -1.6667 TD -(\(MERGEINSERT FIE2 \(FOO FOO1 FIE FUM\)\) => \(FOO FOO1 FIE)Tj -2 -1 TD -(FIE2 FUM\))Tj -/TT6 1 Tf --6 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(. )Tj -/TT8 1 Tf -0.75 0 TD -(MERGEINSERT)Tj -/TT6 1 Tf -6.6011 0 TD -( is undoable.)Tj --12.8784 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.011 0 TD -(ONEFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.2178 Tw -[( = T)]TJ -/TT6 1 Tf -2.8359 0 TD -0.0911 Tw -[( and )]TJ -/TT12 1 Tf -2.3751 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.0911 Tw -[( is already a member of )]TJ -/TT12 1 Tf -11.1443 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(MERGEINSERT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0911 Tw -[( does nothing and)]TJ --31.7598 -1.2889 TD -0 Tw -(returns )Tj -/TT12 1 Tf -3.4541 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --10.5877 -2.0667 TD -(MERGEINSERT)Tj -/TT6 1 Tf -6.6011 0 TD -0.2656 Tw -[( is used by )]TJ -/TT8 1 Tf -6.0031 0 TD -0 Tw -(ADDTOFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2656 Tw -[( \(see the Functions for Manipulating File Command Lists)]TJ --18.0051 -1.2889 TD -0.0833 Tw -[(section of Chapter 17\) to insert the name of a new function into a list of functions. The algorithm is)]TJ -0 -1.2222 TD -0.0711 Tw -(essentially to look for the item with the longest common leading sequence of characters with respect)Tj -T* -0 Tw -(to )Tj -/TT12 1 Tf -1.1221 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -(, and then merge )Tj -/TT12 1 Tf -7.7041 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -( in starting at that point.)Tj -/TT4 1 Tf -10 0 0 10 54 191.54 Tm -(Other List Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 188.83 m -510.01 188.83 l -S -BT -/TT8 1 Tf -10 0 0 10 102 173.6 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 173.6 Tm -(REMOVE)Tj -/F1 1 Tf -10 0 0 10 140.4 173.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 173.6 Tm -(X L)Tj -/TT8 1 Tf -10 0 0 10 159.4726 173.6 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 165.4736 173.6 Tm -[( )-30517.4([Function])]TJ --4.386 -1.8833 TD -0.0322 Tw -(Removes all top-level occurrences of )Tj -/TT12 1 Tf -16.561 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0322 Tw -[( from list )]TJ -/TT12 1 Tf -4.3354 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0322 Tw -(, returning a copy of )Tj -/TT12 1 Tf -9.3965 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0322 Tw -[( with all elements)]TJ -/TT8 1 Tf --32.0932 -1.2889 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( removed. Example:)Tj -/TT8 1 Tf --0.9727 -1.6667 TD -(\(REMOVE A \(A B C \(A\) A\)\) => \(B C \(A\)\))Tj -0 -1 TD -(\(REMOVE \(A\) \(A B C \(A\) A\)\) => \(A B C A\))Tj -10 0 0 10 102 103.17 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 103.17 Tm -(DREMOVE)Tj -/F1 1 Tf -10 0 0 10 145.8 103.17 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 148.67 103.17 Tm -(X L)Tj -/TT8 1 Tf -10 0 0 10 164.8726 103.17 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 170.8736 103.17 Tm -[( )-29917.4([Function])]TJ --4.986 -1.8833 TD -(Like )Tj -/TT8 1 Tf -2.4659 0 TD -(REMOVE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2789 Tw -(, but uses )Tj -/TT8 1 Tf -5.2488 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.2789 Tw -[( instead of )]TJ -/TT8 1 Tf -5.6785 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.2789 Tw -(, and actually modifies the list )Tj -/TT12 1 Tf -15.2041 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.2789 Tw -[( when)]TJ --36.9986 -1.2889 TD -0 Tw -(removing )Tj -/TT12 1 Tf -4.5469 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, and thus does not use any additional storage. More efficient than )Tj -/TT8 1 Tf -29.7246 0 TD -(REMOVE)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --38.4722 -2.0667 TD -(DREMOVE)Tj -/TT6 1 Tf -4.2007 0 TD -( cannot )Tj -/TT16 1 Tf -3.48 0 TD -(change)Tj -/TT6 1 Tf -2.7964 0 TD -( a list to )Tj -/TT8 1 Tf -3.7041 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(:)Tj -/TT17 1 Tf --11.9814 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO \(A\)\))Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R -/TT19 53 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -64 0 obj -<< -/Length 6356 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-16)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 570.14 Tm -(\(A\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DREMOVE A FOO\))Tj -1.0132 -1 TD -(NIL)Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -(\(A\))Tj -/TT6 1 Tf --6 -1.8444 TD -(The )Tj -/TT8 1 Tf -1.9549 0 TD -(DREMOVE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( above returns )]TJ -/TT8 1 Tf -6.6905 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -(, and does not perform any )Tj -/TT8 1 Tf -12.4132 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -(es, but the value of )Tj -/TT8 1 Tf -8.7449 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf --38.2049 -1.2889 TD -(is )Tj -/TT16 1 Tf -0.9648 0 TD -(still)Tj -/TT6 1 Tf -1.5557 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\(A\))Tj -/TT6 1 Tf -1.8003 0 TD -(, because there is no way to change a list to a non-list. See )Tj -/TT8 1 Tf -25.8032 0 TD -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 482.06 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 482.06 Tm -(REVERSE)Tj -/F1 1 Tf -10 0 0 10 193.8 482.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.67 482.06 Tm -(L)Tj -/TT8 1 Tf -10 0 0 10 202.0709 482.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 208.0718 482.06 Tm -[( )-31117.6([Function])]TJ --3.7858 -1.8833 TD -(Reverses \(and copies\) the top level of a list, e.g.,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(REVERSE \(A B \(C D\)\)\) => \(\(C D\) B A\))Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a list, )Tj -/TT8 1 Tf -5.501 0 TD -(REVERSE)Tj -/TT6 1 Tf -4.2007 0 TD -( just returns )Tj -/TT12 1 Tf -5.541 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 414.23 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 414.23 Tm -(DREVERSE)Tj -/F1 1 Tf -10 0 0 10 199.2 414.23 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 202.07 414.23 Tm -(L)Tj -/TT8 1 Tf -10 0 0 10 207.4709 414.23 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 213.4718 414.23 Tm -[( )-30517.6([Function])]TJ --4.3858 -1.8833 TD -0.0367 Tw -(Value is the same as that of )Tj -/TT8 1 Tf -12.5267 0 TD -0 Tw -(REVERSE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0367 Tw -(, but )Tj -/TT8 1 Tf -2.3058 0 TD -0 Tw -(DREVERSE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0367 Tw -[( destroys the original list )]TJ -/TT12 1 Tf -11.3655 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[( and thus)]TJ --35.7995 -1.2889 TD -0 Tw -(does not use any additional storage. More efficient than )Tj -/TT8 1 Tf -25.0967 0 TD -(REVERSE)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 367.03 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 156.001 367.03 Tm --0.0001 Tc -(COMPARELISTS )Tj -/TT12 1 Tf -7.8 0 TD -0 Tc -(X Y)Tj -/TT8 1 Tf -10 0 0 10 242.4035 367.03 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 248.4045 367.03 Tm -[( )-26636.2([Function])]TJ --8.2672 -1.8833 TD -0.15 Tw -(Compares the list structures )Tj -/TT12 1 Tf -13.2748 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.15 Tw -[( and )]TJ -/TT12 1 Tf -2.4929 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.15 Tw -[( and prints a description of any differences to the)]TJ --16.9679 -1.2889 TD -0.1222 Tw -[(terminal. If )]TJ -/TT12 1 Tf -5.7837 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1222 Tw -[( and )]TJ -/TT12 1 Tf -2.4373 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1222 Tw -[( are )]TJ -/TT8 1 Tf -2.1185 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1222 Tw -[( lists, )]TJ -/TT8 1 Tf -2.7503 0 TD -0 Tw -(COMPARELISTS)Tj -/TT6 1 Tf -7.2012 0 TD -0.1222 Tw -[( simply prints out )]TJ -/TT8 1 Tf -8.629 0 TD -0 Tw -(SAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1222 Tw -[(. Returns)]TJ -/TT8 1 Tf --35.521 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --1.8003 -2.0667 TD -(COMPARELISTS)Tj -/TT6 1 Tf -7.2012 0 TD -0.4144 Tw -[( prints a terse description of the differences between the two list)]TJ --7.2012 -1.2889 TD -0.05 Tw -[(structures, highlighting the items that have changed. This printout is not a complete and)]TJ -0 -1.2222 TD -0.0578 Tw -[(perfect comparison. If )]TJ -/TT12 1 Tf -10.4196 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0578 Tw -[( and )]TJ -/TT12 1 Tf -2.3084 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0578 Tw -[( are radically different list structures, the printout will not)]TJ --13.9282 -1.2889 TD -0.2589 Tw -(be very useful. )Tj -/TT8 1 Tf -8.0458 0 TD -0 Tw -(COMPARELISTS)Tj -/TT6 1 Tf -7.2012 0 TD -0.2589 Tw -[( is meant to be used as a tool to help users isolate)]TJ --15.247 -1.2889 TD -0 Tw -(differences between similar structures.)Tj -0 -2 TD -0.1444 Tw -(When a single element has been changed for another, )Tj -/TT8 1 Tf -25.1223 0 TD -0 Tw -(COMPARELISTS)Tj -/TT6 1 Tf -7.2012 0 TD -0.1444 Tw -[( prints out items)]TJ --32.3234 -1.2889 TD -0 Tw -(such as )Tj -/TT8 1 Tf -3.4766 0 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(A)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(->)Tj -/TT10 1 Tf -1.2002 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, for example:)Tj -/TT17 1 Tf --4.2773 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(COMPARELISTS \(A B C D\) \(X B E D\)\))Tj -1.0132 -1 TD -(\(A -> X\) \(C -> E\))Tj -T* -(NIL)Tj -/TT6 1 Tf --6 -1.8444 TD -0.0467 Tw -(When there are more complex differences between the two lists, )Tj -/TT8 1 Tf -28.9886 0 TD -0 Tw -(COMPARELISTS)Tj -/TT6 1 Tf -7.2012 0 TD -0.0467 Tw -[( prints )]TJ -/TT12 1 Tf -3.2125 0 TD -0 Tw -(X)Tj -/TT6 1 Tf --39.4023 -1.2889 TD -(and )Tj -/TT12 1 Tf -2.1106 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1678 Tw -(, highlighting differences and abbreviating similar elements as much as possible.)Tj -/TT8 1 Tf --2.7107 -1.2889 TD -0 Tw -(&)Tj -/TT6 1 Tf -1.2002 0 TD -0.01 Tw -( is used to signal a single element that is present in the same place in the two lists; )Tj -/TT8 1 Tf -36.9981 0 TD -0 Tw -(--)Tj -/TT6 1 Tf --38.1983 -1.2889 TD -0.0767 Tw -( signals an arbitrary number of elements in one list but not in the other; )Tj -/TT8 1 Tf -33.3653 0 TD -0 Tw -(-2-)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -1.0767 0 TD -(-3-)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj --39.2428 -1.2889 TD -(etc. signal a sequence of two, three, etc. elements that are the same in both lists. Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(COMPARELISTS \(A B C D\) \(A D\)\))Tj -2 -1 TD -(\(A B C --\))Tj -T* -(\(A D\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(COMPARELISTS \(A B C D E F G H\) \(A B C D X\)\))Tj -1.0132 -1 TD -(\(A -3- E F --\))Tj -T* -(\(A -3- X\))Tj -/TT17 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(COMPARELISTS \(A B C \(D E F \(G\) H\) I\) \(A B \(G\) C \(D E F)Tj -1.0132 -1 TD -(H\) I\)\))Tj -T* -(\(A & & \(D -2- \(G\) &\) &\))Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R -/TT16 22 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -67 0 obj -<< -/Length 904 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-17)Tj -/TT14 1 Tf -10 0 0 10 476.21 612 Tm -(LISTS)Tj -/TT8 1 Tf -9 0 0 9 180 570.14 Tm -(\(A & \(G\) & \(D -2- &\) &\))Tj -10 0 0 10 102 552.26 Tm -(\()Tj -/TT10 1 Tf -9 0 0 9 108.001 552.26 Tm -(NEGATE)Tj -/F1 1 Tf -10 0 0 10 140.4 552.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 143.27 552.26 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 148.6709 552.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 154.6718 552.26 Tm -[( )-31717.6([Function])]TJ --3.1858 -1.8833 TD -(For a form )Tj -/TT12 1 Tf -4.9038 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, returns a form which computes the negation of )Tj -/TT12 1 Tf -21.5278 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( . For example:)Tj -/TT8 1 Tf --23.6318 -2 TD -(\(NEGATE \(MEMBER X Y\)\) => \(NOT \(MEMBER X Y\)\))Tj -0 -1 TD -(\(NEGATE \(EQ X Y\)\) => \(NEQ X Y\))Tj -T* -(\(NEGATE \(AND X \(NLISTP X\)\)\) => \(OR \(NULL X\) \(LISTP X\)\))Tj -T* -(\(NEGATE NIL\) => T)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -70 0 obj -<< -/Length 202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(3-18)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -12 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -78 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -79 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBEBHD+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 81 0 R ->> -endobj -81 0 obj -<< -/Filter /FlateDecode -/Length 20104 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8"T0bIiԃ4NˡfwfGf?%Z%%Zh -FnRKD>iRi nxj3>yo-rBC}ϙ X;ohQ`r WI`]Y|/714E:cE翳|U^VlZUhu r*;6<݁DžBǭXaX8b&׹˪$aUNkZ, O Oȓ%Jxm(ϏPSy39& n**|A/G#+x)UF#k'[#L#9@IdyJ7˝=|a#dn%y8XM si -E> MЊxs!hn8 !fت8n0u|$lnyfA w6e6luD^#'8p<%j0qR=\ql[ Yn:IpNXaemyq`&I r -i|a8iy Nԟ=!}?Nc1b( wBM -=(|'zd5|)PYЀ>*̵dMK5|+a0% 09#,sGJ+\ U| -145}2 (=3q6H\e2ŵy1WMp?O:&Wdp?ta' 0G>E4l= *aH"G ;q81WVMV aM&ō D-dE,l9nPԃc -WE1 zizNHg>ׂ3dOpgeq`IH 0@*>1d}2JO$g݋q2$}tLGWz -ȌF~ɾ`ꙛ&2Kd;19Ww.cO@<'F/r6]-;HZ~$sT]-Dcf~`bkl|'lKl\j2۸ƕ66qOu6u6Ƨm`ml79$OqCb1 50O%PMbHWLT!5U)!t5sg@K_pU%p7L7_䍸/I*13ܘ.j4denx}UZUFAZSk)% $4FFbRkIhת~+߯tTm8*ZP ~'FBP]EA]h4(q#iIvTTtG4SH^H|Rژ =Ǒf&H#>op`"`b+3#~˭*X v4SVIv9=ڠ_cr,XwgX"~›)[6db i,[Xr -%j5;^+*>BFfl/Ɏ^7qg̣f})M~ЗsFi?,"OEh1ыnKED%wd/g4lo^-]f>&;0oݶ:N_fwZ}Uo/CkW_\78rzɍ9 |',-u9ǩcԱe6OS+ZqRS˗b]﫞ZO\9&RRw]j˽b8Z{5RKg -uR/RF*gZ[Jvwõqk3KtH6yASnc>)!$ uLO睝[l) ޑ.y{>T.doOof\$o};yR3;/frf&ww|v>hnjuE;WwĩKMIαyyۇ6w}ҡ].S`Ps {[Np d3+][dHC}6qqy?l_%>;s+ -Ve8adTu" Z6 AK9jhI%@&uU5T:9%LDTQnk26I !qgxgNw[ d5xLV)ZR]#=rEvgX?z_Xp[ -q:ȘEѽҬF}Ij0:0 2VV z@"#۵>[F*jr \dv?G_(Q~:ʄNo('W2_iB:4l0r1㰺X :ccxvQyt.tV%d,Q=KUQ#^R([^Gb8<_Й*K@@cG xm}f72*IF_3;6='Qp) -j׉]|<<*<^䧇v5< 棾͏IB)xSS[/ɄaQi%`:3>d̍u^\_ţOT㺞K[ѶhϮ'Ofe}8*xpٳ0[g˯~{eUm=0P#qiΩg-lclMD茢65r$s{Xn{yMvB;I@9)ѡAP@Ry.颥,!atȨn2 -ir; \20z4*7"HaH7E$q0lKU\J6d' DlSpq\۟S np'4 hpI!`;0 WLx “3]@^l&h6 ]x/p -y W'  hk+-T԰~Naʔd]=?Nki/_Abct-YKj:f|hiO8/ QR]WWB̳_DG~Hm=6r&;>✓;\~UfBȶli1i -c`nDS\B$CIΠLѭ -e1α6b+L`#nn/m=K}wﳺ{w 2Fۖ7v[WuO,1K c2 1ͱE.lY喉UJ_h֙a9˼bjI%$)5b I,/=dtS'j`"a=6L,\0,YN5, G-Vvk ,Gmi=KzqG$G\̢nxA5P" YznmS 0UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*i⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^->?t1;iɑPE$ n-ȼH !6#SّٜGw1iU?8*M:k CS]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` -s]1Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5.0XV<,]*hКc6Oܥ_r&De1#{imcEGAɺdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\W*~[S1?7ꧾuܩE^/5NA# hО%-e Oo]_0hc 2<ytLV,Z1ְZR+Ʈ17 f<6cY1fjh/H2VQOhX,OtV"A_4Y.WYqK}Zf(بHeÏBvFXt2iujd2DuDF@M+i3ubPhL&3f 1iF(빗bԎg{9=cOؿ%vCjjSj:[-Q*5F՝jzTPW?Uϫ/zC#i[KԒ4&ht)mViP/+w$Pco0"J5Vb#N28A -6IU -"*U6lÉ -9Q5㜊Bmc:sA4EG@6pa*mq)ڋ{LQ0KX0m$z:Fjn -vlǚy#Rql<O)#oŃoN}HΥ l ؐݰ~QOC^%Ďgٻvlk;su\y_gn;R# $_+WQ߹.}ڌҖN'cjtcW{,fMfҪeRu#x--1fsa^Adib^H|QY@sm (h{oao,r1:hkYSu$k&bRD =*'bt:^l;^躧;M=meTRڦ蔖hD.aՔA.'Q^yް|k]4G~=t$9\VĥpҝxQ̓w6˹xqIT#mNF,.ˋS28"]z뵁&*fK[qlD>(, -JbbB&^^H0$Dg!] EvR #fO'Qn.y2exƎ,++L^if]|W7Yɜ 9g Bž"$oq/`ce[b=9pU8ț^ČM}*DQ.fß yd|@cGvAbӨ 7H {V22 <_4v4J_MI$ŏ|9(~w[57 noZ8" Ɛ0hxCDܑ\5%FRA<|a2IY0YU. EȬJ9X9!z~ @D5؄ :a0>ɰ>/+AT7xx2Vōky'?#RE^&kH y#BV!o?wH9B'G,'7H"׈I2j{ dt>L'It:!y|ZN+ru4B7-nv{~gzOA:Pdw JPT+ْ"7+W*ejҨ4!GkU:?(.r -YeyڠrEL Cfednϒx6}Mal:dYG,,GR -e>d VNA~1 -5KVexGaYюF0̼D.備07aȐD=aK xP >a~JۢGۢ7aB~~ -F ?ɱ.;ִ(i_a-AQM0Z1"3q*L>E2ʥU7oU@{b~-`7Y&k YJYZx|ÎzoRّc2z @Hѯs?m -W7'c=){B= cPl _ ;C}W_ Ɨ:Xm N?Rk"!yF8u 2Gѡ |d/ ǯَ~ݩoGT$ޜۄLtyjCa kxp&h;‘&v (DIZ Hw$@cLK`нÄhGZiCc5b;x۽$`?q|>o{ߝwT'B -8[hsnlUD\D1%.EwV,ɻ("KU|Ꚗ^:ϰVκ7 |(Tt m©;:_~IeUC>x`+57V7S{8ojAS:paqoقzt%OwZm5i`h{+Y. -CmrCɧ?se%Un'_?V׼ džfx"ɭ'evC9P}8`gj {[i[HM#C{ڑÅ-z|>̜Gz{ޗezyn#n>c+V'; R* wۣ#M3mw>^}@~\vk vEs"^tϕ;Ã*"fܚkޱfC"ޝW5Qo-/?Aw9v^3½g}[(G%Tqg ԯ9{] e[1#>Uͩ{MևLaw! )Tg.+./730*4<%FdnSةHJOiĸR::PviK 5${®] ڌTq784h}htZ;k}OP<%y@-U0栚PO-j -~+`% a ` lBt/18G(<긫Nx 50r&\j>Ť| խ{"wP_'DI y#d&O7~OgPO5 oROs娯 -ԠЯSVJz#t%hFh+}u֓(^zFt v1ZR@u5jkffVb l-[>mFvf3T_:Qu}1fQ=Þ@I!KIߞ%ԨxE1W*cPWPo7vL:ŽnK#"aTy3ܽwz)ų]*lz%%z,Kr+>[pҘGJ2d݋G3]߼Vw&*.7MqLsOIYHJ㕡-|j2$E3JLB_}A@0hy{ tdtEyE|UoZuC kP *;=p_50ő!Bw Bbl3L`A,$"m_<rcDI,4U#vEbKc/a>PC1/MF1_i,ǂq)ț'P?ceLIZmƴ 56>|:/#EfݽMH^0rrBF;ox,HgQ oP8nv@X"NykǙA-G%$%$2T8l;-N~9(so @Ut"ֽ\XOP 0uxqCNzɔ`8,ʵc!KȢi , ].?HyOXmMX}LmInXuչ΋u> calœ"KtZ4{1NOaP `%KeW5X|&\y,d8[m\6W$#Z{ 2 ĭ%. ;سK%Ctˈj6, .RYOf!y.ׁؐoEixqzA+1tl&|6l|&v5{,E #*-D3㕀0._#X,RVTGRq=NU-M(>1K ?#E-F|j2aOim#DL5D.smW. 3&U3zIpsv8dٙ$fe&z DbI',; ,$ϛ:حyP/wBK&%2TE 5{({dWI_΍ ִaULQ>Qj20㸉,$jU`jyC ctqrsjCS"+n Mt%[A.7Q:]`8!*Rs$nA@:P{ FTt>$ -ׂ bZɤ훥A)U6 q}{smyvgg3}T'>. Ž,fI# ?uH tTXYtv'_=;4ZճӋ:׳U!t|[yvSl8d^<;݌@Jj7qεݸmزVF}.H[9mlxYYӼҵySOzxeԕP:>?}̙US"ºӊuG2S84}s45tr)mY:VZx2 -m^ףG<|Hǹ!u׵bfʼm| O` O c^H]9's6'C9KNd'+,ZL*%dsAdấLG7dQ` 6Z<b,^X ߂GL;C!شX׬#zdMK~lo.U`OyR I 8~_JHu&Y,0sLd@),> A=Һ0@badq>`dńB\p,KpA.S=09-vׅiصgq,6Z@9̿XAݱb1ŚzlĕnmD r;^oӺЕYJI*PBbf##" ,Bg2sm @=Vw-mNEDb!u;| "9[Euѱq9E/Zd^ߑC -Lt-egܿh#`EWpuʎDjl+*)) I`@!(;mZd!eGChAu_2aaZQIE+W͇L;WbdΨѺmC -$yqլE|;dD@-.ɢT}jV.2xߺWt#$^ CN/28euq{)ÉA17-L E(^?@q}8u-8JdA -= )3=dQ"]b]jϽ. |HG|,zV}0~@ /i2{n/^/41ٱeoyE4 +7ixDV$ ^ DͰLbàmB5-yQW\AKR3SGSnSQoV]a2WכVֺYd_<"\0Zd - /OXN{g _cA7SpZT1kbq^$ ܏Ƀ&L -2f1M73 SX?ݫr|n\`aYZZX,Ovip]۬:uµ -.v="/,zEMb ^lbg9Ԧ%xE XT;^/W[X~pI`-Z,ȶ"u~C>>[gۅ7Ȕ{Ȑ?w#'g^Uf6+h!7N -Twb5TѺ?= B(Q9H }ШWW]0O*?HآLE / ?_=4Mx 7 2cS".?dWaCQƔO+Ǖ/)_U+OuI/ګ* ]Xл< Qh[\kE0&A QO-Yz@aQ15vtm>Z5gxxHpeQésL|3[t=L$^3Y -²Xbn36-dl5[6}.?xw }x,fQ~R[$4B'KS -i(%m>H2r&gy\./_˭O|SaJ2@LQ^Rf+s*]e{rV\rITFդU5KV 5S?U H83(ڋD*Q~U]@ҋj$$U"ioG(j6E<*zRJ cc{ "L4 g(1D1PA FH]I1ȏJa1h7*MBQfI$HAH>j!JA"zO?#: $p;pľ%zPTzx\$e_2=%>xbY~uiϽͶQ+c=1Y6ɦ'x^^}jTX8§߫ -fS5wt手eEt{m!W B:S^kq*1~Y~k\ki=z(dx75>7j]p1uU˲ S֋eNJ_ueA~C^IbuYhޢ6kՉUޚmP~Eg|Y}Ɩ3c1>39R\iv9caф,52]ѷYݺ/n`_<~iZUt$qe39*NYWnVҧwA3ibeܗqs]Kdř\1N65̾myԮ r0qFE33ݖ8}I<ؓۯ,̴&xwYtyrcyN##uNE/|EC,aO`|?' #!A>[Yx /@f^Ux bV Vvn8ag<\uhψhҗđxDRI:JLb'd,@&ɤL#Lf -jԒ%߁4ߐ&k1@| {Ar|BN0/D|M fML1t:fR;ͣ1gt":N31w,1K2ѳ Gt݅az~DOEz^_ޢ4ccp3#YX,,%@ zfPE`TȒ( -ŨĘ^J`TcdݦRLuT1J2W~A`ݱ+0~I1*p%zf#ʃ˺k"."Fa!7+bTR*%]9J*z=(LW=,QxC1ϯYjFMuln%ڣ_xN+|RKR}<)gSNO{6؎ƉNўcOb|.? T|Ͱ)EV3#!łP6F;\W溽HmT7NLz89gsީ\:ׅeA2:Suc N]pc-. -3SΟs9<+.\[\^oW+x^#ö= :"KCwy,`I<]bbspW8z&<5&nDTc/>%@.B-n~'j-\[l8Of棎 %01 "ח8IVqeP~_&m3c'mB b%al}XѓXJeɲlI:%C4!Pi(ڰХPJKh%%P -ӿ',5z?'N1^ʹ/0ݐwn1 < o]_A!=?cr2)#|ļC S?|m~:'[ (9}y&ڗ 0{壀י=Q0a틻 c p<=޿w` o_ʮF0@ -f .sn.<4v؍!?g_/#׆zUx%5C?Evدw x8[;\y{{E7^OKӽo\e^ʁB{;\jЙ?@~ ,_gP2uw?zs_a@x~{jsp4)4}=.|7LC5ߗ./}NDG`L1ܟ q6)jӡ_^M `M ,"_VpX[mD =ñ(ۄH%q9'iCFX$te K[ ɘ,1YJD+뀝" E1$QedkSQߒלL\CnQ#׳Kk\梷%i7JS$$i [ᑫzHwԛDóX*Cvar"5p4Xc`% .cx,YSŒ;<6 QaO3aHn}~8i%_ ]W[)O9kF{cV3E-q ONFZ$V7 Ԥ~;FcȝMLU_QoLL^0ag^ j=ad3,]cj=4EIzb'q -Van*ԕ@Y>>ǝZuJq\OF$V[u/ic)*׊ʩ,*A[L=F3:rxqt<+T! 5 -VW86ޤ; -\9=vM:&F&LZo0kCt÷ -nn]\6(Agze:lM3Y,yn$fR''zt)oUA˥飾r>6\UQESo53̈́FD^,a.YX1+FHҵOXNG,8⼎.0e07ʭeQϕ F$8"jsqɕc Mwrxtc;iE>Fo4VeTD'M)N1'#C3ZwYJĆ UQaō24C[LT]Tk4KVJ,#|p#lPbX7D7-*P^?ƑR/¸m&FI6ݎ:- -4xu>x~ӝ|??oe}?;eՕZY(D{Z@L ,Q0HFPFt$˸/AQ33aDpܒ1 `T:feUʗT{瞻{Ͻ[|C7.M:iBwU[L -h4uYf97J%}7-( jӗ1{W ZaFʭ [OtΛ3:㋔'ouZ? 󵇖;ϯW}J2*4.y壃9WUnK :3gL ;UՁY;isZyӹ~X8K~BTE_;_+ij晙 a{NIѴVeGvkw8_>\3ڼ`6#"WUԬ+ͼ}px[}Iq ;W/kvkqOVGbëAŕ"l*R9^>?1:`׈+ln=6Z;_s6bos$ jNl [5g˓BEU/h8^ƃM1|4]n ޽:>u怔]͟p1oX]U9ckWqz YZɎb 2 W}dOv0kh u^`BBf#DC2wԋ:]6kzZJX\cMhJr뛵RGڭʒ2,A!K*H .7|>;GC=xlVw!ߡR-rB;ȷ` x^^//ч.ΝjjdМ|lOQ=K `=xcq(X k`5XE(UՓnbB#S%U5TrY\RA|uWP"3CXWK} c~NKH歶DP~[>99aiQ"3EQ{Ѧ,?EO ~7_!BN'42@ -e~k"vk[!o7}L5Fh6:\ kPwLP'+XӏP'\Wr2LLKb>KQc)m %(ɦ:.ɢlUA^:Q"3GFDhp-DE=9YZ\Ǭu:l"ezO-F9՟4Oal> d]*V?cfM -8N)d0D '!9r<Ƃc X7q`8*4hDt800 lFA  [˼< a+PphCczȃA6~/v@>70+ӋwLgиA/lA-g t4ӖٱEB@M¢(dۘ@e Mo@KR S_WpF(AbK%?g,} ?;)᧎-IҸeRWѯcs-+XN yj^,q(P--NNjfr+8iὸ3>r x\YGu\n,;AON:޾\ӋIÚ9)8Xʉ8XD,c8UG=>K#竞O iy,M%%e=_ 58&BH"mG\&qSKmKvXxzyx_L2nQ)zF` -endstream -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 83 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 117 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 84 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 85 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 72 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 0 667 611 0 0 278 0 0 611 0 0 778 -667 0 722 667 611 0 0 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 0 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 73 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 0 0 333 333 389 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 74 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [600 0 600 0 0 600 600 0 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 0 0 600 600 0 0 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 0 600 0 0 -0 600 0 600 600 600 600 600 0 600 0 0 600 600 600 600 -600 0 600 600 600 0 0 0 0 0 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 75 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 600 0 0 0 600 600 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 76 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [600 0 0 0 0 0 0 0 600 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 600 0 0 0 0 600 600 -0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 77 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 78 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 778 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 407 0 389 0 500 500 278 0 0 278 778 556 444 -500 0 0 389 333 0 500 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 79 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBEBHD+Symbol -/Encoding /Identity-H -/DescendantFonts [ 86 0 R ] -/ToUnicode 87 0 R ->> -endobj -86 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBEBHD+Symbol -/FontDescriptor 80 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -53 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 500 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 82 0 R ->> -endobj -87 0 obj -<< -/Filter /FlateDecode -/Length 228 ->> -stream -HTP=O0 +<Rnp=%M#7IrCg?؞7m 2d8R6F;:tk8aH @kp80~> -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -88 0 obj -<< -/S /D ->> -endobj -89 0 obj -<< -/Nums [0 88 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 19 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R 39 0 R 42 0 R] -/Count 10 -/Parent 48 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [45 0 R 50 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R] -/Count 8 -/Parent 48 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [13 0 R 49 0 R ] -/Count 18 -/MediaBox [0 0 612 792] ->> -endobj -90 0 obj -<< -/CreationDate (D:20210202102638-06'00') -/ModDate (D:20210202102638-06'00') -/Producer (Apple pstopdf) ->> -endobj -91 0 obj -<< -/Type /Catalog -/Pages 48 0 R -/PageLabels 89 0 R ->> -endobj -xref -0 92 -0000000000 65535 f -0000157459 00000 n -0000000016 00000 n -0000008601 00000 n -0000152415 00000 n -0000152589 00000 n -0000153287 00000 n -0000153498 00000 n -0000153920 00000 n -0000154471 00000 n -0000155006 00000 n -0000155348 00000 n -0000129460 00000 n -0000159036 00000 n -0000157540 00000 n -0000008776 00000 n -0000018400 00000 n -0000153110 00000 n -0000155758 00000 n -0000157624 00000 n -0000018589 00000 n -0000026840 00000 n -0000156063 00000 n -0000156449 00000 n -0000157708 00000 n -0000027066 00000 n -0000034548 00000 n -0000157792 00000 n -0000034763 00000 n -0000041428 00000 n -0000157876 00000 n -0000041643 00000 n -0000049397 00000 n -0000157960 00000 n -0000049599 00000 n -0000057070 00000 n -0000158044 00000 n -0000057272 00000 n -0000064184 00000 n -0000158128 00000 n -0000064399 00000 n -0000072911 00000 n -0000158212 00000 n -0000073090 00000 n -0000079285 00000 n -0000158296 00000 n -0000079477 00000 n -0000087547 00000 n -0000159296 00000 n -0000159173 00000 n -0000158380 00000 n -0000087736 00000 n -0000095366 00000 n -0000156804 00000 n -0000158464 00000 n -0000095571 00000 n -0000104108 00000 n -0000158548 00000 n -0000104299 00000 n -0000112747 00000 n -0000158632 00000 n -0000112965 00000 n -0000121140 00000 n -0000158716 00000 n -0000121358 00000 n -0000127767 00000 n -0000158800 00000 n -0000127961 00000 n -0000128917 00000 n -0000158884 00000 n -0000129085 00000 n -0000129339 00000 n -0000129601 00000 n -0000129798 00000 n -0000130004 00000 n -0000130204 00000 n -0000130395 00000 n -0000130597 00000 n -0000130798 00000 n -0000130993 00000 n -0000131196 00000 n -0000131386 00000 n -0000151580 00000 n -0000151785 00000 n -0000151997 00000 n -0000152205 00000 n -0000156592 00000 n -0000157158 00000 n -0000158968 00000 n -0000158996 00000 n -0000159388 00000 n -0000159511 00000 n -trailer -<< -/Size 92 -/Root 91 0 R -/Info 90 0 R -/ID [<78f150b51c7d7f76b8dd4f72b26765a5><78f150b51c7d7f76b8dd4f72b26765a5>] ->> -startxref -159581 -%%EOF diff --git a/docs/medley-irm/04-STRINGS.pdf b/docs/medley-irm/04-STRINGS.pdf deleted file mode 100644 index 71e47cfb..00000000 --- a/docs/medley-irm/04-STRINGS.pdf +++ /dev/null @@ -1,3376 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6248 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-1)Tj -/TT4 1 Tf -10 0 0 10 451.65 568.2 Tm -(4. STRINGS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0544 Tw -[(A string represents a sequence of characters. Interlisp strings are a subtype of Common Lisp strings.)]TJ -0 -1.2222 TD -0.1556 Tw -(Medley provides functions for creating strings, concatenating strings, and creating sub-strings of a)Tj -T* -0 Tw -(string; all accepting or producing Common Lisp-acceptable strings.)Tj -0 -2 TD -0.0344 Tw -(A string is typed as a double quote \()Tj -/TT8 1 Tf -16.2697 0 TD -0 Tw -(")Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -(\), followed by a sequence of any characters except double quote)Tj --16.8698 -1.2889 TD -0 Tw -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(%)Tj -/TT6 1 Tf -0.6001 0 TD -(, terminated by a double quote. To include )Tj -/TT8 1 Tf -19.2881 0 TD -(%)Tj -/TT6 1 Tf -0.6001 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(")Tj -/TT6 1 Tf -0.6001 0 TD -( in a string, type )Tj -/TT8 1 Tf -7.4097 0 TD -(%)Tj -/TT6 1 Tf -0.6001 0 TD -( in front of them:)Tj -/TT8 1 Tf --27.1486 -1.6667 TD -("A string")Tj -0 -1 TD -("A string with %" in it, and a %%.")Tj -0 -1.0667 TD -("")Tj -/TT10 1 Tf -4 0 TD -(; an empty string)Tj -/TT6 1 Tf --9.3333 -1.8444 TD -0.07 Tw -(Strings are printed by )Tj -/TT8 1 Tf -10.1477 0 TD -0 Tw -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -0.07 Tw -[( and )]TJ -/TT8 1 Tf -2.3329 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.07 Tw -[( with initial and final double quotes, and )]TJ -/TT8 1 Tf -18.8193 0 TD -0 Tw -(%)Tj -/TT6 1 Tf -0.6001 0 TD -0.07 Tw -(s inserted where)Tj --37.9009 -1.2889 TD -0.0156 Tw -[(necessary for it to read back in properly. Strings are printed by )]TJ -/TT8 1 Tf -28.3912 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0156 Tw -[( without the double quotes and)]TJ --31.3917 -1.2889 TD -0 Tw -(extra )Tj -/TT8 1 Tf -2.4663 0 TD -(%)Tj -/TT6 1 Tf -0.6001 0 TD -(s. The null string is printed by )Tj -/TT8 1 Tf -13.7983 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -( as )Tj -/TT8 1 Tf -1.4238 0 TD -("")Tj -/TT6 1 Tf -1.2002 0 TD -(. )Tj -/TT8 1 Tf -0.75 0 TD -(\(PRIN1 ""\))Tj -/TT6 1 Tf -6.001 0 TD -( doesnt print anything.)Tj --34.4336 -2.0667 TD -0.1022 Tw -[(Internally, a string is stored in two parts: a string header and the sequence of characters. Several)]TJ -0 -1.2222 TD -0.0344 Tw -(string headers may refer to the the same character sequence, so a substring can be made by creating a)Tj -T* -0.3311 Tw -[(new string header, without copying any characters. Functions that refer to strings actually)]TJ -T* -0.2144 Tw -[(manipulate string headers. Some functions take an old string argument, and re-use the string)]TJ -T* -0 Tw -(pointer.)Tj -/TT8 1 Tf -10 0 0 10 102 332.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 332.89 Tm -(STRINGP)Tj -/TT8 1 Tf -10 0 0 10 145.8071 332.89 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 151.8081 332.89 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 157.209 332.89 Tm -(\) )Tj -/TT6 1 Tf -9 0 0 9 444.63 332.89 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT14 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a string, )Tj -/TT8 1 Tf -5.0391 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf -10 0 0 10 102 293.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 293.06 Tm -(STREQUAL)Tj -/F1 1 Tf -10 0 0 10 151.208 293.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.988 293.06 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 170.1906 293.06 Tm -(\) )Tj -/TT6 1 Tf -9 0 0 9 444.63 293.06 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.8382 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1111 Tw -[( if )]TJ -/TT14 1 Tf -1.3462 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1111 Tw -[( and )]TJ -/TT14 1 Tf -2.4151 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1111 Tw -[( are both strings and they contain the same sequence of characters,)]TJ --9.3998 -1.2889 TD -0 Tw -(otherwise )Tj -/TT8 1 Tf -4.7726 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1667 Tw -(. )Tj -/TT8 1 Tf -1.0833 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1667 Tw -[( uses )]TJ -/TT8 1 Tf -2.763 0 TD -0 Tw -(STREQUAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.1667 Tw -[(. Note that strings may be )]TJ -/TT8 1 Tf -13.0524 0 TD -0 Tw -(STREQUAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.1667 Tw -[( without)]TJ --36.0737 -1.2889 TD -0 Tw -(being )Tj -/TT8 1 Tf -2.7114 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(. For instance,)Tj -/TT8 1 Tf -0.0884 -1.6667 TD -(\(STREQUAL "ABC" "ABC"\) => T)Tj -0 -1 TD -(\(EQ "ABC" "ABC"\) => NIL)Tj --4 -1.8444 TD -(STREQUAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0056 Tw -[( returns )]TJ -/TT8 1 Tf -3.7152 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( if )]TJ -/TT14 1 Tf -1.1351 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( and )]TJ -/TT14 1 Tf -2.204 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( are the same string pointer, or two different string pointers)]TJ --13.6554 -1.2889 TD -0.3033 Tw -(which point to the same character sequence, or two string pointers which point to)Tj -0 -1.2222 TD -0.1433 Tw -[(different character sequences which contain the same characters. Only in the first case)]TJ -T* -0 Tw -(would )Tj -/TT14 1 Tf -3.1348 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( be )Tj -/TT8 1 Tf -1.5322 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 155.77 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 155.77 Tm -(STRING-EQUAL)Tj -/TT8 1 Tf -10 0 0 10 172.8115 155.77 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 178.8125 155.77 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 195.0151 155.77 Tm -(\))Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 155.77 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7771 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[( if )]TJ -/TT14 1 Tf -1.224 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[( and )]TJ -/TT14 1 Tf -2.2929 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[( are either strings or symbols, and they contain the same sequence of)]TJ --9.0942 -1.2889 TD -0 Tw -(characters, ignoring case. For instance,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(STRING-EQUAL "FOO" "Foo"\) => T)Tj -0 -1 TD -(\(STRING-EQUAL "FOO" Foo\) => T)Tj -/TT6 1 Tf --4 -1.8444 TD -0.0133 Tw -(This is useful for comparing things that might want to be considered equal even though)Tj -0 -1.2222 TD -0 Tw -(theyre not both symbols in a consistent case, such as file names and user names.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -16 0 obj -<< -/Length 7554 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-2)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -5.4 -4.38 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 568.2 Tm -(STRING.EQUAL)Tj -/TT8 1 Tf -10 0 0 10 220.8115 568.2 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 226.8125 568.2 Tm -(X Y)Tj -/TT8 1 Tf -10 0 0 10 243.0151 568.2 Tm -(\))Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7682 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( if the print names of )]TJ -/TT14 1 Tf -9.6998 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( and )]TJ -/TT14 1 Tf -2.2751 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0411 Tw -[( contain the same sequence of characters, ignoring)]TJ --17.5433 -1.2889 TD -0 Tw -(case. For instance,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(STRING-EQUAL "320" 320\) => T)Tj -0 -1 TD -(\(STRING-EQUAL "FOO" Foo\) => T)Tj -/TT6 1 Tf --4 -1.8444 TD -(This is like )Tj -/TT8 1 Tf -4.9917 0 TD -(STRING-EQUAL)Tj -/TT6 1 Tf -7.2012 0 TD -(, but handles numbers, etc., where )Tj -/TT8 1 Tf -15.3882 0 TD -(STRING-EQUAL)Tj -/TT6 1 Tf -7.2012 0 TD -( doesnt.)Tj -/TT8 1 Tf -10 0 0 10 150 476.77 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 476.77 Tm -(ALLOCSTRING)Tj -/TT8 1 Tf -10 0 0 10 215.4106 476.77 Tm -( )Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -9 0 0 9 224.1916 476.77 Tm -(N INITCHAR OLD FATFLG)Tj -/TT8 1 Tf -10 0 0 10 337.6101 476.77 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 343.6111 476.77 Tm -[( )-16057.7([Function])]TJ --18.8457 -1.8833 TD -0.0378 Tw -(Creates a string of length )Tj -/TT14 1 Tf -11.5204 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0378 Tw -[( characters of )]TJ -/TT14 1 Tf -6.231 0 TD -0 Tw -(INITCHAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0378 Tw -[( \(which can be either a character code)]TJ --23.1523 -1.2889 TD -0.0167 Tw -[(or something coercible to a character\). If )]TJ -/TT14 1 Tf -18.355 0 TD -0 Tw -(INITCHAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0167 Tw -[( is )]TJ -/TT8 1 Tf -1.2482 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0167 Tw -(, it defaults to character code 0.)Tj --26.2043 -1.2889 TD -0 Tw -(if )Tj -/TT14 1 Tf -0.874 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -( is supplied, it must be a string pointer, which is modified and returned.)Tj --2.6743 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9221 0 TD -(FATFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0003 Tc -0.0019 Tw -( is non-)Tj -/TT8 1 Tf -3.2623 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0022 Tw -(, the string is allocated using full 16-bit NS characters \(see Chapter 2\))Tj --9.5853 -1.2889 TD -0.0489 Tw -[(instead of 8-bit characters. This can speed up some string operations if NS characters are)]TJ -0 -1.2222 TD -0.2233 Tw -[(later inserted into the string. This has no other effect on the operation of the string)]TJ -T* -0 Tw -(functions.)Tj -/TT8 1 Tf -10 0 0 10 150 362.14 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 362.14 Tm -(MKSTRING)Tj -/F1 1 Tf -10 0 0 10 199.208 362.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.988 362.14 Tm -(X FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 261.3977 362.14 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 267.3987 362.14 Tm -[( )-24525.7([Function])]TJ --10.3776 -1.8833 TD -(If )Tj -/TT14 1 Tf -1.0755 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1556 Tw -[( is a string, returns )]TJ -/TT14 1 Tf -9.2709 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1556 Tw -[(. Otherwise, creates and returns a string containing the print)]TJ --11.5466 -1.2889 TD -0 Tw -(name of )Tj -/TT14 1 Tf -3.8228 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. Examples:)Tj -/TT8 1 Tf --0.4229 -1.6667 TD -(\(MKSTRING "ABC"\) => "ABC")Tj -0 -1 TD -(\(MKSTRING \(A B C\)\) => "\(A B C\)")Tj -T* -(\(MKSTRING NIL\) => "NIL")Tj -/TT6 1 Tf --4 -1.8444 TD -(Note that the last example returns the string )Tj -/TT8 1 Tf -19.7593 0 TD -("NIL")Tj -/TT6 1 Tf -3.0005 0 TD -(, not the symbol )Tj -/TT8 1 Tf -7.3442 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --31.9043 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0577 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.1378 Tw -[( is )]TJ -/TT8 1 Tf -1.4904 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1378 Tw -(, then the )Tj -/TT8 1 Tf -4.7698 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1378 Tw -(-name of )Tj -/TT14 1 Tf -4.4313 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1378 Tw -[( is used, computed with respect to the readtable)]TJ -/TT14 1 Tf --17.7502 -1.2889 TD -0 Tw -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -(. For example,)Tj -/TT8 1 Tf -0.9995 -1.6667 TD -(\(MKSTRING "ABC" T\) => "%"ABC%"")Tj -10 0 0 10 150 217.85 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 217.85 Tm -(NCHARS)Tj -/F1 1 Tf -10 0 0 10 188.4062 217.85 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.1862 217.85 Tm -(X FLG RDTBL)Tj -/TT8 1 Tf -10 0 0 10 250.5959 217.85 Tm -(\))Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 217.85 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1144 Tw -(Returns the number of characters in the print name of )Tj -/TT14 1 Tf -25.1498 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1144 Tw -[(. If )]TJ -/TT14 1 Tf -2.0133 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(=T)Tj -/TT6 1 Tf -1.2002 0 TD -0.1144 Tw -(, the )Tj -/TT8 1 Tf -2.3661 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.1144 Tw -(-name is)Tj --36.1302 -1.2889 TD -0 Tw -(used. For example,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(NCHARS ABC\) => 3)Tj -0 -1 TD -(\(NCHARS "ABC" T\) => 5)Tj -/TT18 1 Tf --4 -1.8444 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: )Tj -/TT8 1 Tf -0.75 0 TD -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -( works most efficiently on symbols and strings, but can be given any object.)Tj -/TT8 1 Tf -10 0 0 10 150 127.65 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 127.65 Tm -(SUBSTRING)Tj -/TT8 1 Tf -10 0 0 10 204.6 127.65 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.601 127.65 Tm -(X N M OLDPTR)Tj -/TT8 1 Tf -10 0 0 10 275.4115 127.65 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 281.4125 127.65 Tm -[( )-22968.6([Function])]TJ --11.9347 -1.8833 TD -0.0778 Tw -(Returns the substring of )Tj -/TT14 1 Tf -11.2086 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[( consisting of the )]TJ -/TT14 1 Tf -8.043 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -(th through )Tj -/TT14 1 Tf -5.1541 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -(th characters of )Tj -/TT14 1 Tf -7.2592 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[(. If )]TJ -/TT14 1 Tf -1.9033 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[( is )]TJ -/TT8 1 Tf -1.3704 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --39.7394 -1.2889 TD -0.2133 Tw -(the substring contains the )Tj -/TT14 1 Tf -12.4769 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.2133 Tw -(th character thru the end of )Tj -/TT14 1 Tf -13.5974 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2133 Tw -(. )Tj -/TT14 1 Tf -1.1767 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.2133 Tw -[( and )]TJ -/TT14 1 Tf -2.6195 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.2133 Tw -[( can be negative)]TJ --32.2709 -1.2889 TD -0.2922 Tw -(numbers, which are interpreted as counts back from the end of the string, as with)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(NTHCHAR)Tj -/TT6 1 Tf -4.2007 0 TD -0.0002 Tc -0.0031 Tw -( \(Chapter 2\). )Tj -/TT8 1 Tf -6.0216 0 TD -0 Tc -0 Tw -(SUBSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.0004 Tc -0.0029 Tw -( returns )Tj -/TT8 1 Tf -3.7108 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -( if the substring is not well defined, \(e.g., )Tj -/TT14 1 Tf -18.2634 0 TD -0 Tc -0 Tw -(N)Tj -/TT6 1 Tf --39.3977 -1.2889 TD -(or )Tj -/TT14 1 Tf -1.2976 0 TD -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.1067 Tw -[( specify character positions outside of )]TJ -/TT14 1 Tf -17.5223 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1067 Tw -(, or )Tj -/TT14 1 Tf -1.9043 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1067 Tw -[( corresponds to a character in )]TJ -/TT14 1 Tf -13.8964 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1067 Tw -[( to the)]TJ --37.0209 -1.2889 TD -0 Tw -(right of the character indicated by )Tj -/TT14 1 Tf -15.2256 0 TD -(M)Tj -/TT6 1 Tf -0.6001 0 TD -(\). Examples:)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R -/TT18 18 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -20 0 obj -<< -/Length 4741 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-3)Tj -/TT16 1 Tf -10 0 0 10 459.55 612 Tm -(STRINGS)Tj -/TT8 1 Tf -9 0 0 9 162 570.14 Tm -(\(SUBSTRING "ABCDEFG" 4 6\) => "DEF")Tj -0 -1 TD -(\(SUBSTRING "ABCDEFG" 3 3\) => "C")Tj -T* -(\(SUBSTRING "ABCDEFG" 3 NIL\) => "CDEFG")Tj -T* -(\(SUBSTRING "ABCDEFG" 4 -2\) => "DEF")Tj -T* -(\(SUBSTRING "ABCDEFG" 6 4\) => NIL)Tj -T* -(\(SUBSTRING "ABCDEFG" 4 9\) => NIL)Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a string, it is converted to one. For example,)Tj -/TT8 1 Tf -2.48 -1.6667 TD -(\(SUBSTRING \(A B C\) 4 6\) => "B C")Tj --4 -1.8444 TD -(SUBSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.0022 Tw -( does not actually copy any characters, but simply creates a new string pointer)Tj --5.4009 -1.2889 TD -0 Tw -(to the characters in )Tj -/TT14 1 Tf -8.6211 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. If )Tj -/TT14 1 Tf -1.9199 0 TD -(OLDPTR)Tj -/TT6 1 Tf -3.6006 0 TD -( is a string pointer, it is modified and returned.)Tj -/TT8 1 Tf -10 0 0 10 102 443.69 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 443.69 Tm -(GNC)Tj -/TT8 1 Tf -10 0 0 10 124.2 443.69 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 130.201 443.69 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 135.6018 443.69 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 141.6028 443.69 Tm -( )Tj -33.6697 0 TD -([Function])Tj --35.4033 -1.8833 TD -0.2211 Tw -[(Get Next Character. Returns the next character of the string )]TJ -/TT14 1 Tf -30.1559 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2211 Tw -[( \(as a symbol\); also)]TJ --30.756 -1.2889 TD -0.0344 Tw -[(removes the character from the string, by changing the string pointer. Returns )]TJ -/TT8 1 Tf -35.3999 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0344 Tw -[( if )]TJ -/TT14 1 Tf -1.1929 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -[( is)]TJ --38.9932 -1.2889 TD -0.0002 Tc -0.0042 Tw -(the null string. If )Tj -/TT14 1 Tf -7.9207 0 TD -0 Tc -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0001 Tc -0.0043 Tw -( isnt a string, a string is made. Used for sequential access to characters)Tj --8.5208 -1.2889 TD -0 Tc -0 Tw -(of a string. Example:)Tj -/TT19 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO "ABCDEFG"\))Tj -1.0132 -1 TD -("ABCDEFG")Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GNC FOO\))Tj -1.0132 -1 TD -(A)Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GNC FOO\))Tj -1.0132 -1 TD -(B)Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -("CDEFG")Tj -/TT6 1 Tf --6 -1.8444 TD -(Note that if )Tj -/TT14 1 Tf -5.2905 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -( is a substring of )Tj -/TT8 1 Tf -7.498 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(GNC A\))Tj -/TT6 1 Tf -4.2007 0 TD -( does not remove the character from )Tj -/TT8 1 Tf -16.2192 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 270.29 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 270.29 Tm -(GLC)Tj -/TT8 1 Tf -10 0 0 10 124.2 270.29 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 130.201 270.29 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 135.6018 270.29 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 141.6028 270.29 Tm -( )Tj -33.6697 0 TD -([Function])Tj --35.4033 -1.8833 TD -0.2644 Tw -[(Get Last Character. Returns the last character of the string )]TJ -/TT14 1 Tf -29.9787 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2644 Tw -[( \(as a symbol\); also)]TJ --30.5788 -1.2889 TD -0 Tw -(removes the character from the string. Similar to )Tj -/TT8 1 Tf -21.8887 0 TD -(GNC)Tj -/TT6 1 Tf -1.8003 0 TD -(. Example:)Tj -/TT19 1 Tf --19.689 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ FOO "ABCDEFG"\))Tj -1.0132 -1 TD -("ABCDEFG")Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GLC FOO\))Tj -1.0132 -1 TD -(G)Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GLC FOO\))Tj -1.0132 -1 TD -(F)Tj -/TT19 1 Tf --2 -1.2222 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(FOO)Tj -1.0132 -1 TD -("ABCDE")Tj -10 0 0 10 102 136.86 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 136.86 Tm -(CONCAT)Tj -/TT8 1 Tf -10 0 0 10 140.4 136.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 146.401 136.86 Tm -(X)Tj -0.5999 -0.2222 TD -(1)Tj -/F2 1 Tf -10 0 0 10 157.2 136.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 159.98 136.86 Tm -(X)Tj -0.6 -0.2222 TD -(2)Tj -/F2 1 Tf -10 0 0 10 170.78 136.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 173.56 136.86 Tm -(... X)Tj -3 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 205.96 136.86 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 211.961 136.86 Tm -[( )-20614.3([NoSpread Function])]TJ --9.5512 -2.0667 TD -0.2789 Tw -[(Returns a new string which is the concatenation of \(copies of\) its arguments. Any)]TJ -0 -1.2222 TD -0 Tw -(arguments which are not strings are transformed to strings. Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(CONCAT "ABC" DEF "GHI"\) => "ABCDEFGHI")Tj -0 -1 TD -(\(CONCAT \(A B C\) "ABC"\) => "\(A B C\)ABC")Tj -0 -1.0667 TD -(\(CONCAT\) )Tj -/TT6 1 Tf -5.4009 0 TD -(returns the null string,)Tj -/TT8 1 Tf -9.9326 0 TD -( "")Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 22 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R -/TT19 23 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -25 0 obj -<< -/Length 8491 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-4)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -5.4 -4.251 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 569.49 Tm -(CONCATLIST)Tj -/TT8 1 Tf -10 0 0 10 210 569.49 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 216.0009 569.49 Tm -(L)Tj -/TT8 1 Tf -10 0 0 10 221.4018 569.49 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 227.4028 569.49 Tm -[( )-28969.7([Function])]TJ -/TT14 1 Tf --5.9336 -1.8833 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -[( is a list of strings and/or other objects. The objects are transformed to strings if they)]TJ --0.6001 -1.2889 TD -0 Tw -(arent strings. Returns a new string which is the concatenation of the strings. Example:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(CONCATLIST \(A B \(C D\) "EF"\)\) => "AB\(C D\)EF")Tj -10 0 0 10 150 506.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 506.89 Tm -(RPLSTRING)Tj -/TT8 1 Tf -10 0 0 10 204.6 506.89 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.601 506.89 Tm -(X N Y)Tj -/TT8 1 Tf -10 0 0 10 237.6053 506.89 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 243.6063 506.89 Tm -[( )-27169.3([Function])]TJ --7.734 -1.8833 TD -(Replaces the characters of string )Tj -/TT14 1 Tf -14.4733 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( beginning at character position )Tj -/TT14 1 Tf -14.2266 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( with string )Tj -/TT14 1 Tf -5.361 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(. )Tj -/TT14 1 Tf -0.7521 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT14 1 Tf -2.1955 0 TD -(Y)Tj -/TT6 1 Tf --39.4089 -1.2889 TD -0.1622 Tw -(are converted to strings if they arent already. )Tj -/TT14 1 Tf -22.0904 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1622 Tw -[( may be positive or negative, as with)]TJ -/TT8 1 Tf --22.6905 -1.2889 TD -0 Tw -(SUBSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -(. Characters are smashed into \(converted\) )Tj -/TT14 1 Tf -18.8682 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. Returns the string )Tj -/TT14 1 Tf -8.9385 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. Examples:)Tj -/TT8 1 Tf --30.4077 -1.6667 TD -(\(RPLSTRING "ABCDEF" -3 "END"\) => "ABCEND")Tj -0 -1 TD -(\(RPLSTRING "ABCDEFGHIJK" 4 \(A B C\)\) => "ABC\(A B C\)K")Tj -/TT6 1 Tf --4 -1.8444 TD -0.1178 Tw -(Generates an error if there is not enough room in )Tj -/TT14 1 Tf -23.042 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1178 Tw -[( for )]TJ -/TT14 1 Tf -2.0095 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1178 Tw -(, i.e., the new string would be)Tj --26.2517 -1.2889 TD -0.1111 Tw -[(longer than the original. If )]TJ -/TT14 1 Tf -12.7653 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1111 Tw -[( was not a string, )]TJ -/TT14 1 Tf -8.3417 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1111 Tw -[( will already have been modified since)]TJ -/TT8 1 Tf --22.3072 -1.2889 TD -0 Tw -(RPLSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -( does not know whether )Tj -/TT14 1 Tf -10.959 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( will fit without actually attempting the transfer.)Tj -/TT18 1 Tf --16.96 -2.0667 TD -(Warning)Tj -/TT6 1 Tf -4 0 TD -0.1456 Tw -[(: In some implementations of Interlisp, if )]TJ -/TT14 1 Tf -19.6278 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1456 Tw -[( is a substring of )]TJ -/TT8 1 Tf -8.2258 0 TD -0 Tw -(Z)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.6456 0 TD -(Z)Tj -/TT6 1 Tf -0.6001 0 TD -0.1456 Tw -[( will also be)]TJ --34.2995 -1.2889 TD -0.0189 Tw -(modified by the action of )Tj -/TT8 1 Tf -11.4533 0 TD -0 Tw -(RPLSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.0189 Tw -[( or )]TJ -/TT8 1 Tf -1.4787 0 TD -0 Tw -(RPLCHARCODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.0189 Tw -[(. However, this is not guaranteed)]TJ --24.934 -1.2889 TD -0.07 Tw -(to be true in all cases, so programmers should not rely on )Tj -/TT8 1 Tf -26.4093 0 TD -0 Tw -(RPLSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.07 Tw -[( or )]TJ -/TT8 1 Tf -1.5809 0 TD -0 Tw -(RPLCHARCODE)Tj -/TT6 1 Tf --33.3911 -1.2889 TD -0.16 Tw -(altering the characters of any string other than the one directly passed as argument to)Tj -0 -1.2222 TD -0 Tw -(those functions.)Tj -/TT8 1 Tf -10 0 0 10 150 317.49 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 317.49 Tm -(RPLCHARCODE)Tj -/TT8 1 Tf -10 0 0 10 215.4 317.49 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 221.401 317.49 Tm -(X N CHAR)Tj -/TT8 1 Tf -10 0 0 10 264.608 317.49 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 270.6089 317.49 Tm -[( )-24169([Function])]TJ --10.7343 -1.8833 TD -0.0089 Tw -(Replaces the )Tj -/TT14 1 Tf -5.7907 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0089 Tw -(th character of the string )Tj -/TT14 1 Tf -11.1079 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0089 Tw -[( with the character code )]TJ -/TT14 1 Tf -10.8594 0 TD -0 Tw -(CHAR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -(. )Tj -/TT14 1 Tf -0.7678 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0089 Tw -[( may be positive)]TJ --32.7265 -1.2889 TD -0 Tw -(or negative. Returns the new )Tj -/TT14 1 Tf -13.2285 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. Similar to )Tj -/TT8 1 Tf -5.2979 0 TD -(RPLSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -(. Example:)Tj -/TT8 1 Tf --20.5273 -1.6667 TD -(\(RPLCHARCODE "ABCDE" 3 \(CHARCODE F\)\) => "ABFDE")Tj -/TT6 1 Tf --6.6667 -2.32 TD -(\()Tj -/TT12 1 Tf -0.333 0 TD -(STRPOS)Tj -/F1 1 Tf -10 0 0 10 185.4 253.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 188.18 253.06 Tm -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(START)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SKIP)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ANCHOR)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CASEARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(BACKWARDSFLG)Tj -/TT6 1 Tf -7.2012 0 TD -[(\) )-1840([Function])]TJ -/TT8 1 Tf --32.7303 -1.8444 TD -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0833 Tw -[( is a function for searching one string looking for another. )]TJ -/TT14 1 Tf -26.9321 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.0833 Tw -[( and )]TJ -/TT14 1 Tf -2.3595 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0833 Tw -[( are)]TJ --38.2931 -1.2889 TD -0.3622 Tw -(both strings \(or else they are converted automatically\). )Tj -/TT8 1 Tf -27.8464 0 TD -0 Tw -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.3622 Tw -[( searches )]TJ -/TT14 1 Tf -4.951 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf --36.398 -1.2889 TD -0.0556 Tw -(beginning at character number )Tj -/TT14 1 Tf -14.0811 0 TD -0 Tw -(START)Tj -/TT6 1 Tf -3.0005 0 TD -0.0556 Tw -(, \(or 1 if )Tj -/TT14 1 Tf -3.8702 0 TD -0 Tw -(START)Tj -/TT6 1 Tf -3.0005 0 TD -0.0556 Tw -[( is )]TJ -/TT8 1 Tf -1.326 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -(\) and looks for a sequence of)Tj --27.0785 -1.2889 TD -0.0844 Tw -(characters equal to )Tj -/TT14 1 Tf -8.7973 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.0844 Tw -[(. If a match is found, the character position of the first matching)]TJ --10.5976 -1.2889 TD -0 Tw -(character in )Tj -/TT14 1 Tf -5.438 0 TD -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -( is returned, otherwise )Tj -/TT8 1 Tf -10.1909 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. Examples:)Tj -/TT8 1 Tf --17.0298 -1.6667 TD -(\(STRPOS "ABC" "XYZABCDEF"\) => 4)Tj -0 -1 TD -(\(STRPOS "ABC" "XYZABCDEF" 5\) => NIL)Tj -T* -(\(STRPOS "ABC" "XYZABCDEFABC" 5\) => 10)Tj -/TT14 1 Tf --4 -1.8444 TD -(SKIP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1422 Tw -[( can be used to specify a character in )]TJ -/TT14 1 Tf -17.6428 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.1422 Tw -[( that matches any character in )]TJ -/TT14 1 Tf -14.3016 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --39.7456 -1.2889 TD -(Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(STRPOS "A&C&" "XYZABCDEF" NIL &\) => 4)Tj -0 -1 TD -(\(STRPOS "DEF&" "XYZABCDEF" NIL &\) => NIL)Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0299 0 TD -(ANCHOR)Tj -/TT6 1 Tf -3.6006 0 TD -0.11 Tw -[( is )]TJ -/TT8 1 Tf -1.4348 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.61 0 TD -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.11 Tw -[( compares )]TJ -/TT14 1 Tf -4.9915 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.11 Tw -[( with the characters beginning at position )]TJ -/TT14 1 Tf -19.3349 0 TD -0 Tw -(START)Tj -/TT6 1 Tf --37.0028 -1.2889 TD -0.1122 Tw -(\(or 1 if )Tj -/TT14 1 Tf -3.4846 0 TD -0 Tw -(START)Tj -/TT6 1 Tf -3.0005 0 TD -0.1122 Tw -[( is )]TJ -/TT8 1 Tf -1.4393 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -[(\). If that comparison fails, )]TJ -/TT8 1 Tf -12.4609 0 TD -0 Tw -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1122 Tw -[( returns )]TJ -/TT8 1 Tf -3.9285 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -[( without searching)]TJ --31.515 -1.2889 TD -0.0689 Tw -(any further down )Tj -/TT14 1 Tf -8.2809 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0689 Tw -[(. Thus it can be used to compare one string with some )]TJ -/TT10 1 Tf -25.1749 0 TD -0 Tw -(portion)Tj -/TT6 1 Tf --37.0563 -1.2889 TD -(of another string. Examples:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(STRPOS "ABC" "XYZABCDEF" NIL NIL T\) => NIL)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R -/TT18 18 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -28 0 obj -<< -/Length 7836 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-5)Tj -/TT16 1 Tf -10 0 0 10 459.55 612 Tm -(STRINGS)Tj -/TT8 1 Tf -9 0 0 9 162 570.14 Tm -(\(STRPOS "ABC" "XYZABCDEF" 4 NIL T\) => 4)Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9666 0 TD -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -[( is )]TJ -/TT8 1 Tf -1.3082 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0467 Tw -(, the value returned by )Tj -/TT8 1 Tf -10.538 0 TD -0 Tw -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0467 Tw -[( if successful is not the starting position of the)]TJ --19.4139 -1.2889 TD -0.1033 Tw -(sequence of characters corresponding to )Tj -/TT14 1 Tf -18.5079 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.1033 Tw -(, but the position of the first character after)Tj --20.3082 -1.2889 TD -0 Tw -(that, i.e., the starting position plus )Tj -/TT8 1 Tf -15.3179 0 TD -(\(NCHARS)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(. Examples:)Tj -/TT8 1 Tf --18.519 -1.6667 TD -(\(STRPOS "ABC" "XYZABCDEFABC" NIL NIL NIL T\) => 7)Tj -0 -1 TD -(\(STRPOS "A" "A" NIL NIL NIL T\) => 2)Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9233 0 TD -(TAIL )Tj -/TT8 1 Tf -3.0083 0 TD -0.0078 Tw -(= NIL)Tj -/TT6 1 Tf -3.0083 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5033 0 TD -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0004 Tc -0.0029 Tw -( returns )Tj -/TT8 1 Tf -3.7108 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0033 Tw -(, or a character position within )Tj -/TT14 1 Tf -13.789 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0003 Tc -0.003 Tw -( which can be)Tj --33.9444 -1.2889 TD -0 Tc -0.04 Tw -(passed to )Tj -/TT8 1 Tf -4.4906 0 TD -0 Tw -(SUBSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.04 Tw -[(. In particular, )]TJ -/TT8 1 Tf -6.9251 0 TD -0.0956 Tw -(\(STRPOS "" ""\))Tj -/TT12 1 Tf -8.5925 0 TD -0.0956 Tc -0 Tw -( )Tj -/TT8 1 Tf -1.3913 0 TD -0 Tc -0.0956 Tw -[(=> NIL)]TJ -/TT6 1 Tf -4.3918 0 TD -0.04 Tw -[(. However, if )]TJ -/TT14 1 Tf -6.4139 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf --37.6062 -1.2889 TD -0.1322 Tw -(= T)Tj -/TT6 1 Tf -1.9325 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5556 0 TD -(STRPOS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0556 Tw -[( may return a character position outside of )]TJ -/TT14 1 Tf -19.4942 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0556 Tw -[(. For instance, note that)]TJ --29.1835 -1.2889 TD -0 Tw -(the second example above returns 2, even though )Tj -/TT8 1 Tf -22.1191 0 TD -(A)Tj -/TT6 1 Tf -1.2002 0 TD -( has only one character.)Tj --23.3193 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9477 0 TD -(CASEARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0278 Tw -[( is non-)]TJ -/TT8 1 Tf -3.3134 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(, this should be a casearray like that given to )Tj -/TT8 1 Tf -20.1293 0 TD -0 Tw -(FILEPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0278 Tw -[( \(Chapter)]TJ --35.7923 -1.2889 TD -0.17 Tw -[(25\). The casearray is used to map the string characters before comparing them to the)]TJ -0 -1.2222 TD -0 Tw -(search string.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(BACKWARDSFLG)Tj -/TT6 1 Tf -7.2012 0 TD -( is non-)Tj -/TT8 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the search is done backwards from the end of the string.)Tj -/TT8 1 Tf -10 0 0 10 102 372.86 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 372.86 Tm -(STRPOSL)Tj -/F1 1 Tf -10 0 0 10 145.8 372.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.58 372.86 Tm -(A STRING START NEG BACKWARDSFLG)Tj -/TT8 1 Tf -10 0 0 10 316.0072 372.86 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 322.0082 372.86 Tm -[( )-13124.6([Function])]TJ -/TT14 1 Tf --21.7787 -1.8833 TD -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.1122 Tw -[( is a string \(or is converted automatically to a string\), )]TJ -/TT14 1 Tf -24.7755 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1122 Tw -[( is a list of characters or)]TJ --28.9761 -1.2889 TD -0.0111 Tw -(character codes. )Tj -/TT8 1 Tf -7.6017 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0111 Tw -[( searches )]TJ -/TT14 1 Tf -4.2488 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0111 Tw -[( beginning at character number )]TJ -/TT14 1 Tf -14.1644 0 TD -0 Tw -(START)Tj -/TT6 1 Tf -3.0005 0 TD -0.0111 Tw -[( \(or 1 if)]TJ -/TT14 1 Tf --36.8167 -1.2889 TD -0 Tw -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.2789 Tw -[( = NIL)]TJ -/TT6 1 Tf -4.1584 0 TD -0.1167 Tw -(\) for one of the characters in )Tj -/TT14 1 Tf -13.4085 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1167 Tw -[(. If one is found, )]TJ -/TT8 1 Tf -8.3665 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.1167 Tw -[( returns as its)]TJ --33.7346 -1.2889 TD -0 Tw -(value the corresponding character position, otherwise )Tj -/TT8 1 Tf -24.0547 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. Example:)Tj -/TT8 1 Tf --21.855 -1.6667 TD -(\(STRPOSL \(A B C\) "XYZBCD"\) => 4)Tj -/TT6 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(NEG)Tj -/TT8 1 Tf -1.8003 0 TD -( = T)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -( searches for a character )Tj -/TT10 1 Tf -10.8154 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( on )Tj -/TT14 1 Tf -1.6279 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -(. Example:)Tj -/TT8 1 Tf --20.1978 -1.6667 TD -(\(STRPOSL \(A B C\) "ABCDEF" NIL T\) => 4)Tj -/TT6 1 Tf --4 -1.8444 TD -0.1444 Tw -(If any element of )Tj -/TT14 1 Tf -8.2838 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1444 Tw -[( is a number, it is assumed to be a character code. Otherwise, it is)]TJ --8.8839 -1.2889 TD -0.05 Tw -(converted to a character code via )Tj -/TT8 1 Tf -15.0993 0 TD -0 Tw -(CHCON1)Tj -/TT6 1 Tf -3.6006 0 TD -0.05 Tw -[(. Therefore, it is more efficient to call )]TJ -/TT8 1 Tf -17.0916 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf --35.7915 -1.2889 TD -(with )Tj -/TT10 1 Tf -2.2832 0 TD -(A)Tj -/TT6 1 Tf -0.7222 0 TD -( a list of character )Tj -/TT10 1 Tf -8.0259 0 TD -(codes.)Tj -/TT6 1 Tf --11.0313 -2 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -( is a bit table, it is used to specify the characters \(see )Tj -/TT8 1 Tf -23.0742 0 TD -(MAKEBITTABLE)Tj -/TT6 1 Tf -7.2012 0 TD -( below\))Tj --31.7954 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(BACKWARDSFLG)Tj -/TT6 1 Tf -7.2012 0 TD -( is non-)Tj -/TT8 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the search is done backwards from the end of the string.)Tj -/TT8 1 Tf --13.1792 -2.0667 TD -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0622 Tw -[( uses a bit table data structure to search efficiently. If )]TJ -/TT14 1 Tf -25.4493 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( is not a bit table, it is)]TJ --30.2501 -1.2889 TD -0.0322 Tw -(converted to a bit table using )Tj -/TT8 1 Tf -13.268 0 TD -0 Tw -(MAKEBITTABLE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0322 Tw -[(. If )]TJ -/TT8 1 Tf -1.7666 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0322 Tw -[( is to be called frequently with)]TJ --26.4365 -1.2889 TD -0.0144 Tw -(the same list of characters, a considerable savings can be achieved by converting the list to)Tj -0 -1.2222 TD -0 Tw -(a bit table )Tj -/TT10 1 Tf -4.5698 0 TD -(once)Tj -/TT6 1 Tf -1.7964 0 TD -(, and then passing the bit table to )Tj -/TT8 1 Tf -14.8691 0 TD -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -( as its first argument.)Tj -/TT8 1 Tf -10 0 0 10 102 122.43 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 122.43 Tm -(MAKEBITTABLE)Tj -/F1 1 Tf -10 0 0 10 172.8 122.43 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 175.58 122.43 Tm -(L NEG A)Tj -/TT8 1 Tf -10 0 0 10 213.3861 122.43 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 219.3871 122.43 Tm -[( )-24527([Function])]TJ --10.3763 -1.8833 TD -0.0067 Tw -(Returns a bit table suitable for use by )Tj -/TT8 1 Tf -16.7067 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0067 Tw -(. )Tj -/TT14 1 Tf -0.7633 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( is a list of characters or character codes,)]TJ -/TT14 1 Tf --22.2708 -1.2889 TD -0 Tw -(NEG)Tj -/TT6 1 Tf -1.8003 0 TD -0.11 Tw -[( is the same as described for )]TJ -/TT8 1 Tf -13.3921 0 TD -0 Tw -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.11 Tw -[(. If )]TJ -/TT14 1 Tf -1.9999 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.11 Tw -[( is a bit table, )]TJ -/TT8 1 Tf -6.5847 0 TD -0 Tw -(MAKEBITTABLE)Tj -/TT6 1 Tf -7.2012 0 TD -0.11 Tw -[( modifies)]TJ --35.7789 -1.2889 TD -0 Tw -(and returns it. Otherwise, it will create a new bit table.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -31 0 obj -<< -/Length 1272 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-6)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT18 1 Tf -9 0 0 9 174 569.54 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0733 Tw -[(: If )]TJ -/TT14 1 Tf -1.8899 0 TD -0 Tw -(NEG )Tj -/TT8 1 Tf -2.5759 0 TD -0.1756 Tw -(= T)Tj -/TT6 1 Tf -1.9758 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5733 0 TD -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0733 Tw -[( must call )]TJ -/TT8 1 Tf -4.7317 0 TD -0 Tw -(MAKEBITTABLE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0733 Tw -[( whether )]TJ -/TT14 1 Tf -4.3239 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0733 Tw -[( is a list )]TJ -/TT10 1 Tf -3.8402 0 TD -0 Tw -(or)Tj -/TT6 1 Tf -0.833 0 TD -0.0733 Tw -[( a bit table.)]TJ --34.968 -1.2889 TD -0.0844 Tw -(To obtain bit table efficiency with )Tj -/TT14 1 Tf -15.5487 0 TD -0 Tw -(NEG)Tj -/TT8 1 Tf -1.8003 0 TD -(=T)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5844 0 TD -(MAKEBITTABLE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0844 Tw -[( should be called with )]TJ -/TT14 1 Tf -10.41 0 TD -0 Tw -(NEG)Tj -/TT8 1 Tf -1.8003 0 TD -(=T)Tj -/TT6 1 Tf -1.2002 0 TD -(,)Tj --39.7453 -1.2889 TD -(and the resulting inverted bit table should be given to )Tj -/TT8 1 Tf -25.0093 0 TD -(STRPOSL)Tj -/TT6 1 Tf -4.2007 0 TD -( with )Tj -/TT14 1 Tf -2.5332 0 TD -(NEG)Tj -/TT8 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT14 11 0 R -/TT16 12 0 R -/TT18 18 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -34 0 obj -<< -/Length 69 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-7)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -37 0 obj -<< -/Length 202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(4-8)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -13 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -39 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -40 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -41 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -42 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -43 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -44 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -45 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -46 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -47 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -48 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBEGBL+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 49 0 R ->> -endobj -49 0 obj -<< -/Filter /FlateDecode -/Length 20017 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkA`Bbԃ4NPo#̒ (+iDkiJ54Z -$!HG@TJA(17; ϼwf~}oル7@69!G.7(09(,NA -e -Ţ X|@ŒP,rϛ؊PUj`PJĎM-A>6>YEC3]RG $ʇw\bekph%Jo|AFP\U"t(14~)_+*/X](*8d vp+pU)$>^M(W`V lEאܛ( Le3yϐ0,G MЊ8 s ]p5ۏ#B0p0 JQ8nu|$lznyfAl+@lΥ x Ge-M8:T~6-Yn:HpNa5myp`"Ij=i|;a8)ys`Ϯ߀O'phXk=[9F%ycY_ {)(,G Zm&*0^Ax⼛#,ùpGr\|ƣ8?Id+Qr;Ffl\—d$kr&6g9*<t{/ M -"yN2^ a|#{݋n$tzJLѐE8t}<E0A,lvy 3ĭo2A,n, h!+c9`qnL~W-Sx"iGD&">l|xwBF~0{13ZqމE2՚s J!34XeCXmrWظU6Ƨl\cZkml|:q?m` 6蜒c?g UEG$Dh¤?4jt~B6!] j,3QԨjV4!-џ;Z¿T0|7J")+pcѐKL7W)y0V"iN鯥05F`NIuˮb$j\~b:QѶyhhA5Oh5 Auokuhq%!RMS1 =Y nN"a{!MJZc&ngŇ0ZOb)* SW c/m;ř-" -E?mS"cnboݨϧӐFi_Bߌ*c"c(>FCnT ^i/bUWeaþZke7}MF}rMP#`̌(f+c= M1Kc;t۲dF%NK-2zJ|aO/ y{|@d$"h0F K!e3=&׏;c5S4Qo7{)QzD~.EsRܖ7,-ptˌ_ɴi_߼*[Z#'Mvb~>T[NfW|[7{ fk7M .]vrAlʺKKRƜԱ}Kuƪkq7zj}R˪Fwwz;̬2AdP_6MgLʚs+ -VZe8adTu" Z6 AK%jhI% @&uU5T:9%LDTQnk2L6I !qgsުΨpIVSgdbE/W(bq6.{=$2#BB܂_YG,ݭMff4їSsp/joѨr@9H $2]s cr&ǀEF lrdyb0: שTXv4yG8%TJFhdqp [UR*36F#Ǘ9fܦ|3`{>ߑH@ګۅ-ofyngԇTM UׇL*ߡVV?wgPBO^ˎp}ҡ#>)V X>SK(ċ$F1XsS>:F+;m,zdW*cg!6Yמk) =ni \an-PtܦOgҧfڥs6JB@-Y1GZr/ģ:gI.*;hj|d'ie6)d>|)Fo{>.?? ?{y_y|DMfS) M%݂;(3 *$fΩG83EȤƑCJ4 !VlL2aX)Ccm>菘*$kʢ_uK&z~2NF?rJKLH6R+4b ݒ&c6S+Q'b]vdQEτ1,װc?PcEpՌިd3A> sШ -8eݎg3-G{})f2Ͷ Lym;-ZRe_w3LKP` ji7Zaڭ-BesK-$MY8L]]iFsdj*SZRFu|H$|5jѵdA %*l`=c%=oz4 -GڮągmTc) >U"$|05#ec{sNR sA6VcK!۲Ǥ:'(YMQr LIJ'9 2Gv+M[8j:شVLH0 zwC("E}ϝ{Ck7ȰÒoo[m]խ/Xb@)W4=e.ąF>faru&g N8j_b[LxOfY/#qod~>r]QL-慌(9IqyKOo'K`/TgӷgkSu?ږغ`9dmƺ"J|_Ҩk8Q+ؑr{K1)7?g$lBj/.zt$v[n~Ʀ%G~@-5T& "=/Px،OesgG:7竂IЦE.WA41 .-vqFFK}U[ka^ifmvȲ-,k \V+"Vr>.(oZbe -3aq4/ݴuL2hb gY]T7vyQ YY2;l,|y1x,,^p߳z&ؼ@ь)TgJ~%l~4sG@-| lyD-i__fA5LFoJa^jtl^Jk؟ ɪ~u%Em!t\Yq.E%,-*?J$]J~ƣ졖.ru>q)Fe1J9Ky\ʱ)l`xl>kge@b< سb"ulp4*#XE?yop|box>wW -4^@c[orz̲[Bn+/LkI/^G>aa4"$Өòd)P7~39Sw\`>%8ۺE\z쿲tVw[JL:_.߳{C\*ZD[nfeA)}SR{,-5rRK,Yi Tjnr/Wrݭ`Y'4azwCBU?l`i5_&JOO0]^G8pރop -TQTQ2ڍ8:N_ߢz]BW?-L5x-Vpn_O7p6.xOis:~'O8xd UϒH=i -.$˟KUyHEVũ$+)G*)T%[yZ<)%|A] GH S$Xcb UXb1¿Leۨ ĆG -XqN%̱bslFIChCn,lX9ָ`*6bf(}>< -8ԉyDŷ*rD$;INWA;BQF`ahZ$z*S) ,` W[j,k`5& ~W1Byfc!!-\)|C4vZw`!T?b֥իYѪb-#C <Ƃ -$ɱÎXvn?kmBEnXoki{GZ8-oͯvX.5<6Zs0F>`۝jQptM2է y%CqOG8?0G,yKN{/O{%H~}pRc%-O5y%nN8R"[WQ>{&d4mx,>:l/r4U -cUFG:)oWpt+uD Yzt }V}Q78UGVfyiuه;VM;Z*_j#o{?AVF$QyLH{lϕou~Ru&y>3DC&,n8 -˜<# X5Vϝ&I,lDT{C!L6W('ql&0  sbM}** -U8#T<dI'/SpF*6[ho|y2?<}e.*QQ)Jظiw+ޟ$qvdƿ657|k?ouLCuw@!k+-y+سoK@S?>5wH˿2>7mzhЁa:ԨuB8g3' fpБ1#i(qìL~cӑ;Pi Oキٽۄ xG8D.A%#`d5 P[HK'(ޑ9jP {9 3:zر^$v/%ةt߻~w+M qS -X R,9kUD\D1&4.IV(ɻ("K,+>QuMٰ̽Nsj̭/]2CpzIǫ/ -6| `jM-_`SrXNuwlʎ~;ImsOx"JOUm3m|$HW{Vtćc:ڞ ͼ~׃ci0.ecV!sCu9|=*a7ս}k^W'Mx"v쑲U[F>[Uw`񉍵=t{H]CڑC-z|!̜_7g]2tff7ށ.7^_MuVl7OChOeSAU(u=Os4MDSdU rڭR47.x9]?W/iWi5E\sÝ4nᨉ6ow~ou6nm3?Ň.<o3(GH;_ Swݺ J7S뛳7>`ZGo}tMևLaw&)T'(+.-730*4<%Fd.SةHJOiĸR:8Pviѩ{GNMsFƿ=ajmF*e I>6c<<`}OP<%y@-U0PO͂j ݨ~`1aG`=lvh_>8G(<긫9x50r&ע܄j:Y| =b%d4fBI.49J~ -}9IHL^#o-Pj4i.U!uj -ZI:z7.]D*i/Qg=M('k4N/ҿ,]ƢֺPmMaQmY-Ǿ2VUak:T^Ml3kf?CՆX'X;ZYJjXJ >(F+Jݍ Uqz㼱gM1]Ev[2\! -͝ϳEKi-%Ra+)c\ -[1؂Ue3y Pqif{LʺhG2T mSAO&)Qb3DAcݛC ƻ/M+W &ƇXJPvҰ, I<U3Lxlca b `!iYl#BbS,?OE;y-o2g}LcA=KA<1&*CJՂl{03x)0(]GlwFEӿ22 yc@:'AvMev{^i?8~.z7!)<(Q'oLa9X$'!V4K[E,b5E E<F:@4^nlӿ^2%.X  r+,Xhd3dejw( =`J_b'`,& ^Rö$ I7,4IQ%l:Bz։w!0ƿfI%:-N hn3}ZȽ'Xаc(`%˲,R >Q}<DSӃنm߁,,,lȭ߻E #*;D3㕀0._-X,RTGRq=NU-M >1K9~[ZZ7RӢF,,jd] -r=0]gW`$Yǁk:lvɲsIL4>`DoCwnsYw>@Y\th`\ c ^TMj edkA1|FE\%}!7R,X1E]yO0MwRBUW7D ~9ޗZ^P]%)MF 7J:播 heef5#_qeӵo f\r'D}`ĕR !#PH]'Qj/}ʞ·6'BFׂ bZɤ훥A)U6 qN&nwv7#nTJ+SUk1hgi5?'G3h2JUhh90`˫xӇ5_RܪpgXh߿zJ]>;s_$т g'Yҙ1J B#7͖CmCJN7#H %X&[cn\6ddxwKFSTi‘=J )RV"#j[PR4#io켺J.h1SPSE]Z̞]C 6}0N׸EQ,Еu ^)K 5mYe:8Zxzw9xmGw]|Hǹ!t׵bvJc|Os'T&hmi΋漸͋)%RƓ6 -d_G)E c.-:\IuCP6nEBXp-kuYLg=uvdb:uPZ∞"HǼY8Պ7)nu$?0+ţ5/{!p]h`ʓڀ=ua:²ŅȂH -&5\j".EM߻4!Cɘg.h  -tkׂPh] z}7:b)A󂍍zdFvC+s;^ou+@㠛4-Yft*3m Ԓ {Se¶u;^͓ZO"@ gne2F8qZh\_Fu*-Zt»dv -?aq@J9ђ<'&̞ W /gH !:ZE YwzE!lzd:?" #qhap+h +NBSG^C&+J֬%B;}B -[,p]J&-S}z̢V."XPtG8qP\}첌|^d*ӒAu` -Plq/ɉUg!(c1z FAiֹ[+TO[PfS{E~gd%3vŭw=ƋC'!6 [7_ǜ%{P-U8z[8xrĜSfGA *oVvghd Ve)-X5rұ&-( -fj ZL2UWlA8˓b32mrW摩a9`鬮DMXjkXk],2QDZbZ@)Jky2kƂ -op Ke4e _ZoiྩE,۳{9DoMbٚ^yˏey ˚2p"Ax[_@X_stWkwkeX]F{/xX_ !I2;N0n;K6`-_+0\ǒ:Qǯ/ʺZ2 .ꑅ9L-7%9vL;&[6玎x7Hnl-S6~)77_^jpYA h׫;eu'zaM\H*,pYw =i^ޯ;wLC"YhIE埶Z؁ -#jC ,!4DM DKxSlWr-ͨ z -wJ^VMgMzԨޱU›~ms6?r"Srެ-&9X_~9hac4mwL! -dH, -2Q -v7P=%q-?/TGٯ?RD[C|?Kun|` '>JhINsx} Ӣl'zG@Zoni8_oyx8氖}~ 7{h[6_oa !O/_|_工pIVi4F*H"QIP:"\6 r%;KrH~]^/{? M)J?GJ2YyYQ+wU+GYs_%SeU[/YT3LuTruG#\pf&QQJEKdYA-(WUpA 1 H"I -h=ItA:uVy4WOaPb@7FB!=DpQ>J0"u# >2A\C`PFnF`TQĬGlCIo ]Ojp)D"Tp8D} I%$*`Y QBa:>@Hvu{gK|>D7 s -`6Hxr=tM6u2{U =p燢=kuVZZvݾVTցu'<ֱ7Wz9[;"G_!/гcc:JuxqI #K?%Ż ~b|iVȴ^9Sgf$jǎ --c_+ jeu[5 G%7ovTӵ0ҽ#3O\,[|,:E~kcD2{™]S U7ϜhS%->/*-KnμJ#Rk[H~KԹ y%Idyڐk5W'Vykj!JCIn%;ey [`xI*Rr"UB Q/jeYwuW_>x0ô6H\c-Ug,'MUcʳܬ|f ˸.fs.Ȋ3 .8cLmk}ۀ'U]W]!hrwD88ɢnKJO$M77vG){u½8Wfx%pZ zwI+>> (z(b!C$ܵV{ @6 <oM*7ey͂`TA-,k%p1yg5Ѥ7#$t2 %Nrh2L IJJIy"d>fmd!%Kj !+HYMb0A8&a^x\%7H;*N4>b2MtͤvGbEt*Fg`XNaXCet]g6 s(ы2F7h;E;i0 egF(֋a,YX:qJM%.`fѤ\6ΩvYRݚQ|Wh@䱒'$Ǔ>Hy6:DɱQ8މUB1s~P# ;'j?؟؂6ժUr}!VXjՆ#|gKj\WMƁOTx]O;cYlػk!pݏׅʂt¬#5psGjqGjlSc햎OʮLk7z-)-* (vr1wD;kiFbC 8XOG~ -99ỳ5_p'[g`7JX#,*ػ.M/8V{Πð: RI> KO6mNsi4m6IoeXQadEaADtXpayA\azz.,_swrNJdoR.>y0JgTrd 奮>-\؏BD=JgtF}e RL)?ڣ􄪔|jۄ>nޢBZ~K]#27Kߦ,IIdSG"~|P -mbZBr!Y>FL~D$c((__tv!kTu~Le7 > x~*>$on>OyDrc?&9+)rz} -Q;{~PI?4AbVz|C|ICx_W>|Q ~M/Ǵ׮Rw/ > qF#TJ$޹Ab9+8DN.zS(b~z}#E۟;P[O}uiz\hڳ|_dz. h0U15~Ͷ)̖ vueƷuF6B/M̖ ,g#Q۞C3q6i>jHf`mCgb;kk0t6S`5Wm[ݘl0 O3Vu,OuQ -XGiFW5hm0n0C0eA+]%91i |4{;GLiuk8 -̂R#˽?6(b.Vd˄,I]Fԥ2 *4R\ {&aF"@m9q -Vm we-lnO8){k",nްDa|kh5HP^gr&al`uZ7j }7MV⶟k7|ւIPs"c;Y:ʓld j;| jj^[[[t:-4QϢƐ<`I3e!و氹3֮VZ&[#5!j6T Je4KRce\NqDt`4 fdOuVtrvǝ+ +{qϹof{/ѷ*.toCqC8Ix(lJ!uJ݀M5E79vmk7:hK66uݔ%Uo:jZ650DŽC*E}|i֪̓W73+x7wMs8:C uS祗wG<~2qJk^GVs[Ξ7-BN86ມ+);#S`ֵ7Oo[6zwug%o_Wrkht>σb˃]icm<}޸qMWwt:Vp}́K4FlӖD 2 ,K>R Q|8Yo ߱2>ajuL qҢG]ϏgZvゔR1).T(n+UzIg|U(rMje(L|s._ծЧ4RQQkhޓ>Y#3t]^VtAO43L2)*T82IPeJf'_#!O#wdH6y .ZNU5*yL^"/ߒ$ϓߐ__g]Jw侤Kz\k9E$YC* dyc;YA$dY*%*m˵֢MJ3,%ґLXZT0"~J_3Y [mhܧ졀c͗р+{d6rNi=YTPku]l2Nw˕iiUbMT7M'7jX6Kzj֑kZBfh] -ɡu9kdKwlc[Bbr},B`UYOkY n 8,<,YdI%,2hQAi xkܡ=(vo;^ #U|Yއ޶}EvfߝXʓHz -<'nр oGw͝Ѩ*괐Z]F35vt"I$a*wc -ǟ'BWن'O%(ʈE9JZ/_毫v -\)p۱Nyh=KT p zqp3c}Ͱ;AoF2P֓WO'$6WgX݌eE\]!_ ɌkAI?$3uwG2`@< r$A@$0< !XېCJdvmhE }.!3> 1\ҊԲ^dM`Ot隐n%I/iwՖ&Gwg{ XLij Š:QN9ԟ2pr4A"MCt/;޿r6747XnVkb - 4X<,Gw[?^T[6$NSSI3IO=M6BҢQ|C> -endobj -51 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 50 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 51 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 56 -/Widths [333 0 0 0 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 39 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 84 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 778 0 278 0 0 0 0 722 0 -0 0 722 667 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 40 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 0 0 500 500 0 500 0 250 250 0 0 0 0 -0 778 0 709 0 611 556 763 832 337 0 0 611 946 831 786 -0 0 668 525 613 778 0 0 0 0 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 41 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [600 0 600 0 0 600 600 0 600 600 0 0 600 600 600 0 -600 600 600 600 600 600 600 600 0 600 0 0 0 600 600 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 0 0 600 600 600 0 0 0 0 0 -0 600 0 0 600 0 0 600 600 600 0 0 0 0 600 600 -0 0 600 600 600 0 0 600 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 42 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 -0 722 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 407 500 389 0 500 0 278 0 0 0 778 556 444 -500 0 389 389 333 0 0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 43 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 0 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 44 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 45 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 46 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 78 -/LastChar 116 -/Widths [833 0 0 0 0 0 0 0 0 1000 0 0 0 0 0 0 -0 0 0 500 0 0 0 500 0 556 0 333 0 0 0 0 -611 556 0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 47 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBEGBL+Symbol -/Encoding /Identity-H -/DescendantFonts [ 52 0 R ] -/ToUnicode 53 0 R ->> -endobj -52 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBEGBL+Symbol -/FontDescriptor 48 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -53 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 [dld `xI} v+)}$Nс$x᎔!A~7-FYl88Lܺ5Q.SıCU yI)/]W'[dGCOB9_"(k y~CC% k_lA4 TJU$ivYT-g^izj$[pZq`j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -54 0 obj -<< -/S /D ->> -endobj -55 0 obj -<< -/Nums [0 54 0 R ] ->> -endobj -14 0 obj -<< -/Type /Pages -/Kids [1 0 R 15 0 R 19 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R] -/Count 8 -/MediaBox [0 0 612 792] ->> -endobj -56 0 obj -<< -/CreationDate (D:20210202102640-06'00') -/ModDate (D:20210202102640-06'00') -/Producer (Apple pstopdf) ->> -endobj -57 0 obj -<< -/Type /Catalog -/Pages 14 0 R -/PageLabels 55 0 R ->> -endobj -xref -0 58 -0000000000 65535 f -0000064968 00000 n -0000000016 00000 n -0000006316 00000 n -0000060819 00000 n -0000061171 00000 n -0000061376 00000 n -0000061669 00000 n -0000062197 00000 n -0000062710 00000 n -0000063099 00000 n -0000063419 00000 n -0000063756 00000 n -0000038163 00000 n -0000065705 00000 n -0000065049 00000 n -0000006506 00000 n -0000014113 00000 n -0000064063 00000 n -0000065133 00000 n -0000014294 00000 n -0000019088 00000 n -0000060994 00000 n -0000064331 00000 n -0000065217 00000 n -0000019270 00000 n -0000027814 00000 n -0000065301 00000 n -0000028007 00000 n -0000035896 00000 n -0000065385 00000 n -0000036076 00000 n -0000037401 00000 n -0000065469 00000 n -0000037571 00000 n -0000037691 00000 n -0000065553 00000 n -0000037788 00000 n -0000038042 00000 n -0000038304 00000 n -0000038501 00000 n -0000038707 00000 n -0000038907 00000 n -0000039098 00000 n -0000039301 00000 n -0000039503 00000 n -0000039704 00000 n -0000039899 00000 n -0000040104 00000 n -0000040294 00000 n -0000060401 00000 n -0000060609 00000 n -0000064474 00000 n -0000064677 00000 n -0000065637 00000 n -0000065665 00000 n -0000065836 00000 n -0000065959 00000 n -trailer -<< -/Size 58 -/Root 57 0 R -/Info 56 0 R -/ID [] ->> -startxref -66029 -%%EOF diff --git a/docs/medley-irm/05-ARRAY.pdf b/docs/medley-irm/05-ARRAY.pdf deleted file mode 100644 index 36329f3f..00000000 --- a/docs/medley-irm/05-ARRAY.pdf +++ /dev/null @@ -1,1222 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 7527 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-1)Tj -/TT4 1 Tf -10 0 0 10 453.88 568.2 Tm -(5. ARRAYS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0244 Tw -[(An Interlisp array is a one-dimensional vector of objects. Arrays are generally created by the function)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(. By contrast, Common Lisp arrays can be multi-dimensional.)Tj --3.0005 -2.0667 TD -0.1878 Tw -[(Note: Interlisp arrays and Common Lisp arrays are )]TJ -/TT10 1 Tf -24.7803 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.1878 Tw -[( the same types. Interlisp functions only)]TJ --26.1133 -1.2222 TD -0 Tw -(accept Interlisp arrays and vice versa. There are no functions to convert between the two types.)Tj -/TT8 1 Tf -10 0 0 10 102 478.6 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 478.6 Tm -(ARRAY)Tj -/F1 1 Tf -10 0 0 10 135 478.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.78 478.6 Tm -(SIZE TYPE INIT ORIG )Tj -/TT8 1 Tf -10 0 0 10 251.1984 478.6 Tm -(\))Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 478.6 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0133 Tw -(Creates and returns a new array that holds )Tj -/TT14 1 Tf -19.2449 0 TD -0 Tw -(SIZE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( objects of type )]TJ -/TT14 1 Tf -6.9005 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[(. If )]TJ -/TT14 1 Tf -1.7099 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( is )]TJ -/TT8 1 Tf -1.2415 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0133 Tw -(, the)Tj --38.0983 -1.2889 TD -0.0722 Tw -[(array can contain any arbitrary Lisp datum. In general, )]TJ -/TT14 1 Tf -25.4659 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0722 Tw -[( may be any of the various)]TJ --27.8663 -1.2889 TD -0.1944 Tw -(field specifications that are legal in )Tj -/TT8 1 Tf -16.7458 0 TD -0 Tw -(DATATYPE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1944 Tw -[( declarations \(see Chapter 8\): )]TJ -/TT8 1 Tf -14.001 0 TD -0 Tw -(POINTER)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj -/TT8 1 Tf --39.7483 -1.2889 TD -(FIXP)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5867 0 TD -(FLOATP)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5867 0 TD -(\(BITS )Tj -/TT14 1 Tf -3.8095 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[(, etc. Medley will, if necessary, choose an enclosing type if)]TJ --12.184 -1.2889 TD -0.0033 Tw -(the given one is not supported; for example, an array of )Tj -/TT8 1 Tf -24.8389 0 TD -0.0089 Tw -(\(BITS 3\))Tj -/TT6 1 Tf -4.8097 0 TD -0.0002 Tc -0.0031 Tw -( may be represented by)Tj --29.6486 -1.2889 TD -0 Tc -0 Tw -(an array of )Tj -/TT8 1 Tf -5.0571 0 TD -(\(BITS 8\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT14 1 Tf --9.8579 -2.0667 TD -(INIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1544 Tw -[( is the initial value for each element of the new array. If not specified, the array)]TJ --2.4004 -1.2889 TD -0 Tw -(elements will be initialized with 0 \(for number arrays\) or )Tj -/TT8 1 Tf -25.3145 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( \(all other types\).)Tj --27.1147 -2.0667 TD -0.0133 Tw -(Arrays can have either 0-origin or 1-origin indexing, as specified by the )Tj -/TT14 1 Tf -31.8724 0 TD -0 Tw -(ORIG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( argument; if)]TJ -/TT14 1 Tf --34.2728 -1.2889 TD -0 Tw -(ORIG)Tj -/TT6 1 Tf -2.4004 0 TD -( is not specified, the default is 1. )Tj --2.4004 -2.0667 TD -0.0744 Tw -(Arrays of type )Tj -/TT8 1 Tf -6.8625 0 TD -0 Tw -(FLOATP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0744 Tw -[( are stored unboxed. This increases the space and time efficiency)]TJ --10.4631 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1778 0 TD -(FLOATP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0489 Tw -[( arrays. If you want to use boxed floating point numbers, use an array of type)]TJ -/TT8 1 Tf --4.7784 -1.2889 TD -0 Tw -(POINTER)Tj -/TT6 1 Tf -4.2007 0 TD -( instead of )Tj -/TT8 1 Tf -4.8418 0 TD -(FLOATP)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 279.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 279.8 Tm -(ARRAYP)Tj -/TT8 1 Tf -10 0 0 10 140.4 279.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 146.401 279.8 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 151.8018 279.8 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 157.8028 279.8 Tm -[( )-31369.7([Function])]TJ --3.5337 -1.8833 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is an array, )Tj -/TT8 1 Tf -5.3931 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf -10 0 0 10 102 239.97 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 239.97 Tm -(ELT)Tj -/TT8 1 Tf -10 0 0 10 124.2 239.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 130.201 239.97 Tm -(ARRAY)Tj -/F1 1 Tf -10 0 0 10 157.2054 239.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 159.9854 239.97 Tm -(N)Tj -/TT8 1 Tf -10 0 0 10 165.3862 239.97 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 171.3872 239.97 Tm -[( )-29860.3([Function])]TJ --5.043 -1.8833 TD -(Returns the )Tj -/TT14 1 Tf -5.3643 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(th element of the array )Tj -/TT14 1 Tf -10.2896 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --19.2544 -2.0667 TD -0.0422 Tw -(Causes the error, )Tj -/TT8 1 Tf -7.8625 0 TD -0.1022 Tw -(Arg not array)Tj -/TT6 1 Tf -8.0057 0 TD -0.0422 Tw -(, if )Tj -/TT14 1 Tf -1.4585 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0422 Tw -[( is not an array. Causes the error, )]TJ -/TT8 1 Tf -15.463 0 TD -0 Tw -(Illegal)Tj --35.7902 -1.2889 TD -(Arg)Tj -/TT6 1 Tf -1.8003 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( is out of bounds.)Tj -/TT8 1 Tf -10 0 0 10 102 169.94 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 169.94 Tm -(SETA)Tj -/TT8 1 Tf -10 0 0 10 129.6 169.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 135.601 169.94 Tm -(ARRAY)Tj -/F1 1 Tf -10 0 0 10 162.6054 169.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 165.3853 169.94 Tm -(N)Tj -/F1 1 Tf -10 0 0 10 170.7862 169.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 173.5662 169.94 Tm -(VAL)Tj -/TT8 1 Tf -10 0 0 10 189.7689 169.94 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 195.7698 169.94 Tm -[( )-27151.1([Function])]TJ --7.7522 -1.8833 TD -(Sets the )Tj -/TT14 1 Tf -3.6411 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(th element of )Tj -/TT14 1 Tf -6.0562 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -(, and returns )Tj -/TT14 1 Tf -5.897 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --24.1675 -2.0667 TD -0.0189 Tw -(Causes the error, )Tj -/TT8 1 Tf -7.7925 0 TD -0.0456 Tw -(Arg not array)Tj -/TT6 1 Tf -7.8924 0 TD -0.0189 Tw -(, if )Tj -/TT14 1 Tf -1.4118 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0189 Tw -[( is not an array. the error, )]TJ -/TT8 1 Tf -12.1143 0 TD -0.0456 Tw -(Illegal Arg)Tj -/TT6 1 Tf -6.6466 0 TD -0.0189 Tw -(, if)Tj -/TT14 1 Tf --38.8581 -1.2889 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -[( is out of bounds. Can cause the error, )]TJ -/TT8 1 Tf -17.6478 0 TD -0.1022 Tw -(Non-numeric arg)Tj -/TT6 1 Tf -9.1037 0 TD -0.0422 Tw -(, if )Tj -/TT14 1 Tf -1.4585 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0422 Tw -[( is an array whose)]TJ -/TT8 1 Tf --31.8106 -1.2889 TD -0 Tw -(ARRAYTYP)Tj -/TT6 1 Tf -4.8008 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(FIXP)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(FLOATP)Tj -/TT6 1 Tf -3.6006 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -( is non-numeric.)Tj -/TT8 1 Tf -10 0 0 10 102 89.54 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 89.54 Tm -(ARRAYTYP)Tj -/TT8 1 Tf -10 0 0 10 151.2 89.54 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 157.201 89.54 Tm -(ARRAY)Tj -/TT8 1 Tf -10 0 0 10 184.2054 89.54 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 190.2063 89.54 Tm -[( )-27769.3([Function])]TJ --7.134 -1.8833 TD -0.02 Tw -(Returns the type of the elements in )Tj -/TT14 1 Tf -15.7987 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.02 Tw -(, a value corresponding to the second argument)Tj --18.7992 -1.2889 TD -0 Tw -(to )Tj -/TT8 1 Tf -1.1221 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -16 0 obj -<< -/Length 2608 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-2)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(If )Tj -/TT8 1 Tf -0.961 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( coerced the array type as described above, )]TJ -/TT8 1 Tf -19.5257 0 TD -0 Tw -(ARRAYTYP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0411 Tw -[( returns the )]TJ -/TT10 1 Tf -5.4646 0 TD -0 Tw -(new)Tj -/TT6 1 Tf -1.6675 0 TD -0.0411 Tw -[( type. For)]TJ --35.4201 -1.2889 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.249 0 TD -(\(ARRAYTYP \(ARRAY 10 \(BITS 3\)\)\))Tj -/TT6 1 Tf -18.603 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(BYTE)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 536.29 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 536.29 Tm -(ARRAYSIZE)Tj -/TT8 1 Tf -10 0 0 10 204.6 536.29 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.601 536.29 Tm -(ARRAY)Tj -/TT8 1 Tf -10 0 0 10 237.6053 536.29 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 243.6063 536.29 Tm -[( )-27169.3([Function])]TJ --7.734 -1.8833 TD -(Returns the size of )Tj -/TT14 1 Tf -8.437 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(. Generates the error, )Tj -/TT8 1 Tf -9.5244 0 TD -(Arg not array)Tj -/TT6 1 Tf -7.8013 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -( is not an array.)Tj -/TT8 1 Tf -10 0 0 10 150 497.69 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 497.69 Tm -(ARRAYORIG)Tj -/TT8 1 Tf -10 0 0 10 204.6 497.69 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.601 497.69 Tm -(ARRAY)Tj -/TT8 1 Tf -10 0 0 10 237.6053 497.69 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 243.6063 497.69 Tm -[( )-27169.3([Function])]TJ --7.734 -1.8833 TD -0.0344 Tw -(Returns the origin of )Tj -/TT14 1 Tf -9.5421 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0344 Tw -[(, which may be 0 or 1. Generates an error, )]TJ -/TT8 1 Tf -19.2431 0 TD -0.0822 Tw -(Arg not array)Tj -/TT6 1 Tf -7.9657 0 TD -0 Tw -(,)Tj --39.7514 -1.2889 TD -(if )Tj -/TT14 1 Tf -0.874 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -( is not an array.)Tj -/TT8 1 Tf -10 0 0 10 150 447.49 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 447.49 Tm -(COPYARRAY)Tj -/TT8 1 Tf -10 0 0 10 204.6 447.49 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.601 447.49 Tm -(ARRAY)Tj -/TT8 1 Tf -10 0 0 10 237.6053 447.49 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 243.6063 447.49 Tm -[( )-27169.3([Function])]TJ --7.734 -1.8833 TD -0.0833 Tw -(Returns a new array of the same size and type as )Tj -/TT14 1 Tf -22.7096 0 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -(, and with the same contents as)Tj -/TT14 1 Tf --25.7101 -1.2889 TD -0 Tw -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(. Generates an error, )Tj -/TT8 1 Tf -9.7192 0 TD -(Arg not array)Tj -/TT6 1 Tf -7.8013 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -( is not an array.)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -19 0 obj -<< -/Length 64 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-3)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -22 0 obj -<< -/Length 201 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(5-4)Tj -/TT16 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT16 12 0 R ->> -/ExtGState << -/GS1 13 0 R ->> ->> -endobj -13 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -24 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -25 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -26 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -27 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -28 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -29 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -30 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -31 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -32 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 32 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 53 -/Widths [333 0 0 0 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 24 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 -0 722 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 722 667 0 0 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 25 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 0 -500 500 0 0 0 0 0 0 500 0 250 250 0 0 0 0 -0 778 611 709 0 0 556 763 0 337 0 0 611 946 831 0 -0 0 668 525 613 0 0 0 0 0 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 0 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 26 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 0 600 0 0 -600 600 0 600 0 0 0 0 600 0 0 0 0 0 0 0 -0 600 600 0 600 600 600 0 0 600 0 0 600 0 600 600 -600 0 600 600 600 0 0 0 600 600 0 0 0 0 0 0 -0 600 0 600 0 600 0 600 0 600 0 0 600 600 600 600 -0 0 600 0 600 600 0 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 27 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 101 -/LastChar 119 -/Widths [389 0 0 0 0 0 0 0 0 556 444 0 0 0 0 333 -0 0 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 28 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 65 -/LastChar 90 -/Widths [600 0 600 0 600 0 600 0 600 0 0 600 0 0 600 600 -0 600 600 600 0 0 0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 29 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 0 0 0 600 0 600 0 600 0 0 600 0 600 600 -600 0 600 600 600 0 600 0 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 30 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 31 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 14 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -33 0 obj -<< -/S /D ->> -endobj -34 0 obj -<< -/Nums [0 33 0 R ] ->> -endobj -14 0 obj -<< -/Type /Pages -/Kids [1 0 R 15 0 R 18 0 R 21 0 R] -/Count 4 -/MediaBox [0 0 612 792] ->> -endobj -35 0 obj -<< -/CreationDate (D:20210202102640-06'00') -/ModDate (D:20210202102640-06'00') -/Producer (Apple pstopdf) ->> -endobj -36 0 obj -<< -/Type /Catalog -/Pages 14 0 R -/PageLabels 34 0 R ->> -endobj -xref -0 37 -0000000000 65535 f -0000016016 00000 n -0000000016 00000 n -0000007595 00000 n -0000013148 00000 n -0000013324 00000 n -0000013517 00000 n -0000013816 00000 n -0000014328 00000 n -0000014799 00000 n -0000015017 00000 n -0000015261 00000 n -0000015711 00000 n -0000011202 00000 n -0000016417 00000 n -0000016097 00000 n -0000007785 00000 n -0000010446 00000 n -0000016181 00000 n -0000010616 00000 n -0000010731 00000 n -0000016265 00000 n -0000010828 00000 n -0000011081 00000 n -0000011343 00000 n -0000011540 00000 n -0000011746 00000 n -0000011946 00000 n -0000012137 00000 n -0000012340 00000 n -0000012542 00000 n -0000012743 00000 n -0000012938 00000 n -0000016349 00000 n -0000016377 00000 n -0000016520 00000 n -0000016643 00000 n -trailer -<< -/Size 37 -/Root 36 0 R -/Info 35 0 R -/ID [<8f9f492ba0578b6e24fb42de70991de7><8f9f492ba0578b6e24fb42de70991de7>] ->> -startxref -16713 -%%EOF diff --git a/docs/medley-irm/06-HASHARRAYS.pdf b/docs/medley-irm/06-HASHARRAYS.pdf deleted file mode 100644 index 81ab9d87..00000000 --- a/docs/medley-irm/06-HASHARRAYS.pdf +++ /dev/null @@ -1,2330 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6507 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 468 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-1)Tj -/TT4 1 Tf -10 0 0 10 425.55 568.2 Tm -(6. HASHARRAYS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0811 Tw -[(Hash arrays let you associate arbitrary Lisp objects \(hash keys\) with other objects \(hash values\),)]TJ -0 -1.2222 TD -0.0278 Tw -[(so you can get from key to value quickly. There are functions for creating hash arrays, putting a hash)]TJ -T* -0.1211 Tw -(key/value pair in a hash array, and quickly retrieving the hash value associated with a given hash)Tj -T* -0 Tw -(key.)Tj -0 -2 TD -0.0344 Tw -(By default, the hash array functions use )Tj -/TT8 1 Tf -18.0092 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0344 Tw -[( for comparing hash keys. This means that if non-symbols)]TJ --19.2094 -1.2889 TD -0.1422 Tw -(are used as hash keys, the exact same object \(not a copy\) must be used to retrieve the hash value.)Tj -0 -1.2222 TD -0.1589 Tw -(However, you can specify the function used to compare hash keys and to hash a hash key to a)Tj -T* -0.0844 Tw -[(number. You can, for example, create hash arrays where )]TJ -/TT8 1 Tf -26.2043 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( but non-)]TJ -/TT8 1 Tf -4.1943 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0844 Tw -[( strings will hash to the)]TJ --34.5993 -1.2889 TD -0 Tw -(same value. Specifying alternative hashing algorithms is described below.)Tj -0 -2 TD -0.15 Tw -(In the description of the functions below, the argument )Tj -/TT10 1 Tf -25.9574 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -0.15 Tw -[( should be a hasharray created by)]TJ -/TT8 1 Tf --29.558 -1.2889 TD -0 Tw -(HASHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0389 Tw -[(. For convenience in interactive program development, it may also be )]TJ -/TT8 1 Tf -31.5546 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0389 Tw -(, in which case)Tj --38.7557 -1.2889 TD -0.0278 Tw -(a hash array )Tj -/TT8 1 Tf -5.7674 0 TD -0 Tw -(\(SYSHASHARRAY\))Tj -/TT6 1 Tf -8.4014 0 TD -0.0278 Tw -[( provided by the system is used; you must watch out for confusions if)]TJ --14.1688 -1.2889 TD -0 Tw -(this form is used to associate more than one kind of value with the same key.)Tj -/TT12 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1111 Tw -[(: For backwards compatibility, the hash array functions will accept a list whose )]TJ -/TT8 1 Tf -36.9188 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1111 Tw -[( is a hash)]TJ --40.9413 -1.2889 TD -0.0411 Tw -(array, and whose )Tj -/TT8 1 Tf -8.0271 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( is the overflow method for the hash array \(see below\). However, hash array)]TJ --9.8274 -1.2889 TD -0.0422 Tw -(functions are guaranteed to perform with maximum efficiency only if a direct value of )Tj -/TT8 1 Tf -38.9168 0 TD -0 Tw -(HASHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0422 Tw -[( is)]TJ --44.3177 -1.2889 TD -0 Tw -(given.)Tj -/TT12 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0667 Tw -[(: Interlisp hash arrays and Common Lisp hash tables are the same data type, so functions from)]TJ --2.2222 -1.2222 TD -0.1344 Tw -[(both may be intermixed. The only difference between the functions may be argument order, as in)]TJ -/TT8 1 Tf -T* -0 Tw -(MAPHASH)Tj -/TT6 1 Tf -4.2007 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(CL:MAPHASH)Tj -/TT6 1 Tf -6.001 0 TD -( \(see below\).)Tj -/TT8 1 Tf -10 0 0 10 102 279.86 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 108.001 279.86 Tm -(HASHARRAY)Tj -/F1 1 Tf -10 0 0 10 156.6 279.86 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 159.38 279.86 Tm -(MINKEYS)Tj -/F2 1 Tf -10 0 0 10 197.1861 279.86 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 199.9661 279.86 Tm -(OVERFLOW)Tj -/F2 1 Tf -10 0 0 10 243.1732 279.86 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 245.9532 279.86 Tm -(HASHBITSFN)Tj -/F2 1 Tf -10 0 0 10 299.9619 279.86 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 302.7419 279.86 Tm -(EQUIVFN RECLAIMABLE REHASH-)Tj --20.9713 -1.2544 TD -(THRESHOLD)Tj -/TT8 1 Tf -10 0 0 10 162.6079 268.57 Tm -(\))Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 268.57 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1178 Tw -(Creates a hash array with space for at least )Tj -/TT10 1 Tf -20.1572 0 TD -0 Tw -(MINKEYS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1178 Tw -[( hash keys, with overflow method)]TJ -/TT10 1 Tf --24.3579 -1.2889 TD -0 Tw -(OVERFLOW)Tj -/TT6 1 Tf -4.8008 0 TD -(. See discussion of overflow behavior below.)Tj --4.8008 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.2688 0 TD -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.3489 Tw -[( and )]TJ -/TT10 1 Tf -2.8906 0 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.3489 Tw -[( are non-)]TJ -/TT8 1 Tf -4.6148 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3489 Tw -(, they specify the hashing function and)Tj --20.7762 -1.2889 TD -0.0322 Tw -[(comparison function used to interpret hash keys. This is described in the section on user-)]TJ -0 -1.2222 TD -0.0733 Tw -[(specified hashing functions below. If )]TJ -/TT10 1 Tf -17.1636 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.0733 Tw -[( and )]TJ -/TT10 1 Tf -2.3395 0 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0733 Tw -[( are )]TJ -/TT8 1 Tf -2.0207 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0733 Tw -(, the default is)Tj --33.5258 -1.2889 TD -0 Tw -(to hash )Tj -/TT8 1 Tf -3.46 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( hash keys to the same value.)Tj --4.6602 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.1555 0 TD -(RECLAIMABLE)Tj -/TT6 1 Tf -6.6011 0 TD -0.2356 Tw -[( is )]TJ -/TT10 1 Tf -1.686 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2356 Tw -[( the entries in the hash table will be removed if the key has a)]TJ --10.0426 -1.2889 TD -0.1167 Tw -(reference count of one and the table is about to be rehashed. This allows the system, in)Tj -0 -1.2222 TD -0 Tw -(some cases, to reuse keys instead of expanding the table. )Tj -/TT12 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0278 Tw -(: )Tj -/TT8 1 Tf -0.8056 0 TD -0 Tw -(CL:MAKE-HASH-TABLE)Tj -/TT6 1 Tf -10.8018 0 TD -0.0278 Tw -[( does not allow you to specify your own hashing functions)]TJ --13.8295 -1.2889 TD -0 Tw -(but does provide three built-in types specified by )Tj -/TT18 1 Tf -22.0098 0 TD -(Common Lisp, the Language)Tj -/TT6 1 Tf -11.5571 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 97.14 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 108.001 97.14 Tm -(HARRAY)Tj -/F1 1 Tf -10 0 0 10 140.4 97.14 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 143.18 97.14 Tm -(MINKEYS)Tj -/TT8 1 Tf -10 0 0 10 180.9861 97.14 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 186.9871 97.14 Tm -[( )-28127([Function])]TJ --6.7763 -1.8833 TD -0.3267 Tw -(Provided for backward compatibility, this is equivalent to )Tj -/TT8 1 Tf -28.4175 0 TD -0.7833 Tw -(\(HASHARRAY MINKEYS)Tj --28.4175 -1.2889 TD -0 Tw -(ERROR\),)Tj -/TT6 1 Tf -4.8008 0 TD -( i.e. if the resulting hasarray gets full, an error occurs.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 14 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -18 0 obj -<< -/Length 8774 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-2)Tj -/TT16 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -4.8 -4.374 TD -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 568.26 Tm -(HARRAYP)Tj -/F1 1 Tf -10 0 0 10 193.8 568.26 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 196.58 568.26 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 201.9809 568.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 207.9818 568.26 Tm -[( )-31127.6([Function])]TJ --3.7758 -1.8833 TD -(Returns )Tj -/TT10 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if it is a hash array; otherwise )Tj -/TT8 1 Tf -13.4961 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --19.6235 -2.0667 TD -(HARRAYP)Tj -/TT6 1 Tf -4.2007 0 TD -0.02 Tw -[( returns )]TJ -/TT8 1 Tf -3.7441 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.02 Tw -[( if )]TJ -/TT10 1 Tf -1.164 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( is a list whose )]TJ -/TT8 1 Tf -6.7616 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.02 Tw -[( is an )]TJ -/TT8 1 Tf -2.6069 0 TD -0 Tw -(HARRAYP)Tj -/TT6 1 Tf -4.2007 0 TD -0.02 Tw -(, even though this is accepted)Tj --26.8787 -1.2889 TD -0 Tw -(by the hash array functions \(see below\). )Tj -/TT8 1 Tf -10 0 0 10 150 501.83 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 501.83 Tm -(PUTHASH)Tj -/TT8 1 Tf -10 0 0 10 193.8 501.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 199.801 501.83 Tm -(KEY)Tj -/F2 1 Tf -10 0 0 10 216.0036 501.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 218.7836 501.83 Tm -(VAL)Tj -/F2 1 Tf -10 0 0 10 234.9862 501.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 237.7662 501.83 Tm -(HARRAY)Tj -/TT8 1 Tf -10 0 0 10 270.1715 501.83 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 276.1725 501.83 Tm -[( )-23550.8([Function])]TJ --11.3525 -1.8833 TD -0.0733 Tw -(Associates the hash value )Tj -/TT10 1 Tf -11.8417 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0733 Tw -[( with the hash key )]TJ -/TT10 1 Tf -8.7163 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.0733 Tw -[( in )]TJ -/TT10 1 Tf -1.5197 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0733 Tw -[(. Replaces the previous)]TJ --29.2788 -1.2889 TD -0.0856 Tw -[(hash value, if any. If )]TJ -/TT10 1 Tf -9.9713 0 TD -0 Tw -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0856 Tw -[( is )]TJ -/TT8 1 Tf -1.386 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0856 Tw -(, any old association is removed \(hence a hash value of)Tj -/TT8 1 Tf --14.9579 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -[( is not allowed\). If )]TJ -/TT10 1 Tf -8.8403 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( is full when )]TJ -/TT8 1 Tf -5.9544 0 TD -0 Tw -(PUTHASH)Tj -/TT6 1 Tf -4.2007 0 TD -0.0611 Tw -[( is called with a key not already in)]TJ --24.3963 -1.2889 TD -0.0656 Tw -(the hash array, the function )Tj -/TT8 1 Tf -12.7433 0 TD -0 Tw -(HASHOVERFLOW)Tj -/TT6 1 Tf -7.2012 0 TD -0.0656 Tw -[( is called, and the )]TJ -/TT8 1 Tf -8.2384 0 TD -0 Tw -(PUTHASH)Tj -/TT6 1 Tf -4.2007 0 TD -0.0656 Tw -[( is applied to the)]TJ --32.3836 -1.2889 TD -0 Tw -(value returned \(see below\). Returns )Tj -/TT10 1 Tf -16.2861 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 418.6 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156 418.6 Tm -(GETHASH)Tj -/TT8 1 Tf -10 0 0 10 193.8061 418.6 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 199.8071 418.6 Tm -(KEY)Tj -/F2 1 Tf -10 0 0 10 216.0097 418.6 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 218.7897 418.6 Tm -(HARRAY)Tj -/TT8 1 Tf -10 0 0 10 251.195 418.6 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 257.196 418.6 Tm -[( )-25659.3([Function])]TJ --9.244 -1.8833 TD -0.03 Tw -(Returns the hash value associated with the hash key )Tj -/TT10 1 Tf -23.5542 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -[( in )]TJ -/TT10 1 Tf -1.433 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -[(. Returns )]TJ -/TT8 1 Tf -4.5671 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -(, if )Tj -/TT10 1 Tf -1.434 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf --38.1895 -1.2889 TD -(is not found.)Tj -/TT8 1 Tf -10 0 0 10 150 372 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 372 Tm -(CLRHASH)Tj -/TT8 1 Tf -10 0 0 10 193.8 372 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 199.801 372 Tm -(HARRAY)Tj -/TT8 1 Tf -10 0 0 10 232.2062 372 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 238.2072 372 Tm -[( )-27769.2([Function])]TJ --7.1341 -1.8833 TD -(Clears all hash keys/values from )Tj -/TT10 1 Tf -14.8574 0 TD -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(. Returns )Tj -/TT10 1 Tf -4.4771 0 TD -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 335.17 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 335.17 Tm -(HARRAYPROP)Tj -/F1 1 Tf -10 0 0 10 210 335.17 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 212.78 335.17 Tm -(HARRAY)Tj -/F2 1 Tf -10 0 0 10 245.1853 335.17 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 247.9653 335.17 Tm -(PROP)Tj -/F2 1 Tf -10 0 0 10 269.5688 335.17 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 272.3488 335.17 Tm -(NEWVALUE)Tj -/TT8 1 Tf -10 0 0 10 315.5558 335.17 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 321.5568 335.17 Tm -[( )-13770.4([NoSpread Function])]TJ --16.3952 -1.8833 TD -0.1333 Tw -(Returns the property )Tj -/TT10 1 Tf -9.9137 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1333 Tw -[( of )]TJ -/TT10 1 Tf -1.6456 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(; )Tj -/TT10 1 Tf -0.6333 0 TD -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1333 Tw -[( can have the system-defined values )]TJ -/TT8 1 Tf -17.0114 0 TD -0 Tw -(SIZE)Tj -/TT6 1 Tf --37.6054 -1.2889 TD -0.1111 Tw -(\(the maximum occupancy of )Tj -/TT10 1 Tf -13.3219 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(\), )Tj -/TT8 1 Tf -0.9441 0 TD -(NUMKEYS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1111 Tw -[( \(number of occupied slots\), )]TJ -/TT8 1 Tf -13.1249 0 TD -0 Tw -(OVERFLOW)Tj -/TT6 1 Tf --35.1922 -1.2889 TD -0.0056 Tw -(\(overflow method\), )Tj -/TT8 1 Tf -8.8427 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.0056 Tw -[( \(hashing function\) and )]TJ -/TT8 1 Tf -10.6052 0 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0056 Tw -[( \(comparison function\).)]TJ --29.6495 -1.2889 TD -0 Tw -(Except for )Tj -/TT8 1 Tf -4.751 0 TD -(SIZE)Tj -/TT6 1 Tf -2.4004 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(NUMKEYS)Tj -/TT6 1 Tf -4.2007 0 TD -(, a new value may be specified as )Tj -/TT10 1 Tf -14.9307 0 TD -(NEWVALUE)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --33.2764 -2.0667 TD -0.0122 Tw -(By using other values for )Tj -/TT10 1 Tf -11.398 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0122 Tw -(, the user may also set and get arbitrary property values, to)Tj --13.7984 -1.2889 TD -0 Tw -(associate additional information with a hash array.)Tj -0 -2 TD -(The )Tj -/TT8 1 Tf -1.9238 0 TD -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -( properties can only be changed if the hash array is empty.)Tj -/TT8 1 Tf -10 0 0 10 150 216.57 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 216.57 Tm -(HARRAYSIZE)Tj -/TT8 1 Tf -10 0 0 10 210 216.57 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 216.0009 216.57 Tm -(HARRAY)Tj -/TT8 1 Tf -10 0 0 10 248.4062 216.57 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 254.4072 216.57 Tm -[( )-25969.2([Function])]TJ --8.9341 -1.8833 TD -0.3078 Tw -(Returns the number of slots in )Tj -/TT10 1 Tf -15.4687 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -0.3078 Tw -(. Its equivalent to )Tj -/TT8 1 Tf -9.3942 0 TD -0.7378 Tw -(\(HARRAYPROP HARRAY)Tj --28.4635 -1.2889 TD -0 Tw -(SIZE\))Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 168.14 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 168.14 Tm -(REHASH)Tj -/TT8 1 Tf -10 0 0 10 188.4 168.14 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 194.401 168.14 Tm -(OLDHARRAY)Tj -/F2 1 Tf -10 0 0 10 243.0089 168.14 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 245.7889 168.14 Tm -(NEWHARRAY)Tj -/TT8 1 Tf -10 0 0 10 294.3968 168.14 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 300.3978 168.14 Tm -[( )-20859.1([Function])]TJ --14.0442 -1.8833 TD -0.0133 Tw -(Hashes all hash keys and values in )Tj -/TT10 1 Tf -15.6969 0 TD -0 Tw -(OLDHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[( into )]TJ -/TT10 1 Tf -2.2718 0 TD -0 Tw -(NEWHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[(. The two hash arrays do)]TJ --28.7704 -1.2889 TD -0 Tw -(not have to be \(and usually arent\) the same size. Returns )Tj -/TT10 1 Tf -25.7651 0 TD -(NEWHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 119.71 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 119.71 Tm -(MAPHASH)Tj -/TT8 1 Tf -10 0 0 10 193.8 119.71 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 199.801 119.71 Tm -(HARRAY)Tj -/F2 1 Tf -10 0 0 10 232.2062 119.71 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 234.9862 119.71 Tm -(MAPHFN)Tj -/TT8 1 Tf -10 0 0 10 267.3915 119.71 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 273.3925 119.71 Tm -[( )-23859.7([Function])]TJ -/TT10 1 Tf --11.0436 -1.8833 TD -(MAPHFN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1033 Tw -[( is a function of two arguments. For each hash key in )]TJ -/TT10 1 Tf -25.1524 0 TD -0 Tw -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6033 0 TD -(MAPHFN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1033 Tw -[( will be)]TJ --36.5575 -1.2889 TD -0 Tw -(applied to the hash value, and the hash key. For example:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -([MAPHASH A)Tj -0 -1 TD -( \(FUNCTION \(LAMBDA \(VAL KEY\))Tj -T* -( \(if \(LISTP KEY\) then \(PRINT VAL\)])Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(will print the hash value for all hash keys that are lists. )Tj -/TT8 1 Tf -24.6387 0 TD -(MAPHASH)Tj -/TT6 1 Tf -4.2007 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -21 0 obj -<< -/Length 6609 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-3)Tj -/TT16 1 Tf -10 0 0 10 435.1 612 Tm -(HASHARRAYS)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: the argument order for )Tj -/TT8 1 Tf -11.1611 0 TD -(CL:MAPHASH)Tj -/TT6 1 Tf -6.001 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(MAPHFN HARRAY)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 549.66 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 108.001 549.66 Tm -(DMPHASH)Tj -/F1 1 Tf -10 0 0 10 145.8 549.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 148.58 549.66 Tm -(HARRAY)Tj -3.6 -0.2222 TD -(1)Tj -/F2 1 Tf -10 0 0 10 186.38 549.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 189.16 549.66 Tm -(HARRAY)Tj -3.6 -0.2222 TD -(2)Tj -/F2 1 Tf -10 0 0 10 226.96 549.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 229.74 549.66 Tm -(... HARRAY)Tj -6 -0.2222 TD -(N)Tj -/TT8 1 Tf -10 0 0 10 289.14 549.66 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 295.141 549.66 Tm -[( )-6632.1([NLambda NoSpread Function])]TJ --18.7934 -2.0667 TD -0.2478 Tw -(Prints on the primary output file )Tj -/TT8 1 Tf -16.1444 0 TD -0 Tw -(LOAD)Tj -/TT6 1 Tf -2.4004 0 TD -0.2478 Tw -(able forms which will restore the hash-arrays)Tj --18.5448 -1.2889 TD -0.27 Tw -(contained as the values of the atoms )Tj -/TT10 1 Tf -18.1185 0 TD -0 Tw -(HARRAY)Tj -3.6004 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT10 1 Tf -0.77 0 TD -(HARRAY)Tj -3.6 -0.2222 TD -(2)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT8 1 Tf -0.77 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.52 0 TD -(HARRAY)Tj -3.5997 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.27 Tw -[(. Example:)]TJ -/TT8 1 Tf --34.5789 -1.5111 TD -0 Tw -(\(DMPHASH SYSHASHARRAY\))Tj -/TT6 1 Tf -13.2021 0 TD -( will dump the system hash-array.)Tj --13.2021 -2.0667 TD -(All )Tj -/TT8 1 Tf -1.8165 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.2067 Tw -[( identities except symbols and small integers are lost by dumping and loading)]TJ --3.0167 -1.2889 TD -0 Tw -(because )Tj -/TT8 1 Tf -3.8897 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1578 Tw -[( will create new structure for each item. Thus if two lists contain an )]TJ -/TT8 1 Tf -32.5053 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf --38.7954 -1.2889 TD -0.0078 Tw -(substructure, when they are dumped and loaded back in, the corresponding substructures)Tj -0 -1.2222 TD -0 Tw -(while )Tj -/TT8 1 Tf -2.7926 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( are no longer )]TJ -/TT8 1 Tf -6.6133 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0656 Tw -[(. The )]TJ -/TT8 1 Tf -2.8705 0 TD -0 Tw -(HORRIBLEVARS)Tj -/TT6 1 Tf -7.2012 0 TD -0.0656 Tw -[( file package command \(Chapter 17\))]TJ --23.6783 -1.2889 TD -0 Tw -(provides a way of dumping hash tables such that these identities are preserved.)Tj -/TT4 1 Tf -10 0 0 10 54 419.12 Tm -(Hash Overflow)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 416.41 m -510.01 416.41 l -S -BT -/TT6 1 Tf -9 0 0 9 78 402.46 Tm -0.4522 Tw -[(When a hash array becomes full, trying to add another hash key will cause the function)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(HASHOVERFLOW)Tj -/TT6 1 Tf -7.2012 0 TD -0.1122 Tw -[( to be called. This either enlarges the hash array, or causes the error )]TJ -/TT8 1 Tf -31.8542 0 TD -0.27 Tw -(Hash table)Tj --39.0554 -1.2889 TD -0 Tw -(full)Tj -/TT6 1 Tf -2.4004 0 TD -0.1033 Tw -[(. How hash overflow is handled is determined by the value of the )]TJ -/TT8 1 Tf -30.9071 0 TD -0 Tw -(OVERFLOW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1033 Tw -[( property of the)]TJ --38.1083 -1.2889 TD -0 Tw -(hash array \(which can be accessed by )Tj -/TT8 1 Tf -16.7217 0 TD -(HARRAYPROP)Tj -/TT6 1 Tf -6.001 0 TD -(\). The possibilities for the overflow method are:)Tj --14.196 -2.0667 TD -(the symbol )Tj -/TT8 1 Tf -5.1401 0 TD -(ERROR)Tj -/TT6 1 Tf -4.3332 0 TD -0.1378 Tw -(The error )Tj -/TT8 1 Tf -4.6593 0 TD -0.33 Tw -(Hash array full)Tj -/TT6 1 Tf -9.6615 0 TD -0.1378 Tw -[( is generated when the hash)]TJ --14.3208 -1.2889 TD -0.1933 Tw -[(array overflows. This is the default overflow behavior for)]TJ -0 -1.2222 TD -0 Tw -(hash arrays returned by )Tj -/TT8 1 Tf -10.8374 0 TD -(HARRAY)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --17.5713 -2.0667 TD -(NIL)Tj -/TT6 1 Tf -3.1333 0 TD -0.19 Tw -(The array is automatically enlarged by at least a factor 1.5)Tj -0 -1.2889 TD -0.0322 Tw -(every time it overflows. This is the default overflow behavior)Tj -0 -1.2222 TD -0 Tw -(for hash arrays returned by )Tj -/TT8 1 Tf -12.3613 0 TD -(HASHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --27.5755 -2.0667 TD -(a positive integer )Tj -/TT10 1 Tf -7.8813 0 TD -(N)Tj -/TT6 1 Tf -1.932 0 TD -0.0967 Tw -(The array is enlarged to include at least )Tj -/TT10 1 Tf -18.4203 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( more slots than it)]TJ --19.0204 -1.2889 TD -0 Tw -(currently has.)Tj --12.7 -2 TD -(a floating point number )Tj -/TT10 1 Tf -10.7666 0 TD -(F)Tj -/TT6 1 Tf -1.9334 0 TD -0.34 Tw -(The array is changed to include )Tj -/TT10 1 Tf -16.2016 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.34 Tw -[( times the number of)]TJ --16.8017 -1.2889 TD -0 Tw -(current slots.)Tj --17.0089 -2 TD -(a function or lambda expression )Tj -/TT10 1 Tf -14.4727 0 TD -(FN)Tj -/TT6 1 Tf -2.5362 0 TD -0.1267 Tw -(Upon hash overflow, )Tj -/TT10 1 Tf -9.9635 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1267 Tw -[( is called with the hash array as its)]TJ --11.1637 -1.2889 TD -0.0711 Tw -[(argument. If )]TJ -/TT10 1 Tf -6.2075 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0711 Tw -[( returns a number, that will become the size)]TJ --7.4077 -1.2889 TD -0.0433 Tw -[(of the array. Otherwise, the new size defaults to 1.5 times its)]TJ -0 -1.2222 TD -0.3078 Tw -(previous size. )Tj -/TT10 1 Tf -7.521 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.3078 Tw -[( could be used to print a message, or)]TJ --8.7212 -1.2889 TD -0 Tw -(perform some monitor function.)Tj -/TT12 1 Tf --18 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0067 Tw -[(: For backwards compatibility, the hash array functions accept a list whose )]TJ -/TT8 1 Tf -33.4929 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0067 Tw -[( is the hash array,)]TJ --37.5154 -1.2889 TD -0.2333 Tw -(and whose )Tj -/TT8 1 Tf -5.5243 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2333 Tw -[( is the overflow method. In this case, the overflow method specified in the list)]TJ --7.3246 -1.2889 TD -0.0922 Tw -[(overrides the overflow method set in the hash array. Hash array functions perform with maximum)]TJ -0 -1.2222 TD -0 Tw -(efficiency only if a direct value of )Tj -/TT8 1 Tf -14.9438 0 TD -(HASHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -( is given.)Tj -/TT4 1 Tf -10 0 0 10 54 87.12 Tm -(Specifying Your Own Hashing Functions)Tj -ET -54.01 84.41 m -510.01 84.41 l -S -BT -/TT6 1 Tf -9 0 0 9 78 70.46 Tm -0.0433 Tw -(In general terms, when a key is looked up in a hash array, it is converted to an integer, which is used)Tj -0 -1.2222 TD -0.0289 Tw -[(to index into a linear array. If the key is not the same as the one found at that index, other indices are)]TJ -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -24 0 obj -<< -/Length 4930 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-4)Tj -/TT16 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0022 Tw -(tried until it the desired key is found. The value stored with that key is then returned \(from )Tj -/TT8 1 Tf -40.8079 0 TD -0 Tw -(GETHASH)Tj -/TT6 1 Tf -4.2007 0 TD -(\))Tj --45.0085 -1.2889 TD -(or replaced \(from )Tj -/TT8 1 Tf -7.9805 0 TD -(PUTHASH)Tj -/TT6 1 Tf -4.2007 0 TD -(\).)Tj --12.1812 -2.0667 TD -0.0789 Tw -[(To customize hash arrays, youll need to supply the hashing function used to convert a key to an)]TJ -0 -1.2222 TD -0.0822 Tw -(integer and the comparison function used to compare the key found in the array with the key being)Tj -T* -0.2 Tw -[(looked up. For hash arrays to work correctly, any two objects which are equal according to the)]TJ -T* -0 Tw -(comparison function must hash to equal integers.)Tj -0 -2.8889 TD -0.1067 Tw -(By default, Medley uses a hashing function that computes an integer from the internal address of a)Tj -0 -1.2222 TD -0.11 Tw -(key, and use )Tj -/TT8 1 Tf -6.12 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.11 Tw -[( for comparing keys. This means that if non-atoms are used as hash keys, )]TJ -/TT18 1 Tf -34.3619 0 TD -(the exact)Tj --41.6822 -1.2889 TD -0 Tw -(same object)Tj -/TT6 1 Tf -4.564 0 TD -( \(not a copy\) must be used to retrieve the hash value.)Tj --4.564 -2 TD -0.1489 Tw -(There are some applications for which the )Tj -/TT8 1 Tf -19.8367 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1489 Tw -[( constraint is too restrictive. For example, it may be)]TJ --21.0369 -1.2889 TD -0.0111 Tw -(useful to use strings as hash keys, without the restriction that )Tj -/TT8 1 Tf -27.3869 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0111 Tw -[( but not )]TJ -/TT8 1 Tf -3.7199 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0111 Tw -[( strings are considered)]TJ --35.3074 -1.2889 TD -0 Tw -(to be different hash keys.)Tj -0 -2 TD -0.1422 Tw -(The user can override this default behavior for any hash array by specifying the functions used to)Tj -0 -1.2222 TD -0.1122 Tw -[(compare keys and to hash a key to a number. This can be done by giving the )]TJ -/TT10 1 Tf -37.2676 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.1122 Tw -[( and)]TJ -/TT10 1 Tf --43.2685 -1.2889 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -( arguments to )Tj -/TT8 1 Tf -6.3701 0 TD -(HASHARRAY)Tj -/TT6 1 Tf -5.4009 0 TD -( \(see above\).)Tj --15.9717 -2.0667 TD -(The )Tj -/TT10 1 Tf -1.9705 0 TD -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( argument is a function of two arguments that returns non-)]TJ -/TT8 1 Tf -26.5272 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0467 Tw -[( when its arguments are)]TJ --34.4987 -1.2889 TD -0.03 Tw -[(considered equal. The )]TJ -/TT10 1 Tf -10.3383 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.03 Tw -[( argument is a function of one argument that produces a positive)]TJ --16.3392 -1.2889 TD -0.0711 Tw -(small integer \(in the range [0..2)Tj -6 0 0 6 252.38 336.14 Tm -0 Tw -(16)Tj -9 0 0 9 258.38 334.14 Tm -0.0711 Tw -[( - 1]\) with the property that objects that are considered equal by the)]TJ -/TT10 1 Tf --14.7089 -1.2222 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -( produce the same hash bits.)Tj --4.2007 -2.0667 TD -0.04 Tw -(For an existing hash array, the function )Tj -/TT8 1 Tf -17.8528 0 TD -0 Tw -(HARRAYPROP)Tj -/TT6 1 Tf -6.001 0 TD -0.04 Tw -[( \(see above\) can be used to examine the hashing)]TJ --23.8537 -1.2889 TD -0.0344 Tw -(and equivalence functions as the )Tj -/TT8 1 Tf -14.8299 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.0344 Tw -[( and )]TJ -/TT8 1 Tf -2.2618 0 TD -0 Tw -(EQUIVFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0344 Tw -[( hash array properties. These properties)]TJ --27.2934 -1.2889 TD -0.0511 Tw -(are read-only for non-empty hash arrays, as it makes no sense to change the equivalence relationship)Tj -0 -1.2222 TD -0 Tw -(once some keys have been hashed.)Tj -0 -2 TD -(The following function is useful for creating hash arrays that take strings as hash keys:)Tj -/TT8 1 Tf -10 0 0 10 150 233 Tm -(\()Tj -/TT14 1 Tf -9 0 0 9 156.001 233 Tm -(STRINGHASHBITS)Tj -/TT4 1 Tf -10 0 0 10 231.6 233 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 234.3783 233 Tm -(STRING)Tj -/TT8 1 Tf -10 0 0 10 266.7836 233 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 272.7845 233 Tm -[( )-23927.3([Function])]TJ --10.9761 -1.8833 TD -0.0978 Tw -(Hashes the string )Tj -/TT10 1 Tf -8.2455 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0978 Tw -[( into an integer that can be used as a )]TJ -/TT8 1 Tf -17.2463 0 TD -0 Tw -(HASHBITSFN)Tj -/TT6 1 Tf -6.001 0 TD -0.0978 Tw -[( for a hash)]TJ --35.0934 -1.2889 TD -0 Tw -(array. Strings which are )Tj -/TT8 1 Tf -11.0522 0 TD -(STREQUAL)Tj -/TT6 1 Tf -4.8008 0 TD -( hash to the same integer.)Tj --15.853 -2.0667 TD -(Example:)Tj -/TT8 1 Tf -2 -1.6 TD -(\(HASHARRAY )Tj -/TT10 1 Tf -6.6011 0 TD -(MINKEYS)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(OVERFLOW)Tj -/TT8 1 Tf -4.8008 0 TD -( STRINGHASHBITS STREQUAL\))Tj -/TT6 1 Tf --18.2026 -1.8444 TD -(creates a hash array where you can use strings as hash keys.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 14 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -27 0 obj -<< -/Length 69 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-5)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -30 0 obj -<< -/Length 202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(6-6)Tj -/TT16 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -15 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -32 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -34 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -35 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -36 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -37 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -38 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -39 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -40 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -41 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -42 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 41 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 42 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 54 -/Widths [333 0 0 0 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 32 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 0 0 0 556 0 0 0 0 0 0 0 0 0 -0 722 0 0 0 0 611 0 722 0 0 0 0 0 0 778 -0 0 722 667 0 0 0 0 0 667 0 0 0 0 0 0 -0 556 0 556 0 556 333 611 611 278 0 0 278 0 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 33 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 0 0 500 500 500 0 0 250 250 0 0 0 0 -0 778 611 709 0 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 0 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 34 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 600 600 600 0 -0 0 0 0 0 0 0 0 0 0 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 0 600 600 600 0 600 0 0 -0 600 600 0 0 600 600 0 600 600 0 0 600 0 600 0 -0 0 600 600 600 600 0 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 35 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 36 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 78 -/LastChar 116 -/Widths [833 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 500 0 0 0 0 0 0 0 0 -0 556 0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 37 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 65 -/LastChar 90 -/Widths [600 600 600 600 600 0 600 600 600 0 0 600 600 600 600 600 -0 600 600 600 600 0 0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 38 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 722 278 0 0 556 833 722 0 -667 0 722 667 611 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 39 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 667 0 0 0 0 0 0 0 0 556 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 0 389 0 500 500 278 278 0 0 778 556 444 -500 0 0 389 333 556 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 40 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -43 0 obj -<< -/S /D ->> -endobj -44 0 obj -<< -/Nums [0 43 0 R ] ->> -endobj -16 0 obj -<< -/Type /Pages -/Kids [1 0 R 17 0 R 20 0 R 23 0 R 26 0 R 29 0 R] -/Count 6 -/MediaBox [0 0 612 792] ->> -endobj -45 0 obj -<< -/CreationDate (D:20210202102640-06'00') -/ModDate (D:20210202102640-06'00') -/Producer (Apple pstopdf) ->> -endobj -46 0 obj -<< -/Type /Catalog -/Pages 16 0 R -/PageLabels 44 0 R ->> -endobj -xref -0 47 -0000000000 65535 f -0000034323 00000 n -0000000016 00000 n -0000006575 00000 n -0000030774 00000 n -0000030949 00000 n -0000031125 00000 n -0000031322 00000 n -0000031730 00000 n -0000032267 00000 n -0000032758 00000 n -0000033103 00000 n -0000033358 00000 n -0000033614 00000 n -0000033931 00000 n -0000028415 00000 n -0000034892 00000 n -0000034404 00000 n -0000006789 00000 n -0000015616 00000 n -0000034488 00000 n -0000015794 00000 n -0000022456 00000 n -0000034572 00000 n -0000022658 00000 n -0000027641 00000 n -0000034656 00000 n -0000027823 00000 n -0000027943 00000 n -0000034740 00000 n -0000028040 00000 n -0000028294 00000 n -0000028556 00000 n -0000028753 00000 n -0000028959 00000 n -0000029159 00000 n -0000029350 00000 n -0000029551 00000 n -0000029756 00000 n -0000029958 00000 n -0000030153 00000 n -0000030356 00000 n -0000030564 00000 n -0000034824 00000 n -0000034852 00000 n -0000035009 00000 n -0000035132 00000 n -trailer -<< -/Size 47 -/Root 46 0 R -/Info 45 0 R -/ID [<5c9f11def804fd73f1cd92396bd47e26><5c9f11def804fd73f1cd92396bd47e26>] ->> -startxref -35202 -%%EOF diff --git a/docs/medley-irm/07-NUMBERS.pdf b/docs/medley-irm/07-NUMBERS.pdf deleted file mode 100644 index 10c024ef..00000000 --- a/docs/medley-irm/07-NUMBERS.pdf +++ /dev/null @@ -1,7850 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 7638 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-1)Tj -/TT4 1 Tf -10 0 0 10 295.56 568.2 Tm -(7. NUMBERS AND ARITHMETIC FUNCTIONS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 555.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 531.54 Tm -0.0001 Tc -0.3343 Tw -[(There are four different types of numbers in Interlisp: small integers, large integers, bignums)]TJ -0 -1.2222 TD -0 Tc -0.0611 Tw -[(\(arbitrary-size integers\), and floating-point numbers. Small integers are in the range -65536 to 65535.)]TJ -T* -0.2778 Tw -(Large integers and floating-point numbers are 32-bit quantities that are stored by boxing the)Tj -T* -0 Tw -(number \(see below\). Bignums are boxed as a series of words.)Tj -0 -2 TD -0.0733 Tw -[(Large integers and floating-point numbers can be any full word quantity. To distinguish among the)]TJ -0 -1.2222 TD -0.1633 Tw -[(various kinds of numbers, and other Interlisp pointers, these numbers are boxed When a large)]TJ -T* -0.1089 Tw -(integer or floating-point number is created \(by an arithmetic operation or by )Tj -/TT10 1 Tf -35.2622 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.1089 Tw -(\), Interlisp gets a)Tj --37.6626 -1.2889 TD -0.0467 Tw -[(new word from number storage and puts the number into that word. Interlisp then passes around)]TJ -0 -1.2222 TD -0.1689 Tw -[(the pointer to that word, i.e., the boxed number, rather than the actual quantity itself. When a)]TJ -T* -0.0067 Tw -(numeric function needs the actual numeric quantity, it performs the extra level of addressing to obtain)Tj -T* -0.1667 Tw -[(the value of the number. This latter process is called unboxing. Unboxing does not use any)]TJ -T* -0.0744 Tw -[(storage, but each boxing operation uses one new word of number storage. If a computation creates)]TJ -T* -0.2822 Tw -(many large integers or floating-point numbers, i.e., does lots of boxes, it may cause a garbage)Tj -T* -0 Tw -(collection of large integer space, or of floating-point number space.)Tj -0 -2 TD -(The following functions can be used to distinguish the different types of numbers:)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SMALLP)Tj -/F1 1 Tf -10 0 0 10 139.8 343.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 343.66 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31860.9([Function])]TJ --3.0424 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.7826 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -(, if )Tj -/TT14 1 Tf -1.4851 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -[( is a small integer; )]TJ -/TT10 1 Tf -8.7953 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( otherwise. Does not generate an error if )]TJ -/TT14 1 Tf -18.7451 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -[( is not a)]TJ --36.4087 -1.2889 TD -0 Tw -(number.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FIXP)Tj -/F1 1 Tf -10 0 0 10 129 296.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 296.18 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.161 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.8659 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -(, if )Tj -/TT14 1 Tf -1.6518 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( is an integer; )]TJ -/TT10 1 Tf -6.7108 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -[( otherwise. Note that )]TJ -/TT10 1 Tf -10.4669 0 TD -0 Tw -(FIXP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( is true for small integers,)]TJ --28.0964 -1.2889 TD -0 Tw -(large integers, and bignums. Does not generate an error if )Tj -/TT14 1 Tf -25.9775 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is not a number.)Tj -/TT10 1 Tf --29.2443 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FLOATP)Tj -/F1 1 Tf -10 0 0 10 139.8 248.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 248.1 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31860.9([Function])]TJ --3.0424 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.8148 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( if )]TJ -/TT14 1 Tf -1.2996 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( is a floating-point number; )]TJ -/TT10 1 Tf -13.0911 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0878 Tw -[( otherwise. Does not give an error if )]TJ -/TT14 1 Tf -17.1298 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( is)]TJ --38.936 -1.2889 TD -0 Tw -(not a number.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(NUMBERP)Tj -/F1 1 Tf -10 0 0 10 145.2 200.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 147.98 200.62 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31260.9([Function])]TJ --3.6424 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.7582 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -(, if )Tj -/TT14 1 Tf -1.4362 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( is a number of any type; )]TJ -/TT10 1 Tf -11.6883 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[( otherwise. Does not generate an error if )]TJ -/TT14 1 Tf -18.5251 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( is)]TJ --39.0085 -1.2889 TD -0 Tw -(not a number.)Tj -/TT16 1 Tf -0 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0111 Tw -[(: In previous releases, )]TJ -/TT10 1 Tf -10.099 0 TD -0 Tw -(NUMBERP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0111 Tw -[( was true only if \()]TJ -/TT10 1 Tf -7.7987 0 TD -0 Tw -(FLOATP )Tj -/TT14 1 Tf -4.2274 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -(\) or \()Tj -/TT10 1 Tf -2.1292 0 TD -0 Tw -(FIXP )Tj -/TT14 1 Tf -3.0272 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -(\) were true.)Tj --34.9044 -1.2889 TD -0.0511 Tw -(With the additon of Common Lisp ratios and complex numbers, )Tj -/TT10 1 Tf -29.122 0 TD -0 Tw -(NUMBERP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0511 Tw -[( now returns )]TJ -/TT10 1 Tf -6.0693 0 TD -0 Tw -(T)Tj -/TT8 1 Tf --39.392 -1.2889 TD -(for )Tj -/TT18 1 Tf -1.5239 0 TD -(all)Tj -/TT8 1 Tf -0.9995 0 TD -( number types . Code relying on the "old" behavior should be modified.)Tj --7.8568 -2 TD -0.0678 Tw -(Each small integer has a unique representation, so )Tj -/TT10 1 Tf -22.925 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0678 Tw -[( may be used to check equality. )]TJ -/TT10 1 Tf -14.8635 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0678 Tw -[( should not)]TJ --40.1889 -1.2889 TD -0.1178 Tw -(be used for large integers, bignums, or floating-point numbers, )Tj -/TT10 1 Tf -29.0927 0 TD -0 Tw -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6178 0 TD -(IEQP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1178 Tw -(, or )Tj -/TT10 1 Tf -1.9265 0 TD -0 Tw -(EQUAL)Tj -/TT8 1 Tf -3.0005 0 TD -0.1178 Tw -[( must be used)]TJ --38.8381 -1.2889 TD -0 Tw -(instead.)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(EQP)Tj -/F1 1 Tf -10 0 0 10 123.6 70.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 70.74 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7809 70.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5609 70.74 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.2519 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.8059 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -(, if )Tj -/TT14 1 Tf -1.5318 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( and )]TJ -/TT14 1 Tf -2.3507 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( are equal numbers; )]TJ -/TT10 1 Tf -9.2916 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0789 Tw -[( otherwise. )]TJ -/TT10 1 Tf -5.5926 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0789 Tw -[( may be used if )]TJ -/TT14 1 Tf -7.3564 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( and )]TJ -/TT14 1 Tf -2.3506 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( are)]TJ --38.2806 -1.2889 TD -(known to be small integers. )Tj -/TT10 1 Tf -13.1486 0 TD -0 Tw -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -0.0789 Tw -[( does not convert )]TJ -/TT14 1 Tf -8.1661 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( and )]TJ -/TT14 1 Tf -2.3506 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( to integers, e.g., )]TJ -/TT10 1 Tf -7.755 0 TD -0.1878 Tw -(\(EQP 2000)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 14 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -18 0 obj -<< -/Length 6590 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -0.05 Tw -(2000.3\) => NIL)Tj -/TT8 1 Tf -8.5014 0 TD -0.0211 Tw -(, but it can be used to compare an integer and a floating-point number,)Tj --8.5014 -1.2889 TD -0 Tw -(e.g., )Tj -/TT10 1 Tf -2.174 0 TD -0.3322 Tw -(\(EQP 2000 2000.0\) => T)Tj -/TT8 1 Tf -14.531 0 TD -0.1389 Tw -(. )Tj -/TT10 1 Tf -1.0278 0 TD -0 Tw -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -[( does not generate an error if )]TJ -/TT14 1 Tf -13.9483 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( or )]TJ -/TT14 1 Tf -1.7187 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( are not)]TJ --36.4003 -1.2889 TD -0 Tw -(numbers.)Tj -/TT10 1 Tf -0 -2 TD -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -0.22 Tw -[( can also be used to compare stack pointers \(see Chapter 11\) and compiled code)]TJ --1.8003 -1.2889 TD -0 Tw -(objects \(see Chapter 10\).)Tj --5.3333 -2 TD -0.1389 Tw -(The action taken on division by zero and floating-point overflow is determined with the following)Tj -0 -1.2222 TD -0 Tw -(function:)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(OVERFLOW)Tj -/F1 1 Tf -10 0 0 10 198.6 468.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.38 468.46 Tm -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29460.7([Function])]TJ --5.4426 -1.8444 TD -0.0733 Tw -(Sets a flag that determines the system response to arithmetic overflow \(for floating-point)Tj -0 -1.2222 TD -0 Tw -(arithmetic\) and division by zero; returns the previous setting.)Tj -0 -2 TD -0.0622 Tw -[(For integer arithmetic: If )]TJ -/TT14 1 Tf -11.6036 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -0.1489 Tw -[( = T)]TJ -/TT8 1 Tf -2.6982 0 TD -0.0622 Tw -[(, an error occurs on division by zero. If )]TJ -/TT14 1 Tf -18.1974 0 TD -0 Tw -(FLG )Tj -/TT10 1 Tf -2.5493 0 TD -0.1489 Tw -(= NIL)Tj -/TT8 1 Tf --36.8488 -1.2889 TD -0 Tw -(or )Tj -/TT10 1 Tf -1.2565 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0656 Tw -[(, integer division by zero returns zero. Integer overflow cannot occur, because small)]TJ --1.8566 -1.2889 TD -0 Tw -(integers are converted to bignums \(see the beginning of this chapter\).)Tj -0 -2 TD -0.0111 Tw -[(For floating-point arithmetic: If )]TJ -/TT14 1 Tf -14.3441 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -0.0278 Tw -[( = T)]TJ -/TT8 1 Tf -2.4559 0 TD -0.0111 Tw -(, an error occurs on floating overflow or floating)Tj --18.6004 -1.2889 TD -0.0989 Tw -[(division by zero. If )]TJ -/TT14 1 Tf -9.2942 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -0.2378 Tw -[( = NIL)]TJ -/TT8 1 Tf -4.0761 0 TD -0.0989 Tw -[( or )]TJ -/TT10 1 Tf -1.6387 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0989 Tw -(, the largest \(or smallest\) floating-point number is)Tj --17.4095 -1.2889 TD -0 Tw -(returned as the result of the overflowed computation or floating division by zero.)Tj -0 -2 TD -0.0078 Tw -(The default value for )Tj -/TT10 1 Tf -9.5599 0 TD -0 Tw -(OVERFLOW)Tj -/TT8 1 Tf -4.8008 0 TD -0.0078 Tw -[( is )]TJ -/TT10 1 Tf -1.2304 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0078 Tw -(, meaning an error is generated on division by zero or)Tj --16.1912 -1.2889 TD -0 Tw -(floating overflow.)Tj -/TT4 1 Tf -10 0 0 10 102 306.52 Tm -(Generic Arithmetic)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 303.81 m -558.01 303.81 l -S -BT -/TT8 1 Tf -9 0 0 9 126 289.86 Tm -0.0611 Tw -[(The functions in this section are generic arithmetic functions. If any of the arguments are floating-)]TJ -0 -1.2222 TD -0.1178 Tw -(point numbers \(see the Floating-Point Arithmetic section below\), they act exactly like floating-point)Tj -T* -0.1467 Tw -[(functions, floating all arguments and returning a floating-point number as their value. Otherwise,)]TJ -T* -0.0678 Tw -[(they act like the integer functions \(see the Integer Arithmetic section below\). If given a non-numeric)]TJ -T* -0.07 Tw -(argument, they generate an error, )Tj -/TT10 1 Tf -15.456 0 TD -0.1678 Tw -(Non-numeric arg)Tj -/TT8 1 Tf -9.1692 0 TD -0.07 Tw -[(. The results of division by zero and floating-)]TJ --24.6252 -1.2889 TD -0 Tw -(point overflow is determined by the function )Tj -/TT10 1 Tf -20.1392 0 TD -(OVERFLOW)Tj -/TT8 1 Tf -4.8008 0 TD -( \(see the section above\).)Tj -/TT10 1 Tf --22.2733 -2.0667 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PLUS)Tj -/TT10 1 Tf -2.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 187.8 213.66 Tm -(1)Tj -9 0 0 9 191.4 215.66 Tm -( X)Tj -6 0 0 6 202.2 213.66 Tm -(2)Tj -9 0 0 9 205.8 215.66 Tm -( ... X)Tj -6 0 0 6 238.2 213.66 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 241.8 215.66 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22032.1([NoSpread Function])]TJ -/TT14 1 Tf --8.1334 -2.0922 TD -(X)Tj -6 0 0 6 179.4 194.83 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 183 196.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 185.78 196.83 Tm -(+)Tj -/F1 1 Tf -10 0 0 10 191.1809 196.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 193.9609 196.83 Tm -(X)Tj -6 0 0 6 199.36 194.83 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 202.96 196.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 205.74 196.83 Tm -(+ ... +)Tj -/F1 1 Tf -10 0 0 10 243.5461 196.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 246.3261 196.83 Tm -(X)Tj -6 0 0 6 251.72 194.83 Tm -(N)Tj -/F1 1 Tf -10 0 0 10 255.32 196.83 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 150 177.28 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MINUS)Tj -/TT10 1 Tf -2.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6697 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.9867 TD -(-)Tj -/F1 1 Tf -10 0 0 10 179.4008 159.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 182.1808 159.4 Tm -(X)Tj -/TT10 1 Tf --3.5757 -2.0667 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(DIFFERENCE)Tj -/TT10 1 Tf -5.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X Y)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27969.5([Function])]TJ -/TT14 1 Tf --6.9338 -1.9867 TD -(X)Tj -/F1 1 Tf -10 0 0 10 179.4008 122.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 182.1808 122.92 Tm -( - Y)Tj -/TT10 1 Tf --3.5757 -2.0667 TD -(\()Tj -/TT12 1 Tf -0.6 0 TD -(TIMES)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 193.2 102.32 Tm -(1)Tj -9 0 0 9 196.8 104.32 Tm -( X)Tj -6 0 0 6 207.6 102.32 Tm -(2)Tj -9 0 0 9 211.2 104.32 Tm -( )Tj -/TT10 1 Tf -0.6001 0 TD -(...)Tj -/TT14 1 Tf -1.8003 0 TD -( X)Tj -6 0 0 6 243.6 102.32 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 247.2 104.32 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21432.1([NoSpread Function])]TJ -/TT14 1 Tf --8.7334 -2.0922 TD -(X)Tj -6 0 0 6 179.4 83.49 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 183 85.49 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 185.78 85.49 Tm -(*)Tj -/F1 1 Tf -10 0 0 10 191.1809 85.49 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 193.9609 85.49 Tm -(X)Tj -6 0 0 6 199.36 83.49 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 202.96 85.49 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 205.74 85.49 Tm -(* ... *)Tj -/F1 1 Tf -10 0 0 10 243.5461 85.49 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 246.3261 85.49 Tm -(X)Tj -6 0 0 6 251.72 83.49 Tm -(N)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -21 0 obj -<< -/Length 9821 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-3)Tj -/TT6 1 Tf -10 0 0 10 305.11 612 Tm -(NUMBERS AND ARITHMETIC FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 569.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(QUOTIENT)Tj -/TT10 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X Y)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29169.5([Function])]TJ --5.7338 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9844 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( and )]TJ -/TT14 1 Tf -2.3218 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( are both integers, returns the integer division of )]TJ -/TT14 1 Tf -22.1728 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( and )]TJ -/TT14 1 Tf -2.3218 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[(. Otherwise, converts)]TJ --30.2011 -1.2889 TD -0 Tw -(both )Tj -/TT14 1 Tf -2.2573 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( to floating-point numbers, and does a floating-point division.)Tj -/TT10 1 Tf --8.3171 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(REMAINDER)Tj -/F1 1 Tf -10 0 0 10 156 521.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.78 521.46 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 164.1808 521.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 166.9608 521.46 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29151.9([Function])]TJ --5.7514 -1.9867 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( are both integers, returns )Tj -/TT10 1 Tf -11.6177 0 TD -(\(IREMAINDER )Tj -/TT14 1 Tf -7.2012 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, otherwise )Tj -/TT10 1 Tf -5.106 0 TD -(\(FREMAINDER)Tj -/F3 1 Tf -10 0 0 10 461.1533 503.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 464.0233 503.58 Tm -(X)Tj -/F3 1 Tf -10 0 0 10 469.4242 503.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 472.2942 503.58 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 483.0959 503.58 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 102 483.64 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GREATERP)Tj -/TT4 1 Tf -10 0 0 10 150.6079 483.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.38 483.64 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 158.7809 483.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 161.5609 483.64 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29751.9([Function])]TJ -/TT10 1 Tf --5.1514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(>)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.2414 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LESSP)Tj -/F1 1 Tf -10 0 0 10 134.4 447.16 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.18 447.16 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 142.5809 447.16 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 145.3609 447.16 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31551.9([Function])]TJ -/TT10 1 Tf --3.3514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(<)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --8.9914 -2.2156 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GEQ)Tj -/TT4 1 Tf -10 0 0 10 123.6 410.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.3783 410.62 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7792 410.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5592 410.62 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.2521 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(>=)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.8415 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LEQ)Tj -/F1 1 Tf -10 0 0 10 123.6 374.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 374.14 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7809 374.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5609 374.14 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.2519 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(<=)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.8415 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ZEROP)Tj -/F1 1 Tf -10 0 0 10 134.4 337.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.18 337.66 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.9609 0 TD -([Function])Tj --35.4033 -1.9867 TD -(The same as )Tj -/TT10 1 Tf -5.6333 0 TD -(\(EQP)Tj -/F3 1 Tf -10 0 0 10 198.3032 319.78 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.1732 319.78 Tm -(X)Tj -/F3 1 Tf -10 0 0 10 206.5741 319.78 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 209.4441 319.78 Tm -(0\))Tj -/F1 1 Tf -10 0 0 10 220.2458 319.78 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 102 299.9 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MINUSP)Tj -/F1 1 Tf -10 0 0 10 139.8 299.9 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 299.9 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31860.9([Function])]TJ -/TT10 1 Tf --3.0424 -1.9867 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is negative; )Tj -/TT10 1 Tf -5.4932 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise. Works for both integers and floating-point numbers)Tj -/F1 1 Tf -10 0 0 10 469.5688 282.02 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 102 262.14 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MIN)Tj -/F1 1 Tf -10 0 0 10 123.6 262.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 262.14 Tm -(X)Tj -6 0 0 6 131.78 260.14 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 135.38 262.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 138.16 262.14 Tm -(X)Tj -6 0 0 6 143.56 260.14 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 147.16 262.14 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 149.94 262.14 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 166.1426 262.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 168.9226 262.14 Tm -(X)Tj -6 0 0 6 174.32 260.14 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 177.92 262.14 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23796.6([NoSpread Function])]TJ --6.369 -1.95 TD -0.0478 Tw -(Returns the minimum of )Tj -/TT14 1 Tf -11.3498 0 TD -0 Tw -(X)Tj -6 0 0 6 233.57 242.59 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 237.17 244.59 Tm -(, )Tj -/TT14 1 Tf -0.5478 0 TD -(X)Tj -6 0 0 6 247.5 242.59 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 251.1 244.59 Tm -(, )Tj -/TT10 1 Tf -0.5478 0 TD -(...,)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2978 0 TD -(X)Tj -6 0 0 6 285.71 242.59 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 289.31 244.59 Tm -0.0478 Tw -(. )Tj -/TT10 1 Tf -0.8456 0 TD -0 Tw -(\(MIN\))Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -[( returns the value of )]TJ -/TT10 1 Tf -9.3971 0 TD -0 Tw -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.0478 Tw -[( \(see)]TJ --37.9898 -1.3944 TD -0 Tw -(the Integer Arithmetic section below\).)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MAX)Tj -/F1 1 Tf -10 0 0 10 123.6 212.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 212.76 Tm -(X)Tj -6 0 0 6 131.78 210.76 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 135.38 212.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 138.16 212.76 Tm -(X)Tj -6 0 0 6 143.56 210.76 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 147.16 212.76 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 149.94 212.76 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 166.1426 212.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 168.9226 212.76 Tm -(X)Tj -6 0 0 6 174.32 210.76 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 177.92 212.76 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23796.6([NoSpread Function])]TJ --6.369 -1.95 TD -0.0211 Tw -(Returns the maximum of )Tj -/TT14 1 Tf -11.3862 0 TD -0 Tw -(X)Tj -6 0 0 6 233.89 193.21 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 237.49 195.21 Tm -(, )Tj -/TT14 1 Tf -0.5211 0 TD -(X)Tj -6 0 0 6 247.58 193.21 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 251.18 195.21 Tm -0.0211 Tw -(, ..., )Tj -/TT14 1 Tf -1.7922 0 TD -0 Tw -(X)Tj -6 0 0 6 272.71 193.21 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 276.31 195.21 Tm -0.0211 Tw -(. )Tj -/TT10 1 Tf -0.7922 0 TD -0 Tw -(\(MAX\))Tj -/TT8 1 Tf -3.0005 0 TD -0.0211 Tw -[( returns the value of )]TJ -/TT10 1 Tf -9.2638 0 TD -0 Tw -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.0211 Tw -[( \(see the)]TJ --36.3587 -1.3944 TD -0 Tw -(Integer Arithmetic section below\).)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ABS)Tj -/F1 1 Tf -10 0 0 10 123.6 163.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 163.38 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.761 0 TD -([Function])Tj -/TT14 1 Tf --35.4033 -1.8444 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(> 0)Tj -/TT8 1 Tf -1.8003 0 TD -(, otherwise )Tj -/TT10 1 Tf -5.106 0 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(ABS)Tj -/TT8 1 Tf -1.8003 0 TD -( uses )Tj -/TT10 1 Tf -2.4297 0 TD -(GREATERP)Tj -/TT8 1 Tf -4.8008 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(MINUS)Tj -/TT8 1 Tf -3.0005 0 TD -( \(not )Tj -/TT10 1 Tf -2.2871 0 TD -(IGREATERP)Tj -/TT8 1 Tf -5.4009 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(IMINUS)Tj -/TT8 1 Tf -3.6006 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 54 123.84 Tm -(Integer Arithmetic)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 121.13 m -510.01 121.13 l -S -BT -/TT8 1 Tf -9 0 0 9 78 107.18 Tm -0.0811 Tw -(The input syntax for an integer is an optional sign \(+ or -\) followed by a sequence of decimal digits,)Tj -0 -1.2222 TD -0.0156 Tw -[(and terminated by a delimiting character. Integers entered with this syntax are interpreted as decimal)]TJ -T* -0 Tw -(integers. Integers in other radices can be entered as follows:)Tj -/TT10 1 Tf -2.2667 -2.1422 TD -(123Q)Tj --0.6 -1.2089 TD -(#o123)Tj -/TT8 1 Tf -3.6667 0 TD -0.0667 Tw -(If an integer is followed by the letter )Tj -/TT10 1 Tf -16.8322 0 TD -0 Tw -(Q)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -(, or preceeded by a pound sign and the letter )Tj -/TT10 1 Tf -21.217 0 TD -0 Tw -(o)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.2493 -1.2889 TD -(the digits are interpreted as an octal \(base 8\) integer.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 23 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -25 0 obj -<< -/Length 6601 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 130.2 569.54 Tm -(#b10101)Tj -/TT8 1 Tf -4.8667 0 TD -0.0033 Tw -(If an integer is preceeded by a pound sign and the letter )Tj -/TT10 1 Tf -25.4746 0 TD -0 Tw -(b)Tj -/TT8 1 Tf -0.6001 0 TD -0.0033 Tw -(, the digits are interpreted as a)Tj --26.0747 -1.2889 TD -0 Tw -(binary \(base 2\) integer.)Tj -/TT10 1 Tf --4.2667 -2 TD -(#x1A90)Tj -/TT8 1 Tf -4.2667 0 TD -0.0033 Tw -(If an integer is preceeded by a pound sign and the letter )Tj -/TT10 1 Tf -25.4746 0 TD -0 Tw -(x)Tj -/TT8 1 Tf -0.6001 0 TD -0.0033 Tw -(, the digits are interpreted as a)Tj --26.0747 -1.2889 TD -0 Tw -(hexadecimal \(base 16\) integer.)Tj -/TT10 1 Tf --4.8667 -2 TD -(#5r1243)Tj -/TT8 1 Tf -4.8667 0 TD -0.0333 Tw -(If an integer is preceeded by a pound sign, a positive decimal integer )Tj -/TT10 1 Tf -31.1213 0 TD -0 Tw -(BASE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0333 Tw -(, and the letter)Tj --33.5217 -1.2889 TD -0 Tw -()Tj -/TT10 1 Tf -0.5 0 TD -(r)Tj -/TT8 1 Tf -0.6001 0 TD -0.1089 Tw -(, the digits are interpreted as an integer in the base )Tj -/TT10 1 Tf -24.253 0 TD -0 Tw -(BASE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1089 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.1817 0 TD -0.2622 Tw -(#8r123 =)Tj --34.9351 -1.2889 TD -0 Tw -(123Q)Tj -/TT8 1 Tf -2.4004 0 TD -0.1711 Tw -(, and )Tj -/TT10 1 Tf -2.7851 0 TD -0.4122 Tw -(#16r12A3 = #x12A3)Tj -/TT8 1 Tf -11.0261 0 TD -0.1711 Tw -[(. When typing a number in a radix above ten, the)]TJ --16.2116 -1.2889 TD -0.0311 Tw -(uppercase letters A through Z can be used as the digits after 9 \(but there is no digit above)Tj -0 -1.2222 TD -0 Tw -(Z, so it is not possible to type all base-99 digits\).)Tj --5.3333 -2 TD -0.13 Tw -(Medley keeps no record of how you typed a number, so )Tj -/TT10 1 Tf -26.4124 0 TD -0 Tw -(77Q)Tj -/TT8 1 Tf -1.8003 0 TD -0.13 Tw -[( and )]TJ -/TT10 1 Tf -2.4529 0 TD -0 Tw -(63)Tj -/TT8 1 Tf -1.2002 0 TD -0.13 Tw -[( both correspond to the same)]TJ --31.8658 -1.2889 TD -0.0122 Tw -[(integer, and are indistinguishable internally. The function )]TJ -/TT10 1 Tf -26.1246 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( \(see Chapter 25\), sets the radix used)]TJ --29.1251 -1.2889 TD -0 Tw -(to print integers.)Tj -/TT10 1 Tf -0 -2 TD -(PACK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[( and )]TJ -/TT10 1 Tf -2.3573 0 TD -0 Tw -(MKATOM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[( create numbers when given a sequence of characters observing the above syntax,)]TJ --8.3583 -1.2889 TD -0 Tw -(e.g. )Tj -/TT10 1 Tf -1.7852 0 TD -(\(PACK \(1 2 Q\)\) => 10)Tj -/TT8 1 Tf -12.6021 0 TD -(. Integers are also created as a result of arithmetic operations.)Tj --14.3872 -2.0667 TD -0.0311 Tw -[(The range of integers of various types is implementation-dependent. This information is accessible to)]TJ -0 -1.2222 TD -0 Tw -(you through the following variables:)Tj -/TT12 1 Tf -2.6667 -2 TD -(MIN.SMALLP)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ -/TT12 1 Tf --6 -1.0667 TD -(MAX.SMALLP)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -(The smallest/largest possible small integer.)Tj -/TT12 1 Tf --2.6667 -2 TD -(MIN.FIXP)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj -/TT12 1 Tf --38.2678 -1.0667 TD -(MAX.FIXP)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(The smallest/largest possible large integer.)Tj -/TT12 1 Tf --2.6667 -2 TD -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ -/TT12 1 Tf --6.6 -1.0667 TD -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ --3.9333 -1.8444 TD -0.1533 Tw -(The value of )Tj -/TT10 1 Tf -6.2007 0 TD -0 Tw -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.1533 Tw -[( and )]TJ -/TT10 1 Tf -2.4995 0 TD -0 Tw -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.1533 Tw -[( are two special system datatypes. For)]TJ --21.9024 -1.2889 TD -0.2156 Tw -(some algorithms, it is useful to have an integer that is larger than any other integer.)Tj -0 -1.2222 TD -0.03 Tw -(Therefore, the values of )Tj -/TT10 1 Tf -10.7987 0 TD -0 Tw -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.03 Tw -[( and )]TJ -/TT10 1 Tf -2.2529 0 TD -0 Tw -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.03 Tw -[( are two special data types; the)]TJ --26.2537 -1.2889 TD -0.4878 Tw -(value of )Tj -/TT10 1 Tf -4.7924 0 TD -0 Tw -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.4878 Tw -[( is )]TJ -/TT10 1 Tf -2.1904 0 TD -0 Tw -(GREATERP)Tj -/TT8 1 Tf -4.8008 0 TD -0.4878 Tw -[( than any other integer, and the value of)]TJ -/TT10 1 Tf --18.3847 -1.2889 TD -0 Tw -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -0.2567 Tw -[( is )]TJ -/TT10 1 Tf -1.7282 0 TD -0 Tw -(LESSP)Tj -/TT8 1 Tf -3.0005 0 TD -0.2567 Tw -[( than any other integer. Trying to do arithmetic using these)]TJ --11.3297 -1.2889 TD -0 Tw -(special bignums, other than comparison, will cause an error.)Tj --5.3333 -2 TD -0.0278 Tw -[(All of the functions described below work on integers. Unless specified otherwise, if given a floating-)]TJ -0 -1.2222 TD -0.2378 Tw -(point number, they first convert the number to an integer by truncating the fractional bits, e.g.,)Tj -/TT10 1 Tf -T* -0.1722 Tw -(\(IPLUS 2.3 3.8\) = 5)Tj -/TT8 1 Tf -12.0907 0 TD -0.0722 Tw -(; if given a non-numeric argument, they generate an error, )Tj -/TT10 1 Tf -26.6451 0 TD -0 Tw -(Non-numeric)Tj --38.7358 -1.2889 TD -(arg)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf -0.8664 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IPLUS)Tj -/F1 1 Tf -10 0 0 10 182.4052 102.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 187.9653 102.66 Tm -(X)Tj -6 0 0 6 193.36 100.66 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 196.96 102.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 199.74 102.66 Tm -(X)Tj -6 0 0 6 205.14 100.66 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 208.74 102.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 211.52 102.66 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 227.7226 102.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 230.5026 102.66 Tm -(X)Tj -6 0 0 6 235.9 100.66 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 239.5 102.66 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22287.7([NoSpread Function])]TJ --7.8779 -1.95 TD -(Returns the sum )Tj -/TT14 1 Tf -7.5239 0 TD -(X)Tj -6 0 0 6 247.13 83.11 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 250.73 85.11 Tm -( )Tj -/TT10 1 Tf -0.25 0 TD -(+)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -6 0 0 6 266.03 83.11 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 269.63 85.11 Tm -( )Tj -/TT10 1 Tf -0.25 0 TD -(+ ... +)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -6 0 0 6 317.33 83.11 Tm -(N.)Tj -/TT8 1 Tf -9 0 0 9 324.53 85.11 Tm -( )Tj -/TT10 1 Tf -0.5 0 TD -(\(IPLUS\) = 0)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --26.4933 -2.3144 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IMINUS)Tj -/F2 1 Tf -10 0 0 10 187.8061 64.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.5861 64.28 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31860.2([Function])]TJ -/TT10 1 Tf --3.0431 -1.7778 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -28 0 obj -<< -/Length 8342 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-5)Tj -/TT6 1 Tf -10 0 0 10 305.11 612 Tm -(NUMBERS AND ARITHMETIC FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IDIFFERENCE)Tj -/F2 1 Tf -10 0 0 10 166.8105 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 169.5905 568.26 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 174.9914 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 177.7714 568.26 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27950.8([Function])]TJ -/TT14 1 Tf --6.9526 -1.9867 TD -(X)Tj -/F1 1 Tf -10 0 0 10 131.4009 550.38 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 134.1808 550.38 Tm -( -)Tj -/F1 1 Tf -10 0 0 10 144.9826 550.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.5426 550.38 Tm -(Y)Tj -/TT10 1 Tf --5.3936 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ADD1)Tj -/F2 1 Tf -10 0 0 10 129 530.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 530.5 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.161 0 TD -([Function])Tj -/TT14 1 Tf --35.4033 -1.9867 TD -(X)Tj -/F1 1 Tf -10 0 0 10 131.4009 512.62 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 134.1808 512.62 Tm -( + 1)Tj --3.5757 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SUB1)Tj -/F2 1 Tf -10 0 0 10 129 492.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 492.74 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.161 0 TD -([Function])Tj -/TT14 1 Tf --35.4033 -1.7778 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( - 1)Tj --3.2668 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ITIMES)Tj -/F2 1 Tf -10 0 0 10 139.8 456.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 456.86 Tm -(X)Tj -6 0 0 6 147.98 454.86 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 151.58 456.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 154.36 456.86 Tm -(X)Tj -6 0 0 6 159.76 454.86 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 163.36 456.86 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 166.14 456.86 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 182.3426 456.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.1226 456.86 Tm -(X)Tj -6 0 0 6 190.52 454.86 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 194.12 456.86 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21996.6([NoSpread Function])]TJ --8.169 -1.95 TD -(Returns the product )Tj -/TT14 1 Tf -9.1401 0 TD -(X)Tj -6 0 0 6 213.67 437.31 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 217.27 439.31 Tm -( )Tj -/TT10 1 Tf -0.25 0 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -6 0 0 6 232.57 437.31 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 236.17 439.31 Tm -( )Tj -/TT10 1 Tf -0.25 0 TD -(* ... * )Tj -/TT14 1 Tf -4.8008 0 TD -(X)Tj -6 0 0 6 287.02 437.31 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 290.62 439.31 Tm -(. )Tj -/TT10 1 Tf -0.75 0 TD -(\(ITIMES\) = 1)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --28.909 -2.3144 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IQUOTIENT)Tj -/F1 1 Tf -10 0 0 10 156 418.48 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.78 418.48 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 164.1808 418.48 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 166.9608 418.48 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29151.9([Function])]TJ -/TT14 1 Tf --5.7514 -1.8444 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(/)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( truncated. Examples:)Tj -/TT10 1 Tf -1.6997 -1.6667 TD -(\(IQUOTIENT 3 2\) => 1)Tj -0 -1 TD -(\(IQUOTIENT -3 2\) => -1)Tj -/TT8 1 Tf --4 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( is zero, the result is determined by the function )Tj -/TT10 1 Tf -21.3442 0 TD -(OVERFLOW)Tj -/TT8 1 Tf -4.8008 0 TD -( .)Tj -/TT10 1 Tf --30.3317 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IREMAINDER)Tj -/F1 1 Tf -10 0 0 10 161.4 341.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.18 341.4 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 169.5809 341.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.3609 341.4 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28551.9([Function])]TJ --6.3514 -1.8444 TD -(Returns the remainder when )Tj -/TT14 1 Tf -12.9561 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is divided by )Tj -/TT14 1 Tf -6.2827 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(. Example:)Tj -/TT10 1 Tf --16.439 -1.6667 TD -(\(IREMAINDER 5 2\) => 1)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IMOD)Tj -/F1 1 Tf -10 0 0 10 129 291.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 291.92 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 137.1808 291.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 291.92 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.1756 Tw -(Computes the integer modulus of )Tj -/TT14 1 Tf -16.0335 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1756 Tw -[( mod )]TJ -/TT14 1 Tf -2.8907 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1756 Tw -(; this differs from )Tj -/TT10 1 Tf -8.5977 0 TD -0 Tw -(IREMAINDER)Tj -/TT8 1 Tf -6.001 0 TD -0.1756 Tw -[( in that the)]TJ --34.7231 -1.2889 TD -0 Tw -(result is always a non-negative integer in the range [0,)Tj -/TT14 1 Tf -23.8731 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(\).)Tj -/TT10 1 Tf --27.1398 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IGREATERP)Tj -/F1 1 Tf -10 0 0 10 156 243.84 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.78 243.84 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 164.1808 243.84 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 166.9608 243.84 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29151.9([Function])]TJ -/TT10 1 Tf --5.7514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(>)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.2414 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ILESSP)Tj -/F1 1 Tf -10 0 0 10 139.8 207.36 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 207.36 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 147.9809 207.36 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.7608 207.36 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30951.9([Function])]TJ -/TT10 1 Tf --3.9514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(<)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.2414 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IGEQ)Tj -/F1 1 Tf -10 0 0 10 129 170.88 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 170.88 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 137.1808 170.88 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 170.88 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(>=)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.8415 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ILEQ)Tj -/F1 1 Tf -10 0 0 10 129 134.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 134.4 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 137.1808 134.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 134.4 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(<=)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.8415 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IMIN)Tj -/F1 1 Tf -10 0 0 10 129 97.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 97.92 Tm -(X)Tj -6 0 0 6 137.18 95.92 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 140.78 97.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 143.56 97.92 Tm -(X)Tj -6 0 0 6 148.96 95.92 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 152.56 97.92 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 155.34 97.92 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 171.5426 97.92 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.3226 97.92 Tm -(X)Tj -6 0 0 6 179.72 95.92 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 183.32 97.92 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23196.6([NoSpread Function])]TJ --6.969 -1.95 TD -0.2278 Tw -(Returns the minimum of )Tj -/TT14 1 Tf -12.0698 0 TD -0 Tw -(X)Tj -6 0 0 6 240.05 78.37 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 243.65 80.37 Tm -(, )Tj -/TT14 1 Tf -0.7278 0 TD -(X)Tj -6 0 0 6 255.6 78.37 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 259.2 80.37 Tm -(, )Tj -/TT10 1 Tf -0.7278 0 TD -(...,)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.4778 0 TD -(X)Tj -6 0 0 6 297.05 78.37 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 300.65 80.37 Tm -0.2278 Tw -(. )Tj -/TT10 1 Tf -1.2056 0 TD -0 Tw -(\(IMIN\))Tj -/TT8 1 Tf -3.6006 0 TD -0.2278 Tw -[( returns the largest possible large)]TJ --24.2117 -1.3944 TD -0 Tw -(integer, the value of )Tj -/TT10 1 Tf -9.0625 0 TD -(MAX.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -31 0 obj -<< -/Length 9227 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IMAX)Tj -/F1 1 Tf -10 0 0 10 177 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 568.26 Tm -(X)Tj -6 0 0 6 185.18 566.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 188.78 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.56 568.26 Tm -(X)Tj -6 0 0 6 196.96 566.26 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 200.56 568.26 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 203.34 568.26 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 219.5426 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 222.3226 568.26 Tm -(X)Tj -6 0 0 6 227.72 566.26 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 231.32 568.26 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23196.6([NoSpread Function])]TJ --6.969 -1.95 TD -0.2044 Tw -(Returns the maximum of )Tj -/TT14 1 Tf -12.1195 0 TD -0 Tw -(X)Tj -6 0 0 6 288.49 548.71 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 292.09 550.71 Tm -(, )Tj -/TT14 1 Tf -0.7044 0 TD -(X)Tj -6 0 0 6 303.83 548.71 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 307.43 550.71 Tm -(, )Tj -/TT10 1 Tf -0.7044 0 TD -(...,)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.4544 0 TD -(X)Tj -6 0 0 6 344.86 548.71 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 348.46 550.71 Tm -(. )Tj -/TT10 1 Tf -0.7044 0 TD -(\(IMAX\))Tj -/TT8 1 Tf -3.6006 0 TD -0.2044 Tw -[( returns the smallest possible large)]TJ --23.6895 -1.3944 TD -0 Tw -(integer, the value of )Tj -/TT10 1 Tf -9.0625 0 TD -(MIN.INTEGER)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --18.3302 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(IEQP)Tj -/F1 1 Tf -10 0 0 10 177 518.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 518.28 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 185.1808 518.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 187.9608 518.28 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7415 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0144 Tw -[( if )]TJ -/TT14 1 Tf -1.1529 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0144 Tw -[( and )]TJ -/TT14 1 Tf -2.2218 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0144 Tw -[( are equal integers; )]TJ -/TT10 1 Tf -8.6471 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0144 Tw -[( otherwise. Note that )]TJ -/TT10 1 Tf -9.8447 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0144 Tw -[( may be used if )]TJ -/TT14 1 Tf -7.0341 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0144 Tw -[( and)]TJ -/TT14 1 Tf --38.043 -1.2889 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -[( are known to be small integers. )]TJ -/TT10 1 Tf -15.136 0 TD -0 Tw -(IEQP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0733 Tw -[( converts )]TJ -/TT14 1 Tf -4.4074 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -[( and )]TJ -/TT14 1 Tf -2.3395 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -[( to integers, e.g., )]TJ -/TT10 1 Tf -7.7328 0 TD -0.1767 Tw -(\(IEQP 2000)Tj --33.8164 -1.2889 TD -0 Tw -(2000.3\) => T)Tj -/TT8 1 Tf -7.2012 0 TD -(. )Tj -/TT10 1 Tf --9.8678 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FIX)Tj -/F1 1 Tf -10 0 0 10 171.6 458.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 458.6 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.761 0 TD -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0033 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( is an integer, returns )]TJ -/TT14 1 Tf -10.026 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[(. Otherwise, converts )]TJ -/TT14 1 Tf -10.1903 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( to an integer by truncating fractional)]TJ --23.0199 -1.2889 TD -0 Tw -(bits For example, )Tj -/TT10 1 Tf -8.0903 0 TD -(\(FIX 2.3\) => 2)Tj -/TT8 1 Tf -8.4014 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(FIX -1.7\) => -1)Tj -/TT8 1 Tf -10.8018 0 TD -(.)Tj --27.7935 -2.0667 TD -(Since )Tj -/TT10 1 Tf -2.5764 0 TD -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[( is also a programmers assistant command \(see Chapter 13\), typing )]TJ -/TT10 1 Tf -30.169 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[( directly)]TJ --36.346 -1.2889 TD -0 Tw -(to a Medley executive will not cause the function )Tj -/TT10 1 Tf -21.8711 0 TD -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -( to be called.)Tj -/TT10 1 Tf --26.3381 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FIXR)Tj -/F1 1 Tf -10 0 0 10 177 380.32 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 380.32 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.161 0 TD -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9821 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( is an integer, returns )]TJ -/TT14 1 Tf -9.9205 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[(. Otherwise, converts )]TJ -/TT14 1 Tf -10.1058 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( to an integer by rounding. )]TJ -/TT10 1 Tf -12.7735 0 TD -0 Tw -(FIXR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0622 Tw -[( will)]TJ --37.9826 -1.2889 TD -0.2344 Tw -(round towards the even number if )Tj -/TT14 1 Tf -16.8906 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2344 Tw -[( is exactly half way between two integers. For)]TJ --17.4906 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.249 0 TD -(\(FIXR 2.3\) => 2)Tj -/TT8 1 Tf -9.0015 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(FIXR -1.7\) => -2)Tj -/TT8 1 Tf -10.2017 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(FIXR 3.5\) => 4\))Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj -/TT10 1 Tf --36.7204 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GCD)Tj -/F1 1 Tf -10 0 0 10 171.6 320.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 320.64 Tm -(N)Tj -6 0 0 6 179.78 318.64 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 183.38 320.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.16 320.64 Tm -(N)Tj -6 0 0 6 191.56 318.64 Tm -(2)Tj -/TT10 1 Tf -9 0 0 9 195.16 320.64 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31952.1([Function])]TJ --2.9512 -1.95 TD -(Returns the greatest common divisor of )Tj -/TT14 1 Tf -17.7344 0 TD -(N)Tj -6 0 0 6 339.02 301.09 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 342.62 303.09 Tm -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(N)Tj -6 0 0 6 367.76 301.09 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 371.36 303.09 Tm -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(GCD 72 64\)=8)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 279.2 Tm -(Logical Arithmetic Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 276.49 m -558.01 276.49 l -S -BT -/TT10 1 Tf -9 0 0 9 150 261.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOGAND)Tj -/F1 1 Tf -10 0 0 10 187.8 261.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.58 261.26 Tm -(X)Tj -6 0 0 6 195.98 259.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 199.58 261.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.36 261.26 Tm -(X)Tj -6 0 0 6 207.76 259.26 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 211.36 261.26 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 214.14 261.26 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 230.3426 261.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 233.1226 261.26 Tm -(X)Tj -6 0 0 6 238.52 259.26 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 242.12 261.26 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21996.6([NoSpread Function])]TJ --8.169 -1.95 TD -(Returns the logical )Tj -/TT10 1 Tf -8.5332 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -( of all its arguments, as an integer. Example:)Tj -/TT10 1 Tf --6.3335 -1.6667 TD -(\(LOGAND 7 5 6\) => 4)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOGOR)Tj -/F1 1 Tf -10 0 0 10 182.4 210.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.18 210.83 Tm -(X)Tj -6 0 0 6 190.58 208.83 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 194.18 210.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.96 210.83 Tm -(X)Tj -6 0 0 6 202.36 208.83 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 205.96 210.83 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 208.74 210.83 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 224.9426 210.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 227.7226 210.83 Tm -(X)Tj -6 0 0 6 233.12 208.83 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 236.72 210.83 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22596.6([NoSpread Function])]TJ --7.569 -1.95 TD -(Returns the logical )Tj -/TT10 1 Tf -8.5332 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -( of all its arguments, as an integer. Example:)Tj -/TT10 1 Tf --5.7334 -1.6667 TD -(\(LOGOR 1 3 9\) => 11)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOGXOR)Tj -/F1 1 Tf -10 0 0 10 187.8 160.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.58 160.4 Tm -(X)Tj -6 0 0 6 195.98 158.4 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 199.58 160.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.36 160.4 Tm -(X)Tj -6 0 0 6 207.76 158.4 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 211.36 160.4 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 214.14 160.4 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 230.3426 160.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 233.1226 160.4 Tm -(X)Tj -6 0 0 6 238.52 158.4 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 242.12 160.4 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21996.6([NoSpread Function])]TJ --8.169 -1.95 TD -(Returns the logical exclusive )Tj -/TT10 1 Tf -12.875 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -( of its arguments, as an integer. Example:)Tj -/TT10 1 Tf --10.0752 -1.6667 TD -(\(LOGXOR 11 5\) => 14)Tj -0 -1 TD -(\(LOGXOR 11 5 9\) = \(LOGXOR 14 9\) => 7)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LSH)Tj -/F1 1 Tf -10 0 0 10 171.6 100.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 100.97 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 179.7809 100.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 182.5609 100.97 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.2519 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0844 Tw -[(\(Arithmetic\) Left Shift. Returns )]TJ -/TT14 1 Tf -15.6664 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0844 Tw -[( shifted left )]TJ -/TT14 1 Tf -5.4784 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0844 Tw -[( places, with the sign bit unaffected. )]TJ -/TT14 1 Tf -17.0481 0 TD -0 Tw -(X)Tj -/TT8 1 Tf --39.3931 -1.2889 TD -(can be positive or negative. If )Tj -/TT14 1 Tf -13.4702 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is negative, )Tj -/TT14 1 Tf -5.4932 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is shifted right )Tj -/TT10 1 Tf -6.9111 0 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( places.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -34 0 obj -<< -/Length 8660 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-7)Tj -/TT6 1 Tf -10 0 0 10 305.11 612 Tm -(NUMBERS AND ARITHMETIC FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RSH)Tj -/F1 1 Tf -10 0 0 10 123.6 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 568.26 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7809 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5609 568.26 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.2519 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0756 Tw -[(\(Arithmetic\) Right Shift. Returns )]TJ -/TT14 1 Tf -16.2962 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0756 Tw -[( shifted right )]TJ -/TT14 1 Tf -6.173 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0756 Tw -[( places, with the sign bit unaffected,)]TJ --23.6694 -1.2889 TD -0.0067 Tw -(and copies of the sign bit shifted into the leftmost bit. )Tj -/TT14 1 Tf -24.0536 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( can be positive or negative. If )]TJ -/TT14 1 Tf -13.7736 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( is)]TJ --39.0274 -1.2889 TD -0 Tw -(negative, )Tj -/TT14 1 Tf -4.2783 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is shifted left -)Tj -/TT14 1 Tf -6.5229 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( places.)Tj -/TT16 1 Tf --12.0015 -2.0667 TD -(Warning:)Tj -/TT8 1 Tf -4.25 0 TD -0.0111 Tw -[( Be careful if using )]TJ -/TT10 1 Tf -8.7815 0 TD -0 Tw -(RSH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0111 Tw -[( to simulate division; )]TJ -/TT10 1 Tf -9.564 0 TD -0 Tw -(RSH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0111 Tw -(ing a negative number isnt the)Tj --26.1961 -1.2889 TD -0 Tw -(same as dividing by a power of two.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LLSH)Tj -/F1 1 Tf -10 0 0 10 129 478.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 478.98 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 137.1808 478.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 478.98 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj -/TT10 1 Tf --38.07 -1.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LRSH)Tj -/F1 1 Tf -10 0 0 10 129 468.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 468.1 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 137.1808 468.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 468.1 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.2378 Tw -[(Logical Left Shift and Logical Right Shift. The difference between a logical and)]TJ -0 -1.2222 TD -0.0378 Tw -[(arithmetic right shift lies in the treatment of the sign bit. Logical shifting treats it just like)]TJ -T* -0.0322 Tw -(any other bit; arithmetic shifting will not change it, and will propagate rightward when)Tj -T* -0.1422 Tw -[(actually shifting rightwards. Note that shifting \(arithmetic\) a negative number all the)]TJ -T* -0 Tw -(way to the right yields )Tj -/TT10 1 Tf -10.7017 0 TD -(-1)Tj -/TT8 1 Tf -1.2002 0 TD -(, not )Tj -/TT10 1 Tf -2.2041 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT16 1 Tf --14.7061 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0811 Tw -(: )Tj -/TT10 1 Tf -0.9122 0 TD -0 Tw -(LLSH)Tj -/TT8 1 Tf -2.4004 0 TD -0.0811 Tw -[( and )]TJ -/TT10 1 Tf -2.3551 0 TD -0 Tw -(LRSH)Tj -/TT8 1 Tf -2.4004 0 TD -0.0811 Tw -[( always operate mod-2)]TJ -6 0 0 6 311.29 390.9 Tm -0 Tw -(32)Tj -9 0 0 9 317.29 388.9 Tm -0.0811 Tw -[( arithmetic. Passing a bignum to either of)]TJ --21.2544 -1.2889 TD -0 Tw -(these will cause an error. )Tj -/TT10 1 Tf -11.4888 0 TD -(LRSH)Tj -/TT8 1 Tf -2.4004 0 TD -( of negative numbers will shift 0s into the high bits.)Tj -/TT10 1 Tf --16.5558 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(INTEGERLENGTH)Tj -/F1 1 Tf -10 0 0 10 177.6 357.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.38 357.42 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27660.9([Function])]TJ --7.2424 -1.8444 TD -0.6433 Tw -(Returns the number of bits needed to represent )Tj -/TT14 1 Tf -26.2521 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.6433 Tw -[(. This is equivalent to:)]TJ -/TT10 1 Tf --26.8522 -1.2889 TD -0 Tw -(1+floor[log2[abs[)Tj -/TT14 1 Tf -10.2017 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(]]])Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(\(INTEGERLENGTH 0\) = 0)Tj -/TT8 1 Tf -12.6021 0 TD -(. )Tj -/TT10 1 Tf -0.5 0 TD -( )Tj --29.1208 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(POWEROFTWOP)Tj -/F1 1 Tf -10 0 0 10 166.8 309.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 169.58 309.34 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28860.9([Function])]TJ --6.0424 -1.8444 TD -(Returns non-)Tj -/TT10 1 Tf -5.77 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( \(coerced to an integer\) is a power of two.)Tj -/TT10 1 Tf --11.9611 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(EVENP)Tj -/F1 1 Tf -10 0 0 10 134.4 272.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.18 272.86 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 142.5809 272.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 145.3609 272.86 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26814.2([NoSpread Function])]TJ --3.3514 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9744 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0544 Tw -[( is not given, equivalent to )]TJ -/TT10 1 Tf -12.2671 0 TD -0.13 Tw -(\(ZEROP \(IMOD )Tj -/TT14 1 Tf -8.0613 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -0.13 Tw -[( 2\)\))]TJ -/TT8 1 Tf -2.5304 0 TD -0.0544 Tw -(; otherwise equivalent to )Tj -/TT10 1 Tf -11.3721 0 TD -0 Tw -(\(ZEROP)Tj --36.4054 -1.4311 TD -(\(IMOD X Y\)\))Tj -/F1 1 Tf -10 0 0 10 185.4096 243.38 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 102 223.5 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ODDP)Tj -/F1 1 Tf -10 0 0 10 129 223.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 223.5 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 137.1808 223.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 139.9608 223.5 Tm -(MODULUS)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23813.6([NoSpread Function])]TJ --6.352 -1.8444 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1802 0 TD -(\(NOT \(EVENP N MODULUS\)\))Tj -/TT8 1 Tf -13.8023 0 TD -(. )Tj -/TT14 1 Tf -0.75 0 TD -(MODULUS)Tj -/TT8 1 Tf -4.2007 0 TD -( defaults to 2.)Tj -/TT10 1 Tf --27.5998 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOGNOT)Tj -/F1 1 Tf -10 0 0 10 139.8062 187.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 187.02 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -33.4598 0 TD -([Macro])Tj --36.5022 -1.8444 TD -(Logical negation of the bits in )Tj -/TT14 1 Tf -13.3345 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. Equivalent to )Tj -/TT10 1 Tf -6.9302 0 TD -(\(LOGXOR )Tj -/TT14 1 Tf -4.8008 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( -1\))Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --31.3327 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BITTEST)Tj -/F1 1 Tf -10 0 0 10 145.2 150.54 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 147.98 150.54 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 153.3809 150.54 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 156.1608 150.54 Tm -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29650.5([Macro])]TJ --6.3517 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7582 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( if any of the bits in )]TJ -/TT14 1 Tf -8.9634 0 TD -0 Tw -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[( are on in the number )]TJ -/TT14 1 Tf -9.944 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[(. Equivalent to )]TJ -/TT10 1 Tf -7.0546 0 TD -0.0756 Tw -(\(NOT \(ZEROP)Tj --33.3207 -1.2889 TD -0 Tw -(\(LOGAND)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\)\))Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --12.1681 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BITCLEAR)Tj -/F1 1 Tf -10 0 0 10 150.6 102.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.38 102.46 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 158.7809 102.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 161.5609 102.46 Tm -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29050.5([Macro])]TJ --6.9517 -1.8444 TD -(Turns off bits from )Tj -/TT14 1 Tf -8.5796 0 TD -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -( in )Tj -/TT14 1 Tf -1.373 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. Equivalent to )Tj -/TT10 1 Tf -6.9302 0 TD -(\(LOGAND)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(LOGNOT)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --35.902 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BITSET)Tj -/F1 1 Tf -10 0 0 10 139.8 65.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 65.98 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 147.9809 65.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.7608 65.98 Tm -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30250.5([Macro])]TJ --5.7517 -1.8444 TD -(Turns on the bits from )Tj -/TT14 1 Tf -10.1328 0 TD -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -( in )Tj -/TT14 1 Tf -1.373 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. Equivalent to )Tj -/TT10 1 Tf -6.9302 0 TD -(\(LOGOR )Tj -/TT14 1 Tf -4.2007 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(MASK)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -37 0 obj -<< -/Length 8772 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MASK.1S)Tj -/F1 1 Tf -10 0 0 10 198.6 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.38 568.26 Tm -(POSITION)Tj -/F2 1 Tf -10 0 0 10 244.587 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 247.367 568.26 Tm -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24849.8([Macro])]TJ --11.1524 -1.8444 TD -0.0811 Tw -(Returns a bit-mask with )Tj -/TT14 1 Tf -11.2009 0 TD -0 Tw -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0811 Tw -[( one-bits starting with the bit at )]TJ -/TT14 1 Tf -14.6693 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0811 Tw -[(. Equivalent to)]TJ -/TT10 1 Tf --33.0714 -1.2889 TD -0 Tw -(\(LLSH \(SUB1 \(EXPT 2)Tj -/TT8 1 Tf -11.4019 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(POSITION)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --23.57 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MASK.0S)Tj -/F1 1 Tf -10 0 0 10 198.6 520.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.38 520.18 Tm -(POSITION)Tj -/F2 1 Tf -10 0 0 10 244.587 520.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 247.367 520.18 Tm -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24849.8([Macro])]TJ --11.1524 -1.8445 TD -0.3811 Tw -(Returns a bit-mask with all one bits, except for )Tj -/TT14 1 Tf -24.2088 0 TD -0 Tw -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3811 Tw -[( bits starting at )]TJ -/TT14 1 Tf -8.3452 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --39.7552 -1.2889 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1802 0 TD -(\(LOGNOT \(MASK.1S)Tj -/TT8 1 Tf -10.2017 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --27.9499 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOADBYTE)Tj -/F1 1 Tf -10 0 0 10 198.6 472.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.38 472.1 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 206.7809 472.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 209.5609 472.1 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 225.7635 472.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.5435 472.1 Tm -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25842.4([Function])]TJ --9.0609 -1.9867 TD -(Extracts )Tj -/TT14 1 Tf -3.8109 0 TD -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( bits from )]TJ -/TT14 1 Tf -4.5576 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -(, starting at position )Tj -/TT14 1 Tf -9.1591 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -[(. Equivalent to \()]TJ -/TT10 1 Tf -7.3387 0 TD -0.0456 Tw -(LOGAND \(RSH)Tj -/F3 1 Tf -10 0 0 10 500.8235 454.22 Tm -0 Tw -( )Tj -/TT14 1 Tf -9 0 0 9 503.9136 454.22 Tm -(N)Tj -/F3 1 Tf -10 0 0 10 509.3145 454.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 512.4044 454.22 Tm -(POS)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj --39.4008 -1.4311 TD -(\(MASK.1S 0)Tj -/F3 1 Tf -10 0 0 10 233.4097 441.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 236.2797 441.34 Tm -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --13.1872 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(DEPOSITBYTE)Tj -/F1 1 Tf -10 0 0 10 214.8 421.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.58 421.46 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 222.9809 421.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 225.7609 421.46 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 241.9635 421.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 244.7435 421.46 Tm -(SIZE)Tj -/F2 1 Tf -10 0 0 10 266.347 421.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 269.127 421.46 Tm -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21933.3([Function])]TJ --12.9701 -1.8444 TD -(Insert )Tj -/TT14 1 Tf -2.793 0 TD -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -( bits of )Tj -/TT14 1 Tf -3.2231 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -( at position )Tj -/TT14 1 Tf -5.1831 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -( into )Tj -/TT14 1 Tf -2.2451 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(, returning the result. Equivalent to)Tj -/TT10 1 Tf --16.0454 -1.6667 TD -(\(LOGOR \(BITCLEAR )Tj -/TT14 1 Tf -10.2017 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( \(MASK.1S )Tj -/TT14 1 Tf -6.6011 0 TD -(POS)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj --22.2036 -1 TD -( \(LSH \(LOGAND )Tj -/TT14 1 Tf -9.0015 0 TD -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -( \(MASK.1S 0 )Tj -/TT14 1 Tf -7.8013 0 TD -(SIZE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT14 1 Tf --21.0034 -1 TD -( POS)Tj -/TT10 1 Tf -4.2007 0 TD -(\)\))Tj --10.8674 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ROT)Tj -/F1 1 Tf -10 0 0 10 171.6 353.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 353.98 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 179.7809 353.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 182.5609 353.98 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 187.9617 353.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.7417 353.98 Tm -(FIELDSIZE)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27042.2([Function])]TJ --7.8612 -1.8444 TD -0.2044 Tw -(Rotate bits in field. It performs a bitwise left-rotation of the integer )Tj -/TT14 1 Tf -33.0866 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2044 Tw -(, by )Tj -/TT14 1 Tf -2.2683 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2044 Tw -[( places,)]TJ --36.5551 -1.2889 TD -0.0689 Tw -(within a field of )Tj -/TT14 1 Tf -7.5656 0 TD -0 Tw -(FIELDSIZE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -[( bits wide. Bits being shifted out of the position selected by)]TJ -/TT10 1 Tf --12.9665 -1.2889 TD -0 Tw -(\(EXPT 2 \(SUB1 )Tj -/TT14 1 Tf -8.4014 0 TD -(FIELDSIZE)Tj -/TT10 1 Tf -5.4009 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -( will flow into the units position.)Tj --20.3358 -2.0667 TD -0.0444 Tw -(The notions of position and size can be combined to make up a byte specifier, which is constructed)Tj -0 -1.2222 TD -0 Tw -(by the macro )Tj -/TT10 1 Tf -6.0142 0 TD -(BYTE)Tj -/TT8 1 Tf -2.4004 0 TD -( [note reversal of arguments as compared with the above functions]:)Tj -/TT10 1 Tf --5.7479 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BYTE)Tj -/F1 1 Tf -10 0 0 10 177 264.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 264.7 Tm -(SIZE)Tj -/F2 1 Tf -10 0 0 10 201.3835 264.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 204.1635 264.7 Tm -(POSITION)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27249.8([Macro])]TJ --8.7524 -1.8444 TD -(Constructs and returns a byte specifier containing )Tj -/TT14 1 Tf -23.2773 0 TD -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --35.3381 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BYTESIZE)Tj -/F1 1 Tf -10 0 0 10 198.6 228.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.38 228.22 Tm -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27559.1([Macro])]TJ --8.4431 -1.8444 TD -(Returns the )Tj -/TT10 1 Tf -5.3643 0 TD -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -( componant of the byte specifier )Tj -/TT14 1 Tf -15.4272 0 TD -(BYTESPEC)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --30.6593 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BYTEPOSITION)Tj -/F1 1 Tf -10 0 0 10 220.2 191.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 222.98 191.74 Tm -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25159.1([Macro])]TJ --10.8431 -1.8444 TD -(Returns the )Tj -/TT10 1 Tf -5.3643 0 TD -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -( componant of the byte specifier )Tj -/TT14 1 Tf -15.4272 0 TD -(BYTESPEC)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --33.0597 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LDB)Tj -/F1 1 Tf -10 0 0 10 171.6 155.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 155.26 Tm -(BYTESPEC)Tj -/F2 1 Tf -10 0 0 10 217.587 155.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.367 155.26 Tm -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28449.9([Macro])]TJ --7.5523 -1.8444 TD -(Equivalent to)Tj -/TT10 1 Tf -0 -1.8089 TD -(\(LOADBYTE)Tj -/F1 1 Tf -10 0 0 10 222.6079 122.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 225.3879 122.38 Tm -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -( \(BYTEPOSITION )Tj -/TT14 1 Tf -9.0015 0 TD -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\(BYTESIZE)Tj -/F1 1 Tf -10 0 0 10 419.8195 122.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 422.5995 122.38 Tm -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\))Tj --35.0896 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(DPB)Tj -/F1 1 Tf -10 0 0 10 171.6 104.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 174.38 104.5 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 179.7809 104.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 182.5609 104.5 Tm -(BYTESPEC)Tj -/F2 1 Tf -10 0 0 10 225.7679 104.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.5479 104.5 Tm -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27541([Macro])]TJ --8.4613 -1.8444 TD -(Equivalent to)Tj -/TT10 1 Tf -0 -1.8089 TD -(\(DEPOSITBYTE)Tj -/F1 1 Tf -10 0 0 10 238.8105 71.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 241.5905 71.62 Tm -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -( \(BYTEPOSITION)Tj -/F1 1 Tf -10 0 0 10 333.4055 71.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 336.1855 71.62 Tm -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\(BYTESIZE)Tj -/F1 1 Tf -10 0 0 10 433.4013 71.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 436.1813 71.62 Tm -(BYTESPEC)Tj -/TT10 1 Tf -4.8008 0 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 23 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6254 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-9)Tj -/TT6 1 Tf -10 0 0 10 305.11 612 Tm -(NUMBERS AND ARITHMETIC FUNCTIONS)Tj -/TT4 1 Tf --25.111 -4.38 TD -(Floating-Point Arithmetic)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 551.54 Tm -0.2411 Tw -(A floating-point number is input as a signed integer, followed by a decimal point, and another)Tj -0 -1.2222 TD -0.0144 Tw -(sequence of digits called the fraction, followed by an exponent \(represented by )Tj -/TT10 1 Tf -35.1968 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.0144 Tw -[( followed by a signed)]TJ --35.7969 -1.2889 TD -0 Tw -(integer\) and terminated by a delimiter.)Tj -0 -2 TD -0.0833 Tw -(Both signs are optional, and either the fraction following the decimal point, or the integer preceding)Tj -0 -1.2222 TD -0.12 Tw -[(the decimal point may be omitted. One or the other of the decimal point or exponent may also be)]TJ -T* -0.1744 Tw -(omitted, but at least one of them must be present to distinguish a floating-point number from an)Tj -T* -0 Tw -(integer. For example, the following will be recognized as floating-point numbers:)Tj -/TT10 1 Tf -9.3333 -1.6 TD -(5. 5.00 5.01 .3)Tj -0 -1.4444 TD -(5E2 5.1E2 5E-3 -5.2E+6)Tj -/TT8 1 Tf --9.3333 -1.8444 TD -0.1344 Tw -(Floating-point numbers are printed using the format control specified by the function )Tj -/TT10 1 Tf -39.6314 0 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1344 Tw -[( \(see)]TJ --43.232 -1.2889 TD -0 Tw -(Chapter 25\). )Tj -/TT10 1 Tf -5.9253 0 TD -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -( is initialized to )Tj -/TT10 1 Tf -7.04 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, or free format. For example, the above floating-point numbers)Tj --17.166 -1.2889 TD -(would be printed free format as:)Tj -/TT10 1 Tf -9.3333 -1.6 TD -(5.0 5.0 5.01 .3)Tj -0 -1.4445 TD -(500.0 510.0 .005 -5.2E6)Tj -/TT8 1 Tf --9.3333 -1.8444 TD -0.0289 Tw -(Floating-point numbers are created by the reader when a )Tj -/TT10 1 Tf -25.697 0 TD -0 Tw -(.)Tj -/TT8 1 Tf -1.2002 0 TD -0.0289 Tw -( or an )Tj -/TT10 1 Tf -3.3596 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -[( appears in a number, e.g., )]TJ -/TT10 1 Tf -12.0767 0 TD -0 Tw -(1000)Tj -/TT8 1 Tf --42.9336 -1.2889 TD -0.1189 Tw -(is an integer, )Tj -/TT10 1 Tf -6.2619 0 TD -0 Tw -(1000.)Tj -/TT8 1 Tf -3.0005 0 TD -0.1189 Tw -[( a floating-point number, as are )]TJ -/TT10 1 Tf -14.8608 0 TD -0 Tw -(1E3)Tj -/TT8 1 Tf -1.8003 0 TD -0.1189 Tw -[( and )]TJ -/TT10 1 Tf -2.4306 0 TD -0 Tw -(1.E3)Tj -/TT8 1 Tf -2.4004 0 TD -0.1189 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.6421 0 TD -0 Tw -(1000D)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6189 0 TD -(1000F)Tj -/TT8 1 Tf -3.0005 0 TD -0.1189 Tw -(, and)Tj -/TT10 1 Tf --43.0165 -1.2889 TD -0 Tw -(1E3D)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( are perfectly legal literal atoms. Floating-point numbers are also created by )]TJ -/TT10 1 Tf -34.4065 0 TD -0 Tw -(PACK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( and )]TJ -/TT10 1 Tf -2.2751 0 TD -0 Tw -(MKATOM)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --45.083 -1.2889 TD -(and as a result of arithmetic operations.)Tj -/TT10 1 Tf -0 -2 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.2089 Tw -[( \(see Chapter 25\) permits greater control over the printed appearance of floating-point)]TJ --4.8008 -1.2889 TD -0 Tw -(numbers, allowing such things as left-justification, suppression of trailing decimals, etc.)Tj -0 -2 TD -(The floating-point number range is stored in the following variables:)Tj -/TT12 1 Tf -2.6667 -2 TD -(MIN.FLOAT)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -32.8678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(The smallest possible floating-point number.)Tj -/TT12 1 Tf --2.6667 -2 TD -(MAX.FLOAT)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -32.8678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(The largest possible floating-point number.)Tj --5.3333 -2 TD -0.0844 Tw -[(All of the functions described below work on floating-point numbers. Unless specified otherwise, if)]TJ -0 -1.2222 TD -0.1089 Tw -(given an integer, they first convert the number to a floating-point number, e.g.,)Tj -/TT10 1 Tf -36.1587 0 TD -0.26 Tw -[( \(FPLUS 1 2.3\))]TJ --36.1587 -1.2889 TD -0.1533 Tw -(<=> \(FPLUS 1.0 2.3\) => 3.3)Tj -/TT8 1 Tf -16.3692 0 TD -0.0644 Tw -(; if given a non-numeric argument, they generate an error, )Tj -/TT10 1 Tf -26.5673 0 TD -0 Tw -(Non-)Tj --42.9365 -1.2889 TD -(numeric arg)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --3.9344 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FPLUS)Tj -/F1 1 Tf -10 0 0 10 134.4 143.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.18 143.06 Tm -(X)Tj -6 0 0 6 142.58 141.06 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 146.18 143.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.96 143.06 Tm -(X)Tj -6 0 0 6 154.36 141.06 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 157.96 143.06 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 160.74 143.06 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 176.9426 143.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.7226 143.06 Tm -(X)Tj -6 0 0 6 185.12 141.06 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 188.72 143.06 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22596.6([NoSpread Function])]TJ -/TT14 1 Tf --7.569 -2.0922 TD -(X)Tj -6 0 0 6 131.4 122.23 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 135 124.23 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 137.78 124.23 Tm -(+)Tj -/F1 1 Tf -10 0 0 10 143.1808 124.23 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 145.9608 124.23 Tm -(X)Tj -6 0 0 6 151.36 122.23 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 154.96 124.23 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 157.74 124.23 Tm -(+ ... +)Tj -/F1 1 Tf -10 0 0 10 195.5461 124.23 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 198.3261 124.23 Tm -(X)Tj -6 0 0 6 203.72 122.23 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 102 103.4 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FMINUS)Tj -/F1 1 Tf -10 0 0 10 139.8 103.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 103.4 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31860.9([Function])]TJ -/TT10 1 Tf --3.0424 -1.9867 TD -(-)Tj -/F1 1 Tf -10 0 0 10 131.4009 85.52 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.1808 85.52 Tm -(X)Tj -/TT10 1 Tf --3.5757 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FDIFFERENCE)Tj -/F1 1 Tf -10 0 0 10 166.8 65.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 169.58 65.64 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 174.9809 65.64 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 177.7608 65.64 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27951.9([Function])]TJ -/TT14 1 Tf --6.9514 -1.9867 TD -(X)Tj -/F1 1 Tf -10 0 0 10 131.4009 47.76 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 134.1808 47.76 Tm -(-)Tj -/F1 1 Tf -10 0 0 10 139.5817 47.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.3617 47.76 Tm -(Y)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -43 0 obj -<< -/Length 9152 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FTIMES)Tj -/F1 1 Tf -10 0 0 10 187.8 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.58 568.26 Tm -(X)Tj -6 0 0 6 195.98 566.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 199.58 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.36 568.26 Tm -(X)Tj -6 0 0 6 207.76 566.26 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 211.36 568.26 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 214.14 568.26 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 230.3426 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 233.1226 568.26 Tm -(X)Tj -6 0 0 6 238.52 566.26 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 242.12 568.26 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21996.6([NoSpread Function])]TJ -/TT14 1 Tf --8.169 -2.0922 TD -(X)Tj -6 0 0 6 179.4 547.43 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 183 549.43 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 185.78 549.43 Tm -(*)Tj -/F1 1 Tf -10 0 0 10 191.1809 549.43 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 193.9609 549.43 Tm -(X)Tj -6 0 0 6 199.36 547.43 Tm -(2)Tj -/TT10 1 Tf -9 0 0 9 202.96 549.43 Tm -( * ... *)Tj -/F1 1 Tf -10 0 0 10 246.167 549.43 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 248.947 549.43 Tm -(X)Tj -6 0 0 6 254.34 547.43 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 150 528.6 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FQUOTIENT)Tj -/F1 1 Tf -10 0 0 10 204 528.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.78 528.6 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 212.1809 528.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 214.9609 528.6 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29151.9([Function])]TJ -/TT14 1 Tf --5.7514 -1.9867 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( /)Tj -/F1 1 Tf -10 0 0 10 190.2026 510.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 195.7626 510.72 Tm -(Y)Tj -/F1 1 Tf -10 0 0 10 201.1635 510.72 Tm -(.)Tj -/TT8 1 Tf -9 0 0 9 174 492.12 Tm -0.06 Tw -(The results of division by zero and floating-point overflow is determined by the function)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(OVERFLOW)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --7.4674 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FREMAINDER)Tj -/F1 1 Tf -10 0 0 10 209.4 461.24 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.18 461.24 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 217.5809 461.24 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.3609 461.24 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28551.9([Function])]TJ --6.3514 -1.8444 TD -(Returns the remainder when )Tj -/TT14 1 Tf -12.9561 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is divided by )Tj -/TT14 1 Tf -6.2827 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(. Equivalent to:)Tj -/TT10 1 Tf --16.439 -1.6667 TD -(\(FDIFFERENCE )Tj -/TT14 1 Tf -7.8013 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( \(FTIMES )Tj -/TT14 1 Tf -5.4009 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -( \(FIX \(FQUOTIENT )Tj -/TT14 1 Tf -10.2017 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\)\)\)\))Tj -/TT8 1 Tf --30.4043 -1.8444 TD -(Example:)Tj -/TT10 1 Tf -4 -1.6 TD -(\(FREMAINDER 7.5 2.3\) => 0.6)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FGREATERP)Tj -/F1 1 Tf -10 0 0 10 204 380.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.78 380.76 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 212.1809 380.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 214.9609 380.76 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29151.9([Function])]TJ -/TT10 1 Tf --5.7514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(>)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.2414 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FLESSP)Tj -/F1 1 Tf -10 0 0 10 187.8 344.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.58 344.28 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 195.9809 344.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 198.7609 344.28 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30951.9([Function])]TJ -/TT10 1 Tf --3.9514 -1.8444 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(<)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --9.2414 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FEQP)Tj -/F1 1 Tf -10 0 0 10 177 307.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 307.8 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 185.1808 307.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 187.9608 307.8 Tm -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.8204 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( if )]TJ -/TT14 1 Tf -1.3107 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( and )]TJ -/TT14 1 Tf -2.3795 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( are equal floating-point numbers; )]TJ -/TT10 1 Tf -15.7972 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0933 Tw -[( otherwise. )]TJ -/TT10 1 Tf -5.636 0 TD -0 Tw -(FEQP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( converts )]TJ -/TT14 1 Tf -4.4474 0 TD -0 Tw -(X)Tj -/TT8 1 Tf --39.3922 -1.2889 TD -(and )Tj -/TT14 1 Tf -1.9429 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( to floating-point numbers.)Tj -/TT10 1 Tf --5.2096 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FMIN)Tj -/F1 1 Tf -10 0 0 10 177 259.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 259.72 Tm -(X)Tj -6 0 0 6 185.18 257.72 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 188.78 259.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.56 259.72 Tm -(X)Tj -6 0 0 6 196.96 257.72 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 200.56 259.72 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 203.34 259.72 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 219.5426 259.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 222.3226 259.72 Tm -(X)Tj -6 0 0 6 227.72 257.72 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 231.32 259.72 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23196.6([NoSpread Function])]TJ --6.969 -1.95 TD -0.1467 Tw -(Returns the minimum of )Tj -/TT14 1 Tf -11.7454 0 TD -0 Tw -(X)Tj -6 0 0 6 285.13 240.17 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 288.73 242.17 Tm -(, )Tj -/TT14 1 Tf -0.6467 0 TD -(X)Tj -6 0 0 6 299.95 240.17 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 303.55 242.17 Tm -(, )Tj -/TT10 1 Tf -0.6467 0 TD -(...,)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3967 0 TD -(X)Tj -6 0 0 6 339.94 240.17 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 343.54 242.17 Tm -(. )Tj -/TT10 1 Tf -0.6467 0 TD -(\(FMIN\))Tj -/TT8 1 Tf -3.6006 0 TD -0.1467 Tw -[( returns the largest possible floating-)]TJ --23.085 -1.3944 TD -0 Tw -(point number, the value of )Tj -/TT10 1 Tf -12.0454 0 TD -(MAX.FLOAT)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --20.113 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FMAX)Tj -/F1 1 Tf -10 0 0 10 177 209.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 209.74 Tm -(X)Tj -6 0 0 6 185.18 207.74 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 188.78 209.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.56 209.74 Tm -(X)Tj -6 0 0 6 196.96 207.74 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 200.56 209.74 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 203.34 209.74 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 219.5426 209.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 222.3226 209.74 Tm -(X)Tj -6 0 0 6 227.72 207.74 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 231.32 209.74 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23196.6([NoSpread Function])]TJ --6.969 -1.95 TD -0.0856 Tw -(Returns the maximum of )Tj -/TT14 1 Tf -11.644 0 TD -0 Tw -(X)Tj -6 0 0 6 284.21 190.19 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 287.81 192.19 Tm -(, )Tj -/TT14 1 Tf -0.5856 0 TD -(X)Tj -6 0 0 6 298.48 190.19 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 302.08 192.19 Tm -(, )Tj -/TT10 1 Tf -0.5856 0 TD -(...,)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3356 0 TD -(X)Tj -6 0 0 6 337.37 190.19 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 340.97 192.19 Tm -(. )Tj -/TT10 1 Tf -0.5856 0 TD -(\(FMAX\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0855 Tw -[( returns the smallest possible floating-)]TJ --22.7384 -1.3944 TD -0 Tw -(point number, the value of )Tj -/TT10 1 Tf -12.0454 0 TD -(MIN.FLOAT)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --20.113 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FLOAT)Tj -/F1 1 Tf -10 0 0 10 182.4 159.76 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.18 159.76 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.9609 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Converts )Tj -/TT14 1 Tf -4.2759 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to a floating-point number. Example:)Tj -/TT10 1 Tf --0.876 -1.6667 TD -(\(FLOAT 0\) => 0.0)Tj -/TT4 1 Tf -10 0 0 10 102 107.22 Tm -(Transcendental Arithmetic Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 104.51 m -558.01 104.51 l -S -BT -/TT10 1 Tf -9 0 0 9 150 89.28 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(EXPT)Tj -/F1 1 Tf -10 0 0 10 177 89.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 89.28 Tm -(A)Tj -/F2 1 Tf -10 0 0 10 185.1808 89.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 187.9608 89.28 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -32.6519 0 TD -([Function])Tj --35.4033 -1.8945 TD -(Returns )Tj -/TT14 1 Tf -3.7682 0 TD -(A)Tj -6 0 0 6 213.32 75.23 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 216.92 72.23 Tm -0.0411 Tw -[(. If )]TJ -/TT14 1 Tf -1.7933 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( is an integer and )]TJ -/TT14 1 Tf -8.0537 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( is a positive integer, returns an integer, e.g, )]TJ -/TT10 1 Tf -19.8959 0 TD -0.0978 Tw -(\(EXPT 3)Tj --35.7119 -1.2889 TD -0.1722 Tw -(4\) => 81)Tj -/TT8 1 Tf -5.1452 0 TD -0.0711 Tw -[(, otherwise returns a floating-point number. If )]TJ -/TT14 1 Tf -21.3985 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( is negative and )]TJ -/TT14 1 Tf -7.4705 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( fractional,)]TJ -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -46 0 obj -<< -/Length 8111 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-11)Tj -/TT6 1 Tf -10 0 0 10 305.11 612 Tm -(NUMBERS AND ARITHMETIC FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0644 Tw -(generates the error, )Tj -/TT10 1 Tf -9.0107 0 TD -0.1556 Tw -(Illegal exponentiation)Tj -/TT8 1 Tf -13.3577 0 TD -0.0644 Tw -[(. If )]TJ -/TT14 1 Tf -1.8633 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( is floating and either too large or)]TJ --24.8318 -1.2889 TD -0 Tw -(too small, generates the error, )Tj -/TT10 1 Tf -13.374 0 TD -(Value out of range expt)Tj -/TT8 1 Tf -13.8022 0 TD -(.)Tj -/TT10 1 Tf --29.8429 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SQRT)Tj -/F1 1 Tf -10 0 0 10 129 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.78 538.06 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.161 0 TD -([Function])Tj --35.4033 -1.8445 TD -0.0322 Tw -(Returns the square root of )Tj -/TT14 1 Tf -11.9282 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -[( as a floating-point number. )]TJ -/TT14 1 Tf -12.9668 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -[( may be fixed or floating-point.)]TJ --26.0952 -1.2889 TD -0 Tw -(Generates an error if )Tj -/TT14 1 Tf -9.3433 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is negative.)Tj -/TT10 1 Tf --12.61 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(LOG)Tj -/F1 1 Tf -10 0 0 10 123.6 489.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 489.98 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -34.761 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.2567 Tw -(Returns the natural logarithm of )Tj -/TT14 1 Tf -15.8439 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2567 Tw -[( as a floating-point number. )]TJ -/TT14 1 Tf -14.3134 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2567 Tw -[( can be integer or)]TJ --31.3575 -1.2889 TD -0 Tw -(floating-point.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ANTILOG)Tj -/F1 1 Tf -10 0 0 10 145.2 442.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 147.98 442.5 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31260.9([Function])]TJ --3.6424 -1.8444 TD -0.1622 Tw -(Returns the floating-point number whose logarithm is )Tj -/TT14 1 Tf -25.2991 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1622 Tw -(. )Tj -/TT14 1 Tf -1.0744 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1622 Tw -[( can be integer or floating-)]TJ --27.5738 -1.2889 TD -0 Tw -(point. Example:)Tj -/TT10 1 Tf -4 -1.6 TD -(\(ANTILOG 1\) = e => 2.71828...)Tj --6.6667 -1.9867 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SIN)Tj -/F1 1 Tf -10 0 0 10 123.6 382.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 382.02 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7809 382.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5609 382.02 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27351.1([Function])]TJ --7.5523 -1.8444 TD -0.0711 Tw -(Returns the sine of )Tj -/TT14 1 Tf -8.8035 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( as a floating-point number. )]TJ -/TT14 1 Tf -13.2001 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( is in degrees unless )]TJ -/TT14 1 Tf -9.419 0 TD -0 Tw -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -0.1711 Tc -( =)Tj --38.6238 -1.2889 TD -0 Tc -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --3.2668 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(COS)Tj -/F1 1 Tf -10 0 0 10 123.6 333.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.38 333.94 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7809 333.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5609 333.94 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27351.1([Function])]TJ --7.5523 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(SIN)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --9.0148 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6 0 TD -(TAN)Tj -/F1 1 Tf -10 0 0 10 123.6026 297.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.3826 297.46 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 131.7835 297.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 134.5635 297.46 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27350.8([Function])]TJ --7.5526 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(SIN)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --9.0148 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ARCSIN)Tj -/F1 1 Tf -10 0 0 10 139.8062 260.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 260.98 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 147.9809 260.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.7609 260.98 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25551.1([Function])]TJ --9.3523 -1.8444 TD -0.0522 Tw -(The value of )Tj -/TT10 1 Tf -5.8974 0 TD -0 Tw -(ARCSIN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0522 Tw -[( is a floating-point number, and is in degrees unless )]TJ -/TT14 1 Tf -23.593 0 TD -0 Tw -(RADIANSFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(=)Tj --39.3942 -1.2889 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[(. In other words, if )]TJ -/TT10 1 Tf -8.9807 0 TD -0 Tw -(\(ARCSIN )Tj -/TT14 1 Tf -4.9219 0 TD -0.1211 Tw -(X RADIANSFLG)Tj -/TT10 1 Tf -7.3223 0 TD -(\) = Z)Tj -/TT8 1 Tf -3.2427 0 TD -0.05 Tw -[( then )]TJ -/TT10 1 Tf -2.5692 0 TD -0.1211 Tw -(\(SIN Z )Tj -/TT14 1 Tf -4.4429 0 TD -0 Tw -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -0.1211 Tw -(\) =)Tj -/TT14 1 Tf --38.0808 -1.3511 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -[(. The range of the value of )]TJ -/TT10 1 Tf -12.3035 0 TD -0 Tw -(ARCSIN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0356 Tw -[( is -90 to +90 for degrees, )]TJ -/TT10 1 Tf -11.4715 0 TD -0 Tw -(-)Tj -/TT19 1 Tf -0.6001 0 TD -<002f>Tj -/TT8 1 Tf -0.5488 0 TD -0.0356 Tw -(/2 to )Tj -/TT19 1 Tf -2.5491 0 TD -0 Tw -<002f>Tj -/TT10 1 Tf -0.5488 0 TD -(/2)Tj -/TT8 1 Tf -1.2002 0 TD -0.0356 Tw -[( for radians. )]TJ -/TT14 1 Tf -5.9689 0 TD -0 Tw -(X)Tj -/TT8 1 Tf --39.3917 -1.2889 TD -(must be a number between -1 and 1. )Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ARCCOS)Tj -/F1 1 Tf -10 0 0 10 139.8 189.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 189.74 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 147.9809 189.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.7608 189.74 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25551.1([Function])]TJ --9.3523 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(ARCSIN)Tj -/TT8 1 Tf -3.6006 0 TD -(. Range is )Tj -/TT10 1 Tf -4.75 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(180)Tj -/TT8 1 Tf -1.8003 0 TD -(, 0 to )Tj -/TT19 1 Tf -2.3721 0 TD -<002f>Tj -/TT8 1 Tf -0.5488 0 TD -(.)Tj -/TT10 1 Tf --22.2585 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ARCTAN)Tj -/F1 1 Tf -10 0 0 10 139.8 153.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.58 153.26 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 147.9809 153.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.7608 153.26 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25551.1([Function])]TJ --9.3523 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(ARCSIN)Tj -/TT8 1 Tf -3.6006 0 TD -(. Range is )Tj -/TT10 1 Tf -4.75 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(180)Tj -/TT8 1 Tf -1.8003 0 TD -(, 0 to )Tj -/TT19 1 Tf -2.3721 0 TD -<002f>Tj -/TT8 1 Tf -0.5488 0 TD -(.)Tj -/TT10 1 Tf --22.2585 -2.2156 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ARCTAN2)Tj -/TT4 1 Tf -10 0 0 10 145.2 116.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 147.9783 116.72 Tm -(Y)Tj -/F2 1 Tf -10 0 0 10 153.3792 116.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 156.1592 116.72 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 161.5601 116.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.3401 116.72 Tm -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24042.3([Function])]TJ --10.8611 -1.8444 TD -(Computes )Tj -/TT10 1 Tf -5.0252 0 TD -0.4911 Tw -(\(ARCTAN \(FQUOTIENT)Tj -/TT8 1 Tf -11.2929 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.4544 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.4544 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.4544 0 TD -(RADIANSFLG)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2044 Tw -(, and returns a corresponding)Tj --26.0828 -1.2889 TD -0.0989 Tw -(value in the range )Tj -/TT10 1 Tf -8.606 0 TD -0 Tw -(-180)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[( to )]TJ -/TT10 1 Tf -1.5698 0 TD -0 Tw -(180)Tj -/TT8 1 Tf -1.8003 0 TD -0.0989 Tw -[( \(or )]TJ -/TT10 1 Tf -1.9717 0 TD -0 Tw -(-)Tj -/TT19 1 Tf -0.6001 0 TD -<002f>Tj -/TT10 1 Tf -0.5488 0 TD -( )Tj -/TT8 1 Tf -0.8379 0 TD -(to )Tj -/TT19 1 Tf -1.221 0 TD -<002f>Tj -/TT8 1 Tf -0.5488 0 TD -0.0989 Tw -(\), i.e. the result is in the proper quadrant as)Tj --20.1048 -1.2889 TD -0 Tw -(determined by the signs of )Tj -/TT14 1 Tf -12.0381 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT19 48 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -52 0 obj -<< -/Length 3387 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Generating Random Numbers)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT10 1 Tf -9 0 0 9 150 550.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RAND)Tj -/F2 1 Tf -10 0 0 10 177 550.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 550.26 Tm -(LOWER)Tj -/F2 1 Tf -10 0 0 10 206.7844 550.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 209.5644 550.26 Tm -(UPPER)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27351.1([Function])]TJ --7.5522 -1.8444 TD -0.0233 Tw -(Returns a pseudo-random number between )Tj -/TT14 1 Tf -19.6845 0 TD -0 Tw -(LOWER)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( and )]TJ -/TT14 1 Tf -2.2395 0 TD -0 Tw -(UPPER)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( inclusive, i.e., )]TJ -/TT10 1 Tf -6.5597 0 TD -0 Tw -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( can be)]TJ --36.8852 -1.2889 TD -0.0656 Tw -[(used to generate a sequence of random numbers. If both limits are integers, the value of)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0889 Tw -[( is an integer, otherwise it is a floating-point number. The algorithm is completely)]TJ --2.4004 -1.2889 TD -0.2733 Tw -(deterministic, i.e., given the same initial state, )Tj -/TT10 1 Tf -22.2786 0 TD -0 Tw -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -0.2733 Tw -[( produces the same sequence of)]TJ --24.679 -1.2889 TD -0 Tw -(values. The internal state of )Tj -/TT10 1 Tf -12.666 0 TD -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -( is initialized using the function )Tj -/TT10 1 Tf -14.2183 0 TD -(RANDSET)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --36.152 -2.2089 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RANDSET)Tj -/F1 1 Tf -10 0 0 10 193.2 467.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 195.98 467.98 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31260.9([Function])]TJ --3.6424 -1.8444 TD -0.0533 Tw -(Returns the internal state of )Tj -/TT10 1 Tf -12.7613 0 TD -0 Tw -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[(. If )]TJ -/TT14 1 Tf -1.8299 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -0.1267 Tw -[( = NIL)]TJ -/TT8 1 Tf -3.8539 0 TD -0.0533 Tw -[(, just returns the current state. If )]TJ -/TT14 1 Tf -15.0541 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -0.1267 Tw -[( = T)]TJ -/TT8 1 Tf -2.6537 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --39.7536 -1.2889 TD -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -[( is initialized using the clocks, and )]TJ -/TT10 1 Tf -15.8909 0 TD -0 Tw -(RANDSET)Tj -/TT8 1 Tf -4.2007 0 TD -0.0689 Tw -[( returns the new state. Otherwise, )]TJ -/TT14 1 Tf -15.8699 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0689 Tw -[( is)]TJ --38.962 -1.2889 TD -0.0011 Tw -(interpreted as a previous internal state, i.e., a value of )Tj -/TT10 1 Tf -23.8915 0 TD -0 Tw -(RANDSET)Tj -/TT8 1 Tf -4.2007 0 TD -0.0011 Tw -(, and is used to reset )Tj -/TT10 1 Tf -9.2562 0 TD -0 Tw -(RAND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --39.7487 -1.2889 TD -(For example,)Tj -/TT19 1 Tf -4 -1.6 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ OLDSTATE \(RANDSET\)\))Tj --0.3202 -1 TD -(...)Tj -/TT19 1 Tf --0.6667 -1.2222 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(for X from 1 to 10 do \(PRIN1 \(RAND 1 10\)\)\))Tj --0.3202 -1 TD -(2847592748NIL)Tj -/TT19 1 Tf --0.6667 -1.2222 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(RANDSET OLDSTATE\))Tj --0.3202 -1 TD -(...)Tj -/TT19 1 Tf --0.6667 -1.2222 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(for X from 1 to 10 do \(PRIN1 \(RAND 1 10\)\)\))Tj --0.3202 -1 TD -(2847592748NIL)Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT19 48 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -55 0 obj -<< -/Length 70 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-13)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -58 0 obj -<< -/Length 201 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(7-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 15 0 R ->> ->> -endobj -15 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -60 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -61 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -62 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -63 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -64 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -65 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -66 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -67 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -68 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -69 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBEMHB+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 70 0 R ->> -endobj -70 0 obj -<< -/Filter /FlateDecode -/Length 20291 -/Length1 39656 ->> -stream -HW}tovgvfwvr<pՊP%ŀ1 RavmvdYUR"A#_h-MRKD>iJ)4fg7z<޽ͽ7܄7'y{N) @nC!ފͼx1,wH6˰p<:ŋ|2(6up3Pʵpb)pm]v#y7 -`.àHLtV!X0!y(״xPypÃ}V!'DTB<,-Gy^/!q}L!O}`Rw$tק`)z.̰d$[| a|O an*.s&r>$P/ApEr_ -ll^Os27AYi'w _I;\54Imd"Fp~ѱT%!phMǁa|Eyd튐a[dx˜2@LVrx L%,]Z?he4נϱlD|~|xAF>ILfLq=&fc;k˓{{LZ6&nqeRIo1 <|kVG) YbL1I$b_?c(=dOL=s$@&_}Lf|,$Ofk+;1 _@;rӂ8"`9 YKU!lI l\h"۸ƥ6.Ƨm\n -Ykm|ƕ6qkl\kmy/:'O C/ Q54O%TbXWLTca5BXjΠ -J~on %D_]Wf!hj&VCW<mB\RBKQ0hŤe&1L5UVf_q٨h= AUN$5[:[ ߋ55:[h,HQ8GʒlˬT7ijl=HU1zl3%"MC'nTPꆩ+TF3ٝfFfAY6O^177niX #oF2ͽrF}rF7\Oc~7E&5\WB*vիrհ_pAzQEi\P2hb+7yǭY>pBv\{:ƒH|9ΰd7Ӷ,9Udsh,_r %fv{n/(>R ft73$`~ ΘIʹ=)M}ԓ̳FiZrDйnQ"4uǜe"K \";2mW0/˖H3IFS=X6ԧٙ6־f€ZMyKk{VC.]+G:/DD[e21u9ulP:q7xjRQDpq'.O$1Frmm2 o~a{x@~UslξfM_ w̬2жwm<~ؾK|v<0)#gVqh(D>ms0 J(MP]jtr>Jmi%&]@d{ϝm":@BB{_݇?;sު\$)3`JѢ*$q7.{='2#Bł܂WYG,ݭMf6 -KTѩ9`aZhK/,ٮق0R9u^Vc@"#92F1xQ&|w4xCG$8WJFhdqpXխL)_Ãi3\nSܙfJ0=^$ cUBFږ.vyNȧTM ԇLءVZ?~,nRCFŅYV8WnCG}~S@P}@-! -PI`:b|OZѹXnPɳT9T]٪4IFd]{fuKKj\=?p u˺Ogit7){r]X:gSݭjwU9Ҫu~);?SOryTYvAS%dtډy\/wo Cg,sJGp9 CbK徚=_oTC-[1O9ՐK -ϣvU-!cRYگ@w*@:Ki9TYl;tvmh? 7QI2Mtܱ9fK)Pp2ʡ|H1_/k驘d wka`Knr]%@Dg)E ֈ{#r[4˃o77N*)6H rmʛvH-u` GFw{QH;a1ѣQQg,IF2Cb)Ҍ~ [g[j*R.!%K?Y bTb$6Ȩ>\p0;amFXElN -+axLI0F>/gc02`4A+^ Spe8y)%dOj3d%yh$D^!-d'y#oϤ#Ӥ\ UJڨP7CQt}V%>GWhn[諴Eߣ]z~AAh?M03dc0eTVf0?{-`Kl5gdCCvfv]arn>OSOx?ŗov?;a~SG%~G?&j22LX'n*|?A!HPg0bZ@qpXQ3CQT Xa482RwZf8݊2 cLj"VG}X#& -ɚW2 Yt?X~' -oP%%i0HR+4b ݒ&c6S+Q'b]vdQEτ1,װc?`cEpՌިd3A> sШd -8eݎg3-G{})f2Ͷ L乑m;-ΡZRU_w3DKP)ji7Zraڭ-BesK-$IY8Dp]]i>s ȭU'npZK;~jkɒ^_RKD>4{GK{yѥhk꺺bR%8>:D/lI'F`׌Pl{bpqIs.?HƪsBP3| !d[UQ0k7)J.!q!I$gA&nikTM֊IS TOT7v嗶Uڞ%>{>s_hVqtxBwXrmmKȘ C`sl{Q [aebU(u{lx2/*XZRE!qA -~Mo8yfEe^Eԗ2jb)KGr50K.Z^&ABJ\ac.Z,W'ښkr ℣YVvk ,Gmi=KzqG$G\̢nxA5P" Yzuݶtgꩅި0UR.!/ qƜә KKmg'tX00,( {JMqCUӫ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*i⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw1iU?8*M:k CS\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5.O`yY@UY-Р5lKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5NA# hО%-e Oo]_0hc 2%y &XZ p#td9YPcxۭa3"W]c9/`xl>kge@b< سb"ulp4*#XE?yop|box>wV -4Z@cK}طg\=fY-cDwsA5L$y/J#ro{YnŰxY}ViaYx?IWGbuV[?~LA'XO-f9ζnf,,C-ݖ^צG9 -і[:?{YPJߔ?ZKCoRK,Yiܻ@*zC \`ώVUR lW޻!ZR 6y Z0 GӴCl;'i. /@ B^p^k Y7h*E^(C }} FChA'/o z .&؎K+7/'S a<49~m'WuHJD^U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13Wͽ/ګ( -{}o]HY-3vYlTDBY@!jFS;#Cd:ڴ:5Fww(jZLFcDg21iI;6bD^Ͻ,v={w]f7eUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckCށYXv?lȦG 5FhcΥ ql3tؘ޸aQpKXmšoO3vP3ի DT>cm޼<(@${94;ggsFT]IO P o%0&H=Vx"sIo,O /}4$A*פM̩ 07JuP?Ǻ[% tJOcIBB:]HIȨ@LdU<JYsc39,Gn - -^V :a?>>/+Id7;D2V. 5zGz tI]"'l)O0rfRYfhmRLtPNH JWԀ1dkffcvd,Md4ɲYe?b~Vfv =(y0!K0#wB ]B$z,[= 3"Po -̋窼33& ?plO'c_6o -L~ \JEۼ7aDl~~rFl ? .?+4Ia_amAP3Z>"Le@Dx2ׯiK!2nq*Ɨp[o(˳Hזr/;rIgGf mQ3AyxGV44]~ƻҢ'= aPl ] ;C}WM_k ӦX Nz^I)AqFj`;}rjG8>7@t7V<팷5#S"?YX<d??8fknl4HE#DIZ Hw$@cLK`нÄhGZi=!ر^$v/%ةt߻~wS!h7,hb طjOjЗa2.[[,4cRhQ}˥n˭QUw_QD=x=7/::Z^7,,mn^ڜwwk}pZWjo,oh<ԂE &xm΁@w2gh᫏,*)B3tޱ䯍ǡ>D-7gUGY!aۿmo~ mߞy`W\都2/C oعZq, DxduMQ027h;[çLJ|gUvT Nޑ|h}ˆ3 1.z,vR6 ó}]Ko+k"ݓs|kGA0s;]9^;륛sq< UաHhuw>=<^~ϓ5V'UhG`{_8/@w\I~oJe# rͻvlhxJĻ#& -ۼb{a8C/mGI^qQdO\(GPIE,1"hNDUyBL$ƕґ&orK^Sw|)8'iRlvmFfYD#eSi9#,})ȃjB(0 \(E=Uzj>nG=XKX+PO=a ڡ~O>8G9T\Eu -އ8KH6U4UETVs '5[ #܋j5YG6fBZè#Iy!A{r>z $&7y+͠~KD}UHCNMZI-NKХ>amQKYO#w4J 'wzeKdZk\T[7Vnca ^VUdT^l+ka?CՁ X7͞`Ova,EJjXJ >(F+Jݍ Pqz㼱#gMI]Ev[2\! -͝ϳEKi-%Ra+)c\ -[I؂F=R|i&^|>Ue3y Pqif{RʺhG2T mSAO&)Qb3DAc.ݛC /-+W &ǮYJPvҰ, I<%;Lxlc[` b `!i Yl#BN`S,>OQ;y-o2g}LcA=KA21&-JՂl{$hT&Aq wS+u#yȱ_ -P E-F ݦMv#a1;=jg@uC7%QyNlt mEw`ƨ{k^Pem"|rfφa0g8M:L <\K=,GX ¼ Y٦%JN'2t) 2԰-|C N:s{y:$۠Gud}=mxRdNK<r/ 4,20dpɲ&}OaT !?J)H >sv|E(9ԧg0l^*@Zರ=T2tKhfs}pn5ED"5yF\tZP'dM}CȖYigl6*nBDas>B6q ]Ģi+Q*x% W -T%2QTGQUl,>"nRNJPKZ }pZuۈS 7+\a[畦ALq,b%p>@20̜?Y~&YG,8Xoͭ}.b`0vG7+RImb 1c,b͜9"(Us#ł5YSԕwF/{$덳u-5.TuuY1YHp⃩ %ѥq,NWRep hnc.٪VvyfVKſɯ82nwڷ3G."E0GJJny@(( `DeNCr]!QWB !륾V2if}8cPC*E7|ǵ ${۝})pduJteju-6-L2-@h-YF * ->fQlyvo^[9 {WOǾ\{{.$Zs3K:3UiaCr䦸2q҂M|H1fikĺycLۍk, q)h* X8Gi8%ZjUYdDMs JO|d^u?͖тWW=C)-<}zKٳkhº3u<2?<}<=:cVv)1-LgG o@ mp\讋87C[.Z-oi.TDq6*d-p2yќ7y8]xҦŞKB@f%xT}ֺf%{<x -LyBG.L2[XYiŤBM_E{&d\0,vM@.u-:Zp–j-kA|XZ,%Hy^Q,_9npenm.t`Bv>xt桅C1lPNetmb}ZdBs*Zضny2] ?x[hӭl}]Fuظ"^ -;˨N] uNxSnEU`:8N]![)'Z҂`@c;,i!DGCh!N(DRÂM,Tǣr]a$"n%|aEIhkp]pȴa0~@ 7iN0N?^x/21ّE0hgЂ›]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~pj'G+Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC]{ -p:T5|O lm>BOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|ئ񇾅wHp?1T7:ZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇpp<9e/E &W!d|d#i r| e+[ -Y'[)ʧʗ*pZU~j8<vE1.di)ږ#Z̮IBDGPXiTL11x"]>V14k#+sYp;37̽wn~z~Nƙe, aYl,s17zgv>fU<;><''y |y3w(?ǿWm)\-iUzJ!RHj~'m>H2r&gy\./_˭O|SaJ2@LQ^Rf+s*e{rV\rITFդU5KV 5S?U H83(ڋD*Q~U]@ҋj$$U"ioG(j6E<*zRJ cc{ "L4 g(1D1PA FH]I1ȏJa1h7*MBQfI$HAH>j!JA"zO?#: $p;pľ%zPTzx\$e_2=%>xbY~uiϽͶQ+c=1Y6ɦ'x^^}jTX8§߫ -f]5wt手eEt{m!W B:S^kq*1~Y~k\ki=z(dx75o>7j]p1uU˲ S֋eLJ_ueA~C^IbuYhޢ6kՉUޚmP~Eg|Y}Ɩ3c1>39R\iv9caф,52]ѷYݺ/n`_<~iZUt$qe39*NYWnVҧwA3ibeܗqs]Kdř\1N65̾myԮ r0qFE33ݖ8}I<ؓۯ,̴&xwYtyrcyN##uNE/|EC,aO`|?' #!A>[Yx /@f^Ux bV[ Vvn8ag<\uhψhҗđxDRI:JLb'd,@&ɤL#Lf -jԒ%߁4ߐ&k1@| {Ar|BN0/D|M fML1t:fR;ͣ1gt":N31w,1K2ѳ Gt݅az~DOEz^_ޢ4ccp3#YX,,%@ zfPE`TȒ( -ŨĘ^J`TcdݦRLuT1J2W~A`ݱ+0~I1*p%zf#ʃ˺k"."Fa!7+bTR*%]9J*z=(LW=,QxC1ϯYjFMuln%ڣ_xN+|RKR}<)gSNO{6؎ƉNўcOb|.? T|Ͱ)EV3#!łP6F;\W溽HmT7NLz89gsީ\:ׅeA2:Suc N]pc-. -3SΟs9<+.\[\^oW+x^#ö= :"KCwy,`I<]bbspW8z&<5&nDTc/>%@.B-n~'j-\[l8Of棎 %01 "ח8IVqePޅwv:Πð: RI> KO69II&M&^ePaAIDA\|D|^}aD~s¯9;9'N1^ʹ/0ݐwn1 < o]_/@!=?cr2)#|ļC S?|m~:'[ (9}y&ڗ 0{壀י=Q2a틻 c p<=޿w` o_ʮF0@ -f .sn.<4v؍!?g_ /#׆zUx%5C?Evدw x8[;\y{{E7^OKӽo\e^ʁB{;\jЙ?@~ ,_gP2uw?zs_a@x~{jsp4)4}=.|7LC5ߗ./}NDG`L1ܟ q6)jӡ_^M `M ,"_VpX[mD =ñ(ۄH%q9'iCFX$te K[ ɘ,1YJD+뀝" E1$QedkSQߒלL\CnQ#׳Kk\梷%i7JS$$i [ᑫzHwԛDóX*Cvar"5p4Xc`% .cx,YSŒ;<6 QaO3aHn}~8i%_ ]W[)O9kF{cV3E-q ONFZ$V7 Ԥ~;FcȝMLU_QoLL^0ag^ j=ad3,]cj=4EIzb'q -Van*ԕ@Y>>ǝZuJq\OF$V[u/ic)*׊ʩ,*A[L=F3:rxqt<+T! 5 -VW86ޤ; -\9=vM:&F&LZo0kCt÷ -nn]\6(Agze:lM3Y,yn$fR''zt)oUA˥飾r>6\UQESo53̈́FD^,a.YX1+FHҵOXNG,8⼎.0e07ʭeQϕ F$8"jsqɕc Mwrxtc;iE>Fo4VeTD'M)N1'#C3ZwYJĆ UQaō24C[LT]Tk4KVJ,#|p#lPbX7D7-*P^?ƑR/¸m&FI6ݎ:- -4xu>x~ӝ|??oe}?; eՕZeA,Q4dA\PQq4%ࠃwMTD1S -1" -*Q1k;`ܢ`eVjj&o9}뒡=]خ!=X-SR)xJG'_A+>;R<<Ϊ:r$0˖Vl u;5gLVʘp? K7΋+sAp*҂Gusz=dd߂k*6gy[Y˒ -GM2 /'o9Up.rᦡK>Iه|.zow.ׇ|j gT)/q\ [?-Lg-.WmUbUQ33ˎ7hudm8<6∖y5_?9ݤNO*~( ,xЯhP.ӵÒCzf8`f\7 -kHvٕI#%Mk[>?n^ NVGV8}|̄m7NHIqb1j>%.|Cӗ.jJT/.2DJR dP2RWW{}@(JXiiS _r%D,T-hC9W}s,[ZES)_Yh{FZ*g+tfE$\ QP@ $3h_/s'|>?lyݥ?rL"݁  :O*=x-x>$7.2pؾa-z eys`xN1> O'PCׂ`5x< J:H\ʶ˗-"UcO9#VTWw%<"3mW4X3O<'}H%J(C]Ki/lK{(cM% {Dz7)w;ԛطm[+>DO&cp04p( -L`C &`h5߆/Vtxr4<}8/%O}?tӕu%: c0{>x"Pζ֨ღ|irr >$dgi4A%Z"`THTw'iu^:?/ZNLv/OWu%I -Orf1"<Go'1%#*F0)+gJ77==7_OA5Ae>ˆ}FOrtR< \2|! -Q02Ynn -դQWق:[fUV6*IW>ml A[ZNn/Exr"-4Ru(Ӵɔ;s*c{x- v [Drh*V%Yŕ6'֢.٢%֓,ZzހAq!y:#4 |H䷞oyd -9&5zƃV⫭ ->ZI} 1\7>ꙠBⳋ -ꗦ/?QmFo[_H -endstream -endobj -71 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 46 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 71 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 72 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 73 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 60 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 556 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 0 611 611 278 0 0 278 889 611 611 -0 0 389 556 333 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 61 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 0 722 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 62 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 371 0 0 0 0 0 333 333 0 606 250 333 250 606 -500 500 500 500 0 500 500 0 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 763 0 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 0 667 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 63 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [600 0 0 600 0 0 0 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 600 600 600 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 0 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 0 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 64 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 46 -/LastChar 146 -/Widths [600 0 600 600 600 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 600 600 600 600 600 600 600 600 600 0 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 65 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 90 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 66 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 58 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 833 0 0 0 0 0 0 0 0 1000 0 0 -0 0 0 0 0 0 0 500 0 0 0 500 0 556 0 333 -0 0 0 0 611 556 0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 67 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 97 -/LastChar 108 -/Widths [444 0 0 0 0 0 0 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 68 0 R ->> -endobj -48 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBEMHB+Symbol -/Encoding /Identity-H -/DescendantFonts [ 74 0 R ] -/ToUnicode 75 0 R ->> -endobj -74 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBEMHB+Symbol -/FontDescriptor 69 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -47 [548] -64 [986] -] ->> -endobj -75 0 obj -<< -/Filter /FlateDecode -/Length 227 ->> -stream -HTPn -:@-'EYrKVMڝ"52 (U޳lvλ1ua!py$ӎ'gq uGNΉVx"Ar~I~~e_b }M-UśCkDFR~D)I43PݭVĎV4lղ:g{URv> -endobj -17 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 16 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -76 0 obj -<< -/S /D ->> -endobj -77 0 obj -<< -/Nums [0 76 0 R ] ->> -endobj -16 0 obj -<< -/Type /Pages -/Kids [1 0 R 17 0 R 20 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R 39 0 R 42 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [45 0 R 51 0 R 54 0 R 57 0 R] -/Count 4 -/Parent 49 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [16 0 R 50 0 R ] -/Count 14 -/MediaBox [0 0 612 792] ->> -endobj -78 0 obj -<< -/CreationDate (D:20210202102641-06'00') -/ModDate (D:20210202102641-06'00') -/Producer (Apple pstopdf) ->> -endobj -79 0 obj -<< -/Type /Catalog -/Pages 49 0 R -/PageLabels 77 0 R ->> -endobj -xref -0 80 -0000000000 65535 f -0000123792 00000 n -0000000016 00000 n -0000007706 00000 n -0000119238 00000 n -0000119469 00000 n -0000119820 00000 n -0000120031 00000 n -0000120451 00000 n -0000120761 00000 n -0000121310 00000 n -0000121850 00000 n -0000122284 00000 n -0000122629 00000 n -0000122940 00000 n -0000096096 00000 n -0000125033 00000 n -0000123873 00000 n -0000007920 00000 n -0000014563 00000 n -0000123957 00000 n -0000014742 00000 n -0000024616 00000 n -0000119645 00000 n -0000124041 00000 n -0000024816 00000 n -0000031470 00000 n -0000124125 00000 n -0000031648 00000 n -0000040043 00000 n -0000124209 00000 n -0000040221 00000 n -0000049501 00000 n -0000124293 00000 n -0000049690 00000 n -0000058403 00000 n -0000124377 00000 n -0000058594 00000 n -0000067419 00000 n -0000124461 00000 n -0000067608 00000 n -0000073915 00000 n -0000124545 00000 n -0000074104 00000 n -0000083309 00000 n -0000124629 00000 n -0000083498 00000 n -0000091662 00000 n -0000123137 00000 n -0000125265 00000 n -0000125170 00000 n -0000124713 00000 n -0000091864 00000 n -0000095304 00000 n -0000124797 00000 n -0000095506 00000 n -0000095627 00000 n -0000124881 00000 n -0000095724 00000 n -0000095977 00000 n -0000096237 00000 n -0000096434 00000 n -0000096640 00000 n -0000096835 00000 n -0000097035 00000 n -0000097226 00000 n -0000097428 00000 n -0000097629 00000 n -0000097834 00000 n -0000098037 00000 n -0000098227 00000 n -0000118608 00000 n -0000118816 00000 n -0000119026 00000 n -0000123280 00000 n -0000123492 00000 n -0000124965 00000 n -0000124993 00000 n -0000125357 00000 n -0000125480 00000 n -trailer -<< -/Size 80 -/Root 79 0 R -/Info 78 0 R -/ID [] ->> -startxref -125550 -%%EOF diff --git a/docs/medley-irm/08-RECORDPACKAGE.pdf b/docs/medley-irm/08-RECORDPACKAGE.pdf deleted file mode 100644 index 1f981a84..00000000 --- a/docs/medley-irm/08-RECORDPACKAGE.pdf +++ /dev/null @@ -1,8883 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 9690 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-1)Tj -/TT4 1 Tf -10 0 0 10 333.9 568.2 Tm -(RECORDS AND DATA STRUCTURES)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 555.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 531.54 Tm -0.0511 Tw -[(Hiding the details of your code makes it more readable, and lets you program more efficiently. Data)]TJ -0 -1.2222 TD -0.1333 Tw -[(structures are a good example: Youre better off if you can say Fetch me the )]TJ -/TT10 1 Tf -6 0 0 6 405.5423 520.54 Tm -0 Tw -(SPEED)Tj -/TT8 1 Tf -9 0 0 9 423.5452 520.54 Tm -0.1333 Tw -[( field from this)]TJ -/TT10 1 Tf -6 0 0 6 78 509.54 Tm -0 Tw -(AIRPLANE)Tj -/TT8 1 Tf -9 0 0 9 106.8047 509.54 Tm -0.0178 Tw -( rather than having to say )Tj -/TT10 1 Tf -6 0 0 6 216.626 509.54 Tm -0.0417 Tw -(\(CAR \(CDDDR \(CADR AIRPLANE\)\)\))Tj -/TT8 1 Tf -9 0 0 9 321.793 509.54 Tm -0.0178 Tw -(. You can declare data structures used by)Tj --27.0881 -1.2222 TD -0.01 Tw -[(your programs, then work with field names rather than access details. Using the declarations, Medley)]TJ -T* -0.1778 Tw -[(performs the access/storage operations you request. If you change a data structures declaration,)]TJ -T* -0 Tw -(your programs automatically adjust.)Tj -0 -2 TD -0.0355 Tw -(You describe the format of a data structure \(record\) by making a record declaration \(see the Record)Tj -0 -1.2222 TD -0.0744 Tw -[(Declarations section below\). The record declaration is a description of the record, associating names)]TJ -T* -0 Tw -(with its various parts, or fields. For example, the record declaration)Tj -/TT10 1 Tf -6 0 0 6 114 422.14 Tm -(\(RECORD MSG)Tj -/TT12 1 Tf -9 0 0 9 153.6064 422.14 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 159.0073 422.14 Tm -(\(FROM TO TEXT\)\))Tj -/TT8 1 Tf -9 0 0 9 78 405.54 Tm -0.0044 Tw -(describes a data structure called )Tj -/TT10 1 Tf -6 0 0 6 207.7771 405.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 218.5789 405.54 Tm -0.0044 Tw -(, that has three fields: )Tj -/TT10 1 Tf -6 0 0 6 305.9005 405.54 Tm -0 Tw -(FROM)Tj -/TT8 1 Tf -9 0 0 9 320.3028 405.54 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 324.8428 405.54 Tm -(TO)Tj -/TT8 1 Tf -9 0 0 9 332.044 405.54 Tm -0.0044 Tw -(, and )Tj -/TT10 1 Tf -6 0 0 6 354.1098 405.54 Tm -0 Tw -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 368.5122 405.54 Tm -0.0001 Tc -0.0043 Tw -(. You can refer to these fields)Tj --32.2791 -1.2222 TD -0 Tc -0 Tw -(by name, to get their values or to store new values into them, by using )Tj -/TT10 1 Tf -6 0 0 6 359.6279 394.54 Tm -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 377.6309 394.54 Tm -( and )Tj -/TT10 1 Tf -6 0 0 6 397.3667 394.54 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 422.5708 394.54 Tm -(:)Tj -/TT10 1 Tf -6 0 0 6 114 382.09 Tm -(\(fetch \(MSG FROM\)of MYMSG\))Tj -0 -1 TD -(\(replace \(MSG TO\) of MYMSG with John Doe\))Tj -/TT8 1 Tf -9 0 0 9 78 360.54 Tm -( You create new )Tj -/TT10 1 Tf -6 0 0 6 144.0059 360.54 Tm -(MSG)Tj -/TT8 1 Tf -9 0 0 9 154.8076 360.54 Tm -(s with )Tj -/TT10 1 Tf -6 0 0 6 181.4209 360.54 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 203.0244 360.54 Tm -(:)Tj -/TT10 1 Tf -6 0 0 6 114 348.09 Tm -(\(SETQ MYMSG \(create MSG\)\))Tj -/TT8 1 Tf -9 0 0 9 78 332.54 Tm -( and )Tj -/TT10 1 Tf -6 0 0 6 97.7358 332.54 Tm -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 115.7388 332.54 Tm -( tells you whether some object is a )Tj -/TT10 1 Tf -6 0 0 6 253.6348 332.54 Tm -(MSG)Tj -/TT8 1 Tf -9 0 0 9 264.4365 332.54 Tm -(:)Tj -/TT10 1 Tf -6 0 0 6 114 320.09 Tm -(\(IF \(TYPE? MSG THIS-THING\) then \(SEND-MSG THIS-THING\)\))Tj -/TT8 1 Tf -9 0 0 9 78 304.54 Tm -0.0044 Tw -(So far weve said nothing about )Tj -/TT14 1 Tf -14.2796 0 TD -0 Tw -(how)Tj -/TT8 1 Tf -1.666 0 TD -0.0007 Tc -0.0037 Tw -( your )Tj -/TT10 1 Tf -6 0 0 6 244.9914 304.54 Tm -0 Tc -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 255.7931 304.54 Tm -0.0001 Tc -0.0043 Tw -( is representedwhen youre writing)Tj -/TT10 1 Tf -6 0 0 6 405.1211 304.54 Tm -0 Tc -0.01 Tw -[( FETCH)]TJ -/TT8 1 Tf -9 0 0 9 426.7846 304.54 Tm -0.0044 Tw -(es and )Tj -/TT10 1 Tf -6 0 0 6 454.726 304.54 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 479.9301 304.54 Tm -(s,)Tj --44.6589 -1.2222 TD -0.0611 Tw -[(it doesnt matter. But you )]TJ -/TT14 1 Tf -12.1338 0 TD -0 Tw -(can)Tj -/TT8 1 Tf -1.4072 0 TD -0.0611 Tw -[( control the representation: The symbol )]TJ -/TT10 1 Tf -6 0 0 6 364.3609 293.54 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 385.9644 293.54 Tm -0.0611 Tw -[( in the declaration above)]TJ --34.2183 -1.2222 TD -0.0489 Tw -(causes each )Tj -/TT10 1 Tf -6 0 0 6 127.2858 282.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 138.0875 282.54 Tm -0.0489 Tw -[( to be represented as a list. There are a number of options, up to creating a completely)]TJ --6.6764 -1.2222 TD -0 Tw -(new Lisp data type; each has its own specifier symbol, and theyre described in detail below.)Tj -0 -2 TD -0.0467 Tw -(The record package is implemented using DWIM and CLISP, so it will do spelling correction on field)Tj -0 -1.2222 TD -0.22 Tw -[(names, record types, etc. Record operations are translated using all CLISP declarations in effect)]TJ -T* -0 Tw -(\(standard/fast/undoable\).)Tj -0 -2 TD -0.0411 Tw -(The file managers )Tj -/TT10 1 Tf -6 0 0 6 154.841 213.54 Tm -0 Tw -(RECORDS)Tj -/TT8 1 Tf -9 0 0 9 180.045 213.54 Tm -0.0411 Tw -[( command lets you give record declarations \(see Chapter 17\), and )]TJ -/TT10 1 Tf -6 0 0 6 446.5169 213.54 Tm -0 Tw -(FILES?)Tj -/TT8 1 Tf -9 0 0 9 468.1204 213.54 Tm -0.0411 Tw -[( and)]TJ -/TT10 1 Tf -6 0 0 6 78 202.54 Tm -0 Tw -(CLEANUP)Tj -/TT8 1 Tf -9 0 0 9 103.2041 202.54 Tm -( will tell you about record declarations that need to be dumped.)Tj -/TT4 1 Tf -10 0 0 10 54 180.2 Tm -(FETCH and REPLACE)Tj -ET -1 w -54.01 177.49 m -510.01 177.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 163.54 Tm -0.0122 Tw -(The fields of a record are accessed and changed with )Tj -/TT10 1 Tf -6 0 0 6 290.6835 163.54 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 308.6864 163.54 Tm -0.0122 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 328.6423 163.54 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 353.8464 163.54 Tm -0.0122 Tw -[(. If )]TJ -/TT10 1 Tf -6 0 0 6 369.2057 163.54 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 372.8063 163.54 Tm -0.0122 Tw -[( is a )]TJ -/TT10 1 Tf -6 0 0 6 390.8199 163.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 401.6216 163.54 Tm -0.0122 Tw -[( data structure, )]TJ -/TT10 1 Tf -6 0 0 6 464.3408 163.54 Tm -0 Tw -(\(fetch)Tj --64.3901 -1.8333 TD -0.0733 Tw -(FROM of X\) )Tj -/TT8 1 Tf -9 0 0 9 118.9264 152.54 Tm -0.0311 Tw -(will return the value of the )Tj -/TT10 1 Tf -6 0 0 6 229.314 152.54 Tm -0 Tw -(FROM)Tj -/TT8 1 Tf -9 0 0 9 243.7163 152.54 Tm -0.0311 Tw -[( field of )]TJ -/TT10 1 Tf -6 0 0 6 277.2604 152.54 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 280.861 152.54 Tm -0.0311 Tw -(, and )Tj -/TT10 1 Tf -6 0 0 6 303.4068 152.54 Tm -0.0733 Tw -(\(replace FROM of X with Y\))Tj -/TT8 1 Tf -9 0 0 9 399.2221 152.54 Tm -0.0311 Tw -[( will replace this field)]TJ --35.6913 -1.2222 TD -(with the value of )Tj -/TT10 1 Tf -6 0 0 6 148.7557 141.54 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 152.3563 141.54 Tm -0.0311 Tw -[(. In general, the value of a )]TJ -/TT10 1 Tf -6 0 0 6 261.7438 141.54 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 286.9479 141.54 Tm -0.0311 Tw -[( operation is the same as the value stored into the)]TJ --23.2164 -1.2222 TD -0 Tw -(field.)Tj -0 -2 TD -0.0733 Tw -(Note that )Tj -/TT10 1 Tf -6 0 0 6 119.0685 112.54 Tm -0.175 Tw -(\(fetch FROM of X\))Tj -/TT8 1 Tf -9 0 0 9 183.4285 112.54 Tm -0.0733 Tw -[( assumes that )]TJ -/TT10 1 Tf -6 0 0 6 241.3948 112.54 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 244.9954 112.54 Tm -0.0733 Tw -[( is an instance of the record )]TJ -/TT10 1 Tf -6 0 0 6 360.4103 112.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 371.2121 112.54 Tm -0.0733 Tw -(the interpretation of )Tj -/TT10 1 Tf -6 0 0 6 464.4138 112.54 Tm -0 Tw -(\(fetch)Tj --64.4023 -1.8333 TD -(FROM of X\))Tj -/TT8 1 Tf -9 0 0 9 114.0059 101.54 Tm -( never depends on the )Tj -/TT14 1 Tf -10.0518 0 TD -(value)Tj -/TT8 1 Tf -2.167 0 TD -( of )Tj -/TT10 1 Tf -6 0 0 6 236.3848 101.54 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 239.9854 101.54 Tm -(. If )Tj -/TT10 1 Tf -6 0 0 6 255.0146 101.54 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 258.6152 101.54 Tm -( is not a )Tj -/TT10 1 Tf -6 0 0 6 291.6357 101.54 Tm -(MSG)Tj -/TT8 1 Tf -9 0 0 9 302.4375 101.54 Tm -(, this may produce incorrect results.)Tj --24.9375 -2 TD -0.0378 Tw -(If there is another record declaration, )Tj -/TT10 1 Tf -6 0 0 6 229.8056 83.54 Tm -0.0917 Tw -(\(RECORD REPLY \(TEXT RESPONSE\)\))Tj -/TT8 1 Tf -9 0 0 9 339.4732 83.54 Tm -0.0378 Tw -(, then )Tj -/TT10 1 Tf -6 0 0 6 364.6263 83.54 Tm -0.0917 Tw -(\(fetch TEXT of X\))Tj -/TT8 1 Tf -9 0 0 9 427.4863 83.54 Tm -0.0378 Tw -[( is ambiguous,)]TJ --38.8318 -1.2222 TD -0 Tw -(because )Tj -/TT10 1 Tf -6 0 0 6 111.9874 72.54 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 115.588 72.54 Tm -0.0444 Tw -[( could be either a )]TJ -/TT10 1 Tf -6 0 0 6 188.0499 72.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 198.8516 72.54 Tm -0.0444 Tw -[( or a )]TJ -/TT10 1 Tf -6 0 0 6 219.7699 72.54 Tm -0 Tw -(REPLY)Tj -/TT8 1 Tf -9 0 0 9 237.7728 72.54 Tm -0.0444 Tw -[( record. In this case, an error will occur, )]TJ -/TT10 1 Tf -6 0 0 6 403.2235 72.54 Tm -0.1067 Tw -(Ambiguous record field)Tj -/TT8 1 Tf -9 0 0 9 483.7164 72.54 Tm -0 Tw -(.)Tj --45.0796 -1.2222 TD -0.0567 Tw -(To clarify this, give )Tj -/TT10 1 Tf -6 0 0 6 158.6362 61.54 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 176.6391 61.54 Tm -0.0567 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 197.395 61.54 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 222.5991 61.54 Tm -0.0567 Tw -[( a list for their field argument: )]TJ -/TT10 1 Tf -6 0 0 6 359.5038 61.54 Tm -0.1367 Tw -(\(fetch \(MSG TEXT\) of X\))Tj -/TT8 1 Tf -9 0 0 9 445.5972 61.54 Tm -0.0567 Tw -[( will fetch)]TJ --40.8441 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -6 0 0 6 92.7449 50.54 Tm -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 107.1472 50.54 Tm -0.0001 Tc -0.001 Tw -( field of a )Tj -/TT10 1 Tf -6 0 0 6 146.6413 50.54 Tm -0 Tc -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 157.4431 50.54 Tm -0.0001 Tc -0.001 Tw -( record. If a field has an )Tj -/TT14 1 Tf -10.8912 0 TD -0 Tc -0 Tw -(identical)Tj -/TT8 1 Tf -3.4629 0 TD -0.0011 Tw -( interpretation in two declarations, e.g., if the field)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 8690 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -6 0 0 6 126 569.54 Tm -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 140.4023 569.54 Tm -0.0322 Tw -[( occurred in the same location within the declarations of )]TJ -/TT10 1 Tf -6 0 0 6 368.7462 569.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 379.5479 569.54 Tm -0.0322 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 399.8638 569.54 Tm -0 Tw -(REPLY)Tj -/TT8 1 Tf -9 0 0 9 417.8667 569.54 Tm -0.0322 Tw -(, then )Tj -/TT10 1 Tf -6 0 0 6 442.9199 569.54 Tm -0.0767 Tw -(\(fetch TEXT of X\))Tj -/TT8 1 Tf -9 0 0 9 505.5098 569.54 Tm -0.0322 Tw -[( would)]TJ -/TT14 1 Tf --42.1678 -1.2222 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -( be ambiguous.)Tj --1.333 -2 TD -0.1744 Tw -(If theres a conflict, user record declarations take precedence over system record declarations.)Tj -0 -1.2222 TD -0.2178 Tw -(System records are declared by including )Tj -/TT10 1 Tf -6 0 0 6 304.5324 529.54 Tm -0 Tw -(\(SYSTEM\))Tj -/TT8 1 Tf -9 0 0 9 333.3371 529.54 Tm -0.2178 Tw -[( in the declaration \(see the Record Declarations)]TJ --23.0375 -1.2222 TD -0 Tw -(section below\). All of the records defined in the standard Medley system are system records.)Tj -0 -2 TD -0.03 Tw -[(Another complication can occur if the fields of a record are themselves records. The fields of a record)]TJ -0 -1.2222 TD -0.0733 Tw -[(can be further broken down into sub-fields by a subdeclaration within the record declaration. For)]TJ -T* -0 Tw -(example,)Tj -/TT10 1 Tf -6 0 0 6 214.8 466.09 Tm -(\(RECORD NODE \(POSITION . LABEL\) \(RECORD POSITION \(XLOC . YLOC\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 450.54 Tm -(lets you access the )Tj -/TT10 1 Tf -6 0 0 6 200.9399 450.54 Tm -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 229.7446 450.54 Tm -( field with )Tj -/TT10 1 Tf -6 0 0 6 272.8374 450.54 Tm -(\(fetch POSITION of X\))Tj -/TT8 1 Tf -9 0 0 9 348.4497 450.54 Tm -(, or its subfield )Tj -/TT10 1 Tf -6 0 0 6 409.8018 450.54 Tm -(XLOC)Tj -/TT8 1 Tf -9 0 0 9 424.2041 450.54 Tm -( with )Tj -/TT10 1 Tf -6 0 0 6 447.0029 450.54 Tm -(\(fetch XLOC of X\))Tj -/TT8 1 Tf -9 0 0 9 508.2129 450.54 Tm -(.)Tj --42.4681 -2 TD -0.0167 Tw -(You may also declare that field name in a )Tj -/TT14 1 Tf -18.6705 0 TD -0 Tw -(separate)Tj -/TT8 1 Tf -3.2773 0 TD -0.0167 Tw -[( record declaration. For instance, the )]TJ -/TT10 1 Tf -6 0 0 6 473.9508 432.54 Tm -0 Tw -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 488.3531 432.54 Tm -0.0167 Tw -[( field in the)]TJ -/TT10 1 Tf -6 0 0 6 126 421.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 136.8017 421.54 Tm -0.0189 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 156.8776 421.54 Tm -0 Tw -(REPLY)Tj -/TT8 1 Tf -9 0 0 9 174.8805 421.54 Tm -0.0189 Tw -[( records above may be subdivided with the seperate record declaration )]TJ -/TT10 1 Tf -6 0 0 6 461.459 421.54 Tm -0.045 Tw -(\(RECORD TEXT \(HEADER)Tj --55.9098 -1.8333 TD -0 Tw -(TXT\)\))Tj -/TT8 1 Tf -9 0 0 9 144.0029 410.54 Tm -0.0678 Tw -[(. You get to fields of subfields \(to any level of nesting\) by specifying the data path as a list of)]TJ --2.0003 -1.2222 TD -0 Tw -(record/field names, where there is some path from each record to the next in the list. For instance,)Tj -/TT10 1 Tf -6 0 0 6 138 387.09 Tm -(\(fetch \(MSG TEXT HEADER\) of X\))Tj -/TT8 1 Tf -9 0 0 9 126 371.54 Tm -(treats )Tj -/TT10 1 Tf -6 0 0 6 150.7517 371.54 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 154.3523 371.54 Tm -0.05 Tw -[( as a )]TJ -/TT10 1 Tf -6 0 0 6 175.2668 371.54 Tm -0 Tw -(MSG)Tj -/TT8 1 Tf -9 0 0 9 186.0685 371.54 Tm -0.05 Tw -[( record, fetches its )]TJ -/TT10 1 Tf -6 0 0 6 261.9164 371.54 Tm -0 Tw -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 276.3187 371.54 Tm -0.05 Tw -[( field, and fetches )]TJ -/TT14 1 Tf -8.2146 0 TD -0 Tw -(its)Tj -/TT8 1 Tf -1 0 TD -( )Tj -/TT10 1 Tf -6 0 0 6 361.9506 371.54 Tm -(HEADER)Tj -/TT8 1 Tf -9 0 0 9 383.5541 371.54 Tm -0.05 Tw -[( field. You only need to give enough)]TJ --28.6171 -1.2222 TD -0.0156 Tw -[(of the data path to disambiguate it. In this case, )]TJ -/TT10 1 Tf -6 0 0 6 319.7568 360.54 Tm -0 Tw -(\(fetch)Tj -/TT12 1 Tf -9 0 0 9 341.3603 360.54 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 347.1012 360.54 Tm -0.0383 Tw -(\(MSG HEADER\) of X\))Tj -/TT8 1 Tf -9 0 0 9 412.6017 360.54 Tm -0.0156 Tw -[( is sufficient: Medley searches)]TJ --31.8446 -1.2889 TD -0.1156 Tw -(among all current record declarations for a path from each name to the next, considering first local)Tj -0 -1.2222 TD -0.1567 Tw -[(declarations \(see Chapter 21\) and then global ones. Of course, if you had two records with )]TJ -/TT10 1 Tf -6 0 0 6 512.4309 337.94 Tm -0 Tw -(HEADER)Tj -/TT8 1 Tf -9 0 0 9 126 326.94 Tm -(fields, you get an )Tj -/TT10 1 Tf -6 0 0 6 196.4443 326.94 Tm -(Ambiguous data path)Tj -/TT8 1 Tf -9 0 0 9 264.8555 326.94 Tm -( error.)Tj -/TT10 1 Tf -6 0 0 6 126 308.94 Tm -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 144.0029 308.94 Tm -0.1722 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 166.8388 308.94 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 192.0428 308.94 Tm -0.1722 Tw -[( are translated using the CLISP declarations in effect \(see Chapter 21\). )]TJ -/TT10 1 Tf -6 0 0 6 493.2891 308.94 Tm -0 Tw -(FFETCH)Tj -/TT8 1 Tf -9 0 0 9 514.8926 308.94 Tm -0.1722 Tw -[( and)]TJ -/TT10 1 Tf -6 0 0 6 126 297.94 Tm -0 Tw -(FREPLACE)Tj -/TT8 1 Tf -9 0 0 9 154.8047 297.94 Tm -( are fast versions that dont do any type checking. )Tj -/TT10 1 Tf -6 0 0 6 356.6851 297.94 Tm -(/REPLACE)Tj -/TT8 1 Tf -9 0 0 9 385.4897 297.94 Tm -( insures undoable declarations.)Tj -/TT4 1 Tf -10 0 0 10 102 275.6 Tm -(Record Declarations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 272.89 m -558.01 272.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 258.94 Tm -(You define records by evaluating declarations of the form:)Tj -/TT10 1 Tf -6 0 0 6 138 244.54 Tm -(\()Tj -/TT16 1 Tf -9 0 0 9 141.6006 244.54 Tm -(RECORD-TYPE)Tj -/TT10 1 Tf -6 0 0 6 201.0102 244.54 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 204.6108 244.54 Tm -(RECORD-NAME)Tj -/TT10 1 Tf -6 0 0 6 264.0205 244.54 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 267.6211 244.54 Tm -(RECORD-FIELDS)Tj -/TT10 1 Tf -6 0 0 6 337.8325 244.54 Tm -( . )Tj -/TT16 1 Tf -9 0 0 9 348.6343 244.54 Tm -(RECORD-TAIL)Tj -/TT10 1 Tf -6 0 0 6 408.0439 244.54 Tm -(\))Tj -/TT16 1 Tf -9 0 0 9 126 227.94 Tm -(RECORD-TYPE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0189 Tw -[( specifies the type of data youre declaring, and controls how instances will be stored)]TJ --6.6011 -1.2889 TD -0 Tw -(internally. The different record types are described below.)Tj -/TT16 1 Tf -0 -2 TD -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.1278 Tw -[( is a symbol used to identify the record declaration for )]TJ -/TT10 1 Tf -6 0 0 6 415.6021 198.34 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 437.2056 198.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 442.8557 198.34 Tm -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 460.8586 198.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 466.5086 198.34 Tm -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 484.5115 198.34 Tm -0.1278 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 506.5474 198.34 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 531.7515 198.34 Tm -(,)Tj --45.0835 -1.2889 TD -0.0778 Tw -(and dumping to files \(see Chapter 17\). )Tj -/TT10 1 Tf -6 0 0 6 288.1991 186.74 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 317.0038 186.74 Tm -0.0778 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 338.1396 186.74 Tm -0 Tw -(TYPERECORD)Tj -/TT8 1 Tf -9 0 0 9 374.1455 186.74 Tm -0.0778 Tw -[( declarations also use )]TJ -/TT16 1 Tf -9.9664 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0778 Tw -[( to)]TJ --44.1392 -1.2889 TD -0 Tw -(identify the data structure \(as described below\).)Tj -/TT16 1 Tf -0 -2 TD -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0467 Tw -[( describes the structure of the record. Its exact interpretation varies with )]TJ -/TT10 1 Tf -6 0 0 6 492.1588 157.14 Tm -0 Tw -(RECORD-TYPE)Tj -/TT8 1 Tf -9 0 0 9 531.7652 157.14 Tm -(.)Tj --45.085 -1.2889 TD -(Generally, it names the fields within the record that can be accessed with )Tj -/TT10 1 Tf -6 0 0 6 417.8716 145.54 Tm -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 435.8745 145.54 Tm -( and )Tj -/TT10 1 Tf -6 0 0 6 455.6104 145.54 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 480.8145 145.54 Tm -(.)Tj -/TT16 1 Tf --39.4238 -2 TD -(RECORD-TAIL)Tj -/TT8 1 Tf -6.6011 0 TD -0.0522 Tw -[( is an optional list where you can specify default values for record fields, special )]TJ -/TT10 1 Tf -6 0 0 6 512.3815 127.54 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 126 115.94 Tm -(and )Tj -/TT10 1 Tf -6 0 0 6 143.4858 115.94 Tm -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 161.4888 115.94 Tm -( forms, and subdeclarations \(described below\).)Tj --3.9432 -2 TD -0.2956 Tw -(Record declarations are Lisp programs, and could be included in functions, changing a record)Tj -0 -1.2222 TD -0.0567 Tw -(declaration at run-time. )Tj -/TT14 1 Tf -11.1598 0 TD -(Dont do it.)Tj -/TT8 1 Tf -4.8067 0 TD -[( You risk creating a structure with one declaration, and trying to)]TJ --15.9665 -1.2222 TD -0.2789 Tw -[(fetch from it with anothercomplete chaos results. If you need to change record declarations)]TJ -T* -0 Tw -(dynamically, consider using association lists or property lists. )Tj -/TT4 1 Tf -10 0 0 10 126 42.6 Tm -(Record Types)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -18 0 obj -<< -/Length 7403 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-3)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(The )Tj -/TT16 1 Tf -1.9283 0 TD -(RECORD-TYPE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0001 Tc -0.0043 Tw -( field of the record declaration specifies how the data object is created, and how the)Tj --8.5293 -1.2889 TD -0 Tc -0.0233 Tw -[(various record fields are accessed. Depending on the record type, the record fields may be stored in a)]TJ -0 -1.2222 TD -0 Tw -(list, or in an array, or on a symbols property list. The following record types are defined:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(RECORD)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -32.7578 0 TD -([Record Type])Tj --33.6911 -1.8444 TD -0.04 Tw -(The fields of a )Tj -/TT10 1 Tf -6 0 0 6 185.773 509.34 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 207.3765 509.34 Tm -0.04 Tw -[( are kept in a list. )]TJ -/TT16 1 Tf -8.3215 0 TD -0 Tw -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.04 Tw -[( is a list; each non-)]TJ -/TT10 1 Tf -6 0 0 6 427.134 509.34 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 437.9358 509.34 Tm -0.04 Tw -[( symbol is a)]TJ --34.6595 -1.2889 TD -0.0544 Tw -[(field-name to be associated with the corresponding element or tail of a list structure. For)]TJ -0 -1.2222 TD -0.0089 Tw -(example, with the declaration )Tj -/TT10 1 Tf -6 0 0 6 246.7785 486.74 Tm -0.0217 Tw -(\(RECORD MSG \(FROM TO . TEXT\)\))Tj -/TT8 1 Tf -9 0 0 9 351.8455 486.74 Tm -0 Tw -(, )Tj -/TT10 1 Tf -6 0 0 6 356.4255 486.74 Tm -0.0217 Tw -(\(fetch FROM of X\))Tj -/TT8 1 Tf -9 0 0 9 418.0255 486.74 Tm -0.0089 Tw -[( translates as )]TJ -/TT10 1 Tf -6 0 0 6 471.5535 486.74 Tm -0 Tw -(\(CAR)Tj --57.5923 -1.8333 TD -(X\))Tj -/TT8 1 Tf -9 0 0 9 133.2012 475.74 Tm -(. )Tj -/TT10 1 Tf -6 0 0 6 126 457.74 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 136.8017 457.74 Tm -0.1078 Tw -[( can be used as a place marker for an unnamed field, e.g., )]TJ -/TT10 1 Tf -6 0 0 6 378.9777 457.74 Tm -0.26 Tw -(\(A NIL B\))Tj -/TT8 1 Tf -9 0 0 9 414.5029 457.74 Tm -0.1078 Tw -[( describes a three)]TJ --32.0559 -1.2222 TD -0.0011 Tw -(element list, with )Tj -/TT10 1 Tf -6 0 0 6 196.9885 446.74 Tm -0 Tw -(B)Tj -/TT8 1 Tf -9 0 0 9 200.5891 446.74 Tm -0.0011 Tw -( corresponding to the third element. A number may be used to indicate)Tj --8.2877 -1.2222 TD -0 Tw -(a sequence of )Tj -/TT10 1 Tf -6 0 0 6 181.6084 435.74 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 192.4101 435.74 Tm -(s, e.g. )Tj -/TT10 1 Tf -6 0 0 6 216.791 435.74 Tm -(\(A 4 B\))Tj -/TT8 1 Tf -9 0 0 9 241.9951 435.74 Tm -( is interpreted as )Tj -/TT10 1 Tf -6 0 0 6 310.4224 435.74 Tm -(\(A NIL NIL NIL NIL B\))Tj -/TT8 1 Tf -9 0 0 9 386.0347 435.74 Tm -(.)Tj -/TT12 1 Tf --31.5594 -2.3333 TD -(DATATYPE)Tj -/TT8 1 Tf -4.8 0 TD -[( )-31057.8([Record Type])]TJ --2.1333 -1.8444 TD -0.06 Tw -(Defines a new user data type with type name )Tj -/TT16 1 Tf -20.7866 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.06 Tw -[(. Unlike other record types,)]TJ --27.3877 -1.2889 TD -0.1411 Tw -(the instances of a )Tj -/TT10 1 Tf -6 0 0 6 201.4408 386.54 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 230.2455 386.54 Tm -0.1411 Tw -[( are represented with a completely new Lisp type, and not in)]TJ --11.5828 -1.2222 TD -0 Tw -(terms of other existing types. )Tj -/TT16 1 Tf -0 -2 TD -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1433 Tw -[( is a list of field specifications, where each specification is either a list)]TJ -/TT10 1 Tf -6 0 0 6 126 345.94 Tm -0 Tw -(\()Tj -/TT16 1 Tf -9 0 0 9 129.6006 345.94 Tm -(FIELDNAME)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT16 1 Tf -1.1823 0 TD -(FIELDTYPE)Tj -/TT10 1 Tf -6 0 0 6 237.4573 345.94 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 241.0579 345.94 Tm -0.2422 Tw -(, or an symbol )Tj -/TT16 1 Tf -7.4948 0 TD -0 Tw -(FIELDNAME)Tj -/TT8 1 Tf -5.4009 0 TD -0.2422 Tw -[(. If )]TJ -/TT16 1 Tf -2.3966 0 TD -0 Tw -(FIELDTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.2422 Tw -[( is omitted, it)]TJ --33.4773 -1.2889 TD -0 Tw -(defaults to )Tj -/TT10 1 Tf -6 0 0 6 170.4507 334.34 Tm -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 195.6548 334.34 Tm -(. Possible values for )Tj -/TT16 1 Tf -9.2476 0 TD -(FIELDTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -( are:)Tj -/TT10 1 Tf -6 0 0 6 160.8 315.74 Tm -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 192 315.74 Tm -(Field contains a pointer to any arbitrary Interlisp object.)Tj -/TT10 1 Tf -6 0 0 6 160.8 297.74 Tm -(INTEGER)Tj -1.8 -1.5 TD -(FIXP)Tj -/TT8 1 Tf -9 0 0 9 192 288.74 Tm -0.0001 Tc -0.0032 Tw -(Field contains a signed integer. Caution: An )Tj -/TT10 1 Tf -6 0 0 6 373.54 288.74 Tm -0 Tc -0 Tw -(INTEGER)Tj -/TT8 1 Tf -9 0 0 9 398.7441 288.74 Tm -0.0001 Tc -0.0032 Tw -( field is not capable of)Tj --22.9716 -1.2222 TD -0 Tc -0 Tw -(holding everything that satisfies )Tj -/TT10 1 Tf -6 0 0 6 322.4692 277.74 Tm -(FIXP)Tj -/TT8 1 Tf -9 0 0 9 336.8716 277.74 Tm -(, such as bignums.)Tj -/TT10 1 Tf -6 0 0 6 157.2 259.74 Tm -(FLOATING)Tj -1.2 -1.5 TD -(FLOATP)Tj -/TT8 1 Tf -9 0 0 9 192 250.74 Tm -(Field contains a floating point number.)Tj -/TT10 1 Tf -6 0 0 6 150 232.74 Tm -(SIGNEDWORD)Tj -/TT8 1 Tf -9 0 0 9 192 232.74 Tm -(Field contains a 16-bit signed integer.)Tj -/TT10 1 Tf -6 0 0 6 171.6 214.74 Tm -(FLAG)Tj -/TT8 1 Tf -9 0 0 9 192 214.74 Tm -(Field is a one bit field that contains )Tj -/TT10 1 Tf -6 0 0 6 341.8887 214.74 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 345.4893 214.74 Tm -( or )Tj -/TT10 1 Tf -6 0 0 6 358.4575 214.74 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 369.2593 214.74 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 163.95 196.74 Tm -(BITS)Tj -/TT18 1 Tf -9 0 0 9 178.3523 196.74 Tm -( )Tj -/TT16 1 Tf -0.25 0 TD -(N)Tj -/TT8 1 Tf -1.2664 0 TD -(Field contains an )Tj -/TT16 1 Tf -7.7549 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(-bit unsigned integer.)Tj -/TT10 1 Tf -6 0 0 6 171.6 178.14 Tm -(BYTE)Tj -/TT8 1 Tf -9 0 0 9 192 178.14 Tm -(Equivalent to )Tj -/TT10 1 Tf -6 0 0 6 247.6216 178.14 Tm -(BITS)Tj -/TT8 1 Tf -9 0 0 9 262.0239 178.14 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 264.2739 178.14 Tm -(8)Tj -/TT8 1 Tf -9 0 0 9 267.8745 178.14 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 171.6 160.14 Tm -(WORD)Tj -/TT8 1 Tf -9 0 0 9 192 160.14 Tm -(Equivalent to )Tj -/TT10 1 Tf -6 0 0 6 247.6216 160.14 Tm -(BITS)Tj -/TT8 1 Tf -9 0 0 9 262.0239 160.14 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 264.2739 160.14 Tm -(16)Tj -/TT8 1 Tf -9 0 0 9 271.4751 160.14 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 157.2 142.14 Tm -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 192 142.14 Tm -0.0644 Tw -(Field contains a pointer like )Tj -/TT10 1 Tf -6 0 0 6 307.4923 142.14 Tm -0 Tw -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 332.6964 142.14 Tm -0.0644 Tw -(, but the field is )Tj -/TT14 1 Tf -7.4116 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0644 Tw -[( reference counted)]TJ --24.3775 -1.2222 TD -0.02 Tw -(by the garbage collector. )Tj -/TT10 1 Tf -6 0 0 6 294.5807 131.14 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 323.3853 131.14 Tm -0.02 Tw -[( fields are useful for implementing back-)]TJ --14.5984 -1.2222 TD -0.08 Tw -(pointers in structures that would be circular and not otherwise collected)Tj -T* -0 Tw -(by the reference-counting garbage collector.)Tj -/TT18 1 Tf -0 -2 TD -(Warning)Tj -/TT8 1 Tf -4 0 TD -0.2911 Tw -[(: Use )]TJ -/TT10 1 Tf -6 0 0 6 259.986 91.14 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 288.7906 91.14 Tm -0.2911 Tw -[( fields with great care. You can damage the)]TJ --10.7545 -1.2222 TD -0.0356 Tw -(integrity of the storage allocation system by using pointers to objects that)Tj -T* -0.01 Tw -[(have been garbage collected. Code that uses )]TJ -/TT10 1 Tf -6 0 0 6 372.074 69.14 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 400.8787 69.14 Tm -0.01 Tw -[( fields should be sure)]TJ --23.2087 -1.2222 TD -0.0878 Tw -[(that the objects pointed to have not been garbage collected. This can be)]TJ -T* -0.0167 Tw -[(done in two ways: The first is to maintain the object in a global structure,)]TJ -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT18 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -22 0 obj -<< -/Length 7668 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 240 569.54 Tm -0.2667 Tw -(so that it is never garbage collected until explicitly deleted from the)Tj -0 -1.2222 TD -0.2411 Tw -(structure, at which point the program must invalidate all the )Tj -/TT10 1 Tf -6 0 0 6 505.1922 558.54 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 240 547.54 Tm -0.0244 Tw -[(fields of other objects pointing at it. The second is to declare the object as)]TJ -T* -0 Tw -(a )Tj -/TT10 1 Tf -6 0 0 6 247.77 536.54 Tm -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 276.5747 536.54 Tm -0.1133 Tw -[( beginning with a )]TJ -/TT10 1 Tf -6 0 0 6 352.7074 536.54 Tm -0 Tw -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 377.9115 536.54 Tm -0.1133 Tw -[( field that the program maintains as a)]TJ --15.3235 -1.2222 TD -0.0244 Tw -(pointer to an object of another type \(e.g., the object containing the )Tj -/TT10 1 Tf -6 0 0 6 505.2835 525.54 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 240 514.54 Tm -0.0267 Tw -(pointing back at it\), and test that field for reasonableness whenever using)Tj -T* -0 Tw -(the contents of the )Tj -/TT10 1 Tf -6 0 0 6 315.2607 503.54 Tm -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 344.0654 503.54 Tm -( field.)Tj --18.8962 -2 TD -(For example, the declaration)Tj -/TT10 1 Tf -6 0 0 6 210 473.09 Tm -(\(DATATYPE FOO)Tj -3 -1 TD -(\(\(FLG BITS 12\) TEXT HEAD \(DATE BITS 18\))Tj --3 -1 TD -[( )-1199.7(\(PRIO FLOATP\) \(READ? FLAG\)\)\))]TJ -/TT8 1 Tf -9 0 0 9 174 445.54 Tm -0.0811 Tw -(would define a data type )Tj -/TT10 1 Tf -6 0 0 6 279.4317 445.54 Tm -0 Tw -(FOO)Tj -/TT8 1 Tf -9 0 0 9 290.2335 445.54 Tm -0.0811 Tw -[( with two pointer fields, a floating point number, and fields)]TJ --12.9148 -1.2222 TD -0.11 Tw -(for a )Tj -/TT10 1 Tf -6 0 0 6 196.4453 434.54 Tm -0 Tw -(12)Tj -/TT8 1 Tf -9 0 0 9 203.6465 434.54 Tm -0.11 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 225.3623 434.54 Tm -0 Tw -(18)Tj -/TT8 1 Tf -9 0 0 9 232.5635 434.54 Tm -0.11 Tw -[( bit unsigned integers, and a flag \(one bit\). Fields are allocated in such a)]TJ --6.5071 -1.2222 TD -0.0478 Tw -(way as to optimize the storage used and not necessarily in the order specified. Generally,)Tj -T* -0 Tw -(a )Tj -/TT10 1 Tf -6 0 0 6 182.02 412.54 Tm -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 210.8247 412.54 Tm -0.1411 Tw -[( record is much more storage compact than the corresponding )]TJ -/TT10 1 Tf -6 0 0 6 472.8044 412.54 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 494.408 412.54 Tm -0.1411 Tw -[( structure)]TJ --35.6009 -1.2222 TD -0 Tw -(would be; in addition, access is faster.)Tj -0 -2 TD -0.0333 Tw -(Since the user data type must be set up at )Tj -/TT14 1 Tf -18.869 0 TD -0 Tw -(run)Tj -/TT8 1 Tf -1.5015 0 TD -0.0333 Tw -(-time, the )Tj -/TT10 1 Tf -6 0 0 6 397.9769 383.54 Tm -0 Tw -(RECORDS)Tj -/TT8 1 Tf -9 0 0 9 423.181 383.54 Tm -0.0333 Tw -[( file package command will)]TJ --27.6868 -1.2222 TD -0.1389 Tw -(dump a )Tj -/TT10 1 Tf -6 0 0 6 209.7798 372.54 Tm -0 Tw -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 263.7886 372.54 Tm -0.1389 Tw -[( expression as well as the )]TJ -/TT10 1 Tf -6 0 0 6 373.5889 372.54 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 402.3936 372.54 Tm -0.1389 Tw -[( declaration itself. If the record)]TJ --25.3771 -1.2222 TD -0.0689 Tw -(declaration is otherwise not needed at runtime, it can be kept out of the compiled file by)Tj -T* -0.0389 Tw -(using a)Tj -/TT10 1 Tf -6 0 0 6 203.2045 350.54 Tm -0.0933 Tw -[( \(DECLARE: DONTCOPY --\))]TJ -/TT8 1 Tf -9 0 0 9 287.698 350.54 Tm -0.0389 Tw -[( expression \(see Chapter 17\), but it is still necessary to ensure)]TJ --12.6331 -1.2222 TD -0.0744 Tw -[(that the datatype is properly initialized. For this, one can use the )]TJ -/TT10 1 Tf -6 0 0 6 443.253 339.54 Tm -0 Tw -(INITRECORDS)Tj -/TT8 1 Tf -9 0 0 9 482.8594 339.54 Tm -0.0744 Tw -[( file package)]TJ --34.3177 -1.2222 TD -0 Tw -(command \(see Chapter 17\), which will dump only the )Tj -/TT10 1 Tf -6 0 0 6 390.7954 328.54 Tm -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 444.8042 328.54 Tm -( expression.)Tj -/TT18 1 Tf --30.0894 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.07 Tw -[(: When defining a new data type, it is sometimes useful to call the function )]TJ -/TT10 1 Tf -6 0 0 6 505.1664 310.54 Tm -0 Tw -(DEFPRINT)Tj -/TT8 1 Tf -9 0 0 9 174 299.54 Tm -0.1089 Tw -[(\(see Chapter 25\) to specify how instances of the new data type should be printed. This)]TJ -0 -1.2222 TD -0.0233 Tw -(can be specified in the record declaration by including an )Tj -/TT10 1 Tf -6 0 0 6 406.0306 288.54 Tm -0 Tw -(INIT)Tj -/TT8 1 Tf -9 0 0 9 420.433 288.54 Tm -0.0233 Tw -[( record specification \(see the)]TJ --27.3814 -1.2222 TD -0.2133 Tw -(Optional Record Specifications section below\), e.g. )Tj -/TT10 1 Tf -6 0 0 6 388.521 277.54 Tm -0.5117 Tw -(\(DATATYPE QV.TYPE ... \(INIT \(DEFPRINT)Tj --35.7535 -1.8333 TD -0 Tw -(QV.TYPE \(FUNCTION PRINT.QV.TYPE\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 303.6211 266.54 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 174 248.54 Tm -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 202.8047 248.54 Tm -( declarations cannot be used within local record declarations \(see Chapter 21\).)Tj -/TT12 1 Tf --5.8672 -2.4822 TD -(TYPERECORD)Tj -/TT6 1 Tf -10 0 0 10 204.0088 226.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 477.22 226.2 Tm -([Record Type])Tj --33.6911 -1.8444 TD -0.0822 Tw -(Similar to )Tj -/TT10 1 Tf -6 0 0 6 216.4106 209.6 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 238.0142 209.6 Tm -0.0822 Tw -(, but the record name is added to the front of the list structure to signify)Tj --7.1127 -1.2222 TD -0.07 Tw -[(what type of record it is. This type field is used in the translation of )]TJ -/TT10 1 Tf -6 0 0 6 464.394 198.6 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 482.3969 198.6 Tm -0.07 Tw -[( expressions.)]TJ -/TT10 1 Tf -6 0 0 6 174 187.6 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 195.6035 187.6 Tm -0.0267 Tw -[( will insert an extra field containing )]TJ -/TT16 1 Tf -16.1442 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0267 Tw -[( at the beginning of the structure,)]TJ --25.1457 -1.2889 TD -0.2478 Tw -(and the translation of the access and storage functions will take this extra field into)Tj -0 -1.2222 TD -0.0756 Tw -[(account. For example, for )]TJ -/TT10 1 Tf -6 0 0 6 282.8336 165 Tm -0.1817 Tw -(\(TYPERECORD MSG \(FROM TO . TEXT\)\), \(fetch FROM of X\) )Tj -/TT8 1 Tf -9 0 0 9 484.5646 165 Tm -0.0756 Tw -(translates as)Tj -/TT10 1 Tf -6 0 0 6 174 154 Tm -0 Tw -(\(CADR X\))Tj -/TT8 1 Tf -9 0 0 9 202.8047 154 Tm -(, not )Tj -/TT10 1 Tf -6 0 0 6 222.6416 154 Tm -(\(CAR X\))Tj -/TT8 1 Tf -9 0 0 9 247.8457 154 Tm -(.)Tj -/TT12 1 Tf --10.8717 -2.3333 TD -(ASSOCRECORD)Tj -/TT8 1 Tf -6.6 0 TD -[( )-29257.8([Record Type])]TJ --3.9333 -1.8444 TD -(Describes lists where the fields are stored in association list format:)Tj -/TT10 1 Tf -6 0 0 6 210 102 Tm -(\(\()Tj -/TT16 1 Tf -9 0 0 9 217.2012 102 Tm -(FIELDNAME)Tj -6 0 0 6 265.8 99 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -( . )Tj -/TT16 1 Tf -9 0 0 9 280.2017 102 Tm -(VALUE)Tj -6 0 0 6 307.2 99 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -(\) \()Tj -/TT16 1 Tf -9 0 0 9 321.6017 102 Tm -(FIELDNAME)Tj -6 0 0 6 370.2 99 Tm -(2)Tj -/TT10 1 Tf -0.6 0.5 TD -( . )Tj -/TT16 1 Tf -9 0 0 9 384.6017 102 Tm -(VALUE)Tj -6 0 0 6 411.6 99 Tm -(2)Tj -/TT10 1 Tf -0.6 0.5 TD -(\) ...\))Tj -/TT16 1 Tf -9 0 0 9 174 83.45 Tm -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1 Tw -[( is a list of symbols, the permissable field names in the association list.)]TJ --7.8013 -1.2889 TD -0.05 Tw -(Access is done with )Tj -/TT10 1 Tf -6 0 0 6 256.4221 71.85 Tm -0 Tw -(ASSOC)Tj -/TT8 1 Tf -9 0 0 9 274.425 71.85 Tm -0.05 Tw -[( \(or )]TJ -/TT10 1 Tf -6 0 0 6 291.2903 71.85 Tm -0 Tw -(FASSOC)Tj -/TT8 1 Tf -9 0 0 9 312.8938 71.85 Tm -0.05 Tw -(, if the current CLISP declarations are )Tj -/TT10 1 Tf -6 0 0 6 467.097 71.85 Tm -0 Tw -(FAST)Tj -/TT8 1 Tf -9 0 0 9 481.4994 71.85 Tm -0.05 Tw -(, see Chapter)Tj --34.1666 -1.2222 TD -0 Tw -(21\), storing with )Tj -/TT10 1 Tf -6 0 0 6 241.3769 60.85 Tm -(PUTASSOC)Tj -/TT8 1 Tf -9 0 0 9 270.1816 60.85 Tm -(.)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT18 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -25 0 obj -<< -/Length 9054 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-5)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT12 1 Tf -9 0 0 9 102 569.54 Tm -(PROPRECORD)Tj -/TT8 1 Tf -6 0 TD -[( )-29857.8([Record Type])]TJ --3.3333 -1.8444 TD -(Describes lists where the fields are stored in property list format:)Tj -/TT10 1 Tf -6 0 0 6 162 536.66 Tm -(\()Tj -/TT16 1 Tf -9 0 0 9 165.6006 536.66 Tm -(FIELDNAME)Tj -6 0 0 6 214.2 533.66 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 217.8 536.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 220.67 536.66 Tm -(VALUE)Tj -6 0 0 6 247.67 533.66 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 251.27 536.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 254.14 536.66 Tm -(FIELDNAME)Tj -6 0 0 6 302.74 533.66 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 306.34 536.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 309.21 536.66 Tm -(VALUE)Tj -6 0 0 6 336.21 533.66 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 339.81 536.66 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 342.68 536.66 Tm -(...\))Tj -/TT16 1 Tf -9 0 0 9 126 518.11 Tm -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1744 Tw -[( is a list of symbols, the permissable field names in the property list.)]TJ --7.8013 -1.2889 TD -0 Tw -(Access is done with )Tj -/TT10 1 Tf -6 0 0 6 206.6221 506.51 Tm -(LISTGET)Tj -/TT8 1 Tf -9 0 0 9 231.8262 506.51 Tm -(, storing with )Tj -/TT10 1 Tf -6 0 0 6 287.2061 506.51 Tm -(LISTPUT)Tj -/TT8 1 Tf -9 0 0 9 312.4102 506.51 Tm -(.)Tj --20.7122 -2 TD -(Both )Tj -/TT10 1 Tf -6 0 0 6 147.9245 488.51 Tm -(ASSOCRECORD)Tj -/TT8 1 Tf -9 0 0 9 187.5309 488.51 Tm -0.1211 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 209.4467 488.51 Tm -0 Tw -(PROPRECORD)Tj -/TT8 1 Tf -9 0 0 9 245.4526 488.51 Tm -0.1211 Tw -[( are useful for defining data structures where many of the)]TJ --13.2725 -1.2222 TD -0.1367 Tw -(fields are )Tj -/TT10 1 Tf -6 0 0 6 167.1846 477.51 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 177.9863 477.51 Tm -0.1367 Tw -(. )Tj -/TT10 1 Tf -6 0 0 6 187.1964 477.51 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 208.7999 477.51 Tm -0.1367 Tw -(ing one these record types only stores those fields that are non-)Tj -/TT10 1 Tf -6 0 0 6 472.8709 477.51 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 483.6727 477.51 Tm -(.)Tj --39.7414 -1.2222 TD -0.1456 Tw -(Note, however, that with the record declaration )Tj -/TT10 1 Tf -6 0 0 6 326.8814 466.51 Tm -0.3483 Tw -(\(PROPRECORD FIE \(H I J\)\) )Tj -/TT8 1 Tf -9 0 0 9 427.3461 466.51 Tm -0.1456 Tw -(the expression)Tj -/TT10 1 Tf -6 0 0 6 126 455.51 Tm -0.225 Tw -(\(create FIE\))Tj -/TT8 1 Tf -9 0 0 9 170.557 455.51 Tm -0.0944 Tw -[( would still construct )]TJ -/TT10 1 Tf -6 0 0 6 260.3359 455.51 Tm -0.225 Tw -(\(H NIL\))Tj -/TT8 1 Tf -9 0 0 9 286.89 455.51 Tm -0.0944 Tw -(, since a later operation of )Tj -/TT10 1 Tf -6 0 0 6 396.4436 455.51 Tm -0.225 Tw -(\(replace J of X with Y\))Tj -/TT8 1 Tf -9 0 0 9 126 444.51 Tm -0 Tw -(could not possibly change the instance of the record if it were )Tj -/TT10 1 Tf -6 0 0 6 372.2124 444.51 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 383.0142 444.51 Tm -(.)Tj -/TT12 1 Tf --31.2238 -2.3333 TD -(ARRAYRECORD)Tj -/TT8 1 Tf -6.6 0 TD -[( )-29257.8([Record Type])]TJ -/TT10 1 Tf -6 0 0 6 126 406.91 Tm -(ARRAYRECORDs)Tj -/TT8 1 Tf -9 0 0 9 169.207 406.91 Tm -0.3133 Tw -[( are stored as arrays. )]TJ -/TT16 1 Tf -11.4786 0 TD -0 Tw -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.3133 Tw -[( is a list of field names that are)]TJ --24.0807 -1.2889 TD -0.0156 Tw -(associated with the corresponding elements of an array. )Tj -/TT10 1 Tf -6 0 0 6 353.7585 395.31 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 364.5603 395.31 Tm -0.0156 Tw -[( can be used as a place marker)]TJ --26.5067 -1.2222 TD -0.1833 Tw -[(for an unnamed field \(element\). Positive integers can be used as abbreviation for the)]TJ -T* -0.0378 Tw -(corresponding number of )Tj -/TT10 1 Tf -6 0 0 6 231.2011 373.31 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 242.0029 373.31 Tm -0.0378 Tw -[(s. For example, )]TJ -/TT10 1 Tf -6 0 0 6 307.8922 373.31 Tm -0 Tw -(\(ARRAYRECORD)Tj -/TT8 1 Tf -9 0 0 9 351.0992 373.31 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 353.6892 373.31 Tm -0.0917 Tw -(\(ORG DEST NIL ID 3 TEXT\)\))Tj -/TT8 1 Tf -9 0 0 9 446.4539 373.31 Tm -0.0378 Tw -[( describes)]TJ --35.606 -1.2222 TD -0.1044 Tw -(an eight-element array, with )Tj -/TT10 1 Tf -6 0 0 6 244.9406 362.31 Tm -0 Tw -(ORG)Tj -/TT8 1 Tf -9 0 0 9 255.7424 362.31 Tm -0.1044 Tw -[( corresponding to the first element, )]TJ -/TT10 1 Tf -6 0 0 6 403.1236 362.31 Tm -0 Tw -(ID)Tj -/TT8 1 Tf -9 0 0 9 410.3248 362.31 Tm -0.1044 Tw -[( to the fourth, and)]TJ -/TT10 1 Tf -6 0 0 6 126 351.31 Tm -0 Tw -(TEXT)Tj -/TT8 1 Tf -9 0 0 9 140.4023 351.31 Tm -( to the eighth.)Tj -/TT10 1 Tf -6 0 0 6 126 333.31 Tm -(ARRAYRECORD)Tj -/TT8 1 Tf -9 0 0 9 165.6064 333.31 Tm -0.1478 Tw -[( only creates arrays of pointers. Other kinds of arrays must be implemented)]TJ --4.4007 -1.2222 TD -0 Tw -(with )Tj -/TT10 1 Tf -6 0 0 6 146.5488 322.31 Tm -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 178.9541 322.31 Tm -( \(see below\).)Tj -/TT12 1 Tf --8.5505 -2.3333 TD -(HASHLINK)Tj -/TT8 1 Tf -4.8 0 TD -[( )-31057.8([Record Type])]TJ --2.1333 -1.8444 TD -(The )Tj -/TT10 1 Tf -6 0 0 6 143.3944 284.71 Tm -(HASHLINK)Tj -/TT8 1 Tf -9 0 0 9 172.1991 284.71 Tm -0.0089 Tw -[( record type can be used with any type of data object: it specifies that the value)]TJ --5.1332 -1.2222 TD -0.0056 Tw -[(of a single field can be accessed by hashing the data object in a given hash array. Since the)]TJ -/TT10 1 Tf -6 0 0 6 126 262.71 Tm -0 Tw -(HASHLINK)Tj -/TT8 1 Tf -9 0 0 9 154.8047 262.71 Tm -0.2056 Tw -[( record type describes an access method, rather than a data structure, )]TJ -/TT10 1 Tf -6 0 0 6 453.7943 262.71 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 475.3978 262.71 Tm -0.2056 Tw -[( is)]TJ --38.822 -1.2222 TD -0 Tw -(meaningless for )Tj -/TT10 1 Tf -6 0 0 6 191.3818 251.71 Tm -(HASHLINK)Tj -/TT8 1 Tf -9 0 0 9 220.1865 251.71 Tm -( records.)Tj -/TT16 1 Tf --10.4652 -2 TD -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0789 Tw -[( is either a symbol )]TJ -/TT16 1 Tf -8.6645 0 TD -0 Tw -(FIELD-NAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0789 Tw -(, or a list )Tj -/TT10 1 Tf -6 0 0 6 367.2469 233.71 Tm -0 Tw -(\()Tj -/TT16 1 Tf -9 0 0 9 370.8475 233.71 Tm -(FIELD-NAME)Tj -/TT12 1 Tf -6.001 0 TD -( )Tj -/TT16 1 Tf -0.7912 0 TD -(HARRAYNAME)Tj --33.9975 -1.2889 TD -(HARRAYSIZE)Tj -/TT10 1 Tf -6 0 0 6 180.0088 222.11 Tm -0.24 Tw -(\). )Tj -/TT16 1 Tf -9 0 0 9 197.2911 222.11 Tm -0 Tw -(HARRAYNAME)Tj -/TT8 1 Tf -6.001 0 TD -0.1 Tw -[( is a variable whose value is the hash array to be used; if)]TJ --13.9222 -1.2889 TD -0.0144 Tw -(not given, )Tj -/TT10 1 Tf -6 0 0 6 168.3552 210.51 Tm -0 Tw -(SYSHASHARRAY)Tj -/TT8 1 Tf -9 0 0 9 211.5622 210.51 Tm -0.0144 Tw -[( is used. If the value of the variable )]TJ -/TT16 1 Tf -16.0614 0 TD -0 Tw -(HARRAYNAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0144 Tw -[( is not a hash array)]TJ --31.5693 -1.2889 TD -0.1389 Tw -(\(at the time of the record declaration\), it will be set to a new hash array with a size of)Tj -/TT16 1 Tf -0 -1.2222 TD -0 Tw -(HARRAYSIZE)Tj -/TT8 1 Tf -6.001 0 TD -(. )Tj -/TT16 1 Tf -0.75 0 TD -(HARRAYSIZE)Tj -/TT8 1 Tf -6.001 0 TD -( defaults to 100.)Tj --12.752 -2.0667 TD -(The )Tj -/TT10 1 Tf -6 0 0 6 144.4344 169.31 Tm -(HASHLINK)Tj -/TT8 1 Tf -9 0 0 9 173.2391 169.31 Tm -0.1244 Tw -[( record type is useful as a subdeclaration to other records to add additional)]TJ --5.2488 -1.2222 TD -0.1322 Tw -(fields to already existing data structures \(see the Optional Record Specifications section)Tj -T* -0.0767 Tw -[(below\). For example, suppose that )]TJ -/TT10 1 Tf -6 0 0 6 271.389 147.31 Tm -0 Tw -(FOO)Tj -/TT8 1 Tf -9 0 0 9 282.1908 147.31 Tm -0.0767 Tw -[( is a record declared with)]TJ -/TT10 1 Tf -6 0 0 6 386.236 147.31 Tm -0.185 Tw -[( \(RECORD FOO \(A B C\)\))]TJ -/TT8 1 Tf -9 0 0 9 467.3983 147.31 Tm -0.0767 Tw -[(. To)]TJ --37.9332 -1.2222 TD -0 Tw -(add a new field )Tj -/TT10 1 Tf -6 0 0 6 190.0942 136.31 Tm -(BAR)Tj -/TT8 1 Tf -9 0 0 9 200.896 136.31 Tm -(, without modifying the existing data strutures, redeclare )Tj -/TT10 1 Tf -6 0 0 6 430.3477 136.31 Tm -(FOO)Tj -/TT8 1 Tf -9 0 0 9 441.1494 136.31 Tm -( with:)Tj -/TT10 1 Tf -6 0 0 6 162 123.86 Tm -(\(RECORD FOO \(A B C\) \(HASHLINK FOO \(BAR BARHARRAY\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 108.31 Tm -(Now, )Tj -/TT10 1 Tf -6 0 0 6 150.3984 108.31 Tm -(\(fetch BAR of X\))Tj -/TT8 1 Tf -9 0 0 9 208.0078 108.31 Tm -( will translate into )Tj -/TT10 1 Tf -6 0 0 6 282.4863 108.31 Tm -(\(GETHASH X BARHARRAY\))Tj -/TT8 1 Tf -9 0 0 9 358.0986 108.31 Tm -(, hashing off the existing list )Tj -/TT10 1 Tf -6 0 0 6 472.0708 108.31 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 475.6714 108.31 Tm -(.)Tj -/TT12 1 Tf --41.519 -2.3333 TD -(ATOMRECORD)Tj -/TT8 1 Tf -6 0 TD -[( )-29857.8([Record Type])]TJ -/TT10 1 Tf -6 0 0 6 126 70.71 Tm -(ATOMRECORD)Tj -/TT8 1 Tf -9 0 0 9 162.0058 70.71 Tm -0.2656 Tw -(s are stored on the property lists of symbols. )Tj -/TT16 1 Tf -22.7102 0 TD -0 Tw -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.2656 Tw -[( is a list of)]TJ --34.5122 -1.2889 TD -0.1933 Tw -[(property names. Accessing is performed with )]TJ -/TT10 1 Tf -6 0 0 6 324.1038 59.11 Tm -0 Tw -(GETPROP)Tj -/TT8 1 Tf -9 0 0 9 349.3079 59.11 Tm -0.1933 Tw -(, storing with )Tj -/TT10 1 Tf -6 0 0 6 409.9078 59.11 Tm -0 Tw -(PUTPROP)Tj -/TT8 1 Tf -9 0 0 9 435.1119 59.11 Tm -0.1933 Tw -[(. The )]TJ -/TT10 1 Tf -6 0 0 6 464.3964 59.11 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 126 48.11 Tm -(expression is not initially defined for )Tj -/TT10 1 Tf -6 0 0 6 274.3638 48.11 Tm -(ATOMRECORD)Tj -/TT8 1 Tf -9 0 0 9 310.3696 48.11 Tm -( records.)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -29 0 obj -<< -/Length 8258 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 569.54 Tm -(BLOCKRECORD)Tj -/TT8 1 Tf -6.6 0 TD -[( )-29257.8([Record Type])]TJ -/TT10 1 Tf -6 0 0 6 174 552.94 Tm -(BLOCKRECORD )Tj -/TT8 1 Tf -9 0 0 9 218.277 552.94 Tm -0.0744 Tw -(is used in low-level system programming to overlay an organized structure)Tj --4.9197 -1.2222 TD -0.0567 Tw -[(over an arbitrary piece of raw storage. )]TJ -/TT16 1 Tf -18.1164 0 TD -0 Tw -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0567 Tw -[( is interpreted exactly as with a)]TJ -/TT10 1 Tf -6 0 0 6 174 530.34 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 202.8047 530.34 Tm -0.32 Tw -[( declaration, except that fields are )]TJ -/TT14 1 Tf -17.0172 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.32 Tw -[( automatically rearranged to maximize)]TJ --21.5507 -1.2222 TD -0.0589 Tw -[(storage efficiency. Like an )]TJ -/TT10 1 Tf -6 0 0 6 284.4435 519.34 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 316.8487 519.34 Tm -0.0589 Tw -[( record, a )]TJ -/TT10 1 Tf -6 0 0 6 357.7654 519.34 Tm -0 Tw -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 397.3718 519.34 Tm -0.0589 Tw -[( does not have concrete instances;)]TJ --24.8191 -1.2222 TD -0.1744 Tw -[(it merely provides a way of interpreting some existing block of storage. So you cant)]TJ -T* -0.3289 Tw -(create an instance of a )Tj -/TT10 1 Tf -6 0 0 6 278.4572 497.34 Tm -0 Tw -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 318.0637 497.34 Tm -0.3289 Tw -[( \(unless the declaration includes an explicit )]TJ -/TT10 1 Tf -6 0 0 6 512.3369 497.34 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 174 486.34 Tm -(expression\), nor is there a default )Tj -/TT10 1 Tf -6 0 0 6 308.6572 486.34 Tm -(type?)Tj -/TT8 1 Tf -9 0 0 9 326.6602 486.34 Tm -( expression for a )Tj -/TT10 1 Tf -6 0 0 6 394.2568 486.34 Tm -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 433.8633 486.34 Tm -(.)Tj -/TT18 1 Tf --28.8737 -2 TD -(Warning:)Tj -/TT8 1 Tf -4.25 0 TD -0.0178 Tw -[( Exercise caution in using )]TJ -/TT10 1 Tf -6 0 0 6 319.0479 468.34 Tm -0 Tw -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 358.6543 468.34 Tm -0.0178 Tw -[( declarations, as they let you fetch and store)]TJ --20.5171 -1.2222 TD -0.3144 Tw -(arbitrary data in arbitrary locations, thereby evading Medleys normal type system.)Tj -T* -0.0844 Tw -(Except in very specialized situations, a )Tj -/TT10 1 Tf -6 0 0 6 334.4296 446.34 Tm -0 Tw -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 374.0361 446.34 Tm -0.0844 Tw -[( should never contain )]TJ -/TT10 1 Tf -6 0 0 6 465.5248 446.34 Tm -0 Tw -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 490.7289 446.34 Tm -0.0844 Tw -[( or )]TJ -/TT10 1 Tf -6 0 0 6 505.2172 446.34 Tm -0 Tw -(XPOINTER)Tj -/TT8 1 Tf -9 0 0 9 174 435.34 Tm -0.1189 Tw -[(fields, nor be used to overlay an area of storage that contains pointers. Such use could)]TJ -T* -0.0589 Tw -[(compromise the garbage collector and storage allocation system. You are responsible for)]TJ -T* -0.01 Tw -(ensuring that all )Tj -/TT10 1 Tf -6 0 0 6 241.5766 413.34 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 259.5796 413.34 Tm -0.01 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 279.4954 413.34 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 304.6995 413.34 Tm -0.01 Tw -[( expressions are performed only on suitable objects, as no)]TJ --14.5222 -1.2222 TD -0 Tw -(type testing is performed.)Tj -0 -2 TD -0.0022 Tw -(A typical use for a )Tj -/TT10 1 Tf -6 0 0 6 248.952 384.34 Tm -0 Tw -(BLOCKRECORD)Tj -/TT8 1 Tf -9 0 0 9 288.5585 384.34 Tm -0.0022 Tw -( in user code is to overlay a non-pointer portion of an existing)Tj -/TT10 1 Tf -6 0 0 6 174 373.34 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 202.8047 373.34 Tm -0.0889 Tw -[(. For this use, the )]TJ -/TT10 1 Tf -6 0 0 6 279.7233 373.34 Tm -0 Tw -(LOCF)Tj -/TT8 1 Tf -9 0 0 9 294.1257 373.34 Tm -0.0889 Tw -[( macro is useful. )]TJ -/TT10 1 Tf -6 0 0 6 367.5637 373.34 Tm -0 Tw -(\(LOCF)Tj -/TT12 1 Tf -9 0 0 9 385.5666 373.34 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 392.8875 373.34 Tm -(\(fetch)Tj -/TT12 1 Tf -9 0 0 9 414.491 373.34 Tm -( )Tj -/TT16 1 Tf -0.8134 0 TD -(FIELD)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -6 0 0 6 456.1371 373.34 Tm -(of)Tj -/TT12 1 Tf -9 0 0 9 463.3383 373.34 Tm -( )Tj -/TT16 1 Tf -0.8134 0 TD -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 497.6636 373.34 Tm -(\)\))Tj -/TT8 1 Tf -9 0 0 9 504.8647 373.34 Tm -0.0889 Tw -[( can be)]TJ --36.7628 -1.2889 TD -0.1189 Tw -(used to refer to the storage that begins at the first word that contains )Tj -/TT16 1 Tf -32.1366 0 TD -0 Tw -(FIELD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1189 Tw -[( of )]TJ -/TT16 1 Tf -1.6167 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --39.7543 -1.2889 TD -0.2089 Tw -(For example, to define a new kind of Ethernet packet, you could overlay the body)Tj -0 -1.2222 TD -0 Tw -(portion of the )Tj -/TT10 1 Tf -6 0 0 6 230.729 339.14 Tm -(ETHERPACKET)Tj -/TT8 1 Tf -9 0 0 9 270.3354 339.14 Tm -( datatype declaration as follows:)Tj -/TT10 1 Tf -6 0 0 6 198 326.69 Tm -(\(ACCESSFNS MYPACKET)Tj -0 -1 TD -(\(\(MYBASE \(LOCF \(fetch \(ETHERPACKET EPBODY\) of DATUM\)\)\)\))Tj -T* -( \(BLOCKRECORD MYBASE)Tj -T* -( \(\(MYTYPE WORD\) \(MYLENGTH WORD\) \(MYSTATUS BYTE\))Tj -T* -( \(MYERRORCODE BYTE\) \(MYDATA INTEGER\)\)\))Tj -T* -( \(TYPE? \(type? ETHERPACKET DATUM\)\)\))Tj -/TT8 1 Tf -9 0 0 9 174 281.14 Tm -0.0667 Tw -(With this declaration in effect, the expression )Tj -/TT10 1 Tf -6 0 0 6 359.804 281.14 Tm -0.16 Tw -(\(fetch MYLENGTH of PACKET\))Tj -/TT8 1 Tf -9 0 0 9 456.2992 281.14 Tm -0.0667 Tw -[( would retrieve the)]TJ --31.3666 -1.2222 TD -0 Tw -(second 16-bit field beyond the place inside )Tj -/TT10 1 Tf -6 0 0 6 345.457 270.14 Tm -(PACKET)Tj -/TT8 1 Tf -9 0 0 9 367.0605 270.14 Tm -( where the )Tj -/TT10 1 Tf -6 0 0 6 411.2168 270.14 Tm -(EPBODY)Tj -/TT8 1 Tf -9 0 0 9 432.8203 270.14 Tm -( field starts.)Tj -/TT12 1 Tf --31.4245 -2.3333 TD -(ACCESSFNS)Tj -/TT8 1 Tf -5.4 0 TD -[( )-30457.8([Record Type])]TJ -/TT10 1 Tf -6 0 0 6 174 232.54 Tm -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 206.4053 232.54 Tm -0.0644 Tw -[( lets you specify arbitrary functions to fetch and store data. For each field name,)]TJ --3.6006 -1.2222 TD -0.0933 Tw -[(you specify how it is to be accessed and set. This lets you use arbitrary data structures,)]TJ -T* -0.0167 Tw -[(with complex access methods. Most often, )]TJ -/TT10 1 Tf -6 0 0 6 347.0915 210.54 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 379.4968 210.54 Tm -0.0167 Tw -[( are useful when you can compute one)]TJ --22.833 -1.2222 TD -0.24 Tw -[(fields value from other fields. If youre representing a time period by its start and)]TJ -T* -0.1111 Tw -(duration, you could add an )Tj -/TT10 1 Tf -6 0 0 6 290.2168 188.54 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 322.622 188.54 Tm -0.1111 Tw -[( definition for the ending time that did the obvious)]TJ --16.5136 -1.2222 TD -0 Tw -(addition.)Tj -/TT16 1 Tf -0 -2 TD -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0656 Tw -[( is a list of elements of the form )]TJ -/TT10 1 Tf -6 0 0 6 375.895 159.54 Tm -0 Tw -(\()Tj -/TT16 1 Tf -9 0 0 9 379.4955 159.54 Tm -(FIELD-NAME)Tj -/TT12 1 Tf -6.001 0 TD -( )Tj -/TT16 1 Tf -0.7579 0 TD -(ACCESSDEF)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT16 1 Tf -0.7579 0 TD -(SETDEF)Tj -/TT10 1 Tf -6 0 0 6 528.1593 159.54 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 531.7599 159.54 Tm -(.)Tj -/TT16 1 Tf --39.7511 -1.2889 TD -(ACCESSDEF)Tj -/TT8 1 Tf -5.4009 0 TD -0.24 Tw -[( should be a function of one argument, the datum, and will be used for)]TJ --5.4009 -1.2889 TD -0.1922 Tw -(accessing the value of the field. )Tj -/TT16 1 Tf -15.5853 0 TD -0 Tw -(SETDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.1922 Tw -[( should be a function of two arguments, the)]TJ --19.1859 -1.2889 TD -0.1056 Tw -(datum and the new value, and will be used for storing a new value in a field. )Tj -/TT16 1 Tf -36.3897 0 TD -0 Tw -(SETDEF)Tj -/TT8 1 Tf --36.3897 -1.2889 TD -(may be omitted, in which case, no storing operations are allowed.)Tj -/TT16 1 Tf -0 -2 TD -(ACCESSDEF)Tj -/TT8 1 Tf -5.4009 0 TD -0.0156 Tw -[( and/or )]TJ -/TT16 1 Tf -3.7709 0 TD -0 Tw -(SETDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0156 Tw -[( may also be a form written in terms of variables )]TJ -/TT10 1 Tf -6 0 0 6 485.1511 95.14 Tm -0 Tw -(DATUM)Tj -/TT8 1 Tf -9 0 0 9 503.154 95.14 Tm -0.0156 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 523.1698 95.14 Tm -0 Tw -(\(in)Tj -/TT16 1 Tf -9 0 0 9 174 83.54 Tm -(SETDEF)Tj -/TT10 1 Tf -6 0 0 6 206.4053 83.54 Tm -(\) NEWVALUE)Tj -/TT8 1 Tf -9 0 0 9 242.4111 83.54 Tm -(. For example, given the declaration)Tj -/TT10 1 Tf -6 0 0 6 210 70.49 Tm -([ACCESSFNS FOO)Tj -0 -1 TD -(\(\(FIRSTCHAR \(NTHCHAR DATUM 1\) \(RPLSTRING DATUM 1 NEWVALUE\)\) \(RESTCHARS \(SUBSTRING DATUM 2])Tj -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT18 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -32 0 obj -<< -/Length 8776 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-7)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT10 1 Tf -6 0 0 6 126 569.54 Tm -0.0567 Tw -(\(replace \(FOO FIRSTCHAR\) of X with Y\))Tj -/TT8 1 Tf -9 0 0 9 261.2617 569.54 Tm -0.0233 Tw -[( would translate to )]TJ -/TT10 1 Tf -6 0 0 6 339.3224 569.54 Tm -0.0567 Tw -(\(RPLSTRING X 1 Y\))Tj -/TT8 1 Tf -9 0 0 9 401.5523 569.54 Tm -0.0233 Tw -[(. Since no )]TJ -/TT16 1 Tf -4.7921 0 TD -0 Tw -(SETDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -[( is)]TJ --39.0096 -1.2889 TD -0.1611 Tw -(given for the )Tj -/TT10 1 Tf -6 0 0 6 183.3085 557.9399 Tm -0 Tw -(RESTCHARS)Tj -/TT8 1 Tf -9 0 0 9 215.7137 557.9399 Tm -0.1611 Tw -[( field, attempting to perform )]TJ -/TT10 1 Tf -6 0 0 6 338.8783 557.9399 Tm -0.3867 Tw -(\(replace \(FOO RESTCHARS\) of X with Y\))Tj -/TT8 1 Tf -9 0 0 9 126 546.94 Tm -0.0178 Tw -(would generate an error, )Tj -/TT10 1 Tf -6 0 0 6 227.6483 546.94 Tm -0.0433 Tw -(Replace undefined for field)Tj -/TT8 1 Tf -9 0 0 9 325.6441 546.94 Tm -0.0178 Tw -[(. Note that )]TJ -/TT10 1 Tf -6 0 0 6 372.7827 546.94 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 405.1879 546.94 Tm -0.0178 Tw -[( do not have a )]TJ -/TT10 1 Tf -6 0 0 6 464.3693 546.94 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 126 535.94 Tm -0.2656 Tw -[(definition. However, you may supply one in the defaults or subdeclarations of the)]TJ -0 -1.2222 TD -0.3989 Tw -[(declaration, as described below. Attempting to )]TJ -/TT10 1 Tf -6 0 0 6 341.4703 524.9399 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 363.0739 524.9399 Tm -0.3989 Tw -[( an )]TJ -/TT10 1 Tf -6 0 0 6 384.4921 524.9399 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 416.8974 524.9399 Tm -0.3989 Tw -[( record without)]TJ --32.3219 -1.2222 TD -0 Tw -(specifying a create definition will cause an error )Tj -/TT10 1 Tf -6 0 0 6 319.1484 513.94 Tm -(Create not defined for this record.)Tj -/TT16 1 Tf -9 0 0 9 126 495.94 Tm -(ACCESSDEF)Tj -/TT8 1 Tf -5.4009 0 TD -0.2611 Tw -[( and )]TJ -/TT16 1 Tf -2.7151 0 TD -0 Tw -(SETDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.2611 Tw -[( can also be a property list which specify )]TJ -/TT10 1 Tf -6 0 0 6 416.0492 495.94 Tm -0 Tw -(FAST)Tj -/TT8 1 Tf -9 0 0 9 430.4515 495.94 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 437.3016 495.94 Tm -(STANDARD)Tj -/TT8 1 Tf -9 0 0 9 466.1063 495.94 Tm -0.2611 Tw -[( and)]TJ -/TT10 1 Tf -6 0 0 6 126 484.34 Tm -0 Tw -(UNDOABLE)Tj -/TT8 1 Tf -9 0 0 9 154.8047 484.34 Tm -( versions of the )Tj -/TT10 1 Tf -6 0 0 6 217.5498 484.34 Tm -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 249.9551 484.34 Tm -( forms, e.g.)Tj -/TT10 1 Tf -6 0 0 6 162 471.89 Tm -([ACCESSFNS LITATOM)Tj -2 -1 TD -( \(\(DEF \(STANDARD GETD FAST FGETD\))Tj -T* -( \(STANDARD PUTD UNDOABLE /PUTD])Tj -/TT8 1 Tf -9 0 0 9 126 444.34 Tm -0.0822 Tw -(means if )Tj -/TT10 1 Tf -6 0 0 6 163.4053 444.34 Tm -0 Tw -(FAST)Tj -/TT8 1 Tf -9 0 0 9 177.8076 444.34 Tm -0.0822 Tw -[( declaration is in effect, use )]TJ -/TT10 1 Tf -6 0 0 6 292.0714 444.34 Tm -0 Tw -(FGETD)Tj -/TT8 1 Tf -9 0 0 9 310.0743 444.34 Tm -0.0822 Tw -[( for fetching, if )]TJ -/TT10 1 Tf -6 0 0 6 373.7052 444.34 Tm -0 Tw -(UNDOABLE)Tj -/TT8 1 Tf -9 0 0 9 402.5099 444.34 Tm -0.0822 Tw -(, use )Tj -/TT10 1 Tf -6 0 0 6 424.2926 444.34 Tm -0 Tw -(/PUTD)Tj -/TT8 1 Tf -9 0 0 9 442.2955 444.34 Tm -0.0822 Tw -[( for saving)]TJ --35.144 -1.2222 TD -0 Tw -(\(see CLISP declarations, see Chapter 21\).)Tj -/TT16 1 Tf -0 -2 TD -(SETDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -[( forms should be written so that they return the new value, to be consistant with)]TJ -/TT10 1 Tf -6 0 0 6 126 403.74 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 151.2041 403.74 Tm -( operations for other record types. The )Tj -/TT10 1 Tf -6 0 0 6 308.4492 403.74 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 333.6533 403.74 Tm -( does not enforce this, though.)Tj -/TT10 1 Tf -6 0 0 6 126 385.74 Tm -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 158.4053 385.74 Tm -0.0667 Tw -[( let you use data structures not specified by one of the built-in record types. For)]TJ --3.6006 -1.2222 TD -0.1511 Tw -(example, one possible representation of a data structure is to store the fields in )Tj -/TT14 1 Tf -36.9925 0 TD -0 Tw -(parallel)Tj -/TT8 1 Tf --36.9925 -1.2222 TD -0.2344 Tw -(arrays, especially if the number of instances required is known, and they neednt be)Tj -T* -0.0844 Tw -[(garbage collected. To implement )]TJ -/TT10 1 Tf -6 0 0 6 264.1144 352.74 Tm -0 Tw -(LINK)Tj -/TT8 1 Tf -9 0 0 9 278.5168 352.74 Tm -0.0844 Tw -[( with two fields )]TJ -/TT10 1 Tf -6 0 0 6 346.0685 352.74 Tm -0 Tw -(FROM)Tj -/TT8 1 Tf -9 0 0 9 360.4708 352.74 Tm -0.0844 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 381.7267 352.74 Tm -0 Tw -(TO)Tj -/TT8 1 Tf -9 0 0 9 388.9279 352.74 Tm -0.0844 Tw -(, youd have two arrays)Tj -/TT10 1 Tf -6 0 0 6 126 341.74 Tm -0 Tw -(FROMARRAY)Tj -/TT8 1 Tf -9 0 0 9 158.4053 341.74 Tm -0.0189 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 178.4811 341.74 Tm -0 Tw -(TOARRAY)Tj -/TT8 1 Tf -9 0 0 9 203.6852 341.74 Tm -0.0189 Tw -[(. The representation of an instance of )]TJ -/TT10 1 Tf -6 0 0 6 365.2171 341.74 Tm -0 Tw -(LINK)Tj -/TT8 1 Tf -9 0 0 9 379.6194 341.74 Tm -0.0189 Tw -[( would be an integer, used)]TJ --28.1799 -1.2222 TD -0 Tw -(to index into the arrays. This can be accomplished with the declaration:)Tj -/TT10 1 Tf -6 0 0 6 162 318.29 Tm -([ACCESSFNS LINK)Tj -0 -1 TD -( \(\(FROM \(ELT FROMARRAY DATUM\))Tj -T* -( \(SETA FROMARRAY DATUM NEWVALUE\)\))Tj -T* -( \(TO \(ELT TOARRAY DATUM\))Tj -T* -( \(SETA TOARRAY DATUM NEWVALUE\)\)\))Tj -T* -( \(CREATE \(PROG1 \(SETQ LINKCNT \(ADD1 LINKCNT\)\))Tj -T* -( \(SETA FROMARRAY LINKCNT FROM\))Tj -T* -( \(SETA TOARRAY LINKCNT TO\)\)\))Tj -T* -( \(INIT \(PROGN)Tj -T* -( \(SETQ FROMARRAY \(ARRAY 100\)\))Tj -T* -( \(SETQ TOARRAY \(ARRAY 100\)\))Tj -T* -( \(SETQ LINKCNT 0\)])Tj -/TT8 1 Tf -9 0 0 9 126 236.74 Tm -0.09 Tw -(To create a new )Tj -/TT10 1 Tf -6 0 0 6 193.8308 236.74 Tm -0 Tw -(LINK)Tj -/TT8 1 Tf -9 0 0 9 208.2332 236.74 Tm -0.09 Tw -[(, a counter is incremented and the new elements stored. \(Note: The)]TJ -/TT10 1 Tf -6 0 0 6 126 225.74 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 147.6035 225.74 Tm -( form given the declaration probably should include a test for overflow.\))Tj -/TT4 1 Tf -10 0 0 10 78 203.4 Tm -(Optional Record Specifications)Tj -/TT8 1 Tf -9 0 0 9 78 187.74 Tm -0.0789 Tw -(After the )Tj -/TT16 1 Tf -4.356 0 TD -0 Tw -(RECORD-FIELDS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0789 Tw -[( item in a record declaration expression there can be an arbitrary number)]TJ --12.1573 -1.2889 TD -(of additional expressions in )Tj -/TT16 1 Tf -12.777 0 TD -0 Tw -(RECORD-TAIL)Tj -/TT8 1 Tf -6.6011 0 TD -0.0789 Tw -[(. These expressions can be used to specify default values)]TJ --19.3781 -1.2889 TD -0.1178 Tw -(for record fields, special )Tj -/TT10 1 Tf -6 0 0 6 179.9084 164.54 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 201.512 164.54 Tm -0.1178 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 223.3678 164.54 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 241.3707 164.54 Tm -0.1178 Tw -[( forms, and subdeclarations. The following expressions are)]TJ --18.1523 -1.2222 TD -0 Tw -(permitted: )Tj -/TT16 1 Tf -3.4756 -2 TD -(FIELD-NAME)Tj -/TT10 1 Tf -6 0 0 6 163.2888 135.54 Tm -( )Tj -/TT19 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( )Tj -/TT16 1 Tf -9 0 0 9 176.4108 135.54 Tm -(FORM)Tj -/TT8 1 Tf -3.0655 0 TD -0.0867 Tw -(Allows you to specify within the record declaration the default value)Tj -0 -1.2889 TD -0.0189 Tw -(to be stored in )Tj -/TT16 1 Tf -6.6337 0 TD -0 Tw -(FIELD-NAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0189 Tw -[( by a )]TJ -/TT10 1 Tf -6 0 0 6 339.4561 123.94 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 361.0596 123.94 Tm -0.0189 Tw -[( \(if no value is given within the)]TJ -/TT10 1 Tf -6 0 0 6 204 112.34 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 225.6035 112.34 Tm -0.0144 Tw -[( expression itself\). Note that )]TJ -/TT16 1 Tf -12.967 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[( is evaluated at )]TJ -/TT10 1 Tf -6 0 0 6 426.4855 112.34 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 448.0891 112.34 Tm -0.0144 Tw -[( time, not)]TJ --27.121 -1.2889 TD -0 Tw -(when the declaration is made.)Tj -/TT10 1 Tf -6 0 0 6 144 82.74 Tm -(\(CREATE )Tj -/TT16 1 Tf -9 0 0 9 172.8047 82.74 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 194.4082 82.74 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 204 82.74 Tm -0.5189 Tw -(Defines the manner in which )Tj -/TT10 1 Tf -6 0 0 6 344.5829 82.74 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 366.1864 82.74 Tm -0.5189 Tw -[( of this record should be)]TJ --18.0207 -1.2889 TD -0.0278 Tw -[(performed. This provides a way of specifying how )]TJ -/TT10 1 Tf -6 0 0 6 411.7295 71.14 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 444.1348 71.14 Tm -0.0278 Tw -[( should be)]TJ --26.6816 -1.2222 TD -0.1144 Tw -(created or overriding the usual definition of )Tj -/TT10 1 Tf -6 0 0 6 388.103 60.14 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 409.7065 60.14 Tm -0.1144 Tw -[(. If )]TJ -/TT16 1 Tf -2.0133 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1144 Tw -[( contains)]TJ --27.2699 -1.2889 TD -0.08 Tw -(the field-names of the declaration as variables, the forms given in the)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT19 34 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -36 0 obj -<< -/Length 6815 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -6 0 0 6 252 569.54 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 273.6035 569.54 Tm -0.03 Tw -[( operation will be substituted in. If the word )]TJ -/TT10 1 Tf -6 0 0 6 456.6419 569.54 Tm -0 Tw -(DATUM)Tj -/TT8 1 Tf -9 0 0 9 474.6448 569.54 Tm -0.03 Tw -[( appears in the)]TJ --24.7383 -1.2222 TD -0.1478 Tw -(create form, the )Tj -/TT14 1 Tf -7.6103 0 TD -0 Tw -(original)Tj -/TT8 1 Tf -3.1665 0 TD -( )Tj -/TT10 1 Tf -6 0 0 6 352.5714 558.54 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 374.175 558.54 Tm -0.1478 Tw -[( definition is inserted. This effectively)]TJ --13.575 -1.2222 TD -0 Tw -(allows you to advise the create.)Tj -/TT10 1 Tf -6 0 0 6 199.2 529.54 Tm -(\(INIT )Tj -/TT16 1 Tf -9 0 0 9 220.8035 529.54 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 242.407 529.54 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 252 529.54 Tm -0.0878 Tw -(Specifies that )Tj -/TT16 1 Tf -6.2766 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[( should be evaluated when the record is declared.)]TJ -/TT16 1 Tf --8.677 -1.2889 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1767 Tw -[( will also be dumped by the )]TJ -/TT10 1 Tf -6 0 0 6 397.5411 517.94 Tm -0 Tw -(INITRECORDS)Tj -/TT8 1 Tf -9 0 0 9 437.1476 517.94 Tm -0.1767 Tw -[( file package command)]TJ --20.572 -1.2889 TD -0 Tw -(\(see Chapter 17\).)Tj -0 -2 TD -0.0533 Tw -(For example, see the example of an )Tj -/TT10 1 Tf -6 0 0 6 396.8859 488.34 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 429.2911 488.34 Tm -0.0533 Tw -[( record declaration above.)]TJ --19.699 -1.2222 TD -0 Tw -(In this example, )Tj -/TT10 1 Tf -6 0 0 6 317.6191 477.34 Tm -(FROMARRAY)Tj -/TT8 1 Tf -9 0 0 9 350.0244 477.34 Tm -( and )Tj -/TT10 1 Tf -6 0 0 6 369.7602 477.34 Tm -(TOARRAY)Tj -/TT8 1 Tf -9 0 0 9 394.9643 477.34 Tm -( are initialized with an )Tj -/TT10 1 Tf -6 0 0 6 486.6958 477.34 Tm -(INIT)Tj -/TT8 1 Tf -9 0 0 9 501.0981 477.34 Tm -( form.)Tj -/TT10 1 Tf -6 0 0 6 195.6 459.34 Tm -(\(TYPE? )Tj -/TT16 1 Tf -9 0 0 9 220.8041 459.34 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 242.4076 459.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 252 459.34 Tm -0.1933 Tw -(Defines the manner in which )Tj -/TT10 1 Tf -6 0 0 6 377.9329 459.34 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 395.9358 459.34 Tm -0.1933 Tw -[( expressions are to be translated.)]TJ -/TT16 1 Tf --15.9929 -1.2889 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[( may either be an expression in terms of )]TJ -/TT10 1 Tf -6 0 0 6 435.4332 447.74 Tm -0 Tw -(DATUM)Tj -/TT8 1 Tf -9 0 0 9 453.4361 447.74 Tm -0.0144 Tw -[( or a function of one)]TJ --22.3818 -1.2889 TD -0 Tw -(argument.)Tj -/TT10 1 Tf -6 0 0 6 177.6 418.14 Tm -(\(SUBRECORD )Tj -/TT16 1 Tf -9 0 0 9 217.2064 418.14 Tm -(NAME)Tj -/TT10 1 Tf -6 0 0 6 238.8099 418.14 Tm -( .)Tj --7.2017 -1.6 TD -( )Tj -/TT16 1 Tf -9 0 0 9 199.2006 408.54 Tm -(DEFAULTS)Tj -/TT10 1 Tf -6 0 0 6 242.4076 408.54 Tm -(\))Tj -/TT16 1 Tf -9 0 0 9 252 408.54 Tm -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.1167 Tw -[( must be a field that appears in the current declaration and the)]TJ --2.4004 -1.2889 TD -0.0244 Tw -[(name of another record. This says that, for the purposes of translating)]TJ -/TT10 1 Tf -6 0 0 6 252 385.94 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 273.6035 385.94 Tm -0.0789 Tw -[( expressions, substitute the top-level declaration of )]TJ -/TT16 1 Tf -23.2104 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -[( for the)]TJ -/TT10 1 Tf -6 0 0 6 252 374.34 Tm -0 Tw -(SUBRECORD)Tj -/TT8 1 Tf -9 0 0 9 284.4052 374.34 Tm -( form, adding on any defaults specified.)Tj --3.6006 -2 TD -0.0633 Tw -[(For example: Given )]TJ -/TT10 1 Tf -6 0 0 6 336.8664 356.34 Tm -0.1517 Tw -(\(RECORD B \(E F G\)\), \(RECORD A \(B C D\) \(SUBRECORD B\)\))Tj -/TT8 1 Tf -9 0 0 9 252 345.34 Tm -0.1822 Tw -(would be treated like )Tj -/TT10 1 Tf -6 0 0 6 345.4135 345.34 Tm -0.4383 Tw -(\(RECORD A \(B C D\) \(RECORD B \(E F G\)\)\))Tj -/TT8 1 Tf -9 0 0 9 502.3052 345.34 Tm -0.1822 Tw -[( for the)]TJ --27.8117 -1.2222 TD -0 Tw -(purposes of translating )Tj -/TT10 1 Tf -6 0 0 6 346.2758 334.34 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 367.8794 334.34 Tm -( expressions.)Tj --20.8388 -2 TD -0.6755 Tw -[(a )675.5(subdeclaration)-668.4(If a record declaration expression occurs among the record)]TJ -7.9633 -1.2222 TD -0.5411 Tw -(specifications of another record declaration, it is known as a)Tj -T* -0.0856 Tw -[(subdeclaration. Subdeclarations are used to declare that fields of a)]TJ -T* -0.2389 Tw -(record are to be interpreted as another type of record, or that the)Tj -T* -0 Tw -(record data object is to be interpreted in more than one way.)Tj -0 -2 TD -(The )Tj -/TT16 1 Tf -2.0883 0 TD -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.1644 Tw -[( of a subdeclaration must be either the )]TJ -/TT16 1 Tf -18.4469 0 TD -0 Tw -(RECORD-)Tj --27.1363 -1.2889 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0967 Tw -[( of its immediately superior declaration or one of the superiors)]TJ --2.4004 -1.2889 TD -0.1456 Tw -[(field-names. Instead of identifying the declaration as with top level)]TJ -0 -1.2222 TD -0.0444 Tw -(declarations, the record-name of a subdeclaration identifies the parent)Tj -T* -0.53 Tw -(field or record that is being described by the subdeclaration.)Tj -T* -0 Tw -(Subdeclarations can be nested to an arbitrary depth.)Tj -0 -2 TD -0.24 Tw -(Giving a subdeclaration )Tj -/TT10 1 Tf -6 0 0 6 356.0693 180.14 Tm -0 Tw -(\(RECORD )Tj -/TT16 1 Tf -9 0 0 9 388.324 180.14 Tm -(NAME)Tj -6 0 0 6 409.93 177.14 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -( )Tj -/TT16 1 Tf -9 0 0 9 420.5806 180.14 Tm -(NAME)Tj -6 0 0 6 442.18 177.14 Tm -(2)Tj -/TT10 1 Tf -0.6 0.5 TD -(\))Tj -/TT8 1 Tf -9 0 0 9 449.3806 180.14 Tm -0.24 Tw -[( is a simple way of)]TJ --21.9312 -1.5056 TD -0 Tw -(defining a )Tj -/TT14 1 Tf -4.7251 0 TD -(synonym)Tj -/TT8 1 Tf -3.7231 0 TD -( for the field )Tj -/TT16 1 Tf -5.666 0 TD -(NAME)Tj -6 0 0 6 400.63 163.59 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 404.23 166.59 Tm -(.)Tj --16.9144 -2.2833 TD -0.1167 Tw -(It is possible for a given field to have more than one subdeclaration.)Tj -0 -1.2222 TD -0 Tw -(For example, in)Tj -/TT10 1 Tf -6 0 0 6 252 117.04 Tm -(\(RECORD FOO \(A B\) \(RECORD A \(C D\)\) \(RECORD A \(Q R\)\)\))Tj -0 -3 TD -0.255 Tw -(\(Q R\) )Tj -/TT8 1 Tf -9 0 0 9 276.6635 99.04 Tm -0 Tw -(and )Tj -/TT10 1 Tf -6 0 0 6 295.1093 99.04 Tm -0.255 Tw -(\(C D\))Tj -/TT8 1 Tf -9 0 0 9 314.6422 99.04 Tm -0.1067 Tw -[( are overlayed, i.e. )]TJ -/TT10 1 Tf -6 0 0 6 402.3255 99.04 Tm -0.255 Tw -(\(fetch Q of X\))Tj -/TT8 1 Tf -9 0 0 9 457.3237 99.04 Tm -0.1067 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 478.9796 99.04 Tm -0.255 Tw -(\(fetch C of X\))Tj -/TT8 1 Tf -9 0 0 9 252 88.04 Tm -0.0567 Tw -[(would be equivalent. In such cases, the )]TJ -/TT14 1 Tf -18.176 0 TD -0 Tw -(first)Tj -/TT8 1 Tf -1.667 0 TD -0.0567 Tw -[( subdeclaration is the one)]TJ --19.843 -1.2222 TD -0 Tw -(used by )Tj -/TT10 1 Tf -6 0 0 6 285.5346 77.04 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 307.1382 77.04 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 183 59.04 Tm -(\(SYNONYM )Tj -/TT16 1 Tf -9 0 0 9 215.4053 59.04 Tm -(FIELD)Tj -/TT10 1 Tf -6 0 0 6 242.4097 59.04 Tm -( )Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -39 0 obj -<< -/Length 10202 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-9)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT10 1 Tf -6 0 0 6 124.2 569.54 Tm -(\()Tj -/TT16 1 Tf -9 0 0 9 127.8006 569.54 Tm -(SYN)Tj -6 0 0 6 144 566.54 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -( ... )Tj -/TT16 1 Tf -9 0 0 9 165.6029 569.54 Tm -(SYN)Tj -6 0 0 6 181.8 566.54 Tm -(N)Tj -9 0 0 9 185.4 566.54 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 190.8 569.54 Tm -(\)\))Tj -/TT16 1 Tf -9 0 0 9 204 569.54 Tm -(FIELD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1422 Tw -[( must be a field that appears in the current declaration. This)]TJ --3.0005 -1.6222 TD -0 Tw -(defines )Tj -/TT16 1 Tf -3.5021 0 TD -(SYN)Tj -6 0 0 6 251.73 551.9399 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -0.1283 Tw -[( ... )]TJ -/TT16 1 Tf -9 0 0 9 274.8729 554.9399 Tm -0 Tw -(SYN)Tj -6 0 0 6 291.07 551.9399 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 294.67 554.9399 Tm -0.0533 Tw -[( all as synonyms of )]TJ -/TT16 1 Tf -8.9542 0 TD -0 Tw -(FIELD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0533 Tw -[(. If there is only one)]TJ --22.0291 -1.5056 TD -0 Tw -(synonym, this can be written as \()Tj -/TT10 1 Tf -6 0 0 6 334.9526 541.39 Tm -(SYNONYM )Tj -/TT16 1 Tf -9 0 0 9 363.7573 541.39 Tm -(FIELD)Tj -/TT10 1 Tf -6 0 0 6 390.7617 541.39 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 394.3623 541.39 Tm -(SYN)Tj -/TT10 1 Tf -6 0 0 6 410.5649 541.39 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 414.1655 541.39 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 169.2 522.79 Tm -(\(SYSTEM\))Tj -/TT8 1 Tf -9 0 0 9 204 522.79 Tm -(If )Tj -/TT10 1 Tf -6 0 0 6 213.8593 522.79 Tm -(\(SYSTEM\))Tj -/TT8 1 Tf -9 0 0 9 242.664 522.79 Tm -0.1756 Tw -[( is included in a record declaration, this indicates that the)]TJ --4.296 -1.2222 TD -0.2033 Tw -[(record is a system record rather than a user record. The only)]TJ -T* -0.2511 Tw -(distinction between the two types of records is that user record)Tj -T* -0.2678 Tw -(declarations take precedence over system record declarations, in)Tj -T* -0.6044 Tw -(cases where an unqualified field name would be considered)Tj -T* -0.0367 Tw -[(ambiguous. All of the records defined in the standard Medley system)]TJ -T* -0 Tw -(are defined as system records.)Tj -/TT4 1 Tf -10 0 0 10 54 434.45 Tm -(CREATE)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 431.74 m -510.01 431.74 l -S -BT -/TT8 1 Tf -9 0 0 9 78 417.79 Tm -0.1267 Tw -(You can create )Tj -/TT10 1 Tf -6 0 0 6 141.8536 417.79 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 163.4571 417.79 Tm -0.1267 Tw -(s by hand if you like, using )Tj -/TT10 1 Tf -6 0 0 6 281.3311 417.79 Tm -0 Tw -(CONS)Tj -/TT8 1 Tf -9 0 0 9 295.7335 417.79 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 301.3735 417.79 Tm -(LIST)Tj -/TT8 1 Tf -9 0 0 9 315.7758 417.79 Tm -0.1267 Tw -[(, etc. But that defeats the whole point of)]TJ --26.4195 -1.2222 TD -0 Tw -(hiding implementation details. So much easier to use:)Tj -/TT10 1 Tf -6 0 0 6 114 392.39 Tm -(\(create )Tj -/TT16 1 Tf -9 0 0 9 142.8047 392.39 Tm -(RECORD-NAME)Tj -/TT10 1 Tf -6 0 0 6 202.2144 392.39 Tm -( . )Tj -/TT16 1 Tf -9 0 0 9 213.0161 392.39 Tm -(ASSIGNMENTS)Tj -/TT10 1 Tf -6 0 0 6 272.4258 392.39 Tm -(\))Tj --32.4043 -2.7667 TD -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 99.6035 375.79 Tm -0.09 Tw -[( translates into an appropriate Interlisp form that uses )]TJ -/TT10 1 Tf -6 0 0 6 323.8515 375.79 Tm -0 Tw -(CONS)Tj -/TT8 1 Tf -9 0 0 9 338.2539 375.79 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 343.5639 375.79 Tm -(LIST)Tj -/TT8 1 Tf -9 0 0 9 357.9662 375.79 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 363.2762 375.79 Tm -(PUTHASH)Tj -/TT8 1 Tf -9 0 0 9 388.4803 375.79 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 393.7903 375.79 Tm -(ARRAY)Tj -/TT8 1 Tf -9 0 0 9 411.7932 375.79 Tm -0.09 Tw -(, etc., to create the)Tj --37.0881 -1.2222 TD -0.0056 Tw -(new datum with the its fields initialized to the values you specify. )Tj -/TT16 1 Tf -29.6875 0 TD -0 Tw -(ASSIGNMENTS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0056 Tw -[( is optional and may)]TJ --36.2885 -1.2889 TD -0 Tw -(contain expressions of the following form:)Tj -/TT16 1 Tf -0.8089 -2 TD -(FIELD-NAME)Tj -/TT10 1 Tf -6 0 0 6 139.2888 335.19 Tm -( )Tj -/TT19 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( )Tj -/TT16 1 Tf -9 0 0 9 152.4108 335.19 Tm -(FORM)Tj -/TT8 1 Tf -3.0655 0 TD -(Specifies initial value for )Tj -/TT16 1 Tf -11.1509 0 TD -(FIELD-NAME)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf -6 0 0 6 130.8 316.59 Tm -(USING )Tj -/TT16 1 Tf -9 0 0 9 152.4035 316.59 Tm -[(FORM)-665.9(FORM)]TJ -/TT8 1 Tf -5.4667 0 TD -0.0733 Tw -[( is an existing instance of )]TJ -/TT16 1 Tf -11.709 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0733 Tw -[(. If you dont specify a value)]TJ --20.7105 -1.2889 TD -0 Tw -(for some field, the value of the corresponding field in )Tj -/TT16 1 Tf -23.7813 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -( is to be used.)Tj -/TT10 1 Tf -6 0 0 6 123.6 286.39 Tm -(COPYING )Tj -/TT16 1 Tf -9 0 0 9 152.4047 286.39 Tm -(FORM)Tj -/TT8 1 Tf -3.0661 0 TD -(Like )Tj -/TT10 1 Tf -6 0 0 6 199.6831 286.39 Tm -(USING)Tj -/TT8 1 Tf -9 0 0 9 217.686 286.39 Tm -(, but the corresponding values are copied \(with )Tj -/TT10 1 Tf -6 0 0 6 407.9912 286.39 Tm -(COPYALL)Tj -/TT8 1 Tf -9 0 0 9 433.1953 286.39 Tm -(\).)Tj -/TT10 1 Tf -6 0 0 6 123.6 267.79 Tm -(REUSING )Tj -/TT16 1 Tf -9 0 0 9 152.4047 267.79 Tm -(FORM)Tj -/TT8 1 Tf -3.0661 0 TD -(Like )Tj -/TT10 1 Tf -6 0 0 6 201.6531 267.79 Tm -(USING)Tj -/TT8 1 Tf -9 0 0 9 219.656 267.79 Tm -0.2189 Tw -(, but wherever possible, the corresponding )Tj -/TT14 1 Tf -20.4515 0 TD -0 Tw -(structure)Tj -/TT8 1 Tf -3.7422 0 TD -0.2189 Tw -[( in )]TJ -/TT16 1 Tf -1.8108 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2189 Tw -[( is)]TJ --32.8111 -1.2889 TD -0 Tw -(used.)Tj -/TT10 1 Tf -6 0 0 6 120 238.19 Tm -(SMASHING )Tj -/TT16 1 Tf -9 0 0 9 152.4053 238.19 Tm -(FORM)Tj -/TT8 1 Tf -3.0661 0 TD -0.0122 Tw -(A new instance of the record is not created at all; rather, new field values are)Tj -0 -1.2889 TD -0 Tw -(smashed into )Tj -/TT16 1 Tf -6.1475 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(, which )Tj -/TT10 1 Tf -6 0 0 6 288.2769 226.59 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 309.8804 226.59 Tm -( then returns.)Tj --25.7645 -2.0667 TD -0.0611 Tw -(When it makes a difference, Medley goes to great pains to make its translation do things in the same)Tj -0 -1.2222 TD -0.0278 Tw -(order as the original )Tj -/TT10 1 Tf -6 0 0 6 161.7007 196.99 Tm -0 Tw -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 183.3042 196.99 Tm -0.0278 Tw -[( expression. For example, given the declaration )]TJ -/TT10 1 Tf -6 0 0 6 377.0771 196.99 Tm -0.0683 Tw -(\(RECORD CONS \(CAR . CDR\)\))Tj -/TT8 1 Tf -9 0 0 9 468.7318 196.99 Tm -0.0278 Tw -(, the)Tj --43.4146 -1.2222 TD -0 Tw -(expression )Tj -/TT10 1 Tf -6 0 0 6 123.1113 185.99 Tm -0.06 Tw -(\(create CONS CDR)Tj -/TT19 1 Tf -9.7216 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.06 Tw -(X CAR)Tj -/TT19 1 Tf -3.0605 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y\))Tj -/TT8 1 Tf -9 0 0 9 218.8466 185.99 Tm -0.0256 Tw -[( will translate to )]TJ -/TT10 1 Tf -6 0 0 6 286.3877 185.99 Tm -0.06 Tw -(\(CONS Y X\))Tj -/TT8 1 Tf -9 0 0 9 323.1136 185.99 Tm -0.0256 Tw -(, but )Tj -/TT10 1 Tf -6 0 0 6 343.6654 185.99 Tm -0.06 Tw -(\(create CONS CDR)Tj -/TT19 1 Tf -9.7216 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.06 Tw -(\(FOO\) CAR)Tj -/TT19 1 Tf -5.4609 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(FIE\)\))Tj -/TT8 1 Tf -9 0 0 9 468.2054 185.99 Tm -0.0256 Tw -[( will)]TJ --43.3562 -1.2222 TD -0.0189 Tw -(translate to )Tj -/TT10 1 Tf -6 0 0 6 125.0978 174.99 Tm -0.045 Tw -(\(\(LAMBDA \($$1\) \(CONS \(PROGN \(SETQ $$1 \(FOO\)\) \(FIE\)\) $$1\)\)\) )Tj -/TT8 1 Tf -9 0 0 9 339.9624 174.99 Tm -0 Tw -(because )Tj -/TT10 1 Tf -6 0 0 6 373.7198 174.99 Tm -(FOO)Tj -/TT8 1 Tf -9 0 0 9 384.5215 174.99 Tm -0.0189 Tw -[( might set some variables)]TJ --34.058 -1.2222 TD -0 Tw -(used by )Tj -/TT10 1 Tf -6 0 0 6 111.5347 163.99 Tm -(FIE)Tj -/TT8 1 Tf -9 0 0 9 122.3364 163.99 Tm -(.)Tj --4.9263 -2 TD -0.14 Tw -(How are )Tj -/TT10 1 Tf -6 0 0 6 117.2934 145.99 Tm -0 Tw -(USING)Tj -/TT8 1 Tf -9 0 0 9 135.2964 145.99 Tm -0.14 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 157.5522 145.99 Tm -0 Tw -(REUSING)Tj -/TT8 1 Tf -9 0 0 9 182.7563 145.99 Tm -0.14 Tw -[( different? )]TJ -/TT10 1 Tf -6 0 0 6 231.7429 145.99 Tm -0 Tw -(\(create )Tj -/TT16 1 Tf -9 0 0 9 262.5675 145.99 Tm -(RECORD)Tj -/TT10 1 Tf -6 0 0 6 294.9728 145.99 Tm -0.3367 Tw -[( reusing )]TJ -/TT16 1 Tf -9 0 0 9 331.4181 145.99 Tm -0 Tw -(FORM)Tj -/TT10 1 Tf -6 0 0 6 353.0216 145.99 Tm -0.3367 Tw -[( ...\))]TJ -/TT8 1 Tf -9 0 0 9 373.0445 145.99 Tm -0.14 Tw -[( doesnt do any destructive)]TJ --32.7827 -1.2889 TD -0.0089 Tw -(operations on the value of )Tj -/TT16 1 Tf -11.8164 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -(, but )Tj -/TT14 1 Tf -2.2502 0 TD -0 Tw -(will)Tj -/TT8 1 Tf -1.5557 0 TD -0.0089 Tw -[( incorporate as much as possible of the old data structure into)]TJ --18.0227 -1.2889 TD -0.0744 Tw -[(the new one. On the other hand, )]TJ -/TT10 1 Tf -6 0 0 6 216.088 122.79 Tm -0 Tw -(\(create )Tj -/TT16 1 Tf -9 0 0 9 245.9727 122.79 Tm -(RECORD)Tj -/TT10 1 Tf -6 0 0 6 278.378 122.79 Tm -0.18 Tw -[( using )]TJ -/TT16 1 Tf -9 0 0 9 305.7421 122.79 Tm -0 Tw -(FORM)Tj -/TT10 1 Tf -6 0 0 6 327.3456 122.79 Tm -0.18 Tw -[( ...\))]TJ -/TT8 1 Tf -9 0 0 9 346.4285 122.79 Tm -0.0744 Tw -[( will create a completely new data)]TJ --29.8254 -1.2889 TD -0.0878 Tw -(structure, with only the )Tj -/TT14 1 Tf -10.9917 0 TD -0 Tw -(contents)Tj -/TT8 1 Tf -3.4077 0 TD -0.0878 Tw -[( of the fields re-used. For example, )]TJ -/TT10 1 Tf -6 0 0 6 355.7969 111.19 Tm -0 Tw -(REUSING)Tj -/TT8 1 Tf -9 0 0 9 381.001 111.19 Tm -0.0878 Tw -[( a )]TJ -/TT10 1 Tf -6 0 0 6 391.581 111.19 Tm -0 Tw -(PROPRECORD)Tj -/TT8 1 Tf -9 0 0 9 427.5869 111.19 Tm -0.0878 Tw -[( just )]TJ -/TT10 1 Tf -6 0 0 6 447.9491 111.19 Tm -0 Tw -(CONS)Tj -/TT8 1 Tf -9 0 0 9 462.3514 111.19 Tm -0.0878 Tw -(es the)Tj --42.7057 -1.2222 TD -0.16 Tw -(new property names and values onto the list, while )Tj -/TT10 1 Tf -6 0 0 6 297.1778 100.19 Tm -0 Tw -(USING)Tj -/TT8 1 Tf -9 0 0 9 315.1807 100.19 Tm -0.16 Tw -[( copies the top level of the list. Another)]TJ --26.3534 -1.2222 TD -0.1189 Tw -(example of this distinction occurs when a field is elaborated by a subdeclaration: )Tj -/TT10 1 Tf -6 0 0 6 414.5741 89.19 Tm -0 Tw -(USING)Tj -/TT8 1 Tf -9 0 0 9 432.577 89.19 Tm -0.1189 Tw -[( will create a)]TJ --39.3974 -1.2222 TD -0.0189 Tw -(new instance of the sub-record, while )Tj -/TT10 1 Tf -6 0 0 6 230.2094 78.19 Tm -0 Tw -(REUSING)Tj -/TT8 1 Tf -9 0 0 9 255.4135 78.19 Tm -0.0189 Tw -[( will use the old contents of the field \(unless some field of)]TJ --19.7126 -1.2222 TD -0 Tw -(the subdeclaration is assigned in the )Tj -/TT10 1 Tf -6 0 0 6 224.4653 67.19 Tm -(CREATE)Tj -/TT8 1 Tf -9 0 0 9 246.0688 67.19 Tm -( expression.\))Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT19 34 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -42 0 obj -<< -/Length 9510 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0544 Tw -(If the value of a field is neither explicitly specified, nor implicitly specified via )Tj -/TT10 1 Tf -6 0 0 6 444.3839 569.54 Tm -0 Tw -(USING)Tj -/TT8 1 Tf -9 0 0 9 462.3868 569.54 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 467.3768 569.54 Tm -(COPYING)Tj -/TT8 1 Tf -9 0 0 9 492.5809 569.54 Tm -0.0544 Tw -[( or )]TJ -/TT10 1 Tf -6 0 0 6 506.5292 569.54 Tm -0 Tw -(REUSING)Tj -/TT8 1 Tf -9 0 0 9 531.7333 569.54 Tm -(,)Tj --45.0815 -1.2222 TD -0.0311 Tw -(the default value in the declaration is used, if any, otherwise )Tj -/TT10 1 Tf -6 0 0 6 371.1176 558.54 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 381.9193 558.54 Tm -0.0311 Tw -[(. \(For )]TJ -/TT10 1 Tf -6 0 0 6 408.23 558.54 Tm -0 Tw -(BETWEEN)Tj -/TT8 1 Tf -9 0 0 9 433.4341 558.54 Tm -0.0311 Tw -[( fields in )]TJ -/TT10 1 Tf -6 0 0 6 470.74 558.54 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 499.5447 558.54 Tm -0.0311 Tw -[( records,)]TJ -/TT16 1 Tf --41.505 -1.2222 TD -0 Tw -(N)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( is used; for other non-pointer fields zero is used.\) For example, following )Tj -/TT10 1 Tf -6 0 0 6 433.5847 547.54 Tm -(\(RECORD A \(B C D\) D )Tj -/TT19 1 Tf -12.002 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 3\))Tj --58.2529 -2.675 TD -(\(create A B )Tj -/TT19 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T\) ==> \(LIST T NIL 3\))Tj --8.188 -1.6667 TD -(\(create A B )Tj -/TT19 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T using X\) ==> \(LIST T \(CADR X\) \(CADDR X\)\))Tj --8.188 -1.6667 TD -(\(create A B )Tj -/TT19 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T copying X\)\) ==> [LIST T \(COPYALL \(CADR X\)\) \(COPYALL \(CADDR X])Tj --8.188 -1.6667 TD -(\(create A B )Tj -/TT19 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T reusing X\) ==> \(CONS T \(CDR X\)\))Tj -/TT4 1 Tf -10 0 0 10 102 481.6 Tm -(TYPE?)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 478.89 m -558.01 478.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 464.94 Tm -0.0489 Tw -[(The record package allows you to test if a given datum looks like an instance of a record. This can)]TJ -0 -1.2222 TD -0 Tw -(be done via an expression of the for)Tj -/TT10 1 Tf -6 0 0 6 267.4336 453.94 Tm -(m \(type? )Tj -/TT16 1 Tf -9 0 0 9 299.8389 453.94 Tm -(RECORD-NAME)Tj -/TT10 1 Tf -6 0 0 6 359.2485 453.94 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 362.8491 453.94 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 384.4526 453.94 Tm -(\).)Tj --43.0754 -3.1 TD -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 144.0029 435.34 Tm -0.0611 Tw -[( is mainly intended for records with a record type of )]TJ -/TT10 1 Tf -6 0 0 6 360.1159 435.34 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 388.9206 435.34 Tm -0.0611 Tw -[( or )]TJ -/TT10 1 Tf -6 0 0 6 402.9888 435.34 Tm -0 Tw -(TYPERECORD)Tj -/TT8 1 Tf -9 0 0 9 438.9947 435.34 Tm -0.0611 Tw -[(. For )]TJ -/TT10 1 Tf -6 0 0 6 463.1183 435.34 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 491.923 435.34 Tm -0.0611 Tw -(s, the )Tj -/TT10 1 Tf -6 0 0 6 516.0723 435.34 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 126 424.34 Tm -0.0033 Tw -(check is exact; i.e. the )Tj -/TT10 1 Tf -6 0 0 6 212.9288 424.34 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 230.9317 424.34 Tm -0.0001 Tc -0.0032 Tw -( expression will return non-)Tj -/TT10 1 Tf -6 0 0 6 341.4555 424.34 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 352.2573 424.34 Tm -0.0002 Tc -0.0031 Tw -( only if the value of )Tj -/TT16 1 Tf -8.8232 0 TD -0 Tc -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0002 Tc -0.0031 Tw -( is an instance of the)Tj --36.3633 -1.2889 TD -0 Tc -0.0067 Tw -(record named by )Tj -/TT16 1 Tf -7.8037 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0067 Tw -[(. For )]TJ -/TT10 1 Tf -6 0 0 6 278.2965 412.74 Tm -0 Tw -(TYPERECORD)Tj -/TT8 1 Tf -9 0 0 9 314.3024 412.74 Tm -0.0067 Tw -(s, the )Tj -/TT10 1 Tf -6 0 0 6 337.4717 412.74 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 355.4746 412.74 Tm -0.0067 Tw -[( expression will check that the value of )]TJ -/TT16 1 Tf -17.4405 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf --42.9377 -1.2889 TD -0.1578 Tw -(is a list beginning with )Tj -/TT16 1 Tf -11.0916 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.1578 Tw -[(. For )]TJ -/TT10 1 Tf -6 0 0 6 311.9679 401.14 Tm -0 Tw -(ARRAYRECORD)Tj -/TT8 1 Tf -9 0 0 9 351.5743 401.14 Tm -0.1578 Tw -(s, it checks that the value is an array of the)Tj --25.0638 -1.2889 TD -0.02 Tw -[(correct size. For )]TJ -/TT10 1 Tf -6 0 0 6 193.9475 389.54 Tm -0 Tw -(PROPRECORD)Tj -/TT8 1 Tf -9 0 0 9 229.9534 389.54 Tm -0.02 Tw -(s and )Tj -/TT10 1 Tf -6 0 0 6 253.8637 389.54 Tm -0 Tw -(ASSOCRECORD)Tj -/TT8 1 Tf -9 0 0 9 293.4701 389.54 Tm -0.02 Tw -(s, a )Tj -/TT10 1 Tf -6 0 0 6 308.8946 389.54 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 326.8975 389.54 Tm -0.02 Tw -[( expression will make sure that the value of )]TJ -/TT16 1 Tf -19.6312 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -[( is)]TJ --44.3535 -1.2889 TD -0 Tw -(a property/association list with property names among the field-names of the declaration.)Tj -0 -2 TD -0.0622 Tw -(There is no built-in type test for records of type )Tj -/TT10 1 Tf -6 0 0 6 321.3866 359.94 Tm -0 Tw -(ACCESSFNS)Tj -/TT8 1 Tf -9 0 0 9 353.7919 359.94 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 358.8519 359.94 Tm -(HASHLINK)Tj -/TT8 1 Tf -9 0 0 9 387.6566 359.94 Tm -0.0622 Tw -[( or )]TJ -/TT10 1 Tf -6 0 0 6 401.7448 359.94 Tm -0 Tw -(RECORD)Tj -/TT8 1 Tf -9 0 0 9 423.3484 359.94 Tm -0.0622 Tw -[(. Type tests can be defined)]TJ --33.0387 -1.2222 TD -0.1244 Tw -(for these kinds of records, or redefined for the other kinds, by including an expression of the form)Tj -/TT10 1 Tf -6 0 0 6 126 337.94 Tm -0 Tw -(\(TYPE? )Tj -/TT16 1 Tf -9 0 0 9 153.9541 337.94 Tm -(COM)Tj -/TT10 1 Tf -6 0 0 6 170.1567 337.94 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 173.7573 337.94 Tm -0.1911 Tw -[( in the record declaration \(see the Record Declarations section below\). Attempting to)]TJ --5.3064 -1.2889 TD -0.0033 Tw -(execute a )Tj -/TT10 1 Tf -6 0 0 6 164.9955 326.34 Tm -0 Tw -(TYPE?)Tj -/TT8 1 Tf -9 0 0 9 182.9985 326.34 Tm -0.0001 Tc -0.0032 Tw -( expression for a record that has no type test causes an error, )Tj -/TT10 1 Tf -6 0 0 6 425.7732 326.34 Tm -0 Tc -0.0083 Tw -(Type? not implemented for this)Tj --49.9622 -1.4083 TD -0 Tw -(record.)Tj -/TT4 1 Tf -10 0 0 10 102 296 Tm -(WITH)Tj -ET -102.01 293.29 m -558.01 293.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 279.34 Tm -0.0311 Tw -[(Often one wants to write a complex expression that manipulates several fields of a single record. The)]TJ -/TT10 1 Tf -6 0 0 6 126 268.34 Tm -0 Tw -(WITH)Tj -/TT8 1 Tf -9 0 0 9 140.4023 268.34 Tm -0.0911 Tw -[( construct can make it easier to write such expressions by allowing one to refer to the fields of a)]TJ --1.6003 -1.2222 TD -0 Tw -(record as if they were variables within a lexical scope:)Tj -/TT10 1 Tf -6 0 0 6 162 242.94 Tm -(\(with )Tj -/TT16 1 Tf -9 0 0 9 183.6035 242.94 Tm -(RECORD-NAME)Tj -/TT10 1 Tf -6 0 0 6 243.0132 242.94 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 246.6138 242.94 Tm -(RECORD-INSTANCE)Tj -/TT10 1 Tf -6 0 0 6 327.627 242.94 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 331.2275 242.94 Tm -(FORM)Tj -6 0 0 6 352.8 239.94 Tm -(1)Tj -/TT10 1 Tf -0.6 0.5 TD -( ... )Tj -/TT16 1 Tf -9 0 0 9 374.4029 242.94 Tm -(FORM)Tj -6 0 0 6 396 239.94 Tm -(N)Tj -/TT10 1 Tf -0.6 0.5 TD -(\))Tj -/TT16 1 Tf -9 0 0 9 126 224.39 Tm -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0844 Tw -[( is the name of a record, and )]TJ -/TT16 1 Tf -13.4129 0 TD -0 Tw -(RECORD-INSTANCE)Tj -/TT8 1 Tf -9.0015 0 TD -0.0844 Tw -[( is an expression which evaluates to)]TJ --29.0154 -1.2889 TD -0.1911 Tw -[(an instance of that record. The expressions )]TJ -/TT16 1 Tf -20.8062 0 TD -0 Tw -(FORM)Tj -2.4038 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -6 0 0 6 344.26 212.79 Tm -(...)Tj -/TT8 1 Tf -9 0 0 9 355.0617 212.79 Tm -( )Tj -/TT16 1 Tf -0.4411 0 TD -(FORM)Tj -2.3998 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1911 Tw -[( are evaluated so that references to)]TJ --28.8922 -1.6222 TD -0.2844 Tw -(variables which are field-names of )Tj -/TT16 1 Tf -16.8617 0 TD -0 Tw -(RECORD-NAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.2844 Tw -[( are implemented via )]TJ -/TT10 1 Tf -6 0 0 6 434.1176 198.19 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 452.1205 198.19 Tm -0.2844 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 476.9764 198.19 Tm -0 Tw -(SETQ)Tj -/TT8 1 Tf -9 0 0 9 491.3787 198.19 Tm -0.2844 Tw -(s of those)Tj --40.5976 -1.2889 TD -0 Tw -(variables are implemented via )Tj -/TT10 1 Tf -6 0 0 6 248.6953 186.59 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 273.8994 186.59 Tm -(. )Tj --16.4333 -2 TD -(For example, given)Tj -/TT10 1 Tf -6 0 0 6 162 156.14 Tm -(\(RECORD RECN \(FLD1 FLD2\)\))Tj -0 -1 TD -(\(SETQ INST \(create RECN FLD1 )Tj -/TT19 1 Tf -17.4028 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 10 FLD2 )Tj -/TT19 1 Tf -5.4009 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 20\)\))Tj -/TT8 1 Tf -9 0 0 9 126 134.59 Tm -(Then the construct)Tj -/TT10 1 Tf -6 0 0 6 162 122.14 Tm -(\(with RECN INST \(SETQ FLD2 \(PLUS FLD1 FLD2])Tj -/F2 1 Tf -10 0 0 10 126 105.31 Tm -(is equivalent to)Tj -/TT10 1 Tf -6 0 0 6 126 93.14 Tm -(\(replace FLD2 of INST with \(PLUS \(fetch FLD1 of INST\) \(fetch FLD2 of INST])Tj -/TT18 1 Tf -9 0 0 9 126 77.59 Tm -(Warning)Tj -/TT8 1 Tf -4 0 TD -(: )Tj -/TT10 1 Tf -6 0 0 6 168.09 77.59 Tm -0.425 Tw -[( WITH)]TJ -/TT8 1 Tf -9 0 0 9 194.7935 77.59 Tm -0.1767 Tw -[( is implemented by doing simple substitutions in the body of the forms, without)]TJ --7.6437 -1.2222 TD -0.1256 Tw -[(regard for how the record fields are used. This means, for example, if the record )]TJ -/TT10 1 Tf -6 0 0 6 466.0937 66.59 Tm -0 Tw -(FOO)Tj -/TT8 1 Tf -9 0 0 9 476.8954 66.59 Tm -0.1256 Tw -[( is defined by)]TJ -/TT10 1 Tf -6 0 0 6 126 55.59 Tm -0 Tw -(\(RECORD FOO \(POINTER1 POINTER2\)\))Tj -/TT8 1 Tf -9 0 0 9 241.2187 55.59 Tm -(, then the form)Tj -/TT10 1 Tf -6 0 0 6 162 43.14 Tm -(\(with FOO X \(SELECTQ Y \(POINTER1 POINTER1\) NIL])Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 44 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 16 0 R -/TT18 20 0 R -/TT19 34 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -46 0 obj -<< -/Length 7946 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-11)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(will be translated as)Tj -/TT10 1 Tf -6 0 0 6 114 557.09 Tm -(\(SELECTQ Y \(\(CAR X\) \(CAR X\)\) NIL])Tj -/TT8 1 Tf -9 0 0 9 78 541.54 Tm -(Be careful that record field names are not used except as variables in the )Tj -/TT10 1 Tf -6 0 0 6 366.7515 541.54 Tm -(WITH)Tj -/TT8 1 Tf -9 0 0 9 381.1538 541.54 Tm -( forms.)Tj -/TT4 1 Tf -10 0 0 10 54 519.2 Tm -(Defining New Record Types)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 516.49 m -510.01 516.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 502.54 Tm -0.1444 Tw -(In addition to the built-in record types, you can declare your own record types by performing the)Tj -0 -1.2222 TD -0 Tw -(following steps:)Tj -2 -2 TD -[(1.)-583.3(Add)]TJ -/TT10 1 Tf -6 0 0 6 125.9956 473.54 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 129.5962 473.54 Tm -(the new record-type to the value of )Tj -/TT10 1 Tf -6 0 0 6 271.5571 473.54 Tm -(CLISPRECORDTYPES)Tj -/TT8 1 Tf -9 0 0 9 329.1665 473.54 Tm -(.)Tj --25.9074 -1.7778 TD -[(2.)-583.3(Perform )]TJ -/TT10 1 Tf -6 0 0 6 142.9629 457.54 Tm -(\(MOVD RECORD )Tj -/TT16 1 Tf -9 0 0 9 193.3711 457.54 Tm -(RECORD-TYPE)Tj -/TT10 1 Tf -6 0 0 6 252.7808 457.54 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 256.3813 457.54 Tm -(.)Tj --17.8202 -1.8444 TD -0.0844 Tw -[(3.)-583.3(Put the name of a function which will return the translation on the property list of )]TJ -/TT16 1 Tf -39.1307 0 TD -0 Tw -(RECORD-)Tj --37.7974 -1.2889 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2389 Tw -(, as the value of the property )Tj -/TT10 1 Tf -6 0 0 6 260.8845 429.34 Tm -0 Tw -(USERRECORDTYPE)Tj -/TT8 1 Tf -9 0 0 9 311.2927 429.34 Tm -0.2389 Tw -[(. Whenever a record declaration of type)]TJ -/TT16 1 Tf --22.5881 -1.2889 TD -0 Tw -(RECORD-TYPE)Tj -/TT8 1 Tf -6.6011 0 TD -0.3011 Tw -[( is encountered, this function will be passed the record declaration as its)]TJ --6.6011 -1.2889 TD -0.0411 Tw -(argument, and should return a )Tj -/TT14 1 Tf -14.0596 0 TD -0 Tw -(new)Tj -/TT8 1 Tf -1.6675 0 TD -0.0411 Tw -[( record declaration which the record package will then use)]TJ --15.727 -1.2222 TD -0 Tw -(in its place.)Tj -/TT4 1 Tf -10 0 0 10 54 372.8 Tm -(Manipulating Record Declarations)Tj -ET -54.01 370.09 m -510.01 370.09 l -S -BT -/TT10 1 Tf -6 0 0 6 102 351.86 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 351.86 Tm -(EDITREC)Tj -/F1 1 Tf -10 0 0 10 143.4 351.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 146.27 351.86 Tm -(NAME)Tj -/F3 1 Tf -10 0 0 10 167.8735 351.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 170.6535 351.86 Tm -(COM)Tj -6 0 0 6 186.85 348.86 Tm -(1)Tj -/F3 1 Tf -10 0 0 10 190.45 351.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 193.23 351.86 Tm -(...)Tj -/F3 1 Tf -10 0 0 10 209.4326 351.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 212.2126 351.86 Tm -(COM)Tj -6 0 0 6 228.41 348.86 Tm -(N)Tj -/TT10 1 Tf -0.6 0.5 TD -(\))Tj -/TT8 1 Tf -9 0 0 9 235.6106 351.86 Tm -[( )-13246.6([NLambda NoSpread Function])]TJ -/TT10 1 Tf -6 0 0 6 126 333.31 Tm -(EDITREC)Tj -/TT8 1 Tf -9 0 0 9 151.2041 333.31 Tm -0.04 Tw -[( calls the editor on a copy of all declarations in which )]TJ -/TT16 1 Tf -24.1953 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -[( is the record name or a)]TJ --29.3962 -1.2889 TD -0.0822 Tw -[(field name. On exit, it redeclares those that have changed and undeclares any that have)]TJ -0 -1.2222 TD -0 Tw -(been deleted. If )Tj -/TT16 1 Tf -7.2891 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -6 0 0 6 224.1387 310.71 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 234.9404 310.71 Tm -(, )Tj -/TT14 1 Tf -0.5 0 TD -(all)Tj -/TT8 1 Tf -0.9995 0 TD -( declarations are edited.)Tj -/TT16 1 Tf --13.604 -2.0667 TD -(COM)Tj -6 0 0 6 142.2 289.11 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 145.8 292.11 Tm -( )Tj -/TT10 1 Tf -6 0 0 6 148.05 292.11 Tm -(...)Tj -/TT8 1 Tf -9 0 0 9 158.8517 292.11 Tm -( )Tj -/TT16 1 Tf -0.25 0 TD -(COM)Tj -6 0 0 6 177.3 289.11 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 180.9 292.11 Tm -( are \(optional\) edit commands.)Tj --11.4333 -2.2833 TD -0.0333 Tw -(When you redeclare a global record, the translations of all expressions involving that record or any of)Tj -0 -1.2222 TD -0.27 Tw -(its fields are automatically deleted from )Tj -/TT10 1 Tf -6 0 0 6 253.0815 260.56 Tm -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -9 0 0 9 289.0873 260.56 Tm -0.27 Tw -(, and thus will be recomputed using the new)Tj --23.4541 -1.2222 TD -0.1056 Tw -[(information. If you change a )]TJ -/TT14 1 Tf -13.6763 0 TD -0 Tw -(local)Tj -/TT8 1 Tf -1.8506 0 TD -0.1056 Tw -[( record declaration \(see Chapter 21\), or change some other CLISP)]TJ --15.5269 -1.2222 TD -0.2322 Tw -(declaration \(see Chapter 21\), e.g., )Tj -/TT10 1 Tf -6 0 0 6 222.4612 238.56 Tm -0 Tw -(STANDARD)Tj -/TT8 1 Tf -9 0 0 9 251.2659 238.56 Tm -0.2322 Tw -[( to )]TJ -/TT10 1 Tf -6 0 0 6 267.7946 238.56 Tm -0 Tw -(FAST)Tj -/TT8 1 Tf -9 0 0 9 282.1969 238.56 Tm -0.2322 Tw -(, and wish the new information to affect record)Tj --22.6885 -1.2222 TD -0.23 Tw -(expressions already translated, you must make sure the corresponding translations are removed,)Tj -T* -0 Tw -(usually either by )Tj -/TT10 1 Tf -6 0 0 6 147.1172 216.56 Tm -(CLISPIFY)Tj -/TT8 1 Tf -9 0 0 9 175.9219 216.56 Tm -(ing or using the )Tj -/TT10 1 Tf -6 0 0 6 240.8423 216.56 Tm -(DW)Tj -/TT8 1 Tf -9 0 0 9 248.0435 216.56 Tm -( edit macro.)Tj -/TT10 1 Tf -6 0 0 6 102 194.28 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 194.28 Tm -(RECLOOK)Tj -/F1 1 Tf -10 0 0 10 143.4 194.28 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 146.27 194.28 Tm -(RECNAME)Tj -/F3 1 Tf -10 0 0 10 184.0761 194.28 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 186.8561 194.28 Tm -()Tj -/F3 1 Tf -10 0 0 10 192.257 194.28 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 195.037 194.28 Tm -()Tj -/F3 1 Tf -10 0 0 10 200.4379 194.28 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 203.2179 194.28 Tm -()Tj -/F3 1 Tf -10 0 0 10 208.6188 194.28 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 211.3988 194.28 Tm -()Tj -/TT10 1 Tf -6 0 0 6 216.7997 194.28 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 220.4002 194.28 Tm -[( )-24414.4([Function])]TJ --10.4889 -1.8444 TD -0.1633 Tw -(Returns the entire declaration for the record named )Tj -/TT16 1 Tf -24.2735 0 TD -0 Tw -(RECNAME)Tj -/TT8 1 Tf -4.2007 0 TD -(; )Tj -/TT10 1 Tf -6 0 0 6 388.2373 177.68 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 399.0391 177.68 Tm -0.1633 Tw -[( if there is no record)]TJ --30.3377 -1.2889 TD -0.1178 Tw -(declaration with name )Tj -/TT16 1 Tf -10.5452 0 TD -0 Tw -(RECNAME)Tj -/TT8 1 Tf -4.2007 0 TD -0.1178 Tw -[(. Note that the record package maintains internal state)]TJ --14.7459 -1.2889 TD -0.0544 Tw -(about current record declarations, so performing destructive operations \(e.g. )Tj -/TT10 1 Tf -6 0 0 6 436.7923 154.48 Tm -0 Tw -(NCONC)Tj -/TT8 1 Tf -9 0 0 9 454.7952 154.48 Tm -0.0544 Tw -(\) on the)Tj --36.5328 -1.2222 TD -0.0322 Tw -(value of )Tj -/TT10 1 Tf -6 0 0 6 160.932 143.48 Tm -0 Tw -(RECLOOK)Tj -/TT8 1 Tf -9 0 0 9 186.1361 143.48 Tm -0.0322 Tw -[( may leave the record package in an inconsistent state. To change a record)]TJ --6.6818 -1.2222 TD -0 Tw -(declaration, use )Tj -/TT10 1 Tf -6 0 0 6 190.9863 132.48 Tm -(EDITREC)Tj -/TT8 1 Tf -9 0 0 9 216.1904 132.48 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 102 110.2 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 110.2 Tm -(FIELDLOOK)Tj -/F1 1 Tf -10 0 0 10 154.2 110.2 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 157.07 110.2 Tm -(FIELDNAME)Tj -/TT10 1 Tf -6 0 0 6 205.6779 110.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 209.2785 110.2 Tm -[( )-25650.2([Function])]TJ --9.2532 -1.8444 TD -(Returns the list of declarations in which )Tj -/TT16 1 Tf -17.8198 0 TD -(FIELDNAME)Tj -/TT8 1 Tf -5.4009 0 TD -( is the name of a field.)Tj -/TT10 1 Tf -6 0 0 6 102 70.72 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 70.72 Tm -(RECORDFIELDNAMES)Tj -/F1 1 Tf -10 0 0 10 192 70.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 194.87 70.72 Tm -(RECORDNAME)Tj -/F3 1 Tf -10 0 0 10 248.8788 70.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 251.6588 70.72 Tm -()Tj -/TT10 1 Tf -6 0 0 6 257.0597 70.72 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 260.6602 70.72 Tm -[( )-19941.1([Function])]TJ --14.9623 -1.8444 TD -0.0833 Tw -(Returns the list of fields declared in record )Tj -/TT16 1 Tf -19.7228 0 TD -0 Tw -(RECORDNAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0833 Tw -(. )Tj -/TT16 1 Tf -0.9167 0 TD -0 Tw -(RECORDNAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0833 Tw -[( may either be a)]TJ --32.6414 -1.2889 TD -0 Tw -(name or an entire declaration.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/F3 48 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -52 0 obj -<< -/Length 9319 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -6 0 0 6 150 568.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 568.26 Tm -(RECORDACCESS)Tj -/F1 1 Tf -10 0 0 10 218.4 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 221.27 568.26 Tm -(FIELD)Tj -/F3 1 Tf -10 0 0 10 248.2744 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 251.0544 568.26 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 278.0588 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 280.8388 568.26 Tm -(DEC)Tj -/F3 1 Tf -10 0 0 10 297.0414 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 299.8214 568.26 Tm -(TYPE)Tj -/F3 1 Tf -10 0 0 10 321.4249 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 324.2049 568.26 Tm -(NEWVALUE)Tj -/TT10 1 Tf -6 0 0 6 367.412 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 371.0125 568.26 Tm -[( )-13013([Function])]TJ -/TT16 1 Tf --21.8903 -1.8444 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3367 Tw -[( is one of )]TJ -/TT10 1 Tf -6 0 0 6 245.5296 551.66 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 263.5326 551.66 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 271.0626 551.66 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 296.2667 551.66 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 303.7967 551.66 Tm -(FFETCH)Tj -/TT8 1 Tf -9 0 0 9 325.4002 551.66 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 332.9302 551.66 Tm -(FREPLACE)Tj -/TT8 1 Tf -9 0 0 9 361.7349 551.66 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 369.2649 551.66 Tm -(/REPLACE)Tj -/TT8 1 Tf -9 0 0 9 398.0696 551.66 Tm -0.3367 Tw -[( or their lowercase equivalents.)]TJ -/TT16 1 Tf --24.8966 -1.2889 TD -0 Tw -(TYPE)Tj -/TT10 1 Tf -6 0 0 6 195.6035 540.06 Tm -(=NIL)Tj -/TT8 1 Tf -9 0 0 9 210.0058 540.06 Tm -0.1822 Tw -[( means )]TJ -/TT10 1 Tf -6 0 0 6 243.5949 540.06 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 261.5979 540.06 Tm -0.1822 Tw -[(. If )]TJ -/TT16 1 Tf -2.2166 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1822 Tw -[( corresponds to a fetch operation, i.e. is )]TJ -/TT10 1 Tf -6 0 0 6 473.6213 540.06 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 491.6242 540.06 Tm -0.1822 Tw -(, or )Tj -/TT10 1 Tf -6 0 0 6 510.1225 540.06 Tm -0 Tw -(FFETCH)Tj -/TT8 1 Tf -9 0 0 9 531.726 540.06 Tm -(,)Tj -/TT10 1 Tf -6 0 0 6 174 528.46 Tm -(RECORDACCESS)Tj -/TT8 1 Tf -9 0 0 9 217.207 528.46 Tm -0.2978 Tw -[( performs )]TJ -/TT10 1 Tf -6 0 0 6 263.568 528.46 Tm -0 Tw -(\()Tj -/TT16 1 Tf -9 0 0 9 267.1686 528.46 Tm -(TYPE)Tj -/TT10 1 Tf -6 0 0 6 288.7721 528.46 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 296.6627 528.46 Tm -(FIELD)Tj -/TT10 1 Tf -6 0 0 6 323.6671 528.46 Tm -0.715 Tw -[( of )]TJ -/TT16 1 Tf -9 0 0 9 346.6494 528.46 Tm -0 Tw -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 373.6538 528.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 377.2544 528.46 Tm -0.2978 Tw -[(. If )]TJ -/TT16 1 Tf -2.5633 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2978 Tw -[( corresponds to a replace,)]TJ -/TT10 1 Tf -6 0 0 6 174 516.86 Tm -0 Tw -(RECORDACCESS)Tj -/TT8 1 Tf -9 0 0 9 217.207 516.86 Tm -0.2311 Tw -[( performs )]TJ -/TT10 1 Tf -6 0 0 6 262.368 516.86 Tm -0 Tw -(\()Tj -/TT16 1 Tf -9 0 0 9 265.9686 516.86 Tm -(TYPE)Tj -/TT10 1 Tf -6 0 0 6 287.5721 516.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 294.4927 516.86 Tm -(FIELD)Tj -/TT10 1 Tf -6 0 0 6 321.4971 516.86 Tm -0.5533 Tw -[( of )]TJ -/TT16 1 Tf -9 0 0 9 342.5394 516.86 Tm -0 Tw -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 369.5438 516.86 Tm -0.5533 Tw -[( with )]TJ -/TT16 1 Tf -9 0 0 9 397.7873 516.86 Tm -0 Tw -(NEWVALUE)Tj -/TT10 1 Tf -6 0 0 6 440.9944 516.86 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 444.595 516.86 Tm -0.2311 Tw -(. )Tj -/TT16 1 Tf -1.2122 0 TD -0 Tw -(DEC)Tj -/TT8 1 Tf -1.8003 0 TD -0.2311 Tw -[( is an optional)]TJ --33.0786 -1.2889 TD -0 Tw -(declaration; if given, )Tj -/TT16 1 Tf -9.312 0 TD -(FIELD)Tj -/TT8 1 Tf -3.0005 0 TD -( is interpreted as a field name of that declaration.)Tj --12.3125 -2.0667 TD -0.1622 Tw -(Note that )Tj -/TT10 1 Tf -6 0 0 6 216.6685 486.66 Tm -0 Tw -(RECORDACCESS)Tj -/TT8 1 Tf -9 0 0 9 259.8755 486.66 Tm -0.1622 Tw -[( is relatively inefficient, although it is better than constructing the)]TJ --9.5417 -1.2222 TD -0 Tw -(equivalent form and performing an )Tj -/TT10 1 Tf -6 0 0 6 317.2705 475.66 Tm -(EVAL)Tj -/TT8 1 Tf -9 0 0 9 331.6729 475.66 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 150 453.38 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 453.38 Tm -(RECORDACCESSFORM)Tj -/F1 1 Tf -10 0 0 10 240 453.38 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 242.87 453.38 Tm -(FIELD)Tj -/F3 1 Tf -10 0 0 10 269.8744 453.38 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 272.6544 453.38 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 299.6588 453.38 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 302.4388 453.38 Tm -(TYPE)Tj -/F3 1 Tf -10 0 0 10 324.0423 453.38 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 326.8223 453.38 Tm -(NEWVALUE)Tj -/TT10 1 Tf -6 0 0 6 370.0293 453.38 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 373.6299 453.38 Tm -[( )-12722.2([Function])]TJ --22.1811 -1.8444 TD -0.1067 Tw -(Returns the form that would be compiled as a result of a record access. )Tj -/TT16 1 Tf -33.3227 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[( is one of)]TJ -/TT10 1 Tf -6 0 0 6 174 425.18 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 192.0029 425.18 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 196.5029 425.18 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 221.707 425.18 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 226.207 425.18 Tm -(FFETCH)Tj -/TT8 1 Tf -9 0 0 9 247.8105 425.18 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 252.3105 425.18 Tm -(FREPLACE)Tj -/TT8 1 Tf -9 0 0 9 281.1152 425.18 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 285.6152 425.18 Tm -(/REPLACE)Tj -/TT8 1 Tf -9 0 0 9 314.4199 425.18 Tm -( or their lowercase equivalents. )Tj -/TT16 1 Tf -14.2559 0 TD -(TYPE)Tj -/TT10 1 Tf -6 0 0 6 464.3262 425.18 Tm -(=NIL)Tj -/TT8 1 Tf -9 0 0 9 478.7285 425.18 Tm -( means )Tj -/TT10 1 Tf -6 0 0 6 509.0376 425.18 Tm -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 527.0405 425.18 Tm -(. )Tj -/TT4 1 Tf -10 0 0 10 102 402.24 Tm -(Changetran)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 399.53 m -558.01 399.53 l -S -BT -/TT8 1 Tf -9 0 0 9 126 385.58 Tm -(Often, youll want to assign a new value to some datum that is a function of its current value:)Tj -0 -2 TD -(Incrementing a counter:)Tj -/TT10 1 Tf -6 0 0 6 221.0493 367.58 Tm -( \(SETQ X \(IPLUS X 1\)\))Tj -/TT8 1 Tf -9 0 0 9 126 349.58 Tm -(Pushing an item on the front of a list:)Tj -/TT10 1 Tf -6 0 0 6 273.252 349.58 Tm -( \(SETQ X \(CONS Y X\)\))Tj -/TT8 1 Tf -9 0 0 9 126 331.58 Tm -(Popping an item off a list:)Tj -/TT10 1 Tf -6 0 0 6 228.4761 331.58 Tm -( \(PROG1 \(CAR X\) \(SETQ X \(CDR X\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 313.58 Tm -0.0133 Tw -(Those are simple when youre working with a variable; it gets complicated when youre working with)Tj -0 -1.2222 TD -0 Tw -(structured data. For example, if you want to modify )Tj -/TT10 1 Tf -6 0 0 6 337.0693 302.58 Tm -(\(CAR X\))Tj -/TT8 1 Tf -9 0 0 9 362.2734 302.58 Tm -(, the above examples would be:)Tj -/TT10 1 Tf -6 0 0 6 162 290.13 Tm -(\(CAR \(RPLACA X \(IPLUS \(CAR X\) 1\)\)\))Tj -0 -1 TD -(\(CAR \(RPLACA X \(CONS Y \(CAR X\)\)\))Tj -T* -(\(PROG1 \(CAAR X\) \(RPLACA X \(CDAR X\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 262.58 Tm -(and if youre changing an element in an array, )Tj -/TT10 1 Tf -6 0 0 6 312.0249 262.58 Tm -(\(ELT A N\))Tj -/TT8 1 Tf -9 0 0 9 344.4302 262.58 Tm -(, the examples would be:)Tj -/TT10 1 Tf -6 0 0 6 162 250.13 Tm -(\(SETA A N \(IPLUS \(ELT A N\) 1\)\)\))Tj -T* -(\(SETA A N \(CONS Y \(ELT A N\)\)\)\))Tj -T* -(\(PROG1 \(CAR \(ELT A N\)\) \(SETA A N \(CDR \(ELT A N\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 222.58 Tm -0.2189 Tw -(Changetran is designed to provide a simpler way to express these common \(but user-extensible\))Tj -0 -1.2222 TD -0.4089 Tw -[(structure modifications. Changetran defines a set of CLISP words that encode the kind of)]TJ -T* -0.1422 Tw -[(modification to take placepushing on a list, adding to a number, etc. More important, you only)]TJ -T* -0.0544 Tw -[(indicate the item to be modified once. Thus, the change word )]TJ -/TT10 1 Tf -6 0 0 6 388.6261 189.58 Tm -0 Tw -(ADD)Tj -/TT8 1 Tf -9 0 0 9 399.4278 189.58 Tm -0.0544 Tw -[( is used to increase the value of a)]TJ --30.3809 -1.2222 TD -0.0067 Tw -[(datum by the sum of a set of numbers. Its arguments are the datum, and a set of numbers to be added)]TJ -T* -0.0467 Tw -[(to it. The datum must be a variable or an accessing expression \(envolving )]TJ -/TT10 1 Tf -6 0 0 6 427.7242 167.58 Tm -0 Tw -(FETCH)Tj -/TT8 1 Tf -9 0 0 9 445.7272 167.58 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 450.6472 167.58 Tm -(CAR)Tj -/TT8 1 Tf -9 0 0 9 461.4489 167.58 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 466.3689 167.58 Tm -(LAST)Tj -/TT8 1 Tf -9 0 0 9 480.7713 167.58 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 485.6913 167.58 Tm -(ELT)Tj -/TT8 1 Tf -9 0 0 9 496.493 167.58 Tm -0.0467 Tw -(, etc\) that)Tj --41.1659 -1.2222 TD -0 Tw -(can be translated to the appropriate setting expression.)Tj -0 -2 TD -(For example,)Tj -/TT10 1 Tf -6 0 0 6 177.7148 138.58 Tm -( \(ADD X 1\))Tj -/TT8 1 Tf -9 0 0 9 213.7207 138.58 Tm -( is equivalent to:)Tj -/TT10 1 Tf -6 0 0 6 162 126.13 Tm -(\(SETQ X \(PLUS X 1\)\))Tj -/TT8 1 Tf -9 0 0 9 126 110.58 Tm -(and )Tj -/TT10 1 Tf -6 0 0 6 143.4858 110.58 Tm -(\(ADD \(CADDR X\) \(FOO\)\))Tj -/TT8 1 Tf -9 0 0 9 219.0981 110.58 Tm -( is equivalent to:)Tj -/TT10 1 Tf -6 0 0 6 162 98.13 Tm -(\(CAR \(RPLACA \(CDDR X\) \(PLUS \(FOO\) \(CADDR X\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 82.58 Tm -0.0467 Tw -(If the datum is a complicated form involving function calls, such as )Tj -/TT10 1 Tf -6 0 0 6 400.3149 82.58 Tm -0.1117 Tw -(\(ELT \(FOO X\) \(FIE Y\)\)\))Tj -/TT8 1 Tf -9 0 0 9 482.2078 82.58 Tm -0.0467 Tw -(, Changetran)Tj --39.5786 -1.2222 TD -0.1978 Tw -(goes to some lengths to make sure that those subsidiary functions are evaluated only once, even)Tj -T* -0.0922 Tw -[(though they are used in both the setting and accessing parts of the translation. You can rely on the)]TJ -T* -0 Tw -(fact that the forms will be evaluated only as often as they appear in your expression. )Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/F3 48 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -55 0 obj -<< -/Length 8849 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-13)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(For )Tj -/TT10 1 Tf -6 0 0 6 94.3636 569.54 Tm -(ADD)Tj -/TT8 1 Tf -9 0 0 9 105.1654 569.54 Tm -0.0711 Tw -[( and all other changewords, the lowercase version \()]TJ -/TT10 1 Tf -6 0 0 6 314.5784 569.54 Tm -0 Tw -(add)Tj -/TT8 1 Tf -9 0 0 9 325.3801 569.54 Tm -0.0711 Tw -[(, etc.\) may also be specified. Like other)]TJ --27.4867 -1.2222 TD -0 Tw -(CLISP words, change words are translated using all CLISP declarations in effect \(see Chapter 21\).)Tj -0 -2 TD -0.0278 Tw -[(The following is a list of those change words recognized by Changetran. Except for POP, the value of)]TJ -0 -1.2222 TD -0 Tw -(all built-in changeword forms is defined to be the new value of the datum.)Tj -/TT10 1 Tf -6 0 0 6 102 507.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 507.26 Tm -(ADD)Tj -/F1 1 Tf -10 0 0 10 121.8 507.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 124.67 507.26 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 151.6744 507.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 154.4544 507.26 Tm -(ITEM)Tj -6 0 0 6 176.05 504.26 Tm -(1)Tj -/F3 1 Tf -10 0 0 10 179.65 507.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 182.43 507.26 Tm -(ITEM)Tj -6 0 0 6 204.03 504.26 Tm -(2)Tj -/F3 1 Tf -10 0 0 10 207.63 507.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 210.41 507.26 Tm -(...)Tj -/TT10 1 Tf -6 0 0 6 226.6126 507.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 230.2132 507.26 Tm -[( )-21044.1([Change Word])]TJ --11.5792 -2.0611 TD -0.1033 Tw -(Adds the specified items to the current value of the datum, stores the result back in the)Tj -0 -1.2222 TD -0.2633 Tw -[(datum location. The translation will use )]TJ -/TT10 1 Tf -6 0 0 6 305.4777 477.71 Tm -0 Tw -(IPLUS)Tj -/TT8 1 Tf -9 0 0 9 323.4806 477.71 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 330.3506 477.71 Tm -(PLUS)Tj -/TT8 1 Tf -9 0 0 9 344.753 477.71 Tm -0.2633 Tw -(, or )Tj -/TT10 1 Tf -6 0 0 6 364.7112 477.71 Tm -0 Tw -(FPLUS)Tj -/TT8 1 Tf -9 0 0 9 382.7141 477.71 Tm -0.2633 Tw -[( according to the CLISP)]TJ --28.5238 -1.2222 TD -0 Tw -(declarations in effect \(see Chapter 21\).)Tj -/TT10 1 Tf -6 0 0 6 102 444.43 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 444.43 Tm -(PUSH)Tj -/F1 1 Tf -10 0 0 10 127.2 444.43 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 130.07 444.43 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 157.0744 444.43 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 159.8544 444.43 Tm -(ITEM)Tj -6 0 0 6 181.45 441.43 Tm -(1)Tj -/F3 1 Tf -10 0 0 10 185.05 444.43 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 187.83 444.43 Tm -(ITEM)Tj -6 0 0 6 209.43 441.43 Tm -(2)Tj -/F3 1 Tf -10 0 0 10 213.03 444.43 Tm -( ...)Tj -/TT10 1 Tf -6 0 0 6 224.15 444.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 227.7506 444.43 Tm -[( )-21317.7([Change Word])]TJ -/TT10 1 Tf -6 0 0 6 126 425.88 Tm -(CONS)Tj -/TT8 1 Tf -9 0 0 9 140.4023 425.88 Tm -0.0167 Tw -(es the items onto the front of the current value of the datum, and stores the result back)Tj --1.6003 -1.2222 TD -0.0489 Tw -[(in the datum location. For example, )]TJ -/TT10 1 Tf -6 0 0 6 274.9257 414.88 Tm -0.1167 Tw -(\(PUSH X A B\))Tj -/TT8 1 Tf -9 0 0 9 320.2327 414.88 Tm -0.0489 Tw -[( would translate as )]TJ -/TT10 1 Tf -6 0 0 6 399.6793 414.88 Tm -0.1167 Tw -(\(SETQ X \(CONS A \(CONS B)Tj --45.6132 -1.8333 TD -0 Tw -(X\)\)\))Tj -/TT8 1 Tf -9 0 0 9 140.4023 403.88 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 102 381.6 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 381.6 Tm -(PUSHNEW)Tj -/F1 1 Tf -10 0 0 10 143.4 381.6 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 146.27 381.6 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 173.2744 381.6 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 176.0544 381.6 Tm -(ITEM)Tj -/TT10 1 Tf -6 0 0 6 197.6579 381.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 201.2585 381.6 Tm -[( )-24261.3([Change Word])]TJ --8.3621 -1.8444 TD -(Like )Tj -/TT10 1 Tf -6 0 0 6 146.1431 365 Tm -(PUSH)Tj -/TT8 1 Tf -9 0 0 9 160.5454 365 Tm -0.0511 Tw -[( \(with only one item\) except that the item is not added if it is already )]TJ -/TT10 1 Tf -6 0 0 6 442.1769 365 Tm -0 Tw -(FMEMB)Tj -/TT8 1 Tf -9 0 0 9 460.1799 365 Tm -0.0511 Tw -[( of the)]TJ --37.1311 -1.2222 TD -0 Tw -(datums value.)Tj -0 -2 TD -0.1156 Tw -(Note that, whereas )Tj -/TT10 1 Tf -6 0 0 6 206.6044 336 Tm -0.2783 Tw -(\(CAR \(PUSH X FOO\)\))Tj -/TT8 1 Tf -9 0 0 9 280.0255 336 Tm -0.1156 Tw -[( will always be )]TJ -/TT10 1 Tf -6 0 0 6 345.7836 336 Tm -0 Tw -(FOO)Tj -/TT8 1 Tf -9 0 0 9 356.5854 336 Tm -(,)Tj -/TT18 1 Tf -0.25 0 TD -( )Tj -/TT10 1 Tf -6 0 0 6 362.1254 336 Tm -0.2783 Tw -(\(CAR \(PUSHNEW X FOO\)\))Tj -/TT8 1 Tf -9 0 0 9 446.3483 336 Tm -0.1156 Tw -[( might be)]TJ --35.5943 -1.2222 TD -0 Tw -(something else if )Tj -/TT10 1 Tf -6 0 0 6 195.4424 325 Tm -(FOO)Tj -/TT8 1 Tf -9 0 0 9 206.2441 325 Tm -( already existed in the middle of the list.)Tj -/TT10 1 Tf -6 0 0 6 102 302.72 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 302.72 Tm -(PUSHLIST)Tj -/F1 1 Tf -10 0 0 10 148.8 302.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 151.67 302.72 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 178.6744 302.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 181.4544 302.72 Tm -(ITEM)Tj -6 0 0 6 203.05 299.72 Tm -(1)Tj -/F3 1 Tf -10 0 0 10 206.65 302.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 209.43 302.72 Tm -(ITEM)Tj -6 0 0 6 231.03 299.72 Tm -(2)Tj -/F3 1 Tf -10 0 0 10 234.63 302.72 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 237.41 302.72 Tm -(...)Tj -/TT10 1 Tf -6 0 0 6 253.6126 302.72 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 257.2132 302.72 Tm -[( )-18044.1([Change Word])]TJ --14.5792 -2.0611 TD -0.0111 Tw -(Similar to )Tj -/TT10 1 Tf -6 0 0 6 167.1306 284.17 Tm -0 Tw -(PUSH)Tj -/TT8 1 Tf -9 0 0 9 181.533 284.17 Tm -0.0111 Tw -(, except that the items are )Tj -/TT10 1 Tf -6 0 0 6 285.5759 284.17 Tm -0 Tw -(APPEND)Tj -/TT8 1 Tf -9 0 0 9 307.1794 284.17 Tm -0.0111 Tw -(ed in front of the current value of the datum.)Tj --20.131 -1.2222 TD -0 Tw -(For example, )Tj -/TT10 1 Tf -6 0 0 6 179.9648 273.17 Tm -(\(PUSHLIST X A B\))Tj -/TT8 1 Tf -9 0 0 9 237.5742 273.17 Tm -( translates as \()Tj -/TT10 1 Tf -6 0 0 6 293.8594 273.17 Tm -(SETQ X \(APPEND A B X\)\))Tj -/TT8 1 Tf -9 0 0 9 373.0723 273.17 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 102 250.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 250.89 Tm -(POP)Tj -/F1 1 Tf -10 0 0 10 121.8 250.89 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 124.67 250.89 Tm -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 151.6744 250.89 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 155.275 250.89 Tm -[( )-29370.6([Change Word])]TJ --3.2528 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -6 0 0 6 160.9134 234.29 Tm -(CAR)Tj -/TT8 1 Tf -9 0 0 9 171.7152 234.29 Tm -0.1522 Tw -[( of the current value of the datum after storing its )]TJ -/TT10 1 Tf -6 0 0 6 385.3389 234.29 Tm -0 Tw -(CDR)Tj -/TT8 1 Tf -9 0 0 9 396.1407 234.29 Tm -0.1522 Tw -[( into the datum. The)]TJ --30.0156 -1.2222 TD -0.0567 Tw -[(current value is computed only once even though it is referenced twice. Note that this is)]TJ -T* -0.0689 Tw -(the only built-in changeword for which the value of the form is not the new value of the)Tj -T* -0 Tw -(datum.)Tj -/TT10 1 Tf -6 0 0 6 102 179.01 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 179.01 Tm -(SWAP)Tj -/F1 1 Tf -10 0 0 10 127.2 179.01 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 130.07 179.01 Tm -(DATUM)Tj -6 0 0 6 157.07 176.01 Tm -(1)Tj -/F3 1 Tf -10 0 0 10 160.67 179.01 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 163.45 179.01 Tm -(DATUM)Tj -6 0 0 6 190.45 176.01 Tm -(2)Tj -/TT10 1 Tf -0.6 0.5 TD -(\))Tj -/TT8 1 Tf -9 0 0 9 197.6506 179.01 Tm -[( )-24662.2([Change Word])]TJ --7.9612 -2.0611 TD -(Sets )Tj -/TT16 1 Tf -2.0039 0 TD -(DATUM)Tj -6 0 0 6 171.03 157.46 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 174.63 160.46 Tm -( to )Tj -/TT16 1 Tf -1.3721 0 TD -(DATUM)Tj -6 0 0 6 213.97 157.46 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 217.57 160.46 Tm -( and vice versa.)Tj -/TT10 1 Tf -6 0 0 6 102 135.63 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 135.63 Tm -(CHANGE)Tj -/F1 1 Tf -10 0 0 10 138 135.63 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 140.87 135.63 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 167.8744 135.63 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 170.6544 135.63 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 192.2579 135.63 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 195.8585 135.63 Tm -[( )-24861.3([Change Word])]TJ --7.7621 -1.8444 TD -0.0422 Tw -[(This is the most flexible of all change words: You give an arbitrary form describing what)]TJ -0 -1.2222 TD -0.19 Tw -[(the new value should be. But it still highlights the fact that structure modification is)]TJ -T* -0.1156 Tw -(happening, and still lets the datum appear only once. )Tj -/TT10 1 Tf -6 0 0 6 352.6021 97.03 Tm -0 Tw -(CHANGE)Tj -/TT8 1 Tf -9 0 0 9 374.2057 97.03 Tm -0.1156 Tw -[( sets )]TJ -/TT16 1 Tf -2.3839 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1156 Tw -[( to the value of)]TJ -/TT16 1 Tf --32.9628 -1.2889 TD -0 Tw -(FORM)Tj -/TT10 1 Tf -6 0 0 6 147.6035 85.43 Tm -(*)Tj -/TT8 1 Tf -9 0 0 9 151.2041 85.43 Tm -0.0989 Tw -(, where )Tj -/TT16 1 Tf -3.7168 0 TD -0 Tw -(FORM)Tj -/TT10 1 Tf -6 0 0 6 206.259 85.43 Tm -(*)Tj -/TT8 1 Tf -9 0 0 9 209.8596 85.43 Tm -0.0989 Tw -[( is constructed from )]TJ -/TT16 1 Tf -9.4468 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[( by substituting the datum expression for)]TJ --21.165 -1.2889 TD -0 Tw -(every occurrence of the symbol )Tj -/TT10 1 Tf -6 0 0 6 252.4834 73.83 Tm -(DATUM)Tj -/TT8 1 Tf -9 0 0 9 270.4863 73.83 Tm -(. For example,)Tj -/TT10 1 Tf -6 0 0 6 162 61.38 Tm -(\(CHANGE \(CAR X\) \(ITIMES DATUM 5\)\))Tj -/TT8 1 Tf -9 0 0 9 126 45.83 Tm -(translates as)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/F3 48 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 16 0 R -/TT18 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -58 0 obj -<< -/Length 7886 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -6 0 0 6 210 569.54 Tm -(\(CAR \(RPLACA X \(ITIMES \(CAR X\) 5\)\)\))Tj -/TT8 1 Tf -9 0 0 9 336.0205 569.54 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 174 553.54 Tm -(CHANGE)Tj -/TT8 1 Tf -9 0 0 9 195.6035 553.54 Tm -0.1978 Tw -[( is useful for expressing modifications that are not built-in and are not common)]TJ --2.4004 -1.2222 TD -0 Tw -(enough to justify defining a user-changeword. )Tj --5.3333 -2 TD -0.1 Tw -[(You can define new change words. To define a change word, say )]TJ -/TT10 1 Tf -6 0 0 6 400.1107 524.54 Tm -0 Tw -(sub)Tj -/TT8 1 Tf -9 0 0 9 410.9124 524.54 Tm -0.1 Tw -(, that subtracts items from the)Tj --31.6569 -1.2222 TD -0.0944 Tw -(current value of the datum, you must put the property )Tj -/TT10 1 Tf -6 0 0 6 353.7299 513.54 Tm -0 Tw -(CLISPWORD)Tj -/TT8 1 Tf -9 0 0 9 386.1352 513.54 Tm -0.0944 Tw -(, value )Tj -/TT10 1 Tf -6 0 0 6 416.5271 513.54 Tm -0.2267 Tw -(\(CHANGETRAN . sub\))Tj -/TT8 1 Tf -9 0 0 9 484.0577 513.54 Tm -0.0944 Tw -[( on both the)]TJ --39.7842 -1.2222 TD -0 Tw -(upper- and lower-case versions of sub:)Tj -/TT10 1 Tf -6 0 0 6 162 490.09 Tm -(\(PUTPROP SUB CLISPWORD \(CHANGETRAN . sub\)\))Tj -0 -1 TD -(\(PUTPROP sub CLISPWORD \(CHANGETRAN . sub\)\))Tj -/TT8 1 Tf -9 0 0 9 126 468.54 Tm -0.0167 Tw -(Then, you must put \(on the )Tj -/TT14 1 Tf -12.4252 0 TD -0 Tw -(lower)Tj -/TT8 1 Tf -2.2222 0 TD -0.0167 Tw -(-case version of )Tj -/TT10 1 Tf -6 0 0 6 322.0892 468.54 Tm -0 Tw -(sub)Tj -/TT8 1 Tf -9 0 0 9 332.891 468.54 Tm -0.0167 Tw -[( only\) the property )]TJ -/TT10 1 Tf -6 0 0 6 410.8435 468.54 Tm -0 Tw -(CHANGEWORD)Tj -/TT8 1 Tf -9 0 0 9 446.8494 468.54 Tm -0.0167 Tw -(, with value )Tj -/TT16 1 Tf -5.5212 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0167 Tw -(. )Tj -/TT16 1 Tf -0.7833 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0167 Tw -[( is)]TJ --44.3549 -1.2889 TD -0.06 Tw -(a function that will be applied to a single argument, the whole )Tj -/TT10 1 Tf -6 0 0 6 382.1685 456.94 Tm -0 Tw -(sub)Tj -/TT8 1 Tf -9 0 0 9 392.9702 456.94 Tm -0.06 Tw -[( form, and must return a form that)]TJ --29.6634 -1.2222 TD -0.02 Tw -[(Changetran can translate into an appropriate expression. This form should be a list structure with the)]TJ -T* -0 Tw -(symbol )Tj -/TT10 1 Tf -6 0 0 6 158.2363 434.94 Tm -(DATUM)Tj -/TT8 1 Tf -9 0 0 9 176.2393 434.94 Tm -0.0789 Tw -[( used whenever you want an accessing expression for the current value of the datum to)]TJ --5.5821 -1.2222 TD -0.2289 Tw -[(appear. The form )]TJ -/TT10 1 Tf -6 0 0 6 207.6506 423.94 Tm -0 Tw -(\(DATUM)Tj -/TT19 1 Tf -3.6006 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( )Tj -/TT16 1 Tf -9 0 0 9 242.0756 423.94 Tm -(FORM)Tj -/TT10 1 Tf -6 0 0 6 263.6791 423.94 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 267.2797 423.94 Tm -0.2289 Tw -[( \(note that )]TJ -/TT10 1 Tf -6 0 0 6 316.2141 423.94 Tm -0 Tw -(DATUM)Tj -/TT19 1 Tf -3.0005 0 TD -<0040>Tj -/TT8 1 Tf -9 0 0 9 340.138 423.94 Tm -0.2289 Tw -[( is a single symbol\) should occur once in the)]TJ --23.7931 -1.2889 TD -0.1033 Tw -(expression; this specifies that an appropriate storing expression into the datum should occur at that)Tj -0 -1.2222 TD -0 Tw -(point. For example, )Tj -/TT10 1 Tf -6 0 0 6 207.8306 401.34 Tm -(sub)Tj -/TT8 1 Tf -9 0 0 9 218.6323 401.34 Tm -( could be defined as:)Tj -/TT10 1 Tf -6 0 0 6 162 388.89 Tm -(\(PUTPROP sub CHANGEWORD)Tj -0 -1 TD -( \(LAMBDA \(FORM\))Tj -T* -( \(LIST DATUM)Tj -/TT19 1 Tf -14.4023 0 TD -<0040>Tj -/TT10 1 Tf --14.4023 -1 TD -( \(LIST IDIFFERENCE)Tj -T* -( DATUM)Tj -T* -( \(CONS IPLUS \(CDDR FORM\)\)\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 343.34 Tm -0.0533 Tw -(If the expression )Tj -/TT10 1 Tf -6 0 0 6 195.3355 343.34 Tm -0.1283 Tw -(\(sub \(CAR X\) A B\))Tj -/TT8 1 Tf -9 0 0 9 259.6255 343.34 Tm -0.0533 Tw -[( were encountered, the arguments to SUB would first be dwimified,)]TJ --14.8473 -1.2222 TD -0.2611 Tw -(and then the )Tj -/TT10 1 Tf -6 0 0 6 185.2438 332.34 Tm -0 Tw -(CHANGEWORD)Tj -/TT8 1 Tf -9 0 0 9 221.2497 332.34 Tm -0.2611 Tw -[( function would be passed the list )]TJ -/TT10 1 Tf -6 0 0 6 373.8862 332.34 Tm -0.6267 Tw -(\(sub \(CAR X\) A B\))Tj -/TT8 1 Tf -9 0 0 9 450.1362 332.34 Tm -0.2611 Tw -(, and return )Tj -/TT10 1 Tf -6 0 0 6 506.4445 332.34 Tm -0 Tw -(\(DATUM)Tj -/TT19 1 Tf -3.6006 0 TD -<0040>Tj -/TT10 1 Tf --67.008 -1.8333 TD -0.205 Tw -(\(IDIFFERENCE DATUM \(IPLUS A B\)\)\))Tj -/TT8 1 Tf -9 0 0 9 246.1387 321.34 Tm -0.0856 Tw -(, which Changetran would convert to )Tj -/TT10 1 Tf -6 0 0 6 401.8515 321.34 Tm -0.205 Tw -(\(CAR \(RPLACA X \(IDIFFERENCE \(CAR X\))Tj --45.9753 -1.8333 TD -0 Tw -(\(IPLUS A B\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 176.4082 310.34 Tm -(.)Tj -/TT18 1 Tf --5.6009 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0611 Tw -[(: The )]TJ -/TT10 1 Tf -6 0 0 6 171.7139 292.34 Tm -0 Tw -(sub)Tj -/TT8 1 Tf -9 0 0 9 182.5157 292.34 Tm -0.0611 Tw -[( changeword as defined above will always use )]TJ -/TT10 1 Tf -6 0 0 6 374.1096 292.34 Tm -0 Tw -(IDIFFERENCE)Tj -/TT8 1 Tf -9 0 0 9 413.716 292.34 Tm -0.0611 Tw -[( and )]TJ -/TT10 1 Tf -6 0 0 6 434.5518 292.34 Tm -0 Tw -(IPLUS)Tj -/TT8 1 Tf -9 0 0 9 452.5547 292.34 Tm -(; )Tj -/TT10 1 Tf -6 0 0 6 457.6048 292.34 Tm -(add)Tj -/TT8 1 Tf -9 0 0 9 468.4065 292.34 Tm -0.0611 Tw -[( uses the correct)]TJ --38.0452 -1.2222 TD -0 Tw -(addition operation depending on the current CLISP declarations \(see Chapter 21\).)Tj -/TT4 1 Tf -10 0 0 10 102 259 Tm -(Built-In and User Data Types)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 256.29 m -558.01 256.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 242.34 Tm -0.0867 Tw -(Medley is a system for manipulating various kinds of data; it comes with a large set of built-in data)Tj -T* -0 Tw -(types, which you can use to represent a variety of abstract objects; you can also define additional user)Tj -T* -(data types that you can manipulate exactly like built-in data types.)Tj -0 -2 TD -0.0378 Tw -[(Each data type in Medley has an associated type name, a symbol. Some of the type names of built-)]TJ -0 -1.2222 TD -0.1011 Tw -(in data types are: )Tj -/TT10 1 Tf -6 0 0 6 203.1828 191.34 Tm -0 Tw -(LITATOM)Tj -/TT8 1 Tf -9 0 0 9 228.3869 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 233.7969 191.34 Tm -(LISTP)Tj -/TT8 1 Tf -9 0 0 9 251.7998 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 257.2098 191.34 Tm -(STRINGP)Tj -/TT8 1 Tf -9 0 0 9 282.4139 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 287.8239 191.34 Tm -(ARRAYP)Tj -/TT8 1 Tf -9 0 0 9 309.4274 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 314.8374 191.34 Tm -(STACKP)Tj -/TT8 1 Tf -9 0 0 9 336.4409 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 341.851 191.34 Tm -(SMALLP)Tj -/TT8 1 Tf -9 0 0 9 363.4545 191.34 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 368.8645 191.34 Tm -(FIXP)Tj -/TT8 1 Tf -9 0 0 9 383.2668 191.34 Tm -0.1011 Tw -(, and )Tj -/TT10 1 Tf -6 0 0 6 407.0727 191.34 Tm -0 Tw -(FLOATP)Tj -/TT8 1 Tf -9 0 0 9 428.6762 191.34 Tm -0.1011 Tw -[(. For user data types, the)]TJ --33.6307 -1.2222 TD -0 Tw -(type name is specified when the data type is created.)Tj -/TT10 1 Tf -6 0 0 6 150 159.34 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 159.34 Tm -(DATATYPES)Tj -/TT10 1 Tf -6 0 0 6 202.2 159.34 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 205.8006 159.34 Tm -()Tj -/TT10 1 Tf -6 0 0 6 211.2014 159.34 Tm -( \))Tj -/TT8 1 Tf -9 0 0 9 218.4026 159.34 Tm -[( )-29969.7([Function])]TJ --4.9336 -1.8444 TD -(Returns a list of all type names currently defined.)Tj -/TT10 1 Tf -6 0 0 6 150 121.74 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 121.74 Tm -(USERDATATYPES)Tj -/TT10 1 Tf -6 0 0 6 223.8 121.74 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 227.4006 121.74 Tm -[( )-28969.9([Function])]TJ --5.9334 -1.8444 TD -(Returns list of names of currently declared user data types.)Tj -/TT10 1 Tf -6 0 0 6 150 82.86 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 82.86 Tm -(TYPENAME)Tj -/F1 1 Tf -10 0 0 10 196.8 82.86 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 199.67 82.86 Tm -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 226.6744 82.86 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 230.275 82.86 Tm -[( )-28650.6([Function])]TJ --6.2528 -1.8444 TD -(Returns the type name for the data type of )Tj -/TT16 1 Tf -18.96 0 TD -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT18 20 0 R -/TT19 34 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -61 0 obj -<< -/Length 7808 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-15)Tj -/TT6 1 Tf -10 0 0 10 329.55 612 Tm -(RECORDS AND DATA STRUCTURES)Tj -/TT10 1 Tf -6 0 0 6 102 568.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 568.26 Tm -(TYPENAMEP)Tj -/F1 1 Tf -10 0 0 10 154.2 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 157.07 568.26 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 184.0744 568.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 186.8544 568.26 Tm -(TYPE)Tj -/TT10 1 Tf -6 0 0 6 208.4579 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 212.0585 568.26 Tm -[( )-25341.3([Function])]TJ --9.5621 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -6 0 0 6 159.5434 551.66 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 163.144 551.66 Tm -( if )Tj -/TT16 1 Tf -1.124 0 TD -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -( is an object with type name equal to )Tj -/TT16 1 Tf -16.3735 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -(, otherwise )Tj -/TT10 1 Tf -6 0 0 6 415.1836 551.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 425.9854 551.66 Tm -(.)Tj --38.665 -2.0667 TD -0.1656 Tw -(In addition to built-in data-types like symbols, lists, arrays, etc., Medley provides a way to define)Tj -0 -1.2222 TD -0 Tw -(completely )Tj -/TT14 1 Tf -5.2616 0 TD -(new)Tj -/TT8 1 Tf -1.6675 0 TD -0.1156 Tw -[( classes of objects, with a fixed number of fields determined by the definition of the)]TJ --6.929 -1.2222 TD -0.1767 Tw -[(data type. To define a new class of objects, you must supply a name for the new data type and)]TJ -T* -0.0278 Tw -[(specifications for each of its fields. Each field may contain either a pointer \(i.e., any arbitrary Interlisp)]TJ -T* -0 Tw -(datum\), an integer, a floating point number, or an )Tj -/TT14 1 Tf -22.2358 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -(-bit integer.)Tj -/TT18 1 Tf --23.0137 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0578 Tw -[(: The most convenient way to define new user data types is via )]TJ -/TT10 1 Tf -6 0 0 6 359.1296 471.06 Tm -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -9 0 0 9 387.9343 471.06 Tm -0.0578 Tw -[( record declarations \(see)]TJ --34.4371 -1.2222 TD -0 Tw -(Chapter 8\) which call the following functions.)Tj -/TT10 1 Tf -6 0 0 6 102 437.78 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 437.78 Tm -(DECLAREDATATYPE)Tj -/F1 1 Tf -10 0 0 10 186.6 437.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 189.47 437.78 Tm -(TYPENAME)Tj -/F3 1 Tf -10 0 0 10 232.677 437.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 235.457 437.78 Tm -(FIELDSPECS)Tj -/F3 1 Tf -10 0 0 10 289.4658 437.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 292.2458 437.78 Tm -()Tj -/F3 1 Tf -10 0 0 10 297.6467 437.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 300.4267 437.78 Tm -()Tj -/TT10 1 Tf -6 0 0 6 305.8276 437.78 Tm -( \))Tj -/TT8 1 Tf -9 0 0 9 313.0287 437.78 Tm -[( )-14122.4([Function])]TJ --20.781 -1.8444 TD -0.0844 Tw -(Defines a new user data type, with the name )Tj -/TT16 1 Tf -20.6814 0 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.0844 Tw -(. )Tj -/TT16 1 Tf -0.9189 0 TD -0 Tw -(FIELDSPECS)Tj -/TT8 1 Tf -6.001 0 TD -0.0844 Tw -[( is a list of field)]TJ --32.402 -1.2889 TD -0 Tw -(specifications. Each field specification may be one of the following:)Tj -/TT10 1 Tf -6 0 0 6 166.8 391.58 Tm -(POINTER)Tj -/TT8 1 Tf -9 0 0 9 198 391.58 Tm -(Field may contain any Interlisp datum.)Tj -/TT10 1 Tf -6 0 0 6 177.6 373.58 Tm -(FIXP)Tj -/TT8 1 Tf -9 0 0 9 198 373.58 Tm -(Field contains an integer.)Tj -/TT10 1 Tf -6 0 0 6 170.4 355.58 Tm -(FLOATP)Tj -/TT8 1 Tf -9 0 0 9 198 355.58 Tm -(Field contains a floating point number.)Tj -/TT10 1 Tf -6 0 0 6 161.4 335.18 Tm -(\(BITS )Tj -/TT16 1 Tf -9 0 0 9 183.0035 335.18 Tm -(N)Tj -/TT10 1 Tf -6 0 0 6 188.4044 335.18 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 198 335.18 Tm -(Field contains a non-negative integer less than 2)Tj -/TT16 1 Tf -21.21 0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 -0.3333 TD -(.)Tj -/TT10 1 Tf -6 0 0 6 177.6 316.58 Tm -(BYTE)Tj -/TT8 1 Tf -9 0 0 9 198 316.58 Tm -(Equivalent to )Tj -/TT10 1 Tf -6 0 0 6 253.6216 316.58 Tm -(\(BITS 8\))Tj -/TT8 1 Tf -9 0 0 9 282.4263 316.58 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 177.6 298.58 Tm -(WORD)Tj -/TT8 1 Tf -9 0 0 9 198 298.58 Tm -(Equivalent to )Tj -/TT10 1 Tf -6 0 0 6 253.6216 298.58 Tm -(\(BITS 16\))Tj -/TT8 1 Tf -9 0 0 9 286.0269 298.58 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 156 280.58 Tm -(SIGNEDWORD)Tj -/TT8 1 Tf -9 0 0 9 198 280.58 Tm -(Field contains a 16 bit signed integer.)Tj -/TT10 1 Tf -6 0 0 6 198 262.58 Tm -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 252.0088 262.58 Tm -0.0989 Tw -[( returns a list of field descriptors, one for each element)]TJ --6.001 -1.2222 TD -0 Tw -(of )Tj -/TT16 1 Tf -1.2467 0 TD -(FIELDSPECS)Tj -/TT8 1 Tf -6.001 0 TD -0.1178 Tw -[(. A field descriptor contains information about where)]TJ --7.2477 -1.2889 TD -0 Tw -(within the datum the field is actually stored.)Tj -0 -2 TD -(If )Tj -/TT16 1 Tf -1.191 0 TD -(FIELDSPECS)Tj -/TT8 1 Tf -6.001 0 TD -0.2711 Tw -[( is )]TJ -/TT10 1 Tf -6 0 0 6 278.5417 221.98 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 289.3434 221.98 Tm -(, )Tj -/TT16 1 Tf -0.7711 0 TD -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.2711 Tw -[( is undeclared. If )]TJ -/TT16 1 Tf -10.2349 0 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.2711 Tw -[( is)]TJ --30.7569 -1.2889 TD -0.1156 Tw -(already declared as a data type, it is undeclared, and then re-declared)Tj -0 -1.2222 TD -0.1222 Tw -(with the new )Tj -/TT16 1 Tf -6.4321 0 TD -0 Tw -(FIELDSPECS)Tj -/TT8 1 Tf -6.001 0 TD -0.1222 Tw -[(. An instance of a data type that has been)]TJ --12.4331 -1.2889 TD -0 Tw -(undeclared has a type name of )Tj -/TT10 1 Tf -6 0 0 6 322.0708 187.78 Tm -(**DEALLOC**)Tj -/TT8 1 Tf -9 0 0 9 361.6772 187.78 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 102 165.5 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 165.5 Tm -(FETCHFIELD)Tj -/F1 1 Tf -10 0 0 10 159.6 165.5 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 162.47 165.5 Tm -(DESCRIPTOR)Tj -/F3 1 Tf -10 0 0 10 216.4788 165.5 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 219.2588 165.5 Tm -(DATUM)Tj -/TT10 1 Tf -6 0 0 6 246.2632 165.5 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 249.8638 165.5 Tm -[( )-21140.7([Function])]TJ --13.7626 -1.8444 TD -0.1122 Tw -(Returns the contents of the field described by )Tj -/TT16 1 Tf -21.138 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf -6.001 0 TD -0.1122 Tw -[( from )]TJ -/TT16 1 Tf -2.8812 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -(. )Tj -/TT16 1 Tf -0.9744 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf --33.9951 -1.2889 TD -0.0289 Tw -(must be a field descriptor as returned by )Tj -/TT10 1 Tf -6 0 0 6 300.7719 137.3 Tm -0 Tw -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 354.7807 137.3 Tm -0.0289 Tw -[( or )]TJ -/TT10 1 Tf -6 0 0 6 368.269 137.3 Tm -0 Tw -(GETDESCRIPTORS)Tj -/TT8 1 Tf -9 0 0 9 418.6772 137.3 Tm -0.0289 Tw -[(. If )]TJ -/TT16 1 Tf -1.7566 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0289 Tw -[( is not)]TJ --37.2768 -1.2889 TD -0.1367 Tw -(an instance of the datatype of which )Tj -/TT16 1 Tf -17.194 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf -6.001 0 TD -0.1367 Tw -[( is a descriptor, causes error )]TJ -/TT10 1 Tf -6 0 0 6 455.175 125.7 Tm -0.3283 Tw -(Datum of)Tj --54.8625 -1.9333 TD -0 Tw -(incorrect type)Tj -/TT8 1 Tf -9 0 0 9 176.4082 114.1 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 102 91.82 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.6006 91.82 Tm -(REPLACEFIELD)Tj -/F1 1 Tf -10 0 0 10 170.4 91.82 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 173.27 91.82 Tm -(DESCRIPTOR)Tj -/F3 1 Tf -10 0 0 10 227.2788 91.82 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 230.0588 91.82 Tm -(DATUM)Tj -/F3 1 Tf -10 0 0 10 257.0632 91.82 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 259.8432 91.82 Tm -(NEWVALUE)Tj -/TT10 1 Tf -6 0 0 6 303.0502 91.82 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 306.6508 91.82 Tm -[( )-14831([Function])]TJ --20.0723 -1.8444 TD -(Store )Tj -/TT16 1 Tf -2.6066 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0856 Tw -[( into the field of )]TJ -/TT16 1 Tf -7.6939 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0856 Tw -[( described by )]TJ -/TT16 1 Tf -6.4027 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf -6.001 0 TD -0.0856 Tw -(. )Tj -/TT16 1 Tf -0.9211 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf -6.001 0 TD -0.0856 Tw -[( must)]TJ --37.4274 -1.2889 TD -0.1867 Tw -(be a field descriptor as returned by )Tj -/TT10 1 Tf -6 0 0 6 279.0793 63.62 Tm -0 Tw -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 333.0881 63.62 Tm -0.1867 Tw -[(. If )]TJ -/TT16 1 Tf -2.2299 0 TD -0 Tw -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1867 Tw -[( is not an instance of the)]TJ -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/F3 48 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R -/TT18 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -64 0 obj -<< -/Length 4780 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.04 Tw -(datatype of which )Tj -/TT16 1 Tf -8.3812 0 TD -0 Tw -(DESCRIPTOR)Tj -/TT8 1 Tf -6.001 0 TD -0.04 Tw -[( is a descriptor, causes error )]TJ -/TT10 1 Tf -6 0 0 6 418.6404 569.54 Tm -0.095 Tw -(Datum of incorrect type)Tj -/TT8 1 Tf -9 0 0 9 503.1639 569.54 Tm -0.04 Tw -[(. Value)]TJ --36.5738 -1.2889 TD -0 Tw -(is )Tj -/TT16 1 Tf -0.9648 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf -6 0 0 6 150 535.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 535.06 Tm -(NCREATE)Tj -/F1 1 Tf -10 0 0 10 191.4 535.06 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 194.27 535.06 Tm -(TYPE)Tj -/F3 1 Tf -10 0 0 10 215.8735 535.06 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 218.6535 535.06 Tm -(OLDOBJ)Tj -/TT10 1 Tf -6 0 0 6 251.0588 535.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 254.6594 535.06 Tm -[( )-25941.2([Function])]TJ --8.9622 -1.8444 TD -(Creates and returns a new instance of datatype )Tj -/TT16 1 Tf -21.0103 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --23.4106 -2.0667 TD -(If )Tj -/TT16 1 Tf -0.9721 0 TD -(OLDOBJ)Tj -/TT8 1 Tf -3.6006 0 TD -0.0522 Tw -[( is also a datum of datatype )]TJ -/TT16 1 Tf -12.7923 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0522 Tw -(, the fields of the new object are initialized to)Tj --19.7654 -1.2889 TD -0 Tw -(the values of the corresponding fields in )Tj -/TT16 1 Tf -18.0186 0 TD -(OLDOBJ)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -6 0 0 6 174 469.66 Tm -(NCREATE)Tj -/TT8 1 Tf -9 0 0 9 199.2041 469.66 Tm -0.09 Tw -[( will not work for built-in datatypes, such as )]TJ -/TT10 1 Tf -6 0 0 6 385.0219 469.66 Tm -0 Tw -(ARRAYP)Tj -/TT8 1 Tf -9 0 0 9 406.6254 469.66 Tm -(, )Tj -/TT10 1 Tf -6 0 0 6 411.9354 469.66 Tm -(STRINGP)Tj -/TT8 1 Tf -9 0 0 9 437.1395 469.66 Tm -0.09 Tw -[(, etc. If )]TJ -/TT16 1 Tf -3.7789 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -[( is not the)]TJ --35.4171 -1.2889 TD -0 Tw -(type name of a previously declared )Tj -/TT14 1 Tf -15.8457 0 TD -(user)Tj -/TT8 1 Tf -1.7236 0 TD -( data type, generates an error, )Tj -/TT10 1 Tf -6 0 0 6 452.8286 458.06 Tm -(Illegal data type)Tj -/TT8 1 Tf -9 0 0 9 514.0386 458.06 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 150 435.78 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 435.78 Tm -(GETFIELDSPECS)Tj -/F1 1 Tf -10 0 0 10 223.8 435.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 226.67 435.78 Tm -(TYPENAME)Tj -/TT10 1 Tf -6 0 0 6 269.877 435.78 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 273.4776 435.78 Tm -[( )-23850.3([Function])]TJ --11.0531 -1.8444 TD -0.2144 Tw -(Returns a list which is )Tj -/TT10 1 Tf -6 0 0 6 273.7115 419.18 Tm -0 Tw -(EQUAL)Tj -/TT8 1 Tf -9 0 0 9 291.7144 419.18 Tm -0.2144 Tw -[( to the )]TJ -/TT16 1 Tf -3.6526 0 TD -0 Tw -(FIELDSPECS)Tj -/TT8 1 Tf -6.001 0 TD -0.2144 Tw -[( argument given to )]TJ -/TT10 1 Tf -6 0 0 6 464.3416 419.18 Tm -0 Tw -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 518.3504 419.18 Tm -0.2144 Tw -[( for)]TJ -/TT16 1 Tf --38.2612 -1.2889 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -(; if )Tj -/TT16 1 Tf -1.374 0 TD -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -( is not a currently declared data-type, returns )Tj -/TT10 1 Tf -6 0 0 6 454.9072 407.58 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 465.709 407.58 Tm -(.)Tj -/TT10 1 Tf -6 0 0 6 150 384.7 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 153.6006 384.7 Tm -(GETDESCRIPTORS)Tj -/F1 1 Tf -10 0 0 10 229.2 384.7 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 232.07 384.7 Tm -(TYPENAME)Tj -/TT10 1 Tf -6 0 0 6 275.277 384.7 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 278.8776 384.7 Tm -[( )-23250.3([Function])]TJ --11.6531 -1.8444 TD -0.1711 Tw -(Returns a list of field descriptors, )Tj -/TT10 1 Tf -6 0 0 6 317.1458 368.1 Tm -0 Tw -(EQUAL)Tj -/TT8 1 Tf -9 0 0 9 335.1487 368.1 Tm -0.1711 Tw -[( to the )]TJ -/TT14 1 Tf -3.5226 0 TD -0 Tw -(value)Tj -/TT8 1 Tf -2.167 0 TD -0.1711 Tw -[( of )]TJ -/TT10 1 Tf -6 0 0 6 401.8453 368.1 Tm -0 Tw -(DECLAREDATATYPE)Tj -/TT8 1 Tf -9 0 0 9 455.8541 368.1 Tm -0.1711 Tw -[( for )]TJ -/TT16 1 Tf -2.1161 0 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.1711 Tw -[(. If)]TJ -/TT16 1 Tf --38.2341 -1.2889 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -( is not an atom, )Tj -/TT10 1 Tf -6 0 0 6 280.2598 356.5 Tm -(\(TYPENAME )Tj -/TT16 1 Tf -9 0 0 9 316.2656 356.5 Tm -(TYPENAME)Tj -/TT10 1 Tf -6 0 0 6 359.4727 356.5 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 363.0732 356.5 Tm -( is used.)Tj --26.3415 -2.0667 TD -0.2144 Tw -(You can define how a user data type prints, using )Tj -/TT10 1 Tf -6 0 0 6 345.1369 337.9 Tm -0 Tw -(DEFPRINT)Tj -/TT8 1 Tf -9 0 0 9 373.9416 337.9 Tm -0.2144 Tw -[( \(see Chapter 25\), how they are to be)]TJ --27.5491 -1.2222 TD -0.1722 Tw -(evaluated by the interpreter via )Tj -/TT10 1 Tf -6 0 0 6 261.5957 326.9 Tm -0 Tw -(DEFEVAL)Tj -/TT8 1 Tf -9 0 0 9 286.7998 326.9 Tm -0.1722 Tw -[( \(see Chapter 10\), and how they are to be compiled by the)]TJ --17.8666 -1.2222 TD -0 Tw -(compiler via )Tj -/TT10 1 Tf -6 0 0 6 178.0708 315.9 Tm -(COMPILETYPELST)Tj -/TT8 1 Tf -9 0 0 9 228.479 315.9 Tm -( \(see Chapter 18\).)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 27 0 R -/F3 48 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -67 0 obj -<< -/Length 70 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-17)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -70 0 obj -<< -/Length 201 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(8-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -78 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -79 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBEPCA+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 82 0 R ->> -endobj -82 0 obj -<< -/Filter /FlateDecode -/Length 20016 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"(P4pb c93dCJ)FZRM)M))4|-*PRi nxj3{ߛ{o oN~?p>{ - -Lx+ -7s+&F`=c`,#Chw/C>bq(^i筭OnA}(*Bj v(o S%x|&#y/Bԇሙ\.D.#aWC:Pi2p8~陈G7q s#TI|EB.n*:栾#~+QGcvkp֒-Wz4|2[ R<^nj=c^Cro_02n"̀f H~=?Q`uPoFVPnuȪb OC gB=Z0ǒmu4Z<3d;Żl4R%LLa`L1?YY \N7~{|`b.god5,@g ,B4fi6.6.6.e6.q+m\ecO۸56>c6#u6>o:lc/ظm|99~"NzYфI*i0輄mC0Xg QլhBZLW?w+*a -oĕ }URt=VTS!.or[ ]R`ExQsO!&| ?6iUiEpQ|<,-_2] WNT2BWC|oЛ (\ h]Qn-VziGm%dcS 5,G31w%ǽeɉ"Kv[@ed3^(Q=oHHD`iB4f0gzM!~Cw\j?Mio0JS3$?] ˪wwz;̬2 [0wmm#=[l`88/%>;5gVqh(D>mK0 JMP]jtr>Jmi%&]@dxϝm":@BB{_݇tUQwᒬπ*Ŋ^Pm(]dz61HesG -P'Yۻ[,hp/IS F^ -j!Q/sHddH{YMj`t2*ASGiHHqrE{K0(&NѮ#AV3T|Agl 1G[/s pMrg*d|#gW %k[:o02QϨu6qTCh;~,nVáFŅٟV8nCG}~S@H}@-!PI`:c|QH}t.>X;}`Wv(Y*t *ɮlU $Cl=3:R@FqEY%P9{F;9~;ZnY 茹M;OʹKWlʷ:Z`]U?cj-d弿_ʉGu/ϔœ\.UvF 6yv"`[=Kܒ&+r32:BnICXRy:lJje+ִ>vQyl.t$d,V=KUQ-\胠R([VK8<'X:UD:Ye:;6I > 7QI2M>:܄!R -7yn%,\ru -Ȉt晞!ƺpP0kp#' |Ib'bAF`űߘ1تhc_2.!Cϣl; -1 .Bf6&}H8'8n7ӌoQ7p<x㐏Ĺ> )Gǘ`j0ɚEGQxއn p.7  qH>!B%~RN69HL119Mzr\%Z:i.u1!0UiMѧh%]rt%} t }ѷ{~B/?h ffY{&l"ʊ dOl){fU؛v}N,.+lS.'| -1/R<|3}]'~;x'?̏~(;/'̦ SV'ቛJwPg&A,TIS (3 1*qf( -+5I3##uXi[CЭj!KeV=R ڌ}1UH֔ELf`ez(~BT +FlCWh %Ml b#V&QfO>a*6.= ?cXPa~1NJ6fQɰg6|Q_ p˺fl[rR̸)v%9$F{nex_AKݛm1jwZõ2jɥ'-[Fgl@E-poô[[rZH"p 2`KEȭU'nHZK;~jkɖ@RKT>4{Jz"hkFK]] q~[S|0D/bI| A#akF(Z|6q.眤<m:(5×Be+HI[uNPv#'NrdnV(q Nti4[`HAus{lP~i[Eݽ};na5G't%W߶߶lۺ[_ޱ,y0l `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|S&`iz-B =>6c$\H ?|RZD[sMrAp2 hlvnͲxNAٖcQ7xgD2m>(pd%, --&T R Y*YwmKwZ@UZjuٜ_5 ye3V,go^X\Xo;8S>*!gEiPSzl L pkAEz^  ,ώtnW>ΡM ]QiYc*]Z*덌n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~mtlt \NEb;aVd1;tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWye"Ȋo!5f]Jɱ)N-Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:/I"[,Wvˤ=Y_@d|ZXY@Vo47 PK9tev|i+ Y4]c4; Y2`YX gLyB%ASJ؊hݏ?XZ,ZҖ%8 ̂jԍRK¼2ټט?%UJ9C':g..?/ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStWRKAİX{== x^.ww\9 ߚq?W?NhN-:zTDO!WhG,h)cxz}GGVWAhSdcE{%`нdA"mψԒn^1vt,y}4|ˊ^ox6g@EV4 @3h UFF;b|thƶGcߞreQc6*W_09K_0(,f}"ei:XEHQ e6|'Y_QSO==Znlgr J}Jn1 pu3dePjtL]gB6E= -UеA~%˂R*XZ:j12O-}XX5C-^:p>'[NV-K1h2=\yhJ--'h4Oj>Ma`/=0x xNï7pf,yѣգ&e5} qt@DE3-.[`;.kZ܌Oo.m]܋u&Np -_")"+*""%z@ZH;yt2Bd"oߑ$yK'%$qpk\3%I. q܏q m=./ګ( -{}o]HY-3vYlTDBY@!jFS;#Cd:ڴ:5Fww(ҙF;S'&mEƈdZ;cvl؉2{Y5F1yo9~_ -%rr(K7>[}wߑWUY < |ZGZx\Hcv1~`ۄݰޒp-剏 -r q$[(_\۱r]VykVeybmؕxa8}; &.'eusI+dO-(,5|K=FK㞎2q~adYRɝ^H)JBlJ&[kHK*pxOE|tM hRh1)!YXq]%|t^n?YriXZƪtRޮW3@>i钙An#^n-qx"dy phE3rCWIw򵾮&>O&x 6gygs3dUŞVpp$_ X4-AE$.puh^ϽX<&Z  -K!@4کT]k'=I}!fkx4qɴ;>SWL]r` #OsO8dl?|̙|7uw8v:cUF/9m~b^H kA"ˑئ;+4ĥbM|gMXp|+_1yFj;M`yI}7CR9a{rMtxc|mtٻ^H~!yX"p@L]{8=.$ ߅Tj -dA.DVcU<1?rV/5haŠ;ȯ) [D{L$in\ssd "/*YK$k+N.M@%=%!?ɿe%A -Qc'u!T:Ntu h%+j60H6dv{Qzh?HD%I)OzRʖ3+GnV)UKˑIIjF&ŤI.tY9iyڠtML Cff6fgNRyD6}Mc,\Cgl6&d fNA|1GVexGaY*\ay\sf܄!C=U۸ } Y-TrߏKh"C9,mدPO3؈M2aagA#8;bŚ& # U0^#,U#cpFG yȒ(O^5r)dUm[m 5e~~yIr]TRV5qWV?IȌm=j (o~ꘆBxWZtDWg4 ʓ˗t~|j?~˗e|nѠctߩQ?)p4(H lgN@Nء#;cGPYי.J#w^32%šXA {Eu{o{5 A6p"]JG$j2NFQ -#r4Ԁ&0-A@8c;Crf2"iuc5j;H^KS8w~V'B{ -8Yhsn<\嫈,4cLh~]˥nɭQQwQD=XV|柙{a-t ;[_*d6fW_RY}S̵#Ň -[B9;zod:un]n^clo(nlHўʦP${eivl[ӥh5o\r~$_{?<0"Җk 撇;i6?%rQmZo}>5-lfXx/N]x'~gۥgPޑw>PjuQKo&7go| -ȏ "VLcw뛬L\ ROQW\[of*?J!aThR4y2KȦ]0&S}5fD3qtp ҢS{ 5${®] ڌTa785h}lxZy6vKxJ* Za2LE55JQOp̅QOb -Sz?}pQx5qWQs&j!a*MEU5uU tr)'H5{"K2W5d=i"ͤlC!]ir1 rF []h\z=Bz#5-ԤΡun].Ut m_zQCO?h^YEu- ښ¦ںUZ6}ճedPs=ְuf~ W*NcO.vس9ϓ+A|QBW#x51uycDcܻ^d:B(F;g=݋*yGZ?ڥWRB2+c7* y(L&ڽ|4ͫ`ugq71uюd4\§& -LR$1$gV\7A@v9w_D>WXUM&/I _7 'aQ#Y x.xgؾ/ )6>Bx+ea#'7F:BS5bX4~,'@?d=v?[d$88T)`L3RcCgR[=RaQ,+Nԍ#.)dd@ Bt50+Njvh7 %?6Iq]nBRx PNߘ,C:s6IO<'t!ށCxQhNC_#Xĺk4)ʹx6t^9h.dJ\AxVX챐%d4ȢfV.Q ->z6HyOXmMXLmInXiأKu> Calœ"KtZ8f{1LOaP `%KeW5#X|"4y,y^2Y\ ARo6h.ӚW+Dɑ-=aRlEɥ[eD[d5s ;tYH~8VcqiyZ@!bp5f "@| (YhYYdِ[=c/wnKFT }KkW g+a\[X2,-Dr@=zZe`A }Zcr/ltnoJEXY0pɺz^a,$Τ"vIW!u>$e璘+Gn-,-ćÝnFJfM뙷1ƴݸmɲ덦ʩҀ#{S6>ZeEF4t-h.GU.l-yu53]cާ=l`hQq-0XYh+cٽS:fejc۲tfq0 - -rm~ǕsC0$k좕~bA-16BOt g2+M&W.ӜyqSSJڥ,'mZCSEqi\Zxun (pL/秡lF' Z(IܳaS%{ĺu꠴p={EyyE/ȵqJoS82It S ~ $:`VbGgk=.^Chg'- .{t*CeK ZLj.E:`1\wiBp1"jw]tRע'linlujR4"8 3Nm@ WvޖBW -f1!djcA7iZ8 TFg&N %A(-4nmv.'c ޵П9E>1eTq -xA¹#TZ(޵Pw:5.->Z$(^Êr%-HAy@OL -=4A^#n‘Bt4؋B$5,Bu~2*EFxъ-xVrVT8,& LMVH9#6YK΅(vfXMZ6Eh]Ehu2p0x6e;V k!U%i+8 b=hL_ = }BhQǀc:< "/(s6l9G9WB ޷4ZHJ;g[V{ эNCRmiяZ oϿ9K-ZfOpٷp{吉9̎,>)A 8Uތ-B#.AʺSZkc MZPh= `eZ҃q'f;eNM% ^[l<#S`ѯ/d -Kw`p#2vb Km:hZbWaD%u__u'˵e\# /s%+ڛ6Z$o'KrvM66mo"rWw`)N†*. xrK}T Ya9,gpA{B:_wyTeE2(I ђ?mFԆXYC+h ';Z+jZQk%A9Zb\-.v06ϚQ7c7l$D½Y[fMsrѯ |HspihC`%#BpY#erZ%nhӡB{J`k1Z<2^D(m _=~X< K)'~xWTߡyyi1d, P 7eaǾ*rwp[v0D039QLoͷlk \ I"5ǴRΖ/2軄pl-uhC;65?-Ej>ҍBm;޺1Z4.B.- y; L~#F]}J(!6`q?N|B+MGEN􎀴N C>(p߂1pa- ~ /oЀm \!$CyLoK{X,oɫdKn)2+QN(_V\PkU+E_W T (0HFmYp1X$'Z$PXiTL11x"]>V14k#+YT93޹ܙf'*`XoR F3sl!gzmgmcv]ea,Cy"a| _3Λ&G9oKROI30iT,M*ER;itD:/]l49Kvȓry^n' -S"~ʏ\e2K,VV)((;0ݫV('ʿKJTU5&^:@f05@OGV%&#Lh -D!ZdQvH&bDd H{b=DRu1h3 -t_Āo,u Bz0%|~5P$a4EGA|d4T3.#܌r3Yt( R8D<!10q#BA1JHU7)uAԉ} &Ζ:?A}n@q'j7smoG1<й(z(me~+ -7@zE{(l(RG9n}w'Ox`ٳc;oЭsvD|3Q18B*_ge)0&t%@NGPD+./HsJw++ }Ҭi-yK[~m^ɲ̟,N6||QoQ4BIk0?ly01ߚ 8Unx0ZXJX oA3Z1cp ס:*j<#IoGII!'d0J2d@&"22 -E*|ڪBRK|@~CV&üJnv5%T3/i4}3dJI4ŜET:ܱ.*F"7Pmt撇Q=E?ez~Eovzv#a1όdQbYxĞdSH(!ܑGʧ(0DD9e(-F%R݈mO"&j -uJ1yԽ^‚-dvƒ˃-vWr?)؋G #/SHldyqٝ=QXޫ XA[J\ -JIg5K^әs}M$Kb}D)t"K\VInmSZ55 c%OcI'%}luéc)pbSXGAv8#dO~??3lrULH16B(H`-Ԫ Gռn6\6ōӟ(!wNDzi\w%.C ==A'YGj>y>kh9mo=rUݑs#p)X1ty9v,>8m?l& ]` -{dI9~q*O%V, KLQ}JGلƄ-]}nJ-(k+O%;oF ><"(0‚> 2 ]X ~'|䜔S]|H=8|A%jS_9`Ε-* s-}"7Ϩ -9+#2@PK]}Z~_/#G{@^S+~HG U)='9$ + }B.E- DGFdnMY~_ȗDJƵb'C}:IQQ"52FCרrn|@"U|H c}ܟ䦽~LsVjSO %(H=|n^~ww -~ iۃ~%q޿ĭ=<+}^i%Ӄ]^|@j=ʍGr7HsrVzq]PQya/!G?9.oOwp1?I M4 }gp|i ]X".y9@&dQi;S^tvi/RXܜHe\R#dƆJi7C |t`Z.B,I]I9 ێ6N)N|Y%,2渇l$iJ/գ4_mm<:x(yǭ#W#!n2 GP%:&7'|a 3ck"jmS-;oTW;Hˌo), m\_F>MK-AYF6$=f(m((0#| -pgy4چ.v`8tlj'۶1`fX"?ꢂGsy2akD]aZMa``.4V*JFs%b^ӈf=iv->"1zq&4G {#~mQ\ml Y,2Ke%eU^Ȟ ^ L8n|%rt &3W&;OW -Wy̾$T })olO{c8FշX-$Μ@B,taϩd,( -Zz1mq九So8!p v@ ) ]k$~XPuc7z>#܈qNG -C/1iF$MݎY:q>zH8:SM e{*kИt Gb"郤!VIXjblTneY #)h-v`rkbP[РM+K&-aV=Ύ@#*v_9ͼJszտ?x>_?wwd??CcL8o(F(JbRAFLJ#*jURM@R*hsFLB >FԤ80N4?o/]]闾9wiVsޕ5֗MR>:6:ཌྷu]mQ(r۵1!yTA[LUi&,+~bӱǕe~No\(rƾAT;!s_^&?+^~~8?طu)a]~ncG:[rOl:oUye?>Ao,OM5k#?tPS^=yNF!fwΓ'VmQ0;?zmp`K_N9SO*82'%m1 \||Mm[}o>δ}vʅUSlCcۭ;.}r;s^ڥTV32.l{^BN\P `$tE/g2_T[36IIcOCǚ/{ѣoMWL4zhA' y7䑻ȏ_/`۩u+4le-b?Ěkofo(OnlWԬ#ײ5\>WѺ;Y,eR{,C.{m15ȅRVeCxL(C.W҃~27VJS؎7:cKw'w3 f$ -eyE2asG|q\Ҍ3i~a'7w^A^+_ʳ!m&1]mxiɵtc?SZFv0FN3Ng\zEo(SUkz{[ncmca(o!.]bpSJNJ榔\.L̤Qqhi"!hѨw{E!lY;[yਘѶoO{.e4 @{t"K'βkFV;#q]4̍HqwbSKdO>p:dBoxM-Ϣ -endstream -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -27 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 83 0 R ->> -endobj -44 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 118 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 84 0 R ->> -endobj -48 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 46 -/Widths [278 333 400 556 556 833 852 278 333 333 500 606 278 333 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 85 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 72 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611 -0 722 722 722 722 667 611 0 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 944 0 667 0 0 0 0 0 0 -0 556 0 556 611 556 333 611 611 278 0 0 278 0 611 611 -611 0 389 556 333 611 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 73 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 74 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 0 500 500 500 500 0 250 250 0 0 0 444 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 75 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [600 0 0 0 600 0 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 0 600 0 600 0 0 600 600 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 600 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 76 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 77 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 778 0 0 0 0 0 0 0 0 0 778 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 407 500 389 278 500 500 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 722 0 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 78 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 -600 0 600 600 600 600 600 600 0 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 79 0 R ->> -endobj -20 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 1000 0 0 0 0 0 0 0 0 -0 500 0 0 0 500 0 556 0 333 0 0 0 0 611 556 -0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 80 0 R ->> -endobj -34 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBEPCA+Symbol -/Encoding /Identity-H -/DescendantFonts [ 86 0 R ] -/ToUnicode 87 0 R ->> -endobj -86 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBEPCA+Symbol -/FontDescriptor 81 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -87 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 [dld `xI} v+)}$Nс$x᎔!A~7-FYl88Lܺ5Q.SıCU yI)/]W'[dGCOB9_"(k y~CC% k_lA4 TJU$ivYT-g^izj$[pZq`j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -88 0 obj -<< -/S /D ->> -endobj -89 0 obj -<< -/Nums [0 88 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 17 0 R 21 0 R 24 0 R 28 0 R 31 0 R 35 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [45 0 R 51 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R] -/Count 8 -/Parent 49 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [12 0 R 50 0 R ] -/Count 18 -/MediaBox [0 0 612 792] ->> -endobj -90 0 obj -<< -/CreationDate (D:20210202102641-06'00') -/ModDate (D:20210202102641-06'00') -/Producer (Apple pstopdf) ->> -endobj -91 0 obj -<< -/Type /Catalog -/Pages 49 0 R -/PageLabels 89 0 R ->> -endobj -xref -0 92 -0000000000 65535 f -0000165184 00000 n -0000000016 00000 n -0000009758 00000 n -0000160873 00000 n -0000161084 00000 n -0000161516 00000 n -0000161822 00000 n -0000162380 00000 n -0000162923 00000 n -0000163250 00000 n -0000137072 00000 n -0000166761 00000 n -0000165265 00000 n -0000009924 00000 n -0000018667 00000 n -0000163706 00000 n -0000165349 00000 n -0000018847 00000 n -0000026303 00000 n -0000164180 00000 n -0000165433 00000 n -0000026485 00000 n -0000034206 00000 n -0000165517 00000 n -0000034388 00000 n -0000043495 00000 n -0000159939 00000 n -0000165601 00000 n -0000043662 00000 n -0000051973 00000 n -0000165685 00000 n -0000052155 00000 n -0000060984 00000 n -0000164547 00000 n -0000165769 00000 n -0000061165 00000 n -0000068033 00000 n -0000165853 00000 n -0000068190 00000 n -0000078446 00000 n -0000165937 00000 n -0000078627 00000 n -0000088190 00000 n -0000160114 00000 n -0000166021 00000 n -0000088382 00000 n -0000096381 00000 n -0000160640 00000 n -0000167021 00000 n -0000166898 00000 n -0000166105 00000 n -0000096583 00000 n -0000105955 00000 n -0000166189 00000 n -0000106144 00000 n -0000115046 00000 n -0000166273 00000 n -0000115237 00000 n -0000123176 00000 n -0000166357 00000 n -0000123393 00000 n -0000131254 00000 n -0000166441 00000 n -0000131458 00000 n -0000136291 00000 n -0000166525 00000 n -0000136482 00000 n -0000136603 00000 n -0000166609 00000 n -0000136700 00000 n -0000136953 00000 n -0000137213 00000 n -0000137410 00000 n -0000137616 00000 n -0000137811 00000 n -0000138011 00000 n -0000138202 00000 n -0000138404 00000 n -0000138607 00000 n -0000138808 00000 n -0000139013 00000 n -0000139203 00000 n -0000159309 00000 n -0000159521 00000 n -0000159729 00000 n -0000164690 00000 n -0000164893 00000 n -0000166693 00000 n -0000166721 00000 n -0000167113 00000 n -0000167236 00000 n -trailer -<< -/Size 92 -/Root 91 0 R -/Info 90 0 R -/ID [<1569f0a925445bbd67f845bbda7038dc><1569f0a925445bbd67f845bbda7038dc>] ->> -startxref -167306 -%%EOF diff --git a/docs/medley-irm/09-conditionals.pdf b/docs/medley-irm/09-conditionals.pdf deleted file mode 100644 index 387805a5..00000000 --- a/docs/medley-irm/09-conditionals.pdf +++ /dev/null @@ -1,10945 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 6512 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-1)Tj -/TT4 1 Tf -10 0 0 10 317.75 568.2 Tm -(9. LISTS AND ITERATIVE STATEMENTS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -10 0 0 10 509.9999 555.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 78 531.54 Tm -0.1189 Tw -[(Medley gives you a large number of predicates, conditional functions, and control functions. Also,)]TJ -0 -1.2222 TD -0.0744 Tw -(there is a complex iterative statement facility which allows you to easily create complex loops and)Tj -T* -0 Tw -(iterative constructs.)Tj -/TT4 1 Tf -10 0 0 10 54 487.2 Tm -(Data Type Predicates)Tj -ET -1 w -54.01 484.49 m -510.01 484.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 470.54 Tm -(Medley provides separate functions for testing whether objects are of certain commonly-used types:)Tj -/TT8 1 Tf -2.6667 -2 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(LITATOM)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-30969.7([Function])]TJ --3.9336 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a symbol; )Tj -/TT8 1 Tf -5.9678 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise. Note that a number is not a symbol. )Tj -/TT8 1 Tf --16.486 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(SMALLP)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31569.7([Function])]TJ --3.3336 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7871 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.06 Tw -[( if )]TJ -/TT12 1 Tf -1.244 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.06 Tw -[( is a small integer; )]TJ -/TT8 1 Tf -8.5119 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.06 Tw -[( otherwise. \(The range of small integers is -65536 to)]TJ --16.5435 -1.2889 TD -0 Tw -(+65535.)Tj -/TT8 1 Tf --2.6667 -2 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FIXP)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -33.2697 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a small or large integer; )Tj -/TT8 1 Tf -11.874 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --22.3923 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FLOATP)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31569.7([Function])]TJ --3.3336 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a floating point number; )Tj -/TT8 1 Tf -12.2315 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --22.7497 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NUMBERP)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-30969.7([Function])]TJ --3.9336 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a number of any type, )Tj -/TT8 1 Tf -11.1895 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --21.7077 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(ATOM)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -33.2697 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is an atom \(i.e. a symbol or a number\); )Tj -/TT8 1 Tf -17.4268 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --25.2783 -2.0667 TD -(\(ATOM )Tj -/TT12 1 Tf -4.0173 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1733 Tw -[( is )]TJ -/TT8 1 Tf -1.5615 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1733 Tw -[( if )]TJ -/TT12 1 Tf -1.4707 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1733 Tw -[( is an array, string, etc. In Common Lisp, )]TJ -/TT8 1 Tf -20.1938 0 TD -0 Tw -(CL:ATOM)Tj -/TT6 1 Tf -4.2007 0 TD -0.1733 Tw -[( is defined)]TJ --35.0445 -1.2889 TD -0 Tw -(equivalent to the Interlisp function )Tj -/TT8 1 Tf -15.6187 0 TD -(NLISTP)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --21.8859 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(LISTP)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -32.6697 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list cell \(something created by )Tj -/TT8 1 Tf -15.397 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -(\); )Tj -/TT8 1 Tf -0.833 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --29.1486 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NLISTP)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31569.7([Function])]TJ -/TT8 1 Tf --3.3336 -1.8444 TD -(\(NOT \(LISTP X\)\))Tj -/TT6 1 Tf -9.0015 0 TD -(. Returns )Tj -/TT8 1 Tf -4.4771 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not a list cell, )Tj -/TT8 1 Tf -7.2559 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --27.5256 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(STRINGP)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-30969.7([Function])]TJ --3.9336 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a string, )Tj -/TT8 1 Tf -5.0391 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --15.5573 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(ARRAYP)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31569([Function])]TJ --3.3343 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is an array, )Tj -/TT8 1 Tf -5.3931 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --15.9113 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(HARRAYP)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-30968.9([Function])]TJ --3.9344 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( if it is a hash array object; otherwise )Tj -/TT8 1 Tf -16.3281 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 7999 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-2)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(HARRAYP)Tj -/TT6 1 Tf -4.2 0 TD -0.02 Tw -[( returns )]TJ -/TT8 1 Tf -3.7441 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.02 Tw -[( if )]TJ -/TT12 1 Tf -1.164 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( is a list whose )]TJ -/TT8 1 Tf -6.7616 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.02 Tw -[( is an )]TJ -/TT8 1 Tf -2.6069 0 TD -0 Tw -(HARRAYP)Tj -/TT6 1 Tf -4.2007 0 TD -0.02 Tw -(, even though this is accepted)Tj --26.878 -1.2889 TD -0 Tw -(by the hash array functions.)Tj -/TT16 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.2789 Tw -[(: The empty list, )]TJ -/TT8 1 Tf -8.9955 0 TD -0 Tw -(\(\))Tj -/TT6 1 Tf -1.2002 0 TD -0.2789 Tw -[( or )]TJ -/TT8 1 Tf -1.9987 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2789 Tw -(, is considered to be a symbol, rather than a list.)Tj --16.2169 -1.2889 TD -0 Tw -(Therefore, )Tj -/TT8 1 Tf -4.873 0 TD -0.1722 Tw -(\(LITATOM NIL\) = \(ATOM NIL\) = T)Tj -/TT6 1 Tf -19.0363 0 TD -0.0722 Tw -[( and )]TJ -/TT8 1 Tf -2.3373 0 TD -0.1722 Tw -(\(LISTP NIL\) = NIL)Tj -/TT6 1 Tf -10.7183 0 TD -0.0722 Tw -[(. Take)]TJ --36.9649 -1.2889 TD -0 Tw -(care when using these functions if the object may be the empty list )Tj -/TT8 1 Tf -29.5508 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 493.8 Tm -(Equality Predicates)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 491.09 m -558.01 491.09 l -S -BT -/TT6 1 Tf -9 0 0 9 126 477.14 Tm -0.0122 Tw -[(Sometimes, there is more than one type of equality. For instance, given two lists, you can ask whether)]TJ -0 -1.2222 TD -0.0344 Tw -(they are exactly the same object, or whether they are two distinct lists that contain the same elements.)Tj -T* -0 Tw -(Confusion between these two types of equality is often the source of program errors.)Tj -/TT8 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(EQ)Tj -/TT8 1 Tf -1.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 177.0017 435.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 179.7817 435.86 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -33.5607 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.8993 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1722 Tw -[( if )]TJ -/TT12 1 Tf -1.4685 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1722 Tw -[( and )]TJ -/TT12 1 Tf -2.5373 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1722 Tw -[( are identical pointers; )]TJ -/TT8 1 Tf -10.7719 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -[( otherwise. )]TJ -/TT8 1 Tf -5.8726 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1722 Tw -[( should not be used to)]TJ --29.3504 -1.2889 TD -0 Tw -(compare two numbers, unless they are small integers; use )Tj -/TT8 1 Tf -25.7695 0 TD -(EQP)Tj -/TT6 1 Tf -1.8003 0 TD -( instead.)Tj -/TT8 1 Tf --30.2365 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NEQ)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 182.4017 387.78 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1817 387.78 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -32.9607 0 TD -([Function])Tj --35.4033 -1.8444 TD -(The same as )Tj -/TT8 1 Tf -5.6333 0 TD -(\(NOT \(EQ )Tj -/TT12 1 Tf -5.4009 0 TD -(X Y)Tj -/TT8 1 Tf -1.8003 0 TD -(\)\))Tj --15.5011 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NULL)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -33.2697 0 TD -([Function])Tj -/TT8 1 Tf --38.07 -1.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NOT)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -33.8697 0 TD -([Function])Tj --35.4033 -1.8444 TD -(The same as )Tj -/TT8 1 Tf -5.6333 0 TD -(\(EQ )Tj -/TT12 1 Tf -2.4004 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( NIL\))Tj --11.3005 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(EQP)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 182.4017 306.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1817 306.5 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -32.9607 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.9248 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1978 Tw -[( if )]TJ -/TT12 1 Tf -1.5196 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1978 Tw -[( and )]TJ -/TT12 1 Tf -2.5884 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1978 Tw -[( are )]TJ -/TT8 1 Tf -2.2696 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1978 Tw -(, or if )Tj -/TT12 1 Tf -3.1583 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1978 Tw -[( and )]TJ -/TT12 1 Tf -2.5884 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1978 Tw -[( are numbers and are equal in value; )]TJ -/TT8 1 Tf -17.9362 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf --38.186 -1.2889 TD -(otherwise. For more discussion of )Tj -/TT8 1 Tf -15.4238 0 TD -(EQP)Tj -/TT6 1 Tf -1.8003 0 TD -( and other number functions, see Chapter 7.)Tj -/TT8 1 Tf --17.2241 -2.0667 TD -(EQP)Tj -/TT6 1 Tf -1.8003 0 TD -0.0678 Tw -[( also can be used to compare stack pointers \(Section 11\) and compiled code \(Chapter)]TJ --1.8003 -1.2889 TD -0 Tw -(10\).)Tj -/TT8 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(EQUAL)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 193.2017 228.82 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 195.9818 228.82 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31260.7([Function])]TJ -/TT8 1 Tf --3.6426 -1.8444 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT12 1 Tf -2.1929 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( are one of the following:)Tj --11.8218 -1.7333 TD -(1.)Tj -/TT8 1 Tf -1.3333 0 TD -(EQ)Tj -/TT6 1 Tf --1.3333 -1.1778 TD -(2.)Tj -/TT8 1 Tf -1.3333 0 TD -(EQP)Tj -/TT6 1 Tf -1.8003 0 TD -(, i.e., numbers with equal value )Tj --3.1336 -1.1778 TD -(3.)Tj -/TT8 1 Tf -1.3333 0 TD -(STREQUAL)Tj -/TT6 1 Tf -4.8008 0 TD -(, i.e., strings containing the same sequence of characters)Tj --6.1341 -1.1778 TD -[(4.)-583.3(Lists and )]TJ -/TT8 1 Tf -5.6019 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( of )Tj -/TT12 1 Tf -1.3789 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf --34.3368 -1.8444 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise. Note that )Tj -/TT8 1 Tf -9.7725 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -( can be significantly slower than )Tj -/TT8 1 Tf -14.4844 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --36.9624 -2.0667 TD -0.0356 Tw -(A loose description of )Tj -/TT8 1 Tf -10.0744 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0356 Tw -[( might be to say that )]TJ -/TT12 1 Tf -9.4702 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0356 Tw -[( and )]TJ -/TT12 1 Tf -2.264 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0356 Tw -[( are )]TJ -/TT8 1 Tf -1.9451 0 TD -0 Tw -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0356 Tw -[( if they print out the)]TJ --30.9548 -1.2889 TD -0 Tw -(same way.)Tj -/TT8 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(EQUALALL)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 209.4017 98.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 212.1817 98.74 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-29460.7([Function])]TJ --5.4426 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.2926 0 TD -(EQUAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1056 Tw -(, except it descends into the contents of arrays, hash arrays, user data types,)Tj --5.2931 -1.2889 TD -0 Tw -(etc. Two non-)Tj -/TT8 1 Tf -6.2847 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( arrays may be )Tj -/TT8 1 Tf -6.7412 0 TD -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -( if their respective componants are )Tj -/TT8 1 Tf -15.4878 0 TD -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -19 0 obj -<< -/Length 10632 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-3)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT16 1 Tf -9 0 0 9 126 569.54 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1122 Tw -[(: In general, )]TJ -/TT8 1 Tf -6.1501 0 TD -0 Tw -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.1122 Tw -[( descends all the way into all datatypes, both those youve)]TJ --13.173 -1.2889 TD -0.2267 Tw -(defined and those built into the system. If you have a data structure with fonts and)Tj -0 -1.2222 TD -0.3178 Tw -(pointers to windows, )Tj -/TT8 1 Tf -10.591 0 TD -0 Tw -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.3178 Tw -[( will descend those also. If the data structures are)]TJ --15.3918 -1.2889 TD -0 Tw -(circular, as windows are, )Tj -/TT8 1 Tf -11.2822 0 TD -(EQUALALL)Tj -/TT6 1 Tf -4.8008 0 TD -( can cause stack overflow.)Tj -/TT4 1 Tf -10 0 0 10 54 512.4 Tm -(Logical Predicates)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 509.69 m -510.01 509.69 l -S -BT -/TT8 1 Tf -9 0 0 9 102 495.74 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 134.4 493.74 Tm -(1)Tj -9 0 0 9 138 495.74 Tm -( X)Tj -6 0 0 6 148.8 493.74 Tm -(2)Tj -9 0 0 9 152.4 495.74 Tm -( ... X)Tj -6 0 0 6 184.8 493.74 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 188.4 495.74 Tm -(\))Tj -/TT6 1 Tf -0.6 0 TD -[( )-17892.2([NLambda NoSpread Function])]TJ --7.5333 -1.95 TD -0.0489 Tw -[(Takes an indefinite number of arguments \(including zero\), that are evaluated in order. If)]TJ -0 -1.2222 TD -0.1789 Tw -(any argument evaluates to )Tj -/TT8 1 Tf -12.717 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6789 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.1789 Tw -[( immediately returns )]TJ -/TT8 1 Tf -10.0806 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1789 Tw -(, without evaluating the)Tj --28.8774 -1.2889 TD -0.1056 Tw -[(remaining arguments. If all of the arguments evaluate to non-)]TJ -/TT8 1 Tf -28.537 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1056 Tw -(, the value of the last)Tj --30.3373 -1.2889 TD -0 Tw -(argument is returned. )Tj -/TT8 1 Tf -9.9092 0 TD -( \(AND\) => T)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT8 1 Tf --19.1769 -2.0667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 129 423.39 Tm -(1)Tj -9 0 0 9 132.6 425.39 Tm -( X)Tj -6 0 0 6 143.4 423.39 Tm -(2)Tj -9 0 0 9 147 425.39 Tm -( ... X)Tj -6 0 0 6 179.4 423.39 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 183 425.39 Tm -(\))Tj -/TT6 1 Tf -0.6 0 TD -[( )-18492.2([NLambda NoSpread Function])]TJ --6.9333 -1.95 TD -0.0489 Tw -[(Takes an indefinite number of arguments \(including zero\), that are evaluated in order. If)]TJ -0 -1.2222 TD -0.3444 Tw -(any argument is non-)Tj -/TT8 1 Tf -10.5036 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3444 Tw -(, the value of that argument is returned by )Tj -/TT8 1 Tf -22.057 0 TD -0 Tw -(OR)Tj -/TT6 1 Tf -1.2002 0 TD -0.3444 Tw -[( \(without)]TJ --35.5611 -1.2889 TD -0.1844 Tw -[(evaluating the remaining arguments\). If all of the arguments evaluate to )]TJ -/TT8 1 Tf -34.5654 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6844 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1844 Tw -[( is)]TJ --38.8504 -1.2889 TD -0 Tw -(returned. )Tj -/TT8 1 Tf -4.3701 0 TD -( \(OR\))Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -1.2002 0 TD -(=>)Tj -/TT10 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -1.2002 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --18.1048 -2.0667 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.0389 Tw -[( and )]TJ -/TT8 1 Tf -2.2706 0 TD -0 Tw -(OR)Tj -/TT6 1 Tf -1.2002 0 TD -0.0389 Tw -[( can be used as simple logical connectives, but note that they may not evaluate all of their)]TJ --5.2711 -1.2889 TD -0.0311 Tw -[(arguments. This makes a difference if some of the arguments cause side-effects. This also means you)]TJ -0 -1.2222 TD -0.0656 Tw -(can use )Tj -/TT8 1 Tf -3.6629 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -[( and )]TJ -/TT8 1 Tf -2.324 0 TD -0 Tw -(OR)Tj -/TT6 1 Tf -1.2002 0 TD -0.0656 Tw -[( as simple conditional statements. For example: )]TJ -/TT8 1 Tf -21.9219 0 TD -0.1567 Tw -(\(AND \(LISTP)Tj -/TT10 1 Tf -6.7577 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.7568 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1567 Tw -(\) \(CDR)Tj -/TT10 1 Tf -3.7573 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.7568 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\)\))Tj -/TT6 1 Tf --44.1379 -1.2889 TD -0.0378 Tw -(returns the value of )Tj -/TT8 1 Tf -9.0593 0 TD -0 Tw -(\(CDR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6901 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0378 Tw -[( if )]TJ -/TT12 1 Tf -1.1996 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0378 Tw -[( is a list cell; otherwise it returns )]TJ -/TT8 1 Tf -14.7812 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0378 Tw -[( without evaluating )]TJ -/TT8 1 Tf -9.065 0 TD -0 Tw -(\(CDR)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6901 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --45.0869 -1.2889 TD -0.0078 Tw -(In general, you should avoid this use of )Tj -/TT8 1 Tf -17.7956 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( and )]TJ -/TT8 1 Tf -2.2084 0 TD -0 Tw -(OR)Tj -/TT6 1 Tf -1.2002 0 TD -0.0078 Tw -[( in favor of more explicit conditional statements in)]TJ --23.0045 -1.2889 TD -0 Tw -(order to make programs more readable.)Tj -/TT4 1 Tf -10 0 0 10 54 275.3 Tm -(COND Conditional Function)Tj -ET -54.01 272.59 m -510.01 272.59 l -S -BT -/TT8 1 Tf -9 0 0 9 102 257.36 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(CLAUSE)Tj -6 0 0 6 166.8 255.36 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 170.4 257.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 173.18 257.36 Tm -(CLAUSE)Tj -6 0 0 6 205.58 255.36 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 209.18 257.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 211.96 257.36 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 228.1626 257.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 230.9426 257.36 Tm -(CLAUSE)Tj -6 0 0 6 263.34 255.36 Tm -(K)Tj -/TT8 1 Tf -9 0 0 9 266.94 257.36 Tm -(\))Tj -/TT6 1 Tf -0.6 0 TD -[( )-9165.6([NLambda NoSpread Function])]TJ -/TT8 1 Tf --16.26 -1.95 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.0833 Tw -[( takes an indefinite number of arguments, called clauses. Each )]TJ -/TT12 1 Tf -28.8381 0 TD -0 Tw -(CLAUSE)Tj -6 0 0 6 439.6 237.81 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 443.2 239.81 Tm -0.0833 Tw -[( is a list of)]TJ --35.2444 -1.3944 TD -0.1889 Tw -(the form )Tj -/TT8 1 Tf -4.4217 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(P)Tj -6 0 0 6 176.6 225.26 Tm -(i)Tj -/TT10 1 Tf -9 0 0 9 180.2 227.26 Tm -( )Tj -/TT12 1 Tf -1.0545 0 TD -(C)Tj -6 0 0 6 195.09 225.26 Tm -(i1)Tj -/TT10 1 Tf -9 0 0 9 202.29 227.26 Tm -0.4544 Tw -[( ... )]TJ -/TT12 1 Tf -3.9094 0 TD -0 Tw -(C)Tj -6 0 0 6 242.87 225.26 Tm -(iN)Tj -/TT8 1 Tf -9 0 0 9 250.07 227.26 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1889 Tw -(, where )Tj -/TT12 1 Tf -3.8968 0 TD -0 Tw -(P)Tj -6 0 0 6 295.95 225.26 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 299.55 227.26 Tm -0.1889 Tw -[( is the predicate, and )]TJ -/TT12 1 Tf -10.3653 0 TD -0 Tw -(C)Tj -6 0 0 6 398.25 225.26 Tm -(i1)Tj -/TT8 1 Tf -9 0 0 9 405.45 227.26 Tm -0.4544 Tw -[( ... )]TJ -/TT12 1 Tf -3.9094 0 TD -0 Tw -(C)Tj -6 0 0 6 446.03 225.26 Tm -(iN)Tj -/TT6 1 Tf -9 0 0 9 453.23 227.26 Tm -0.1889 Tw -[( are the)]TJ --36.3589 -1.3944 TD -0 Tw -(consequents. The operation of )Tj -/TT8 1 Tf -13.7676 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -( can be paraphrased as:)Tj -/TT8 1 Tf --14.168 -1.6667 TD -(IF)Tj -/TT12 1 Tf -1.2002 0 TD -( P)Tj -6 0 0 6 165.6 197.71 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 169.2 199.71 Tm -( THEN)Tj -/TT12 1 Tf -3.0005 0 TD -( C)Tj -6 0 0 6 207 197.71 Tm -(11)Tj -/TT8 1 Tf -9 0 0 9 214.2 199.71 Tm -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(C)Tj -6 0 0 6 246.6 197.71 Tm -(1N)Tj -/TT8 1 Tf -9 0 0 9 253.8 199.71 Tm -( ELSEIF)Tj -/TT12 1 Tf -4.2007 0 TD -( P)Tj -6 0 0 6 302.4 197.71 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 306 199.71 Tm -( THEN)Tj -/TT12 1 Tf -3.0005 0 TD -( C)Tj -6 0 0 6 343.8 197.71 Tm -(21)Tj -/TT8 1 Tf -9 0 0 9 351 199.71 Tm -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(C)Tj -6 0 0 6 383.4 197.71 Tm -(2N)Tj -/TT8 1 Tf -9 0 0 9 390.6 199.71 Tm -( ELSEIF)Tj -/TT12 1 Tf -4.2007 0 TD -( P)Tj -6 0 0 6 439.2 197.71 Tm -(3)Tj -/TT8 1 Tf -9 0 0 9 442.8 199.71 Tm -( ...)Tj -/TT6 1 Tf --35.2 -1.95 TD -0.3033 Tw -[(The clauses are considered in sequence as follows: The predicate )]TJ -/TT12 1 Tf -32.3215 0 TD -0 Tw -(P)Tj -6 0 0 6 422.38 180.16 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 425.98 182.16 Tm -0.3033 Tw -[( of the clause)]TJ -/TT12 1 Tf --33.3311 -1.3944 TD -0 Tw -(CLAUSE)Tj -6 0 0 6 158.4 167.61 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 162 169.61 Tm -0.1156 Tw -[( is evaluated. If the value of )]TJ -/TT12 1 Tf -13.6173 0 TD -0 Tw -(P)Tj -6 0 0 6 289.95 167.61 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 293.55 169.61 Tm -0.1156 Tw -[( is true \(non-)]TJ -/TT8 1 Tf -6.9907 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1156 Tw -(\), the consequents )Tj -/TT12 1 Tf -8.5156 0 TD -0 Tw -(C)Tj -6 0 0 6 454.73 167.61 Tm -(i1)Tj -9 0 0 9 461.93 169.61 Tm -0.2767 Tw -[( ...)]TJ --37.3256 -1.3944 TD -0 Tw -(C)Tj -6 0 0 6 131.4 155.06 Tm -(iN)Tj -/TT6 1 Tf -9 0 0 9 138.6 157.06 Tm -0.0378 Tw -[( are evaluated in order, and the value of the )]TJ -/TT8 1 Tf -19.9388 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.0378 Tw -[( is the value of the last expression in)]TJ --23.7392 -1.3944 TD -0.0311 Tw -[(the clause. If )]TJ -/TT12 1 Tf -6.1723 0 TD -0 Tw -(P)Tj -6 0 0 6 186.96 142.51 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 190.56 144.51 Tm -0.0311 Tw -[( is false \()]TJ -/TT8 1 Tf -4.918 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[( to )]TJ -/TT8 1 Tf -1.4343 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -(\), then the remainder of )Tj -/TT12 1 Tf -10.8387 0 TD -0 Tw -(CLAUSE)Tj -6 0 0 6 404.7 142.51 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 408.3 144.51 Tm -0.0311 Tw -[( is ignored, and the)]TJ --31.3667 -1.3944 TD -0.0089 Tw -(next clause, )Tj -/TT12 1 Tf -5.4118 0 TD -0 Tw -(CLAUSE)Tj -6 0 0 6 207.11 129.96 Tm -(i+1)Tj -/TT6 1 Tf -9 0 0 9 217.91 131.96 Tm -0.0089 Tw -[(, is considered. If no )]TJ -/TT12 1 Tf -9.4274 0 TD -0 Tw -(P)Tj -6 0 0 6 308.18 129.96 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 311.78 131.96 Tm -0.0089 Tw -[( is true for )]TJ -/TT18 1 Tf -4.8275 0 TD -0 Tw -(any)Tj -/TT6 1 Tf -1.5 0 TD -0.0089 Tw -[( clause, the value of the )]TJ -/TT8 1 Tf -10.6354 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf --37.6051 -1.3944 TD -(is )Tj -/TT8 1 Tf -0.9648 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --2.7651 -2.0667 TD -0.03 Tw -(If a clause has no consequents, and has the form \()Tj -/TT12 1 Tf -22.1188 0 TD -0 Tw -(P)Tj -6 0 0 6 330.52 98.81 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 334.12 100.81 Tm -0.03 Tw -(\), then if )Tj -/TT12 1 Tf -4.0163 0 TD -0 Tw -(P)Tj -6 0 0 6 375.67 98.81 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 379.27 100.81 Tm -0.03 Tw -[( evaluates to non-)]TJ -/TT8 1 Tf -7.922 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -(, it is)Tj --37.8634 -1.3944 TD -0 Tw -(returned as the value of the )Tj -/TT8 1 Tf -12.3853 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -(. It is only evaluated once.)Tj --14.7856 -2.0667 TD -(Example:)Tj -/TT19 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DEFINEQ \(DOUBLE \(X\))Tj -1.0132 -1 TD -(\(COND \(\(NUMBERP X\) \(PLUS X X\)\))Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -24 0 obj -<< -/Length 6533 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-4)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 570.14 Tm -(\(\(STRINGP X\) \(CONCAT X X\)\))Tj -0 -1 TD -(\(\(ATOM X\) \(PACK* X X\)\))Tj -T* -(\(T \(PRINT "unknown"\) X\))Tj -T* -(\(\(HORRIBLE-ERROR\)\)])Tj --1.3333 -1 TD -(\(DOUBLE\))Tj -/TT19 1 Tf --0.6667 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DOUBLE 5\))Tj -1.0132 -1 TD -(10)Tj -/TT19 1 Tf --2 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DOUBLE "FOO"\))Tj -1.0132 -1 TD -("FOOFOO")Tj -/TT19 1 Tf --2 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DOUBLE BAR\))Tj -1.0132 -1 TD -(BARBAR)Tj -/TT19 1 Tf --2 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DOUBLE \(A B C\)\))Tj -1.0132 -1 TD -("unknown")Tj -T* -(\(A B C\))Tj -/TT6 1 Tf --6 -1.8444 TD -0.0967 Tw -[(A few points about this example: Notice that )]TJ -/TT8 1 Tf -21.1156 0 TD -0 Tw -(5)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( is both a number and an atom, but it is)]TJ --21.7157 -1.2889 TD -0.1722 Tw -(caught by the )Tj -/TT8 1 Tf -7.7745 0 TD -0 Tw -(NUMBERP)Tj -/TT6 1 Tf -4.2007 0 TD -0.1722 Tw -[( clause before the )]TJ -/TT8 1 Tf -8.602 0 TD -0 Tw -(ATOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1722 Tw -[( clause. Also notice the predicate )]TJ -/TT8 1 Tf -16.166 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj --39.7436 -1.2889 TD -0.0267 Tw -[(which is always true. This is the normal way to indicate a )]TJ -/TT8 1 Tf -26.1973 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.0267 Tw -[( clause which will always)]TJ --28.5976 -1.2889 TD -0.0556 Tw -(be executed \(if none of the preceeding clauses are true\). )Tj -/TT8 1 Tf -25.5843 0 TD -0 Tw -(\(HORRIBLE-ERROR\))Tj -/TT6 1 Tf -9.6016 0 TD -0.0556 Tw -[( will never)]TJ --35.1858 -1.2889 TD -0 Tw -(be executed.)Tj -/TT4 1 Tf -10 0 0 10 102 351.8 Tm -(The IF Statement)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 349.09 m -558.01 349.09 l -S -BT -/TT6 1 Tf -9 0 0 9 126 335.14 Tm -(The )Tj -/TT8 1 Tf -2.1427 0 TD -(IF)Tj -/TT6 1 Tf -1.2002 0 TD -0.2189 Tw -[( statement lets you write conditional expressions that are easier to read than using )]TJ -/TT8 1 Tf -39.5895 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf --42.9324 -1.2889 TD -0.0333 Tw -[(directly. CLISP translates expressions using )]TJ -/TT8 1 Tf -19.9925 0 TD -0 Tw -(IF)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5333 0 TD -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5333 0 TD -(ELSEIF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -(, or )Tj -/TT8 1 Tf -1.7576 0 TD -0 Tw -(ELSE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( \(or their lowercase versions\))]TJ --32.4183 -1.2889 TD -0 Tw -(into equivalent )Tj -/TT8 1 Tf -6.9214 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -(s. In general, statements of the form:)Tj -/TT8 1 Tf --3.9884 -1.6667 TD -(\(if )Tj -/TT12 1 Tf -2.4004 0 TD -(AAA)Tj -/TT8 1 Tf -1.8003 0 TD -( then )Tj -/TT12 1 Tf -3.6006 0 TD -(BBB)Tj -/TT8 1 Tf -1.8003 0 TD -( elseif )Tj -/TT12 1 Tf -4.8008 0 TD -(CCC)Tj -/TT8 1 Tf -1.8003 0 TD -( then )Tj -/TT12 1 Tf -3.6006 0 TD -(DDD)Tj -/TT8 1 Tf -1.8003 0 TD -( else )Tj -/TT12 1 Tf -3.6006 0 TD -(EEE)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf --32.3377 -1.8444 TD -(are translated to:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -(\(COND \()Tj -/TT12 1 Tf -4.2007 0 TD -(AAA)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(BBB)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj --8.4014 -1 TD -( \()Tj -/TT12 1 Tf -4.2007 0 TD -(CCC)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(DDD)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj --8.4014 -1 TD -( \(T )Tj -/TT12 1 Tf -5.4009 0 TD -(EEE)Tj -/TT8 1 Tf -1.8003 0 TD -(\)\))Tj -/TT6 1 Tf --12.5345 -1.8444 TD -0.0133 Tw -(The segment between )Tj -/TT8 1 Tf -9.9253 0 TD -0 Tw -(IF)Tj -/TT6 1 Tf -1.2002 0 TD -0.0133 Tw -[( or )]TJ -/TT8 1 Tf -1.4676 0 TD -0 Tw -(ELSEIF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -[( and the next )]TJ -/TT8 1 Tf -6.0367 0 TD -0 Tw -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( corresponds to the predicate of a )]TJ -/TT8 1 Tf -15.0538 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( clause,)]TJ --42.0849 -1.2889 TD -0.0278 Tw -(and the segment between )Tj -/TT8 1 Tf -11.6526 0 TD -0 Tw -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( and the next )]TJ -/TT8 1 Tf -6.0945 0 TD -0 Tw -(ELSE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( or )]TJ -/TT8 1 Tf -1.4965 0 TD -0 Tw -(ELSEIF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0278 Tw -[( as the consequent\(s\). )]TJ -/TT8 1 Tf -10.0647 0 TD -0 Tw -(ELSE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( is the same)]TJ --40.11 -1.2889 TD -0 Tw -(as)Tj -/TT8 1 Tf -0.9238 0 TD -0.12 Tw -[( ELSEIF)]TJ -/TT6 1 Tf -4.3207 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.3 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3 0 TD -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.05 Tw -[(. These words are spelling corrected using the spelling list )]TJ -/TT8 1 Tf -26.6345 0 TD -0 Tw -(CLISPIFWORDSPLST)Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj --45.081 -1.2889 TD -(You may also use lower-case versions \()Tj -/TT8 1 Tf -17.2847 0 TD -(if)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(then)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(elseif)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(else)Tj -/TT6 1 Tf -2.4004 0 TD -(\).)Tj --28.3862 -2.0667 TD -0.1711 Tw -(If there is nothing following a )Tj -/TT8 1 Tf -14.408 0 TD -0 Tw -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1711 Tw -(, or )Tj -/TT8 1 Tf -2.0331 0 TD -0 Tw -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1711 Tw -[( is omitted entirely, the resulting )]TJ -/TT8 1 Tf -15.6873 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.1711 Tw -[( clause has a)]TJ --39.3296 -1.2889 TD -0.0189 Tw -[(predicate but no consequent. For example, )]TJ -/TT8 1 Tf -19.3895 0 TD -0.0444 Tw -(\(if X then elseif ...\))Tj -/TT6 1 Tf -13.3799 0 TD -0.0189 Tw -[( and )]TJ -/TT8 1 Tf -2.2306 0 TD -0.0444 Tw -(\(if X elseif ...\))Tj -/TT6 1 Tf --35.0001 -1.2889 TD -0 Tw -(both translate to )Tj -/TT8 1 Tf -7.4526 0 TD -(\(COND \(X\) ...\))Tj -/TT6 1 Tf -8.4014 0 TD -(if )Tj -/TT8 1 Tf -1.874 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is not )Tj -/TT8 1 Tf -2.9189 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, it is returned as the value of the )Tj -/TT8 1 Tf -14.7173 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --40.165 -2.0667 TD -0.0778 Tw -(Each predicate must be a single expression, but multiple expressions are allowed as the consequents)Tj -0 -1.2222 TD -0 Tw -(after )Tj -/TT8 1 Tf -2.3965 0 TD -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( or )]TJ -/TT8 1 Tf -1.6676 0 TD -0 Tw -(ELSE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[(. Multiple consequent expressions are implicitely wrapped in a )]TJ -/TT8 1 Tf -29.4092 0 TD -0 Tw -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1133 Tw -(, and the)Tj --41.2746 -1.2889 TD -0 Tw -(value of the last one is returned as the value of the consequent. For example:)Tj -/TT8 1 Tf -0 -1.6 TD -(\(if X then \(PRINT "FOO"\) \(PRINT "BAR"\) elseif Y then \(PRINT "BAZ"\)\))Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -27 0 obj -<< -/Length 9106 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-5)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT4 1 Tf --22.663 -4.38 TD -(Selection Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 102 550.26 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 156.0088 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 158.7888 550.26 Tm -(CLAUSE)Tj -6 0 0 6 191.18 548.26 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 194.78 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 197.56 550.26 Tm -(CLAUSE)Tj -6 0 0 6 229.96 548.26 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 233.56 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 236.34 550.26 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 252.5426 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 255.3226 550.26 Tm -(CLAUSE)Tj -6 0 0 6 287.72 548.26 Tm -(K)Tj -/F1 1 Tf -10 0 0 10 291.32 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 108 539.71 Tm -(DEFAULT)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-22624.8([NLambda NoSpread Function])]TJ --2.8008 -1.8444 TD -0.0256 Tw -(Selects a form or sequence of forms based on the value of )Tj -/TT12 1 Tf -25.7803 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0256 Tw -[(. Each clause )]TJ -/TT12 1 Tf -6.2297 0 TD -0 Tw -(CLAUSE)Tj -6 0 0 6 451.95 521.11 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 455.55 523.11 Tm -0.0256 Tw -[( is a list)]TJ --36.6167 -1.3944 TD -0 Tw -(of the form )Tj -/TT8 1 Tf -5.1729 0 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(S)Tj -6 0 0 6 183.36 508.56 Tm -(i)Tj -/TT10 1 Tf -9 0 0 9 186.96 510.56 Tm -( )Tj -/TT12 1 Tf -0.6001 0 TD -(C)Tj -6 0 0 6 197.76 508.56 Tm -(i1)Tj -/TT10 1 Tf -9 0 0 9 204.96 510.56 Tm -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(C)Tj -6 0 0 6 237.36 508.56 Tm -(iN)Tj -/TT8 1 Tf -9 0 0 9 244.56 510.56 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( where )Tj -/TT12 1 Tf -3.269 0 TD -(S)Tj -6 0 0 6 284.79 508.56 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 288.39 510.56 Tm -( is the selection key. Think of )Tj -/TT8 1 Tf -13.3081 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -( as:)Tj -/TT8 1 Tf --31.5521 -1.7722 TD -(IF)Tj -/TT12 1 Tf -1.2002 0 TD -( X)Tj -/TT8 1 Tf -1.2002 0 TD -( = )Tj -/TT12 1 Tf -1.8003 0 TD -(S)Tj -6 0 0 6 205.2 492.61 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 208.8 494.61 Tm -( THEN)Tj -/TT12 1 Tf -3.0005 0 TD -( C)Tj -6 0 0 6 246.6 492.61 Tm -(11)Tj -/TT8 1 Tf -9 0 0 9 253.8 494.61 Tm -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(C)Tj -6 0 0 6 286.2 492.61 Tm -(1N)Tj -/TT8 1 Tf -9 0 0 9 293.4 494.61 Tm -( ELSEIF)Tj -/TT12 1 Tf -4.2007 0 TD -( X)Tj -/TT8 1 Tf -1.2002 0 TD -( = )Tj -/TT12 1 Tf -1.8003 0 TD -(S)Tj -6 0 0 6 363.6 492.61 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 198 484.66 Tm -(THEN ... ELSE)Tj -/TT12 1 Tf -7.8013 0 TD -( DEFAULT)Tj -/TT6 1 Tf --15.8013 -1.8444 TD -(If )Tj -/TT12 1 Tf -0.9588 0 TD -(S)Tj -6 0 0 6 140.03 466.06 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 143.63 468.06 Tm -0.0389 Tw -[( is a symbol, the value of )]TJ -/TT12 1 Tf -11.4441 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0389 Tw -[( is tested to see if it is )]TJ -/TT8 1 Tf -9.8809 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0389 Tw -[( to )]TJ -/TT12 1 Tf -1.4499 0 TD -0 Tw -(S)Tj -6 0 0 6 370.2 466.06 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 373.8 468.06 Tm -0.0389 Tw -[( \(which is )]TJ -/TT18 1 Tf -4.6474 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0389 Tw -[( evaluated\). If)]TJ --33.5138 -1.3944 TD -0.0167 Tw -(so, the expressions )Tj -/TT12 1 Tf -8.5676 0 TD -0 Tw -(C)Tj -6 0 0 6 208.52 453.51 Tm -(i1)Tj -/TT8 1 Tf -9 0 0 9 215.72 455.51 Tm -0.04 Tw -[( ... )]TJ -/TT12 1 Tf -3.0805 0 TD -0 Tw -(C)Tj -6 0 0 6 248.84 453.51 Tm -(iN)Tj -/TT6 1 Tf -9 0 0 9 256.04 455.51 Tm -0.0167 Tw -[( are evaluated in sequence, and the value of the )]TJ -/TT8 1 Tf -21.3517 0 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf --35.8006 -1.3944 TD -(is the value of the last expression.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(S)Tj -6 0 0 6 139.68 422.96 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 143.28 424.96 Tm -( is a list, the value of )Tj -/TT12 1 Tf -9.251 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is compared with each element \(not evaluated\) of )Tj -/TT12 1 Tf -22.3335 0 TD -(S)Tj -6 0 0 6 438.36 422.96 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 441.96 424.96 Tm -(, and if )Tj -/TT12 1 Tf -3.3169 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is)Tj -/TT8 1 Tf --39.0237 -1.3944 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -( to any one of them, then )Tj -/TT12 1 Tf -11.2354 0 TD -(C)Tj -6 0 0 6 243.3 410.41 Tm -(i1)Tj -/TT8 1 Tf -9 0 0 9 250.5 412.41 Tm -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(C)Tj -6 0 0 6 282.9 410.41 Tm -(iN)Tj -/TT6 1 Tf -9 0 0 9 290.1 412.41 Tm -( are evaluated as above.)Tj --18.2333 -2.1722 TD -(If )Tj -/TT12 1 Tf -0.9244 0 TD -(CLAUSE)Tj -6 0 0 6 166.72 390.86 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 170.32 392.86 Tm -0.0001 Tc -0.0043 Tw -( is not selected in one of the two ways described, )Tj -/TT12 1 Tf -21.8033 0 TD -0 Tc -0 Tw -(CLAUSE)Tj -6 0 0 6 398.97 390.86 Tm -(i+1)Tj -/TT6 1 Tf -9 0 0 9 409.77 392.86 Tm -0.0002 Tc -0.0042 Tw -( is tested, etc., until)Tj --31.53 -1.3944 TD -0 Tc -0.0144 Tw -[(all the clauses have been tested. If none is selected, )]TJ -/TT12 1 Tf -23.0134 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0144 Tw -[( is evaluated, and its value is)]TJ --27.2141 -1.2889 TD -0 Tw -(returned as the value of the )Tj -/TT8 1 Tf -12.3853 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -(. )Tj -/TT12 1 Tf -0.75 0 TD -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -( must be present.)Tj --21.5366 -2.0667 TD -(An example of the form of a )Tj -/TT8 1 Tf -12.6606 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -( is:)Tj -/TT8 1 Tf --12.8613 -1.6667 TD -([SELECTQ MONTH)Tj -2 -1 TD -(\(FEBRUARY \(if \(LEAPYEARP\) then 29 else 28\)\))Tj -2 -1 TD -(\(\(SEPTEMBER APRIL JUNE NOVEMBER\) 30\) 31])Tj -/TT6 1 Tf --8 -1.8444 TD -0.0144 Tw -(If the value of )Tj -/TT8 1 Tf -6.4318 0 TD -0 Tw -(MONTH)Tj -/TT6 1 Tf -3.0005 0 TD -0.0144 Tw -[( is the symbol )]TJ -/TT8 1 Tf -6.4128 0 TD -0 Tw -(FEBRUARY)Tj -/TT6 1 Tf -4.8008 0 TD -0.0144 Tw -(, the )Tj -/TT8 1 Tf -2.1661 0 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.0144 Tw -[( returns )]TJ -/TT8 1 Tf -3.733 0 TD -0 Tw -(28)Tj -/TT6 1 Tf -1.2002 0 TD -0.0144 Tw -[( or )]TJ -/TT8 1 Tf -1.4698 0 TD -0 Tw -(29)Tj -/TT6 1 Tf -1.2002 0 TD -0.0144 Tw -[( \(depending)]TJ --34.6158 -1.2889 TD -0 Tw -(on )Tj -/TT8 1 Tf -1.4668 0 TD -(\(LEAPYEARP\))Tj -/TT6 1 Tf -6.6011 0 TD -0.0889 Tw -[(\); otherwise if )]TJ -/TT8 1 Tf -6.9185 0 TD -0 Tw -(MONTH)Tj -/TT6 1 Tf -3.0005 0 TD -0.0889 Tw -[( is )]TJ -/TT8 1 Tf -1.3926 0 TD -0 Tw -(APRIL)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5889 0 TD -(JUNE)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5889 0 TD -(SEPTEMBER)Tj -/TT6 1 Tf -5.4009 0 TD -0.0889 Tw -(, or )Tj -/TT8 1 Tf -1.8687 0 TD -0 Tw -(NOVEMBER)Tj -/TT6 1 Tf -4.8008 0 TD -0.0889 Tw -(, the)Tj -/TT8 1 Tf --38.0286 -1.2889 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(30)Tj -/TT6 1 Tf -1.2002 0 TD -(; otherwise it returns )Tj -/TT8 1 Tf -9.6772 0 TD -(31)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --19.9824 -2.0667 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( compiles open, and is therefore very fast; however, it will not work if the value)]TJ --4.2007 -1.2889 TD -0 Tw -(of )Tj -/TT12 1 Tf -1.3067 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1778 Tw -[( is a list, a large integer, or floating point number, since )]TJ -/TT8 1 Tf -26.687 0 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.1778 Tw -[( uses )]TJ -/TT8 1 Tf -2.7852 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.1778 Tw -[( for all)]TJ --36.78 -1.2889 TD -0 Tw -(comparisons.)Tj -/TT8 1 Tf -0 -2 TD -(SELCHARQ)Tj -/TT6 1 Tf -4.8008 0 TD -( \(Chapter 2\) is a version of )Tj -/TT8 1 Tf -11.8838 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -( that recognizes )Tj -/TT8 1 Tf -7.1802 0 TD -(CHARCODE)Tj -/TT6 1 Tf -4.8008 0 TD -( symbols.)Tj -/TT8 1 Tf --35.5329 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(SELECTC)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/F1 1 Tf -10 0 0 10 156.0088 197.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 158.7888 197.63 Tm -(CLAUSE)Tj -6 0 0 6 191.18 195.63 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 194.78 197.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 197.56 197.63 Tm -(CLAUSE)Tj -6 0 0 6 229.96 195.63 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 233.56 197.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 236.34 197.63 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 252.5426 197.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 255.3226 197.63 Tm -(CLAUSE)Tj -6 0 0 6 287.72 195.63 Tm -(K)Tj -/F1 1 Tf -10 0 0 10 291.32 197.63 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 108 187.08 Tm -(DEFAULT)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-22624.8([NLambda NoSpread Function])]TJ -/TT8 1 Tf --2.8008 -1.8444 TD -(SELECTQ)Tj -/TT6 1 Tf -4.8008 0 TD -0.1567 Tw -[(-on-Constant. Like )]TJ -/TT8 1 Tf -9.6961 0 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.1567 Tw -(, but the selection keys are evaluated, and the)Tj --18.6975 -1.2889 TD -0 Tw -(result used as a )Tj -/TT8 1 Tf -7.0586 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -(-style selection key.)Tj -/TT8 1 Tf --11.2593 -2.0667 TD -(SELECTC)Tj -/TT6 1 Tf -4.2007 0 TD -0.1244 Tw -[( is compiled as a )]TJ -/TT8 1 Tf -8.1564 0 TD -0 Tw -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.1244 Tw -(, with the selection keys evaluated at compile-time.)Tj --16.5578 -1.2889 TD -0 Tw -(Therefore, the selection keys act like compile-time constants \(see Chapter 18\). )Tj -0 -2 TD -(For example:)Tj -/TT8 1 Tf -0 -1.6 TD -([SELECTC NUM)Tj -0 -1 TD -( \(\(for X from 1 to 9 collect \(TIMES X X\)\) "SQUARE"\) "HIP"])Tj -/TT6 1 Tf -0 -1.8444 TD -(compiles as:)Tj -/TT8 1 Tf -0 -1.6 TD -(\(SELECTQ NUM)Tj -0 -1 TD -( \(\(1 4 9 16 25 36 49 64 81\) "SQUARE"\) "HIP"\))Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -30 0 obj -<< -/Length 10416 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-6)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(PROG and Associated Control Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 150 550.26 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PROG1)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 193.2 548.26 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 196.8 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.58 550.26 Tm -(X)Tj -6 0 0 6 204.98 548.26 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 208.58 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 211.36 550.26 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 227.5626 550.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 230.3426 550.26 Tm -(X)Tj -6 0 0 6 235.74 548.26 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 239.34 550.26 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-17565.5([NLambda NoSpread Function])]TJ --7.8601 -1.95 TD -0.2089 Tw -(Evaluates its arguments in order, and returns the value of its first argument )Tj -/TT12 1 Tf -36.3376 0 TD -0 Tw -(X)Tj -6 0 0 6 506.48 530.71 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 510.08 532.71 Tm -0.2089 Tw -[(. For)]TJ --37.3422 -1.3944 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.249 0 TD -(\(PROG1 X \(SETQ X Y\)\))Tj -/TT6 1 Tf -12.002 0 TD -( sets )Tj -/TT8 1 Tf -2.1528 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, and returns )Tj -/TT8 1 Tf -5.897 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(s original value.)Tj -/TT8 1 Tf --30.1398 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PROG2)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -6 0 0 6 193.2 498.28 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 196.8 500.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 199.58 500.28 Tm -(X)Tj -6 0 0 6 204.98 498.28 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 208.58 500.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 211.36 500.28 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 227.5626 500.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 230.3426 500.28 Tm -(X)Tj -6 0 0 6 235.74 498.28 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 239.34 500.28 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-22305.5([NoSpread Function])]TJ --7.8601 -1.95 TD -(Like )Tj -/TT8 1 Tf -2.4692 0 TD -(PROG1)Tj -/TT6 1 Tf -3.0005 0 TD -0.2822 Tw -[(. Evaluates its arguments in order, and returns the value of its second)]TJ --5.4697 -1.2889 TD -0 Tw -(argument )Tj -/TT12 1 Tf -4.5742 0 TD -(X)Tj -6 0 0 6 220.57 469.13 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 224.17 471.13 Tm -(.)Tj -/TT8 1 Tf --8.2411 -2.3144 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PROGN)Tj -/F2 1 Tf -10 0 0 10 182.4052 450.3 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1853 450.3 Tm -(X)Tj -6 0 0 6 190.58 448.3 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 194.18 450.3 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 196.96 450.3 Tm -(X)Tj -6 0 0 6 202.36 448.3 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 205.96 450.3 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 208.74 450.3 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 224.9426 450.3 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 227.7226 450.3 Tm -(X)Tj -6 0 0 6 233.12 448.3 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 236.72 450.3 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-17856.6([NLambda NoSpread Function])]TJ -/TT8 1 Tf --7.569 -1.95 TD -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0067 Tw -[( evaluates each of its arguments in order, and returns the value of its last argument.)]TJ -/TT8 1 Tf --3.0005 -1.2889 TD -0 Tw -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0956 Tw -[( is used to specify more than one computation where the syntax allows only one,)]TJ --3.0005 -1.2889 TD -0 Tw -(e.g., )Tj -/TT8 1 Tf -2.1774 0 TD -0.3411 Tw -(\(SELECTQ ... \(PROGN ...\)\))Tj -/TT6 1 Tf -16.0258 0 TD -0.1422 Tw -[( allows evaluation of several expressions as the)]TJ --18.2032 -1.2889 TD -0 Tw -(default condition for a )Tj -/TT8 1 Tf -10.1357 0 TD -(SELECTQ)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf --17.0031 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VARLST)Tj -/F1 1 Tf -10 0 0 10 214.8105 378.07 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 217.5905 378.07 Tm -(E)Tj -6 0 0 6 222.98 376.07 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 226.58 378.07 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 229.36 378.07 Tm -(E)Tj -6 0 0 6 234.76 376.07 Tm -(2)Tj -/F1 1 Tf -10 0 0 10 238.36 378.07 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 241.14 378.07 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 257.3426 378.07 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 260.1226 378.07 Tm -(E)Tj -6 0 0 6 265.52 376.07 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 269.12 378.07 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-14256.6([NLambda NoSpread Function])]TJ --11.169 -1.95 TD -(Lets you bind some variables while you execute a series of expressions. )Tj -/TT12 1 Tf -31.97 0 TD -(VARLST)Tj -/TT6 1 Tf -3.6006 0 TD -( is a list of)Tj --35.5706 -1.2889 TD -0.0633 Tw -(local variables \(must be )Tj -/TT8 1 Tf -10.9242 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0633 Tw -[( if no variables are used\). Each symbol in )]TJ -/TT12 1 Tf -19.2198 0 TD -0 Tw -(VARLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0633 Tw -[( is treated)]TJ --35.5449 -1.2889 TD -0.0933 Tw -(as the name of a local variable and bound to )Tj -/TT8 1 Tf -20.6731 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0933 Tw -(. )Tj -/TT12 1 Tf -0.9367 0 TD -0 Tw -(VARLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0933 Tw -[( can also contain lists of the)]TJ --27.0106 -1.2889 TD -0 Tw -(form )Tj -/TT8 1 Tf -2.4967 0 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.8168 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -[(. In this case, )]TJ -/TT12 1 Tf -6.5887 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -[( is the name of the variable and is bound to the)]TJ --18.3035 -1.2889 TD -0.0411 Tw -(value of )Tj -/TT12 1 Tf -3.8991 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0411 Tw -[(. The evaluation takes place before any of the bindings are performed, e.g.,)]TJ -/TT8 1 Tf --6.2995 -1.2889 TD -0.2089 Tw -(\(PROG \(\(X Y\) \(Y X\)\) ...\))Tj -/TT6 1 Tf -15.4468 0 TD -0.0867 Tw -[( will bind local variable )]TJ -/TT8 1 Tf -11.0735 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( to the value of )]TJ -/TT8 1 Tf -7.2595 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( \(evaluated)]TJ -/TT18 1 Tf --34.98 -1.2889 TD -0 Tw -(outside)Tj -/TT6 1 Tf -2.8892 0 TD -0.04 Tw -[( the )]TJ -/TT8 1 Tf -1.9672 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.04 Tw -(\) and local variable )Tj -/TT8 1 Tf -8.8319 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( to the value of )]TJ -/TT8 1 Tf -7.0262 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( \(outside the )]TJ -/TT8 1 Tf -5.87 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.04 Tw -[(\). An attempt to)]TJ --32.5854 -1.2889 TD -0.2222 Tw -(use anything other than a symbol as a )Tj -/TT8 1 Tf -18.7543 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.2222 Tw -[( variable will cause an error, )]TJ -/TT8 1 Tf -14.1063 0 TD -0.5333 Tw -(Arg not)Tj -/TT6 1 Tf --35.261 -1.2889 TD -0.0322 Tw -[(symbol. An attempt to use )]TJ -/TT8 1 Tf -12.3755 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0322 Tw -[( or )]TJ -/TT8 1 Tf -1.5054 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0322 Tw -[( as a )]TJ -/TT8 1 Tf -2.2705 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0322 Tw -[( variable will cause an error, )]TJ -/TT8 1 Tf -12.9663 0 TD -0.0778 Tw -(Attempt to)Tj --33.9184 -1.2889 TD -0 Tw -(bind NIL or T)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj --7.8013 -2.0667 TD -0.0144 Tw -(The rest of the )Tj -/TT8 1 Tf -6.6217 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[( is a sequence of forms and symbols \(labels\). The forms are evaluated)]TJ --9.0221 -1.2889 TD -0.02 Tw -[(sequentially; the labels serve only as markers. The two special functions, )]TJ -/TT8 1 Tf -32.7107 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -[( and )]TJ -/TT8 1 Tf -2.2329 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -(,)Tj --39.7444 -1.2889 TD -0.0078 Tw -[(alter this flow of control as described below. The value of the )]TJ -/TT8 1 Tf -27.5196 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( is usually specified by)]TJ --29.92 -1.2889 TD -0.1056 Tw -(the function )Tj -/TT8 1 Tf -5.8053 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1056 Tw -[(. If no )]TJ -/TT8 1 Tf -3.4701 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1056 Tw -[( is executed before the )]TJ -/TT8 1 Tf -10.602 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1056 Tw -[( falls off the end, the)]TJ --29.479 -1.2889 TD -0 Tw -(value of the )Tj -/TT8 1 Tf -5.4541 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --13.5363 -2.2156 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(GO)Tj -/TT4 1 Tf -10 0 0 10 166.2026 171.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 168.9809 171.18 Tm -(L)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-24783([NLambda NoSpread Function])]TJ -/TT8 1 Tf --0.6425 -1.8444 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0711 Tw -[( is used to cause a transfer in a )]TJ -/TT8 1 Tf -14.3505 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0711 Tw -(. )Tj -/TT8 1 Tf -0.8922 0 TD -0 Tw -(\(GO )Tj -/TT12 1 Tf -2.5704 0 TD -(L)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[( will cause the )]TJ -/TT8 1 Tf -6.8284 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0711 Tw -[( to evaluate forms)]TJ --31.8426 -1.2889 TD -0.0511 Tw -(starting at the label )Tj -/TT12 1 Tf -8.9325 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tc -( \()Tj -/TT8 1 Tf -0.6341 0 TD -0 Tc -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0511 Tw -[( does not evaluate its argument\). A )]TJ -/TT8 1 Tf -16.3918 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0511 Tw -[( can be used at any level)]TJ --28.9589 -1.2889 TD -0.0844 Tw -(in a )Tj -/TT8 1 Tf -2.0419 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0844 Tw -[(. If the label is not found, )]TJ -/TT8 1 Tf -12.1907 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0844 Tw -[( will search higher progs )]TJ -/TT18 1 Tf -11.6102 0 TD -(within the same function,)Tj -/TT6 1 Tf --29.4434 -1.2889 TD -0 Tw -(e.g., )Tj -/TT8 1 Tf -2.0385 0 TD -0.0078 Tw -(\(PROG ... A ... \(PROG ... \(GO A\)\)\))Tj -/TT6 1 Tf -20.4578 0 TD -0.0033 Tw -(. If the label is not found in the function)Tj --22.4963 -1.2889 TD -0 Tw -(in which the )Tj -/TT8 1 Tf -5.7432 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( appears, an error is generated, )Tj -/TT8 1 Tf -13.9141 0 TD -(Undefined or illegal GO)Tj -/TT6 1 Tf -13.8022 0 TD -(.)Tj -/TT8 1 Tf --38.5265 -2.2156 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(RETURN)Tj -/TT4 1 Tf -10 0 0 10 187.8061 88.24 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 190.5844 88.24 Tm -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-31860.4([Function])]TJ --3.0429 -1.8444 TD -(A )Tj -/TT8 1 Tf -1.1645 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1367 Tw -[( is the normal exit for a )]TJ -/TT8 1 Tf -11.3917 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1367 Tw -(. Its argument is evaluated and is immediately)Tj --18.5572 -1.2889 TD -0 Tw -(returned the value of the )Tj -/TT8 1 Tf -11.2114 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( in which it appears.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 32 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -34 0 obj -<< -/Length 8263 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-7)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT16 1 Tf -9 0 0 9 126 569.54 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0778 Tw -[(: If a )]TJ -/TT8 1 Tf -2.731 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0778 Tw -[( or )]TJ -/TT8 1 Tf -1.5965 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0778 Tw -[( is executed in an interpreted function which is not a )]TJ -/TT8 1 Tf -24.2857 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -(, the)Tj -/TT8 1 Tf --38.0366 -1.2889 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1922 Tw -[( or )]TJ -/TT8 1 Tf -1.8254 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1922 Tw -[( will be executed in the last interpreted )]TJ -/TT8 1 Tf -18.9797 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1922 Tw -[( entered if any, otherwise)]TJ --28.0062 -1.2889 TD -0 Tw -(cause an error.)Tj -/TT8 1 Tf -0 -2 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1133 Tw -[( or )]TJ -/TT8 1 Tf -1.6676 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1133 Tw -[( inside of a compiled function that is not a )]TJ -/TT8 1 Tf -19.9458 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( is not allowed, and will)]TJ --28.8146 -1.2889 TD -0 Tw -(cause an error at compile time.)Tj -0 -2 TD -0.2233 Tw -(As a corollary, )Tj -/TT8 1 Tf -7.3355 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2233 Tw -[( or )]TJ -/TT8 1 Tf -1.8876 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.2233 Tw -[( in a functional argument, e.g., to )]TJ -/TT8 1 Tf -16.4159 0 TD -0 Tw -(SORT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2233 Tw -(, will not work)Tj --32.8402 -1.2889 TD -0.2144 Tw -[(compiled. Also, since )]TJ -/TT8 1 Tf -10.7616 0 TD -0 Tw -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.2144 Tw -(s and )Tj -/TT8 1 Tf -3.3234 0 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.2144 Tw -(s compile as )Tj -/TT18 1 Tf -6.5535 0 TD -0 Tw -(separate)Tj -/TT6 1 Tf -3.2773 0 TD -0.2144 Tw -[( functions, a )]TJ -/TT8 1 Tf -6.2742 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2144 Tw -[( or)]TJ -/TT8 1 Tf --38.5914 -1.2889 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT18 1 Tf -0.4389 0 TD -(cannot)Tj -/TT6 1 Tf -2.7402 0 TD -0.1889 Tw -[( be used inside of a compiled )]TJ -/TT8 1 Tf -14.4233 0 TD -0 Tw -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.1889 Tw -[( or )]TJ -/TT8 1 Tf -1.8187 0 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.1889 Tw -[( if the corresponding)]TJ -/TT8 1 Tf --30.2229 -1.2889 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( is outside, i.e., above, the )Tj -/TT8 1 Tf -11.5449 0 TD -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --25.2541 -2.2089 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(LET)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VARLST)Tj -/F2 1 Tf -10 0 0 10 161.4097 444.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 164.1897 444.06 Tm -(E)Tj -6 0 0 6 169.58 442.06 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 173.18 444.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 175.96 444.06 Tm -(E)Tj -6 0 0 6 181.36 442.06 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 184.96 444.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 187.74 444.06 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 203.9426 444.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 206.7226 444.06 Tm -(E)Tj -6 0 0 6 212.12 442.06 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 215.72 444.06 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-25433.2([Macro])]TJ -/TT8 1 Tf --10.569 -1.95 TD -(LET)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -[( is essentially a )]TJ -/TT8 1 Tf -7.1201 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0656 Tw -[( that cant contain )]TJ -/TT8 1 Tf -8.3975 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0656 Tw -(s or )Tj -/TT8 1 Tf -2.2737 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0656 Tw -(s, and whose last form is the)Tj --26.7928 -1.2889 TD -0 Tw -(returned value.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(LET*)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VARLST)Tj -/F2 1 Tf -10 0 0 10 166.8105 395.57 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 169.5905 395.57 Tm -(E)Tj -6 0 0 6 174.98 393.57 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 178.58 395.57 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 181.36 395.57 Tm -(E)Tj -6 0 0 6 186.76 393.57 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 190.36 395.57 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 193.14 395.57 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 209.3426 395.57 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 212.1226 395.57 Tm -(E)Tj -6 0 0 6 217.52 393.57 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 221.12 395.57 Tm -(\))Tj -/TT14 1 Tf -10 0 0 10 226.5209 395.57 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 454.52 395.57 Tm -([Macro])Tj -/TT8 1 Tf --39.1689 -1.3144 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PROG*)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(VARLST)Tj -/F2 1 Tf -10 0 0 10 172.2114 383.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 174.9914 383.74 Tm -(E)Tj -6 0 0 6 180.38 381.74 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 183.98 383.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 186.76 383.74 Tm -(E)Tj -6 0 0 6 192.16 381.74 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 195.76 383.74 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 198.54 383.74 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 214.7426 383.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 217.5226 383.74 Tm -(E)Tj -6 0 0 6 222.92 381.74 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 226.52 383.74 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-24233.2([Macro])]TJ -/TT8 1 Tf --11.769 -1.95 TD -(LET*)Tj -/TT6 1 Tf -2.4004 0 TD -0.2711 Tw -[( and )]TJ -/TT8 1 Tf -2.7351 0 TD -0 Tw -(PROG*)Tj -/TT6 1 Tf -3.0005 0 TD -0.2711 Tw -[( differ from )]TJ -/TT8 1 Tf -6.162 0 TD -0 Tw -(LET)Tj -/TT6 1 Tf -1.8003 0 TD -0.2711 Tw -[( and )]TJ -/TT8 1 Tf -2.7351 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.2711 Tw -[( only in that the binding of the bound)]TJ --21.2337 -1.2889 TD -0 Tw -(variables is done sequentially. Thus)Tj -/TT8 1 Tf -4 -1.6 TD -(\(LET* \(\(A \(LIST 5\)\))Tj -4 -1 TD -(\(B \(LIST A A\)\)\))Tj --2 -1 TD -( \(EQ A \(CADR B\)\)\))Tj -/TT6 1 Tf --6 -1.8444 TD -0.05 Tw -(would evaluate to )Tj -/TT8 1 Tf -8.4 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -(; whereas the same form with )Tj -/TT8 1 Tf -13.6057 0 TD -0 Tw -(LET)Tj -/TT6 1 Tf -1.8003 0 TD -0.05 Tw -[( might find )]TJ -/TT8 1 Tf -5.3551 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[( an unbound variable)]TJ --30.3612 -1.2889 TD -0 Tw -(when evaluating )Tj -/TT8 1 Tf -7.6704 0 TD -(\(LIST A A\))Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 271.05 Tm -(The Iterative Statement)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 268.34 m -510.01 268.34 l -S -BT -/TT6 1 Tf -9 0 0 9 78 254.39 Tm -0.1633 Tw -[(The various forms of the iterative statement \(i.s.\) let you write complex loops easily. Rather than)]TJ -0 -1.2222 TD -0 Tw -(writing )Tj -/TT8 1 Tf -3.5254 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(MAPC)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -(, etc., let Medley do it for you.)Tj --12.9268 -2.0667 TD -0.0933 Tw -(An iterative statement is a form consisting of a number of special words \(known as i.s. operators or)Tj -0 -1.2222 TD -0.3478 Tw -[(i.s.oprs\), followed by operands. Many i.s.oprs \()]TJ -/TT8 1 Tf -23.4735 0 TD -0 Tw -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.8478 0 TD -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.8478 0 TD -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.3478 Tw -(, etc.\) act like loops in other)Tj --31.17 -1.2889 TD -0.0222 Tw -[(programming languages; others \()]TJ -/TT8 1 Tf -15.1031 0 TD -0 Tw -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(JOIN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0222 Tw -[(, etc.\) do things useful in Lisp. You can also use)]TJ --23.9488 -1.2889 TD -0 Tw -(lower-case versions of i.s.oprs \()Tj -/TT8 1 Tf -13.8228 0 TD -(do)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(collect)Tj -/TT6 1 Tf -4.2007 0 TD -(, etc.\).)Tj -/TT19 1 Tf --15.7236 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(for X from 1 to 5 do \(PRINT FOO\)\))Tj --0.9868 -1 TD -(FOO)Tj -T* -(FOO)Tj -T* -(FOO)Tj -T* -(FOO)Tj -T* -(FOO)Tj -T* -(NIL)Tj -/TT19 1 Tf -0 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for X from 2 to 10 by 2 collect \(TIMES X X\)\))Tj --0.9868 -1 TD -(\(4 16 36 64 100\))Tj -/TT19 1 Tf -0 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for X in \(A B 1 C 6.5 NIL \(45\)\) count \(NUMBERP X\)\))Tj --0.9868 -1 TD -(2)Tj -/TT6 1 Tf --4 -1.8444 TD -0.0356 Tw -(Iterative statements are implemented using CLISP, which translates them into the appropriate )Tj -/TT8 1 Tf -42.2621 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(s,)Tj -/TT8 1 Tf --44.6625 -1.2889 TD -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -0.0444 Tw -[(s, etc. Theyre are translated using all CLISP declarations in effect \(standard/fast/undoable/)]TJ -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 32 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -37 0 obj -<< -/Length 7241 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-8)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.3389 Tw -[(etc.\); see Chapter 21. Misspelled i.s.oprs are recognized and corrected using the spelling list)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(CLISPFORWORDSPLST)Tj -/TT6 1 Tf -10.2017 0 TD -0.0222 Tw -[(. Operators can appear in any order; CLISP scans the entire statement before it)]TJ --10.2017 -1.2889 TD -0 Tw -(begins to translate.)Tj -0 -2 TD -0.0244 Tw -(If you define a function with the same name as an i.s.opr \()Tj -/TT8 1 Tf -25.8959 0 TD -0 Tw -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5244 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5244 0 TD -(etc)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -(.\), that i.s.opr will no longer)Tj --32.9457 -1.2889 TD -0.04 Tw -(cause looping when it appears as )Tj -/TT8 1 Tf -15.1209 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -[( of a form, although it will continue to be treated as an i.s.opr if)]TJ --16.9212 -1.2889 TD -0.1022 Tw -[(it appears in the interior of an iterative statement. To alert you, a warning message is printed, e.g.,)]TJ -0 -1.2222 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -(While defined, therefore disabled in CLISP)Tj -/TT6 1 Tf -25.2041 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 126 471.8 Tm -(I.S. Types)Tj -/TT6 1 Tf -9 0 0 9 126 456.14 Tm -0.1667 Tw -(Every iterative statement must have exactly one of the following operators in it \(its is.stype\), to)Tj -0 -1.2222 TD -0 Tw -(specify what happens on each iteration. Its operand is called the body of the iterative statement.)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(DO)Tj -/F2 1 Tf -10 0 0 10 160.8017 425.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 163.5817 425.86 Tm -(FORMS)Tj -/TT6 1 Tf -2.9998 0 TD -[( )-31352.2([I.S. Operator])]TJ --1.8422 -1.8444 TD -(Evaluate )Tj -/TT12 1 Tf -4.1817 0 TD -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -[( at each iteration. )]TJ -/TT8 1 Tf -8.3507 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0567 Tw -[( with no other operator specifies an infinite loop. If)]TJ --16.7331 -1.2889 TD -0.0989 Tw -(some explicit or implicit terminating condition is specified, the value of the loop is )Tj -/TT8 1 Tf -37.9518 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --39.7521 -1.2889 TD -(Translates to )Tj -/TT8 1 Tf -5.9058 0 TD -(MAPC)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(MAP)Tj -/TT6 1 Tf -1.8003 0 TD -( whenever possible.)Tj -/TT10 1 Tf --14.214 -2.2089 TD -(COLLECT)Tj -/F2 1 Tf -10 0 0 10 187.8061 366.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 190.5861 366.18 Tm -(FORM)Tj -/TT6 1 Tf -2.3993 0 TD -[( )-28952.2([I.S. Operator])]TJ --4.2422 -1.8444 TD -0.0567 Tw -(The value of )Tj -/TT12 1 Tf -5.9107 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -[( at each iteration is collected in a list, which is returned as the value of)]TJ --8.3111 -1.2889 TD -0.2678 Tw -[(the loop when it terminates. Translates to )]TJ -/TT8 1 Tf -20.9484 0 TD -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.7678 0 TD -(MAPLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.2678 Tw -[( or )]TJ -/TT8 1 Tf -1.9765 0 TD -0 Tw -(SUBSET)Tj -/TT6 1 Tf -3.6006 0 TD -0.2678 Tw -[( whenever)]TJ --35.0945 -1.2889 TD -0 Tw -(possible.)Tj -0 -2 TD -(When )Tj -/TT8 1 Tf -3.1353 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.2422 Tw -[( translates to a )]TJ -/TT8 1 Tf -7.588 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.2422 Tw -[( \(if )]TJ -/TT8 1 Tf -1.9415 0 TD -0 Tw -(UNTIL)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.7422 0 TD -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.2422 Tw -(, etc. appear in the loop\), the)Tj --26.0091 -1.2889 TD -0.2933 Tw -(translation employs an open )Tj -/TT8 1 Tf -14.0063 0 TD -0 Tw -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.2933 Tw -[( using two pointers similar to that used by the)]TJ --17.0068 -1.2889 TD -0.3378 Tw -(compiler for compiling )Tj -/TT8 1 Tf -11.4518 0 TD -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -0.3378 Tw -[(. To disable this translation, perform )]TJ -/TT8 1 Tf -18.9401 0 TD -0 Tw -(\(CLDISABLE)Tj --33.9925 -1.2889 TD -(FCOLLECT\))Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --8.6676 -2.2089 TD -(JOIN)Tj -/F2 1 Tf -10 0 0 10 171.6035 253.7 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 174.3835 253.7 Tm -(FORM)Tj -/F2 1 Tf -10 0 0 10 195.987 253.7 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 198.76 253.7 Tm -30.6933 Tw -[( [I.S. )30693.3(Operator])]TJ -/TT12 1 Tf --2.7511 -1.8444 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1178 Tw -[( returns a list; the lists from each iteration are concatenated using )]TJ -/TT8 1 Tf -30.3894 0 TD -0 Tw -(NCONC)Tj -/TT6 1 Tf -3.0005 0 TD -0.1178 Tw -(, forming)Tj --35.7903 -1.2889 TD -0.0222 Tw -[(one long list. Translates to )]TJ -/TT8 1 Tf -12.2032 0 TD -0 Tw -(MAPCONC)Tj -/TT6 1 Tf -4.2007 0 TD -0.0222 Tw -[( or )]TJ -/TT8 1 Tf -1.4854 0 TD -0 Tw -(MAPCON)Tj -/TT6 1 Tf -3.6006 0 TD -0.0222 Tw -[( whenever possible. )]TJ -/TT8 1 Tf -9.3428 0 TD -0 Tw -(/NCONC)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(/MAPCONC)Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj --39.7562 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(/MAPCON)Tj -/TT6 1 Tf -4.2007 0 TD -( are used when the CLISP declaration )Tj -/TT8 1 Tf -16.8555 0 TD -(UNDOABLE)Tj -/TT6 1 Tf -4.8008 0 TD -( is in effect.)Tj -/TT10 1 Tf --30.4665 -2.2089 TD -(SUM)Tj -/F2 1 Tf -10 0 0 10 166.2026 194.02 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 168.9826 194.02 Tm -(FORM)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-31352.2([I.S. Operator])]TJ --1.8422 -1.8444 TD -0.0978 Tw -(The values of )Tj -/TT12 1 Tf -6.4579 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0978 Tw -[( from each iteration are added together and returned as the value of)]TJ --8.8583 -1.2889 TD -0.0467 Tw -(the loop, e.g., )Tj -/TT8 1 Tf -6.2962 0 TD -0.1111 Tw -(\(for I from 1 to 5 sum \(TIMES I I\)\))Tj -/TT6 1 Tf -22.0034 0 TD -0.0467 Tw -[( returns )]TJ -/TT8 1 Tf -3.7974 0 TD -0.1111 Tw -(1+4+9+16+25 =)Tj --32.0971 -1.2889 TD -0 Tw -(55)Tj -/TT6 1 Tf -1.2002 0 TD -0.1989 Tw -(. )Tj -/TT8 1 Tf -1.1478 0 TD -0 Tw -(IPLUS)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6989 0 TD -(FPLUS)Tj -/TT6 1 Tf -3.0005 0 TD -0.1989 Tw -(, or )Tj -/TT8 1 Tf -2.0887 0 TD -0 Tw -(PLUS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1989 Tw -[( will be used in the translation depending on the CLISP)]TJ --13.5369 -1.2889 TD -0 Tw -(declarations in effect.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(COUNT)Tj -/F2 1 Tf -10 0 0 10 177.0044 123.34 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 179.7844 123.34 Tm -(FORM)Tj -/TT6 1 Tf -2.3995 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -(Counts the number of times that )Tj -/TT12 1 Tf -14.5884 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is true, and returns that count as the loops value.)Tj -/TT10 1 Tf --19.6554 -2.2089 TD -(ALWAYS)Tj -/F1 1 Tf -10 0 0 10 182.4052 86.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1853 86.86 Tm -(FORM)Tj -/TT18 1 Tf -2.3994 0 TD -( )Tj -/TT6 1 Tf -0.25 0 TD -29.5522 Tw -[( [I.S. )29552.2(Operator])]TJ --3.8922 -1.8444 TD -0 Tw -(Returns )Tj -/TT8 1 Tf -3.7493 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0222 Tw -[( if the value of )]TJ -/TT12 1 Tf -6.6892 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0222 Tw -[( is non-)]TJ -/TT8 1 Tf -3.3023 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0222 Tw -[( for all iterations. )]TJ -/TT16 1 Tf -8.1272 0 TD -0 Tw -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0222 Tw -[(: Returns )]TJ -/TT8 1 Tf -4.5437 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0222 Tw -[( as soon as)]TJ --35.235 -1.2889 TD -0 Tw -(the value of )Tj -/TT12 1 Tf -5.4541 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\).)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 32 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6231 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 497.9999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-9)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT10 1 Tf -9 0 0 9 102 568.26 Tm -(NEVER)Tj -/F1 1 Tf -10 0 0 10 129.0044 568.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 131.7844 568.26 Tm -(FORM)Tj -/TT6 1 Tf -2.3995 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.2226 0 TD -(ALWAYS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0356 Tw -(, but returns )Tj -/TT8 1 Tf -5.7932 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0356 Tw -[( if the value of )]TJ -/TT12 1 Tf -6.7559 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( is )]TJ -/TT18 1 Tf -1.286 0 TD -0 Tw -(never)Tj -/TT6 1 Tf -2.2236 0 TD -0.0356 Tw -[( true. )]TJ -/TT16 1 Tf -2.9099 0 TD -0 Tw -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0356 Tw -[(: Returns )]TJ -/TT8 1 Tf -4.5837 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0356 Tw -[( as soon)]TJ --36.3984 -1.2889 TD -0 Tw -(as the value of )Tj -/TT12 1 Tf -6.6279 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is non-)Tj -/TT8 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --19.4198 -2.0667 TD -0.0122 Tw -(Often, youll want to set a variable each time through the loop; thats called the iteration variable, or)Tj -0 -1.2222 TD -0 Tw -(i.v. for short. The following i.s.types explicitly refer to the i.v. This is explained below under )Tj -/TT8 1 Tf -41.3281 0 TD -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --40.4618 -2.2089 TD -(THEREIS)Tj -/F1 1 Tf -10 0 0 10 139.8062 490.58 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 142.5861 490.58 Tm -(FORM)Tj -/TT6 1 Tf -2.3993 0 TD -[( )-28952.2([I.S. Operator])]TJ --4.2422 -1.8444 TD -0.22 Tw -(Returns the first value of the i.v. for which )Tj -/TT12 1 Tf -20.9302 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.22 Tw -[( is non-)]TJ -/TT8 1 Tf -3.6978 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.22 Tw -(, e.g., )Tj -/TT8 1 Tf -2.9752 0 TD -0.5289 Tw -(\(for X in Y)Tj --31.8038 -1.2889 TD -0 Tw -(thereis \(NUMBERP X\)\))Tj -/TT6 1 Tf -12.002 0 TD -( returns the first number in )Tj -/TT8 1 Tf -12.2285 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(. )Tj -/TT16 1 Tf --24.8306 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: Returns the value of the i.v. as soon as the value of )Tj -/TT12 1 Tf -23.3237 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is non-)Tj -/TT8 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --35.6711 -2.2089 TD -(LARGEST)Tj -/F2 1 Tf -10 0 0 10 139.8062 423.9 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 142.5861 423.9 Tm -(FORM)Tj -/TT6 1 Tf -2.3993 0 TD -[( )-28952.2([I.S. Operator])]TJ -/TT10 1 Tf --6.9089 -1.2089 TD -(SMALLEST)Tj -/F2 1 Tf -10 0 0 10 145.207 413.02 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 147.987 413.02 Tm -(FORM)Tj -/TT6 1 Tf -2.3992 0 TD -[( )-28352.2([I.S. Operator])]TJ --4.8422 -1.8444 TD -0.49 Tw -(Returns the value of the i.v. that provides the largest/smallest value of )Tj -/TT12 1 Tf -37.3492 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --39.7496 -1.2889 TD -($$EXTREME)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[( is always bound to the current greatest/smallest value, )]TJ -/TT8 1 Tf -24.9652 0 TD -0 Tw -($$VAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0133 Tw -[( to the value of)]TJ --33.3666 -1.2889 TD -0 Tw -(the i.v. from which it came.)Tj -/TT4 1 Tf -10 0 0 10 78 350.88 Tm -(Iteration Variable I.s.oprs)Tj -/TT6 1 Tf -9 0 0 9 78 335.22 Tm -0.0844 Tw -[(Youll want to bind variables to use during the loop. Rather than putting the loop inside a )]TJ -/TT8 1 Tf -41.6572 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0844 Tw -[( or)]TJ -/TT8 1 Tf --44.0576 -1.2889 TD -0 Tw -(LET)Tj -/TT6 1 Tf -1.8003 0 TD -(, you can specify bindings like so:)Tj -/TT10 1 Tf -0.8664 -2.2156 TD -(BIND)Tj -/TT4 1 Tf -10 0 0 10 123.6035 303.68 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 126.3818 303.68 Tm -(VAR)Tj -/TT6 1 Tf -1.7998 0 TD -[( )-31352.2([I.S. Operator])]TJ -/TT10 1 Tf --4.5089 -1.2156 TD -(BIND)Tj -/TT4 1 Tf -10 0 0 10 123.6035 292.74 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 126.3818 292.74 Tm -(VARS)Tj -/TT6 1 Tf -2.3998 0 TD -[( )-30752.2([I.S. Operator])]TJ --2.4422 -1.8444 TD -(Used to specify dummy variables, which are bound locally within the i.s.)Tj -/TT16 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -[(: )-1277.8(You can initialize a variable )]TJ -/TT12 1 Tf -14.2861 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( by saying )Tj -/TT12 1 Tf -4.7686 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(:)Tj -/TT8 1 Tf --26.2647 -1.6667 TD -(\(bind HEIGHT )Tj -/TT19 1 Tf -7.8013 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( 0 WEIGHT )Tj -/TT19 1 Tf -6.001 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( 0 for SOLDIER in ...\))Tj -/TT6 1 Tf --23.1092 -1.8444 TD -(To specify iteration variables, use these operators:)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(FOR)Tj -/F2 1 Tf -10 0 0 10 118.2026 207.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 120.9826 207.26 Tm -(VAR)Tj -/TT6 1 Tf -1.7997 0 TD -[( )-31952.2([I.S. Operator])]TJ --1.2422 -1.8444 TD -0.0211 Tw -(Specifies the iteration variable \(i.v.\) that is used in conjunction with )Tj -/TT8 1 Tf -30.2205 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5211 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5211 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5211 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0211 Tw -(, and)Tj -/TT8 1 Tf --37.7848 -1.2889 TD -0 Tw -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.0444 Tw -[(. The variable is rebound within the loop, so the value of the variable outside the loop)]TJ --1.2002 -1.2889 TD -0 Tw -(is not affected. Example:)Tj -/TT19 1 Tf -4 -1.6 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ X 55\))Tj --0.9868 -1 TD -(55)Tj -/TT19 1 Tf -0 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for X from 1 to 5 collect \(TIMES X X\)\))Tj --0.9868 -1 TD -(\(1 4 9 16 25\))Tj -/TT19 1 Tf -0 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(X)Tj --0.9868 -1 TD -(55)Tj -/TT10 1 Tf --6.6667 -1.9867 TD -(FOR OLD)Tj -/F2 1 Tf -10 0 0 10 139.8062 82.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 142.5861 82.18 Tm -(VAR)Tj -/TT6 1 Tf -1.7993 0 TD -[( )-29552.2([I.S. Operator])]TJ --3.6422 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(, but )Tj -/TT12 1 Tf -2.2324 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is )Tj -/TT18 1 Tf -1.2148 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( rebound, so its value outside the loop )Tj -/TT18 1 Tf -17.1187 0 TD -(is)Tj -/TT6 1 Tf -0.667 0 TD -( changed. Example:)Tj -/TT19 1 Tf --24.3535 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ X 55\))Tj --0.9868 -1 TD -(55)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 32 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6888 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-10)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT19 1 Tf -9 0 0 9 210 570.14 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for old X from 1 to 5 collect \(TIMES X X\)\))Tj --0.9868 -1 TD -(\(1 4 9 16 25\))Tj -/TT19 1 Tf -0 -1.4444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(X)Tj --0.9868 -1 TD -(6)Tj -/TT10 1 Tf --6.6667 -1.9867 TD -(FOR)Tj -/F2 1 Tf -10 0 0 10 166.2026 521.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 168.9826 521.26 Tm -(VARS)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-31352.2([I.S. Operator])]TJ -/TT12 1 Tf --1.8422 -1.8444 TD -(VARS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0378 Tw -[( a list of variables, e.g., )]TJ -/TT8 1 Tf -10.4708 0 TD -0.0911 Tw -(\(for \(X Y Z\) in ...\))Tj -/TT6 1 Tf -12.4575 0 TD -0.0378 Tw -[(. The first variable is the i.v., the)]TJ --25.3287 -1.2889 TD -0 Tw -(rest are dummy variables. See )Tj -/TT8 1 Tf -13.7647 0 TD -(BIND)Tj -/TT6 1 Tf -2.4004 0 TD -( above.)Tj -/TT10 1 Tf --18.8317 -2.2156 TD -(IN)Tj -/TT4 1 Tf -10 0 0 10 160.8017 473.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 163.5801 473.12 Tm -(FORM)Tj -/TT6 1 Tf -2.4 0 TD -[( )-31952.2([I.S. Operator])]TJ -/TT12 1 Tf --1.2422 -1.8444 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1833 Tw -[( must evaluate to a list. The i.v. is set to successive elements of the list, one per)]TJ --2.4004 -1.2889 TD -0.0356 Tw -[(iteration. For example, )]TJ -/TT8 1 Tf -10.6246 0 TD -0.0856 Tw -(\(for X in Y do ...\))Tj -/TT6 1 Tf -11.8296 0 TD -0.0356 Tw -[( corresponds to )]TJ -/TT8 1 Tf -7.175 0 TD -0.0856 Tw -(\(MAPC Y \(FUNCTION)Tj --29.6293 -1.2889 TD -0.1256 Tw -(\(LAMBDA \(X\) ...\)\)\))Tj -/TT6 1 Tf -11.0529 0 TD -0.0522 Tw -[(. If no i.v. has been specified, a dummy is supplied, e.g., )]TJ -/TT8 1 Tf -25.821 0 TD -0.1256 Tw -(\(in Y)Tj --36.8738 -1.2889 TD -0 Tw -(collect CADR\))Tj -/TT6 1 Tf -7.8013 0 TD -( is equivalent to )Tj -/TT8 1 Tf -7.2632 0 TD -(\(MAPCAR Y \(FUNCTION CADR\)\))Tj -/TT6 1 Tf -15.6025 0 TD -(.)Tj -/TT10 1 Tf --33.3337 -2.2156 TD -(ON)Tj -/TT4 1 Tf -10 0 0 10 160.8017 401.78 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 163.5801 401.78 Tm -(FORM)Tj -/TT6 1 Tf -2.4 0 TD -[( )-31952.2([I.S. Operator])]TJ --1.2422 -1.8444 TD -0.2156 Tw -(Same as )Tj -/TT8 1 Tf -4.2417 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2156 Tw -(, but the i.v. is reset to the corresponding )Tj -/TT18 1 Tf -20.1944 0 TD -0 Tw -(tail)Tj -/TT6 1 Tf -1.3325 0 TD -0.2156 Tw -[( at each iteration. Thus )]TJ -/TT8 1 Tf -11.8324 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf --38.8012 -1.2889 TD -0.1622 Tw -(corresponds to )Tj -/TT8 1 Tf -7.1428 0 TD -0 Tw -(MAPC)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6622 0 TD -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -0.1622 Tw -(, and )Tj -/TT8 1 Tf -2.7673 0 TD -0 Tw -(MAPCONC)Tj -/TT6 1 Tf -4.2007 0 TD -0.1622 Tw -(, while )Tj -/TT8 1 Tf -3.5515 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -0.1622 Tw -[( corresponds to )]TJ -/TT8 1 Tf -7.555 0 TD -0 Tw -(MAP)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6622 0 TD -(MAPLIST)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj --39.7439 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(MAPCON)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT19 1 Tf --1.5435 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(for X on \(A B C\) do \(PRINT X\)\))Tj --0.9868 -1 TD -(\(A B C\))Tj -T* -(\(B C\))Tj -T* -(\(C\))Tj -T* -(NIL)Tj -/TT16 1 Tf --4 -1.8444 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0078 Tw -[(: For both )]TJ -/TT8 1 Tf -4.7855 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0078 Tw -[( and )]TJ -/TT8 1 Tf -2.2084 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.5078 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( is evaluated before the main part of the i.s. is entered, i.e.)]TJ -/TT18 1 Tf --14.5247 -1.2889 TD -0 Tw -(outside)Tj -/TT6 1 Tf -2.8892 0 TD -0.0522 Tw -[( of the scope of any of the bound variables of the i.s. For example, )]TJ -/TT8 1 Tf -30.2486 0 TD -0.1267 Tw -(\(for X bind)Tj --33.1378 -1.2889 TD -0 Tw -(\(Y)Tj -/TT19 1 Tf -1.2002 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.1322 Tw -(\(1 2 3\)\) in Y ...\))Tj -/TT6 1 Tf -12.063 0 TD -0.0556 Tw -[( will map down the list which is the value of )]TJ -/TT8 1 Tf -20.4959 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[( evaluated)]TJ -/TT18 1 Tf --35.346 -1.2889 TD -0 Tw -(outside)Tj -/TT6 1 Tf -2.8892 0 TD -( of the i.s., )Tj -/TT18 1 Tf -4.731 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\(1 2 3\))Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --16.0705 -2.2156 TD -(IN OLD)Tj -/TT4 1 Tf -10 0 0 10 182.4052 239.64 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1836 239.64 Tm -(VAR)Tj -/TT6 1 Tf -1.7996 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -0.4156 Tw -(Specifies that the i.s. is to iterate down )Tj -/TT12 1 Tf -20.4836 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.4156 Tw -(, with )Tj -/TT12 1 Tf -3.6143 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.4156 Tw -[( itself being reset to the)]TJ --27.6985 -1.2889 TD -0.1244 Tw -(corresponding tail at each iteration, e.g., after )Tj -/TT8 1 Tf -21.1167 0 TD -0.2978 Tw -(\(for X in old L do ... until)Tj --21.1167 -1.2889 TD -0 Tw -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -( finishes, )Tj -/TT8 1 Tf -4.1558 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -( will be some tail of its original value.)Tj -/TT10 1 Tf --9.8229 -2.0667 TD -(IN OLD)Tj -/TT8 1 Tf -3.6006 0 TD -( \()Tj -/TT12 1 Tf -1.2002 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.5984 0 TD -[( )-25274.4([I.S. Operator])]TJ --7.92 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(OLD)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -(, except )Tj -/TT12 1 Tf -3.5952 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is first set to value of )Tj -/TT12 1 Tf -9.6519 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --29.2258 -2.2156 TD -(ON OLD)Tj -/TT4 1 Tf -10 0 0 10 182.4052 144.7 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1836 144.7 Tm -(VAR)Tj -/TT6 1 Tf -1.7996 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -0.0867 Tw -(Same as )Tj -/TT8 1 Tf -3.9839 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.3367 0 TD -(OLD)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.3367 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( except the i.v. is reset to the current value of )]TJ -/TT12 1 Tf -20.9099 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( at each iteration,)]TJ --32.1682 -1.2889 TD -0 Tw -(instead of to )Tj -/TT8 1 Tf -5.7139 0 TD -(\(CAR )Tj -/TT12 1 Tf -3.0005 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --13.7814 -2.0667 TD -(ON OLD)Tj -/TT8 1 Tf -3.6006 0 TD -( \()Tj -/TT12 1 Tf -1.2002 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.5984 0 TD -[( )-25274.4([I.S. Operator])]TJ --7.92 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(OLD)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -(, except )Tj -/TT12 1 Tf -3.5952 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is first set to value of )Tj -/TT12 1 Tf -9.6519 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 32 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -46 0 obj -<< -/Length 8498 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-11)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(INSIDE)Tj -/TT4 1 Tf -10 0 0 10 134.4053 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 137.1836 568.2 Tm -(FORM)Tj -/TT6 1 Tf -2.3996 0 TD -[( )-29552.2([I.S. Operator])]TJ --3.6422 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.3792 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1922 Tw -(, but treats first non-list, non-)Tj -/TT8 1 Tf -13.8307 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1922 Tw -[( tail as the last element of the iteration, e.g.,)]TJ -/TT8 1 Tf --19.2105 -1.2889 TD -0.1178 Tw -(INSIDE \(A B C D . E\))Tj -/TT6 1 Tf -13.3087 0 TD -0.0489 Tw -[( iterates five times with the i.v. set to )]TJ -/TT8 1 Tf -16.8585 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.0489 Tw -[( on the last iteration.)]TJ -/TT8 1 Tf --30.7673 -1.2889 TD -0 Tw -(INSIDE A)Tj -/TT6 1 Tf -5.4009 0 TD -( is equivalent to )Tj -/TT8 1 Tf -7.2632 0 TD -(INSIDE \(A\))Tj -/TT6 1 Tf -6.6011 0 TD -(, which will iterate once.)Tj -/TT10 1 Tf --21.9318 -2.2156 TD -(FROM)Tj -/TT4 1 Tf -10 0 0 10 123.6035 508.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 126.3818 508.46 Tm -(FORM)Tj -/TT6 1 Tf -2.3998 0 TD -[( )-30752.2([I.S. Operator])]TJ --2.4422 -1.8444 TD -0.0944 Tw -[(Specifies the initial value for a numerical i.v. The i.v. is automatically incremented by 1)]TJ -0 -1.2222 TD -0.0778 Tw -(after each iteration \(unless )Tj -/TT8 1 Tf -12.2213 0 TD -0 Tw -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.0778 Tw -[( is specified\). If no i.v. has been specified, a dummy i.v. is)]TJ --13.4215 -1.2889 TD -0.02 Tw -(supplied and initialized, e.g., )Tj -/TT8 1 Tf -13.162 0 TD -0.0489 Tw -(\(from 2 to 5 collect SQRT\))Tj -/TT6 1 Tf -15.847 0 TD -0.02 Tw -[( returns )]TJ -/TT8 1 Tf -3.7441 0 TD -0.0489 Tw -(\(1.414 1.732)Tj --32.7531 -1.2889 TD -0 Tw -(2.0 2.236\))Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --8.6676 -2.2156 TD -(TO)Tj -/TT4 1 Tf -10 0 0 10 112.8017 437.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 115.5801 437.72 Tm -(FORM)Tj -/TT6 1 Tf -2.4 0 TD -[( )-31952.2([I.S. Operator])]TJ --1.2422 -1.8444 TD -0.0656 Tw -[(Specifies the final value for a numerical i.v. If )]TJ -/TT8 1 Tf -21.1121 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0656 Tw -[( is not specified, the i.v. is initialized)]TJ --23.5125 -1.2889 TD -0.0989 Tw -[(to 1. If no i.v. has been specified, a dummy i.v. is supplied and initialized. If )]TJ -/TT8 1 Tf -35.9309 0 TD -0 Tw -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.0989 Tw -[( is not)]TJ --37.1311 -1.2889 TD -0.0833 Tw -[(specified, the i.v. is automatically incremented by 1 after each iteration. When the i.v. is)]TJ -0 -1.2222 TD -0.1789 Tw -(definitely being )Tj -/TT18 1 Tf -7.5585 0 TD -0 Tw -(incremented)Tj -/TT6 1 Tf -4.9648 0 TD -0.1789 Tw -(, i.e., either )Tj -/TT8 1 Tf -5.6089 0 TD -0 Tw -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.1789 Tw -[( is not specified, or its operand is a positive)]TJ --19.3324 -1.2889 TD -0.0711 Tw -(number, the i.s. terminates when the i.v. exceeds the value of )Tj -/TT12 1 Tf -27.9204 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0711 Tw -[(. Similarly, when the)]TJ --30.3208 -1.2889 TD -0.0589 Tw -(i.v. is definitely being decremented the i.s. terminates when the i.v. becomes )Tj -/TT18 1 Tf -34.5607 0 TD -0 Tw -(less)Tj -/TT6 1 Tf -1.4453 0 TD -0.0589 Tw -[( than the)]TJ --36.006 -1.2222 TD -0 Tw -(value of )Tj -/TT12 1 Tf -3.8169 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( \(see description of )Tj -/TT8 1 Tf -8.5835 0 TD -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -(\).)Tj -/TT12 1 Tf --16.001 -2.0667 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2278 Tw -[( is evaluated only once, when the i.s. is first entered, and its value bound to a)]TJ --2.4004 -1.2889 TD -0.0389 Tw -[(temporary variable against which the i.v. is checked each interation. If the user wishes to)]TJ -0 -1.2222 TD -0.0522 Tw -(specify an i.s. in which the value of the boundary condition is recomputed each iteration,)Tj -T* -0 Tw -(he should use )Tj -/TT8 1 Tf -6.3735 0 TD -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(UNTIL)Tj -/TT6 1 Tf -3.0005 0 TD -( instead of )Tj -/TT8 1 Tf -4.8418 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --19.8574 -2.0667 TD -0.1822 Tw -(When both the operands to )Tj -/TT8 1 Tf -13.2085 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1822 Tw -[( and )]TJ -/TT8 1 Tf -2.5573 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1822 Tw -[( are numbers, and )]TJ -/TT8 1 Tf -8.9647 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1822 Tw -(s operand is less than)Tj -/TT8 1 Tf --29.5313 -1.2889 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[(s operand, the i.v. is decremented by 1 after each iteration. In this case, the i.s.)]TJ --2.4004 -1.2889 TD -0.1033 Tw -(terminates when the i.v. becomes )Tj -/TT18 1 Tf -15.4796 0 TD -0 Tw -(less)Tj -/TT6 1 Tf -1.4453 0 TD -0.1033 Tw -[( than the value of )]TJ -/TT12 1 Tf -8.461 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1033 Tw -[(. For example, )]TJ -/TT8 1 Tf -7.1594 0 TD -0.2489 Tw -(\(from 10)Tj --34.9457 -1.2889 TD -0 Tw -(to 1 do PRINT\))Tj -/TT6 1 Tf -8.4014 0 TD -( prints the numbers from )Tj -/TT8 1 Tf -11.332 0 TD -(10)Tj -/TT6 1 Tf -1.2002 0 TD -( down to )Tj -/TT8 1 Tf -4.1948 0 TD -(1)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --28.3952 -2.2156 TD -(BY)Tj -/TT4 1 Tf -10 0 0 10 112.8017 227.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 115.5801 227.18 Tm -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(\(without )Tj -/TT8 1 Tf -4.0913 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 216.9751 227.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 219.75 227.18 Tm -23.0278 Tw -[( [I.S. )23027.8(Operator])]TJ --10.4167 -1.8444 TD -0.1133 Tw -(If you arent using )Tj -/TT8 1 Tf -8.8444 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1133 Tw -[( or )]TJ -/TT8 1 Tf -1.6676 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6133 0 TD -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.1133 Tw -[( specifies how the i.v. itself is reset at each iteration. If)]TJ --14.726 -1.2889 TD -0.0156 Tw -(youre using )Tj -/TT8 1 Tf -5.8441 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0156 Tw -[( or )]TJ -/TT8 1 Tf -1.472 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0156 Tw -(, the i.v. is known to be numerical, so the new i.v. is computed by)Tj --10.9167 -1.2889 TD -0.0478 Tw -(adding the value of )Tj -/TT12 1 Tf -9.0461 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0478 Tw -[( \(which is reevaluated each iteration\) to the current value of the)]TJ --11.4465 -1.2889 TD -0.0189 Tw -(i.v., e.g., )Tj -/TT8 1 Tf -3.9289 0 TD -0.0444 Tw -(\(for N from 1 to 10 by 2 collect N\) )Tj -/TT6 1 Tf -22.048 0 TD -0.0189 Tw -(makes a list of the first five odd)Tj --25.9768 -1.2889 TD -0 Tw -(numbers.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.0577 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( is a positive number \()]TJ -/TT12 1 Tf -10.5048 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( itself, not its value, which in general CLISP would)]TJ --16.3633 -1.2889 TD -0.04 Tw -(have no way of knowing in advance\), the loop stops when the value of the i.v. )Tj -/TT18 1 Tf -35.3631 0 TD -0 Tw -(exceeds)Tj -/TT6 1 Tf -2.9639 0 TD -0.04 Tw -[( the)]TJ --38.327 -1.2222 TD -0.0133 Tw -(value of )Tj -/TT8 1 Tf -3.8436 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0133 Tw -[(s operand. If )]TJ -/TT12 1 Tf -6.3888 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( is a negative number, the loop stops when the value of the)]TJ --13.8329 -1.2889 TD -0.1522 Tw -(i.v. becomes )Tj -/TT18 1 Tf -5.968 0 TD -0 Tw -(less)Tj -/TT6 1 Tf -1.4453 0 TD -0.1522 Tw -[( than )]TJ -/TT8 1 Tf -2.7947 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1522 Tw -(s operand, e.g., )Tj -/TT8 1 Tf -7.6574 0 TD -0.3667 Tw -(\(for I)Tj -/TT10 1 Tf -3.9673 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.9668 0 TD -0.3667 Tw -(from N to M by -2 until)Tj --23.9996 -1.2889 TD -0.0078 Tw -(\(LESSP I M\) ...\))Tj -/TT6 1 Tf -9.6249 0 TD -0.0033 Tw -(. Otherwise, the terminating condition for each iteration depends on)Tj --9.6249 -1.2889 TD -0.0344 Tw -(the value of )Tj -/TT12 1 Tf -5.5574 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0344 Tw -[( for that iteration: if )]TJ -/TT12 1 Tf -9.0409 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(<0)Tj -/TT6 1 Tf -1.2002 0 TD -0.0344 Tw -(, the test is whether the i.v. is less than )Tj -/TT8 1 Tf -17.4948 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(s)Tj --39.2943 -1.2889 TD -0.1 Tw -(operand, if )Tj -/TT12 1 Tf -5.2879 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(>0)Tj -/TT6 1 Tf -1.2002 0 TD -0.1 Tw -[( the test is whether the i.v. exceeds )]TJ -/TT8 1 Tf -16.3093 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1 Tw -(s operand; if )Tj -/TT12 1 Tf -6.3396 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2389 Tw -[( = 0)]TJ -/TT6 1 Tf -2.8782 0 TD -0.1 Tw -(, the)Tj --38.0161 -1.2889 TD -0 Tw -(loop terminates unconditionally.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -51 0 obj -<< -/Length 9432 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-12)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0033 Tw -(If you didnt use )Tj -/TT8 1 Tf -7.5929 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0008 Tc -0.0025 Tw -( or )Tj -/TT8 1 Tf -1.4476 0 TD -0 Tc -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0007 Tc -0.0026 Tw -( and )Tj -/TT12 1 Tf -2.1995 0 TD -0 Tc -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( is not a number, the i.v. is simply reset to the value)Tj --17.241 -1.2889 TD -0 Tc -0 Tw -(of )Tj -/TT12 1 Tf -1.1689 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.04 Tw -[( after each iteration, e.g., )]TJ -/TT8 1 Tf -11.2596 0 TD -0.0956 Tw -(\(for I from N by \(FOO\) ...\))Tj -/TT6 1 Tf -16.776 0 TD -0.04 Tw -[( sets )]TJ -/TT8 1 Tf -2.2328 0 TD -0 Tw -(I)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( to the value)]TJ --34.4378 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1289 0 TD -(\(FOO\))Tj -/TT6 1 Tf -3.0005 0 TD -( on each loop after the first.)Tj -/TT10 1 Tf --6.7961 -2.2155 TD -(BY)Tj -/TT4 1 Tf -10 0 0 10 160.8017 526.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 163.5801 526.4 Tm -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(\(with )Tj -/TT8 1 Tf -2.6162 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 251.6992 526.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 254.48 526.4 Tm -24.5022 Tw -[( [I.S. )24502.2(Operator])]TJ --8.9422 -1.8444 TD -0.0822 Tw -(If you did use )Tj -/TT8 1 Tf -6.7224 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0822 Tw -[( or )]TJ -/TT8 1 Tf -1.6054 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.5822 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0822 Tw -(s value determines the )Tj -/TT18 1 Tf -10.8045 0 TD -0 Tw -(tail)Tj -/TT6 1 Tf -1.3325 0 TD -0.0822 Tw -[( for the next iteration, which in)]TJ --25.8478 -1.2889 TD -0.0089 Tw -(turn determines the value for the i.v. as described earlier, i.e., the new i.v. is )Tj -/TT8 1 Tf -33.7442 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0089 Tw -[( of the tail)]TJ --35.5445 -1.2889 TD -0 Tw -(for )Tj -/TT8 1 Tf -1.5328 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0089 Tw -(, the tail itself for )Tj -/TT8 1 Tf -7.7578 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -0.0089 Tw -[(. In conjunction with )]TJ -/TT8 1 Tf -9.6763 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0089 Tw -(, you can refer to the current tail within)Tj -/TT12 1 Tf --22.5675 -1.2889 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0944 Tw -[( by using the i.v. or the operand for )]TJ -/TT8 1 Tf -16.7245 0 TD -0 Tw -(IN/ON)Tj -/TT6 1 Tf -3.0005 0 TD -0.0944 Tw -(, e.g., )Tj -/TT8 1 Tf -2.724 0 TD -0.2256 Tw -(\(for Z in L by \(CDDR )Tj -/TT12 1 Tf -13.9554 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj --39.4049 -1.2889 TD -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.1222 Tw -[( or)]TJ -/TT16 1 Tf -1.3131 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.3722 0 TD -0.2944 Tw -(\(for Z in L by \(CDDR )Tj -/TT12 1 Tf -14.3687 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.2944 Tw -(\) ...\))Tj -/TT6 1 Tf -3.895 0 TD -0.1222 Tw -(. At translation time, the name of the)Tj --22.9496 -1.2889 TD -0.2767 Tw -(internal variable which holds the value of the current tail is substituted for the i.v.)Tj -0 -1.2222 TD -0 Tw -(throughout )Tj -/TT12 1 Tf -5.3854 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.07 Tw -(. For example, )Tj -/TT8 1 Tf -6.7061 0 TD -0.1678 Tw -(\(for X in Y by \(CDR \(MEMB FOO \(CDR X\)\)\))Tj --14.4919 -1.2889 TD -0.03 Tw -(collect X\))Tj -/TT6 1 Tf -6.031 0 TD -0.0122 Tw -[( specifies that after each iteration, )]TJ -/TT8 1 Tf -15.0977 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0122 Tw -[( of the current tail is to be searched for)]TJ --22.929 -1.2889 TD -0 Tw -(the atom )Tj -/TT8 1 Tf -4.1421 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(, and \()Tj -/TT8 1 Tf -2.7759 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( of\) this latter tail to be used for the next iteration.)Tj -/TT10 1 Tf --13.1852 -2.2156 TD -(AS)Tj -/TT4 1 Tf -10 0 0 10 160.8017 397.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 163.5801 397.66 Tm -(VAR)Tj -/TT6 1 Tf -1.8 0 TD -( )Tj -33.0522 0 TD -([I.S. Operator])Tj --33.6944 -1.8444 TD -0.04 Tw -(Lets you have more than one i.v. for a single loop, e.g., )Tj -/TT8 1 Tf -24.8228 0 TD -0.0967 Tw -(\(for X in Y as U in V do)Tj --24.8228 -1.2889 TD -0 Tw -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -( moves through the lisps )Tj -/TT8 1 Tf -11.1659 0 TD -0 Tc -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0004 Tc -0.0018 Tw -( and )Tj -/TT8 1 Tf -2.1973 0 TD -0 Tc -0 Tw -(V)Tj -/TT6 1 Tf -0.6001 0 TD -0.0001 Tc -0.0021 Tw -( in parallel \(see )Tj -/TT8 1 Tf -6.9449 0 TD -0 Tc -0 Tw -(MAP2C)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0021 Tw -(\). The loop ends when any of)Tj --26.9092 -1.2889 TD -0 Tc -0.0211 Tw -(the terminating conditions is met, e.g.,)Tj -/TT16 1 Tf -17.0348 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2711 0 TD -0.05 Tw -(\(for X in Y as I from 1 to 10 collect)Tj --17.3059 -1.2889 TD -0 Tw -(X\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0533 Tw -[( makes a list of the first ten elements of )]TJ -/TT8 1 Tf -17.9513 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -(, or however many elements there are on )Tj -/TT8 1 Tf -18.7245 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -[( if)]TJ --39.0762 -1.2889 TD -0 Tw -(less than )Tj -/TT8 1 Tf -4.1079 0 TD -(10)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --5.3081 -2.0667 TD -0.2233 Tw -(The operand to )Tj -/TT8 1 Tf -7.6798 0 TD -0 Tw -(AS)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.7233 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2233 Tw -(, specifies the new i.v. For the remainder of the i.s., or until)Tj --11.4036 -1.2889 TD -0 Tw -(another )Tj -/TT8 1 Tf -3.6824 0 TD -(AS)Tj -/TT6 1 Tf -1.2002 0 TD -0.0222 Tw -[( is encountered, all operators refer to the new i.v. For example,)]TJ -/TT16 1 Tf -28.1387 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2722 0 TD -0.0533 Tw -(\(for I from)Tj --33.2935 -1.2889 TD -0.0133 Tw -(1 to N)Tj -6 0 0 6 206.64 290.86 Tm -0 Tw -(1)Tj -9 0 0 9 210.24 292.86 Tm -0.0133 Tw -[( as J from 1 to N)]TJ -6 0 0 6 302.76 290.86 Tm -0 Tw -(2)Tj -9 0 0 9 306.36 292.86 Tm -0.0133 Tw -[( by 2 as K from N)]TJ -6 0 0 6 398.88 290.86 Tm -0 Tw -(3)Tj -9 0 0 9 402.48 292.86 Tm -0.0133 Tw -[( to 1 by -1 ...\))]TJ -/TT6 1 Tf -9.6682 0 TD -0.0056 Tw -[( terminates)]TJ --35.0549 -1.3944 TD -0 Tw -(when )Tj -/TT8 1 Tf -2.8237 0 TD -(I)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( exceeds )]TJ -/TT8 1 Tf -4.125 0 TD -0 Tw -(N)Tj -6 0 0 6 247.35 278.31 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 250.95 280.31 Tm -0.0967 Tw -(, or )Tj -/TT8 1 Tf -1.8843 0 TD -0 Tw -(J)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( exceeds )]TJ -/TT8 1 Tf -4.125 0 TD -0 Tw -(N)Tj -6 0 0 6 315.84 278.31 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 319.44 280.31 Tm -0.0967 Tw -(, or )Tj -/TT8 1 Tf -1.8843 0 TD -0 Tw -(K)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( becomes less than )]TJ -/TT8 1 Tf -8.8022 0 TD -0 Tw -(1)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[(. After each iteration, )]TJ -/TT8 1 Tf -10.2856 0 TD -0 Tw -(I)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -[( is)]TJ --38.9323 -1.3944 TD -0 Tw -(incremented by )Tj -/TT8 1 Tf -7.1602 0 TD -(1)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(J)Tj -/TT6 1 Tf -0.6001 0 TD -( by )Tj -/TT8 1 Tf -1.6094 0 TD -(2)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(K)Tj -/TT6 1 Tf -0.6001 0 TD -( by )Tj -/TT8 1 Tf -1.6094 0 TD -(-1)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --19.589 -2.2156 TD -(OUTOF)Tj -/TT4 1 Tf -10 0 0 10 177.0044 247.82 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 179.7827 247.82 Tm -(FORM)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -0.0433 Tw -[(For use with generators. On each iteration, the i.v. is set to successive values returned by)]TJ -0 -1.2222 TD -0 Tw -(the generator. The loop ends when the generator runs out.)Tj -/TT4 1 Tf -10 0 0 10 126 197.88 Tm -(Condition I.S. Oprs)Tj -/TT6 1 Tf -9 0 0 9 126 182.22 Tm -0.0133 Tw -[(What if you want to do things only on certain times through the loop? You could make the loop body)]TJ -T* -0 Tw -(a big )Tj -/TT8 1 Tf -2.4004 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -(, but its much more readable to use one of these:)Tj -/TT10 1 Tf --2.1341 -2.2156 TD -(WHEN)Tj -/TT4 1 Tf -10 0 0 10 171.6035 151.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 174.3818 151.28 Tm -(FORM)Tj -/TT6 1 Tf -2.3998 0 TD -[( )-30752.2([I.S. Operator])]TJ --2.4422 -1.8444 TD -0.1189 Tw -(Only run the loop body when )Tj -/TT8 1 Tf -14.123 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1189 Tw -(s value is non-)Tj -/TT8 1 Tf -7.0041 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1189 Tw -[(. For example, )]TJ -/TT8 1 Tf -7.2216 0 TD -0.2844 Tw -(\(for X in Y)Tj --32.5495 -1.2889 TD -0 Tw -(collect X when \(NUMBERP X\)\))Tj -/TT6 1 Tf -16.2026 0 TD -( collects only the elements of )Tj -/TT8 1 Tf -12.9287 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( that are numbers.)Tj -/TT10 1 Tf --32.3981 -2.2156 TD -(UNLESS)Tj -/TT4 1 Tf -10 0 0 10 182.4052 103.14 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1836 103.14 Tm -(FORM)Tj -/TT6 1 Tf -2.3996 0 TD -[( )-29552.2([I.S. Operator])]TJ --3.6422 -1.8444 TD -(Opposite of )Tj -/TT8 1 Tf -5.4331 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(: )Tj -/TT8 1 Tf -0.75 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(Z)Tj -/TT6 1 Tf -0.6001 0 TD -( is the same as )Tj -/TT8 1 Tf -6.5615 0 TD -(UNLESS \(NOT Z\))Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --29.4635 -2.2156 TD -(WHILE)Tj -/TT4 1 Tf -10 0 0 10 177.0044 66.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 179.7827 66.6 Tm -(FORM)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-30152.2([I.S. Operator])]TJ -/TT8 1 Tf --3.0422 -1.8444 TD -(WHILE)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( evaluates )Tj -/TT12 1 Tf -4.667 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(before)Tj -/TT6 1 Tf -2.3521 0 TD -( each iteration, and if the value is )Tj -/TT8 1 Tf -14.8481 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, exits.)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6018 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-13)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(UNTIL)Tj -/TT4 1 Tf -10 0 0 10 129.0044 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 131.7827 568.2 Tm -(FORM)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-30152.2([I.S. Operator])]TJ --3.0422 -1.8444 TD -(Opposite of )Tj -/TT8 1 Tf -5.4331 0 TD -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -(: Evaluates )Tj -/TT12 1 Tf -5.2988 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(before)Tj -/TT6 1 Tf -2.3521 0 TD -( each iteration, and if the value is )Tj -/TT18 1 Tf -14.8481 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, exits.)Tj -/TT10 1 Tf --39.633 -2.2156 TD -(REPEATWHILE)Tj -/TT4 1 Tf -10 0 0 10 161.4097 531.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 164.188 531.66 Tm -(FORM)Tj -/TT6 1 Tf -2.3991 0 TD -[( )-26552.2([I.S. Operator])]TJ --6.6422 -1.8444 TD -0.0389 Tw -(Same as )Tj -/TT8 1 Tf -3.8883 0 TD -0 Tw -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0389 Tw -[( except the test is performed )]TJ -/TT18 1 Tf -12.9575 0 TD -0 Tw -(after)Tj -/TT6 1 Tf -1.833 0 TD -0.0389 Tw -[( the loop body, but before the i.v. is reset)]TJ --21.6793 -1.2889 TD -0 Tw -(for the next iteration.)Tj -/TT10 1 Tf --2.6667 -2.1489 TD -(REPEATUNTIL)Tj -/TT4 1 Tf -10 0 0 10 161.4097 484.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 164.188 484.12 Tm -(FORM)Tj -/TT6 1 Tf -2.3991 0 TD -[( )-26552.2([I.S. Operator])]TJ --6.6422 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(UNTIL)Tj -/TT6 1 Tf -3.0005 0 TD -(, except the test is performed )Tj -/TT18 1 Tf -12.9741 0 TD -(after)Tj -/TT6 1 Tf -1.833 0 TD -( the loop body.)Tj -/TT4 1 Tf -10 0 0 10 78 444.58 Tm -(Other I.S. Operators)Tj -/TT10 1 Tf -9 0 0 9 102 427.58 Tm -(FIRST)Tj -/TT4 1 Tf -10 0 0 10 129.0044 427.58 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 131.7827 427.58 Tm -(FORM)Tj -/TT6 1 Tf -2.3997 0 TD -[( )-30152.2([I.S. Operator])]TJ -/TT12 1 Tf --3.0422 -1.8445 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( is evaluated once before the first iteration, e.g., )]TJ -/TT8 1 Tf -21.4025 0 TD -0.0856 Tw -(\(for X Y Z in L first \(FOO)Tj --23.8029 -1.2889 TD -0 Tw -(Y Z\) ...\))Tj -/TT6 1 Tf -5.4009 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -( could be used to initialize )Tj -/TT8 1 Tf -11.8579 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(Z)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --27.5617 -2.2156 TD -(FINALLY)Tj -/TT4 1 Tf -10 0 0 10 139.8062 379.44 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 142.5845 379.44 Tm -(FORM)Tj -/TT6 1 Tf -2.3995 0 TD -[( )-28952.2([I.S. Operator])]TJ -/TT12 1 Tf --4.2422 -1.8444 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0167 Tw -[( is evaluated after the loop terminates. For example,)]TJ -/TT16 1 Tf -23.3043 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2667 0 TD -0.0389 Tw -(\(for X in L bind Y_0 do)Tj --25.9714 -1.2889 TD -0.0178 Tw -(\(if \(ATOM X\) then \(SETQ Y \(PLUS Y 1\)\)\) finally \(RETURN Y\)\))Tj -/TT6 1 Tf -35.0012 0 TD -0.0078 Tw -[( will return)]TJ --35.0012 -1.2889 TD -0 Tw -(the number of atoms in )Tj -/TT8 1 Tf -10.563 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --13.8298 -2.2156 TD -(EACHTIME)Tj -/TT4 1 Tf -10 0 0 10 145.207 319.7 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 147.9854 319.7 Tm -(FORM)Tj -/TT6 1 Tf -2.3994 0 TD -[( )-28352.2([I.S. Operator])]TJ -/TT12 1 Tf --4.8422 -1.8444 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -[( is evaluated at the beginning of each iteration before, and regardless of, any testing.)]TJ --2.4004 -1.2889 TD -0 Tw -(For example, consider,)Tj -/TT8 1 Tf -4 -1.6 TD -(\(for I from 1 to N)Tj -2 -1 TD -(do \(... \(FOO I\) ...\))Tj -T* -(unless \(... \(FOO I\) ...\))Tj -T* -(until \(... \(FOO I\) ...\)\))Tj -/TT6 1 Tf --6 -1.8444 TD -0.1222 Tw -(You might want to set a temporary variable to the value of \()Tj -/TT8 1 Tf -27.9286 0 TD -0.2944 Tw -(FOO I\))Tj -/TT6 1 Tf -3.895 0 TD -0.1222 Tw -[( in order to avoid)]TJ --31.8236 -1.2889 TD -0.08 Tw -[(computing it three times each iteration. However, without knowing the translation, you)]TJ -0 -1.2222 TD -0.0433 Tw -(cant know whether to put the assignment in the operand to )Tj -/TT8 1 Tf -27.2345 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5433 0 TD -(UNLESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0433 Tw -(, or )Tj -/TT8 1 Tf -1.7776 0 TD -0 Tw -(UNTIL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[(. You)]TJ --37.3567 -1.2889 TD -0 Tw -(can avoid this problem by simply writing )Tj -/TT8 1 Tf -18.5903 0 TD -(EACHTIME \(SETQ J \(FOO I\)\))Tj -/TT6 1 Tf -15.0024 0 TD -(.)Tj -/TT10 1 Tf --36.2594 -2.2156 TD -(DECLARE:)Tj -/TT4 1 Tf -10 0 0 10 145.207 179.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 147.9854 179.36 Tm -(DECL)Tj -/TT6 1 Tf -2.3994 0 TD -[( )-28352.2([I.S. Operator])]TJ --4.8422 -1.8444 TD -0.1133 Tw -(Inserts the form )Tj -/TT8 1 Tf -7.6007 0 TD -0 Tw -(\(DECLARE)Tj -/TT10 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.8734 0 TD -(DECL)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -[( immediately following the )]TJ -/TT8 1 Tf -12.7004 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( variable list in the)]TJ --31.3762 -1.2889 TD -0.0867 Tw -(translation, or, in the case that the translation is a mapping function rather than a )Tj -/TT8 1 Tf -37.3493 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj --39.7497 -1.2889 TD -0.0244 Tw -[(immediately following the argument list of the lambda expression in the translation. This)]TJ -0 -1.2222 TD -0.0089 Tw -(can be used to declare variables bound in the iterative statement to be compiled as local or)Tj -T* -0.1178 Tw -[(special variables. For example )]TJ -/TT8 1 Tf -14.3628 0 TD -0.2833 Tw -(\(for X in Y declare: \(LOCALVARS X\) ...\))Tj -/TT6 1 Tf -25.3871 0 TD -0 Tw -(.)Tj --39.75 -1.2889 TD -(Several )Tj -/TT8 1 Tf -3.5128 0 TD -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -0.0289 Tw -(s can apppear in the same i.s.; the declarations are inserted in the order)Tj --8.3136 -1.2889 TD -0 Tw -(they appear.)Tj -/TT10 1 Tf --2.6667 -2.1489 TD -(DECLARE)Tj -/TT4 1 Tf -10 0 0 10 139.8062 75.02 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 142.5845 75.02 Tm -(DECL)Tj -/TT6 1 Tf -2.3995 0 TD -[( )-28952.2([I.S. Operator])]TJ --4.2422 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -57 0 obj -<< -/Length 8048 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-14)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(Since )Tj -/TT8 1 Tf -2.6019 0 TD -(DECLARE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( is also the name of a function, )]TJ -/TT8 1 Tf -13.8915 0 TD -0 Tw -(DECLARE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( cannot be used as an i.s. operator)]TJ --24.8947 -1.2889 TD -0.1244 Tw -(when it appears as )Tj -/TT8 1 Tf -9.0158 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1244 Tw -[( of a form, i.e. as the first i.s. operator in an iterative statement.)]TJ --10.8161 -1.2889 TD -0 Tw -(However, )Tj -/TT8 1 Tf -4.6299 0 TD -(declare)Tj -/TT6 1 Tf -4.2007 0 TD -( \(lowercase version\) )Tj -/TT18 1 Tf -9.0894 0 TD -(can)Tj -/TT6 1 Tf -1.4072 0 TD -( be the first i.s. operator.)Tj -/TT10 1 Tf --21.9938 -2.0667 TD -(ORIGINAL )Tj -/TT12 1 Tf -5.4009 0 TD -(I.S.OPR OPERAND)Tj -/TT6 1 Tf -8.9991 0 TD -[( )-21461.1([I.S. Operator])]TJ -/TT12 1 Tf --11.7333 -1.8444 TD -(I.S.OPR)Tj -/TT6 1 Tf -4.2007 0 TD -0.0811 Tw -[( will be translated using its original, built-in interpretation, independent of any)]TJ --4.2007 -1.2889 TD -0 Tw -(user defined i.s. operators. )Tj --5.3333 -2 TD -0.0389 Tw -(There are also a number of i.s.oprs that make it easier to create iterative statements that use the clock,)Tj -0 -1.2222 TD -0 Tw -(looping for a given period of time. See timers, Chapter 12.)Tj -/TT4 1 Tf -10 0 0 10 126 448.2 Tm -(Miscellaneous Hints For Using I.S.Oprs)Tj -/TT6 1 Tf -9 0 0 9 126 432.54 Tm -0.0478 Tw -(Lowercase versions of all i.s. operators are equivalent to the uppercase, e.g., )Tj -/TT8 1 Tf -34.2486 0 TD -0.1156 Tw -(\(for X in Y ...\))Tj -/TT6 1 Tf -10.0638 0 TD -0.0478 Tw -[( is)]TJ --44.3124 -1.2889 TD -0 Tw -(equivalent to )Tj -/TT8 1 Tf -6.0483 0 TD -(\(FOR X IN Y ...\))Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj --15.6499 -2.0667 TD -0.0444 Tw -(Each i.s. operator is of lower precedence than all Interlisp forms, so parentheses around the operands)Tj -0 -1.2222 TD -0.0133 Tw -(can be omitted, and will be supplied where necessary, e.g., )Tj -/TT8 1 Tf -26.3233 0 TD -0.0322 Tw -(BIND \(X Y Z\))Tj -/TT6 1 Tf -7.2978 0 TD -0.0133 Tw -[( can be written )]TJ -/TT8 1 Tf -6.8448 0 TD -0.0322 Tw -(BIND X Y)Tj --40.466 -1.2889 TD -0 Tw -(Z)Tj -/TT10 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -1.2002 0 TD -(OLD \(X_)Tj -/TT12 1 Tf -4.2007 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( as )Tj -/TT8 1 Tf -1.4238 0 TD -(OLD X_)Tj -/TT12 1 Tf -3.6006 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj -/TT6 1 Tf -0.6001 0 TD -( etc.)Tj -/TT8 1 Tf --17.0264 -2.0667 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0111 Tw -[( or )]TJ -/TT8 1 Tf -1.4631 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0111 Tw -[( may be used in any operand. \(In this case, the translation of the iterative statement will)]TJ --6.2639 -1.2889 TD -0.12 Tw -(always be in the form of a )Tj -/TT8 1 Tf -12.5231 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.12 Tw -(, never a mapping function.\) )Tj -/TT8 1 Tf -13.7742 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.12 Tw -[( means return from the loop)]TJ --32.2983 -1.2889 TD -0.19 Tw -(\(with the indicated value\), )Tj -/TT18 1 Tf -12.6692 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.19 Tw -[( from the function in which the loop appears. )]TJ -/TT8 1 Tf -22.378 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.19 Tw -[( refers to a label)]TJ --37.5804 -1.2889 TD -0.1433 Tw -(elsewhere in the function in which the loop. appears, except for the labels )Tj -/TT8 1 Tf -34.544 0 TD -0 Tw -($$LP)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6433 0 TD -($$ITERATE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1433 Tw -(, and)Tj -/TT8 1 Tf --42.9886 -1.2889 TD -0 Tw -($$OUT)Tj -/TT6 1 Tf -3.0005 0 TD -( which are reserved, as described below.)Tj --3.0005 -2.0667 TD -0.0222 Tw -(In the case of )Tj -/TT8 1 Tf -6.1206 0 TD -0 Tw -(FIRST)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(FINALLY)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(EACHTIME)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -0.0222 Tw -[( or one of the i.s.types, e.g., )]TJ -/TT8 1 Tf -12.3558 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5222 0 TD -(SUM)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --45.0914 -1.2889 TD -0.0433 Tw -(etc., the operand can consist of more than one form, e.g., )Tj -/TT8 1 Tf -25.61 0 TD -0 Tw -(COLLECT)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -0.2933 0 TD -0.1044 Tw -(\(PRINT \(CAR X\)\))Tj -/TT6 1 Tf -9.2104 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2933 0 TD -0.1044 Tw -(\(CDR X\))Tj -/TT6 1 Tf -4.3051 0 TD -0.0433 Tw -(, in)Tj --43.9128 -1.2889 TD -0 Tw -(which case a )Tj -/TT8 1 Tf -5.8296 0 TD -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -( is supplied.)Tj --8.8301 -2.0667 TD -0.0511 Tw -(Each operand can be the name of a function, in which case it is applied to the \(last\) i.v., e.g., )Tj -/TT8 1 Tf -41.614 0 TD -0.1222 Tw -(\(for X)Tj --41.614 -1.2889 TD -0.3667 Tw -(in Y do PRINT when NUMBERP\))Tj -/TT6 1 Tf -18.036 0 TD -0.1533 Tw -[( is the same as )]TJ -/TT8 1 Tf -7.3282 0 TD -0.3667 Tw -(\(for X in Y do \(PRINT X\) when)Tj --25.3642 -1.2889 TD -0.2111 Tw -(\(NUMBERP X\)\))Tj -/TT6 1 Tf -7.4123 0 TD -0.0878 Tw -[(. Note that the i.v. need not be explicitly specified, e.g., )]TJ -/TT8 1 Tf -25.6744 0 TD -0.2111 Tw -(\(in Y do PRINT when)Tj --33.0867 -1.2889 TD -0 Tw -(NUMBERP\))Tj -/TT6 1 Tf -4.8008 0 TD -( will work.)Tj --4.8008 -2.0667 TD -0.0044 Tw -(For i.s.types, e.g., )Tj -/TT8 1 Tf -7.8966 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5044 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5044 0 TD -(JOIN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0044 Tw -(, the function is always applied to the first i.v. in the i.s., whether)Tj --16.7068 -1.2889 TD -0.0111 Tw -[(explicity named or not. For example, )]TJ -/TT8 1 Tf -16.819 0 TD -0.0267 Tw -(\(in Y as I from 1 to 10 do PRINT\))Tj -/TT6 1 Tf -20.0432 0 TD -0.0111 Tw -[( prints elements on)]TJ -/TT8 1 Tf --36.8622 -1.2889 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, not integers between 1 and 10.)Tj --0.6001 -2.0667 TD -0.0556 Tw -(Note that this feature does not make much sense for )Tj -/TT8 1 Tf -23.8153 0 TD -0 Tw -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5556 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5556 0 TD -(BIND)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5556 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0556 Tw -(, or )Tj -/TT8 1 Tf -1.802 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -0.0556 Tw -(, since they operate)Tj --35.6854 -1.2889 TD -0 Tw -(before the loop starts, when the i.v. may not even be bound.)Tj -0 -2 TD -0.0267 Tw -(In the case of )Tj -/TT8 1 Tf -6.1384 0 TD -0 Tw -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -0.0267 Tw -[( in conjunction with )]TJ -/TT8 1 Tf -9.1926 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0267 Tw -(, the function is applied to the current )Tj -/TT18 1 Tf -17.1298 0 TD -0 Tw -(tail)Tj -/TT6 1 Tf -1.3325 0 TD -0.0267 Tw -[( e.g., )]TJ -/TT8 1 Tf -2.3385 0 TD -0.0644 Tw -(\(for X in Y)Tj --38.5322 -1.2889 TD -0 Tw -(by CDDR ...\))Tj -/TT6 1 Tf -7.2012 0 TD -( is the same as )Tj -/TT8 1 Tf -6.5615 0 TD -(\(for X in Y by \(CDDR X\) ...\))Tj -/TT6 1 Tf -16.8027 0 TD -(.)Tj --30.5654 -2.0667 TD -0.0678 Tw -(While the exact translation of a loop depends on which operators are present, a )Tj -/TT8 1 Tf -36.1398 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0678 Tw -[( will always be)]TJ --38.5402 -1.2889 TD -0.2178 Tw -(used whenever the loop specifies dummy variablesif )Tj -/TT8 1 Tf -26.0806 0 TD -0 Tw -(BIND)Tj -/TT6 1 Tf -2.4004 0 TD -0.2178 Tw -[( appears, or there is more than one)]TJ --28.481 -1.2889 TD -0.0744 Tw -(variable specified by a )Tj -/TT8 1 Tf -10.434 0 TD -0 Tw -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0744 Tw -(, or a )Tj -/TT8 1 Tf -2.6643 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5744 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0744 Tw -(, or a reference to the variable )Tj -/TT8 1 Tf -13.8605 0 TD -0 Tw -($$VAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -[( appears in any of)]TJ --37.1347 -1.2889 TD -0 Tw -(the operands. When )Tj -/TT8 1 Tf -9.168 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( is used, the form of the translation is:)Tj -/TT8 1 Tf --2.235 -1.6667 TD -(\(PROG )Tj -/TT12 1 Tf -3.6006 0 TD -(VARIABLES)Tj -/TT8 1 Tf --1.6006 -1 TD -({initialize})Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -60 0 obj -<< -/Length 7167 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-15)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT8 1 Tf -9 0 0 9 162 570.14 Tm -($$LP {eachtime})Tj -2 -1 TD -({test})Tj -T* -({body})Tj --2 -1.4444 TD -($$ITERATE)Tj -2 -1 TD -({aftertest})Tj -T* -({update})Tj -T* -(\(GO $$LP\))Tj --2 -1.4444 TD -($$OUT {finalize})Tj -2 -1 TD -(\(RETURN $$VAL\)\))Tj -/TT6 1 Tf --11.3333 -1.8444 TD -(where )Tj -/TT8 1 Tf -3.2424 0 TD -({test})Tj -/TT6 1 Tf -3.6006 0 TD -0.2233 Tw -[( corresponds to that part of the loop that tests for termination and also for those)]TJ --6.843 -1.2889 TD -0.0022 Tw -(iterations for which )Tj -/TT8 1 Tf -8.9237 0 TD -0 Tw -({body} )Tj -/TT6 1 Tf -4.2073 0 TD -0.0022 Tw -(is not going to be executed, \(as indicated by a )Tj -/TT8 1 Tf -20.3147 0 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0006 Tc -0.0016 Tw -( or )Tj -/TT8 1 Tf -1.4454 0 TD -0 Tc -0 Tw -(UNLESS)Tj -/TT6 1 Tf -3.6006 0 TD -(\);)Tj -/TT16 1 Tf -0.583 0 TD -( )Tj -/TT8 1 Tf -0.2522 0 TD -({body})Tj -/TT6 1 Tf --41.7273 -1.2889 TD -(corresponds to the operand of the i.s.type, e.g., )Tj -/TT8 1 Tf -20.9067 0 TD -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5009 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -(, etc.; )Tj -/TT8 1 Tf -2.5004 0 TD -({aftertest})Tj -/TT6 1 Tf -6.6011 0 TD -( corresponds to those)Tj --35.91 -1.2889 TD -0.1689 Tw -(tests for termination specified by )Tj -/TT8 1 Tf -15.6106 0 TD -0 Tw -(REPEATWHILE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1689 Tw -[( or )]TJ -/TT8 1 Tf -1.7787 0 TD -0 Tw -(REPEATUNTIL)Tj -/TT6 1 Tf -6.6011 0 TD -0.1689 Tw -(; and )Tj -/TT8 1 Tf -2.7806 0 TD -0 Tw -({update})Tj -/TT6 1 Tf -4.8008 0 TD -0.1689 Tw -[( corresponds to)]TJ --38.1728 -1.2889 TD -0.3122 Tw -(that part that resets the tail, increments the counter, etc. in preparation for the next iteration.)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -({initialize})Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -0.6444 0 TD -({finalize})Tj -/TT6 1 Tf -6.001 0 TD -0.1444 Tw -(, and )Tj -/TT8 1 Tf -2.7318 0 TD -0 Tw -({eachtime})Tj -/TT6 1 Tf -6.001 0 TD -0.1444 Tw -[( correspond to the operands of )]TJ -/TT8 1 Tf -14.665 0 TD -0 Tw -(FIRST)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6444 0 TD -(FINALLY)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj --45.09 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(EACHTIME)Tj -/TT6 1 Tf -4.8008 0 TD -(, if any.)Tj --6.7437 -2.0667 TD -(Since )Tj -/TT8 1 Tf -2.6019 0 TD -({body})Tj -/TT6 1 Tf -3.6006 0 TD -0.0311 Tw -[( always appears at the top level of the )]TJ -/TT8 1 Tf -17.1926 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -(, you can insert labels in )Tj -/TT8 1 Tf -11.0758 0 TD -0 Tw -({body})Tj -/TT6 1 Tf -3.6006 0 TD -0.0311 Tw -(, and )Tj -/TT8 1 Tf -2.5051 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[( to)]TJ --44.1772 -1.2889 TD -0.1078 Tw -(them from within )Tj -/TT8 1 Tf -8.4063 0 TD -0 Tw -({body})Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( or from other i.s. operands, e.g., )]TJ -/TT8 1 Tf -15.3179 0 TD -0.2578 Tw -(\(for X in Y first \(GO A\) do)Tj --27.3249 -1.2889 TD -0.2711 Tw -(\(FOO\) A \(FIE\)\))Tj -/TT6 1 Tf -8.9436 0 TD -0.1133 Tw -[(. However, since )]TJ -/TT8 1 Tf -8.3029 0 TD -0 Tw -({body})Tj -/TT6 1 Tf -3.6006 0 TD -0.1133 Tw -[( is dwimified as a list of forms, the label\(s\) should be)]TJ --20.8471 -1.2889 TD -0.1056 Tw -(added to the dummy variables for the iterative statement in order to prevent their being dwimified)Tj -0 -1.2222 TD -0.0022 Tw -(and possibly corrected, e.g., )Tj -/TT8 1 Tf -13.5416 0 TD -0.0056 Tw -(\(for X in Y bind A first \(GO A\) do \(FOO\) A \(FIE\)\))Tj -/TT6 1 Tf -29.4715 0 TD -0.0022 Tw -(. You)Tj --43.0131 -1.2889 TD -0 Tw -(can also )Tj -/TT8 1 Tf -3.7866 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -($$LP)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -($$ITERATE)Tj -/TT6 1 Tf -5.4009 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -($$OUT)Tj -/TT6 1 Tf -3.0005 0 TD -(, or explicitly set )Tj -/TT8 1 Tf -7.5063 0 TD -($$VAL)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 305.6 Tm -(Errors in Iterative Statements)Tj -/TT6 1 Tf -9 0 0 9 78 289.94 Tm -0.1033 Tw -(An error will be generated and an appropriate diagnostic printed if any of the following conditions)Tj -0 -1.2222 TD -0 Tw -(hold:)Tj -0 -2 TD -[(1.)-583.3(Operator with null operand, i.e., two adjacent operators, as in )]TJ -/TT8 1 Tf -28.7865 0 TD -(\(for X in Y until do ...\))Tj -/TT6 1 Tf --28.7865 -2.0667 TD -0.09 Tw -[(2.)-583.3(Operand consisting of more than one form \(except as operand to )]TJ -/TT8 1 Tf -31.1168 0 TD -0 Tw -(FIRST)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.59 0 TD -(FINALLY)Tj -/TT6 1 Tf -4.2007 0 TD -0.09 Tw -(, or one of the)Tj --37.5746 -1.2889 TD -0 Tw -(i.s.types\), e.g., )Tj -/TT8 1 Tf -6.4692 0 TD -(\(for X in Y \(PRINT X\) collect ...\))Tj -/TT6 1 Tf -20.4033 0 TD -(.)Tj --28.2059 -2.0667 TD -(3.)Tj -/TT8 1 Tf -1.3333 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(BY)Tj -/TT6 1 Tf -1.2002 0 TD -( appear twice in same i.s.)Tj --11.7254 -2.0667 TD -[(4.)-583.3(Both )]TJ -/TT8 1 Tf -3.6483 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -( used on same i.v.)Tj --8.2415 -2.0667 TD -(5.)Tj -/TT8 1 Tf -1.3333 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -( used with )Tj -/TT8 1 Tf -4.8999 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -( on same i.v.)Tj --15.1161 -2.0667 TD -[(6.)-583.3(More than one i.s.type, e.g., a )]TJ -/TT8 1 Tf -14.5086 0 TD -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -( and a )Tj -/TT8 1 Tf -2.9429 0 TD -(SUM)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --20.452 -2.0667 TD -(In 3, 4, or 5, an error is not generated if an intervening )Tj -/TT8 1 Tf -24.0625 0 TD -(AS)Tj -/TT6 1 Tf -1.2002 0 TD -( occurs.)Tj --25.2627 -2.0667 TD -(If an error occurs, the i.s. is left unchanged.)Tj -0 -2 TD -0.0344 Tw -(If no )Tj -/TT8 1 Tf -2.3667 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5344 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5344 0 TD -(JOIN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0344 Tw -[( or any of the other i.s.types are specified, CLISP will first attempt to find an)]TJ --11.2369 -1.2889 TD -0.0378 Tw -(operand consisting of more than one form, e.g., )Tj -/TT8 1 Tf -21.4526 0 TD -0.0922 Tw -(\(for X in Y \(PRINT X\) when ATOM X ...\))Tj -/TT6 1 Tf -23.6337 0 TD -0 Tw -(,)Tj --45.0863 -1.2889 TD -0.0756 Tw -(and in this case will insert a )Tj -/TT8 1 Tf -13.0186 0 TD -0 Tw -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0756 Tw -[( after the first form. \(In this case, condition 2 is not considered to be)]TJ --14.2188 -1.2889 TD -0.0733 Tw -[(met, and an error is not generated.\) If CLISP cannot find such an operand, and no )]TJ -/TT8 1 Tf -37.7506 0 TD -0 Tw -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0733 Tw -[( or )]TJ -/TT8 1 Tf -1.5876 0 TD -0 Tw -(UNTIL)Tj -/TT6 1 Tf --42.3387 -1.2889 TD -(appears in the i.s., a warning message is printed: )Tj -/TT8 1 Tf -21.71 0 TD -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(DO)Tj -/TT16 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(COLLECT)Tj -/TT16 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(OR)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(JOIN)Tj -/TT6 1 Tf -2.4004 0 TD -(: followed by the i.s.)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT14 16 0 R -/TT16 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -63 0 obj -<< -/Length 7167 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-16)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0633 Tw -(Similarly, if no terminating condition is detected, i.e., no )Tj -/TT8 1 Tf -25.6428 0 TD -0 Tw -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5633 0 TD -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5633 0 TD -(WHILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5633 0 TD -(UNTIL,)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.3133 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0633 Tw -(, or a )Tj -/TT8 1 Tf -2.6309 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0633 Tw -[( or)]TJ -/TT8 1 Tf --44.0793 -1.2889 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2644 Tw -(, a warning message is printed: )Tj -/TT8 1 Tf -15.5715 0 TD -0.6356 Tw -(Possible non-terminating iterative statement)Tj -/TT6 1 Tf -28.311 0 TD -0 Tw -(:)Tj --45.0827 -1.2889 TD -0.0289 Tw -[(followed by the iterative statement. However, since the user may be planning to terminate the i.s. via)]TJ -0 -1.2222 TD -0 Tw -(an error, Control-E, or a )Tj -/TT8 1 Tf -10.8218 0 TD -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -( from a lower function, the i.s. is still translated.)Tj -/TT16 1 Tf --15.0225 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: The error message is not printed if the value of )Tj -/TT8 1 Tf -21.6606 0 TD -(CLISPI.S.GAG)Tj -/TT6 1 Tf -7.2012 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( \(initially )Tj -/TT8 1 Tf -4.2524 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 126 493.8 Tm -(Defining New Iterative Statement Operators)Tj -/TT6 1 Tf -9 0 0 9 126 478.14 Tm -0.3433 Tw -(The following function is available for defining new or redefining existing iterative statement)Tj -0 -1.2222 TD -0 Tw -(operators:)Tj -/TT8 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(I.S.OPR )Tj -/TT12 1 Tf -4.8008 0 TD -(NAME)Tj -/F1 1 Tf -10 0 0 10 220.2114 447.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 222.9914 447.86 Tm -(FORM)Tj -/F1 1 Tf -10 0 0 10 244.5949 447.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 247.3749 447.86 Tm -(OTHERS)Tj -/F1 1 Tf -10 0 0 10 279.7802 447.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 282.5602 447.86 Tm -(EVALFLG)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -0.5971 0 TD -[( )-18043.3([Function])]TJ -/TT12 1 Tf --16.86 -1.8444 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1322 Tw -[( is the name of the new i.s.opr. If )]TJ -/TT12 1 Tf -16.206 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1322 Tw -[( is a list, )]TJ -/TT12 1 Tf -4.3258 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1322 Tw -[( will be a new )]TJ -/TT18 1 Tf -7.0454 0 TD -0 Tw -(i.s.type)Tj -/TT6 1 Tf -2.8892 0 TD -0.1322 Tw -(, and)Tj -/TT12 1 Tf --37.6675 -1.2889 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( its body.)Tj -/TT12 1 Tf --2.4004 -2.0667 TD -(OTHERS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0322 Tw -[( is an \(optional\) list of additional i.s. operators and operands which will be added)]TJ --3.6006 -1.2889 TD -0.0444 Tw -(to the i.s. at the place where )Tj -/TT12 1 Tf -12.8326 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( appears. If )]TJ -/TT12 1 Tf -5.5977 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( is )]TJ -/TT8 1 Tf -1.3037 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT12 1 Tf -0.5444 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( is a new i.s.opr defined)]TJ --29.2799 -1.2889 TD -0 Tw -(entirely by )Tj -/TT12 1 Tf -5.0088 0 TD -(OTHERS)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --8.6094 -2.0667 TD -0.1967 Tw -(In both )Tj -/TT12 1 Tf -3.8196 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1967 Tw -[( and )]TJ -/TT12 1 Tf -2.5862 0 TD -0 Tw -(OTHERS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1967 Tw -(, the atom )Tj -/TT8 1 Tf -5.2321 0 TD -0 Tw -($$VAL)Tj -/TT6 1 Tf -3.0005 0 TD -0.1967 Tw -[( can be used to reference the value to be)]TJ --20.6394 -1.2889 TD -0.2378 Tw -(returned by the i.s., )Tj -/TT8 1 Tf -9.7827 0 TD -0 Tw -(I.V)Tj -/TT6 1 Tf -1.8003 0 TD -0.2378 Tw -(. to reference the current i.v., and )Tj -/TT8 1 Tf -16.5116 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.2378 Tw -[( to reference )]TJ -/TT12 1 Tf -6.4003 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(s)Tj --39.2957 -1.2889 TD -0.0633 Tw -[(operand. In other words, the current i.v. will be substituted for all instances of )]TJ -/TT8 1 Tf -35.93 0 TD -0 Tw -(I.V)Tj -/TT6 1 Tf -1.8003 0 TD -0.0633 Tw -(. and)Tj -/TT12 1 Tf --37.7303 -1.2889 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.3022 Tw -(s operand will be substituted for all instances of )Tj -/TT8 1 Tf -24.3777 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.3022 Tw -[( throughout )]TJ -/TT12 1 Tf -6.1699 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.3022 Tw -[( and)]TJ -/TT12 1 Tf --37.7488 -1.2889 TD -0 Tw -(OTHERS)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --3.6006 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.0766 0 TD -(EVALFLG)Tj -/TT6 1 Tf -4.2007 0 TD -0.1567 Tw -[( is )]TJ -/TT8 1 Tf -1.5282 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.6567 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1567 Tw -[( and )]TJ -/TT12 1 Tf -2.5062 0 TD -0 Tw -(OTHERS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1567 Tw -[( are evaluated at translation time, and their values)]TJ --16.5694 -1.2889 TD -0.1489 Tw -[(used as described above. A dummy variable for use in translation that does not clash)]TJ -0 -1.2222 TD -0.19 Tw -(with a dummy variable already used by some other i.s. operators can be obtained by)Tj -T* -0 Tw -(calling )Tj -/TT8 1 Tf -3.3973 0 TD -(\(GETDUMMYVAR\))Tj -/TT6 1 Tf -7.8013 0 TD -(. )Tj -/TT8 1 Tf -0.6922 0 TD -0.4611 Tw -(\(GETDUMMYVAR T\))Tj -/TT6 1 Tf -9.4626 0 TD -0.1922 Tw -[( will return a dummy variable and also)]TJ --21.3534 -1.2889 TD -0 Tw -(insure that it is bound as a )Tj -/TT8 1 Tf -11.9092 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( variable in the translation.)Tj --14.3096 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.4255 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.5056 Tw -[( was previously an i.s.opr and is being redefined, the message )]TJ -/TT8 1 Tf -33.1695 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(NAME)Tj -/TT8 1 Tf --37.5955 -1.2889 TD -(REDEFINED\))Tj -/TT6 1 Tf -6.001 0 TD -0.1967 Tw -[( will be printed \(unless )]TJ -/TT8 1 Tf -11.3935 0 TD -0 Tw -(DFNFLG=T)Tj -/TT6 1 Tf -4.8008 0 TD -0.1967 Tw -(\), and all expressions using the i.s.opr)Tj -/TT12 1 Tf --22.1952 -1.2889 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -( that have been translated will have their translations discarded.)Tj --2.4004 -2.0667 TD -0.0033 Tw -(The following are some examples of how )Tj -/TT8 1 Tf -18.4364 0 TD -0 Tw -(I.S.OPR)Tj -/TT6 1 Tf -4.2007 0 TD -0.0001 Tc -0.0032 Tw -( could be called to define some existing)Tj --22.6371 -1.2889 TD -0 Tc -0 Tw -(i.s.oprs, and create some new ones:)Tj -/TT8 1 Tf -5.1333 -2.1489 TD -[(COLLECT)-1332.6(\(I.S.OPR COLLECT)]TJ -6.8667 -1 TD -(\(SETQ $$VAL \(NCONC1 $$VAL BODY\)\)\))Tj --4.4667 -1.7778 TD -[(SUM)-1333(\(I.S.OPR SUM)]TJ -4.4667 -1 TD -(\(SETQ $$VAL_\(PLUS $$VAL BODY\))Tj -2 -1 TD -(\(FIRST \(SETQ $$VAL0\)\))Tj --7.6667 -1.7778 TD -[(NEVER)-1332.8(\(I.S.OPR NEVER)]TJ -5.6667 -1 TD -(\(if BODY then)Tj -2 -1 TD -(\(SETQ $$VAL NIL\) \(GO $$OUT\)\))Tj -/TT6 1 Tf --3.3333 -1.8444 TD -0.0744 Tw -(Note: )Tj -/TT8 1 Tf -3.081 0 TD -0.1789 Tw -(\(if BODY then \(RETURN NIL\)\))Tj -/TT6 1 Tf -16.9182 0 TD -0.0744 Tw -[( would exit from the)]TJ --19.9992 -1.2889 TD -0.0011 Tw -(i.s. immediately and therefore not execute the operations specified)Tj -0 -1.2222 TD -0 Tw -(via a )Tj -/TT8 1 Tf -2.356 0 TD -(FINALLY)Tj -/TT6 1 Tf -4.2007 0 TD -( \(if any\).)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT16 17 0 R -/TT18 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -66 0 obj -<< -/Length 5504 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-17)Tj -/TT14 1 Tf -10 0 0 10 280.63 612 Tm -(CONDITIONALS AND ITERATIVE STATEMENTS)Tj -/TT8 1 Tf -9 0 0 9 172.2 570.14 Tm -[(THEREIS)-1332.6(\(I.S.OPR THEREIS)]TJ -6.8667 -1 TD -(\(if BODY then)Tj -2 -1 TD -(\(SETQ $$VAL I.V.\) \(GO $$OUT\)\)\))Tj --9.4667 -1.8444 TD -(RCOLLECT)Tj -/TT6 1 Tf -6.1333 0 TD -0.2411 Tw -(To define )Tj -/TT8 1 Tf -4.9158 0 TD -0 Tw -(RCOLLECT)Tj -/TT6 1 Tf -4.8008 0 TD -0.2411 Tw -(, a version of )Tj -/TT8 1 Tf -6.8751 0 TD -0 Tw -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.2411 Tw -[( which uses )]TJ -/TT8 1 Tf -6.1359 0 TD -0 Tw -(CONS)Tj -/TT6 1 Tf --26.9283 -1.2889 TD -(instead of )Tj -/TT8 1 Tf -4.5918 0 TD -(NCONC1)Tj -/TT6 1 Tf -3.6006 0 TD -( and then reverses the list of values:)Tj -/TT8 1 Tf --8.1924 -2 TD -(\(I.S.OPR RCOLLECT)Tj --18.6667 -1 TD -[( )-17599.6(\(FINALLY \(RETURN)]TJ -22 -1 TD -(\(DREVERSE $$VAL\)\)\)])Tj --9.4667 -1.9933 TD -(TCOLLECT)Tj -/TT6 1 Tf -6.1333 0 TD -(To define )Tj -/TT8 1 Tf -4.4336 0 TD -(TCOLLECT)Tj -/TT6 1 Tf -4.8008 0 TD -(, a version of )Tj -/TT8 1 Tf -5.9106 0 TD -(COLLECT)Tj -/TT6 1 Tf -4.2007 0 TD -( which uses )Tj -/TT8 1 Tf -5.4126 0 TD -(TCONC)Tj -/TT6 1 Tf -3.0005 0 TD -(:)Tj -/TT8 1 Tf --27.7588 -2 TD -(\(I.S.OPR TCOLLECT)Tj -1.3333 -1 TD -(\(TCONC $$VAL BODY\))Tj -2 -1 TD -(\(FIRST \(SETQ $$VAL \(CONS\)\))Tj -2 -1 TD -(FINALLY \(RETURN)Tj -2 -1 TD -(\(CAR $$VAL\)\)\)])Tj --12.8667 -1.7778 TD -[(PRODUCT)-1332.6(\(I.S.OPR PRODUCT)]TJ -6.8667 -1 TD -(\(SETQ $$VAL $$VAL*BODY\))Tj --20 -1 TD -[( )-19599.6(\(FIRST \($$VAL 1\)\)])]TJ -14.9333 -1.8444 TD -(UPTO)Tj -/TT6 1 Tf -3.7333 0 TD -0.0467 Tw -(To define )Tj -/TT8 1 Tf -4.5269 0 TD -0 Tw -(UPTO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -(, a version of )Tj -/TT8 1 Tf -6.0973 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0467 Tw -[( whose operand is evaluated only)]TJ --14.2248 -1.2889 TD -0 Tw -(once:)Tj -/TT8 1 Tf -0 -1.9333 TD -(\(I.S.OPR UPTO)Tj -1.3333 -1 TD -(NIL)Tj -T* -(\(BIND $$FOO)Tj -/TT19 1 Tf -7.2012 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(BODY TO $$FOO\)])Tj --12.0547 -1.9933 TD -(TO)Tj -/TT6 1 Tf -2.5333 0 TD -0.4633 Tw -(To redefine )Tj -/TT8 1 Tf -6.2343 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.4633 Tw -[( so that instead of recomputing )]TJ -/TT12 1 Tf -16.782 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.4633 Tw -[( each)]TJ --26.6168 -1.2889 TD -0.0867 Tw -(iteration, a variable is bound to the value of )Tj -/TT12 1 Tf -20.2766 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -(, and then that)Tj --22.677 -1.2889 TD -0 Tw -(variable is used:)Tj -/TT8 1 Tf -0 -1.9333 TD -(\(I.S.OPR TO)Tj -0 -1.2222 TD -( NIL)Tj --18.6667 -1 TD -[( )-19399.9(\(BIND $$END FIRST)]TJ -22 -1 TD -(\(SETQ $$END BODY\))Tj -2 -1 TD -(ORIGINALTO $$END\)])Tj -/TT6 1 Tf --5.3333 -1.8444 TD -0.0922 Tw -(Note the use of )Tj -/TT8 1 Tf -7.323 0 TD -0 Tw -(ORIGINAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0922 Tw -[( to redefine )]TJ -/TT8 1 Tf -5.5477 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0922 Tw -[( in terms of its original)]TJ --18.8716 -1.2889 TD -0.1667 Tw -(definition. )Tj -/TT8 1 Tf -5.4154 0 TD -0 Tw -(ORIGINAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.1667 Tw -[( is intended for use in redefining built-in)]TJ --10.2162 -1.2889 TD -0.05 Tw -(operators, since their definitions are not accessible, and hence not)Tj -0 -1.2222 TD -0.0422 Tw -[(directly modifiable. Thus if the operator had been defined by the)]TJ -T* -0.3989 Tw -(user via )Tj -/TT8 1 Tf -4.5546 0 TD -0 Tw -(I.S.OPR)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.8989 0 TD -(ORIGINAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.3989 Tw -[( would not obtain its original)]TJ --14.455 -1.2889 TD -0.0178 Tw -[(definition. In this case, one presumably would simply modify the)]TJ -0 -1.2222 TD -0 Tw -(i.s.opr definition.)Tj -/TT8 1 Tf --16 -2 TD -(I.S.OPR)Tj -/TT6 1 Tf -4.2007 0 TD -0.0711 Tw -[( can also be used to define synonyms for already defined i.s. operators by calling )]TJ -/TT8 1 Tf -36.9348 0 TD -0 Tw -(I.S.OPR)Tj -/TT6 1 Tf --41.1355 -1.2889 TD -(with )Tj -/TT12 1 Tf -2.3065 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0233 Tw -[( an atom, e.g., )]TJ -/TT8 1 Tf -6.4654 0 TD -0.0556 Tw -(\(I.S.OPR WHERE WHEN\))Tj -/TT6 1 Tf -13.3133 0 TD -0.0233 Tw -[( makes )]TJ -/TT8 1 Tf -3.3885 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0233 Tw -[( be the same as )]TJ -/TT8 1 Tf -6.9956 0 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0233 Tw -[(. Similarly,)]TJ --40.2705 -1.2889 TD -0 Tw -(following )Tj -/TT8 1 Tf -4.76 0 TD -0.5744 Tw -(\(I.S.OPR ISTHERE THEREIS\))Tj -/TT6 1 Tf -17.3515 0 TD -0.24 Tw -(, one can write )Tj -/TT8 1 Tf -7.668 0 TD -0.5744 Tw -(\(ISTHERE ATOM IN Y\))Tj -/TT6 1 Tf -13.1252 0 TD -0.24 Tw -(, and)Tj --42.9047 -1.2889 TD -0 Tw -(following )Tj -/TT8 1 Tf -4.5267 0 TD -0.0156 Tw -(\(I.S.OPR FIND FOR\))Tj -/TT6 1 Tf -12.0331 0 TD -0.0067 Tw -[( and )]TJ -/TT8 1 Tf -2.2062 0 TD -0.0156 Tw -(\(I.S.OPR SUCHTHAT THEREIS\))Tj -/TT6 1 Tf -16.8338 0 TD -0.0067 Tw -(, one can write )Tj -/TT8 1 Tf -6.7347 0 TD -0 Tw -(\(find)Tj --42.3345 -1.2889 TD -0.2989 Tw -(X in Y suchthat X member Z\))Tj -/TT6 1 Tf -17.996 0 TD -0.1244 Tw -[( . In the current system, )]TJ -/TT8 1 Tf -11.7432 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1244 Tw -[( is synonymous with )]TJ -/TT8 1 Tf -9.9475 0 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj -/TT8 1 Tf --45.0875 -1.2889 TD -(SUCHTHAT)Tj -/TT6 1 Tf -4.8008 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(ISTHERE)Tj -/TT6 1 Tf -4.2007 0 TD -( with)Tj -/TT8 1 Tf -2.2832 0 TD -( THEREIS)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(FIND)Tj -/TT6 1 Tf -2.4004 0 TD -( with )Tj -/TT8 1 Tf -2.5332 0 TD -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(THRU)Tj -/TT6 1 Tf -2.4004 0 TD -( with )Tj -/TT8 1 Tf -2.5332 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 16 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -69 0 obj -<< -/Length 2004 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-18)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(If )Tj -/TT12 1 Tf -1.1033 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1833 Tw -[( is the atom )]TJ -/TT8 1 Tf -6.0903 0 TD -0 Tw -(MODIFIER)Tj -/TT6 1 Tf -4.8008 0 TD -0.1833 Tw -(, then )Tj -/TT12 1 Tf -3.0859 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1833 Tw -[( is defined as an i.s.opr which can immediately follow)]TJ --19.881 -1.2889 TD -0.1755 Tw -(another i.s. operator \(i.e., an error will not be generated, as described previously\). )Tj -/TT12 1 Tf -38.9109 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1756 Tw -[( will not)]TJ --41.3113 -1.2889 TD -0.0689 Tw -(terminate the scope of the previous operator, and will be stripped off when )Tj -/TT8 1 Tf -34.3448 0 TD -0 Tw -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.0689 Tw -[( is called on its)]TJ --38.5455 -1.2889 TD -0.0389 Tw -(operand. )Tj -/TT8 1 Tf -4.5416 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0389 Tw -[( is an example of a )]TJ -/TT8 1 Tf -8.6581 0 TD -0 Tw -(MODIFIER)Tj -/TT6 1 Tf -4.8008 0 TD -0.0389 Tw -[( type of operator. The )]TJ -/TT8 1 Tf -10.2866 0 TD -0 Tw -(MODIFIER)Tj -/TT6 1 Tf -4.8008 0 TD -0.0389 Tw -[( feature allows the user)]TJ --34.8882 -1.2889 TD -0.1678 Tw -(to define i.s. operators similar to )Tj -/TT8 1 Tf -15.5272 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1678 Tw -(, for use in conjunction with some other user defined i.s.opr)Tj --17.3275 -1.2889 TD -0 Tw -(which will produce the appropriate translation.)Tj -0 -2 TD -0.0556 Tw -(The file package command )Tj -/TT8 1 Tf -12.3746 0 TD -0 Tw -(I.S.OPRS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0556 Tw -[( \(Chapter 17\) will dump the definition of i.s.oprs. )]TJ -/TT8 1 Tf -22.7475 0 TD -0 Tw -(\(I.S.OPRS)Tj --39.9228 -1.2889 TD -0.3433 Tw -(PRODUCT UPTO\))Tj -/TT6 1 Tf -8.1446 0 TD -0.1433 Tw -[( as a file package command will print suitable expressions so that these iterative)]TJ --8.1446 -1.2889 TD -0 Tw -(statement operators will be \(re\)defined when the file is loaded.)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -72 0 obj -<< -/Length 70 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-19)Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -75 0 obj -<< -/Length 203 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(9-20)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -78 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -79 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -86 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBFCPD+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 87 0 R ->> -endobj -87 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9ʇp֊P%S8-fwfGf?%Z%%PWM1҈ҔjJiJ)HIClQ -PLc ovvSy{}3omxsB#w ȝ;ohQ`r [Q`]Y|/714cEb9QKBH˽olx|+CVRNuPS*;6<0vg> G:wI%% *X܁rMkMOEd\<*QV "@rqcTAw}n.;:_ - -uq=80g@mʿg-Y<8 -qU -q:WA?'s? 8f5$&98`,&Lh9p4d%$Q:6C5F\hp4Cx\3LRԪ%i7k$^Yw; -| :"9s).^Q@ &s8Nq0 ;` 4@q*0S0q~X ~n9d9B!%!CARij@Om0R0&ӑ<AB a-"~ :H$އb CVxJ0? Džlao%9{d0:p-*Wo%'a5߀G*OR1%J܎8W$% -eڼͫYN -A8_ >.tUA3#<]$OI >!c~{b7NςrX11pt89ȗM.aM&ō D-de,l9Tҍc -VD1 hDNH21釩ׂ3dLLpgayp_IH 0@*11dbH?JHxzdz_I$fo:ғUBfd7SO4 _&37: Z}4|/f/r\+$6;HZ~$}RY)Dcf~`bl\bRh2m\n -Wڸ6kl\kS6>mc?qXg66l|Sz'⌸jMF O(F1+SE&ѐU͊!t5sg@K7?_/F\ җ%EcnL552鲚fU<>*%ʣ[ -)h #@1nٵU$4SkWLg6*6OmP-B Mv!.P"m Ń.P4 ?x8Α$;Di*2kM)[$~/]RU)Ck̄LpFkI,[{]BHlj0>wvo-lpW{G;Yb;=ޕqyUQOXj]B&k=aaXOgYU:NVoqu,<8\,J೗ҙ{K(0S榁gP@AۀS]zD,YsWAorm2cgX^Jv[mcxg6b齊O*\=ˣ5x"csZs:m8Cv]-= Pa@?[Cu8vU|-m${&`?ԗ lǟŹgBV8Np-vH§ֵ@CRr DB 5I*kU NG 0-d+hԡۚ ﹳMRDHHh<~ٜ3.\0YXJwX e^& LH}2*$u֑1b{wkY n%i0˰Z[-d4 ~RlB;~/1 sۃ^@F%HV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W wKm7vMj5os>&ue;xyԘɕ_$-k.-&xz]oԽoeEu 5{6g{oe7&:㦥{gQs yʧv%o:a ̚q޷boآ֟:5=3zgc'o^b ;_?nq;osgU3->p1u䑉[juiXy{o<ʰufEa<-۳+9w\.Vݿ``߇eG .puDidˇc6] jqZs7|*~ ۔9\~PIhb#c2a:mE\BqI>1$)Kb;.3д0)bROV$F^NqVKLHL~ "}[Ѫqg4RQQk(iCdYhU^VIʠ{y9Lz{GF*W|+vmZuYAZDUaBFi%['d33/1|H> Ȼl$Eܐߋo-ɪ|O:yJ^!/o?oȯstAor_Qd\o9IYGZKGZwʇCOVJBJ4UіkGFr){Xŕ,XʤZT0R~ԗH?sY jX+VIaC1Z$ѣoM[v4zemA§y';O_e 1oc[˗iiUf ?š!kobo)@nWuԬ%װմ\>WҺ;Y,G2r)}% -ƖCbru,B`UYOkY n 8l,ٴdK ,Y2hQA!i xk9_О}Hoq{'#U|WjPLzwRn+b#8Gޚ8Û6gF&Bju]Դ'ۑfҎ%mHFQ:Ɩ-+fmZ_g+"<5xL(#)i~O~n.u+pFl8 慎X,R1&mɌEfz3 onz:":.f,ҹrWvI7Ɍ뉒^Hfl(dE$H IACxGm| w l$3C8ۊь&j\Bf]$e}#?'e>Ѱ-V/FƠKߺ u/㙺3u<|<<Ҝz4_kYg|oi)M-C;T^'IvF7H)B7ի,hbqrXOS]KOܤM-I;Ӹn^LLӨjo8AGjܵhB=&OaVY;[Vyx{Jʌ_sCqg4214ٳ!MƗ/O,e->׌v )Yb$ _&T?iCfzkoaM -endstream -endobj -88 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -89 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 88 0 R ->> -endobj -32 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 89 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 77 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 0 0 0 0 0 0 556 0 0 0 0 0 0 -0 722 0 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 611 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 78 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 0 0 0 0 0 0 0 333 333 0 606 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 0 0 0 444 -0 778 611 709 0 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 0 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 79 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [600 0 600 0 600 0 0 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 600 600 600 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 0 600 600 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 80 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 600 0 600 0 600 0 -0 600 600 0 0 0 0 0 0 0 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 81 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 105 -/Widths [600 0 0 0 0 0 0 0 0 0 0 600 0 0 600 0 -0 600 600 600 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 0 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 82 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 86 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 83 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 500 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 84 0 R ->> -endobj -21 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 0 500 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 85 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBFCPD+Symbol -/Encoding /Identity-H -/DescendantFonts [ 90 0 R ] -/ToUnicode 91 0 R ->> -endobj -90 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBFCPD+Symbol -/FontDescriptor 86 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -91 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 [dld `xI} v+)}$Nс$x᎔!A~7-FYl88Lܺ5Q.SıCU yI)/]W'[dGCOB9_"(k y~CC% k_lA4 TJU$ivYT-g^izj$[pZq`j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -92 0 obj -<< -/S /D ->> -endobj -93 0 obj -<< -/Nums [0 92 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 18 0 R 23 0 R 26 0 R 29 0 R 33 0 R 36 0 R 39 0 R 42 0 R] -/Count 10 -/Parent 48 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [45 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R 74 0 R] -/Count 10 -/Parent 48 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [11 0 R 49 0 R ] -/Count 20 -/MediaBox [0 0 612 792] ->> -endobj -94 0 obj -<< -/CreationDate (D:20210202102643-06'00') -/ModDate (D:20210202102643-06'00') -/Producer (Apple pstopdf) ->> -endobj -95 0 obj -<< -/Type /Catalog -/Pages 48 0 R -/PageLabels 93 0 R ->> -endobj -xref -0 96 -0000000000 65535 f -0000165848 00000 n -0000000016 00000 n -0000006580 00000 n -0000161653 00000 n -0000161864 00000 n -0000162302 00000 n -0000162858 00000 n -0000163419 00000 n -0000163764 00000 n -0000138643 00000 n -0000167593 00000 n -0000165929 00000 n -0000006733 00000 n -0000014785 00000 n -0000161300 00000 n -0000164144 00000 n -0000164455 00000 n -0000166013 00000 n -0000014976 00000 n -0000025662 00000 n -0000164809 00000 n -0000165211 00000 n -0000166097 00000 n -0000025879 00000 n -0000032465 00000 n -0000166181 00000 n -0000032633 00000 n -0000041792 00000 n -0000166265 00000 n -0000041983 00000 n -0000052453 00000 n -0000161477 00000 n -0000166349 00000 n -0000052655 00000 n -0000060971 00000 n -0000166433 00000 n -0000061188 00000 n -0000068482 00000 n -0000166517 00000 n -0000068697 00000 n -0000074981 00000 n -0000166601 00000 n -0000075209 00000 n -0000082150 00000 n -0000166685 00000 n -0000082367 00000 n -0000090918 00000 n -0000167868 00000 n -0000167730 00000 n -0000166769 00000 n -0000091098 00000 n -0000100583 00000 n -0000166853 00000 n -0000100776 00000 n -0000106847 00000 n -0000166937 00000 n -0000107040 00000 n -0000115141 00000 n -0000167021 00000 n -0000115334 00000 n -0000122554 00000 n -0000167105 00000 n -0000122710 00000 n -0000129930 00000 n -0000167189 00000 n -0000130134 00000 n -0000135691 00000 n -0000167273 00000 n -0000135848 00000 n -0000137905 00000 n -0000167357 00000 n -0000138049 00000 n -0000138170 00000 n -0000167441 00000 n -0000138267 00000 n -0000138522 00000 n -0000138784 00000 n -0000138981 00000 n -0000139187 00000 n -0000139387 00000 n -0000139578 00000 n -0000139780 00000 n -0000139981 00000 n -0000140176 00000 n -0000140381 00000 n -0000140584 00000 n -0000140774 00000 n -0000160882 00000 n -0000161092 00000 n -0000165354 00000 n -0000165557 00000 n -0000167525 00000 n -0000167553 00000 n -0000167960 00000 n -0000168083 00000 n -trailer -<< -/Size 96 -/Root 95 0 R -/Info 94 0 R -/ID [] ->> -startxref -168153 -%%EOF diff --git a/docs/medley-irm/10-FUNC-DEF.pdf b/docs/medley-irm/10-FUNC-DEF.pdf deleted file mode 100644 index df2f7764..00000000 --- a/docs/medley-irm/10-FUNC-DEF.pdf +++ /dev/null @@ -1,11995 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5337 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-1)Tj -/TT4 1 Tf -10 0 0 10 224.45 568.2 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 509.9999 556.54 Tm -( )Tj --48 -2.6667 TD -0.1444 Tw -[(Medley is designed to help you define and debug functions. Developing an applications program)]TJ -0 -1.2222 TD -0.16 Tw -(with Medley involves defining a number of functions in terms of the system primitives and other)Tj -T* -0.1733 Tw -[(user-defined functions. Once defined, your functions may be used exactly like Interlisp primitive)]TJ -T* -0.0767 Tw -(functions, so the programming process can be viewed as extending the Interlisp language to include)Tj -T* -0 Tw -(the required functionality.)Tj -0 -2 TD -0.0511 Tw -(A functions definition specifies if the function has a fixed or variable number of arguments, whether)Tj -0 -1.2222 TD -0.1833 Tw -(these arguments are evaluated or not, the function argument names, and a series of forms which)Tj -T* -0 Tw -(define the behavior of the function. For example:)Tj -/TT8 1 Tf -6 0 0 6 114 436.09 Tm -(\(LAMBDA \(X Y\) \(PRINT X\) \(PRINT Y\)\))Tj -/TT6 1 Tf -9 0 0 9 78 420.54 Tm -0.0778 Tw -(This function has two evaluated arguments, )Tj -/TT8 1 Tf -6 0 0 6 259.326 420.54 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 262.9266 420.54 Tm -0.0778 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 284.0624 420.54 Tm -0 Tw -(Y)Tj -/TT6 1 Tf -9 0 0 9 287.663 420.54 Tm -0.0778 Tw -(, and it will execute )Tj -/TT8 1 Tf -6 0 0 6 370.7523 420.54 Tm -0.1867 Tw -(\(PRINT X\))Tj -/TT6 1 Tf -9 0 0 9 404.2776 420.54 Tm -0.0778 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 425.4135 420.54 Tm -0.1867 Tw -(\(PRINT Y\) )Tj -/TT6 1 Tf -9 0 0 9 463.6593 420.54 Tm -0 Tw -(when)Tj --42.851 -1.2222 TD -(evaluated. Other types of function definitions are described below.)Tj -0 -2 TD -0.0678 Tw -[(A function is defined by putting an expr definition in the function definition cell of a symbol. There)]TJ -0 -1.2222 TD -0.0355 Tw -(are a number of functions for accessing and setting function definition cells, but one usually defines a)Tj -T* -0 Tw -(function with )Tj -/TT8 1 Tf -6 0 0 6 134.1621 369.54 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 159.3662 369.54 Tm -( \(see the Defining Functions section below\). For example:)Tj -/TT9 1 Tf -6 0 0 6 114 357.09 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DEFINEQ \(FOO \(LAMBDA \(X Y\) \(PRINT X\) \(PRINT Y\)\)\)\)\(FOO\))Tj -/TT6 1 Tf -9 0 0 9 78 341.54 Tm -0.1211 Tw -(The expression above will define the function )Tj -/TT8 1 Tf -6 0 0 6 269.049 341.54 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 279.8507 341.54 Tm -0.1211 Tw -[( to have the expr definition )]TJ -/TT8 1 Tf -6 0 0 6 396.2672 341.54 Tm -0.29 Tw -(\(LAMBDA \(X Y\) \(PRINT X\))Tj --53.0445 -1.8333 TD -0 Tw -(\(PRINT Y\)\))Tj -/TT6 1 Tf -9 0 0 9 114.0059 330.54 Tm -(. After being defined, this function may be evaluated just like any system function:)Tj -/TT9 1 Tf -6 0 0 6 114 318.09 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 3 \(IPLUS 3 4\)\))Tj -2.0132 -1 TD -(3)Tj -T* -(7)Tj -T* -(7)Tj -/TT6 1 Tf -9 0 0 9 78 284.54 Tm -0.0767 Tw -[(Not all function definition cells contain expr definitions. The compiler \(see the first page of Chapter)]TJ -0 -1.2222 TD -0.2711 Tw -[(18\) translates expr definitions into compiled code objects, which execute much faster. Interlisp)]TJ -T* -0.0233 Tw -(provides a number of function type functions which determine how a given function is defined, the)Tj -T* -0 Tw -(number and names of function arguments, etc. See the Function Type Functions section below.)Tj -0 -2 TD -0.1489 Tw -(Usually, functions are evaluated automatically when they appear within another function or when)Tj -0 -1.2222 TD -0.0811 Tw -[(typed into Interlisp. However, sometimes it is useful to envoke the Interlisp interpreter explicitly to)]TJ -T* -0.0256 Tw -[(apply a given functional argument to some data. There are a number of functions which will apply)]TJ -T* -0.0544 Tw -[(a given function repeatedly. For example, )]TJ -/TT8 1 Tf -6 0 0 6 251.472 200.54 Tm -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 273.0755 200.54 Tm -0.0544 Tw -[( will apply a function \(or an expr definition\) to all of)]TJ --21.6751 -1.2222 TD -0 Tw -(the elements of a list, and return the values returned by the function:)Tj -/TT9 1 Tf -6 0 0 6 114 177.09 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(MAPCAR \(1 2 3 4 5\) \(LAMBDA \(X\) \(ITIMES X X\)\))Tj -2.0132 -1 TD -(\(1 4 9 16 25\))Tj -/TT6 1 Tf -9 0 0 9 78 155.54 Tm -0.2856 Tw -(When using functional arguments, there are a number of problems which can arise, related to)Tj -0 -1.2222 TD -0.0656 Tw -[(accessing free variables from within a function argument. Many times these problems can be solved)]TJ -T* -0 Tw -(using the function )Tj -/TT8 1 Tf -6 0 0 6 152.7026 133.54 Tm -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 181.5073 133.54 Tm -( to create a )Tj -/TT8 1 Tf -6 0 0 6 226.4634 133.54 Tm -(FUNARG)Tj -/TT6 1 Tf -9 0 0 9 248.0669 133.54 Tm -( object.)Tj --18.8963 -2 TD -0.1811 Tw -(The macro facility provides another way of specifying the behavior of a function \(see the Macros)Tj -0 -1.2222 TD -0.0422 Tw -[(section below\). Macros are very useful when developing code which should run very quickly, which)]TJ -T* -0.2889 Tw -(should be compiled differently than when it is interpreted, or which should run differently in)Tj -0 -1.3644 TD -0 Tw -(different implementations of Interlisp)Tj -/F1 1 Tf -10 0 0 10 228.0117 81.26 Tm -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 8088 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-2)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0 -4.38 TD -(Function Types)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 551.54 Tm -0.0333 Tw -[(Interlisp functions are defined using list expressions called expr definitions. An expr definition is a)]TJ -0 -1.2222 TD -0.0056 Tw -(list of the form )Tj -/TT8 1 Tf -6 0 0 6 186.9939 540.54 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 190.5945 540.54 Tm -0.0133 Tw -(LAMBDA-WORD ARG-LIST FORM)Tj -6 0 0 6 325.84 538.54 Tm -0 Tw -(1)Tj -9 0 0 9 329.44 540.54 Tm -0.0133 Tw -[( ... FORM)]TJ -6 0 0 6 378.28 538.54 Tm -0 Tw -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 385.4806 540.54 Tm -0.0056 Tw -(. )Tj -/TT13 1 Tf -0.7611 0 TD -0 Tw -(LAMBDA-WORD)Tj -/TT6 1 Tf -6.6011 0 TD -0.0056 Tw -[( determines whether)]TJ --36.1934 -1.3944 TD -0.1722 Tw -(the arguments to this function will be evaluated or not. )Tj -/TT13 1 Tf -26.2979 0 TD -0.4144 Tw -[( ARG-LIST)]TJ -/TT6 1 Tf -5.8153 0 TD -0.1722 Tw -[( determines the number and)]TJ --32.1132 -1.2889 TD -0.0167 Tw -(names of arguments. )Tj -/TT13 1 Tf -9.8113 0 TD -0 Tw -(FORM)Tj -6 0 0 6 235.92 514.39 Tm -(1)Tj -9 0 0 9 239.52 516.39 Tm -0.0411 Tw -[( ... FORM)]TJ -6 0 0 6 288.86 514.39 Tm -0 Tw -(N)Tj -/TT6 1 Tf -9 0 0 9 292.46 516.39 Tm -0.0167 Tw -[( are a series of forms to be evaluated after the arguments are)]TJ --18.4956 -1.3944 TD -0 Tw -(bound to the local variables in )Tj -/TT13 1 Tf -13.5972 0 TD -(ARG-LIST)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --18.398 -2.0667 TD -(If)Tj -/TT8 1 Tf -6 0 0 6 132.0293 485.24 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 136.4899 485.24 Tm -(LAMBDA-WORD)Tj -/TT6 1 Tf -6.6011 0 TD -0.06 Tw -[( is the symbol )]TJ -/TT8 1 Tf -6 0 0 6 255.2543 485.24 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 276.8579 485.24 Tm -0.06 Tw -[(, then the arguments to the function are evaluated. If )]TJ -/TT13 1 Tf -24.3787 0 TD -0 Tw -(LAMBDA-)Tj --41.1407 -1.2889 TD -(WORD)Tj -/TT6 1 Tf -2.4004 0 TD -0.1211 Tw -[( is the symbol )]TJ -/TT8 1 Tf -6 0 0 6 209.1583 473.64 Tm -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 234.3624 473.64 Tm -0.1211 Tw -[(, then the arguments to the function are not evaluated. Functions which)]TJ --12.0403 -1.2889 TD -0.0378 Tw -(evaluate or dont evaluate their arguments are therefore known as lambda or nlambda functions,)Tj -0 -1.2222 TD -0 Tw -(respectively.)Tj -0 -2 TD -(If )Tj -/TT13 1 Tf -1.0277 0 TD -(ARG-LIST)Tj -/TT6 1 Tf -4.8008 0 TD -0.1078 Tw -[( is )]TJ -/TT8 1 Tf -6 0 0 6 191.3299 433.04 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 202.1317 433.04 Tm -0.1078 Tw -[( or a list of symbols, this indicates a function with a fixed number of arguments.)]TJ --8.4591 -1.2889 TD -0.07 Tw -[(Each symbol is the name of an argument for the function defined by this expression. The process of)]TJ -0 -1.2222 TD -0.2133 Tw -(binding these symbols to the individual arguments is called spreading the arguments, and the)Tj -0 -1.3644 TD -0.2244 Tw -[(function is called a spread function. If the argument )]TJ -/F1 1 Tf -10 0 0 10 365.6717 398.16 Tm -0.249 Tw -(list is any )Tj -/TT6 1 Tf -9 0 0 9 421.1217 398.16 Tm -0.2244 Tw -(symbol other than )Tj -/TT8 1 Tf -6 0 0 6 502.0733 398.16 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 512.875 398.16 Tm -0.2244 Tw -(, this)Tj --42.9861 -1.2222 TD -0 Tw -(indicates a function with a variable number of arguments, known as a nospread function.)Tj -0 -2 TD -(If )Tj -/TT13 1 Tf -0.9321 0 TD -(ARG-LIST)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[( is anything other than a symbol or a list of symbols, such as )]TJ -/TT8 1 Tf -6 0 0 6 420.4884 369.16 Tm -0.0283 Tw -(\(LAMBDA "FOO" ...\))Tj -/TT6 1 Tf -9 0 0 9 485.6389 369.16 Tm -0.0122 Tw -(, attempting)Tj --39.9599 -1.2889 TD -0.0844 Tw -(to use this expr definition will generate an )Tj -/TT8 1 Tf -6 0 0 6 302.267 357.56 Tm -0.2033 Tw -(Arg not symbol)Tj -/TT15 1 Tf -9 0 0 9 355.1152 357.56 Tm -0 Tw -( )Tj -/TT6 1 Tf -0.8034 0 TD -0.0844 Tw -[(error. In addition, if )]TJ -/TT8 1 Tf -6 0 0 6 449.4927 357.56 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 460.2945 357.56 Tm -0.0844 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 474.7828 357.56 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 478.3834 357.56 Tm -0.0844 Tw -[( is used as an)]TJ --39.1537 -1.2889 TD -0 Tw -(argument name, the error )Tj -/TT8 1 Tf -6 0 0 6 230.5371 345.96 Tm -(Attempt to bind NIL or T)Tj -/TT6 1 Tf -9 0 0 9 316.9512 345.96 Tm -( is generated.)Tj --21.2168 -2 TD -0.0967 Tw -(These two parameters \(lambda/nlambda and spread/nospread\) may be specified independently, so)Tj -0 -1.2222 TD -0.1044 Tw -(there are four nain function types, known as lambda-spread, nlanbda-spread, lanbda-nospread, and)Tj -T* -0.2022 Tw -[(nlambda-nospread functions. Each one has a different form and is used for a different purpose.)]TJ -T* -0 Tw -(These four function types are described more fully below.)Tj -0 -2 TD -0.2067 Tw -(For lambda-spread, lanbda-nospread, or nlambda-spread functions, there is an upper limit to the)Tj -0 -1.2222 TD -0.0489 Tw -(number of arguments that a function can have, based on the number of arguments that can be stored)Tj -T* -0.0211 Tw -[(on the stack on any one function call. Currently, the limit is 80 arguments. If a function is called with)]TJ -T* -0.18 Tw -(more than that many arguments, the error )Tj -/TT8 1 Tf -6 0 0 6 307.382 243.96 Tm -0.4317 Tw -(Too many arguments occurs)Tj -/TT6 1 Tf -9 0 0 9 405.1666 243.96 Tm -0.18 Tw -[(. However, nlambda-nospread)]TJ --31.0185 -1.2222 TD -0.3522 Tw -(functions can be called with an arbitrary number of arguments, since the arguments are not)Tj -0 -1.3644 TD -0 Tw -(individually saved on the )Tj -/F1 1 Tf -10 0 0 10 230.1899 220.68 Tm -(stack. )Tj -/TT4 1 Tf --10.419 -2.234 TD -(Lambda-Spread Functions)Tj -/TT6 1 Tf -9 0 0 9 126 182.68 Tm -0.1644 Tw -[(Lambda-spread functions take a fixed number of evaluated arguments. This is the most common)]TJ -0 -1.2222 TD -0 Tw -(function type. A lambda-spread expr definition has the form:)Tj -/TT8 1 Tf -6 0 0 6 162 157.28 Tm -(\(LAMBDA)Tj -/TT13 1 Tf -9 0 0 9 187.2041 157.28 Tm -( \(ARG)Tj -6 0 0 6 214.2 155.28 Tm -(1)Tj -9 0 0 9 217.8 157.28 Tm -( ... ARG)Tj -6 0 0 6 261 155.28 Tm -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT13 1 Tf -9 0 0 9 271.8011 157.28 Tm -(FORM)Tj -6 0 0 6 293.4 155.28 Tm -(1)Tj -9 0 0 9 297 157.28 Tm -( ... FORM)Tj -6 0 0 6 345.6 155.28 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 126 139.73 Tm -0.12 Tw -(The argument list)Tj -/TT8 1 Tf -6 0 0 6 198.6307 139.73 Tm -0.2883 Tc -0 Tw -( \()Tj -/TT13 1 Tf -9 0 0 9 207.5619 139.73 Tm -0 Tc -(ARG)Tj -6 0 0 6 223.77 137.73 Tm -(1)Tj -9 0 0 9 227.37 139.73 Tm -0.2878 Tw -[( ... ARG)]TJ -6 0 0 6 275.75 137.73 Tm -0 Tw -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT6 1 Tf -9 0 0 9 288.2812 139.73 Tm -0.12 Tw -(is a list of symbols that gives the number and names of the)Tj --18.0312 -1.3944 TD -0.1167 Tw -[(formal arguments to the function. If the argument list is )]TJ -/TT8 1 Tf -6 0 0 6 363.363 127.18 Tm -0.28 Tw -(\( \) )Tj -/TT6 1 Tf -9 0 0 9 381.1253 127.18 Tm -0 Tw -(or )Tj -/TT8 1 Tf -6 0 0 6 392.8936 127.18 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 403.6953 127.18 Tm -0.1167 Tw -(, this indicates that the function)Tj --30.855 -1.2222 TD -0.1044 Tw -[(takes no arguments. When a lambda-spread function is applied to some arguments, the arguments)]TJ -T* -0.1533 Tw -(are evaluated, and bound to the local variables )Tj -/TT13 1 Tf -22.1217 0 TD -0 Tw -(ARG)Tj -6 0 0 6 341.3 103.18 Tm -(1)Tj -9 0 0 9 344.9 105.18 Tm -0.3678 Tw -[( ... ARG)]TJ -6 0 0 6 394.72 103.18 Tm -0 Tw -(M)Tj -/TT6 1 Tf -9 0 0 9 398.32 105.18 Tm -0.1533 Tw -[(. Then, )]TJ -/TT13 1 Tf -3.9659 0 TD -0 Tw -(FORM)Tj -6 0 0 6 455.62 103.18 Tm -(1)Tj -9 0 0 9 459.22 105.18 Tm -0.3678 Tw -[( ... FORM)]TJ -6 0 0 6 514.4399 103.18 Tm -0 Tw -(N)Tj -/TT6 1 Tf -9 0 0 9 518.0399 105.18 Tm -0.1533 Tw -[( are)]TJ --43.56 -1.3944 TD -0 Tw -(evaluated in order, and the value of the function is the value of)Tj -/TT8 1 Tf -6 0 0 6 376.3169 92.63 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 379.9175 92.63 Tm -(FORM)Tj -6 0 0 6 401.52 90.63 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 405.12 92.63 Tm -(.)Tj -/TT9 1 Tf -6 0 0 6 162 78.63 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DEFINEQ \(FOO \(LAMBDA \(X Y\) \(LIST X Y\)\)\)\))Tj -2.0132 -1 TD -(\(FOO\))Tj -/TT9 1 Tf --3 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\))Tj -2.0132 -1 TD -(\(99 7\))Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -19 0 obj -<< -/Length 8210 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-3)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0456 Tw -(In the above example, the function )Tj -/TT8 1 Tf -6 0 0 6 220.3423 569.54 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 231.1441 569.54 Tm -0.0456 Tw -[( defined by )]TJ -/TT8 1 Tf -6 0 0 6 279.5801 569.54 Tm -0.1083 Tw -(\(LAMBDA \(X Y\) \(LIST X Y\)\))Tj -/TT6 1 Tf -9 0 0 9 372.8448 569.54 Tm -0.0456 Tw -[( is applied to the arguments)]TJ -/TT8 1 Tf -6 0 0 6 78 558.54 Tm -0 Tw -(99)Tj -/TT6 1 Tf -9 0 0 9 85.2012 558.54 Tm -0.0644 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 106.097 558.54 Tm -0.1533 Tw -(\(PLUS 3 4\))Tj -/TT6 1 Tf -9 0 0 9 143.9429 558.54 Tm -0.0644 Tw -[(. These arguments are evaluated \(giving )]TJ -/TT8 1 Tf -6 0 0 6 312.0463 558.54 Tm -0 Tw -(99)Tj -/TT6 1 Tf -9 0 0 9 319.2475 558.54 Tm -0.0644 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 340.1433 558.54 Tm -0 Tw -(7)Tj -/TT6 1 Tf -9 0 0 9 343.7439 558.54 Tm -0.0644 Tw -(\), the local variable )Tj -/TT8 1 Tf -6 0 0 6 423.6098 558.54 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 427.2104 558.54 Tm -0.0644 Tw -[( is bound to )]TJ -/TT8 1 Tf -6 0 0 6 478.8678 558.54 Tm -0 Tw -(99)Tj -/TT6 1 Tf -9 0 0 9 78 547.54 Tm -(and )Tj -/TT8 1 Tf -6 0 0 6 95.4858 547.54 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 99.0864 547.54 Tm -( to )Tj -/TT8 1 Tf -6 0 0 6 111.435 547.54 Tm -(7)Tj -/TT6 1 Tf -9 0 0 9 115.0356 547.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 119.5356 547.54 Tm -(\(LIST X Y\))Tj -/TT6 1 Tf -9 0 0 9 155.5415 547.54 Tm -( is evaluated, returning )Tj -/TT8 1 Tf -6 0 0 6 250.2964 547.54 Tm -(\(99 7\))Tj -/TT6 1 Tf -9 0 0 9 271.8999 547.54 Tm -(, and this is returned as the value of the function.)Tj --21.5444 -2 TD -0.02 Tw -(A standard feature of the Interlisp system is that no error occurs if a spread function is called with too)Tj -0 -1.2222 TD -0.0855 Tw -[(many or too few arguments. If a function is called with too many argumnents, the extra arguments)]TJ -T* -0.02 Tw -[(are evaluated but ignored. If a function is called with too few arguments, the unsupplied ones will be)]TJ -T* -0.0067 Tw -(delivered as )Tj -/TT8 1 Tf -6 0 0 6 128.7406 496.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 139.5424 496.54 Tm -0.0067 Tw -[(. In fact, a spread function cannot distinguish between being given )]TJ -/TT8 1 Tf -6 0 0 6 409.0627 496.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 419.8644 496.54 Tm -0.0067 Tw -[( as an argument,)]TJ --37.9849 -1.2222 TD -0.0489 Tw -(and not being given that argument, e.g., )Tj -/TT8 1 Tf -6 0 0 6 242.4076 485.54 Tm -0 Tw -(\(FOO\) )Tj -/TT6 1 Tf -9 0 0 9 264.7212 485.54 Tm -(and )Tj -/TT8 1 Tf -6 0 0 6 282.647 485.54 Tm -0.1183 Tw -(\(FOO NIL\))Tj -/TT6 1 Tf -9 0 0 9 315.7623 485.54 Tm -0.0489 Tw -[( are exactly the same for spread functions.)]TJ --26.418 -1.2222 TD -0.2133 Tw -(If it is necessary to distinguish between these two cases, use an nlambda function and explicitly)Tj -T* -0 Tw -(evaluate the arguments with the )Tj -/TT8 1 Tf -6 0 0 6 208.9395 463.54 Tm -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 223.3418 463.54 Tm -( function.)Tj -/TT4 1 Tf -10 0 0 10 78 441.2 Tm -(Nlambda-Spread Functions)Tj -/TT6 1 Tf -9 0 0 9 78 425.54 Tm -0.0478 Tw -[(Nlambda-spread functions take a fixed number of unevaluated arguments. An nlambda-spread expr)]TJ -T* -0 Tw -(definition has the form:)Tj -/TT8 1 Tf -6 0 0 6 114 398.26 Tm -(\(NLAMBDA)Tj -/TT13 1 Tf -9 0 0 9 142.8047 398.26 Tm -( \(ARG)Tj -6 0 0 6 169.8 396.26 Tm -(1)Tj -9 0 0 9 173.4 398.26 Tm -( ... ARG)Tj -6 0 0 6 216.6 396.26 Tm -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT13 1 Tf -9 0 0 9 223.8006 398.26 Tm -( FORM)Tj -6 0 0 6 250.8 396.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 254.4 398.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 257.18 398.26 Tm -(... FORM)Tj -6 0 0 6 300.38 396.26 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 78 380.71 Tm -0.3933 Tw -(Nlambda-spread functions are evaluated similarly to lanbda-spread functions, except that the)Tj -0 -1.2222 TD -0 Tw -(arguments are not evaluated before being bound to the variables)Tj -/TT13 1 Tf -28.5791 0 TD -( ARG)Tj -6 0 0 6 356.81 367.71 Tm -(1)Tj -9 0 0 9 360.41 369.71 Tm -( ... ARG)Tj -6 0 0 6 403.61 367.71 Tm -(M)Tj -/TT6 1 Tf -9 0 0 9 407.21 369.71 Tm -(.)Tj -/TT9 1 Tf -6 0 0 6 114 355.71 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DEFINEQ \(FOO \(NLAMBDA \(X Y\) \(LIST X Y\)\)\)\))Tj -1.0132 -1 TD -(\(FOO\))Tj -/TT9 1 Tf --2 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\))Tj -1.0132 -1 TD -(\(99 \(PLUS 3 4\)\))Tj -/TT6 1 Tf -9 0 0 9 78 318.16 Tm -0.02 Tw -(In the above example, the function )Tj -/TT8 1 Tf -6 0 0 6 218.9623 318.16 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 229.7641 318.16 Tm -0.02 Tw -[( defined by)]TJ -/TT8 1 Tf -6 0 0 6 275.0801 318.16 Tm -0.0483 Tw -[( \(NLAMBDA \(X Y\) \(LIST X Y\)\))]TJ -/TT6 1 Tf -9 0 0 9 374.0359 318.16 Tm -0.02 Tw -[( is applied to the arguments)]TJ -/TT8 1 Tf -6 0 0 6 78 307.16 Tm -0 Tw -(99)Tj -/TT6 1 Tf -9 0 0 9 85.2012 307.16 Tm -0.0544 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 105.917 307.16 Tm -0.13 Tw -(\(PLUS 3 4\))Tj -/TT6 1 Tf -9 0 0 9 143.4829 307.16 Tm -0.0544 Tw -[(. These arguments are unevaluated to )]TJ -/TT8 1 Tf -6 0 0 6 300.9016 307.16 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 304.5022 307.16 Tm -0.0544 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 325.218 307.16 Tm -0 Tw -(Y)Tj -/TT6 1 Tf -9 0 0 9 328.8186 307.16 Tm -0.0544 Tw -(. )Tj -/TT8 1 Tf -6 0 0 6 336.5486 307.16 Tm -0.13 Tw -[( \(LIST X Y\))]TJ -/TT6 1 Tf -9 0 0 9 378.4951 307.16 Tm -0.0544 Tw -[( is evaluated, returning )]TJ -/TT8 1 Tf -6 0 0 6 475.21 307.16 Tm -0 Tw -(\(99)Tj --66.2017 -1.8333 TD -(\(PLUS 3 4\)\))Tj -/TT6 1 Tf -9 0 0 9 117.6064 296.16 Tm -(, and this is returned as the value of the function.)Tj --4.4007 -2 TD -0.0733 Tw -(Functions can be defined so that all of their arguments are evaluated \(lambda functions\) or none are)Tj -0 -1.2222 TD -0.0711 Tw -[(evaluated \(nlambda functions\). If it is desirable to write a function which only evaluates some of its)]TJ -T* -0.0289 Tw -(arguments \(e.g., )Tj -/TT8 1 Tf -6 0 0 6 144.8159 256.16 Tm -0 Tw -(SETQ)Tj -/TT6 1 Tf -9 0 0 9 159.2182 256.16 Tm -0.0289 Tw -(\), the functions should be defined as an nlambda, with some arguments explicitly)Tj --9.0243 -1.2222 TD -0.0433 Tw -(evaluated using the function )Tj -/TT8 1 Tf -6 0 0 6 195.6987 245.16 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 210.101 245.16 Tm -0.0433 Tw -[(. If this is done, the user should put the symbol )]TJ -/TT8 1 Tf -6 0 0 6 405.9475 245.16 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 420.3499 245.16 Tm -0.0433 Tw -[( on the property)]TJ --38.0389 -1.2222 TD -0.1156 Tw -(list of the function under the property )Tj -/TT8 1 Tf -6 0 0 6 238.3855 234.16 Tm -0 Tw -(INFO)Tj -/TT6 1 Tf -9 0 0 9 252.7878 234.16 Tm -0.1156 Tw -[(. This informs various system packages, such as DWIM,)]TJ --19.4209 -1.2222 TD -0.1056 Tw -(CLISP, and Masterscope, that this function in fact does evaluate its arguments, even though it is an)Tj -T* -0 Tw -(nlambda.)Tj -/TT17 1 Tf -0 -2 TD -(Warning)Tj -/TT6 1 Tf -4 0 TD -0.0167 Tw -[(: A frequent problem that occurs when evaluating arguments to nlambda functions with )]TJ -/TT8 1 Tf -6 0 0 6 471.578 194.16 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 78 183.16 Tm -0.1111 Tw -(is that the form being evaluated may reference variables that are not accessible within the nlambda)Tj -0 -1.2222 TD -0.0878 Tw -[(function. This is usually not a problem when interpreting code, but when the code is compiled, the)]TJ -T* -0.0689 Tw -[(values of local variables may not be accessible on the stack \(see Chapter 18\). The system nlambda)]TJ -T* -0.0667 Tw -(functions that evaluate their arguments \(such as )Tj -/TT8 1 Tf -6 0 0 6 275.6033 150.16 Tm -0 Tw -(SETQ)Tj -/TT6 1 Tf -9 0 0 9 290.0057 150.16 Tm -0.0667 Tw -(\) are expanded in-line by the compiler, so this is)Tj --23.5562 -1.2222 TD -0.1211 Tw -[(not a problem. Using the macro facility is recommended in cases where it is necessary to evaluate)]TJ -T* -0 Tw -(some arguments to an nlambda function.)Tj -/TT4 1 Tf -10 0 0 10 78 105.82 Tm -(Lambda-Nospread Functions)Tj -/TT6 1 Tf -9 0 0 9 78 90.16 Tm -0.1878 Tw -[(Lambda-nospread functions take a variable number of evaluated arguments. A lambda-nospread)]TJ -T* -0 Tw -(expr definition has the form:)Tj -/TT8 1 Tf -6 0 0 6 114 62.88 Tm -(\(LAMBDA)Tj -/TT13 1 Tf -9 0 0 9 139.2041 62.88 Tm -( VAR FORM)Tj -6 0 0 6 187.8 60.88 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 191.4 62.88 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 194.18 62.88 Tm -(... FORM)Tj -6 0 0 6 237.38 60.88 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT17 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -24 0 obj -<< -/Length 7078 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-4)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT13 1 Tf -9 0 0 9 126 569.54 Tm -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1667 Tw -[( may be any symbol, except )]TJ -/TT8 1 Tf -6 0 0 6 263.3203 569.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 274.1221 569.54 Tm -0.1667 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 296.8579 569.54 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 300.4585 569.54 Tm -0.1667 Tw -[(. When a lambda-nospread function is applied to some)]TJ --19.3843 -1.2889 TD -0.1689 Tw -(arguments, each of these arguments is evaluated and the values stored on the stack. )Tj -/TT13 1 Tf -40.0099 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1689 Tw -[( is then)]TJ --41.8102 -1.2889 TD -0.16 Tw -[(bound to the number of arguments which have been evaluated. For example, if )]TJ -/TT8 1 Tf -6 0 0 6 465.2337 546.34 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 476.0355 546.34 Tm -0.16 Tw -[( is defined by)]TJ -/TT8 1 Tf -6 0 0 6 126 535.34 Tm -0.1033 Tw -(\(LAMBDA X ...\))Tj -/TT6 1 Tf -9 0 0 9 177.6482 535.34 Tm -0.0433 Tw -(, when)Tj -/TT8 1 Tf -6 0 0 6 204.8316 535.34 Tm -0.1033 Tw -[( \(FOO A B C\))]TJ -/TT6 1 Tf -9 0 0 9 250.5187 535.34 Tm -0.0433 Tw -[( is evaluated, )]TJ -/TT8 1 Tf -6 0 0 6 306.3083 535.34 Tm -0 Tw -(A)Tj -/TT6 1 Tf -9 0 0 9 309.9089 535.34 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 314.7989 535.34 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 318.3995 535.34 Tm -0.0433 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 341.1653 535.34 Tm -0 Tw -(C)Tj -/TT6 1 Tf -9 0 0 9 344.7659 535.34 Tm -0.0433 Tw -[( are evaluated and )]TJ -/TT8 1 Tf -6 0 0 6 422.114 535.34 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 425.7146 535.34 Tm -0.0433 Tw -[( is bound to )]TJ -/TT8 1 Tf -6 0 0 6 476.612 535.34 Tm -0 Tw -(3)Tj -/TT6 1 Tf -9 0 0 9 480.2126 535.34 Tm -0.0433 Tw -(. )Tj -/TT13 1 Tf -0.8367 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( should)]TJ --41.9939 -1.2889 TD -0 Tw -(never be reset)Tj -0 -2 TD -(The following functions are used for accessing the arguments of lambda-nospread functions.)Tj -/TT8 1 Tf -6 0 0 6 150 486.46 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 486.46 Tm -(ARG)Tj -/F3 1 Tf -10 0 0 10 169.8 486.46 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 172.67 486.46 Tm -(VAR M)Tj -/TT8 1 Tf -6 0 0 6 199.6744 486.46 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 203.275 486.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 486.46 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.07 Tw -(Returns the )Tj -/TT13 1 Tf -5.5043 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.07 Tw -(th argument for the lambda-nospread function whose argument list is )Tj -/TT13 1 Tf -31.845 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT13 1 Tf --39.7497 -1.2889 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1322 Tw -[( is the name of the atomic argument list to a lambda-nospread function, and is not)]TJ --1.8003 -1.2889 TD -0.0356 Tw -(evaluated. )Tj -/TT13 1 Tf -5.1751 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.0356 Tw -[( is the number of the desired argument, and is evaluated. The value of )]TJ -/TT8 1 Tf -6 0 0 6 514.0923 446.66 Tm -0 Tw -(ARG)Tj -/TT6 1 Tf -9 0 0 9 524.8941 446.66 Tm -0.0356 Tw -[( is)]TJ --38.9882 -1.2889 TD -0 Tw -(undefined for )Tj -/TT13 1 Tf -6.3447 0 TD -(M)Tj -/TT6 1 Tf -0.6001 0 TD -( less than or equal to 0 or greater than the value of )Tj -/TT13 1 Tf -22.3696 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -6 0 0 6 150 415.18 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 415.18 Tm -(SETARG)Tj -/F3 1 Tf -10 0 0 10 186 415.18 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 188.87 415.18 Tm -(VAR M X)Tj -/TT8 1 Tf -6 0 0 6 226.6761 415.18 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 230.2767 415.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 415.18 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.0422 Tw -(Sets the )Tj -/TT13 1 Tf -3.7256 0 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -(th argument for the lambda-nospread function whose argument list is )Tj -/TT13 1 Tf -31.5672 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -[( to )]TJ -/TT13 1 Tf -1.4565 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT13 1 Tf --39.7498 -1.2889 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is not evaluated; )Tj -/TT13 1 Tf -8.023 0 TD -(M)Tj -/TT6 1 Tf -0.6001 0 TD -( and )Tj -/TT13 1 Tf -2.1929 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( are evaluated. )Tj -/TT13 1 Tf -6.978 0 TD -(M)Tj -/TT6 1 Tf -0.6001 0 TD -( should be between 1 and the value of )Tj -/TT13 1 Tf -16.9683 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --44.8963 -2.0667 TD -0.1367 Tw -(In the example below, the function )Tj -/TT8 1 Tf -6 0 0 6 273.8028 368.38 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 284.6046 368.38 Tm -0.1367 Tw -[( is defined to collect and return a list of all of the evaluated)]TJ --17.6227 -1.2222 TD -0 Tw -(arguments it is given \(the value of the for statement\).)Tj -/TT9 1 Tf -6 0 0 6 162 344.93 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DEFINEQ \(FOO )Tj --0.9868 -1 TD -( \(LAMBDA X \(for ARGNUM from 1 to X collect \(ARG X ARGNUM\)])Tj -2 -1 TD -(\(FOO\))Tj -/TT9 1 Tf --2 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\))Tj -1.0132 -1 TD -(\(99 7\))Tj -/TT9 1 Tf --2 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\(TIMES 3 4\)\)\))Tj -1.0132 -1 TD -(\(99 7 12\))Tj -/TT4 1 Tf -10 0 0 10 126 281.04 Tm -(NLambda-Nospread Functions)Tj -/TT6 1 Tf -9 0 0 9 126 265.38 Tm -0.3044 Tw -[(Nlambda-nospread functions take a variable number of unevaluated arguments. An nlambda-)]TJ -0 -1.2222 TD -0 Tw -(nospread expr definition has the form:)Tj -/TT8 1 Tf -6 0 0 6 162 239.98 Tm -(\(NLAMBDA)Tj -/TT13 1 Tf -9 0 0 9 190.8047 239.98 Tm -( VAR FORM)Tj -6 0 0 6 239.4 237.98 Tm -(1)Tj -9 0 0 9 243 239.98 Tm -( ... FORM)Tj -6 0 0 6 291.6 237.98 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT13 1 Tf -9 0 0 9 126 222.43 Tm -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2978 Tw -[( may be any symbol, except )]TJ -/TT8 1 Tf -6 0 0 6 270.4003 222.43 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 281.2021 222.43 Tm -0.2978 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 306.2979 222.43 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 309.8985 222.43 Tm -0.2978 Tw -[(. Though similar in form to lambda-nospread expr)]TJ --20.4332 -1.2889 TD -0.0022 Tw -(definitions, an nlambda-nospread is evaluated quite differently. When an nlambda-nospread function)Tj -0 -1.2222 TD -0.0556 Tw -(is applied to some arguments, )Tj -/TT13 1 Tf -13.8183 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -[( is simply bound to a list of the unevaluated arguments. The user)]TJ --15.6186 -1.2889 TD -0 Tw -(may pick apart this list, and evaluate different arguments.)Tj -0 -2 TD -0.2911 Tw -(In the example below, )Tj -/TT8 1 Tf -6 0 0 6 226.5547 170.23 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 237.3564 170.23 Tm -0.2911 Tw -[( is defined to return the reverse of the list of arguments it is given)]TJ --12.3729 -1.2222 TD -0 Tw -(\(unevaluated\):)Tj -/TT9 1 Tf -6 0 0 6 162 146.78 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(DEFINEQ \(FOO \(NLAMBDA X \(REVERSE X\)\)\)\) )Tj -1.0132 -1 TD -(\(FOO\))Tj -/TT9 1 Tf --2 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\))Tj -1.0132 -1 TD -(\(\(PLUS 3 4\) 99\))Tj -/TT9 1 Tf --2 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(FOO 99 \(PLUS 3 4\)\(TIMES 3 4\)\))Tj -1.0132 -1 TD -(\(TIMES 3 4\)\(PLUS 3 4\) 99\))Tj -/TT6 1 Tf -9 0 0 9 126 93.23 Tm -0.1878 Tw -(The warning about evaluating arguments to nlambda functions also applies to nlambda-nospread)Tj -0 -1.2222 TD -0 Tw -(function. )Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 26 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -28 0 obj -<< -/Length 10310 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-5)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT4 1 Tf --14.43 -4.38 TD -(Compiled Functions)Tj -/TT6 1 Tf -9 0 0 9 78 552.54 Tm -0.0189 Tw -[(Functions defined by expr definitions can be compiled by the Interlisp compiler \(see Chapter 18\). The)]TJ -0 -1.2222 TD -0.12 Tw -(compiler produces compiled code objects \(of data type )Tj -/TT8 1 Tf -6 0 0 6 306.0106 541.54 Tm -0 Tw -(CCODEP)Tj -/TT6 1 Tf -9 0 0 9 327.6141 541.54 Tm -0.12 Tw -(\) which execute more quickly than the)Tj --27.7349 -1.2222 TD -0.0644 Tw -[(corresponding expr definition code. Functions defined by compiled code objects may have the same)]TJ -T* -0.3433 Tw -[(four types as expr definitions \(lambda/nlambda, spread/nospread\). Functions created by the)]TJ -T* -0 Tw -(compiler are referred to as compiled functions.)Tj -/TT4 1 Tf -10 0 0 10 78 486.2 Tm -(Function Type Functions)Tj -/TT6 1 Tf -9 0 0 9 78 470.54 Tm -0.0956 Tw -[(There are a variety of functions used for examining the type, argument list, etc. of functions. These)]TJ -T* -0.1 Tw -[(functions may be given either a symbol \(in which case they obtain the function definition from the)]TJ -T* -0 Tw -(definition cell\), or a function definition itself.)Tj -/TT8 1 Tf -6 0 0 6 102 429.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 429.26 Tm -(FNTYP)Tj -/F3 1 Tf -10 0 0 10 132.6 429.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 135.47 429.26 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 146.2717 429.26 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 149.8723 429.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 429.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -6 0 0 6 159.6434 412.66 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 170.4452 412.66 Tm -0.0111 Tw -[( if )]TJ -/TT13 1 Tf -1.1462 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0111 Tw -[( is not a function definition or the name of a defined function. Otherwise,)]TJ -/TT8 1 Tf -6 0 0 6 126 401.06 Tm -0 Tw -(FNTYP)Tj -/TT6 1 Tf -9 0 0 9 144.0029 401.06 Tm -( returns one of the following symbols, depending on the type of function definition.)Tj -/TT8 1 Tf -6 0 0 6 183.6 388.06 Tm -(EXPR)Tj -/TT6 1 Tf -9 0 0 9 204 388.06 Tm -(Lambda-spread expr definition)Tj -/TT8 1 Tf -6 0 0 6 180 375.34 Tm -(CEXPR)Tj -/TT6 1 Tf -9 0 0 9 204 375.34 Tm -(Lambda-spread compiled definition)Tj -/TT8 1 Tf -6 0 0 6 180 362.34 Tm -(FEXPR)Tj -/TT6 1 Tf -9 0 0 9 204 362.34 Tm -(Nlambda-spread expr definition)Tj -/TT8 1 Tf -6 0 0 6 176.4 349.34 Tm -(CFEXPR)Tj -/TT6 1 Tf -9 0 0 9 204 349.34 Tm -(Nlambda-spread compiled definition)Tj -/TT8 1 Tf -6 0 0 6 180 336.62 Tm -(EXPR*)Tj -/TT6 1 Tf -9 0 0 9 204 336.62 Tm -(Lambda-nospread expr definition)Tj -/TT8 1 Tf -6 0 0 6 176.4 323.9 Tm -(CEXPR*)Tj -/TT6 1 Tf -9 0 0 9 204 323.9 Tm -(Lambda-nospread compiled definition)Tj -/TT8 1 Tf -6 0 0 6 176.4 311.18 Tm -(FEXPR*)Tj -/TT6 1 Tf -9 0 0 9 204 311.18 Tm -(Nlambda-nospread expr definition)Tj -/TT8 1 Tf -6 0 0 6 172.8 298.46 Tm -(CFEXPR*)Tj -/TT6 1 Tf -9 0 0 9 204 298.46 Tm -(Nlambda-nospread compiled definition)Tj -/TT8 1 Tf -6 0 0 6 176.4 285.74 Tm -[(FUNARG)-999.4(FNTYP)]TJ -/TT6 1 Tf -9 0 0 9 222 283.74 Tm -( )Tj -0.25 0.2222 TD -(returns the symbol)Tj -8.3456 -0.2222 TD -( )Tj -/TT8 1 Tf -6 0 0 6 301.61 285.74 Tm -(FUNARG)Tj -/TT6 1 Tf -9 0 0 9 323.21 283.74 Tm -( )Tj -0.25 0.2222 TD -(if)Tj -0.6244 -0.2222 TD -( )Tj -/TT13 1 Tf -0.25 0.2222 TD -(FN)Tj -/TT6 1 Tf -1.2 -0.2222 TD -( )Tj -0.25 0.2222 TD -(is a)Tj -1.4656 -0.2222 TD -( )Tj -/TT8 1 Tf -6 0 0 6 361.82 285.74 Tm -(FUNARG)Tj -/TT6 1 Tf -9 0 0 9 383.42 283.74 Tm -( )Tj -0.25 0.2222 TD -(expression.)Tj -/TT8 1 Tf -6 0 0 6 126 267.74 Tm -(EXP)Tj -/TT6 1 Tf -9 0 0 9 136.8017 267.74 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 142.1917 267.74 Tm -(FEXPR)Tj -/TT6 1 Tf -9 0 0 9 160.1947 267.74 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 165.5847 267.74 Tm -(EXPR*,)Tj -/TT6 1 Tf -9 0 0 9 187.1882 267.74 Tm -0.0989 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 208.704 267.74 Tm -0 Tw -(FEXPR*)Tj -/TT6 1 Tf -9 0 0 9 230.3075 267.74 Tm -0.0989 Tw -[( indicate that )]TJ -/TT13 1 Tf -6.305 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0989 Tw -[( is defined by an expr definition. )]TJ -/TT8 1 Tf -6 0 0 6 438.7611 267.74 Tm -0 Tw -(CEXPR)Tj -/TT6 1 Tf -9 0 0 9 456.764 267.74 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 462.1541 267.74 Tm -(CFEXPR)Tj -/TT6 1 Tf -9 0 0 9 483.7576 267.74 Tm -(,)Tj -/TT8 1 Tf -6 0 0 6 126 256.14 Tm -(CEXPR*)Tj -/TT6 1 Tf -9 0 0 9 147.6035 256.14 Tm -0.0433 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 170.3693 256.14 Tm -0 Tw -(CFEXPR*)Tj -/TT6 1 Tf -9 0 0 9 195.5734 256.14 Tm -0.0433 Tw -[( indicate that )]TJ -/TT13 1 Tf -6.1383 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0433 Tw -[( is defined by a compiled definition, as indicated by the)]TJ --15.0689 -1.2889 TD -0 Tw -(prefix )Tj -/TT8 1 Tf -6 0 0 6 152.8771 244.54 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 156.4777 244.54 Tm -0.1211 Tw -[(. The suffix )]TJ -/TT8 1 Tf -6 0 0 6 209.6521 244.54 Tm -0 Tw -(*)Tj -/TT6 1 Tf -9 0 0 9 213.2527 244.54 Tm -0.1211 Tw -[( indicates that )]TJ -/TT13 1 Tf -6.7955 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1211 Tw -[( has an indefinite number of arguments, i.e., is a)]TJ --17.6904 -1.2889 TD -0.0789 Tw -[(nospread function. The prefix)]TJ -/TT8 1 Tf -6 0 0 6 249.2941 232.94 Tm -0.19 Tc -0 Tw -( F)Tj -/TT6 1 Tf -9 0 0 9 257.6353 232.94 Tm -0 Tc -0.0789 Tw -[( indicates unevaluated arguments. Thus, for example, a)]TJ -/TT8 1 Tf -6 0 0 6 126 221.94 Tm -0 Tw -(CFEXPR*)Tj -/TT6 1 Tf -9 0 0 9 151.2041 221.94 Tm -( is a compiled nospread nlambda function.)Tj -/TT8 1 Tf -6 0 0 6 102 202.66 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 202.66 Tm -(EXPRP)Tj -/F3 1 Tf -10 0 0 10 132.6 202.66 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 135.47 202.66 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 146.2717 202.66 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 149.8723 202.66 Tm -[( )-28242.8([Function])]TJ -/TT6 1 Tf -9 0 0 9 126 186.06 Tm -(Returns )Tj -/TT8 1 Tf -6 0 0 6 159.7034 186.06 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 163.304 186.06 Tm -0.0178 Tc -( i)Tj -/TT8 1 Tf -6 0 0 6 168.3332 186.06 Tm -0 Tc -(f)Tj -/TT6 1 Tf -9 0 0 9 171.9338 186.06 Tm -( )Tj -/TT8 1 Tf -6 0 0 6 174.3438 186.06 Tm -(\(FNTYP)Tj -/TT15 1 Tf -9 0 0 9 195.9473 186.06 Tm -( )Tj -/TT13 1 Tf -0.6423 0 TD -(FN)Tj -/TT8 1 Tf -6 0 0 6 212.5299 186.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 216.1305 186.06 Tm -0.0178 Tw -[( is )]TJ -/TT8 1 Tf -6 0 0 6 227.3841 186.06 Tm -0 Tw -(EXPR)Tj -/TT6 1 Tf -9 0 0 9 241.7864 186.06 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 246.4464 186.06 Tm -(FEXPR)Tj -/TT6 1 Tf -9 0 0 9 264.4494 186.06 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 269.1094 186.06 Tm -(EXPR*,)Tj -/TT6 1 Tf -9 0 0 9 290.7129 186.06 Tm -0.0178 Tw -[( or)]TJ -/TT8 1 Tf -6 0 0 6 301.5912 186.06 Tm -0.0417 Tw -[( FEXPR*)]TJ -/TT6 1 Tf -9 0 0 9 327.0453 186.06 Tm -0.0178 Tw -(; )Tj -/TT8 1 Tf -6 0 0 6 334.1153 186.06 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 344.917 186.06 Tm -0.0178 Tw -[( otherwise. However, )]TJ -/TT8 1 Tf -6 0 0 6 435.4296 186.06 Tm -0 Tw -(\(EXPRP)Tj -/TT15 1 Tf -9 0 0 9 457.0331 186.06 Tm -( )Tj -/TT13 1 Tf -0.6423 0 TD -(FN)Tj -/TT8 1 Tf -6 0 0 6 473.6157 186.06 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 477.2163 186.06 Tm -0.0178 Tw -[( is)]TJ --39.024 -1.2889 TD -0.0822 Tw -(also true if )Tj -/TT13 1 Tf -5.1847 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0822 Tw -[( is \(has\) a list definition, even if it does not begin with )]TJ -/TT8 1 Tf -6 0 0 6 408.2311 174.46 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 429.8346 174.46 Tm -0.0822 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 444.2829 174.46 Tm -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 469.487 174.46 Tm -0.0822 Tw -[(. In)]TJ --38.1652 -1.2889 TD -0 Tw -(other words, )Tj -/TT8 1 Tf -6 0 0 6 178.9892 162.86 Tm -(EXPRP)Tj -/TT6 1 Tf -9 0 0 9 196.9922 162.86 Tm -( is not quite as selective as )Tj -/TT8 1 Tf -6 0 0 6 303.2256 162.86 Tm -(FNTYP)Tj -/TT6 1 Tf -9 0 0 9 321.2285 162.86 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 143.58 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 143.58 Tm -(CCODEP)Tj -/F3 1 Tf -10 0 0 10 138 143.58 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 140.87 143.58 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 151.6717 143.58 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 155.2723 143.58 Tm -[( )-27702.8([Function])]TJ -/TT6 1 Tf -9 0 0 9 126 126.98 Tm -(Returns )Tj -/TT8 1 Tf -6 0 0 6 159.5434 126.98 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 163.144 126.98 Tm -( if )Tj -/TT8 1 Tf -6 0 0 6 173.2602 126.98 Tm -(\(FNTYP )Tj -/TT13 1 Tf -9 0 0 9 198.4643 126.98 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 209.2661 126.98 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 212.8667 126.98 Tm -( is either )Tj -/TT8 1 Tf -6 0 0 6 249.0205 126.98 Tm -(CEXPR)Tj -/TT6 1 Tf -9 0 0 9 267.0234 126.98 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 271.5234 126.98 Tm -(CFEXPR)Tj -/TT6 1 Tf -9 0 0 9 293.127 126.98 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 297.627 126.98 Tm -(CEXPR*)Tj -/TT6 1 Tf -9 0 0 9 319.2305 126.98 Tm -(, or )Tj -/TT8 1 Tf -6 0 0 6 334.4487 126.98 Tm -(CFEXPR*)Tj -/TT6 1 Tf -9 0 0 9 359.6528 126.98 Tm -(; )Tj -/TT8 1 Tf -6 0 0 6 366.4028 126.98 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 377.2046 126.98 Tm -( otherwise. )Tj -/TT8 1 Tf -6 0 0 6 102 107.1 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 107.1 Tm -(ARGTYPE)Tj -/F3 1 Tf -10 0 0 10 143.4 107.1 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 146.27 107.1 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 157.0717 107.1 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 160.6723 107.1 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 107.1 Tm -([Function])Tj -/TT13 1 Tf --35.4033 -1.8444 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0178 Tw -[( is the name of a function or its definition. )]TJ -/TT8 1 Tf -6 0 0 6 309.0739 90.5 Tm -0 Tw -(ARGTYPE)Tj -/TT6 1 Tf -9 0 0 9 334.278 90.5 Tm -0.0178 Tw -[( returns )]TJ -/TT8 1 Tf -6 0 0 6 367.935 90.5 Tm -0 Tw -(0)Tj -/TT6 1 Tf -9 0 0 9 371.5356 90.5 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 376.1956 90.5 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 379.7961 90.5 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 384.4561 90.5 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 388.0567 90.5 Tm -0.0178 Tw -(, or )Tj -/TT8 1 Tf -6 0 0 6 403.595 90.5 Tm -0 Tw -(3)Tj -/TT6 1 Tf -9 0 0 9 407.1956 90.5 Tm -0.0178 Tw -(, or )Tj -/TT8 1 Tf -6 0 0 6 422.7338 90.5 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 433.5356 90.5 Tm -0.0178 Tw -[( if )]TJ -/TT13 1 Tf -1.1596 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0178 Tw -[( is not a)]TJ --36.5304 -1.2889 TD -0.05 Tw -[(function. )]TJ -/TT8 1 Tf -6 0 0 6 169.7133 78.9 Tm -0 Tw -(ARGTYPE)Tj -/TT6 1 Tf -9 0 0 9 194.9174 78.9 Tm -0.05 Tw -[( corresponds to the rows of )]TJ -/TT8 1 Tf -6 0 0 6 308.1662 78.9 Tm -0 Tw -(FNTYP)Tj -/TT6 1 Tf -9 0 0 9 326.1691 78.9 Tm -0.05 Tw -[(s. The interpretation of this value is as)]TJ --22.241 -1.2222 TD -0 Tw -(follows:)Tj -/TT8 1 Tf -6 0 0 6 176.4 53.62 Tm -(0)Tj -/TT6 1 Tf -9 0 0 9 186 53.62 Tm -(Lambda-spread function )Tj -/TT8 1 Tf -6 0 0 6 286.8677 53.62 Tm -(\(EXPR, CEXPR\))Tj --18.4113 -2.0467 TD -(1)Tj -/TT6 1 Tf -9 0 0 9 186 41.34 Tm -(Nlambda-spread function \()Tj -/TT8 1 Tf -6 0 0 6 294.4658 41.34 Tm -(FEXPR, CFEXPR\))Tj -/TT6 1 Tf -9 0 0 9 344.874 41.34 Tm -( )Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 26 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -31 0 obj -<< -/Length 10618 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-6)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -6 0 0 6 224.4 568.26 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 234 568.26 Tm -(Lambda-nospread function )Tj -/TT8 1 Tf -6 0 0 6 345.019 568.26 Tm -(\(EXPR*, CEXPR*\))Tj --20.1032 -2.0467 TD -(3)Tj -/TT6 1 Tf -9 0 0 9 234 555.98 Tm -(Nlambda-nospread function )Tj -/TT8 1 Tf -6 0 0 6 349.6201 555.98 Tm -(\(FEXPR*, CFEXPR*\))Tj --33.27 -2.88 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 538.7 Tm -(NARGS)Tj -/F3 1 Tf -10 0 0 10 180.6 538.7 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 183.47 538.7 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 194.2717 538.7 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 197.8723 538.7 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 538.7 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0433 Tw -(Returns the number of arguments of )Tj -/TT13 1 Tf -16.6252 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0433 Tw -(, or )Tj -/TT8 1 Tf -6 0 0 6 350.4271 522.1 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 361.2289 522.1 Tm -0.0433 Tw -[( if )]TJ -/TT13 1 Tf -1.2107 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0433 Tw -[( is not a function. If )]TJ -/TT13 1 Tf -9.3492 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0433 Tw -[( is a nospread)]TJ --33.7635 -1.2889 TD -0 Tw -(function, the value of )Tj -/TT8 1 Tf -6 0 0 6 260.9502 510.5 Tm -(NARGS)Tj -/TT6 1 Tf -9 0 0 9 278.9531 510.5 Tm -( is )Tj -/TT8 1 Tf -6 0 0 6 289.8867 510.5 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 293.4873 510.5 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 491.22 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 491.22 Tm -(ARGLIST)Tj -/F3 1 Tf -10 0 0 10 191.4 491.22 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 194.27 491.22 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 205.0717 491.22 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 208.6723 491.22 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 491.22 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2867 Tw -(Returns the argument list for )Tj -/TT13 1 Tf -15.4778 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2867 Tw -[(. Note that the argument list is a symbol for)]TJ --16.678 -1.2889 TD -0.0789 Tw -[(nospread functions. Since )]TJ -/TT8 1 Tf -6 0 0 6 283.3942 463.02 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 294.196 463.02 Tm -0.0789 Tw -[( is a possible value for )]TJ -/TT8 1 Tf -6 0 0 6 388.7768 463.02 Tm -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 413.9809 463.02 Tm -0.0789 Tw -(, the error )Tj -/TT8 1 Tf -6 0 0 6 457.4854 463.02 Tm -0.19 Tw -(Args not available)Tj -/TT6 1 Tf -9 0 0 9 524.5759 463.02 Tm -0.0789 Tw -[( is)]TJ --38.9529 -1.2222 TD -0 Tw -(generated if )Tj -/TT13 1 Tf -5.5312 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( is not a function.)Tj --6.7314 -2.0667 TD -(If )Tj -/TT13 1 Tf -1.1299 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.21 Tw -[( is a compiled function, the argument list is constructed, i.e., each call to )]TJ -/TT8 1 Tf -6 0 0 6 508.7851 433.42 Tm -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 174 421.82 Tm -0.01 Tw -[(requires making a new list. For functions defined by expr definitions, lists beginning with)]TJ -/TT8 1 Tf -6 0 0 6 174 410.82 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 195.6035 410.82 Tm -0.0689 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 209.8118 410.82 Tm -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 235.0159 410.82 Tm -0.0689 Tw -(, the argument list is simply )Tj -/TT8 1 Tf -6 0 0 6 351.7237 410.82 Tm -0 Tw -(CADR)Tj -/TT6 1 Tf -9 0 0 9 366.126 410.82 Tm -0.0689 Tw -[( of )]TJ -/TT8 1 Tf -6 0 0 6 379.7762 410.82 Tm -0 Tw -(GETD)Tj -/TT6 1 Tf -9 0 0 9 394.1785 410.82 Tm -0.0689 Tw -[(. If )]TJ -/TT13 1 Tf -1.8766 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0689 Tw -[( has an expr definition, and)]TJ -/TT8 1 Tf -6 0 0 6 174 399.22 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 184.8017 399.22 Tm -0.0256 Tw -[( of the definition is not )]TJ -/TT8 1 Tf -6 0 0 6 278.5855 399.22 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 300.1891 399.22 Tm -0.0256 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 313.6173 399.22 Tm -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 338.8214 399.22 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 343.5514 399.22 Tm -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 368.7555 399.22 Tm -0.0256 Tw -[( will check to see if )]TJ -/TT8 1 Tf -6 0 0 6 447.4442 399.22 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 458.2459 399.22 Tm -0.0256 Tw -[( of the definition is)]TJ --31.5829 -1.2222 TD -0.0556 Tw -(a member of )Tj -/TT8 1 Tf -6 0 0 6 227.707 388.22 Tm -0 Tw -(LAMBDASPLST)Tj -/TT6 1 Tf -9 0 0 9 267.3135 388.22 Tm -0.0556 Tw -[( \(see Chapter 20\). If it is, )]TJ -/TT8 1 Tf -6 0 0 6 371.5923 388.22 Tm -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 396.7964 388.22 Tm -0.0556 Tw -[( presumes this is a function object)]TJ --24.7552 -1.2222 TD -0.2756 Tw -(the user is defining via )Tj -/TT8 1 Tf -6 0 0 6 279.4059 377.22 Tm -0 Tw -(DWIMUSERFORMS)Tj -/TT6 1 Tf -9 0 0 9 326.2135 377.22 Tm -0.2756 Tw -(, and simply returns )Tj -/TT8 1 Tf -6 0 0 6 418.8693 377.22 Tm -0 Tw -(CADR)Tj -/TT6 1 Tf -9 0 0 9 433.2717 377.22 Tm -0.2756 Tw -[( of the definition as its)]TJ --28.808 -1.2222 TD -0 Tw -(argument list. Otherwise )Tj -/TT8 1 Tf -6 0 0 6 277.522 366.22 Tm -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 302.7261 366.22 Tm -( generates an error as described above.)Tj -/TT8 1 Tf -6 0 0 6 150 346.94 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 346.94 Tm -(SMARTARGLIST)Tj -/F3 1 Tf -10 0 0 10 218.4 346.94 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 221.27 346.94 Tm -(FN EXPLAINFLG TAIL)Tj -/TT8 1 Tf -6 0 0 6 318.4858 346.94 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 322.0864 346.94 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 346.94 Tm -([Function])Tj --35.4033 -1.8444 TD -(A smart version of )Tj -/TT8 1 Tf -6 0 0 6 259.1968 330.34 Tm -(ARGLIST)Tj -/TT6 1 Tf -9 0 0 9 284.4009 330.34 Tm -( that tries various strategies to get the arglist of )Tj -/TT13 1 Tf -20.9561 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --34.423 -2.0667 TD -(First )Tj -/TT8 1 Tf -6 0 0 6 195.5697 311.74 Tm -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 238.7767 311.74 Tm -0.1544 Tw -[( checks the property list of )]TJ -/TT13 1 Tf -12.8529 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1544 Tw -[( under the property )]TJ -/TT8 1 Tf -6 0 0 6 451.4238 311.74 Tm -0 Tw -(ARGNAMES)Tj -/TT6 1 Tf -9 0 0 9 480.2285 311.74 Tm -0.1544 Tw -[(. For spread)]TJ --34.0254 -1.2889 TD -0.2411 Tw -[(functions, the argument list itself is stored. For nospread functions, the form is \()]TJ -/TT8 1 Tf -6 0 0 6 523.1725 300.14 Tm -0 Tw -(NIL)Tj --58.1954 -1.8333 TD -(ARGLIST)Tj -4.2 -0.3333 TD -(1)Tj -/TT19 1 Tf -9 0 0 9 202.8 286.14 Tm -( )Tj -0.2611 0.3333 TD -(. )Tj -/TT8 1 Tf -6 0 0 6 209.75 289.14 Tm -(ARGLIST)Tj -4.2 -0.3333 TD -(2)Tj -/TT6 1 Tf -9 0 0 9 238.55 289.14 Tm -0.0111 Tw -(\), where )Tj -/TT8 1 Tf -6 0 0 6 273.4184 289.14 Tm -0 Tw -(ARGLIST)Tj -4.2019 -0.3333 TD -(1)Tj -/TT6 1 Tf -9 0 0 9 302.23 289.14 Tm -0.0111 Tw -[( is the value )]TJ -/TT8 1 Tf -6 0 0 6 352.4904 289.14 Tm -0 Tw -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 395.6974 289.14 Tm -0.0111 Tw -[( should return when )]TJ -/TT13 1 Tf -9.3584 0 TD -0 Tw -(EXPLAINFLG)Tj -/TT6 1 Tf --33.9915 -1.5556 TD -(= )Tj -/TT8 1 Tf -6 0 0 6 184.1336 275.14 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 187.7342 275.14 Tm -0.27 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 214.58 275.14 Tm -0 Tw -(ARGLIST)Tj -4.2 -0.3333 TD -(2)Tj -/TT6 1 Tf -9 0 0 9 243.38 275.14 Tm -0.27 Tw -[( the value when )]TJ -/TT13 1 Tf -8.3822 0 TD -0 Tw -(EXPLAINFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.27 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 387.6426 275.14 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 398.4444 275.14 Tm -0.27 Tw -[(. For example, )]TJ -/TT8 1 Tf -6 0 0 6 468.8792 275.14 Tm -0.6483 Tw -(\(GETPROP DEFINEQ)Tj --49.1465 -2.0917 TD -0 Tw -(ARGNAMES\) = \(NIL \(X1 Xl ... XN\) . X\))Tj -/TT6 1 Tf -9 0 0 9 307.2217 262.59 Tm -(. This allows the user to specify special argument lists.)Tj --14.8024 -2 TD -0.0956 Tw -(Second, if )Tj -/TT13 1 Tf -4.7517 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0956 Tw -[( is not defined as a function, )]TJ -/TT8 1 Tf -6 0 0 6 347.7566 244.59 Tm -0 Tw -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 390.9636 244.59 Tm -0.0956 Tw -[( attempts spelling correction on )]TJ -/TT13 1 Tf -14.6838 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf --38.7909 -1.2889 TD -0.1778 Tw -(by calling )Tj -/TT8 1 Tf -6 0 0 6 218.2801 232.99 Tm -0 Tw -(FNCHECK)Tj -/TT6 1 Tf -9 0 0 9 243.4842 232.99 Tm -0.1778 Tw -[( \(see Chapter 20\), passing )]TJ -/TT13 1 Tf -12.407 0 TD -0 Tw -(TAIL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1778 Tw -[( to be used for the call to )]TJ -/TT8 1 Tf -6 0 0 6 489.271 232.99 Tm -0 Tw -(FIXSPELL)Tj -/TT6 1 Tf -9 0 0 9 518.0757 232.99 Tm -0.1778 Tw -[(. If)]TJ --38.2306 -1.2889 TD -0 Tw -(unsuccessful, the )Tj -/TT8 1 Tf -6 0 0 6 244.1147 221.39 Tm -(FN Not a function)Tj -/TT6 1 Tf -9 0 0 9 305.3247 221.39 Tm -( error will be generated.)Tj --14.5916 -2 TD -0.1122 Tw -(Third, if )Tj -/TT13 1 Tf -4.0902 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1122 Tw -[( is known to the file package \(see Chapter 17\) but not loaded in, )]TJ -/TT8 1 Tf -6 0 0 6 490.8295 203.39 Tm -0 Tw -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 174 191.79 Tm -(will obtain the arglist information from the file.)Tj -0 -2 TD -(Otherwise, )Tj -/TT8 1 Tf -6 0 0 6 219.8657 173.79 Tm -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 263.0728 173.79 Tm -( simply returns )Tj -/TT8 1 Tf -6 0 0 6 326.0728 173.79 Tm -(\(ARGLIST )Tj -/TT13 1 Tf -9 0 0 9 358.478 173.79 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 369.2798 173.79 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 372.8804 173.79 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 174 155.19 Tm -(SMARTARGLIST)Tj -/TT6 1 Tf -9 0 0 9 217.207 155.19 Tm -0.2789 Tw -[( is used by )]TJ -/TT8 1 Tf -6 0 0 6 271.7153 155.19 Tm -0 Tw -(BREAK)Tj -/TT6 1 Tf -9 0 0 9 289.7182 155.19 Tm -0.2789 Tw -[( \(see Chapter 15\) and )]TJ -/TT8 1 Tf -6 0 0 6 388.5153 155.19 Tm -0 Tw -(ADVISE)Tj -/TT6 1 Tf -9 0 0 9 410.1188 155.19 Tm -0.2789 Tw -[( with )]TJ -/TT13 1 Tf -3.091 0 TD -0 Tw -(EXPLAINFLG)Tj -/TT19 1 Tf -6.001 0 TD -( )Tj -/TT6 1 Tf -0.5289 0 TD -(= )Tj -/TT8 1 Tf -6 0 0 6 506.92 155.19 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 517.7218 155.19 Tm -0.2789 Tw -[( for)]TJ --38.1913 -1.2889 TD -0.0178 Tw -(constructing equivalent expr definitions, and by the )Tj -/TT8 1 Tf -6 0 0 6 383.3065 143.59 Tm -0 Tw -(TTYIN)Tj -/TT6 1 Tf -9 0 0 9 401.3094 143.59 Tm -0.0178 Tw -[( in-line command )]TJ -/TT8 1 Tf -6 0 0 6 474.2157 143.59 Tm -0 Tw -(?=)Tj -/TT6 1 Tf -9 0 0 9 481.4169 143.59 Tm -0.0178 Tw -[( \(see Chapter)]TJ --34.1574 -1.2222 TD -0 Tw -(26\), with )Tj -/TT13 1 Tf -4.1162 0 TD -(EXPLAINFLG)Tj -/TT6 1 Tf -6.001 0 TD -( = )Tj -/TT8 1 Tf -6 0 0 6 275.0083 132.59 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 278.6089 132.59 Tm -(. )Tj -/TT4 1 Tf -10 0 0 10 102 109.65 Tm -(Defining Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 106.94 m -558.01 106.94 l -S -BT -/TT6 1 Tf -9 0 0 9 126 92.99 Tm -0.0222 Tw -[(Function definitions are stored in a function definition cell associated with each symbol. This cell is)]TJ -0 -1.2222 TD -0.1522 Tw -(directly accessible via the two functions )Tj -/TT8 1 Tf -6 0 0 6 294.4358 81.99 Tm -0 Tw -(PUTD)Tj -/TT6 1 Tf -9 0 0 9 308.8381 81.99 Tm -0.1522 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 331.314 81.99 Tm -0 Tw -(GETD)Tj -/TT6 1 Tf -9 0 0 9 345.7163 81.99 Tm -0.1522 Tw -[( \(see below\), but it is usually easier to define)]TJ --24.4129 -1.2222 TD -0 Tw -(functions with )Tj -/TT8 1 Tf -6 0 0 6 185.9765 70.99 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 211.1806 70.99 Tm -(:)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 26 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -35 0 obj -<< -/Length 9361 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-7)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT8 1 Tf -6 0 0 6 102 568.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 568.26 Tm -(DEFINEQ)Tj -/F3 1 Tf -10 0 0 10 143.4 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 146.27 568.26 Tm -(X)Tj -6 0 0 6 151.67 566.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 155.27 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 158.05 568.26 Tm -(X)Tj -6 0 0 6 163.45 566.26 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 167.05 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 169.83 568.26 Tm -(... X)Tj -6 0 0 6 196.83 566.26 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/F1 1 Tf -10 0 0 10 204.0306 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 568.26 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf -6 0 0 6 126 550.71 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 151.2041 550.71 Tm -0.04 Tw -[( is the function normally used for defining functions. It takes an indefinite number)]TJ --2.8005 -1.2222 TD -0.01 Tw -[(of arguments which are not evaluated. Each )]TJ -/TT13 1 Tf -20.0087 0 TD -0 Tw -(X)Tj -6 0 0 6 311.5 537.71 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 315.1 539.71 Tm -0.01 Tw -[( must be a list defining one function, of the)]TJ --21.0111 -1.3944 TD -0 Tw -(form )Tj -/TT8 1 Tf -6 0 0 6 147.6606 527.16 Tm -(\(NAME DEFINITION\))Tj -/TT6 1 Tf -9 0 0 9 208.8706 527.16 Tm -(. For example:)Tj -/TT8 1 Tf -6 0 0 6 162 514.71 Tm -(\(DEFINEQ \(DOUBLE \(LAMBDA \(X\) \(IPLUS X X\)\)\)\))Tj -/TT6 1 Tf -9 0 0 9 126 499.16 Tm -0.1344 Tw -(The above expression will define the function )Tj -/TT8 1 Tf -6 0 0 6 317.8889 499.16 Tm -0 Tw -(DOUBLE)Tj -/TT6 1 Tf -9 0 0 9 339.4924 499.16 Tm -0.1344 Tw -[( with the expr definition )]TJ -/TT8 1 Tf -6 0 0 6 444.4853 499.16 Tm -0.3217 Tw -(\(LAMBDA \(X\))Tj --53.0809 -1.8333 TD -0.0733 Tw -(\(IPLUS X X\)\))Tj -/TT6 1 Tf -9 0 0 9 170.087 488.16 Tm -0.03 Tw -(. )Tj -/TT13 1 Tf -0.81 0 TD -0 Tw -(X)Tj -6 0 0 6 182.77 486.16 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 186.37 488.16 Tm -0.03 Tw -[( may also have the form \()]TJ -/TT8 1 Tf -6 0 0 6 288.8137 488.16 Tm -0.0733 Tw -(NAME ARGS . DEF-BODY)Tj -/TT6 1 Tf -9 0 0 9 362.1454 488.16 Tm -0.03 Tw -(\), in which case an appropriate)Tj --26.2384 -1.3944 TD -[(lambda expr definition will be constructed. Therefore, the above expression is exactly the)]TJ -0 -1.2222 TD -0 Tw -(same as:)Tj -/TT8 1 Tf -6 0 0 6 162 452.16 Tm -(\(DEFINEQ \(DOUBLE \(X\) \(IPLUS X X\)\)\))Tj -/TT6 1 Tf -9 0 0 9 126 436.61 Tm -0.0589 Tw -[(Note that this alternate form can only be used for lambda functions. The first form must)]TJ -T* -0 Tw -(be used to define an nlambda function.)Tj -/TT8 1 Tf -6 0 0 6 126 407.61 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 151.2041 407.61 Tm -( returns a list of the names of the functions defined.)Tj -/TT8 1 Tf -6 0 0 6 102 388.33 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 388.33 Tm -(DEFINE)Tj -/F3 1 Tf -10 0 0 10 138 388.33 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 140.87 388.33 Tm -(X )Tj -/TT8 1 Tf -6 0 0 6 157.0726 388.33 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 160.6732 388.33 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 388.33 Tm -([Function])Tj --35.4033 -1.8444 TD -0.12 Tw -(Lambda-spread version of )Tj -/TT8 1 Tf -6 0 0 6 236.4402 371.73 Tm -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 261.6443 371.73 Tm -0.12 Tw -[(. Each element of the list )]TJ -/TT19 1 Tf -12.0939 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.7222 0 TD -0.12 Tw -[( is itself a list either of the)]TJ --27.8877 -1.2222 TD -0 Tw -(form )Tj -/TT8 1 Tf -6 0 0 6 149.4406 360.73 Tm -0.4733 Tw -(\(NAME DEFINITION\))Tj -/TT6 1 Tf -9 0 0 9 213.4906 360.73 Tm -0.1978 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 230.0189 360.73 Tm -0.4733 Tw -(\(NAME ARGS . DEF-BODY\))Tj -/TT6 1 Tf -9 0 0 9 317.7517 360.73 Tm -0.1978 Tw -(. )Tj -/TT8 1 Tf -6 0 0 6 328.0618 360.73 Tm -0 Tw -(DEFINE)Tj -/TT6 1 Tf -9 0 0 9 349.6653 360.73 Tm -0.1978 Tw -[( will generate an error,)]TJ -/TT8 1 Tf -6 0 0 6 447.194 360.73 Tm -0.4733 Tw -[( Incorrect)]TJ --53.5323 -1.8333 TD -0 Tw -(defining form)Tj -/TT6 1 Tf -9 0 0 9 172.8076 349.73 Tm -( on encountering an atom where a defining list is expected.)Tj -/TT8 1 Tf -6 0 0 6 78 331.73 Tm -(DEFINE)Tj -/TT6 1 Tf -9 0 0 9 99.6035 331.73 Tm -( and )Tj -/TT8 1 Tf -6 0 0 6 119.3394 331.73 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 144.5435 331.73 Tm -( operate correctly if the function is already defined and )Tj -/TT8 1 Tf -6 0 0 6 365.4565 331.73 Tm -(BROKEN)Tj -/TT6 1 Tf -9 0 0 9 387.0601 331.73 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 391.5601 331.73 Tm -(ADVISED)Tj -/TT6 1 Tf -9 0 0 9 416.7642 331.73 Tm -(, or )Tj -/TT8 1 Tf -6 0 0 6 431.9824 331.73 Tm -(BROKEN-IN)Tj -/TT6 1 Tf -9 0 0 9 464.3877 331.73 Tm -(.)Tj --42.932 -2 TD -0.1778 Tw -(For expressions involving type-in only, if the time stamp facility is enabled \(see the Time Stamps)Tj -0 -1.2222 TD -0 Tw -(section of Chapter 16\), both )Tj -/TT8 1 Tf -6 0 0 6 189.6299 302.73 Tm -(DEFINE)Tj -/TT6 1 Tf -9 0 0 9 211.2334 302.73 Tm -( and )Tj -/TT8 1 Tf -6 0 0 6 230.9692 302.73 Tm -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 256.1733 302.73 Tm -( stamp the definition with your initials and date.)Tj -/TT15 1 Tf --17.1304 -2.1422 TD -(UNSAFE.TO.MODIFY.FNS)Tj -/F1 1 Tf -10 0 0 10 210 283.45 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 283.45 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1922 Tw -(Value is a list of functions that should not be redefined, because doing so may cause)Tj -0 -1.2222 TD -0.1311 Tw -[(unusual bugs \(or crash the system!\). If you try to modify a function on this list \(using)]TJ -/TT8 1 Tf -6 0 0 6 126 244.85 Tm -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 151.2041 244.85 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 156.2641 244.85 Tm -(TRACE)Tj -/TT6 1 Tf -9 0 0 9 174.267 244.85 Tm -0.0622 Tw -(, etc\), the system prints )Tj -/TT8 1 Tf -6 0 0 6 270.9386 244.85 Tm -0.15 Tw -(Warning: XXX may be unsafe to modify -- continue? )Tj -/TT6 1 Tf -9 0 0 9 459.0679 244.85 Tm -0.0622 Tw -[( If you)]TJ --37.0075 -1.2222 TD -0 Tw -(type )Tj -/TT8 1 Tf -6 0 0 6 146.5216 233.85 Tm -(Yes)Tj -/TT6 1 Tf -9 0 0 9 157.3234 233.85 Tm -0.0678 Tw -[(, the function is modified, otherwise an error occurs. This provides a measure of)]TJ --3.4804 -1.2222 TD -0.0355 Tw -[(safety for novices who may accidently redefine important system functions. You can add)]TJ -T* -0 Tw -(your own functions onto this list.)Tj -0 -2 TD -0.0067 Tw -(By convention, all functions starting with the character backslash \(\\\) are system internal)Tj -0 -1.2222 TD -0.1455 Tw -[(functions, which you should never redefine or modify. Backslash functions are not on)]TJ -/TT8 1 Tf -6 0 0 6 126 171.85 Tm -0 Tw -(UNSAFE.TO.MODIFY.FNS)Tj -/TT6 1 Tf -9 0 0 9 198.0117 171.85 Tm -(, so trying to redefine them will not cause a warning.)Tj -/TT15 1 Tf --10.668 -2.1422 TD -(DFNFLG)Tj -/F1 1 Tf -10 0 0 10 134.4 152.57 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 152.57 Tm -([Variable])Tj -/TT8 1 Tf -6 0 0 6 126 135.97 Tm -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 147.6035 135.97 Tm -0.1144 Tw -[( is a global variable that affects the operation of )]TJ -/TT8 1 Tf -6 0 0 6 348.09 135.97 Tm -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -9 0 0 9 373.2941 135.97 Tm -0.1144 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 395.09 135.97 Tm -0 Tw -(DEFINE)Tj -/TT6 1 Tf -9 0 0 9 416.6935 135.97 Tm -0.1144 Tw -[(. If )]TJ -/TT8 1 Tf -6 0 0 6 434.8128 135.97 Tm -0 Tw -(DFNFLG=NIL)Tj -/TT6 1 Tf -9 0 0 9 470.8186 135.97 Tm -0.1144 Tw -(, an)Tj --38.3132 -1.2222 TD -0.0511 Tw -(attempt to )Tj -/TT19 1 Tf -4.9157 0 TD -0 Tw -(redefine)Tj -/TT6 1 Tf -3.1685 0 TD -0.0511 Tw -[( a function )]TJ -/TT8 1 Tf -6 0 0 6 244.7507 124.97 Tm -0 Tw -(FN)Tj -/TT6 1 Tf -9 0 0 9 251.9518 124.97 Tm -0.0511 Tw -[( will cause )]TJ -/TT8 1 Tf -6 0 0 6 297.4925 124.97 Tm -0 Tw -(DEFINE)Tj -/TT6 1 Tf -9 0 0 9 319.096 124.97 Tm -0.0511 Tw -[( to print the message )]TJ -/TT8 1 Tf -6 0 0 6 406.439 124.97 Tm -0.1217 Tw -(\(FN REDEFINED\))Tj -/TT6 1 Tf -9 0 0 9 457.5772 124.97 Tm -0.0511 Tw -[( and to)]TJ --36.8419 -1.2222 TD -0.2322 Tw -(save the old definition of )Tj -/TT8 1 Tf -6 0 0 6 237.823 113.97 Tm -0 Tw -(FN)Tj -/TT6 1 Tf -9 0 0 9 245.0242 113.97 Tm -0.2322 Tw -[( using )]TJ -/TT8 1 Tf -6 0 0 6 275.8087 113.97 Tm -0 Tw -(SAVEDEF)Tj -/TT6 1 Tf -9 0 0 9 301.0128 113.97 Tm -0.2322 Tw -[( \(see the Functions for Manipulating Typed)]TJ --19.4459 -1.2222 TD -0.3622 Tw -(Definitions section of Chapter 17\) before redefining it \(except if the old and new)Tj -T* -0.0444 Tw -(definitions are )Tj -/TT8 1 Tf -6 0 0 6 186.4689 91.97 Tm -0 Tw -(EQUAL)Tj -/TT6 1 Tf -9 0 0 9 204.4719 91.97 Tm -0.0444 Tw -[(, in which case the effect is simply a no-op\). If )]TJ -/TT8 1 Tf -6 0 0 6 394.7211 91.97 Tm -0 Tw -(DFNFLG=T)Tj -/TT6 1 Tf -9 0 0 9 423.5258 91.97 Tm -0.0444 Tw -(, the function is)Tj --33.0584 -1.2222 TD -0.0511 Tw -[(simply redefined. If )]TJ -/TT8 1 Tf -6 0 0 6 210.8703 80.97 Tm -0 Tw -(DFNFLG=PROP)Tj -/TT6 1 Tf -9 0 0 9 250.4767 80.97 Tm -0.0511 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 264.365 80.97 Tm -0 Tw -(ALLPROP)Tj -/TT6 1 Tf -9 0 0 9 289.5691 80.97 Tm -0.0511 Tw -(, the new definition is stored on the property list)Tj --18.1743 -1.2222 TD -0.2744 Tw -(under the property )Tj -/TT8 1 Tf -6 0 0 6 211.7689 69.97 Tm -0 Tw -(EXPR)Tj -/TT6 1 Tf -9 0 0 9 226.1712 69.97 Tm -0.2744 Tw -(. )Tj -/TT8 1 Tf -6 0 0 6 237.8612 69.97 Tm -0 Tw -(ALLPROP)Tj -/TT6 1 Tf -9 0 0 9 263.0653 69.97 Tm -0.2744 Tw -[( also affects the operation of )]TJ -/TT8 1 Tf -6 0 0 6 391.5718 69.97 Tm -0 Tw -(RPAQQ)Tj -/TT6 1 Tf -9 0 0 9 409.5748 69.97 Tm -0.2744 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 434.2506 69.97 Tm -0 Tw -(RPAQ)Tj -/TT6 1 Tf -9 0 0 9 448.653 69.97 Tm -0.2744 Tw -[( \(see the)]TJ --35.8503 -1.2222 TD -0 Tw -(Functions Used Within Source Files section of Chapter 17\). )Tj -/TT8 1 Tf -6 0 0 6 363.5684 58.97 Tm -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 385.1719 58.97 Tm -( is initially )Tj -/TT8 1 Tf -6 0 0 6 429.1304 58.97 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 439.9321 58.97 Tm -(.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/F3 26 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -38 0 obj -<< -/Length 8872 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-8)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -6 0 0 6 174 569.54 Tm -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 195.6035 569.54 Tm -0.0589 Tw -[( is reset by )]TJ -/TT8 1 Tf -6 0 0 6 242.0687 569.54 Tm -0 Tw -(LOAD)Tj -/TT6 1 Tf -9 0 0 9 256.4711 569.54 Tm -0.0589 Tw -[( \(see the Loading Files section of Chapter 17\) to enable various ways)]TJ --9.1635 -1.2222 TD -0.1467 Tw -[(of handling the defining of functions and setting of variables when loading a file. For)]TJ -T* -0 Tw -(most applications, the user will not reset )Tj -/TT8 1 Tf -6 0 0 6 337.1514 547.54 Tm -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 358.7549 547.54 Tm -( directly.)Tj -/TT17 1 Tf --20.5283 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0001 Tc -0.0021 Tw -(: The compiler does )Tj -/TT19 1 Tf -9.1742 0 TD -0 Tc -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0001 Tc -0.0021 Tw -( respect the value of )Tj -/TT8 1 Tf -6 0 0 6 370.5828 529.54 Tm -0 Tc -0 Tw -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 392.1863 529.54 Tm -0.0001 Tc -0.0021 Tw -( when it redefines functions to their)Tj --24.2429 -1.2222 TD -0 Tc -0.0656 Tw -[(compiled definitions \(see the first page of Chapter 18\). Therefore, if you set )]TJ -/TT8 1 Tf -6 0 0 6 484.406 518.54 Tm -0 Tw -(DFNFLG)Tj -/TT6 1 Tf -9 0 0 9 506.0095 518.54 Tm -0.0656 Tw -[( to )]TJ -/TT8 1 Tf -6 0 0 6 519.5381 518.54 Tm -0 Tw -(PROP)Tj -/TT6 1 Tf -9 0 0 9 174 507.54 Tm -0.0033 Tw -(to completely avoid inadvertantly redefining something in your running system, you )Tj -/TT19 1 Tf -37.9512 0 TD -0 Tw -(must)Tj -/TT6 1 Tf --37.9512 -1.2222 TD -(use compile mode )Tj -/TT8 1 Tf -6 0 0 6 248.7817 496.54 Tm -(F)Tj -/TT6 1 Tf -9 0 0 9 252.3823 496.54 Tm -(, not )Tj -/TT8 1 Tf -6 0 0 6 272.2192 496.54 Tm -(ST)Tj -/TT6 1 Tf -9 0 0 9 279.4204 496.54 Tm -(.)Tj --11.7134 -2 TD -0.1511 Tw -(Note that the functions )Tj -/TT8 1 Tf -6 0 0 6 273.3511 478.54 Tm -0 Tw -(SAVEDEF)Tj -/TT6 1 Tf -9 0 0 9 298.5552 478.54 Tm -0.1511 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 321.011 478.54 Tm -0 Tw -(UNSAVEDEF)Tj -/TT6 1 Tf -9 0 0 9 353.4163 478.54 Tm -0.1511 Tw -[( \(see the Functions for Manipulating Typed)]TJ --19.9351 -1.2222 TD -0.2756 Tw -(Definitions section of Chapter 17\) can be useful for saving and restoring function)Tj -T* -0 Tw -(definitions from property lists.)Tj -/TT8 1 Tf -6 0 0 6 150 437.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 437.26 Tm -(GETD)Tj -/F3 1 Tf -10 0 0 10 175.2 437.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.07 437.26 Tm -(FN)Tj -/TT8 1 Tf -6 0 0 6 188.8717 437.26 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 192.4723 437.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 437.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2511 Tw -(Returns the function definition of )Tj -/TT13 1 Tf -16.2878 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2511 Tw -[(. Returns )]TJ -/TT8 1 Tf -6 0 0 6 378.4652 420.66 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 389.267 420.66 Tm -0.2511 Tw -[( if )]TJ -/TT13 1 Tf -1.6262 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2511 Tw -[( is not a symbol, or has no)]TJ --26.745 -1.2889 TD -0 Tw -(definition.)Tj -/TT8 1 Tf -6 0 0 6 174 391.06 Tm -(GETD)Tj -/TT6 1 Tf -9 0 0 9 188.4023 391.06 Tm -0.0644 Tw -[( of a compiled function constructs a pointer to the definition, with the result that two)]TJ --1.6003 -1.2222 TD -0.0044 Tw -(successive calls do not necessarily produce )Tj -/TT8 1 Tf -6 0 0 6 346.8616 380.06 Tm -0 Tw -(EQ)Tj -/TT6 1 Tf -9 0 0 9 354.0627 380.06 Tm -0.0004 Tc -0.004 Tw -( results. )Tj -/TT8 1 Tf -6 0 0 6 389.6598 380.06 Tm -0 Tc -0 Tw -(EQP)Tj -/TT6 1 Tf -9 0 0 9 400.4615 380.06 Tm -0.0011 Tc -0.0033 Tw -( or )Tj -/TT8 1 Tf -6 0 0 6 413.5098 380.06 Tm -0 Tc -0 Tw -(EQUAL)Tj -/TT6 1 Tf -9 0 0 9 431.5128 380.06 Tm -0.0002 Tc -0.0042 Tw -( must be used to compare)Tj --28.6125 -1.2222 TD -0 Tc -0 Tw -(compiled definitions.)Tj -/TT8 1 Tf -6 0 0 6 150 349.78 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 349.78 Tm -(PUTD)Tj -/F3 1 Tf -10 0 0 10 175.2 349.78 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.07 349.78 Tm -(FN DEF)Tj -/F2 1 Tf -10 0 0 10 210.4753 349.78 Tm -( )Tj -/TT8 1 Tf -6 0 0 6 213.2552 349.78 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 220.4564 349.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 349.78 Tm -([Function])Tj --35.4033 -1.8445 TD -(Puts )Tj -/TT13 1 Tf -2.2326 0 TD -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -[( into )]TJ -/TT13 1 Tf -2.2962 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0256 Tw -(s function cell, and returns )Tj -/TT13 1 Tf -12.4383 0 TD -0 Tw -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -(. Generates an error, )Tj -/TT8 1 Tf -6 0 0 6 453.8044 333.18 Tm -0.0617 Tw -(Arg not symbol)Tj -/TT17 1 Tf -9 0 0 9 504.9526 333.18 Tm -0 Tw -(,)Tj -/TT6 1 Tf -0.25 0 TD -0.0256 Tw -[( if )]TJ -/TT8 1 Tf -6 0 0 6 517.7789 333.18 Tm -0 Tw -(FN)Tj -/TT6 1 Tf -9 0 0 9 524.98 333.18 Tm -0.0256 Tw -[( is)]TJ --38.9978 -1.2889 TD -0.0233 Tw -[(not a symbol. Generates an error, )]TJ -/TT8 1 Tf -6 0 0 6 312.0564 321.58 Tm -0.0567 Tw -(Illegal arg)Tj -/TT6 1 Tf -9 0 0 9 352.0029 321.58 Tm -0.0233 Tw -(, if )Tj -/TT13 1 Tf -1.4207 0 TD -0 Tw -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0233 Tw -[( is a string, number, or a symbol other)]TJ --22.9991 -1.2889 TD -0 Tw -(than )Tj -/TT8 1 Tf -6 0 0 6 194.1621 309.98 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 204.9639 309.98 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 290.7 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 290.7 Tm -(MOVD)Tj -/F3 1 Tf -10 0 0 10 175.2 290.7 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.07 290.7 Tm -(FROM TO COPYFLG )Tj -/TT8 1 Tf -6 0 0 6 264.484 290.7 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 271.6852 290.7 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 290.7 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2044 Tw -(Moves the definition of )Tj -/TT13 1 Tf -11.3754 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2044 Tw -[( to )]TJ -/TT13 1 Tf -1.781 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2044 Tw -(, i.e., redefines )Tj -/TT13 1 Tf -7.2061 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2044 Tw -[(. If )]TJ -/TT13 1 Tf -2.2833 0 TD -0 Tw -(COPYFLG)Tj -/TT6 1 Tf -4.2007 0 TD -0.2044 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 472.4582 274.1 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 476.0588 274.1 Tm -0.2044 Tw -(, a )Tj -/TT8 1 Tf -6 0 0 6 490.9888 274.1 Tm -0 Tw -(COPY)Tj -/TT6 1 Tf -9 0 0 9 505.3911 274.1 Tm -0.2044 Tw -[( of the)]TJ --36.8212 -1.2889 TD -0.0389 Tw -(definition of )Tj -/TT13 1 Tf -5.7887 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0389 Tw -[( is used. )]TJ -/TT13 1 Tf -4.2371 0 TD -0 Tw -(COPYFLG)Tj -/TT6 1 Tf -4.2007 0 TD -0.0389 Tc -( =)Tj -/TT8 1 Tf -6 0 0 6 331.6956 262.5 Tm -0 Tc -(T)Tj -/TT6 1 Tf -9 0 0 9 335.2962 262.5 Tm -0.0389 Tw -[( is only meaningful for expr definitions, although)]TJ -/TT8 1 Tf -6 0 0 6 174 250.9 Tm -0 Tw -(MOVD)Tj -/TT6 1 Tf -9 0 0 9 188.4023 250.9 Tm -( works for compiled functions as well. )Tj -/TT8 1 Tf -6 0 0 6 344.7686 250.9 Tm -(MOVD)Tj -/TT6 1 Tf -9 0 0 9 359.1709 250.9 Tm -( returns )Tj -/TT13 1 Tf -3.7041 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf -6 0 0 6 174 232.3 Tm -(COPYDEF)Tj -/TT6 1 Tf -9 0 0 9 199.2041 232.3 Tm -0.0967 Tw -[( \(see the Functions for Manipulating Typed Definitions section of Chapter 17\) is a)]TJ --2.8005 -1.2222 TD -0.1156 Tw -(higher-level function that not only moves expr definitions, but works also for variables,)Tj -T* -0 Tw -(records, etc.)Tj -/TT8 1 Tf -6 0 0 6 150 191.02 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 191.02 Tm --0.0001 Tc -(MOVD? )Tj -/TT13 1 Tf -3.6 0 TD -0 Tc -(FROM TO COPYFLG )Tj -/TT8 1 Tf -6 0 0 6 272.4149 191.02 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 279.6161 191.02 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 191.02 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT13 1 Tf -1.0055 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0856 Tw -[( is not defined, same as )]TJ -/TT8 1 Tf -6 0 0 6 293.0985 174.42 Tm -0 Tw -(\(MOVD)Tj -/TT13 1 Tf -9 0 0 9 311.1014 174.42 Tm -0.2067 Tw -[( FROM TO COPYFLG)]TJ -/TT8 1 Tf -6 0 0 6 403.0955 174.42 Tm -0 Tw -(\).)Tj -/TT6 1 Tf -9 0 0 9 410.2966 174.42 Tm -0.0856 Tw -[( Otherwise, does nothing and)]TJ --26.2552 -1.2889 TD -0 Tw -(returns )Tj -/TT8 1 Tf -6 0 0 6 205.0869 162.82 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 215.8887 162.82 Tm -(.)Tj -/TT4 1 Tf -10 0 0 10 102 140.48 Tm -(Function Evaluation)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 137.77 m -558.01 137.77 l -S -BT -/TT6 1 Tf -9 0 0 9 126 123.82 Tm -0.0244 Tw -[(Usually, function application is done automatically by the Interlisp interpreter. If a form is typed into)]TJ -0 -1.2222 TD -0.0111 Tw -(Interlisp whose )Tj -/TT8 1 Tf -6 0 0 6 190.0174 112.82 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 200.8191 112.82 Tm -0.0111 Tw -[( is a function, this function is applied to the arguments in the )]TJ -/TT8 1 Tf -6 0 0 6 446.0947 112.82 Tm -0 Tw -(CDR)Tj -/TT6 1 Tf -9 0 0 9 456.8965 112.82 Tm -0.0111 Tw -[( of the form. These)]TJ --36.7663 -1.2222 TD -0.0844 Tw -(arguments are evaluated or not, and bound to the funcion parameters, as determined by the type of)Tj -T* -0.0367 Tw -[(the function, and the body of the function is evaluated. This sequence is repeated as each form in the)]TJ -T* -0 Tw -(body of the function is evaluated.)Tj -0 -2 TD -0.0267 Tw -(There are some situations where it is necessary to explicitly call the evaluator, and Interlisp supplies a)Tj -0 -1.2222 TD -0.0211 Tw -[(number of functions that will do this. These functions take functional arguments, which may either)]TJ -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/F3 26 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT17 22 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -41 0 obj -<< -/Length 8138 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-9)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.2667 Tw -(be symbols with function definitions, or expr definition forms such as)Tj -/TT8 1 Tf -6 0 0 6 378.9873 569.54 Tm -0.6417 Tw -[( \(LAMBDA \(X\)...\))]TJ -/TT6 1 Tf -9 0 0 9 444.2967 569.54 Tm -0.2667 Tw -(, or )Tj -/TT8 1 Tf -6 0 0 6 464.3149 569.54 Tm -0 Tw -(FUNARG)Tj -/TT6 1 Tf -9 0 0 9 78 558.54 Tm -(expressions. )Tj -/TT8 1 Tf -6 0 0 6 102 539.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 539.26 Tm -(APPLY)Tj -/F3 1 Tf -10 0 0 10 132.6 539.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 135.47 539.26 Tm -(FN ARGLIST )Tj -/TT8 1 Tf -6 0 0 6 200.2805 539.26 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 203.8811 539.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 539.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0356 Tw -(Applies the function )Tj -/TT13 1 Tf -9.4157 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0356 Tw -[( to the arguments in the list )]TJ -/TT13 1 Tf -12.5985 0 TD -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.0356 Tw -(, and returns its value. )Tj -/TT8 1 Tf -6 0 0 6 468.0399 522.66 Tm -0 Tw -(APPLY)Tj -/TT6 1 Tf -9 0 0 9 126 511.06 Tm -0.2444 Tw -(is a lambda function, so its arguments are evaluated, but the individual elements of)Tj -/TT13 1 Tf -0 -1.2222 TD -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.1544 Tw -[( are not evaluated. Therefore, lambda and nlambda functions are treated the)]TJ --4.2007 -1.2889 TD -0.0389 Tw -(same by )Tj -/TT8 1 Tf -6 0 0 6 161.7552 488.46 Tm -0 Tw -(APPLY)Tj -/TT6 1 Tf -9 0 0 9 179.7581 488.46 Tm -0.0389 Tw -(lambda functions take their arguments from )Tj -/TT13 1 Tf -21.0414 0 TD -0 Tw -(ARGLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.0389 Tw -[( without evaluating)]TJ --31.2152 -1.2889 TD -0 Tw -(them. For example:)Tj -/TT9 1 Tf -6 0 0 6 162 464.41 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(APPLY APPEND \(\(PLUS 1 2 3\)\(4 5 6\)\)\) )Tj -2.0132 -1 TD -(\(PLUS 1 2 3 4 5 6\))Tj -/TT6 1 Tf -9 0 0 9 126 442.86 Tm -0.02 Tw -(Note that )Tj -/TT13 1 Tf -4.4565 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -[( may explicitly evaluate one or more of its arguments itself. For example, the)]TJ --5.6567 -1.2889 TD -0.04 Tw -(system function )Tj -/TT8 1 Tf -6 0 0 6 192.4094 431.26 Tm -0 Tw -(SETQ)Tj -/TT6 1 Tf -9 0 0 9 206.8118 431.26 Tm -0.04 Tw -[( is an nlambda function that explicitly evaluates its second argument.)]TJ --8.9791 -1.2222 TD -0 Tw -(Therefore, )Tj -/TT8 1 Tf -6 0 0 6 169.457 420.26 Tm -0.065 Tw -(\(APPLY SETQ \(FOO \(ADD1 3\)\)\))Tj -/TT6 1 Tf -9 0 0 9 275.434 420.26 Tm -0.0278 Tw -(will set )Tj -/TT8 1 Tf -6 0 0 6 306.8583 420.26 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 317.6601 420.26 Tm -0.0278 Tw -[( to )]TJ -/TT8 1 Tf -6 0 0 6 330.5087 420.26 Tm -0 Tw -(4)Tj -/TT6 1 Tf -9 0 0 9 334.1093 420.26 Tm -0.0278 Tw -(, instead of setting it to the expression)Tj -/TT8 1 Tf -6 0 0 6 126 409.26 Tm -0 Tw -(\(ADD1 3\))Tj -/TT6 1 Tf -9 0 0 9 154.8047 409.26 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 126 391.26 Tm -(APPLY)Tj -/TT6 1 Tf -9 0 0 9 144.0029 391.26 Tm -( can be used for manipulating expr definitions. For example:)Tj -/TT9 1 Tf -6 0 0 6 162 378.81 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(APPLY \(LAMBDA \(X Y\)\(ITIMES X Y\)\) \(3 4\)\)\) )Tj -2.0132 -1 TD -(12)Tj --13 -2.805 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 355.98 Tm -(APPLY*)Tj -/F3 1 Tf -10 0 0 10 138 355.98 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 140.87 355.98 Tm -(FN ARG)Tj -6 0 0 6 173.27 353.98 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 176.87 355.98 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 179.65 355.98 Tm -(ARG)Tj -6 0 0 6 195.85 353.98 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 199.45 355.98 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 202.23 355.98 Tm -(... ARG)Tj -6 0 0 6 240.03 353.98 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 243.63 355.98 Tm -( )Tj -/TT8 1 Tf -6 0 0 6 246.41 355.98 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 250.0106 355.98 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 401.99 355.98 Tm -([NoSpread Function])Tj --30.6656 -1.95 TD -0.1767 Tw -(Nospread version of )Tj -/TT8 1 Tf -6 0 0 6 214.4463 338.43 Tm -0 Tw -(APPLY)Tj -/TT6 1 Tf -9 0 0 9 232.4492 338.43 Tm -0.1767 Tw -[(. Applies the function )]TJ -/TT13 1 Tf -10.9424 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1767 Tw -[( to the arguments )]TJ -/TT13 1 Tf -8.714 0 TD -0 Tw -(ARG)Tj -6 0 0 6 436.37 336.43 Tm -(1)Tj -/TT19 1 Tf -9 0 0 9 439.97 338.43 Tm -( )Tj -/TT13 1 Tf -0.4267 0 TD -(ARG)Tj -6 0 0 6 460.01 336.43 Tm -(2 )Tj -9 0 0 9 469.76 338.43 Tm -(...)Tj --38.1956 -1.3944 TD -(ARG)Tj -6 0 0 6 142.2 323.88 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 145.8 325.88 Tm -(. For example: )Tj -/TT9 1 Tf -6 0 0 6 162 311.88 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(APPLY APPEND \(PLUS 1 2 3\)\(4 5 6\)\) )Tj -2.0132 -1 TD -(\(PLUS 1 2 3 4 5 6\))Tj --13 -2.805 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 289.05 Tm -(EVAL)Tj -/TT8 1 Tf -6 0 0 6 127.2 289.05 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 130.8006 289.05 Tm -(X)Tj -/TT8 1 Tf -6 0 0 6 141.6023 289.05 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 145.2029 289.05 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 289.05 Tm -([Function])Tj -/TT8 1 Tf -6 0 0 6 126 272.45 Tm -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 140.4023 272.45 Tm -0.0867 Tw -[( evaluates the expression )]TJ -/TT13 1 Tf -11.6377 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( and returns this value, i.e., )]TJ -/TT8 1 Tf -6 0 0 6 365.2746 272.45 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 379.6769 272.45 Tm -0.0867 Tw -[( provides a way of calling)]TJ --28.1863 -1.2889 TD -0.0556 Tw -[(the Interlisp interpreter. Note that )]TJ -/TT8 1 Tf -6 0 0 6 268.7549 260.85 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 283.1572 260.85 Tm -0.0556 Tw -[( is itself a lambda function, so its argument is first)]TJ --17.4619 -1.2222 TD -0 Tw -(evaluated, e.g.:)Tj -/TT9 1 Tf -6 0 0 6 162 237.4 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( \(SETQ FOO ADD1 3\)\)\))Tj -2.0132 -1 TD -(\(ADD1 3\))Tj -/TT9 1 Tf --3 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(EVAL FOO\))Tj -2.0132 -1 TD -(4)Tj -/TT9 1 Tf --3 -1.6667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(EVAL FOO\))Tj -2.0132 -1 TD -(\(ADD1 3\))Tj --13 -2.805 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 182.57 Tm -(QUOTE)Tj -/TT8 1 Tf -6 0 0 6 132.6 182.57 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 136.2006 182.57 Tm -(X)Tj -/TT8 1 Tf -6 0 0 6 141.6014 182.57 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 145.202 182.57 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 362.21 182.57 Tm -([Nlambda NoSpread Function])Tj -/TT8 1 Tf -6 0 0 6 126 165.97 Tm -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 144.0029 165.97 Tm -0.0756 Tw -[( prevents its arguments from being evaluated. Its value is )]TJ -/TT13 1 Tf -26.6832 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0756 Tw -[( itself, e.g., )]TJ -/TT8 1 Tf -6 0 0 6 435.955 165.97 Tm -0.1817 Tw -(\(QUOTE FOO\))Tj -/TT6 1 Tf -9 0 0 9 476.6515 165.97 Tm -0.0756 Tw -[( is)]TJ -/TT8 1 Tf -6 0 0 6 126 154.37 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 136.8017 154.37 Tm -(.)Tj --1.2002 -2 TD -0.0667 Tw -(Interlisp functions can either evaluate or not evaluate their arguments. )Tj -/TT8 1 Tf -6 0 0 6 417.3393 136.37 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 435.3422 136.37 Tm -0.0667 Tw -[( can be used)]TJ --34.3714 -1.2222 TD -0 Tw -(in those cases where it is desirable to specify arguments unevaluated.)Tj -0 -2 TD -0.33 Tw -(The single-quote character )Tj -/TT8 1 Tf -6 0 0 6 242.5408 107.37 Tm -0 Tw -(\(\))Tj -/TT6 1 Tf -9 0 0 9 253.3426 107.37 Tm -0.33 Tw -[( is defined with a read macro so it returns the next)]TJ -/F1 1 Tf -10 0 0 10 126 95.09 Tm -0.006 Tw -(expression, wrapped in a call to )Tj -/TT8 1 Tf -6 0 0 6 274.9 95.09 Tm -0 Tw -(QUOTE)Tj -/F1 1 Tf -10 0 0 10 292.9029 95.09 Tm -0.006 Tw -[( \(see Chapter 25\). )]TJ -/TT6 1 Tf -9 0 0 9 380.2529 95.09 Tm -0.0044 Tw -(For example,)Tj -/TT8 1 Tf -6 0 0 6 432.0078 95.09 Tm -0.0117 Tw -[( FOO )]TJ -/TT6 1 Tf -9 0 0 9 453.7513 95.09 Tm -0.0044 Tw -(reads as)Tj -/TT8 1 Tf -6 0 0 6 126 84.09 Tm -0 Tw -(\(QUOTE FOO\))Tj -/TT6 1 Tf -9 0 0 9 165.6064 84.09 Tm -(. This is the form used for examples in this manual.)Tj --4.4007 -2 TD -0.0867 Tw -(Since giving )Tj -/TT8 1 Tf -6 0 0 6 178.519 66.09 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 196.5219 66.09 Tm -0.0867 Tw -[( more than one argument is almost always a parenthese error, and one)]TJ --7.8358 -1.2222 TD -0.0267 Tw -(that would otherewise go undetected, )Tj -/TT8 1 Tf -6 0 0 6 280.1648 55.09 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 298.1678 55.09 Tm -0.0267 Tw -[( itself generates an error in this case, )]TJ -/TT8 1 Tf -6 0 0 6 446.329 55.09 Tm -0 Tw -(Parenthesis)Tj --53.3882 -1.8333 TD -(error)Tj -/TT6 1 Tf -9 0 0 9 144.0029 44.09 Tm -(.)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/F3 26 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -44 0 obj -<< -/Length 9629 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-10)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -6 0 0 6 150 568.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 568.26 Tm -(KWOTE)Tj -/TT8 1 Tf -6 0 0 6 180.6 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 184.2006 568.26 Tm -(X)Tj -/TT8 1 Tf -6 0 0 6 189.6014 568.26 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 193.202 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0656 Tw -(Value is an expression which, when evaluated, yields )Tj -/TT13 1 Tf -24.3692 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0656 Tw -[(. If )]TJ -/TT13 1 Tf -1.8666 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0656 Tw -[( is )]TJ -/TT8 1 Tf -6 0 0 6 433.0372 551.66 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 443.8389 551.66 Tm -0.0656 Tw -[( or a number, this is )]TJ -/TT13 1 Tf -9.4173 0 TD -0 Tw -(X)Tj -/TT6 1 Tf --39.3994 -1.2889 TD -(itself. Otherwise)Tj -/TT8 1 Tf -6 0 0 6 241.4121 540.06 Tm -( \(LIST \(QUOTE QUOTE\) X\))Tj -/TT6 1 Tf -9 0 0 9 324.2256 540.06 Tm -(. For example:)Tj -/TT8 1 Tf -6 0 0 6 210 527.61 Tm -(\(KWOTE 5\) => 5)Tj -0 -1 TD -(\(KWOTE \(CONS A B\)\) => \(QUOTE \(A.B\)\))Tj --10 -2.805 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 504.78 Tm -(NLAMBDA.ARGS)Tj -/TT8 1 Tf -6 0 0 6 218.4 504.78 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 222.0006 504.78 Tm -(X)Tj -/TT8 1 Tf -6 0 0 6 227.4014 504.78 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 231.002 504.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 504.78 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0578 Tw -[(This function interprets its argument as a list of unevaluated nlambda arguments. If any)]TJ -0 -1.2222 TD -0.1511 Tw -(of the elements in this list are of the form )Tj -/TT8 1 Tf -6 0 0 6 352.6058 477.18 Tm -0 Tw -(\(QUOTE...\))Tj -/TT6 1 Tf -9 0 0 9 388.6117 477.18 Tm -0.1511 Tw -(, the enclosing )Tj -/TT8 1 Tf -6 0 0 6 451.93 477.18 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 469.9329 477.18 Tm -0.1511 Tw -[( is stripped off.)]TJ --32.8814 -1.2222 TD -0 Tw -(Actually, )Tj -/TT8 1 Tf -6 0 0 6 216.1516 466.18 Tm -(NLAMBDA.ARGS)Tj -/TT6 1 Tf -9 0 0 9 259.3586 466.18 Tm -0.3944 Tw -[( stops processing the list after the first non-quoted argument.)]TJ --9.4843 -1.2222 TD -0.0889 Tw -(Therefore, whereas)Tj -/TT8 1 Tf -6 0 0 6 251.2429 455.18 Tm -0.215 Tw -[( \(NLAMBDA.ARGS \(\(QUOTE FOO\) BAR\)\) -> \(FOO BAR\))]TJ -/TT6 1 Tf -9 0 0 9 429.5004 455.18 Tm -0.0889 Tw -(, )Tj -/TT8 1 Tf -6 0 0 6 437.8504 455.18 Tm -0.215 Tw -(\(NLAMBDA.ARGS \(FOO \(QUOTE)Tj --43.9751 -1.4083 TD -0 Tw -(BAR\)\)\) -> \(FOO \(QUOTE BAR\)\).)Tj -0 -2.925 TD -(NLAMBDA.ARGS)Tj -/TT6 1 Tf -9 0 0 9 217.207 429.18 Tm -0.1678 Tw -[( is alled by a number of nlambda functions in the system, to interpret their)]TJ --4.8008 -1.2222 TD -0.0578 Tw -[(arguments. For instance, the function )]TJ -/TT8 1 Tf -6 0 0 6 329.8256 418.18 Tm -0 Tw -(BREAK)Tj -/TT6 1 Tf -9 0 0 9 347.8285 418.18 Tm -0.0578 Tw -[( calls )]TJ -/TT8 1 Tf -6 0 0 6 370.9158 418.18 Tm -0 Tw -(NLAMBDA.ARGS)Tj -/TT6 1 Tf -9 0 0 9 414.1229 418.18 Tm -0.0578 Tw -[( so that )]TJ -/TT8 1 Tf -6 0 0 6 446.7698 418.18 Tm -0.1367 Tw -(\(BREAK FOO\))Tj -/TT6 1 Tf -9 0 0 9 490.7968 418.18 Tm -0.0578 Tw -[( will break)]TJ --35.1996 -1.2222 TD -0 Tw -(the function )Tj -/TT8 1 Tf -6 0 0 6 224.3481 407.18 Tm -(FOO)Tj -/TT6 1 Tf -9 0 0 9 235.1499 407.18 Tm -(, rather than the function )Tj -/TT8 1 Tf -6 0 0 6 336.5054 407.18 Tm -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 354.5083 407.18 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 387.9 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 387.9 Tm -(EVALA)Tj -/F2 1 Tf -10 0 0 10 180.6 387.9 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 183.38 387.9 Tm -(X A)Tj -/TT8 1 Tf -6 0 0 6 199.5826 387.9 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 203.1832 387.9 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 387.9 Tm -([Function])Tj --35.4033 -1.8444 TD -(Simulates association list variable lookup. )Tj -/TT13 1 Tf -18.9946 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is a form, )Tj -/TT13 1 Tf -4.6216 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -( is a list of the form:)Tj -/TT8 1 Tf -6 0 0 6 192 356.3 Tm -(\(\()Tj -/TT13 1 Tf -9 0 0 9 199.2012 356.3 Tm -(NAME)Tj -6 0 0 6 220.8 354.3 Tm -(1)Tj -9 0 0 9 224.4 356.3 Tm -( . VAL)Tj -6 0 0 6 256.8 354.3 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT13 1 Tf -9 0 0 9 264.0005 356.3 Tm -( \(NAME)Tj -6 0 0 6 296.4 354.3 Tm -(2)Tj -9 0 0 9 300 356.3 Tm -( . VAL)Tj -6 0 0 6 332.4 354.3 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT13 1 Tf -9 0 0 9 339.6006 356.3 Tm -(... )Tj -/TT8 1 Tf -6 0 0 6 361.2041 356.3 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 364.8047 356.3 Tm -(NAME)Tj -6 0 0 6 386.4 354.3 Tm -(N)Tj -9 0 0 9 390 356.3 Tm -( . VAL)Tj -6 0 0 6 422.4 354.3 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 174 338.75 Tm -0.1167 Tw -(The variable names and values in )Tj -/TT13 1 Tf -15.7435 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.1167 Tw -[( are spread on the stack, and then )]TJ -/TT13 1 Tf -16.9944 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1167 Tw -[( is evaluated.)]TJ --33.938 -1.2889 TD -0.0067 Tw -(Therefore, any variables appearing free in )Tj -/TT13 1 Tf -18.7915 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( that also appears as )]TJ -/TT8 1 Tf -6 0 0 6 431.3445 327.15 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 442.1463 327.15 Tm -0.0067 Tw -[( of an element of )]TJ -/TT13 1 Tf -7.6422 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( will)]TJ --38.0364 -1.2889 TD -0 Tw -(be given the value on the )Tj -/TT8 1 Tf -6 0 0 6 276.1113 315.55 Tm -(CDR)Tj -/TT6 1 Tf -9 0 0 9 286.9131 315.55 Tm -( of that element.)Tj -/TT8 1 Tf -6 0 0 6 150 296.27 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 296.27 Tm -(DEFEVAL)Tj -/F1 1 Tf -10 0 0 10 191.4 296.27 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 194.18 296.27 Tm -(TYPE FN)Tj -/TT8 1 Tf -6 0 0 6 231.9861 296.27 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 235.5867 296.27 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 296.27 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0078 Tw -[(Specifies how a datum of a particular type is to be evaluated. Intended primarily for user-)]TJ -0 -1.2222 TD -0.1 Tw -(defined data types, but works for all data types except lists, literal atoms, and numbers.)Tj -/TT13 1 Tf -T* -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2467 Tw -[( is a type name. )]TJ -/TT13 1 Tf -8.8511 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2467 Tw -[( is a function object, i.e., name of a function or a lambda)]TJ --12.4517 -1.2889 TD -0.1733 Tw -[(expression. Whenever the interpreter encounters a datum of the indicated type, )]TJ -/TT13 1 Tf -37.6596 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1733 Tw -[( is)]TJ --38.8598 -1.2889 TD -0.0233 Tw -(applied to the datum and its value returned as the result of the evaluation. )Tj -/TT8 1 Tf -6 0 0 6 477.5382 234.47 Tm -0 Tw -(DEFEVAL)Tj -/TT6 1 Tf -9 0 0 9 502.7423 234.47 Tm -0.0233 Tw -[( returns)]TJ --36.5269 -1.2222 TD -0.0511 Tw -[(the previous evaling function for this type. If )]TJ -/TT13 1 Tf -20.7515 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0511 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 382.4389 223.47 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 393.2407 223.47 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 398.2007 223.47 Tm -(DEFEVAL)Tj -/TT6 1 Tf -9 0 0 9 423.4048 223.47 Tm -0.0511 Tw -[( returns the current evaling)]TJ --27.7116 -1.2889 TD -0.1367 Tw -[(function without changing it. If )]TJ -/TT13 1 Tf -15.1657 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1367 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 333.7067 211.87 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 337.3073 211.87 Tm -0.1367 Tw -(, the evaling functions is set back to the system)Tj --18.1453 -1.2889 TD -0 Tw -(default \(which for all data types except lists is to return the datum itself\).)Tj -/TT8 1 Tf -6 0 0 6 174 182.27 Tm -(COMPILETYPELST)Tj -/TT6 1 Tf -9 0 0 9 224.4082 182.27 Tm -0.0167 Tw -[( \(see Chapter 18\) permits the user to specify how a datum of a particular type)]TJ --5.6009 -1.2222 TD -0 Tw -(is to be compiled.)Tj -/TT8 1 Tf -6 0 0 6 150 151.99 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 151.99 Tm -(EVALHOOK)Tj -/F1 1 Tf -10 0 0 10 196.8 151.99 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 199.58 151.99 Tm -(FORM EVALHOOKFN)Tj -/TT8 1 Tf -6 0 0 6 280.5932 151.99 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 284.1938 151.99 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 151.99 Tm -([Function])Tj -/TT8 1 Tf -6 0 0 6 174 135.39 Tm -(EVALHOOK)Tj -/TT6 1 Tf -9 0 0 9 202.8047 135.39 Tm -0.0467 Tw -[( evaluates the expression )]TJ -/TT13 1 Tf -11.4777 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -[(, and returns its value. While evaluating )]TJ -/TT13 1 Tf -18.5857 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -(, the)Tj --38.0647 -1.2889 TD -0 Tw -(function )Tj -/TT8 1 Tf -6 0 0 6 210.9033 123.79 Tm -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 225.3056 123.79 Tm -0.1433 Tw -[( behaves in a special way. Whenever a list other than )]TJ -/TT13 1 Tf -25.5564 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1433 Tw -[( itself is to be)]TJ --33.6574 -1.2889 TD -0.1567 Tw -(evaluated, whether implicitly or via an explicit call to )Tj -/TT8 1 Tf -6 0 0 6 401.0025 112.19 Tm -0 Tw -(EVAL)Tj -/TT6 1 Tf -9 0 0 9 415.4048 112.19 Tm -(, )Tj -/TT13 1 Tf -0.6567 0 TD -(EVALHOOKFN)Tj -/TT6 1 Tf -6.001 0 TD -0.1567 Tw -[( is invoked \(it)]TJ --33.4804 -1.2889 TD -0.0033 Tw -(should be a function\), with the form to be evaluated as its argument. )Tj -/TT13 1 Tf -30.8001 0 TD -0 Tw -(EVALHOOKFN)Tj -/TT6 1 Tf -6.001 0 TD -0.0004 Tc -0.0029 Tw -( is then)Tj --36.8011 -1.2889 TD -0 Tc -0.12 Tw -[(responsible for evaluating the form. Whatever is returned is assume to be the result of)]TJ -0 -1.2222 TD -0.2067 Tw -[(evaluating the form. During the execution of )]TJ -/TT13 1 Tf -21.874 0 TD -0 Tw -(EVALHOOKFN)Tj -/TT6 1 Tf -6.001 0 TD -0.2067 Tw -(, this special evaluation is)Tj --27.875 -1.2889 TD -0 Tw -(turned off. \(Note that )Tj -/TT8 1 Tf -6 0 0 6 263.6177 66.39 Tm -(EVALHOOK)Tj -/TT6 1 Tf -9 0 0 9 292.4224 66.39 Tm -( does not affect the evaluations of variables, only of lists\).)Tj --13.158 -2 TD -(Here is an example of a simple tracing routine that uses the )Tj -/TT8 1 Tf -6 0 0 6 412.0166 48.39 Tm -(EVALHOOK)Tj -/TT6 1 Tf -9 0 0 9 440.8213 48.39 Tm -( feature:)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -47 0 obj -<< -/Length 11293 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-11)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT9 1 Tf -6 0 0 6 162 572.09 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(DEFINEQ \(PRINTHOOK \(FORM\))Tj -1.0132 -1 TD -(\(printout T "eval: "FORM T\))Tj -T* -(\(EVALHOOK FORM \(FUNCTION PRINTHOOK)Tj -T* -(\(PRINTHOOK\))Tj -/TT6 1 Tf -9 0 0 9 126 538.54 Tm -(Using )Tj -/TT8 1 Tf -6 0 0 6 151.9277 538.54 Tm -(PRINTHOOK)Tj -/TT6 1 Tf -9 0 0 9 184.333 538.54 Tm -(, one might see the following interaction:)Tj -/TT9 1 Tf -6 0 0 6 162 526.09 Tm -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(EVALHOOK \(LIST \(CONS 1 2\)\(CONS 3 4\)\) PRINTHOOK\))Tj -1.0132 -1 TD -(eval: \(CONS 1 2\))Tj -T* -(eval: \(CONS 3 4\))Tj -T* -(\(\(1.2\)\(3.4\)\))Tj -/TT4 1 Tf -10 0 0 10 54 488.2 Tm -(Iterating and Mapping Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 485.49 m -510.01 485.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 471.54 Tm -0.1056 Tw -(The functions below are used to evaluate a form or apply a function repeatedly. )Tj -/TT8 1 Tf -6 0 0 6 413.4155 471.54 Tm -0 Tw -(RPT)Tj -/TT6 1 Tf -9 0 0 9 424.2173 471.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 429.6673 471.54 Tm -(RPTQ)Tj -/TT6 1 Tf -9 0 0 9 444.0696 471.54 Tm -0.1056 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 467.9555 471.54 Tm -0 Tw -(FRPTQ)Tj -/TT6 1 Tf -9 0 0 9 78 460.54 Tm -0.1611 Tw -(evaluate an expression a specified number of time. )Tj -/TT8 1 Tf -6 0 0 6 296.8591 460.54 Tm -0 Tw -(MAP)Tj -/TT6 1 Tf -9 0 0 9 307.6608 460.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 313.6108 460.54 Tm -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 335.2144 460.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 341.1644 460.54 Tm -(MAPLIST)Tj -/TT6 1 Tf -9 0 0 9 366.3685 460.54 Tm -0.1611 Tw -(, etc., apply a given function)Tj --32.0409 -1.2222 TD -0 Tw -(repeatedly to different elements of a list, possibly constructing another list.)Tj -0 -2 TD -0.0356 Tw -[(These functions allow efficient iterative computations, but they are difficult to use. For programming)]TJ -0 -1.2222 TD -0.0233 Tw -(iterative computations, it is usually better to use the CLISP Iterative Statement facility \(see Chapter 9\),)Tj -T* -0.1033 Tw -[(which provides a more general and complete facility for expressing iterative statements. Whenever)]TJ -T* -0.0089 Tw -(possible, CLISP transltes iterative statements into expressions using the functions below, so there is no)Tj -T* -0 Tw -(efficiency loss.)Tj -/TT8 1 Tf -6 0 0 6 102 368.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 368.26 Tm -(RPT)Tj -/TT8 1 Tf -6 0 0 6 121.8 368.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 125.4006 368.26 Tm -(N FORM)Tj -/TT8 1 Tf -6 0 0 6 157.8058 368.26 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 161.4064 368.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 368.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0822 Tw -(Evaluates the expression )Tj -/TT13 1 Tf -11.4195 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT13 1 Tf -0.5822 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( times. Returns the value of the last evaluation. If )]TJ -/TT13 1 Tf -23.3519 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( is)]TJ --38.9542 -1.2889 TD -0 Tw -(less than or equal to 0, )Tj -/TT13 1 Tf -10.104 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is not evaluated, and )Tj -/TT8 1 Tf -6 0 0 6 325.9819 340.06 Tm -(RPT)Tj -/TT6 1 Tf -9 0 0 9 336.7837 340.06 Tm -( returns )Tj -/TT8 1 Tf -6 0 0 6 370.1206 340.06 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 380.9224 340.06 Tm -(.)Tj --28.3247 -2.0667 TD -0.0167 Tw -(Before each evaluation, the local variable )Tj -/TT8 1 Tf -6 0 0 6 291.7257 321.46 Tm -0 Tw -(RPTN)Tj -/TT6 1 Tf -9 0 0 9 306.128 321.46 Tm -0.0167 Tw -[( is bound to the number of evaluations yet to)]TJ --20.0142 -1.2222 TD -0.1578 Tw -[(take place. This variable can be referenced within )]TJ -/TT13 1 Tf -23.7203 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1578 Tw -[(. For example, )]TJ -/TT8 1 Tf -6 0 0 6 427.481 310.46 Tm -0.3783 Tw -(\(RPT 10 \(PRINT)Tj --50.2468 -1.9333 TD -0 Tw -(RPTN\)\))Tj -/TT6 1 Tf -9 0 0 9 147.6035 298.86 Tm -( will print the numbers )Tj -/TT8 1 Tf -6 0 0 6 241.73 298.86 Tm -(10)Tj -/TT6 1 Tf -9 0 0 9 248.9311 298.86 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 253.4311 298.86 Tm -(9)Tj -/TT6 1 Tf -9 0 0 9 257.0317 298.86 Tm -(...)Tj -/TT8 1 Tf -6 0 0 6 263.7817 298.86 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 267.3823 298.86 Tm -(, and return )Tj -/TT8 1 Tf -6 0 0 6 316.6406 298.86 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 320.2412 298.86 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 279.58 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 279.58 Tm -(RPTQ)Tj -/TT13 1 Tf -2.3999 0 TD -( N FORM)Tj -6 0 0 6 165 277.58 Tm -(1)Tj -9 0 0 9 168.6 279.58 Tm -( FORM)Tj -6 0 0 6 195.6 277.58 Tm -(2)Tj -9 0 0 9 199.2 279.58 Tm -(... FORM)Tj -6 0 0 6 242.4 277.58 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/F1 1 Tf -10 0 0 10 249.6006 279.58 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 279.58 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.95 TD -0.0233 Tw -(Nlambda-nospread version of )Tj -/TT8 1 Tf -6 0 0 6 248.5826 262.03 Tm -0 Tw -(RPT)Tj -/TT6 1 Tf -9 0 0 9 259.3844 262.03 Tm -0.0233 Tw -(: )Tj -/TT13 1 Tf -0.7967 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -[( is evaluated, )]TJ -/TT13 1 Tf -6.1388 0 TD -0 Tw -(FORM)Tj -6 0 0 6 348.83 260.03 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 352.43 262.03 Tm -0.0233 Tw -[( are not. Returns the value of the)]TJ --25.1589 -1.3944 TD -0 Tw -(last evaluation of)Tj -/TT13 1 Tf -7.603 0 TD -( FORM)Tj -6 0 0 6 221.42 247.48 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 225.02 249.48 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 228.65 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 228.65 Tm -(FRPTQ)Tj -/TT8 1 Tf -6 0 0 6 132.6 228.65 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 136.2006 228.65 Tm -(N FORM)Tj -6 0 0 6 168.6 226.65 Tm -(1)Tj -9 0 0 9 172.2 228.65 Tm -( FORM)Tj -6 0 0 6 199.2 226.65 Tm -(2)Tj -9 0 0 9 202.8 228.65 Tm -(... FORM)Tj -6 0 0 6 246 226.65 Tm -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/F1 1 Tf -10 0 0 10 253.2006 228.65 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 228.65 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.95 TD -(Faster version of )Tj -/TT8 1 Tf -6 0 0 6 194.3174 211.1 Tm -(RPTQ)Tj -/TT6 1 Tf -9 0 0 9 208.7197 211.1 Tm -(. Does not bind )Tj -/TT8 1 Tf -6 0 0 6 273.6445 211.1 Tm -(RPTN)Tj -/TT6 1 Tf -9 0 0 9 288.0469 211.1 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 191.82 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 191.82 Tm -(MAP)Tj -/F1 1 Tf -10 0 0 10 121.8 191.82 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 124.58 191.82 Tm -(MAP)Tj -6 0 0 6 140.78 189.82 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 144.38 191.82 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 147.16 191.82 Tm -(MAPFN)Tj -6 0 0 6 174.16 189.82 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 177.76 191.82 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 180.54 191.82 Tm -(MAPFN)Tj -6 0 0 6 207.54 189.82 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 211.14 191.82 Tm -(\))Tj -0.333 -0.3 TD -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 191.82 Tm -([Function])Tj --35.4033 -2.08 TD -(If )Tj -/TT13 1 Tf -0.9233 0 TD -(MAPFN)Tj -6 0 0 6 161.31 171.1 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 164.91 173.1 Tm -0.0008 Tc -0.0025 Tw -( is )Tj -/TT8 1 Tf -6 0 0 6 175.9036 173.1 Tm -0 Tc -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 186.7053 173.1 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 191.2353 173.1 Tm -(MAP)Tj -/TT6 1 Tf -9 0 0 9 202.0371 173.1 Tm -0.0002 Tc -0.0031 Tw -( applies the function )Tj -/TT13 1 Tf -9.2946 0 TD -0 Tc -0 Tw -(MAPFN)Tj -6 0 0 6 312.7 171.1 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 316.3 173.1 Tm -0.0001 Tc -0.0032 Tw -( to successive tails of the list )Tj -/TT13 1 Tf -12.6518 0 TD -0 Tc -0 Tw -(MAP)Tj -6 0 0 6 446.3799 171.1 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 449.98 173.1 Tm -0.0003 Tc -0.003 Tw -(. That is,)Tj --35.9978 -1.3944 TD -0 Tc -0.0378 Tw -(first it computes )Tj -/TT8 1 Tf -6 0 0 6 193.997 160.55 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 197.5976 160.55 Tm -(MAPFN)Tj -6 0 0 6 224.61 158.55 Tm -(1)Tj -9 0 0 9 228.21 160.55 Tm -0.0911 Tw -[( MAP)]TJ -6 0 0 6 250.63 158.55 Tm -0 Tw -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 257.8306 160.55 Tm -0.0378 Tw -(, and then )Tj -/TT8 1 Tf -6 0 0 6 300.8096 160.55 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 304.4102 160.55 Tm -(MAPFN)Tj -6 0 0 6 331.41 158.55 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0917 Tw -[( \(CDR )]TJ -/TT13 1 Tf -9 0 0 9 357.7135 160.55 Tm -0 Tw -(MAP)Tj -6 0 0 6 373.91 158.55 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 384.7112 160.55 Tm -0.0378 Tw -(, etc., until )Tj -/TT13 1 Tf -4.9556 0 TD -0 Tw -(MAP)Tj -6 0 0 6 445.5099 158.55 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 449.11 160.55 Tm -0.0378 Tw -[( becomes)]TJ --35.9011 -1.3944 TD -0.1067 Tw -[(a non-list. If )]TJ -/TT13 1 Tf -6.2216 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 209 146 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT6 1 Tf -9 0 0 9 217.7306 148 Tm -0.1067 Tw -(is provided, )Tj -/TT8 1 Tf -6 0 0 6 269.7219 148 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 273.3224 148 Tm -(MAPFN)Tj -6 0 0 6 300.33 146 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT13 1 Tf -9 0 0 9 309.0605 148 Tm -(MAP)Tj -6 0 0 6 325.26 146 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 332.4606 148 Tm -0.1067 Tw -[( is used instead of)]TJ -/TT8 1 Tf -6 0 0 6 407.6106 148 Tm -0.255 Tw -[( \(CDR )]TJ -/TT13 1 Tf -9 0 0 9 432.2741 148 Tm -0 Tw -(MAP)Tj -6 0 0 6 448.49 146 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 455.6906 148 Tm -0.1067 Tw -[( for the)]TJ --36.6323 -1.3944 TD -0.1811 Tw -(next call for )Tj -/TT13 1 Tf -5.9965 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 206.97 133.45 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 210.57 135.45 Tm -0.1811 Tw -(, e.g., if )Tj -/TT13 1 Tf -3.9525 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 273.14 133.45 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 276.74 135.45 Tm -0.1811 Tw -[( were )]TJ -/TT8 1 Tf -6 0 0 6 304.1831 135.45 Tm -0 Tw -(CDDR)Tj -/TT6 1 Tf -9 0 0 9 318.5854 135.45 Tm -0.1811 Tw -(, alternate elements of the list would be)Tj --21.3984 -1.3944 TD -0 Tw -(skipped. )Tj -/TT8 1 Tf -6 0 0 6 164.8169 122.9 Tm -(MAP)Tj -/TT6 1 Tf -9 0 0 9 175.6186 122.9 Tm -( returns )Tj -/TT8 1 Tf -6 0 0 6 208.9556 122.9 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 219.7573 122.9 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 103.62 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 103.62 Tm -(MAPC)Tj -/F1 1 Tf -10 0 0 10 127.2 103.62 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 129.98 103.62 Tm -(MAP)Tj -6 0 0 6 146.18 101.62 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 149.78 103.62 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 152.56 103.62 Tm -(MAPFN)Tj -6 0 0 6 179.56 101.62 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 183.16 103.62 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 185.94 103.62 Tm -(MAPFN)Tj -6 0 0 6 212.94 101.62 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 216.54 103.62 Tm -(\))Tj -0.333 -0.3 TD -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 103.62 Tm -([Function])Tj --35.4033 -2.08 TD -0.0733 Tw -(Identical to )Tj -/TT8 1 Tf -6 0 0 6 174.4162 84.9 Tm -0 Tw -(MAP)Tj -/TT6 1 Tf -9 0 0 9 185.2179 84.9 Tm -0.0733 Tw -(, except that )Tj -/TT8 1 Tf -6 0 0 6 237.4142 84.9 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 241.0148 84.9 Tm -(MAPFN)Tj -6 0 0 6 267.99 82.9 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 271.59 84.9 Tm -( )Tj -/TT8 1 Tf -6 0 0 6 274.5 84.9 Tm -(\(CAR)Tj -/TT13 1 Tf -9 0 0 9 288.9023 84.9 Tm -0.1744 Tw -[( MAP)]TJ -6 0 0 6 312.07 82.9 Tm -0 Tw -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 322.8712 84.9 Tm -0.0733 Tw -[( is computed at each iteration instead of)]TJ -/TT8 1 Tf -6 0 0 6 126 72.35 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 129.6006 72.35 Tm -(MAPFN)Tj -6 0 0 6 156.6 70.35 Tm -(1)Tj -/TT19 1 Tf -9 0 0 9 160.2 72.35 Tm -( )Tj -/TT13 1 Tf -0.25 0 TD -(MAP)Tj -6 0 0 6 178.65 70.35 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 185.8506 72.35 Tm -(, i.e., )Tj -/TT8 1 Tf -6 0 0 6 206.2807 72.35 Tm -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 220.6831 72.35 Tm -( works on elements, )Tj -/TT8 1 Tf -6 0 0 6 302.3643 72.35 Tm -(MAP)Tj -/TT6 1 Tf -9 0 0 9 313.166 72.35 Tm -( on tails. )Tj -/TT8 1 Tf -6 0 0 6 348.8057 72.35 Tm -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 363.208 72.35 Tm -( returns )Tj -/TT8 1 Tf -6 0 0 6 396.5449 72.35 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 407.3467 72.35 Tm -(.)Tj -ET -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT9 9 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -52 0 obj -<< -/Length 11103 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-12)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -6 0 0 6 150 568.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 568.26 Tm -(MAPLIST)Tj -/F1 1 Tf -10 0 0 10 191.4 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 194.18 568.26 Tm -(MAP)Tj -6 0 0 6 210.38 566.26 Tm -(X)Tj -/F2 1 Tf -10 0 0 10 213.98 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 216.76 568.26 Tm -(MAPFN)Tj -6 0 0 6 243.76 566.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 247.36 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 250.14 568.26 Tm -(MAPFN)Tj -6 0 0 6 277.14 566.26 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 280.74 568.26 Tm -(\))Tj -0.333 -0.3 TD -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.26 Tm -([Function])Tj --35.4033 -2.08 TD -0.3289 Tw -(Successively computes the same values that )Tj -/TT8 1 Tf -6 0 0 6 368.1521 549.54 Tm -0 Tw -(MAP)Tj -/TT6 1 Tf -9 0 0 9 378.9538 549.54 Tm -0.3289 Tw -[( would compute, and returns a list)]TJ --22.7726 -1.2222 TD -0 Tw -(consisting of those values. )Tj -/TT8 1 Tf -6 0 0 6 150 519.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 519.26 Tm -(MAPCAR)Tj -/F1 1 Tf -10 0 0 10 186 519.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 188.78 519.26 Tm -(MAP)Tj -6 0 0 6 204.98 517.2599 Tm -(X)Tj -9 0 0 9 208.58 519.26 Tm -( MAPFN)Tj -6 0 0 6 240.98 517.2599 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 244.58 519.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 247.36 519.26 Tm -(MAPFN)Tj -6 0 0 6 274.36 517.2599 Tm -(2\))Tj -/F2 1 Tf -10 0 0 10 281.56 516.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 519.26 Tm -([Function])Tj --35.4033 -2.08 TD -0.0433 Tw -(Computes the same values that )Tj -/TT8 1 Tf -6 0 0 6 302.7586 500.54 Tm -0 Tw -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 317.1609 500.54 Tm -0.0433 Tw -[( would compute, and returns a list consisting of those)]TJ --15.9068 -1.2222 TD -0 Tw -(values, e.g.,)Tj -/TT8 1 Tf -6 0 0 6 220.3227 489.54 Tm -( \(MAPCAR X FNTYP\))Tj -/TT6 1 Tf -9 0 0 9 285.1333 489.54 Tm -( is a list of)Tj -/TT8 1 Tf -6 0 0 6 324.9653 489.54 Tm -( FNTYP)Tj -/TT6 1 Tf -9 0 0 9 346.5688 489.54 Tm -(s for each element on )Tj -/TT8 1 Tf -6 0 0 6 432.9653 489.54 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 436.5659 489.54 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 470.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 470.26 Tm -(MAPCON)Tj -/TT13 1 Tf -3.5999 0 TD -( MAP)Tj -6 0 0 6 207.6 468.26 Tm -(X)Tj -9 0 0 9 211.2 470.26 Tm -( MAPFN)Tj -6 0 0 6 243.6 468.26 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 247.2 470.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 249.98 470.26 Tm -(MAPFN)Tj -6 0 0 6 276.98 468.26 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 280.58 470.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 283.58 467.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 470.26 Tm -([Function])Tj --35.4033 -2.08 TD -0.0522 Tw -(Computes the same values that )Tj -/TT8 1 Tf -6 0 0 6 303.1586 451.54 Tm -0 Tw -(MAP)Tj -/TT6 1 Tf -9 0 0 9 313.9603 451.54 Tm -0.0522 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 334.6362 451.54 Tm -0 Tw -(MAPLIST)Tj -/TT6 1 Tf -9 0 0 9 359.8403 451.54 Tm -0.0522 Tw -[( but )]TJ -/TT8 1 Tf -6 0 0 6 378.6221 451.54 Tm -0 Tw -(NCONCs)Tj -/TT6 1 Tf -9 0 0 9 400.2256 451.54 Tm -0.0522 Tw -[( these values to form a list which)]TJ --25.1362 -1.2222 TD -0 Tw -(it returns.)Tj -/TT8 1 Tf -6 0 0 6 150 421.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 421.26 Tm -(MAPCONC)Tj -/F1 1 Tf -10 0 0 10 191.4 421.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 194.18 421.26 Tm -(MAP)Tj -6 0 0 6 210.38 419.26 Tm -(X)Tj -9 0 0 9 213.98 421.26 Tm -( MAPFN)Tj -6 0 0 6 246.38 419.26 Tm -(1)Tj -9 0 0 9 249.98 421.26 Tm -( MAPFN)Tj -6 0 0 6 282.38 419.26 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 285.98 421.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 288.98 418.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 421.26 Tm -([Function])Tj --35.4033 -2.08 TD -0.0367 Tw -(Computes the same values that )Tj -/TT8 1 Tf -6 0 0 6 302.4586 402.54 Tm -0 Tw -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 316.8609 402.54 Tm -0.0367 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 337.2568 402.54 Tm -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 358.8603 402.54 Tm -0.0367 Tw -(, but )Tj -/TT8 1 Tf -6 0 0 6 379.6121 402.54 Tm -0 Tw -(NCONCs)Tj -/TT6 1 Tf -9 0 0 9 401.2156 402.54 Tm -0.0367 Tw -[( the values to form a list which it)]TJ --25.2462 -1.2222 TD -0 Tw -(returns.)Tj --5.3333 -2 TD -0.0044 Tw -(Note that )Tj -/TT8 1 Tf -6 0 0 6 165.8285 373.54 Tm -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 187.432 373.54 Tm -0.0044 Tw -( creates a new list which is a mapping of the old list in that each element of the new list)Tj --6.8258 -1.2222 TD -0.0967 Tw -(is the result of applying a function to the corresponding element on the original list. )Tj -/TT8 1 Tf -6 0 0 6 477.0948 362.54 Tm -0 Tw -(MAPCONC)Tj -/TT6 1 Tf -9 0 0 9 502.2989 362.54 Tm -0.0967 Tw -[( is used)]TJ --41.811 -1.2222 TD -0.2444 Tw -(when there are a variable number of elements \(including none\) to be inserted at each iteration.)Tj -T* -0 Tw -(Examples:)Tj -/TT8 1 Tf -6 0 0 6 126 328.09 Tm -(\(MAPCONC \(A B C NIL D NIL\) \(LAMBDA \(Y\)\(if \(NULL Y\) then NIL)Tj -2 -1 TD -(else \(LIST Y\)\)\)\) = > \(A B C D\))Tj -/TT6 1 Tf -9 0 0 9 126 306.54 Tm -(This )Tj -/TT8 1 Tf -6 0 0 6 145.437 306.54 Tm -(MAPCONC)Tj -/TT6 1 Tf -9 0 0 9 170.6411 306.54 Tm -( returns a list consisting of)Tj -/TT8 1 Tf -6 0 0 6 275.3188 306.54 Tm -( MAP)Tj -/TT13 1 Tf -2.4052 -0.3333 TD -(X)Tj -/TT6 1 Tf -9 0 0 9 293.35 306.54 Tm -( with all )Tj -/TT8 1 Tf -6 0 0 6 328.1371 306.54 Tm -(NILs)Tj -/TT6 1 Tf -9 0 0 9 342.5394 306.54 Tm -( removed.)Tj -/TT8 1 Tf -6 0 0 6 126 292.54 Tm -(\(MAPCONC \(\(A B\) C \(D E F\)\(G\) H I\) \(LAMBDA \(Y\)\(if \(LISP Y\) then Y)Tj -2 -1 TD -(else NIL\)\)\) = > \(A B D E F G\))Tj -/TT6 1 Tf -9 0 0 9 126 270.99 Tm -(This )Tj -/TT8 1 Tf -6 0 0 6 145.437 270.99 Tm -(MAPCONC)Tj -/TT6 1 Tf -9 0 0 9 170.6411 270.99 Tm -( returns a linear list consisting of all the lists on )Tj -/TT13 1 Tf -21.022 0 TD -(MAP)Tj -6 0 0 6 376.08 268.99 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 379.68 270.99 Tm -(.)Tj --28.1867 -2.1722 TD -(Since )Tj -/TT8 1 Tf -6 0 0 6 149.7972 251.44 Tm -(MAPCONC)Tj -/TT6 1 Tf -9 0 0 9 175.0013 251.44 Tm -0.0733 Tw -[( uses )]TJ -/TT8 1 Tf -6 0 0 6 198.1885 251.44 Tm -0 Tw -(NCONC)Tj -/TT6 1 Tf -9 0 0 9 216.1914 251.44 Tm -0.0733 Tw -[( to string the corresponding lists together, in this example the original list will)]TJ --10.0213 -1.2222 TD -0.0389 Tw -(be altered to be)Tj -/TT8 1 Tf -6 0 0 6 187.9582 240.44 Tm -0.0933 Tw -[( \(\(A B C D E F G\) C \(D E F G\)\(G\) H I\))]TJ -/TT6 1 Tf -9 0 0 9 329.0199 240.44 Tm -0.0389 Tw -[(. If this is an undesirable side effect, the functional)]TJ --22.5578 -1.2222 TD -0.0344 Tw -(argument to )Tj -/TT8 1 Tf -6 0 0 6 177.8866 229.44 Tm -0 Tw -(MAPCONC)Tj -/TT6 1 Tf -9 0 0 9 203.0907 229.44 Tm -0.0344 Tw -[( should return instead a top level copy of the lists, i.e., )]TJ -/TT8 1 Tf -6 0 0 6 423.4128 229.44 Tm -0.0833 Tw -(\(LAMBDA \(Y\) \(if \(LISTP Y\) then)Tj --49.5688 -1.8333 TD -0 Tw -(\(APPERND Y\) else NIL\)\)\))Tj -/TT6 1 Tf -9 0 0 9 208.8135 218.44 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 199.16 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 199.16 Tm -(MAP2C)Tj -/TT8 1 Tf -6 0 0 6 180.6 199.16 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 184.2006 199.16 Tm -(MAP)Tj -6 0 0 6 200.4 197.16 Tm -(X)Tj -9 0 0 9 204 199.16 Tm -( MAP)Tj -6 0 0 6 225.6 197.16 Tm -(Y)Tj -9 0 0 9 229.2 199.16 Tm -( MAPFN)Tj -6 0 0 6 261.6 197.16 Tm -(1)Tj -9 0 0 9 265.2 199.16 Tm -( MAPFN)Tj -6 0 0 6 297.6 197.16 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/F2 1 Tf -10 0 0 10 304.8 196.16 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 199.16 Tm -([Function])Tj --35.4033 -2.08 TD -0.3256 Tw -(Identical to )Tj -/TT8 1 Tf -6 0 0 6 226.9562 180.44 Tm -0 Tw -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 241.3585 180.44 Tm -0.3256 Tw -[( except )]TJ -/TT13 1 Tf -3.9963 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 304.31 178.44 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 307.91 180.44 Tm -0.3256 Tw -[( is a function of two arguments, and )]TJ -/TT8 1 Tf -6 0 0 6 477.1298 180.44 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 480.7303 180.44 Tm -(MAPFN)Tj -6 0 0 6 507.7499 178.44 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.78 Tw -[( \(CAR)]TJ -/TT13 1 Tf -9 0 0 9 174 167.89 Tm -0 Tw -(MAP)Tj -6 0 0 6 190.2 165.89 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\(CAR)Tj -/TT6 1 Tf -9 0 0 9 211.8029 167.89 Tm -( )Tj -/TT13 1 Tf -0.2811 0 TD -(MAP)Tj -6 0 0 6 230.53 165.89 Tm -(Y)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 241.3312 167.89 Tm -0.0311 Tw -[( is computed at each iteration. Terminates when either )]TJ -/TT13 1 Tf -24.837 0 TD -0 Tw -(MAP)Tj -6 0 0 6 481.09 165.89 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 484.69 167.89 Tm -0.0311 Tw -[( or )]TJ -/TT13 1 Tf -1.5031 0 TD -0 Tw -(MAP)Tj -6 0 0 6 514.42 165.89 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 518.02 167.89 Tm -0.0311 Tw -[( is a)]TJ --38.2244 -1.3944 TD -0 Tw -(non-list.)Tj -/TT13 1 Tf -0 -2 TD -(MAPFN)Tj -6 0 0 6 201 135.34 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 204.6 137.34 Tm -( is still a function of one argument, and is applied twice on each iteration;)Tj -/TT8 1 Tf -6 0 0 6 174 124.79 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 177.6006 124.79 Tm -(MAPFN)Tj -6 0 0 6 204.6 122.79 Tm -(2)Tj -9 0 0 9 208.2 124.79 Tm -( MAP)Tj -6 0 0 6 229.8 122.79 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 237.0006 124.79 Tm -( gives the new )Tj -/TT13 1 Tf -6.5972 0 TD -(MAP)Tj -6 0 0 6 312.57 122.79 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 316.17 124.79 Tm -(,)Tj -/TT8 1 Tf -6 0 0 6 318.42 124.79 Tm -( \()Tj -/TT13 1 Tf -9 0 0 9 325.6212 124.79 Tm -(MAPFN)Tj -6 0 0 6 352.62 122.79 Tm -(2)Tj -9 0 0 9 356.22 124.79 Tm -( MAP)Tj -6 0 0 6 377.82 122.79 Tm -(Y)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 385.0206 124.79 Tm -( the new )Tj -/TT13 1 Tf -4.0322 0 TD -(MAP)Tj -6 0 0 6 437.51 122.79 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 441.11 124.79 Tm -(. )Tj -/TT8 1 Tf -6 0 0 6 447.86 124.79 Tm -(CDR)Tj -/TT6 1 Tf -9 0 0 9 458.6617 124.79 Tm -( is used if )Tj -/TT13 1 Tf -4.4556 0 TD -(MAPFN)Tj -6 0 0 6 525.78 122.79 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 174 112.24 Tm -(is not supplied, i.e., is )Tj -/TT8 1 Tf -6 0 0 6 262.2422 112.24 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 273.0439 112.24 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 92.96 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 92.96 Tm -(MAP2CAR)Tj -/TT13 1 Tf -4.1999 0 TD -( MAP)Tj -6 0 0 6 213 90.96 Tm -(X)Tj -9 0 0 9 216.6 92.96 Tm -( MAP)Tj -6 0 0 6 238.2 90.96 Tm -(Y)Tj -9 0 0 9 241.8 92.96 Tm -( MAPFN)Tj -6 0 0 6 274.2 90.96 Tm -(1)Tj -9 0 0 9 277.8 92.96 Tm -( MAPFN)Tj -6 0 0 6 310.2 90.96 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 313.8 92.96 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 316.8 89.96 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 92.96 Tm -([Function])Tj --35.4033 -2.08 TD -0.2667 Tw -(Identical to )Tj -/TT8 1 Tf -6 0 0 6 225.8962 74.24 Tm -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 247.4997 74.24 Tm -0.2667 Tw -[( except )]TJ -/TT13 1 Tf -3.8785 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 309.39 72.24 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 312.99 74.24 Tm -0.2667 Tw -[( is a function of two arguments, and )]TJ -/TT8 1 Tf -6 0 0 6 477.9698 74.24 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 481.5703 74.24 Tm -(MAPFN)Tj -6 0 0 6 508.59 72.24 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.64 Tw -[( \(CAR)]TJ -/TT13 1 Tf -9 0 0 9 174 61.69 Tm -0 Tw -(MAP)Tj -6 0 0 6 190.2 59.69 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\(CAR )Tj -/TT13 1 Tf -9 0 0 9 216.2835 61.69 Tm -(MAP)Tj -6 0 0 6 232.48 59.69 Tm -(Y)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 243.2812 61.69 Tm -0.0611 Tw -[( is used to assemble the new list. Terminates when either )]TJ -/TT13 1 Tf -26.3349 0 TD -0 Tw -(MAP)Tj -6 0 0 6 496.54 59.69 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 500.14 61.69 Tm -0.0611 Tw -[( or )]TJ -/TT13 1 Tf -1.5631 0 TD -0 Tw -(MAP)Tj -6 0 0 6 530.41 59.69 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 174 49.14 Tm -(is a non-list.)Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -55 0 obj -<< -/Length 13643 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-13)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT8 1 Tf -6 0 0 6 102 568.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 568.26 Tm -(SUBSET)Tj -/TT8 1 Tf -6 0 0 6 138 568.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 141.6006 568.26 Tm -(MAP)Tj -6 0 0 6 157.8 566.26 Tm -(X)Tj -9 0 0 9 161.4 568.26 Tm -( MAPFN)Tj -6 0 0 6 193.8 566.26 Tm -(1)Tj -9 0 0 9 197.4 568.26 Tm -( MAPFN)Tj -6 0 0 6 229.8 566.26 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 233.4 568.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 236.4 565.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.26 Tm -([Function])Tj --35.4033 -2.08 TD -0.1067 Tw -(Applies )Tj -/TT13 1 Tf -4.1782 0 TD -0 Tw -(MAPFN)Tj -6 0 0 6 190.61 547.54 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 194.21 549.54 Tm -0.1067 Tw -[( to elements of )]TJ -/TT13 1 Tf -7.1205 0 TD -0 Tw -(MAP)Tj -6 0 0 6 274.49 547.54 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 278.09 549.54 Tm -0.1067 Tw -[( and returns a list of those elements for which this)]TJ --16.8989 -1.3944 TD -0 Tw -(application is non-)Tj -/TT8 1 Tf -6 0 0 6 200.0786 536.99 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 210.8804 536.99 Tm -(, e.g.:)Tj -/TT8 1 Tf -6 0 0 6 162 524.54 Tm -(\(SUBSET \(A B 3 C 4\) NUMBERP\) = \(3 4\))Tj -/TT13 1 Tf -9 0 0 9 126 508.99 Tm -(MAPFN)Tj -6 0 0 6 153 506.99 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 156.6 508.99 Tm -( plays the same role as with )Tj -/TT8 1 Tf -6 0 0 6 268.766 508.99 Tm -(MAP)Tj -/TT6 1 Tf -9 0 0 9 279.5677 508.99 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 284.0677 508.99 Tm -(MAPC)Tj -/TT6 1 Tf -9 0 0 9 298.4701 508.99 Tm -(, et al.)Tj -/TT8 1 Tf -6 0 0 6 102 488.16 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 488.16 Tm -(EVERY)Tj -/TT8 1 Tf -6 0 0 6 132.6 488.16 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 136.2006 488.16 Tm -(EVERY)Tj -6 0 0 6 163.2 486.16 Tm -(X)Tj -9 0 0 9 166.8 488.16 Tm -( EVERYFN)Tj -6 0 0 6 210 486.16 Tm -(1)Tj -9 0 0 9 213.6 488.16 Tm -( EVERYFN)Tj -6 0 0 6 256.8 486.16 Tm -(2)Tj -/F2 1 Tf -10 0 0 10 260.4 488.16 Tm -(\))Tj -0.333 -0.3 TD -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 488.16 Tm -([Function])Tj --35.4033 -2.08 TD -(Returns )Tj -/TT8 1 Tf -6 0 0 6 159.8934 469.44 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 163.494 469.44 Tm -0.0389 Tw -[( if the result of applying )]TJ -/TT13 1 Tf -11.1201 0 TD -0 Tw -(EVERYFN)Tj -6 0 0 6 301.38 467.44 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 304.98 469.44 Tm -0.0389 Tw -[( to each element in )]TJ -/TT13 1 Tf -8.7135 0 TD -0 Tw -(EVERY)Tj -6 0 0 6 410.4 467.44 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 414 469.44 Tm -0.0389 Tw -[( is true, otherwise)]TJ -/TT8 1 Tf -6 0 0 6 126 456.89 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 136.8017 456.89 Tm -(. For example, )Tj -/TT8 1 Tf -6 0 0 6 197.5166 456.89 Tm -(\(EVERY \(X Y Z\) ATOM\) => T)Tj -/TT6 1 Tf -9 0 0 9 294.7324 456.89 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 126 438.89 Tm -(EVERY)Tj -/TT6 1 Tf -9 0 0 9 144.0029 438.89 Tm -0.0411 Tw -[( operates by evaluating)]TJ -/TT8 1 Tf -6 0 0 6 237.8375 438.89 Tm -0.1 Tc -0 Tw -( \()Tj -/TT13 1 Tf -9 0 0 9 245.6387 438.89 Tm -0 Tc -(EVERYFN)Tj -6 0 0 6 283.42 436.89 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1 Tw -[( \(CAR )]TJ -/TT13 1 Tf -9 0 0 9 309.8235 438.89 Tm -0 Tw -(EVERY)Tj -6 0 0 6 336.82 436.89 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT13 1 Tf -9 0 0 9 348.2212 438.89 Tm -(EVERY)Tj -6 0 0 6 375.22 436.89 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 382.4206 438.89 Tm -0.0411 Tw -[(. The second argument is)]TJ --28.4912 -1.3944 TD -0.1444 Tw -(passed to )Tj -/TT13 1 Tf -4.6995 0 TD -0 Tw -(EVERYFN)Tj -6 0 0 6 206.1 424.34 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 209.7 426.34 Tm -0.1444 Tw -[( so that it can look at the next element on )]TJ -/TT13 1 Tf -19.8887 0 TD -0 Tw -(EVERY)Tj -6 0 0 6 415.66 424.34 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 419.2599 426.34 Tm -0.1444 Tw -[( if necessary. If)]TJ -/TT13 1 Tf --32.5844 -1.3944 TD -0 Tw -(EVERYFN)Tj -6 0 0 6 163.8 411.79 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 167.4 413.79 Tm -0.0133 Tw -[( yields )]TJ -/TT8 1 Tf -6 0 0 6 196.0067 413.79 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 206.8084 413.79 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 211.4284 413.79 Tm -(EVERY)Tj -/TT6 1 Tf -9 0 0 9 229.4314 413.79 Tm -0.0133 Tw -[( immediately returns )]TJ -/TT8 1 Tf -6 0 0 6 315.6869 413.79 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 326.4886 413.79 Tm -0.0133 Tw -[(. Otherwise, )]TJ -/TT8 1 Tf -6 0 0 6 379.4644 413.79 Tm -0 Tw -(EVERY)Tj -/TT6 1 Tf -9 0 0 9 397.4673 413.79 Tm -0.0133 Tw -[( computes )]TJ -/TT8 1 Tf -6 0 0 6 440.9583 413.79 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 444.5588 413.79 Tm -(EVERYFN)Tj -6 0 0 6 482.38 411.79 Tm -(2)Tj -9 0 0 9 126 401.24 Tm -(EVERY)Tj -6 0 0 6 153 399.24 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 160.2006 401.24 Tm -0.0644 Tw -(, or \()Tj -/TT8 1 Tf -6 0 0 6 179.5759 401.24 Tm -0 Tw -(CDR )Tj -/TT13 1 Tf -9 0 0 9 194.8982 401.24 Tm -(EVERY)Tj -6 0 0 6 221.9 399.24 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 229.1006 401.24 Tm -0.0644 Tw -[( if )]TJ -/TT13 1 Tf -1.2529 0 TD -0 Tw -(EVERYFN)Tj -6 0 0 6 278.18 399.24 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 281.78 401.24 Tm -0.0644 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 292.8936 401.24 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 303.6953 401.24 Tm -0.0644 Tw -(, and uses this as the new )Tj -/TT13 1 Tf -12.9028 0 TD -0 Tw -(EVERY)Tj -6 0 0 6 446.84 399.24 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 450.44 401.24 Tm -0.0644 Tw -(, and the)Tj --36.0489 -1.3944 TD -0.0722 Tw -[(process continues. For example )]TJ -/TT8 1 Tf -6 0 0 6 258.269 388.69 Tm -0.1733 Tw -(\(EVERY X ATOM CDDR\))Tj -/TT6 1 Tf -9 0 0 9 337.0013 388.69 Tm -0.0722 Tw -[( is true if every other element of )]TJ -/TT13 1 Tf -14.9201 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -[( is)]TJ --38.9648 -1.2889 TD -0 Tw -(atomic.)Tj -/TT8 1 Tf -6 0 0 6 102 357.81 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 357.81 Tm -(SOME)Tj -/TT8 1 Tf -6 0 0 6 127.2 357.81 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 130.8006 357.81 Tm -(SOME)Tj -6 0 0 6 152.4 355.81 Tm -(X)Tj -9 0 0 9 156 357.81 Tm -( SOMEFN)Tj -6 0 0 6 193.8 355.81 Tm -(1)Tj -9 0 0 9 197.4 357.81 Tm -( SOMEFN)Tj -6 0 0 6 235.2 355.81 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 238.8 357.81 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 241.8 354.81 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 357.81 Tm -([Function])Tj --35.4033 -2.08 TD -0.0233 Tw -(Returns the tail of)Tj -/TT13 1 Tf -7.9714 0 TD -0.0567 Tw -[( SOME)]TJ -6 0 0 6 225.25 337.09 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 228.85 339.09 Tm -0.0233 Tw -[( beginning with the first element that satisfies)]TJ -/TT13 1 Tf -20.3206 0 TD -0.0567 Tw -[( SOMEFN)]TJ -6 0 0 6 450.05 337.09 Tm -0 Tw -(1)Tj -/TT6 1 Tf -9 0 0 9 453.65 339.09 Tm -0.0233 Tw -(, i.e., for)Tj --36.4056 -1.3944 TD -0 Tw -(which )Tj -/TT13 1 Tf -3.1274 0 TD -(SOMEFN)Tj -6 0 0 6 186.56 324.54 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 190.16 326.54 Tm -0.1444 Tw -[( applied to that element is true. Value is )]TJ -/TT8 1 Tf -6 0 0 6 365.8587 326.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 376.6605 326.54 Tm -0.1444 Tw -[( if no such element exists. )]TJ -/TT8 1 Tf -6 0 0 6 126 313.99 Tm -0.115 Tw -(\(SOME X \(LAMBDA \(Z\) \(EQUAL Z Y\)\)\))Tj -/TT6 1 Tf -9 0 0 9 252.5599 313.99 Tm -0.0478 Tw -[( is equivalent to)]TJ -/TT8 1 Tf -6 0 0 6 316.9686 313.99 Tm -0.115 Tw -[( \(MEMBER Y X\))]TJ -/TT6 1 Tf -9 0 0 9 365.8462 313.99 Tm -0.0478 Tw -(. )Tj -/TT8 1 Tf -6 0 0 6 373.4562 313.99 Tm -0 Tw -(SOME)Tj -/TT6 1 Tf -9 0 0 9 387.8585 313.99 Tm -0.0478 Tw -[( operates analogously to)]TJ -/TT8 1 Tf -6 0 0 6 126 302.99 Tm -0 Tw -(EVERY)Tj -/TT6 1 Tf -9 0 0 9 144.0029 302.99 Tm -0.0089 Tw -[(. At each stage, )]TJ -/TT8 1 Tf -6 0 0 6 208.6993 302.99 Tm -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 212.2999 302.99 Tm -(SOMEFN)Tj -6 0 0 6 244.69 300.99 Tm -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.02 Tw -[( \(CAR )]TJ -/TT13 1 Tf -9 0 0 9 270.1335 302.99 Tm -0 Tw -(SOME)Tj -6 0 0 6 291.73 300.99 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT13 1 Tf -9 0 0 9 302.6512 302.99 Tm -(SOME)Tj -6 0 0 6 324.25 300.99 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 331.4506 302.99 Tm -0.0089 Tw -[( is computed, and if this not )]TJ -/TT8 1 Tf -6 0 0 6 445.4247 302.99 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 456.2264 302.99 Tm -(, )Tj -/TT13 1 Tf -0.5089 0 TD -(SOME)Tj -6 0 0 6 482.42 300.99 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 126 290.44 Tm -0.0022 Tw -(is returned as the value of )Tj -/TT8 1 Tf -6 0 0 6 231.536 290.44 Tm -0 Tw -(SOME)Tj -/TT6 1 Tf -9 0 0 9 245.9383 290.44 Tm -0.0002 Tc -0.002 Tw -(. Otherwise, )Tj -/TT8 1 Tf -6 0 0 6 298.6141 290.44 Tm -0 Tc -0 Tw -(\()Tj -/TT13 1 Tf -9 0 0 9 302.2147 290.44 Tm -(SOMEFN)Tj -6 0 0 6 334.63 288.44 Tm -(2)Tj -9 0 0 9 338.23 290.44 Tm -0.0056 Tw -[( SOME)]TJ -6 0 0 6 365.28 288.44 Tm -0 Tw -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -9 0 0 9 372.4806 290.44 Tm -0.0001 Tc -0.0021 Tw -( is computed, or )Tj -/TT8 1 Tf -6 0 0 6 439.1465 290.44 Tm -0 Tc -0 Tw -(\(CDR )Tj -/TT13 1 Tf -9 0 0 9 457.1794 290.44 Tm -(SOME)Tj -6 0 0 6 478.79 288.44 Tm -(X)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj --59.3983 -2.0917 TD -(if )Tj -/TT13 1 Tf -9 0 0 9 136.8017 277.89 Tm -(SOMEFN)Tj -6 0 0 6 169.2 275.89 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -( = NIL)Tj -/TT6 1 Tf -9 0 0 9 194.4035 277.89 Tm -(, and used for the next )Tj -/TT13 1 Tf -10.124 0 TD -(SOME)Tj -6 0 0 6 307.12 275.89 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 310.72 277.89 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 257.06 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 257.06 Tm -(NOTANY)Tj -/TT8 1 Tf -6 0 0 6 138 257.06 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 141.6006 257.06 Tm -(SOME)Tj -6 0 0 6 163.2 255.06 Tm -(X)Tj -9 0 0 9 166.8 257.06 Tm -( SOMEFN)Tj -6 0 0 6 204.6 255.06 Tm -(1)Tj -9 0 0 9 208.2 257.06 Tm -( SOMEFN)Tj -6 0 0 6 246 255.06 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 249.6 257.06 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 252.6 254.06 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 257.06 Tm -([Function])Tj -/TT8 1 Tf -6 0 0 6 126 238.34 Tm -(\(NOT \(SOME )Tj -/TT13 1 Tf -9 0 0 9 165.6064 238.34 Tm -(SOME)Tj -6 0 0 6 187.2 236.34 Tm -(X)Tj -9 0 0 9 190.8 238.34 Tm -( SOMEFN)Tj -6 0 0 6 228.6 236.34 Tm -(1)Tj -9 0 0 9 232.2 238.34 Tm -( SOMEFN)Tj -6 0 0 6 270 236.34 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 280.8011 238.34 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 217.51 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 217.51 Tm -(NOTEVERY)Tj -/TT8 1 Tf -6 0 0 6 148.8 217.51 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 152.4006 217.51 Tm -(EVERY)Tj -6 0 0 6 179.4 215.51 Tm -(X)Tj -9 0 0 9 183 217.51 Tm -( EVERYFN)Tj -6 0 0 6 226.2 215.51 Tm -(1)Tj -9 0 0 9 229.8 217.51 Tm -( EVERYFN)Tj -6 0 0 6 273 215.51 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 276.6 217.51 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 279.6 214.51 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 217.51 Tm -([Function])Tj -/TT8 1 Tf -6 0 0 6 126 198.79 Tm -(\(NOT \(EVERY )Tj -/TT13 1 Tf -9 0 0 9 169.207 198.79 Tm -(EVERY)Tj -6 0 0 6 196.2 196.79 Tm -(X)Tj -9 0 0 9 199.8 198.79 Tm -( EVERYFN)Tj -6 0 0 6 243 196.79 Tm -(1)Tj -9 0 0 9 246.6 198.79 Tm -( EVERYFN)Tj -6 0 0 6 289.8 196.79 Tm -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -9 0 0 9 300.6011 198.79 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 102 177.96 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 177.96 Tm -(MAPRINT)Tj -/TT13 1 Tf -4.1999 0 TD -( LST FILE LEFT RIGHT SEP PFN LISPXPRINTFLG)Tj -/TT6 1 Tf -25.2041 0 TD -(\))Tj -/F2 1 Tf -10 0 0 10 373.2 174.96 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 177.96 Tm -([Function])Tj --35.4033 -2.08 TD -0.0422 Tw -[(A general printing function. For each element of the list )]TJ -/TT13 1 Tf -25.4752 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -(, applies )Tj -/TT13 1 Tf -4.0215 0 TD -0 Tw -(PFN)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -[( to the element,)]TJ --33.0972 -1.2889 TD -0 Tw -(and )Tj -/TT13 1 Tf -2.0129 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.07 Tw -[(. If )]TJ -/TT13 1 Tf -1.8799 0 TD -0 Tw -(PFN)Tj -/TT6 1 Tf -1.8003 0 TD -0.07 Tw -[( is )]TJ -/TT8 1 Tf -6 0 0 6 211.0349 147.64 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 221.8366 147.64 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 226.9666 147.64 Tm -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 244.9696 147.64 Tm -0.07 Tw -[( is used. Between each application )]TJ -/TT8 1 Tf -6 0 0 6 389.7761 147.64 Tm -0 Tw -(MAPRINT)Tj -/TT6 1 Tf -9 0 0 9 414.9802 147.64 Tm -0.07 Tw -[( performs )]TJ -/TT8 1 Tf -6 0 0 6 457.2411 147.64 Tm -0 Tw -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 475.244 147.64 Tm -0.07 Tw -[( of)]TJ -/TT13 1 Tf --38.8049 -1.2889 TD -0 Tw -(SEP)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -6 0 0 6 145.1926 136.04 Tm -(\()Tj -/TT6 1 Tf -9 0 0 9 148.7932 136.04 Tm -(or )Tj -/TT8 1 Tf -6 0 0 6 160.2514 136.04 Tm -("")Tj -/TT6 1 Tf -9 0 0 9 167.4526 136.04 Tm -0.0822 Tw -[( if )]TJ -/TT13 1 Tf -1.2885 0 TD -0 Tw -(SEP)Tj -/TT6 1 Tf -1.8003 0 TD -0.0822 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 206.6851 136.04 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 217.4868 136.04 Tm -0.0822 Tw -[(\). If )]TJ -/TT13 1 Tf -2.2496 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0822 Tw -[( is given, it is printed \(using )]TJ -/TT8 1 Tf -6 0 0 6 377.8649 136.04 Tm -0 Tw -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 395.8678 136.04 Tm -0.0822 Tw -[(\) initially; if )]TJ -/TT13 1 Tf -5.9554 0 TD -0 Tw -(RIGHT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0822 Tw -[( is)]TJ --38.9412 -1.2889 TD -0 Tw -(given, it is printed \(using )Tj -/TT8 1 Tf -6 0 0 6 228.4145 124.44 Tm -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 246.4175 124.44 Tm -(\) at the end.)Tj --13.3797 -2 TD -0.1489 Tw -(For example, )Tj -/TT8 1 Tf -6 0 0 6 182.6448 106.44 Tm -0.3583 Tw -(\(MAPRINT X NIL %\( %\)\))Tj -/TT6 1 Tf -9 0 0 9 274.0583 106.44 Tm -0.1489 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -6 0 0 6 344.787 106.44 Tm -0 Tw -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 362.7899 106.44 Tm -0.1489 Tw -[( for lists. To print a list with)]TJ --26.31 -1.2222 TD -0 Tw -(commas between each element and a final )Tj -/TT8 1 Tf -6 0 0 6 295.8794 95.44 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 303.0806 95.44 Tm -( one could use )Tj -/TT8 1 Tf -6 0 0 6 367.0474 95.44 Tm -(\(MAPRINT X T NIL %. %,\))Tj -/TT6 1 Tf -9 0 0 9 457.062 95.44 Tm -(.)Tj --36.7847 -2 TD -(If )Tj -/TT13 1 Tf -0.9199 0 TD -(LISPXPRINTFLG)Tj -/TT6 1 Tf -7.8013 0 TD -( = )Tj -/TT8 1 Tf -6 0 0 6 214.4443 77.44 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 218.0449 77.44 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 222.5449 77.44 Tm -(LISPXPRIN1)Tj -/TT6 1 Tf -9 0 0 9 258.5508 77.44 Tm -( \(see Chapter 13\) is used instead of )Tj -/TT8 1 Tf -6 0 0 6 398.6221 77.44 Tm -(PRIN1)Tj -/TT6 1 Tf -9 0 0 9 416.625 77.44 Tm -(.)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -58 0 obj -<< -/Length 8223 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-14)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0 -4.38 TD -(Functional Arguments)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 551.54 Tm -0.0433 Tw -[(The functions that call the Interlisp-D evaluator take functional arguments, which may be symbols)]TJ -0 -1.2222 TD -0 Tw -(with function definitions, or expr definition forms such as)Tj -/TT8 1 Tf -6 0 0 6 356.1064 540.54 Tm -( \(LAMBDA \(X\) ...\))Tj -/TT6 1 Tf -9 0 0 9 417.3164 540.54 Tm -(.)Tj --32.3685 -2 TD -0.2278 Tw -(The following functions are useful when one wants to supply a functional argument which will)Tj -0 -1.2222 TD -0.1656 Tw -(always return )Tj -/TT8 1 Tf -6 0 0 6 186.4473 511.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 197.249 511.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 203.239 511.54 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 206.8396 511.54 Tm -0.1656 Tw -(, or )Tj -/TT8 1 Tf -6 0 0 6 225.0379 511.54 Tm -0 Tw -(0)Tj -/TT6 1 Tf -9 0 0 9 228.6385 511.54 Tm -0.1656 Tw -[(. Note that the arguments )]TJ -/TT13 1 Tf -12.7951 0 TD -0 Tw -(X)Tj -6 0 0 6 349.19 509.54 Tm -(1)Tj -9 0 0 9 352.79 511.54 Tm -0.3967 Tw -[( ... X)]TJ -6 0 0 6 392.33 509.54 Tm -0 Tw -(N)Tj -/TT19 1 Tf -9 0 0 9 395.93 508.54 Tm -( )Tj -/TT6 1 Tf -0.4156 0.3333 TD -0.1656 Tw -(to these functions are evaluated,)Tj --30.4078 -1.5556 TD -0 Tw -(though they are not used.)Tj -/TT8 1 Tf -6 0 0 6 150 478.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 478.26 Tm -(NILL)Tj -/TT8 1 Tf -6 0 0 6 175.2 478.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.8006 478.26 Tm -(X)Tj -6 0 0 6 184.2 476.26 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 187.8 478.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 190.58 478.26 Tm -(... X)Tj -6 0 0 6 217.58 476.26 Tm -(N)Tj -/F1 1 Tf -10 0 0 10 221.18 478.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 223.96 478.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 226.96 475.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 478.26 Tm -([NoSpread Function])Tj -/F1 1 Tf -10 0 0 10 174 458.26 Tm -(Returns )Tj -/TT8 1 Tf -6 0 0 6 214.18 458.26 Tm -(NIL)Tj -/F1 1 Tf -10 0 0 10 224.9818 458.26 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 439.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 439.26 Tm -(TRUE)Tj -/TT8 1 Tf -6 0 0 6 175.2 439.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.8006 439.26 Tm -(X)Tj -6 0 0 6 184.2 437.26 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 187.8 439.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 190.58 439.26 Tm -(... X)Tj -6 0 0 6 217.58 437.26 Tm -(N)Tj -/F1 1 Tf -10 0 0 10 221.18 439.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 223.96 439.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 226.96 436.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 439.26 Tm -([NoSpread Function])Tj -/F1 1 Tf -10 0 0 10 174 419.26 Tm -(Returns )Tj -/TT8 1 Tf -6 0 0 6 214.18 419.26 Tm -(T)Tj -/F1 1 Tf -10 0 0 10 217.7806 419.26 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 150 400.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 400.26 Tm -(ZERO)Tj -/TT8 1 Tf -6 0 0 6 175.2 400.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 178.8006 400.26 Tm -(X)Tj -6 0 0 6 184.2 398.26 Tm -(1)Tj -9 0 0 9 187.8 400.26 Tm -( ... X)Tj -6 0 0 6 220.2 398.26 Tm -(N)Tj -/F1 1 Tf -10 0 0 10 223.8 400.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 226.58 400.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 229.58 397.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 400.26 Tm -([NoSpread Function])Tj -/F1 1 Tf -10 0 0 10 174 380.26 Tm -(Returns )Tj -/TT8 1 Tf -6 0 0 6 214.18 380.26 Tm -(0)Tj -/F1 1 Tf -10 0 0 10 217.7806 380.26 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 126 362.54 Tm -0.2089 Tw -(When using expr definitions as function arguments, they should be enclosed within the function)Tj -/TT8 1 Tf -6 0 0 6 126 351.54 Tm -0 Tw -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 154.8047 351.54 Tm -( rather than )Tj -/TT8 1 Tf -6 0 0 6 203.562 351.54 Tm -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 221.5649 351.54 Tm -(, so that they will be compiled as separate functions.)Tj -/TT8 1 Tf -6 0 0 6 150 332.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 153.6006 332.26 Tm -(FUNCTION)Tj -/TT8 1 Tf -6 0 0 6 196.8 332.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 200.4006 332.26 Tm -(FN ENV)Tj -/F1 1 Tf -10 0 0 10 232.8058 332.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 235.5858 332.26 Tm -(\))Tj -/F2 1 Tf -10 0 0 10 238.58 329.26 Tm -( )Tj -/F1 1 Tf -0.278 0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 332.26 Tm -([NLambda Function])Tj --30.6633 -2.08 TD -(If )Tj -/TT13 1 Tf -1.2033 0 TD -(ENV)Tj -/TT6 1 Tf -1.8003 0 TD -0.2833 Tw -[( = )]TJ -/TT8 1 Tf -6 0 0 6 216.0855 313.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 226.8873 313.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 233.9373 313.54 Tm -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 262.742 313.54 Tm -0.2833 Tw -[( is the same as )]TJ -/TT8 1 Tf -6 0 0 6 334.5457 313.54 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 352.5486 313.54 Tm -0.2833 Tw -(, except that it is treated differently when)Tj --19.8387 -1.2889 TD -0 Tw -(compiled. Consider the function definition:)Tj -/TT8 1 Tf -6 0 0 6 174 289.49 Tm -(\(DEFINEQ \(FOO \(LST\)\(FIE LST \(FUNCTION \(LAMBDA \(Z\)\(ITIMES Z Z\)\)])Tj -0 -2.5917 TD -(FOO)Tj -/TT6 1 Tf -9 0 0 9 184.8017 273.94 Tm -0.0767 Tw -[( calls the function )]TJ -/TT8 1 Tf -6 0 0 6 259.9572 273.94 Tm -0 Tw -(FIE)Tj -/TT6 1 Tf -9 0 0 9 270.759 273.94 Tm -0.0767 Tw -[( with the value of )]TJ -/TT8 1 Tf -6 0 0 6 346.0948 273.94 Tm -0 Tw -(LST)Tj -/TT6 1 Tf -9 0 0 9 356.8965 273.94 Tm -0.0767 Tw -[( and the expr definition )]TJ -/TT8 1 Tf -6 0 0 6 456.2264 273.94 Tm -0.1833 Tw -(\(LAMBDA \(Z\)\(LIST \(CAR)Tj --47.0377 -1.8333 TD -0 Tw -(Z\)\)\))Tj -/TT6 1 Tf -9 0 0 9 188.4023 262.94 Tm -(.)Tj --1.6003 -2 TD -(If )Tj -/TT8 1 Tf -6 0 0 6 182.8993 244.94 Tm -(FOO)Tj -/TT6 1 Tf -9 0 0 9 193.701 244.94 Tm -0.0689 Tw -[( is run interpreted, it does not make any difference whether )]TJ -/TT8 1 Tf -6 0 0 6 439.4649 244.94 Tm -0 Tw -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 468.2696 244.94 Tm -0.0689 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 482.4778 244.94 Tm -0 Tw -(QUOTE)Tj -/TT6 1 Tf -9 0 0 9 500.4808 244.94 Tm -0.0689 Tw -[( is used.)]TJ --36.2756 -1.2222 TD -0 Tw -(However, when )Tj -/TT8 1 Tf -6 0 0 6 240.2124 233.94 Tm -(FOO)Tj -/TT6 1 Tf -9 0 0 9 251.0141 233.94 Tm -( is compiled, if )Tj -/TT8 1 Tf -6 0 0 6 311.6235 233.94 Tm -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 340.4282 233.94 Tm -( is used the compiler will define and compile the)Tj --18.492 -1.2222 TD -0.1333 Tw -[(expr definition as an auxiliary function \(see Chapter 18\). The compiled expr definition)]TJ -T* -0 Tw -(will run considerably faster, which can make a big difference if it is applied repeatedly.)Tj -0 -2 TD -(Compiling )Tj -/TT8 1 Tf -6 0 0 6 219.75 193.94 Tm -(FUNCTION)Tj -/TT6 1 Tf -9 0 0 9 248.5547 193.94 Tm -0.0833 Tw -[( will )]TJ -/TT19 1 Tf -2.3737 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0833 Tw -[( create an auxiliary function if it is a functional argument to a)]TJ --11.9906 -1.2222 TD -0 Tw -(function that compiles open, such as most of the mapping functions \()Tj -/TT8 1 Tf -6 0 0 6 448.5659 182.94 Tm -(MAPCAR)Tj -/TT6 1 Tf -9 0 0 9 470.1694 182.94 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 474.6694 182.94 Tm -(MAPLIST)Tj -/TT6 1 Tf -9 0 0 9 499.8735 182.94 Tm -(, etc.\).)Tj --36.2082 -2 TD -(If )Tj -/TT13 1 Tf -0.9677 0 TD -(ENV)Tj -/TT6 1 Tf -1.8003 0 TD -0.0478 Tw -[( is not )]TJ -/TT8 1 Tf -6 0 0 6 226.4724 164.94 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 237.2742 164.94 Tm -0.0478 Tw -(, it can be a list of variables that are \(presumably\) used freely by )Tj -/TT13 1 Tf -29.122 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0478 Tw -(. )Tj -/TT13 1 Tf -0.8456 0 TD -0 Tw -(ENV)Tj -/TT6 1 Tf --38.1982 -1.2889 TD -0.0633 Tw -(can also be an atom, in which case it is evaluated, and the value interpreted as described)Tj -0 -1.2222 TD -0 Tw -(above.)Tj -/TT4 1 Tf -10 0 0 10 102 120 Tm -(Macros)Tj -ET -102.01 117.29 m -558.01 117.29 l -S -BT -/TT6 1 Tf -9 0 0 9 126 103.34 Tm -0.3544 Tw -[(Macros provide an alternative way of specifying the action of a function. Whereas function)]TJ -T* -0.4056 Tw -(definitions are evaluated with a function call, which involves binding variables and other)Tj -T* -0.0233 Tw -(housekeeping tasks, macros are evaluated by )Tj -/TT19 1 Tf -20.327 0 TD -0 Tw -(translating)Tj -/TT6 1 Tf -4.5 0 TD -0.0233 Tw -[( one Interlisp form into another, which is then)]TJ --24.827 -1.2222 TD -0 Tw -(evaluated.)Tj -0 -2 TD -0.0644 Tw -[(A symbol may have both a function definition and a macro definition. When a form is evaluated by)]TJ -0 -1.2222 TD -0.0356 Tw -(the interpreter, if the )Tj -/TT8 1 Tf -6 0 0 6 211.8527 41.34 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 222.6545 41.34 Tm -0.0356 Tw -[( has a function definition, it is used \(with a function call\), otherwise if it has a)]TJ -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -61 0 obj -<< -/Length 8722 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-15)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.02 Tw -[(macro definition, then that is used. However, when a form is compiled, the )]TJ -/TT8 1 Tf -6 0 0 6 383.334 569.54 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 394.1357 569.54 Tm -0.02 Tw -[( is checked for a macro)]TJ --35.1262 -1.2222 TD -0.0911 Tw -[(definition first, and only if there isnt one is the function definition compiled. This allows functions)]TJ -T* -0.26 Tw -[(that behave differently when compiled and interpreted. For example, it is possible to define a)]TJ -T* -0.0256 Tw -(function that, when interpreted, has a function definition that is slow and has a lot of error checks, for)Tj -T* -0.1089 Tw -[(use when debugging a system. This function could also have a macro definition that defines a fast)]TJ -T* -0 Tw -(version of the function, which is used when the debugged system is compiled.)Tj -0 -2 TD -0.0333 Tw -[(Macro definitions are represented by lists that are stored on the property list of a symbol. Macros are)]TJ -0 -1.2222 TD -0.1444 Tw -(often used for functions that should be compiled differently in different Interlisp implementations,)Tj -T* -0.0267 Tw -(and the exact property name a macro definition is stored under determines whether it should be used)Tj -T* -0.18 Tw -[(in a particular implementation. The global variable )]TJ -/TT8 1 Tf -6 0 0 6 298.0918 463.54 Tm -0 Tw -(MACROPROPS)Tj -/TT6 1 Tf -9 0 0 9 334.0977 463.54 Tm -0.18 Tw -[( contains a list of all possible macro)]TJ --28.4553 -1.2222 TD -0.0544 Tw -(property names which should be saved by the )Tj -/TT8 1 Tf -6 0 0 6 267.8965 452.54 Tm -0 Tw -(MACROS)Tj -/TT6 1 Tf -9 0 0 9 289.5001 452.54 Tm -0.0544 Tw -[( file package command. Typical macro property)]TJ --23.5 -1.2222 TD -0.0778 Tw -(names are )Tj -/TT8 1 Tf -6 0 0 6 122.0753 441.54 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 143.6788 441.54 Tm -0.0778 Tw -[( for Interlisp-D, )]TJ -/TT8 1 Tf -6 0 0 6 209.7412 441.54 Tm -0 Tw -(10MACRO)Tj -/TT6 1 Tf -9 0 0 9 234.9453 441.54 Tm -0.0778 Tw -[( for Interlisp-10, )]TJ -/TT8 1 Tf -6 0 0 6 303.0424 441.54 Tm -0 Tw -(VAXMACRO)Tj -/TT6 1 Tf -9 0 0 9 331.8471 441.54 Tm -0.0778 Tw -[( for Interlisp-VAX, )]TJ -/TT8 1 Tf -6 0 0 6 410.4471 441.54 Tm -0 Tw -(JMACRO)Tj -/TT6 1 Tf -9 0 0 9 432.0506 441.54 Tm -0.0778 Tw -[( for Interlisp-)]TJ --39.339 -1.2222 TD -0.0656 Tw -(Jerico, and )Tj -/TT8 1 Tf -6 0 0 6 123.556 430.54 Tm -0 Tw -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 141.5589 430.54 Tm -0.0656 Tw -[( for implementation independent macros. The global variable )]TJ -/TT8 1 Tf -6 0 0 6 404.573 430.54 Tm -0 Tw -(COMPILERMACROPROPS)Tj -/TT6 1 Tf -9 0 0 9 469.3836 430.54 Tm -0.0656 Tw -[( is a)]TJ --43.4871 -1.2222 TD -0.2178 Tw -[(list of macro property names. Interlisp determines whether a symbol has a macro definition by)]TJ -T* -0.1878 Tw -(checking these property names, in order, and using the first non-)Tj -/TT8 1 Tf -6 0 0 6 352.6436 408.54 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 363.4454 408.54 Tm -0.1878 Tw -[( property value as the macro)]TJ --31.7162 -1.2222 TD -0.01 Tw -[(definition. In Interlisp-D this list contains )]TJ -/TT8 1 Tf -6 0 0 6 247.235 397.54 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 268.8385 397.54 Tm -0.01 Tw -[( and )]TJ -/TT8 1 Tf -6 0 0 6 288.7543 397.54 Tm -0 Tw -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 306.7573 397.54 Tm -0.01 Tw -[( in that order so that)]TJ -/TT8 1 Tf -6 0 0 6 388.093 397.54 Tm -0.0233 Tw -[( DMACRO)]TJ -/TT6 1 Tf -9 0 0 9 413.4371 397.54 Tm -0.01 Tw -(s will override the)Tj --37.2708 -1.2222 TD -0 Tw -(implementation-independent )Tj -/TT8 1 Tf -6 0 0 6 197.925 386.54 Tm -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 215.9279 386.54 Tm -0.0589 Tw -[( properties. In general, use a )]TJ -/TT8 1 Tf -6 0 0 6 336.5852 386.54 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 358.1887 386.54 Tm -0.0589 Tw -[( property for macros that are to)]TJ --31.1321 -1.2222 TD -0.0122 Tw -(be used only in Interlisp-D, use )Tj -/TT8 1 Tf -6 0 0 6 205.4334 375.54 Tm -0 Tw -(10MACRO)Tj -/TT6 1 Tf -9 0 0 9 230.6375 375.54 Tm -0.0122 Tw -[( for macros that are to be used only in Interlisp-10, and use )]TJ -/TT8 1 Tf -6 0 0 6 467.8737 375.54 Tm -0 Tw -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 78 364.54 Tm -(for macros that are to affect both systems.)Tj -0 -2 TD -(Macro definitions can take the following forms:)Tj -/TT8 1 Tf -6 0 0 6 124.8 329.14 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 128.4006 329.14 Tm -(LAMBDA ...)Tj -/TT8 1 Tf -6 0 0 6 182.4094 329.14 Tm -(\))Tj --10.5016 -1.8133 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 123.0006 318.26 Tm -(NLAMBDA ...)Tj -/TT8 1 Tf -6 0 0 6 182.4102 318.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 198 318.26 Tm -0.0344 Tw -(A function can be made to compile open by giving it a macro definition)Tj -0 -1.2889 TD -0.0411 Tw -(of the form )Tj -/TT8 1 Tf -6 0 0 6 245.6656 306.66 Tm -0.0983 Tw -(\(LAMBDA ...\))Tj -/TT6 1 Tf -9 0 0 9 289.4627 306.66 Tm -0.0411 Tw -[( or )]TJ -/TT8 1 Tf -6 0 0 6 303.1709 306.66 Tm -0.0983 Tw -(\(NLAMBDA ...\))Tj -/TT6 1 Tf -9 0 0 9 350.5686 306.66 Tm -0.0411 Tw -(, e.g.,)Tj -/TT8 1 Tf -6 0 0 6 371.505 306.66 Tm -0.0983 Tw -[( \(LAMBDA \(X\) \(COND \(\(GREATERP X)]TJ --28.9175 -1.8333 TD -0.1133 Tw -(0\) X\) \(T \(MINUS X\)\)\)\))Tj -/TT6 1 Tf -9 0 0 9 276.3323 295.66 Tm -0.0467 Tw -[( for )]TJ -/TT8 1 Tf -6 0 0 6 293.1376 295.66 Tm -0 Tw -(ABS)Tj -/TT6 1 Tf -9 0 0 9 303.9394 295.66 Tm -0.0467 Tw -[(. The effect is as if the macro definition were)]TJ --11.771 -1.2222 TD -0.0611 Tw -(written in place of the function wherever it appears in a function being)Tj -T* -0.2033 Tw -[(compiled, i.e., it compiles as a lambda or nlambda expression. This)]TJ -T* -0.3211 Tw -(saves the time necessary to call the function at the price of more)Tj -T* -0 Tw -(compiled code generated in-line.)Tj -/TT8 1 Tf -6 0 0 6 105.73 232.38 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 109.3306 232.38 Tm -(NIL)Tj -/F3 1 Tf -10 0 0 10 125.5332 232.38 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 128.4032 232.38 Tm -(EXPRESSION)Tj -/TT8 1 Tf -6 0 0 6 182.412 232.38 Tm -(\))Tj --13.6803 -1.8133 TD -(\()Tj -/TT15 1 Tf -9 0 0 9 103.9306 221.5 Tm -(LIST)Tj -/F3 1 Tf -10 0 0 10 125.5341 221.5 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 128.4041 221.5 Tm -(EXPRESSION)Tj -/TT8 1 Tf -6 0 0 6 182.4129 221.5 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 198 221.5 Tm -0.1455 Tw -[(Substitution macro. Each argument in the form being evaluated or)]TJ -0 -1.2889 TD -0.25 Tw -(compiled is substituted for the corresponding atom in )Tj -/TT8 1 Tf -6 0 0 6 432.6064 209.9 Tm -0 Tw -(LIST)Tj -/TT6 1 Tf -9 0 0 9 447.0088 209.9 Tm -0.25 Tw -(, and the)Tj --27.6676 -1.2222 TD -0.0133 Tw -[(result of the substitution is used instead of the form. For example, if the)]TJ -T* -0.2389 Tw -(macro definition of )Tj -/TT8 1 Tf -6 0 0 6 283.0066 187.9 Tm -0 Tw -(ADD1)Tj -/TT6 1 Tf -9 0 0 9 297.409 187.9 Tm -0.2389 Tw -[( is)]TJ -/TT8 1 Tf -6 0 0 6 308.2426 187.9 Tm -0.5733 Tw -[( \(\(X\) \(IPLUS X 1\)\))]TJ -/TT6 1 Tf -9 0 0 9 386.8131 187.9 Tm -0.2389 Tw -(, then, )Tj -/TT8 1 Tf -6 0 0 6 417.8363 187.9 Tm -0.5733 Tw -(\(ADD1 \(CAR Y\)\))Tj -/TT6 1 Tf -9 0 0 9 475.1245 187.9 Tm -0.2389 Tw -[( is)]TJ --30.7916 -1.2222 TD -0 Tw -(compiled as )Tj -/TT8 1 Tf -6 0 0 6 248.124 176.9 Tm -(\(IPLUS \(CAR Y\) 1\).)Tj -/TT6 1 Tf -9 0 0 9 198 158.9 Tm -0.2267 Tw -(Note that )Tj -/TT8 1 Tf -6 0 0 6 241.8285 158.9 Tm -0 Tw -(ABS)Tj -/TT6 1 Tf -9 0 0 9 252.6303 158.9 Tm -0.2267 Tw -[( could be defined by the substitution macro)]TJ -/TT8 1 Tf -6 0 0 6 439.9098 158.9 Tm -0.5433 Tw -[( \(\(X\) \(COND)]TJ --40.3183 -1.8333 TD -0.3417 Tw -(\(\(GREATERP X 0\) X\) \(T \(MINUS X\)\)\)\))Tj -/TT6 1 Tf -9 0 0 9 332.7199 147.9 Tm -0.1422 Tw -[(. In this case, however, )]TJ -/TT8 1 Tf -6 0 0 6 435.0669 147.9 Tm -0.3417 Tw -(\(ABS \(FOO X\)\))Tj -/TT6 1 Tf -9 0 0 9 198 136.9 Tm -0 Tw -(would compile as)Tj -/TT8 1 Tf -6 0 0 6 198 124.45 Tm -(\(COND \(\(GREATERP \(FOO X\) 0\))Tj -0 -1 TD -[( )-5399.9( \(FOO X\)\))]TJ -T* -( \(T \(MINUS \(FOO X\)\)\)\))Tj -/TT6 1 Tf -9 0 0 9 198 96.9 Tm -(and )Tj -/TT8 1 Tf -6 0 0 6 216.6358 96.9 Tm -0.305 Tw -(\(FOO X\) )Tj -/TT6 1 Tf -9 0 0 9 249.1005 96.9 Tm -0.1278 Tw -[(would be evaluated two times. \(Code to evaluate )]TJ -/TT8 1 Tf -6 0 0 6 459.0062 96.9 Tm -0.305 Tw -(\(FOO X\))Tj -/TT6 1 Tf -9 0 0 9 198 85.9 Tm -0 Tw -(would be generated three times.\))Tj -/TT8 1 Tf -6 0 0 6 73.33 66.62 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 76.9306 66.62 Tm -(OPENLAMBDA)Tj -/F3 1 Tf -10 0 0 10 130.9394 66.62 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 133.8094 66.62 Tm -(ARGS BODY)Tj -/TT8 1 Tf -6 0 0 6 182.4173 66.62 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 198 66.62 Tm -0.3 Tw -(This is a cross between substitution and )Tj -/TT8 1 Tf -6 0 0 6 377.3487 66.62 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 398.9522 66.62 Tm -0.3 Tw -[( macros. When the)]TJ --22.328 -1.2889 TD -0.2789 Tw -(compiler processes an )Tj -/TT8 1 Tf -6 0 0 6 295.3235 55.02 Tm -0 Tw -(OPENLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 331.3293 55.02 Tm -0.2789 Tw -(, it attempts to substitute the actual)Tj --14.8144 -1.2222 TD -0.1533 Tw -(arguments for the formals wherever this preserves the frequency and)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 26 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -64 0 obj -<< -/Length 7450 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-16)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 246 569.54 Tm -0.1111 Tw -(order of evaluation that would have resulted from a )Tj -/TT8 1 Tf -6 0 0 6 464.228 569.54 Tm -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 485.8315 569.54 Tm -0.1111 Tw -[( expression,)]TJ --26.648 -1.2222 TD -0 Tw -(and produces a )Tj -/TT8 1 Tf -6 0 0 6 309.4087 558.54 Tm -(LAMBDA)Tj -/TT6 1 Tf -9 0 0 9 331.0122 558.54 Tm -( binding only for those that require it.)Tj -/TT17 1 Tf --9.4458 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.3589 Tw -(: )Tj -/TT8 1 Tf -6 0 0 6 279.2095 540.54 Tm -0 Tw -(OPENLAMBDA)Tj -/TT6 1 Tf -9 0 0 9 315.2153 540.54 Tm -0.3589 Tw -[( assumes that it can substitute literally the actual)]TJ --7.6906 -1.2222 TD -0.1933 Tw -(arguments for the formal arguments in the body of the macro if the)Tj -T* -0.0033 Tw -(actual is side-effect free or a constant. Thus, you should be careful to use)Tj -T* -0.49 Tw -(names in )Tj -/TT13 1 Tf -5.2207 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.49 Tw -[( which dont occur in )]TJ -/TT13 1 Tf -12.0804 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.49 Tw -[( \(except as variable)]TJ --22.1019 -1.2889 TD -0 Tw -(references\). For example, if )Tj -/TT8 1 Tf -6 0 0 6 357.977 495.94 Tm -(FOO)Tj -/TT6 1 Tf -9 0 0 9 368.7788 495.94 Tm -( has a macro definition of)Tj -/TT8 1 Tf -6 0 0 6 246 483.49 Tm -(\(OPENLAMBDA \(ENV\) \(FETCH \(MY-RECORD-TYPE ENV\) OF BAR\)\))Tj -/TT6 1 Tf -9 0 0 9 246 466.66 Tm -(then )Tj -/TT8 1 Tf -6 0 0 6 265.9731 466.66 Tm -(\(FOO NIL\) )Tj -/TT6 1 Tf -9 0 0 9 301.979 466.66 Tm -(will expand to)Tj -/TT8 1 Tf -6 0 0 6 246 454.21 Tm -(\(FETCH \(MY-RECORD-TYPE NIL\) OF BAR\))Tj -/TT15 1 Tf -9 0 0 9 228.6 437.38 Tm -(T)Tj -/TT6 1 Tf -1.9333 0 TD -0.2678 Tw -(When a macro definition is the atom )Tj -/TT8 1 Tf -6 0 0 6 410.0164 437.38 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 413.617 437.38 Tm -0.2678 Tw -(, it means that the compiler)Tj --18.6241 -1.2889 TD -0.1089 Tw -(should ignore the macro, and compile the function definition; this is a)Tj -0 -1.2222 TD -0.1844 Tw -[(simple way of turning off other macros. For example, the user may)]TJ -T* -0.06 Tw -(have a function that runs in both Interlisp-D and Interlisp-10, but has a)Tj -T* -0.0589 Tw -(macro definition that should only be used when compiling in Interlisp-)Tj -T* -0.1389 Tw -[(10. If the )]TJ -/TT8 1 Tf -6 0 0 6 289.7641 381.78 Tm -0 Tw -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 307.7671 381.78 Tm -0.1389 Tw -[( property has the macro specification, a )]TJ -/TT8 1 Tf -6 0 0 6 475.0234 381.78 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 496.627 381.78 Tm -0.1389 Tw -[( of )]TJ -/TT8 1 Tf -6 0 0 6 511.5371 381.78 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 515.1377 381.78 Tm -0.1389 Tw -[( will)]TJ --29.9042 -1.2222 TD -0.0122 Tw -[(cause it to be ignored by the Interlisp-D compiler. This )]TJ -/TT8 1 Tf -6 0 0 6 468.6108 370.78 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 490.2144 370.78 Tm -0.0122 Tw -[( would not)]TJ --27.1349 -1.2222 TD -0 Tw -(be necessary if the macro were specified by a )Tj -/TT8 1 Tf -6 0 0 6 426.8349 359.78 Tm -(10MACRO)Tj -/TT6 1 Tf -9 0 0 9 452.039 359.78 Tm -( instead of a )Tj -/TT8 1 Tf -6 0 0 6 502.3652 359.78 Tm -(MACRO)Tj -/TT6 1 Tf -9 0 0 9 520.3682 359.78 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 129.6 340.5 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 133.2006 340.5 Tm -(= . )Tj -/TT13 1 Tf -2.4004 0 TD -(OTHER-FUNCTION)Tj -/TT8 1 Tf -6 0 0 6 230.4164 340.5 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 246 340.5 Tm -0.09 Tw -(A simple way to tell the compiler to compile one function exactly as it)Tj -0 -1.2889 TD -0.1389 Tw -[(would compile another. For example, when compiling in Interlisp-D,)]TJ -/TT8 1 Tf -6 0 0 6 246 317.9 Tm -0 Tw -(FRPLACA)Tj -/TT6 1 Tf -9 0 0 9 271.2041 317.9 Tm -0.0656 Tw -(s are treated as )Tj -/TT8 1 Tf -6 0 0 6 335.1051 317.9 Tm -0 Tw -(RPLACA)Tj -/TT6 1 Tf -9 0 0 9 356.7086 317.9 Tm -0.0656 Tw -[(s. This is achieved by having )]TJ -/TT8 1 Tf -6 0 0 6 479.4998 317.9 Tm -0 Tw -(FRPLACA)Tj -/TT6 1 Tf -9 0 0 9 504.7039 317.9 Tm -0.0656 Tw -[( have a)]TJ -/TT8 1 Tf -6 0 0 6 246 306.9 Tm -0 Tw -(DMACRO)Tj -/TT6 1 Tf -9 0 0 9 267.6035 306.9 Tm -( of )Tj -/TT8 1 Tf -6 0 0 6 280.0136 306.9 Tm -(\(= . RPLACA\))Tj -/TT6 1 Tf -9 0 0 9 323.2207 306.9 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 132.13 287.62 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 135.7306 287.62 Tm -(LITATOM)Tj -/F3 1 Tf -10 0 0 10 173.5367 287.62 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 176.4067 287.62 Tm -(EXPRESSION)Tj -/TT8 1 Tf -6 0 0 6 230.4155 287.62 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 246 287.62 Tm -0.0011 Tw -(If a macro definition begins with a symbol other than those given above,)Tj -T* -0.1989 Tw -(this allows )Tj -/TT19 1 Tf -5.4066 0 TD -0 Tw -(computation)Tj -/TT6 1 Tf -5.0728 0 TD -0.1989 Tw -[( of the Interlisp expression to be evaluated or)]TJ --10.4793 -1.2222 TD -0.0767 Tw -(compiled in place of the form. )Tj -/TT8 1 Tf -6 0 0 6 374.6371 265.02 Tm -0 Tw -(LITATOM)Tj -/TT6 1 Tf -9 0 0 9 399.8412 265.02 Tm -0.0767 Tw -[( is bound to the )]TJ -/TT8 1 Tf -6 0 0 6 467.3635 265.02 Tm -0 Tw -(CDR)Tj -/TT6 1 Tf -9 0 0 9 478.1652 265.02 Tm -0.0767 Tw -[( of the calling)]TJ --25.7961 -1.2222 TD -0 Tw -(form, )Tj -/TT13 1 Tf -2.8845 0 TD -(EXPRESSION)Tj -/TT6 1 Tf -6.001 0 TD -0.2278 Tw -[( is evaluated, and the result of this evaluation is)]TJ --8.8855 -1.2889 TD -0.0633 Tw -[(evaluated or compiled in place of the form. For example, )]TJ -/TT8 1 Tf -6 0 0 6 482.1962 242.42 Tm -0 Tw -(LIST)Tj -/TT6 1 Tf -9 0 0 9 496.5986 242.42 Tm -0.0633 Tw -[( could be)]TJ --27.8443 -1.2222 TD -0 Tw -(compiled using the computed macro:)Tj -/TT8 1 Tf -6 0 0 6 246 218.97 Tm -([X \(LIST CONS \(CAR X\)\(AND \(CDR X\)\(CONS LIST \(CDR X])Tj -/TT6 1 Tf -9 0 0 9 246 202.14 Tm -0.0211 Tw -(This would cause)Tj -/TT8 1 Tf -6 0 0 6 316.0772 202.14 Tm -0.0517 Tw -[( \(LIST X Y Z\))]TJ -/TT6 1 Tf -9 0 0 9 364.1248 202.14 Tm -0.0211 Tw -[( to compile as )]TJ -/TT8 1 Tf -6 0 0 6 421.86 202.14 Tm -0.0517 Tw -(\(CONS X \(CONS Y \(CONS Z NIL\)\)\))Tj -/TT6 1 Tf -9 0 0 9 531.7375 202.14 Tm -0 Tw -(.)Tj --31.7486 -1.2222 TD -(Note the recursion in the macro expansion.)Tj -0 -2 TD -0.2167 Tw -(If the result of the evaluation is the symbol )Tj -/TT8 1 Tf -6 0 0 6 435.7145 173.14 Tm -0 Tw -(IGNOREMACRO)Tj -/TT6 1 Tf -9 0 0 9 475.321 173.14 Tm -0.2167 Tw -(, the macro is)Tj --25.4801 -1.2222 TD -0.0389 Tw -(ignored and the compilation of the expression proceeds as if there were)Tj -T* -0.2633 Tw -[(no macro definition. If the symbol in question is normally treated)]TJ -T* -0.0344 Tw -(specially by the compiler \()Tj -/TT8 1 Tf -6 0 0 6 351.966 140.14 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 362.7678 140.14 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 367.5778 140.14 Tm -(CDR)Tj -/TT6 1 Tf -9 0 0 9 378.3795 140.14 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 383.1896 140.14 Tm -(COND)Tj -/TT6 1 Tf -9 0 0 9 397.5919 140.14 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 402.4019 140.14 Tm -(AND)Tj -/TT6 1 Tf -9 0 0 9 413.2037 140.14 Tm -0.0344 Tw -(, etc.\), and also has a macro, if)Tj --18.5782 -1.2222 TD -0.0844 Tw -(the macro expansion returns )Tj -/TT8 1 Tf -6 0 0 6 364.9589 129.14 Tm -0 Tw -(IGNOREMACRO)Tj -/TT6 1 Tf -9 0 0 9 404.5654 129.14 Tm -0.0844 Tw -(, the symbol will still be treated)Tj --17.6184 -1.2222 TD -0 Tw -(specially.)Tj -0 -2 TD -0.0633 Tw -(In Interlisp-10, if the result of the evaluation is the atom )Tj -/TT8 1 Tf -6 0 0 6 475.5912 100.14 Tm -0 Tw -(INSTRUCTIONS)Tj -/TT6 1 Tf -9 0 0 9 518.7983 100.14 Tm -0.0633 Tw -(, no)Tj --30.3109 -1.2222 TD -0.37 Tw -[(code will be generated by the compiler. It is then assumed the)]TJ -T* -0.0722 Tw -(evaluation was done for effect and the necessary code, if any, has been)Tj -T* -0.0289 Tw -[(added. This is a way of giving direct instructions to the compiler if you)]TJ -T* -0 Tw -(understand it.)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 26 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT17 22 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -67 0 obj -<< -/Length 7071 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-17)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT6 1 Tf -9 0 0 9 198 569.54 Tm -0.0556 Tw -(It is often useful, when constructing complex macro expressions, to use)Tj -0 -1.2222 TD -0 Tw -(the )Tj -/TT8 1 Tf -6 0 0 6 212.7348 558.54 Tm -(BQUOTE)Tj -/TT6 1 Tf -9 0 0 9 234.3384 558.54 Tm -( facility \(see the Read Macros section of Chapter 25\).)Tj --4.0376 -2 TD -(The following function is quite useful for debugging macro definitions:)Tj -/TT8 1 Tf -6 0 0 6 102 521.26 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 521.26 Tm -(EXPANDMACRO)Tj -/F3 1 Tf -10 0 0 10 165 521.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 167.87 521.26 Tm -(EXP QUIETFLG)Tj -/F2 1 Tf -10 0 0 10 232.6805 521.26 Tm -( )Tj -/TT8 1 Tf -6 0 0 6 235.4605 521.26 Tm -( \))Tj -/F1 1 Tf -10 0 0 10 249.8629 521.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 521.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1989 Tw -(Takes a form whose )Tj -/TT8 1 Tf -6 0 0 6 214.9993 504.66 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 225.8011 504.66 Tm -0.1989 Tw -[( has a macro definition and expands the form as it would be)]TJ --11.089 -1.2222 TD -0.1767 Tw -[(compiled. The result is prettyprinted, unless )]TJ -/TT13 1 Tf -21.3104 0 TD -0 Tw -(QUIETFLG)Tj -/TT6 1 Tf -4.8008 0 TD -(=)Tj -/TT8 1 Tf -6 0 0 6 366.4542 493.66 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 370.0548 493.66 Tm -0.1767 Tw -(, in which case the result is)Tj --27.1172 -1.2889 TD -0 Tw -(simply returned.)Tj -/TT17 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0678 Tw -(: )Tj -/TT8 1 Tf -6 0 0 6 153.9695 464.06 Tm -0 Tw -(EXPANDMACRO)Tj -/TT6 1 Tf -9 0 0 9 193.5759 464.06 Tm -0.0678 Tw -[( only works on Interlisp macros. Use )]TJ -/TT8 1 Tf -6 0 0 6 348.8104 464.06 Tm -0 Tw -(CL:MACROEXPAND-1)Tj -/TT6 1 Tf -9 0 0 9 406.4198 464.06 Tm -0.0678 Tw -[( to expand Interlisp)]TJ --31.1578 -1.2222 TD -0 Tw -(macros visible to the Common Lisp interpreter and compliler.)Tj -/TT4 1 Tf -10 0 0 10 78 430.72 Tm -(DEFMACRO)Tj -/TT6 1 Tf -9 0 0 9 78 415.06 Tm -0.0089 Tw -(Macros defined with the function )Tj -/TT8 1 Tf -6 0 0 6 213.5582 415.06 Tm -0 Tw -(DEFMACRO)Tj -/TT6 1 Tf -9 0 0 9 242.3629 415.06 Tm -0.0089 Tw -[( are much like computed macros \(see the above section\), in)]TJ --18.2625 -1.2222 TD -0.0322 Tw -(that they are defined with a form that is evaluated, and the result of the evaluation is used \(evaluated)Tj -T* -0.1367 Tw -[(or compiled\) in place of the macro call. However, )]TJ -/TT8 1 Tf -6 0 0 6 290.9719 393.06 Tm -0 Tw -(DEFMACRO)Tj -/TT6 1 Tf -9 0 0 9 319.7766 393.06 Tm -0.1367 Tw -[( macros support complex argument lists)]TJ --26.8641 -1.2222 TD -0.4622 Tw -(with optional arguments, default values, and keyword arguments as well as argument list)Tj -T* -0 Tw -(destructuring.)Tj -/TT8 1 Tf -6 0 0 6 102 351.78 Tm -(\()Tj -/TT15 1 Tf -9 0 0 9 105.6006 351.78 Tm -(DEFMACRO)Tj -/F3 1 Tf -10 0 0 10 148.8 351.78 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 151.67 351.78 Tm -(NAME ARGS FORM)Tj -/TT8 1 Tf -6 0 0 6 227.2823 351.78 Tm -(\))Tj -/F1 1 Tf -10 0 0 10 230.8829 351.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 351.78 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -(Defines )Tj -/TT13 1 Tf -3.6851 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0733 Tw -[( as a macro with the arguments )]TJ -/TT13 1 Tf -14.6232 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0733 Tw -[( and the definition form )]TJ -/TT13 1 Tf -11.1855 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0733 Tc -( \()Tj -/TT13 1 Tf -0.6563 0 TD -0 Tc -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj -/TT13 1 Tf --39.7518 -1.2889 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -(, and )Tj -/TT13 1 Tf -2.7184 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( are unevaluated\). If an expression starting with )]TJ -/TT13 1 Tf -22.9085 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( is evaluated or)]TJ --32.8281 -1.2889 TD -0.1022 Tw -(compiled, arguments are bound according to )Tj -/TT13 1 Tf -20.7667 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT13 1 Tf -0.6022 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1022 Tw -[( is evaluated, and the value of)]TJ -/TT13 1 Tf --26.1697 -1.2889 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is evaluated or compiled instead. The interpretation of )Tj -/TT13 1 Tf -24.7905 0 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -( is described below.)Tj -/TT17 1 Tf --29.5913 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0911 Tw -[(:)-1527.8(Like the function )]TJ -/TT8 1 Tf -6 0 0 6 234.4912 281.78 Tm -0 Tw -(DEFMACRO)Tj -/TT6 1 Tf -9 0 0 9 263.2959 281.78 Tm -0.0911 Tw -[( in Common Lisp, this function currently removes any)]TJ --15.2551 -1.2222 TD -0 Tw -(function definition for )Tj -/TT13 1 Tf -10.063 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT13 1 Tf --12.4634 -2.0667 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( is a list that defines how the argument list passed to the macro )]TJ -/TT13 1 Tf -28.673 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( is interpreted.)]TJ --33.4738 -1.2889 TD -0 Tw -(Specifically, )Tj -/TT13 1 Tf -5.5748 0 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0289 Tw -[( defines a set of variables that are set to various arguments in the macro)]TJ --7.9752 -1.2889 TD -0 Tw -(call \(unevaluated\), that )Tj -/TT13 1 Tf -10.4653 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( can reference to construct the macro form.)Tj --12.8657 -2.0667 TD -0.3778 Tw -(In the simplest case, )Tj -/TT13 1 Tf -10.6327 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.3778 Tw -[( is a simple list of variable names that are set to the)]TJ --13.0331 -1.2889 TD -0 Tw -(corresponding elements of the macro call \(unevaluated\). For example, given:)Tj -/TT8 1 Tf -6 0 0 6 162 186.33 Tm -(\(DEFMACRO FOO \(A B\) \(LIST PLUS A B B\)\))Tj -/TT6 1 Tf -9 0 0 9 126 170.78 Tm -(The macro call )Tj -/TT8 1 Tf -6 0 0 6 186.4555 170.78 Tm -(\(FOO X \(BAR Y Z\)\))Tj -/TT6 1 Tf -9 0 0 9 247.6655 170.78 Tm -( will expand to )Tj -/TT8 1 Tf -6 0 0 6 309.479 170.78 Tm -(\(PLUS X \(BAR Y Z\) \(BAR Y Z\)\))Tj -/TT6 1 Tf -9 0 0 9 410.2954 170.78 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 126 152.78 Tm -(&)Tj -/TT6 1 Tf -9 0 0 9 133.2012 152.78 Tm -0.0189 Tw -(-keywords \(beginning with the character )Tj -/TT8 1 Tf -6 0 0 6 303.0253 152.78 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 310.2264 152.78 Tm -0.0189 Tw -(\) that are used to set variables to particular)Tj --20.4696 -1.2222 TD -0 Tw -(items from the macro call form, as follows:)Tj -/TT15 1 Tf -1.2667 -2.1422 TD -(&OPTIONAL)Tj -/TT6 1 Tf -6.7333 0 TD -0.0767 Tw -[(Used to define optional arguments, possibly with default values. Each)]TJ -0 -1.2889 TD -0.1122 Tw -(element on )Tj -/TT13 1 Tf -5.3714 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1122 Tw -[( after )]TJ -/TT8 1 Tf -6 0 0 6 292.7651 110.9 Tm -0 Tw -(&OPTIONAL)Tj -/TT6 1 Tf -9 0 0 9 325.1703 110.9 Tm -0.1122 Tw -[( until the next )]TJ -/TT8 1 Tf -6 0 0 6 386.6645 110.9 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 390.265 110.9 Tm -0.1122 Tw -(-keyword or the end of)Tj --21.3628 -1.2889 TD -0.0344 Tw -(the list defines an optional argument, which can either be a symbol or a)Tj -0 -1.2222 TD -0 Tw -(list, interpreted as follows:)Tj -/TT13 1 Tf -0 -1.6667 TD -(VAR)Tj -/TT6 1 Tf -0 -1.8444 TD -0.0978 Tw -(If an optional argument is specified as a symbol, that variable is set to)Tj -0 -1.2222 TD -0 Tw -(the corresponding element of the macro call \(unevaluated\).)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 21 0 R -/F3 26 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT17 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -70 0 obj -<< -/Length 8274 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-18)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -6 0 0 6 246 570.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 249.6006 570.14 Tm -(VAR DEFAULT)Tj -/TT8 1 Tf -6 0 0 6 309.0102 570.14 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 246 553.54 Tm -0.1678 Tw -(If an optional argument is specified as a two element list, )Tj -/TT13 1 Tf -27.2533 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1678 Tw -[( is the)]TJ --29.0536 -1.2889 TD -0.0522 Tw -(variable to be set, and )Tj -/TT13 1 Tf -10.1615 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0522 Tw -[( is a form that is evaluated and used as)]TJ --14.3622 -1.2889 TD -0 Tw -(the default if there is no corresponding element in the macro call.)Tj -/TT8 1 Tf -6 0 0 6 246 515.9399 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 249.6006 515.9399 Tm -(VAR DEFAULT VARSETP)Tj -/TT8 1 Tf -6 0 0 6 352.2173 515.9399 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 246 499.34 Tm -0.1911 Tw -(If an optional argument is specified as a three element list, )Tj -/TT13 1 Tf -28.0651 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1911 Tw -[( and)]TJ -/TT13 1 Tf --29.8654 -1.2889 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0678 Tw -[( are the variable to be set and the default form, and )]TJ -/TT13 1 Tf -23.6048 0 TD -0 Tw -(VARSETP)Tj -/TT6 1 Tf --27.8055 -1.2889 TD -0.0011 Tw -(is a variable that is set to )Tj -/TT8 1 Tf -6 0 0 6 345.8742 476.14 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 349.4748 476.14 Tm -0.0011 Tw -( if the optional argument is given in the macro)Tj --11.4972 -1.2222 TD -0 Tw -(call, )Tj -/TT8 1 Tf -6 0 0 6 264.2629 465.14 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 275.0646 465.14 Tm -0.0001 Tc -0.0032 Tw -( otherwise. This can be used to determine whether the argument)Tj --3.2294 -1.2222 TD -0 Tc -0 Tw -(was not given, or whether it was specified with the default value.)Tj -0 -2 TD -0.1989 Tw -(For example, after)Tj -/TT8 1 Tf -6 0 0 6 321.8437 436.14 Tm -0.4767 Tw -[( \(DEFMACRO FOO \(&OPTIONAL A \(B 5\) \(C 6 CSET\)\) FORM\))]TJ -/TT6 1 Tf -9 0 0 9 246 425.14 Tm -0.0811 Tw -(expanding the macro call )Tj -/TT8 1 Tf -6 0 0 6 351.5103 425.14 Tm -0 Tw -(\(FOO\))Tj -/TT6 1 Tf -9 0 0 9 369.5132 425.14 Tm -0.0811 Tw -[( would cause )]TJ -/TT8 1 Tf -6 0 0 6 426.4635 425.14 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 440.8658 425.14 Tm -0.0811 Tw -[( to be evaluated with )]TJ -/TT8 1 Tf -6 0 0 6 530.3893 425.14 Tm -0 Tw -(A)Tj -/TT6 1 Tf -9 0 0 9 246 414.14 Tm -0.0244 Tw -(set to )Tj -/TT8 1 Tf -6 0 0 6 269.8496 414.14 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 280.6514 414.14 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 285.3714 414.14 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 288.972 414.14 Tm -0.0244 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 315.2917 414.14 Tm -0 Tw -(5)Tj -/TT6 1 Tf -9 0 0 9 318.8922 414.14 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 323.6122 414.14 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 327.2128 414.14 Tm -0.0244 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 353.5325 414.14 Tm -0 Tw -(6)Tj -/TT6 1 Tf -9 0 0 9 357.1331 414.14 Tm -0.0244 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 379.5589 414.14 Tm -0 Tw -(CSET)Tj -/TT6 1 Tf -9 0 0 9 393.9612 414.14 Tm -0.0244 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 420.2809 414.14 Tm -0 Tw -(NIL)Tj -/TT6 1 Tf -9 0 0 9 431.0827 414.14 Tm -0.0244 Tw -(. )Tj -/TT8 1 Tf -6 0 0 6 438.2727 414.14 Tm -0.0583 Tw -(\(FOO 4 5 6\))Tj -/TT6 1 Tf -9 0 0 9 478.9291 414.14 Tm -0.0244 Tw -[( would be the)]TJ --25.881 -1.2222 TD -0 Tw -(same, except that )Tj -/TT8 1 Tf -6 0 0 6 316.7871 403.14 Tm -(A)Tj -/TT6 1 Tf -9 0 0 9 320.3877 403.14 Tm -( would be set to )Tj -/TT8 1 Tf -6 0 0 6 385.8003 403.14 Tm -(4)Tj -/TT6 1 Tf -9 0 0 9 389.4008 403.14 Tm -( and )Tj -/TT8 1 Tf -6 0 0 6 409.1367 403.14 Tm -(CSET)Tj -/TT6 1 Tf -9 0 0 9 423.539 403.14 Tm -( would be set to )Tj -/TT8 1 Tf -6 0 0 6 488.9517 403.14 Tm -(T)Tj -/TT6 1 Tf -9 0 0 9 492.5522 403.14 Tm -(.)Tj -/TT15 1 Tf --31.728 -2.1422 TD -(&REST)Tj -0 -1.2089 TD -(&BODY)Tj -/TT6 1 Tf -4.3333 0 TD -0.0078 Tw -[(Used to get a list of all additional arguments from the macro call. Either)]TJ -/TT8 1 Tf -6 0 0 6 246 361.38 Tm -0 Tw -(&REST)Tj -/TT6 1 Tf -9 0 0 9 264.0029 361.38 Tm -0.0003 Tc -0.0008 Tw -( or )Tj -/TT8 1 Tf -6 0 0 6 276.9911 361.38 Tm -0 Tc -0 Tw -(&BODY )Tj -/TT6 1 Tf -9 0 0 9 298.6147 361.38 Tm -0.0011 Tw -(should be followed by a single symbol, which is set to a list)Tj --5.8461 -1.2222 TD -0.0978 Tw -(of all arguments to the macro after the position of the )Tj -/TT8 1 Tf -6 0 0 6 469.6937 350.38 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 473.2943 350.38 Tm -0.0978 Tw -[(-keyword. For)]TJ --25.2549 -1.2222 TD -0 Tw -(example, given)Tj -/TT8 1 Tf -6 0 0 6 246 326.93 Tm -(\(DEFMACRO FOO \(A B &REST C\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 246 310.1 Tm -0.2311 Tw -(expanding the macro call)Tj -/TT8 1 Tf -6 0 0 6 352.5803 310.1 Tm -0.555 Tw -[( \(FOO 1 2 3 4 5\) )]TJ -/TT6 1 Tf -9 0 0 9 437.1003 310.1 Tm -0.2311 Tw -(would cause )Tj -/TT8 1 Tf -6 0 0 6 493.7705 310.1 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 508.1729 310.1 Tm -0.2311 Tw -[( to be)]TJ --29.1303 -1.3644 TD -0 Tw -(evaluated with )Tj -/TT8 1 Tf -6 0 0 6 307.9848 297.82 Tm -(A)Tj -/TT6 1 Tf -9 0 0 9 311.5854 297.82 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 337.2451 297.82 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 340.8457 297.82 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 345.3457 297.82 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 348.9463 297.82 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 374.6059 297.82 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 378.2065 297.82 Tm -(, and )Tj -/TT8 1 Tf -6 0 0 6 400.1924 297.82 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 403.7929 297.82 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 429.4526 297.82 Tm -(\(3 4 5\))Tj -/F1 1 Tf -10 0 0 10 454.6567 297.82 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 246 279.82 Tm -0.0533 Tw -(If the macro calling form contains keyword arguments \(see )Tj -/TT8 1 Tf -6 0 0 6 487.2116 279.82 Tm -0 Tw -(&KEY)Tj -/TT6 1 Tf -9 0 0 9 501.6139 279.82 Tm -0.0533 Tw -[( below\),)]TJ --28.4016 -1.2222 TD -0 Tw -(these are included in the )Tj -/TT8 1 Tf -6 0 0 6 345.7734 268.82 Tm -(&REST)Tj -/TT6 1 Tf -9 0 0 9 363.7763 268.82 Tm -( list. )Tj -/TT15 1 Tf --16.8196 -2.1422 TD -(&KEY)Tj -/TT6 1 Tf -3.7333 0 TD -0.0656 Tw -(Used to define keyword arguments, that are specified in the macro call)Tj -0 -1.2889 TD -0.21 Tw -(by including a keyword \(a symbol starting with the character :\))Tj -0 -1.2222 TD -0 Tw -(followed by a value.)Tj -0 -2 TD -0.0089 Tw -(Each element on )Tj -/TT8 1 Tf -6 0 0 6 314.0432 208.94 Tm -0 Tw -(ARGS)Tj -/TT6 1 Tf -9 0 0 9 328.4455 208.94 Tm -0.0089 Tw -[( after )]TJ -/TT8 1 Tf -6 0 0 6 351.4044 208.94 Tm -0 Tw -(&KEY)Tj -/TT6 1 Tf -9 0 0 9 365.8067 208.94 Tm -0.0089 Tw -[( until the next )]TJ -/TT8 1 Tf -6 0 0 6 423.5808 208.94 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 427.1814 208.94 Tm -0.0089 Tw -(-keyword or the end of the)Tj --20.1313 -1.2222 TD -0.0422 Tw -(list defines a keyword argument, which can either be a symbol or a list,)Tj -T* -0 Tw -(interpreted as follows:)Tj -/TT13 1 Tf -0 -1.6 TD -(VAR)Tj -/TT8 1 Tf -6 0 0 6 246 163.54 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 249.6006 163.54 Tm -(VAR)Tj -/TT8 1 Tf -6 0 0 6 265.8032 163.54 Tm -(\))Tj --3.3005 -1.5 TD -(\(\()Tj -/TT13 1 Tf -9 0 0 9 253.2011 154.54 Tm -(KEYWORD)Tj -/TT8 1 Tf -6 0 0 6 291.0073 154.54 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 294.6079 154.54 Tm -(VAR)Tj -/TT8 1 Tf -6 0 0 6 310.8105 154.54 Tm -(\)\))Tj -/TT6 1 Tf -9 0 0 9 246 136.66 Tm -0.13 Tw -(If a keyword argument is specified by a single symbol )Tj -/TT13 1 Tf -25.424 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.13 Tw -(, or a one-)Tj --27.2243 -1.2889 TD -0.3989 Tw -(element list containing )Tj -/TT13 1 Tf -11.4979 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.3989 Tw -(, it is set to the value of a keyword)Tj --13.2982 -1.2889 TD -0.1011 Tw -(argument, where the keyword used is created by adding the character)Tj -0 -1.2222 TD -0.0611 Tw -(: to the front of )Tj -/TT13 1 Tf -8.1259 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -[(. If a keyword argument is specified by a single-)]TJ --9.9262 -1.2889 TD -0.0122 Tw -(element list containing a two-element list, )Tj -/TT13 1 Tf -18.7647 0 TD -0 Tw -(KEYWORD)Tj -/TT6 1 Tf -4.2007 0 TD -0.0122 Tw -[( is interpreted as the)]TJ --22.9654 -1.2889 TD -0.0178 Tw -(keyword \(which should start with the letter :\), and )Tj -/TT13 1 Tf -23.7235 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0178 Tw -[( is the variable)]TJ --25.5238 -1.2889 TD -0 Tw -(to set.)Tj -/TT8 1 Tf -6 0 0 6 246 53.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 249.6006 53.26 Tm -(VAR DEFAULT)Tj -/TT8 1 Tf -6 0 0 6 309.0102 53.26 Tm -(\))Tj --10.5017 -1.5 TD -(\(\()Tj -/TT13 1 Tf -9 0 0 9 253.2011 44.26 Tm -(KEYWORD VAR)Tj -/TT8 1 Tf -6 0 0 6 312.6108 44.26 Tm -(\) )Tj -/TT13 1 Tf -9 0 0 9 319.812 44.26 Tm -(DEFAULT)Tj -/TT8 1 Tf -6 0 0 6 357.6181 44.26 Tm -(\))Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -73 0 obj -<< -/Length 8128 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-19)Tj -/TT11 1 Tf -10 0 0 10 222.3 612 Tm -(FUNCTION DEFINITION, MANIPULATION AND EVALUATION)Tj -/TT8 1 Tf -6 0 0 6 198 570.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 201.6006 570.14 Tm -(VAR DEFAULT VARSETP)Tj -/TT8 1 Tf -6 0 0 6 304.2173 570.14 Tm -(\))Tj --17.7029 -1.5 TD -(\(\()Tj -/TT13 1 Tf -9 0 0 9 205.2012 561.14 Tm -(KEYWORD VAR)Tj -/TT8 1 Tf -6 0 0 6 264.6108 561.14 Tm -(\))Tj -/TT13 1 Tf -9 0 0 9 268.2114 561.14 Tm -( DEFAULT VARSETP)Tj -/TT8 1 Tf -6 0 0 6 354.6255 561.14 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 198 543.26 Tm -0.0989 Tw -(If a keyword argument is specified by a two- or three-element list, the)Tj -0 -1.2222 TD -0.2244 Tw -(first element of the list specifies the keyword and variable to set as)Tj -T* -0.1178 Tw -[(above. Similar to)]TJ -/TT8 1 Tf -6 0 0 6 270.3983 521.26 Tm -0.2833 Tw -[( &OPTIONAL )]TJ -/TT6 1 Tf -9 0 0 9 313.4047 521.26 Tm -0.1178 Tw -(\(above\), the second element )Tj -/TT13 1 Tf -13.0219 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.1178 Tw -[( is a)]TJ --30.0453 -1.2889 TD -0.5033 Tw -(form that is evaluated and used as the default if there is no)Tj -0 -1.2222 TD -0.4633 Tw -(corresponding element in the macro call, and the third element)Tj -/TT13 1 Tf -T* -0 Tw -(VARSETP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0156 Tw -[( is a variable that is set to )]TJ -/TT8 1 Tf -6 0 0 6 338.9803 487.66 Tm -0 Tw -(T)Tj -/TT6 1 Tf -9 0 0 9 342.5809 487.66 Tm -0.0156 Tw -[( if the optional argument is given in)]TJ --16.0646 -1.2889 TD -0 Tw -(the macro call, )Tj -/TT8 1 Tf -6 0 0 6 258.126 476.06 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 268.9277 476.06 Tm -( otherwise.)Tj --7.8809 -2 TD -(For example, the form)Tj -/TT8 1 Tf -6 0 0 6 198 445.61 Tm -(\(DEFMACRO FOO \(&KEY A \(B 5 BSET\) \(\(:BAR C\) 6 CSET\)\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 198 428.78 Tm -0.0822 Tw -(Defines a macro with keys )Tj -/TT8 1 Tf -6 0 0 6 309.0496 428.78 Tm -0 Tw -(:A)Tj -/TT6 1 Tf -9 0 0 9 316.2508 428.78 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 321.4908 428.78 Tm -(:B)Tj -/TT6 1 Tf -9 0 0 9 328.692 428.78 Tm -0.0822 Tw -[( \(defaulting to )]TJ -/TT8 1 Tf -6 0 0 6 389.6581 428.78 Tm -0 Tw -(5)Tj -/TT6 1 Tf -9 0 0 9 393.2586 428.78 Tm -0.0822 Tw -(\), and )Tj -/TT8 1 Tf -6 0 0 6 419.7215 428.78 Tm -0 Tw -(:BAR)Tj -/TT6 1 Tf -9 0 0 9 434.1239 428.78 Tm -0.0822 Tw -[(. Expanding)]TJ --26.236 -1.2222 TD -0.0556 Tw -(the macro call)Tj -/TT8 1 Tf -6 0 0 6 254.626 417.78 Tm -0.1317 Tw -[( \(FOO :BAR 2 :A 1\))]TJ -/TT6 1 Tf -9 0 0 9 323.3865 417.78 Tm -0.0556 Tw -[( would cause )]TJ -/TT8 1 Tf -6 0 0 6 379.6468 417.78 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 394.0491 417.78 Tm -0.0555 Tw -[( to be evaluated with )]TJ -/TT8 1 Tf -6 0 0 6 482.4227 417.78 Tm -0 Tw -(A)Tj -/TT6 1 Tf -9 0 0 9 198 405.5 Tm -(set to )Tj -/TT8 1 Tf -6 0 0 6 221.4097 405.5 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 225.0102 405.5 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 229.5102 405.5 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 233.1108 405.5 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 258.7705 405.5 Tm -(5)Tj -/TT6 1 Tf -9 0 0 9 262.3711 405.5 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 266.8711 405.5 Tm -(BSET)Tj -/TT6 1 Tf -9 0 0 9 281.2734 405.5 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 306.9331 405.5 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 317.7349 405.5 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 322.2349 405.5 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 325.8354 405.5 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 351.4951 405.5 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 355.0957 405.5 Tm -(, and )Tj -/TT8 1 Tf -6 0 0 6 377.0815 405.5 Tm -(CSET)Tj -/TT6 1 Tf -9 0 0 9 391.4839 405.5 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 417.1436 405.5 Tm -(T)Tj -/F1 1 Tf -10 0 0 10 420.7441 405.5 Tm -(.)Tj -/TT15 1 Tf -9 0 0 9 94.2 386.22 Tm -(&ALLOW-OTHER-KEYS)Tj -/TT6 1 Tf -11.5333 0 TD -0.1122 Tw -(It is an error for any keywords to be supplied in a macro call that are)Tj -0 -1.2889 TD -0.0356 Tw -(not defined as keywords in the macro argument list, unless either the )Tj -/TT8 1 Tf -6 0 0 6 479.4074 374.62 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 483.008 374.62 Tm -(-)Tj --31.6676 -1.2222 TD -(keyword )Tj -/TT8 1 Tf -6 0 0 6 236.8234 363.62 Tm -(&ALLOW-OTHER-KEYS)Tj -/TT17 1 Tf -9 0 0 9 298.0334 363.62 Tm -( )Tj -/TT6 1 Tf -0.3367 0 TD -0.0867 Tw -(appears in )Tj -/TT13 1 Tf -5.0464 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -(, or the keyword )Tj -/TT8 1 Tf -6 0 0 6 439.2009 363.62 Tm -0 Tw -(:ALLOW-OTHER-)Tj --40.2002 -2.1467 TD -(KEYS)Tj -/TT6 1 Tf -9 0 0 9 212.4023 350.74 Tm -( \(with a non-)Tj -/TT8 1 Tf -6 0 0 6 263.335 350.74 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 274.1367 350.74 Tm -( value\) appears in the macro call)Tj -/F1 1 Tf -10 0 0 10 403.0591 350.74 Tm -(.)Tj -/TT15 1 Tf -9 0 0 9 164.4 331.46 Tm -(&AUX)Tj -/TT6 1 Tf -3.7333 0 TD -0.0733 Tw -(Used to bind and initialize auxiliary varables, using a syntax similar to)Tj -/TT8 1 Tf -6 0 0 6 198 319.86 Tm -0 Tw -(PROG)Tj -/TT6 1 Tf -9 0 0 9 212.4023 319.86 Tm -0.0003 Tc -0.003 Tw -( \(see the )Tj -/TT8 1 Tf -6 0 0 6 247.1608 319.86 Tm -0 Tc -0 Tw -(PROG)Tj -/TT6 1 Tf -9 0 0 9 261.5631 319.86 Tm -0.0001 Tc -0.0032 Tw -( and Associated Control Functions section of Chapter 9\).)Tj --7.0626 -1.2222 TD -0 Tc -0.0544 Tw -(Any elements after )Tj -/TT8 1 Tf -6 0 0 6 277.2488 308.86 Tm -0 Tw -(&AUX)Tj -/TT6 1 Tf -9 0 0 9 291.6511 308.86 Tm -0.0544 Tw -[( should be either symbols or lists, interpreted as)]TJ --10.4057 -1.2222 TD -0 Tw -(follows:)Tj -/TT13 1 Tf -0 -1.6667 TD -(VAR)Tj -/TT6 1 Tf -0 -1.8444 TD -0.18 Tw -(Single symbols are interpreted as auxiliary variables that are initially)Tj -0 -1.2222 TD -0 Tw -(bound to )Tj -/TT8 1 Tf -6 0 0 6 236.4038 255.26 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 247.2056 255.26 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 198 240.86 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 201.6006 240.86 Tm -(VAR EXP)Tj -/TT8 1 Tf -6 0 0 6 239.4067 240.86 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 198 224.26 Tm -0.2744 Tw -(If an auxiliary variable is specified as a two element list, )Tj -/TT13 1 Tf -27.9369 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2744 Tw -[( is a)]TJ --29.7372 -1.2889 TD -0 Tw -(variable initially bound to the result of evaluating the form )Tj -/TT13 1 Tf -26.2822 0 TD -(EXP)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --28.0825 -2.0667 TD -(For example, given)Tj -/TT8 1 Tf -6 0 0 6 198 181.61 Tm -(\(DEFMACRO FOO \(A B &AUX C \(D 5\)\) FORM\))Tj -0 -2.5917 TD -(C)Tj -/TT6 1 Tf -9 0 0 9 201.6006 166.06 Tm -( will be bound to )Tj -/TT8 1 Tf -6 0 0 6 271.4077 166.06 Tm -(NIL)Tj -/TT6 1 Tf -9 0 0 9 282.2095 166.06 Tm -( and )Tj -/TT8 1 Tf -6 0 0 6 301.9453 166.06 Tm -(D)Tj -/TT6 1 Tf -9 0 0 9 305.5459 166.06 Tm -( to )Tj -/TT8 1 Tf -6 0 0 6 317.8945 166.06 Tm -(5)Tj -/TT6 1 Tf -9 0 0 9 321.4951 166.06 Tm -( when )Tj -/TT13 1 Tf -2.9771 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is evaluated.)Tj -/TT15 1 Tf --24.0325 -2.2089 TD -(&WHOLE)Tj -/TT6 1 Tf -4.9333 0 TD -0.0856 Tw -[(Used to get the whole macro calling form. Should be the first element)]TJ -0 -1.2889 TD -0 Tw -(of )Tj -/TT13 1 Tf -1.1711 0 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0422 Tw -(, and should be followed by a single symbol, which is set to the)Tj --3.5715 -1.2889 TD -0.0811 Tw -[(entire macro calling form. Other )]TJ -/TT8 1 Tf -6 0 0 6 335.13 122.98 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 338.7306 122.98 Tm -0.0811 Tw -(-keywords or arguments can follow.)Tj --15.6367 -1.2222 TD -0 Tw -(For example, given)Tj -/TT8 1 Tf -6 0 0 6 198 99.53 Tm -(\(DEFMACRO FOO \(&WHOLE X A B\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 198 82.7 Tm -0.1644 Tw -(Expanding the macro call )Tj -/TT8 1 Tf -6 0 0 6 307.6968 82.7 Tm -0.395 Tw -(\(FOO 1 2\))Tj -/TT6 1 Tf -9 0 0 9 344.8421 82.7 Tm -0.1644 Tw -[( would cause )]TJ -/TT8 1 Tf -6 0 0 6 404.0424 82.7 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 418.4447 82.7 Tm -0.1644 Tw -[( to be evaluated)]TJ --24.4939 -1.2222 TD -0 Tw -(with )Tj -/TT8 1 Tf -6 0 0 6 218.5488 71.7 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 222.1494 71.7 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 247.8091 71.7 Tm -(\(FOO 1 2\))Tj -/TT6 1 Tf -9 0 0 9 280.2144 71.7 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 284.7144 71.7 Tm -(A)Tj -/TT6 1 Tf -9 0 0 9 288.3149 71.7 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 313.9746 71.7 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 317.5752 71.7 Tm -(, and )Tj -/TT8 1 Tf -6 0 0 6 339.561 71.7 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 343.1616 71.7 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 368.8213 71.7 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 372.4219 71.7 Tm -(.)Tj -/TT8 1 Tf -6 0 0 6 198 53.7 Tm -(DEFMACRO)Tj -/TT6 1 Tf -9 0 0 9 226.8047 53.7 Tm -0.0389 Tw -[( macros also support argument list destructuring, a facility for)]TJ --3.2005 -1.2222 TD -0.0756 Tw -[(accessing the structure of individual arguments to a macro. Any place)]TJ -ET -endstream -endobj -74 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT13 16 0 R -/TT15 17 0 R -/TT17 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -76 0 obj -<< -/Length 8462 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-20)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 246 569.54 Tm -0.0289 Tw -(in an argument list where a symbol is expected, an argument list \(in the)Tj -0 -1.2222 TD -0.48 Tw -[(form described above\) can appear instead. Such an embedded)]TJ -T* -0.01 Tw -(argument list is used to match the corresponding parts of that particular)Tj -T* -0.1744 Tw -[(argument, which should be a list structure in the same form. In the)]TJ -T* -0.1233 Tw -(simplest case, where the embedded argument list does not include &-)Tj -T* -0.1678 Tw -(keywords, this provides a simple way of picking apart list structures)Tj -T* -0 Tw -(passed as arguments to a macro. For example, given)Tj -/TT8 1 Tf -6 0 0 6 246 491.09 Tm -(\(DEFMACRO FOO \(A \(B \(C . D\)\) E\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 246 475.54 Tm -0.0956 Tw -(Expanding the macro call )Tj -/TT8 1 Tf -6 0 0 6 353.2168 475.54 Tm -0.2283 Tw -(\(FOO 1 \(2 \(3 4 5\)\) 6\) )Tj -/TT6 1 Tf -9 0 0 9 442.0197 475.54 Tm -0.0956 Tw -(would cause )Tj -/TT8 1 Tf -6 0 0 6 496.25 475.54 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 510.6523 475.54 Tm -0.0956 Tw -[( to be)]TJ --29.4058 -1.2222 TD -0.0356 Tw -(evaluated with with )Tj -/TT8 1 Tf -6 0 0 6 329.4937 464.54 Tm -0 Tw -(A)Tj -/TT6 1 Tf -9 0 0 9 333.0942 464.54 Tm -0.0356 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 359.7139 464.54 Tm -0 Tw -(1)Tj -/TT6 1 Tf -9 0 0 9 363.3145 464.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 368.1345 464.54 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 371.7351 464.54 Tm -0.0356 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 398.3548 464.54 Tm -0 Tw -(2)Tj -/TT6 1 Tf -9 0 0 9 401.9554 464.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 406.7754 464.54 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 410.3759 464.54 Tm -0.0356 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 436.9956 464.54 Tm -0 Tw -(3)Tj -/TT6 1 Tf -9 0 0 9 440.5962 464.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 445.4162 464.54 Tm -(D)Tj -/TT6 1 Tf -9 0 0 9 449.0168 464.54 Tm -0.0356 Tw -[( set to )]TJ -/TT8 1 Tf -6 0 0 6 475.6364 464.54 Tm -0.085 Tw -(\(4 5\))Tj -/TT6 1 Tf -9 0 0 9 494.1494 464.54 Tm -0.0356 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 516.7752 464.54 Tm -0 Tw -(E)Tj -/TT6 1 Tf -9 0 0 9 520.3758 464.54 Tm -0.0356 Tw -[( set)]TJ --30.4862 -1.2222 TD -0 Tw -(to )Tj -/TT8 1 Tf -6 0 0 6 256.1586 453.54 Tm -(6)Tj -/TT6 1 Tf -9 0 0 9 259.7592 453.54 Tm -0.0067 Tw -[(. Note that the embedded argument list )]TJ -/TT8 1 Tf -6 0 0 6 421.4789 453.54 Tm -0.0167 Tw -(\(B \(C . D\)\))Tj -/TT6 1 Tf -9 0 0 9 461.3854 453.54 Tm -0.0067 Tw -[( has an embedded)]TJ --23.9317 -1.2222 TD -0.1556 Tw -(argument list)Tj -/TT8 1 Tf -6 0 0 6 300.5562 442.54 Tm -0.375 Tw -[( \(C . D\))]TJ -/TT6 1 Tf -9 0 0 9 336.1109 442.54 Tm -0.1556 Tw -[(. Also notice that if an argument list ends in a)]TJ --10.0123 -1.2222 TD -0.0967 Tw -(dotted pair, that the final symbol matches the rest of the arguments in)Tj -T* -0 Tw -(the macro call.)Tj -0 -2 TD -0.6289 Tw -(An embedded argument list can also include )Tj -/TT8 1 Tf -6 0 0 6 466.1517 402.54 Tm -0 Tw -(&)Tj -/TT6 1 Tf -9 0 0 9 469.7523 402.54 Tm -0.6289 Tw -(-keywords, for)Tj --24.8614 -1.2222 TD -0.1211 Tw -(interpreting parts of embedded list structures as if they appeared in a)Tj -T* -0 Tw -(top-level macro call. For example, given)Tj -/TT8 1 Tf -6 0 0 6 246 368.09 Tm -(\(DEFMACRO FOO \(A \(B &OPTIONAL \(C 6\)\) D\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 246 352.54 Tm -0.0278 Tw -(Expanding the macro call)Tj -/TT8 1 Tf -6 0 0 6 348.2768 352.54 Tm -0.0667 Tw -[( \(FOO 1 \(2\) 3\))]TJ -/TT6 1 Tf -9 0 0 9 400.285 352.54 Tm -0.0278 Tw -[( would cause )]TJ -/TT8 1 Tf -6 0 0 6 455.7953 352.54 Tm -0 Tw -(FORM)Tj -/TT6 1 Tf -9 0 0 9 470.1976 352.54 Tm -0.0278 Tw -[( to be evaluated)]TJ --24.9109 -1.2222 TD -0.0022 Tw -(with with )Tj -/TT8 1 Tf -6 0 0 6 287.1376 341.54 Tm -0 Tw -(A)Tj -/TT6 1 Tf -9 0 0 9 290.7382 341.54 Tm -0.0003 Tc -0.0019 Tw -( set to )Tj -/TT8 1 Tf -6 0 0 6 316.4579 341.54 Tm -0 Tc -0 Tw -(1)Tj -/TT6 1 Tf -9 0 0 9 320.0585 341.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 324.5785 341.54 Tm -(B)Tj -/TT6 1 Tf -9 0 0 9 328.179 341.54 Tm -0.0003 Tc -0.0019 Tw -( set to )Tj -/TT8 1 Tf -6 0 0 6 353.8987 341.54 Tm -0 Tc -0 Tw -(2)Tj -/TT6 1 Tf -9 0 0 9 357.4993 341.54 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 362.0193 341.54 Tm -(C)Tj -/TT6 1 Tf -9 0 0 9 365.6199 341.54 Tm -0.0003 Tc -0.0019 Tw -( set to )Tj -/TT8 1 Tf -6 0 0 6 391.3396 341.54 Tm -0 Tc -0 Tw -(6)Tj -/TT6 1 Tf -9 0 0 9 394.9402 341.54 Tm -0.0001 Tc -0.0021 Tw -( \(because of the default value\), and)Tj -/TT8 1 Tf -6 0 0 6 246 330.54 Tm -0 Tc -0 Tw -(D)Tj -/TT6 1 Tf -9 0 0 9 249.6006 330.54 Tm -( set to )Tj -/TT8 1 Tf -6 0 0 6 275.2602 330.54 Tm -(3)Tj -/TT6 1 Tf -9 0 0 9 278.8608 330.54 Tm -(.)Tj -/TT17 1 Tf --3.6512 -2 TD -(Warning)Tj -/TT6 1 Tf -4 0 TD -0.0889 Tw -(: Embedded argument lists can only appear in positions in an)Tj --4 -1.2222 TD -0.2611 Tw -[(argument list where a list is otherwise not accepted. In the above)]TJ -T* -0.0189 Tw -(example, it would not be possible to specify an embedded argument list)Tj -T* -0.3267 Tw -(after the )Tj -/TT8 1 Tf -6 0 0 6 287.1637 279.54 Tm -0 Tw -(&OPTIONAL)Tj -/TT6 1 Tf -9 0 0 9 319.5689 279.54 Tm -0.3267 Tw -[( keyword, because it would be interpreted as an)]TJ --8.1743 -1.2222 TD -0.0933 Tw -(optional argument specification \(with variable name, default value, set)Tj -T* -0.3033 Tw -[(variable\). However, it would be possible to specify an embedded)]TJ -T* -0.0722 Tw -(argument list as the first element of an optional argument specification)Tj -0 -1.3644 TD -0 Tw -(list, as so)Tj -/F1 1 Tf -10 0 0 10 281.7802 234.26 Tm -(:)Tj -/TT8 1 Tf -6 0 0 6 246 221.81 Tm -(\(DEFMACRO FOO \(A \(B &OPTIONAL \(\(X \(Y\) Z\))Tj -3 -1 TD -(\(1 \(2\) 3\)\)\) D\) FORM\))Tj -/TT6 1 Tf -9 0 0 9 246 200.26 Tm -0.0689 Tw -(In this case, )Tj -/TT8 1 Tf -6 0 0 6 296.358 200.26 Tm -0 Tw -(X)Tj -/TT6 1 Tf -9 0 0 9 299.9586 200.26 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 305.0786 200.26 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 308.6792 200.26 Tm -0.0689 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 331.905 200.26 Tm -0 Tw -(Z)Tj -/TT6 1 Tf -9 0 0 9 335.5056 200.26 Tm -0.0689 Tw -[( default to )]TJ -/TT8 1 Tf -6 0 0 6 380.2519 200.26 Tm -0 Tw -(1)Tj -/TT6 1 Tf -9 0 0 9 383.8524 200.26 Tm -(, )Tj -/TT8 1 Tf -6 0 0 6 388.9724 200.26 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 392.573 200.26 Tm -0.0689 Tw -(, and )Tj -/TT8 1 Tf -6 0 0 6 415.7989 200.26 Tm -0 Tw -(3)Tj -/TT6 1 Tf -9 0 0 9 419.3995 200.26 Tm -0.0689 Tw -[(, respectively. Note that the)]TJ --19.2666 -1.2222 TD -0.0178 Tw -[(default value has to be an appropriate list structure. Also, in this case)]TJ -T* -0.2711 Tw -(either the whole structure)Tj -/TT8 1 Tf -6 0 0 6 356.0685 178.26 Tm -0.65 Tw -[( \(X \(Y\) Z\))]TJ -/TT6 1 Tf -9 0 0 9 403.7744 178.26 Tm -0.2711 Tw -[( can be supplied, or it can be)]TJ --17.5305 -1.2222 TD -0 Tw -(defaulted \(i.e., is not possible to specify )Tj -/TT8 1 Tf -6 0 0 6 404.5239 167.26 Tm -(X)Tj -/TT6 1 Tf -9 0 0 9 408.1245 167.26 Tm -( while letting )Tj -/TT8 1 Tf -6 0 0 6 462.832 167.26 Tm -(Y)Tj -/TT6 1 Tf -9 0 0 9 466.4326 167.26 Tm -( default\).)Tj -/TT4 1 Tf -10 0 0 10 126 144.92 Tm -(Interpreting Macros)Tj -/TT6 1 Tf -9 0 0 9 126 129.26 Tm -0.0156 Tw -(When the interpreter encounters a form )Tj -/TT8 1 Tf -6 0 0 6 286.9987 129.26 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 297.8004 129.26 Tm -0.0156 Tw -[( of which is an undefined function, it tries interpreting it as)]TJ --19.0889 -1.2222 TD -0.1778 Tw -[(a macro. If )]TJ -/TT8 1 Tf -6 0 0 6 179.0875 118.26 Tm -0 Tw -(CAR)Tj -/TT6 1 Tf -9 0 0 9 189.8893 118.26 Tm -0.1778 Tw -[( of the form has a macro definition, the macro is expanded, and the result of this)]TJ --7.0988 -1.2222 TD -0.1089 Tw -(expansion is evaluated in place of the original form. )Tj -/TT8 1 Tf -6 0 0 6 346.4255 107.26 Tm -0 Tw -(CLISPTRAN)Tj -/TT6 1 Tf -9 0 0 9 378.8307 107.26 Tm -0.1089 Tw -[( \(see the Miscellaneous Functions and)]TJ --28.0923 -1.2222 TD -0.0333 Tw -(Variables section of Chapter 21\) is used to save the result of this expansion so that the expansion only)Tj -T* -0.0378 Tw -[(has to be done once. On subsequent occasions, the translation \(expansion\) is retrieved from )]TJ -/TT8 1 Tf -6 0 0 6 497.9335 85.26 Tm -0 Tw -(CLISPARRAY)Tj -/TT6 1 Tf -9 0 0 9 126 74.26 Tm -(the same as for other )Tj -/TT8 1 Tf -6 0 0 6 211.0386 74.26 Tm -(CLISP)Tj -/TT6 1 Tf -9 0 0 9 229.0415 74.26 Tm -( constructs.)Tj -/TT17 1 Tf --11.4491 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0133 Tw -[(: Because of the way that the evaluator processes macros, if you have a macro on )]TJ -/TT8 1 Tf -6 0 0 6 472.3076 56.26 Tm -0 Tw -(FOO)Tj -/TT6 1 Tf -9 0 0 9 483.1093 56.26 Tm -0.0133 Tw -(, then typing)Tj -/TT8 1 Tf -6 0 0 6 126 45.26 Tm -0 Tw -(\(FOO A B\) )Tj -/TT6 1 Tf -9 0 0 9 169.207 45.26 Tm -(will work, )Tj -/TT8 1 Tf -6 0 0 6 212.2998 45.26 Tm -(but FOO\(A B\))Tj -/TT6 1 Tf -9 0 0 9 255.5068 45.26 Tm -( will not work.)Tj -ET -endstream -endobj -77 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT11 15 0 R -/TT17 22 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -79 0 obj -<< -/Length 66 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(10-21)Tj -ET -endstream -endobj -80 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -86 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBFHNG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 87 0 R ->> -endobj -87 0 obj -<< -/Filter /FlateDecode -/Length 20019 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE@Bi C9͎~03K6JJb)ՔҔRj)Bȇآ"-P)@z&@?ޙ߻f;G{`م =;ohQ`r [Q`]Y|714cEb9KBHolxbCVRNuCQs*;6<0vg> G:wI%' *X܁rMkMOGd\<&QV "@rqST#6(usQirnVU#^x9jPep8kVRHNh^M0΂W`^ lEא[(Le3ϐ0,GMЊ8s ]pv5;#B0 -p0 JQ8nu|$lznyfAlm@lΥ xGe-M89T~6섭9n:HpNa5 (ypa/"Hj =i|a8)ys>]!N.Qbz("s@K}(z:dU|1셧-|Bkɶ;HVxG a^n ?ʡ -qU6r -V ~$iP¯Dɝ!qEr*_\6Kؼʟdn EA(4*h&c x'~u/Z cYP+19FAnЍN`;A3d-]JX1]L᱊?Aw-}6!~z-8zLw'LLKcp&&DzL𣔎1ONo}o6c(=y]%dFv#Zd0Iqe2}8> \N7~{|`b.gOd5g,@g ,B4fi6.%6.6.6ql\mcOٸƵ6>m36#u6>gzlclh6c?g UEG(Dh¤?4jt~B6!] j,3QԨjV4!-џ;Z¿T0|7J,)+pcѐKLķW)y0V*iN鯥05F`NIuˮmb$j\~b:QѶ{hhA5Oh5wAuok+uhq%)RMS1 =Y n."a{!MJZc&gŇ1ZOb)* SW c/m;ř-" -E?mS"cnboݨߧӐFi~@Bߌ*c"c(>FnTu^i/bUWea#Zke7|MF}tMP`̌(fm+c=c M1K;t۲TF%NK-2zZ|a/ z{|@d$"h0F,K!e3s=&׏;c5S4ao7/x)Q{D~.%sRݖ7,-p+tˌ_ʹi_߼&[Z#ǽMvb~>T[&NfW|[77z f+7M .]vz֚AlʺKKRƜԱ}[uƪkq7zjR˪&wwz;̬2 0wmm#;[l`88/%>;5gVqh(D>mK0 JMP]jtr>Jmi%&]@dxϝm":@BB{_݇tUQwᒬπ*Ŋ^Pm(]dz61HesG -P'Yۻ[,hp/IS F^ -j!Q/sHddH{YMj`t2*ASGiHHqrE{K0(&NѮ#AV3T|Agl 1G[/s pMrg*d|#gW %k[:o02QϨu6qTCh;~,nVáFŅٟV8nCG}~S@H}@-!PI`:c|QH}t.>X;}`Wv(Y*t *ɮlU $Cl=3:R@FqEY%P9{F;9~;ZnY 茹M;OʹKWlʷ:Z`]U?cj-d弿_ʉGu/ϔœ\.UvF 6yv"`[=Kܒ&+r32:BnICXRy:lJje+ִ>vQyl.t$d,V=KUQ-\胠R([VK8<'X:UD:Ye:;6I > 7QI2M>:܄!R -7yn%,\ru -Ȉt晞!ƺpP0kp#' |Ib'bAF`űߘ1تhc_2.!Cϣl; -1 .Bf6&}H8'8n7ӌoQ7p<x㐏Ĺ> )Gǘ`j0ɚEGQxއn p.7  qH>!B%~RN69HL119Mzr\%Z:i.u1!0UiMѧh%]rt%} t }ѷ{~B/?h ffY{&l"ʊ dOl){fU؛v}N,.+lS.'| -1/R<|3}]'~;x'?̏~(;/'̦ SV'ቛJwPg&A,TIS (3 1*qf( -+5I3##uXi[CЭj!KeV=R ڌ}1UH֔ELf`ez(~BT +FlCWh %Ml b#V&QfO>a*6.= ?cXPa~1NJ6fQɰg6|Q_ p˺fl[rR̸)v%9$F{nex_AKݛm1jwZõ2jɥ'-[Fgl@E-poô[[rZH"p 2`KEȭU'nHZK;~jkɖ@RKT>4{Jz"hkFK]] q~[S|0D/bI| A#akF(Z|6q.眤<m:(5×Be+HI[uNPv#'NrdnV(q Nti4[`HAus{lP~i[Eݽ};na5G't%W߶߶lۺ[_ޱ,y0l `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|S&`iz-B =>6c$\H ?|RZD[sMrAp2 hlvnͲxNAٖcQ7xgD2m>(pd%, --&T R Y*YwmKwZ@UZjuٜ_5 ye3V,go^X\Xo;8S>*!gEiPSzl L pkAEz^  ,ώtnW>ΡM ]QiYc*]Z*덌n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~mtlt \NEb;aVd1;tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWye"Ȋo!5f]Jɱ)N-Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:/I"[,Wvˤ=Y_@d|ZXY@Vo47 PK9tev|i+ Y4]c4; Y2`YX gLyB%ASJ؊hݏ?XZ,ZҖ%8 ̂jԍRK¼2ټט?%UJ9C':g..?/ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStWRKAİX{== x^.ww\9 ߚq?W?NhN-:zTDO!WhG,h)cxz}GGVWAhSdcE{%`нdA"mψԒn^1vt,y}4|ˊ^ox6g@EV4 @3h UFF;b|thƶGcߞreQc6*W_09K_0(,f}"ei:XEHQ e6|'Y_QSO==Znlgr J}Jn1 pu3dePjtL]gB6E= -UеA~%˂R*XZ:j12O-}XX5C-^:p>'[NV-K1h2=\yhJ--'h4Oj>Ma`/=0x xNï7pf,yѣգ&e5} qt@DE3-.[`;.kZ܌Oo.m]܋u&Np -_")"+*""%z@ZH;yt2Bd"oߑ$yK'%$qpk\3%I. q܏q m=./ګ( -{}o]HY-3vYlTDBY@!jFS;#Cd:ڴ:5Fww(ҙF;S'&mEƈdZ;cvl؉2{Y5F1yo9~_ -%rr(K7>[}wߑWUY < |ZGZx\Hcv1~`ۄݰޒp-剏 -r q$[(_\۱r]VykVeybmؕxa8}; &.'eusI+dO-(,5|K=FK㞎2q~adYRɝ^H)JBlJ&[kHK*pxOE|tM hRh1)!YXq]%|t^n?YriXZƪtRޮW3@>i钙An#^n-qx"dy phE3rCWIw򵾮&>O&x 6gygs3dUŞVpp$_ X4-AE$.puh^ϽX<&Z  -K!@4کT]k'=I}!fkx4qɴ;>SWL]r` #OsO8dl?|̙|7uw8v:cUF/9m~b^H kA"ˑئ;+4ĥbM|gMXp|+_1yFj;M`yI}7CR9a{rMtxc|mtٻ^H~!yX"p@L]{8=.$ ߅Tj -dA.DVcU<1?rV/5haŠ;ȯ) [D{L$in\ssd "/*YK$k+N.M@%=%!?ɿe%A -Qc'u!T:Ntu h%+j60H6dv{Qzh?HD%I)OzRʖ3+GnV)UKˑIIjF&ŤI.tY9iyڠtML Cff6fgNRyD6}Mc,\Cgl6&d fNA|1GVexGaY*\ay\sf܄!C=U۸ } Y-TrߏKh"C9,mدPO3؈M2aagA#8;bŚ& # U0^#,U#cpFG yȒ(O^5r)dUm[m 5e~~yIr]TRV5qWV?IȌm=j (o~ꘆBxWZtDWg4 ʓ˗t~|j?~˗e|nѠctߩQ?)p4(H lgN@Nء#;cGPYי.J#w^32%šXA {Eu{o{5 A6p"]JG$j2NFQ -#r4Ԁ&0-A@8c;Crf2"iuc5j;H^KS8w~V'B{ -8Yhsn<\嫈,4cLh~]˥nɭQQwQD=XV|柙{a-t ;[_*d6fW_RY}S̵#Ň -[B9;zod:un]n^clo(nlHўʦP${eivl[ӥh5o\r~$_{?<0"Җk 撇;i6?%rQmZo}>5-lfXx/N]x'~gۥgPޑw>PjuQKo&7go| -ȏ "VLcw뛬L\ ROQW\[of*?J!aThR4y2KȦ]0&S}5fD3qtp ҢS{ 5${®] ڌTa785h}lxZy6vKxJ* Za2LE55JQOp̅QOb -Sz?}pQx5qWQs&j!a*MEU5uU tr)'H5{"K2W5d=i"ͤlC!]ir1 rF []h\z=Bz#5-ԤΡun].Ut m_zQCO?h^YEu- ښ¦ںUZ6}ճedPs=ְuf~ W*NcO.vس9ϓ+A|QBW#x51uycDcܻ^d:B(F;g=݋*yGZ?ڥWRB2+c7* y(L&ڽ|4ͫ`ugq71uюd4\§& -LR$1$gV\7A@v9w_D>WXUM&/I _7 'aQ#Y x.xgؾ/ )6>Bx+ea#'7F:BS5bX4~,'@?d=v?[d$88T)`L3RcCgR[=RaQ,+Nԍ#.)dd@ Bt50+Njvh7 %?6Iq]nBRx PNߘ,C:s6IO<'t!ށCxQhNC_#Xĺk4)ʹx6t^9h.dJ\AxVX챐%d4ȢfV.Q ->z6HyOXmMXLmInXiأKu> Calœ"KtZ8f{1LOaP `%KeW5#X|"4y,y^2Y\ ARo6h.ӚW+Dɑ-=aRlEɥ[eD[d5s ;tYH~8VcqiyZ@!bp5f "@| (YhYYdِ[=c/wnKFT }KkW g+a\[X2,-Dr@=zZe`A }Zcr/ltnoJEXY0pɺz^a,$Τ"vIW!u>$e璘+Gn-,-ćÝnFJfM뙷1ƴݸmɲ덦ʩҀ#{S6>ZeEF4t-h.GU.l-yu53]cާ=l`hQq-0XYh+cٽS:fejc۲tfq0 - -rm~ǕsC0$k좕~bA-16BOt g2+M&W.ӜyqSSJڥ,'mZCSEqi\Zxun (pL/秡lF' Z(IܳaS%{ĺu꠴p={EyyE/ȵqJoS82It S ~ $:`VbGgk=.^Chg'- .{t*CeK ZLj.E:`1\wiBp1"jw]tRע'linlujR4"8 3Nm@ WvޖBW -f1!djcA7iZ8 TFg&N %A(-4nmv.'c ޵П9E>1eTq -xA¹#TZ(޵Pw:5.->Z$(^Êr%-HAy@OL -=4A^#n‘Bt4؋B$5,Bu~2*EFxъ-xVrVT8,& LMVH9#6YK΅(vfXMZ6Eh]Ehu2p0x6e;V k!U%i+8 b=hL_ = }BhQǀc:< "/(s6l9G9WB ޷4ZHJ;g[V{ эNCRmiяZ oϿ9K-ZfOpٷp{吉9̎,>)A 8Uތ-B#.AʺSZkc MZPh= `eZ҃q'f;eNM% ^[l<#S`ѯ/d -Kw`p#2vb Km:hZbWaD%u__u'˵e\# /s%+ڛ6Z$o'KrvM66mo"rWw`)N†*. xrK}T Ya9,gpA{B:_wyTeE2(I ђ?mFԆXYC+h ';Z+jZQk%A9Zb\-.v06ϚQ7c7l$D½Y[fMsrѯ |HspihC`%#BpY#erZ%nhӡB{J`k1Z<2^D(m _=~X< K)'~xWTߡyyi1d, P 7eaǾ*rwp[v0D039QLoͷlk \ I"5ǴRΖ/2軄pl-uhC;65?-Ej>ҍBm;޺1Z4.B.- y; L~#F]}J(!6`q?N|B+MGEN􎀴N C>(p߂1pa- ~ /oЀm \!$CyLoK{X,oɫdKn)2+QN(_V\PkU+E_W T (0HFmYp1X$'Z$PXiTL11x"]>V14k#+YT93޹ܙf'*`XoR F3sl!gzmgmcv]ea,Cy"a| _3Λ&G9oKROI30iT,M*ER;itD:/]l49Kvȓry^n' -S"~ʏ\e2K,VV)((;0ݫV('ʿKJTU5&^:@f05@OGV%&#Lh -D!ZdQvH&bDd H{b=DRu1h3 -t_Āo,u Bz0%|~5P$a4EGA|d4T3.#܌r3Yt( R8D<!10q#BA1JHU7)uAԉ} &Ζ:?A}n@q'j7smoG1<й(z(me~+ -7@zE{(l(RG9n}w'Ox`ٳc;oЭsvD|3Q18B*_ge)0&t%@NGPD+./HsJw++ }Ҭi-yK[~m^ɲ̟,N6||QoQ4BIk0?ly01ߚ 8Unx0ZXJX oA3Z1cp ס:*j<#IoGII!'d0J2d@&"22 -E*|ڪBRK|@~CV&üJnv5%T3/i4}3dJI4ŜET:ܱ.*F"7Pmt撇Q=E?ez~Eovzv#a1όdQbYxĞdSH(!ܑGʧ(0DD9e(-F%R݈mO"&j -uJ1yԽ^‚-dvƒ˃-vWr?)؋G #/SHldyqٝ=QXޫ XA[J\ -JIg5K^әs}M$Kb}D)t"K\VInmSZ55 c%OcI'%}luéc)pbSXGAv8#dO~??3lrULH16B(H`-Ԫ Gռn6\6ōӟ(!wNDzi\w%.C ==A'YGj>y>kh9mo=rUݑs#p)X1ty9v,>8m?l& ]` -{dI9~q*O%V, KLQ}JGلƄ-]}nJ-(k+O%;oF ><"(0‚> 2 ]X ~'|䜔S]|H=8|A%jS_9`Ε-* s-}"7Ϩ -9+#2@PK]}Z~_/#G{@^S+~HG U)='9$ + }B.E- DGFdnMY~_ȗDJƵb'C}:IQQ"52FCרrn|@"U|H c}ܟ䦽~LsVjSO %(H=|n^~ww -~ iۃ~%q޿ĭ=<+}^i%Ӄ]^|@j=ʍGr7HsrVzq]PQya/!G?9.oOwp1?I M4 }gp|i ]X".y9@&dQi;S^tvi/RXܜHe\R#dƆJi7C |t`Z.B,I]I9 ێ6N)N|Y%,2渇l$iJ/գ4_mm<:x(yǭ#W#!n2 GP%:&7'|a 3ck"jmS-;oTW;Hˌo), m\_F>MK-AYF6$=f(m((0#| -pgy4چ.v`8tlj'۶1`fX"?ꢂGsy2akD]aZMa``.4V*JFs%b^ӈf=iv->"1zq&4G {#~mQ\ml Y,2Ke%eU^Ȟ ^ L8n|%rt &3W&;OW -Wy̾$T })olO{c8FշX-$Μ@B,taϩd,( -Zz1mq九So8!p v@ ) ]k$~XPuc7z>#܈qNG -C/1iF$MݎY:q>zH8:SM e{*kИt Gb"郤!VIXjblTneY #)h-v`rkbP[РM+K&-aV=Ύ@#*v_9ͼJszտ?x>_?wwd??Cc܃8~~‚\UBFJ#*jERL@RD(G}F4B A\|4BD&5L;>+e?NO;<{{ =^=?q։uToK\;5&-3GRϧF5{G;3+"=kCxO -iK8lUІ;HQyߓ<7]orr0/h_w^UUuqNCCv,Vn{Jѵu;p_Tݑ -O?MQs:lmm$Uϟ{ݢy> co.ҤҎ76άQ[F>y:ivӖvr_3R¡홆 -&\Tv4;>}܉i7^mQvDem#WO}Qm̆cWnD%|E,y)|ך9RJ?;<\mU˗M(Ѭ<jHd Y$'WD8X$gNMTL(ڦE3+`!w4.,+6ԃzM4=iQl&ݠ?"'d|^KVOk+2s4 ha=סϵ,j)uk+ -{[>4eS,S{Z'%nK1\_+[raɥ:U^:a#B#U YRYb qM4Ρ4ұ`I#G~:V?cKi ҰiȔ:)p68 Nz>70ɐI`<{0u0c1]y(h^ADGA`f3`8M\[='a` CY'S !`0 ɏP[CB}ȑ9<޼e2@ߟ}${Br_ܽ>7Jz =-tșfsF4 -Y:VPuDt9@@{Ԃ -et w"T hYxI򳓟R~ѐ$[V(e*?uoؕNUvcGh{vK\**vZ:xtlgރ˺IÛ[Yr_Dz'yr;^kޜtpIN*ygC8X !C2pc8XuKo'>pa(|4)b/!]'(kNM]ɪؤnvJRKZBIC[l^N'_!YIG5&{Ճ~ΐ W% -hO+ϨO۩RE(+Wζ6d -4n*Ad"hMT{xI*HnyS33O-∣'nY͒Fkyw -'MvMVMV76rԘ&f53m/gh,s8D=7hL|;{K3K'̲?Ԙ8# }I3JNZ,:"G%YX>@[ou{- -endstream -endobj -88 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -89 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 93 0 R ->> -endobj -21 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 41 -/Widths [278 333 400 556 556 833 852 278 333 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 94 0 R ->> -endobj -26 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 95 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 82 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 611 0 0 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 0 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 83 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 278 0 0 0 0 778 0 333 333 0 0 250 333 250 606 -500 500 500 500 0 500 500 500 500 500 250 250 0 606 0 0 -0 778 611 709 774 611 556 763 832 337 333 0 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 84 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 600 0 0 600 600 0 600 600 600 0 600 600 600 0 -600 600 600 600 600 600 600 600 0 600 600 0 0 600 600 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 85 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBFHNG+Symbol -/Encoding /Identity-H -/DescendantFonts [ 96 0 R ] -/ToUnicode 97 0 R ->> -endobj -96 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBFHNG+Symbol -/FontDescriptor 86 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 86 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 88 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 89 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 90 -/Widths [600 0 0 0 0 0 600 0 0 0 600 0 0 600 600 0 -0 0 600 0 0 0 0 0 0 0 0 0 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 90 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 1000 0 0 0 0 0 0 0 0 -0 500 0 0 0 500 0 556 0 333 0 0 0 0 611 556 -0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 91 0 R ->> -endobj -33 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 722 0 0 0 0 0 0 0 -0 444 0 407 500 389 278 500 0 278 0 0 278 778 556 444 -500 0 389 389 333 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 92 0 R ->> -endobj -97 0 obj -<< -/Filter /FlateDecode -/Length 217 ->> -stream -HTPn0 {ꐀn9 \BC#'2aDpU޳{EMFGq+;N:d32m8w4zh!?p0\ -)!+!H-XgYծ-.AdMBYGA>oخjE7=|9Y,#ق#|&r_j} -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -72 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 74 0 R -/Contents 73 0 R ->> -endobj -75 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 77 0 R -/Contents 76 0 R ->> -endobj -78 0 obj -<< -/Type /Page -/Parent 81 0 R -/Resources 80 0 R -/Contents 79 0 R ->> -endobj -98 0 obj -<< -/S /D ->> -endobj -99 0 obj -<< -/Nums [0 98 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 18 0 R 23 0 R 27 0 R 30 0 R 34 0 R 37 0 R 40 0 R 43 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [46 0 R 51 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R 72 0 R 75 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -81 0 obj -<< -/Type /Pages -/Kids [78 0 R] -/Count 1 -/Parent 49 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [11 0 R 50 0 R 81 0 R ] -/Count 21 -/MediaBox [0 0 612 792] ->> -endobj -100 0 obj -<< -/CreationDate (D:20210202102644-06'00') -/ModDate (D:20210202102644-06'00') -/Producer (Apple pstopdf) ->> -endobj -101 0 obj -<< -/Type /Catalog -/Pages 49 0 R -/PageLabels 99 0 R ->> -endobj -xref -0 102 -0000000000 65535 f -0000211212 00000 n -0000000016 00000 n -0000005405 00000 n -0000205990 00000 n -0000206915 00000 n -0000207126 00000 n -0000207554 00000 n -0000208124 00000 n -0000208679 00000 n -0000183120 00000 n -0000213041 00000 n -0000211293 00000 n -0000005555 00000 n -0000013696 00000 n -0000209024 00000 n -0000209337 00000 n -0000209819 00000 n -0000211377 00000 n -0000013886 00000 n -0000022149 00000 n -0000206527 00000 n -0000210171 00000 n -0000211461 00000 n -0000022340 00000 n -0000029471 00000 n -0000206740 00000 n -0000211545 00000 n -0000029672 00000 n -0000040036 00000 n -0000211629 00000 n -0000040226 00000 n -0000050898 00000 n -0000210538 00000 n -0000211713 00000 n -0000051101 00000 n -0000060515 00000 n -0000211797 00000 n -0000060718 00000 n -0000069643 00000 n -0000211881 00000 n -0000069870 00000 n -0000078061 00000 n -0000211965 00000 n -0000078275 00000 n -0000087957 00000 n -0000212049 00000 n -0000088136 00000 n -0000099483 00000 n -0000213390 00000 n -0000213178 00000 n -0000212133 00000 n -0000099697 00000 n -0000110854 00000 n -0000212217 00000 n -0000111033 00000 n -0000124730 00000 n -0000212301 00000 n -0000124909 00000 n -0000133185 00000 n -0000212385 00000 n -0000133388 00000 n -0000142163 00000 n -0000212469 00000 n -0000142332 00000 n -0000149835 00000 n -0000212553 00000 n -0000150030 00000 n -0000157154 00000 n -0000212637 00000 n -0000157368 00000 n -0000165695 00000 n -0000212721 00000 n -0000165863 00000 n -0000174044 00000 n -0000212805 00000 n -0000174225 00000 n -0000182740 00000 n -0000212889 00000 n -0000182906 00000 n -0000183023 00000 n -0000213316 00000 n -0000183261 00000 n -0000183458 00000 n -0000183664 00000 n -0000183864 00000 n -0000184055 00000 n -0000184245 00000 n -0000204354 00000 n -0000204549 00000 n -0000204750 00000 n -0000204952 00000 n -0000205157 00000 n -0000205360 00000 n -0000205568 00000 n -0000205778 00000 n -0000208821 00000 n -0000210922 00000 n -0000212973 00000 n -0000213001 00000 n -0000213489 00000 n -0000213613 00000 n -trailer -<< -/Size 102 -/Root 101 0 R -/Info 100 0 R -/ID [<1c62175a03e8df2eaffbcff9bf2476b3><1c62175a03e8df2eaffbcff9bf2476b3>] ->> -startxref -213684 -%%EOF diff --git a/docs/medley-irm/11-VAR-BINDINGS.pdf b/docs/medley-irm/11-VAR-BINDINGS.pdf deleted file mode 100644 index f7ebd770..00000000 --- a/docs/medley-irm/11-VAR-BINDINGS.pdf +++ /dev/null @@ -1,8234 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5308 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-1)Tj -/TT4 1 Tf -10 0 0 10 303.32 568.2 Tm -(11. VARIABLE BINDINGS AND THE STACK)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -10 0 0 10 54 555.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 531.54 Tm -0.1722 Tw -[(Medley uses deep binding. Every time a function is entered, a basic frame containing the new)]TJ -0 -1.2222 TD -0.05 Tw -[(variables is put on top of the stack. Therefore, any variable reference requires searching the stack for)]TJ -T* -0.0689 Tw -(the first instance of that variable, which makes free variable use somewhat more expensive than in a)Tj -T* -0.0189 Tw -[(shallow binding scheme. On the other hand, spaghetti stack operations are considerably faster. Some)]TJ -T* -0.0633 Tw -(other tricks involving copying freely-referenced variables to higher frames on the stack are also used)Tj -T* -0 Tw -(to speed up the search. )Tj -0 -2 TD -0.0022 Tw -(The basic frames are allocated on a stack; for most user purposes, these frames should be thought of as)Tj -0 -1.2222 TD -0.0533 Tw -(containing the variable names associated with the function call, and the )Tj -/TT10 1 Tf -32.3938 0 TD -0 Tw -(current)Tj -/TT8 1 Tf -3.02 0 TD -0.0533 Tw -[( values for that frame.)]TJ --35.4138 -1.2222 TD -0.0633 Tw -[(The descriptions of the stack functions in below are presented from this viewpoint. Both interpreted)]TJ -T* -0.0156 Tw -(and compiled functions store both the names and values of variables so that interpreted and compiled)Tj -T* -0.2822 Tw -(functions are compatible and can be freely intermixed, i.e., free variables can be used with no)Tj -/TT12 1 Tf -T* -0 Tw -(SPECVAR)Tj -/TT8 1 Tf -4.2007 0 TD -0.1522 Tw -[( declarations necessary. However, it is possible to )]TJ -/TT10 1 Tf -23.7343 0 TD -0 Tw -(suppress)Tj -/TT8 1 Tf -3.502 0 TD -0.1522 Tw -[( storing of names in compiled)]TJ --31.4369 -1.2889 TD -0.0189 Tw -(functions, either for efficiency or to avoid a clash, via a )Tj -/TT12 1 Tf -24.5691 0 TD -0 Tw -(LOCALVAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.0189 Tw -[( declaration \(see the Local Variables)]TJ --29.3699 -1.2889 TD -0.0833 Tw -[(and Special Variables section of Chapter 18\). The names are also very useful in debugging, for they)]TJ -0 -1.2222 TD -0 Tw -(make possible a complete symbolic backtrace in case of error.)Tj -0 -2 TD -0.1189 Tw -(In addition to the binding information, additional information is associated with each function call:)Tj -0 -1.2222 TD -0.2911 Tw -(access information indicating the path to search the basic frames for variable bindings, control)Tj -T* -0.0611 Tw -(information, and temporary results are also stored on the stack in a block called the frame extension.)Tj -T* -0.0311 Tw -(The interpreter also stores information about partially evaluated expressions as described in the Stack)Tj -T* -0 Tw -(and Interpreter section of Chapter 11.)Tj -/TT4 1 Tf -10 0 0 10 54 285 Tm -(Spaghetti Stack)Tj -ET -1 w -54.01 282.29 m -510.01 282.29 l -S -BT -/TT8 1 Tf -9 0 0 9 78 268.34 Tm -0.2989 Tw -(The Bobrow/Wegbreit paper, A Model and Stack Implementation for Multiple Environments)Tj -T* -0 Tw -(\()Tj -/TT10 1 Tf -0.333 0 TD -0.1144 Tw -(Communications of the ACM,)Tj -/TT8 1 Tf -12.5279 0 TD -[( Vol. 16, 10, October 1973.\), describes an access and control mechanism)]TJ --12.8609 -1.2222 TD -0.15 Tw -[(more general than a simple linear stack. The access and control mechanism used by Interlisp is a)]TJ -T* -0.0189 Tw -[(slightly modified version of the one proposed by Bobrow and Wegbreit. This mechanism is called the)]TJ -T* -0 Tw -(spaghetti stack.)Tj -0 -2 TD -0.0533 Tw -(The spaghetti system presents the access and control stack as a data structure composed of frames.)Tj -0 -1.2222 TD -0.1311 Tw -[(The functions described below operate on this structure. These primitives allow user functions to)]TJ -T* -0.4878 Tw -[(manipulate the stack in a machine independent way. Backtracking, coroutines, and more)]TJ -T* -0 Tw -(sophisticated control schemes can be easily implemented with these primitives.)Tj -0 -2 TD -0.0622 Tw -(The evaluation of a function requires the allocation of storage to hold the values of its local variables)Tj -0 -1.2222 TD -0.0001 Tc -0.0032 Tw -(during the computation. In addition to variable bindings, an activation of a function requires a return)Tj -T* -0 Tc -0.2978 Tw -(link \(indicating where control is to go after the completion of the computation\) and room for)Tj -T* -0.0589 Tw -[(temporaries needed during the computation. In the spaghetti system, one stack is used for storing)]TJ -T* -0.0622 Tw -(all this information, but it is best to view this stack as a tree of linked objects called frame extensions)Tj -T* -0 Tw -(\(or simply frames\).)Tj -0 -2 TD -0.1467 Tw -(A frame extension is a variable sized block of storage containing a frame name, a pointer to some)Tj -0 -1.2222 TD -0.01 Tw -(variable bindings \(the )Tj -/TT12 1 Tf -9.9646 0 TD -0 Tw -(BLINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.01 Tw -(\), and two pointers to other frame extensions \(the )Tj -/TT12 1 Tf -22.1252 0 TD -0 Tw -(ALINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.01 Tw -[( and )]TJ -/TT12 1 Tf -2.2129 0 TD -0 Tw -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.01 Tw -[(\). In)]TJ --43.3041 -1.2889 TD -0.0433 Tw -(addition to these components, a frame extension contains other information \(such as temporaries and)Tj -0 -1.2222 TD -0 Tw -(reference counts\) that does not interest us here.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 5942 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-2)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0289 Tw -[(The block of storage holding the variable bindings is called a basic frame. A basic frame is essentially)]TJ -0 -1.2222 TD -0.0533 Tw -[(an array of pairs, each of which contains a variable name and its value. The reason frame extensions)]TJ -T* -0.15 Tw -(point to basic frames \(rather than just having them built in\) is so that two frame extensions can)Tj -T* -0 Tw -(share a common basic frame. This allows two processes to communicate via shared variable bindings.)Tj -0 -2 TD -0.0544 Tw -(The chain of frame extensions which can be reached via the successive )Tj -/TT12 1 Tf -31.9439 0 TD -0 Tw -(ALINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0544 Tw -(s from a given frame is)Tj --34.9444 -1.2889 TD -0.0833 Tw -[(called the access chain of the frame. The first frame in the access chain is the starting frame. The)]TJ -0 -1.2222 TD -0 Tw -(chain through successive )Tj -/TT12 1 Tf -11.3154 0 TD -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -(s is called the control chain.)Tj --14.3159 -2.0667 TD -0.13 Tw -(A frame extension completely specifies the variable bindings and control information necessary for)Tj -0 -1.2222 TD -0.1011 Tw -[(the evaluation of a function. Whenever a function \(or in fact, any form which generally binds local)]TJ -T* -0 Tw -(variables\) is evaluated, it is associated with some frame extension.)Tj -0 -2 TD -0.1089 Tw -[(In the beginning there is precisely one frame extension in existence. This is the frame in which the)]TJ -0 -1.2222 TD -0 Tw -(top-level call to the interpreter is being run. This frame is called the top-level frame.)Tj -0 -2 TD -0.14 Tw -(Since precisely one function is being executed at any instant, exactly one frame is distinguished as)Tj -0 -1.2222 TD -0.05 Tw -[(having the control bubble in it. This frame is called the active frame. Initially, the top-level frame)]TJ -T* -0.0067 Tw -[(is the active frame. If the computation in the active frame invokes another function, a new basic frame)]TJ -T* -0.0956 Tw -[(and frame extension are built. The frame name of this basic frame will be the name of the function)]TJ -T* -0.1911 Tw -[(being called. The )]TJ -/TT12 1 Tf -8.7654 0 TD -0 Tw -(ALINK)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT12 1 Tf -0.6911 0 TD -(BLINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.1911 Tw -(, and )Tj -/TT12 1 Tf -2.8251 0 TD -0 Tw -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.1911 Tw -[( of the new frame all depend on precisely how the)]TJ --21.2831 -1.2889 TD -0.0367 Tw -[(function is invoked. The new function is then run in this new frame by passing control to that frame,)]TJ -0 -1.2222 TD -0 Tw -(i.e., it is made the active frame.)Tj -0 -2 TD -0.0333 Tw -(Once the active computation has been completed, control normally returns to the frame pointed to by)Tj -0 -1.2222 TD -0 Tw -(the )Tj -/TT12 1 Tf -1.6372 0 TD -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -( of the active frame. That is, the frame in the )Tj -/TT12 1 Tf -19.9341 0 TD -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -( becomes the active frame.)Tj --27.5723 -2.0667 TD -0.0444 Tw -(In most cases, the storage associated with the basic frame and frame extension just abandoned can be)Tj -0 -1.2222 TD -0.0967 Tw -[(reclaimed. However, it is possible to obtain a pointer to a frame extension and to hold on to this)]TJ -T* -0.0411 Tw -[(frame even after it has been exited. This pointer can be used later to run another computation in that)]TJ -T* -0 Tw -(environment, or even continue the exited computation.)Tj -0 -2 TD -0.0333 Tw -[(A separate data type, called a stack pointer, is used for this purpose. A stack pointer is just a cell that)]TJ -0 -1.2222 TD -0.6078 Tw -[(literally points to a frame extension. Stack pointers print as )]TJ -/TT12 1 Tf -34.035 0 TD -0 Tw -(#ADR/FRAMENAME)Tj -/TT8 1 Tf -8.4014 0 TD -0.6078 Tw -(, e.g.,)Tj -/TT12 1 Tf --42.4364 -1.2889 TD -0 Tw -(#1,13636/COND)Tj -/TT8 1 Tf -7.8013 0 TD -0.0167 Tw -[(. Stack pointers are returned by many of the stack manipulating functions described)]TJ --7.8013 -1.2889 TD -0.2167 Tw -[(below. Except for certain abbreviations \(such as the frame with such-and-such a name\), stack)]TJ -0 -1.2222 TD -0.0811 Tw -[(pointers are the only way you can reference a frame extension. As long as you have a stack pointer)]TJ -T* -0.1022 Tw -(which references a frame extension, that frame extension \(and all those that can be reached from it\))Tj -T* -0 Tw -(will not be garbage collected.)Tj -0 -2 TD -0.1 Tw -(Two stack pointers referencing the same frame extension are )Tj -/TT10 1 Tf -27.9137 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1 Tw -[( necessarily )]TJ -/TT12 1 Tf -5.5647 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.1 Tw -(, i.e., )Tj -/TT12 1 Tf -2.47 0 TD -0.2411 Tw -(\(EQ \(STKPOS)Tj --38.4816 -1.2889 TD -0.0956 Tw -(FOO\) \(STKPOS FOO\)\) = NIL)Tj -/TT8 1 Tf -15.9848 0 TD -0.04 Tw -[(. However, )]TJ -/TT12 1 Tf -5.4999 0 TD -0 Tw -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -0.04 Tw -[( can be used to test if two different stack pointers)]TJ --23.2849 -1.2889 TD -0 Tw -(reference the same frame extension \(see the Equality Predicates section of Chapter 9\).)Tj -0 -2 TD -0.0611 Tw -(It is possible to evaluate a form with respect to an access chain other than the current one by using a)Tj -0 -1.2222 TD -0.1233 Tw -[(stack pointer to refer to the head of the access chain desired. Note, however, that this can be very)]TJ -T* -0.1256 Tw -[(expensive when using a shallow binding scheme such as that in Interlisp-10. When evaluating the)]TJ -T* -0.1511 Tw -(form, since all references to variables under the shallow binding scheme go through the variables)Tj -T* -0.0033 Tw -(value cell, the values in the value cells must be adjusted to reflect the values appropriate to the desired)Tj -T* -0.01 Tw -[(access chain. This is done by changing all the bindings on the current access chain \(all the name-value)]TJ -T* -0.0122 Tw -[(pairs\) so that they contain the value current at the time of the call. Then along the new access path, all)]TJ -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -16 0 obj -<< -/Length 4903 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-3)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0267 Tw -(bindings are made to contain the previous value of the variable, and the current value is placed in the)Tj -0 -1.2222 TD -0.0389 Tw -[(value cell. For that part of the access path which is shared by the old and new chain, no work has to)]TJ -T* -0.1111 Tw -[(be done. The context switching time, i.e. the overhead in switching from the current, active, access)]TJ -T* -0.1989 Tw -(chain to another one, is directly proportional to the size of the two branches that are not shared)Tj -T* -0.0278 Tw -[(between the access contexts. This cost should be remembered in using generators and coroutines \(see)]TJ -T* -0 Tw -(the Generators section below\).)Tj -/TT4 1 Tf -10 0 0 10 54 492.2 Tm -(Stack Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 489.49 m -510.01 489.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 475.54 Tm -0.0689 Tw -(In the descriptions of the stack functions below, when we refer to an argument as a stack descriptor,)Tj -T* -0 Tw -(we mean that it is one of the following:)Tj -3.9189 -2 TD -0.0322 Tw -[(A )32.2(stack )32.2(pointer)-666.4(An object that points to a frame on the stack. Stack pointers are returned by)]TJ -7.4144 -1.2222 TD -0 Tw -(many of the stack manipulating functions described below.)Tj -/TT12 1 Tf --2.4667 -2 TD -(NIL)Tj -/TT8 1 Tf -2.4667 0 TD -(Specifies the active frame; that is, the frame of the stack function itself.)Tj -/TT12 1 Tf --1.2667 -2.0667 TD -(T)Tj -/TT8 1 Tf -1.2667 0 TD -(Specifies the top-level frame.)Tj --4.9478 -2.0667 TD -0.0711 Tw -[(A )71.1(symbol)-667(Specifies the first frame \(along the control chain from the active frame\) that)]TJ -4.9478 -1.2222 TD -0 Tw -(has the frame name )Tj -/TT12 1 Tf -8.9268 0 TD -(LITATOM)Tj -/TT8 1 Tf -4.2007 0 TD -(. Equivalent to )Tj -/TT12 1 Tf -6.9302 0 TD -(\(STKPOS LITATOM -1\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj --39.5428 -2.0667 TD -0.2578 Tw -[(A )257.8(list )257.8(of )257.8(symbols)-667.8(Specifies the first frame \(along the control chain from the active frame\))]TJ -8.0833 -1.2222 TD -0 Tw -(whose frame name is included in the list.)Tj --6.0411 -2 TD -(A number )Tj -/TT14 1 Tf -4.7729 0 TD -(N)Tj -/TT8 1 Tf -1.2682 0 TD -0.1933 Tw -(Specifies the )Tj -/TT14 1 Tf -6.1406 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1933 Tw -[(th frame back from the active frame. If )]TJ -/TT14 1 Tf -19.2 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1933 Tw -[( is negative, the)]TJ --26.5407 -1.2889 TD -0.0233 Tw -[(control chain is followed, otherwise the access chain is followed. Equivalent)]TJ -0 -1.2222 TD -0 Tw -(to )Tj -/TT12 1 Tf -1.1221 0 TD -(\(STKNTH N\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --18.4564 -2.0667 TD -0.1044 Tw -[(In the stack functions described below, the following errors can occur: The error )]TJ -/TT12 1 Tf -37.2713 0 TD -0.2511 Tw -(Illegal stack)Tj --37.2713 -1.2889 TD -0 Tw -(arg)Tj -/TT8 1 Tf -1.8003 0 TD -0.0667 Tw -[( occurs when a stack descriptor is expected and the supplied argument is either not a legal stack)]TJ --1.8003 -1.2889 TD -0.0622 Tw -[(descriptor \(i.e., not a stack pointer, symbol, or number\), or is a symbol or number for which there is)]TJ -0 -1.2222 TD -0.0478 Tw -(no corresponding stack frame, e.g., )Tj -/TT12 1 Tf -16.2413 0 TD -0.1144 Tw -(\(STKNTH -1 FOO\))Tj -/TT8 1 Tf -9.8305 0 TD -0.0478 Tw -[( where there is no frame named )]TJ -/TT12 1 Tf -14.602 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0478 Tw -[( in the)]TJ --42.474 -1.2889 TD -0.2456 Tw -(active control chain or )Tj -/TT12 1 Tf -11.0569 0 TD -0.5911 Tw -(\(STKNTH -10 EVALQT\))Tj -/TT8 1 Tf -13.1842 0 TD -0.2456 Tw -[(. The error )]TJ -/TT12 1 Tf -6.116 0 TD -0.5911 Tw -(Stack pointer has been)Tj --30.3571 -1.2889 TD -0 Tw -(released)Tj -/TT8 1 Tf -4.8008 0 TD -0.1244 Tw -[( occurs whenever a released stack pointer is supplied as a stack descriptor argument for)]TJ --4.8008 -1.2889 TD -0 Tw -(any purpose other than as a stack pointer to re-use.)Tj -/TT16 1 Tf -0 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.1533 Tw -[(: The creation of a single stack pointer can result in the retention of a large amount of stack)]TJ --2.2222 -1.2222 TD -0.1156 Tw -[(space. Therefore, one should try to release stack pointers when they are no longer needed \(see the)]TJ -T* -0 Tw -(Releasing and Reusing Stack Pointers section below\).)Tj -0 -2 TD -0.2778 Tw -(In Lisp there is a fixed ammount of space allocated for the stack. When most of this space is)Tj -0 -1.2222 TD -0.0144 Tw -(exhausted, the )Tj -/TT12 1 Tf -6.6861 0 TD -0.0356 Tw -(STACK OVERFLOW)Tj -/TT8 1 Tf -8.4369 0 TD -0.0144 Tw -[( error occurs and the debugger will be invoked. You will still have a)]TJ --15.123 -1.2889 TD -0.0978 Tw -(little room on the stack to use inside the debugger. If you use up this last little bit of stack you will)Tj -0 -1.2222 TD -0.2889 Tw -(encounter a hard stack overflow. A hard stack overflow will put you into URaid \(see the)Tj -T* -0 Tw -(documentation on URaid\).)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT16 19 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -21 0 obj -<< -/Length 8121 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-4)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0 -4.38 TD -(Searching the Stack)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT12 1 Tf -9 0 0 9 150 550.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKPOS)Tj -/F1 1 Tf -10 0 0 10 187.8 550.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.67 550.26 Tm -(FRAMENAME N POS OLDPOS)Tj -/TT12 1 Tf -13.2021 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19248.9([Function])]TJ --15.6545 -1.8444 TD -0.0222 Tw -(Returns a stack pointer to the )Tj -/TT14 1 Tf -13.3399 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0222 Tw -(th frame with frame name )Tj -/TT14 1 Tf -11.9261 0 TD -0 Tw -(FRAMENAME)Tj -/TT8 1 Tf -5.4009 0 TD -0.0222 Tw -[(. The search begins)]TJ --31.2669 -1.2889 TD -0.0467 Tw -(with \(and includes\) the frame specified by the stack descriptor )Tj -/TT14 1 Tf -28.2714 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0467 Tw -[(. The search proceeds)]TJ --30.0717 -1.2889 TD -0.0311 Tw -(along the control chain from )Tj -/TT14 1 Tf -12.9534 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[( if )]TJ -/TT14 1 Tf -1.1862 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( is negative, or along the access chain if )]TJ -/TT14 1 Tf -17.8137 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( is positive.)]TJ --34.9538 -1.2889 TD -0 Tw -(If )Tj -/TT14 1 Tf -1.1577 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2378 Tw -[( is )]TJ -/TT12 1 Tf -1.6904 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2378 Tw -[(, -1 is used. Returns a stack pointer to the frame if such a frame exists,)]TJ --5.2485 -1.2889 TD -0.1989 Tw -(otherwise returns )Tj -/TT12 1 Tf -8.4578 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1989 Tw -[(. If )]TJ -/TT14 1 Tf -2.2666 0 TD -0 Tw -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1989 Tw -[( is supplied and is a stack pointer, it is reused. If)]TJ -/TT14 1 Tf --16.1253 -1.2889 TD -0 Tw -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0811 Tw -[( is supplied and is a stack pointer and )]TJ -/TT12 1 Tf -17.6665 0 TD -0 Tw -(STKPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0811 Tw -[( returns )]TJ -/TT12 1 Tf -3.8663 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT14 1 Tf -0.5811 0 TD -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0811 Tw -[( is released.)]TJ --34.716 -1.2889 TD -0 Tw -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -( is not a stack pointer it is ignored.)Tj -/TT12 1 Tf --7.1872 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKNTH)Tj -/F1 1 Tf -10 0 0 10 187.8 444.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.67 444.18 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 196.0709 444.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 198.8509 444.18 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 215.0535 444.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.8335 444.18 Tm -(OLDPOS)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25832.3([Function])]TJ --9.0711 -1.8444 TD -0.2367 Tw -(Returns a stack pointer to the )Tj -/TT14 1 Tf -14.6265 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2367 Tw -(th frame back from the frame specified by the stack)Tj --15.2266 -1.2889 TD -0 Tw -(descriptor )Tj -/TT14 1 Tf -4.7617 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is negative, the control chain from )Tj -/TT14 1 Tf -15.5659 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -( is followed. If )Tj -/TT14 1 Tf -6.8154 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is positive the)Tj --33.6138 -1.2889 TD -0.2311 Tw -[(access chain is followed. If )]TJ -/TT14 1 Tf -13.5654 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2311 Tw -[( equals 0, )]TJ -/TT12 1 Tf -5.0503 0 TD -0 Tw -(STKNTH)Tj -/TT8 1 Tf -3.6006 0 TD -0.2311 Tw -[( returns a stack pointer to )]TJ -/TT14 1 Tf -12.9331 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2311 Tw -[( \(this)]TJ --37.5497 -1.2889 TD -0.06 Tw -[(provides a way to copy a stack pointer\). Returns )]TJ -/TT12 1 Tf -22.4511 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.06 Tw -[( if there are fewer than )]TJ -/TT14 1 Tf -10.6295 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.06 Tw -[( frames in)]TJ --35.481 -1.2889 TD -0.2189 Tw -[(the appropriate chain. If )]TJ -/TT14 1 Tf -12.2859 0 TD -0 Tw -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.2189 Tw -[( is supplied and is a stack pointer, it is reused. If)]TJ -/TT14 1 Tf --15.8864 -1.2889 TD -0 Tw -(OLDPOS)Tj -/TT8 1 Tf -3.6006 0 TD -( is not a stack pointer it is ignored.)Tj -/TT16 1 Tf --3.6006 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.05 Tw -(: )Tj -/TT12 1 Tf -0.85 0 TD -0.1211 Tw -(\(STKNTH 0\))Tj -/TT8 1 Tf -6.1221 0 TD -0.05 Tw -[( causes an error, )]TJ -/TT12 1 Tf -7.6155 0 TD -0.1211 Tw -(Illegal stack arg)Tj -/TT8 1 Tf -10.4439 0 TD -0.05 Tw -(; it is not possible to create a)Tj --27.2537 -1.2889 TD -0 Tw -(stack pointer to the active frame. )Tj -/TT12 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKNAME)Tj -/F1 1 Tf -10 0 0 10 193.2 320.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 320.1 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30050.7([Function])]TJ --4.8526 -1.8444 TD -(Returns the frame name of the frame specified by the stack descriptor )Tj -/TT14 1 Tf -30.9648 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --35.4318 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(SETSTKNAME)Tj -/F1 1 Tf -10 0 0 10 209.4 283.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 283.62 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 228.4726 283.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 231.2526 283.62 Tm -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25541.4([Function])]TJ --9.3619 -1.8444 TD -(Changes the frame name of the frame specified by )Tj -/TT14 1 Tf -22.4209 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -( to be )Tj -/TT14 1 Tf -2.6543 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -(. Returns )Tj -/TT14 1 Tf -4.4771 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT12 1 Tf --38.82 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKNTHNAME)Tj -/F1 1 Tf -10 0 0 10 209.4 247.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 247.14 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 217.6709 247.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.4509 247.14 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27341.7([Function])]TJ --7.5616 -1.8444 TD -0.25 Tw -(Returns the frame name of the )Tj -/TT14 1 Tf -15.1641 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.25 Tw -(th frame back from )Tj -/TT14 1 Tf -9.708 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.25 Tw -[(. Equivalent to )]TJ -/TT12 1 Tf -7.9302 0 TD -0 Tw -(\(STKNAME)Tj --35.2026 -1.2889 TD -(\(STKNTH )Tj -/TT14 1 Tf -4.8008 0 TD -(N)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -( but avoids creation of a stack pointer.)Tj --14.3348 -2.0667 TD -0.1011 Tw -(In summary, )Tj -/TT12 1 Tf -6.1148 0 TD -0 Tw -(STKPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( converts function names to stack pointers, )]TJ -/TT12 1 Tf -19.8093 0 TD -0 Tw -(STKNTH)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( converts numbers to stack)]TJ --33.1253 -1.2889 TD -0 Tw -(pointers, )Tj -/TT12 1 Tf -4.1974 0 TD -(STKNAME)Tj -/TT8 1 Tf -4.2007 0 TD -0.0533 Tw -[( converts stack pointers to function names, and )]TJ -/TT12 1 Tf -21.4711 0 TD -0 Tw -(STKNTHNAME)Tj -/TT8 1 Tf -6.001 0 TD -0.0533 Tw -[( converts numbers to)]TJ --35.8701 -1.2889 TD -0 Tw -(function names.)Tj -/TT4 1 Tf -10 0 0 10 102 154.8 Tm -(Variable Bindings in Stack Frames)Tj -ET -102.01 152.09 m -558.01 152.09 l -S -BT -/TT8 1 Tf -9 0 0 9 126 138.14 Tm -0.1522 Tw -[(The following functions are used for accessing and changing bindings. Some of functions take an)]TJ -0 -1.2222 TD -0 Tw -(argument, )Tj -/TT14 1 Tf -5.042 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2178 Tw -[(, which specifies a particular binding in the basic frame. If )]TJ -/TT14 1 Tf -28.6563 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2178 Tw -[( is a literal atom, it is)]TJ --34.8985 -1.2889 TD -0.12 Tw -[(assumed to be the name of a variable bound in the basic frame. If )]TJ -/TT14 1 Tf -31.0388 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.12 Tw -[( is a number, it is assumed to)]TJ --31.6389 -1.2889 TD -0.1267 Tw -(reference the )Tj -/TT14 1 Tf -6.2055 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1267 Tw -[(th binding in the basic frame. The first binding is 1. If the basic frame contains no)]TJ --6.8056 -1.2889 TD -0.1689 Tw -(binding with the given name or if the number is too large or too small, the error )Tj -/TT12 1 Tf -38.3208 0 TD -0.4056 Tw -(Illegal arg)Tj -/TT8 1 Tf --38.3208 -1.2889 TD -0 Tw -(occurs.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT16 19 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -27 0 obj -<< -/Length 8583 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-5)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT12 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKSCAN)Tj -/F1 1 Tf -10 0 0 10 145.2 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 568.26 Tm -(VAR)Tj -/F2 1 Tf -10 0 0 10 164.2726 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 167.0526 568.26 Tm -(IPOS)Tj -/F2 1 Tf -10 0 0 10 188.6561 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.4361 568.26 Tm -(OPOS)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24632.2([Function])]TJ --10.2712 -1.8444 TD -0.1267 Tw -(Searches beginning at )Tj -/TT14 1 Tf -10.2565 0 TD -0 Tw -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1267 Tw -[( for a frame in which a variable named )]TJ -/TT14 1 Tf -18.4886 0 TD -0 Tw -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1267 Tw -[( is bound. The)]TJ --32.9458 -1.2889 TD -0.08 Tw -[(search follows the access chain. Returns a stack pointer to the frame if found, otherwise)]TJ -0 -1.2222 TD -0 Tw -(returns )Tj -/TT12 1 Tf -3.4541 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(OPOS)Tj -/TT8 1 Tf -2.4004 0 TD -( is a stack pointer it is reused, otherwise it is ignored.)Tj -/TT12 1 Tf --11.9914 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(FRAMESCAN)Tj -/F1 1 Tf -10 0 0 10 156 509.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.87 509.18 Tm -(ATOM)Tj -/F2 1 Tf -10 0 0 10 180.4735 509.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 183.2535 509.18 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26141.4([Function])]TJ --8.7619 -1.8444 TD -0.1078 Tw -(Returns the relative position of the binding of )Tj -/TT14 1 Tf -21.2709 0 TD -0 Tw -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( in the basic frame of )]TJ -/TT14 1 Tf -10.0876 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1078 Tw -[(. Returns)]TJ -/TT12 1 Tf --35.5592 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -( is not found.)Tj -/TT12 1 Tf --7.9914 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKARG)Tj -/F1 1 Tf -10 0 0 10 139.8 461.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.67 461.1 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 148.0708 461.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 150.8508 461.1 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 167.0535 461.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 169.8335 461.1 Tm -()Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28832.8([Function])]TJ --6.0706 -1.8444 TD -0.0044 Tw -(Returns the value of the binding specified by )Tj -/TT14 1 Tf -20.1322 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0001 Tc -0.0043 Tw -( in the basic frame of the frame specified by)Tj --20.7323 -1.2889 TD -0 Tc -0 Tw -(the stack descriptor )Tj -/TT14 1 Tf -8.8989 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj -/TT14 1 Tf -0.75 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( can be a literal atom or number.)Tj -/TT12 1 Tf --14.716 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKARGNAME)Tj -/F1 1 Tf -10 0 0 10 161.4 413.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.27 413.02 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 169.6709 413.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.4509 413.02 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27341.7([Function])]TJ --7.5616 -1.8444 TD -0.0733 Tw -(Returns the name of the binding specified by )Tj -/TT14 1 Tf -20.6892 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -(, in the basic frame of the frame specified)Tj --21.2893 -1.2889 TD -0 Tw -(by the stack descriptor )Tj -/TT14 1 Tf -10.2583 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj -/TT14 1 Tf -0.75 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( can be a literal atom or number.)Tj -/TT12 1 Tf --16.0754 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(SETSTKARG)Tj -/F1 1 Tf -10 0 0 10 156 364.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.87 364.94 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 164.2709 364.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 167.0508 364.94 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 183.2535 364.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.0335 364.94 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25832.6([Function])]TJ --9.0708 -1.8444 TD -0.0089 Tw -(Sets the value of the binding specified by )Tj -/TT14 1 Tf -18.4446 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0089 Tw -[( in the basic frame of the frame specified by the)]TJ --19.0447 -1.2889 TD -0 Tw -(stack descriptor )Tj -/TT14 1 Tf -7.2617 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj -/TT14 1 Tf -0.75 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( can be a literal atom or a number. Returns )Tj -/TT14 1 Tf -19.2993 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --34.1784 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(SETSTKARGNAME)Tj -/F1 1 Tf -10 0 0 10 177.6 316.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.47 316.86 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 185.8708 316.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 188.6508 316.86 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 204.8535 316.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.6335 316.86 Tm -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22832.5([Function])]TJ --12.0709 -1.8444 TD -0.1522 Tw -(Sets the variable name to )Tj -/TT14 1 Tf -12.0424 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[( of the binding specified by )]TJ -/TT14 1 Tf -13.2078 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1522 Tw -[( in the basic frame of the)]TJ --28.2506 -1.2889 TD -0.0278 Tw -(frame specified by the stack descriptor )Tj -/TT14 1 Tf -17.4675 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -(. )Tj -/TT14 1 Tf -0.8056 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0278 Tw -[( can be a literal atom or a number. Returns)]TJ -/TT14 1 Tf --20.6734 -1.2889 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -(. This function does not work for interpreted frames.)Tj -/TT12 1 Tf --5.0671 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKNARGS)Tj -/F1 1 Tf -10 0 0 10 150.6 257.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.47 257.18 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 169.6726 257.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.4526 257.18 Tm -()Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28541.7([Function])]TJ --6.3616 -1.8444 TD -0.0667 Tw -(Returns the number of arguments bound in the basic frame of the frame specified by the)Tj -0 -1.2222 TD -0 Tw -(stack descriptor )Tj -/TT14 1 Tf -7.2617 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --11.7287 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(VARIABLES)Tj -/F1 1 Tf -10 0 0 10 156 209.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.87 209.7 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28850.7([Function])]TJ --6.0526 -1.8444 TD -(Returns a list of the variables bound at )Tj -/TT14 1 Tf -17.2944 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --21.7614 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKARGS)Tj -/F1 1 Tf -10 0 0 10 145.2 173.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 173.22 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 164.2726 173.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 167.0526 173.22 Tm -()Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29141.7([Function])]TJ --5.7616 -1.8444 TD -(Returns a list of the values of the variables bound at )Tj -/TT14 1 Tf -23.1724 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 133.68 Tm -(Evaluating Expressions in Stack Frames)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 130.97 m -510.01 130.97 l -S -BT -/TT8 1 Tf -9 0 0 9 78 117.02 Tm -(The following functions are used to evaluate an expression in a different environment:)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(ENVEVAL)Tj -/F1 1 Tf -10 0 0 10 145.2 97.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 97.74 Tm -(FORM)Tj -/F2 1 Tf -10 0 0 10 169.6735 97.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.4535 97.74 Tm -(APOS)Tj -/F2 1 Tf -10 0 0 10 194.057 97.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.837 97.74 Tm -(CPOS)Tj -/F2 1 Tf -10 0 0 10 218.4405 97.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 221.2205 97.74 Tm -(AFLG)Tj -/F2 1 Tf -10 0 0 10 242.824 97.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 245.604 97.74 Tm -(CFLG)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18613.5([Function])]TJ --16.2898 -1.8444 TD -(Evaluates )Tj -/TT14 1 Tf -4.6677 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1189 Tw -[( in the environment specified by )]TJ -/TT14 1 Tf -15.2456 0 TD -0 Tw -(APOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1189 Tw -[( and )]TJ -/TT14 1 Tf -2.4306 0 TD -0 Tw -(CPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1189 Tw -[(. That is, a new active)]TJ --29.5451 -1.2889 TD -0.0789 Tw -(frame is created with the frame specified by the stack descriptor )Tj -/TT14 1 Tf -29.3775 0 TD -0 Tw -(APOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -[( as its )]TJ -/TT12 1 Tf -2.9515 0 TD -0 Tw -(ALINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0789 Tw -(, and)Tj --37.7299 -1.2889 TD -0.0178 Tw -(the frame specified by the stack descriptor )Tj -/TT14 1 Tf -19.0624 0 TD -0 Tw -(CPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( as its )]TJ -/TT12 1 Tf -2.7682 0 TD -0 Tw -(CLINK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0178 Tw -[(. Then )]TJ -/TT14 1 Tf -3.3092 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( is evaluated. If)]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -30 0 obj -<< -/Length 9431 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-6)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT14 1 Tf -9 0 0 9 174 569.54 Tm -(AFLG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1289 Tw -[( is not )]TJ -/TT12 1 Tf -3.3056 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1289 Tw -(, and )Tj -/TT14 1 Tf -2.7007 0 TD -0 Tw -(APOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1289 Tw -[( is a stack pointer, then )]TJ -/TT14 1 Tf -11.1776 0 TD -0 Tw -(APOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1289 Tw -[( will be released. Similarly, if)]TJ -/TT14 1 Tf --26.1854 -1.2889 TD -0 Tw -(CFLG)Tj -/TT8 1 Tf -2.4004 0 TD -( is not )Tj -/TT12 1 Tf -2.9189 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, and )Tj -/TT14 1 Tf -2.4429 0 TD -(CPOS)Tj -/TT8 1 Tf -2.4004 0 TD -( is a stack pointer, then )Tj -/TT14 1 Tf -10.4043 0 TD -(CPOS)Tj -/TT8 1 Tf -2.4004 0 TD -( will be released.)Tj -/TT12 1 Tf --27.4342 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(ENVAPPLY)Tj -/F1 1 Tf -10 0 0 10 198.6 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.47 538.06 Tm -(FN)Tj -/F2 1 Tf -10 0 0 10 212.2717 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 215.0517 538.06 Tm -(ARGS)Tj -/F2 1 Tf -10 0 0 10 236.6553 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 239.4353 538.06 Tm -(APOS)Tj -/F2 1 Tf -10 0 0 10 261.0388 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 263.8188 538.06 Tm -(CPOS)Tj -/F2 1 Tf -10 0 0 10 285.4223 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 288.2023 538.06 Tm -(AFLG)Tj -/F2 1 Tf -10 0 0 10 309.8058 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 312.5858 538.06 Tm -(CFLG)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-16504.4([Function])]TJ -/TT12 1 Tf --18.3989 -1.8445 TD -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -(s )Tj -/TT14 1 Tf -0.8127 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.1389 Tw -[( to )]TJ -/TT14 1 Tf -1.6498 0 TD -0 Tw -(ARGS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( in the environment specified by )]TJ -/TT14 1 Tf -15.3656 0 TD -0 Tw -(APOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( and )]TJ -/TT14 1 Tf -2.4706 0 TD -0 Tw -(CPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -(. )Tj -/TT14 1 Tf -1.0278 0 TD -0 Tw -(AFLG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( and )]TJ -/TT14 1 Tf -2.4706 0 TD -0 Tw -(CFLG)Tj -/TT8 1 Tf --37.5994 -1.2889 TD -(have the same interpretation as with )Tj -/TT12 1 Tf -16.3755 0 TD -(ENVEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT12 1 Tf --23.2428 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(EVALV)Tj -/F1 1 Tf -10 0 0 10 182.4 489.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 489.98 Tm -(VAR)Tj -/F2 1 Tf -10 0 0 10 201.4726 489.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 204.2526 489.98 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 220.4553 489.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.2353 489.98 Tm -(RELFLG)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25232.1([Function])]TJ --9.6713 -1.8444 TD -(Evaluates )Tj -/TT14 1 Tf -4.5977 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -(, where )Tj -/TT14 1 Tf -3.6168 0 TD -0 Tw -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[( is assumed to be a symbol, in the access environment specifed)]TJ --11.8151 -1.2889 TD -0.1611 Tw -(by the stack descriptor )Tj -/TT14 1 Tf -10.9027 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1611 Tw -[(. If )]TJ -/TT14 1 Tf -2.1533 0 TD -0 Tw -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1611 Tw -[( is unbound, )]TJ -/TT12 1 Tf -6.2783 0 TD -0 Tw -(EVALV)Tj -/TT8 1 Tf -3.0005 0 TD -0.1611 Tw -[( returns )]TJ -/TT12 1 Tf -4.0263 0 TD -0 Tw -(NOBIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.1611 Tw -[( and does not)]TJ --33.5622 -1.2889 TD -0.1256 Tw -[(generate an error. If )]TJ -/TT14 1 Tf -9.8861 0 TD -0 Tw -(RELFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[( is non-)]TJ -/TT12 1 Tf -3.5089 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1256 Tw -[( and )]TJ -/TT14 1 Tf -2.444 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1256 Tw -[( is a stack pointer, it will be released)]TJ --23.0402 -1.2889 TD -0.0833 Tw -[(after the variable is looked up. While )]TJ -/TT12 1 Tf -17.5021 0 TD -0 Tw -(EVALV)Tj -/TT8 1 Tf -3.0005 0 TD -0.0833 Tw -[( could be defined as )]TJ -/TT12 1 Tf -9.5031 0 TD -0 Tw -(\(ENVEVAL )Tj -/TT14 1 Tf -5.5998 0 TD -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.799 0 TD -(POS)Tj -/TT12 1 Tf --38.2047 -1.2889 TD -(NIL )Tj -/TT14 1 Tf -2.4004 0 TD -(RELFLG)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( it is in fact somewhat faster.)Tj -/TT12 1 Tf --9.2677 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKEVAL)Tj -/F1 1 Tf -10 0 0 10 193.2 407.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 407.1 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 212.2726 407.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 215.0526 407.1 Tm -(FORM)Tj -/F2 1 Tf -10 0 0 10 236.6561 407.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 239.4361 407.1 Tm -(FLG)Tj -/F2 1 Tf -10 0 0 10 255.6388 407.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 258.4188 407.1 Tm -()Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24323.3([Function])]TJ --10.5801 -1.8444 TD -(Evaluates )Tj -/TT14 1 Tf -4.6488 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1 Tw -[( in the access environment of the frame specified by the stack descriptor)]TJ -/TT14 1 Tf --7.0492 -1.2889 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2322 Tw -[(. If )]TJ -/TT14 1 Tf -2.3666 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.2322 Tw -[( is not )]TJ -/TT12 1 Tf -3.6156 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2322 Tw -[( and )]TJ -/TT14 1 Tf -2.6573 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2322 Tw -[( is a stack pointer, releases )]TJ -/TT14 1 Tf -13.2991 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2322 Tw -[(. The definition of)]TJ -/TT12 1 Tf --30.9401 -1.2889 TD -0 Tw -(STKEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -( is )Tj -/TT12 1 Tf -1.2148 0 TD -(\(ENVEVAL )Tj -/TT14 1 Tf -5.4009 0 TD -(FORM)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -( NIL )Tj -/TT14 1 Tf -3.0005 0 TD -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT12 1 Tf --23.6847 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STKAPPLY)Tj -/F1 1 Tf -10 0 0 10 198.6 347.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.47 347.42 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 217.6726 347.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.4526 347.42 Tm -(FN)Tj -/F2 1 Tf -10 0 0 10 231.2544 347.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.0344 347.42 Tm -(ARGS)Tj -/F2 1 Tf -10 0 0 10 255.6379 347.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 258.4179 347.42 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23123.2([Function])]TJ --11.7802 -1.8444 TD -(Like )Tj -/TT12 1 Tf -2.187 0 TD -(STKEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -( but applies )Tj -/TT14 1 Tf -5.4194 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(ARGS)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 307.88 Tm -(Altering Flow of Control)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 305.17 m -558.01 305.17 l -S -BT -/TT8 1 Tf -9 0 0 9 126 291.22 Tm -0.0889 Tw -(The following functions are used to alter the normal flow of control, possibly jumping to a different)Tj -0 -1.2222 TD -0.31 Tw -(frame on the stack. )Tj -/TT12 1 Tf -10.405 0 TD -0 Tw -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -0.31 Tw -[( and )]TJ -/TT12 1 Tf -2.8129 0 TD -0 Tw -(RETAPPLY)Tj -/TT8 1 Tf -4.8008 0 TD -0.31 Tw -[( allow evaluating an expression in the specified)]TJ --22.2193 -1.2889 TD -0 Tw -(environment first.)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RETFROM)Tj -/F1 1 Tf -10 0 0 10 193.2 249.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 249.34 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 212.2726 249.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 215.0526 249.34 Tm -(VAL)Tj -/F2 1 Tf -10 0 0 10 231.2553 249.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.0353 249.34 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25832.4([Function])]TJ --9.071 -1.8444 TD -0.0122 Tw -(Return from the frame specified by the stack descriptor )Tj -/TT14 1 Tf -24.758 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -(, with the value )Tj -/TT14 1 Tf -7.1573 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[(. If )]TJ -/TT14 1 Tf -1.7066 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[( is)]TJ --39.0227 -1.2889 TD -0 Tw -(not )Tj -/TT12 1 Tf -1.7285 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0244 Tw -(, and )Tj -/TT14 1 Tf -2.4918 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0244 Tw -[( is a stack pointer, then )]TJ -/TT14 1 Tf -10.551 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0244 Tw -[( is released. An attempt to )]TJ -/TT12 1 Tf -12.217 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.0244 Tw -[( the top)]TJ --36.5898 -1.2889 TD -0.1211 Tw -(level \(e.g., )Tj -/TT12 1 Tf -5.3365 0 TD -0.29 Tw -(\(RETFROM T\)\))Tj -/TT8 1 Tf -7.4912 0 TD -0.1211 Tw -[( causes an error, )]TJ -/TT12 1 Tf -7.9 0 TD -0.29 Tw -(Illegal stack arg)Tj -/TT8 1 Tf -10.7817 0 TD -0.1211 Tw -(. )Tj -/TT12 1 Tf -0.9922 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1211 Tw -[( can be)]TJ --36.7022 -1.2889 TD -0 Tw -(written in terms of )Tj -/TT12 1 Tf -8.4922 0 TD -(ENVEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -( as follows:)Tj -/TT12 1 Tf --8.6929 -1.6667 TD -(\(RETFROM)Tj -2 -1 TD -( \(LAMBDA \(POS VAL FLG\))Tj -T* -( \(ENVEVAL \(LIST QUOTE VAL\))Tj -T* -( NIL)Tj -T* -( \(if \(STKNTH -1 POS)Tj -10 -1 TD -(\(if FLG then POS\)\))Tj --10 -1 TD -( else \(ERRORX \(LIST 19 POS\)\)\))Tj -T* -( NIL)Tj -T* -( T\)\)\))Tj --8.6667 -1.9867 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RETTO)Tj -/F1 1 Tf -10 0 0 10 182.4 93.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 93.06 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 201.4726 93.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 204.2526 93.06 Tm -(VAL)Tj -/F2 1 Tf -10 0 0 10 220.4553 93.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.2353 93.06 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27032.4([Function])]TJ --7.871 -1.8444 TD -(Like )Tj -/TT12 1 Tf -2.187 0 TD -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -(, but returns )Tj -/TT10 1 Tf -5.6865 0 TD -(to)Tj -/TT8 1 Tf -0.7769 0 TD -( the frame specified by )Tj -/TT14 1 Tf -10.2891 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -33 0 obj -<< -/Length 8047 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-7)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT12 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RETEVAL)Tj -/F1 1 Tf -10 0 0 10 145.2 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 568.26 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 164.2726 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 167.0526 568.26 Tm -(FORM)Tj -/F2 1 Tf -10 0 0 10 188.6561 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.4361 568.26 Tm -(FLG)Tj -/F2 1 Tf -10 0 0 10 207.6388 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.4188 568.26 Tm -()Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24323.3([Function])]TJ --10.5801 -1.8444 TD -(Evaluates )Tj -/TT14 1 Tf -4.6488 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1 Tw -[( in the access environment of the frame specified by the stack descriptor)]TJ -/TT14 1 Tf --7.0492 -1.2889 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1322 Tw -(, and then returns from )Tj -/TT14 1 Tf -11.1841 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1322 Tw -[( with that value. If )]TJ -/TT14 1 Tf -9.4188 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1322 Tw -[( is not )]TJ -/TT12 1 Tf -3.3156 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1322 Tw -[( and )]TJ -/TT14 1 Tf -2.4573 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1322 Tw -[( is a stack)]TJ --35.3773 -1.2889 TD -0.2111 Tw -(pointer, then )Tj -/TT14 1 Tf -6.3617 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2111 Tw -[( is released. The definition of )]TJ -/TT12 1 Tf -14.7351 0 TD -0 Tw -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -0.2111 Tw -[( is equivalent to )]TJ -/TT12 1 Tf -8.1076 0 TD -0 Tw -(\(ENVEVAL)Tj -/TT14 1 Tf --35.2054 -1.2889 TD -(FORM)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -( \(STKNTH -1 )Tj -/TT14 1 Tf -7.2012 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -( T\))Tj -/TT8 1 Tf -1.8003 0 TD -(, but )Tj -/TT12 1 Tf -2.2324 0 TD -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -( does not create a stack pointer.)Tj -/TT12 1 Tf --27.7028 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RETAPPLY)Tj -/F1 1 Tf -10 0 0 10 150.6 496.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.47 496.98 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 169.6726 496.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.4526 496.98 Tm -(FN)Tj -/F2 1 Tf -10 0 0 10 183.2544 496.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.0344 496.98 Tm -(ARGS)Tj -/F2 1 Tf -10 0 0 10 207.6379 496.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.4179 496.98 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23123.2([Function])]TJ --11.7802 -1.8444 TD -(Like )Tj -/TT12 1 Tf -2.187 0 TD -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -( but applies )Tj -/TT14 1 Tf -5.4194 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(ARGS)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 457.44 Tm -(Releasing and Reusing Stack Pointers)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 454.73 m -510.01 454.73 l -S -BT -/TT8 1 Tf -9 0 0 9 78 440.78 Tm -(The following functions and variables are used for manipulating stack pointers:)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(STACKP)Tj -/F1 1 Tf -10 0 0 10 139.8 421.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.67 421.5 Tm -(X)Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31850.9([Function])]TJ --3.0524 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a stack pointer, otherwise returns )Tj -/TT12 1 Tf -16.2451 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --26.7634 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RELSTK)Tj -/F1 1 Tf -10 0 0 10 139.8 385.02 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.67 385.02 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30650.7([Function])]TJ --4.2526 -1.8444 TD -0.1489 Tw -(Release the stack pointer )Tj -/TT14 1 Tf -11.7728 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1489 Tw -[( \(see below\). If )]TJ -/TT14 1 Tf -7.6653 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1489 Tw -[( is not a stack pointer, does nothing.)]TJ --23.0387 -1.2889 TD -0 Tw -(Returns )Tj -/TT14 1 Tf -3.7271 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --8.194 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RELSTKP)Tj -/F1 1 Tf -10 0 0 10 145.2 336.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 336.94 Tm -(X)Tj -/TT12 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31250.9([Function])]TJ --3.6524 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT14 1 Tf -1.2148 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a released stack pointer, )Tj -/TT12 1 Tf -12.0928 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT12 1 Tf --22.7018 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(CLEARSTK)Tj -/F1 1 Tf -10 0 0 10 150.6 300.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.47 300.46 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29450.7([Function])]TJ --5.4526 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0099 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is )]TJ -/TT12 1 Tf -1.3948 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.09 Tw -[(, returns a list of all the active \(unreleased\) stack pointers. If )]TJ -/TT14 1 Tf -27.982 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is )]TJ -/TT12 1 Tf -1.3948 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -(, this)Tj --37.7826 -1.2889 TD -0.0989 Tw -(call is a no-op. The abillity to clear all stack pointers is inconsistent with the modularity)Tj -0 -1.2222 TD -0 Tw -(implicit in a multi processing environment.)Tj -/TT18 1 Tf --2.6667 -2 TD -(CLEARSTKLST)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ --3.9333 -1.8444 TD -0.2289 Tw -[(A variable used by the top-level executive. Every time the top-level executive is re-)]TJ -0 -1.2222 TD -0.07 Tw -(entered \(e.g., following errors, or Control-D\), )Tj -/TT12 1 Tf -20.5689 0 TD -0 Tw -(CLEARSTKLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.07 Tw -[( is checked. If its value is )]TJ -/TT12 1 Tf -11.9833 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.7534 -1.2889 TD -0.0811 Tw -(all active stack pointers are released using )Tj -/TT12 1 Tf -19.3866 0 TD -0 Tw -(CLEARSTK)Tj -/TT8 1 Tf -4.8008 0 TD -0.0811 Tw -[(. If its value is a list, then all stack)]TJ --24.1874 -1.2889 TD -0.0178 Tw -[(pointers on that list are released. If its value is )]TJ -/TT12 1 Tf -20.9294 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0178 Tw -(, nothing is released. )Tj -/TT12 1 Tf -9.6768 0 TD -0 Tw -(CLEARSTKLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.0178 Tw -[( is)]TJ --39.0076 -1.2889 TD -0 Tw -(initially )Tj -/TT12 1 Tf -3.6694 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT18 1 Tf --6.9362 -2.0667 TD -(NOCLEARSTKLST)Tj -/TT8 1 Tf -7.8 0 TD -[( )-29967.8([Variable])]TJ --5.1333 -1.8444 TD -0.1322 Tw -[(A variable used by the top-level executive. If )]TJ -/TT12 1 Tf -21.4185 0 TD -0 Tw -(CLEARSTKLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1322 Tw -[( is )]TJ -/TT12 1 Tf -1.4793 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1322 Tw -[( \(see above\) all active)]TJ --30.099 -1.2889 TD -0.03 Tw -(stack pointers )Tj -/TT10 1 Tf -6.454 0 TD -0 Tw -(except)Tj -/TT8 1 Tf -2.5186 0 TD -0.03 Tw -[( those on )]TJ -/TT12 1 Tf -4.3249 0 TD -0 Tw -(NOCLEARSTKLST)Tj -/TT8 1 Tf -7.8013 0 TD -0.03 Tw -[( are released. )]TJ -/TT12 1 Tf -6.4017 0 TD -0 Tw -(NOCLEARSTKLST)Tj -/TT8 1 Tf -7.8013 0 TD -0.03 Tw -[( is initially)]TJ -/TT12 1 Tf --35.3017 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj --7.1336 -2.0667 TD -0.0311 Tw -[(Creating a single stack pointer can cause the retention of a large amount of stack space. Furthermore,)]TJ -0 -1.2222 TD -0.0889 Tw -(this space will not be freed until the next garbage collection, )Tj -/TT10 1 Tf -27.7019 0 TD -(even if the stack pointer is no longer being)Tj --27.7019 -1.2222 TD -0 Tw -(used)Tj -/TT8 1 Tf -1.8345 0 TD -0.14 Tw -[(, unless the stack pointer is explicitly released or reused. If there is sufficient amount of stack)]TJ --1.8345 -1.2222 TD -0.2256 Tw -(space tied up in this fashion, a )Tj -/TT12 1 Tf -15.1917 0 TD -0.5411 Tw -(STACK OVERFLOW)Tj -/TT8 1 Tf -8.9425 0 TD -0.2256 Tw -[( condition can occur, even in the simplest of)]TJ --24.1342 -1.2889 TD -0.0811 Tw -[(computations. For this reason, you should consider releasing a stack pointer when the environment)]TJ -0 -1.2222 TD -0 Tw -(referenced by the stack pointer is no longer needed.)Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -36 0 obj -<< -/Length 6530 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-8)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(The effects of releasing a stack pointer are:)Tj -0 -2 TD -0.1711 Tw -[(1.)-583.3(The link between the stack pointer and the stack is broken by setting the contents of the stack)]TJ -1.3333 -1.2222 TD -0 Tw -(pointer to the released mark. A released stack pointer prints as )Tj -/TT12 1 Tf -29.1699 0 TD -(#)Tj -/TT14 1 Tf -0.6001 0 TD -(ADR)Tj -/TT12 1 Tf -1.8003 0 TD -(/#)Tj -/TT14 1 Tf -1.2002 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --34.7039 -2.0667 TD -0.0533 Tw -[(2.)-583.3(If this stack pointer was the last remaining reference to a frame extension; that is, if no other stack)]TJ -1.3333 -1.2222 TD -0.1044 Tw -(pointer references the frame extension and the extension is not contained in the active control or)Tj -T* -0.1678 Tw -[(access chain, then the extension may be reclaimed, and is reclaimed immediately. The process)]TJ -T* -0.04 Tw -(repeats for the access and control chains of the reclaimed extension so that all stack space that was)Tj -T* -0 Tw -(reachable only from the released stack pointer is reclaimed.)Tj --1.3333 -2 TD -0.2078 Tw -(A stack pointer may be released using the function )Tj -/TT12 1 Tf -24.5472 0 TD -0 Tw -(RELSTK)Tj -/TT8 1 Tf -3.6006 0 TD -0.2078 Tw -(, but there are some cases for which)Tj -/TT12 1 Tf --28.1478 -1.2889 TD -0 Tw -(RELSTK)Tj -/TT8 1 Tf -3.6006 0 TD -0.1789 Tw -[( is not sufficient. For example, if a function contains a call to )]TJ -/TT12 1 Tf -29.4493 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1789 Tw -[( in which a stack)]TJ --37.2505 -1.2889 TD -0.0433 Tw -(pointer was used to specify where to return to, it would not be possible to simultaneously release the)Tj -0 -1.2222 TD -0.1756 Tw -[(stack pointer. \(A )]TJ -/TT12 1 Tf -8.5333 0 TD -0 Tw -(RELSTK)Tj -/TT8 1 Tf -3.6006 0 TD -0.1756 Tw -[( appearing in the function following the call to )]TJ -/TT12 1 Tf -22.3578 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1756 Tw -[( would not be)]TJ --38.6924 -1.2889 TD -0.1322 Tw -[(executed!\) To permit release of a stack pointer in this situation, the stack functions that relinquish)]TJ -0 -1.2222 TD -0.0456 Tw -(control have optional flag arguments to denote whether or not a stack pointer is to be released \()Tj -/TT14 1 Tf -42.939 0 TD -0 Tw -(AFLG)Tj -/TT8 1 Tf --42.939 -1.2889 TD -(and )Tj -/TT14 1 Tf -2.1173 0 TD -(CFLG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -[(\). Note that in this case releasing the stack pointer will )]TJ -/TT10 1 Tf -26.4971 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1744 Tw -[( cause the stack space to be)]TJ --32.3479 -1.2889 TD -0.0144 Tw -(reclaimed immediately because the frame referenced by the stack pointer will have become part of the)Tj -0 -1.2222 TD -0 Tw -(active environment.)Tj -0 -2 TD -0.0344 Tw -(Another way to avoid creating new stack pointers is to )Tj -/TT10 1 Tf -24.7566 0 TD -0 Tw -(reuse)Tj -/TT8 1 Tf -2.1128 0 TD -0.0344 Tw -[( stack pointers that are no longer needed.)]TJ --26.8693 -1.2222 TD -0.2022 Tw -(The stack functions that create stack pointers \()Tj -/TT12 1 Tf -21.8047 0 TD -0 Tw -(STKPOS)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT12 1 Tf -0.7022 0 TD -(STKNTH)Tj -/TT8 1 Tf -3.6006 0 TD -0.2022 Tw -(, and )Tj -/TT12 1 Tf -2.8473 0 TD -0 Tw -(STKSCAN)Tj -/TT8 1 Tf -4.2007 0 TD -0.2022 Tw -(\) have an optional)Tj --36.7561 -1.2889 TD -0.0001 Tc -0.0032 Tw -(argument that is a stack pointer to reuse. When a stack pointer is reused, two things happen. First the)Tj -0 -1.2222 TD -0 Tc -0.0489 Tw -[(stack pointer is released \(see above\). Then the pointer to the new frame extension is deposited in the)]TJ -T* -0.0722 Tw -[(stack pointer. The old stack pointer \(with its new contents\) is returned as the value of the function.)]TJ -T* -0.1422 Tw -(Note that the reused stack pointer will be released even if the function does not find the specified)Tj -T* -0 Tw -(frame.)Tj -0 -2 TD -0.0844 Tw -(Even if stack pointers are explicitly being released, )Tj -/TT10 1 Tf -23.26 0 TD -0 Tw -(creating)Tj -/TT8 1 Tf -3.2964 0 TD -0.0844 Tw -[( many stack pointers can cause a garbage)]TJ --26.5564 -1.2222 TD -0.0367 Tw -[(collection of stack pointer space. Thus, if your application requires creating many stack pointers, you)]TJ -T* -0 Tw -(definitely should take advantage of reusing stack pointers.)Tj -/TT4 1 Tf -10 0 0 10 102 222 Tm -(Backtrace Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 219.29 m -558.01 219.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 205.34 Tm -0.0711 Tw -(The following functions perform a backtrace, printing information about every frame on the stack.)Tj -T* -0.29 Tw -(Arguments allow only backtracing a selected range of the stack, skipping selected frames, and)Tj -T* -0 Tw -(printing different amounts of information about each frame. )Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(BACKTRACE)Tj -/F1 1 Tf -10 0 0 10 204 164.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.87 164.06 Tm -(IPOS)Tj -/F2 1 Tf -10 0 0 10 228.4735 164.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 231.2535 164.06 Tm -(EPOS)Tj -/F2 1 Tf -10 0 0 10 252.857 164.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 255.637 164.06 Tm -(FLAGS)Tj -/F2 1 Tf -10 0 0 10 282.6414 164.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 285.4214 164.06 Tm -(FILE)Tj -/F2 1 Tf -10 0 0 10 307.0249 164.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 309.8049 164.06 Tm -(PRINTFN)Tj -/TT12 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-15013.1([Function])]TJ --19.8902 -1.8444 TD -0.0889 Tw -(Performs a backtrace beginning at the frame specified by the stack descriptor )Tj -/TT14 1 Tf -35.3093 0 TD -0 Tw -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0889 Tw -(, and)Tj --37.7097 -1.2889 TD -0.1789 Tw -(ending with the frame specified by the stack descriptor )Tj -/TT14 1 Tf -26.1823 0 TD -0 Tw -(EPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1789 Tw -(. )Tj -/TT14 1 Tf -1.1078 0 TD -0 Tw -(FLAGS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1789 Tw -[( is a number in)]TJ --32.6909 -1.2889 TD -0.2267 Tw -(which the options of the )Tj -/TT12 1 Tf -12.0855 0 TD -0 Tw -(BACKTRACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.2267 Tw -[( are encoded. If a bit is set, the corresponding)]TJ --17.4864 -1.2889 TD -0 Tw -(information is included in the backtrace.)Tj -0 -1.4444 TD -(1Q - print arguments of non-)Tj -/TT12 1 Tf -12.7344 0 TD -(SUBR)Tj -/TT8 1 Tf -2.4004 0 TD -(s)Tj --15.1348 -1.5111 TD -(2Q - print temporaries of the interpreter)Tj -0 -1.4444 TD -(4Q - print )Tj -/TT12 1 Tf -4.5645 0 TD -(SUBR)Tj -/TT8 1 Tf -2.4004 0 TD -( arguments and local variables)Tj --6.9648 -1.5111 TD -(10Q - omit printing of )Tj -/TT12 1 Tf -9.9185 0 TD -(UNTRACE)Tj -/TT8 1 Tf -4.2007 0 TD -(: and function names)Tj --14.1191 -1.5111 TD -(20Q - follow access chain instead of control chain)Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -39 0 obj -<< -/Length 8494 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-9)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(40Q - print temporaries, i.e. the blips \(see the stack and interpreter section below\))Tj -0 -2 TD -0.1278 Tw -[(For example: If )]TJ -/TT14 1 Tf -7.6771 0 TD -0 Tw -(FLAGS)Tj -/TT12 1 Tf -3.0005 0 TD -0.3056 Tw -[( = 47Q)]TJ -/TT8 1 Tf -4.2117 0 TD -0.1278 Tw -[(, everything is printed. If )]TJ -/TT14 1 Tf -12.2481 0 TD -0 Tw -(FLAGS)Tj -/TT12 1 Tf -3.0005 0 TD -0.3056 Tw -[( = 21Q)]TJ -/TT8 1 Tf -4.2117 0 TD -0.1278 Tw -(, follows the)Tj --34.3496 -1.2889 TD -0 Tw -(access chain, prints arguments.)Tj -/TT14 1 Tf -0 -2 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1111 Tw -[( is the file that the backtrace is printed to. )]TJ -/TT14 1 Tf -19.9092 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1111 Tw -[( must be open. )]TJ -/TT14 1 Tf -7.5316 0 TD -0 Tw -(PRINTFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1111 Tw -[( is used)]TJ --36.4423 -1.2889 TD -0.0589 Tw -(when printing the values of variables, temporaries, blips, etc. )Tj -/TT14 1 Tf -28.0445 0 TD -0 Tw -(PRINTFN)Tj -/TT12 1 Tf -4.2007 0 TD -0.14 Tw -[( = NIL)]TJ -/TT8 1 Tf -3.8806 0 TD -0.0589 Tw -[( defaults)]TJ --36.1257 -1.2889 TD -0 Tw -(to )Tj -/TT12 1 Tf -1.1221 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT12 1 Tf --6.7892 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(BAKTRACE)Tj -/F1 1 Tf -10 0 0 10 150.6 478.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.47 478.86 Tm -(IPOS)Tj -/F2 1 Tf -10 0 0 10 175.0735 478.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 177.8535 478.86 Tm -(EPOS)Tj -/F2 1 Tf -10 0 0 10 199.457 478.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.237 478.86 Tm -(SKIPFNS)Tj -/F2 1 Tf -10 0 0 10 240.0432 478.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 242.8232 478.86 Tm -(FLAGS)Tj -/F2 1 Tf -10 0 0 10 269.8275 478.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 272.6075 478.86 Tm -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-15613.1([Function])]TJ --19.2902 -1.8444 TD -0.1811 Tw -(Prints a backtrace from )Tj -/TT14 1 Tf -11.2005 0 TD -0 Tw -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1811 Tw -[( to )]TJ -/TT14 1 Tf -1.7343 0 TD -0 Tw -(EPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1811 Tw -[( onto )]TJ -/TT14 1 Tf -2.8622 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1811 Tw -(. )Tj -/TT14 1 Tf -1.1122 0 TD -0 Tw -(FLAGS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1811 Tw -[( specifies the options of the)]TJ --27.1109 -1.2889 TD -0.1089 Tw -(backtrace, e.g., do/dont print arguments, do/dont print temporaries of the interpreter,)Tj -0 -1.2222 TD -0 Tw -(etc., and is the same as for )Tj -/TT12 1 Tf -11.7773 0 TD -(BACKTRACE)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT14 1 Tf --17.1782 -2.0667 TD -(SKIPFNS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1367 Tw -[( is a list of functions. As )]TJ -/TT12 1 Tf -12.1016 0 TD -0 Tw -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1367 Tw -[( scans down the stack, the stack name of)]TJ --21.1031 -1.2889 TD -0.0989 Tw -(each frame is passed to each function in )Tj -/TT14 1 Tf -18.5963 0 TD -0 Tw -(SKIPFNS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0989 Tw -(, and if any of them returnS non-)Tj -/TT12 1 Tf -15.1444 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj -/TT14 1 Tf --39.7416 -1.2889 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -( is skipped \(including all variables\).)Tj -/TT12 1 Tf --1.8003 -2.0667 TD -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1633 Tw -[( collapses the sequence of several function calls corresponding to a call to a)]TJ --4.8008 -1.2889 TD -0.1644 Tw -(system package into a single function using )Tj -/TT12 1 Tf -21.6604 0 TD -0 Tw -(BAKTRACELST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1644 Tw -[( as described below. For)]TJ --28.2615 -1.2889 TD -0.3822 Tw -(example, any call to the editor is printed as )Tj -/TT12 1 Tf -22.6841 0 TD -0 Tw -(**EDITOR**)Tj -/TT8 1 Tf -6.001 0 TD -0.3822 Tw -(, a break is printed as)Tj -/TT12 1 Tf --28.6851 -1.2889 TD -0 Tw -(**BREAK**)Tj -/TT8 1 Tf -5.4009 0 TD -(, etc.)Tj -/TT12 1 Tf --5.4009 -2.0667 TD -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.06 Tw -[( is used by the )]TJ -/TT12 1 Tf -6.8781 0 TD -0 Tw -(BT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.56 0 TD -(BTV)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT12 1 Tf -0.56 0 TD -(BTV+)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT12 1 Tf -0.56 0 TD -(BTV*)Tj -/TT8 1 Tf -2.4004 0 TD -0.06 Tw -(, and )Tj -/TT12 1 Tf -2.5629 0 TD -0 Tw -(BTV!)Tj -/TT8 1 Tf -2.4004 0 TD -0.06 Tw -[( break commands, with )]TJ -/TT14 1 Tf -10.8787 0 TD -0 Tw -(FLAGS)Tj -/TT12 1 Tf --37.0021 -1.2889 TD -(= 0)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(5)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(7)Tj -/TT8 1 Tf -0.6001 0 TD -(, and )Tj -/TT12 1 Tf -2.4429 0 TD -(47Q)Tj -/TT8 1 Tf -1.8003 0 TD -( respectively.)Tj --9.3438 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(SYSPRETTYFLG = T)Tj -/TT8 1 Tf -9.6016 0 TD -(, the values arguments and local variables will be prettyprinted.)Tj -/TT18 1 Tf --13.1882 -2.0667 TD -(BAKTRACELST)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ --3.9333 -1.8444 TD -0.2189 Tw -(Used to tell )Tj -/TT12 1 Tf -5.9574 0 TD -0 Tw -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2189 Tw -[( \(therefore, the )]TJ -/TT12 1 Tf -7.391 0 TD -0 Tw -(BT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.7189 0 TD -(BTV)Tj -/TT8 1 Tf -1.8003 0 TD -0.2189 Tw -(, etc. commands\) to abbreviate various)Tj --21.8686 -1.2889 TD -0.1122 Tw -(sequences of function calls on the stack by a single key, e.g. )Tj -/TT12 1 Tf -27.73 0 TD -0 Tw -(**BREAK**)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT12 1 Tf -0.6122 0 TD -(**EDITOR**)Tj -/TT8 1 Tf -6.001 0 TD -(,)Tj --39.744 -1.2889 TD -(etc.)Tj -0 -2 TD -0.1178 Tw -(Each entry on )Tj -/TT12 1 Tf -6.7064 0 TD -0 Tw -(BAKTRACELST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1178 Tw -[( is a list of the form )]TJ -/TT12 1 Tf -9.5442 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FRAMENAME)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.8812 0 TD -(KEY)Tj -/TT12 1 Tf -1.8003 0 TD -0.2811 Tw -[( . )]TJ -/TT14 1 Tf -2.3625 0 TD -0 Tw -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1178 Tw -[( or)]TJ --38.6974 -1.2889 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.333 0 TD -(FRAMENAME)Tj -/TT12 1 Tf -5.4009 0 TD -0.14 Tc -( \()Tj -/TT14 1 Tf -1.3402 0 TD -0 Tc -(KEY)Tj -6 0 0 6 205.86 205.66 Tm -(1)Tj -/TT12 1 Tf -9 0 0 9 209.46 207.66 Tm -0.14 Tw -[( . )]TJ -/TT14 1 Tf -2.0803 0 TD -0 Tw -(PATTERN)Tj -6 0 0 6 265.98 205.66 Tm -(1)Tj -/TT12 1 Tf -9 0 0 9 269.58 207.66 Tm -0.14 Tw -(\) ... \()Tj -/TT14 1 Tf -4.4807 0 TD -0 Tw -(KEY)Tj -6 0 0 6 326.1 205.66 Tm -(N)Tj -/TT12 1 Tf -9 0 0 9 329.7 207.66 Tm -0.14 Tw -[( . )]TJ -/TT14 1 Tf -2.0803 0 TD -0 Tw -(PATTERN)Tj -6 0 0 6 386.22 205.66 Tm -(N)Tj -/TT12 1 Tf -9 0 0 9 389.82 207.66 Tm -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0589 Tw -(, where a pattern is a)Tj --30.5135 -1.3944 TD -0.2011 Tw -(list of elements that are either atoms, which match a single frame, or lists, which are)Tj -0 -1.2222 TD -0.0033 Tw -(interpreted as a list of alternative patterns, e.g. )Tj -/TT12 1 Tf -20.7786 0 TD -0.0078 Tw -(\(PROGN **BREAK** EVAL \(\(ERRORSET)Tj --20.7786 -1.2222 TD -0 Tw -(BREAK1A BREAK1\) \(BREAK1\)\)\))Tj --5.3333 -2.0667 TD -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.07 Tw -[( operates by scanning up the stack and, at each point, comparing the current frame name,)]TJ --4.8008 -1.2889 TD -0.2044 Tw -(with the frame names on )Tj -/TT12 1 Tf -12.2781 0 TD -0 Tw -(BAKTRACELST)Tj -/TT8 1 Tf -6.6011 0 TD -0.2044 Tw -(, i.e. it does an )Tj -/TT12 1 Tf -7.551 0 TD -0 Tw -(ASSOC)Tj -/TT8 1 Tf -3.0005 0 TD -0.2044 Tw -[(. If the frame name does appear,)]TJ -/TT12 1 Tf --29.4307 -1.2889 TD -0 Tw -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1489 Tw -[( attempts to match the stack as of that point with \(one of\) the patterns. If the match is)]TJ --4.8008 -1.2889 TD -0 Tw -(successful, )Tj -/TT12 1 Tf -5.0549 0 TD -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0867 Tw -[( prints the corresponding key, and continues with where the match left off. If)]TJ --9.8557 -1.2889 TD -0.1456 Tw -(the frame name does not appear, or the match fails, )Tj -/TT12 1 Tf -24.3682 0 TD -0 Tw -(BAKTRACE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1456 Tw -[( simply prints the frame name and)]TJ --29.1689 -1.2889 TD -0.0456 Tw -(continues with the next higher frame \(unless the )Tj -/TT14 1 Tf -21.9631 0 TD -0 Tw -(SKIPFNS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0456 Tw -[( applied to the frame name are non-)]TJ -/TT12 1 Tf -16.1529 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[( as)]TJ --44.1169 -1.2889 TD -0 Tw -(described above\).)Tj -0 -2 TD -0.2489 Tw -(Matching is performed by comparing symbols in the pattern with the current frame name, and)Tj -0 -1.2222 TD -0.0389 Tw -[(matching lists as patterns, i.e. sequences of function calls, always working up the stack. For example,)]TJ -T* -0.0833 Tw -(either of the sequence of function calls )Tj -/TT12 1 Tf -17.7371 0 TD -0.1989 Tw -(... BREAK1 BREAK1A ERRORSET EVAL PROGN ...)Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -42 0 obj -<< -/Length 7295 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-10)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -0.2122 Tw -(or ... BREAK1 EVAL PROGN ...)Tj -/TT8 1 Tf -18.4639 0 TD -0.0889 Tw -( would match with the sample entry given above, causing)Tj -/TT12 1 Tf --18.4639 -1.2889 TD -0 Tw -(**BREAK**)Tj -/TT8 1 Tf -5.4009 0 TD -( to be printed.)Tj --5.4009 -2.0667 TD -(Special features:)Tj -0 -2 TD -[()-727.4(The symbol )]TJ -/TT12 1 Tf -6.7601 0 TD -(&)Tj -/TT8 1 Tf -0.6001 0 TD -( can be used to match any frame.)Tj --7.3602 -2.0667 TD -0.0056 Tw -[()-727.4(The pattern )]TJ -/TT12 1 Tf -6.7277 0 TD -0 Tw -(-)Tj -/TT8 1 Tf -1.2002 0 TD -0.0056 Tw -( can be used to match nothing. )Tj -/TT12 1 Tf -14.5415 0 TD -0 Tw -(-)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( is useful for specifying an optional match, e.g. the)]TJ --21.7362 -1.2889 TD -0.2489 Tw -(example above could also have been written as )Tj -/TT12 1 Tf -23.015 0 TD -0.5967 Tw -(\(PROGN **BREAK** EVAL \(\(ERRORSET)Tj --23.015 -1.2889 TD -0 Tw -(BREAK1A\) -\) BREAK1\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj --12.7352 -2.0667 TD -0.1578 Tw -[()-727.4(It is not necessary to provide in the pattern for matching dummy frames, i.e. frames for which)]TJ -/TT12 1 Tf -1.3333 -1.2222 TD -0 Tw -(DUMMYFRAMEP)Tj -/TT8 1 Tf -6.6011 0 TD -0.1433 Tw -[( \(see below\) is true. When working on a match, the matcher automatically skips)]TJ --6.6011 -1.2889 TD -0 Tw -(over these frames when they do not match.)Tj --1.3333 -2 TD -0.1822 Tw -[()-727.4(If a match succeeds and the )]TJ -/TT14 1 Tf -14.8188 0 TD -0 Tw -(KEY)Tj -/TT8 1 Tf -1.8003 0 TD -0.1822 Tw -[( is )]TJ -/TT12 1 Tf -1.5793 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1822 Tw -[(, nothing is printed. For example, )]TJ -/TT12 1 Tf -16.487 0 TD -0.4378 Tw -(\(*PROG*LAM NIL)Tj --35.1523 -1.2889 TD -0.1411 Tw -(EVALA *ENV\))Tj -/TT8 1 Tf -6.7422 0 TD -0.0589 Tw -[(. This sequence will occur following an error which then causes a break if some of)]TJ --6.7422 -1.2889 TD -0 Tw -(the functions arguments are )Tj -/TT12 1 Tf -12.918 0 TD -(LOCALVARS)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 374.2 Tm -(Other Stack Functions)Tj -/TT12 1 Tf -9 0 0 9 150 357.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(DUMMYFRAMEP)Tj -/F1 1 Tf -10 0 0 10 214.8 357.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.67 357.26 Tm -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27650.7([Function])]TJ --7.2526 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -4.1393 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.4122 Tw -[( if you never wrote a call to the function at )]TJ -/TT14 1 Tf -23.512 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.4122 Tw -(, e.g. in Interlisp-10,)Tj -/TT12 1 Tf --30.0517 -1.2889 TD -0 Tw -(DUMMYFRAMEP)Tj -/TT8 1 Tf -6.6011 0 TD -0.2744 Tw -[( is )]TJ -/TT12 1 Tf -1.7637 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2744 Tw -[( for )]TJ -/TT12 1 Tf -2.3228 0 TD -0.6578 Tw -(*PROG*LAM, *ENV*)Tj -/TT8 1 Tf -10.2593 0 TD -0.2744 Tw -(, and )Tj -/TT12 1 Tf -2.9918 0 TD -0 Tw -(FOOBLOCK)Tj -/TT8 1 Tf -4.8008 0 TD -0.2744 Tw -[( frames \(see the Block)]TJ --29.3396 -1.2889 TD -0 Tw -(Compiling section of Chapter 18\).)Tj -/TT12 1 Tf --5.3333 -2 TD -(REALFRAMEP)Tj -/TT8 1 Tf -6.001 0 TD -0.0489 Tw -[( and )]TJ -/TT12 1 Tf -2.2907 0 TD -0 Tw -(REALSTKNTH)Tj -/TT8 1 Tf -6.001 0 TD -0.0489 Tw -[( can be used to write functions which manipulate the stack and work)]TJ --14.2926 -1.2889 TD -0 Tw -(on either interpreted or compiled code:)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(REALFRAMEP)Tj -/F1 1 Tf -10 0 0 10 209.4 268.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 268.58 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 228.4726 268.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 231.2526 268.58 Tm -(INTERPFLG)Tj -/TT12 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22540.9([Function])]TJ --12.3624 -1.8444 TD -(Returns )Tj -/TT14 1 Tf -3.7659 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0389 Tw -[( if )]TJ -/TT14 1 Tf -1.2018 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0389 Tw -[( is a real frame, i.e. if )]TJ -/TT14 1 Tf -10.636 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0389 Tw -[( is not a dummy frame and )]TJ -/TT14 1 Tf -12.5095 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0389 Tw -[( is a frame)]TJ --35.3144 -1.2889 TD -0.0322 Tw -(that does not disappear when compiled \(such as )Tj -/TT12 1 Tf -21.8398 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0322 Tw -(\); otherwise )Tj -/TT12 1 Tf -5.5034 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0322 Tw -[(. If )]TJ -/TT14 1 Tf -1.7666 0 TD -0 Tw -(INTERPFLG)Tj -/TT12 1 Tf -5.4009 0 TD -0.0789 Tc -( =)Tj --38.7114 -1.2889 TD -0 Tc -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0944 Tw -(, returns )Tj -/TT12 1 Tf -4.143 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0944 Tw -[( if )]TJ -/TT14 1 Tf -1.3129 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0944 Tw -[( is not a dummy frame. For example, if )]TJ -/TT12 1 Tf -18.609 0 TD -0 Tw -(\(STKNAME )Tj -/TT14 1 Tf -5.6275 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -0.2267 Tw -(\) = COND)Tj -/TT8 1 Tf -5.2541 0 TD -0 Tw -(,)Tj -/TT12 1 Tf --39.7473 -1.2889 TD -(\(REALFRAMEP )Tj -/TT14 1 Tf -7.2012 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT12 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, but )Tj -/TT12 1 Tf -2.2324 0 TD -(\(REALFRAMEP )Tj -/TT14 1 Tf -7.2012 0 TD -(POS)Tj -/TT12 1 Tf -1.8003 0 TD -( T\))Tj -/TT8 1 Tf -1.8003 0 TD -( is )Tj -/TT12 1 Tf -1.2148 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT12 1 Tf --30.1325 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(REALSTKNTH)Tj -/F1 1 Tf -10 0 0 10 209.4 197.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 197.3 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 217.6709 197.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.4509 197.3 Tm -(POS)Tj -/F2 1 Tf -10 0 0 10 236.6535 197.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 239.4335 197.3 Tm -(INTERPFLG)Tj -/F2 1 Tf -10 0 0 10 288.0414 197.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 290.8214 197.3 Tm -(OLDPOS)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-17722.5([Function])]TJ --17.1808 -1.8444 TD -0.2811 Tw -(Returns a stack pointer to the )Tj -/TT14 1 Tf -14.8932 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2811 Tw -(th \(or )Tj -/TT12 1 Tf -3.2444 0 TD -0 Tw -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2811 Tw -(th\) frames for which )Tj -/TT12 1 Tf -10.3862 0 TD -0 Tw -(\(REALFRAMEP )Tj -/TT14 1 Tf -7.8756 0 TD -(POS)Tj --38.1996 -1.2889 TD -(INTERPFLG)Tj -/TT12 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT14 1 Tf -1.2148 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --11.6828 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(MAPDL)Tj -/F1 1 Tf -10 0 0 10 182.4 149.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 149.22 Tm -(MAPDLFN)Tj -/F2 1 Tf -10 0 0 10 223.0761 149.22 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 225.8561 149.22 Tm -(MAPDLPOS)Tj -/TT12 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23740.7([Function])]TJ --11.1627 -1.8444 TD -0.0289 Tw -(Starts at )Tj -/TT14 1 Tf -3.88 0 TD -0 Tw -(MAPDLPOS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0289 Tw -[( and applies the function )]TJ -/TT14 1 Tf -11.3686 0 TD -0 Tw -(MAPDLFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0289 Tw -[( to two arguments \(the frame name)]TJ --24.2501 -1.2889 TD -0.1678 Tw -(and a stack pointer to the frame\), for each frame until the top of the stack is reached.)Tj -0 -1.2222 TD -0 Tw -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(. For example,)Tj -/TT12 1 Tf --1.5273 -1.6667 TD -([MAPDL \(FUNCTION \(LAMBDA \(X POS\))Tj -2 -1 TD -(\(if \(IGREATERP \(STKNARGS POS\) 2\) then \(PRINT X\)])Tj -/TT8 1 Tf --6 -1.8444 TD -(will print all functions of more than two arguments.)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -45 0 obj -<< -/Length 5829 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-11)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT12 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(SEARCHPDL)Tj -/F1 1 Tf -10 0 0 10 156 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.87 568.26 Tm -(SRCHFN)Tj -/F2 1 Tf -10 0 0 10 191.2752 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 194.0553 568.26 Tm -(SRCHPOS)Tj -/TT12 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22540.9([Function])]TJ --12.3625 -1.8444 TD -(Like )Tj -/TT12 1 Tf -2.2448 0 TD -(MAPDL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0578 Tw -(, but searches the stack starting at position )Tj -/TT14 1 Tf -19.3919 0 TD -0 Tw -(SRCHPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0578 Tw -[( until it finds a frame for)]TJ --28.8379 -1.2889 TD -0 Tw -(which )Tj -/TT14 1 Tf -3.1418 0 TD -(SRCHFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.1589 Tw -(, a function of two arguments applied to the )Tj -/TT10 1 Tf -21.1033 0 TD -0 Tw -(name)Tj -/TT8 1 Tf -2.167 0 TD -0.1589 Tw -[( of the frame and the)]TJ --30.0127 -1.2889 TD -0.0878 Tw -(frame itself, is not )Tj -/TT12 1 Tf -8.5039 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0878 Tw -[(. Returns )]TJ -/TT12 1 Tf -4.7404 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.2111 Tw -[( . )]TJ -/TT14 1 Tf -2.2225 0 TD -0 Tw -(FRAME)Tj -/TT12 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( if such a frame is found, otherwise)]TJ -/TT12 1 Tf --23.8682 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 493.92 Tm -(The Stack and the Interpreter)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 491.21 m -510.01 491.21 l -S -BT -/TT8 1 Tf -9 0 0 9 78 477.26 Tm -0.2089 Tw -(In addition to the names and values of arguments for functions, information regarding partially-)Tj -0 -1.2222 TD -0.0022 Tw -(evaluated expressions is kept on the push-down list. For example, consider the following definition of)Tj -T* -0 Tw -(the function )Tj -/TT12 1 Tf -5.5942 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -( \(intentionally faulty\):)Tj -/TT12 1 Tf -1.3387 -1.6667 TD -(\(FACT)Tj -2 -1 TD -([LAMBDA \(N\))Tj -2 -1 TD -(\(COND)Tj -T* -( \(\(ZEROP N\))Tj -T* -( L\))Tj -T* -( \(T \(ITIMES N \(FACT \(SUB1 N]\))Tj -/TT8 1 Tf --13.3333 -1.8444 TD -0.0933 Tw -(In evaluating the form )Tj -/TT12 1 Tf -10.5296 0 TD -0.2222 Tw -(\(FACT 1\))Tj -/TT8 1 Tf -5.023 0 TD -0.0933 Tw -(, as soon as )Tj -/TT12 1 Tf -5.5686 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( is entered, the interpreter begins evaluating the)]TJ --23.5216 -1.2889 TD -0 Tw -(implicit )Tj -/TT12 1 Tf -3.6791 0 TD -(PROGN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -[( following the )]TJ -/TT12 1 Tf -6.4406 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -0.0111 Tw -[(. The first function entered in this process is )]TJ -/TT12 1 Tf -19.8855 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -(. )Tj -/TT12 1 Tf -0.7722 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( begins)]TJ --42.1792 -1.2889 TD -0.0589 Tw -[(to process its list of clauses. After calling )]TJ -/TT12 1 Tf -18.8972 0 TD -0 Tw -(ZEROP)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[( and getting a )]TJ -/TT12 1 Tf -6.5451 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0589 Tw -[( value, )]TJ -/TT12 1 Tf -3.3058 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0589 Tw -[( proceeds to the next)]TJ --35.9493 -1.2889 TD -0.05 Tw -(clause and evaluates )Tj -/TT12 1 Tf -9.5006 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[(. Since )]TJ -/TT12 1 Tf -3.4708 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( is true, the evaluation of the implicit )]TJ -/TT12 1 Tf -16.9225 0 TD -0 Tw -(PROGN)Tj -/TT8 1 Tf -3.0005 0 TD -0.05 Tw -[( that is the consequent of)]TJ --34.0945 -1.2889 TD -0 Tw -(the )Tj -/TT12 1 Tf -1.7605 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -[( clause is begun. This requires calling the function )]TJ -/TT12 1 Tf -23.7973 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.1233 Tw -[(. However before )]TJ -/TT12 1 Tf -8.6584 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.1233 Tw -[( can be)]TJ --42.0175 -1.2889 TD -0.1422 Tw -[(called, its arguments must be evaluated. The first argument is evaluated by retrieving the current)]TJ -0 -1.2222 TD -0.14 Tw -(binding of )Tj -/TT12 1 Tf -5.1252 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.14 Tw -[( from its value cell; the second involves a recursive call to )]TJ -/TT12 1 Tf -27.2586 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.14 Tw -(, and another implicit)Tj -/TT12 1 Tf --35.3843 -1.2889 TD -0 Tw -(PROGN)Tj -/TT8 1 Tf -3.0005 0 TD -(, etc.)Tj --3.0005 -2.0667 TD -0.2211 Tw -(At each stage of this process, some portion of an expression has been evaluated, and another is)Tj -0 -1.2222 TD -0.06 Tw -[(awaiting evaluation. The output below \(from Interlisp-10\) illustrates this by showing the state of the)]TJ -T* -0 Tw -(push-down list at the point in the computation of )Tj -/TT12 1 Tf -22.0444 0 TD -(\(FACT 1\))Tj -/TT8 1 Tf -4.8008 0 TD -( when the unbound atom )Tj -/TT12 1 Tf -11.4492 0 TD -(L)Tj -/TT8 1 Tf -0.6001 0 TD -( is reached.)Tj -/TT19 1 Tf --36.8945 -1.6667 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -( FACT\(1\))Tj --0.3202 -1 TD -(u.b.a. L {in FACT} in \(\(ZEROP NO L\))Tj -T* -(\(L broken\))Tj -T* -(:BTV!)Tj -T* -( *TAIL* \(L\))Tj -T* -( *ARG1 \(\(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\))Tj -T* -(COND)Tj -T* -( *FORM* \(COND \(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\))Tj -T* -( *TAIL* \(\(COND \(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\)\))Tj -T* -( N 0)Tj -T* -(FACT)Tj -T* -( *FORM* \(FACT \(SUB1 N\)\))Tj -T* -( *FN* ITIMES)Tj -T* -( *TAIL* \(\(FACT \(SUB1 N\)\)\))Tj -T* -( *ARGVAL* 1)Tj -T* -( *FORM* \(ITIMES N \(FACT \(SUB1 N\)\)\))Tj -T* -( *TAIL* \(\(ITIMES N \(FACT \(SUB1 N\)\)\)\))Tj -T* -( *ARG1 \(\(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\))Tj -T* -(COND)Tj -T* -( *FORM* \(COND \(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\))Tj -T* -( *TAIL* \(\(COND \(\(ZEROP N\) L\) \(T \(ITIMES N \(FACT \(SUB1 N\)\)\)\)\)\))Tj -T* -( N 1)Tj -T* -(FACT)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R -/TT19 47 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -51 0 obj -<< -/Length 7973 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-12)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 570.14 Tm -(**TOP**)Tj -/TT8 1 Tf --2.6667 -1.8444 TD -0.1367 Tw -(Internal calls to )Tj -/TT12 1 Tf -7.474 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1367 Tw -(, e.g., from )Tj -/TT12 1 Tf -5.3519 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1367 Tw -[( and the interpreter, are marked on the push-down list by a)]TJ --17.6266 -1.2889 TD -0.1633 Tw -(special mark or blip which the backtrace prints as )Tj -/TT12 1 Tf -23.6214 0 TD -0 Tw -(*FORM*)Tj -/TT8 1 Tf -3.6006 0 TD -0.1633 Tw -[(. The genealogy of )]TJ -/TT12 1 Tf -9.4148 0 TD -0 Tw -(*FORM*)Tj -/TT8 1 Tf -3.6006 0 TD -0.1633 Tw -(s is thus a)Tj --40.2374 -1.2889 TD -0.2311 Tw -[(history of the computation. Other temporary information stored on the stack by the interpreter)]TJ -0 -1.2222 TD -0.02 Tw -(includes the tail of a partially evaluated implicit )Tj -/TT12 1 Tf -21.5824 0 TD -0 Tw -(PROGN)Tj -/TT8 1 Tf -3.0005 0 TD -0.02 Tw -[( \(e.g., a cond clause or lambda expression\) and)]TJ --24.5829 -1.2889 TD -0.0956 Tw -(the tail of a partially evaluated form \(i.e., those arguments not yet evaluated\), both indicated on the)Tj -0 -1.2222 TD -0.3011 Tw -(backtrace by )Tj -/TT12 1 Tf -6.4089 0 TD -0 Tw -(*TAIL*)Tj -/TT8 1 Tf -3.6006 0 TD -0.3011 Tw -(, the values of arguments that have already been evaluated, indicated by)Tj -/TT12 1 Tf --10.0094 -1.2889 TD -0 Tw -(*ARGVAL*)Tj -/TT8 1 Tf -4.8008 0 TD -0.1933 Tw -(, and the names of functions waiting to be called, indicated by )Tj -/TT12 1 Tf -29.9221 0 TD -0 Tw -(*FN*)Tj -/TT8 1 Tf -2.4004 0 TD -0.1933 Tw -(. )Tj -/TT12 1 Tf -1.1367 0 TD -0.4656 Tw -(*ARG1, ...,)Tj --38.2599 -1.2889 TD -0 Tw -(*ARGn)Tj -/TT8 1 Tf -3.0005 0 TD -( are used by the backtrace to indicate the \(unnamed\) arguments to )Tj -/TT12 1 Tf -29.4937 0 TD -(SUBR)Tj -/TT8 1 Tf -2.4004 0 TD -(s.)Tj --34.8945 -2.0667 TD -0.0211 Tw -(Note that a function is not actually entered and does not appear on the stack, until its arguments have)Tj -0 -1.2222 TD -0.2922 Tw -[(been evaluated \(except for nlambda functions, of course\). Also note that the )]TJ -/TT12 1 Tf -37.6949 0 TD -0 Tw -(*ARG1)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT12 1 Tf -0.7922 0 TD -(*FORM*)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT12 1 Tf --45.0882 -1.2889 TD -(*TAIL*)Tj -/TT8 1 Tf -3.6006 0 TD -0.0522 Tw -[(, etc. bindings comprise the actual working storage. In other words, in the above example,)]TJ --3.6006 -1.2889 TD -0.0767 Tw -(if a \(lower\) function changed the value of the )Tj -/TT12 1 Tf -20.8272 0 TD -0 Tw -(*ARG1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -[( binding, the )]TJ -/TT12 1 Tf -6.0835 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -[( would continue interpreting)]TJ --32.3116 -1.2889 TD -0.0333 Tw -(the new binding as a list of )Tj -/TT12 1 Tf -12.3666 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0333 Tw -[( clauses. Similarly, if the )]TJ -/TT12 1 Tf -11.3987 0 TD -0 Tw -(*ARGVAL*)Tj -/TT8 1 Tf -4.8008 0 TD -0.0333 Tw -[( binding were changed, the new)]TJ --30.9665 -1.2889 TD -0.0689 Tw -(value would be given to )Tj -/TT12 1 Tf -11.2946 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.0689 Tw -[( as its first argument after its second argument had been evaluated,)]TJ --14.8952 -1.2889 TD -0 Tw -(and )Tj -/TT12 1 Tf -1.9429 0 TD -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -( was actually called.)Tj -/TT12 1 Tf --5.5435 -2.0667 TD -(*FORM*)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT12 1 Tf -0.6422 0 TD -(*TAIL*)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT12 1 Tf -0.6422 0 TD -(*ARGVAL*)Tj -/TT8 1 Tf -4.8008 0 TD -0.1422 Tw -(, etc., do not actually appear as variables on the stack, i.e., evaluating)Tj -/TT12 1 Tf --13.2864 -1.2889 TD -0 Tw -(*FORM*)Tj -/TT8 1 Tf -3.6006 0 TD -0.28 Tw -[( or calling )]TJ -/TT12 1 Tf -5.486 0 TD -0 Tw -(STKSCAN)Tj -/TT8 1 Tf -4.2007 0 TD -0.28 Tw -[( to search for it will not work. However, the functions )]TJ -/TT12 1 Tf -27.5871 0 TD -0 Tw -(BLIPVAL)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj -/TT12 1 Tf --45.075 -1.2889 TD -(SETBLIPVAL)Tj -/TT8 1 Tf -6.001 0 TD -0.0656 Tw -(, and )Tj -/TT12 1 Tf -2.574 0 TD -0 Tw -(BLIPSCAN)Tj -/TT8 1 Tf -4.8008 0 TD -0.0656 Tw -[( described below are available for accessing these internal blips. These)]TJ --13.3757 -1.2889 TD -0 Tw -(functions currently know about four different types of blips:)Tj -/TT12 1 Tf -10.2667 -2 TD -(*FN*)Tj -/TT8 1 Tf -3.0667 0 TD -(The name of a function about to be called)Tj -/TT12 1 Tf --5.4667 -1.8444 TD -(*ARGVAL*)Tj -/TT8 1 Tf -5.4667 0 TD -(An argument for a function about to be called)Tj -/TT12 1 Tf --4.2667 -1.8444 TD -(*FORM*)Tj -/TT8 1 Tf -4.2667 0 TD -(A form in the process of evaluation)Tj -/TT12 1 Tf --4.2667 -1.8444 TD -(*TAIL*)Tj -/TT8 1 Tf -4.2667 0 TD -(The tail of a )Tj -/TT12 1 Tf -5.4609 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( clause, implicit )Tj -/TT12 1 Tf -7.1587 0 TD -(PROGN)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, etc.)Tj -/TT12 1 Tf --31.5876 -1.9867 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(BLIPVAL)Tj -/F1 1 Tf -10 0 0 10 193.2 246.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 246.86 Tm -(BLIPTYP)Tj -/F2 1 Tf -10 0 0 10 233.8761 246.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 236.6561 246.86 Tm -(IPOS)Tj -/F2 1 Tf -10 0 0 10 258.2596 246.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 261.0397 246.86 Tm -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22831.9([Function])]TJ --12.0715 -1.8444 TD -0.0722 Tw -(Returns the value of the specified blip of type )Tj -/TT14 1 Tf -20.9986 0 TD -0 Tw -(BLIPTYP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0722 Tw -[(. If )]TJ -/TT14 1 Tf -1.8866 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0722 Tw -[( is a number )]TJ -/TT12 1 Tf -5.9989 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -(, finds the)Tj -/TT12 1 Tf --35.4851 -1.2889 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0778 Tw -(th blip of the desired type, searching the control chain beginning at the frame specified)Tj --0.6001 -1.2889 TD -0.0489 Tw -(by the stack descriptor )Tj -/TT14 1 Tf -10.4539 0 TD -0 Tw -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0489 Tw -[(. If )]TJ -/TT14 1 Tf -1.8166 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[( is )]TJ -/TT12 1 Tf -1.3126 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[(, 1 is used. If )]TJ -/TT14 1 Tf -6.2948 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[( is )]TJ -/TT12 1 Tf -1.3126 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -(, returns the number of)Tj --29.5919 -1.2889 TD -0 Tw -(blips of the specified type at )Tj -/TT14 1 Tf -12.6675 0 TD -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT12 1 Tf --17.7345 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(SETBLIPVAL)Tj -/F1 1 Tf -10 0 0 10 209.4 175.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 175.58 Tm -(BLIPTYP)Tj -/F2 1 Tf -10 0 0 10 250.0761 175.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 252.8561 175.58 Tm -(IPOS)Tj -/F2 1 Tf -10 0 0 10 274.4597 175.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 277.2397 175.58 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 282.6405 175.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 285.4205 175.58 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-20122.9([Function])]TJ --14.7805 -1.8444 TD -0.1722 Tw -(Sets the value of the specified blip of type )Tj -/TT14 1 Tf -20.1755 0 TD -0 Tw -(BLIPTYP)Tj -/TT8 1 Tf -4.2007 0 TD -0.1722 Tw -[(. Searches for the )]TJ -/TT14 1 Tf -8.8499 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1722 Tw -(th blip of the)Tj --33.8262 -1.2889 TD -0.2878 Tw -(desired type, beginning with the frame specified by the stack descriptor )Tj -/TT14 1 Tf -35.1114 0 TD -0 Tw -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.2878 Tw -(, and)Tj --37.5117 -1.2889 TD -0 Tw -(following the control chain.)Tj --2.6667 -2 TD -(\()Tj -/TT18 1 Tf -0.333 0 TD -(BLIPSCAN)Tj -/TT16 1 Tf -4.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(BLIPTYP)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -[(\) )-25002.6([Function])]TJ --9.5677 -1.8444 TD -0.0867 Tw -(Returns a stack pointer to the frame in which a blip of type )Tj -/TT14 1 Tf -27.3567 0 TD -0 Tw -(BLIPTYP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0867 Tw -[( is located. Search)]TJ --31.5573 -1.2889 TD -0 Tw -(begins at the frame specified by the stack descriptor )Tj -/TT14 1 Tf -23.1494 0 TD -(IPOS)Tj -/TT8 1 Tf -2.4004 0 TD -( and follows the control chain.)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT16 19 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6305 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-13)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT4 1 Tf --26.718 -4.38 TD -(Generators)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 551.54 Tm -(A )Tj -/TT10 1 Tf -1.1878 0 TD -(generator)Tj -/TT8 1 Tf -3.8335 0 TD -0.16 Tw -[( is like a subroutine except that it retains information about previous times it has been)]TJ --5.0213 -1.2222 TD -0.12 Tw -[(called. Some of this state may be data \(for example, the seed in a random number generator\), and)]TJ -T* -0.0056 Tw -(some may be in program state \(as in a recursive generator which finds all the atoms in a list structure\).)Tj -T* -0 Tw -(For example, if )Tj -/TT12 1 Tf -6.8701 0 TD -(LISTGEN)Tj -/TT8 1 Tf -4.2007 0 TD -( is defined by:)Tj -/TT12 1 Tf --8.4041 -1.6667 TD -(\(DEFINEQ \(LISTGEN \(L\))Tj -1.3333 -1 TD -( \(if L then \(PRODUCE \(CAR L\)\))Tj -T* -( \(LISTGEN \(CDR L\)\)\)\))Tj -/TT8 1 Tf --4 -1.8444 TD -0.14 Tw -(we can use the function )Tj -/TT12 1 Tf -11.389 0 TD -0 Tw -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.14 Tw -[( \(described below\) to create a generator that uses )]TJ -/TT12 1 Tf -23.0832 0 TD -0 Tw -(LISTGEN)Tj -/TT8 1 Tf -4.2007 0 TD -0.14 Tw -[( to)]TJ --44.0738 -1.2889 TD -0 Tw -(produce the elements of a list one at a time, e.g.,)Tj -/TT12 1 Tf -2.6667 -1.6 TD -(\(SETQ GR \(GENERATOR \(LISTGEN \(A B C\)\)\)\))Tj -/TT8 1 Tf --2.6667 -1.8444 TD -(creates a generator, which can be called by)Tj -/TT12 1 Tf -2.6667 -1.6 TD -(\(GENERATE GR\))Tj -/TT8 1 Tf --2.6667 -1.8444 TD -0.0322 Tw -(to produce as values on successive calls, )Tj -/TT12 1 Tf -18.2158 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5322 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5322 0 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -[(. When )]TJ -/TT12 1 Tf -3.7397 0 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0322 Tw -[( \(not )]TJ -/TT12 1 Tf -2.3516 0 TD -0 Tw -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0322 Tw -(\) is called the first)Tj --37.3735 -1.2889 TD -0.0733 Tw -(time, it simply starts evaluating )Tj -/TT12 1 Tf -14.5971 0 TD -0.1756 Tw -(\(LISTGEN \(A B C\)\))Tj -/TT8 1 Tf -11.3284 0 TD -0.0733 Tw -(. )Tj -/TT12 1 Tf -0.8967 0 TD -0 Tw -(PRODUCE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0733 Tw -[( gets called from )]TJ -/TT12 1 Tf -7.851 0 TD -0 Tw -(LISTGEN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0733 Tw -(, and)Tj --43.0745 -1.2889 TD -0.1478 Tw -(pops back up to )Tj -/TT12 1 Tf -7.8924 0 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1478 Tw -[( with the indicated value after saving the state. When )]TJ -/TT12 1 Tf -25.6553 0 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1478 Tw -[( gets)]TJ --43.1493 -1.2889 TD -0.11 Tw -(called again, it continues from where the last )Tj -/TT12 1 Tf -20.923 0 TD -0 Tw -(PRODUCE)Tj -/TT8 1 Tf -4.2007 0 TD -0.11 Tw -[( left off. This process continues until finally)]TJ -/TT12 1 Tf --25.1237 -1.2889 TD -0 Tw -(LISTGEN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1344 Tw -[( completes and returns a value \(it doesnt matter what it is\). )]TJ -/TT12 1 Tf -28.5676 0 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1344 Tw -[( then returns GR)]TJ --37.5691 -1.2889 TD -0.0156 Tw -(itself as its value, so that the program that called )Tj -/TT12 1 Tf -21.7698 0 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0156 Tw -[( can tell that it is finished, i.e., there are no)]TJ --26.5706 -1.2889 TD -0 Tw -(more values to be generated.)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(GENERATOR)Tj -/F1 1 Tf -10 0 0 10 156 306.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.87 306.46 Tm -(FORM)Tj -/F2 1 Tf -10 0 0 10 180.4735 306.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 183.2535 306.46 Tm -(COMVAR)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19601.1([NLambda Function])]TJ --10.5622 -1.8444 TD -0.2956 Tw -(An nlambda function that creates a generator which uses )Tj -/TT14 1 Tf -28.099 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2956 Tw -[( to compute values.)]TJ -/TT12 1 Tf --30.4994 -1.2889 TD -0 Tw -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.2322 Tw -[( returns a )]TJ -/TT10 1 Tf -5.1508 0 TD -(generator handle)Tj -/TT8 1 Tf -6.9827 0 TD -[( which is represented by a dotted pair of stack)]TJ --17.5344 -1.2889 TD -0 Tw -(pointers.)Tj -/TT14 1 Tf -0 -2 TD -(COMVAR)Tj -/TT8 1 Tf -3.6006 0 TD -0.1544 Tw -[( is optional. If its value \()]TJ -/TT12 1 Tf -11.961 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1544 Tw -[( of\) is a generator handle, the list structure and)]TJ --17.962 -1.2889 TD -0 Tw -(stack pointers will be reused. Otherwise, a new generator handle will be constructed.)Tj -/TT12 1 Tf -0 -2 TD -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -( compiles open.)Tj -/TT12 1 Tf --8.0675 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(PRODUCE)Tj -/F1 1 Tf -10 0 0 10 145.2 199.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 199.18 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30050.7([Function])]TJ --4.8526 -1.8444 TD -0.1878 Tw -(Used from within a generator to return )Tj -/TT14 1 Tf -18.8296 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1878 Tw -[( as the value of the corresponding call to)]TJ -/TT12 1 Tf --20.6299 -1.2889 TD -0 Tw -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT12 1 Tf --7.4674 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(GENERATE)Tj -/F1 1 Tf -10 0 0 10 150.6 151.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 153.47 151.1 Tm -(HANDLE)Tj -/F2 1 Tf -10 0 0 10 185.8752 151.1 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 188.6552 151.1 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25541.3([Function])]TJ --9.3621 -1.8444 TD -0.2644 Tw -(Restarts the generator represented by )Tj -/TT14 1 Tf -18.1191 0 TD -0 Tw -(HANDLE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2644 Tw -(. )Tj -/TT14 1 Tf -1.2789 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2644 Tw -[( is returned as the value of the)]TJ -/TT12 1 Tf --24.7989 -1.2889 TD -0 Tw -(PRODUCE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0567 Tw -[( which last suspended the operation of the generator. When the generator runs)]TJ --4.2007 -1.2889 TD -0 Tw -(out of values, )Tj -/TT12 1 Tf -6.2158 0 TD -(GENERATE)Tj -/TT8 1 Tf -4.8008 0 TD -( returns )Tj -/TT14 1 Tf -3.7041 0 TD -(HANDLE)Tj -/TT8 1 Tf -3.6006 0 TD -( itself.)Tj --23.6546 -2.0667 TD -(Examples:)Tj -0 -2 TD -0.0167 Tw -(The following function will go down recursively through a list structure and produce the atoms in the)Tj -0 -1.2222 TD -0 Tw -(list structure one at a time.)Tj -/TT12 1 Tf -2.6667 -1.6 TD -(\(DEFINEQ \(LEAVESG \(L\))Tj -4.6667 -1 TD -(\(if \(ATOM L\))Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -57 0 obj -<< -/Length 6164 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-14)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 192 570.14 Tm -( then \(PRODUCE L\))Tj -0 -1 TD -( else \(LEAVESG \(CAR L\)\))Tj -T* -( \(if \(CDR L\))Tj -T* -( then \(LEAVESG \(CDR L\)])Tj -/TT8 1 Tf --7.3333 -1.8444 TD -0.0233 Tw -[(The following function prints each of these atoms as it appears. It illustrates how a loop can be set up)]TJ -0 -1.2222 TD -0 Tw -(to use a generator.)Tj -/TT12 1 Tf -2.6667 -1.6 TD -(\(DEFINEQ \(PLEAVESG1 \(L\))Tj -4.6667 -1 TD -(\(PROG \(X LHANDLE\))Tj -T* -( \(SETQ LHANDLE \(GENERATOR \(LEAVESG L\)\)\))Tj -T* -( LP \(SETQ X \(GENERATE LHANDLE\)\))Tj -T* -( \(if \(EQ X LHANDLE\))Tj -T* -( then \(RETURN NIL\)\))Tj -T* -( \(PRINT X\))Tj -T* -( \(GO LP\)\)])Tj -/TT8 1 Tf --7.3333 -1.8444 TD -0.1967 Tw -(The loop terminates when the value of the generator is )Tj -/TT12 1 Tf -26.3509 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.1967 Tw -[( to the dotted pair which is the value)]TJ --27.5511 -1.2889 TD -0.0622 Tw -(produced by the call to )Tj -/TT12 1 Tf -10.7452 0 TD -0 Tw -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0622 Tw -[(. A CLISP iterative operator, )]TJ -/TT12 1 Tf -13.3772 0 TD -0 Tw -(OUTOF)Tj -/TT8 1 Tf -3.0005 0 TD -0.0622 Tw -(, is provided which makes it)Tj --32.5238 -1.2889 TD -0.0933 Tw -(much easier to write the loop in )Tj -/TT12 1 Tf -14.9243 0 TD -0 Tw -(PLEAVESG1)Tj -/TT8 1 Tf -5.4009 0 TD -0.0933 Tw -(. )Tj -/TT12 1 Tf -0.9367 0 TD -0 Tw -(OUTOF)Tj -/TT8 1 Tf -3.0005 0 TD -0.0933 Tw -[( \(or )]TJ -/TT12 1 Tf -1.9606 0 TD -0 Tw -(outof)Tj -/TT8 1 Tf -3.0005 0 TD -0.0933 Tw -(\) can precede a form which is to be)Tj --29.2234 -1.2889 TD -0.0489 Tw -[(used as a generator. On each iteration, the iteration variable will be set to successive values returned)]TJ -0 -1.2222 TD -0.0756 Tw -[(by the generator; the loop will be terminated automatically when the generator runs out. Therefore,)]TJ -T* -0 Tw -(the following is equivalent to the above program )Tj -/TT12 1 Tf -21.8267 0 TD -(PLEAVESG1)Tj -/TT8 1 Tf -5.4009 0 TD -(:)Tj -/TT12 1 Tf --27.2275 -1.6667 TD -(\(DEFINEQ \(PLEAVESG2 \(L\) \(for X outof \(LEAVESG L\) do \(PRINT X\)\)])Tj -/TT8 1 Tf -0 -1.8444 TD -(Here is another example; the following form will print the first )Tj -/TT12 1 Tf -27.9316 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( atoms.)Tj -/TT12 1 Tf --28.5317 -1.6667 TD -(\(for X outof \(MAPATOMS \(FUNCTION PRODUCE\)\) as I from 1 to N do \(PRINT X\)\))Tj -/TT4 1 Tf -10 0 0 10 102 297.2 Tm -(Coroutines)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 294.49 m -558.01 294.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 280.54 Tm -0.0189 Tw -[(This package provides facilities for the creation and use of fully general coroutine structures. It uses a)]TJ -0 -1.2222 TD -0.0767 Tw -(stack pointer to preserve the state of a coroutine, and allows arbitrary switching between )Tj -/TT14 1 Tf -40.5685 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0767 Tw -[( different)]TJ --41.1686 -1.2889 TD -0.1244 Tw -[(coroutines, rather than just a call to a generator and return. This package is slightly more efficient)]TJ -0 -1.2222 TD -0.0133 Tw -(than the generator package described above, and allows more flexibility on specification of what to do)Tj -T* -0 Tw -(when a coroutine terminates.)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(COROUTINE)Tj -/F1 1 Tf -10 0 0 10 204 216.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.87 216.66 Tm -(CALLPTR)Tj -/F2 1 Tf -10 0 0 10 244.6761 216.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 247.4561 216.66 Tm -(COROUTPTR)Tj -/F2 1 Tf -10 0 0 10 296.0641 216.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 298.8441 216.66 Tm -(COROUTFORM)Tj -/F2 1 Tf -10 0 0 10 352.8528 216.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 355.6328 216.66 Tm -(ENDFORM)Tj -/TT12 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-5181.1([NLambda Function])]TJ --24.9822 -1.8444 TD -0.0922 Tw -(This nlambda function is used to create a coroutine and initialize the linkage. )Tj -/TT14 1 Tf -35.794 0 TD -0 Tw -(CALLPTR)Tj -/TT8 1 Tf --35.794 -1.2889 TD -(and )Tj -/TT14 1 Tf -2.0773 0 TD -(COROUTPTR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1344 Tw -[( are the names of two variables, which will be set to appropriate stack)]TJ --7.4782 -1.2889 TD -0.1267 Tw -[(pointers. If the values of )]TJ -/TT14 1 Tf -11.9519 0 TD -0 Tw -(CALLPTR)Tj -/TT8 1 Tf -4.2007 0 TD -0.1267 Tw -[( or )]TJ -/TT14 1 Tf -1.6943 0 TD -0 Tw -(COROUTPTR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1267 Tw -[( are already stack pointers, the stack)]TJ --23.2477 -1.2889 TD -0.3278 Tw -(pointers will be reused. )Tj -/TT14 1 Tf -12.5129 0 TD -0 Tw -(COROUTFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.3278 Tw -[( is the form which is evaluated to start the)]TJ --18.5139 -1.2889 TD -0 Tw -(coroutine; )Tj -/TT14 1 Tf -4.8675 0 TD -(ENDFORM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1556 Tw -[( is a form to be evaluated if )]TJ -/TT14 1 Tf -13.4984 0 TD -0 Tw -(COROUTFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.1556 Tw -[( actually returns when it)]TJ --28.5675 -1.2889 TD -0 Tw -(runs out of values.)Tj -/TT12 1 Tf -0 -2 TD -(COROUTINE)Tj -/TT8 1 Tf -5.4009 0 TD -( compiles open.)Tj -/TT12 1 Tf --8.0675 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(RESUME)Tj -/F1 1 Tf -10 0 0 10 187.8 104.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.67 104.18 Tm -(FROMPTR)Tj -/F2 1 Tf -10 0 0 10 228.4761 104.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 231.2561 104.18 Tm -(TOPTR)Tj -/F2 1 Tf -10 0 0 10 258.2605 104.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 261.0405 104.18 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22831.8([Function])]TJ --12.0716 -1.8444 TD -0.1389 Tw -[(Used to transfer control from one coroutine to another. )]TJ -/TT14 1 Tf -26.5131 0 TD -0 Tw -(FROMPTR)Tj -/TT8 1 Tf -4.2007 0 TD -0.1389 Tw -[( should be the stack)]TJ --30.7138 -1.2889 TD -0.1689 Tw -(pointer for the current coroutine, which will be smashed to preserve the current state.)Tj -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(TOPTR)Tj -/TT8 1 Tf -3.0005 0 TD -0.1211 Tw -[( should be the stack pointer which has preserved the state of the coroutine to be)]TJ --3.0005 -1.2889 TD -0.1389 Tw -(transferred to, and )Tj -/TT14 1 Tf -8.9006 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -[( is the value that is to be returned to the latter coroutine as the)]TJ --10.7008 -1.2889 TD -0 Tw -(value of the )Tj -/TT12 1 Tf -5.4541 0 TD -(RESUME)Tj -/TT8 1 Tf -3.6006 0 TD -( which suspended the operation of that coroutine.)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -60 0 obj -<< -/Length 4938 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-15)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.1967 Tw -(For example, the following is the way one might write the )Tj -/TT12 1 Tf -28.0164 0 TD -0 Tw -(LEAVES)Tj -/TT8 1 Tf -3.6006 0 TD -0.1967 Tw -[( program using the coroutine)]TJ --31.6169 -1.2889 TD -0 Tw -(package:)Tj -/TT12 1 Tf -4 -1.6 TD -(\(DEFINEQ \(LEAVESC \(L COROUTPTR CALLPTR\))Tj -0 -1 TD -( \(if \(ATOM L\))Tj -T* -( then \(RESUME COROUTPTR CALLPTR L\))Tj -T* -( else \(LEAVESC \(CAR L\) COROUTPTR CALLPTR\))Tj -T* -( \(if \(CDR L\) then \(LEAVESC \(CDR L\) COROUTPTR CALLPTR\)\)\)\)])Tj -/TT8 1 Tf --4 -1.8444 TD -(A function )Tj -/TT12 1 Tf -4.9849 0 TD -(PLEAVESC)Tj -/TT8 1 Tf -4.8008 0 TD -( which uses )Tj -/TT12 1 Tf -5.4126 0 TD -(LEAVESC)Tj -/TT8 1 Tf -4.2007 0 TD -( can be defined as follows:)Tj -/TT12 1 Tf --15.3989 -1.6667 TD -(\(DEFINEQ \(PLEAVESC \(L\))Tj -0 -1 TD -( \(bind PLHANDLE LHANDLE)Tj -T* -( first \(COROUTINE PLHANDLE LHANDLE)Tj -T* -( \(LEAVESC L LHANDLE PLHANDLE\))Tj -T* -( \(RETFROM PLEAVESC\)\))Tj -T* -( do \(PRINT \(RESUME PLHANDLE LHANDLE\)\)\)\)])Tj -/TT8 1 Tf --4 -1.8444 TD -(By )Tj -/TT12 1 Tf -1.4492 0 TD -(RESUME)Tj -/TT8 1 Tf -3.6006 0 TD -(ing )Tj -/TT12 1 Tf -1.7114 0 TD -(LEAVESC)Tj -/TT8 1 Tf -4.2007 0 TD -0.0322 Tw -[( repeatedly, this function will print all the leaves of list L and then return out)]TJ --10.9619 -1.2889 TD -0 Tw -(of )Tj -/TT12 1 Tf -1.2378 0 TD -(PLEAVESC)Tj -/TT8 1 Tf -4.8008 0 TD -0.1089 Tw -[( via the )]TJ -/TT12 1 Tf -3.8198 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1089 Tw -[(. The )]TJ -/TT12 1 Tf -3.0005 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1089 Tw -[( is necessary to break out of the non-terminating do-)]TJ --21.2603 -1.2889 TD -0 Tw -(loop. This was done to illustrate the additional flexibility allowed through the use of )Tj -/TT14 1 Tf -37.7363 0 TD -(ENDFORM)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --41.937 -2.0667 TD -0.0911 Tw -(We use two coroutines working on two trees in the example )Tj -/TT12 1 Tf -27.7854 0 TD -0 Tw -(EQLEAVES)Tj -/TT8 1 Tf -4.8008 0 TD -0.0911 Tw -(, defined below. )Tj -/TT12 1 Tf -7.9533 0 TD -0 Tw -(EQLEAVES)Tj -/TT8 1 Tf --40.5395 -1.2889 TD -0.0511 Tw -(tests to see whether two trees have the same leaf set in the same order, e.g., )Tj -/TT12 1 Tf -34.1747 0 TD -0.1211 Tw -(\(EQLEAVES \(A B C\))Tj --34.1747 -1.2889 TD -0 Tw -(\(A B \(C\)\)\))Tj -/TT8 1 Tf -6.6011 0 TD -( is true.)Tj -/TT12 1 Tf --2.6011 -1.6667 TD -(\(DEFINEQ \(EQLEAVES \(L1 L2\))Tj -0 -1 TD -( \(bind LHANDLE1 LHANDLE2 PE EL1 EL2)Tj -T* -( first \(COROUTINE PE LHANDLE1 \(LEAVESC L1 LHANDLE1 PE\) NO-MORE\))Tj -T* -( \(COROUTINE PE LHANDLE2 \(LEAVESC L2 LHANDLE2 PE\) NO-MORE\))Tj -T* -( do \(SETQ EL1 \(RESUME PE LHANDLE1\)\))Tj -T* -( \(SETQ EL2 \(RESUME PE LHANDLE2\)\))Tj -T* -( \(if \(NEQ EL1 EL2\))Tj -T* -( then \(RETURN NIL\)\))Tj -T* -( repeatuntil \(EQ EL1 NO-MORE\))Tj -T* -( finally \(RETURN T\)\)\)])Tj -/TT4 1 Tf -10 0 0 10 54 232.4 Tm -(Possibilities Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 229.69 m -510.01 229.69 l -S -BT -/TT8 1 Tf -9 0 0 9 78 215.74 Tm -0.2378 Tw -[(A possibilities list is the interface between a generator and a consumer. The possibilities list is)]TJ -0 -1.2222 TD -0.1233 Tw -(initialized by a call to )Tj -/TT12 1 Tf -10.3271 0 TD -0 Tw -(POSSIBILITIES)Tj -/TT8 1 Tf -7.8013 0 TD -0.1233 Tw -(, and elements are obtained from it by using )Tj -/TT12 1 Tf -20.8473 0 TD -0 Tw -(TRYNEXT)Tj -/TT8 1 Tf -4.2007 0 TD -0.1233 Tw -[(. By)]TJ --43.1764 -1.2889 TD -0.0433 Tw -(using the spaghetti stack to maintain separate environments, this package allows a regime in which a)Tj -0 -1.2222 TD -0.0233 Tw -(generator can put a few items in a possibilities list, suspend itself until they have been consumed, and)Tj -T* -0 Tw -(be subsequently aroused and generate some more.)Tj -/TT12 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(POSSIBILITIES)Tj -/F1 1 Tf -10 0 0 10 177.6123 151.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.4823 151.86 Tm -(FORM)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21109.3([NLambda Function])]TJ --9.0541 -1.8444 TD -0.0933 Tw -(This nlambda function is used for the initial creation of a possibilities list. )Tj -/TT14 1 Tf -34.1641 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( will be)]TJ --36.5645 -1.2889 TD -0.0822 Tw -[(evaluated to create the list. It should use the functions )]TJ -/TT12 1 Tf -25.2165 0 TD -0 Tw -(NOTE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[( and )]TJ -/TT12 1 Tf -2.3573 0 TD -0 Tw -(AU-REVOIR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0822 Tw -[( described)]TJ --35.375 -1.2889 TD -0.0178 Tw -[(below to generate possibilities. Normally, one would set some variable to the possibilities)]TJ -0 -1.2222 TD -0 Tw -(list which is returned, so it can be used later, e.g.:)Tj -/TT12 1 Tf -4 -1.6 TD -(\(SETQ PLIST \(POSSIBILITIES \(GENERFN V1 V2\)\)\).)Tj --4 -1.8444 TD -(POSSIBILITIES)Tj -/TT8 1 Tf -7.8013 0 TD -( compiles open.)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -63 0 obj -<< -/Length 7224 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-16)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 568.26 Tm -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(NOTE)Tj -/F1 1 Tf -10 0 0 10 177 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.87 568.26 Tm -(VAL)Tj -/F2 1 Tf -10 0 0 10 196.0726 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 198.8526 568.26 Tm -(LSTFLG)Tj -/TT12 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27941.2([Function])]TJ --6.9621 -1.8444 TD -0.0033 Tw -(Used within a generator to put items on the possibilities list being generated. If )Tj -/TT14 1 Tf -35.4289 0 TD -0 Tw -(LSTFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.0011 Tc -0.0022 Tw -( is)Tj --39.0295 -1.2889 TD -0 Tc -0.09 Tw -(equal to )Tj -/TT12 1 Tf -3.9852 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT14 1 Tf -0.59 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is treated as a single item. If )]TJ -/TT14 1 Tf -13.8369 0 TD -0 Tw -(LSTFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.09 Tw -[( is non-)]TJ -/TT12 1 Tf -3.4378 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -(, then the list )Tj -/TT14 1 Tf -6.2985 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is)]TJ -/TT12 1 Tf --38.9501 -1.2889 TD -0 Tw -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0289 Tw -[(ed on the end of the possibilities list. Note that it is perfectly reasonable to create a)]TJ --3.0005 -1.2889 TD -0.0133 Tw -(possibilities list using a second generator, and )Tj -/TT12 1 Tf -20.65 0 TD -0 Tw -(NOTE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( that list as possibilities for the current)]TJ --23.0504 -1.2889 TD -0.3678 Tw -(generator with )Tj -/TT14 1 Tf -7.5271 0 TD -0 Tw -(LSTFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.3678 Tw -[( equal to )]TJ -/TT12 1 Tf -5.1585 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3678 Tw -[(. The lower generator will be resumed at the)]TJ --16.8863 -1.2889 TD -0 Tw -(appropriate point.)Tj -/TT12 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(AU-REVOIR)Tj -/F1 1 Tf -10 0 0 10 204 474.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.87 474.38 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24112.9([NoSpread Function])]TJ --6.0526 -1.8444 TD -(Puts )Tj -/TT14 1 Tf -2.2148 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0078 Tw -[( on the possibilities list if it is given, and then suspends the generator and returns)]TJ --4.0151 -1.2889 TD -0.1767 Tw -(to the consumer in such a fashion that control will return to the generator at the )Tj -/TT12 1 Tf -38.2075 0 TD -0 Tw -(AU-)Tj --38.2075 -1.2889 TD -(REVOIR)Tj -/TT8 1 Tf -3.6006 0 TD -( if the consumer exhausts the possibilities list.)Tj -/TT12 1 Tf --3.6006 -2.0667 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0867 Tw -[( is not put on the possibilities list unless it is explicitly given as an argument to )]TJ -/TT12 1 Tf -36.3981 0 TD -0 Tw -(AU-)Tj --38.1984 -1.2889 TD -(REVOIR)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -(, i.e., )Tj -/TT12 1 Tf -2.3989 0 TD -0 Tw -(\(AU-REVOIR\))Tj -/TT8 1 Tf -6.6011 0 TD -0.0644 Tw -[( and )]TJ -/TT12 1 Tf -2.3218 0 TD -0.1544 Tw -(\(AU-REVOIR NIL\))Tj -/TT8 1 Tf -9.1559 0 TD -0.0644 Tw -[( are )]TJ -/TT10 1 Tf -2.0029 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0644 Tw -[( the same. )]TJ -/TT12 1 Tf -5.1806 0 TD -0 Tw -(AU-REVOIR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0644 Tw -[( and)]TJ -/TT12 1 Tf --37.9957 -1.2889 TD -0 Tw -(ADIEU)Tj -/TT8 1 Tf -3.0005 0 TD -( are lambda nospreads to enable them to distinguish these two cases.)Tj -/TT12 1 Tf --5.6672 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(ADIEU)Tj -/F1 1 Tf -10 0 0 10 182.4 372.9 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 372.9 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26512.9([NoSpread Function])]TJ --3.6526 -1.8444 TD -(Like )Tj -/TT12 1 Tf -2.187 0 TD -(AU-REVOIR)Tj -/TT8 1 Tf -5.4009 0 TD -( but releases the generator instead of suspending it.)Tj -/TT12 1 Tf --10.2546 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(TRYNEXT)Tj -/F1 1 Tf -10 0 0 10 193.2 336.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 336.42 Tm -(PLST)Tj -/F2 1 Tf -10 0 0 10 217.6735 336.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 220.4535 336.42 Tm -(ENDFORM)Tj -/F2 1 Tf -10 0 0 10 258.2596 336.42 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 261.0397 336.42 Tm -(VAL)Tj -/TT12 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18091.9([NLambda Function])]TJ --12.0715 -1.8444 TD -0.1122 Tw -[(This nlambda function allows a consumer to use a possibilities list. It removes the first)]TJ -0 -1.2222 TD -0.0444 Tw -(item from the possibilities list named by )Tj -/TT14 1 Tf -18.3121 0 TD -0 Tw -(PLST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( \(i.e. )]TJ -/TT14 1 Tf -2.1919 0 TD -0 Tw -(PLST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( must be an atom whose value is)]TJ --25.3048 -1.2889 TD -0.23 Tw -[(a possiblities list\), and returns that item, provided it is not a generator handle. If a)]TJ -0 -1.2222 TD -0.3511 Tw -[(generator handle is encountered, the generator is reawakened. When it returns a)]TJ -T* -0.0522 Tw -[(possibilities list, this list is added to the front of the current list. When a call to )]TJ -/TT12 1 Tf -35.7901 0 TD -0 Tw -(TRYNEXT)Tj -/TT8 1 Tf --35.7901 -1.2889 TD -0.0256 Tw -(causes a generator to be awakened, )Tj -/TT14 1 Tf -15.9805 0 TD -0 Tw -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( is returned as the value of the )]TJ -/TT12 1 Tf -13.8045 0 TD -0 Tw -(AU-REVOIR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0256 Tw -[( which)]TJ --36.9862 -1.2889 TD -0.2733 Tw -[(put that generator to sleep. If )]TJ -/TT14 1 Tf -15.2522 0 TD -0 Tw -(PLST)Tj -/TT8 1 Tf -2.4004 0 TD -0.2733 Tw -[( is empty, it evaluates )]TJ -/TT14 1 Tf -11.2109 0 TD -0 Tw -(ENDFORM)Tj -/TT8 1 Tf -4.2007 0 TD -0.2733 Tw -[( in the callers)]TJ --33.0642 -1.2889 TD -0 Tw -(environment.)Tj -/TT12 1 Tf -0 -2 TD -(TRYNEXT)Tj -/TT8 1 Tf -4.2007 0 TD -( compiles open.)Tj -/TT12 1 Tf --6.8674 -2.2089 TD -(\()Tj -/TT18 1 Tf -0.6001 0 TD -(CLEANPOSLST)Tj -/F1 1 Tf -10 0 0 10 214.8 202.54 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.67 202.54 Tm -(PLST)Tj -/TT12 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27050.6([Function])]TJ --7.8527 -1.8444 TD -0.1711 Tw -(This function is provided to release any stack pointers which may be left in the )Tj -/TT14 1 Tf -37.5916 0 TD -0 Tw -(PLST)Tj -/TT8 1 Tf --37.5916 -1.2889 TD -(which was not used to exhaustion.)Tj --5.3333 -2 TD -0.09 Tw -(For example, )Tj -/TT12 1 Tf -6.1761 0 TD -0 Tw -(FIB)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is a generator for fibonnaci numbers. It starts out by )]TJ -/TT12 1 Tf -24.7607 0 TD -0 Tw -(NOTE)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -(ing its two arguments,)Tj --35.1374 -1.2889 TD -0.0267 Tw -[(then suspends itself. Thereafter, on being re-awakened, it will )]TJ -/TT12 1 Tf -28.0201 0 TD -0 Tw -(NOTE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0267 Tw -[( two more terms in the series and)]TJ --30.4205 -1.2889 TD -0 Tw -(suspends again. )Tj -/TT12 1 Tf -7.5767 0 TD -(PRINTFIB)Tj -/TT8 1 Tf -4.8008 0 TD -( uses )Tj -/TT12 1 Tf -2.4297 0 TD -(FIB)Tj -/TT8 1 Tf -1.8003 0 TD -( to print the first )Tj -/TT12 1 Tf -7.4736 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( fibonacci numbers.)Tj -/TT12 1 Tf --20.6812 -1.6667 TD -(\(DEFINEQ \(FIB \(F1 F2\))Tj -0 -1 TD -( \(do \(NOTE F1\))Tj -T* -( \(NOTE F2\))Tj -T* -( \(SETQ F1 \(IPLUS F1 F2\)\))Tj -T* -( \(SETQ F2 \(IPLUS F1 F2\)\))Tj -T* -( \(AU-REVOIR\)])Tj -/TT8 1 Tf --4 -1.8444 TD -0.0189 Tw -(Note that this )Tj -/TT12 1 Tf -6.3462 0 TD -0 Tw -(AU-REVOIR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0189 Tw -[( just suspends the generator and adds nothing to the possibilities list except)]TJ --11.7471 -1.2889 TD -0 Tw -(the generator.)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 23 0 R -/F2 24 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 18 0 R -/TT18 25 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -66 0 obj -<< -/Length 485 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-17)Tj -/TT6 1 Tf -10 0 0 10 321.18 612 Tm -(VARIABLE BINDINGS AND THE STACK)Tj -/TT12 1 Tf -9 0 0 9 114 570.14 Tm -( \(DEFINEQ \(PRINTFIB \(N\))Tj -0 -1 TD -( \(PROG \(\(FL \(POSSIBILITIES \(FIB 0 1\)\)\)\))Tj -T* -( \(RPTQ N \(PRINT \(TRYNEXT FL\)\)\))Tj -T* -( \(CLEANPOSLST FL\)])Tj -/TT8 1 Tf --4 -1.8444 TD -(Note that )Tj -/TT12 1 Tf -4.4165 0 TD -(FIB)Tj -/TT8 1 Tf -1.8003 0 TD -( itself will never terminate.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -69 0 obj -<< -/Length 203 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(11-18)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -71 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -78 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -79 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBFPOB+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 81 0 R ->> -endobj -81 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`Bi C9͎~03K6JJ4H#ZKS))R &EEZ>*R -B1MO3{w{s}ͼ ُ0L|`I'5-PMOEd\<*QV "@rqcTM~;:_uq=80w$@]7ʿ gn%θ:8]Чy^ -lw  {Vpa\8Oi -F(`4:ZvpqD C)j5 ؿ5 -&/lȁ-p [ȃM\x̹/lbS'Uxρ!8uB'I@) 9??va!! )Y w'-6[Rp'L#%/By܃+735Z_EdQhIXA^/=$a~64 ,6G3VFw a s\[#\9TUJN14Ub2JU(#3 qH\K2Ƶy)WMp@:}fW-d t׏\Ktl2:=a&H" >wI"j _^6YhDvL{*AƒX|9ND7ݶ,9Qdbh,_r %ju^'>RF fl/soΘO͔})M~ؗFiJrD^"4yǜ%eG"K \";2W2mW7ʖH3qF}6'7pٝ2־e>BJM~KVC(F:/E۽R1u9ulR:,{jMi*=5|{ uŞc))z.A.vۥVUlL\8KBH,)x] \uεk3K;\l즬}R#.1;Jw[mcxg6b齊#N.^=ˣ5xtc rr:kV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W wϽCW/LeRUZLyo,eє ).M:ϱs67F^^vhc6)]]-)~ۉ΅3bgVg~D7Z.1%k6ʍ(|'᝗|{dgV+iXSy탃+.-ӖlulG Y{4SRve ]W:eu' =(}pm[KqayglV>[4vbf  UFr ,9R,JF `5RM(|Lo -Mnj) %-W e=m jzzJ8TcO`;wy-I$EN2}x^-E7zsoh 羂+J9 :旐:$'Q k`5XE(U՝jFJ {T rlrtW"3YW2l⭶ =rRp*~ O8't"'zomAXdhSfy{O4=FEZ+ȉFLyMdm}L[efh6XG`];Y5(Sjp=Wf<9Clɦܫ -)<=u"3GFDWp -F%92 .¬:(ޝCMi>aÒGX4~ƖJo ֥bS16)up68Nb}*ro`S ǃ8`,8 +50| 1]x(h^ADGBM`8f3` -\[='a`0_dLA; //bzs 3xˤ~H&O?~{}wr]@g+u=-tȉjsB4 -Y:Pu@tCjA;5T*(E2@l)в'Yͭg?%!I@JM~t-+XN yJ^,qءېSv;k9i=+>4ōܜL,~Z^,{INZ޾z.Iz Ú88pX‰8YD!,0;Xz?!ECqQM!| iybG9_Xsnd٬LR&u UZQ)4Eҝk8Qw')3]vn٬|ڏtII+{ATZ Yi;[RR(BxNqPW#j4::'Uw+U, jϟ.Kɖ}X7qz&b&iTFq-YrѨenYdЎJߴjsF0)Y~9Ccŷe @19|g/di& r_c,sMي#< ܴy6 v~wPrA+|eߓlj;ns -endstream -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 82 0 R ->> -endobj -24 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 83 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 71 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 722 611 0 722 778 -667 0 722 667 611 0 667 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 72 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 86 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 778 722 278 0 667 556 833 722 0 -667 0 722 667 611 722 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 73 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [250 278 0 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 0 500 500 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 786 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 74 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 667 0 0 0 0 0 0 0 0 0 944 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 75 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [600 600 0 600 0 0 600 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 0 600 600 0 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 0 0 0 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 76 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 0 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 77 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 500 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 78 0 R ->> -endobj -25 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 600 600 600 600 600 600 600 600 600 0 600 600 -600 600 600 600 0 600 600 600 600 600 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 79 0 R ->> -endobj -47 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBFPOB+Symbol -/Encoding /Identity-H -/DescendantFonts [ 84 0 R ] -/ToUnicode 85 0 R ->> -endobj -84 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBFPOB+Symbol -/FontDescriptor 80 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -85 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 [dld `xI} v+)}$Nс$x᎔!A~7-FYl88Lܺ5Q.SıCU yI)/]W'[dGCOB9_"(k y~CC% k_lA4 TJU$ivYT-g^izj$[pZq`j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 49 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -86 0 obj -<< -/S /D ->> -endobj -87 0 obj -<< -/Nums [0 86 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 15 0 R 20 0 R 26 0 R 29 0 R 32 0 R 35 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 48 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [44 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R] -/Count 8 -/Parent 48 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [11 0 R 49 0 R ] -/Count 18 -/MediaBox [0 0 612 792] ->> -endobj -88 0 obj -<< -/CreationDate (D:20210202102645-06'00') -/ModDate (D:20210202102645-06'00') -/Producer (Apple pstopdf) ->> -endobj -89 0 obj -<< -/Type /Catalog -/Pages 48 0 R -/PageLabels 87 0 R ->> -endobj -xref -0 90 -0000000000 65535 f -0000143252 00000 n -0000000016 00000 n -0000005376 00000 n -0000139018 00000 n -0000139229 00000 n -0000139665 00000 n -0000139981 00000 n -0000140538 00000 n -0000140941 00000 n -0000116005 00000 n -0000144829 00000 n -0000143333 00000 n -0000005529 00000 n -0000011524 00000 n -0000143417 00000 n -0000011667 00000 n -0000016623 00000 n -0000141492 00000 n -0000141960 00000 n -0000143501 00000 n -0000016791 00000 n -0000024965 00000 n -0000138666 00000 n -0000138841 00000 n -0000142312 00000 n -0000143585 00000 n -0000025168 00000 n -0000033804 00000 n -0000143669 00000 n -0000033994 00000 n -0000043478 00000 n -0000143753 00000 n -0000043680 00000 n -0000051780 00000 n -0000143837 00000 n -0000051982 00000 n -0000058565 00000 n -0000143921 00000 n -0000058767 00000 n -0000067314 00000 n -0000144005 00000 n -0000067493 00000 n -0000074841 00000 n -0000144089 00000 n -0000075031 00000 n -0000080913 00000 n -0000142615 00000 n -0000145089 00000 n -0000144966 00000 n -0000144173 00000 n -0000081128 00000 n -0000089154 00000 n -0000144257 00000 n -0000089358 00000 n -0000095716 00000 n -0000144341 00000 n -0000095918 00000 n -0000102135 00000 n -0000144425 00000 n -0000102325 00000 n -0000107316 00000 n -0000144509 00000 n -0000107495 00000 n -0000114772 00000 n -0000144593 00000 n -0000114963 00000 n -0000115500 00000 n -0000144677 00000 n -0000115631 00000 n -0000115886 00000 n -0000116146 00000 n -0000116343 00000 n -0000116549 00000 n -0000116744 00000 n -0000116944 00000 n -0000117147 00000 n -0000117338 00000 n -0000117539 00000 n -0000117744 00000 n -0000117946 00000 n -0000118136 00000 n -0000138244 00000 n -0000138456 00000 n -0000142758 00000 n -0000142961 00000 n -0000144761 00000 n -0000144789 00000 n -0000145181 00000 n -0000145304 00000 n -trailer -<< -/Size 90 -/Root 89 0 R -/Info 88 0 R -/ID [<1890920e509ca8932e6214f0f3fdc6a2><1890920e509ca8932e6214f0f3fdc6a2>] ->> -startxref -145374 -%%EOF diff --git a/docs/medley-irm/12-MISC.pdf b/docs/medley-irm/12-MISC.pdf deleted file mode 100644 index 9c9ee733..00000000 --- a/docs/medley-irm/12-MISC.pdf +++ /dev/null @@ -1,8726 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5909 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-1)Tj -/TT4 1 Tf -10 0 0 10 406.65 558.2 Tm -(12. MISCELLANEOUS)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 554.49 m -510.01 554.49 l -S -BT -/TT6 1 Tf -10 0 0 10 54 545.2 Tm -( )Tj -/TT4 1 Tf -0 -2.5 TD -(Greeting and Initialization Files)Tj -ET -1 w -54.01 517.49 m -510.01 517.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 503.54 Tm -0.06 Tw -[(Many of the features of Medley are controlled by variables that you can adjust to your own taste. In)]TJ -0 -1.2222 TD -0.0111 Tw -(addition, you can modify the action of system functions in ways not specifically provided for by using)Tj -/TT10 1 Tf -T* -0 Tw -(ADVISE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2678 Tw -[( \(see the Advise Functions section of Chapter 15\). To encourage customizing Medleys)]TJ --3.6006 -1.2889 TD -0.0611 Tw -(environment, it includes a facility for automatically loading initialization files \(or init files\) when it)Tj -0 -1.2222 TD -0.0178 Tw -[(is first started. Each user can have a separate user init file that customizes Medleys environment to)]TJ -T* -0.0956 Tw -[(his/her tastes. In addition, there can be a site init file that applies to all users at a given physical)]TJ -T* -0 Tw -(site, setting system variables that are the same for all users such as the name of the nearest printer, etc.)Tj -0 -2 TD -0.0744 Tw -(The process of loading init files, also known as greeting, occurs when a Medley system created by)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.09 Tw -[( \(see the Saving Virtual Memory State section below\) is started for the first time. The user)]TJ --4.2007 -1.2889 TD -0.1522 Tw -(can also explicitly invoke the greeting operation at any time via the function )Tj -/TT10 1 Tf -35.8324 0 TD -0 Tw -(GREET)Tj -/TT8 1 Tf -3.0005 0 TD -0.1522 Tw -[( \(below\). The)]TJ --38.8329 -1.2889 TD -0 Tw -(process of greeting includes the following steps:)Tj -0 -2 TD -0.0067 Tw -[(1.)-583.3(Any previous greeting operation is undone. The side effects of the greeting operation are stored on)]TJ -1.3333 -1.2222 TD -0.1144 Tw -(a global variable as well as on the history list, thus enabling the previous greeting to be undone)Tj -T* -0 Tw -(even if it has dropped off of the bottom of the history list. )Tj --1.3333 -2 TD -[(2.)-583.3(All of the items on the list )]TJ -/TT10 1 Tf -12.9593 0 TD -(PREGREETFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -( are evaluated.)Tj --20.7606 -2.0667 TD -0.0433 Tw -[(3.)-583.3(The site init file is loaded. )]TJ -/TT10 1 Tf -13.4672 0 TD -0 Tw -(GREET)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -[( looks for a file by the name )]TJ -/TT10 1 Tf -12.8179 0 TD -0 Tw -({DSK}INIT.LISP)Tj -/TT8 1 Tf -8.4014 0 TD -0.0433 Tw -[(. If this is found,)]TJ --36.3536 -1.2889 TD -0.0267 Tw -[(it is loaded. If it is not found, the system prints )]TJ -/TT10 1 Tf -21.4186 0 TD -0.0633 Tw -(Please enter name of system init file)Tj --21.4186 -1.2889 TD -0.5644 Tw -(\(e.g. {server}INIT.extension\):)Tj -/TT8 1 Tf -25.1685 0 TD -0.2356 Tw -[( and waits for you to type a file name,)]TJ --25.1685 -1.2889 TD -0.0367 Tw -[(followed by a carriage return. If you just type a carriage return without typing a file name, no site)]TJ -0 -1.2222 TD -0.1311 Tw -(init file is loaded. )Tj -/TT12 1 Tf -8.7923 0 TD -0 Tw -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.1311 Tw -[(: The site init file is loaded with )]TJ -/TT14 1 Tf -15.5438 0 TD -0 Tw -(LDFLG)Tj -/TT8 1 Tf -3.0005 0 TD -0.1311 Tw -[( set to )]TJ -/TT10 1 Tf -3.2444 0 TD -0 Tw -(SYSLOAD)Tj -/TT8 1 Tf -4.2007 0 TD -0.1311 Tw -(, so that no file)Tj --37.0038 -1.2889 TD -0 Tw -(package information is saved, and nothing is printed out. )Tj --1.3333 -2 TD -0.1478 Tw -[(4.)-583.3(The user init file is loaded. The user init file is found by using the variable )]TJ -/TT10 1 Tf -36.9325 0 TD -0 Tw -(USERGREETFILES)Tj -/TT8 1 Tf --35.5991 -1.2889 TD -0.0133 Tw -[(\(described below\), which is normally set in the site init file. The user init file is loaded with normal)]TJ -0 -1.2222 TD -0.0022 Tw -(file package settings, but under errorset protection and with )Tj -/TT10 1 Tf -26.812 0 TD -0 Tw -(PRETTYHEADER)Tj -/TT8 1 Tf -7.2012 0 TD -0.0003 Tc -0.0019 Tw -( set to )Tj -/TT10 1 Tf -2.8577 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0002 Tc -0.002 Tw -( to suppress)Tj --38.6712 -1.2889 TD -0 Tc -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(File created)Tj -/TT8 1 Tf -7.2012 0 TD -( message.)Tj --10.1717 -2.0667 TD -[(5.)-583.3(All of the items on the list )]TJ -/TT10 1 Tf -12.9593 0 TD -(POSTGREETFORMS)Tj -/TT8 1 Tf -8.4014 0 TD -( are evaluated.)Tj --21.3607 -2.0667 TD -0.1156 Tw -[(6.)-583.3(The greeting )]TJ -/TT10 1 Tf -7.4028 0 TD -0 Tw -(Hello, )Tj -/TT14 1 Tf -5.0797 0 TD -(XXX)Tj -/TT10 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf -0.6001 0 TD -0.1156 Tw -( is printed, where )Tj -/TT14 1 Tf -8.9813 0 TD -0 Tw -(XXX)Tj -/TT8 1 Tf -1.8003 0 TD -0.1156 Tw -[( is the value of the variable )]TJ -/TT10 1 Tf -12.9393 0 TD -0 Tw -(FIRSTNAME)Tj -/TT8 1 Tf -5.4009 0 TD -0.1156 Tw -[( \(if)]TJ --42.6713 -1.2889 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.19 Tw -[(\). The variable )]TJ -/TT10 1 Tf -7.5911 0 TD -0 Tw -(GREETDATES)Tj -/TT8 1 Tf -6.001 0 TD -0.19 Tw -[( \(below\) can be set to modify this greeting for particular)]TJ --17.4353 -1.2889 TD -0 Tw -(dates.)Tj -/TT10 1 Tf -1.3333 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(GREET)Tj -/F1 1 Tf -10 0 0 10 134.4 118.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.27 118.86 Tm -(NAME)Tj -/F2 1 Tf -10 0 0 10 158.8735 118.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 161.6535 118.86 Tm -()Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29741.6([Function])]TJ --5.1617 -1.8444 TD -0.0122 Tw -(Performs the greeting for person whose username is )Tj -/TT14 1 Tf -23.4332 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[( \(if )]TJ -/TT14 1 Tf -1.4815 0 TD -0 Tw -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -0.0289 Tw -[( = NIL)]TJ -/TT8 1 Tf -3.6584 0 TD -0.0122 Tw -(, uses the login)Tj --33.3739 -1.2889 TD -0 Tw -(name\). When Medley first starts up, it performs )Tj -/TT10 1 Tf -21.5728 0 TD -(\(GREET\))Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -17 0 obj -<< -/Length 6245 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-2)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.26 Tm -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(GREETFILENAME)Tj -/F1 1 Tf -10 0 0 10 225.6 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.47 568.26 Tm -(USER)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25850.6([Function])]TJ --9.0527 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.021 0 TD -(USER)Tj -/TT8 1 Tf -2.4004 0 TD -0.1011 Tw -[( is )]TJ -/TT10 1 Tf -1.4171 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6011 0 TD -(GREETFILENAME)Tj -/TT8 1 Tf -7.8013 0 TD -0.1011 Tw -[( returns the file name of the site init file. If the file name)]TJ --13.841 -1.2889 TD -0.2078 Tw -[(doesnt exist, you are prompted for it. Otherwise, )]TJ -/TT14 1 Tf -24.16 0 TD -0 Tw -(USER)Tj -/TT8 1 Tf -2.4004 0 TD -0.2078 Tw -[( is interpreted to be a users)]TJ --26.5604 -1.2889 TD -0 Tw -(system name, and )Tj -/TT10 1 Tf -8.2285 0 TD -(GREETFILENAME)Tj -/TT8 1 Tf -7.8013 0 TD -( returns the file name for the user init file \(if it exists\).)Tj -/TT16 1 Tf --18.6965 -2.0667 TD -(USERGREETFILES)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ -/TT10 1 Tf --5.7333 -1.8444 TD -(USERGREETFILES)Tj -/TT8 1 Tf -8.4014 0 TD -0.0567 Tw -[( specifies a series of file names to try as the user init file. The value of)]TJ -/TT10 1 Tf --8.4014 -1.2889 TD -0 Tw -(USERGREETFILES)Tj -/TT8 1 Tf -8.4014 0 TD -0.1744 Tw -[( is a list, where each element is a list of symbols. For each item in)]TJ -/TT10 1 Tf --8.4014 -1.2889 TD -0 Tw -(USERGREETFILES)Tj -/TT8 1 Tf -8.4014 0 TD -0.1522 Tw -(, the user name is substituted for the symbol )Tj -/TT10 1 Tf -21.1971 0 TD -0 Tw -(USER)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[( and the value of)]TJ -/TT10 1 Tf --31.9989 -1.2889 TD -0 Tw -(COMPILE)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf -0.25 0 TD -(EXT)Tj -/TT8 1 Tf -1.8003 0 TD -0.1756 Tw -[( \(see the Cimpiler Functions section of Chapter 18\) is substituted for the)]TJ --6.251 -1.2889 TD -0 Tw -(symbol )Tj -/TT10 1 Tf -3.5352 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0322 Tw -[(, and the symbols are packed into a single file name. The first such file that is)]TJ --5.3354 -1.2889 TD -0 Tw -(found is the user init file.)Tj -0 -2 TD -(For example, suppose that the value of )Tj -/TT10 1 Tf -17.3623 0 TD -(USERGREETFILES)Tj -/TT8 1 Tf -8.4014 0 TD -( was)Tj -/TT10 1 Tf --20.4303 -2 TD -(\(\({ERIS}< USER >LISP>INIT. COM\))Tj -0 -1 TD -( \({ERIS}< USER >LISP>INIT\))Tj -T* -( \({ERIS}< USER >INIT. COM\))Tj -T* -( \({ERIS}< USER >INIT\)\))Tj -/TT8 1 Tf --5.3333 -1.8444 TD -0.0633 Tw -(If the user name was )Tj -/TT10 1 Tf -9.7263 0 TD -0 Tw -(JONES)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -(, and the value of )Tj -/TT10 1 Tf -8.2136 0 TD -0 Tw -(COMPILE.EXT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0633 Tw -[( was )]TJ -/TT10 1 Tf -2.3845 0 TD -0 Tw -(DCOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -(, then this would)Tj --32.3264 -1.2889 TD -0.0778 Tw -(search for the files )Tj -/TT10 1 Tf -8.6138 0 TD -0.1856 Tw -({ERIS}LISP>INIT.DCOM, {ERIS}LISP>INIT,)Tj --8.6138 -1.2222 TD -0 Tw -({ERIS}INIT.DCOM, and {ERIS}INIT.)Tj -/TT12 1 Tf -0 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.24 Tw -[(: The file name specifications in )]TJ -/TT10 1 Tf -17.0404 0 TD -0 Tw -(USERGREETFILES)Tj -/TT8 1 Tf -8.4014 0 TD -0.24 Tw -[( should be fully qualified,)]TJ --27.6639 -1.2889 TD -0.2067 Tw -[(including all host and directory information. The directory search path \(the value of)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DIRECTORIES)Tj -/TT8 1 Tf -6.6011 0 TD -0.0222 Tw -(, see the Searching File Directories section of Chapter 24\) is )Tj -/TT18 1 Tf -26.4393 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0222 Tw -[( used to find)]TJ --34.3734 -1.2889 TD -0 Tw -(the user greet files.)Tj -/TT16 1 Tf --2.6667 -2 TD -(GREETDATES)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -0.1244 Tw -(The value of )Tj -/TT10 1 Tf -6.1141 0 TD -0 Tw -(GREETDATES)Tj -/TT8 1 Tf -6.001 0 TD -0.1244 Tw -[( can be used to specify special greeting messages for various)]TJ --12.115 -1.2889 TD -0.1333 Tw -(dates. )Tj -/TT10 1 Tf -3.3565 0 TD -0 Tw -(GREETDATES)Tj -/TT8 1 Tf -6.001 0 TD -0.1333 Tw -[( is a list of elements of the form )]TJ -/TT10 1 Tf -15.2415 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(DATESTRING)Tj -/TT10 1 Tf -6.001 0 TD -0.3189 Tw -[( . )]TJ -/TT14 1 Tf -2.4381 0 TD -0 Tw -(STRING)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1333 Tw -(, e.g.)Tj -/TT10 1 Tf --37.8388 -1.2889 TD -0.15 Tw -(\("25-DEC" . "Merry Christmas"\))Tj -/TT8 1 Tf -18.4529 0 TD -0.0622 Tw -[(. The user can add entries to this list in his/her)]TJ -/TT10 1 Tf --18.4529 -1.2889 TD -0 Tw -(INIT.LISP)Tj -/TT8 1 Tf -5.4009 0 TD -0.6544 Tw -[( file by using a )]TJ -/TT10 1 Tf -9.9817 0 TD -0 Tw -(ADDVARS)Tj -/TT8 1 Tf -4.2007 0 TD -0.6544 Tw -[( file package command like )]TJ -/TT10 1 Tf -15.6179 0 TD -0 Tw -(\(ADDVARS)Tj --35.2012 -1.2889 TD -0.4289 Tw -(\(GREETDATES \("8-FEB" . "Happy Birthday"\)\)\))Tj -/TT8 1 Tf -26.9197 0 TD -0.1789 Tw -[(. On the specified date, the)]TJ -/TT10 1 Tf --26.9197 -1.2889 TD -0 Tw -(GREET)Tj -/TT8 1 Tf -3.0005 0 TD -( will use the indicated salutation.)Tj --3.0005 -2.0667 TD -0.0589 Tw -(It is impossible to give a complete list of all of the variables and functions you may want)Tj -0 -1.2222 TD -0.01 Tw -[(to set in your init files. The default values for system variables are chosen in the hope that)]TJ -T* -0.0367 Tw -(they will be correct for the majority of users, so many users get along with very small init)Tj -T* -0.07 Tw -[(files. The following describes some of the variables that users may want to reset in their)]TJ -T* -0 Tw -(init files:)Tj -0.4878 -2 TD -0.5722 Tw -[(Directories)-668.5(The variables )]TJ -/TT10 1 Tf -12.8285 0 TD -0 Tw -(DIRECTORIES)Tj -/TT8 1 Tf -6.6011 0 TD -0.5722 Tw -[( and )]TJ -/TT10 1 Tf -3.3373 0 TD -0 Tw -(LISPUSERSDIRECTORIES)Tj -/TT8 1 Tf -12.002 0 TD -0.5722 Tw -[( \(see the)]TJ --29.2567 -1.2889 TD -0.12 Tw -(Searching File Directories section of Chapter 24\) contain lists of directories)Tj -0 -1.2222 TD -0.1822 Tw -(used when searching for files. )Tj -/TT10 1 Tf -14.7818 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT8 1 Tf -7.8013 0 TD -0.1822 Tw -[( \(see the Incomplete File)]TJ --22.5831 -1.2889 TD -0.1367 Tw -(Names section of Chapter 24\) determines the default directory used when)Tj -0 -1.2222 TD -0 Tw -(you call )Tj -/TT10 1 Tf -3.731 0 TD -(CONN)Tj -/TT8 1 Tf -2.4004 0 TD -( with no argument.)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -21 0 obj -<< -/Length 5523 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-3)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 99.71 569.54 Tm -[(Fonts and Printing)-666.7(The )-425.6(variables )]TJ -/TT10 1 Tf -15.9441 0 TD -(DISPLAYFONTDIRECTORIES)Tj -/TT8 1 Tf -13.2022 0 TD -(, )Tj -/TT10 1 Tf -0.9256 0 TD -(DISPLAYFONTEXTENSIONS)Tj -/TT8 1 Tf -12.6021 0 TD -(,)Tj -/TT10 1 Tf --33.7527 -1.2889 TD -(INTERPRESSFONTDIRECTORIES)Tj -/TT8 1 Tf -15.0024 0 TD -0.2389 Tw -(, and )Tj -/TT10 1 Tf -2.9206 0 TD -0 Tw -(PRESSFONTWIDTHSFILES)Tj -/TT8 1 Tf -12.002 0 TD -0.2389 Tw -[( \(see the)]TJ --29.925 -1.2889 TD -0.1856 Tw -(Font Files and Font Directories section of Chapter 27\) must be set before)Tj -0 -1.2222 TD -0.06 Tw -(fonts can be automatically loaded from files. )Tj -/TT10 1 Tf -20.5684 0 TD -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -11.4019 0 TD -0.06 Tw -[( \(see)]TJ --31.9702 -1.2889 TD -0.28 Tw -(Chapter 29\) should be set before attempting to generate hardcopy to a)Tj -0 -1.2222 TD -0 Tw -(printer.)Tj --8.5 -2 TD -(Network Systems)Tj -/TT10 1 Tf -8.5 0 TD -(CH.DEFAULT.ORGANIZATION)Tj -/TT8 1 Tf -13.8023 0 TD -0.2522 Tw -[( and )]TJ -/TT10 1 Tf -2.6973 0 TD -0 Tw -(CH.DEFAULT.DOMAIN)Tj -/TT8 1 Tf -10.2017 0 TD -0.2522 Tw -[( \(see the Name)]TJ --26.7012 -1.2889 TD -0.0278 Tw -(and Address Conventions section of Chapter 31\) should be set to the default)Tj -0 -1.2222 TD -0.09 Tw -[(NS organization and domain, when using NS network communications. If)]TJ -/TT10 1 Tf -T* -0 Tw -(CH.NET.HINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.1822 Tw -[( \(see the Clearinghouse Functions section of Chapter 31\) is)]TJ --6.6011 -1.2889 TD -0 Tw -(set, it can reduce the amount of time spent searching for a clearinghouse.)Tj --8.5911 -2 TD -[(Medley Executive)-665.3(The )-185.6(variable )]TJ -/TT10 1 Tf -14.7103 0 TD -(PROMPT#FLG)Tj -/TT8 1 Tf -6.001 0 TD -0.1856 Tw -[( \(see the Changing the Programmers Assistant)]TJ --12.1201 -1.2889 TD -0.0811 Tw -(section of Chapter 13\) determines whether an event number is printed at)Tj -0 -1.2222 TD -0.2411 Tw -[(the beginning of every input line. The function )]TJ -/TT10 1 Tf -23.3101 0 TD -0 Tw -(CHANGESLICE)Tj -/TT8 1 Tf -6.6011 0 TD -0.2411 Tw -[( \(see the)]TJ --29.9112 -1.2889 TD -0.0589 Tw -(Changing the Programmers Assistant section of Chapter 13\) can be used to)Tj -0 -1.2222 TD -0 Tw -(change the number of events that are remembered on the history list.)Tj --8.8189 -2 TD -(Copyright Notices)Tj -/TT10 1 Tf -8.8189 0 TD -(COPYRIGHTFLG)Tj -/TT8 1 Tf -7.2012 0 TD -(, )Tj -/TT10 1 Tf -0.5722 0 TD -(COPYRIGHTOWNERS)Tj -/TT8 1 Tf -9.0015 0 TD -0.0722 Tw -(, and )Tj -/TT10 1 Tf -2.5873 0 TD -0 Tw -(DEFAULTCOPYRIGHTOWNER)Tj -/TT8 1 Tf -12.6021 0 TD -0.0722 Tw -[( \(see)]TJ --31.9642 -1.2889 TD -0.3867 Tw -(the Copyright Notices section of Chapter 17\) control the inclusion of)Tj -0 -1.2222 TD -0 Tw -(copyright notices on source files.)Tj --8.8989 -2 TD -(Printing Functions)Tj -/TT10 1 Tf -8.8989 0 TD -(**COMMENT**FLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.4822 Tw -[( \(see the Comment Feature section of Chapter 26\))]TJ --8.4014 -1.2889 TD -0.1289 Tw -(determines how program comments are printed. )Tj -/TT10 1 Tf -22.9144 0 TD -0 Tw -(FIRSTCOL)Tj -/TT8 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.6289 0 TD -(PRETTYFLG)Tj -/TT8 1 Tf -5.4009 0 TD -(,)Tj --33.745 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0929 0 TD -(CLISPIFYPRETTYFLG)Tj -/TT8 1 Tf -10.2017 0 TD -0.15 Tw -[( \(see the Special Prettyprint Controls section of)]TJ --12.2945 -1.2889 TD -0.1911 Tw -(Chapter 26\) are among the many variables controlling how functions are)Tj -0 -1.2222 TD -0 Tw -(pretty printed.)Tj --9.6956 -2 TD -[(List Structure Editor)-667.7(The )-105.6(variable )]TJ -/TT10 1 Tf -15.6547 0 TD -(INITIALSLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1056 Tw -[( \(see the Time Stamps section of Chapter 16\) is)]TJ --12.5602 -1.2889 TD -0.2989 Tw -(used when time-stamps are inserted in a function when it is edited.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(EDITCHARACTERS)Tj -/TT8 1 Tf -8.4014 0 TD -0.0122 Tw -[( \(see the Time Stamps section of Chapter 16\) is used to set)]TJ --8.4014 -1.2889 TD -0 Tw -(the read macros used in the teletype editor.)Tj -/TT4 1 Tf -10 0 0 10 54 207.4 Tm -(Idle Mode)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 204.69 m -510.01 204.69 l -S -BT -/TT8 1 Tf -9 0 0 9 78 190.74 Tm -0.2678 Tw -(The Medley environment runs on small single-user computers, usually located in users offices.)Tj -0 -1.2222 TD -0.0344 Tw -[(Often, users leave their computers up and running for days, which can cause several problems. First,)]TJ -T* -0.0367 Tw -(the phosphor in the video display screen can be permanently marked if the same pattern is displayed)Tj -T* -0.0978 Tw -[(for a long time \(weeks\). Second, if you go away, leaving a Medley system running, another person)]TJ -T* -0.0544 Tw -(could possibly walk up and use the environment, taking advantage of any passwords that have been)Tj -T* -0 Tw -(entered. To solve these problems, Medley implements the concept of idle mode.)Tj -0 -2 TD -0.1244 Tw -(If no keyboard or mouse action has occurred for a specified time, Medley automatically enters idle)Tj -0 -1.2222 TD -0.0578 Tw -[(mode. While idle mode is on, the display screen is blacked out, to protect the phosphor. Idle mode)]TJ -T* -0.1911 Tw -(also runs a program to display some moving pattern on the black screen, so the screen does not)Tj -T* -0.0089 Tw -[(appear to be broken. Usually, idle mode can be exited by pressing any key on the keyboard or mouse.)]TJ -T* -0.0378 Tw -(However, you can optionally specify that idle mode should erase the current password cache when it)Tj -T* -0 Tw -(is entered., and require the next user to supply a password to exit idle mode.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -24 0 obj -<< -/Length 4502 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-4)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0767 Tw -(If either shift key is pressed while Medley is in idle mode, the current user name and the amount of)Tj -0 -1.2222 TD -0 Tw -(time spent idling are displayed in the prompt window while the key is depressed.)Tj -0 -2 TD -0.0611 Tw -(Idle mode can also be entered by calling the function )Tj -/TT10 1 Tf -24.1761 0 TD -0 Tw -(IDLE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -[( , or by selecting the Idle menu command)]TJ --26.5764 -1.2889 TD -0.0056 Tw -[(from the background menu \(see Chapter 28\). The Idle menu command has subitems that allow you to)]TJ -0 -1.2222 TD -0.1189 Tw -(interactively set the idle options \(display program, erasing password, etc.\) specified by the variable)Tj -/TT10 1 Tf -T* -0 Tw -(IDLE.PROFILE)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT16 1 Tf --4.5345 -2.0667 TD -(IDLE.PROFILE)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -0.0422 Tw -(The value of this variable is a property list \(see Chapter 3\) which controls most aspects of)Tj -0 -1.2222 TD -0 Tw -(idle mode. The following properties are recognized:)Tj -/TT10 1 Tf -5.8 -2 TD -(TIMEOUT)Tj -/TT8 1 Tf -4.8667 0 TD -0.0411 Tw -(Value is a number that determines how long \(in minutes\) Medley)Tj -0 -1.2889 TD -0.1811 Tw -[(will wait before automatically entering idle mode. If )]TJ -/TT10 1 Tf -25.1813 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1811 Tw -(, idle)Tj --26.9816 -1.2889 TD -0 Tw -(mode will never be entered automatically. Default is 10 minutes.)Tj -/TT10 1 Tf --4.2667 -2 TD -(FORGET)Tj -/TT8 1 Tf -4.2667 0 TD -0.1033 Tw -(If this is the symbol )Tj -/TT10 1 Tf -9.4146 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1033 Tw -(, your password will be erased when)Tj --12.4151 -1.2889 TD -0.1133 Tw -[(idle mode is entered. If non-)]TJ -/TT10 1 Tf -13.3992 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1133 Tw -(, your password will be erased)Tj --15.1995 -1.2889 TD -0.1289 Tw -[(when idle mode is exited. Initial value is )]TJ -/TT10 1 Tf -19.5155 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1289 Tw -[( \(erase password on)]TJ --20.1156 -1.2889 TD -0 Tw -(exit\).)Tj -0 -2 TD -0.1544 Tw -(If the password is erased on entry to idle mode \(value )Tj -/TT10 1 Tf -25.7428 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -(\),)Tj --28.7433 -1.2889 TD -0.1033 Tw -(any programs left running when idle mode is entered will fail if)Tj -0 -1.2222 TD -0.1478 Tw -(they try doing anything requiring passwords \(such as accessing)Tj -T* -0 Tw -(file servers\).)Tj -/TT10 1 Tf --9.0667 -2 TD -(ALLOWED.LOGINS)Tj -/TT8 1 Tf -9.0667 0 TD -0.0667 Tw -[(The value of this property can either be a list or a non-list. If the)]TJ -0 -1.2889 TD -0.1311 Tw -(value is )Tj -/TT10 1 Tf -3.9151 0 TD -0 Tw -(NIL )Tj -/TT8 1 Tf -2.716 0 TD -0.1311 Tw -(or any other non-list, idle mode is exited without)Tj --6.631 -1.2889 TD -0 Tw -(requesting login.)Tj -0 -2 TD -0.07 Tw -(If the value is a list the members of the list should be interpreted)Tj -0 -1.2222 TD -0 Tw -(as follows:)Tj -/TT10 1 Tf -0.0667 -2 TD -(*)Tj -/TT8 1 Tf -1.2667 0 TD -0.2622 Tw -(If the value is a list containing )Tj -/TT10 1 Tf -15.3277 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.2622 Tw -[( as its element, login is)]TJ --15.9278 -1.2889 TD -0.1456 Tw -[(required but anyone can exit idle mode. This will overwrite)]TJ -0 -1.2222 TD -0.2022 Tw -(the previous users user name and password each time idle)Tj -T* -0 Tw -(mode is exited.)Tj -/TT10 1 Tf --1.2667 -2 TD -(T)Tj -/TT8 1 Tf -1.2667 0 TD -0.1356 Tw -(Let the previous user \(as determined by )Tj -/TT10 1 Tf -18.8088 0 TD -0 Tw -(USERNAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.1356 Tw -(\) exit idle)Tj --23.6095 -1.2889 TD -0 Tw -(mode. If the username has not been set, this is equivalent to )Tj -/TT10 1 Tf -26.8389 0 TD -(*)Tj -/TT8 1 Tf --33.4355 -2.0667 TD -[(user name)-668.6(Let this specific user exit idle mode.)]TJ --0.7989 -2 TD -0.1311 Tw -[(group )131.1(name)-667.2(Let any member of this group \(an NS clearinghouse group\) exit)]TJ -6.0622 -1.2222 TD -0 Tw -(idle mode.)Tj -/TT10 1 Tf --7.8667 -2 TD -(AUTHENTICATE)Tj -/TT8 1 Tf -7.8667 0 TD -0.3789 Tw -(The value of this property determines the method used for)Tj -0 -1.2889 TD -0 Tw -(logging in. The value can be one of the following:)Tj -/TT10 1 Tf --4.1578 -2 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NS)Tj -/TT8 1 Tf -1.2002 0 TD -0.0989 Tw -[( )-567.7(Use the NS authentication protocol. This requires that you have)]TJ -0.9166 -1.2889 TD -0 Tw -(an NS authentication server accessible on your net.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -27 0 obj -<< -/Length 5695 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-5)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT10 1 Tf -9 0 0 9 205.2 569.54 Tm -(GV)Tj -/TT8 1 Tf -1.8667 0 TD -(Authenticate the login via the GrapeVine protocol.)Tj -/TT10 1 Tf --3.0667 -2.0667 TD -(UNIX)Tj -/TT8 1 Tf -3.0667 0 TD -(Use the unix login mechanism.)Tj -/TT12 1 Tf -0 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0678 Tw -[(: Unix is case sensitive. If you try to login but fail, you may)]TJ --2.2222 -1.2222 TD -0 Tw -(have typed the password with the caps-lock on.)Tj -/TT10 1 Tf --8.4667 -2 TD -(LOGIN.TIMEOUT)Tj -/TT8 1 Tf -8.4667 0 TD -0.19 Tw -(This is the number of seconds idle will wait for a login before)Tj -0 -1.2889 TD -0 Tw -(resuming idle mode again.)Tj -/TT10 1 Tf --6.0667 -2 TD -(DISPLAYFN)Tj -/TT8 1 Tf -6.0667 0 TD -0.1278 Tw -(The value of this property, which should be a function name or)Tj -0 -1.2889 TD -0.1389 Tw -(lambda expression, is called to display a moving pattern on the)Tj -0 -1.2222 TD -0.3089 Tw -[(screen while in idle mode. This function is called with one)]TJ -T* -0.15 Tw -[(argument, a window covering the whole screen. The default is)]TJ -/TT10 1 Tf -T* -0 Tw -(IDLE.BOUNCING.BOX)Tj -/TT8 1 Tf -10.2017 0 TD -( \(below\).)Tj --10.2017 -2.0667 TD -0.3578 Tw -(Any function used as a )Tj -/TT10 1 Tf -12.2025 0 TD -0 Tw -(DISPLAYFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.3578 Tw -[( should call )]TJ -/TT10 1 Tf -6.4059 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.3578 Tw -[( \(see)]TJ --27.0097 -1.2889 TD -0.21 Tw -(Chapter 23\) frequently, so other programs can run during idle)Tj -0 -1.2222 TD -0 Tw -(mode.)Tj -/TT10 1 Tf --4.2667 -2 TD -(SAVEVM)Tj -/TT8 1 Tf -4.2667 0 TD -0.1744 Tw -(Value is a number that determines how long \(in minutes\) after)Tj -0 -1.2889 TD -0.0156 Tw -(idle mode is entered that )Tj -/TT10 1 Tf -11.3185 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0156 Tw -[( will be called to save the virtual)]TJ --14.9191 -1.2889 TD -0.08 Tw -[(memory. If )]TJ -/TT10 1 Tf -5.6516 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.58 0 TD -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( is never called automatically from idle)]TJ --11.6325 -1.2889 TD -0 Tw -(mode. Default is 10 minutes.)Tj --18.6667 -2 TD -( )Tj -/TT10 1 Tf -5.4 0 TD -(SUSPEND.PROCESS.NAMES)Tj -/TT8 1 Tf -13.2667 0 TD -0.0222 Tw -[(Value is a list of names. For each name on this list, if a process by)]TJ -0 -1.2889 TD -0.0344 Tw -(that name is found, it will be suspended upon entering idle mode)Tj -0 -1.2222 TD -0 Tw -(and woken upon exiting idle mode.)Tj -/TT16 1 Tf --13.3333 -2 TD -(IDLE.RESETVARS)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.01 Tw -(The value of this variable is a list of two-element lists: )Tj -/TT10 1 Tf -24.2977 0 TD -0 Tw -(\(\()Tj -/TT14 1 Tf -1.2002 0 TD -(VAR)Tj -6 0 0 6 371.7 257.94 Tm -(1)Tj -9 0 0 9 375.3 259.94 Tm -0.0244 Tw -[( EXP)]TJ -6 0 0 6 397.12 257.94 Tm -0 Tw -(1)Tj -/TT10 1 Tf -9 0 0 9 400.72 259.94 Tm -(\)\()Tj -/TT14 1 Tf -1.2002 0 TD -(VAR)Tj -6 0 0 6 427.72 257.94 Tm -(2)Tj -9 0 0 9 431.32 259.94 Tm -0.0244 Tw -[( EXP)]TJ -6 0 0 6 453.14 257.94 Tm -0 Tw -(2)Tj -/TT10 1 Tf -9 0 0 9 456.74 259.94 Tm -(\)...\))Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --39.7494 -1.3944 TD -0.1567 Tw -(On entering idle mode, each variable )Tj -/TT14 1 Tf -17.5181 0 TD -0 Tw -(VAR)Tj -6 0 0 6 299.87 245.39 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 303.47 247.39 Tm -0.1567 Tw -[( is bound to the value of the corresponding)]TJ --19.7189 -1.3944 TD -0 Tw -(expression )Tj -/TT14 1 Tf -5.1601 0 TD -(EXP)Tj -6 0 0 6 188.65 232.84 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 192.25 234.84 Tm -0.1733 Tw -[(. When idle mode is exited, each variable )]TJ -/TT14 1 Tf -20.1396 0 TD -0 Tw -(VAR)Tj -6 0 0 6 389.72 232.84 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 393.32 234.84 Tm -0.1733 Tw -[( is reset to its original)]TJ --29.7022 -1.3944 TD -0 Tw -(value.)Tj -/TT16 1 Tf --2.6667 -2 TD -(IDLE.SUSPEND.PROCESS.NAMES)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0644 Tw -[(Value is a list of names. For each name on this list, if a process by that name is found, it)]TJ -0 -1.2222 TD -0 Tw -(will be suspended upon entering idle mode and woken upon exiting idle mode.)Tj -/TT16 1 Tf --2.6667 -2 TD -(IDLE.PROFILE)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -0.0344 Tw -(The value of this variable determines the menu raised by selecting the Display subitem of)Tj -0 -1.2222 TD -0.0322 Tw -[(the Idle background menu command. It should be in the format used for the )]TJ -/TT10 1 Tf -34.7026 0 TD -0 Tw -(ITEMS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0322 Tw -[( field)]TJ --37.7031 -1.2889 TD -0.0067 Tw -(of a menu \(see Chapter 28\), with the selection of an item returning the appropriate display)Tj -0 -1.2222 TD -0 Tw -(function.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(IDLE.BOUNCING.BOX)Tj -/F2 1 Tf -10 0 0 10 199.2 89.21 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.98 89.21 Tm -(WINDOW)Tj -/F2 1 Tf -10 0 0 10 234.3853 89.21 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 237.1653 89.21 Tm -(BOX)Tj -/F2 1 Tf -10 0 0 10 253.3679 89.21 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 256.1479 89.21 Tm -(WAIT)Tj -/F2 1 Tf -10 0 0 10 277.7514 89.21 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 281.0814 89.21 Tm -18.1198 Tw -[( [Variable])]TJ --17.2313 -1.8444 TD -0.0933 Tw -(This is the default display function used for idle mode. )Tj -/TT14 1 Tf -25.7435 0 TD -0 Tw -(BOX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0933 Tw -[( is bounded about )]TJ -/TT14 1 Tf -8.6014 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --39.7457 -1.2889 TD -0.1789 Tw -(with bounces taking place every )Tj -/TT14 1 Tf -15.4091 0 TD -0 Tw -(WAIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1789 Tw -[( milliseconds. )]TJ -/TT14 1 Tf -7.0928 0 TD -0 Tw -(BOX)Tj -/TT8 1 Tf -1.8003 0 TD -0.1789 Tw -[( can be a string, a bitmap, a)]TJ --26.7026 -1.2889 TD -0.1033 Tw -(window \(whose image will be bounced about\), or a list containing any number of these)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -30 0 obj -<< -/Length 6884 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-6)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.6189 Tw -(\(which will be cycled through\). )Tj -/TT14 1 Tf -18.0166 0 TD -0 Tw -(BOX)Tj -/TT8 1 Tf -1.8003 0 TD -0.6189 Tw -[( defaults to the value of the variable)]TJ -/TT10 1 Tf --19.8169 -1.2889 TD -0 Tw -(IDLE.BOUNCING.BOX)Tj -/TT8 1 Tf -10.2017 0 TD -0.1244 Tw -(, which is initially a bitmap of the Venue logo. )Tj -/TT14 1 Tf -22.2107 0 TD -0 Tw -(WAIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1244 Tw -[( defaults to)]TJ --34.8127 -1.2889 TD -0 Tw -(1000 \(one second\). )Tj -/TT4 1 Tf -10 0 0 10 102 524 Tm -(Saving Virtual Memory State)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 521.29 m -558.01 521.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 507.34 Tm -0.0689 Tw -(Medley storage allocation occurs within a virtual memory space that is usually much larger than the)Tj -0 -1.2222 TD -0.1289 Tw -[(physical memory on the computer. The virtual memory is stored as a large file on the computers)]TJ -T* -0.1167 Tw -[(hard disk, called the virtual memory file. Medley controls the swapping of pages between this file)]TJ -T* -0.1633 Tw -(and the real memory, swapping in virtual memory pages as they are accessed, and swapping out)Tj -T* -0.0033 Tw -(pages that have been modified. At any moment, the total state of the Medley virtual memory is stored)Tj -T* -0 Tw -(partially in the virtual memory file, and partially in the real physical memory.)Tj -0 -2 TD -0.25 Tw -(Medley provides facilities for saving the total state of the virtual memory, either on the virtual)Tj -0 -1.2222 TD -0.0711 Tw -[(memory file, or in a file on an arbitrary file device. The function )]TJ -/TT10 1 Tf -29.6044 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0711 Tw -[( is used to write all altered)]TJ --33.205 -1.2889 TD -0.0156 Tw -(\(dirty\) pages from the real memory to the virtual memory file and stop Medley, so that Medley can be)Tj -0 -1.2222 TD -0.1244 Tw -(restarted from the state of the )Tj -/TT10 1 Tf -14.047 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1244 Tw -(. )Tj -/TT10 1 Tf -0.9989 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1244 Tw -[( updates the virtual memory file without stopping)]TJ --22.247 -1.2889 TD -0.25 Tw -(Medley, which puts the virtual memory file into a consistant state \(temporarily\), so it could be)Tj -0 -1.2222 TD -0.1444 Tw -(restarted if the system crashes. )Tj -/TT10 1 Tf -14.9023 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1444 Tw -[( and )]TJ -/TT10 1 Tf -2.4818 0 TD -0 Tw -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1444 Tw -[( are used to save a copy of the total virtual)]TJ --25.1853 -1.2889 TD -0.3322 Tw -(memory state on a file, which can be loaded into another machine to restore Medleys state.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(VMEM.PURE.STATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.0944 Tw -[( can be used to freeze the current state of the virtual memory, so that Medley)]TJ --9.0015 -1.2889 TD -0 Tw -(will come up in that state if it is restarted.)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(LOGOUT)Tj -/F1 1 Tf -10 0 0 10 187.8 324.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 190.67 324.66 Tm -(FAST)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30050.6([Function])]TJ --4.8527 -1.8444 TD -0.2155 Tw -[(Stops Medley, and returns control to the operating system. If Medley is restarted, it)]TJ -0 -1.2222 TD -0.02 Tw -(should come up in the same state as when the )Tj -/TT10 1 Tf -20.7015 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[( was called. )]TJ -/TT10 1 Tf -5.7035 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[( will not affect)]TJ --33.6062 -1.2889 TD -0 Tw -(the state of open files.)Tj -/TT10 1 Tf -0 -2 TD -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0122 Tw -[( writes out all altered pages from real memory to the virtual memory file. If )]TJ -/TT14 1 Tf -33.9924 0 TD -0 Tw -(FAST)Tj -/TT8 1 Tf --37.593 -1.2889 TD -(is )Tj -/TT10 1 Tf -1.0426 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0778 Tw -[(, Medley is stopped without updating the virtual memory file. Note that after doing)]TJ -/TT10 1 Tf --1.6427 -1.2889 TD -0.0244 Tw -(\(LOGOUT T\))Tj -/TT8 1 Tf -6.0254 0 TD -0.01 Tw -[( it will not be possible to restart Medley from the point of the )]TJ -/TT10 1 Tf -27.2948 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -(, and it)Tj --36.9208 -1.2889 TD -0.08 Tw -[(may not be possible to restart it at all. Typing )]TJ -/TT10 1 Tf -21.3561 0 TD -0.1911 Tw -(\(LOGOUT T)Tj -/TT12 1 Tf -5.592 0 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.333 0 TD -0.08 Tw -[( is preferable to just booting)]TJ --27.2811 -1.2889 TD -0.0667 Tw -(the machine, because it also does other cleanup operations \(closing network connections,)Tj -0 -1.2222 TD -0 Tw -(etc.\).)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.1566 0 TD -(FAST)Tj -/TT8 1 Tf -2.4004 0 TD -0.2367 Tw -[( is the symbol )]TJ -/TT10 1 Tf -7.3016 0 TD -0 Tw -(?,)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.4867 0 TD -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2367 Tw -[( acts like )]TJ -/TT14 1 Tf -4.771 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -0.5667 Tw -[( = T)]TJ -/TT8 1 Tf -3.5337 0 TD -0.2367 Tw -[( if the virtual memory file is)]TJ --26.2511 -1.2889 TD -0.0267 Tw -(consistant, otherwise it acts like )Tj -/TT14 1 Tf -14.3623 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -0.0633 Tw -[( = NIL)]TJ -/TT8 1 Tf -3.7273 0 TD -0.0267 Tw -[(. This insures that the virtual memory image)]TJ --19.8899 -1.2889 TD -0 Tw -(can be restarted as of )Tj -/TT18 1 Tf -9.5459 0 TD -(some)Tj -/TT8 1 Tf -2 0 TD -( previous state, not necessarily as of the )Tj -/TT10 1 Tf -17.7178 0 TD -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --35.5309 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SAVEVM)Tj -/TT10 1 Tf -3.5999 0 TD -( \))Tj -/TT8 1 Tf -1.8003 0 TD -[( )-31569.7([Function])]TJ --3.3336 -1.8444 TD -0.0222 Tw -[(This function is similar to logging out and continuing, but faster. It takes about as long as)]TJ -0 -1.2222 TD -0.0244 Tw -(a logout, which can be as brief as 10 seconds or so if you have already written out most of)Tj -T* -0.2767 Tw -[(your dirty pages by virtue of being idle a while. After the )]TJ -/TT10 1 Tf -29.3921 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2767 Tw -(, and until the)Tj --32.9927 -1.2889 TD -0.0156 Tw -(pagefault handler is next forced to write out a dirty page, your virtual memory image will)Tj -0 -1.2222 TD -0 Tw -(be continuable \(as of the )Tj -/TT10 1 Tf -11.0024 0 TD -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -(\) should there be a system crash or other disaster.)Tj --14.603 -2.0667 TD -0.0856 Tw -(If the system has been idle long enough \(no keyboard or mouse activity\), there are dirty)Tj -0 -1.2222 TD -0.1578 Tw -(pages to be written, and there are few enough dirty pages left to write that a )Tj -/TT10 1 Tf -36.3946 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf --36.3946 -1.2889 TD -0.1044 Tw -(would be quick, )Tj -/TT10 1 Tf -7.6844 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1044 Tw -[( is automatically called. When )]TJ -/TT10 1 Tf -14.4074 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1044 Tw -[( is called automatically,)]TJ -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -33 0 obj -<< -/Length 7572 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-7)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0778 Tw -(the cursor is changed to a special cursor: )Tj -ET -q -7.5 0 0 -6.5 294.75 575.99 cm -/Im1 Do -Q -BT -9 0 0 9 302.24 569.49 Tm -(, stored in the variable )Tj -/TT10 1 Tf -10.5041 0 TD -0 Tw -(SAVINGCURSOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.0778 Tw -[(. You)]TJ --37.2875 -1.2889 TD -0.0522 Tw -(can control how often )Tj -/TT10 1 Tf -10.0927 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0522 Tw -[( is automatically called by setting the following two global)]TJ --13.6933 -1.2889 TD -0 Tw -(variables:)Tj -/TT16 1 Tf --2.6667 -2 TD -(SAVEVMWAIT)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ -/TT16 1 Tf --6 -1.0667 TD -(SAVEVMMAX)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -32.8678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.1533 Tw -(The system will call )Tj -/TT10 1 Tf -9.6119 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1533 Tw -[( after being idle for )]TJ -/TT10 1 Tf -9.4571 0 TD -0 Tw -(SAVEVMWAIT)Tj -/TT8 1 Tf -6.001 0 TD -0.1533 Tw -[( seconds \(initially 300\) if)]TJ --28.6705 -1.2889 TD -0.2656 Tw -(there are fewer than )Tj -/TT10 1 Tf -10.2077 0 TD -0 Tw -(SAVEVMMAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.2656 Tw -[( pages dirty \(initially 600\). These values are fairly)]TJ --15.6086 -1.2889 TD -0.1622 Tw -[(conservative. If you want to be extremely wary, you can set )]TJ -/TT10 1 Tf -28.7133 0 TD -0.39 Tw -(SAVEVMWAIT = 0)Tj -/TT8 1 Tf -9.1814 0 TD -0.1622 Tw -[( and)]TJ -/TT10 1 Tf --37.8946 -1.2889 TD -0.3389 Tw -(SAVEVMMAX = 10000)Tj -/TT8 1 Tf -10.8794 0 TD -0.1411 Tw -(, in which case )Tj -/TT10 1 Tf -7.2671 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1411 Tw -[( will be called the first chance available)]TJ --21.7471 -1.2889 TD -0 Tw -(after the first dirty page has been written.)Tj -0 -2 TD -0.0311 Tw -(The function )Tj -/TT10 1 Tf -5.9431 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[( saves the current state of Medleys virtual memory on a file, known)]TJ --9.5437 -1.2889 TD -0.0956 Tw -[(as a sysout file, or simply a sysout. The file package can be used to save particular)]TJ -0 -1.2222 TD -0.0189 Tw -(function definitions and other arbitrary objects on files, but )Tj -/TT10 1 Tf -26.4996 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0189 Tw -[( saves the )]TJ -/TT18 1 Tf -4.5855 0 TD -0 Tw -(total)Tj -/TT8 1 Tf -1.8315 0 TD -0.0189 Tw -[( state of)]TJ --36.5172 -1.2889 TD -0.1644 Tw -[(the system. This capability can be useful in many situations: for creating customized)]TJ -0 -1.2222 TD -0.28 Tw -(systems for other people to use, or to save a particular system state for debugging)Tj -T* -0.0844 Tw -[(purposes. Note that a sysout file can be very large \(thousands of pages\), and can take a)]TJ -T* -0.1 Tw -[(long time to create, so it is not to be done lightly. The file produced by )]TJ -/TT10 1 Tf -33.1375 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1 Tw -[( can be)]TJ --36.7381 -1.2889 TD -0.0989 Tw -(loaded into Medleys virtual memory and restarted to restore the virtual memory to the)Tj -0 -1.2222 TD -0.1556 Tw -[(exact state that it had when the sysout file was made. The exact method of loading a)]TJ -T* -0.06 Tw -[(sysout depend on the implementation. For more information on loading sysout files, see)]TJ -T* -0 Tw -(the users guide for your computer.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SYSOUT)Tj -/F1 1 Tf -10 0 0 10 139.8 306.61 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 142.67 306.61 Tm -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30050.6([Function])]TJ --4.8527 -1.8444 TD -0.0322 Tw -(Saves the current state of Medleys virtual memory on the file )Tj -/TT14 1 Tf -27.8281 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0322 Tw -(, in a form that can be)Tj --30.2285 -1.2889 TD -0.0267 Tw -[(subsequently restarted. The current state of program execution is saved in the sysout file,)]TJ -0 -1.2222 TD -0 Tw -(so )Tj -/TT10 1 Tf -1.2797 0 TD -0.1433 Tw -(\(PROGN \(SYSOUT FOO\) \(PRINT HELLO\)\))Tj -/TT8 1 Tf -22.1769 0 TD -0.06 Tw -[( will cause )]TJ -/TT10 1 Tf -5.0867 0 TD -0 Tw -(HELLO)Tj -/TT8 1 Tf -3.0005 0 TD -0.06 Tw -[( to be printed after)]TJ --31.5438 -1.2889 TD -0 Tw -(the sysout file is restarted.)Tj -/TT10 1 Tf -0 -2 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[( can take a very long time \(ten or fifteen minutes\), particularly when storing a file)]TJ --3.6006 -1.2889 TD -0.1878 Tw -[(on a remote file server. To display some indication that something is happening, the)]TJ -0 -1.3644 TD -0.0011 Tw -(cursor is changed to:)Tj -/F3 1 Tf -10 0 0 10 208.3571 213.93 Tm -0 Tw -( )Tj -ET -q -7 0 0 -7 211.18 220.93 cm -/Im2 Do -Q -BT -10 0 0 10 218.17 213.93 Tm -0.001 Tw -(. )Tj -/TT8 1 Tf -9 0 0 9 226.53 213.93 Tm -(Also, as the sysout file is being written, the cursor is inverted line)Tj --11.17 -1.2222 TD -0.0556 Tw -(by line, to show that activity is taking place, and how much of the sysout has completed.)Tj -0 -1.3644 TD -0.1167 Tw -(For example, after the )Tj -/TT10 1 Tf -10.3832 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1167 Tw -[( is about two-thirds done, the cursor would look like: )]TJ -ET -q -7 0 0 -7 476.24 197.65 cm -/Im3 Do -Q -BT -/F3 1 Tf -10 0 0 10 483.23 190.65 Tm -0 Tw -(.)Tj -/TT8 1 Tf -9 0 0 9 126 179.05 Tm -(The )Tj -/TT10 1 Tf -1.9238 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -( cursor is stored in the variable )Tj -/TT10 1 Tf -13.8867 0 TD -(SYSOUTCURSOR)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --26.6123 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9655 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3489 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -(, the variable )Tj -/TT10 1 Tf -6.0981 0 TD -0 Tw -(SYSOUTFILE)Tj -/TT8 1 Tf -6.001 0 TD -0.0456 Tw -[( is set to the body of )]TJ -/TT14 1 Tf -9.417 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[(. If )]TJ -/TT14 1 Tf -1.8066 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( is )]TJ -/TT10 1 Tf -1.306 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7448 -1.2889 TD -0.0711 Tw -(then the value of )Tj -/TT10 1 Tf -7.9578 0 TD -0 Tw -(SYSOUTFILE)Tj -/TT8 1 Tf -6.001 0 TD -0.0711 Tw -[( instead. Therefore, )]TJ -/TT10 1 Tf -9.2981 0 TD -0 Tw -(\(SYSOUT\))Tj -/TT8 1 Tf -4.8008 0 TD -0.0711 Tw -[( will save the current state)]TJ --28.0577 -1.2889 TD -0.0567 Tw -(on the next higher version of a file with the same name as the previous )Tj -/TT10 1 Tf -32.3231 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0567 Tw -[(. Also, if)]TJ --35.9237 -1.2889 TD -0.1033 Tw -(the extension for )Tj -/TT14 1 Tf -7.9462 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1033 Tw -[( is not specified, the value of )]TJ -/TT10 1 Tf -13.549 0 TD -0 Tw -(SYSOUT.EXT)Tj -/TT8 1 Tf -6.001 0 TD -0.1033 Tw -[( is used. )]TJ -/TT10 1 Tf -4.4949 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[( sets)]TJ -/TT10 1 Tf --37.9921 -1.2889 TD -0 Tw -(SYSOUTDATE)Tj -/TT8 1 Tf -6.001 0 TD -0.0001 Tc -0.0032 Tw -( \(see the System Version Information section below\) to )Tj -/TT10 1 Tf -24.3347 0 TD -0 Tc -0 Tw -(\(DATE\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0033 Tw -(, the time and)Tj --33.9363 -1.2889 TD -0 Tw -(date that the )Tj -/TT10 1 Tf -5.7876 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -( was performed.)Tj --9.3882 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.071 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1511 Tw -[( was not able to create the sysout file, because of disk or computer error, or)]TJ --4.6716 -1.2889 TD -0.0622 Tw -(because there was not enough space on the directory, )Tj -/TT10 1 Tf -24.3691 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0622 Tw -[( returns )]TJ -/TT10 1 Tf -3.8285 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[(. Otherwise it)]TJ --33.5985 -1.2889 TD -0 Tw -(returns the full file name of )Tj -/TT14 1 Tf -12.3262 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/F3 35 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/XObject << -/Im1 36 0 R -/Im2 37 0 R -/Im3 38 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6037 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-8)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(Actually, )Tj -/TT10 1 Tf -4.4624 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1733 Tw -[( returns twice; when the sysout file is first created, and when it is)]TJ --8.063 -1.2889 TD -0.0556 Tw -[(subsequently restarted. In the latter case, )]TJ -/TT10 1 Tf -18.9245 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0556 Tw -[( returns a list whose )]TJ -/TT10 1 Tf -9.4287 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( is the full file)]TJ --33.7541 -1.2889 TD -0.2689 Tw -(name of )Tj -/TT14 1 Tf -4.3605 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2689 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.8216 0 TD -0.6444 Tw -(\(if \(LISTP \(SYSOUT FOO\)\) then \(PRINT)Tj --14.5826 -1.2889 TD -0 Tw -(HELLO\)\))Tj -/TT8 1 Tf -4.8008 0 TD -0.0433 Tw -[( will cause )]TJ -/TT10 1 Tf -5.0367 0 TD -0 Tw -(HELLO)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -[( to be printed when the sysout file is restarted, but not when)]TJ -/TT10 1 Tf --12.838 -1.2889 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -( is initially performed.)Tj -/TT12 1 Tf --3.6006 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0222 Tw -(: )Tj -/TT10 1 Tf -0.7944 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0222 Tw -[( does not save the state of any open files. Use )]TJ -/TT10 1 Tf -20.6641 0 TD -0 Tw -(WHENCLOSE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0222 Tw -[( \(see the Closing)]TJ --32.6822 -1.2889 TD -0.0367 Tw -[(and Reopening Files section in Chapter 24\) to associate certain operations with open files)]TJ -0 -1.2222 TD -0.2489 Tw -(so that when a )Tj -/TT10 1 Tf -7.6767 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2489 Tw -[( is started up, these files will be reopened, and file pointers)]TJ --11.2773 -1.2889 TD -0 Tw -(repositioned.)Tj -/TT10 1 Tf -0 -2 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0933 Tw -[( evaluates the expressions on )]TJ -/TT10 1 Tf -13.5594 0 TD -0 Tw -(BEFORESYSOUTFORMS)Tj -/TT8 1 Tf -10.2017 0 TD -0.0933 Tw -[( \(see also )]TJ -/TT10 1 Tf -4.5056 0 TD -0 Tw -(AROUNDEXITFNS)Tj -/TT8 1 Tf -7.8013 0 TD -(\))Tj --39.6685 -1.2889 TD -(before creating the sysout file. This variable initially includes expressions to:)Tj -0 -2 TD -[(1.)-583.3( Set the variables )]TJ -/TT10 1 Tf -9.0487 0 TD -(SYSOUTDATE)Tj -/TT8 1 Tf -6.001 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(SYSOUTFILE)Tj -/TT8 1 Tf -6.001 0 TD -( as described above)Tj --23.2435 -2.0667 TD -0.5089 Tw -[(2.)-583.3(Default the sysout file name )]TJ -/TT14 1 Tf -16.5379 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.5089 Tw -[( according to the values of the variables)]TJ -/TT10 1 Tf --17.605 -1.2889 TD -0 Tw -(SYSOUTFILE)Tj -/TT8 1 Tf -6.001 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(SYSOUT.EXT)Tj -/TT8 1 Tf -6.001 0 TD -(, as described above)Tj --15.5282 -2.0667 TD -[(3.)-583.3(Perform any necessary operations on open files as specified by calls to )]TJ -/TT10 1 Tf -32.5404 0 TD -(WHENCLOSE)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --37.9412 -2.0667 TD -0.0778 Tw -(After a sysout file is restarted \(but )Tj -/TT18 1 Tf -15.8438 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0778 Tw -[( when it is initially created\), )]TJ -/TT10 1 Tf -13.0121 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0778 Tw -[( evaluates the)]TJ --33.7894 -1.2889 TD -0.0567 Tw -(expressions on )Tj -/TT10 1 Tf -6.9019 0 TD -0 Tw -(AFTERSYSOUTFORMS )Tj -/TT8 1 Tf -10.3383 0 TD -0.0567 Tw -(\(see also )Tj -/TT10 1 Tf -4.0889 0 TD -0 Tw -(AROUNDEXITFNS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0567 Tw -[(\). This initially includes)]TJ --29.1304 -1.2889 TD -0 Tw -(expressions to:)Tj -0 -2 TD -0.1389 Tw -[(1.)-583.3(Perform any necessary operations on previously-opened files as specified by calls to)]TJ -/TT10 1 Tf -1.3333 -1.1556 TD -0 Tw -(WHENCLOSE)Tj -/TT8 1 Tf --1.3333 -2.0667 TD -[(2.)-583.3(Possibly print a message, as determined by the value of )]TJ -/TT10 1 Tf -26.0853 0 TD -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4009 0 TD -( \(see below\))Tj --31.4862 -2.0667 TD -[(3.)-583.3(Call )]TJ -/TT10 1 Tf -3.4932 0 TD -(SETINITIALS)Tj -/TT8 1 Tf -6.6011 0 TD -0.1189 Tw -[( to reset the initials used for time-stamping \(see the Time Stamps)]TJ --8.761 -1.2889 TD -0 Tw -(section of Chapter 16\).)Tj -/TT16 1 Tf --4 -2 TD -(AROUNDEXITFNS)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0522 Tw -(This variable provides a way to advise the system on cleanup and restoration activities)Tj -0 -1.2222 TD -0.5867 Tw -(to perform around )Tj -/TT10 1 Tf -10.2507 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -1.0867 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -1.0867 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.5867 Tw -[( and )]TJ -/TT10 1 Tf -3.3662 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.5867 Tw -(; It subsumes the)Tj --30.7927 -1.2889 TD -0.1922 Tw -(functionality of )Tj -/TT10 1 Tf -7.4347 0 TD -0 Tw -(BEFORESYSOUTFORMS)Tj -/TT8 1 Tf -10.2017 0 TD -(, )Tj -/TT10 1 Tf -0.6922 0 TD -(AFTERLOGOUTFORMS)Tj -/TT8 1 Tf -9.6016 0 TD -0.1922 Tw -(, etc. Its value is a list of)Tj --27.9302 -1.2889 TD -0.05 Tw -[(functions \(names\) to call around every exit of the system. Each function is called with)]TJ -0 -1.2222 TD -0 Tw -(one argument, a symbol indicating which particular event is occuring. The symbols are:)Tj -/TT16 1 Tf -1.4 -2 TD -(BEFORLOGOUT)Tj -/TT8 1 Tf -7.2667 0 TD -(The system is about to perform a )Tj -/TT10 1 Tf -14.7627 0 TD -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT16 1 Tf --26.2299 -2.0667 TD -(BEFORESYSOUT)Tj --0.6 -1 TD -(BEFOREMAKESYS)Tj -0.6 -1.0667 TD -(BEFORESAVEVM)Tj -/TT8 1 Tf -7.8667 0 TD -(The system is about to perform a )Tj -/TT10 1 Tf -14.7627 0 TD -(SYSOUT,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -( or a )Tj -/TT10 1 Tf -2.1909 0 TD -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT16 1 Tf --36.4722 -2.0667 TD -(AFTERLOGOUT)Tj -0 -1 TD -(AFTERSYSOUT)Tj --0.6 -1 TD -(AFTERMAKESYS)Tj -0.6 -1.0667 TD -(AFTERSAVEVM)Tj -/TT8 1 Tf -7.2667 0 TD -0.1178 Tw -(The system is starting up am image that was saved by performing a)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, etc.)Tj -/TT16 1 Tf --16.1678 -2 TD -(AFTERDOSYSOUT)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6746 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-9)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT16 1 Tf -9 0 0 9 122.4 570.14 Tm -(AFTERDOMAKESYS)Tj -0.6 -1.0667 TD -(AFTERDOSAVEVM)Tj -/TT8 1 Tf -8.4667 0 TD -0.1433 Tw -(The system just made a copy of the virtual memory and saved it to)Tj -0 -1.2889 TD -0.1389 Tw -[(disk. The image continues to run. These events only exist to allow)]TJ -0 -1.2222 TD -0 Tw -(you to negate the effects of saveing a copy of the virtual memory.)Tj -/TT16 1 Tf --11.3333 -2 TD -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -32.8678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0133 Tw -(The value of )Tj -/TT10 1 Tf -5.7807 0 TD -0 Tw -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0133 Tw -[( determines what is printed when a sysout file is restarted. If the)]TJ --11.1816 -1.2889 TD -0.0889 Tw -(value of )Tj -/TT10 1 Tf -3.9947 0 TD -0 Tw -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0889 Tw -[( is a list, the list is evaluated, and no additional message is printed.)]TJ --9.3956 -1.2889 TD -0.0567 Tw -[(This allows you to print a message. If )]TJ -/TT10 1 Tf -17.4924 0 TD -0 Tw -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0567 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3711 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0567 Tw -[( and not a list, no message)]TJ --28.0647 -1.2889 TD -0.15 Tw -[(is printed. Finally, if )]TJ -/TT10 1 Tf -10.1914 0 TD -0 Tw -(SYSOUTGAG)Tj -/TT8 1 Tf -5.4009 0 TD -0.15 Tw -[( is )]TJ -/TT10 1 Tf -1.5148 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.15 Tw -[( \(its initial value\), and the sysout file is being)]TJ --18.9074 -1.2889 TD -0.0056 Tw -(restarted by the same user that made the sysout originally, you are greeted by printing the)Tj -0 -1.2222 TD -0.1211 Tw -(value of )Tj -/TT10 1 Tf -4.0591 0 TD -0 Tw -(HERALDSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.1211 Tw -[( \(see below\) followed by a greeting message. If the sysout file)]TJ --11.2603 -1.2889 TD -0.1633 Tw -(was made by a different user, a message is printed, warning that the currently-loaded)Tj -0 -1.2222 TD -0.0289 Tw -(user init file may be incorrect for the current user \(see the Greeting and Initialization Files)Tj -T* -0 Tw -(section above\). )Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(MAKESYS)Tj -/F1 1 Tf -10 0 0 10 145.2 393.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.07 393.06 Tm -(FILE)Tj -/F2 1 Tf -10 0 0 10 169.6735 393.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 172.4535 393.06 Tm -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26741.3([Function])]TJ --8.162 -1.8444 TD -0.0233 Tw -(Used to store a new Medley system on the makesys file )Tj -/TT14 1 Tf -25.9198 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[(. Like )]TJ -/TT10 1 Tf -3.007 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -(, but before)Tj --34.9277 -1.2889 TD -0.06 Tw -(the file is made, the system is initialized by undoing the greet history, and clearing the)Tj -0 -1.2222 TD -0 Tw -(display.)Tj -0 -2 TD -0.0378 Tw -(When the system is first started up, a herald is printed identifying the system, typically)Tj -0 -1.2222 TD -0 Tw -()Tj -/TT10 1 Tf -0.5 0 TD -0.1067 Tw -(Medley-XX DATE ...)Tj -/TT8 1 Tf -11.0151 0 TD -0.0444 Tw -[(. If )]TJ -/TT14 1 Tf -2.3033 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3467 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5444 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0444 Tw -[( will use it instead of )]TJ -/TT10 1 Tf -9.6885 0 TD -0 Tw -(Medley-)Tj --35.7994 -1.2889 TD -(XX)Tj -/TT8 1 Tf -1.2002 0 TD -( in the herald. )Tj -/TT10 1 Tf -6.6182 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -( sets )Tj -/TT10 1 Tf -2.1528 0 TD -(HERALDSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -( to the herald string printed out.)Tj -/TT10 1 Tf --21.3731 -2.0667 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0344 Tw -[( also sets the variable )]TJ -/TT10 1 Tf -9.7972 0 TD -0 Tw -(MAKESYSDATE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0344 Tw -[( \(see the next section below\) to )]TJ -/TT10 1 Tf -13.9965 0 TD -0 Tw -(\(DATE\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0344 Tw -(, i.e.)Tj --38.196 -1.2889 TD -0 Tw -(the time and date the system was made.)Tj --5.3333 -2 TD -0.2778 Tw -(Medley contains a routine that writes out dirty pages of the virtual memory during I/O wait,)Tj -0 -1.2222 TD -0.0189 Tw -(assuming that swapping has caused at least one dirty page to be written back into the virtual memory)Tj -T* -0 Tw -(file \(making it non-continuable\). The frequency with which this routine runs is determined by:)Tj -/TT16 1 Tf -2.6667 -2 TD -(BACKGROUNDPAGEFREQ)Tj -/TT8 1 Tf -10.8 0 TD -[( )-26967.8([Variable])]TJ --8.1333 -1.8444 TD -0.1378 Tw -[(This variable determines how often the routine that writes out dirty pages is run. The)]TJ -/TT18 1 Tf -0 -1.2222 TD -0 Tw -(higher)Tj -/TT8 1 Tf -2.5562 0 TD -( )Tj -/TT10 1 Tf -0.32 0 TD -(BACKGROUNDPAGEFREQ)Tj -/TT8 1 Tf -10.8018 0 TD -0.07 Tw -[( is set, the )]TJ -/TT18 1 Tf -4.8611 0 TD -0 Tw -(greater)Tj -/TT8 1 Tf -2.8335 0 TD -0.07 Tw -[( the time between running the dirty page)]TJ --21.3725 -1.2889 TD -0.0867 Tw -[(writing routine. Initially it is set to 4. The lower )]TJ -/TT10 1 Tf -22.6547 0 TD -0 Tw -(BACKGROUNDPAGEFREQ)Tj -/TT8 1 Tf -10.8018 0 TD -0.0867 Tw -[( is set, the less)]TJ --33.4565 -1.2889 TD -0 Tw -(responsiveness you get at typein, so it may not be desirable to set it all the way down to 1.)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(VMEM.PURE.STATE)Tj -/F1 1 Tf -10 0 0 10 188.4 154.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.27 154.98 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21713.1([NoSpread Function])]TJ -/TT10 1 Tf --8.4524 -1.8444 TD -(VMEM.PURE.STATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.2356 Tw -[( modifies the swappers page replacement algorithm so that dirty)]TJ --9.0015 -1.2889 TD -0.1478 Tw -[(pages are only written at the end of the virtual memory backing file. This freezes a)]TJ -0 -1.2222 TD -0.2033 Tw -(given virtual memory state, so that Medley will come up in that state whenever it is)Tj -T* -0.0567 Tw -[(restarted. This can be used to set up a clean environment on a pool machine, allowing)]TJ -T* -0 Tw -(each user to initialize the system simply by rebooting the computer.)Tj -0 -2 TD -0.1667 Tw -(The way to use )Tj -/TT10 1 Tf -7.6086 0 TD -0 Tw -(VMEM.PURE.STATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.1667 Tw -[( is to set up the environment as you wish it to be)]TJ --16.61 -1.2889 TD -0.1589 Tw -(frozen, evaluate )Tj -/TT10 1 Tf -8.6459 0 TD -0.3822 Tw -(\(VMEM.PURE.STATE T\))Tj -/TT8 1 Tf -11.7841 0 TD -0.1589 Tw -(, and then call any function that saves the)Tj --20.43 -1.2889 TD -0.2322 Tw -(virtual memory state \()Tj -/TT10 1 Tf -10.5477 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7322 0 TD -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7322 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2322 Tw -(, or )Tj -/TT10 1 Tf -2.1554 0 TD -0 Tw -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.2322 Tw -[(\). From that point on,)]TJ -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -46 0 obj -<< -/Length 4548 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-10)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.1622 Tw -(whenever the system is restarted, it will return to the state as of the saving operation.)Tj -0 -1.2222 TD -0 Tw -(Future )Tj -/TT10 1 Tf -3.2124 0 TD -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -(, etc. operations will not reset this state.)Tj -/TT12 1 Tf --10.9136 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0833 Tw -[(: When the system is running in pure state mode, it uses a significant amount of)]TJ --2.2222 -1.2222 TD -0.1033 Tw -(the virtual memory backing file to save the frozen memory image, so this will reduce)Tj -T* -0 Tw -(the amount of virtual memory space available for use.)Tj -/TT10 1 Tf -0 -2 TD -(\(VMEM.PURE.STATE\))Tj -/TT8 1 Tf -10.2017 0 TD -0.2511 Tw -[( returns )]TJ -/TT10 1 Tf -4.2063 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2511 Tw -[( if the system is running in pure state mode, )]TJ -/TT10 1 Tf -23.1952 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf --38.2033 -1.2889 TD -(otherwise.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(REALMEMORYSIZE)Tj -/TT10 1 Tf -8.3999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27969.9([Function])]TJ --6.9334 -1.8444 TD -(Returns the number of real memory pages in the computer.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(VMEMSIZE)Tj -/TT10 1 Tf -4.7999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31569.9([Function])]TJ --3.3334 -1.8444 TD -0.0667 Tw -[(Returns the number of pages in use in the virtual memory. This is the roughly the same)]TJ -0 -1.2222 TD -0.1778 Tw -(as the number of pages required to make a sysout file on the local disk \(see )Tj -/TT10 1 Tf -36.1491 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --39.7497 -1.2889 TD -(above\).)Tj -/F3 1 Tf -10 0 0 10 150 377.26 Tm -(\\)Tj -/TT16 1 Tf -9 0 0 9 156.06 377.26 Tm -(LASTVMEMFILEPAGE)Tj -/TT8 1 Tf -9.6 0 TD -[( )-27494.4([Variable])]TJ --7.6067 -1.8444 TD -0.1156 Tw -[(Value is the total size of the virtual memory backing file. This variable is set when the)]TJ -0 -1.2222 TD -0 Tw -(system is started. You should )Tj -/TT18 1 Tf -13.4902 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( set it..)Tj -/TT12 1 Tf --14.8232 -2 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.0444 Tw -[(: When the virtual memory expands to the point where the virtual memory backing)]TJ --2.2222 -1.2222 TD -0.1567 Tw -(file is almost full, a break will occur with the warning message Your virtual memory)Tj -T* -0.1722 Tw -[(backing file is almost full. Save your work & reload asap. When this happens, it is)]TJ -T* -0.2089 Tw -[(strongly suggested that you save any important work and reload the system. If you)]TJ -T* -0.0444 Tw -(continue working past this point, the system will start slowing down considerably, and it)Tj -T* -0 Tw -(will eventually stop working.)Tj -/TT4 1 Tf -10 0 0 10 102 254.32 Tm -(System Version Information)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 251.61 m -558.01 251.61 l -S -BT -/TT8 1 Tf -9 0 0 9 126 237.66 Tm -0.0367 Tw -[(Medley runs on a number of different machines, with many possible hardware configurations. There)]TJ -T* -0.1722 Tw -[(have been a number of different releases of the Medley software. These facts make it difficult to)]TJ -T* -0.2678 Tw -(answer the important question what software/hardware environment are you running? when)Tj -T* -0 Tw -(reporting bugs. The following functions allow the novice to collect this information.)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(PRINT-LISP-INFORMATION)Tj -/F1 1 Tf -10 0 0 10 274.2 185.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 277.07 185.38 Tm -(STREAM)Tj -/F2 1 Tf -10 0 0 10 309.4753 185.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 312.2552 185.38 Tm -(FILESTRING)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-8202.8([NoSpread Function])]TJ --21.9628 -1.8444 TD -0.0533 Tw -(Prints out a summary of the software and hardware environment that Medley is running)Tj -0 -1.2222 TD -0 Tw -(in, and a list of all loaded patch files:)Tj -/TT10 1 Tf -2 -1.6 TD -(Venue Medley version )Tj -0 -1 TD -(Medley 2.0 sysout of 7-Oct-92 15:18:52 on mips, )Tj -T* -(Emulator created: 20-Nov-92, memory size: 0,)Tj -T* -(machine d022899 mo )Tj -T* -0.1256 Tw -(based on Envos Medley version Medley 2.0 sysout of 7-Oct-)Tj -T* -0 Tw -(92 15:18:52,)Tj -T* -(Make-init dates: 7-Oct-92 11:07:17, 7-Oct-92 11:26:22)Tj -T* -(Patch files: NIL)Tj -/TT14 1 Tf --2 -1.8444 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( is the stream used to print the summary. If not given, it defaults to )Tj -/TT10 1 Tf -30.0772 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 35 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -49 0 obj -<< -/Length 5298 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-11)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT14 1 Tf -9 0 0 9 126 569.54 Tm -(FILESTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.1222 Tw -[( is a string used to determine what loaded files should be listed as patch)]TJ --6.001 -1.2889 TD -0.1056 Tw -[(files. All file names on )]TJ -/TT10 1 Tf -11.4507 0 TD -0 Tw -(LOADEDFILELST)Tj -/TT8 1 Tf -7.8013 0 TD -0.1056 Tw -[( \(see the Noticing Files section of Chapter 17\))]TJ --19.252 -1.2889 TD -0.0222 Tw -(that have )Tj -/TT14 1 Tf -4.4048 0 TD -0 Tw -(FILESTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.0222 Tw -[( as a substring as listed. If )]TJ -/TT14 1 Tf -12.0215 0 TD -0 Tw -(FILESTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.0222 Tw -[( is not given, it defaults to)]TJ --28.4283 -1.2889 TD -0 Tw -(the string )Tj -/TT10 1 Tf -4.4614 0 TD -(PATCH)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --11.3288 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:LISP-IMPLEMENTATION-TYPE)Tj -/TT10 1 Tf -16.1999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-20169.9([Function])]TJ --14.7334 -1.8444 TD -(Returns a string identifying the type of implementation that is running, e.g., )Tj -/TT10 1 Tf -33.814 0 TD -(Medley)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --41.2814 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:LISP-IMPLEMENTATION-VERSION)Tj -/TT10 1 Tf -17.9999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18369.9([Function])]TJ --16.5334 -1.8444 TD -0.0367 Tw -[(Returns a string identifying the version that is running. Currently gives the system name)]TJ -0 -1.2222 TD -0 Tw -(and date, e.g., )Tj -/TT10 1 Tf -6.394 0 TD -(KOTO of 10-Sep-85 08:25:46)Tj -/TT8 1 Tf -16.8027 0 TD -(.)Tj --23.1968 -2.0667 TD -0.0189 Tw -(This uses the variables )Tj -/TT10 1 Tf -10.3002 0 TD -0 Tw -(MAKESYSNAME)Tj -/TT8 1 Tf -6.6011 0 TD -0.0189 Tw -[( and )]TJ -/TT10 1 Tf -2.2306 0 TD -0 Tw -(MAKESYSDATE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0189 Tw -[( \(below\), so it will change if you)]TJ --25.733 -1.2889 TD -0 Tw -(use )Tj -/TT10 1 Tf -1.9514 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1956 Tw -[( \(see the Saving Virtual Memory State section above\) to create a custom)]TJ --6.1521 -1.2889 TD -0 Tw -(sysout file, or explicitly changes these variables.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:SOFTWARE-TYPE)Tj -/TT10 1 Tf -9.5999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26769.9([Function])]TJ --8.1334 -1.8444 TD -0.3955 Tw -(Returns a string identifying the operating system that Interlisp is running under.)Tj -0 -1.2222 TD -0 Tw -(Currently returns the string )Tj -/TT10 1 Tf -12.502 0 TD -(Envos Medley)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --23.57 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:SOFTWARE-VERSION)Tj -/TT10 1 Tf -11.3999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24969.9([Function])]TJ --9.9334 -1.8444 TD -0.0944 Tw -(Returns a string identifying the version of the operating system that Interlisp is running)Tj -0 -1.2222 TD -0.0589 Tw -[(under. Currently, this returns the date that the Medley release was originally created, so)]TJ -T* -0 Tw -(it doesnt change over )Tj -/TT10 1 Tf -9.9907 0 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --21.8996 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:MACHINE-TYPE)Tj -/TT10 1 Tf -8.9999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27369.9([Function])]TJ --7.5334 -1.8444 TD -0.1322 Tw -(Returns a string identifying the type of computer hardware that Medley is running on,)Tj -0 -1.2222 TD -0 Tw -(i.e., )Tj -/TT10 1 Tf -1.77 0 TD -(1108)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(1132)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(1186)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.75 0 TD -(mips)Tj -/TT8 1 Tf -3.6006 0 TD -(, etc.)Tj -/TT10 1 Tf --20.589 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:MACHINE-VERSION)Tj -/TT10 1 Tf -10.7999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25569.9([Function])]TJ --9.3334 -1.8444 TD -0.03 Tw -(Returns a string identifying the version of the computer hardware that Medley is running)Tj -0 -1.2222 TD -0 Tw -(on. Currently returns the microcode version and real memory size.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:MACHINE-INSTANCE)Tj -/TT10 1 Tf -11.3999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24969.9([Function])]TJ --9.9334 -1.8444 TD -0.0533 Tw -[(Returns a string identifying the particular machine that Medley is running on. Currently)]TJ -0 -1.2222 TD -0 Tw -(returns the machines NS address.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:SHORT-SITE-NAME)Tj -/TT10 1 Tf -10.7999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25569.9([Function])]TJ --9.3334 -1.8444 TD -0.0178 Tw -[(Returns a short string identifying the site where the machine is located. Currently returns)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\(ETHERHOSTNAME\))Tj -/TT8 1 Tf -9.0015 0 TD -( \(if non-)Tj -/TT10 1 Tf -3.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(\) or the string )Tj -/TT10 1 Tf -6.2354 0 TD -(unknown)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --28.6047 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CL:LONG-SITE-NAME)Tj -/TT10 1 Tf -10.1999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-26169.9([Function])]TJ --8.7334 -1.8444 TD -0.0389 Tw -[(Returns a long string identifying the site where the machine is located. Currently returns)]TJ -0 -1.2222 TD -0 Tw -(the same as )Tj -/TT10 1 Tf -5.3467 0 TD -(SHORT-SITE-NAME)Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj -ET -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -54 0 obj -<< -/Length 7112 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-12)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT16 1 Tf -9 0 0 9 150 568.26 Tm -(SYSOUTDATE)Tj -/F3 1 Tf -10 0 0 10 204.0088 568.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 206.78 568.26 Tm -31.7089 Tw -[( [Variable])]TJ --3.6422 -1.8444 TD -0.1033 Tw -(Value is set by )Tj -/TT10 1 Tf -7.0618 0 TD -0 Tw -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[( \(see the Saving Virtual Memory State section above\) to the date)]TJ --10.6624 -1.2889 TD -0 Tw -(before generating a virtual memory image file.)Tj -/TT16 1 Tf --2.6667 -2.1422 TD -(MAKESYSDATE)Tj -/F3 1 Tf -10 0 0 10 209.4 520.78 Tm -[( )-27274([Variable])]TJ -/TT8 1 Tf -9 0 0 9 174 504.18 Tm -0.0633 Tw -(Value is set by )Tj -/TT10 1 Tf -6.9018 0 TD -0 Tw -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0633 Tw -[( \(see the Saving Virtual Memory State section above\) to the date)]TJ --11.1025 -1.2889 TD -0 Tw -(before generating a virtual memory image file.)Tj -/TT16 1 Tf --2.6667 -2 TD -(MAKESYSNAME)Tj -/TT8 1 Tf -6.6011 0 TD -[( )-31166.7([Variable])]TJ --3.9344 -1.8444 TD -0.3022 Tw -(Value is a symbol identifying the release name of the current Medley system, e.g.,)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(:MEDLEY)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --6.8674 -2.0667 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SYSTEMTYPE)Tj -/TT10 1 Tf -5.9999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30369.9([Function])]TJ --4.5334 -1.8444 TD -0.1611 Tw -(Allows programmers to write system-dependent code. )Tj -/TT10 1 Tf -25.7997 0 TD -0 Tw -(SYSTEMTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.1611 Tw -[( returns a symbol)]TJ --31.8006 -1.2889 TD -0.3022 Tw -(corresponding to the implementation of Interlisp: )Tj -/TT10 1 Tf -23.9393 0 TD -0 Tw -(D)Tj -/TT8 1 Tf -0.6001 0 TD -0.3022 Tw -[( \(for Medley\), )]TJ -/TT10 1 Tf -7.2084 0 TD -0 Tw -(TOPS-20)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.8022 0 TD -(TENEX)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj -/TT10 1 Tf --39.7512 -1.2889 TD -(JERICO)Tj -/TT8 1 Tf -3.6006 0 TD -(, or )Tj -/TT10 1 Tf -1.6909 0 TD -(VAX)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --7.0918 -2.0667 TD -0.0478 Tw -(In Medley, )Tj -/TT10 1 Tf -5.1263 0 TD -0.1156 Tw -(\(SELECTQ \(SYSTEMTYPE\) ...\))Tj -/TT8 1 Tf -15.8337 0 TD -0.0478 Tw -[( expressions are expanded at compile time)]TJ --20.96 -1.2889 TD -0 Tw -(so that this is an effective way to perform conditional compilation.)Tj -/TT10 1 Tf --2.6667 -2 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(MACHINETYPE)Tj -/TT10 1 Tf -6.5999 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29769.9([Function])]TJ --5.1334 -1.8444 TD -0.15 Tw -[(Returns the type of machine that Medley is running on: either )]TJ -/TT10 1 Tf -29.5988 0 TD -0 Tw -(DORADO)Tj -/TT8 1 Tf -3.6006 0 TD -0.15 Tw -[( \(for the Xerox)]TJ --33.1994 -1.2889 TD -0 Tw -(1132\), )Tj -/TT10 1 Tf -3.0163 0 TD -(DOLPHIN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1833 Tw -[( \(for the Xerox 1100\), )]TJ -/TT10 1 Tf -10.7802 0 TD -0 Tw -(DANDELION)Tj -/TT8 1 Tf -5.4009 0 TD -0.1833 Tw -[( \(for the Xerox 1108\), )]TJ -/TT10 1 Tf -10.3468 0 TD -0 Tw -(DOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1833 Tw -[( \(for the)]TJ --36.1453 -1.2889 TD -0 Tw -(Xerox 1186\), or )Tj -/TT10 1 Tf -6.877 0 TD -(MAIKO)Tj -/TT8 1 Tf -3.0005 0 TD -( \(for Unix, DOS, etc\).)Tj -/TT4 1 Tf -10 0 0 10 102 277.64 Tm -(Date And Time Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 274.93 m -558.01 274.93 l -S -BT -/TT10 1 Tf -9 0 0 9 150 259.7 Tm -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(DATE)Tj -/F3 1 Tf -10 0 0 10 177 259.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 179.78 259.7 Tm -(FORMAT)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30060.4([Function])]TJ --4.8429 -1.8444 TD -0.1722 Tw -(Returns the current date and time as a string with format )Tj -/TT10 1 Tf -27.3349 0 TD -0 Tw -()Tj -/TT14 1 Tf -0.6001 0 TD -0.4133 Tw -(DD-MM-YY HH:MMM:SS)Tj -/TT10 1 Tf -11.2151 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.7502 -1.2889 TD -(where )Tj -/TT14 1 Tf -3.0413 0 TD -(DD)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( is day, )]TJ -/TT14 1 Tf -3.4485 0 TD -0 Tw -(MM)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( is month, )]TJ -/TT14 1 Tf -4.7005 0 TD -0 Tw -(YY)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( year, )]TJ -/TT14 1 Tf -2.7246 0 TD -0 Tw -(HH)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( hours, )]TJ -/TT14 1 Tf -3.3442 0 TD -0 Tw -(MMM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -[( minutes, )]TJ -/TT14 1 Tf -4.3823 0 TD -0 Tw -(SS)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( seconds, e.g., )]TJ -/TT10 1 Tf -6.3611 0 TD -0 Tw -(7-Jun-)Tj --35.8038 -1.2889 TD -(85 15:49:34)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --7.2012 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9921 0 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0722 Tw -[( is a date format as returned by )]TJ -/TT10 1 Tf -14.5949 0 TD -0 Tw -(DATEFORMAT)Tj -/TT8 1 Tf -6.001 0 TD -0.0722 Tw -[( \(below\), it is used to modify the)]TJ --25.1886 -1.2889 TD -0 Tw -(format of the date string returned by )Tj -/TT10 1 Tf -16.4688 0 TD -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --21.5358 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(IDATE)Tj -/F3 1 Tf -10 0 0 10 182.4 169.82 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.18 169.82 Tm -(STR)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31260.7([Function])]TJ -/TT14 1 Tf --3.6426 -1.8444 TD -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1533 Tw -[( is a date and time string. )]TJ -/TT10 1 Tf -12.8536 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1533 Tw -[( returns )]TJ -/TT14 1 Tf -4.0108 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1533 Tw -[( converted to a number such that if)]TJ -/TT10 1 Tf --23.4655 -1.2889 TD -0 Tw -(DATE1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0089 Tw -[( is before \(earlier than\) )]TJ -/TT10 1 Tf -10.2808 0 TD -0 Tw -(DATE2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0089 Tw -(, then )Tj -/TT10 1 Tf -2.737 0 TD -0 Tw -(\(IDATE )Tj -/TT14 1 Tf -4.2218 0 TD -(DATE1)Tj -/TT10 1 Tf -3.0005 0 TD -0.0211 Tw -(\) < \(IDATE )Tj -/TT14 1 Tf -6.6644 0 TD -0 Tw -(DATE2)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0089 Tw -[(. If )]TJ -/TT10 1 Tf -1.6966 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf --38.2026 -1.2889 TD -(is )Tj -/TT10 1 Tf -0.9648 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the current date and time is used.)Tj --2.7651 -2.0667 TD -0.1411 Tw -[(Different Interlisp implementations can have different internal date formats. However,)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0533 Tw -[( always has the essential property that )]TJ -/TT10 1 Tf -17.5511 0 TD -0 Tw -(\(IDATE )Tj -/TT14 1 Tf -4.3296 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( is less than )]TJ -/TT10 1 Tf -5.5361 0 TD -0 Tw -(\(IDATE )Tj -/TT14 1 Tf -4.3296 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( if )]TJ -/TT14 1 Tf -1.2307 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( is)]TJ --38.978 -1.2889 TD -0 Tw -(before )Tj -/TT14 1 Tf -3.0785 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -(, and )Tj -/TT10 1 Tf -2.5295 0 TD -0.1044 Tw -(\(IDATE \(GDATE )Tj -/TT14 1 Tf -8.6103 0 TD -0 Tw -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0433 Tw -[( equals )]TJ -/TT14 1 Tf -3.4436 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -[(. Programs which do arithmetic other than)]TJ --20.6624 -1.2889 TD -0.1311 Tw -(numerical comparisons between )Tj -/TT10 1 Tf -14.9788 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1311 Tw -[( numbers may not work when moved from one)]TJ --17.9793 -1.2889 TD -0 Tw -(implementation to another.)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 35 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -57 0 obj -<< -/Length 6385 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-13)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0411 Tw -(Generally, it is possible to increment an )Tj -/TT10 1 Tf -17.9802 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0411 Tw -[( number by an integral number of days by)]TJ --20.9806 -1.2889 TD -0.3122 Tw -(computing a 1 day constant, the difference between two convenient )Tj -/TT10 1 Tf -34.2287 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.3122 Tw -(s, e.g.)Tj -/TT10 1 Tf --37.2292 -1.2889 TD -0.3244 Tw -(\(IDIFFERENCE \(IDATE 2-JAN-80 12:00"\) \(IDATE "1-JAN-80 12:00"\)\))Tj -/TT8 1 Tf -39.7533 0 TD -0 Tw -(.)Tj --39.7533 -1.2889 TD -(This 1 day constant can be evaluated at compile time.)Tj -/TT10 1 Tf -0 -2 TD -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0344 Tw -[( is guaranteed to accept as input the dates that )]TJ -/TT10 1 Tf -21.0451 0 TD -0 Tw -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( will output. It will ignore the)]TJ --26.446 -1.2889 TD -0.3733 Tw -(parenthesized day of the week \(if any\). )Tj -/TT10 1 Tf -20.6952 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.3733 Tw -[( also correctly handles time zone)]TJ --23.6957 -1.2889 TD -0 Tw -(specifications for those time zones registered in the list )Tj -/TT10 1 Tf -24.3936 0 TD -(TIME.ZONES)Tj -/TT8 1 Tf -6.001 0 TD -( \(below\).)Tj -/TT10 1 Tf --33.0612 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(GDATE)Tj -/F1 1 Tf -10 0 0 10 134.4 473.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.27 473.66 Tm -(DATE)Tj -/F2 1 Tf -10 0 0 10 158.8735 473.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 161.6535 473.66 Tm -(FORMAT)Tj -/F2 1 Tf -10 0 0 10 194.0588 473.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.8388 473.66 Tm -()Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25832.2([Function])]TJ --9.0712 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.1992 0 TD -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -(, except that )Tj -/TT14 1 Tf -5.6163 0 TD -0 Tw -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[( can be a number in internal date and time format as returned)]TJ --12.6163 -1.2889 TD -0 Tw -(by )Tj -/TT10 1 Tf -1.3594 0 TD -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the current time and date is used.)Tj -/TT10 1 Tf --14.112 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(DATEFORMAT)Tj -/F1 1 Tf -10 0 0 10 161.4 425.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.27 425.58 Tm -(KEY)Tj -6 0 0 6 180.47 423.58 Tm -(1)Tj -/F2 1 Tf -10 0 0 10 184.07 425.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.85 425.58 Tm -(...)Tj -/F2 1 Tf -10 0 0 10 203.0526 425.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 205.8326 425.58 Tm -(KEY)Tj -6 0 0 6 222.03 423.58 Tm -(N)Tj -/TT10 1 Tf -9 0 0 9 225.63 425.58 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-13755.5([NLambda NoSpread Function])]TJ -/TT10 1 Tf --11.6701 -1.95 TD -(DATEFORMAT)Tj -/TT8 1 Tf -6.001 0 TD -0.1456 Tw -[( returns a date format suitable as a parameter to )]TJ -/TT10 1 Tf -22.8701 0 TD -0 Tw -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1456 Tw -[( and )]TJ -/TT10 1 Tf -2.4818 0 TD -0 Tw -(GDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1456 Tw -(. )Tj -/TT14 1 Tf -1.0384 0 TD -0 Tw -(KEY)Tj -6 0 0 6 482.33 406.03 Tm -(1)Tj -/TT10 1 Tf -9 0 0 9 126 395.48 Tm -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.3711 0 TD -(KEY)Tj -6 0 0 6 161.74 393.48 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 165.34 395.48 Tm -0.1211 Tw -[( are a set of keywords \(unevaluated\). Each keyword affects the format of the)]TJ --4.3711 -1.3944 TD -0.0989 Tw -(date independently \(except for )Tj -/TT10 1 Tf -14.2339 0 TD -0 Tw -(SLASHES)Tj -/TT8 1 Tf -4.2007 0 TD -0.0989 Tw -[( and )]TJ -/TT10 1 Tf -2.3907 0 TD -0 Tw -(SPACES)Tj -/TT8 1 Tf -3.6006 0 TD -0.0989 Tw -[(\). If the date returned by )]TJ -/TT10 1 Tf -11.9779 0 TD -0 Tw -(\(DATE\))Tj -/TT8 1 Tf --36.4037 -1.2889 TD -0.3889 Tw -(with the default formatting was 7-Jun-85 15:49:34, the keywords would affect the)Tj -0 -1.2222 TD -0 Tw -(formatting as follows:)Tj -/TT10 1 Tf -5.8 -2 TD -(NO.DATE)Tj -/TT8 1 Tf -5.5333 0 TD -(Doesnt include the date information, e.g. )Tj -/TT10 1 Tf -18.5728 0 TD -(15:49:34)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --34.9071 -2.0667 TD -(NUMBER.OF.MONTH)Tj -/TT8 1 Tf -10.3333 0 TD -0.0811 Tw -(Shows the month as a number instead of a name, e.g.)Tj -/TT10 1 Tf -24.2677 0 TD -0.1956 Tw -[( 7-06-)]TJ --24.2677 -1.2889 TD -0 Tw -(85 15:49:34)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --13.9345 -2.0667 TD -(YEAR.LONG)Tj -/TT8 1 Tf -6.7333 0 TD -0.8222 Tw -(Prints the year using four digits, e.g. )Tj -/TT10 1 Tf -22.0622 0 TD -0 Tw -(7-Jun-1985)Tj --22.0622 -1.2889 TD -(15:49:34)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --10.9342 -2.0667 TD -(SLASHES)Tj -/TT8 1 Tf -5.5333 0 TD -0.3022 Tw -(Separates the day, month, and year fields with slashes, e.g.)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(7/Jun/85 15:49:34)Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --16.3352 -2.0667 TD -(SPACES)Tj -/TT8 1 Tf -4.9333 0 TD -0.1522 Tw -(Separates the day, month, and year fields with spaces, e.g. )Tj -/TT10 1 Tf -27.4661 0 TD -0 Tw -(7)Tj --27.4661 -1.2889 TD -(Jun 85 15:49:34)Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj -/TT10 1 Tf --21.1349 -2.0667 TD -(NO.LEADING.SPACES)Tj -/TT8 1 Tf -11.5333 0 TD -0.0922 Tw -[(By default, the day field will always be two characters long. If)]TJ -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(NO.LEADING.SPACES)Tj -/TT8 1 Tf -10.2017 0 TD -0.2678 Tw -[( is specified, the day field will be one)]TJ --10.2017 -1.2889 TD -0.4611 Tw -(character for dates earlier than the 10th, e.g. )Tj -/TT10 1 Tf -23.2685 0 TD -0 Tw -(7-Jun-85)Tj --23.2685 -1.2889 TD -(15:49:34)Tj -/TT8 1 Tf -5.4009 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(7-Jun-85 15:49:34)Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --27.1779 -2.0667 TD -(NO.TIME)Tj -/TT8 1 Tf -5.5333 0 TD -(Doesnt include the time information, e.g. )Tj -/TT10 1 Tf -18.6357 0 TD -(7-Jun-85)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --31.3701 -2.0667 TD -(TIME.ZONE)Tj -/TT8 1 Tf -6.7333 0 TD -0.1556 Tw -(Includes the time zone in the time specification, e.g. )Tj -/TT10 1 Tf -24.4698 0 TD -0 Tw -(7-Jun-)Tj --24.4698 -1.2889 TD -(85)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --9.1336 -2.0667 TD -(NO.SECONDS)Tj -/TT8 1 Tf -7.3333 0 TD -(Doesnt include the seconds, e.g. )Tj -/TT10 1 Tf -14.6411 0 TD -(7-Jun-85 15:49)Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj -/TT10 1 Tf --32.176 -2.0667 TD -(DAY.OF.WEEK)Tj -/TT8 1 Tf -7.9333 0 TD -0.1 Tw -(Includes the day of the week in the time specification, e.g. )Tj -/TT10 1 Tf -26.8651 0 TD -0 Tw -(7-)Tj --26.8651 -1.2889 TD -(Jun-85 15:49:34 PDT \(Friday\))Tj -/TT8 1 Tf -17.4028 0 TD -(.)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -60 0 obj -<< -/Length 6692 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-14)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 215.4 569.54 Tm -(DAY.SHORT)Tj -/TT8 1 Tf -6.7333 0 TD -(If )Tj -/TT10 1 Tf -0.9655 0 TD -(DAY.OF.WEEK)Tj -/TT8 1 Tf -6.6011 0 TD -0.0456 Tw -[( is specified to include the day of the week, the)]TJ --7.5666 -1.2889 TD -0.0822 Tw -(week day is shortened to the first three letters, e.g. )Tj -/TT10 1 Tf -23.271 0 TD -0 Tw -(7-Jun-85)Tj --23.271 -1.2889 TD -0.1878 Tw -(15:49:34 PDT \(Fri\))Tj -/TT8 1 Tf -11.7774 0 TD -0.0778 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.4776 0 TD -0 Tw -(DAY.SHORT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0778 Tw -[( has no effect)]TJ --22.6559 -1.2889 TD -0 Tw -(unless )Tj -/TT10 1 Tf -3.0527 0 TD -(DAY.OF.WEEK)Tj -/TT8 1 Tf -6.6011 0 TD -( is also specified.)Tj -/TT10 1 Tf --23.6538 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(CLOCK)Tj -/F1 1 Tf -10 0 0 10 182.4 514.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 514.86 Tm -(N)Tj -/F2 1 Tf -10 0 0 10 190.6709 514.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 193.4509 514.86 Tm -()Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-31541.9([Function])]TJ --3.3614 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0388 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.2856 Tw -[( = 0)]TJ -/TT8 1 Tf -2.9715 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.6189 0 TD -(CLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.1189 Tw -[( returns the current value of the time of day clock i.e., the number of)]TJ --8.2298 -1.2889 TD -0 Tw -(milliseconds since last system start up.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9277 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.0178 Tw -[( = 1)]TJ -/TT8 1 Tf -2.4359 0 TD -0.0078 Tw -(, returns the value of the time of day clock when you started up this Interlisp, i.e.,)Tj --3.9637 -1.2889 TD -0.1278 Tw -(difference between )Tj -/TT10 1 Tf -8.9138 0 TD -0.3056 Tw -(\(CLOCK 0\))Tj -/TT8 1 Tf -5.7064 0 TD -0.1278 Tw -[( and )]TJ -/TT10 1 Tf -2.4484 0 TD -0.3056 Tw -(\(CLOCK 1\))Tj -/TT8 1 Tf -5.7064 0 TD -0.1278 Tw -[( is number of milliseconds \(real time\))]TJ --22.7751 -1.2889 TD -0 Tw -(since this Interlisp system was started.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.0144 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.2267 Tw -[( = 2)]TJ -/TT8 1 Tf -2.8537 0 TD -0.0944 Tw -(, returns the number of milliseconds of )Tj -/TT18 1 Tf -18.0615 0 TD -0 Tw -(compute)Tj -/TT8 1 Tf -3.4072 0 TD -0.0944 Tw -[( time since user started up this)]TJ --25.9369 -1.2889 TD -0 Tw -(Interlisp \(garbage collection time is subtracted off\).)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9244 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.01 Tw -[( = 3)]TJ -/TT8 1 Tf -2.4204 0 TD -0.0044 Tw -(, returns the number of milliseconds of compute time spent in garbage collections)Tj --3.9449 -1.2889 TD -0 Tw -(\(all types\).)Tj -/TT10 1 Tf --2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SETTIME)Tj -/F1 1 Tf -10 0 0 10 193.2 366.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.07 366.98 Tm -(DT)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-30650.8([Function])]TJ --4.2525 -1.8444 TD -0.0344 Tw -[(Sets the internal time-of-day clock. If )]TJ -/TT14 1 Tf -16.9701 0 TD -0 Tw -(DT)Tj -/TT10 1 Tf -1.2002 0 TD -0.0833 Tw -[( = NIL)]TJ -/TT8 1 Tf -3.7673 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(SETTIME)Tj -/TT8 1 Tf -4.2007 0 TD -0.0344 Tw -[( attempts to get the time from)]TJ --26.6727 -1.2889 TD -0.0922 Tw -[(the communications net; if it fails, you are prompted for the time. If )]TJ -/TT14 1 Tf -31.9131 0 TD -0 Tw -(DT)Tj -/TT8 1 Tf -1.2002 0 TD -0.0922 Tw -[( is a string in a)]TJ --33.1133 -1.2889 TD -0 Tw -(form that )Tj -/TT10 1 Tf -4.3911 0 TD -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -( recognizes, it is used to set the time.)Tj --12.7249 -2.0667 TD -0.3067 Tw -(The following variables are used to interpret times in different time zones. )Tj -/TT10 1 Tf -37.2806 0 TD -0 Tw -(\\TimeZoneComp)Tj -/TT8 1 Tf -7.8013 0 TD -(,)Tj -/TT10 1 Tf --45.0819 -1.2889 TD -(\\BeginDST)Tj -/TT8 1 Tf -5.4009 0 TD -0.0567 Tw -(, and )Tj -/TT10 1 Tf -2.5562 0 TD -0 Tw -(\\EndDST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0567 Tw -[( are normally set automatically if your machine is connected to a network)]TJ --12.1578 -1.2889 TD -0.0344 Tw -[(with a time server. For standalone machines, it may be necessary to set them by hand \(or in your init)]TJ -0 -1.2222 TD -0 Tw -(file, see the first section of this chapter\) if you are not in the Pacific time zone.)Tj -/TT16 1 Tf -2.6667 -2 TD -(TIME.ZONES)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -0.1289 Tw -(Value is an association list that associates time zone specifications \()Tj -/TT10 1 Tf -30.8729 0 TD -0 Tw -(PDT)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6289 0 TD -(EST)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6289 0 TD -(GMT)Tj -/TT8 1 Tf -1.8003 0 TD -0.1289 Tw -(, etc.\))Tj --37.5315 -1.2889 TD -0.3278 Tw -[(with the number of hours west of Greenwich \(negative if east\). If the time zone)]TJ -0 -1.2222 TD -0.1967 Tw -(specification is a single letter, it is appended to )Tj -/TT10 1 Tf -22.624 0 TD -0 Tw -(DT)Tj -/TT8 1 Tf -1.8003 0 TD -0.1967 Tw -( or )Tj -/TT10 1 Tf -2.3342 0 TD -0 Tw -(ST)Tj -/TT8 1 Tf -1.8003 0 TD -0.1967 Tw -( depending on whether)Tj --28.5588 -1.2889 TD -0 Tw -(daylight saving time is in effect. Initially set to:)Tj -/TT10 1 Tf -4 -1.6 TD -(\(\(8 . P\) \(7 . M\) \(6 . C\) \(5 . E\) \(0 . GMT\)\))Tj -/TT8 1 Tf --4 -1.8444 TD -0.0356 Tw -(This list is used by )Tj -/TT10 1 Tf -8.6104 0 TD -0 Tw -(DATE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0356 Tw -[( and )]TJ -/TT10 1 Tf -2.264 0 TD -0 Tw -(GDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0356 Tw -[( when generating a date with the )]TJ -/TT10 1 Tf -15.0589 0 TD -0 Tw -(TIME.ZONE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0356 Tw -[( format)]TJ --36.7351 -1.2889 TD -0 Tw -(is specified, and by )Tj -/TT10 1 Tf -8.7197 0 TD -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -( when parsing dates.)Tj -/F1 1 Tf -10 0 0 10 150 143.1 Tm -(\\)Tj -/TT16 1 Tf -9 0 0 9 156.06 143.1 Tm -(TimeZoneComp)Tj -/TT8 1 Tf -7.2 0 TD -[( )-29894.4([Variable])]TJ --5.2067 -1.8444 TD -0.0544 Tw -(This variable should be initialized to the number of hours west of Greenwich \(negative if)Tj -0 -1.2222 TD -0 Tw -(east\). For the U.S. west coast it is 8. For the east coast it is 5.)Tj -/F1 1 Tf -10 0 0 10 150 96.22 Tm -(\\)Tj -/TT16 1 Tf -9 0 0 9 156.06 96.22 Tm -(BeginDST)Tj -/TT8 1 Tf -4.8 0 TD -( )Tj -32.7944 0 TD -([Variable])Tj -/F1 1 Tf -10 0 0 10 150 85.34 Tm -(\\)Tj -/TT16 1 Tf -9 0 0 9 156.06 85.34 Tm -(EndDST)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -33.9944 0 TD -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(\\BeginDST)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -[( is the day of the year on or before which Daylight Savings Time takes effect)]TJ --5.4009 -1.2889 TD -0.0556 Tw -(\(i.e., the Sunday on or immediately preceding this day\); )Tj -/TT10 1 Tf -25.3369 0 TD -0 Tw -(\\EndDST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0556 Tw -[( is the day on or before)]TJ --29.5376 -1.2889 TD -0.1933 Tw -[(which Daylight Savings Time ends. Days are numbered with 1 being January 1, and)]TJ -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -63 0 obj -<< -/Length 7557 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-15)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2744 Tw -[(counting the days as for a leap year. In the USA where Daylight Savings Time is)]TJ -0 -1.2222 TD -0 Tw -(observed, )Tj -/TT10 1 Tf -4.5573 0 TD -0.0122 Tw -(\\BeginDST = 121)Tj -/TT8 1 Tf -9.0259 0 TD -0.0056 Tw -[( and )]TJ -/TT10 1 Tf -2.204 0 TD -0.0122 Tw -(\\EndDST = 305)Tj -/TT8 1 Tf -7.8257 0 TD -0.0056 Tw -[(. In a region where Daylight Savings)]TJ --23.6129 -1.2889 TD -0 Tw -(Time is not observed at all, set )Tj -/TT10 1 Tf -13.6235 0 TD -(\\BeginDST)Tj -/TT8 1 Tf -5.4009 0 TD -( to 367.)Tj -/TT4 1 Tf -10 0 0 10 54 524 Tm -(Timers and Duration Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 521.29 m -510.01 521.29 l -S -BT -/TT8 1 Tf -9 0 0 9 78 507.34 Tm -0.0667 Tw -[(Often one needs to loop over some code, stopping when a certain interval of time has passed. Some)]TJ -0 -1.2222 TD -0.1533 Tw -(systems provide an alarm clock facility, which provides an asynchronous interrupt when a time)Tj -T* -0.0078 Tw -[(interval runs out. This is not particularly feasible in the current Medley environment, so the following)]TJ -T* -0 Tw -(facilities are supplied for efficiently testing for the expiration of a time interval in a loop context. )Tj -0 -2 TD -0.0922 Tw -(Three functions are provided: )Tj -/TT10 1 Tf -14.1125 0 TD -0 Tw -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5922 0 TD -(SETUPTIMER.DATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.0922 Tw -(, and )Tj -/TT10 1 Tf -2.6273 0 TD -0 Tw -(TIMEREXPIRED?)Tj -/TT8 1 Tf -7.8013 0 TD -0.0922 Tw -[(. There are)]TJ --40.1357 -1.2889 TD -0.1511 Tw -(also several new i.s.oprs: )Tj -/TT10 1 Tf -11.8237 0 TD -0.3611 Tw -[( forDuration)]TJ -/TT8 1 Tf -7.5623 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.6511 0 TD -(during)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6511 0 TD -(untilDate)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.6511 0 TD -(timerUnits)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.6511 0 TD -(usingTimer)Tj -/TT8 1 Tf -6.001 0 TD -0.1511 Tw -(, and)Tj -/TT10 1 Tf --42.9938 -1.2889 TD -0 Tw -(resourceName)Tj -/TT8 1 Tf -7.2012 0 TD -( \(reasonable variations on upper/lower case are permissible\).)Tj --7.2012 -2.0667 TD -0.1111 Tw -(These functions use an object called a timer, which encodes a future clock time at which a signal is)Tj -0 -1.2222 TD -0.0022 Tw -(desired. A timer is constructed by the functions )Tj -/TT10 1 Tf -21.4834 0 TD -0 Tw -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -0.0004 Tc -0.0018 Tw -( and )Tj -/TT10 1 Tf -2.1973 0 TD -0 Tc -0 Tw -(SETUPTIMER.DATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.0022 Tw -(, and is created)Tj --38.6831 -1.2889 TD -0.1167 Tw -(with a basic clock unit selected from among )Tj -/TT10 1 Tf -21.5178 0 TD -0 Tw -(SECONDS)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6167 0 TD -(MILLISECONDS)Tj -/TT8 1 Tf -7.2012 0 TD -0.1167 Tw -(, or )Tj -/TT10 1 Tf -1.9242 0 TD -0 Tw -(TICKS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1167 Tw -[(. The first two)]TJ --38.4611 -1.2889 TD -0.1578 Tw -(timer units provide a machine/system independent interface, and the latter provides access to the)Tj -0 -1.2222 TD -0.0633 Tw -[(real, basic strobe unit of the machines clock on which the program is running. The default unit is)]TJ -/TT10 1 Tf -T* -0 Tw -(MILLISECONDS)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --7.2012 -2.0667 TD -0.0022 Tw -(Currently, the )Tj -/TT10 1 Tf -6.4781 0 TD -0 Tw -(TICKS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0001 Tc -0.0021 Tw -( unit depends on what machine Medley is running on. The Xerox 1132 has about)Tj --9.4786 -1.2889 TD -0 Tc -0.0678 Tw -(1680 ticks per millisecond; the Xerox 1108 has about 34.746 ticks per millisecond; the Xerox 1185 and)Tj -0 -1.2222 TD -0.1311 Tw -[(1186 have about 62.5 ticks per millisecond. The advantage of using )]TJ -/TT10 1 Tf -31.8851 0 TD -0 Tw -(TICKS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1311 Tw -[( rather than one of the)]TJ --34.8856 -1.2889 TD -0.0244 Tw -(uniform interfaces is primarily speed; e.g., it may take over 400 microseconds to read the milliseconds)Tj -0 -1.2222 TD -0.0889 Tw -(clock \(a software facility that uses the real clock\), whereas reading the real clock itself may take less)Tj -T* -0.1122 Tw -[(than ten microseconds. The disadvantage of the )]TJ -/TT10 1 Tf -22.4779 0 TD -0 Tw -(TICKS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -[( unit is its short roll-over interval \(about 20)]TJ --25.4783 -1.2889 TD -0.3722 Tw -(minutes\) compared to the )Tj -/TT10 1 Tf -13.1276 0 TD -0 Tw -(MILLISECONDS)Tj -/TT8 1 Tf -7.2012 0 TD -0.3722 Tw -[( roll-over interval \(about two weeks\), and also the)]TJ --20.3287 -1.2889 TD -0 Tw -(dependency on particular machine parameters.)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SETUPTIMER)Tj -/F1 1 Tf -10 0 0 10 161.4 241.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.27 241.06 Tm -(INTERVAL)Tj -/F2 1 Tf -10 0 0 10 207.477 241.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.257 241.06 Tm -(OldTimer?)Tj -/F2 1 Tf -10 0 0 10 258.8649 241.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 261.6449 241.06 Tm -(timerUnits)Tj -/F2 1 Tf -10 0 0 10 315.6537 241.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 318.4337 241.06 Tm -(intervalUnits)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-5120.4([Function])]TJ -/TT10 1 Tf --29.7829 -1.8444 TD -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -0.1722 Tw -[( returns a timer that will go off \(as tested by )]TJ -/TT10 1 Tf -22.4892 0 TD -0 Tw -(TIMEREXPIRED?)Tj -/TT8 1 Tf -7.8013 0 TD -0.1722 Tw -(\) after a)Tj --36.2914 -1.2889 TD -0.2533 Tw -(specified time-interval measured from the current clock time. )Tj -/TT10 1 Tf -29.8752 0 TD -0 Tw -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -0.2533 Tw -[( has one)]TJ --35.8762 -1.2889 TD -0 Tw -(required and three optional arguments:)Tj -/TT14 1 Tf -0 -2 TD -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1389 Tw -[( must be a integer specifying how long an interval is desired. )]TJ -/TT14 1 Tf -29.1918 0 TD -0 Tw -(timerUnits)Tj -/TT8 1 Tf --33.9926 -1.2889 TD -(specifies the units of measure for the interval \(defaults to )Tj -/TT10 1 Tf -25.3828 0 TD -(MILLISECONDS)Tj -/TT8 1 Tf -7.2012 0 TD -(\).)Tj --32.584 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.1055 0 TD -(OldTimer?)Tj -/TT8 1 Tf -5.4009 0 TD -0.1856 Tw -[( is a timer, it will be reused and returned, rather than allocating a new)]TJ --6.5064 -1.2889 TD -0.3656 Tw -(timer. )Tj -/TT14 1 Tf -3.8551 0 TD -0 Tw -(intervalUnits)Tj -/TT8 1 Tf -7.8013 0 TD -0.3656 Tw -[( specifies the units in which the )]TJ -/TT14 1 Tf -16.681 0 TD -0 Tw -(OldTimer)Tj -/TT18 1 Tf -4.8008 0 TD -(?)Tj -/TT8 1 Tf -0.5 0 TD -0.3656 Tw -[( is expressed)]TJ --33.6381 -1.2889 TD -0 Tw -(\(defaults to the value of )Tj -/TT14 1 Tf -10.7261 0 TD -(timerUnits)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --19.3937 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(SETUPTIMER.DATE)Tj -/F1 1 Tf -10 0 0 10 188.4 109.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.27 109.98 Tm -(DTS)Tj -/F2 1 Tf -10 0 0 10 207.4726 109.98 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 210.2526 109.98 Tm -(OldTimer?)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19541([Function])]TJ -/TT10 1 Tf --15.3624 -1.8444 TD -(SETUPTIMER.DATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.0611 Tw -[( returns a timer \(using the )]TJ -/TT10 1 Tf -12.1211 0 TD -0 Tw -(SECONDS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0611 Tw -[( time unit\) that will go off at a)]TJ --25.3232 -1.2889 TD -0.0456 Tw -(specified date and time. )Tj -/TT14 1 Tf -11.2683 0 TD -0 Tw -(DTS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[( is a Date/Time string such as )]TJ -/TT10 1 Tf -13.7852 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0456 Tw -[( accepts \(see the above)]TJ --29.8543 -1.2889 TD -0.0478 Tw -[(section\). If )]TJ -/TT14 1 Tf -5.2381 0 TD -0 Tw -(OldTimer?)Tj -/TT8 1 Tf -5.4009 0 TD -0.0478 Tw -[( is a timer, it will be reused and returned, rather than allocating a)]TJ --10.6389 -1.2889 TD -0 Tw -(new timer.)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -66 0 obj -<< -/Length 6217 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-16)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(SETUPTIMER.DATE)Tj -/TT8 1 Tf -9.0015 0 TD -0.06 Tw -[( operates by first subtracting )]TJ -/TT10 1 Tf -13.1789 0 TD -0 Tw -(\(IDATE\))Tj -/TT8 1 Tf -4.2007 0 TD -0.06 Tw -[( from )]TJ -/TT10 1 Tf -2.7767 0 TD -0 Tw -(\(IDATE )Tj -/TT14 1 Tf -4.344 0 TD -(DTS)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.06 Tw -(, so there)Tj --35.9022 -1.2889 TD -0 Tw -(may be some large integer creation involved, even if )Tj -/TT14 1 Tf -23.354 0 TD -(OLDTIMER?)Tj -/TT8 1 Tf -5.4009 0 TD -( is given.)Tj -/TT10 1 Tf --31.4216 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(TIMEREXPIRED?)Tj -/F1 1 Tf -10 0 0 10 225.6123 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.4823 538.06 Tm -(TIMER)Tj -/F2 1 Tf -10 0 0 10 255.4867 538.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 258.2667 538.06 Tm -(ClockValue.or.timerUnits)Tj -/TT10 1 Tf -14.4023 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-10537.9([Function])]TJ --24.3654 -1.8445 TD -(If )Tj -/TT14 1 Tf -1.2199 0 TD -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -0.3 Tw -[( is a timer, and )]TJ -/TT14 1 Tf -8.2817 0 TD -0 Tw -(ClockValue.or.timerUnits)Tj -/TT8 1 Tf -14.4023 0 TD -0.3 Tw -[( is the time-unit of )]TJ -/TT14 1 Tf -9.8452 0 TD -0 Tw -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj -/TT10 1 Tf --39.7502 -1.2889 TD -(TIMEREXPIRED?)Tj -/TT8 1 Tf -7.8013 0 TD -( returns true if )Tj -/TT14 1 Tf -6.6313 0 TD -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -( has gone off.)Tj -/TT14 1 Tf --17.4331 -2.0667 TD -(ClockValue.or.timerUnits)Tj -/TT8 1 Tf -14.4023 0 TD -0.2944 Tw -[( can also be a timer, in which case )]TJ -/TT10 1 Tf -17.7955 0 TD -0 Tw -(TIMEREXPIRED?)Tj -/TT8 1 Tf --32.1979 -1.2889 TD -0.0711 Tw -[(compares the two timers \(which must be in the same timer units\). If )]TJ -/TT10 1 Tf -31.3911 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( and )]TJ -/TT10 1 Tf -2.3351 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( are timers,)]TJ --34.9264 -1.2889 TD -0 Tw -(then )Tj -/TT10 1 Tf -2.2192 0 TD -(\(TIMEREXPIRED? X Y\))Tj -/TT8 1 Tf -11.4019 0 TD -( is true if )Tj -/TT10 1 Tf -4.1421 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is set for an )Tj -/TT18 1 Tf -5.5498 0 TD -(earlier)Tj -/TT8 1 Tf -2.5562 0 TD -( time than )Tj -/TT10 1 Tf -4.7192 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --37.1219 -2.0667 TD -0.2478 Tw -(There are a number of i.s.oprs that make it easier to use timers in iterative statements \(see the)Tj -0 -1.2222 TD -0.1378 Tw -[(Interative Statement section of Chapter 9\). These i.s.oprs are given below in the canonical form,)]TJ -T* -0 Tw -(with the second word capitalized, but the all-caps and all-lower-case versions are also acceptable.)Tj -/TT16 1 Tf -2.6667 -2.1422 TD -(forDuration)Tj -/F1 1 Tf -10 0 0 10 209.4 408.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.27 408.18 Tm -(INTERVAL)Tj -/F3 1 Tf -10 0 0 10 255.477 408.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 477.25 408.18 Tm -([I.S. Operator])Tj -/TT16 1 Tf --36.3611 -1.2089 TD -(during)Tj -/F1 1 Tf -10 0 0 10 182.4 397.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.27 397.3 Tm -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-27141.4([I.S. Operator])]TJ -/TT14 1 Tf --6.053 -1.8444 TD -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -0.38 Tw -[( is an integer specifying an interval of time during which the iterative)]TJ --4.8008 -1.2889 TD -0 Tw -(statement will loop. )Tj -/TT16 1 Tf --2.6667 -2.1422 TD -(timerUnits)Tj -/F1 1 Tf -10 0 0 10 204 349.82 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.87 349.82 Tm -(UNITS)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-26541.7([I.S. Operator])]TJ -/TT14 1 Tf --6.6527 -1.8444 TD -(UNITS)Tj -/TT8 1 Tf -3.0005 0 TD -( specifies the time units of the )Tj -/TT14 1 Tf -13.374 0 TD -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -( specified in )Tj -/TT10 1 Tf -5.5757 0 TD -(forDuration)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT16 1 Tf --36.0187 -2.2089 TD -(untilDate)Tj -/F1 1 Tf -10 0 0 10 198.6 313.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.47 313.34 Tm -(DTS)Tj -/TT8 1 Tf -1.8003 0 TD -[( )-28341.9([I.S. Operator])]TJ -/TT14 1 Tf --4.8525 -1.8444 TD -(DTS)Tj -/TT8 1 Tf -1.8003 0 TD -0.3767 Tw -[( is a Date/Time string \(such as )]TJ -/TT10 1 Tf -16.436 0 TD -0 Tw -(IDATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.3767 Tw -[( accepts\) specifying when the iterative)]TJ --21.2368 -1.2889 TD -0 Tw -(statement should stop looping.)Tj -/TT16 1 Tf --2.6667 -2.1422 TD -(usingTimer)Tj -/F1 1 Tf -10 0 0 10 204 265.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 206.87 265.86 Tm -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-26541.7([I.S. Operator])]TJ --6.6527 -1.8444 TD -0.1278 Tw -(If usingTimer is given, )Tj -/TT14 1 Tf -10.7357 0 TD -0 Tw -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -0.1278 Tw -[( is reused as the timer for )]TJ -/TT10 1 Tf -12.309 0 TD -0 Tw -(forDuration)Tj -/TT8 1 Tf -6.6011 0 TD -0.1278 Tw -[( or )]TJ -/TT10 1 Tf -1.6965 0 TD -0 Tw -(untilDate)Tj -/TT8 1 Tf -5.4009 0 TD -(,)Tj --39.7436 -1.2889 TD -0.0178 Tw -[(rather than creating a new timer. This can reduce allocation if one of these i.s.oprs is used)]TJ -0 -1.2222 TD -0 Tw -(within another loop.)Tj -/TT12 1 Tf --2.6667 -2 TD -(resourceName )Tj -/TT14 1 Tf -6.8056 0 TD -(RESOURCE)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-24254.8([I.S. Operator])]TJ -/TT14 1 Tf --8.9397 -1.8444 TD -(RESOURCE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0456 Tw -[( specifies a resource name to be used as the timer storage \(see the File Package)]TJ --4.8008 -1.2889 TD -0 Tw -(Types section of Chapter 17\). If )Tj -/TT14 1 Tf -14.2388 0 TD -(RESOURCE)Tj -/TT10 1 Tf -4.8008 0 TD -( = T)Tj -/TT8 1 Tf -2.4004 0 TD -(, it will be converted to an internal name.)Tj --26.7733 -2.9556 TD -(Some examples:)Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(during 6MONTHS timerUnits SECONDS)Tj -0.6667 -1 TD -( until \(TENANT-VACATED? HouseHolder\))Tj -T* -( do \(DISMISS \))Tj -T* -( \(HARRASS HouseHolder\))Tj -T* -( finally \(if \(NOT \(TENANT-VACATED? HouseHolder\)\))Tj -T* -( then \(EVICT-TENANT HouseHolder\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -0.0133 Tw -[(This example shows that how is is possible to have two termination condition: when the time interval)]TJ -0 -1.2222 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.1622 0 TD -(6MONTHS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0333 Tw -[( has elapsed, or when the predicate )]TJ -/TT10 1 Tf -16.0551 0 TD -0.0811 Tw -(\(TENANT-VACATED? HouseHolder\))Tj -/TT8 1 Tf -17.4839 0 TD -0.0333 Tw -[( becomes true.)]TJ --38.902 -1.2889 TD -0 Tw -(Note that the finally clause is executed regardless of which termination condition caused it.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 35 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R -/TT18 19 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -69 0 obj -<< -/Length 5103 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-17)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.2756 Tw -(Also note that since the millisecond clock will roll over about every two weeks, )Tj -/TT10 1 Tf -40.0292 0 TD -0 Tw -(6MONTHS)Tj -/TT8 1 Tf -4.8008 0 TD -()Tj --44.83 -1.2889 TD -(wouldnt be an appropriate interval if the timer units were the default case, namely )Tj -/TT10 1 Tf -37.0659 0 TD -(MILLISECONDS)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --38.9338 -1.6667 TD -(\(do \(forDuration \(CONSTANT \(ITIMES 10 24 60 60 1000\)\) )Tj -0.6667 -1 TD -( do \(CARRY.ON.AS.USUAL\))Tj -T* -( finally \(PROMPTPRINT "Have you had your 10-day check-up?"\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -0.0344 Tw -[(This infinite loop breaks out with a warning message every 10 days. One could question whether the)]TJ -0 -1.2222 TD -0.0256 Tw -(millisecond clock, which is used by default, is appropriate for this loop, since it rolls-over about every)Tj -T* -0 Tw -(two weeks. )Tj -/TT10 1 Tf -5.3333 -1.8089 TD -(\(SETQ )Tj -/F3 1 Tf -10 0 0 10 158.4053 470.06 Tm -(\\)Tj -/TT10 1 Tf -9 0 0 9 164.4653 470.06 Tm -(RandomTimer \(SETUPTIMER 0\)\))Tj --3.6073 -1 TD -(\(untilDate "31-DEC-83 23:59:59" usingTimer \\RandomTimer )Tj -T* -( when \(WINNING?\) do \(RETURN\))Tj -T* -( finally \(ERROR "Youve been losing this whole year!"\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -0.0511 Tw -(Here is a usage of an explicit date for the time interval; also, some stsorage has been squirreled away)Tj -0 -1.2222 TD -0 Tw -(\(as the value of \\RandomTimer\) for use by the call to )Tj -/TT10 1 Tf -24.0244 0 TD -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -( in this loop.)Tj -/TT10 1 Tf --24.6921 -1.6667 TD -(\(forDuration SOMEINTERVAL )Tj -0.6667 -1 TD -( resourceName \\INNERLOOPBOX )Tj -T* -( timerunits TICKS )Tj -T* -( do \(CRITICAL.INNER.LOOP\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -0.0367 Tw -(For this loop, you dont want any )Tj -/TT10 1 Tf -15.2889 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -(ing to take place, so )Tj -/TT10 1 Tf -9.1306 0 TD -0 Tw -(\\INNERLOOPBOX)Tj -/TT8 1 Tf -7.8013 0 TD -0.0367 Tw -[( is defined as a resource)]TJ --34.6212 -1.2889 TD -0.0567 Tw -(which caches a timer cell \(if it isnt already so defined\), and wraps the entire statement in a )Tj -/TT10 1 Tf -42.3345 0 TD -0 Tw -(WITH-)Tj --42.3345 -1.2889 TD -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1078 Tw -[( call. Furthermore, a time unit of )]TJ -/TT10 1 Tf -15.6874 0 TD -0 Tw -(TICKS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( is specified, for lower overhead in this critical)]TJ --24.0888 -1.2889 TD -0.5067 Tw -[(inner loop. In fact specifying a resourceName of )]TJ -/TT10 1 Tf -26.2885 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.5067 Tw -[( is the same as specifying it to be)]TJ -/TT10 1 Tf --26.8886 -1.2889 TD -0 Tw -(\\ForDurationOfBox)Tj -/TT8 1 Tf -10.2017 0 TD -0.0378 Tw -(; this is just a simpler way to specify that a resource is wanted, without having)Tj --10.2017 -1.2889 TD -0 Tw -(to think up a name.)Tj -/TT4 1 Tf -10 0 0 10 54 276.52 Tm -(Resources)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 273.81 m -510.01 273.81 l -S -BT -/TT8 1 Tf -9 0 0 9 78 259.86 Tm -0.0811 Tw -(Medley is based on the use of a storage-management system which allocates memory space for new)Tj -0 -1.2222 TD -0.1033 Tw -[(data objects, and automatically reclaims the space when no longer in use. More generally, Medley)]TJ -T* -0.0678 Tw -[(manages shared resources, such as files, semaphors for processes, etc. The protocols for allocating)]TJ -T* -0 Tw -(and freeing such resources resemble those of ordinary storage management.)Tj -0 -2 TD -0.0411 Tw -[(Sometimes you need to explicitly manage the allocation of resources. You may want the efficiency of)]TJ -0 -1.2222 TD -0.1656 Tw -(explicit reclamation of certain temporary data; or it may be expensive to initialize a complex data)Tj -T* -0.0633 Tw -(object; or there may be an application that must not allocate new cells during some critical section of)Tj -T* -0 Tw -(code.)Tj -0 -2 TD -0.0256 Tw -(The file manager type )Tj -/TT10 1 Tf -10.0275 0 TD -0 Tw -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.0256 Tw -[( is available to help with the definition and usage of such classes of)]TJ --15.4284 -1.2889 TD -0.0844 Tw -(data; the definition of a )Tj -/TT10 1 Tf -10.9574 0 TD -0 Tw -(RESOURCE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0844 Tw -[( specifies prototype code to do the basic management operations.)]TJ --15.7582 -1.2889 TD -0.6078 Tw -(The file manager command )Tj -/TT10 1 Tf -14.8422 0 TD -0 Tw -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.6078 Tw -[( is used to save such definitions on files, and)]TJ -/TT10 1 Tf --20.2431 -1.2889 TD -0 Tw -(INITRESOURCES)Tj -/TT8 1 Tf -7.8013 0 TD -0.1044 Tw -[( \(see the Miscellaneous File Manager Commands section of Chapter 17\) causes the)]TJ --7.8013 -1.2889 TD -0 Tw -(initialization code to be output.)Tj -0 -2 TD -(The basic needs of resource management are: )Tj -0 -1.6667 TD -0.02 Tw -[(1.)-583.3(Obtaining a data item from the Lisp memory management system and configuring it to be a totally)]TJ -1.3333 -1.2222 TD -0 Tw -(new instance of the resource in question)Tj --1.3333 -1.6667 TD -[(2.)-583.3(Freeing up an instance which is no longer needed)]TJ -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 35 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -72 0 obj -<< -/Length 5238 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-18)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.11 Tw -[(3.)-583.3(Getting an instance of the resource for temporary usage \(whether fresh or a formerly freed-up)]TJ -1.3333 -1.2222 TD -0 Tw -(instance\))Tj --1.3333 -1.6667 TD -[(4.)-583.3(Setting up any prerequisite global data structures and variables )]TJ -0 -2 TD -0.1233 Tw -(A resources definition consists of four methods: )Tj -/TT10 1 Tf -23.6019 0 TD -0 Tw -(INIT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6233 0 TD -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6233 0 TD -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.1233 Tw -(, and )Tj -/TT10 1 Tf -2.6895 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1233 Tw -(; each method is a)Tj --35.9395 -1.2889 TD -0.2156 Tw -(form that will specialize the definition for four corresponding user-level macros )Tj -/TT10 1 Tf -37.8711 0 TD -0 Tw -(INITRESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -(,)Tj -/TT10 1 Tf --45.0723 -1.2889 TD -(NEWRESOURCE)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.5189 0 TD -(GETRESOURCE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0189 Tw -(, and )Tj -/TT10 1 Tf -2.4806 0 TD -0 Tw -(FREERESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0189 Tw -[(. )]TJ -/TT10 1 Tf -1.0567 0 TD -0 Tw -(PUTDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0189 Tw -[( is used to make a resources definition,)]TJ --28.0601 -1.2889 TD -0 Tw -(and the four components are specified in a proplist:)Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(PUTDEF)Tj -0.6667 -1 TD -( )Tj -/TT14 1 Tf -2.4004 0 TD -(RESOURCENAME)Tj -/TT10 1 Tf --2.4004 -1 TD -( RESOURCES)Tj -T* -( \(NEW )Tj -/TT14 1 Tf -6.001 0 TD -(NEW-INSTANCE-GENERATION-CODE)Tj -/TT10 1 Tf --6.001 -1 TD -( FREE )Tj -/TT14 1 Tf -6.001 0 TD -(FREEING-UP-CODE)Tj -/TT10 1 Tf --6.001 -1 TD -( GET )Tj -/TT14 1 Tf -6.001 0 TD -(GET-INSTANCE-CODE)Tj -/TT10 1 Tf --6.001 -1 TD -( INIT )Tj -/TT14 1 Tf -6.001 0 TD -(INITIALIZATION-CODE)Tj -/TT10 1 Tf -11.4019 0 TD -(\)\))Tj -/TT8 1 Tf --23.4028 -1.8444 TD -0.06 Tw -(Each of the )Tj -/TT14 1 Tf -5.3328 0 TD -0 Tw -(xxx-CODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.06 Tw -[( forms is a form that will appear as if it were the body of a substitution macro)]TJ --10.1336 -1.2889 TD -0 Tw -(definition for the corresponding macro \(see the discussion on the macros below\).)Tj -/TT4 1 Tf -10 0 0 10 126 374.8 Tm -(A Simple Example)Tj -/TT8 1 Tf -9 0 0 9 126 359.14 Tm -0.0111 Tw -[(Suppose one has several pieces of code which use a 256-character string as a scratch string. One could)]TJ -0 -1.2222 TD -0.0844 Tw -[(simply generate a new string each time, but that would be inefficient if done repeatedly. If you can)]TJ -T* -0.1144 Tw -(guarantee that there are no re-entrant uses of the scratch string, then it could simply be stored in a)Tj -T* -0.2233 Tw -[(global variable. However, if the code might be re-entrant on occasion, the program has to take)]TJ -T* -0.3722 Tw -[(precautions that two programs do not use the same scratch string at the same time. \(This)]TJ -T* -0.1211 Tw -[(consideration becomes very important in a multi-process environment. It is hard to guarantee that)]TJ -T* -0.1078 Tw -[(two processes wont be running the same code at the same time, without using elaborate locks.\) A)]TJ -T* -0.1644 Tw -(typical tactic would be to store the scratch string in a global variable, and set the variable to )Tj -/TT10 1 Tf -43.5254 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf --43.5254 -1.2889 TD -0.1233 Tw -[(whenever the string is in use \(so that re-entrant usages would know to get a new instance\). For)]TJ -0 -1.2222 TD -0 Tw -(example, assuming the global variable )Tj -/TT10 1 Tf -17.2105 0 TD -(TEMPSTRINGBUFFER)Tj -/TT8 1 Tf -9.6016 0 TD -( is initialized to )Tj -/TT10 1 Tf -7.04 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(:)Tj -/TT10 1 Tf --30.319 -1.6667 TD -([DEFINEQ \(WITHSTRING NIL )Tj -0.6667 -1 TD -( \(PROG \(\(BUF \(OR \(PROG1 TEMPSTRINGBUFFER)Tj -T* -( \(SETQ TEMPSTRINGBUFFER NIL\)\))Tj -T* -( \(ALLOCSTRING 256\)\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -(... use the scratch string in the variable )Tj -/TT10 1 Tf -17.1665 0 TD -(BUF)Tj -/TT8 1 Tf -1.8003 0 TD -( ...)Tj -/TT10 1 Tf --13.6335 -1.6667 TD -( \(SETQ TEMPSTRINGBUFFER BUF\))Tj -0.6667 -1 TD -( \(RETURN])Tj -/TT8 1 Tf --6 -1.8444 TD -(Here, the basic elements of a resource usage may be seen: )Tj -0 -2 TD -[(1.)-583.3(A call )]TJ -/TT10 1 Tf -4.137 0 TD -(\(ALLOCSTRING 256\))Tj -/TT8 1 Tf -10.2017 0 TD -( allocates fresh instances of buffer)Tj --14.3387 -2.0667 TD -0.0189 Tw -[(2.)-583.3(After usage is completed the instance is returned to the free state, by putting it back in the global)]TJ -1.3333 -1.2222 TD -0 Tw -(variable )Tj -/TT10 1 Tf -3.8242 0 TD -(TEMPSTRINGBUFFER)Tj -/TT8 1 Tf -9.6016 0 TD -( where a subsequent call will find it)Tj --14.7591 -2.0667 TD -0.0133 Tw -[(3.)-583.3(The prog-binding of )]TJ -/TT10 1 Tf -10.5735 0 TD -0 Tw -(BUF)Tj -/TT8 1 Tf -1.8003 0 TD -0.0133 Tw -[( will get an existing instance of a string buffer if there is one -- otherwise it)]TJ --11.0405 -1.2889 TD -0 Tw -(will get a new instance which will later be available for reuse)Tj --1.3333 -2 TD -0.1178 Tw -[(4.)-583.3(Some initialization is performed before usage of the resource \(in this case, it is the setting of the)]TJ -1.3333 -1.2222 TD -0 Tw -(global variable )Tj -/TT10 1 Tf -6.8115 0 TD -(TEMPSTRINGBUFFER)Tj -/TT8 1 Tf -9.6016 0 TD -(\).)Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT14 12 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -75 0 obj -<< -/Length 5075 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-19)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(Given the following resources definition:)Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(PUTDEF)Tj -0.6667 -1 TD -( STRINGBUFFER )Tj -T* -( RESOURCES)Tj -T* -( \(NEW \(ALLOCSTRING 256\))Tj -T* -( FREE \(SETQ TEMPSTRINGBUFFER \(PROG1 . ARGS\)\))Tj -T* -( GET \(OR \(PROG1 TEMPSTRINGBUFFER)Tj -T* -( \(SETQ TEMPSTRINGBUFFER NIL\)\))Tj -T* -( \(NEWRESOURCE TEMPSTRINGBUFFER\)\)\))Tj -T* -( INIT \(SETQ TEMPSTRINGBUFFER NIL\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -(we could then redo the example above as )Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(DEFINEQ \(WITHSTRING NIL)Tj -0.6667 -1 TD -( \(PROG \(\(BUF \(GETRESOURCE STRINGBUFFER\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -(... use the string in the variable )Tj -/TT10 1 Tf -13.8018 0 TD -(BUF)Tj -/TT8 1 Tf -1.8003 0 TD -( ...)Tj -/TT10 1 Tf --10.2687 -1.6667 TD -( \(FREERESOURCE STRINGBUFFER BUF\))Tj -0.6667 -1 TD -( \(RETURN])Tj -/TT8 1 Tf --6 -1.8444 TD -0.0533 Tw -(The advantage of doing the coding this way is that the resource management part of )Tj -/TT10 1 Tf -38.3103 0 TD -0 Tw -(WITHSTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.0533 Tw -[( is)]TJ --44.3112 -1.2889 TD -0.3144 Tw -(fully contained in the expansions of )Tj -/TT10 1 Tf -17.9057 0 TD -0 Tw -(GETRESOURCE)Tj -/TT8 1 Tf -6.6011 0 TD -0.3144 Tw -[( and )]TJ -/TT10 1 Tf -2.8218 0 TD -0 Tw -(FREERESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -0.3144 Tw -(, and thus there is no)Tj --34.5297 -1.2889 TD -0.0167 Tw -(confusion between what is )Tj -/TT10 1 Tf -12.1067 0 TD -0 Tw -(WITHSTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.0167 Tw -[( code and what is resource management code. This particuar)]TJ --18.1077 -1.2889 TD -0.0367 Tw -(advantage will be multiplied if there are other functions which need a temporary string buffer; and)Tj -0 -1.2222 TD -0.0711 Tw -(of course, the resultant modularity makes it much easier to contemplate minor variations on, as well)Tj -T* -0 Tw -(as multiple clients of, the )Tj -/TT10 1 Tf -11.292 0 TD -(STRINGBUFFER)Tj -/TT8 1 Tf -7.2012 0 TD -( resource.)Tj --18.4932 -2.0667 TD -0.1456 Tw -(In fact, the scenario just shown above in the )Tj -/TT10 1 Tf -20.85 0 TD -0 Tw -(WITHSTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.1456 Tw -[( example is so commonly useful that an)]TJ --26.851 -1.2889 TD -0.2511 Tw -(abbreviation has been added; if a resources definition is made with *only* a )Tj -/TT10 1 Tf -36.8753 0 TD -0 Tw -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -0.2511 Tw -[( method, then)]TJ --38.6756 -1.2889 TD -0 Tw -(appropriate )Tj -/TT10 1 Tf -5.5154 0 TD -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -(, and )Tj -/TT10 1 Tf -2.5029 0 TD -0 Tw -(INIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -[( methods will be inferred, along with a coordinated globalvar, to be)]TJ --15.1493 -1.2889 TD -0 Tw -(parallel to the above definition. So the above definition could be more simply written)Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(PUTDEF STRINGBUFFER )Tj -0.6667 -1 TD -( RESOURCES)Tj -T* -( \(NEW \(ALLOCSTRING 256\)\)\))Tj -/TT8 1 Tf --6 -1.8444 TD -(and everything would work the same.)Tj -0 -2 TD -0.1111 Tw -(The macro )Tj -/TT10 1 Tf -5.1636 0 TD -0 Tw -(WITH-RESOURCES)Tj -/TT8 1 Tf -8.4014 0 TD -0.1111 Tw -[( simplifies the common scoping case, where at the beginning of some)]TJ --13.565 -1.2889 TD -0.15 Tw -(piece of code, there are one or more )Tj -/TT10 1 Tf -17.1883 0 TD -0 Tw -(GETRESOURCE)Tj -/TT8 1 Tf -6.6011 0 TD -0.15 Tw -[( calls the results of which are each bound to a)]TJ --23.7894 -1.2889 TD -0.0267 Tw -(lambda variable; and at the ending of that code a )Tj -/TT10 1 Tf -22.129 0 TD -0 Tw -(FREERESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0267 Tw -[( call is done on each instance. Since)]TJ --29.3301 -1.2889 TD -0.0844 Tw -(the resources are locally bound to variables with the same name as the resource itself, the definition)Tj -0 -1.2222 TD -0 Tw -(for )Tj -/TT10 1 Tf -1.5239 0 TD -(WITHSTRING)Tj -/TT8 1 Tf -6.001 0 TD -( then simplifies to)Tj -/TT10 1 Tf --2.1916 -1.6667 TD -(\(DEFINEQ \(WITHSTRING NIL)Tj -0.6667 -1 TD -( \(WITH-RESOURCES \(STRINGBUFFER\) )Tj -/TT12 1 Tf --6 -1.8444 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(... use the string in the variable )Tj -/TT10 1 Tf -13.8018 0 TD -(STRINGBUFFER)Tj -/TT8 1 Tf -7.2012 0 TD -( ...])Tj -/TT4 1 Tf -10 0 0 10 78 102.4 Tm -(Trade-offs in More Complicated Cases)Tj -/TT8 1 Tf -9 0 0 9 78 86.74 Tm -0.0355 Tw -(This simple example presumes that the various functions which use the resource are generally not re-)Tj -0 -1.2222 TD -0.01 Tw -[(entrant. While an occasional re-entrant use will be handled correctly \(another example of the resource)]TJ -T* -0.0056 Tw -(will simply be created\), if this were to happen too often, then many of the resource requests will create)Tj -T* -0.0533 Tw -[(and throw away new objects, which defeats one of the major purposes of using resources. A slightly)]TJ -T* -0.21 Tw -(more complex )Tj -/TT10 1 Tf -6.9825 0 TD -0 Tw -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.21 Tw -[( and )]TJ -/TT10 1 Tf -2.6129 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.21 Tw -[( method can be of much benefit in maintaining a pool of available)]TJ -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -78 0 obj -<< -/Length 8449 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-20)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1278 Tw -[(resources; if the resource were defined to maintain a list of free instances, then the )]TJ -/TT10 1 Tf -39.7139 0 TD -0 Tw -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.1278 Tw -[( method)]TJ --41.5142 -1.2889 TD -0.0844 Tw -(could simply take one off the list and the )Tj -/TT10 1 Tf -19.03 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -[( method could just push it back onto the list. In this)]TJ --21.4304 -1.2889 TD -0.0978 Tw -(simple example, the )Tj -/TT10 1 Tf -9.3983 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0978 Tw -[( in the )]TJ -/TT10 1 Tf -3.3036 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0978 Tw -[( method defined above would just become a push, and the)]TJ --17.5027 -1.2889 TD -0 Tw -(first clause of the )Tj -/TT10 1 Tf -7.7759 0 TD -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -( method would just be \(pop )Tj -/TT10 1 Tf -12.5117 0 TD -(TEMPSTRINGBUFFER)Tj -/TT8 1 Tf -9.6016 0 TD -(\))Tj --31.6895 -2.0667 TD -0.0911 Tw -(A word of caution: if the datatype of the resource is something very small that Medley is good at)Tj -0 -1.2222 TD -0.1233 Tw -(allocating and reclaiming, then explicit user storage management will probably not do much better)Tj -T* -0.0056 Tw -[(than the combination of cons/createcell and the garbage collector. This would especially be so if more)]TJ -T* -0 Tw -(complicated )Tj -/TT10 1 Tf -5.7266 0 TD -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -[( and )]TJ -/TT10 1 Tf -2.3151 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -[( methods were to be used, since their overhead would be closer to that of)]TJ --12.2424 -1.2889 TD -0.0056 Tw -[(the built-in system facilities. Finally, it must be considered whether retaining multiple instances of the)]TJ -0 -1.2222 TD -0.0556 Tw -(resource is a net gain; if the re-entrant case is truly rare, it may be more worthwhile to retain at most)Tj -T* -0.0667 Tw -(one instance, and simply let the instances created by the rarely-used case be reclaimed in the normal)Tj -T* -0 Tw -(course of garbage collection.)Tj -/TT4 1 Tf -10 0 0 10 126 419.2 Tm -(Macros for Accessing Resources)Tj -/TT8 1 Tf -9 0 0 9 126 403.54 Tm -(Four user-level macros are defined for accessing resources:)Tj -/TT10 1 Tf -2.6667 -2.1422 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(NEWRESOURCE)Tj -/F1 1 Tf -10 0 0 10 214.8 384.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.67 384.26 Tm -(RESOURCENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( . )Tj -/TT14 1 Tf -2.4004 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18548([Macro])]TJ -/TT10 1 Tf --20.1209 -1.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(FREERESOURCE)Tj -/F1 1 Tf -10 0 0 10 220.2 373.38 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.07 373.38 Tm -(RESOURCENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( . )Tj -/TT14 1 Tf -2.4004 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-17948([Macro])]TJ -/TT10 1 Tf --20.7209 -1.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(GETRESOURCE)Tj -/F1 1 Tf -10 0 0 10 214.8 362.5 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 217.67 362.5 Tm -(RESOURCENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( . )Tj -/TT14 1 Tf -2.4004 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18548([Macro])]TJ -/TT10 1 Tf --20.1209 -1.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(INITRESOURCE)Tj -/F1 1 Tf -10 0 0 10 220.2 351.62 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.07 351.62 Tm -(RESOURCENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( . )Tj -/TT14 1 Tf -2.4004 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-17948([Macro])]TJ --23.3876 -1.8444 TD -(Each of these macros behave as if they were defined as a substitution macro of the form)Tj -/TT10 1 Tf -5.3333 -1.6 TD -(\(\()Tj -/TT14 1 Tf -1.2002 0 TD -(RESOURCENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( . )Tj -/TT14 1 Tf -1.8003 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(MACROBODY)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf --24.5365 -1.8444 TD -0.2044 Tw -(where the expression )Tj -/TT14 1 Tf -10.2564 0 TD -0 Tw -(MACROBODY)Tj -/TT8 1 Tf -5.4009 0 TD -0.2044 Tw -[( is selected by using the code supplied by the corresponding)]TJ --15.6573 -1.2889 TD -0 Tw -(method from the )Tj -/TT14 1 Tf -7.7207 0 TD -(RESOURCENAME)Tj -/TT8 1 Tf -7.2012 0 TD -( definition.)Tj --14.9219 -2.0667 TD -0.0967 Tw -[(Note that it is possible to pass arguments to your resource allocation macros. For example, if the)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(GET)Tj -/TT8 1 Tf -1.8003 0 TD -0.1878 Tw -[( method for the resource )]TJ -/TT10 1 Tf -12.0414 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1878 Tw -[( is )]TJ -/TT10 1 Tf -1.5904 0 TD -0.45 Tw -(\(GETFOO . ARGS\))Tj -/TT8 1 Tf -9.9015 0 TD -0.1878 Tw -(, then )Tj -/TT10 1 Tf -3.0948 0 TD -0.45 Tw -(\(GETRESOURCE FOO X Y\))Tj -/TT8 1 Tf -13.952 0 TD -0.1878 Tw -[( is)]TJ --44.1807 -1.2889 TD -0.0889 Tw -(transformed into )Tj -/TT10 1 Tf -7.8965 0 TD -0.2122 Tw -(\(GETFOO X Y\))Tj -/TT8 1 Tf -7.6256 0 TD -0.0889 Tw -[(. This form was used in the )]TJ -/TT10 1 Tf -13.1623 0 TD -0 Tw -(FREE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0889 Tw -[( method of the )]TJ -/TT10 1 Tf -7.0484 0 TD -0 Tw -(STRINGBUFFER)Tj -/TT8 1 Tf --38.1333 -1.2889 TD -(resource described above, to pass the old )Tj -/TT10 1 Tf -18.3501 0 TD -(STRINGBUFFER)Tj -/TT8 1 Tf -7.2012 0 TD -( object to be freed.)Tj -/TT10 1 Tf --22.8846 -2.2089 TD -(\()Tj -/TT16 1 Tf -0.6001 0 TD -(WITH-RESOURCES)Tj -/TT10 1 Tf -8.3999 0 TD -( \()Tj -/TT14 1 Tf -1.2002 0 TD -(RESOURCE)Tj -6 0 0 6 285 217.74 Tm -(1)Tj -/TT10 1 Tf -9 0 0 9 288.6 219.74 Tm -( )Tj -/TT14 1 Tf -0.6001 0 TD -(RESOURCE)Tj -6 0 0 6 337.2 217.74 Tm -(2)Tj -/TT10 1 Tf -9 0 0 9 340.8 219.74 Tm -( ...\))Tj -/F1 1 Tf -10 0 0 10 367.8044 219.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 373.5444 219.74 Tm -(FORM)Tj -6 0 0 6 395.14 217.74 Tm -(1)Tj -/F1 1 Tf -10 0 0 10 398.74 219.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 401.61 219.74 Tm -(FORM)Tj -6 0 0 6 423.21 217.74 Tm -(2)Tj -/TT10 1 Tf -9 0 0 9 426.81 219.74 Tm -( ...\))Tj -/TT8 1 Tf -3.0005 0 TD -[( )-4911.7([Macro])]TJ --31.0905 -1.95 TD -(The )Tj -/TT10 1 Tf -1.9949 0 TD -(WITH-RESOURCES)Tj -/TT8 1 Tf -8.4014 0 TD -0.0711 Tw -[( macro binds lambda variables of the same name as the resources)]TJ --10.3963 -1.2889 TD -0.0233 Tw -(\(for each of the resources )Tj -/TT14 1 Tf -11.4331 0 TD -0 Tw -(RESOURCE)Tj -6 0 0 6 320.13 188.59 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 323.73 190.59 Tm -(, )Tj -/TT14 1 Tf -0.5233 0 TD -(RESOURCE)Tj -6 0 0 6 371.64 188.59 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 375.24 190.59 Tm -0.0233 Tw -(, etc.\) to the result of the )Tj -/TT10 1 Tf -11.0388 0 TD -0 Tw -(GETRESOURCE)Tj -/TT8 1 Tf --33.3988 -1.3944 TD -0.2956 Tw -(macro; then executes the forms )Tj -/TT14 1 Tf -15.4324 0 TD -0 Tw -(FORM)Tj -6 0 0 6 334.51 176.04 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 338.11 178.04 Tm -(, )Tj -/TT14 1 Tf -0.7956 0 TD -(FORM)Tj -6 0 0 6 366.87 176.04 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 370.47 178.04 Tm -0.2956 Tw -(, etc., does a )Tj -/TT10 1 Tf -6.7408 0 TD -0 Tw -(FREERESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -0.2956 Tw -[( on each)]TJ --35.772 -1.3944 TD -0.3889 Tw -(instance, and returns the value of the last form \(evaluated and saved before the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FREERESOURCE)Tj -/TT8 1 Tf -7.2012 0 TD -(s\).)Tj -/TT12 1 Tf --7.2012 -2.0667 TD -(Note)Tj -/TT8 1 Tf -2.2222 0 TD -0.3322 Tw -(: )Tj -/TT10 1 Tf -1.4144 0 TD -0 Tw -(\(WITH-RESOURCES )Tj -/TT14 1 Tf -10.3982 0 TD -(RESOURCE)Tj -/TT10 1 Tf -4.8008 0 TD -0.7967 Tw -[( ...\))]TJ -/TT8 1 Tf -3.7972 0 TD -0.3322 Tw -[( is interpreted the same as )]TJ -/TT10 1 Tf -13.7692 0 TD -0 Tw -(\(WITH-)Tj --36.402 -1.2889 TD -0.11 Tw -(RESOURCES \()Tj -/TT14 1 Tf -6.7111 0 TD -0 Tw -(RESOURCE)Tj -/TT10 1 Tf -4.8008 0 TD -0.11 Tw -(\) ...\))Tj -/TT8 1 Tf -3.7106 0 TD -0.0456 Tw -[(. Also, the singular name )]TJ -/TT10 1 Tf -11.7851 0 TD -0 Tw -(WITH-RESOURCE)Tj -/TT8 1 Tf -7.8013 0 TD -0.0456 Tw -[( is accepted)]TJ --34.8088 -1.2889 TD -0 Tw -(as a synonym for )Tj -/TT10 1 Tf -7.8267 0 TD -(WITH-RESOURCES)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 92.75 Tm -(Saving Resources in a File)Tj -/TT8 1 Tf -9 0 0 9 126 77.09 Tm -0.1633 Tw -(Resources definitions may be saved on files using the )Tj -/TT10 1 Tf -25.2762 0 TD -0 Tw -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1633 Tw -[( file package command \(see the)]TJ --30.677 -1.2889 TD -0.1811 Tw -[(Miscellaneous File Package Commands section of Chapter 17\). Typically, one only needs the full)]TJ -0 -1.2222 TD -0.2422 Tw -(definition available when compiling or interpreting the code, so it is appropriate to put the file)Tj -T* -0.0033 Tw -(package command in a )Tj -/TT10 1 Tf -10.4709 0 TD -0.0078 Tw -(\(DECLARE: EVAL@COMPILE DONTCOPY ...\))Tj -/TT8 1 Tf -21.6269 0 TD -0.0001 Tc -0.0032 Tw -( declaration, just as one might)Tj -ET -endstream -endobj -79 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT12 11 0 R -/TT14 12 0 R -/TT16 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -81 0 obj -<< -/Length 1406 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-21)Tj -/TT6 1 Tf -10 0 0 10 418.98 612 Tm -(MISCELLANEOUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0333 Tw -(do for a )Tj -/TT10 1 Tf -3.7807 0 TD -0 Tw -(RECORDS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0333 Tw -[( declaration. But just as certain record declarations need *some* initialization in the)]TJ --7.9813 -1.2889 TD -0.12 Tw -[(run-time environment, so do most resources. This initialization is specified by the resources )]TJ -/TT10 1 Tf -42.9241 0 TD -0 Tw -(INIT)Tj -/TT8 1 Tf --42.9241 -1.2889 TD -0.0756 Tw -(method, which is executed automatically when the resource is defined by the )Tj -/TT10 1 Tf -35.2514 0 TD -0 Tw -(PUTDEF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0756 Tw -[( output by the)]TJ -/TT10 1 Tf --38.852 -1.2889 TD -0 Tw -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1556 Tw -[( command. However, if the )]TJ -/TT10 1 Tf -13.9282 0 TD -0 Tw -(RESOURCES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1556 Tw -[( command is in a )]TJ -/TT10 1 Tf -8.5639 0 TD -0 Tw -(DONTCOPY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1556 Tw -[( expression and)]TJ --38.0947 -1.2889 TD -0.0933 Tw -(thus is not included in the compiled file, then it is necessary to include a separate )Tj -/TT10 1 Tf -37.5197 0 TD -0 Tw -(INITRESOURCES)Tj -/TT8 1 Tf --37.5197 -1.2889 TD -0.11 Tw -(command \(see the Miscellaneous File Manager Commands section of Chapter 17\) in the filecoms to)Tj -0 -1.2222 TD -(insure that the resource is properly initialized.)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -85 0 obj -<< -/Length 198 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-22)Tj -/TT6 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -86 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -88 0 obj -<< -/Length 66 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(12-23)Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -36 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream --)5US5_u__ -endstream -endobj -37 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 14 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -wͣm}_c -endstream -endobj -38 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 14 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -wM2_b'at -endstream -endobj -14 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -96 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -97 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -98 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -99 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -100 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -101 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 92 -/Widths [287 296 333 574 574 833 852 241 389 389 500 606 278 333 278 278 -574 574 574 574 574 574 574 574 574 574 278 278 606 606 606 500 -747 759 778 778 833 759 722 833 870 444 648 815 722 981 833 833 -759 833 815 667 722 833 759 981 722 722 667 389 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 99 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 41 -/Widths [278 333 400 556 556 833 852 278 333 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 100 0 R ->> -endobj -35 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 114 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 101 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 90 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 611 778 0 278 0 0 611 833 722 778 -0 0 722 667 611 722 667 0 0 0 0 0 0 0 0 0 -0 556 0 556 611 556 333 611 0 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 0 556 556 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 91 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -0 0 722 667 0 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 92 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 778 0 333 333 389 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 0 0 444 -0 778 611 709 774 611 556 763 832 337 333 0 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 93 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 600 600 600 0 0 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 94 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [250 0 0 0 0 0 0 0 0 333 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 500 0 444 0 500 0 0 0 0 0 0 0 889 0 556 -0 0 389 444 333 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 95 0 R ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 600 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 0 600 600 600 0 0 0 600 0 600 600 600 600 600 -0 0 600 600 600 600 600 0 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 96 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 117 -/Widths [600 600 0 0 0 0 0 0 0 0 0 0 0 600 0 0 -0 0 600 0 600 600 600 600 600 600 600 600 600 0 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 -0 0 0 0 600 0 0 600 600 600 600 0 600 0 0 600 -600 600 600 600 0 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 97 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 63 -/LastChar 117 -/Widths [500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 444 0 407 0 389 0 500 500 278 0 0 278 778 556 -444 500 0 389 389 333 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 98 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -77 0 obj -<< -/Type /Page -/Parent 52 0 R -/Resources 79 0 R -/Contents 78 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 83 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -84 0 obj -<< -/Type /Page -/Parent 83 0 R -/Resources 86 0 R -/Contents 85 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 83 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -102 0 obj -<< -/S /D ->> -endobj -103 0 obj -<< -/Nums [0 102 0 R ] ->> -endobj -15 0 obj -<< -/Type /Pages -/Kids [1 0 R 16 0 R 20 0 R 23 0 R 26 0 R 29 0 R 32 0 R 39 0 R 42 0 R 45 0 R] -/Count 10 -/Parent 51 0 R ->> -endobj -52 0 obj -<< -/Type /Pages -/Kids [48 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R 74 0 R 77 0 R] -/Count 10 -/Parent 51 0 R ->> -endobj -83 0 obj -<< -/Type /Pages -/Kids [80 0 R 84 0 R 87 0 R] -/Count 3 -/Parent 51 0 R ->> -endobj -51 0 obj -<< -/Type /Pages -/Kids [15 0 R 52 0 R 83 0 R ] -/Count 23 -/MediaBox [0 0 612 792] ->> -endobj -104 0 obj -<< -/CreationDate (D:20210202102647-06'00') -/ModDate (D:20210202102647-06'00') -/Producer (Apple pstopdf) ->> -endobj -105 0 obj -<< -/Type /Catalog -/Pages 51 0 R -/PageLabels 103 0 R ->> -endobj -xref -0 106 -0000000000 65535 f -0000137653 00000 n -0000000016 00000 n -0000005977 00000 n -0000132814 00000 n -0000133231 00000 n -0000133955 00000 n -0000134166 00000 n -0000134602 00000 n -0000134912 00000 n -0000135475 00000 n -0000136055 00000 n -0000136423 00000 n -0000136935 00000 n -0000130241 00000 n -0000139653 00000 n -0000137734 00000 n -0000006178 00000 n -0000012476 00000 n -0000137339 00000 n -0000137818 00000 n -0000012670 00000 n -0000018246 00000 n -0000137902 00000 n -0000018389 00000 n -0000022944 00000 n -0000137986 00000 n -0000023089 00000 n -0000028837 00000 n -0000138070 00000 n -0000029018 00000 n -0000035955 00000 n -0000138154 00000 n -0000036160 00000 n -0000043785 00000 n -0000133444 00000 n -0000129739 00000 n -0000129905 00000 n -0000130073 00000 n -0000138238 00000 n -0000044036 00000 n -0000050126 00000 n -0000138322 00000 n -0000050310 00000 n -0000057109 00000 n -0000138406 00000 n -0000057300 00000 n -0000061901 00000 n -0000138490 00000 n -0000062127 00000 n -0000067478 00000 n -0000140016 00000 n -0000139790 00000 n -0000138574 00000 n -0000067636 00000 n -0000074801 00000 n -0000138658 00000 n -0000074981 00000 n -0000081419 00000 n -0000138742 00000 n -0000081597 00000 n -0000088342 00000 n -0000138826 00000 n -0000088533 00000 n -0000096143 00000 n -0000138910 00000 n -0000096345 00000 n -0000102615 00000 n -0000138994 00000 n -0000102830 00000 n -0000107986 00000 n -0000139078 00000 n -0000108140 00000 n -0000113431 00000 n -0000139162 00000 n -0000113587 00000 n -0000118715 00000 n -0000139246 00000 n -0000118871 00000 n -0000127373 00000 n -0000139330 00000 n -0000127565 00000 n -0000129024 00000 n -0000139928 00000 n -0000139414 00000 n -0000129156 00000 n -0000129406 00000 n -0000139498 00000 n -0000129525 00000 n -0000129642 00000 n -0000130382 00000 n -0000130579 00000 n -0000130785 00000 n -0000130980 00000 n -0000131180 00000 n -0000131371 00000 n -0000131576 00000 n -0000131777 00000 n -0000131979 00000 n -0000132182 00000 n -0000132394 00000 n -0000132605 00000 n -0000139582 00000 n -0000139611 00000 n -0000140115 00000 n -0000140239 00000 n -trailer -<< -/Size 106 -/Root 105 0 R -/Info 104 0 R -/ID [<378b03b9164b7a07508d30e34d6bf86e><378b03b9164b7a07508d30e34d6bf86e>] ->> -startxref -140311 -%%EOF diff --git a/docs/medley-irm/13-EXECUTIVE.pdf b/docs/medley-irm/13-EXECUTIVE.pdf deleted file mode 100644 index 368dfb06..00000000 --- a/docs/medley-irm/13-EXECUTIVE.pdf +++ /dev/null @@ -1,9723 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 3856 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-1)Tj -/TT4 1 Tf -10 0 0 10 379.96 568.2 Tm -(13. MEDLEY EXECUTIVES)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 564.99 m -510.01 564.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 542.54 Tm -0.1269 Tw -(In most Common Lisp implementations, there is a top-level read-eval-print loop, which reads an)Tj -0 -1.2222 TD -0.0144 Tw -[(expression, evaluates it, and prints the results. In Medley, the Exec acts as the top-level loop, but does)]TJ -T* -0 Tw -(much more. )Tj -0 -2 TD -0.0389 Tw -(The Exec traps all )Tj -/TT8 1 Tf -8.2073 0 TD -0 Tw -(THROWS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0389 Tw -[(, and recovers gracefully. It prints all values resulting from evaluation, on)]TJ --11.8079 -1.2889 TD -0 Tw -(separate lines. \(When zero values are returned, nothing is printed\).)Tj -0 -2 TD -0.0344 Tw -(The Exec keeps track of your previous inputs, in the history list. Each entry you type creates a history)Tj -0 -1.2222 TD -0 Tw -(event, which sotres the input and its values.)Tj -0 -2 TD -0.01 Tw -(Its easy to use the results of earlier events, redo and event, or recall an earlier input, edit it, and run it.)Tj -0 -1.2222 TD -0 Tw -(This makes it much easier to get your work done.)Tj -/TT4 1 Tf -10 0 0 10 54 410.6 Tm -(Multiple Execs and the Execs Type)Tj -ET -1 w -54.01 407.89 m -510.01 407.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 393.94 Tm -0.0922 Tw -[(Sometimes you need more than one Exec open at a time. Its easy to open as many as you need by)]TJ -T* -0.1589 Tw -[(using the right button background menu and selecting the kind of Exec you need. The Execs are)]TJ -T* -0.0089 Tw -[(differentiated from one another by their "names" in their title bars and by their prompts. For example,)]TJ -T* -0.0167 Tw -(the second Exec you open may have a prompt like )Tj -/TT8 1 Tf -22.6364 0 TD -0 Tw -(2/50>)Tj -/TT6 1 Tf -3.0005 0 TD -0.0167 Tw -[( if its the second Common Lisp Exec youve)]TJ --25.6369 -1.2889 TD -0 Tw -(opened. Events in each Exec are placed on the global history list with their Exec number so the system)Tj -0 -1.2222 TD -(can tell them apart.)Tj -0 -2 TD -0.0467 Tw -(Several variables are very important to an Exec since they control the format of reading and printing.)Tj -0 -1.2222 TD -0.2622 Tw -[(Together these variables describe a type of exec, or its mode. Some standard bindings for the)]TJ -T* -0.0778 Tw -[(variables have been named to make mode setting easy. The names provide you with an Exec of the)]TJ -T* -0.2478 Tw -(Common Lisp \()Tj -/TT8 1 Tf -7.4038 0 TD -0 Tw -(LISP)Tj -/TT6 1 Tf -2.4004 0 TD -0.2478 Tw -(\), Interlisp or Old Interlisp \()Tj -/TT8 1 Tf -13.486 0 TD -0 Tw -(IL)Tj -/TT6 1 Tf -1.2002 0 TD -0.2478 Tw -(\), or Medley \()Tj -/TT8 1 Tf -6.7121 0 TD -0 Tw -(XCL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2478 Tw -[(\) type. An Execs type is)]TJ --33.0027 -1.2889 TD -0 Tw -(displayed in the title bar of its window:)Tj -ET -q -138.5 0 0 -61 212.76 264.19 cm -/Im1 Do -Q -BT -/TT4 1 Tf -10 0 0 10 54 185.4 Tm -(A Brief Example of Exec Interactions)Tj -ET -54.01 182.69 m -510.01 182.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 168.74 Tm -0.0467 Tw -[(The following dialogue contains examples and gives the flavor of the use of an Exec. The commands)]TJ -0 -1.2222 TD -0.0122 Tw -[(are described in greater detail in the following sections. For now, be sure to type these examples to an)]TJ -T* -0.0056 Tw -(Exec whose )Tj -/TT8 1 Tf -5.4257 0 TD -0 Tw -(*PACKAGE*)Tj -/TT6 1 Tf -5.401 0 TD -0.0056 Tw -[( is set to the )]TJ -/TT8 1 Tf -5.4809 0 TD -0 Tw -(XCL-USER)Tj -/TT6 1 Tf -4.8008 0 TD -0.0056 Tw -[( package. The Exec that Medley starts up with is set to)]TJ --21.1084 -1.2889 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.7394 0 TD -(XCL-USER)Tj -/TT6 1 Tf -4.8008 0 TD -0.1022 Tw -[( package. Each prompt consists of an Exec number, an event number and a prompt)]TJ --6.5402 -1.2889 TD -0 Tw -(character \(> for Common Lisp and )Tj -/TT9 1 Tf -17.0459 0 TD -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -( for Interlisp\). )Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R ->> -/XObject << -/Im1 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 1932 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-2)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -ET -q -137 0 0 -87 261.51 575.99 cm -/Im2 Do -Q -BT -/TT6 1 Tf -9 0 0 9 126 475.54 Tm -(You have instructed the Exec to UNDO the previous event.)Tj -ET -q -137 0 0 -87 261.51 463.99 cm -/Im3 Do -Q -BT -9 0 0 9 126 363.54 Tm -0.0778 Tw -(The Exec accepts input both in )Tj -/TT8 1 Tf -14.1918 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0778 Tw -[( format \(the )]TJ -/TT8 1 Tf -5.6865 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -(\) and )Tj -/TT8 1 Tf -2.6814 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -[( format \(the )]TJ -/TT8 1 Tf -5.6865 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -[(\). In event 1196,)]TJ --37.8477 -1.2889 TD -0 Tw -(you added a property )Tj -/TT8 1 Tf -9.916 0 TD -(MYPROP)Tj -/TT6 1 Tf -3.6006 0 TD -( to the symbols )Tj -/TT8 1 Tf -6.936 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(C)Tj -/TT6 1 Tf -0.6001 0 TD -(. )Tj -ET -q -137 0 0 -87 261.51 339.79 cm -/Im4 Do -Q -BT -9 0 0 9 126 239.34 Tm -0.22 Tw -[(You told the Exec to go back to event 1196, substitute )]TJ -/TT8 1 Tf -26.6029 0 TD -0 Tw -(LST2)Tj -/TT6 1 Tf -2.4004 0 TD -0.22 Tw -[( for )]TJ -/TT8 1 Tf -2.2139 0 TD -0 Tw -(LST1)Tj -/TT6 1 Tf -2.4004 0 TD -0.22 Tw -(, and then re-execute the)Tj --33.6176 -1.2889 TD -0 Tw -(expression.)Tj -ET -q -138.5 0 0 -61 260.76 216.19 cm -/Im5 Do -Q -BT -9 0 0 9 126 141.74 Tm -(If )Tj -/TT8 1 Tf -0.9199 0 TD -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -( were computationally expensive \(it isnt\), you might be caching its value for later use.)Tj -ET -q -138.5 0 0 -61 260.76 129.59 cm -/Im6 Do -Q -BT -9 0 0 9 126 55.14 Tm -0.07 Tw -(You now decide you would like to redo the )Tj -/TT8 1 Tf -20.0695 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -0.07 Tw -[( with a different value. You can specify the event)]TJ --22.4698 -1.2889 TD -0 Tw -(using any symbol in the expression.)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R ->> -/XObject << -/Im2 16 0 R -/Im3 17 0 R -/Im4 18 0 R -/Im5 19 0 R -/Im6 20 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -22 0 obj -<< -/Length 4189 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-3)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -ET -q -137.5 0 0 -72.5 213.26 575.99 cm -/Im7 Do -Q -BT -/TT6 1 Tf -9 0 0 9 78 490.04 Tm -0.0456 Tw -(Here you ask the Exec \(using the )Tj -/TT8 1 Tf -15.0523 0 TD -0 Tw -(??)Tj -/TT6 1 Tf -1.2002 0 TD -0.0456 Tw -[( command\) what it has on its history list for the last input. Since)]TJ --16.2525 -1.2889 TD -0.0222 Tw -(the event corresponds to a command, the Exec displays both the original command and the generated)Tj -0 -1.2222 TD -0 Tw -(input.)Tj -0 -2 TD -0.0944 Tw -(Youll usually deal with the Exec at top level or in the debugger, where you type in expressions for)Tj -0 -1.2222 TD -0.0001 Tc -0.0043 Tw -(evaluation, and see the values printed out. An Exec acts much like a standard Lisp top-level loop, but)Tj -T* -0 Tc -0.0633 Tw -[(before it evaluates an input, it first adds it to the history list. If the operation is aborted or causes an)]TJ -T* -0 Tw -(error, the input is still available for you to modify or re-execute.)Tj -0 -2 TD -0.08 Tw -(After updating the history list, the Exec executes the computation \(i.e., evaluates the form or applies)Tj -0 -1.2222 TD -0.1044 Tw -(the function to its arguments\), saves the value in the history-list entry for that input, and prints the)Tj -T* -0 Tw -(result. Finally the Exec displays a prompt to show its again ready for input.)Tj -/TT4 1 Tf -10 0 0 10 54 354.1 Tm -(Input Formats)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 351.39 m -510.01 351.39 l -S -BT -/TT6 1 Tf -9 0 0 9 78 337.44 Tm -0.0589 Tw -(The Exec accepts three forms of input: an expression to be evaluated \()Tj -/TT8 1 Tf -31.4323 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0589 Tw -(-format\), a function-name)Tj --33.8326 -1.2889 TD -0 Tw -(and arguments to apply it to \()Tj -/TT8 1 Tf -13.1846 0 TD -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -(-format\), and Exec commands, as follows:)Tj -/TT8 1 Tf --16.5551 -2.0667 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0289 Tw -[(-format )28.9(input)-667(If you type a single expression, either followed by a carriage-return, or, in the case)]TJ -6.6363 -1.2889 TD -0.0189 Tw -(of a list, terminated with balanced parenthesis, the expression is evaluated and the)Tj -0 -1.2222 TD -0 Tw -(value is returned. For example, if the value of )Tj -/TT8 1 Tf -20.5972 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -( is the list )Tj -/TT8 1 Tf -4.4341 0 TD -(\(A B C\))Tj -/TT6 1 Tf -4.2007 0 TD -(:)Tj -ET -q -103.5 0 0 -38.5 269.26 275.49 cm -/Im8 Do -Q -BT -9 0 0 9 156 223.54 Tm -0.2067 Tw -(Similarly, if you type a Lisp expression, beginning with a left parenthesis and)Tj -0 -1.2222 TD -0.03 Tw -(terminated by a matching right parenthesis, the form is simply passed to )Tj -/TT8 1 Tf -32.7042 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.03 Tw -[( for)]TJ --35.1046 -1.2889 TD -0.0989 Tw -[(evaluation. Notice that it is not necessary to type a carriage return at the end of)]TJ -0 -1.2222 TD -0.0089 Tw -[(such a form; the reader will supply one automatically. If a carriage-return is typed)]TJ -T* -0.1144 Tw -(before the final matching right parenthesis or bracket, it is treated the same as a)Tj -T* -0 Tw -(space, and input continues. The following examples are interpreted identically:)Tj -ET -q -101.5 0 0 -55 270.26 159.39 cm -/Im9 Do -Q -BT -/TT8 1 Tf -9 0 0 9 67.02 90.94 Tm -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0578 Tw -[(-format )57.8(input )-609.1(Often, you call functions with constant argument values, which would have to be)]TJ -6.8862 -1.2889 TD -0.0544 Tw -(quoted if you typed them in )Tj -/TT8 1 Tf -12.9971 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0544 Tw -[(-format. For convenience, if you type a symbol)]TJ --15.3975 -1.2889 TD -0.0589 Tw -(immediately followed by a list, the symbol is )Tj -/TT8 1 Tf -20.538 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0589 Tw -(ed to the elements within the)Tj --23.5385 -1.2889 TD -0.0567 Tw -[(list, unevaluated. The input is terminated by the matching right parenthesis. For)]TJ -0 -1.2222 TD -0.1222 Tw -(example, typing )Tj -/TT8 1 Tf -7.6561 0 TD -0 Tw -(LOAD\(FOO\))Tj -/TT6 1 Tf -5.4009 0 TD -0.1222 Tw -[( is equivalent to typing )]TJ -/TT8 1 Tf -11.0369 0 TD -0.2922 Tw -(\(LOAD FOO\))Tj -/TT6 1 Tf -6.8933 0 TD -0.1222 Tw -(, and )Tj -/TT8 1 Tf -2.6873 0 TD -0 Tw -(GET\(X)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R ->> -/XObject << -/Im7 24 0 R -/Im8 25 0 R -/Im9 26 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -28 0 obj -<< -/Length 4618 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-4)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 204 569.54 Tm -(COLOR\))Tj -/TT6 1 Tf -3.6006 0 TD -0.0967 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.6499 0 TD -0.2333 Tw -(\(GET X COLOR\))Tj -/TT6 1 Tf -9.4681 0 TD -0.0967 Tw -[(. As a simple special case, a single)]TJ --20.7186 -1.2889 TD -0.1633 Tw -(right parenthesis is treated as a balanced set of parentheses, e.g.)Tj -/TT8 1 Tf -29.7456 0 TD -0.3911 Tw -[( UNBREAK\))]TJ -/TT6 1 Tf -5.792 0 TD -0.1633 Tw -[( is)]TJ --35.5376 -1.2889 TD -0 Tw -(equivalent to)Tj -/TT8 1 Tf -5.7983 0 TD -( UNBREAK\(\))Tj -/TT6 1 Tf --5.7983 -2.0667 TD -0.3311 Tw -(The reader will only supply the carriage return automatically if no space)Tj -0 -1.2222 TD -0.0156 Tw -(appears between the initial symbol and the list that follows; if there is a space after)Tj -T* -0.07 Tw -(the initial symbol on the line and the list that follows, the input is not terminated)Tj -T* -0 Tw -(until you type a carriage return.)Tj -0 -2 TD -0.0033 Tw -(The Exec will not consider unparenthesized input with more than one argument to)Tj -0 -1.2222 TD -0 Tw -(be in apply format, e.g.:)Tj -/TT8 1 Tf -0 -1.6667 TD -(LIST\(1\))Tj -/TT6 1 Tf -4.6667 0 TD -(is apply format \(executes after closing parenthesis is typed\))Tj -/TT8 1 Tf --4.6667 -1.7333 TD -(LIST \(1\))Tj -/TT6 1 Tf -6.6667 0 TD -0.16 Tw -(is apply format \(second argument is a list, no trailing arguments)Tj --2 -1.2889 TD -0 Tw -(given\))Tj -/TT8 1 Tf --4.6667 -1.6667 TD -(LIST \(1\) 2 3)Tj -/TT6 1 Tf -8.6667 0 TD -(is NOT apply format, arguments are evaluated)Tj -/TT8 1 Tf --8.6667 -1.7333 TD -(LIST 1 2 3)Tj -/TT6 1 Tf -6.6667 0 TD -(is NOT apply format, arguments are evaluated)Tj -/TT8 1 Tf --6.6667 -1.7333 TD -(LIST 1)Tj -/TT6 1 Tf -3.6033 0 TD -(not legal input: second argument is not a list)Tj --3.6033 -2.0667 TD -(Note that )Tj -/TT8 1 Tf -4.4165 0 TD -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -(-format input cannot be used for macros or special forms.)Tj --15.5081 -2.0667 TD -0.0156 Tw -[(Exec )15.6(commands )-653.6(The Exec recognizes a number of commands, which usually refer to past events on)]TJ -8.0911 -1.2222 TD -0.05 Tw -[(the history list. These commands are treated specially; for example, they may not)]TJ -T* -0.1233 Tw -[(be put on the history list. The format of a command is always a line beginning)]TJ -T* -0.0344 Tw -[(with the command name. \(The Exec looks up the command name independent of)]TJ -T* -0.2667 Tw -(package.\) The remainder of the line, if any, is treated as arguments to the)Tj -T* -0 Tw -(command. For example,)Tj -/TT8 1 Tf -0 -1.6667 TD -(128> UNDO)Tj -0 -1 TD -(mapc undone)Tj -0 -1.4444 TD -(129> UNDO \(FOO --\))Tj -0 -1 TD -(foo undone)Tj -/TT6 1 Tf -0 -1.8444 TD -(are both valid command inputs.)Tj -/TT4 1 Tf -10 0 0 10 102 200.2 Tm -(Event Specification)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 197.49 m -558.01 197.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 183.54 Tm -0.1944 Tw -(Exec commands, like )Tj -/TT8 1 Tf -10.1244 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.1944 Tw -[(, frequently refer to previous events in the sessions history. All Exec)]TJ --12.5248 -1.2889 TD -0.0244 Tw -(commands use the same conventions and syntax for indicating which event\(s\) the command refers to.)Tj -0 -1.2222 TD -0 Tw -(This section shows you the syntax used to specify previous events.)Tj -0 -2 TD -0.0611 Tw -[(An event address identifies one event on the history list. For example, the event address 42 refers to)]TJ -0 -1.2222 TD -0.13 Tw -[(the event with event number 42, and -2 refers to two events back in the current Exec. Usually, an)]TJ -T* -0 Tw -(event address will contain only one or two commands.)Tj -0 -2 TD -0.0233 Tw -[(Event addresses can be concatenated. For example, if )]TJ -/TT8 1 Tf -24.1163 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0233 Tw -[( refers to event )]TJ -/TT8 1 Tf -6.9014 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5233 0 TD -0.0556 Tw -(FOO FIE)Tj -/TT6 1 Tf -4.2562 0 TD -0.0233 Tw -[( will refer to the)]TJ --38.1977 -1.2889 TD -0 Tw -(first event before event )Tj -/TT8 1 Tf -10.4165 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( which contains )Tj -/TT8 1 Tf -7.1777 0 TD -(FIE)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --19.9946 -2.0667 TD -0.1178 Tw -(The symbols used in event addresses \(such as )Tj -/TT8 1 Tf -21.3695 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6178 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.1178 Tw -[(, etc.\) are compared with )]TJ -/TT8 1 Tf -12.1544 0 TD -0 Tw -(STRING-EQUAL)Tj -/TT6 1 Tf -7.2012 0 TD -0.1178 Tw -(, so)Tj --43.7432 -1.2889 TD -0.1411 Tw -(that it does not matter what the current package is when you type an event address symbol to an)Tj -0 -1.2222 TD -0 Tw -(Exec.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -31 0 obj -<< -/Length 6509 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-5)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.1133 Tw -(Specifications used below of the form )Tj -/TT13 1 Tf -17.4993 0 TD -0 Tw -(EventAddress)Tj -/TT6 1 Tf -7.2012 0 TD -0.1133 Tw -[( refer to event addresses, as described above.)]TJ --24.7005 -1.2889 TD -0.0633 Tw -(Since an event address may contain multiple words, the event address is parsed by searching for the)Tj -0 -1.2222 TD -0.2256 Tw -[(words which delimit it. For example, in )]TJ -/TT13 1 Tf -19.7551 0 TD -0 Tw -(EventAddress)Tj -6 0 0 6 320.62 544.94 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 324.22 546.94 Tm -0.5422 Tw -[( AND )]TJ -/TT13 1 Tf -4.0849 0 TD -0 Tw -(EventAddress)Tj -6 0 0 6 425.78 544.94 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 429.38 546.94 Tm -0.2256 Tw -(, the notation)Tj -/TT13 1 Tf --39.0422 -1.3944 TD -0 Tw -(EventAddress)Tj -6 0 0 6 142.8 532.39 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 146.4 534.39 Tm -0.5244 Tw -[( corresponds to all words up to the )]TJ -/TT8 1 Tf -19.8689 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.5244 Tw -[( in the event specification, and)]TJ -/TT13 1 Tf --29.2692 -1.3944 TD -0 Tw -(EventAddress)Tj -6 0 0 6 142.8 519.84 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 146.4 521.84 Tm -( to all words after the )Tj -/TT8 1 Tf -9.6841 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -( in the event specification.)Tj --19.0844 -2.1722 TD -(Event addresses are interpreted as follows:)Tj -/TT8 1 Tf -2.0433 -2 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -[( \(an integer\))-666.8(If )]TJ -/TT8 1 Tf -7.0298 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( is positive, it refers to the event with event number )]TJ -/TT8 1 Tf -23.9631 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0867 Tw -[( \(no matter which Exec)]TJ --26.1699 -1.2889 TD -0.1822 Tw -(the event occurred in.\) If )Tj -/TT8 1 Tf -12.022 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1822 Tw -[( is negative, it always refers to the event )]TJ -/TT8 1 Tf -19.5506 0 TD -0 Tw -(-N)Tj -/TT6 1 Tf -1.2002 0 TD -0.1822 Tw -[( events)]TJ --33.3729 -1.2889 TD -0 Tw -(backwards, counting only events belonging to the current Exec.)Tj -/TT8 1 Tf --1.2667 -2 TD -(F)Tj -/TT6 1 Tf -1.2667 0 TD -0.0678 Tw -(Specifies that the next object in the event address is to be searched for, regardless)Tj -0 -1.2889 TD -0 Tw -(of what it is. For example, )Tj -/TT8 1 Tf -11.9492 0 TD -(F -2)Tj -/TT6 1 Tf -2.4004 0 TD -( looks for an event containing )Tj -/TT8 1 Tf -13.3501 0 TD -(-2)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --37.5632 -2.0667 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventAddress)Tj -/TT6 1 Tf -6.0129 -1.7333 TD -0.08 Tw -(All events since )Tj -/TT13 1 Tf -7.4246 0 TD -0 Tw -(EventAddress)Tj -/TT6 1 Tf -7.2012 0 TD -0.08 Tw -[(, inclusive. For example, if there is a single Exec)]TJ --14.6257 -1.2889 TD -0.0444 Tw -(and the current event is number 53, then )Tj -/TT8 1 Tf -18.5201 0 TD -0.1078 Tw -(FROM 49)Tj -/TT6 1 Tf -4.3085 0 TD -0.0444 Tw -[( specifies events 49, 50, 51, and)]TJ --22.8286 -1.2889 TD -0 Tw -(52. )Tj -/TT8 1 Tf -2 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( includes events from )Tj -/TT15 1 Tf -9.9863 0 TD -(all)Tj -/TT6 1 Tf -0.9995 0 TD -( Execs.)Tj --24.0496 -2.0667 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(ALL)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventAddress)Tj -/TT6 1 Tf -6.363 -1.7333 TD -0.1433 Tw -(Specifies all events satisfying )Tj -/TT13 1 Tf -13.6602 0 TD -0 Tw -(EventAddress)Tj -/TT6 1 Tf -7.2012 0 TD -0.1433 Tw -[(. For example, )]TJ -/TT8 1 Tf -7.3194 0 TD -0.3433 Tw -(ALL LOAD, ALL)Tj --28.1809 -1.2889 TD -0 Tw -(SUCHTHAT FOO-P)Tj -/TT6 1 Tf -8.4014 0 TD -(. )Tj --11.9125 -2.0667 TD -0.1811 Tw -[(empty)-665.9(If nothing is specified, it is the same as specifying -1, i.e., the last event in the)]TJ -3.5111 -1.2222 TD -0 Tw -(current Exec. )Tj -/TT13 1 Tf --8.6633 -2 TD -(EventSpec)Tj -6 0 0 6 126.63 278.69 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 130.23 280.69 Tm -( )Tj -/TT8 1 Tf -0.25 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventSpec)Tj -6 0 0 6 199.53 278.69 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 203.13 280.69 Tm -( )Tj -/TT8 1 Tf -0.25 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -( . . . )Tj -/TT8 1 Tf -1.75 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventSpec)Tj -6 0 0 6 304.38 278.69 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 156 264.14 Tm -0.1333 Tw -[(Each of the is an event specification. The lists of events are concatenated. For)]TJ -0 -1.2222 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.4312 0 TD -0.4378 Tw -(REDO ALL MAPC AND ALL STRING AND 32)Tj -/TT6 1 Tf -24.0679 0 TD -0.1822 Tw -[( redoes all events)]TJ --28.4991 -1.2889 TD -0 Tw -(containing )Tj -/TT8 1 Tf -5.0346 0 TD -(MAPC)Tj -/TT6 1 Tf -2.4004 0 TD -0.0844 Tw -(, all containing )Tj -/TT8 1 Tf -7.0356 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0844 Tw -[(, and also event 32. Duplicate events are)]TJ --18.0712 -1.2889 TD -0 Tw -(removed. )Tj -/TT4 1 Tf -10 0 0 10 54 207.6 Tm -(Exec Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 204.89 m -510.01 204.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 190.94 Tm -0.1078 Tw -[(You enter an Exec commands by typing the name of the command at the prompt. The name of an)]TJ -0 -1.2222 TD -0.0322 Tw -(Exec command is not a symbol and therefore is not sensitive to the setting of the current package \(the)Tj -T* -0 Tw -(value of )Tj -/TT8 1 Tf -3.8169 0 TD -(*PACKAGE*)Tj -/TT6 1 Tf -5.4009 0 TD -(\).)Tj -/TT13 1 Tf --9.2178 -2.0667 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0178 Tw -[( is used to denote an event specification which in most cases will be either a specific event)]TJ --5.4009 -1.2889 TD -0.0511 Tw -(address \(e.g., )Tj -/TT8 1 Tf -6.1637 0 TD -0 Tw -(42)Tj -/TT6 1 Tf -1.2002 0 TD -0.0511 Tw -(\) or a relative one \(e.g., )Tj -/TT8 1 Tf -10.6319 0 TD -0 Tw -(-3)Tj -/TT6 1 Tf -1.2002 0 TD -0.0511 Tw -[(\). Unless specified otherwise, omitting )]TJ -/TT13 1 Tf -18.0282 0 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0511 Tw -[( is the)]TJ --42.6251 -1.2889 TD -0 Tw -(same as specifying )Tj -/TT13 1 Tf -8.5166 0 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(= -1)Tj -/TT6 1 Tf -2.4004 0 TD -(. For example, )Tj -/TT8 1 Tf -6.7461 0 TD -(REDO)Tj -/TT6 1 Tf -2.4004 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(REDO -1)Tj -/TT6 1 Tf -4.2007 0 TD -( are the same.)Tj -/TT17 1 Tf --29.4412 -2.0667 TD -(REDO)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -[( )-26698.7([Exec command])]TJ --5.3846 -1.8444 TD -0.0389 Tw -(Redoes the event or events specified by )Tj -/TT13 1 Tf -17.905 0 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0389 Tw -[(. For example, )]TJ -/TT8 1 Tf -6.9016 0 TD -0.0933 Tw -(REDO 123)Tj -/TT6 1 Tf -4.8941 0 TD -0.0389 Tw -[( redoes the)]TJ --35.1017 -1.2889 TD -0 Tw -(event numbered 123.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT15 34 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -37 0 obj -<< -/Length 9376 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-6)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 569.54 Tm -(RETRY)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -[( )-26098.6([Exec command])]TJ --5.9847 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.2248 0 TD -(REDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0378 Tw -[( but sets the debugger parameters so that any errors that occur while executing)]TJ -/TT13 1 Tf --4.6252 -1.2889 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -( will cause breaks.)Tj -/TT17 1 Tf --8.0675 -2.0667 TD -(USE )Tj -/TT13 1 Tf -2.4004 0 TD -(NEW)Tj -/TT17 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -([)Tj -/TT17 1 Tf -0.5992 0 TD -(FOR )Tj -/TT13 1 Tf -2.4004 0 TD -(OLD)Tj -/TT17 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -(])Tj -/TT17 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6001 0 TD -([)Tj -/TT17 1 Tf -0.599 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(])Tj -/TT6 1 Tf -0.6001 0 TD -[( )-15048.8([Exec command])]TJ --17.0345 -1.8444 TD -(Substitutes )Tj -/TT13 1 Tf -5.287 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.1567 Tw -[( for )]TJ -/TT13 1 Tf -2.0873 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1567 Tw -[( in the events specified by )]TJ -/TT13 1 Tf -12.6172 0 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.1567 Tw -(, and redoes the result)Tj -/TT13 1 Tf -10.4084 0 TD -0 Tw -(.)Tj --39.4014 -1.2889 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -( and )Tj -/TT13 1 Tf -2.1929 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -( can include lists or symbols, etc.)Tj --5.7935 -2.0667 TD -0.0756 Tw -(For example, )Tj -/TT8 1 Tf -6.1472 0 TD -0.1811 Tw -(USE SIN \(- X\) FOR COS X IN -2 AND -1)Tj -/TT6 1 Tf -23.4146 0 TD -0.0756 Tw -[( will substitute )]TJ -/TT8 1 Tf -7.0392 0 TD -0 Tw -(SIN)Tj -/TT6 1 Tf -1.8003 0 TD -0.0756 Tw -[( for)]TJ --38.4013 -1.2889 TD -0.1956 Tw -(every occurrence of )Tj -/TT8 1 Tf -9.5002 0 TD -0 Tw -(COS)Tj -/TT6 1 Tf -1.8003 0 TD -0.1956 Tw -[( in the previous two events, and substitute )]TJ -/TT8 1 Tf -20.5879 0 TD -0.47 Tw -(\(- X\))Tj -/TT6 1 Tf -3.4705 0 TD -0.1956 Tw -[( for every)]TJ --35.3589 -1.2889 TD -0.2322 Tw -(occurrence of )Tj -/TT8 1 Tf -6.6539 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.2322 Tw -[(, and reexecute them. \(The substitutions do not change the previous)]TJ --7.254 -1.2889 TD -0 Tw -(information saved about these events on the history list.\))Tj -0 -2 TD -(If )Tj -/TT8 1 Tf -0.9433 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT13 1 Tf -0.2733 0 TD -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( is omitted, the first member of )]TJ -/TT13 1 Tf -14.0471 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0233 Tw -[( is used to search for the appropriate)]TJ --23.6651 -1.2889 TD -0.2478 Tw -[(event. For example, )]TJ -/TT8 1 Tf -10.1684 0 TD -0.5944 Tw -(USE DEFAULTFONT FOR DEFLATFONT)Tj -/TT6 1 Tf -19.7863 0 TD -0.2478 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -8.2543 0 TD -0 Tw -(USE)Tj --38.2089 -1.2889 TD -0.08 Tw -(DEFAULTFONT FOR DEFLATFONT IN F DEFLATFONT)Tj -/TT6 1 Tf -25.6041 0 TD -0.0333 Tw -[(. The )]TJ -/TT8 1 Tf -2.7738 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is inserted to handle the)]TJ --28.978 -1.2889 TD -0 Tw -(case where the first member of )Tj -/TT13 1 Tf -13.8228 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -( could be interpreted as an event address command.)Tj --15.623 -2.0667 TD -(If )Tj -/TT13 1 Tf -1.1766 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.2567 Tw -[( is omitted, substitution is for the operator in that command. For example)]TJ -/TT8 1 Tf --2.9769 -1.2889 TD -0 Tw -(FBOUNDP\(FF\))Tj -/TT6 1 Tf -6.6011 0 TD -0.0289 Tw -[( followed by )]TJ -/TT8 1 Tf -5.8767 0 TD -0.0689 Tw -(USE CALLS)Tj -/TT6 1 Tf -5.4698 0 TD -0.0289 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.3787 0 TD -0.0689 Tw -(USE CALLS FOR FBOUNDP IN)Tj --25.3263 -1.2889 TD -0 Tw -(-1)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --1.2002 -2.0667 TD -(If )Tj -/TT13 1 Tf -1.0333 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1133 Tw -[( is not found, )]TJ -/TT8 1 Tf -6.5471 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.1133 Tw -[( will print a question mark, several spaces and the pattern that)]TJ --11.1809 -1.2889 TD -0.1011 Tw -[(was not found. For example, if you specified )]TJ -/TT8 1 Tf -21.0746 0 TD -0.2422 Tw -(USE Y FOR X IN 104)Tj -/TT6 1 Tf -12.0129 0 TD -0.1011 Tw -[( and )]TJ -/TT8 1 Tf -2.3951 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( was not)]TJ --36.0826 -1.2889 TD -0 Tw -(found, )Tj -/TT8 1 Tf -3.1748 0 TD -(X ?)Tj -/TT6 1 Tf -3.0005 0 TD -( is printed to the Exec.)Tj --6.1753 -2.0667 TD -(You can also specify more than one substitution simultaneously as follows:)Tj -/TT17 1 Tf --2.6667 -2 TD -(USE )Tj -/TT13 1 Tf -2.4004 0 TD -(NEW)Tj -6 0 0 6 187.8 266.14 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 191.4 268.14 Tm -( )Tj -/TT17 1 Tf -0.6001 0 TD -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(OLD)Tj -6 0 0 6 234.6 266.14 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 238.2 268.14 Tm -( )Tj -/TT17 1 Tf -0.6001 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -( ... )Tj -/TT17 1 Tf -3.0005 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(NEW)Tj -6 0 0 6 324.6 266.14 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 328.2 268.14 Tm -( )Tj -/TT17 1 Tf -0.6001 0 TD -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(OLD)Tj -6 0 0 6 371.4 266.14 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 375 268.14 Tm -( [)Tj -/TT17 1 Tf -1.2002 0 TD -(IN)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(EventSpec)Tj -/TT8 1 Tf -5.4009 0 TD -(] )Tj -/TT6 1 Tf -1.8486 0 TD -([Exec command])Tj --32.5833 -1.95 TD -([The )Tj -/TT8 1 Tf -2.3257 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.0689 Tw -[( command is parsed by a small finite state parser to distinguish the expressions)]TJ --4.126 -1.2889 TD -0.0589 Tw -[(and arguments. For example, )]TJ -/TT8 1 Tf -13.7315 0 TD -0.1411 Tw -(USE FOR FOR AND AND AND FOR FOR)Tj -/TT6 1 Tf -19.5908 0 TD -0.0589 Tw -[( will be parsed)]TJ --33.3223 -1.2889 TD -0 Tw -(correctly.])Tj -0 -2 TD -(Every )Tj -/TT8 1 Tf -3.2937 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.4378 Tw -[( command involves three pieces of information: the expressions to be)]TJ --5.094 -1.2889 TD -0.13 Tw -(substituted, the arguments to be substituted for, and an event specification that defines)Tj -0 -1.2222 TD -0.0922 Tw -[(the input expression in which the substitution takes place. If the )]TJ -/TT8 1 Tf -29.8298 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -[( command has the)]TJ --31.6301 -1.2889 TD -0.0533 Tw -(same number of expressions as arguments, the substitution procedure is straightforward.)Tj -0 -1.2222 TD -0.0311 Tw -(For example, )Tj -/TT8 1 Tf -6.0583 0 TD -0.0744 Tw -(USE X Y FOR U V)Tj -/TT6 1 Tf -9.3737 0 TD -0.0311 Tw -[( means substitute )]TJ -/TT8 1 Tf -8.0665 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( for )]TJ -/TT8 1 Tf -1.8361 0 TD -0 Tw -(U)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( and )]TJ -/TT8 1 Tf -2.2551 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( for )]TJ -/TT8 1 Tf -1.8362 0 TD -0 Tw -(V)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -(, and is equivalent)Tj --31.8263 -1.2889 TD -0 Tw -(to )Tj -/TT8 1 Tf -1.1221 0 TD -(USE X FOR U AND Y FOR V)Tj -/TT6 1 Tf -13.8022 0 TD -(. )Tj --14.9243 -2.0667 TD -0.3467 Tw -(However, the )Tj -/TT8 1 Tf -6.9604 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.3467 Tw -[( command also permits distributive substitutions for substituting)]TJ --8.7607 -1.2889 TD -0.0133 Tw -[(several expressions for the same argument. For example, )]TJ -/TT8 1 Tf -25.6805 0 TD -0.0311 Tw -(USE A B C FOR X)Tj -/TT6 1 Tf -9.157 0 TD -0.0133 Tw -[( means first)]TJ --34.8376 -1.2889 TD -0 Tw -(substitute )Tj -/TT8 1 Tf -4.6321 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( for )]TJ -/TT8 1 Tf -1.8273 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( then substitute )]TJ -/TT8 1 Tf -7.1547 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( for )]TJ -/TT8 1 Tf -1.8273 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( \(in a new copy of the expression\), then substitute)]TJ -/TT8 1 Tf --17.8418 -1.2889 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -( for )Tj -/TT8 1 Tf -1.7739 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(. The effect is the same as three separate )Tj -/TT8 1 Tf -18.0947 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -( commands. )Tj --22.8691 -2.0667 TD -(Similarly, )Tj -/TT8 1 Tf -4.5374 0 TD -0.0356 Tw -(USE A B C FOR D AND X Y Z FOR W)Tj -/TT6 1 Tf -18.9941 0 TD -0.0144 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.321 0 TD -0.0356 Tw -(USE A FOR D AND)Tj --30.8525 -1.2889 TD -0.0589 Tw -(X FOR W)Tj -/TT6 1 Tf -4.3185 0 TD -0.0244 Tw -(, followed by )Tj -/TT8 1 Tf -6.1134 0 TD -0.0589 Tw -(USE B FOR D AND Y FOR W)Tj -/TT6 1 Tf -14.2145 0 TD -0.0244 Tw -(, followed by )Tj -/TT8 1 Tf -6.1134 0 TD -0.0589 Tw -(USE C FOR D AND)Tj --30.7597 -1.2889 TD -0.0922 Tw -(Z FOR W)Tj -/TT6 1 Tf -4.3851 0 TD -0.0389 Tw -(. )Tj -/TT8 1 Tf -0.8278 0 TD -0.0922 Tw -(USE A B C FOR D AND X FOR Y)Tj -/TT6 1 Tf -17.0326 0 TD -0.0389 Tw -[( also corresponds to three substitutions,)]TJ --22.2455 -1.2889 TD -0.0144 Tw -(the first with )Tj -/TT8 1 Tf -5.9828 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( for )]TJ -/TT8 1 Tf -1.8028 0 TD -0 Tw -(D)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( and )]TJ -/TT8 1 Tf -2.2218 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( for )]TJ -/TT8 1 Tf -1.8028 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -(, the second with )Tj -/TT8 1 Tf -7.8136 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( for )]TJ -/TT8 1 Tf -1.8028 0 TD -0 Tw -(D)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -(, and )Tj -/TT8 1 Tf -2.4718 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( for )]TJ -/TT8 1 Tf -1.8028 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -(, and the third with )Tj -/TT8 1 Tf -8.8906 0 TD -0 Tw -(C)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6584 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-7)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(for )Tj -/TT8 1 Tf -1.5584 0 TD -(D)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -(, and again )Tj -/TT8 1 Tf -5.2254 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -[( for )]TJ -/TT8 1 Tf -1.8428 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -[(. However, )]TJ -/TT8 1 Tf -5.4832 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.2844 0 TD -0.0833 Tw -(A B C FOR D AND X Y FOR Z)Tj -/TT6 1 Tf -15.7524 0 TD -0.0344 Tw -[( is ambiguous)]TJ --33.7473 -1.2889 TD -0 Tw -(and will cause an error.)Tj -0 -2 TD -0.1567 Tw -(Essentially, the )Tj -/TT8 1 Tf -7.2254 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.1567 Tw -[( command operates by proceeding from left to right handling each)]TJ -/TT8 1 Tf --9.0257 -1.2889 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.0878 Tw -[( separately. Whenever the number of expressions exceeds the available expressions,)]TJ --1.8003 -1.2889 TD -0 Tw -(multiple )Tj -/TT8 1 Tf -4.0207 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.0056 Tw -[( expressions are generated. Thus )]TJ -/TT8 1 Tf -14.9469 0 TD -0.0133 Tw -(USE A B C D FOR E F)Tj -/TT6 1 Tf -11.4952 0 TD -0.0056 Tw -[( means substitute)]TJ -/TT8 1 Tf --32.2631 -1.2889 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.2333 Tw -[( for )]TJ -/TT8 1 Tf -2.2406 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.2333 Tw -[( at the same time substituting )]TJ -/TT8 1 Tf -14.6837 0 TD -0 Tw -(B)Tj -/TT6 1 Tf -0.6001 0 TD -0.2333 Tw -[( for )]TJ -/TT8 1 Tf -2.2406 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.2333 Tw -(, then in another copy of the indicated)Tj --21.5653 -1.2889 TD -0.0922 Tw -(expression, substitute )Tj -/TT8 1 Tf -10.0267 0 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -0.0922 Tw -[( for )]TJ -/TT8 1 Tf -1.9584 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.0922 Tw -[( and )]TJ -/TT8 1 Tf -2.3773 0 TD -0 Tw -(D)Tj -/TT6 1 Tf -0.6001 0 TD -0.0922 Tw -[( for )]TJ -/TT8 1 Tf -1.9584 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.0922 Tw -[(. This is also equivalent to )]TJ -/TT8 1 Tf -12.5792 0 TD -0.2222 Tw -(USE A C FOR E)Tj --31.3003 -1.2889 TD -0 Tw -(AND B D FOR F)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj --7.8013 -2.0667 TD -(The )Tj -/TT8 1 Tf -1.9672 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( command correctly handles the situation where one of the old expressions is the)]TJ --3.7675 -1.2889 TD -0 Tw -(same as one of the new ones, )Tj -/TT8 1 Tf -13.0083 0 TD -(USE X Y FOR Y X)Tj -/TT6 1 Tf -9.0015 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(USE X FOR Y AND Y FOR X)Tj -/TT6 1 Tf -13.8022 0 TD -(. )Tj -/TT17 1 Tf --40.1696 -2.0667 TD --0.0001 Tc -(? )Tj -/TT13 1 Tf -1.2001 0 TD -0 Tc -(NAME)Tj -/TT6 1 Tf -34.0499 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(If )Tj -/TT13 1 Tf -1.1133 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1933 Tw -[( is not provided describes all available Exec commands by printing the name,)]TJ --3.5136 -1.2889 TD -0 Tw -(argument list, and description of each. With )Tj -/TT13 1 Tf -19.9219 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(, only that command is described.)Tj -/TT17 1 Tf --24.9889 -2.0667 TD -(??)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(EventSpec)Tj -/TT6 1 Tf -33.4497 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.0522 Tw -(Prints the most recent event matching the given )Tj -/TT13 1 Tf -21.7664 0 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0522 Tw -[(. Without )]TJ -/TT13 1 Tf -5.1332 0 TD -0 Tw -(EventSpec)Tj -/TT6 1 Tf -5.4009 0 TD -0.0522 Tw -(, lists)Tj --37.7014 -1.2889 TD -0.1611 Tw -(all entries on the history list from all execs, not necessarily in the order in which they)Tj -0 -1.2222 TD -0.0056 Tw -[(occured \(since the list is in allocation order\). If you havent completed typing a command)]TJ -T* -0 Tw -(it will be listed as "" .)Tj -/TT19 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1067 Tw -[(: Event nubmers are allocated at the time the prompt is printed, except in the Old)]TJ --2.2222 -1.2222 TD -0.1111 Tw -[(Interlisp exec where they are assigned at the end of type-in. This means that if activity)]TJ -T* -0.1422 Tw -(occurs in another exec, the number printed next to the command is not necessarily the)Tj -T* -0 Tw -(number associated with the event.)Tj -/TT17 1 Tf --2.6667 -2 TD -(CONN)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -32.2495 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Changes default pathname to )Tj -/TT13 1 Tf -13.3003 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT17 1 Tf --21.3678 -2.0667 TD -(DA)Tj -/TT6 1 Tf -35.25 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Returns current date and time.)Tj -/TT17 1 Tf --2.6667 -2 TD -(DIR )Tj -/TT13 1 Tf -2.4004 0 TD -(PATHNAME KEYWORDS)Tj -/TT6 1 Tf -32.8496 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.3333 Tw -(Shows a directory listing for )Tj -/TT13 1 Tf -14.4054 0 TD -0 Tw -(PATHNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.3333 Tw -[( or the connected directory. If provided,)]TJ -/TT13 1 Tf --19.2062 -1.2889 TD -0 Tw -(KEYWORDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.3122 Tw -[( indicate information to be displayed for each file. Some keywords are:)]TJ -/TT13 1 Tf --4.8008 -1.2889 TD -0 Tw -(AUTHOR)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT13 1 Tf -0.5 0 TD -(AU)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT13 1 Tf -0.5 0 TD -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT13 1 Tf -0.75 0 TD -(DA)Tj -/TT6 1 Tf -1.2002 0 TD -(, etc.)Tj -/TT17 1 Tf --17.6188 -2.0667 TD -(DO-EVENTS)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(INPUTS ENV)Tj -/TT6 1 Tf -29.2499 0 TD -([Exec command])Tj -/TT13 1 Tf --32.5833 -1.8444 TD -(DO-EVENTS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0911 Tw -[( is intended as a way of putting together several different events, which can)]TJ --5.4009 -1.2889 TD -0.26 Tw -[(include commands. It executes the multiple )]TJ -/TT13 1 Tf -21.5583 0 TD -0 Tw -(INPUTS)Tj -/TT6 1 Tf -3.6006 0 TD -0.26 Tw -[( as a single event. The values)]TJ --25.1589 -1.2889 TD -0.0878 Tw -(returned by the )Tj -/TT13 1 Tf -7.38 0 TD -0 Tw -(DO-EVENTS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0878 Tw -[( event are the concatenation of the values of the inputs. An)]TJ --12.7809 -1.2889 TD -0.0567 Tw -[(input is not an EventSpec, but a call to a function or command. If )]TJ -/TT13 1 Tf -30.0126 0 TD -0 Tw -(ENV)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[( is provided it is a)]TJ --31.8129 -1.2889 TD -0.13 Tw -(lexical environment in which all evaluations \(functions and commands\) will take place.)Tj -0 -1.2222 TD -0.1367 Tw -(Event specification in the )Tj -/TT13 1 Tf -11.9217 0 TD -0 Tw -(INPUTS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1367 Tw -[( should be explicit, not relative, since referring to the)]TJ --15.5223 -1.2889 TD -0 Tw -(last event will reinvoke the executing )Tj -/TT13 1 Tf -16.7358 0 TD -(DO-EVENTS)Tj -/TT6 1 Tf -5.4009 0 TD -( command.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R -/TT19 42 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -44 0 obj -<< -/Length 5639 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-8)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 569.54 Tm -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(EventSpec)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -27.4487 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.0689 Tw -[(Edits the specified event prior to re-executing it. If the number of characters in the fixed)]TJ -0 -1.2222 TD -0.3222 Tw -(line is less than the variable )Tj -/TT8 1 Tf -14.3606 0 TD -0 Tw -(TTYINFIXLIMIT)Tj -/TT6 1 Tf -7.8013 0 TD -0.3222 Tw -[( then it will be edited using )]TJ -/TT8 1 Tf -14.5842 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --39.7465 -1.2889 TD -(otherwise the Lisp editor is called via )Tj -/TT8 1 Tf -16.7544 0 TD -(EDITE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT17 1 Tf --22.4216 -2.0667 TD --0.0001 Tc -(FORGET )Tj -/TT13 1 Tf -4.2001 0 TD -0 Tc -(EventSpec)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -25.649 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Erases )Tj -/TT8 1 Tf -3.0825 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -( information for the specified events.)Tj -/TT17 1 Tf --8.1496 -2.0944 TD -(NAME)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(COMMAND-NAME ARGUMENTS EVENT-SPEC)Tj -/TT8 1 Tf -19.8032 0 TD -( )Tj -/TT2 1 Tf -13.0022 0 TD -([Exec command])Tj -/TT6 1 Tf --33.1389 -1.8444 TD -0.0489 Tw -(Defines a new command, )Tj -/TT13 1 Tf -11.6506 0 TD -0 Tw -(COMMAND-NAME)Tj -/TT6 1 Tf -7.2012 0 TD -0.0489 Tw -(, and its )Tj -/TT13 1 Tf -4.1794 0 TD -0 Tw -(ARGUMENTS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0489 Tw -[(, containing the events in)]TJ -/TT13 1 Tf --28.4321 -1.2889 TD -0 Tw -(EVENT-SPEC)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT17 1 Tf --8.6676 -2.0667 TD -(NDIR)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(PATHNAME KEYWORDS)Tj -/TT8 1 Tf -10.2017 0 TD -( )Tj -/TT6 1 Tf -22.0482 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.0411 Tw -(Shows a directory listing for )Tj -/TT13 1 Tf -12.9443 0 TD -0 Tw -(PATHNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0411 Tw -[( or the connected directory in abbreviated format.)]TJ --17.7451 -1.2889 TD -0.0078 Tw -(If provided, )Tj -/TT13 1 Tf -5.5341 0 TD -0 Tw -(KEYWORDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0078 Tw -[( indicate information to be displayed for each file. Some keywords)]TJ --10.3349 -1.2889 TD -0 Tw -(are: )Tj -/TT8 1 Tf -2.374 0 TD -(AUTHOR)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(AU)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -0.75 0 TD -(DA)Tj -/TT6 1 Tf -1.2002 0 TD -(, etc.)Tj -/TT17 1 Tf --19.9928 -2.0667 TD -(PL)Tj -/TT8 1 Tf -1.2 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(SYMBOL)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT6 1 Tf -29.8493 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Prints the property list of )Tj -/TT13 1 Tf -11.3696 0 TD -(SYMBOL)Tj -/TT6 1 Tf -3.6006 0 TD -( in an easy to read format.)Tj -/TT17 1 Tf --17.6369 -2.0667 TD -(REMEMBER)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(&REST EVENT-SPEC)Tj -/TT8 1 Tf -9.6016 0 TD -( )Tj -/TT6 1 Tf -20.2476 0 TD -([Exec command])Tj --32.5833 -1.8445 TD -0.4178 Tw -(Tells File Manager to remember type-in from specified event\(s\), )Tj -/TT13 1 Tf -32.1497 0 TD -0 Tw -(EVENT-SPEC)Tj -/TT6 1 Tf -6.001 0 TD -0.4178 Tw -(, as)Tj --38.1506 -1.2889 TD -0 Tw -(expressions to save.)Tj -/TT17 1 Tf --2.6667 -2 TD -(SHH)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(LINE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT6 1 Tf -30.4495 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Executes )Tj -/TT13 1 Tf -4.1318 0 TD -(LINE)Tj -/TT6 1 Tf -2.4004 0 TD -( without history list processing.)Tj -/TT17 1 Tf --9.1989 -2.0667 TD -(UNDO )Tj -/TT13 1 Tf -3.0005 0 TD -(EventSpec)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -26.8486 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Undoes the side effects of the specified event \(see below under Undoing\).)Tj -/TT17 1 Tf --2.6667 -2 TD -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(NAME TYPES)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT6 1 Tf -27.4487 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Shows \(prettyprinted\) the definitions for )Tj -/TT13 1 Tf -18.2124 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -( specified by )Tj -/TT13 1 Tf -5.812 0 TD -(TYPES)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT17 1 Tf --32.092 -2.0667 TD -(SEE)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT6 1 Tf -29.8491 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Prints the contents of )Tj -/TT13 1 Tf -9.5972 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( in the Exec window, hiding comments.)Tj -/TT17 1 Tf --15.2643 -2.0667 TD -(SEE*)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT6 1 Tf -29.2494 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Prints the contents of )Tj -/TT13 1 Tf -9.5972 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( in the Exec window, showing comments.)Tj -/TT17 1 Tf --15.2643 -2.0667 TD -(TIME)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(FORM &KEY REPEAT &ENVIRONMENT ENV)Tj -/TT8 1 Tf -19.8032 0 TD -( )Tj -/TT6 1 Tf -12.4467 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.0689 Tw -(Times the evaluation of )Tj -/TT13 1 Tf -10.9142 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0689 Tw -[( in the lexical environment )]TJ -/TT13 1 Tf -12.3767 0 TD -0 Tw -(ENV)Tj -/TT6 1 Tf -1.8003 0 TD -0.0689 Tw -(, repeating )Tj -/TT13 1 Tf -5.0973 0 TD -0 Tw -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0689 Tw -[( number)]TJ --36.1894 -1.2889 TD -0 Tw -(of times. Information is displayed in the Exec window.)Tj -/TT17 1 Tf --2.6667 -2 TD -(TY)Tj -/TT8 1 Tf -1.2 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT6 1 Tf -30.4494 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Exactly like the )Tj -/TT13 1 Tf -6.9985 0 TD -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -( Exec command.)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -47 0 obj -<< -/Length 5334 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-9)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT17 1 Tf -9 0 0 9 102 569.54 Tm -(TYPE)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT6 1 Tf -29.2494 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -(Prints the contents of )Tj -/TT13 1 Tf -9.5972 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( in the Exec window, hiding comments.)Tj -/TT4 1 Tf -10 0 0 10 54 530 Tm -(Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 527.29 m -510.01 527.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 513.34 Tm -(A number of variables are provided for convenience in the Exec.)Tj -/TT17 1 Tf -2.6667 -2 TD -(IL:IT)Tj -/TT8 1 Tf -3 0 TD -( )Tj -/TT6 1 Tf -35.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0311 Tw -(Whenever an event is completed, the global value of the variable )Tj -/TT8 1 Tf -29.1938 0 TD -0 Tw -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[( is reset to the events)]TJ --30.394 -1.2889 TD -0 Tw -(value. For example,)Tj -ET -q -101.5 0 0 -55 255.26 458.59 cm -/Im10 Do -Q -BT -9 0 0 9 126 390.14 Tm -0.2511 Tw -(Following a )Tj -/TT8 1 Tf -5.9954 0 TD -0 Tw -(??)Tj -/TT6 1 Tf -1.2002 0 TD -0.2511 Tw -[( command, )]TJ -/TT8 1 Tf -5.7005 0 TD -0 Tw -(IL:IT)Tj -/TT6 1 Tf -3.0005 0 TD -0.2511 Tw -[( is set to the value of the last event printed. The)]TJ --15.8965 -1.2889 TD -0.0133 Tw -(inspector has an option for setting the variable )Tj -/TT8 1 Tf -20.8943 0 TD -0 Tw -(IL:IT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0133 Tw -[( to the current selection or inspected)]TJ --23.8948 -1.2889 TD -0.0478 Tw -[(object, as well. The variable )]TJ -/TT8 1 Tf -12.9356 0 TD -0 Tw -(IL:IT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[( is global, and is shared among all Execs. )]TJ -/TT8 1 Tf -19.2487 0 TD -0 Tw -(IL:IT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[( is a)]TJ --38.1853 -1.2889 TD -0 Tw -(convenient mechanism for passing values from one process to another.)Tj -/TT19 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0767 Tw -(: )Tj -/TT8 1 Tf -0.9033 0 TD -0 Tw -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.0767 Tw -[( is in the Interlisp package and these examples are intended for an Exec whose)]TJ -/TT8 1 Tf --4.3257 -1.2889 TD -0 Tw -(*PACKAGE*)Tj -/TT6 1 Tf -5.4009 0 TD -( is set to )Tj -/TT8 1 Tf -4.0659 0 TD -(XCL-USER)Tj -/TT6 1 Tf -4.8008 0 TD -(. Thus, )Tj -/TT8 1 Tf -3.4717 0 TD -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -( must be package qualified \(the)Tj -/TT19 1 Tf -13.8335 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(IL:)Tj -/TT6 1 Tf -1.8003 0 TD -(\).)Tj --40.1566 -2.0667 TD -0.0156 Tw -[(The following variables are maintained independently by each Exec. \(When a new Exec is started, the)]TJ -0 -1.2222 TD -0.2444 Tw -(initial values are )Tj -/TT8 1 Tf -8.2914 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2444 Tw -[(, or, for a nested Exec, the value for the parent Exec. However, events)]TJ --10.0917 -1.2889 TD -0 Tw -(executed under a nested Exec will not affect the parent values.\))Tj -/TT17 1 Tf -2.6667 -2 TD -(CL:-)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT6 1 Tf -35.8678 0 TD -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:+)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT6 1 Tf -35.8678 0 TD -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:++)Tj -/TT8 1 Tf -3 0 TD -( )Tj -/TT6 1 Tf -35.2678 0 TD -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:+++)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -/TT6 1 Tf -34.6678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0056 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT8 1 Tf -25.399 0 TD -0 Tw -(CL:-)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -[( is bound to the form, )]TJ -/TT8 1 Tf -9.8092 0 TD -0 Tw -(CL:+)Tj -/TT6 1 Tf --37.6086 -1.2889 TD -0.0856 Tw -(is bound to the previous form, )Tj -/TT8 1 Tf -14.193 0 TD -0 Tw -(CL:++)Tj -/TT6 1 Tf -3.0005 0 TD -0.0856 Tw -[( the one before, etc. If the input is in apply-format)]TJ --17.1935 -1.2889 TD -0 Tw -(rather than eval-format, the value of the respective variable is just the function name.)Tj -/TT17 1 Tf --2.6667 -2 TD -(CL:*)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT6 1 Tf -35.8678 0 TD -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:**)Tj -/TT8 1 Tf -3 0 TD -( )Tj -/TT6 1 Tf -35.2678 0 TD -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:***)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -/TT6 1 Tf -34.6678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0011 Tw -(While a form is being evaluated by the Exec, the variable )Tj -/TT8 1 Tf -25.3501 0 TD -0 Tw -(CL:*)Tj -/TT6 1 Tf -2.4004 0 TD -0.0011 Tw -( is bound to the \(first\) value)Tj --27.7505 -1.2889 TD -0.0789 Tw -(returned by the last event, )Tj -/TT8 1 Tf -12.2333 0 TD -0 Tw -(CL:**)Tj -/TT6 1 Tf -3.0005 0 TD -0.0789 Tw -[( to the event before that, etc. The variable )]TJ -/TT8 1 Tf -19.167 0 TD -0 Tw -(CL:*)Tj -/TT6 1 Tf -2.4004 0 TD -0.0789 Tw -[( differs)]TJ --36.8012 -1.2889 TD -0 Tw -(from )Tj -/TT8 1 Tf -2.5367 0 TD -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.13 Tw -[( in that )]TJ -/TT8 1 Tf -3.7474 0 TD -0 Tw -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.13 Tw -[( is global while each separate Exec maintains its own copy of )]TJ -/TT8 1 Tf -28.6557 0 TD -0 Tw -(CL:*)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj -/TT8 1 Tf --39.7407 -1.2889 TD -(CL:**)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -[( and )]TJ -/TT8 1 Tf -2.3418 0 TD -0 Tw -(CL:***)Tj -/TT6 1 Tf -3.6006 0 TD -0.0744 Tw -[(. In addition, the history commands change )]TJ -/TT8 1 Tf -20.2948 0 TD -0 Tw -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.0744 Tw -(, but only inputs that)Tj --30.4378 -1.2889 TD -0 Tw -(are retained on the history list can change )Tj -/TT8 1 Tf -18.6733 0 TD -(CL:*)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -48 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R -/TT19 42 0 R ->> -/XObject << -/Im10 49 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -51 0 obj -<< -/Length 5541 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-10)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 569.54 Tm -(CL:/)Tj -/TT8 1 Tf -2.4004 0 TD --0.0005 Tc -( )Tj -/TT6 1 Tf -35.8674 0 TD -0 Tc -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL://)Tj -/TT8 1 Tf -3.0005 0 TD --0.0006 Tc -( )Tj -/TT6 1 Tf -35.2673 0 TD -0 Tc -([Variable])Tj -/TT17 1 Tf --38.2678 -1.0667 TD -(CL:///)Tj -/TT8 1 Tf -3.6006 0 TD --0.0007 Tc -( )Tj -/TT6 1 Tf -34.6672 0 TD -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.1244 Tw -(While a form is being evaluated by an Exec, the variable )Tj -/TT8 1 Tf -26.4016 0 TD -0 Tw -(CL:/)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( is bound to a list of the)]TJ --28.802 -1.2889 TD -0 Tw -(results of the last event in that Exec, )Tj -/TT8 1 Tf -16.0874 0 TD -(CL://)Tj -/TT6 1 Tf -3.0005 0 TD -( to the values of the event before that, etc. )Tj -/TT4 1 Tf -10 0 0 10 102 499.2 Tm -(Fonts in the Exec)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 496.49 m -558.01 496.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 482.54 Tm -0.1111 Tw -(The Exec can use different fonts for displaying the prompt, users input, intermediate printout, and)Tj -0 -1.2222 TD -0 Tw -(the values returned by evaluation. The following variables control the Execs font use:)Tj -/TT17 1 Tf -2.6667 -2 TD -(PROMPTFONT)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT6 1 Tf -32.2668 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(Font used for printing the event prompt.)Tj -/TT17 1 Tf --2.6667 -2 TD -(INPUTFONT)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -32.8669 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(Font used for echoing your type-in.)Tj -/TT17 1 Tf --2.6667 -2 TD -(PRINTOUTFONT)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT6 1 Tf -31.0666 0 TD -([Variable])Tj --35.6011 -1.8445 TD -0.0422 Tw -(Font used for any intermediate printing caused by execution of a command or evaluation)Tj -0 -1.2222 TD -0 Tw -(of a form. Initially the same as )Tj -/TT8 1 Tf -13.8477 0 TD -(DEFAULTFONT)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT17 1 Tf --23.1154 -2.0667 TD -(VALUEFONT)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT6 1 Tf -32.8669 0 TD -([Variable])Tj --35.6011 -1.8445 TD -0.19 Tw -[(Font used to print the values returned by evaluation of a form. Initially the same as)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(DEFAULTFONT)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 287.6 Tm -(Modifying an Exec)Tj -ET -102.01 284.89 m -558.01 284.89 l -S -BT -/TT8 1 Tf -9 0 0 9 150 270.94 Tm -(\()Tj -/TT17 1 Tf -0.6 0 TD -(CHANGESLICE )Tj -/TT13 1 Tf -7.2012 0 TD -(N HISTORY)Tj -/TT8 1 Tf -5.4009 0 TD -( \) )Tj -/TT6 1 Tf -24.8679 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.05 Tw -(Changes the maximum number of events saved on the history list )Tj -/TT13 1 Tf -29.8527 0 TD -0 Tw -(HISTORY)Tj -/TT6 1 Tf -4.2007 0 TD -0.05 Tw -[( to )]TJ -/TT13 1 Tf -1.4721 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[(. If )]TJ -/TT8 1 Tf -1.8199 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj -/TT13 1 Tf --39.7458 -1.2889 TD -(HISTORY)Tj -/TT6 1 Tf -4.2007 0 TD -( defaults to the top level history )Tj -/TT8 1 Tf -14.2744 0 TD -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -(.)Tj --25.6763 -2.0667 TD -0.0478 Tw -(The effect of )Tj -/TT15 1 Tf -5.8401 0 TD -0 Tw -(increasing)Tj -/TT6 1 Tf -4.1865 0 TD -0.0478 Tw -[( the time-slice is gradual: the history list is simply allowed to grow)]TJ --10.0266 -1.2222 TD -0.0289 Tw -(to the corresponding length before any events are forgotten. )Tj -/TT15 1 Tf -27.3079 0 TD -0 Tw -(Decreasing)Tj -/TT6 1 Tf -4.5195 0 TD -0.0289 Tw -[( the time-slice will)]TJ --31.8275 -1.2222 TD -0.0256 Tw -(immediately remove a sufficient number of the older events to bring the history list down)Tj -T* -0.3233 Tw -[(to the proper size. However, )]TJ -/TT8 1 Tf -15.0401 0 TD -0 Tw -(CHANGESLICE)Tj -/TT6 1 Tf -6.6011 0 TD -0.3233 Tw -[( is undoable, so that these events are)]TJ --21.6412 -1.2889 TD -0.0733 Tw -[(\(temporarily\) recoverable. Therefore, if you want to recover the storage associated with)]TJ -0 -1.2222 TD -0.0978 Tw -(these events without waiting )Tj -/TT13 1 Tf -13.4248 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0978 Tw -[( more events until the )]TJ -/TT8 1 Tf -10.3771 0 TD -0 Tw -(CHANGESLICE)Tj -/TT6 1 Tf -6.6011 0 TD -0.0978 Tw -[( event drops off the)]TJ --31.003 -1.2889 TD -0 Tw -(history list, you must perform a )Tj -/TT8 1 Tf -14.2749 0 TD -(FORGET)Tj -/TT6 1 Tf -3.6006 0 TD -( command.)Tj -/TT4 1 Tf -10 0 0 10 102 134 Tm -(Defining New Commands)Tj -ET -102.01 131.29 m -558.01 131.29 l -S -BT -/TT6 1 Tf -9 0 0 9 126 117.34 Tm -0.0001 Tw -(You can define new Exec commands using the )Tj -/TT8 1 Tf -20.7779 0 TD -0 Tw -(XCL:DEFCOMMAND)Tj -/TT6 1 Tf -8.4014 0 TD -( macro.)Tj -/TT8 1 Tf --26.5126 -2.0667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD --0.0001 Tc -(XCL:DEFCOMMAND )Tj -/TT13 1 Tf -9 0 TD -0 Tc -(NAME ARGUMENT-LIST &REST BODY)Tj -/TT8 1 Tf -17.4028 0 TD -(\) )Tj -/TT6 1 Tf -12.166 0 TD -([Macro])Tj -/TT8 1 Tf --36.5022 -1.8444 TD -(XCL:DEFCOMMAND)Tj -/TT6 1 Tf -8.4014 0 TD -0.3889 Tw -[( is like )]TJ -/TT8 1 Tf -4.2487 0 TD -0 Tw -(XCL:DEFMACRO)Tj -/TT6 1 Tf -7.2012 0 TD -0.3889 Tw -[(, but defines new Exec commands. The)]TJ -/TT13 1 Tf --19.8512 -1.2889 TD -0 Tw -(ARGUMENT-LIST)Tj -/TT6 1 Tf -7.8013 0 TD -0.0444 Tw -[( can have keywords, and use all of the features of macro argument lists.)]TJ --7.8013 -1.2889 TD -0 Tw -(When )Tj -/TT13 1 Tf -3.0297 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1367 Tw -[( is subsequently typed to the Exec, the rest of the line is processed like the)]TJ --5.4301 -1.2889 TD -0.09 Tw -(arguments to a macro, and the )Tj -/TT13 1 Tf -14.2578 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -[( is executed)]TJ -/TT8 1 Tf -5.3319 0 TD -0.2156 Tw -[(. XCL:DEFCOMMAND)]TJ -/TT6 1 Tf -10.6328 0 TD -0.09 Tw -[( is a definer; the)]TJ -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT15 34 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -54 0 obj -<< -/Length 4669 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-11)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.03 Tw -(File Manager will remember typed-in definitions and allow them to be saved, edited with)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(EDITDEF)Tj -/TT6 1 Tf -4.2007 0 TD -(, etc.)Tj --4.2007 -2.0667 TD -0.1367 Tw -(There are three kinds of commands that can be defined, )Tj -/TT8 1 Tf -26.1928 0 TD -0 Tw -(:EVAL)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6367 0 TD -(:QUIET)Tj -/TT6 1 Tf -3.6006 0 TD -0.1367 Tw -(, and )Tj -/TT8 1 Tf -2.7162 0 TD -0 Tw -(:INPUT)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --39.7474 -1.2889 TD -0.07 Tw -(Commands can also be marked as only for the debugger, in which case they are labelled)Tj -0 -1.2222 TD -0 Tw -(as )Tj -/TT8 1 Tf -1.1972 0 TD -(:DEBUGGER)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[(. The command type is noted by supplying a list for the )]TJ -/TT13 1 Tf -25.2545 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0233 Tw -[( argument to)]TJ -/TT8 1 Tf --34.2529 -1.2889 TD -0 Tw -(XCL:DEFCOMMAND)Tj -/TT6 1 Tf -8.4014 0 TD -0.0111 Tw -(, where the first element of the list is the command name, and the other)Tj --8.4014 -1.2889 TD -0 Tw -(elements are keyword\(s\) for the command type and, optionally )Tj -/TT8 1 Tf -28.1787 0 TD -(:DEBUGGER)Tj -/TT6 1 Tf -5.4009 0 TD -(. )Tj --33.5796 -2.0667 TD -0.0922 Tw -(The documentation string in user defined Exec commands is automatically added to the)Tj -0 -1.2222 TD -0.15 Tw -(documentation descriptions by the )Tj -/TT8 1 Tf -16.2289 0 TD -0 Tw -(CL:DOCUMENTATION)Tj -/TT6 1 Tf -9.6016 0 TD -0.15 Tw -[( function under the )]TJ -/TT8 1 Tf -9.3642 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf --35.1946 -1.2889 TD -(type and can be shown using the )Tj -/TT8 1 Tf -14.7744 0 TD -(?)Tj -/TT6 1 Tf -0.6001 0 TD -( Exec command. )Tj -/TT8 1 Tf --13.0412 -2.0667 TD -(:EVAL)Tj -/TT6 1 Tf -3.6667 0 TD -0.1533 Tw -[(This is the default. The body of the command just gets executed, and its)]TJ -0 -1.2889 TD -0 Tw -(value is the value of the event. For example \(in an XCL Exec\),)Tj -ET -q -204 0 0 -89 204.01 414.19 cm -/Im11 Do -Q -BT -9 0 0 9 180 311.74 Tm -0.1778 Tw -(would define the )Tj -/TT8 1 Tf -8.3302 0 TD -0 Tw -(LS)Tj -/TT6 1 Tf -1.2002 0 TD -0.1778 Tw -[( command to print out all file names that match the)]TJ --9.5304 -1.2889 TD -0 Tw -(input )Tj -/TT8 1 Tf -2.7011 0 TD -(NAMESTRING)Tj -/TT6 1 Tf -6.001 0 TD -0.0478 Tw -[(. The )]TJ -/TT8 1 Tf -2.8172 0 TD -0 Tw -(\(VALUES\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0478 Tw -[( means that no value will be printed by)]TJ --16.32 -1.2889 TD -0 Tw -(the event, only the intermediate output from the )Tj -/TT8 1 Tf -21.6221 0 TD -(FORMAT)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --29.4893 -2.0667 TD -(:QUIET)Tj -/TT6 1 Tf -4.2667 0 TD -0.0278 Tw -(These commands are evaluated, but neither your input nor the results of the)Tj -0 -1.2889 TD -0.2578 Tw -[(command are stored on the history list. For example, the )]TJ -/TT8 1 Tf -28.2892 0 TD -0 Tw -(??)Tj -/TT6 1 Tf -1.2002 0 TD -0.2578 Tw -[( and )]TJ -/TT8 1 Tf -2.7084 0 TD -0 Tw -(SHH)Tj -/TT6 1 Tf --32.1978 -1.2889 TD -(commands are quiet.)Tj -/TT8 1 Tf --4.2667 -2 TD -(:INPUT)Tj -/TT6 1 Tf -4.2667 0 TD -0.0322 Tw -(These commands work more like macros, in that the result of evaluating the)Tj -0 -1.2889 TD -0.09 Tw -[(command is treated as a new line of input. The )]TJ -/TT8 1 Tf -22.1873 0 TD -0 Tw -(FIX)Tj -/TT6 1 Tf -1.8003 0 TD -0.09 Tw -[( command is an input)]TJ --23.9876 -1.2889 TD -0.02 Tw -[(command. The result is treated as a line; a single expression in )]TJ -/TT8 1 Tf -28.281 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(-format)Tj --30.6814 -1.2889 TD -(should be returned as a list of the expression to )Tj -/TT8 1 Tf -21.0898 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 171 Tm -(Undoing)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 168.29 m -510.01 168.29 l -S -BT -/TT19 1 Tf -9 0 0 9 78 154.34 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0011 Tw -(: This discussion only applies to undoing under the Exec or Debugger, and within the )Tj -/TT8 1 Tf -38.3015 0 TD -0 Tw -(UNDOABLY)Tj -/TT6 1 Tf --40.5236 -1.2889 TD -(macro; text and structure editors handle undoing differently.)Tj -0 -2 TD -(The)Tj -/TT19 1 Tf -1.6738 0 TD -( )Tj -/TT8 1 Tf -0.2722 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0222 Tw -[( facility allows recording of destructive changes such that they can be played back to restore)]TJ --4.3464 -1.2889 TD -0.0622 Tw -[(a previous state. There are two kinds of )]TJ -/TT8 1 Tf -18.4897 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0622 Tw -[(ing: one is done by the Exec, the other is available for)]TJ --20.8901 -1.2889 TD -0.0389 Tw -[(use in your code. Both methods share information about what kind of operations can be undone and)]TJ -0 -1.2222 TD -0 Tw -(where the changes are recorded.)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT19 42 0 R ->> -/XObject << -/Im11 56 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -60 0 obj -<< -/Length 6179 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-12)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT4 1 Tf -0 -4.38 TD -(Undoing in the Exec)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT17 1 Tf -9 0 0 9 150 548.54 Tm -(UNDO)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(EventSpec)Tj -/TT6 1 Tf -32.2499 0 TD -([Exec command])Tj --32.5833 -1.8444 TD -0.2211 Tw -(The Execs )Tj -/TT8 1 Tf -5.3675 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.2211 Tw -[( command is implemented by watching the evaluation of forms and)]TJ --7.7679 -1.2889 TD -0.27 Tw -(requiring undoable operations in that evaluation to save enough information on the)Tj -0 -1.2222 TD -0.1589 Tw -[(history list to reverse their side effects. The Exec simply executes operations, and any)]TJ -T* -0.0244 Tw -(undoable changes that occur are automatically saved on the history list by the responsible)Tj -T* -0.2456 Tw -[(functions. The )]TJ -/TT8 1 Tf -7.5414 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.2456 Tw -[( command works on itself the same way: it recovers the saved)]TJ --9.9417 -1.2889 TD -0.0144 Tw -[(information and performs the corresponding inverses. Thus, )]TJ -/TT8 1 Tf -27.3382 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[( is effective on itself, so)]TJ --29.7386 -1.2889 TD -0 Tw -(that you can )Tj -/TT8 1 Tf -5.7153 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -( an )Tj -/TT8 1 Tf -1.582 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -( that, etc.)Tj --16.9414 -2.0667 TD -0.1522 Tw -(Only when you attempt to undo an operation does the Exec check to see whether any)Tj -0 -1.2222 TD -0.0233 Tw -[(information has been saved. If none has been saved, and you have specifically named the)]TJ -T* -0.02 Tw -(event you want undone, the Exec types )Tj -/TT8 1 Tf -17.7445 0 TD -0.0489 Tw -(nothing saved)Tj -/TT6 1 Tf -7.8502 0 TD -0.02 Tw -[(. \(When you just type )]TJ -/TT8 1 Tf -10.1005 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -(, the)Tj --38.0955 -1.2889 TD -0 Tw -(Exec only tries to undo the last operation.\))Tj -/TT8 1 Tf -0 -2 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.2144 Tw -[( watches evaluation using )]TJ -/TT8 1 Tf -12.5858 0 TD -0 Tw -(CL:EVALHOOK)Tj -/TT6 1 Tf -6.6011 0 TD -0.2144 Tw -[( \(thus, calling )]TJ -/TT8 1 Tf -6.8665 0 TD -0 Tw -(CL:EVALHOOK)Tj -/TT6 1 Tf -6.6011 0 TD -0.2144 Tw -[( cannot be)]TJ --35.0548 -1.2889 TD -0.0122 Tw -[(undone\). Each form given to )]TJ -/TT8 1 Tf -13.1978 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0122 Tw -[( is examined against the list )]TJ -/TT8 1 Tf -12.5274 0 TD -0 Tw -(LISPXFNS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[( to see if it has a)]TJ --32.9265 -1.2889 TD -0.0078 Tw -[(corresponding undoable version. If an undoable version of a call is found, it is called with)]TJ -0 -1.2222 TD -0.0533 Tw -[(the same arguments instead of the original. Therefore, before evaluating all subforms of)]TJ -T* -0.2633 Tw -(your input, the Exec substitutes the corresponding undoable call for any destructive)Tj -T* -0.0267 Tw -[(operation. For example, if you type )]TJ -/TT8 1 Tf -16.2404 0 TD -0.0644 Tw -(\(DEFUN FOO ...\))Tj -/TT6 1 Tf -9.1304 0 TD -0.0267 Tw -[(, undoable versions of the forms)]TJ --25.3707 -1.2889 TD -0.33 Tw -(that set the definition into the symbol function cell are evaluated. )Tj -/TT8 1 Tf -33.2178 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.33 Tw -(s function)Tj --35.0181 -1.2889 TD -0 Tw -(definition itself is not made undoable.)Tj -/TT4 1 Tf -10 0 0 10 102 292.2 Tm -(Undoing in Programs)Tj -ET -102.01 289.49 m -558.01 289.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 275.54 Tm -0.1389 Tw -[(There are two ways to make a program undoable. The simplest method is to wrap the programs)]TJ -0 -1.2222 TD -0.2567 Tw -(form in the )Tj -/TT8 1 Tf -5.937 0 TD -0 Tw -(UNDOABLY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2567 Tw -[( macro. The other is to call undoable versions of destructive operations)]TJ --10.7378 -1.2889 TD -0 Tw -(directly.)Tj -/TT8 1 Tf -2.6667 -2 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD --0.0001 Tc -(XCL:UNDOABLY )Tj -/TT13 1 Tf -7.8 0 TD -0 Tc -(&REST FORMS)Tj -/TT8 1 Tf -6.6011 0 TD -(\) )Tj -/TT6 1 Tf -24.1677 0 TD -([Macro])Tj --36.5022 -1.8444 TD -0.0722 Tw -(Executes the forms in )Tj -/TT13 1 Tf -10.0115 0 TD -0 Tw -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0722 Tw -[( using undoable versions of all destructive operations. This)]TJ --13.012 -1.2889 TD -0.1678 Tw -(is done by walking \(see )Tj -/TT8 1 Tf -12.4561 0 TD -0 Tw -(WALKFORM)Tj -/TT6 1 Tf -4.8008 0 TD -0.1678 Tw -(\) all of the )Tj -/TT13 1 Tf -5.3523 0 TD -0 Tw -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -0.1678 Tw -[( and rewriting them to use the)]TJ --25.6096 -1.2889 TD -0 Tw -(undoable versions of destructive operations \()Tj -/TT8 1 Tf -19.9653 0 TD -(LISPXFNS)Tj -/TT6 1 Tf -4.8008 0 TD -( makes the association\).)Tj -/TT8 1 Tf --27.4328 -2.0667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(STOP-UNDOABLY)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(&REST FORMS)Tj -/TT8 1 Tf -6.6011 0 TD -(\))Tj -/TT6 1 Tf -23.5677 0 TD -([Macro])Tj --36.5022 -1.8444 TD -0.2989 Tw -(Normally executes as )Tj -/TT8 1 Tf -10.6135 0 TD -0 Tw -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2989 Tw -(; however, within an )Tj -/TT8 1 Tf -10.5637 0 TD -0 Tw -(UNDOABLY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2989 Tw -[( form, explicitly causes)]TJ -/TT13 1 Tf --28.9785 -1.2889 TD -0 Tw -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0589 Tw -[( not to be done undoably. Turns off rewriting of the )]TJ -/TT13 1 Tf -24.0192 0 TD -0 Tw -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0589 Tw -[( to be undoable inside)]TJ --30.0201 -1.2889 TD -0 Tw -(an )Tj -/TT8 1 Tf -1.332 0 TD -(UNDOABLY)Tj -/TT6 1 Tf -4.8008 0 TD -( macro.)Tj -/TT4 1 Tf -10 0 0 10 102 113.8 Tm -(Undoable Versions of Common Functions)Tj -ET -102.01 111.09 m -558.01 111.09 l -S -BT -/TT6 1 Tf -9 0 0 9 126 97.14 Tm -0.0389 Tw -(When efficiencyis a serious concern, you may need more control over the saving of undo information)Tj -0 -1.2222 TD -0 Tw -(than that provided by the )Tj -/TT8 1 Tf -11.5698 0 TD -(UNDOABLY)Tj -/TT6 1 Tf -4.8008 0 TD -( macro. )Tj --16.3706 -2.0667 TD -0.0222 Tw -(To make a function undoable, you can simply substitute the corresponding undoable function in your)Tj -0 -1.2222 TD -0.0156 Tw -[(program. When the undoable function is called, it will save the undo information in the current event)]TJ -T* -0 Tw -(on the history list.)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -63 0 obj -<< -/Length 4590 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-13)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0422 Tw -(Various operations, most notably )Tj -/TT8 1 Tf -15.123 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -0.0422 Tw -[(, have undoable versions. The following undoable macros are)]TJ --17.5234 -1.2889 TD -0 Tw -(initially available:)Tj -/TT8 1 Tf -5.3333 -1.6 TD -[(UNDOABLY-POP)-10798.8(UNDOABLY-SET-SYMBOL)]TJ -0 -1.2222 TD -[(UNDOABLY-PUSH)-10198.7(UNDOABLY-MAKUNBOUND)]TJ -T* -[(UNDOABLY-PUSHNEW)-8398.4(UNDOABLY-FMAKUNBOUND)]TJ -T* -[(UNDOABLY-REMF)-10198.7(UNDOABLY-SETQ)]TJ -T* -[(UNDOABLY-ROTATEF)-8398.4(XCL:UNDOABLY-SETF)]TJ -T* -[(UNDOABLY-SHIFTF)-8998.5(UNDOABLY-PSETF)]TJ -T* -[(UNDOABLY-DECF)-10198.7(UNDOABLY-SETF-SYMBOL-FUNCTION)]TJ -T* -[(UNDOABLY-INCF)-10198.7(UNDOABLY-SETF-MACRO-FUNCTION)]TJ -/TT19 1 Tf --5.3333 -1.8444 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.03 Tw -[(: Many destructive Common Lisp functions do not have undoable versions, e.g.,)]TJ -/TT19 1 Tf -35.9855 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.28 0 TD -(CL:NREVERSE)Tj -/TT6 1 Tf -6.6011 0 TD -(,)Tj -/TT8 1 Tf --45.0887 -1.2889 TD -(CL:SORT)Tj -/TT6 1 Tf -4.2007 0 TD -(, etc. You can see the current list of undoable functions on the association list )Tj -/TT8 1 Tf -34.3115 0 TD -(LISPXFNS)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 415.4 Tm -(Modifying the UNDO Facility)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 412.69 m -510.01 412.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 398.74 Tm -0.0333 Tw -(You may want to extend the )Tj -/TT8 1 Tf -12.9495 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( facility after creating a form whose side effects might be undoable,)]TJ --15.3499 -1.2889 TD -0 Tw -(for instance a file renaming function.)Tj -0 -2 TD -0.0433 Tw -[(You need to write an undoable version of the function. You can do this by explicitly saving previous)]TJ -0 -1.2222 TD -0.39 Tw -[(state information, or by renaming calls in the function to their undoable equivalent. Undo)]TJ -T* -0 Tw -(information should be saved on the history list using )Tj -/TT8 1 Tf -23.6157 0 TD -(IL:UNDOSAVE)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --30.2168 -2.0667 TD -0.0267 Tw -[(You must then hook the undoable version of the function into the undo facility. You do this by either)]TJ -0 -1.2222 TD -0.1378 Tw -(using the )Tj -/TT8 1 Tf -4.6188 0 TD -0 Tw -(IL:LISPXFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1378 Tw -[( association list, or in the case of a )]TJ -/TT8 1 Tf -16.3723 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( modifier, on the )]TJ -/TT8 1 Tf -8.1449 0 TD -0 Tw -(IL:UNDOABLE-)Tj --38.1375 -1.2889 TD -(SETF-INVERSE)Tj -/TT6 1 Tf -7.2012 0 TD -( property of the )Tj -/TT8 1 Tf -7.1655 0 TD -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -( function.)Tj -/TT17 1 Tf --14.1004 -2.0667 TD -(LISPXFNS)Tj -/TT6 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0256 Tw -(Contains an association list that maps from destructive operations to their undoable form.)Tj -0 -1.2222 TD -0 Tw -(Initially this list contains:)Tj -/TT8 1 Tf -2.6667 -1.3778 TD -(\(\(CL:POP . UNDOABLY-POP\))Tj -0.6667 -1 TD -(\(CL:PSETF . NDOABLY-PSETF\))Tj -T* -(\(CL:PUSH . UNDOABLY-PUSH\))Tj -T* -(\(CL:PUSHNEW . UNDOABLY-PUSHNEW\))Tj -T* -(\(\(CL:REMF\) . UNDOABLY-REMF\))Tj -T* -(\(CL:ROTATEF . UNDOABLY-ROTATEF\))Tj -T* -(\(CL:SHIFTF . UNDOABLY-SHIFTF\))Tj -T* -(\(CL:DECF . UNDOABLY-DECF\))Tj -T* -(\(CL:INCF . UNDOABLY-INCF\))Tj -T* -(\(CL:SET . UNDOABLY-SET-SYMBOL\))Tj -T* -(\(CL:MAKUNBOUND . UNDOABLY-MAKUNBOUND\))Tj -T* -(\(CL:FMAKUNBOUND . UNDOABLY-FMAKUNBOUND\))Tj -/TT6 1 Tf -0 -1.0667 TD -(. . . plus the original Interlisp undo associations\))Tj -/TT8 1 Tf --6 -1.7778 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:UNDOABLY-SETF)Tj -/TT8 1 Tf -10.1999 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(PLACE VALUE)Tj -/TT8 1 Tf -6.6011 0 TD -( ...\))Tj -/TT6 1 Tf -21.1677 0 TD -([Macro])Tj --36.5022 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.4581 0 TD -(CL:SETF)Tj -/TT6 1 Tf -4.2007 0 TD -0.2711 Tw -[( but saves information so it may be undone. )]TJ -/TT8 1 Tf -23.0921 0 TD -0 Tw -(UNDOABLY-SETF)Tj -/TT6 1 Tf -7.8013 0 TD -0.2711 Tw -[( uses)]TJ --37.5522 -1.2889 TD -0.3544 Tw -(undoable versions of the )Tj -/TT8 1 Tf -12.5545 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -0.3544 Tw -[( function located on the )]TJ -/TT8 1 Tf -12.4412 0 TD -0 Tw -(UNDOABLE-SETF-INVERSE)Tj -/TT6 1 Tf --27.3961 -1.2889 TD -(property of the function being )Tj -/TT8 1 Tf -13.584 0 TD -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -(ed. Initially these )Tj -/TT8 1 Tf -8.0952 0 TD -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -( names have such a property:)Tj -/TT8 1 Tf --23.8133 -1.6667 TD -(CL:SYMBOL-FUNCTION - UNDOABLY-SETF-SYMBOL-FUNCTION)Tj -0 -1 TD -(CL:MACRO-FUNCTION - UNDOABLY-SETF-MACRO-FUNCTION)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R -/TT19 42 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -66 0 obj -<< -/Length 7789 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-14)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD --0.0001 Tc -(UNDOABLY-SETQ )Tj -/TT13 1 Tf -8.4 0 TD -0 Tc -(&REST FORMS)Tj -/TT8 1 Tf -6.6011 0 TD -(\) )Tj -/TT6 1 Tf -22.4688 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Typed-in )Tj -/TT8 1 Tf -4.5115 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1956 Tw -(s \(and )Tj -/TT8 1 Tf -3.3408 0 TD -0 Tw -(SETF)Tj -/TT6 1 Tf -2.4004 0 TD -0.1956 Tw -(s on symbols\) are made undoable by substituting a call to)Tj -/TT8 1 Tf --12.6531 -1.2889 TD -0.2989 Tw -[(UNDOABLY-SETQ. UNDOABLY-SETQ)]TJ -/TT6 1 Tf -18.0006 0 TD -0.1244 Tw -[( operates like )]TJ -/TT8 1 Tf -6.4905 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( on lexical variables or those)]TJ --26.8915 -1.2889 TD -0.0378 Tw -(with dynamic bindings; it only saves information on the history list for changes to global,)Tj -0 -1.2222 TD -0 Tw -(top-level values.)Tj -/TT8 1 Tf --2.6667 -2 TD -(\()Tj -/TT17 1 Tf -0.6 0 TD -(UNDOSAVE )Tj -/TT13 1 Tf -5.4009 0 TD -(UNDOFORM HISTENTRY)Tj -/TT8 1 Tf -10.8018 0 TD -(\) )Tj -/TT6 1 Tf -21.2674 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.3667 Tw -(Adds the undo information )Tj -/TT13 1 Tf -13.8939 0 TD -0 Tw -(UNDOFORM)Tj -/TT6 1 Tf -4.8008 0 TD -0.3667 Tw -[( to the )]TJ -/TT8 1 Tf -4.1093 0 TD -0 Tw -(SIDE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3667 Tw -[( property of the history event)]TJ -/TT13 1 Tf --25.2044 -1.2889 TD -0 Tw -(HISTENTRY)Tj -/TT6 1 Tf -5.4009 0 TD -0.2244 Tw -[(. If there is no )]TJ -/TT8 1 Tf -7.8706 0 TD -0 Tw -(SIDE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2244 Tw -[( property, one is created. If the value of the )]TJ -/TT8 1 Tf -21.9352 0 TD -0 Tw -(SIDE)Tj -/TT6 1 Tf --37.6071 -1.2889 TD -0.1022 Tw -(property is )Tj -/TT8 1 Tf -5.3187 0 TD -0 Tw -(NOSAVE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1022 Tw -(, the information is not saved)Tj -/TT13 1 Tf -13.4208 0 TD -0.2467 Tw -[(. HISTENTRY)]TJ -/TT6 1 Tf -7.6945 0 TD -0.1022 Tw -[( specifies an event. If)]TJ -/TT13 1 Tf --30.0346 -1.2889 TD -0 Tw -(HISTENTRY)Tj -/TT6 1 Tf -5.4009 0 TD -(=)Tj -/TT8 1 Tf -0.606 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0489 Tw -(, the value of )Tj -/TT8 1 Tf -6.1497 0 TD -0 Tw -(LISPXHIST)Tj -/TT6 1 Tf -5.4009 0 TD -0.0489 Tw -[( is used. If both )]TJ -/TT13 1 Tf -7.5521 0 TD -0 Tw -(HISTENTRY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0489 Tw -[( and )]TJ -/TT8 1 Tf -2.2907 0 TD -0 Tw -(LISPXHIST)Tj -/TT6 1 Tf --34.6013 -1.2889 TD -(are )Tj -/TT8 1 Tf -1.624 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -( is a no-op. )Tj --8.7251 -2.0667 TD -0.0144 Tw -(The form of )Tj -/TT8 1 Tf -5.5028 0 TD -0 Tw -(UNDOFORM)Tj -/TT6 1 Tf -4.8008 0 TD -0.0144 Tw -[( is )]TJ -/TT8 1 Tf -1.2437 0 TD -0.0344 Tw -(\(FN . ARGS\))Tj -/TT6 1 Tf -6.67 0 TD -0.0144 Tw -[(. Undoing is done by performing )]TJ -/TT8 1 Tf -15.1499 0 TD -0.0344 Tw -(\(APPLY \(CAR)Tj --33.3672 -1.2889 TD -0 Tw -(UNDOFORM\) \(CDR UNDOFORM\)\))Tj -/TT6 1 Tf -15.0024 0 TD -(. )Tj -/TT17 1 Tf --17.6691 -2.0667 TD -(\\#UNDOSAVES)Tj -/TT8 1 Tf -6.6 0 TD -( )Tj -/TT6 1 Tf -31.6678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0744 Tw -(The maximum number of )Tj -/TT8 1 Tf -11.9042 0 TD -0 Tw -(UNDOFORM)Tj -/TT6 1 Tf -4.8008 0 TD -0.0744 Tw -[(s to be saved for a single event. When the count of)]TJ -/TT8 1 Tf --16.705 -1.2889 TD -0 Tw -(UNDOFORM)Tj -/TT6 1 Tf -4.8008 0 TD -0.1633 Tw -(s reaches this number, )Tj -/TT8 1 Tf -10.7481 0 TD -0 Tw -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1633 Tw -[( prints the message )]TJ -/TT8 1 Tf -9.4043 0 TD -0.3922 Tw -(CONTINUE SAVING?)Tj -/TT6 1 Tf -9.9938 0 TD -0 Tw -(,)Tj --39.7477 -1.2889 TD -0.0133 Tw -[(asking if you want to continue saving. If you answer )]TJ -/TT8 1 Tf -23.8591 0 TD -0 Tw -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0133 Tw -[( or )]TJ -/TT8 1 Tf -1.4676 0 TD -0 Tw -(default)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5133 0 TD -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0133 Tw -[( discards)]TJ --36.0416 -1.2889 TD -0.1189 Tw -(the previously saved information for this event, and makes )Tj -/TT8 1 Tf -27.4245 0 TD -0 Tw -(NOSAVE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1189 Tw -[( be the value of the)]TJ --31.0251 -1.2889 TD -0 Tw -(property )Tj -/TT8 1 Tf -4.3461 0 TD -(SIDE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1967 Tw -[(, which disables any further saving for this event. If you answer )]TJ -/TT8 1 Tf -31.1988 0 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj -/TT8 1 Tf --39.7455 -1.2889 TD -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2278 Tw -[( changes the count to )]TJ -/TT8 1 Tf -10.716 0 TD -0 Tw -(-1)Tj -/TT6 1 Tf -1.2002 0 TD -0.2278 Tw -(, which is then never incremented, and continues)Tj --16.717 -1.2889 TD -0.1433 Tw -[(saving. The purpose of this feature is to avoid tying up large quantities of storage for)]TJ -0 -1.2222 TD -0 Tw -(operations that will never need to be undone.)Tj -0 -2 TD -(If )Tj -/TT8 1 Tf -1.2399 0 TD -(\\#UNDOSAVES)Tj -/TT6 1 Tf -6.6011 0 TD -0.32 Tw -[( is negative, then when the count reaches )]TJ -/TT8 1 Tf -20.9404 0 TD -0.7678 Tw -(\(ABS \\#UNDOSAVES\))Tj -/TT6 1 Tf -10.9694 0 TD -0 Tw -(,)Tj -/TT8 1 Tf --39.7508 -1.2889 TD -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2767 Tw -[( simply stops saving without printing any messages or other interactions.)]TJ -/TT8 1 Tf --4.8008 -1.2889 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT6 1 Tf -6.6011 0 TD -0.0244 Tw -[( = )]TJ -/TT8 1 Tf -1.1548 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.361 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT6 1 Tf -6.6011 0 TD -0.0244 Tw -[( = infinity. )]TJ -/TT8 1 Tf -5.2062 0 TD -0 Tw -(\\#UNDOSAVES)Tj -/TT6 1 Tf -6.6011 0 TD -0.0244 Tw -[( is initially)]TJ -/TT8 1 Tf --35.3255 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --1.8003 -2.0667 TD -0.0733 Tw -[(The configuration described here is very satisfactory. You pay a very small price for the)]TJ -0 -1.2222 TD -0.0989 Tw -(ability to undo what you type in, since the interpreted evaluation is simply watched for)Tj -T* -0.18 Tw -(destructive operations, or if you wish to protect yourself from malfunctioning in your)Tj -T* -0.01 Tw -(own programs, you can explicitly call, or rewrite your program to explicitly call, undoable)Tj -T* -0 Tw -(functions.)Tj -/TT4 1 Tf -10 0 0 10 102 154 Tm -(Undoing Out of Order)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 151.29 m -558.01 151.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 137.34 Tm -(UNDOABLY-SETF)Tj -/TT6 1 Tf -7.8013 0 TD -0.0744 Tw -[( operates undoably by saving \(on the history list\) the cell that is to be changed and)]TJ --7.8013 -1.2889 TD -0 Tw -(its original contents. Undoing an )Tj -/TT8 1 Tf -14.98 0 TD -(UNDOABLY-SETF)Tj -/TT6 1 Tf -7.8013 0 TD -( restores the saved contents.)Tj --22.7813 -2.0667 TD -0.14 Tw -(This implementation can produce unexpected results when multiple modifications are made to the)Tj -0 -1.2222 TD -0.0844 Tw -[(same piece of storage and then undone out of order. For example, if you type )]TJ -/TT8 1 Tf -35.918 0 TD -0.2033 Tw -(\(SETF \(CAR FOO\))Tj --35.918 -1.2889 TD -0 Tw -(1\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0889 Tw -(, followed by )Tj -/TT8 1 Tf -6.3067 0 TD -0.2122 Tw -(\(SETF \(CAR FOO\) 2\))Tj -/TT6 1 Tf -11.4384 0 TD -0.0889 Tw -(, then undo both events by undoing the most recent event)Tj --18.9453 -1.2889 TD -0.1923 Tw -(first, then undoing the older event, )Tj -/TT8 1 Tf -16.8034 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1922 Tw -[( will be restored to its state before either event operated.)]TJ --18.6036 -1.2889 TD -0.0633 Tw -(However if you undo the first event, then the second event, )Tj -/TT8 1 Tf -27.2079 0 TD -0.1511 Tw -(\(CAR FOO\))Tj -/TT6 1 Tf -5.552 0 TD -0.0633 Tw -[( will be )]TJ -/TT8 1 Tf -3.6793 0 TD -0 Tw -(1)Tj -/TT6 1 Tf -0.6001 0 TD -0.0633 Tw -(, since this is what)Tj --37.0392 -1.2889 TD -0.0733 Tw -(was in )Tj -/TT8 1 Tf -3.2775 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0733 Tw -[( of )]TJ -/TT8 1 Tf -1.5256 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0733 Tw -[( before )]TJ -/TT8 1 Tf -3.4318 0 TD -0.1756 Tw -(\(UNDOABLY-SETF \(CAR FOO\) 2\))Tj -/TT6 1 Tf -16.7293 0 TD -0.0733 Tw -[( was executed. Similarly, if you type)]TJ -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -69 0 obj -<< -/Length 6961 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-15)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.2444 Tw -(\(NCONC FOO \(1\)\))Tj -/TT6 1 Tf -10.0905 0 TD -0.1022 Tw -(, followed by )Tj -/TT8 1 Tf -6.3467 0 TD -0.2444 Tw -(\(NCONC FOO \(2\)\))Tj -/TT6 1 Tf -10.0905 0 TD -0.1022 Tw -(, undoing just )Tj -/TT8 1 Tf -6.6646 0 TD -0.2444 Tw -(\(NCONC FOO \(1\)\))Tj -/TT6 1 Tf -10.0904 0 TD -0.1022 Tw -[( will)]TJ --43.2826 -1.2889 TD -0.2367 Tw -(remove both )Tj -/TT8 1 Tf -6.3273 0 TD -0 Tw -(1)Tj -/TT6 1 Tf -0.6001 0 TD -0.2367 Tw -[( and )]TJ -/TT8 1 Tf -2.6662 0 TD -0 Tw -(2)Tj -/TT6 1 Tf -0.6001 0 TD -0.2367 Tw -[( from )]TJ -/TT8 1 Tf -3.1301 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.2367 Tw -[(. The problem in both cases is that the two operations are not)]TJ --15.1241 -1.2889 TD -0 Tw -(independent.)Tj -0 -2 TD -0.0933 Tw -(In general, operations are always independent if they affect different lists or different sublists of the)Tj -0 -1.2222 TD -0.2155 Tw -[(same list. Undoing in reverse order of execution, or undoing independent operations, is always)]TJ -T* -0.1756 Tw -[(guaranteed to do the right thing. However, undoing dependent operations out of order may not)]TJ -T* -0 Tw -(always have the predicted effect.)Tj -/TT4 1 Tf -10 0 0 10 54 473 Tm -(Format and Use of the History List)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 470.29 m -510.01 470.29 l -S -BT -/TT17 1 Tf -9 0 0 9 102 456.34 Tm -(LISPXHISTORY)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT6 1 Tf -31.0666 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0001 Tc --0.0001 Tw -(The Exec currently uses one primary history list, )Tj -/TT8 1 Tf -21.6587 0 TD -0 Tc -0 Tw -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -( for the storing events.)Tj --28.8599 -2.0667 TD -0.0511 Tw -(The history list is in the form )Tj -/TT8 1 Tf -13.3656 0 TD -0 Tw -(\()Tj -/TT13 1 Tf -0.6001 0 TD -0.1244 Tw -(EVENTS EVENT# SIZE MOD)Tj -/TT8 1 Tf -13.5755 0 TD -0 Tw -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tw -(, where )Tj -/TT13 1 Tf -3.6213 0 TD -0 Tw -(EVENTS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0511 Tw -[( is a list of)]TJ --35.3631 -1.2889 TD -0.0978 Tw -(events with the most recent event first, )Tj -/TT13 1 Tf -18.0438 0 TD -0 Tw -(EVENT#)Tj -/TT6 1 Tf -3.6006 0 TD -0.0978 Tw -[( is the event number for the most recent)]TJ --21.6444 -1.2889 TD -0.01 Tw -(event on )Tj -/TT13 1 Tf -4.0791 0 TD -0 Tw -(EVENTS)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT13 1 Tf -0.51 0 TD -(SIZE)Tj -/TT6 1 Tf -2.4004 0 TD -0.01 Tw -[( is the the maximum length )]TJ -/TT13 1 Tf -12.6843 0 TD -0 Tw -(EVENTS)Tj -/TT6 1 Tf -3.6006 0 TD -0.01 Tw -[( is allowed to grow)]TJ -/TT13 1 Tf -8.5097 0 TD -0.0233 Tw -[(. MOD)]TJ -/TT6 1 Tf -3.6473 0 TD -0.01 Tw -[( is)]TJ --39.0319 -1.2889 TD -0.5467 Tw -(is the maximum event number to use, after which event numbers roll over)Tj -/TT13 1 Tf -39.3989 0 TD -0 Tw -(.)Tj --39.3989 -1.2889 TD -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -( is initialized to )Tj -/TT8 1 Tf -7.04 0 TD -(\(NIL 0 100 1000\))Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj --23.8428 -2.0667 TD -0.0156 Tw -[(The history list has a maximum length, called its time-slice. As new events occur, existing)]TJ -0 -1.2222 TD -0.0689 Tw -[(events are aged, and the oldest events are forgotten. The time-slice can be changed with)]TJ -T* -0.1178 Tw -(the function )Tj -/TT8 1 Tf -5.83 0 TD -0 Tw -(CHANGESLICE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1178 Tw -[(. Larger time-slices enable longer memory spans, but tie up)]TJ --12.4311 -1.2889 TD -0.2689 Tw -[(correspondingly greater amounts of storage. Since you seldom need really ancient)]TJ -0 -1.2222 TD -0.0278 Tw -[(history, a relatively small time-slice such as 30 events is usually adequate, although some)]TJ -T* -0 Tw -(users prefer to set the time-slice as large as 200 events.)Tj -0 -2 TD -0.0822 Tw -(Each individual event on )Tj -/TT13 1 Tf -11.6604 0 TD -0 Tw -(EVENTS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0822 Tw -[( is a list of the form )]TJ -/TT8 1 Tf -9.2953 0 TD -0 Tw -(\()Tj -/TT13 1 Tf -0.6001 0 TD -0.1978 Tw -(INPUT ID VALUE . PROPS)Tj -/TT8 1 Tf -13.9933 0 TD -0 Tw -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --39.7498 -1.2889 TD -0.1511 Tw -(For Exec events, )Tj -/TT13 1 Tf -7.8552 0 TD -0 Tw -(ID)Tj -/TT6 1 Tf -1.2002 0 TD -0.1511 Tw -[( is a list )]TJ -/TT8 1 Tf -4.1513 0 TD -0 Tw -(\()Tj -/TT13 1 Tf -0.6001 0 TD -0.3622 Tw -(EVENT-NUMBER EXEC-ID)Tj -/TT8 1 Tf -12.3642 0 TD -0 Tw -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[(. The )]TJ -/TT13 1 Tf -3.1272 0 TD -0 Tw -(EVENT-NUMBER)Tj -/TT6 1 Tf -7.2012 0 TD -0.1511 Tw -[( is the)]TJ --37.0994 -1.2889 TD -0.0122 Tw -(number of the event, while the )Tj -/TT13 1 Tf -13.88 0 TD -0 Tw -(EXEC-ID)Tj -/TT6 1 Tf -4.2007 0 TD -0.0122 Tw -[( is a string that uniquely identifies the Exec. \(The)]TJ -/TT13 1 Tf --18.0807 -1.2889 TD -0 Tw -(EXEC-ID)Tj -/TT6 1 Tf -4.2007 0 TD -0.0001 Tc -0.0032 Tw -( is used to identify which events belong to the same Exec.\) )Tj -/TT13 1 Tf -27.4925 0 TD -0 Tc -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0002 Tc -0.0031 Tw -( is the \(first\))Tj --34.6936 -1.2889 TD -0 Tc -0.0089 Tw -(value of the event)Tj -/TT13 1 Tf -7.9119 0 TD -0.0222 Tw -[(. PROPS)]TJ -/TT6 1 Tf -4.8452 0 TD -0.0089 Tw -[( is a property list used to associate other information with the)]TJ --12.7571 -1.2889 TD -0 Tw -(event \(described below\).)Tj -/TT13 1 Tf -0 -2 TD -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -0.07 Tw -[( is the input sequence for the event. Normally, this is just the input that you type)]TJ --3.0005 -1.2889 TD -0.1156 Tw -[(in. For an )]TJ -/TT8 1 Tf -5.1644 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.1156 Tw -(-format input this is a list consisting of two expressions; for an )Tj -/TT8 1 Tf -29.0932 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(-)Tj --39.6585 -1.2889 TD -0.1589 Tw -(format input, this is a list of just one expression; for an input entered as list of atoms,)Tj -/TT13 1 Tf -0 -1.2222 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -( is simply that list. For example,)Tj --3.0005 -2.0667 TD -(User Input)Tj -/TT13 1 Tf -17.3333 0 TD -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -( is:)Tj -/TT8 1 Tf --20.3338 -1.6667 TD -[(LIST\(1 2\))-11932.5(\(LIST \(1 2\)\))]TJ -0 -1 TD -[(\(LIST 1 1\))-11332.4(\(\(LIST 1 1\)\))]TJ -0 -1.0667 TD -(DIR "{DSK}")Tj -/TT15 1 Tf -13.2021 0 TD -(cr)Tj -/TT8 1 Tf -4.1312 0 TD -(\(DIR "{DSK}"\))Tj -/TT6 1 Tf --17.3333 -1.8444 TD -0.2 Tw -(If you type in an Exec command that executes other events \()Tj -/TT8 1 Tf -28.741 0 TD -0 Tw -(REDO)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.7 0 TD -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.2 Tw -(, etc.\), several)Tj --33.6417 -1.2889 TD -0.07 Tw -[(events might result. When there is more than one input, they are wrapped together into)]TJ -0 -1.2222 TD -0 Tw -(one invocation of the )Tj -/TT8 1 Tf -9.5459 0 TD -(DO-EVENTS)Tj -/TT6 1 Tf -5.4009 0 TD -( command.)Tj --14.9468 -2.0667 TD -0.2144 Tw -(The same convention is used for representing multiple inputs when a )Tj -/TT8 1 Tf -33.2754 0 TD -0 Tw -(USE)Tj -/TT6 1 Tf -1.8003 0 TD -0.2144 Tw -[( command)]TJ --35.0757 -1.2889 TD -0.0256 Tw -[(involves sequential substitutions. For example, if you type )]TJ -/TT8 1 Tf -26.5147 0 TD -0 Tw -(FBOUNDP\(FOO\))Tj -/TT6 1 Tf -7.2012 0 TD -0.0256 Tw -[( and then )]TJ -/TT8 1 Tf -4.4888 0 TD -0 Tw -(USE)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT15 34 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -72 0 obj -<< -/Length 5703 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-16)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.1444 Tw -(FIE FUM FOR FOO)Tj -/TT6 1 Tf -9.4348 0 TD -0.06 Tw -(, the input sequence that will be constructed is )Tj -/TT8 1 Tf -21.2485 0 TD -0 Tw -(DO-EVENTS)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/TT8 1 Tf -0.31 0 TD -(\(EVENT)Tj --36.3942 -1.2889 TD -0.1533 Tw -(FBOUNDP \(FIE\)\) \(EVENT FBOUNDP \(FUM\)\))Tj -/TT6 1 Tf -22.2168 0 TD -0.0633 Tw -(, which is the result of substituting )Tj -/TT8 1 Tf -15.9809 0 TD -0 Tw -(FIE)Tj -/TT6 1 Tf --38.1978 -1.2889 TD -(for )Tj -/TT8 1 Tf -1.5317 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( in )]TJ -/TT8 1 Tf -1.3886 0 TD -0.0178 Tw -(\(FBOUNDP \(FOO\)\))Tj -/TT6 1 Tf -9.0192 0 TD -0.0078 Tw -[( concatenated with the result of substituting )]TJ -/TT8 1 Tf -19.7463 0 TD -0 Tw -(FUM)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( for )]TJ -/TT8 1 Tf -1.7895 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( in)]TJ -/TT8 1 Tf --38.8763 -1.2889 TD -0 Tw -(\(FBOUNDP \(FOO\)\))Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT8 1 Tf --9.0015 -2.0667 TD -(PROPS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0722 Tw -[( is a property list of the form )]TJ -/TT8 1 Tf -13.4469 0 TD -0 Tw -(\(PROPERTY)Tj -6 0 0 6 370.63 514.14 Tm -(1)Tj -9 0 0 9 374.23 516.14 Tm -0.1744 Tw -[( VALUE)]TJ -6 0 0 6 408.2 514.14 Tm -0 Tw -(1)Tj -9 0 0 9 411.8 516.14 Tm -0.1744 Tw -[( PROPERTY)]TJ -6 0 0 6 461.97 514.14 Tm -0 Tw -(2)Tj -9 0 0 9 465.57 516.14 Tm -0.1744 Tw -[( VALUE)]TJ -6 0 0 6 499.54 514.14 Tm -0 Tw -(2)Tj -9 0 0 9 503.14 516.14 Tm -0.1744 Tw -[( ...\))]TJ -/TT6 1 Tf -3.1749 0 TD -0 Tw -(,)Tj --39.746 -1.3944 TD -0.04 Tw -[(that can be used to associate arbitrary information with a particular event. Currently, the)]TJ -0 -1.2222 TD -0 Tw -(following properties are used by the Exec:)Tj -/TT17 1 Tf --2.6667 -1.9333 TD -(SIDE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT6 1 Tf -0.2663 -1.8444 TD -(A list of the side effects of the event. See )Tj -/TT8 1 Tf -18.1787 0 TD -(UNDOSAVE)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT17 1 Tf --25.6462 -2 TD -(*LISPXPRINT*)Tj -/TT6 1 Tf -2.6667 -1.8444 TD -(Used to record calls to )Tj -/TT8 1 Tf -10.105 0 TD -(EXEC-FORMAT)Tj -/TT6 1 Tf -6.6011 0 TD -(, and printed by the )Tj -/TT8 1 Tf -8.9746 0 TD -(??)Tj -/TT6 1 Tf -1.2002 0 TD -( command.)Tj -/TT4 1 Tf -10 0 0 10 102 401.05 Tm -(Making or Changing an Exec)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 398.34 m -558.01 398.34 l -S -BT -/TT8 1 Tf -9 0 0 9 150 384.39 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:ADD-EXEC)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT13 1 Tf -0.6001 0 TD -(&KEY PROFILE REGION TTY ID)Tj -/TT8 1 Tf -15.6025 0 TD -(\))Tj -/TT6 1 Tf -14.0674 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0033 Tw -(Creates a new process and window with an Exec running in it. )Tj -/TT13 1 Tf -28.2008 0 TD -0 Tw -(PROFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0002 Tc -0.0031 Tw -( is the type of the)Tj --32.4015 -1.2889 TD -0 Tc -0.0089 Tw -(Exec to be created \(see below under )Tj -/TT8 1 Tf -16.0881 0 TD -0 Tw -(XCL:SET-EXEC-TYPE)Tj -/TT6 1 Tf -10.2017 0 TD -0.0089 Tw -(\). )Tj -/TT13 1 Tf -1.1008 0 TD -0 Tw -(REGION)Tj -/TT6 1 Tf -3.6006 0 TD -0.0089 Tw -[( optionally gives the)]TJ --30.9911 -1.2889 TD -0.0167 Tw -[(shape and location of the window to be used. If not provided you will be prompted. )]TJ -/TT13 1 Tf -38.1984 0 TD -0 Tw -(TTY)Tj -/TT6 1 Tf --38.1984 -1.2889 TD -0.0633 Tw -(is a flag, which, if true, causes the tty to be given to the new Exec process. )Tj -/TT13 1 Tf -34.0585 0 TD -0 Tw -(ID)Tj -/TT6 1 Tf -1.2002 0 TD -0.0633 Tw -[( is a string)]TJ --35.2587 -1.2889 TD -0.05 Tw -(identifier to use for events generated in this exec. )Tj -/TT13 1 Tf -22.6563 0 TD -0 Tw -(ID)Tj -/TT6 1 Tf -1.2002 0 TD -0.05 Tw -[( defaults to the number given to the)]TJ --23.8564 -1.2889 TD -0 Tw -(Exec process created.)Tj -/TT8 1 Tf --2.6667 -1.9333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD --0.0001 Tc -(XCL:EXEC )Tj -/TT13 1 Tf -5.4 0 TD -0 Tc -(&KEY WINDOW PROMPT COMMAND-TABLES ENVIRONMENT PROFILE TOP-)Tj --5.3334 -1.0667 TD -(LEVEL-P TITLE FUNCTION ID)Tj -/TT8 1 Tf -15.0024 0 TD -(\) )Tj -/TT6 1 Tf -22.4009 0 TD -([Function])Tj --35.4033 -1.8444 TD -(This is the main entry to the Exec. The arguments are:)Tj -/TT13 1 Tf -0 -2 TD -(WINDOW)Tj -/TT6 1 Tf -3.6006 0 TD -0.1967 Tw -[( defaults to the current TTY display stream, or can be provided a window in)]TJ --3.6006 -1.2889 TD -0 Tw -(which the Exec will run.)Tj -/TT13 1 Tf -0 -2 TD -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -( is the prompt to print.)Tj -/TT13 1 Tf --3.6006 -2.0667 TD -(COMMAND-TABLES)Tj -/TT6 1 Tf -8.4014 0 TD -0.3622 Tw -[( is a list of hash-tables for looking up commands \(e.g., )]TJ -/TT8 1 Tf -27.9908 0 TD -0 Tw -(*EXEC-)Tj --36.3922 -1.2889 TD -(COMMAND-TABLE*)Tj -/TT6 1 Tf -8.4014 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(*DEBUGGER-COMMAND-TABLE*)Tj -/TT6 1 Tf -14.4023 0 TD -(\).)Tj -/TT13 1 Tf --24.2446 -2.0667 TD -(ENVIRONMENT)Tj -/TT6 1 Tf -6.6011 0 TD -( is a lexical environment used to evaluate things in.)Tj -/TT13 1 Tf --6.6011 -2.0667 TD -(READTABLE)Tj -/TT6 1 Tf -5.4009 0 TD -( is the default readtable to use \(defaults to the Common Lisp readtable\).)Tj -/TT13 1 Tf --5.4009 -2.0667 TD -(PROFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2333 Tw -[( is a way to set the Execs type \(see above, Multiple Execs and the Execs)]TJ --4.2007 -1.2889 TD -0 Tw -(Type\).)Tj -/TT13 1 Tf -0 -2 TD -(TOP-LEVEL-P)Tj -/TT6 1 Tf -6.6011 0 TD -0.0767 Tw -[( is a boolean, which should be true if this Exec is at the top level \(its )]TJ -/TT8 1 Tf -31.5953 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf --38.1964 -1.2889 TD -(for debugger windows, etc\).)Tj -/TT13 1 Tf -0 -2 TD -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -( is an identifying title for the window title of the Exec.)Tj -/TT13 1 Tf --3.0005 -2.0667 TD -(FUNCTION)Tj -/TT6 1 Tf -4.8008 0 TD -( is a function used to actually evaluate events, default is )Tj -/TT8 1 Tf -24.8779 0 TD -(EVAL-INPUT)Tj -/TT6 1 Tf -6.001 0 TD -(. )Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -75 0 obj -<< -/Length 4772 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-17)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT13 1 Tf -9 0 0 9 126 569.54 Tm -(ID)Tj -/TT6 1 Tf -1.2002 0 TD -0.2056 Tw -[( is a string identifier to use for events generated in this Exec. )]TJ -/TT13 1 Tf -30.4105 0 TD -0 Tw -(ID)Tj -/TT6 1 Tf -1.2002 0 TD -0.2056 Tw -[( defaults to the)]TJ --32.8109 -1.2889 TD -0 Tw -(number given to the Exec process.)Tj -/TT17 1 Tf --2.6667 -2.1489 TD -(XCL:*PER-EXEC-VARIABLES*)Tj -/TT11 1 Tf -10 0 0 10 231.6 538.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 538.6 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1056 Tw -(A list of pairs of the form )Tj -/TT8 1 Tf -12.1114 0 TD -0 Tw -(\()Tj -/TT13 1 Tf -0.6001 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT13 1 Tf -0.8534 0 TD -(INIT)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1056 Tw -[(. Each time an Exec is entered, the variables in)]TJ -/TT8 1 Tf --18.3658 -1.2889 TD -0 Tw -(*PER-EXEC-VARIABLES*)Tj -/TT6 1 Tf -12.002 0 TD -0.1289 Tw -[( are rebound to the value returned by evaluating )]TJ -/TT13 1 Tf -22.9232 0 TD -0 Tw -(INIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1289 Tw -[(. The)]TJ --37.3255 -1.2889 TD -0 Tw -(initial value of )Tj -/TT8 1 Tf -6.6392 0 TD -(*PER-EXEC-VARIABLES*)Tj -/TT6 1 Tf -12.002 0 TD -( is:)Tj -/TT8 1 Tf --15.9745 -1.6667 TD -(\(\(*PACKAGE* *PACKAGE*\))Tj -0 -1 TD -( \(* *\))Tj -T* -( \(** **\))Tj -T* -( \(*** ***\))Tj -T* -( \(+ +\))Tj -T* -( \(++ ++\))Tj -T* -( \(+++ +++\))Tj -T* -( \(- -\))Tj -T* -( \(/ /\))Tj -T* -( \(// //\))Tj -T* -( \(/// ///\))Tj -T* -( \(HELPFLAG T\))Tj -T* -( \(*EVALHOOK* NIL\))Tj -T* -( \(*APPLYHOOK* nil\))Tj -T* -( \(*ERROR-OUPUT* *TERMINAL-IO*\))Tj -T* -( \(*READTABLE* *READTABLE*\))Tj -T* -( \(*package* *package*\))Tj -T* -( \(*eval-function* *eval-function*\))Tj -T* -( \(*exec-prompt* *exec-prompt*\))Tj -T* -( \(*debugger-prompt* *debugger-prompt*\)\))Tj -/TT6 1 Tf --2.6667 -1.8444 TD -0.0511 Tw -(Most of these cause the values to be \(re\)bound to their current value in any inferior Exec,)Tj -0 -1.2222 TD -0 Tw -(or to )Tj -/TT8 1 Tf -2.313 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, their value at the top level.)Tj -/TT17 1 Tf --6.7799 -2.2156 TD -(XCL:*EVAL-FUNCTION*)Tj -/TT11 1 Tf -10 0 0 10 204.6 265.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 265.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.06 Tw -[(Bound to the function used by the Exec to evaluate input. Typically in an Interlisp Exec)]TJ -0 -1.2222 TD -0 Tw -(this is )Tj -/TT8 1 Tf -2.8379 0 TD -(IL:EVAL)Tj -/TT6 1 Tf -4.2007 0 TD -(, and in a Common Lisp Exec, )Tj -/TT8 1 Tf -13.4409 0 TD -(CL:EVAL)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT17 1 Tf --27.3468 -2.2156 TD -(XCL:*EXEC-PROMPT*)Tj -/TT11 1 Tf -10 0 0 10 193.8 217.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 217.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0756 Tw -[(Bound to the string printed by the Exec as a prompt for input. Typically in an Interlisp)]TJ -0 -1.2222 TD -0 Tw -(Exec this is )Tj -/TT9 1 Tf -5.8877 0 TD -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -( , and in a Common Lisp Exec, > .)Tj -/TT17 1 Tf --9.5412 -2.1489 TD -(XCL:*DEBUGGER-PROMPT*)Tj -/TT11 1 Tf -10 0 0 10 215.4 170.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 170.78 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0644 Tw -[(Bound to the string printed by the debugger Exec as a prompt for input. Typically in an)]TJ -0 -1.2222 TD -0 Tw -(Interlisp Exec this is )Tj -/TT9 1 Tf -9.8638 0 TD -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -( : , and in a Common Lisp Exec, : .)Tj -/TT8 1 Tf --13.5173 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:EXEC-EVAL)Tj -/TT4 1 Tf -10 0 0 10 177.6 123.84 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 180.3783 123.84 Tm -(FORM &OPTIONAL ENVIRONMENT)Tj -/TT8 1 Tf -15.6025 0 TD -(\))Tj -/TT11 1 Tf -10 0 0 10 326.202 123.84 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 123.84 Tm -([Function])Tj --35.4033 -1.8444 TD -(Evaluates )Tj -/TT13 1 Tf -4.8255 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2767 Tw -[( \(using )]TJ -/TT8 1 Tf -3.8424 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2767 Tw -(\) in the lexical environment )Tj -/TT13 1 Tf -13.7486 0 TD -0 Tw -(ENVIRONMENT)Tj -/TT6 1 Tf -6.6011 0 TD -0.2767 Tw -[( the same as)]TJ --33.8183 -1.2889 TD -0.1133 Tw -(though it were typed in to )Tj -/TT8 1 Tf -12.4979 0 TD -0 Tw -(EXEC)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -(, i.e., the event is recorded, and the evaluation is made)Tj --14.8983 -1.2889 TD -0.3389 Tw -(undoable by substituting the )Tj -/TT8 1 Tf -14.3228 0 TD -0 Tw -(UNDOABLE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3389 Tw -(-functions for the corresponding destructive)Tj --19.1236 -1.2889 TD -0 Tw -(functions)Tj -/TT8 1 Tf -4.1309 0 TD -0.1033 Tw -[(. XCL:EXEC-EVAL)]TJ -/TT6 1 Tf -9.8082 0 TD -0.0433 Tw -[( returns the value\(s\) of the form, but does not print it, and)]TJ --13.9391 -1.2889 TD -0 Tw -(does not reset the variables )Tj -/TT8 1 Tf -12.252 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(**)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(***)Tj -/TT6 1 Tf -1.8003 0 TD -(, etc.)Tj -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -78 0 obj -<< -/Length 5730 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-18)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:EXEC-FORMAT)Tj -/TT4 1 Tf -10 0 0 10 236.414 568.2 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 239.18 568.2 Tm -(CONTROL-STRING &REST ARGUMENTS)Tj -/TT8 1 Tf -18.0029 0 TD -(\))Tj -/TT11 1 Tf -10 0 0 10 406.6072 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1622 Tw -(In addition to saving inputs and values, the Exec saves many system messages on the)Tj -0 -1.2222 TD -0.0422 Tw -[(history list. For example, )]TJ -/TT8 1 Tf -11.6594 0 TD -0.1 Tw -(FILE CREATED ..., FN)Tj -/TT6 1 Tf -12.302 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2922 0 TD -(redefined)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.5422 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.2922 0 TD -(reset)Tj -/TT6 1 Tf -3.0005 0 TD -0.0422 Tw -(, output of)Tj -/TT8 1 Tf --35.2896 -1.2889 TD -0 Tw -(TIME)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5433 0 TD -(BREAKDOWN)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.5433 0 TD -(ROOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -(, save their output on the history list, so that when )Tj -/TT8 1 Tf -22.9215 0 TD -0 Tw -(??)Tj -/TT6 1 Tf -1.2002 0 TD -0.0433 Tw -[( prints the)]TJ --35.41 -1.2889 TD -0.0989 Tw -[(event, the output is also printed. The function )]TJ -/TT8 1 Tf -21.6053 0 TD -0 Tw -(XCL:EXEC-FORMAT)Tj -/TT6 1 Tf -9.0015 0 TD -0.0989 Tw -[( can be used in your)]TJ --30.6068 -1.2889 TD -0.0456 Tw -(code similarly)Tj -/TT8 1 Tf -6.297 0 TD -0.11 Tw -[(. XCL:EXEC-FORMAT)]TJ -/TT6 1 Tf -11.0218 0 TD -0.0456 Tw -[( performs)]TJ -/TT8 1 Tf -4.3512 0 TD -0.11 Tw -[( \(APPLY #CL:FORMAT *TERMINAL-)]TJ --21.67 -1.2889 TD -0 Tw -(IO* )Tj -/TT13 1 Tf -2.6571 0 TD -(CONTROL-STRING)Tj -/TT8 1 Tf -8.4014 0 TD -( )Tj -/TT13 1 Tf -0.8568 0 TD -(ARGUMENTS)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1067 Tw -[( and also saves the format string and arguments)]TJ --17.9162 -1.2889 TD -0 Tw -(on the history list associated with the current event.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:SET-EXEC-TYPE)Tj -/TT4 1 Tf -10 0 0 10 247.2 463.26 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 249.9783 463.26 Tm -(NAME)Tj -/TT11 1 Tf -10 0 0 10 271.5818 463.26 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 492.6299 463.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0289 Tw -(Sets the type of the current Exec to that indicated by )Tj -/TT13 1 Tf -23.5619 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0289 Tw -[(. This can be used to set up the)]TJ --25.9623 -1.2889 TD -0 Tw -(Exec to your liking. )Tj -/TT13 1 Tf -9.0894 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -( may be an atom or string. Possible names are:)Tj -/TT17 1 Tf --6.6231 -1.6667 TD -(INTERLISP)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT17 1 Tf -1.2002 0 TD -(IL)Tj -/TT8 1 Tf -1.8656 0 TD -(*READTABLE* INTERLISP)Tj -0 -1 TD -(*PACKAGE* INTERLISP)Tj -T* -(XCL:*DEBUGGER-PROMPT* ")Tj -/TT9 1 Tf -13.8022 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(: ")Tj --14.7891 -1 TD -(XCL:*EXEC-PROMPT* ")Tj -/TT9 1 Tf -11.4019 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(")Tj --12.3887 -1 TD -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj -/TT17 1 Tf --13.8667 -1.4444 TD -(XEROX-COMMON-LISP)Tj -/TT8 1 Tf -10.2017 0 TD -(, )Tj -/TT17 1 Tf -1.2002 0 TD -(XCL)Tj -/TT8 1 Tf -2.4648 0 TD -(*READTABLE* XCL)Tj -0 -1 TD -(*PACKAGE* XCL-USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -/TT17 1 Tf --9.6667 -1.4444 TD -(COMMON-LISP)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT17 1 Tf -1.2002 0 TD -(CL)Tj -/TT8 1 Tf -1.8654 0 TD -(*READTABLE* LISP)Tj -0 -1 TD -(*PACKAGE* USER)Tj -T* -(XCL:*DEBUGGER-PROMPT* ": ")Tj -T* -(XCL:*EXEC-PROMPT* "> ")Tj -T* -(XCL:*EVAL-FUNCTION* CL:EVAL)Tj -/TT17 1 Tf --9.6667 -1.4444 TD -(OLD-INTERLISP-T)Tj -/TT8 1 Tf -9.6667 0 TD -(*READTABLE* OLD-INTERLISP-T)Tj -0 -1 TD -(*PACKAGE* INTERLISP)Tj -T* -(XCL:*DEBUGGER-PROMPT* )Tj -/TT9 1 Tf -13.8022 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(: ")Tj --14.7891 -1 TD -(XCL:*EXEC-PROMPT* ": ")Tj -T* -(XCL:*EVAL-FUNCTION* IL:EVAL)Tj --16 -1.9933 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(XCL:SET-DEFAULT-EXEC-TYPE)Tj -/TT11 1 Tf -10 0 0 10 290.4 219.12 Tm -( )Tj -/TT13 1 Tf -9 0 0 9 293.1783 219.12 Tm -(NAME)Tj -/TT11 1 Tf -10 0 0 10 314.7818 219.12 Tm -17.4738 Tc -(\)[)Tj -/TT6 1 Tf -9 0 0 9 495.6283 219.12 Tm -0 Tc -(Function])Tj --35.7365 -1.8444 TD -(Like )Tj -/TT8 1 Tf -2.3659 0 TD -(XCL:SET-EXEC-TYPE)Tj -/TT6 1 Tf -10.2017 0 TD -0.1789 Tw -(, but sets the type of Execs created by default, as from the)Tj --12.5676 -1.2889 TD -0.0001 Tc -0.0032 Tw -(background menu. Initially )Tj -/TT8 1 Tf -12.6217 0 TD -0 Tc -0 Tw -(XCL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -(. This can be used in your greet file to set default Execs to)Tj --14.422 -1.2889 TD -0 Tc -0 Tw -(your liking.)Tj -/TT4 1 Tf -10 0 0 10 102 156.98 Tm -(Editing Exec Input)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 154.27 m -558.01 154.27 l -S -BT -/TT6 1 Tf -9 0 0 9 126 140.32 Tm -0.1589 Tw -(The Exec features an input editorwhich provides completion, spelling correction, help facility, and)Tj -0 -1.2222 TD -0.1633 Tw -[(character-level editing. The implementation is borrowed from the Interlisp module )]TJ -/TT8 1 Tf -38.9311 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1633 Tw -[(. This)]TJ --41.9316 -1.2889 TD -0 Tw -(section describes the use of the )Tj -/TT8 1 Tf -13.8506 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( editor from the perspective of the Exec.)Tj -/TT4 1 Tf -10 0 0 10 102 94.78 Tm -(Editing Your Input)Tj -ET -102.01 92.07 m -558.01 92.07 l -S -BT -/TT6 1 Tf -9 0 0 9 126 78.12 Tm -0.3156 Tw -(Some editing operations can be performed using any of several characters; characters that are)Tj -0 -1.2222 TD -0.03 Tw -[(interrupts will, of course, not be read, so several alternatives are given. The following characters may)]TJ -T* -0 Tw -(be used to edit your input:)Tj -/TT17 1 Tf -3.2667 -1.6667 TD -(CONTROL-A)Tj -ET -endstream -endobj -79 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R -/TT11 15 0 R -/TT13 33 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -81 0 obj -<< -/Length 6037 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-19)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT17 1 Tf -9 0 0 9 54 569.54 Tm -(BACKSPACE)Tj -/TT6 1 Tf -5.4033 0 TD -(Deletes a character. At the start of the second or subsequent lines of your input, deletes the last)Tj -6.5967 -1.2889 TD -(character of the previous line.)Tj -/TT17 1 Tf --6.0667 -1.6667 TD -(CONTROL-W)Tj -/TT6 1 Tf -6.0667 0 TD -(Deletes a word. Generally this means back to the last space or parenthesis.)Tj -/TT17 1 Tf --6.0667 -1.5111 TD -(CONTROL-Q)Tj -/TT6 1 Tf -6.0667 0 TD -(Deletes the current line, or if the current line is blank, deletes the previous line.)Tj -/TT17 1 Tf --6.0667 -1.5111 TD -(CONTROL-R)Tj -/TT6 1 Tf -6.0667 0 TD -0.0278 Tw -[(Refreshes the current line. Two in a row refreshes the whole buffer \(when doing)]TJ -0 -1.0667 TD -0 Tw -(multiline input\).)Tj -/TT17 1 Tf --4.2667 -1.4444 TD -(ESCAPE)Tj -/TT6 1 Tf -4.2667 0 TD -0.0133 Tw -(Tries to complete the current word from the spelling list )Tj -/TT8 1 Tf -25.1441 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[(. In the case)]TJ --30.545 -1.0667 TD -0 Tw -(of ambiguity, completes as far as is uniquely determined, or beeps.)Tj -/TT17 1 Tf --5.1567 -1.4444 TD -(UNDO)Tj -/TT6 1 Tf -2.4 0 TD -0.0689 Tw -[( )68.9(key )-596.5(Retrieves characters from the previous non-empty buffer when it is able to; e.g.,)]TJ -2.7567 -1.0667 TD -0.0489 Tw -(when typed at the beginning of the line this command restores the previous line)Tj -0 -1 TD -0.0211 Tw -(you typed; when typed in the middle of a line fills in the remaining text from the)Tj -T* -0.1033 Tw -(old line; when typed following )Tj -/TT8 1 Tf -14.4278 0 TD -0 Tw -(CONTROL-Q)Tj -/TT6 1 Tf -5.4009 0 TD -0.1033 Tw -[( or )]TJ -/TT8 1 Tf -1.6476 0 TD -0 Tw -(CONTROL-W)Tj -/TT6 1 Tf -5.4009 0 TD -0.1033 Tw -[( restores what those)]TJ --26.8771 -1.0667 TD -0 Tw -(commands erased.)Tj -/TT17 1 Tf --6.0667 -1.4444 TD -(CONTROL-X)Tj -/TT6 1 Tf -6.0667 0 TD -0.1444 Tw -(Goes to the end of your input \(or end of expression if there is an excess right)Tj -0 -1.0667 TD -0 Tw -(parenthesis\) and returns if parentheses are balanced.)Tj --9.3333 -1.7778 TD -0.0989 Tw -[(If you are already at the end of the input and the expression is balanced except for lacking one or)]TJ -0 -1.2222 TD -0 Tw -(more right parentheses, )Tj -/TT8 1 Tf -11.2241 0 TD -(CONTROL-X)Tj -/TT6 1 Tf -5.4009 0 TD -( adds the required right parentheses to balance and returns. )Tj --16.625 -2.0667 TD -0.0222 Tw -(During most kinds of input, lines are broken, if possible, so that no word straddles the end of the line.)Tj -0 -1.2222 TD -0.1056 Tw -(The pseudo-carriage return ending the line is still read as a space, however; i.e., the program keeps)Tj -T* -0.0822 Tw -[(track of whether a line ends in a carriage return or is merely broken at some convenient point. You)]TJ -T* -0 Tw -(will not get carriage returns in your strings unless you explicitly type them.)Tj -/TT4 1 Tf -10 0 0 10 54 309.8 Tm -(Using the Mouse)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 307.09 m -510.01 307.09 l -S -BT -/TT6 1 Tf -9 0 0 9 78 293.14 Tm -0.0222 Tw -(Editing with the mouse during )Tj -/TT8 1 Tf -14.0222 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0222 Tw -[( input is slightly different than with other modules. The mouse)]TJ --17.0227 -1.2889 TD -0 Tw -(buttons are interpreted as follows during )Tj -/TT8 1 Tf -18.4253 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( input:)Tj -/TT17 1 Tf --17.1591 -1.7333 TD -(LEFT)Tj -/TT6 1 Tf -3.0667 0 TD -0.0778 Tw -[(Moves the caret to where the cursor is pointing. As you hold down )]TJ -/TT8 1 Tf -31.1641 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -(, the caret)Tj --33.5645 -1.2889 TD -0.1333 Tw -(moves around with the cursor; after you let up, any type-in will be inserted at the)Tj -0 -1.2222 TD -0 Tw -(new position.)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(MIDDLE)Tj -/TT6 1 Tf --5.7333 -1.0667 TD -( )Tj -/TT17 1 Tf -3.3278 0 TD -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -(+)Tj -/TT17 1 Tf -0.606 0 TD -(RIGHT)Tj -/TT6 1 Tf -3.6659 0 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -(, but moves only to word boundaries.)Tj -/TT17 1 Tf --8.2541 -1.7333 TD -(RIGHT)Tj -/TT6 1 Tf -3.6667 0 TD -0.0144 Tw -[(Deletes text from the caret to the cursor, either forward or backward. While you hold)]TJ -0 -1.2889 TD -0 Tw -(down )Tj -/TT8 1 Tf -2.8772 0 TD -(RIGHT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -(, the text to be deleted is inverted; when you let up, the text goes away.)Tj --5.8777 -1.2889 TD -0.01 Tw -(If you let up outside the scope of the text, nothing is deleted \(this is how to cancel this)Tj -0 -1.2222 TD -0 Tw -(operation\). )Tj -0 -1.6667 TD -(If you hold down )Tj -/TT8 1 Tf -7.9822 0 TD -(MOVE)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5007 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5007 0 TD -(SHIFT)Tj -/TT6 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.4428 0 TD -(CTRL)Tj -/TT6 1 Tf -2.4004 0 TD -( while pressing the mouse buttons, you)Tj --20.6282 -1.2889 TD -0.1222 Tw -[(instead get secondary selection, move selection or delete selection. The selection is)]TJ -0 -1.2222 TD -0.0467 Tw -[(made by holding the appropriate key down while pressing the mouse buttons )]TJ -/TT8 1 Tf -35.5954 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf --35.5954 -1.2889 TD -0.3033 Tw -(\(to select a character\) or )Tj -/TT8 1 Tf -12.2535 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.3033 Tw -[( \(to select a word\), and optionally extend the)]TJ --15.8541 -1.2889 TD -0.0078 Tw -(selection either left or right using )Tj -/TT8 1 Tf -14.9373 0 TD -0 Tw -(RIGHT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0078 Tw -[(. While you are doing this, the caret does not)]TJ --17.9378 -1.2889 TD -0.16 Tw -(move, but the selected text is highlighted in a manner indicating what is about to)Tj -0 -1.2222 TD -0.0833 Tw -[(happen. When the selection is complete, release the mouse buttons and then lift up)]TJ -T* -0 Tw -(on )Tj -/TT8 1 Tf -1.3779 0 TD -(MOVE)Tj -/TT6 1 Tf -2.4004 0 TD -(/)Tj -/TT8 1 Tf -0.606 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -(/)Tj -/TT8 1 Tf -0.606 0 TD -(CTRL)Tj -/TT6 1 Tf -2.4004 0 TD -(/)Tj -/TT8 1 Tf -0.606 0 TD -(SHIFT)Tj -/TT6 1 Tf -3.0005 0 TD -( and the appropriate action will occur:)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -84 0 obj -<< -/Length 4306 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-20)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 164.4 570.14 Tm -(COPY)Tj -/TT6 1 Tf --0.85 -1.0667 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(SHIFT)Tj -/TT6 1 Tf -3.6667 0 TD -0.0344 Tw -[(The selected text is inserted as if it were typed. The text is highlighted with a broken)]TJ -0 -1.2889 TD -0 Tw -(underline during selection.)Tj -/TT17 1 Tf --3.0667 -1.6667 TD -(CTRL)Tj -/TT6 1 Tf -3.0667 0 TD -(The selected text is deleted. The text is complemented during selection.)Tj -/TT17 1 Tf --3.0667 -1.6667 TD -(MOVE)Tj -/TT6 1 Tf --3.8556 -1.0667 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(CTRL)Tj -/TT6 1 Tf -2.4004 0 TD -(+)Tj -/TT17 1 Tf -0.606 0 TD -(SHIFT)Tj -/TT6 1 Tf -3.6659 0 TD -(Combines copy and delete. The selected text is moved to the caret.)Tj --7.3333 -2.0667 TD -0.0211 Tw -(You can cancel a selection in progress by pressing )Tj -/TT8 1 Tf -22.4376 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0211 Tw -[( or )]TJ -/TT8 1 Tf -1.4831 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0211 Tw -[( as if to select, and moving outside)]TJ --29.9217 -1.2889 TD -0 Tw -(the range of the text.)Tj -0 -2 TD -0.0389 Tw -(The most recent text deleted by mouse command can be inserted at the caret by typing the )Tj -/TT8 1 Tf -40.7959 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0389 Tw -[( key.)]TJ --43.1963 -1.2889 TD -0 Tw -(This is the same key that retrieves the previous buffer when issued at the end of a line.)Tj -/TT4 1 Tf -10 0 0 10 102 427.2 Tm -(Editing Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 424.49 m -558.01 424.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 410.54 Tm -0.0411 Tw -[(A number of characters have special effects while typing to the Exec. Some of them merely move the)]TJ -0 -1.2222 TD -0.0722 Tw -[(caret inside the input stream. While caret positioning can often be done more conveniently with the)]TJ -T* -0.0244 Tw -(mouse, some of the commands, such as the case changing commands, can be useful for modifying the)Tj -T* -0 Tw -(input.)Tj -0 -2 TD -0.07 Tw -(In the descriptions below, current word means the word the cursor is under, or if under a space, the)Tj -0 -1.2222 TD -0.11 Tw -[(previous word. Currently, parentheses are treated as spaces, which is usually what you want, but)]TJ -T* -0 Tw -(can occasionally cause confusion in the word deletion commands. )Tj -0 -2 TD -0.0689 Tw -[(Most commands can be preceded by a numeric argument. A numeric argument can be a number or)]TJ -0 -1.2222 TD -0.0833 Tw -[(an escape. You enter the numeric argument by holding down the meta key and entering a number.)]TJ -T* -0.1278 Tw -[(You only need to hold down the meta key for the firs digit of the argument. Entering escape as a)]TJ -T* -0 Tw -(numeric argument means infinity. )Tj -0 -2 TD -0.2967 Tw -(Some commands also accept negative arguments, but some only look at the magnitude of the)Tj -0 -1.2222 TD -0.1367 Tw -[(argument. Most of these commands are confined to work within one line of text unless otherwise)]TJ -T* -0 Tw -(noted. )Tj -/TT4 1 Tf -10 0 0 10 102 224.2 Tm -(Cursor Movement Commands)Tj -ET -102.01 221.49 m -558.01 221.49 l -S -BT -/TT17 1 Tf -9 0 0 9 128.4 207.54 Tm -(Meta-BACKSPACE)Tj -/TT6 1 Tf -9.1778 0 TD -(Backs up one \(or n\) characters.)Tj -/TT17 1 Tf --6.7778 -1.7333 TD -(Meta-SPACE)Tj -/TT6 1 Tf -6.6667 0 TD -(Moves forward one \(or n\) characters.)Tj -/TT17 1 Tf --4.2667 -1.7333 TD -(Meta-^)Tj -/TT6 1 Tf -4.2667 0 TD -(Moves up one \(or n\) lines.)Tj -/TT17 1 Tf --8.4667 -1.7333 TD -(Meta-LINEFEED)Tj -/TT6 1 Tf -8.5778 0 TD -(Moves down one \(or n\) lines.)Tj -/TT17 1 Tf --4.3778 -1.7333 TD -(Meta-\()Tj -/TT6 1 Tf -4.2667 0 TD -(Moves back one \(or n\) words.)Tj -/TT17 1 Tf --4.2667 -1.7333 TD -(Meta-\))Tj -/TT6 1 Tf -4.2667 0 TD -(Moves ahead one \(or n\) words.)Tj -/TT17 1 Tf --5.4667 -1.7333 TD -(Meta-tab)Tj -/TT6 1 Tf -5.4667 0 TD -0.2922 Tw -(Moves to end of line; with an argument moves to nth end of line; )Tj -/TT17 1 Tf -32.9922 0 TD -0 Tw -(Meta-)Tj --32.9922 -1.2889 TD -(Control-tab)Tj -/TT6 1 Tf -6.6011 0 TD -( goes to end of buffer.)Tj -/TT17 1 Tf --15.6677 -1.7333 TD -(Meta-Control-L)Tj -/TT6 1 Tf -9.1778 0 TD -(Moves to start of line \(or nth previous, or start of buffer\).)Tj -/TT17 1 Tf --4.3778 -1.7333 TD -(Meta-{)Tj -/TT6 1 Tf -4.2667 0 TD -(Goes to start of buffer)Tj -/TT17 1 Tf -9.6304 0 TD -(.)Tj --13.897 -1.7333 TD -(Meta-})Tj -/TT6 1 Tf -4.2667 0 TD -(Goes to end of buffer.)Tj -ET -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -87 0 obj -<< -/Length 4803 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-21)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT17 1 Tf -9 0 0 9 123.6 569.54 Tm -(Meta-[)Tj -/TT6 1 Tf -4.2667 0 TD -0.2922 Tw -(Moves to beginning of the current list, where cursor is currently under an)Tj -0 -1.2889 TD -0.0389 Tw -[(element of that list or its closing paren. \(See also the auto-parenthesis-matching)]TJ -0 -1.2222 TD -0 Tw -(feature below under Assorted Flags.\))Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-])Tj -/TT6 1 Tf -4.2667 0 TD -(Moves to end of current list.)Tj -/TT17 1 Tf --4.7822 -1.7333 TD -(Meta-S)Tj -/TT6 1 Tf -3.6006 0 TD -[(x)-665.5(Skips ahead to next \(or nth\) occurrence of character x, or rings the bell.)]TJ -/TT17 1 Tf --3.6006 -1.7333 TD -(Meta-B)Tj -/TT6 1 Tf -3.6006 0 TD -[(x)-665.5(Backward search.)]TJ -/TT4 1 Tf -10 0 0 10 54 477.8 Tm -(Buffer Modification Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 475.09 m -510.01 475.09 l -S -BT -/TT17 1 Tf -9 0 0 9 118.96 461.14 Tm -(Meta-Z)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[(x)-665.5(Zaps characters from cursor to next \(or nth\) occurrence of x. There is no unzap)]TJ -1.1816 -1.2889 TD -0 Tw -(command.)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-A)Tj -0 -1.0667 TD -(Meta-R)Tj -/TT6 1 Tf -4.2667 0 TD -(Repeats the last S, B, or Z command, regardless of any intervening input.)Tj -/TT17 1 Tf --4.2667 -1.7333 TD -(Meta-K)Tj -/TT6 1 Tf -4.2667 0 TD -(Kills the character under the cursor, or n chars starting at the cursor.)Tj -/TT17 1 Tf --4.8667 -1.7333 TD -(Meta-CR)Tj -/TT6 1 Tf -4.8667 0 TD -0.2122 Tw -(When the buffer is empty is the same as undo i.e. restores buffers previous)Tj -0 -1.2889 TD -0.0956 Tw -[(contents. Otherwise is just like a \(except that it also terminates an insert\).)]TJ -0 -1.2222 TD -0 Tw -(Thus, )Tj -/TT17 1 Tf -3.0306 0 TD -(Meta-CR)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.5589 0 TD -(Meta-CR)Tj -/TT6 1 Tf -4.2007 0 TD -0.3089 Tw -[( will repeat the previous input \(as will undo)]TJ --11.9908 -1.2889 TD -0 Tw -(without the meta key\).)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-O)Tj -/TT6 1 Tf -4.2667 0 TD -0.0011 Tw -(Does Open line, inserting a crlf after the cursor, i.e., it breaks the line but leaves)Tj -0 -1.2889 TD -0 Tw -(the cursor where it is.)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-T)Tj -/TT6 1 Tf -4.2667 0 TD -0.03 Tw -[(Transposes the characters before and after the cursor. When typed at the end of)]TJ -0 -1.2889 TD -0.0189 Tw -[(a line, transposes the previous two characters. Refuses to handle odd cases, such)]TJ -0 -1.2222 TD -0 Tw -(as tabs.)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-G)Tj -/TT6 1 Tf -4.2667 0 TD -0.04 Tw -(Grabs the contents of the previous line from the cursor position onward. )Tj -/TT17 1 Tf -32.9897 0 TD -0 Tw -(Meta-)Tj -/TT6 1 Tf --32.9897 -1.2889 TD -(n)Tj -/TT17 1 Tf -0.582 0 TD -( Meta-G)Tj -/TT6 1 Tf -4.2007 0 TD -( grabs the nth previous line.)Tj -/TT17 1 Tf --9.0494 -1.7333 TD -(Meta-L)Tj -/TT6 1 Tf -4.2667 0 TD -0.2722 Tw -(Puts the current word, or n words on line, in lower case. )Tj -/TT17 1 Tf -28.8612 0 TD -0 Tw -(Meta-)Tj -/TT6 1 Tf -3.0005 0 TD -()Tj -/TT17 1 Tf --31.8616 -1.2889 TD -(Meta-L)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( puts the rest of the linein lower case; or if given at the end of line puts)]TJ --3.6006 -1.2889 TD -0 Tw -(the entire line in lower case.)Tj -/TT17 1 Tf --4.2667 -1.6667 TD -(Meta-U)Tj -/TT6 1 Tf -4.2667 0 TD -(Analogous to )Tj -/TT17 1 Tf -6.1978 0 TD -(Meta-L)Tj -/TT6 1 Tf -3.6006 0 TD -(, for putting word, line, or portion of line in upper case.)Tj -/TT17 1 Tf --14.065 -1.7333 TD -(Meta-C)Tj -/TT6 1 Tf -4.2667 0 TD -0.0144 Tw -[(Capitalizes. If you give it an argument, only the first word is capitalized; the rest)]TJ -0 -1.2889 TD -0 Tw -(are just lowercased.)Tj -/TT17 1 Tf --9.0667 -1.6667 TD -(Meta-Control-Q)Tj -/TT6 1 Tf -9.1778 0 TD -0.19 Tw -(Deletes the current line. )Tj -/TT17 1 Tf -11.9563 0 TD -0 Tw -(Meta-)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -4.5787 0 TD -(Meta-Control-Q)Tj -/TT6 1 Tf -8.4014 0 TD -0.19 Tw -[( deletes from the)]TJ --28.048 -1.2889 TD -0.3178 Tw -[(current cursor position to the end of the buffer. No other arguments are)]TJ -0 -1.2222 TD -0 Tw -(handled.)Tj -/TT17 1 Tf --9.0667 -1.6667 TD -(Meta-Control-W)Tj -/TT6 1 Tf -9.1778 0 TD -(Deletes the current word, or the previous word if sitting on a space.)Tj -/TT4 1 Tf -10 0 0 10 54 112.2 Tm -(Miscellaneous Commands)Tj -ET -54.01 109.49 m -510.01 109.49 l -S -BT -/TT17 1 Tf -9 0 0 9 123.6 95.54 Tm -(Meta-P)Tj -/TT6 1 Tf -4.2667 0 TD -0.1 Tw -[(Prettyprints buffer. Clears the buffer and reprints it using prettyprint. If there)]TJ -0 -1.2889 TD -0.0433 Tw -(are not enough right parentheses, it will supply more; if there are too many, any)Tj -0 -1.2222 TD -0.2644 Tw -[(excess remains unprettyprinted at the end of the buffer. May refuse to do)]TJ -T* -0 Tw -(anything if there is an unclosed string or other error trying to read the buffer.)Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT11 15 0 R -/TT17 35 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -91 0 obj -<< -/Length 6141 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-22)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 171.6 569.54 Tm -(Meta-N)Tj -/TT6 1 Tf -4.2667 0 TD -0.0111 Tw -[(Refreshes line. Same as )]TJ -/TT19 1 Tf -10.7719 0 TD -0 Tw -(Control-R)Tj -/TT6 1 Tf -4.5557 0 TD -0.0111 Tw -(. )Tj -/TT17 1 Tf -0.7722 0 TD -0 Tw -(Meta-)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -4.3998 0 TD -(Meta-N)Tj -/TT6 1 Tf -3.6006 0 TD -0.0111 Tw -[( refreshes the whole)]TJ --27.1006 -1.2889 TD -0 Tw -(buffer; )Tj -/TT17 1 Tf -3.2641 0 TD -(Meta-)Tj -/TT6 1 Tf -3.0005 0 TD -(n )Tj -/TT17 1 Tf -0.8998 0 TD -(Meta-N)Tj -/TT6 1 Tf -3.6006 0 TD -0.0678 Tw -[( refreshes n lines. Cursor movement in )]TJ -/TT8 1 Tf -18.1184 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0678 Tw -[( depends)]TJ --31.8838 -1.2889 TD -0 Tw -(on )Tj -/TT8 1 Tf -1.3868 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -[( being the only source of output to the window; in some circumstances,)]TJ --4.3873 -1.2889 TD -0 Tw -(you may need to refresh the line for best results.)Tj -/TT17 1 Tf --9.0667 -1.6667 TD -(Meta-Control-Y)Tj -/TT6 1 Tf -9.1778 0 TD -(Gets an Interlisp Exec)Tj -/TT17 1 Tf -9.6001 0 TD -(. Meta-)Tj -/TT6 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -4.3887 0 TD -(Meta-Control-Y)Tj -/TT6 1 Tf -8.5438 0 TD -0.6278 Tw -(Gets an Interlisp)Tj --27.4444 -1.2889 TD -0.0078 Tw -[(Exec, but first unreads the contents of the buffer from the cursor onward. Thus if)]TJ -0 -1.2222 TD -0.3667 Tw -(you typed at )Tj -/TT8 1 Tf -6.9545 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.3667 Tw -[( something destined for Interlisp, you can do )]TJ -/TT17 1 Tf -23.0427 0 TD -0 Tw -(Meta-)Tj --32.9977 -1.2889 TD -(Control-)Tj -/TT19 1 Tf -4.8008 0 TD -(L)Tj -/TT6 1 Tf -0.6108 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(Meta-)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -4.3887 0 TD -(Meta-Control-Y)Tj -/TT6 1 Tf -8.4014 0 TD -( and give it to Lisp.)Tj -/TT17 1 Tf --25.7188 -1.7333 TD -(Meta-_)Tj -/TT6 1 Tf -4.2667 0 TD -0.1778 Tw -(Adds the current word to the spelling list )Tj -/TT8 1 Tf -19.9491 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1778 Tw -[(. With zero argument,)]TJ --25.35 -1.2889 TD -0 Tw -(removes word. See )Tj -/TT8 1 Tf -8.8892 0 TD -(TTYINCOMPLETEFLG)Tj -/TT6 1 Tf -9.6016 0 TD -( .)Tj -/TT4 1 Tf -10 0 0 10 102 435.4 Tm -(Useful Macros)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 432.69 m -558.01 432.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 418.74 Tm -0.0689 Tw -(If the event is considered short enough, the Exec command )Tj -/TT8 1 Tf -27.0097 0 TD -0 Tw -(FIX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0689 Tw -[( will load the buffer with the events)]TJ --28.81 -1.2889 TD -0.09 Tw -[(input, rather than calling the structure editor. If you really wanted the Lisp editor for your fix, you)]TJ -0 -1.2222 TD -0 Tw -(can say )Tj -/TT8 1 Tf -3.5059 0 TD -(FIX EVENT - |TTY:|.)Tj -/TT4 1 Tf -10 0 0 10 102 373.2 Tm -(?= Handler)Tj -ET -102.01 370.49 m -558.01 370.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 356.54 Tm -0.1689 Tw -(Typing the characters )Tj -/TT8 1 Tf -10.3319 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1689 Tw -[( displays the arguments to the function currently in progress. Since)]TJ -/TT8 1 Tf --11.5321 -1.2889 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0967 Tw -[( wants you to be able to continue editing the buffer after a )]TJ -/TT8 1 Tf -27.0833 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0967 Tw -(, it prints the arguments below)Tj --31.284 -1.2889 TD -0 Tw -(your type-in and then puts the cursor back where it was when )Tj -/TT8 1 Tf -27.7529 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -( was typed.)Tj -/TT4 1 Tf -10 0 0 10 102 310.4 Tm -(Assorted Flags)Tj -ET -102.01 307.69 m -558.01 307.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 293.74 Tm -0.0256 Tw -(These flags control aspects of )Tj -/TT8 1 Tf -13.265 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0256 Tw -[(s behavior. Some have already been mentioned. All are initially)]TJ --16.2655 -1.2889 TD -0 Tw -(set to )Tj -/TT8 1 Tf -2.6011 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --0.5345 -2.2156 TD -(?ACTIVATEFLG)Tj -/TT11 1 Tf -10 0 0 10 214.8 262.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 262.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2767 Tw -(If true, enables the feature whereby )Tj -/TT8 1 Tf -17.5721 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.2767 Tw -[( lists alternative completions from the current)]TJ --18.1722 -1.2889 TD -0 Tw -(spelling list.)Tj -/TT17 1 Tf --2.6667 -2.1489 TD -(SHOWPARENFLG)Tj -/TT11 1 Tf -10 0 0 10 214.8105 214.66 Tm --0.0009 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 214.66 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.0333 Tw -(If true, then whenever you are typing Lisp input and type a right parenthesis, )Tj -/TT8 1 Tf -35.0145 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0333 Tw -[( will)]TJ --38.015 -1.2889 TD -0.0133 Tw -[(briefly move the cursor to the matching parenthesis, assuming it is still on the screen. The)]TJ -0 -1.2222 TD -0.0467 Tw -(cursor stays there for about 1 second, or until you type another character \(i.e., if you type)Tj -T* -0 Tw -(fast you will never notice it\).)Tj -/TT17 1 Tf --2.6667 -2 TD -(USERWORDS)Tj -/TT6 1 Tf -38.2678 0 TD -([Variable])Tj -/TT8 1 Tf --35.6011 -1.8444 TD -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.2511 Tw -[( contains words you mentioned recently: functions you have defined or)]TJ --5.4009 -1.2889 TD -0.0011 Tw -(edited, variables you have set or evaluated at the executive level, etc. This happens to be a)Tj -0 -1.2222 TD -0.2344 Tw -(very convenient list for context-free escape completion; if you have recently edited a)Tj -T* -0.0944 Tw -(function, chances are good you may want to edit it again \(typing )Tj -/TT8 1 Tf -29.9351 0 TD -0 Tw -(ED\(xx$\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0944 Tw -(\) or type a)Tj --34.7359 -1.2889 TD -0.01 Tw -[(call to it. If there is no completion for the current word from )]TJ -/TT8 1 Tf -27.0956 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.01 Tw -(, or there is more)Tj --32.4965 -1.2889 TD -0.1589 Tw -(than one possible completion, )Tj -/TT8 1 Tf -14.0804 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1589 Tw -[( beeps. If typed when not inside a word, Escape)]TJ --17.0809 -1.2889 TD -0.0933 Tw -(completes to the value of )Tj -/TT8 1 Tf -11.7655 0 TD -0 Tw -(LASTWORD)Tj -/TT6 1 Tf -4.8008 0 TD -0.0933 Tw -(, i.e., the last thing you typed that the Exec noticed,)Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R -/TT17 35 0 R -/TT19 42 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -94 0 obj -<< -/Length 5820 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-23)Tj -/TT11 1 Tf -10 0 0 10 396.75 612 Tm -(MEDLEY EXECUTIVES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1622 Tw -(except that Escape at the beginning of the line is left alone \(it is an Old Interlisp Exec)Tj -0 -1.2222 TD -0 Tw -(command\).)Tj -0 -2 TD -0.0344 Tw -(If you really wanted to enter an escape, you can, of course, just quote it with a )Tj -/TT8 1 Tf -35.1988 0 TD -0 Tw -(CONTROL-)Tj --35.1988 -1.2889 TD -(V)Tj -/TT6 1 Tf -0.6001 0 TD -(, like you can other control characters.)Tj --0.6001 -2.0667 TD -0.0133 Tw -(You may explicitly add words to )Tj -/TT8 1 Tf -14.8246 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[( yourself that would not get there otherwise.)]TJ --20.2255 -1.2889 TD -0.1167 Tw -(To make this convenient online the edit command [)Tj -/TT9 1 Tf -23.6555 0 TD -0 Tw -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -0.1167 Tw -(] means add the current atom to)Tj -/TT8 1 Tf --24.6423 -1.2222 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0533 Tw -[( \(you might think of the command as pointing out this atom\). For example,)]TJ --5.4009 -1.2889 TD -0.2256 Tw -(you might be entering a function definition and want to point to one or more of its)Tj -0 -1.2222 TD -0.0956 Tw -[(arguments or prog variables. Giving an argument of zero to this command will instead)]TJ -T* -0 Tw -(remove the indicated atom from )Tj -/TT8 1 Tf -14.5303 0 TD -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --19.9312 -2.0667 TD -0.0444 Tw -(Note that this feature loses some of its value if the spelling list is too long, if there are too)Tj -0 -1.2222 TD -0.0633 Tw -(many alternative completions for you to get by with typing a few characters followed by)Tj -T* -0.1111 Tw -[(escape. Lisps maintenance of the spelling list )]TJ -/TT8 1 Tf -21.4553 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1111 Tw -[( keeps the temporary section)]TJ --26.8562 -1.2889 TD -0.5222 Tw -(\(which is where everything goes initially unless you say otherwise\) limited to)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(\\#USERWORDS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0344 Tw -[( atoms, initially 100. Words fall off the end if they havent been used \(they)]TJ --6.6011 -1.2889 TD -0 Tw -(are used if )Tj -/TT8 1 Tf -4.8647 0 TD -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -( corrects to one, or you use to complete one\). )Tj -/TT4 1 Tf -10 0 0 10 54 356.4 Tm -( Old Interlisp T compatibility)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 353.69 m -510.01 353.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 339.74 Tm -(The Old Interlisp exec contains a few extra Exec commands not listed above. They are explained here.)Tj -0 -2 TD -(In addition to the normal Event addresses you can also specify the following Event addresses:)Tj -/TT8 1 Tf -7.4 -2 TD -(=)Tj -/TT6 1 Tf -1.2667 0 TD -0.0122 Tw -(Specifies that the next object is to be searched for in the values of events, instead of)Tj -0 -1.2889 TD -0 Tw -(the inputs)Tj -/TT8 1 Tf --8.4667 -2 TD -(SUCHTHAT )Tj -/TT13 1 Tf -5.4009 0 TD -(PRED)Tj -/TT6 1 Tf -3.0658 0 TD -0.1456 Tw -(Specifies an event for which the function )Tj -/TT13 1 Tf -19.2498 0 TD -0 Tw -(PRED)Tj -/TT6 1 Tf -2.4004 0 TD -0.1456 Tw -[( returns true. )]TJ -/TT13 1 Tf -6.8396 0 TD -0 Tw -(PRED)Tj -/TT6 1 Tf -2.4004 0 TD -0.1456 Tw -[( should be a)]TJ --30.8902 -1.2889 TD -0 Tw -(function of two arguments, the input portion of the event, and the event itself.)Tj -/TT13 1 Tf --2.4667 -2 TD -(PAT)Tj -/TT6 1 Tf -2.4667 0 TD -0.1833 Tw -(Any other event address command specifies an event whose input contains an)Tj -0 -1.2889 TD -0.2567 Tw -(expression that matches )Tj -/TT13 1 Tf -11.6289 0 TD -0 Tw -(PAT)Tj -/TT6 1 Tf -1.8003 0 TD -0.2567 Tw -[(. When multiple Execs are active, all events are)]TJ --13.4292 -1.2889 TD -0.2289 Tw -[(searched, no matter which Exec they belong to. The pattern can be a simple)]TJ -0 -1.2222 TD -0 Tw -(symbol, or a more complex search pattern.)Tj -/TT4 1 Tf -10 0 0 10 54 186.44 Tm -( Significant Changes in MEDLEY Rele)Tj -ET -232.93 195.78 181.85 -9.34 re -f -BT -10 0 0 10 414.79 186.44 Tm -(ase)Tj -ET -54.01 183.29 m -510.01 183.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 169.34 Tm -(There are two major differences between the Medley release and older versions of the system:)Tj -0 -2 TD -()Tj -/TT8 1 Tf -1.3333 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1233 Tw -[( does not interact with the File Manager. In older releases \(Koto, etc.\), when you typed in)]TJ -/TT8 1 Tf --2.4004 -1.2889 TD -0.5678 Tw -(\(SETQ FOO)Tj -/TT6 1 Tf -5.9687 0 TD -0 Tw -( )Tj -/TT13 1 Tf -0.4867 0 TD -(some-new-value)Tj -/TT8 1 Tf -8.4014 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.2367 Tw -[( the executive responded with)]TJ -/TT8 1 Tf -14.2767 0 TD -0.5678 Tw -[( \(FOO reset\))]TJ -/TT6 1 Tf -8.3367 0 TD -0.2367 Tw -[( and the file)]TJ --38.0703 -1.2889 TD -0.0244 Tw -(manager was told that )Tj -/TT8 1 Tf -10.2589 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -[(s value had changed. Files containing )]TJ -/TT8 1 Tf -17.4987 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -[( were marked for cleanup, if)]TJ --31.3582 -1.2889 TD -0 Tw -(none existed you were prompted for one when you typed )Tj -/TT8 1 Tf -25.7852 0 TD -(\(FILES?\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --30.5859 -2.0667 TD -0.0556 Tw -[(This is still the case in the Old Interlisp executive but not in any of the others. If you are setting a)]TJ -0 -1.2222 TD -0.1755 Tw -(variable that is significant to a program and you want to save it on a file, you should use the)Tj -T* -0.0667 Tw -(Common Lisp macro )Tj -/TT8 1 Tf -9.7928 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT6 1 Tf -9.0015 0 TD -0.0667 Tw -[( instead of )]TJ -/TT8 1 Tf -5.0418 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0667 Tw -[(. This will give the symbol a definition)]TJ --26.2364 -1.2889 TD -0.1978 Tw -(of type )Tj -/TT8 1 Tf -3.7369 0 TD -0 Tw -(VARIABLES)Tj -/TT6 1 Tf -5.4009 0 TD -0.1978 Tw -[( \(instead of )]TJ -/TT8 1 Tf -5.7681 0 TD -0 Tw -(VARS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1978 Tw -[(\), and it will be noticed by the File Manager. Subseqent)]TJ -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT9 8 0 R -/TT11 15 0 R -/TT13 33 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -97 0 obj -<< -/Length 2510 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-24)Tj -/TT11 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 138 569.54 Tm -0.0589 Tw -(changes to the variable must be done by another call to )Tj -/TT8 1 Tf -25.2015 0 TD -0 Tw -(CL:DEFPARAMETER)Tj -/TT6 1 Tf -9.0015 0 TD -0.0589 Tw -[( or by editing it using)]TJ -/TT8 1 Tf --34.203 -1.2889 TD -0 Tw -(ED)Tj -/TT6 1 Tf -1.2002 0 TD -( \(not )Tj -/TT8 1 Tf -2.2871 0 TD -(DV)Tj -/TT6 1 Tf -1.2002 0 TD -(\).)Tj --6.0208 -2.0667 TD -0.2989 Tw -[()-727.4(The following functions and variables are only available in the Old Interlisp Exec: )]TJ -/TT8 1 Tf -42.0769 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj -/TT8 1 Tf --43.744 -1.2889 TD -(USEREXEC)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -1.91 0 TD -(LISPXEVAL)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -1.91 0 TD -(READBUF)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -1.91 0 TD -(\(READLINE\))Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -1.91 0 TD -(\(LISPXREAD\))Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT8 1 Tf -1.91 0 TD -(\(LISPXREADP\))Tj -/TT6 1 Tf -7.2012 0 TD -(,)Tj -/TT8 1 Tf --43.7556 -1.2889 TD -(\(LISPXUNREAD\))Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT8 1 Tf -1.0378 0 TD -(\(PROMPTCHAR\))Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -1.0378 0 TD -(\(HISTORYSAVE\))Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT8 1 Tf -1.0378 0 TD -(\(LISPXSTOREVALUE\))Tj -/TT6 1 Tf -10.2017 0 TD -(, )Tj -/TT8 1 Tf -1.0378 0 TD -(\(LISPXFIND\))Tj -/TT6 1 Tf -6.6011 0 TD -(,)Tj -/TT8 1 Tf --43.7576 -1.2889 TD -(\(HISTORYFIND\))Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT8 1 Tf -1.31 0 TD -(\(HISROTYMATCH\))Tj -/TT6 1 Tf -8.4014 0 TD -(, )Tj -/TT8 1 Tf -1.31 0 TD -(\(ENTRY\))Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -1.31 0 TD -(\(UNDOSAVE\))Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -1.31 0 TD -(#UNDOSAVES)Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -1.31 0 TD -(\(NEW/FN\))Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj -/TT8 1 Tf --43.7561 -1.2889 TD -(\(LISPX/\))Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(UNDOLISPX\))Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(UNDOLISPX1\))Tj -/TT6 1 Tf -7.2012 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(\(PRINTHISTORY\))Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --30.4473 -2.0667 TD -0.0944 Tw -(The function )Tj -/TT8 1 Tf -6.0697 0 TD -0 Tw -(USEREXEC)Tj -/TT6 1 Tf -4.8008 0 TD -0.0944 Tw -[( invokes an old-style executive, but uses the package and readtable of its)]TJ --10.8705 -1.2889 TD -0 Tw -(caller. Callers of )Tj -/TT8 1 Tf -7.6177 0 TD -(LISPXEVAL)Tj -/TT6 1 Tf -5.4009 0 TD -( should use )Tj -/TT8 1 Tf -5.3125 0 TD -(EXEC-EVAL)Tj -/TT6 1 Tf -5.4009 0 TD -( instead.)Tj -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -100 0 obj -<< -/Length 66 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(13-25)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -9 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 277 -/Height 122 -/BitsPerComponent 1 -/ImageMask true -/Length 4271 ->> -stream -???????????????????????????????8/};~vߺ翞ۻ><w?????8/f;̓393$ݿw>80????3?8/pa;$̙2g> -stream -????????????????????????????????????????????????????????????8/`?;ﻯ??;;?<}q???????????????<?;???;?8?;?;?8????????????8/{ߟ?;ﻻ99??>?>?>?:?<?>????????????8/q x???;ﻮdr99??> -stream -??????????????????????????????????????????????????????????????????????????????????????8/w?;ﻷ??>?=w?=w?=?=?=w?>w?>??????y???3?'|~|>?8'|~>?<' >~>?<dɞ~~>?8Іfdɜ<|~|rD99yO?O??>?=?=?=?=?=?>?>????????????8/q x?8?;ﻮdr39??>?=w?=w?=?=?=w?>w?>??????????y????y?8/`߃p s?ssy?> -stream -??????????????????????????????????8/q?;ﻮ??>?=?=?=?=?=?>?>???????????8/w ?<9?? ?s?<?>?=w?=w?=?=?=w?>w?>??????y???3?'|~|>?8'|~>?<' >~>?<dɞ~~>?8Іfdɜ<|~|rD99yO?O??>?=?=?=?=?=?>?>????????????8/q x?8?;ﻮdr39??>?=w?=w?=?=?=w?>w?>??????????y????y?8/`߃p s?ssy?> -stream -????????????????????8/;y?ɞy?ɞy?ɞy;ɞy=<99????~?gw۹><}> -stream -?????8/ǽ;y?ɞy?ɞy?ɞy;ɞy=<99????~?gw۹><}> -stream -??????8/;yg3`A9H?????8/ārr ?6y?;̟rrd󔜜??"y?> -stream -???????????{{;w<}o?????>>=w=w===w>w>?????{{3;3<}oÇ??????????????????? @#H!DH B  DH# B DB(! -endstream -endobj -26 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 203 -/Height 110 -/BitsPerComponent 1 -/ImageMask true -/Length 2861 ->> -stream -??????{׾;=<}??????==>>???8???????89<>???9{?;<}|x?x??5????==>>???8????????y;?y?|?y>{?y;>y<}|x?x3??59????????????????? @#H!DH B  DH# B DB(! -endstream -endobj -49 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 203 -/Height 110 -/BitsPerComponent 1 -/ImageMask true -/Length 2861 ->> -stream -???????????????????{^;<}??????8=?>ݻ~>o~>ޯ~>:ݻvϺ<ݻv>Ǐ??????&~?|>~>{מ>~;&&~<}p$?|??????8=<>ۿ>߿>߿ۿ>8:v現8????????|>>{׾>;=&<}p???????????????????? @#H!DH B  DH# B DB(! -endstream -endobj -56 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 408 -/Height 178 -/BitsPerComponent 1 -/ImageMask true -/Length 9079 ->> -stream -????????{;<}??????88;;;;;;;????????~y0 ?~yy?|<y?}y?yp?99?39s?y0????y?y02d x3< yd <3dsyNI9L~OdN?{>y@00``~9@ `???s8B??s'?g'8>s8??Gp'`}xx??????Ld?̟3$&yɞ?̟$&yϞ?Aß$ CL?̃$3&pGL>?̟$&fL?̟3$&O?ϞNɜ?d00`?N 9???????`Osɲ0`s?'Ϝs ''?'s g'>'ɜsL~ g': ɜ̞pLB 0rg'ës8B'ǟs8'ǟ:`@xx='ë?>?????0g3q96@db?g' a9"OdL?g' a"OdN?' LI"O N?&sLIAdL?&s9OdO?&s9OdN?y`1y9@ `???????{׾'ϟ$L$??; ! $3?<} g'Ϝ!8d?3??g'Ϝ#8d3>y?? `@#xy??????????????????? @#H!DH B  DH# B DB(! -endstream -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -102 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -103 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -104 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -105 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -106 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBGHIG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 107 0 R ->> -endobj -107 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"(P81 r(ݷّffɆVI ASZRM)M))4|-*PRi nxj3{ߛ{o oN~?p>{ - -Lx+ -7s'&F`=c`,#Chw/C>bq(^i筭OlA}(*Bj v(o S%x|&#y/,Bԇሙ\.D.#aW:Pi2p8~鈒G7q s#TI|EB.n*:U栾#~+QGcvkp֒-Wz4|2[ R<^nj=c^Cro_02n"̀f HejXkm\k6l|z_q/srBD7T-Q TҨay E t%`D5RY F h FWPU" tވ+Az3ÍFC/]V3_Xyte:Z`MA8od(&-fq2FEꉣ Pw?i&j^DyF9dH5MŀXfͧI;d4@*ehУx)nhŞ?%vkT7L]1=4gζ47+ jjDOm|"𺏹 v^NCM> }3~lӪӊx5Y,R7y%ZѿeT^ek7AQۅ &;.6A@13wZӎJ47nBk,Yf˗c4Kď{m˒E8.-FI >%gP{',h`y>饴p6Ɓwf#ڣ3dby]4P?ќO'J;::/5+oې3/^:s]rΑpT>±9[5}>Tw.';YeC0wmm#=[l`88/%>;5gVqh(D>mK0 JMP]jtr>Jmi%&]@dxϝm":@BB{_݇tUQwᒬπ*Ŋ^Pm(]dz61HesG -P'Yۻ[,hp/IS F^ -j!Q/sHddH{YMj`t2*ASGiHHqrE{K0(&NѮ#AV3T|Agl 1G[/s pMrg*d|#gW %k[:o02QϨu6qTCh;~,nVáFŅٟV8nCG}~S@H}@-!PI`:c|QH}t.>X;}`Wv(Y*t *ɮlU $Cl=3:R@FqEY%P9{F;9~;ZnY 茹M;OʹKWlʷ:Z`]U?cj-d弿_ʉGu/ϔœ\.UvF 6yv"`[=Kܒ&+r32:BnICXRy:lJje+ִ>vQyl.t$d,V=KUQ-\胠R([VK8<'X:UD:Ye:;6I > 7QI2M>:܄!R -7yn%,\ru -Ȉt晞!ƺpP0kp#' |Ib'bAF`űߘ1تhc_2.!Cϣl; -1 .Bf6&}H8'8n7ӌoQ7p<x㐏Ĺ> )Gǘ`j0ɚEGQxއn p.7  qH>!B%~RN69HL119Mzr\%Z:i.u1!0UiMѧh%]rt%} t }ѷ{~B/?h ffY{&l"ʊ dOl){fU؛v}N,.+lS.'| -1/R<|3}]'~;x'?̏~(;/'̦ SV'ቛJwPg&A,TIS (3 1*qf( -+5I3##uXi[CЭj!KeV=R ڌ}1UH֔ELf`ez(~BT +FlCWh %Ml b#V&QfO>a*6.= ?cXPa~1NJ6fQɰg6|Q_ p˺fl[rR̸)v%9$F{nex_AKݛm1jwZõ2jɥ'-[Fgl@E-poô[[rZH"p 2`KEȭU'nHZK;~jkɖ@RKT>4{Jz"hkFK]] q~[S|0D/bI| A#akF(Z|6q.眤<m:(5×Be+HI[uNPv#'NrdnV(q Nti4[`HAus{lP~i[Eݽ};na5G't%W߶߶lۺ[_ޱ,y0l `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|S&`iz-B =>6c$\H ?|RZD[sMrAp2 hlvnͲxNAٖcQ7xgD2m>(pd%, --&T R Y*YwmKwZ@UZjuٜ_5 ye3V,go^X\Xo;8S>*!gEiPSzl L pkAEz^  ,ώtnW>ΡM ]QiYc*]Z*덌n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~mtlt \NEb;aVd1;tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWye"Ȋo!5f]Jɱ)N-Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:/I"[,Wvˤ=Y_@d|ZXY@Vo47 PK9tev|i+ Y4]c4; Y2`YX gLyB%ASJ؊hݏ?XZ,ZҖ%8 ̂jԍRK¼2ټט?%UJ9C':g..?/ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStWRKAİX{== x^.ww\9 ߚq?W?NhN-:zTDO!WhG,h)cxz}GGVWAhSdcE{%`нdA"mψԒn^1vt,y}4|ˊ^ox6g@EV4 @3h UFF;b|thƶGcߞreQc6*W_09K_0(,f}"ei:XEHQ e6|'Y_QSO==Znlgr J}Jn1 pu3dePjtL]gB6E= -UеA~%˂R*XZ:j12O-}XX5C-^:p>'[NV-K1h2=\yhJ--'h4Oj>Ma`/=0x xNï7pf,yѣգ&e5} qt@DE3-.[`;.kZ܌Oo.m]܋u&Np -_")"+*""%z@ZH;yt2Bd"oߑ$yK'%$qpk\3%I. q܏q m=./ګ( -{}o]HY-3vYlTDBY@!jFS;#Cd:ڴ:5Fww(ҙF;S'&mEƈdZ;cvl؉2{Y5F1yo9~_ -%rr(K7>[}wߑWUY < |ZGZx\Hcv1~`ۄݰޒp-剏 -r q$[(_\۱r]VykVeybmؕxa8}; &.'eusI+dO-(,5|K=FK㞎2q~adYRɝ^H)JBlJ&[kHK*pxOE|tM hRh1)!YXq]%|t^n?YriXZƪtRޮW3@>i钙An#^n-qx"dy phE3rCWIw򵾮&>O&x 6gygs3dUŞVpp$_ X4-AE$.puh^ϽX<&Z  -K!@4کT]k'=I}!fkx4qɴ;>SWL]r` #OsO8dl?|̙|7uw8v:cUF/9m~b^H kA"ˑئ;+4ĥbM|gMXp|+_1yFj;M`yI}7CR9a{rMtxc|mtٻ^H~!yX"p@L]{8=.$ ߅Tj -dA.DVcU<1?rV/5haŠ;ȯ) [D{L$in\ssd "/*YK$k+N.M@%=%!?ɿe%A -Qc'u!T:Ntu h%+j60H6dv{Qzh?HD%I)OzRʖ3+GnV)UKˑIIjF&ŤI.tY9iyڠtML Cff6fgNRyD6}Mc,\Cgl6&d fNA|1GVexGaY*\ay\sf܄!C=U۸ } Y-TrߏKh"C9,mدPO3؈M2aagA#8;bŚ& # U0^#,U#cpFG yȒ(O^5r)dUm[m 5e~~yIr]TRV5qWV?IȌm=j (o~ꘆBxWZtDWg4 ʓ˗t~|j?~˗e|nѠctߩQ?)p4(H lgN@Nء#;cGPYי.J#w^32%šXA {Eu{o{5 A6p"]JG$j2NFQ -#r4Ԁ&0-A@8c;Crf2"iuc5j;H^KS8w~V'B{ -8Yhsn<\嫈,4cLh~]˥nɭQQwQD=XV|柙{a-t ;[_*d6fW_RY}S̵#Ň -[B9;zod:un]n^clo(nlHўʦP${eivl[ӥh5o\r~$_{?<0"Җk 撇;i6?%rQmZo}>5-lfXx/N]x'~gۥgPޑw>PjuQKo&7go| -ȏ "VLcw뛬L\ ROQW\[of*?J!aThR4y2KȦ]0&S}5fD3qtp ҢS{ 5${®] ڌTa785h}lxZy6vKxJ* Za2LE55JQOp̅QOb -Sz?}pQx5qWQs&j!a*MEU5uU tr)'H5{"K2W5d=i"ͤlC!]ir1 rF []h\z=Bz#5-ԤΡun].Ut m_zQCO?h^YEu- ښ¦ںUZ6}ճedPs=ְuf~ W*NcO.vس9ϓ+A|QBW#x51uycDcܻ^d:B(F;g=݋*yGZ?ڥWRB2+c7* y(L&ڽ|4ͫ`ugq71uюd4\§& -LR$1$gV\7A@v9w_D>WXUM&/I _7 'aQ#Y x.xgؾ/ )6>Bx+ea#'7F:BS5bX4~,'@?d=v?[d$88T)`L3RcCgR[=RaQ,+Nԍ#.)dd@ Bt50+Njvh7 %?6Iq]nBRx PNߘ,C:s6IO<'t!ށCxQhNC_#Xĺk4)ʹx6t^9h.dJ\AxVX챐%d4ȢfV.Q ->z6HyOXmMXLmInXiأKu> Calœ"KtZ8f{1LOaP `%KeW5#X|"4y,y^2Y\ ARo6h.ӚW+Dɑ-=aRlEɥ[eD[d5s ;tYH~8VcqiyZ@!bp5f "@| (YhYYdِ[=c/wnKFT }KkW g+a\[X2,-Dr@=zZe`A }Zcr/ltnoJEXY0pɺz^a,$Τ"vIW!u>$e璘+Gn-,-ćÝnFJfM뙷1ƴݸmɲ덦ʩҀ#{S6>ZeEF4t-h.GU.l-yu53]cާ=l`hQq-0XYh+cٽS:fejc۲tfq0 - -rm~ǕsC0$k좕~bA-16BOt g2+M&W.ӜyqSSJڥ,'mZCSEqi\Zxun (pL/秡lF' Z(IܳaS%{ĺu꠴p={EyyE/ȵqJoS82It S ~ $:`VbGgk=.^Chg'- .{t*CeK ZLj.E:`1\wiBp1"jw]tRע'linlujR4"8 3Nm@ WvޖBW -f1!djcA7iZ8 TFg&N %A(-4nmv.'c ޵П9E>1eTq -xA¹#TZ(޵Pw:5.->Z$(^Êr%-HAy@OL -=4A^#n‘Bt4؋B$5,Bu~2*EFxъ-xVrVT8,& LMVH9#6YK΅(vfXMZ6Eh]Ehu2p0x6e;V k!U%i+8 b=hL_ = }BhQǀc:< "/(s6l9G9WB ޷4ZHJ;g[V{ эNCRmiяZ oϿ9K-ZfOpٷp{吉9̎,>)A 8Uތ-B#.AʺSZkc MZPh= `eZ҃q'f;eNM% ^[l<#S`ѯ/d -Kw`p#2vb Km:hZbWaD%u__u'˵e\# /s%+ڛ6Z$o'KrvM66mo"rWw`)N†*. xrK}T Ya9,gpA{B:_wyTeE2(I ђ?mFԆXYC+h ';Z+jZQk%A9Zb\-.v06ϚQ7c7l$D½Y[fMsrѯ |HspihC`%#BpY#erZ%nhӡB{J`k1Z<2^D(m _=~X< K)'~xWTߡyyi1d, P 7eaǾ*rwp[v0D039QLoͷlk \ I"5ǴRΖ/2軄pl-uhC;65?-Ej>ҍBm;޺1Z4.B.- y; L~#F]}J(!6`q?N|B+MGEN􎀴N C>(p߂1pa- ~ /oЀm \!$CyLoK{X,oɫdKn)2+QN(_V\PkU+E_W T (0HFmYp1X$'Z$PXiTL11x"]>V14k#+YT93޹ܙf'*`XoR F3sl!gzmgmcv]ea,Cy"a| _3Λ&G9oKROI30iT,M*ER;itD:/]l49Kvȓry^n' -S"~ʏ\e2K,VV)((;0ݫV('ʿKJTU5&^:@f05@OGV%&#Lh -D!ZdQvH&bDd H{b=DRu1h3 -t_Āo,u Bz0%|~5P$a4EGA|d4T3.#܌r3Yt( R8D<!10q#BA1JHU7)uAԉ} &Ζ:?A}n@q'j7smoG1<й(z(me~+ -7@zE{(l(RG9n}w'Ox`ٳc;oЭsvD|3Q18B*_ge)0&t%@NGPD+./HsJw++ }Ҭi-yK[~m^ɲ̟,N6||QoQ4BIk0?ly01ߚ 8Unx0ZXJX oA3Z1cp ס:*j<#IoGII!'d0J2d@&"22 -E*|ڪBRK|@~CV&üJnv5%T3/i4}3dJI4ŜET:ܱ.*F"7Pmt撇Q=E?ez~Eovzv#a1όdQbYxĞdSH(!ܑGʧ(0DD9e(-F%R݈mO"&j -uJ1yԽ^‚-dvƒ˃-vWr?)؋G #/SHldyqٝ=QXޫ XA[J\ -JIg5K^әs}M$Kb}D)t"K\VInmSZ55 c%OcI'%}luéc)pbSXGAv8#dO~??3lrULH16B(H`-Ԫ Gռn6\6ōӟ(!wNDzi\w%.C ==A'YGj>y>kh9mo=rUݑs#p)X1ty9v,>8m?l& ]` -{dI9~q*O%V, KLQ}JGلƄ-]}nJ-(k+O%;oF ><"(0‚> 2 ]X ~'|䜔S]|H=8|A%jS_9`Ε-* s-}"7Ϩ -9+#2@PK]}Z~_/#G{@^S+~HG U)='9$ + }B.E- DGFdnMY~_ȗDJƵb'C}:IQQ"52FCרrn|@"U|H c}ܟ䦽~LsVjSO %(H=|n^~ww -~ iۃ~%q޿ĭ=<+}^i%Ӄ]^|@j=ʍGr7HsrVzq]PQya/!G?9.oOwp1?I M4 }gp|i ]X".y9@&dQi;S^tvi/RXܜHe\R#dƆJi7C |t`Z.B,I]I9 ێ6N)N|Y%,2渇l$iJ/գ4_mm<:x(yǭ#W#!n2 GP%:&7'|a 3ck"jmS-;oTW;Hˌo), m\_F>MK-AYF6$=f(m((0#| -pgy4چ.v`8tlj'۶1`fX"?ꢂGsy2akD]aZMa``.4V*JFs%b^ӈf=iv->"1zq&4G {#~mQ\ml Y,2Ke%eU^Ȟ ^ L8n|%rt &3W&;OW -Wy̾$T })olO{c8FշX-$Μ@B,taϩd,( -Zz1mq九So8!p v@ ) ]k$~XPuc7z>#܈qNG -C/1iF$MݎY:q>zH8:SM e{*kИt Gb"郤!VIXjblTneY #)h-v`rkbP[РM+K&-aV=Ύ@#*v_9ͼJszտ?x>_?wwd??Cc܃8~~ - PPp]%1+TYEńT)bDE*EK"Q|g4QAӈ(G#DTjR40"ip_vљt>sϹsk셉C^٠N,@[•ک1TM٬Ju4gVDYB9vcԬe3)`G).}Uۂ]BZ8#=nFM)K| -)(U]P^D;Wӧ4'^i]Ӈ\qiI`Gc>X5?wtȺ1_J8|>LڶIn[?^0AٻE}o{&ZI:limY2sL즭7Fgѵb;2 %Z\v,;.}iG6E1/Paξ{hDWyqis.oJ5i1yrhI՝ך*\/մL .9QPSѕSu,R-y@!(87Qx5S ?=#_5JZp<<-oH%0^T6gPJIqgw7/-^[]nҸ %U'o\TMɉ$Lq4L4'SErD4l>42/P %_ MJAh"ih(iC mܴMӛSӨGz9M{MxFCՒ9TI=݊IEV%%(0dIYIA+vGCx~;v OېoM=-rB;75*x ~ l//л4{@8%t_fM6 -YgF3փ'1C>X kj:D<\w/42UQ%9ܐaK%U -κ -|ԗpgds7o]'UNdA=at{T[~Z99~[ "3E P P ~6J#An^ M"hOhdډz;DP{;z}pǴ^anf-l/zֵeZ2WaMCp%]avcˇfܶws`ʐecODmkeK.,TǖZʽ`K9X',2SxDhDbZғC?Q* ?"z'3=9S:V>,|Ocli6 f]V? cRQ'giT0Bo"֧ &9r8 ƁR ƂpL%i4 4"#!Gf0 yk0 G&-0 /N@a@/al}ɉ9<>eC?}$7{A3rܳ<~/Jn: =-t}ȅfsA4 -Y:VPuBt9BjA5T*(E2@l)в'Xíg?!IPE~t -+XNyJ^,qءۑ[vk9iὸ;4Ń<\L,^Z^,{M@NZ޾z.Izo`͋T8CXƉ8YD!,0;Xz?!ECqQM-| iybG9_XsnlݬLV&uWZS)4%ҝk<Yl;듕ԕ!{v]n8v_BsdU콠*YTtZ))UT{xpwf29LbpW]N㓽5Qe źݚ/?NqO$B$?޶#ޜzd5K"=#+86Yڱ6Y\f9o\Dޚ634hA8Pfrx{t6 Y_?_?`lin=`;?s;'Nw -{$9ۡ`9}>ĺvuV  -endstream -endobj -108 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -109 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -110 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -111 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -112 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 120 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -500 500 500 500 500 500 500 500 500 500 0 0 0 0 0 0 -0 0 0 0 0 611 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 333 0 333 0 0 -0 444 0 444 500 444 0 0 0 0 0 0 0 778 500 500 -0 0 0 0 0 0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 102 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 556 0 0 0 0 0 0 0 0 0 584 0 611 -0 722 722 722 722 667 611 0 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 667 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 103 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [250 0 371 0 0 0 0 0 333 333 0 606 250 333 250 606 -500 500 500 500 500 500 500 0 0 500 250 250 606 606 606 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 667 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 104 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 600 600 600 0 0 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 0 0 600 600 600 0 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 0 600 0 0 600 600 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 105 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBGHIG+Symbol -/Encoding /Identity-H -/DescendantFonts [ 113 0 R ] -/ToUnicode 114 0 R ->> -endobj -113 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBGHIG+Symbol -/FontDescriptor 106 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 91 -/Widths [278 0 0 0 0 0 0 0 0 333 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -0 0 722 667 611 722 667 0 667 667 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 108 0 R ->> -endobj -33 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [600 0 0 600 0 0 600 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 0 600 600 600 0 0 0 0 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 109 0 R ->> -endobj -34 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 68 -/LastChar 115 -/Widths [778 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 444 0 407 -0 389 0 500 0 278 0 0 278 0 556 0 0 0 389 389 -] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 110 0 R ->> -endobj -35 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 125 -/Widths [600 0 0 600 0 0 0 0 600 600 600 600 0 600 600 600 -0 0 0 0 0 0 0 0 0 0 600 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -0 600 600 0 0 600 0 0 0 0 0 0 600 0 600 600 -0 0 600 0 600 0 0 0 0 0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 111 0 R ->> -endobj -42 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 722 0 0 0 0 0 0 0 0 611 0 833 0 -0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 500 0 0 0 0 0 0 333 0 611 556 -0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 112 0 R ->> -endobj -114 0 obj -<< -/Filter /FlateDecode -/Length 217 ->> -stream -HTPn0 {ꐀn9 \BC#'2aDpU޳{EMFGq+;N:d32m8w4zh!?p0\ -)!+!H-XgYծ-.AdMBYGA>oخjE7=|9Y,#ق#|&r_j} -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -46 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 48 0 R -/Contents 47 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -77 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 79 0 R -/Contents 78 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 58 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -115 0 obj -<< -/S /D ->> -endobj -116 0 obj -<< -/Nums [0 115 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 21 0 R 27 0 R 30 0 R 36 0 R 39 0 R 43 0 R 46 0 R 50 0 R] -/Count 10 -/Parent 57 0 R ->> -endobj -58 0 obj -<< -/Type /Pages -/Kids [53 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R 74 0 R 77 0 R 80 0 R 83 0 R] -/Count 10 -/Parent 57 0 R ->> -endobj -89 0 obj -<< -/Type /Pages -/Kids [86 0 R 90 0 R 93 0 R 96 0 R 99 0 R] -/Count 5 -/Parent 57 0 R ->> -endobj -57 0 obj -<< -/Type /Pages -/Kids [11 0 R 58 0 R 89 0 R ] -/Count 25 -/MediaBox [0 0 612 792] ->> -endobj -117 0 obj -<< -/CreationDate (D:20210202102648-06'00') -/ModDate (D:20210202102648-06'00') -/Producer (Apple pstopdf) ->> -endobj -118 0 obj -<< -/Type /Catalog -/Pages 57 0 R -/PageLabels 116 0 R ->> -endobj -xref -0 119 -0000000000 65535 f -0000216603 00000 n -0000000016 00000 n -0000003924 00000 n -0000212043 00000 n -0000212437 00000 n -0000212942 00000 n -0000213510 00000 n -0000214078 00000 n -0000135255 00000 n -0000189792 00000 n -0000218773 00000 n -0000216684 00000 n -0000004098 00000 n -0000006083 00000 n -0000214427 00000 n -0000139668 00000 n -0000145902 00000 n -0000152136 00000 n -0000158370 00000 n -0000162784 00000 n -0000216768 00000 n -0000006298 00000 n -0000010540 00000 n -0000167198 00000 n -0000172417 00000 n -0000174562 00000 n -0000216852 00000 n -0000010742 00000 n -0000015413 00000 n -0000216936 00000 n -0000015556 00000 n -0000022118 00000 n -0000214751 00000 n -0000215194 00000 n -0000215483 00000 n -0000217020 00000 n -0000022300 00000 n -0000031729 00000 n -0000217104 00000 n -0000031887 00000 n -0000038524 00000 n -0000215945 00000 n -0000217188 00000 n -0000038695 00000 n -0000044387 00000 n -0000217272 00000 n -0000044545 00000 n -0000049932 00000 n -0000177566 00000 n -0000217356 00000 n -0000050150 00000 n -0000055744 00000 n -0000217440 00000 n -0000055926 00000 n -0000060648 00000 n -0000180570 00000 n -0000219150 00000 n -0000218910 00000 n -0000217524 00000 n -0000060853 00000 n -0000067085 00000 n -0000217608 00000 n -0000067254 00000 n -0000071897 00000 n -0000217692 00000 n -0000072079 00000 n -0000079921 00000 n -0000217776 00000 n -0000080090 00000 n -0000087104 00000 n -0000217860 00000 n -0000087286 00000 n -0000093042 00000 n -0000217944 00000 n -0000093211 00000 n -0000098036 00000 n -0000218028 00000 n -0000098216 00000 n -0000103999 00000 n -0000218112 00000 n -0000104179 00000 n -0000110269 00000 n -0000218196 00000 n -0000110425 00000 n -0000114784 00000 n -0000218280 00000 n -0000114940 00000 n -0000119796 00000 n -0000219048 00000 n -0000218364 00000 n -0000119941 00000 n -0000126135 00000 n -0000218448 00000 n -0000126304 00000 n -0000132177 00000 n -0000218532 00000 n -0000132344 00000 n -0000134907 00000 n -0000218616 00000 n -0000135039 00000 n -0000135157 00000 n -0000189933 00000 n -0000190131 00000 n -0000190338 00000 n -0000190539 00000 n -0000190731 00000 n -0000190923 00000 n -0000211032 00000 n -0000211228 00000 n -0000211430 00000 n -0000211634 00000 n -0000211837 00000 n -0000214222 00000 n -0000216312 00000 n -0000218702 00000 n -0000218731 00000 n -0000219249 00000 n -0000219373 00000 n -trailer -<< -/Size 119 -/Root 118 0 R -/Info 117 0 R -/ID [] ->> -startxref -219445 -%%EOF diff --git a/docs/medley-irm/14-ERRORS.pdf b/docs/medley-irm/14-ERRORS.pdf deleted file mode 100644 index 01ab43e9..00000000 --- a/docs/medley-irm/14-ERRORS.pdf +++ /dev/null @@ -1,11885 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5268 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-1)Tj -/TT4 1 Tf -10 0 0 10 353.31 568.2 Tm -(14. ERRORS AND DEBUGGING)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -0.0122 Tw -[(Occasionally, while a program is running, an error occurs which stops the computation. Errors can be)]TJ -0 -1.2222 TD -0.0411 Tw -[(caused in different ways. A coding mistake may have caused the wrong arguments to be passed to a)]TJ -T* -0.0078 Tw -[(function, or caused the function to attempt something illegal. For example, )]TJ -/TT8 1 Tf -33.5738 0 TD -0 Tw -(PLUS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( will cause an error if)]TJ --35.9742 -1.2889 TD -0.1322 Tw -[(its arguments are not numbers. It is also possible to interrupt a computation by typing one of the)]TJ -0 -1.2222 TD -0.2478 Tw -(interrupt characters, such as Control-D or Control-E \(Medley interrupt characters are listed in)Tj -T* -0.1356 Tw -[(Chapter 30\). Finally, you can specify that certain functions automatically cause an error whenever)]TJ -T* -0.06 Tw -[(they are entered \(see Chapter 15\). This facilitates debugging by allowing you to examine the context)]TJ -T* -0 Tw -(within the computation.)Tj -0 -2 TD -0.13 Tw -(When an error occurs, the system can either reset and unwind the stack, or go into a break, and)Tj -0 -1.2222 TD -0.0733 Tw -[(attempt to debug the program. You can modify the mechanism that decides whether to unwind the)]TJ -T* -0.1133 Tw -[(stack or break, and is described in the Controlling When to Break section in this chapter. Within a)]TJ -T* -0 Tw -(break, Medley offers an extensive set of break commands.)Tj -0 -2 TD -0.0011 Tw -(This chapter explains what happens when errors occur. It also tells you how to handle program errors)Tj -0 -1.2222 TD -0.2044 Tw -[(using breaks and break commands. The debugging capabilities of the break window facility are)]TJ -T* -0.0189 Tw -[(described, as well as the variables that control its operation. Finally, advanced facilities for modifying)]TJ -T* -0 Tw -(and extending the error mechanism are presented.)Tj -/TT4 1 Tf -10 0 0 10 54 339.6 Tm -(Breaks)Tj -ET -1 w -54.01 336.89 m -510.01 336.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 322.94 Tm -0.0744 Tw -(One of the most useful debugging facilities in Medley is the ability to put the system into a break,)Tj -T* -0.0433 Tw -(stopping a computation at any point, allowing you to interrogate the state of the world and affect the)Tj -T* -0.0522 Tw -[(course of the computation. When a break occurs, a break window \(see the Break Windows section)]TJ -T* -0.0022 Tw -(below\) is brought up near the TTY window of the broken process. The break window looks like a top-)Tj -T* -0.1611 Tw -(level executive window, except that the prompt character is )Tj -/TT10 1 Tf -28.0335 0 TD -0 Tw -(:)Tj -/TT6 1 Tf -0.75 0 TD -0.1611 Tw -( instead of )Tj -/TT11 1 Tf -6.3251 0 TD -0 Tw -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -0.1611 Tw -( as in the top-level)Tj --36.0954 -1.2222 TD -0.2333 Tw -[(executive. A break saves the environment where the break occurred, so that you may evaluate)]TJ -T* -0.1267 Tw -[(variables and expressions in the borken environment. In addition, the break program recognizes a)]TJ -T* -0.1289 Tw -(number of useful break commands, providing an easy way to interrogate the state of the broken)Tj -T* -0 Tw -(computation.)Tj -0 -2 TD -0.0355 Tw -[(Breaks may be entered in several ways. Some interrupt characters \(Chapter 30\) automatically cause a)]TJ -0 -1.2222 TD -0.0756 Tw -[(break whenever you type them. Function errors may also cause a break, depending on the depth of)]TJ -T* -0.1444 Tw -[(the computation \(see Controlling When to Break below\). Finally, Medley provides facilities which)]TJ -T* -0.2278 Tw -(make it easy to break suspect functions so that they always cause a break whenever they are)Tj -T* -0 Tw -(entered.)Tj -0 -2 TD -0.0456 Tw -(Within a break you have access to all of the power of Medley; you can do anything you can do at the)Tj -0 -1.2222 TD -0.0267 Tw -[(top-level executive. For example, you can evaluate an expression, call the editor, change the function,)]TJ -T* -0.0256 Tw -[(and evaluate the expression again, all without leaving the break. You can also type in commands like)]TJ -/TT8 1 Tf -T* -0 Tw -(REDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.3933 Tw -(, and )Tj -/TT8 1 Tf -3.2295 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.3933 Tw -[( \(Chapter 13\), to redo or undo previously executed events, including break)]TJ --8.0303 -1.2889 TD -0 Tw -(commands.)Tj -0 -2 TD -0.0044 Tw -(Similarly, you can prettyprint functions, define new functions or redefine old ones, load a file, compile)Tj -0 -1.2222 TD -0.0355 Tw -[(functions, time a computation, etc. In addition, you can examine the stack \(see Chapter 11\), and even)]TJ -T* -0 Tw -(force a return back to some higher function via the functions )Tj -/TT8 1 Tf -26.9502 0 TD -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --36.7925 -2.0667 TD -0.0356 Tw -(Once a break occurs, )Tj -/TT13 1 Tf -9.5221 0 TD -0 Tw -(you)Tj -/TT6 1 Tf -1.5 0 TD -0.0356 Tw -[( are in complete control of the flow of the computation, and the computation)]TJ --11.0221 -1.2222 TD -0.0189 Tw -[(will not proceed without specific instruction from you. If you type in an expression whose evaluation)]TJ -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 5390 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-2)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0911 Tw -[(causes an error, the break is maintained. Similarly if you abort a computation initiated from within)]TJ -0 -1.2222 TD -0.05 Tw -[(the break \(by typing Control-E\), the break is maintained. Only if you give one of the commands that)]TJ -T* -0.0456 Tw -(exits from the break, or evaluates a form which does a )Tj -/TT8 1 Tf -24.6217 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.0456 Tw -[( or )]TJ -/TT8 1 Tf -1.532 0 TD -0 Tw -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0456 Tw -[( out of )]TJ -/TT8 1 Tf -3.2407 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0456 Tw -(, will the)Tj --41.3964 -1.2889 TD -0.1733 Tw -[(computation continue. Also, )]TJ -/TT8 1 Tf -13.7329 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1733 Tw -[( does not turn off Control-D, so a Control-D will force an)]TJ --17.3335 -1.2889 TD -0 Tw -(immediate return to the top level.)Tj -/TT4 1 Tf -10 0 0 10 102 502 Tm -(Break Windows)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 499.29 m -558.01 499.29 l -S -BT -/TT6 1 Tf -9 0 0 9 126 485.34 Tm -0.0344 Tw -(When a break occurs, a break window is brought up near the TTY window of the borken process and)Tj -0 -1.2222 TD -0.0033 Tw -(the terminal stream switched to it. The title of the break window is changed to the name of the broken)Tj -T* -0.03 Tw -[(function and the reason for the break. If a break occurs under a previous break, a new break window)]TJ -T* -0 Tw -(is created.)Tj -0 -2 TD -0.0311 Tw -(If a break is caused by a storage full error, the display break package will not try to open a new break)Tj -0 -1.2222 TD -0 Tw -(window, since this would cause an infinite loop.)Tj -0 -2 TD -0.0878 Tw -(While in a break window, clicking the middle button brings up a menu of break commands: )Tj -/TT8 1 Tf -42.6704 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj -/TT8 1 Tf --45.0708 -1.2889 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.68 0 TD -(revert)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT11 1 Tf -0.68 0 TD -<0042>Tj -/TT6 1 Tf -0.603 0 TD -(, )Tj -/TT8 1 Tf -0.68 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.68 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.68 0 TD -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -0.18 Tw -(, and )Tj -/TT8 1 Tf -2.8029 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.18 Tw -[(. Clicking on these commands is equivalent to typing the)]TJ --18.2078 -1.2889 TD -0.1989 Tw -(corresponding break commandm, except )Tj -/TT8 1 Tf -19.1569 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.1989 Tw -[( and )]TJ -/TT8 1 Tf -2.5907 0 TD -0 Tw -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -0.1989 Tw -[( which behave differently from the typed-in)]TJ --24.748 -1.2889 TD -0 Tw -(commands \(see Break Commands below\).)Tj -0 -2 TD -(The )Tj -/TT8 1 Tf -1.9927 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.0689 Tw -[( and )]TJ -/TT8 1 Tf -2.3307 0 TD -0 Tw -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -0.0689 Tw -[( menu commands bring up a backtrace menu beside the break window showing the)]TJ --7.3239 -1.2889 TD -0.0244 Tw -(frames on the stack. )Tj -/TT8 1 Tf -9.401 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.0244 Tw -[( shows frames for which )]TJ -/TT8 1 Tf -11.2023 0 TD -0 Tw -(REALFRAMEP)Tj -/TT6 1 Tf -6.001 0 TD -0.0244 Tw -[( is )]TJ -/TT8 1 Tf -1.2637 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0244 Tw -(; )Tj -/TT8 1 Tf -0.7989 0 TD -0 Tw -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -[( shows all frames. When one)]TJ --32.2675 -1.2889 TD -0.0011 Tw -(of the frames is selected from the backtrace menu, it is grayed and the function name and the variables)Tj -0 -1.2222 TD -0.0133 Tw -(bound in that frame \(including local variables and )Tj -/TT8 1 Tf -22.5456 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( variables\) are printed in the backtrace frame)]TJ --24.946 -1.2889 TD -0.05 Tw -[(window. If the left button is used for the selection, only named variables are printed. If the middle)]TJ -0 -1.2222 TD -0.2989 Tw -(button is used, all variables are printed \(variables without names appear as )Tj -/TT8 1 Tf -37.051 0 TD -0 Tw -(*var* )Tj -/TT17 1 Tf -4.3184 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.2989 Tw -[(\). The)]TJ --41.9695 -1.2889 TD -0.0644 Tw -[(backtrace frame window is an inspect window \(see Chapter 26\). In this window, the left button is)]TJ -0 -1.2222 TD -0.0567 Tw -[(used to select the name of the function, the names of the variables or the values of the variables. For)]TJ -T* -0.3367 Tw -(example, below is a picture of a break window with a backtrace menu created by )Tj -/TT8 1 Tf -41.0368 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.3367 Tw -[(. The)]TJ -/TT8 1 Tf --42.237 -1.2889 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0133 Tw -[( stack frame has been selected, so its variables are shown in an inspect window on top of)]TJ --6.001 -1.2889 TD -0 Tw -(the break window:)Tj -ET -q -145.5 0 0 -135.5 245.26 230.39 cm -/Im1 Do -Q -BT -9 0 0 9 126 81.44 Tm -0.0722 Tw -(After selecting an item, the middle button brings up a menu of commands that apply to the selected)Tj -0 -1.2222 TD -0.1344 Tw -[(item. If the function name is selected, you are given a choice of editing the function or seeing the)]TJ -T* -0.1267 Tw -(compiled code with )Tj -/TT8 1 Tf -9.3883 0 TD -0 Tw -(INSPECTCODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1267 Tw -[( \(Chapter 26\). If you edit the function in this way, the editor is)]TJ --15.9894 -1.2889 TD -0 Tw -(called in the broken process, so variables evaluated in the editor are in the broken process.)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 9 0 R -/TT15 16 0 R -/TT17 17 0 R ->> -/XObject << -/Im1 18 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -20 0 obj -<< -/Length 7759 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-3)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0722 Tw -(If a variable name is selected, the command )Tj -/TT8 1 Tf -20.0988 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[( is offered. Selecting )]TJ -/TT8 1 Tf -9.7249 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[( will )]TJ -/TT8 1 Tf -2.3515 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0722 Tw -[( a value and set)]TJ --38.1761 -1.2889 TD -0 Tw -(the selected to the value read.)Tj -/TT10 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0156 Tw -[(: The inspector will only allow the setting of named variables. Even with this restriction it is still)]TJ --2.2222 -1.2222 TD -0.1578 Tw -[(possible to crash the system by setting variables inside system frames. Exercise caution in setting)]TJ -T* -0 Tw -(variables in other than your own code.)Tj -0 -2 TD -(If a value is selected, the inspector is called on the selected value. )Tj -T* -0.1667 Tw -(The internal break variable )Tj -/TT8 1 Tf -12.8444 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1667 Tw -[( \(see the section below\) is set to the selected backtrace menu)]TJ --17.0451 -1.2889 TD -(frame so that the normal break commands )Tj -/TT8 1 Tf -20.1501 0 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6667 0 TD -(revert)Tj -/TT6 1 Tf -3.6006 0 TD -0.1667 Tw -(, and )Tj -/TT8 1 Tf -2.7762 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1667 Tw -[( work on the currently selected)]TJ --30.7941 -1.2889 TD -[(frame. The commands )]TJ -/TT8 1 Tf -11.0524 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6667 0 TD -(revert)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT11 1 Tf -0.6667 0 TD -<0042>Tj -/TT6 1 Tf -0.603 0 TD -(, )Tj -/TT8 1 Tf -0.6667 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.1667 Tw -(, and )Tj -/TT8 1 Tf -2.7762 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1667 Tw -[( in the break menu cause the corresponding)]TJ --24.833 -1.2889 TD -0.0244 Tw -[(commands to be typed in. This means that these break commands will not have the intended effect)]TJ -0 -1.2222 TD -0.0256 Tw -[(if characters have already been typed in. The typed-in break commands )]TJ -/TT8 1 Tf -32.4756 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5256 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -(, etc. use the value of)Tj -/TT8 1 Tf --36.0017 -1.2889 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0078 Tw -[( to determine where to start listing the stack, so selecting a stack frame name in the backtrace)]TJ --4.2007 -1.2889 TD -0 Tw -(menu affects these commands.)Tj -/TT4 1 Tf -10 0 0 10 54 390.6 Tm -(Break Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 387.89 m -510.01 387.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 373.94 Tm -0.0933 Tw -(The basic function of the break package is )Tj -/TT8 1 Tf -19.44 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0933 Tw -(. )Tj -/TT8 1 Tf -0.9367 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0933 Tw -[( is just another Interlisp function, not a)]TJ --27.5779 -1.2889 TD -0.1189 Tw -[(special system feature like the interpreter or the garbage collector. It has arguments, and returns a)]TJ -0 -1.2222 TD -0.11 Tw -[(value, the same as any other function. For more information on the function )]TJ -/TT8 1 Tf -35.5449 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.11 Tw -(, see Creating)Tj --39.1455 -1.2889 TD -0 Tw -(Breaks with BREAK1 below.)Tj -0 -2 TD -0.02 Tw -(The value returned by )Tj -/TT8 1 Tf -10.1713 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.02 Tw -[( is called the value of the break. You can specify this value explicitly)]TJ --13.7719 -1.2889 TD -0.1111 Tw -(by using the )Tj -/TT8 1 Tf -6.036 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1111 Tw -[( break command \(see below\). But in most cases, the value of a break is given)]TJ --9.6366 -1.2889 TD -0.0289 Tw -(implicitly, via a )Tj -/TT8 1 Tf -7.2078 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0289 Tw -[( or )]TJ -/TT8 1 Tf -1.4987 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.0289 Tw -[( command, and is the result of evaluating the break expression. The break)]TJ --11.1068 -1.2889 TD -0.0456 Tw -(expression, stored in the variable )Tj -/TT8 1 Tf -15.0798 0 TD -0 Tw -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0456 Tw -(, is an expression equivalent to the computation that would)Tj --18.6804 -1.2889 TD -0.1122 Tw -[(have taken place had no break occurred. For example, if you break on the function )]TJ -/TT8 1 Tf -38.6813 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -(, the break)Tj --40.4816 -1.2889 TD -0.2378 Tw -(expression is the body of the definition of )Tj -/TT8 1 Tf -20.4843 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.2378 Tw -[(. When you type )]TJ -/TT8 1 Tf -8.9994 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.2378 Tw -[( or )]TJ -/TT8 1 Tf -1.9165 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.2378 Tw -(, the body of )Tj -/TT8 1 Tf -6.7333 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.2378 Tw -[( is)]TJ --44.1345 -1.2889 TD -0.1878 Tw -(evaluated, and its value returned as the value of the break, i.e., to whatever function called )Tj -/TT8 1 Tf -43.274 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --45.0743 -1.2889 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0167 Tw -[( is set up by the function that created the call to )]TJ -/TT8 1 Tf -21.305 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0167 Tw -[(. For functions broken with )]TJ -/TT8 1 Tf -12.6225 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0167 Tw -[( or)]TJ -/TT8 1 Tf --44.1291 -1.2889 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6244 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.1244 Tw -[( is equivalent to the body of the definition of the broken function \(see Chapter 15\).)]TJ --7.2255 -1.2889 TD -0.3067 Tw -(For functions broken with )Tj -/TT8 1 Tf -12.9991 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.3067 Tw -(, using )Tj -/TT8 1 Tf -3.8194 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.3067 Tw -[( or )]TJ -/TT8 1 Tf -2.0543 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.8067 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.3067 Tw -[( is )]TJ -/TT8 1 Tf -1.8282 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3067 Tw -[(. For )]TJ -/TT8 1 Tf -3.4171 0 TD -0 Tw -(BREAKIN)Tj --41.1273 -1.2889 TD -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -( is the indicated expression \(see Chapter 15\).)Tj -/TT8 1 Tf --7.7012 -2.0667 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0544 Tw -[( recognizes a large set of break commands. These are typed in )]TJ -/TT13 1 Tf -28.4851 0 TD -0 Tw -(without)Tj -/TT6 1 Tf -3.166 0 TD -0.0544 Tw -[( parentheses. In order)]TJ --35.2517 -1.2889 TD -0.0422 Tw -(to facilitate debugging of programs that perform input operations, the carriage return that is typed to)Tj -0 -1.2222 TD -0.0833 Tw -(complete the )Tj -/TT8 1 Tf -6.1027 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5833 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5833 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0833 Tw -(, etc. commands is discarded by )Tj -/TT8 1 Tf -14.8105 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0833 Tw -(, so that it will not be part of the)Tj --30.4813 -1.2889 TD -0 Tw -(input stream after the break.)Tj -/TT19 1 Tf -2.6667 -2.1489 TD -(GO)Tj -/TT15 1 Tf -10 0 0 10 112.8 133.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 133.6 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Evaluates )Tj -/TT8 1 Tf -4.6177 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0689 Tw -[(, prints its value, and returns it as the value of the break. Releases the)]TJ --8.2183 -1.2889 TD -0 Tw -(break and allows the computation to proceed.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(OK)Tj -/TT15 1 Tf -10 0 0 10 112.8 86.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 86.06 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -( except that the value of )Tj -/TT8 1 Tf -10.7837 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -( is not printed.)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -24 0 obj -<< -/Length 6736 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-4)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT19 1 Tf -9 0 0 9 150 568.2 Tm -(EVAL)Tj -/TT15 1 Tf -10 0 0 10 171.6 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 568.2 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.0333 Tw -(Same as )Tj -/TT8 1 Tf -3.8772 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.0333 Tw -[( except that the break is maintained after the evaluation. The value of )]TJ -/TT8 1 Tf -31.5209 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( is)]TJ --38.9987 -1.2889 TD -0.3011 Tw -(bound to the local variable )Tj -/TT8 1 Tf -13.5558 0 TD -0 Tw -(!VALUE)Tj -/TT6 1 Tf -3.6006 0 TD -0.3011 Tw -[(, which you can interrogate. Typing )]TJ -/TT8 1 Tf -18.3964 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.3011 Tw -[( or )]TJ -/TT8 1 Tf -2.0431 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf --38.7961 -1.2889 TD -(following )Tj -/TT8 1 Tf -4.5767 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -[( will not cause )]TJ -/TT8 1 Tf -6.8375 0 TD -0 Tw -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0567 Tw -[( to be reevaluated, but simply returns the value of)]TJ -/TT8 1 Tf --17.4152 -1.2889 TD -0 Tw -(!VALUE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0356 Tw -[( as the value of the break. Typing another )]TJ -/TT8 1 Tf -19.2135 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( will cause reevaluation. )]TJ -/TT8 1 Tf -11.3916 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( is)]TJ --39.0065 -1.2889 TD -0.0589 Tw -(useful when you are not sure whether the break will produce the correct value and want)Tj -0 -1.2222 TD -0 Tw -(to examine it before continuing with the computation.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(RETURN)Tj -/TT4 1 Tf -10 0 0 10 182.4 474.86 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 185.1783 474.86 Tm -(FORM)Tj -/TT15 1 Tf -10 0 0 10 206.7818 474.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 474.86 Tm -([Break Command])Tj -/TT17 1 Tf --31.8278 -1.8444 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( is evaluated, and returned as the value of the break. For example, one could use the)]TJ -/TT8 1 Tf --2.4004 -1.2889 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -( command and follow this with )Tj -/TT8 1 Tf -14.1382 0 TD -(RETURN \(REVERSE !VALUE\))Tj -/TT6 1 Tf -13.8022 0 TD -(.)Tj -/TT11 1 Tf -9.9 0 0 9 150 426.72 Tm -<0042>Tj -/TT15 1 Tf -10 0 0 10 155.43 426.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 426.72 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Calls )Tj -/TT8 1 Tf -2.5037 0 TD -(ERROR!)Tj -/TT6 1 Tf -3.6006 0 TD -0.0389 Tw -[( and aborts the break, making it go away without returning a value. This)]TJ --6.1043 -1.2889 TD -0.2189 Tw -[(is a useful way to unwind to a higher level break. All other errors, including those)]TJ -0 -1.2222 TD -0.2067 Tw -(encountered while executing the )Tj -/TT8 1 Tf -15.4932 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.7067 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.7067 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2067 Tw -(, and )Tj -/TT8 1 Tf -2.8562 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.2067 Tw -[( commands, maintain the)]TJ --28.1641 -1.2889 TD -0 Tw -(break.)Tj --5.3333 -2 TD -0.1211 Tw -(The following four commands refer to the broken function, whose name is stored in the )Tj -/TT8 1 Tf -41.7327 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf --41.7327 -1.2889 TD -(argument )Tj -/TT8 1 Tf -4.5742 0 TD -(BRKFN)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT19 1 Tf --4.908 -2.2156 TD -(!GO)Tj -/TT15 1 Tf -10 0 0 10 166.2 326.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 326.38 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.2922 Tw -(The broken function is unbroken, the break expression is evaluated, the function is)Tj -0 -1.2222 TD -0 Tw -(rebroken, and then the break is exited with the value printed.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(!OK)Tj -/TT15 1 Tf -10 0 0 10 166.2 279.44 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 279.44 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.2922 Tw -(The broken function is unbroken, the break expression is evaluated, the function is)Tj -0 -1.2222 TD -0 Tw -(rebroken, and then the break is exited without the value printed.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(UB)Tj -/TT15 1 Tf -10 0 0 10 160.8 232.5 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 232.5 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Unbreaks the broken function.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(@)Tj -/TT15 1 Tf -10 0 0 10 155.4 196.56 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 196.56 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.0178 Tw -(Resets the variable )Tj -/TT8 1 Tf -8.5646 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0178 Tw -(, which establishes a context for the commands )Tj -/TT8 1 Tf -21.1505 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5178 0 TD -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5178 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -(,)Tj -/TT8 1 Tf --39.7521 -1.2889 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5167 0 TD -(BTV*)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5167 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0167 Tw -(, and )Tj -/TT8 1 Tf -2.4762 0 TD -0 Tw -(IN?)Tj -/TT6 1 Tf -1.8003 0 TD -0.0167 Tw -[( described below. )]TJ -/TT8 1 Tf -8.3064 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0167 Tw -[( is the position of a function call on)]TJ --24.418 -1.2889 TD -0.0433 Tw -[(the stack. It is initialized to the function just before the call to )]TJ -/TT8 1 Tf -27.9485 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0433 Tw -(, i.e., )Tj -/TT8 1 Tf -2.3567 0 TD -0.1033 Tw -(\(STKNTH -1)Tj --33.9057 -1.2889 TD -0 Tw -(BREAK1\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --4.8008 -2.0667 TD -0.2778 Tw -(When control passes from )Tj -/TT8 1 Tf -12.8924 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.2778 Tw -(, e.g. as a result of an)Tj -/TT10 1 Tf -10.8547 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.5278 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.7778 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.7778 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.7778 0 TD -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT11 1 Tf -9.9 0 0 9 528.4907 126.56 Tm -<0042>Tj -/TT6 1 Tf -9 0 0 9 174 114.96 Tm -(command, or via a )Tj -/TT8 1 Tf -8.4951 0 TD -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -( you type in, )Tj -/TT8 1 Tf -5.7905 0 TD -(\(RELSTK LASTPOS\))Tj -/TT6 1 Tf -9.6016 0 TD -( is executed to)Tj --33.7295 -1.2889 TD -(release this stack pointer.)Tj -/TT8 1 Tf -0 -2 TD -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.0222 Tw -[( treats the rest of the teletype line as its argument\(s\). It first resets )]TJ -/TT8 1 Tf -29.5794 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0222 Tw -[( to )]TJ -/TT8 1 Tf -1.4165 0 TD -0 Tw -(\(STKNTH)Tj --35.7967 -1.2889 TD -0.1033 Tw -(-1 BREAK1\))Tj -/TT6 1 Tf -6.7044 0 TD -0.0433 Tw -[( and then for each atom on the line, )]TJ -/TT8 1 Tf -16.244 0 TD -0 Tw -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.0433 Tw -[( searches down the stack for a call to)]TJ --23.5485 -1.2889 TD -0 Tw -(that atom. The following atoms are treated specially:)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -27 0 obj -<< -/Length 6186 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-5)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT8 1 Tf -9 0 0 9 156.6 569.54 Tm -(@)Tj -/TT6 1 Tf -1.9333 0 TD -0.1489 Tw -(Do not reset )Tj -/TT8 1 Tf -6.0736 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1489 Tw -[( to )]TJ -/TT8 1 Tf -1.6698 0 TD -0.3567 Tw -(\(STKNTH -1 BREAK1\))Tj -/TT6 1 Tf -12.1152 0 TD -0.1489 Tw -[( but leave it as it)]TJ --24.0593 -1.2889 TD -0 Tw -(was, and continue searching from that point.)Tj --6.43 -2 TD -(a number )Tj -/TT17 1 Tf -4.4951 0 TD -(N)Tj -/TT6 1 Tf -1.9349 0 TD -0.0533 Tw -(If negative, move )Tj -/TT8 1 Tf -8.0809 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[( down the stack )]TJ -/TT17 1 Tf -7.4233 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -[( frames. If positive, move)]TJ -/TT8 1 Tf --20.305 -1.2889 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -( up the stack )Tj -/TT17 1 Tf -5.8413 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( frames.)Tj -/TT8 1 Tf --12.5754 -2.0667 TD -(/)Tj -/TT6 1 Tf -1.9333 0 TD -0.03 Tw -(The next atom on the line \(which should be a number\) specifies that the)Tj -/TT13 1 Tf -0 -1.2889 TD -0 Tw -(previous)Tj -/TT6 1 Tf -3.4453 0 TD -0.0344 Tw -[( atom should be searched for that many times. For example, )]TJ -/TT8 1 Tf -27.3489 0 TD -0 Tw -(@)Tj --30.7942 -1.2889 TD -(FOO / 3)Tj -/TT6 1 Tf -4.2007 0 TD -( is equivalent to )Tj -/TT8 1 Tf -7.7632 0 TD -(@ FOO FOO FOO)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT8 1 Tf --22.2986 -2.0667 TD -(=)Tj -/TT6 1 Tf -1.9333 0 TD -(Resets )Tj -/TT8 1 Tf -3.1309 0 TD -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0811 Tw -[( to the )]TJ -/TT13 1 Tf -3.2526 0 TD -0 Tw -(value)Tj -/TT6 1 Tf -2.167 0 TD -0.0811 Tw -[( of the next expression, e.g., if the value of)]TJ -/TT8 1 Tf --12.7512 -1.2889 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1622 Tw -[( is a stack pointer, )]TJ -/TT8 1 Tf -8.9962 0 TD -0.3889 Tw -(@ = FOO FIE)Tj -/TT6 1 Tf -8.3678 0 TD -0.1622 Tw -( will search for )Tj -/TT8 1 Tf -7.9536 0 TD -0 Tw -(FIE)Tj -/TT6 1 Tf -1.8003 0 TD -0.1622 Tw -[( in the)]TJ --28.9182 -1.2889 TD -0 Tw -(environment specified by \(the value of\) )Tj -/TT8 1 Tf -17.6421 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --19.4424 -2.0667 TD -(For example, if the push-down stack looks like:)Tj -/TT17 1 Tf -1.3333 -1.9333 TD -([9])Tj -/TT8 1 Tf -1.8003 0 TD -( BREAK1)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([8])Tj -/TT8 1 Tf -1.8003 0 TD -( FOO)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([7])Tj -/TT8 1 Tf -1.8003 0 TD -( COND)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([6])Tj -/TT8 1 Tf -1.8003 0 TD -( FIE)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([5])Tj -/TT8 1 Tf -1.8003 0 TD -( COND)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([4])Tj -/TT8 1 Tf -1.8003 0 TD -( FIE)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([3])Tj -/TT8 1 Tf -1.8003 0 TD -( COND)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([2])Tj -/TT8 1 Tf -1.8003 0 TD -( FIE)Tj -/TT17 1 Tf --1.8003 -1.2222 TD -([1])Tj -/TT8 1 Tf -1.8003 0 TD -( FUM)Tj -/TT6 1 Tf --3.1336 -2.0667 TD -(then )Tj -/TT8 1 Tf -2.2448 0 TD -0.0622 Tw -(@ FIE COND)Tj -/TT6 1 Tf -6.7255 0 TD -0.0256 Tw -( will set )Tj -/TT8 1 Tf -4.2627 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0256 Tw -[( to the position corresponding to)]TJ -/TT17 1 Tf --17.4337 -1.2889 TD -0 Tw -([5])Tj -/TT6 1 Tf -1.8003 0 TD -(; )Tj -/TT8 1 Tf -0.5211 0 TD -0.0511 Tw -(@ @ COND)Tj -/TT6 1 Tf -5.5031 0 TD -0.0211 Tw -( will then set )Tj -/TT8 1 Tf -6.4897 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0211 Tw -[( to)]TJ -/TT17 1 Tf -1.1432 0 TD -0.0511 Tw -[( [3])]TJ -/TT6 1 Tf -2.4515 0 TD -0.0211 Tw -(; and )Tj -/TT8 1 Tf -2.4851 0 TD -0.0511 Tw -(@ FIE / 3 -)Tj --24.5947 -1.2889 TD -0 Tw -(1)Tj -/TT6 1 Tf -0.6001 0 TD -( to )Tj -/TT17 1 Tf -1.8721 0 TD -([1])Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --9.6058 -2.0667 TD -(If )Tj -/TT8 1 Tf -0.9399 0 TD -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( cannot successfully complete a search for function )]TJ -/TT17 1 Tf -22.8089 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -(, it searches the stack again from)Tj --25.5491 -1.2889 TD -0.0289 Tw -(that point looking for a call to a function whose name is a possible misspelling of )Tj -/TT17 1 Tf -36.4139 0 TD -0 Tw -(FN )Tj -/TT6 1 Tf -1.8692 0 TD -(\(see)Tj --38.2831 -1.2889 TD -0.1322 Tw -[(spelling correction in Chapter 20\). If the search is still unsuccessful, )]TJ -/TT8 1 Tf -31.72 0 TD -0 Tw -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.1322 Tw -[( types )]TJ -/TT8 1 Tf -3.1507 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.3178 Tw -[( NOT)]TJ --37.271 -1.2889 TD -0 Tw -(FOUND\))Tj -/TT6 1 Tf -3.6006 0 TD -(, and then aborts.)Tj --3.6006 -2.0667 TD -(When )Tj -/TT8 1 Tf -3.312 0 TD -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.4189 Tw -[( finishes, it types the name of the function at )]TJ -/TT8 1 Tf -23.9784 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.4189 Tw -(, i.e., )Tj -/TT8 1 Tf -3.1078 0 TD -0 Tw -(\(STKNAME)Tj --35.199 -1.2889 TD -(LASTPOS\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --4.8008 -2.0667 TD -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.1022 Tw -[( can be used on )]TJ -/TT8 1 Tf -7.5638 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1022 Tw -[( \(see Creating Breaks with BREAK1 below\). In this case, the)]TJ -/TT13 1 Tf --12.3646 -1.2889 TD -0 Tw -(next)Tj -/TT6 1 Tf -1.7783 0 TD -( command on )Tj -/TT8 1 Tf -6.3262 0 TD -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -( is treated the same as the rest of the teletype line.)Tj -/TT19 1 Tf --14.9718 -2.2156 TD -(?=)Tj -/TT15 1 Tf -10 0 0 10 112.8 145.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 145.2 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.0756 Tw -[(This is a multi-purpose command. Its most common use is to interrogate the value\(s\) of)]TJ -0 -1.2222 TD -0.0078 Tw -[(the arguments of the broken function. For example, if )]TJ -/TT8 1 Tf -24.1676 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -[( has three arguments )]TJ -/TT8 1 Tf -9.5462 0 TD -0.0178 Tw -(\(X Y Z\))Tj -/TT6 1 Tf -4.2362 0 TD -0 Tw -(,)Tj --39.7504 -1.2889 TD -(then typing )Tj -/TT8 1 Tf -5.3818 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -( to a break on )Tj -/TT8 1 Tf -6.2334 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -( will produce:)Tj -/TT8 1 Tf --11.9491 -1.6667 TD -(:?=)Tj -0 -1.0667 TD -(X = )Tj -/TT13 1 Tf -2.4004 0 TD -(value of )Tj -/TT8 1 Tf -3.3887 0 TD -(X)Tj --5.7891 -1.0667 TD -(Y = )Tj -/TT13 1 Tf -2.4004 0 TD -(value of )Tj -/TT8 1 Tf -3.3887 0 TD -(Y)Tj --5.7891 -1.0667 TD -(Z = )Tj -/TT13 1 Tf -2.4004 0 TD -(value of )Tj -/TT8 1 Tf -3.3887 0 TD -(Z)Tj --5.7891 -1 TD -(:)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -30 0 obj -<< -/Length 6794 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-6)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.04 Tw -[( operates on the rest of the teletype line as its arguments. If the line is empty, as in the)]TJ --1.2002 -1.2889 TD -0.0511 Tw -[(above case, it operates on all of the arguments of the broken function. If the you type )]TJ -/TT8 1 Tf -38.8101 0 TD -0 Tw -(?=)Tj --38.8101 -1.2889 TD -0.3567 Tw -(X \(CAR Y\))Tj -/TT6 1 Tf -6.1142 0 TD -0.1489 Tw -(, you will see the value of )Tj -/TT8 1 Tf -12.5403 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1489 Tw -(, and the value of )Tj -/TT8 1 Tf -8.6414 0 TD -0.3567 Tw -(\(CAR Y\))Tj -/TT6 1 Tf -4.5574 0 TD -0.1489 Tw -[(. The difference)]TJ --32.4534 -1.2889 TD -0.06 Tw -(between using )Tj -/TT8 1 Tf -6.8085 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.06 Tw -[( and typing )]TJ -/TT8 1 Tf -5.5355 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.06 Tw -[( and )]TJ -/TT8 1 Tf -2.3129 0 TD -0.1433 Tw -(\(CAR Y\))Tj -/TT6 1 Tf -4.344 0 TD -0.06 Tw -[( directly to )]TJ -/TT8 1 Tf -5.1951 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.06 Tw -[( is that )]TJ -/TT8 1 Tf -3.3792 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.06 Tw -[( evaluates its)]TJ --34.1763 -1.2889 TD -0.1922 Tw -(inputs as of the stack frame )Tj -/TT8 1 Tf -13.5103 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1922 Tw -(, i.e., it uses )Tj -/TT8 1 Tf -6.0858 0 TD -0 Tw -(STKEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -0.1922 Tw -[(. This provides a way of)]TJ --27.9974 -1.2889 TD -0.1167 Tw -(examining variables or performing computations )Tj -/TT13 1 Tf -22.5853 0 TD -(as of a particular point on the stack.)Tj -/TT6 1 Tf -15.1834 0 TD -[( For)]TJ --37.7687 -1.2222 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.3046 0 TD -0.1333 Tw -(@ FOO / 2)Tj -/TT6 1 Tf -5.8009 0 TD -0.0556 Tw -[( followed by )]TJ -/TT8 1 Tf -5.9567 0 TD -0.1333 Tw -(?= X)Tj -/TT6 1 Tf -2.5337 0 TD -0.0556 Tw -[( will allow you to examine the value of )]TJ -/TT8 1 Tf -17.9302 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[( in the)]TJ --37.1262 -1.2889 TD -0 Tw -(previous call to )Tj -/TT8 1 Tf -7.0518 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -(, etc.)Tj -/TT8 1 Tf --8.8521 -2.0667 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0544 Tw -[( also recognizes numbers as referring to the correspondingly numbered argument, i.e.,)]TJ --1.2002 -1.2889 TD -0 Tw -(it uses )Tj -/TT8 1 Tf -3.0469 0 TD -(STKARG)Tj -/TT6 1 Tf -3.6006 0 TD -( in this case. Thus)Tj -/TT8 1 Tf --3.9808 -1.6667 TD -(:@ FIE)Tj -0 -1 TD -(FIE)Tj -T* -(:?= 2)Tj -/TT6 1 Tf --2.6667 -1.8444 TD -(will print the name and value of the second argument of )Tj -/TT8 1 Tf -25.1689 0 TD -(FIE)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --26.9692 -2.0667 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0067 Tw -[( can also be used on )]TJ -/TT8 1 Tf -9.1035 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0067 Tw -[( \(see Creating Breaks with BREAK1 below\), in which case)]TJ --14.5044 -1.2889 TD -0.0644 Tw -(the next command on )Tj -/TT8 1 Tf -10.1245 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0644 Tw -[( is treated as the rest of the teletype line. For example, if)]TJ -/TT8 1 Tf --14.3252 -1.2889 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0256 Tw -[( is )]TJ -/TT8 1 Tf -1.266 0 TD -0.0622 Tw -(\(EVAL ?= \(X Y\) GO\))Tj -/TT6 1 Tf -11.0506 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5256 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.0256 Tw -[( is evaluated, the values of )]TJ -/TT8 1 Tf -12.1001 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0256 Tw -[( and )]TJ -/TT8 1 Tf -2.244 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0256 Tw -[( printed,)]TJ --36.1877 -1.2889 TD -0 Tw -(and then the function exited with its value being printed.)Tj -/TT8 1 Tf -0 -2 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.2556 Tw -[( prints variable values using the function )]TJ -/TT8 1 Tf -20.1444 0 TD -0 Tw -(SHOWPRINT)Tj -/TT6 1 Tf -5.4009 0 TD -0.2556 Tw -[( \(see Chapter 25\), so that if)]TJ -/TT8 1 Tf --26.7454 -1.2889 TD -0 Tw -(SYSPRETTYFLG = T)Tj -/TT6 1 Tf -9.6016 0 TD -(, the value is prettyprinted.)Tj -/TT8 1 Tf --9.6016 -2.0667 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.2378 Tw -[( is a universal mnemonic for displaying argument names and their corresponding)]TJ --1.2002 -1.2889 TD -0.2489 Tw -[(values. In addition to being a break command, )]TJ -/TT8 1 Tf -23.2937 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.2489 Tw -[( is an edit macro that prints the)]TJ --24.4939 -1.2889 TD -0.0211 Tw -(argument names and values for the current expression \(see Chapter 16\), and a read macro)Tj -0 -1.2222 TD -0 Tw -(\(actually )Tj -/TT8 1 Tf -4.0976 0 TD -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0033 Tw -( is the read macro character\) which does the same for the current level list being)Tj --4.6977 -1.2889 TD -0 Tw -(read.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(PB)Tj -/TT15 1 Tf -10 0 0 10 160.8 242.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 242.4 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.1222 Tw -[(Prints the bindings of a given variable. Similar to )]TJ -/TT8 1 Tf -23.3458 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1222 Tw -(, except ascends the stack starting)Tj --24.546 -1.2889 TD -0 Tw -(from )Tj -/TT8 1 Tf -2.429 0 TD -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0222 Tw -(, and, for each frame in which the given variable is bound, prints the frame)Tj --6.6296 -1.2889 TD -0 Tw -(name and value of the variable \(with )Tj -/TT8 1 Tf -16.5313 0 TD -(PRINTLEVEL)Tj -/TT6 1 Tf -6.001 0 TD -( reset to )Tj -/TT8 1 Tf -3.7251 0 TD -(\(2 . 3\)\))Tj -/TT6 1 Tf -4.8008 0 TD -(, e.g.)Tj -/TT8 1 Tf --28.3914 -1.6667 TD -(:PB FOO)Tj -0 -1 TD -(@ FN1: 3)Tj -T* -(@ FN2: 10)Tj -T* -(@ TOP: NOBIND)Tj --2.6667 -1.8444 TD -(PB)Tj -/TT6 1 Tf -1.2002 0 TD -0.0333 Tw -[( is also a programmers assistant command \(see Chapter 13\) that can be used when not)]TJ --1.2002 -1.2889 TD -0 Tw -(in a break. )Tj -/TT8 1 Tf -5.1064 0 TD -(PB)Tj -/TT6 1 Tf -1.2002 0 TD -( is implemented via the function )Tj -/TT8 1 Tf -14.5698 0 TD -(PRINTBINDINGS)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT19 1 Tf --31.3444 -2.2156 TD -(BT)Tj -/TT15 1 Tf -10 0 0 10 160.8 112.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 112.46 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.2244 Tw -(Prints a backtrace of function names starting at )Tj -/TT8 1 Tf -22.7951 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.2244 Tw -[(. The value of )]TJ -/TT8 1 Tf -7.6129 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.2244 Tw -[( is)]TJ --38.8094 -1.2889 TD -0.0767 Tw -(changed by selecting an item from the backtrace menu \(see the Break Window Variables)Tj -0 -1.2222 TD -0.0289 Tw -(section below\) or by the )Tj -/TT8 1 Tf -10.9599 0 TD -0 Tw -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -[( command. The several nested calls in system packages such as)]TJ --11.56 -1.2889 TD -0.4033 Tw -(break, edit, and the top level executive appear as the single entries )Tj -/TT8 1 Tf -34.3571 0 TD -0 Tw -(**BREAK**)Tj -/TT6 1 Tf -5.4009 0 TD -(,)Tj -/TT8 1 Tf --39.758 -1.2889 TD -(**EDITOR**)Tj -/TT6 1 Tf -6.001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(**TOP**)Tj -/TT6 1 Tf -4.2007 0 TD -( respectively.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -33 0 obj -<< -/Length 7034 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-7)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT19 1 Tf -9 0 0 9 102 568.2 Tm -(BTV)Tj -/TT15 1 Tf -10 0 0 10 118.2 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 568.2 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Prints a backtrace of function names )Tj -/TT13 1 Tf -16.273 0 TD -(with)Tj -/TT6 1 Tf -1.833 0 TD -( variables beginning at )Tj -/TT8 1 Tf -10.2969 0 TD -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --32.6035 -2.0667 TD -0.11 Tw -(The value of each variable is printed with the function )Tj -/TT8 1 Tf -25.2973 0 TD -0 Tw -(SHOWPRINT)Tj -/TT6 1 Tf -5.4009 0 TD -0.11 Tw -[( \(see Chapter 25\), so)]TJ --30.6981 -1.2889 TD -0 Tw -(that if )Tj -/TT8 1 Tf -2.8584 0 TD -(SYSPRETTYFLG)Tj -/TT6 1 Tf -7.2012 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(= T)Tj -/TT6 1 Tf -1.8003 0 TD -(, the value is prettyprinted.)Tj -/TT19 1 Tf --14.7765 -2.2156 TD -(BTV+)Tj -/TT15 1 Tf -10 0 0 10 123.6 501.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 501.46 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -( except also prints local variables and arguments to )Tj -/TT8 1 Tf -22.8579 0 TD -(SUBR)Tj -/TT6 1 Tf -2.4004 0 TD -(s.)Tj -/TT19 1 Tf --33.5358 -2.2156 TD -(BTV*)Tj -/TT15 1 Tf -10 0 0 10 123.6 464.92 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 464.92 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -( except prints arguments to local variables.)Tj -/TT19 1 Tf --8.2775 -2.2156 TD -(BTV!)Tj -/TT15 1 Tf -10 0 0 10 123.6 428.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 428.38 Tm -([Break Command])Tj --31.8278 -1.8444 TD -(Same as )Tj -/TT8 1 Tf -3.8105 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -( except prints )Tj -/TT13 1 Tf -6.2144 0 TD -(everything)Tj -/TT6 1 Tf -4.3345 0 TD -( on the stack.)Tj -/TT8 1 Tf --21.493 -2.0667 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6989 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6989 0 TD -(BTV+)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6989 0 TD -(BTV*)Tj -/TT6 1 Tf -2.4004 0 TD -0.1989 Tw -(, and )Tj -/TT8 1 Tf -2.8406 0 TD -0 Tw -(BTV!)Tj -/TT6 1 Tf -2.4004 0 TD -0.1989 Tw -[( all take optional functional arguments. Use these arguments to)]TJ --15.139 -1.2889 TD -0.0822 Tw -(choose functions to be )Tj -/TT13 1 Tf -10.3846 0 TD -0 Tw -(skipped)Tj -/TT6 1 Tf -3 0 TD -0.0822 Tw -[( on the backtrace. As the backtrace scans down the stack, the name of)]TJ --13.3846 -1.2222 TD -0.2056 Tw -[(each stack frame is passed to each of the arguments of the backtrace command. If any of these)]TJ -T* -0.0922 Tw -(functions returns a non-)Tj -/TT8 1 Tf -10.9046 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -[( value, then that frame is skipped, and not shown in the backtrace. For)]TJ --12.7049 -1.2889 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.3235 0 TD -0.1778 Tw -(BT EXPRP)Tj -/TT6 1 Tf -4.9786 0 TD -0.0744 Tw -[( will skip all functions definied by expr definitions, )]TJ -/TT8 1 Tf -23.4952 0 TD -0.1778 Tw -(BTV \(LAMBDA \(X\) \(NOT)Tj --32.7972 -1.2889 TD -0.0122 Tw -(\(MEMB X FOOFNS\)\)\))Tj -/TT6 1 Tf -10.2261 0 TD -0.0056 Tw -[( will skip all but those functions on )]TJ -/TT8 1 Tf -15.8037 0 TD -0 Tw -(FOOFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0056 Tw -[(. If used on )]TJ -/TT8 1 Tf -5.4423 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0056 Tw -[( \(see Creating)]TJ --39.2734 -1.2889 TD -0.0911 Tw -(Breaks with BREAK1 below\) the functional argument is no longer optional, i.e., the next element on)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1711 Tw -[( must either be a list of functional arguments, or )]TJ -/TT8 1 Tf -23.1794 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1711 Tw -[( if no functional argument is to be)]TJ --29.1804 -1.2889 TD -0 Tw -(applied.)Tj -0 -2 TD -(For )Tj -/TT8 1 Tf -1.8037 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5567 0 TD -(BTV)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5567 0 TD -(BTV+)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5567 0 TD -(BTV*)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -(, and )Tj -/TT8 1 Tf -2.5562 0 TD -0 Tw -(BTV!)Tj -/TT6 1 Tf -2.4004 0 TD -0.0567 Tw -(, if Control-P is used to change a printlevel during the backtrace,)Tj --16.2316 -1.2889 TD -0 Tw -(the printlevel is restored after the backtrace is completed.)Tj -0 -2 TD -0.0211 Tw -(The value of )Tj -/TT8 1 Tf -5.8041 0 TD -0 Tw -(BREAKDELIMITER)Tj -/TT6 1 Tf -8.4014 0 TD -0.0211 Tw -(, initially the carriage return character, is printed to delimit the output)Tj --14.2054 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1289 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -( and backtrace commands. You can reset it \(e.g. to a comma\) for more linear output.)Tj -/TT19 1 Tf -0.3376 -2.2156 TD -(ARGS)Tj -/TT15 1 Tf -10 0 0 10 123.6 223.04 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 223.04 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.1378 Tw -(Prints the names of the variables bound at )Tj -/TT8 1 Tf -19.9645 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1378 Tw -(, i.e., )Tj -/TT8 1 Tf -2.5456 0 TD -0 Tw -(\(VARIABLES)Tj -/TT10 1 Tf -6.001 0 TD -( )Tj -/TT8 1 Tf -0.3878 0 TD -(LASTPOS\))Tj -/TT6 1 Tf -4.8008 0 TD -0.1378 Tw -[( \(see)]TJ --37.9003 -1.2889 TD -0.2133 Tw -[(Chapter 11\). For most cases, these are the arguments to the function entered at that)]TJ -0 -1.2222 TD -0 Tw -(position, i.e., )Tj -/TT8 1 Tf -5.877 0 TD -(\(ARGLIST \(STKNAME LASTPOS\)\))Tj -/TT6 1 Tf -16.2026 0 TD -(.)Tj -/TT19 1 Tf --24.7463 -2.2156 TD -(REVERT)Tj -/TT15 1 Tf -10 0 0 10 134.4 163.9 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 163.9 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.0022 Tw -(Goes back to position )Tj -/TT8 1 Tf -9.753 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0022 Tw -( on stack and reenters the function called at that point with)Tj --13.9537 -1.2889 TD -0.1622 Tw -[(the arguments found on the stack. If the function is not already broken, )]TJ -/TT8 1 Tf -34.2228 0 TD -0 Tw -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1622 Tw -[( first)]TJ --37.8234 -1.2889 TD -0 Tw -(breaks it, and then unbreaks it after it is reentered.)Tj -/TT8 1 Tf -0 -2 TD -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1633 Tw -[( can be given the position using the conventions described for )]TJ -/TT8 1 Tf -29.3426 0 TD -0 Tw -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.1633 Tw -(, e.g., )Tj -/TT8 1 Tf -2.8618 0 TD -0 Tw -(REVERT)Tj --36.4051 -1.2889 TD -(FOO -1)Tj -/TT6 1 Tf -3.6006 0 TD -( is equivalent to )Tj -/TT8 1 Tf -7.2632 0 TD -(@ FOO -1)Tj -/TT6 1 Tf -4.8008 0 TD -( followed by )Tj -/TT8 1 Tf -5.79 0 TD -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --25.0552 -2.0667 TD -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( is useful for restarting a computation in the situation where a bug is discovered)]TJ --3.6006 -1.2889 TD -0.1244 Tw -(at some point )Tj -/TT13 1 Tf -6.6272 0 TD -0 Tw -(below)Tj -/TT6 1 Tf -2.2959 0 TD -0.1244 Tw -[( where the problem actually occurred. )]TJ -/TT8 1 Tf -18.2031 0 TD -0 Tw -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1244 Tw -[( essentially says go)]TJ --30.7269 -1.2889 TD -0.2556 Tw -(back there and start over in a break. )Tj -/TT8 1 Tf -19.1198 0 TD -0 Tw -(REVERT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2556 Tw -[( will work correctly if the names or)]TJ --22.7204 -1.2889 TD -0 Tw -(arguments to the function, or even its function type, have been changed.)Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -36 0 obj -<< -/Length 6462 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-8)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT19 1 Tf -9 0 0 9 150 568.2 Tm -(ORIGINAL)Tj -/TT15 1 Tf -10 0 0 10 193.2 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 568.2 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.1656 Tw -(For use in conjunction with )Tj -/TT8 1 Tf -13.1666 0 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1656 Tw -[( \(see Creating Breaks with BREAK1 below\).)]TJ --19.7677 -1.2889 TD -0.1133 Tw -(Form is )Tj -/TT8 1 Tf -3.8214 0 TD -0.2711 Tw -(\(ORIGINAL . )Tj -/TT17 1 Tf -7.7434 0 TD -0 Tw -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -(. )Tj -/TT17 1 Tf -0.9767 0 TD -0 Tw -(COMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( are executed without regard for )]TJ -/TT8 1 Tf -15.2093 0 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --39.7527 -1.2889 TD -(Useful for redefining a break command in terms of itself.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(EDIT)Tj -/TT15 1 Tf -10 0 0 10 171.6 509.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 460.45 509.06 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.2133 Tw -[(Designed for use in conjunction with breaks caused by errors. Facilitates editing the)]TJ -0 -1.2222 TD -0 Tw -(expression causing the break:)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(NON-NUMERIC ARG)Tj -0 -1 TD -(NIL)Tj -T* -(\(IPLUS BROKEN\))Tj -T* -(:EDIT)Tj -T* -(IN FOO...)Tj -T* -(\(IPLUS X Z\))Tj -T* -(EDIT)Tj -T* -(*\(3 Y\))Tj -T* -(*OK)Tj -T* -(FOO)Tj -T* -(:)Tj -/TT6 1 Tf --2.6667 -1.8444 TD -(and you can continue by typing )Tj -/TT8 1 Tf -14.2988 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(, etc.)Tj --18.3994 -2.0667 TD -(This command is very simple conceptually, but its implementation is complicated by all of)Tj -0 -1.2222 TD -0.2833 Tw -(the exceptional cases involving interactions with compiled functions, breaks on user)Tj -T* -0.0311 Tw -[(functions, error breaks, breaks within breaks, et al. Therefore, we shall give the following)]TJ -T* -0.0056 Tw -(simplified explanation which will account for 90% of the situations arising in actual usage.)Tj -T* -0 Tw -(For those others, )Tj -/TT8 1 Tf -7.606 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -( will print an appropriate failure message and return to the break.)Tj -/TT8 1 Tf --10.0063 -2.0667 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -[( begins by searching up the stack beginning at )]TJ -/TT8 1 Tf -20.7177 0 TD -0 Tw -(LASTPOS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0089 Tw -[( \(set by )]TJ -/TT8 1 Tf -3.4481 0 TD -0 Tw -(@)Tj -/TT6 1 Tf -0.6001 0 TD -0.0089 Tw -[( command, initially)]TJ --31.3669 -1.2889 TD -0.2511 Tw -(position of the break\) looking for a form, i.e., an internal call to )Tj -/TT8 1 Tf -31.1844 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2511 Tw -[(. Then )]TJ -/TT8 1 Tf -4.0063 0 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf --37.5911 -1.2889 TD -0.0533 Tw -(continues from that point looking for a call to an interpreted function, or to )Tj -/TT8 1 Tf -34.1173 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0533 Tw -(. It then)Tj --36.5177 -1.2889 TD -0.0111 Tw -(calls the editor on either the )Tj -/TT8 1 Tf -12.6189 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0111 Tw -[( or the argument to )]TJ -/TT8 1 Tf -8.83 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0111 Tw -[( in such a way as to look for an)]TJ --26.2497 -1.2889 TD -0 Tw -(expression )Tj -/TT8 1 Tf -5.2657 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.2789 Tw -[( to the form that it first found. It then prints the form, and permits)]TJ --6.4659 -1.2889 TD -0.0156 Tw -[(interactive editing to begin. You can then type successive )]TJ -/TT8 1 Tf -25.9031 0 TD -0 Tw -(0)Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -(s to the editor to see the chain)Tj --26.5032 -1.2889 TD -0 Tw -(of superforms for this computation.)Tj -0 -2 TD -0.0622 Tw -(If you exit from the edit with an )Tj -/TT8 1 Tf -14.8513 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.0622 Tw -(, the break expression is reset, if possible, so that you)Tj --16.0515 -1.2889 TD -0.1344 Tw -(can continue with the computation by simply typing )Tj -/TT8 1 Tf -24.5907 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.1344 Tw -[(. \(Evaluating the new )]TJ -/TT8 1 Tf -10.6127 0 TD -0 Tw -(BRKEXP)Tj -/TT6 1 Tf --36.4035 -1.2889 TD -0.25 Tw -(will involve reevaluating the form that causes the break, so that if )Tj -/TT8 1 Tf -32.1938 0 TD -0.6011 Tw -(\(PUTD \(QUOTE)Tj --32.1938 -1.2889 TD -0 Tw -(\(FOO\)\))Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.5344 0 TD -(BIG-COMPUTATION)Tj -/TT8 1 Tf -9.0015 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.2844 Tw -[( were handled by )]TJ -/TT8 1 Tf -9.0899 0 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT17 1 Tf -0.7844 0 TD -(BIG-COMPUTATION)Tj -/TT6 1 Tf -9.0015 0 TD -0.2844 Tw -[( would be)]TJ --35.0128 -1.2889 TD -0.1789 Tw -[(reevaluated.\) However, in some situations, the break expression cannot be reset. For)]TJ -0 -1.2222 TD -0.1578 Tw -(example, if a compiled function )Tj -/TT8 1 Tf -15.0145 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1578 Tw -[( incorrectly called )]TJ -/TT8 1 Tf -8.5881 0 TD -0 Tw -(PUTD)Tj -/TT6 1 Tf -2.4004 0 TD -0.1578 Tw -[( and caused the error )]TJ -/TT8 1 Tf -10.3895 0 TD -0 Tw -(Arg)Tj --38.1927 -1.2889 TD -0.0667 Tw -(not atom )Tj -/TT6 1 Tf -5.5342 0 TD -0.0278 Tw -(followed by a break on )Tj -/TT8 1 Tf -10.5403 0 TD -0 Tw -(PUTD)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5278 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( might be able to find the form headed by)]TJ -/TT8 1 Tf --21.403 -1.2889 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.05 Tw -(, and also find )Tj -/TT13 1 Tf -6.7205 0 TD -0 Tw -(that)Tj -/TT6 1 Tf -1.6099 0 TD -0.05 Tw -[( form in some higher interpreted function. But after you corrected)]TJ --10.1307 -1.2889 TD -0.06 Tw -(the problem in the )Tj -/TT8 1 Tf -8.6355 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.06 Tw -(-form, if any, you would still not have informed )Tj -/TT8 1 Tf -21.9546 0 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.06 Tw -[( what to do)]TJ --34.7907 -1.2889 TD -0.2133 Tw -(about the immediate problem, i.e., the incorrect call to )Tj -/TT8 1 Tf -26.0333 0 TD -0 Tw -(PUTD)Tj -/TT6 1 Tf -2.4004 0 TD -0.2133 Tw -[(. However, if )]TJ -/TT8 1 Tf -7.1072 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.2133 Tw -[( were)]TJ -/TT13 1 Tf --37.3412 -1.2889 TD -0 Tw -(interpreted)Tj -/TT6 1 Tf -4.4458 0 TD -(, )Tj -/TT8 1 Tf -0.5867 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( would find the )]TJ -/TT8 1 Tf -7.4355 0 TD -0 Tw -(PUTD)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( form itself, so that when you corrected that form,)]TJ -/TT8 1 Tf --17.2688 -1.2889 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -( could use the new corrected form to reset the break expression.)Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -39 0 obj -<< -/Length 7205 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-9)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT19 1 Tf -9 0 0 9 102 568.2 Tm -(IN?)Tj -/TT15 1 Tf -10 0 0 10 118.2 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 412.45 568.2 Tm -([Break Command])Tj --31.8278 -1.8444 TD -0.0778 Tw -(Similar to )Tj -/TT8 1 Tf -4.7034 0 TD -0 Tw -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -(, but just prints parent form, and superform, but does not call the editor,)Tj --7.1038 -1.2889 TD -0 Tw -(e.g.,)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(ATTEMPT TO RPLAC NIL)Tj -0 -1 TD -(T)Tj -T* -(\(RPLACD BROKEN\))Tj -T* -(:IN?)Tj -T* -(FOO: \(RPLACD X Z\))Tj -/TT6 1 Tf --2.6667 -1.8444 TD -(Although )Tj -/TT8 1 Tf -4.5842 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.07 Tw -[( and )]TJ -/TT8 1 Tf -2.3329 0 TD -0 Tw -(IN?)Tj -/TT6 1 Tf -1.8003 0 TD -0.07 Tw -[( were designed for error breaks, they can also be useful for user)]TJ --11.1177 -1.2889 TD -0.1122 Tw -[(breaks. For example, if upon reaching a break on his function )]TJ -/TT8 1 Tf -28.9004 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -(, you determine that)Tj --30.7007 -1.2889 TD -0.1433 Tw -(there is a problem in the )Tj -/TT13 1 Tf -11.8444 0 TD -0 Tw -(call)Tj -/TT6 1 Tf -1.4067 0 TD -0.1433 Tw -[( to )]TJ -/TT8 1 Tf -1.6587 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.1433 Tw -(, you can edit the calling form and reset the break)Tj --16.7101 -1.2889 TD -0 Tw -(expression with one operation by using )Tj -/TT8 1 Tf -17.7085 0 TD -(EDIT)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 415.26 Tm -(Controlling When to Break)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 412.55 m -510.01 412.55 l -S -BT -/TT6 1 Tf -9 0 0 9 78 398.6 Tm -0.0922 Tw -(When an error occurs, the system has to decide whether to reset and unwind the stack, or go into a)Tj -0 -1.2222 TD -0.0978 Tw -[(break. In the middle of a complex computation, it is usually helpful to go into a break, so that you)]TJ -T* -0.0867 Tw -[(may examine the state of the computation. However, if the computation has only proceeded a little)]TJ -T* -0.0022 Tw -(when the error occurs, such as when you mistype a function name, you would normally just terminate)Tj -T* -0.1222 Tw -(a break, and it would be more convenient for the system to simply cause an error and unwind the)Tj -T* -0.0122 Tw -[(stack in this situatuation. The decision over whether or not to induce a break depends on the depth of)]TJ -T* -0.0456 Tw -[(computation, and the amount of time invested in the computation. The actual algorithm is described)]TJ -T* -0.2756 Tw -(in detail below; suffice it to say that the parameters affecting this decision have been adjusted)Tj -T* -0 Tw -(empirically so that trivial type-in errors do not cause breaks, but deep errors do.)Tj -/TT8 1 Tf -2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(BREAKCHECK)Tj -/TT6 1 Tf -5.9999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ERRORPOS)Tj -/TT13 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ERXN)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 236.1114 291.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 291.26 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8444 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.1511 Tw -[( is called by the error routine to decide whether or not to induce a break)]TJ --6.001 -1.2889 TD -0.0311 Tw -(when a error occurs. )Tj -/TT17 1 Tf -9.698 0 TD -0 Tw -(ERRORPOS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0311 Tw -[( is the stack position at which the error occurred; )]TJ -/TT17 1 Tf -22.0929 0 TD -0 Tw -(ERXN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -[( is)]TJ --38.9921 -1.2889 TD -0 Tw -(the error number. Returns )Tj -/TT8 1 Tf -12.0693 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if a break should occur; )Tj -/TT8 1 Tf -10.8457 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --25.3154 -2.0667 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0322 Tw -[( returns )]TJ -/TT8 1 Tf -3.7685 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0322 Tw -[( \(and a break occurs\) if the computation depth is greater than or)]TJ --10.3696 -1.2889 TD -0.0111 Tw -(equal to )Tj -/TT8 1 Tf -3.8274 0 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -(. )Tj -/TT8 1 Tf -0.7722 0 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -[( is initially set to 7, arrived at empirically by taking into)]TJ --15.4014 -1.2889 TD -0 Tw -(account the overhead due to )Tj -/TT8 1 Tf -12.8037 0 TD -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --20.2456 -2.0667 TD -0.0478 Tw -(If the depth of the computation is less than )Tj -/TT8 1 Tf -19.5731 0 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.5478 0 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0478 Tw -[( next calculates the)]TJ --31.5227 -1.2889 TD -0.3822 Tw -[(length of time spent in the computation. If this time is greater than )]TJ -/TT8 1 Tf -35.2032 0 TD -0 Tw -(HELPTIME)Tj -/TT6 1 Tf --35.2032 -1.2889 TD -0.2667 Tw -(milliseconds, initially set to 1000, then )Tj -/TT8 1 Tf -18.6459 0 TD -0 Tw -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.2667 Tw -[( returns )]TJ -/TT8 1 Tf -4.2374 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2667 Tw -[( \(and a break occurs\),)]TJ --29.4844 -1.2889 TD -0 Tw -(otherwise )Tj -/TT8 1 Tf -4.606 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --6.4062 -2.0667 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0033 Tw -( determines the computation depth by searching back up the stack looking)Tj --6.001 -1.2889 TD -0.1522 Tw -(for an )Tj -/TT8 1 Tf -3.1604 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1522 Tw -[( frame \()]TJ -/TT8 1 Tf -3.7273 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1522 Tw -(s indicate how far back unwinding is to take place)Tj --16.4893 -1.2889 TD -0.0422 Tw -[(when an error occurs, see the Catching Errors section below\). At the same time, it counts)]TJ -0 -1.2222 TD -0.1433 Tw -(the number of internal calls to )Tj -/TT8 1 Tf -14.3893 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1433 Tw -[(. As soon as the number of calls to )]TJ -/TT8 1 Tf -16.9895 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1433 Tw -[( exceeds)]TJ -/TT8 1 Tf --36.1796 -1.2889 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.5778 0 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0778 Tw -[( immediately stops searching for an )]TJ -/TT8 1 Tf -16.4862 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0778 Tw -[( and returns )]TJ -/TT8 1 Tf -5.8803 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --39.747 -1.2889 TD -(Otherwise, )Tj -/TT8 1 Tf -5.244 0 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.1478 Tw -[( continues searching until either an )]TJ -/TT8 1 Tf -16.644 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1478 Tw -[( is found or the)]TJ --32.6897 -1.2889 TD -0.2122 Tw -[(top of the stack is reached. \(If the second argument to )]TJ -/TT8 1 Tf -26.6624 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.2122 Tw -[( is )]TJ -/TT8 1 Tf -1.6393 0 TD -0 Tw -(INTERNAL)Tj -/TT6 1 Tf -4.8008 0 TD -0.2122 Tw -(, the)Tj -/TT8 1 Tf --37.9032 -1.2889 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0467 Tw -[( is ignored by )]TJ -/TT8 1 Tf -6.4708 0 TD -0 Tw -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0467 Tw -[( during this search.\) )]TJ -/TT8 1 Tf -9.5512 0 TD -0 Tw -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.0467 Tw -[( then counts the)]TJ --32.8248 -1.2889 TD -0.0244 Tw -(number of function calls between the error and the last )Tj -/TT8 1 Tf -24.7259 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0244 Tw -(, or the top of the stack.)Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -42 0 obj -<< -/Length 7120 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-10)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0022 Tw -(The number of function calls plus the number of calls to )Tj -/TT8 1 Tf -24.981 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -( \(already counted\) is used as)Tj --27.3814 -1.2889 TD -0 Tc -0 Tw -(the computation depth.)Tj -/TT8 1 Tf -0 -2 TD -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.1378 Tw -[( determines the computation time by subtracting the value of the variable)]TJ -/TT8 1 Tf --6.001 -1.2889 TD -0 Tw -(HELPCLOCK)Tj -/TT6 1 Tf -5.4009 0 TD -0.0711 Tw -[( from the value of )]TJ -/TT8 1 Tf -8.4664 0 TD -0.1711 Tw -(\(CLOCK 2\))Tj -/TT6 1 Tf -5.572 0 TD -0.0711 Tw -(, the number of milliseconds of compute time)Tj --19.4393 -1.2889 TD -0.1367 Tw -(\(see Chapter 12\). )Tj -/TT8 1 Tf -8.4368 0 TD -0 Tw -(HELPCLOCK)Tj -/TT6 1 Tf -5.4009 0 TD -0.1367 Tw -[( is rebound to the current value of )]TJ -/TT8 1 Tf -16.3775 0 TD -0.3278 Tw -(\(CLOCK 2\))Tj -/TT6 1 Tf -5.7287 0 TD -0.1367 Tw -[( for each)]TJ --35.9439 -1.2889 TD -0.1778 Tw -(computation typed in to )Tj -/TT8 1 Tf -11.6774 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -0.1778 Tw -[( or to a break. The time criterion for breaking can be)]TJ --14.6779 -1.2889 TD -0.0156 Tw -(suppressed by setting )Tj -/TT8 1 Tf -9.9309 0 TD -0 Tw -(HELPTIME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0156 Tw -[( to )]TJ -/TT8 1 Tf -1.4032 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0156 Tw -[( \(or a very big number\), or by setting )]TJ -/TT8 1 Tf -16.6722 0 TD -0 Tw -(HELPCLOCK)Tj -/TT6 1 Tf --34.6074 -1.2889 TD -(to )Tj -/TT8 1 Tf -1.491 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3689 Tw -[(. Setting )]TJ -/TT8 1 Tf -5.1921 0 TD -0 Tw -(HELPCLOCK)Tj -/TT6 1 Tf -5.4009 0 TD -0.3689 Tw -[( to )]TJ -/TT8 1 Tf -2.1098 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3689 Tw -[( will not have any effect beyond the current)]TJ --17.7944 -1.2889 TD -0.1578 Tw -(computation, because )Tj -/TT8 1 Tf -10.1954 0 TD -0 Tw -(HELPCLOCK)Tj -/TT6 1 Tf -5.4009 0 TD -0.1578 Tw -[( is rebound for each computation typed in to )]TJ -/TT8 1 Tf -21.399 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf --36.9953 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --4.9434 -2.0667 TD -0.3311 Tw -(You can suppress all error breaks by setting the top level binding of the variable)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -0.1144 Tw -[( to )]TJ -/TT8 1 Tf -1.601 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1144 Tw -[( using )]TJ -/TT8 1 Tf -3.1849 0 TD -0 Tw -(SETTOPVAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.1144 Tc -( \()Tj -/TT8 1 Tf -0.6974 0 TD -0 Tc -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -0.1144 Tw -[( is bound as a local variable in )]TJ -/TT8 1 Tf -14.4683 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --39.7549 -1.2889 TD -0.0111 Tw -(and reset to the global value of )Tj -/TT8 1 Tf -13.9372 0 TD -0 Tw -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -0.0111 Tw -[( on every )]TJ -/TT8 1 Tf -4.3854 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0111 Tw -[( line, so just )]TJ -/TT8 1 Tf -5.4942 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0111 Tw -(ing it will not)Tj --34.0183 -1.2889 TD -0.1122 Tw -[(work.\) If )]TJ -/TT8 1 Tf -4.6707 0 TD -0.27 Tw -(HELPFLAG = T)Tj -/TT6 1 Tf -7.7412 0 TD -0.1122 Tw -[( \(the initial value\), the decision whether to cause an error or)]TJ --12.4118 -1.2889 TD -0.04 Tw -(break is decided based on the computation time and the computation depth, as described)Tj -0 -1.2222 TD -0 Tw -(above. Finally, if )Tj -/TT8 1 Tf -7.8345 0 TD -(HELPFLAG = BREAK!)Tj -/TT6 1 Tf -10.2017 0 TD -(, a break will always occur following an error.)Tj -/TT4 1 Tf -10 0 0 10 102 360.4 Tm -(Break Window Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 357.69 m -558.01 357.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 343.74 Tm -(The appearance and use of break windows is controlled by the following variables:)Tj -/TT8 1 Tf -2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(WBREAK)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ONFLG)Tj -/TT8 1 Tf -3.0005 0 TD -(\) )Tj -/TT15 1 Tf -10 0 0 10 227.8561 324.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 324.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT17 1 Tf -1.0299 0 TD -(ONFLG)Tj -/TT6 1 Tf -3.0005 0 TD -0.11 Tw -[( is non-)]TJ -/TT8 1 Tf -3.4778 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.11 Tw -[(, break windows and trace windows are enabled. If )]TJ -/TT17 1 Tf -24.2025 0 TD -0 Tw -(ONFLG)Tj -/TT6 1 Tf -3.0005 0 TD -0.11 Tw -[( is )]TJ -/TT8 1 Tf -1.4348 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --39.7467 -1.2889 TD -0.0778 Tw -(break windows are disabled \(break windows do not appear, but the executive prompt is)Tj -0 -1.2222 TD -0.2111 Tw -(changed to )Tj -/TT10 1 Tf -5.5482 0 TD -0 Tw -(:)Tj -/TT6 1 Tf -0.75 0 TD -0.2111 Tw -( to indicate that the system is in a break\). )Tj -/TT8 1 Tf -21.3359 0 TD -0 Tw -(WBREAK)Tj -/TT6 1 Tf -3.6006 0 TD -0.2111 Tw -[( returns )]TJ -/TT8 1 Tf -4.1263 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2111 Tw -[( if break)]TJ --35.9611 -1.2889 TD -0 Tw -(windows are currently enabled; )Tj -/TT8 1 Tf -14.312 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT19 1 Tf --18.779 -2.2156 TD -(MaxBkMenuWidth)Tj -/TT15 1 Tf -10 0 0 10 225.6 253.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 253.66 Tm -([Variable])Tj -/TT19 1 Tf --38.2678 -1.2156 TD -(MaxBkMenuHeight)Tj -/TT15 1 Tf -10 0 0 10 231 242.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 242.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.3267 Tw -(The variables )Tj -/TT8 1 Tf -6.8252 0 TD -0 Tw -(MaxBkMenuWidth)Tj -/TT6 1 Tf -8.4014 0 TD -0.3267 Tw -[( \(default 125\) and )]TJ -/TT8 1 Tf -9.3086 0 TD -0 Tw -(MaxBkMenuHeight)Tj -/TT6 1 Tf -9.0015 0 TD -0.3267 Tw -[( \(default 300\))]TJ --33.5367 -1.2889 TD -0 Tw -(control the maximum size of the backtrace menu. If this menu is too small to contain all of)Tj -0 -1.2222 TD -(the frames in the backtrace, it is made scrollable in both vertical and horizontal directions.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(AUTOBACKTRACEFLG)Tj -/TT15 1 Tf -10 0 0 10 236.4 184.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 184.18 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1289 Tw -(This variable controls when and what kind of backtrace menu is automatically brought)Tj -0 -1.2222 TD -0 Tw -(up. The value of )Tj -/TT8 1 Tf -7.6948 0 TD -(AUTOBACKTRACEFLG)Tj -/TT6 1 Tf -9.6016 0 TD -( can be one of the following:)Tj -/TT8 1 Tf --15.0964 -2.0667 TD -(NIL)Tj -/TT6 1 Tf -2.4667 0 TD -(The backtrace menu is not automatically brought up \(the default\).)Tj -/TT8 1 Tf --1.2667 -2.0667 TD -(T)Tj -/TT6 1 Tf -1.2667 0 TD -(On error breaks the )Tj -/TT8 1 Tf -8.8726 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -( menu is brought up.)Tj -/TT8 1 Tf --12.5394 -2.0667 TD -(BT!)Tj -/TT6 1 Tf -2.4667 0 TD -(On error breaks the )Tj -/TT8 1 Tf -8.8726 0 TD -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -( menu is brought up.)Tj -/TT8 1 Tf --14.9395 -2.0667 TD -(ALWAYS)Tj -/TT6 1 Tf -4.2667 0 TD -(The )Tj -/TT8 1 Tf -2.1394 0 TD -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.2155 Tw -[( menu is brought up on both error breaks and user breaks \(calls to)]TJ --3.3396 -1.2889 TD -0 Tw -(functions broken by )Tj -/TT8 1 Tf -9.1016 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(\).)Tj -/TT8 1 Tf --16.9687 -2.0667 TD -(ALWAYS!)Tj -/TT6 1 Tf -4.8667 0 TD -(On both error breaks and user breaks the )Tj -/TT8 1 Tf -18.3809 0 TD -(BT!)Tj -/TT6 1 Tf -1.8003 0 TD -( menu is brought up.)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -45 0 obj -<< -/Length 6880 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-11)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT19 1 Tf -9 0 0 9 102 568.2 Tm -(BACKTRACEFONT)Tj -/TT15 1 Tf -10 0 0 10 172.2 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -(The backtrace menu is printed in the font )Tj -/TT8 1 Tf -18.4653 0 TD -(BACKTRACEFONT)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT19 1 Tf --28.9333 -2.2156 TD -(CLOSEBREAKWINDOWFLG)Tj -/TT15 1 Tf -10 0 0 10 204.6 531.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 531.66 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.7278 Tw -[(The system normally closes break windows after the break is exited. If)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(CLOSEBREAKWINDOWFLG)Tj -/TT6 1 Tf -11.4019 0 TD -0.0789 Tw -[( is )]TJ -/TT8 1 Tf -1.3726 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0789 Tw -[(, break windows will not be closed on exit. In this case,)]TJ --14.5748 -1.2889 TD -0 Tw -(you must close all break windows. )Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(BREAKREGIONSPEC)Tj -/TT15 1 Tf -10 0 0 10 183 473.12 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 473.12 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0056 Tw -(Break windows are positioned near the TTY window of the broken process, as determined)Tj -0 -1.2222 TD -0.0022 Tw -(by the variable )Tj -/TT8 1 Tf -6.8275 0 TD -0 Tw -(BREAKREGIONSPEC)Tj -/TT6 1 Tf -9.0015 0 TD -0.0022 Tw -(. The value of this variable is a region \(see Chapter 27\))Tj --15.8289 -1.2889 TD -0 Tw -(whose )Tj -/TT8 1 Tf -3.3125 0 TD -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1978 Tw -[( and )]TJ -/TT8 1 Tf -2.5884 0 TD -0 Tw -(BOTTOM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( fields are an offset from the )]TJ -/TT8 1 Tf -14.0041 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1978 Tw -[( and )]TJ -/TT8 1 Tf -2.5884 0 TD -0 Tw -(BOTTOM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( of the TTY)]TJ --34.4954 -1.2889 TD -0.05 Tw -[(window. The )]TJ -/TT8 1 Tf -6.5216 0 TD -0 Tw -(WIDTH)Tj -/TT6 1 Tf -3.0005 0 TD -0.05 Tw -[( and )]TJ -/TT8 1 Tf -2.2929 0 TD -0 Tw -(HEIGHT)Tj -/TT6 1 Tf -3.6006 0 TD -0.05 Tw -[( fields of )]TJ -/TT8 1 Tf -4.2076 0 TD -0 Tw -(BREAKREGIONSPEC)Tj -/TT6 1 Tf -9.0015 0 TD -0.05 Tw -[( determine the size of the)]TJ --28.6246 -1.2889 TD -0 Tw -(break window.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(TRACEWINDOW)Tj -/TT15 1 Tf -10 0 0 10 161.4 391.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 391.38 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0022 Tw -(The trace window, )Tj -/TT8 1 Tf -8.5223 0 TD -0 Tw -(TRACEWINDOW)Tj -/TT6 1 Tf -6.6011 0 TD -0.0022 Tw -(, is used for tracing functions. It is brought up when the)Tj --15.1234 -1.2889 TD -0.2833 Tw -(first tracing occurs and stays up until you close it. )Tj -/TT8 1 Tf -25.5615 0 TD -0 Tw -(TRACEWINDOW)Tj -/TT6 1 Tf -6.6011 0 TD -0.2833 Tw -[( can be set to a)]TJ --32.1626 -1.2889 TD -0 Tw -(particular window to cause the tracing formation to print there.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(TRACEREGION)Tj -/TT15 1 Tf -10 0 0 10 161.4 332.24 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 332.24 Tm -([Variable])Tj --35.6011 -1.8444 TD -(The trace window is first created in the region )Tj -/TT8 1 Tf -20.5928 0 TD -(TRACEREGION)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 292.7 Tm -(Creating Breaks with BREAK1)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 289.99 m -510.01 289.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 276.04 Tm -0.0978 Tw -(The basic function of the break package is )Tj -/TT8 1 Tf -19.4756 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0978 Tw -[(, which creates a break. A break appears to be a)]TJ --23.0762 -1.2889 TD -0.0311 Tw -(regular executive, with the prompt )Tj -/TT10 1 Tf -15.8294 0 TD -0 Tw -(:)Tj -/TT6 1 Tf -0.75 0 TD -0.0311 Tw -(, but )Tj -/TT8 1 Tf -2.7946 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0311 Tw -[( also detects and interpretes break commands \(see)]TJ --22.9746 -1.2889 TD -0 Tw -(the Break Commands section above\).)Tj -/TT8 1 Tf -2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKEXP)Tj -/TT13 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKWHEN)Tj -/TT13 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKFN)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKCOMS)Tj -/TT13 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKTYPE)Tj -/TT13 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ERRORN)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 363.9343 233.5 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 401.97 233.5 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -(If )Tj -/TT17 1 Tf -1.051 0 TD -(BRKWHEN)Tj -/TT6 1 Tf -4.2007 0 TD -0.1311 Tw -[( \(evaluated\) is non-)]TJ -/TT8 1 Tf -8.9212 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1311 Tw -(, a break occurs and commands are then taken from)Tj -/TT17 1 Tf --15.9732 -1.2889 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.2278 Tw -[( or the terminal and interpreted. All inputs not recognized by )]TJ -/TT8 1 Tf -30.3491 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.2278 Tw -[( are)]TJ --38.1503 -1.2889 TD -0 Tw -(simply passed on to the programmers assistant.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -1.0377 0 TD -(BRKWHEN)Tj -/TT6 1 Tf -4.2007 0 TD -0.1178 Tw -[( is )]TJ -/TT8 1 Tf -1.4504 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.6178 0 TD -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.1178 Tw -[( is evaluated and returned as the value of )]TJ -/TT8 1 Tf -19.5698 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1178 Tw -(, without)Tj --35.8778 -1.2889 TD -0 Tw -(causing a break.)Tj -0 -2 TD -0.1478 Tw -(When a break occurs, if )Tj -/TT17 1 Tf -11.3448 0 TD -0 Tw -(ERRORN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1478 Tw -[( is a list whose )]TJ -/TT8 1 Tf -7.4005 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1478 Tw -[( is a number, )]TJ -/TT8 1 Tf -6.5511 0 TD -0 Tw -(ERRORMESS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1478 Tw -[( \(see the)]TJ --36.0982 -1.2889 TD -0.0689 Tw -[(Signalling Errors section below\) is called to print an identifying message. If )]TJ -/TT17 1 Tf -34.5474 0 TD -0 Tw -(ERRORN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0689 Tw -[( is a)]TJ --38.148 -1.2889 TD -0.0644 Tw -(list whose )Tj -/TT8 1 Tf -4.8257 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0644 Tw -[( is not a number, )]TJ -/TT8 1 Tf -7.9863 0 TD -0 Tw -(ERRORMESS1)Tj -/TT6 1 Tf -6.001 0 TD -0.0644 Tw -[( \(see the Signalling Errors section below\) is)]TJ --20.6132 -1.2889 TD -0.2833 Tw -[(called. Otherwise, no preliminary message is printed. Following this, the message)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BRKFN)Tj -/TT8 1 Tf -3.0005 0 TD -( broken\))Tj -/TT6 1 Tf -4.8008 0 TD -( is printed.)Tj --8.4014 -2.0667 TD -(Since )Tj -/TT8 1 Tf -2.6886 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1178 Tw -[( itself calls functions, when one of these is broken, an infinite loop would)]TJ --6.2892 -1.2889 TD -0.0367 Tw -(occur. )Tj -/TT8 1 Tf -3.255 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -[( detects this situation, and prints )]TJ -/TT8 1 Tf -14.8831 0 TD -0.0867 Tw -(Break within a break on )Tj -/TT17 1 Tf -14.8357 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0367 Tw -(, and)Tj --37.7745 -1.2889 TD -0 Tw -(then simply calls the function without going into a break.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -50 0 obj -<< -/Length 9063 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-12)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0322 Tw -(The commands )Tj -/TT8 1 Tf -7.1103 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5322 0 TD -(!GO)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5322 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5322 0 TD -(!OK)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5322 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0322 Tw -[( and )]TJ -/TT11 1 Tf -2.2573 0 TD -0 Tw -<0042>Tj -/TT6 1 Tf -0.603 0 TD -0.0322 Tw -[( are the only ways to leave )]TJ -/TT8 1 Tf -12.2119 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0322 Tw -[(. The)]TJ --37.5136 -1.2889 TD -0 Tw -(command )Tj -/TT8 1 Tf -4.9227 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2244 Tw -[( causes )]TJ -/TT17 1 Tf -3.8224 0 TD -0 Tw -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -0.2244 Tw -[( to be evaluated, and saves the value on the variable)]TJ -/TT8 1 Tf --14.7461 -1.2889 TD -0 Tw -(!VALUE)Tj -/TT6 1 Tf -3.6006 0 TD -(. Other commands can be defined for )Tj -/TT8 1 Tf -16.9082 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -( via )Tj -/TT8 1 Tf -1.856 0 TD -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -( \(below\).)Tj -/TT17 1 Tf --32.5664 -2.0667 TD -(BRKTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0411 Tw -[( is )]TJ -/TT8 1 Tf -1.2971 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -[( for user breaks, )]TJ -/TT8 1 Tf -7.4965 0 TD -0 Tw -(INTERRUPT)Tj -/TT6 1 Tf -5.4009 0 TD -0.0411 Tw -[( for Control-H breaks, and )]TJ -/TT8 1 Tf -12.1396 0 TD -0 Tw -(ERRORX)Tj -/TT6 1 Tf -3.6006 0 TD -0.0411 Tw -[( for error)]TJ --35.9356 -1.2889 TD -0.1944 Tw -[(breaks. For breaks when )]TJ -/TT17 1 Tf -12.2608 0 TD -0 Tw -(BRKTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1944 Tw -[( is not )]TJ -/TT8 1 Tf -3.5023 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6944 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1944 Tw -[( will clear and save the input)]TJ --26.0591 -1.2889 TD -0.0122 Tw -[(buffer. If the break returns a value \(i.e., is not aborted via )]TJ -/TT11 1 Tf -25.8259 0 TD -0 Tw -<0042>Tj -/TT6 1 Tf -0.603 0 TD -0.0122 Tw -[( or Control-D\) the input buffer)]TJ --26.4289 -1.2222 TD -0 Tw -(is restored.)Tj -0 -2 TD -0.2256 Tw -(The fourth argument to )Tj -/TT8 1 Tf -11.5575 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.2256 Tw -[( is )]TJ -/TT17 1 Tf -1.666 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.2256 Tw -(, a list of break commands that )Tj -/TT8 1 Tf -15.3797 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf --36.4044 -1.2889 TD -0.0622 Tw -[(interprets and executes as though they were keyboard input. One can think of )]TJ -/TT17 1 Tf -35.8008 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf --35.8008 -1.2889 TD -0.0056 Tw -[(as another input file which always has priority over the keyboard. Whenever )]TJ -/TT17 1 Tf -34.5781 0 TD -0 Tw -(BRKCOM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0144 Tw -(S =)Tj --38.1787 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6378 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1378 Tw -[( reads its next command from the keyboard. Whenever )]TJ -/TT17 1 Tf -26.2303 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1378 Tw -[( is non-)]TJ -/TT8 1 Tf --36.4697 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6478 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1478 Tw -[( takes )]TJ -/TT8 1 Tf -3.0807 0 TD -0.3556 Tw -(\(CAR BRKCOMS\))Tj -/TT6 1 Tf -8.1568 0 TD -0.1478 Tw -[( as its next command and sets )]TJ -/TT17 1 Tf -14.4466 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1478 Tw -[( to )]TJ -/TT8 1 Tf -1.6676 0 TD -0 Tw -(\(CDR)Tj --37.6011 -1.2889 TD -(BRKCOMS\))Tj -/TT6 1 Tf -4.8008 0 TD -0.1244 Tw -[(. For example, suppose you wished to see the value of the variable )]TJ -/TT8 1 Tf -31.5113 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT13 1 Tf -0.3744 0 TD -(after)Tj -/TT6 1 Tf -1.833 0 TD -0.1244 Tc -( a)Tj --39.1196 -1.2889 TD -0 Tc -0.02 Tw -[(function was evaluated. You could set up a break with )]TJ -/TT17 1 Tf -24.7991 0 TD -0 Tw -(BRKCOMS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0489 Tw -[( = \(EVAL \(PRINT X\))]TJ --28.9998 -1.2889 TD -0 Tw -(OK\))Tj -/TT6 1 Tf -1.8003 0 TD -0.0944 Tw -[(, which would have the desired effect. If )]TJ -/TT17 1 Tf -19.0844 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0944 Tw -[( is non-)]TJ -/TT8 1 Tf -3.4467 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0944 Tw -(, the value of a break)Tj --30.3323 -1.2889 TD -0.0411 Tw -[(command is not printed. If you desire to see a value, you must print it yourself, as in the)]TJ -0 -1.2222 TD -0.1167 Tw -[(above example. The function )]TJ -/TT8 1 Tf -13.8563 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1167 Tw -[( \(see Chapter 15\) uses )]TJ -/TT17 1 Tf -10.4032 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1167 Tw -(: it sets up a break)Tj --31.4606 -1.2889 TD -0.0778 Tw -(with two commands; the first one prints the arguments of the function, or whatever you)Tj -0 -1.2222 TD -0.0033 Tw -(specify, and the second is the command )Tj -/TT8 1 Tf -17.8671 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0033 Tw -(, which causes the function to be evaluated and)Tj --19.0673 -1.2889 TD -0 Tw -(its value printed.)Tj -/TT10 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1211 Tw -[(: If an error occurs while interpreting the )]TJ -/TT17 1 Tf -19.5754 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1211 Tw -[( commands, )]TJ -/TT17 1 Tf -5.8643 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1211 Tw -[( is set to)]TJ -/TT8 1 Tf --36.0632 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, and a full interactive break occurs.)Tj --1.8003 -2.0667 TD -0.0544 Tw -[(The break package has a facility for redirecting ouput to a file. All output resulting from)]TJ -/TT17 1 Tf -0 -1.2222 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -[( is output to the value of the variable )]TJ -/TT8 1 Tf -16.7778 0 TD -0 Tw -(BRKFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -(, which should be the name of an)Tj --25.1792 -1.2889 TD -0.0722 Tw -[(open file. Output due to user type-in is not affected, and will always go to the terminal.)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BRKFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( is initially )Tj -/TT8 1 Tf -4.8843 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT19 1 Tf --12.3517 -2.2156 TD -(BREAKMACROS)Tj -/TT15 1 Tf -10 0 0 10 209.4 235.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 235.8 Tm -([Variable])Tj -/TT8 1 Tf --35.6011 -1.8444 TD -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0889 Tw -[( is a list of the form )]TJ -/TT8 1 Tf -9.3419 0 TD -0 Tw -(\(\()Tj -/TT17 1 Tf -1.2002 0 TD -(NAME)Tj -6 0 0 6 349.89 217.2 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 353.49 219.2 Tm -( )Tj -/TT17 1 Tf -0.8123 0 TD -(COM1)Tj -6 0 0 6 382.4 217.2 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 386 219.2 Tm -0.2122 Tw -[( ... )]TJ -/TT17 1 Tf -3.4249 0 TD -0 Tw -(COM1)Tj -6 0 0 6 438.42 217.2 Tm -(n)Tj -/TT8 1 Tf -9 0 0 9 442.02 219.2 Tm -(\)\()Tj -/TT17 1 Tf -1.2002 0 TD -(NAME)Tj -6 0 0 6 474.42 217.2 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 478.02 219.2 Tm -( )Tj -/TT17 1 Tf -0.8123 0 TD -(COM2)Tj -6 0 0 6 506.93 217.2 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 510.53 219.2 Tm -0.2122 Tw -[( ...)]TJ -/TT17 1 Tf --37.3922 -1.3944 TD -0 Tw -(COM2)Tj -6 0 0 6 195.6 204.65 Tm -(n)Tj -/TT8 1 Tf -9 0 0 9 199.2 206.65 Tm -(\)...\))Tj -/TT6 1 Tf -3.0005 0 TD -0.0444 Tw -[(. Whenever an atomic command is given to )]TJ -/TT8 1 Tf -20.0411 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0444 Tw -(, it first searches the list)Tj -/TT8 1 Tf --29.4422 -1.3944 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1978 Tw -[( for the command. If the command is equal to )]TJ -/TT17 1 Tf -22.8103 0 TD -0 Tw -(NAME)Tj -6 0 0 6 460.32 192.1 Tm -(i)Tj -/TT6 1 Tf -9 0 0 9 463.92 194.1 Tm -(, )Tj -/TT8 1 Tf -0.6978 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( simply)]TJ --36.5117 -1.3944 TD -0.22 Tw -(appends the corresponding commands to the front of )Tj -/TT17 1 Tf -25.5891 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.22 Tw -[(, and goes on. If the)]TJ --29.7898 -1.2889 TD -0.1344 Tw -(command is not found on )Tj -/TT8 1 Tf -12.3421 0 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT8 1 Tf -0.6344 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1344 Tw -[( then checks to see if it is one of the)]TJ --23.1782 -1.2889 TD -0 Tw -(built in commands, and finally, treats it as a function or variable as before.)Tj -0 -2 TD -0.3289 Tw -(If the command is not the name of a defined function, bound variable, or )Tj -/TT8 1 Tf -36.9917 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf --36.9917 -1.2889 TD -(command, )Tj -/TT8 1 Tf -5.0971 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1489 Tw -[( will attempt spelling correction using )]TJ -/TT8 1 Tf -17.9607 0 TD -0 Tw -(BREAKCOMSLST)Tj -/TT6 1 Tf -7.2012 0 TD -0.1489 Tw -[( as a spelling)]TJ --33.8596 -1.2889 TD -0.0411 Tw -[(list. If spelling correction is unsuccessful, )]TJ -/TT8 1 Tf -18.8708 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0411 Tw -[( will go ahead and call )]TJ -/TT8 1 Tf -10.4464 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( anyway,)]TJ --35.9182 -1.2889 TD -0 Tw -(since the atom may also be a misspelled history command.)Tj -0 -2 TD -0.1567 Tw -(For example, the command )Tj -/TT8 1 Tf -12.9582 0 TD -0 Tw -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1567 Tw -[( could be defined by including on )]TJ -/TT8 1 Tf -16.2476 0 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1567 Tw -[( the)]TJ --38.2072 -1.2889 TD -0 Tw -(form:)Tj -/TT8 1 Tf -9.3333 -1.9333 TD -(\(ARGS \(PRINT \(VARIABLES LASTPOS T\)\)\))Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -53 0 obj -<< -/Length 8423 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-13)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT8 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(BREAKREAD)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 185.2544 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.3633 Tw -(Useful within )Tj -/TT8 1 Tf -7.0406 0 TD -0 Tw -(BREAKMACROS)Tj -/TT6 1 Tf -6.6011 0 TD -0.3633 Tw -[( for reading arguments. If )]TJ -/TT8 1 Tf -14.036 0 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.3633 Tw -[( is non-)]TJ -/TT8 1 Tf -3.9845 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3633 Tw -[( \(the)]TJ --37.6631 -1.2889 TD -0.1444 Tw -(command in which the call to )Tj -/TT8 1 Tf -14.206 0 TD -0 Tw -(BREAKREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.1444 Tw -[( appears was not typed in\), returns the next)]TJ --19.6069 -1.2889 TD -0 Tw -(break command from )Tj -/TT8 1 Tf -9.8384 0 TD -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -(, and sets )Tj -/TT8 1 Tf -4.3457 0 TD -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(\(CDR BRKCOMS\))Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj --31.7588 -2.0667 TD -(If )Tj -/TT8 1 Tf -0.9921 0 TD -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0722 Tw -[( is )]TJ -/TT8 1 Tf -1.3593 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[( \(the command was typed in\), then )]TJ -/TT8 1 Tf -16.1804 0 TD -0 Tw -(BREAKREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.0722 Tw -[( returns either the rest)]TJ --29.9337 -1.2889 TD -0.0467 Tw -(of the commands on the line as a list \(if )Tj -/TT17 1 Tf -17.9759 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1122 Tw -[( = LINE)]TJ -/TT6 1 Tf -4.4251 0 TD -0.0467 Tw -(\) or just the next command on the)Tj --24.8015 -1.2889 TD -0 Tw -(line \(if )Tj -/TT17 1 Tf -3.1001 0 TD -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -( is not )Tj -/TT8 1 Tf -2.9189 0 TD -(LINE)Tj -/TT6 1 Tf -2.4004 0 TD -(\).)Tj --10.8198 -2.0667 TD -0.1156 Tw -(For example, the )Tj -/TT8 1 Tf -7.98 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.1156 Tw -[( command is defined as )]TJ -/TT8 1 Tf -11.3004 0 TD -0.2767 Tw -(\(BAKTRACE LASTPOS NIL)Tj -/TT10 1 Tf -13.1554 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.3656 0 TD -(\(BREAKREAD)Tj --34.0015 -1.2889 TD -0.2544 Tw -(LINE\) 0 T\))Tj -/TT6 1 Tf -7.11 0 TD -0.1067 Tw -[(. Thus, if you type )]TJ -/TT8 1 Tf -9.1532 0 TD -0 Tw -(BT)Tj -/TT6 1 Tf -1.2002 0 TD -0.1067 Tw -(, the third argument to )Tj -/TT8 1 Tf -10.8219 0 TD -0 Tw -(BAKTRACE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1067 Tw -[( is )]TJ -/TT8 1 Tf -1.4282 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1067 Tw -[(. If you)]TJ --36.3145 -1.2889 TD -0 Tw -(type )Tj -/TT8 1 Tf -2.2124 0 TD -(BT SUBRP)Tj -/TT6 1 Tf -4.8008 0 TD -(, the third argument is )Tj -/TT8 1 Tf -10.1314 0 TD -(\(SUBRP\).)Tj -/TT19 1 Tf --19.8112 -2.2156 TD -(BREAKRESETFORMS)Tj -/TT15 1 Tf -10 0 0 10 183 424.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 424.86 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0322 Tw -(If you are developing programs that change the way a user and Medley normally interact)Tj -0 -1.2222 TD -0.2111 Tw -(\(e.g., change or disable the interrupt or line-editing characters, turn off echoing, etc.\),)Tj -T* -0.1256 Tw -(debugging them by breaking or tracing may be difficult, because Medley might be in a)Tj -T* -0.2178 Tw -(funny state at the time of the break. )Tj -/TT8 1 Tf -19.1133 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.2178 Tw -[( is designed to solve this)]TJ --28.1148 -1.2889 TD -0.0233 Tw -[(problem. You put in )]TJ -/TT8 1 Tf -9.584 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.0233 Tw -[( expressions suitable for use in conjunction with)]TJ -/TT8 1 Tf --18.5854 -1.2889 TD -0 Tw -(RESETFORM)Tj -/TT6 1 Tf -5.4009 0 TD -0.1211 Tw -[( or )]TJ -/TT8 1 Tf -1.6831 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1211 Tw -[( \(see Changing and Restoring System State below\). When a)]TJ --12.4849 -1.2889 TD -0.3922 Tw -(break occurs, )Tj -/TT8 1 Tf -6.8733 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.3922 Tw -[( evaluates each expression on )]TJ -/TT8 1 Tf -15.2477 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -( )Tj -/TT13 1 Tf -0.6422 0 TD -(before)Tj -/TT6 1 Tf -2.3521 0 TD -0.3922 Tw -[( any)]TJ --37.7174 -1.2889 TD -0.3089 Tw -[(interaction with the terminal, and saves the values. When the break expression is)]TJ -0 -1.2222 TD -0.22 Tw -(evaluated via an )Tj -/TT8 1 Tf -8.202 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.72 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.22 Tw -(, or )Tj -/TT8 1 Tf -2.1309 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.72 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.22 Tw -[( first restores the state of the system with)]TJ --20.1743 -1.2889 TD -0.2844 Tw -(respect to the various expressions on )Tj -/TT8 1 Tf -18.2262 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.2844 Tw -[(. When control returns to)]TJ -/TT8 1 Tf --27.2277 -1.2889 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.2144 Tw -(, the expressions on )Tj -/TT8 1 Tf -9.7836 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.2144 Tw -[( are )]TJ -/TT13 1 Tf -2.3029 0 TD -0 Tw -(again)Tj -/TT6 1 Tf -2.2217 0 TD -0.2144 Tw -[( evaluated, and their values)]TJ --26.9102 -1.2889 TD -0.1944 Tw -[(saved. When the break is exited with an )]TJ -/TT8 1 Tf -19.8745 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6944 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6944 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1944 Tw -(, or )Tj -/TT11 1 Tf -2.0798 0 TD -0 Tw -<0042>Tj -/TT6 1 Tf -0.603 0 TD -0.1944 Tw -[( command, by typing)]TJ --29.9472 -1.2889 TD -0.0533 Tw -(Control-D, or by a )Tj -/TT8 1 Tf -8.5156 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[( or )]TJ -/TT8 1 Tf -1.5476 0 TD -0 Tw -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[( you type in, )]TJ -/TT8 1 Tf -6.0039 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0533 Tw -[( again restores state. Thus)]TJ --28.069 -1.2889 TD -0.3933 Tw -(the net effect is to make the break invisible with respect to your programs, but)Tj -0 -1.2222 TD -0 Tw -(nevertheless allow you to interact in the break in the normal fashion.)Tj -0 -2 TD -0.0733 Tw -(All user type-in is scanned to make the operations undoable, as described in Chapter 13.)Tj -0 -1.2222 TD -0.18 Tw -(At this point, )Tj -/TT8 1 Tf -6.6132 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.18 Tw -(s and )Tj -/TT8 1 Tf -2.9767 0 TD -0 Tw -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -0.18 Tw -[(s are also noticed. However, if you type in an)]TJ --17.9913 -1.2889 TD -0.1533 Tw -(expression which calls a function that then does a )Tj -/TT8 1 Tf -23.5196 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.1533 Tw -(, this )Tj -/TT8 1 Tf -2.6797 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.1533 Tw -[( will not be)]TJ --34.6007 -1.2889 TD -0 Tw -(noticed, and the effects of )Tj -/TT8 1 Tf -11.5557 0 TD -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -( will )Tj -/TT13 1 Tf -2.207 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( be reversed.)Tj --24.0972 -2.0667 TD -0.2611 Tw -(As mentioned earlier, )Tj -/TT8 1 Tf -10.5939 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.2611 Tw -[( detects Break within a break situations, and avoids)]TJ --14.1945 -1.2889 TD -0.4711 Tw -[(infinite loops. If the loop occurs because of an error, )]TJ -/TT8 1 Tf -28.5645 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.4711 Tw -[( simply rebinds)]TJ -/TT8 1 Tf --32.1651 -1.2889 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.0722 Tw -[( to )]TJ -/TT8 1 Tf -1.5165 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -(, and calls )Tj -/TT8 1 Tf -4.8592 0 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0722 Tw -[(. This situation most frequently occurs when)]TJ --19.5779 -1.2889 TD -0 Tw -(there is a bug in a function called by )Tj -/TT8 1 Tf -16.2437 0 TD -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT8 1 Tf --25.2451 -2.0667 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1311 Tw -[( expressions can also be included on )]TJ -/TT8 1 Tf -17.1868 0 TD -0 Tw -(BREAKRESETFORMS)Tj -/TT6 1 Tf -9.0015 0 TD -0.1311 Tw -[( for saving and restoring)]TJ --28.5887 -1.2889 TD -0.1567 Tw -(system parameters, e.g. )Tj -/TT8 1 Tf -11.0789 0 TD -0.3767 Tw -(\(SETQ LISPXHISTORY NIL\))Tj -/TT6 1 Tf -14.5556 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.6567 0 TD -0.3767 Tw -(\(SETQ DWIMFLG NIL\))Tj -/TT6 1 Tf -11.5551 0 TD -0.1567 Tw -(, etc.)Tj --37.8462 -1.2889 TD -0.0844 Tw -(These are handled specially by )Tj -/TT8 1 Tf -14.265 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0844 Tw -[( in that the current value of the variable is saved)]TJ --17.8656 -1.2889 TD -0 Tw -(before the )Tj -/TT8 1 Tf -4.6724 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -( is executed, and upon restoration, the variable is set back to this value.)Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -56 0 obj -<< -/Length 9428 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-14)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT4 1 Tf -0 -4.38 TD -(Signalling Errors)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 551.54 Tm -0.0111 Tw -[(With the Medley release, Interlisp errors use the Xerox Common Lisp \(XCL\) error system. Most of the)]TJ -0 -1.2222 TD -0.3056 Tw -(functions still exist for compatibility with previous releases, but the underlying machinery has)Tj -T* -0.1811 Tw -[(changed. There are some incompatible differences, especially with respect to error numbers. All)]TJ -T* -0.12 Tw -(errors are now handled by signalling an object of type )Tj -/TT8 1 Tf -25.3045 0 TD -0.2867 Tw -(XCL:CONDITION. )Tj -/TT6 1 Tf -10.1749 0 TD -0.12 Tw -[( This means the error)]TJ --35.4794 -1.2889 TD -0.0433 Tw -(numbers generated are different from the old Interlisp method of registered numbers for well-known)Tj -0 -1.2222 TD -0.2644 Tw -[(errors and error messages for all other errors. The mapping from Interlisp erors to Lisp error)]TJ -T* -0.1089 Tw -[(conditions is listed in the Error List sections below. The obsolete error numbers still generate error)]TJ -T* -0 Tw -(messages, but they are useless.)Tj -/TT8 1 Tf -2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERRORX)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ERXM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 217.0544 454.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 454.6 Tm -([Function])Tj --35.4033 -1.8444 TD -(Calls )Tj -/TT8 1 Tf -2.5282 0 TD -(CL:ERROR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0633 Tw -[( after first converting )]TJ -/TT17 1 Tf -9.8217 0 TD -0 Tw -(ERXM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0633 Tw -[( into a condition. If )]TJ -/TT17 1 Tf -9.2638 0 TD -0 Tw -(ERXM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0633 Tw -[( is )]TJ -/TT8 1 Tf -1.3415 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0633 Tw -[( the value of)]TJ -/TT8 1 Tf --34.357 -1.2889 TD -0 Tw -(*LAST-CONDITION*)Tj -/TT6 1 Tf -9.6016 0 TD -0.0511 Tw -[( is used. If )]TJ -/TT17 1 Tf -5.257 0 TD -0 Tw -(ERXM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0511 Tw -[( is an Interlisp error descriptor, it is first converted)]TJ --17.259 -1.2889 TD -0.0256 Tw -[(to a condition. If )]TJ -/TT17 1 Tf -7.8885 0 TD -0 Tw -(ERXM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0256 Tw -[( is already a condition, it is passed along unchanged. )]TJ -/TT8 1 Tf -24.0814 0 TD -0 Tw -(ERRORX)Tj -/TT6 1 Tf -3.6006 0 TD -0.0256 Tw -[( also)]TJ --37.9709 -1.2889 TD -0.2078 Tw -(sets a proceed case for )Tj -/TT8 1 Tf -11.117 0 TD -0 Tw -(XCL:PROCEED)Tj -/TT6 1 Tf -6.6011 0 TD -0.2078 Tw -(, which will attempt to re-evaluate the caller of)Tj -/TT8 1 Tf --17.7181 -1.2889 TD -0 Tw -(ERRORX)Tj -/TT6 1 Tf -3.6006 0 TD -(, much as )Tj -/TT8 1 Tf -4.4355 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -( did in older versions of the break package. )Tj -/TT8 1 Tf --11.903 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERROR)Tj -/TT4 1 Tf -10 0 0 10 182.4052 371.66 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 185.18 371.66 Tm -(MESS)Tj -6 0 0 6 206.78 369.66 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 210.38 371.66 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 234.23 369.66 Tm -(2)Tj -/TT13 1 Tf -9 0 0 9 237.83 371.66 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(NOBREAK)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 283.287 371.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 371.66 Tm -([Function])Tj --35.4033 -1.95 TD -(Prints )Tj -/TT17 1 Tf -2.8932 0 TD -(MESS)Tj -6 0 0 6 221.65 352.11 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 225.25 354.11 Tm -0.0211 Tw -[( \(using )]TJ -/TT8 1 Tf -3.3313 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0211 Tw -(\), followed by a space if )Tj -/TT17 1 Tf -10.8215 0 TD -0 Tw -(MESS)Tj -6 0 0 6 401.25 352.11 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 404.85 354.11 Tm -0.0211 Tw -[( is an atom, otherwise a carriage)]TJ --25.65 -1.3944 TD -0.0767 Tw -[(return. Then )]TJ -/TT17 1 Tf -6.2661 0 TD -0 Tw -(MESS)Tj -6 0 0 6 252.01 339.56 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 255.61 341.56 Tm -0.0767 Tw -[( is printed \(using )]TJ -/TT8 1 Tf -8.0957 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0767 Tw -[( if )]TJ -/TT17 1 Tf -1.2774 0 TD -0 Tw -(MESS)Tj -6 0 0 6 388.59 339.56 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 392.19 341.56 Tm -0.0767 Tw -[( is a string; otherwise )]TJ -/TT8 1 Tf -10.0284 0 TD -0 Tw -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0767 Tw -[(\). For)]TJ --37.2722 -1.3944 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.249 0 TD -(\(ERROR NON-NUMERIC ARG T\))Tj -/TT6 1 Tf -16.2026 0 TD -( prints)Tj -/TT8 1 Tf --17.1183 -1.6667 TD -(NON-NUMERIC ARG)Tj -0 -1 TD -(T)Tj -/TT6 1 Tf --3.3333 -1.8444 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(\(ERROR FOO "NOT A FUNCTION"\))Tj -/TT6 1 Tf -17.4049 0 TD -( prints )Tj -/TT8 1 Tf -3.1191 0 TD -(FOO NOT A FUNCTION)Tj -/TT6 1 Tf -10.8042 0 TD -(. If both )Tj -/TT17 1 Tf -3.9272 0 TD -(MESS)Tj -6 0 0 6 530.38 286.41 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 174 275.86 Tm -(and )Tj -/TT17 1 Tf -1.9429 0 TD -(MESS)Tj -6 0 0 6 213.09 273.86 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 216.69 275.86 Tm -( are )Tj -/TT8 1 Tf -1.874 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the message printed is simply )Tj -/TT8 1 Tf -13.9277 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --25.3459 -2.1722 TD -(If )Tj -/TT17 1 Tf -0.9633 0 TD -(NOBREAK)Tj -/TT8 1 Tf -4.2007 0 TD -0.1044 Tw -[( = T)]TJ -/TT6 1 Tf -2.6093 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5433 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( prints its message and then calls )]TJ -/TT8 1 Tf -15.0699 0 TD -0 Tw -(ERROR!)Tj -/TT6 1 Tf -3.6006 0 TD -0.0433 Tw -[( \(below\). Otherwise it)]TJ --29.9876 -1.2889 TD -0 Tw -(calls )Tj -/TT8 1 Tf -2.3075 0 TD -0.2578 Tw -(\(ERRORX \(17 \()Tj -/TT17 1 Tf -8.9169 0 TD -0 Tw -(MESS)Tj -6 0 0 6 296.62 242.71 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 300.22 244.71 Tm -0.2578 Tw -[( . )]TJ -/TT17 1 Tf -2.3158 0 TD -0 Tw -(MESS)Tj -6 0 0 6 342.66 242.71 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 346.26 244.71 Tm -(\)\)\))Tj -/TT6 1 Tf -1.8003 0 TD -0.1078 Tw -(, i.e., generates error number 17, in which)Tj --20.9403 -1.3944 TD -0.0711 Tw -[(case the decision as to whether to break, and whether to print a message, is handled as)]TJ -0 -1.2222 TD -0 Tw -(any other error.)Tj -0 -2 TD -0.0444 Tw -(If the value of )Tj -/TT8 1 Tf -6.5518 0 TD -0 Tw -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -0.0444 Tw -[( \(see the Controlling When to Break section above\) is )]TJ -/TT8 1 Tf -24.0006 0 TD -0 Tw -(BREAK!)Tj -/TT6 1 Tf -3.6006 0 TD -0.0444 Tw -(, a)Tj --38.9538 -1.2889 TD -0 Tw -(break will always occur, irregardless of the value of )Tj -/TT17 1 Tf -23.0498 0 TD -(NOBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --27.2505 -2.0667 TD -(If )Tj -/TT8 1 Tf -1.0188 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0989 Tw -[( causes a break, the break expression is )]TJ -/TT8 1 Tf -19.2203 0 TD -0.2367 Tw -(\(ERROR MESS)Tj -6 0 0 6 444.71 170.96 Tm -0 Tw -(1)Tj -9 0 0 9 448.31 172.96 Tm -0.2367 Tw -[( MESS)]TJ -6 0 0 6 477.44 170.96 Tm -0 Tw -(2)Tj -9 0 0 9 481.04 172.96 Tm -0.2367 Tw -[( NOBREAK\))]TJ -/TT6 1 Tf -5.6375 0 TD -0 Tw -(.)Tj --39.7531 -1.3944 TD -0.1278 Tw -(Using the )Tj -/TT8 1 Tf -4.7736 0 TD -0 Tw -(GO)Tj -/TT10 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6278 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.1278 Tw -(, , or )Tj -/TT8 1 Tf -2.5742 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1278 Tw -[( break commands \(see the Break Commands section above\))]TJ --12.7764 -1.2889 TD -0.0411 Tw -(will simply call )Tj -/TT8 1 Tf -7.1521 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( again. It is sometimes helpful to design programs that call )]TJ -/TT8 1 Tf -26.84 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf --36.9926 -1.2889 TD -0.0367 Tw -(such that if the call to )Tj -/TT8 1 Tf -9.9163 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( returns \(as the result of using the )]TJ -/TT8 1 Tf -15.3817 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -[( break command\),)]TJ --31.8991 -1.2889 TD -0.0244 Tw -[(the operation is tried again. This lrts you fix any problems within the break environment,)]TJ -0 -1.2222 TD -0 Tw -(and try to continue the operation.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(HELP)Tj -/TT6 1 Tf -2.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 200.85 93.27 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 204.45 95.27 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 228.3 93.27 Tm -(2)Tj -/TT13 1 Tf -9 0 0 9 231.9 95.27 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(BRKTYPE)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 277.357 95.27 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 95.27 Tm -([Function])Tj --35.4033 -1.95 TD -(Prints )Tj -/TT17 1 Tf -2.8921 0 TD -(MESS)Tj -6 0 0 6 221.64 75.72 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 225.24 77.72 Tm -0.02 Tw -[( and )]TJ -/TT17 1 Tf -2.2329 0 TD -0 Tw -(MESS)Tj -6 0 0 6 266.94 75.72 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 270.54 77.72 Tm -0.02 Tw -[( similar to )]TJ -/TT8 1 Tf -4.7568 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.02 Tw -(, and then calls )Tj -/TT8 1 Tf -6.9418 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.02 Tw -[( passing )]TJ -/TT17 1 Tf -3.9179 0 TD -0 Tw -(BRKTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -0.02 Tw -[( as the)]TJ -/TT8 1 Tf --37.145 -1.3944 TD -0 Tw -(BRKTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1056 Tw -[( argument. If both )]TJ -/TT17 1 Tf -9.0292 0 TD -0 Tw -(MESS)Tj -6 0 0 6 314.66 63.17 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 318.26 65.17 Tm -0.1056 Tw -[( and )]TJ -/TT17 1 Tf -2.404 0 TD -0 Tw -(MESS)Tj -6 0 0 6 361.5 63.17 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 365.1 65.17 Tm -0.1056 Tw -[( are )]TJ -/TT8 1 Tf -2.0851 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6056 0 TD -(Help!)Tj -/TT6 1 Tf -3.0005 0 TD -0.1056 Tw -[( is used for the message.)]TJ -/TT8 1 Tf --28.7248 -1.3944 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0289 Tw -[( is a convenient way to program a default condition, or to terminate some portion of)]TJ --2.4004 -1.2889 TD -0 Tw -(a program which the computation is theoretically never supposed to reach. )Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -59 0 obj -<< -/Length 6759 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-15)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT8 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(SHOULDNT)Tj -/TT13 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 179.8544 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1111 Tw -[(Useful in situations when a program detects a condition that should never occur. Calls)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( with the message arguments )]TJ -/TT17 1 Tf -13.7298 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1133 Tw -[( and )]TJ -/TT8 1 Tf -2.4195 0 TD -0.2711 Tw -(Shouldnt happen!)Tj -/TT6 1 Tf -11.0729 0 TD -0.1133 Tw -( and a )Tj -/TT8 1 Tf -3.7829 0 TD -0 Tw -(BRKTYPE)Tj -/TT6 1 Tf --35.8058 -1.2889 TD -(argument of )Tj -/TT8 1 Tf -5.7031 0 TD -(ERRORX)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf --12.5705 -2.0667 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERROR!)Tj -/TT8 1 Tf -3.5999 0 TD -(\) )Tj -/TT6 1 Tf -33.87 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0644 Tw -(Equivalent to )Tj -/TT8 1 Tf -6.3091 0 TD -0 Tw -(XCL:ABORT)Tj -/TT6 1 Tf -5.4009 0 TD -0.0644 Tw -(, except that if no )Tj -/TT8 1 Tf -8.1538 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0644 Tw -[( or )]TJ -/TT8 1 Tf -1.5698 0 TD -0 Tw -(XCL:CATCH-ABORT)Tj -/TT6 1 Tf -9.0015 0 TD -0.0644 Tw -[( isa found,)]TJ --35.2358 -1.2889 TD -0 Tw -(it unwinds to the top of the process.)Tj -/TT8 1 Tf --2.6667 -2 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(RESET)Tj -/TT8 1 Tf -2.9999 0 TD -(\) )Tj -/TT6 1 Tf -34.47 0 TD -([Function])Tj --35.4033 -1.9933 TD -(Programmable Control-D; immediately returns to the top level)Tj -/TT15 1 Tf -10 0 0 10 375.4644 446.26 Tm -(.)Tj -/TT19 1 Tf -9 0 0 9 102 426.92 Tm -(*LAST-CONDITION*)Tj -/TT8 1 Tf -9.6 0 TD -( )Tj -/TT15 1 Tf -10 0 0 10 193.8009 426.92 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 426.92 Tm -([Variable])Tj --35.6011 -1.8445 TD -(Value is the condition object most recently signaled.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(SETERRORN)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(NUM)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 203.707 390.98 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 390.98 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0033 Tw -(Converts its arguments into a condition, then sets the value of )Tj -/TT8 1 Tf -27.6417 0 TD -0 Tw -(*LAST-CONDITION*)Tj -/TT6 1 Tf -9.6016 0 TD -0.0005 Tc -0.0028 Tw -( to the)Tj --37.2432 -1.2889 TD -0 Tc -0 Tw -(result.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERRORMESS)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(U)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 169.0517 343.44 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 343.44 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1556 Tw -[(Prints message corresponding to its first argument. For example, )]TJ -/TT8 1 Tf -30.6264 0 TD -0.3722 Tw -(\(ERRORMESS \(17)Tj --30.6264 -1.2889 TD -0 Tw -(T\)\))Tj -/TT6 1 Tf -1.8003 0 TD -( would print)Tj -/TT8 1 Tf -5.5801 0 TD -(: T is not a LIST)Tj --10.047 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERRORMESS1)Tj -/TT6 1 Tf -5.9999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 185.25 293.3 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 188.85 295.3 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 212.7 293.3 Tm -(2)Tj -/TT13 1 Tf -9 0 0 9 216.3 295.3 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(MESS)Tj -6 0 0 6 240.15 293.3 Tm -(3)Tj -/TT8 1 Tf -9 0 0 9 243.75 295.3 Tm -(\))Tj -/TT15 1 Tf -10 0 0 10 249.1509 295.3 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 295.3 Tm -([Function])Tj --35.4033 -1.95 TD -(Prints the message corresponding to a )Tj -/TT8 1 Tf -17.0776 0 TD -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -( break.)Tj -/TT8 1 Tf --26.5861 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERRORSTRING)Tj -/TT6 1 Tf -6.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 179.8517 257.81 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 257.81 Tm -([Function])Tj --35.4033 -1.8444 TD -0.5689 Tw -(Returns as a new string the message corresponding to error number )Tj -/TT17 1 Tf -36.5385 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.5689 Tw -(, e.g.,)Tj -/TT8 1 Tf --37.1386 -1.2889 TD -0 Tw -(\(ERRORSTRING 10\) = NON-NUMERIC ARG)Tj -/TT6 1 Tf -21.0034 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 206.67 Tm -(Catching Errors)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 203.96 m -510.01 203.96 l -S -BT -/TT6 1 Tf -9 0 0 9 78 190.01 Tm -0.09 Tw -[(All error conditions are not caused by program bugs. For some programs, it is reasonable for some)]TJ -0 -1.2222 TD -0.1133 Tw -(errors to occur \(such as file not found errors\) and it is possible for the program to handle the error)Tj -T* -0.0833 Tw -[(itself. There are a number of functions that allow a program to catch errors, rather than abort the)]TJ -T* -0 Tw -(computation or cause a break.)Tj -/TT8 1 Tf -2.6667 -2.1489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERRORSET)Tj -/TT13 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -/TT13 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT15 1 Tf -10 0 0 10 209.1088 137.67 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 137.67 Tm -([Function])Tj --35.4033 -1.8444 TD -(Performs )Tj -/TT8 1 Tf -4.5253 0 TD -(\(EVAL )Tj -/TT17 1 Tf -4.1195 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.2167 Tw -[(. If no error occurs in the evaluation of )]TJ -/TT17 1 Tf -19.6022 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2167 Tw -(, the value of)Tj -/TT8 1 Tf --33.6478 -1.2889 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1344 Tw -[( is a list containing one element, the value of )]TJ -/TT8 1 Tf -21.1716 0 TD -0 Tw -(\(EVAL)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.3844 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1344 Tw -[(. If an error did)]TJ --32.3578 -1.2889 TD -0 Tw -(occur, the value of )Tj -/TT8 1 Tf -8.3857 0 TD -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --16.2017 -2.0667 TD -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1356 Tw -[( is a lambda function, so its arguments are evaluated )]TJ -/TT13 1 Tf -24.8521 0 TD -0 Tw -(before)Tj -/TT6 1 Tf -2.3521 0 TD -0.1356 Tw -[( it is entered, i.e.,)]TJ -/TT8 1 Tf --32.005 -1.2889 TD -0.3067 Tw -(\(ERRORSET X\))Tj -/TT6 1 Tf -7.5078 0 TD -0.1278 Tw -[( means )]TJ -/TT8 1 Tf -3.6232 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1278 Tw -[( is called with the )]TJ -/TT13 1 Tf -8.6399 0 TD -0 Tw -(value)Tj -/TT6 1 Tf -2.167 0 TD -0.1278 Tw -[( of )]TJ -/TT8 1 Tf -1.6345 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1278 Tw -[(. In most cases, )]TJ -/TT8 1 Tf -7.7571 0 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.1278 Tw -[( and)]TJ -/TT8 1 Tf --37.9305 -1.2889 TD -0 Tw -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -( \(below\) are more useful.)Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -62 0 obj -<< -/Length 7930 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-16)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0911 Tw -[(: Beginning with the Medley release, there are no longer frames named )]TJ -/TT8 1 Tf -32.9745 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf --35.1967 -1.2889 TD -(on the stack and any programs that explicity look for them must be changed.)Tj -/TT10 1 Tf -0 -2 TD -0.25 Tw -(Performance Note)Tj -/TT6 1 Tf -8.5005 0 TD -[(: When a call to )]TJ -/TT8 1 Tf -8.791 0 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.25 Tw -[( or )]TJ -/TT8 1 Tf -1.9409 0 TD -0 Tw -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.25 Tw -[( is compiled, the form to be)]TJ --26.4336 -1.2889 TD -0.1444 Tw -[(evaluated is compiled as a separate function. However, compiling a call to )]TJ -/TT8 1 Tf -35.1898 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf --35.1898 -1.2889 TD -0.2867 Tw -(does not compile )Tj -/TT17 1 Tf -8.6583 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[(. Therefore, if )]TJ -/TT17 1 Tf -7.5715 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[( performs a lengthy computation, using)]TJ -/TT8 1 Tf --21.0306 -1.2889 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -( can be much more efficient than using )Tj -/TT8 1 Tf -17.377 0 TD -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --30.8198 -2.0667 TD -0.0911 Tw -(The argument )Tj -/TT17 1 Tf -6.6803 0 TD -0 Tw -(FLAG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0911 Tw -[( controls the printing of error messages if an error occurs. If a )]TJ -/TT13 1 Tf -28.7897 0 TD -0 Tw -(break)Tj -/TT6 1 Tf --37.8704 -1.2889 TD -(occurs below an )Tj -/TT8 1 Tf -7.3906 0 TD -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -(, the message is printed regardless of the value of )Tj -/TT17 1 Tf -22.0186 0 TD -(FLAG)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --36.6104 -2.0667 TD -(If )Tj -/TT17 1 Tf -1.0544 0 TD -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.3233 Tw -[( = T)]TJ -/TT6 1 Tf -3.0471 0 TD -0.1344 Tw -(, the error message is printed; if )Tj -/TT17 1 Tf -15.1569 0 TD -0 Tw -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.3233 Tw -[( = NIL)]TJ -/TT6 1 Tf -4.2473 0 TD -0.1344 Tw -(, the error message is not)Tj --28.3064 -1.2889 TD -0 Tw -(printed \(unless )Tj -/TT8 1 Tf -6.9209 0 TD -(NLSETQGAG)Tj -/TT6 1 Tf -5.4009 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, see below\). )Tj --15.3369 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9677 0 TD -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1156 Tw -[( = INTERNAL)]TJ -/TT6 1 Tf -6.8322 0 TD -0.0478 Tw -(, this )Tj -/TT8 1 Tf -2.4686 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0478 Tw -[( is ignored for the purpose of deciding whether or)]TJ --17.4697 -1.2889 TD -0.2656 Tw -(not to break or print a message \(see the Controlling When to Break section above\).)Tj -0 -1.2222 TD -0.16 Tw -(However, the )Tj -/TT8 1 Tf -6.5871 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.16 Tw -[( is in effect for the purpose of flow of control, i.e., if an error)]TJ --11.3879 -1.2889 TD -0 Tw -(occurs, this )Tj -/TT8 1 Tf -5.2285 0 TD -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --15.5337 -2.0667 TD -(If )Tj -/TT17 1 Tf -1.0121 0 TD -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.2222 Tw -[( = NOBREAK)]TJ -/TT6 1 Tf -6.4454 0 TD -0.0922 Tw -(, no break will occur, even if the time criterion for breaking is met)Tj --9.858 -1.2889 TD -0.1444 Tw -(\(the Controlling When to Break section above\). )Tj -/TT17 1 Tf -22.365 0 TD -0 Tw -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.3467 Tw -[( = NOBREAK)]TJ -/TT6 1 Tf -6.6943 0 TD -0.1444 Tw -[( will )]TJ -/TT13 1 Tf -2.4959 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.1444 Tw -[( prevent a)]TJ --35.2887 -1.2889 TD -0.1022 Tw -(break from occurring if the error occurs more than )Tj -/TT8 1 Tf -23.4356 0 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -0.1022 Tw -[( function calls below the)]TJ --28.8365 -1.2889 TD -0.2444 Tw -(errorset, since )Tj -/TT8 1 Tf -6.8976 0 TD -0 Tw -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -0.2444 Tw -[( will stop searching before it reaches the )]TJ -/TT8 1 Tf -19.9048 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.2444 Tw -[(. To)]TJ --37.6041 -1.2889 TD -0.2722 Tw -(guarantee that no break occurs, you would also either have to reset )Tj -/TT8 1 Tf -33.1422 0 TD -0 Tw -(HELPDEPTH)Tj -/TT6 1 Tf -5.4009 0 TD -0.2722 Tw -[( or)]TJ -/TT8 1 Tf --38.543 -1.2889 TD -0 Tw -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --7.4674 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(ERSETQ)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT15 1 Tf -10 0 0 10 222.4553 295.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 295.4 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -(Evaluates )Tj -/TT17 1 Tf -4.6388 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -(, letting a break happen if an error occurs, but 9)Tj -/TT8 1 Tf -21.8341 0 TD -0 Tw -(^)Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -[( brings you back to the)]TJ -/TT8 1 Tf --29.4734 -1.2889 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -(. Performs )Tj -/TT8 1 Tf -5.3086 0 TD -(\(ERRORSET )Tj -/TT17 1 Tf -6.6011 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(T\),)Tj -/TT6 1 Tf -1.8003 0 TD -( printing error messages.)Tj -/TT8 1 Tf --22.6276 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(NLSETQ)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT15 1 Tf -10 0 0 10 222.4553 247.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 247.26 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -(Evaluates )Tj -/TT17 1 Tf -4.7377 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1889 Tw -(, witout breaking, returning )Tj -/TT8 1 Tf -13.3039 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1889 Tw -[( if an error occurs or a list containing)]TJ -/TT17 1 Tf --22.2423 -1.2889 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[( if no error occurs. Performs )]TJ -/TT8 1 Tf -14.1126 0 TD -0.4256 Tw -(\(ERRORSET )Tj -/TT17 1 Tf -7.0266 0 TD -0 Tw -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.4267 0 TD -(NIL\),)Tj -/TT6 1 Tf -3.0005 0 TD -0.1767 Tw -[( without printing error)]TJ --29.3672 -1.2889 TD -0 Tw -(messages.)Tj -/TT19 1 Tf --2.6667 -2.1489 TD -(NLSETQGAG)Tj -/TT15 1 Tf -10 0 0 10 198.6 188.12 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 188.12 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT8 1 Tf -1.1477 0 TD -(NLSETQGAG)Tj -/TT6 1 Tf -5.4009 0 TD -0.2278 Tw -[( is )]TJ -/TT8 1 Tf -1.6704 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2278 Tw -(, error messages will print, regardless of the )Tj -/TT17 1 Tf -21.4228 0 TD -0 Tw -(FLAG)Tj -/TT6 1 Tf -2.4004 0 TD -0.2278 Tw -[( argument of)]TJ -/TT8 1 Tf --33.8425 -1.2889 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.2078 Tw -(. )Tj -/TT8 1 Tf -1.1656 0 TD -0 Tw -(NLSETQGAG)Tj -/TT6 1 Tf -5.4009 0 TD -0.2078 Tw -[( effectively changes all )]TJ -/TT8 1 Tf -11.0562 0 TD -0 Tw -(NLSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.2078 Tw -(s to )Tj -/TT8 1 Tf -2.2115 0 TD -0 Tw -(ERSETQ)Tj -/TT6 1 Tf -3.6006 0 TD -0.2078 Tw -(s. )Tj -/TT8 1 Tf -1.5894 0 TD -0 Tw -(NLSETQGAG)Tj -/TT6 1 Tf -5.4009 0 TD -0.2078 Tw -[( is)]TJ --38.8263 -1.2889 TD -0 Tw -(initially )Tj -/TT8 1 Tf -3.6694 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 125.38 Tm -(Changing and Restoring System State)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 122.67 m -558.01 122.67 l -S -BT -/TT6 1 Tf -9 0 0 9 126 108.72 Tm -0.0189 Tw -(In Medley, a computation can be interrupted/aborted at any point due to an error, or more forcefully,)Tj -0 -1.2222 TD -0.1067 Tw -[(because a Control-D was typed, causing return to the top level. This situation creates problems for)]TJ -T* -0.1411 Tw -(programs that need to perform a computation with the system in a different state, e.g., different)Tj -T* -0.1622 Tw -(radix, input file, readtable, etc. but want to be able to restore the state when the computation has)Tj -T* -0.0611 Tw -[(completed. While program errors and Control-E are caught by )]TJ -/TT8 1 Tf -29.7 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0611 Tw -[(s, Control-D is not. The)]TJ --34.5008 -1.2889 TD -0.1011 Tw -(program could redefine Control-D as a user interrupt \(see Chapter 30\), check for it, reenable it, and)Tj -ET -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -65 0 obj -<< -/Length 8542 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-17)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -(call )Tj -/TT8 1 Tf -1.8681 0 TD -(RESET)Tj -/TT6 1 Tf -3.0005 0 TD -0.0922 Tw -[( or something similar. Thus the system may be left in its changed state as a result of the)]TJ --4.8686 -1.2889 TD -0 Tw -(computation being aborted. The following functions address this problem.)Tj -0 -2 TD -0.0144 Tw -(These functions cannot handle the situation where their environment is exited via anything other than)Tj -0 -1.2222 TD -0 Tw -(a normal return, an error, or a reset. Therefore, a )Tj -/TT8 1 Tf -21.6138 0 TD -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(RESUME)Tj -/TT6 1 Tf -3.6006 0 TD -(, etc., will never be seen.)Tj -/TT8 1 Tf --31.9491 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(RESETLST)Tj -/TT13 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -6 0 0 6 174.45 507 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 178.05 509 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(...)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -6 0 0 6 220.35 507 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 223.95 509 Tm -(\))Tj -/TT15 1 Tf -10 0 0 10 229.3509 509 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 509 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --25.9256 -1.95 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.1533 Tw -[( evaluates its arguments in order, after setting up an )]TJ -/TT8 1 Tf -24.8419 0 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.1533 Tw -[( so that any)]TJ --34.4435 -1.2889 TD -0.0522 Tw -(reset operations performed by )Tj -/TT8 1 Tf -13.8329 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0522 Tw -[( \(see below\) are restored when the forms have)]TJ --19.2338 -1.2889 TD -0.0511 Tw -[(been evaluated \(or an error occurs, or a Control-D is typed\). If no error occurs, the value)]TJ -0 -1.2222 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.4467 0 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.3178 Tw -[( is the value of )]TJ -/TT17 1 Tf -8.2578 0 TD -0 Tw -(FORM)Tj -6 0 0 6 278.14 455.25 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 281.74 457.25 Tm -0.3178 Tw -(, otherwise )Tj -/TT8 1 Tf -5.7415 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.3178 Tw -[( generates an error \(after)]TJ --27.8467 -1.3944 TD -0 Tw -(performing the necessary restorations\).)Tj -/TT8 1 Tf -0 -2 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -( compiles open.)Tj -/TT8 1 Tf --7.4674 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(RESETSAVE)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(X)Tj -/TT13 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 176.7026 406.76 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 406.76 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --25.9256 -1.8444 TD -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1533 Tw -[( is used within a call to )]TJ -/TT8 1 Tf -11.4591 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.1533 Tw -[( to change the system state by calling a)]TJ --21.6607 -1.2889 TD -0.1455 Tw -(function or setting a variable, while specifying how to restore the original system state)Tj -0 -1.2222 TD -0 Tw -(when the )Tj -/TT8 1 Tf -4.3643 0 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -( is exited \(normally, or with an error or Control-D\).)Tj --9.165 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9566 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[( is atomic, resets the top level value of )]TJ -/TT17 1 Tf -17.3437 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[( to the value of )]TJ -/TT17 1 Tf -7.0095 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -[(. For example, )]TJ -/TT8 1 Tf -6.8928 0 TD -0 Tw -(\(RESETSAVE)Tj --34.0028 -1.2889 TD -0.5778 Tw -(LISPXHISTORY EDITHISTORY\))Tj -/TT6 1 Tf -15.5802 0 TD -0.2411 Tw -[( resets the value of )]TJ -/TT8 1 Tf -9.6865 0 TD -0 Tw -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -0.2411 Tw -[( to the value of)]TJ -/TT8 1 Tf --32.4679 -1.2889 TD -0 Tw -(EDITHISTORY)Tj -/TT6 1 Tf -6.6011 0 TD -0.2367 Tw -(, and provides for the original value of )Tj -/TT8 1 Tf -19.178 0 TD -0 Tw -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -0.2367 Tw -[( to be restored)]TJ --32.9802 -1.2889 TD -0 Tw -(when the )Tj -/TT8 1 Tf -4.3643 0 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -( completes operation, \(or an error occurs, or a Control-D is typed\).)Tj -/TT10 1 Tf --9.165 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1156 Tw -[(: If the variable is simply rebound, the )]TJ -/TT8 1 Tf -18.3383 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1156 Tw -[( will not affect the most recent)]TJ --25.9614 -1.2889 TD -0.1722 Tw -(binding but will change only the top level value, and therefore probably not have the)Tj -0 -1.2222 TD -0 Tw -(intended effect.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9821 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( is not atomic, it is a form that is evaluated. If )]TJ -/TT17 1 Tf -21.1795 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( is )]TJ -/TT8 1 Tf -1.3393 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.5622 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( must return as its value its)]TJ --27.6637 -1.2889 TD -0.1 Tw -(former state, so that the effect of evaluating the form can be reversed, and the system)Tj -0 -1.2222 TD -0.0556 Tw -(state can be restored, by applying )Tj -/TT8 1 Tf -15.4393 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -[( of )]TJ -/TT17 1 Tf -1.49 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[( to the value of )]TJ -/TT17 1 Tf -7.104 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[(. For example, )]TJ -/TT8 1 Tf -6.9683 0 TD -0 Tw -(\(RESETSAVE)Tj --34.0021 -1.2889 TD -0.2911 Tw -(\(RADIX 8\)\))Tj -/TT6 1 Tf -6.2921 0 TD -0.1211 Tw -[( performs )]TJ -/TT8 1 Tf -4.7979 0 TD -0.2911 Tw -(\(RADIX 8\))Tj -/TT6 1 Tf -5.692 0 TD -0.1211 Tw -(, and provides for )Tj -/TT8 1 Tf -8.6129 0 TD -0 Tw -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -0.1211 Tw -[( to be reset to its original)]TJ --28.3953 -1.2889 TD -0.3056 Tw -(value when the )Tj -/TT8 1 Tf -7.9689 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.3056 Tw -[( completes by applying )]TJ -/TT8 1 Tf -11.7828 0 TD -0 Tw -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -0.3056 Tw -[( to the value returned by)]TJ -/TT8 1 Tf --27.553 -1.2889 TD -0 Tw -(\(RADIX 8\))Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -2.0667 TD -0.1744 Tw -(In the special case that )Tj -/TT8 1 Tf -11.0392 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.1744 Tw -[( of )]TJ -/TT17 1 Tf -1.7278 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1744 Tw -[( is )]TJ -/TT8 1 Tf -1.5637 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1744 Tw -(, the )Tj -/TT8 1 Tf -2.4861 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1744 Tw -[( is transparent for the purposes of)]TJ -/TT8 1 Tf --24.018 -1.2889 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1056 Tw -(, i.e. you could also have written )Tj -/TT8 1 Tf -15.3287 0 TD -0.2544 Tw -(\(RESETSAVE \(SETQ X \(RADIX 8\)\)\))Tj -/TT6 1 Tf -19.0207 0 TD -0 Tw -(,)Tj --39.7503 -1.2889 TD -0.0433 Tw -(and restoration would be performed by applying )Tj -/TT8 1 Tf -22.2828 0 TD -0 Tw -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -(, not )Tj -/TT8 1 Tf -2.2908 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -(, to the previous value)Tj --29.9745 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1289 0 TD -(RADIX)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --4.1294 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9755 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[( is not )]TJ -/TT8 1 Tf -3.0856 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -(, it is evaluated \(before )Tj -/TT17 1 Tf -10.582 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -(\), and its )Tj -/TT13 1 Tf -4.2336 0 TD -0 Tw -(value)Tj -/TT6 1 Tf -2.167 0 TD -0.0556 Tw -[( is used as the restoring expression.)]TJ --24.0441 -1.2889 TD -0 Tw -(This is useful for functions which do not return their previous setting. For example,)Tj -/TT8 1 Tf -2.6667 -1.6 TD -([RESETSAVE \(SETBRK ...\) \(LIST SETBRK \(GETBRK])Tj -/TT6 1 Tf --2.6667 -1.8444 TD -0.0178 Tw -(will restore the break characters by applying )Tj -/TT8 1 Tf -20.0727 0 TD -0 Tw -(SETBRK)Tj -/TT6 1 Tf -3.6006 0 TD -0.0178 Tw -[( to the value returned by )]TJ -/TT8 1 Tf -11.2834 0 TD -0 Tw -(\(GETBRK\))Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj --39.7575 -1.2889 TD -0.3522 Tw -(which was computed before the )Tj -/TT8 1 Tf -16.1669 0 TD -0.8456 Tw -(\(SETBRK ...\))Tj -/TT6 1 Tf -8.0467 0 TD -0.3522 Tw -[( expression was evaluated. The)]TJ --24.2136 -1.2889 TD -0.0622 Tw -(restoration expression is evaluated by )Tj -/TT13 1 Tf -18.2862 0 TD -0 Tw -(applying)Tj -/TT6 1 Tf -3.5557 0 TD -0.0622 Tw -[( its )]TJ -/TT8 1 Tf -1.6655 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0622 Tw -[( to its )]TJ -/TT8 1 Tf -2.8498 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0622 Tw -[(. This insures that the)]TJ --29.9577 -1.2889 TD -0 Tw -(arguments in the )Tj -/TT8 1 Tf -8.7583 0 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -( are not evaluated again.)Tj -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -68 0 obj -<< -/Length 9199 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-18)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(If )Tj -/TT17 1 Tf -0.9199 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.5 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( is still treated as a restoration expression. Therefore,)Tj -/TT8 1 Tf --2.9686 -1.6667 TD -(\(RESETSAVE NIL \(LIST CLOSEF FILE\)\))Tj -/TT6 1 Tf --2.6667 -1.8445 TD -0.0144 Tw -(will cause )Tj -/TT8 1 Tf -4.6856 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[( to be closed when the )]TJ -/TT8 1 Tf -10.1497 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.0144 Tw -[( that the )]TJ -/TT8 1 Tf -3.9149 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0144 Tw -[( is under completes)]TJ --31.3523 -1.2889 TD -0 Tw -(\(or an error occurs or a Control-D is typed\).)Tj -/TT8 1 Tf -0 -2 TD -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1389 Tw -[( can be called when )]TJ -/TT13 1 Tf -9.5953 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.1389 Tw -[( under a )]TJ -/TT8 1 Tf -4.3366 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.1389 Tw -[(. In this case, the restoration is)]TJ --25.4666 -1.2889 TD -0.04 Tw -(performed at the next )Tj -/TT8 1 Tf -9.9984 0 TD -0 Tw -(RESET)Tj -/TT6 1 Tf -3.0005 0 TD -0.04 Tw -(, i.e., Control-D or call to )Tj -/TT8 1 Tf -11.3508 0 TD -0 Tw -(RESET)Tj -/TT6 1 Tf -3.0005 0 TD -0.04 Tw -[(. In other words, there is an)]TJ --27.3502 -1.2889 TD -0 Tw -(implicit )Tj -/TT8 1 Tf -4.668 0 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -( at the top-level executive.)Tj -/TT8 1 Tf --9.4688 -2.0667 TD -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -( compiles open. Its value is not a useful quantity.)Tj -/TT8 1 Tf --8.0675 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(RESETVAR)Tj -/TT13 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(NEWVALUE)Tj -/TT13 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf -10 0 0 10 291.764 446.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.97 446.6 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.4411 Tw -(Simplified form of )Tj -/TT8 1 Tf -9.7047 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.4411 Tw -[( and )]TJ -/TT8 1 Tf -3.0751 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.4411 Tw -[( for resetting and restoring global)]TJ --22.9814 -1.2889 TD -0.34 Tw -[(variables. Equivalent to )]TJ -/TT8 1 Tf -12.2882 0 TD -0.8156 Tw -(\(RESETLST \(RESETSAVE)Tj -/TT10 1 Tf -12.8175 0 TD -0 Tw -( )Tj -/TT17 1 Tf -0.59 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.59 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.59 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.34 Tw -[(. For)]TJ --37.0774 -1.2889 TD -0 Tw -(example, )Tj -/TT8 1 Tf -4.2646 0 TD -0.0378 Tw -(\(RESETVAR LISPXHISTORY)Tj -/TT10 1 Tf -13.2399 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2656 0 TD -0.0378 Tw -(EDITHISTORY \(FOO\)\))Tj -/TT6 1 Tf -10.8395 0 TD -0.0156 Tw -[( resets )]TJ -/TT8 1 Tf -3.058 0 TD -0 Tw -(LISPXHISTORY)Tj -/TT6 1 Tf -7.2012 0 TD -0.0156 Tw -[( to)]TJ --38.8687 -1.2889 TD -0.1544 Tw -(the value of )Tj -/TT8 1 Tf -5.9174 0 TD -0 Tw -(EDITHISTORY)Tj -/TT6 1 Tf -6.6011 0 TD -0.1544 Tw -[( while evaluating )]TJ -/TT8 1 Tf -8.3837 0 TD -0 Tw -(\(FOO\))Tj -/TT6 1 Tf -3.0005 0 TD -0.1544 Tw -(. )Tj -/TT8 1 Tf -1.0589 0 TD -0 Tw -(RESETVAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.1544 Tw -[( compiles open. If no)]TJ --29.7624 -1.2889 TD -0 Tw -(error occurs, its value is the value of )Tj -/TT17 1 Tf -16.2134 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --21.2804 -2.2156 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(RESETVARS)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VARSLST)Tj -/TT13 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(E)Tj -6 0 0 6 251.7 360.66 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 255.3 363.66 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(E)Tj -6 0 0 6 262.95 360.66 Tm -(2)Tj -/TT13 1 Tf -9 0 0 9 266.55 363.66 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(...)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(E)Tj -6 0 0 6 292.65 360.66 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 296.25 363.66 Tm -(\))Tj -/TT15 1 Tf -10 0 0 10 301.6508 363.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 363.66 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0611 TD -0.1711 Tw -(Similar to )Tj -/TT8 1 Tf -4.8901 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1711 Tw -(, except that the variables in )Tj -/TT17 1 Tf -13.6146 0 TD -0 Tw -(VARSLST)Tj -/TT6 1 Tf -4.2007 0 TD -0.1711 Tw -[( are global variables. In a deep)]TJ --25.1057 -1.2889 TD -0 Tw -(bound system \(like Medley\), each variable is rebound using )Tj -/TT8 1 Tf -27.6509 0 TD -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --33.0518 -2.0667 TD -0.0833 Tw -(In a shallow bound system \(like Interlisp-10\) )Tj -/TT8 1 Tf -20.5492 0 TD -0 Tw -(RESETVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0833 Tw -[( and )]TJ -/TT8 1 Tf -2.3595 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0833 Tw -[( are identical, except)]TJ --30.71 -1.2889 TD -0.0144 Tw -(that the compiler insures that variables bound in a )Tj -/TT8 1 Tf -22.6295 0 TD -0 Tw -(RESETVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0144 Tw -[( are declared as )]TJ -/TT8 1 Tf -7.1652 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf --35.1956 -1.2889 TD -(\(see Chapter 18\).)Tj -/TT8 1 Tf -0 -2 TD -(RESETVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1122 Tw -(, like )Tj -/TT8 1 Tf -2.5916 0 TD -0 Tw -(GETATOMVAL)Tj -/TT6 1 Tf -6.001 0 TD -0.1122 Tw -[( and )]TJ -/TT8 1 Tf -2.4173 0 TD -0 Tw -(SETATOMVAL)Tj -/TT6 1 Tf -6.001 0 TD -0.1122 Tw -[( \(see Chapter 2\), is provided to permit)]TJ --22.4118 -1.2889 TD -0.2022 Tw -(compatibility \(i.e. transportablility\) between a shallow bound and deep bound system)Tj -0 -1.2222 TD -0 Tw -(with respect to conceptually global variables.)Tj -/TT10 1 Tf -0 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: Like )Tj -/TT8 1 Tf -2.937 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(RESETVARS)Tj -/TT6 1 Tf -5.4009 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( unless a )Tj -/TT8 1 Tf -4.0527 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -( statement is executed.)Tj -/TT8 1 Tf --29.2848 -2.2156 TD -( \()Tj -/TT19 1 Tf -1.2002 0 TD -(RESETFORM)Tj -/TT6 1 Tf -5.3998 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(RESETFORM)Tj -/TT13 1 Tf -5.4009 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -6 0 0 6 284.1 210.17 Tm -(1)Tj -/TT13 1 Tf -9 0 0 9 287.7 213.17 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -6 0 0 6 311.55 210.17 Tm -(2)Tj -/TT13 1 Tf -9 0 0 9 315.15 213.17 Tm -( )Tj -/TT17 1 Tf -0.25 0 TD -(...)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -6 0 0 6 357.45 210.17 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 361.05 213.17 Tm -(\))Tj -/TT15 1 Tf -10 0 0 10 366.4509 213.17 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 213.17 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0611 TD -0.2356 Tw -(Simplified form of )Tj -/TT8 1 Tf -9.088 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.2356 Tw -[( and )]TJ -/TT8 1 Tf -2.664 0 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2356 Tw -[( for resetting a system state when the)]TJ --21.9537 -1.2889 TD -0.3889 Tw -[(corresponding function returns as its value the previous setting. Equivalent to)]TJ -/TT8 1 Tf -0 -1.2222 TD -0.7967 Tw -(\(RESETLST \(RESETSAVE)Tj -/TT10 1 Tf -12.7986 0 TD -0 Tw -( )Tj -/TT17 1 Tf -0.5822 0 TD -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.5822 0 TD -(FORM)Tj -6 0 0 6 375.25 169.02 Tm -(1)Tj -/TT10 1 Tf -9 0 0 9 378.85 172.02 Tm -( )Tj -/TT17 1 Tf -0.5822 0 TD -(FORM)Tj -6 0 0 6 405.69 169.02 Tm -(2)Tj -/TT10 1 Tf -9 0 0 9 409.29 172.02 Tm -( )Tj -/TT19 1 Tf -0.5822 0 TD -(...)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.5822 0 TD -(FORM)Tj -6 0 0 6 457.5699 169.02 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 461.17 172.02 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.3322 Tw -[(. For example,)]TJ -/TT8 1 Tf --32.5079 -1.5056 TD -0.2089 Tw -(\(RESETFORM \(RADIX 8\) \(FOO\)\))Tj -/TT6 1 Tf -16.8293 0 TD -0.0867 Tw -(. )Tj -/TT8 1 Tf -0.9233 0 TD -0 Tw -(RESETFORM)Tj -/TT6 1 Tf -5.4009 0 TD -0.0867 Tw -[( compiles open. If no error occurs, it)]TJ --23.1535 -1.2889 TD -0 Tw -(returns the value returned by )Tj -/TT17 1 Tf -13.2588 0 TD -(FORM)Tj -6 0 0 6 314.94 143.87 Tm -(N)Tj -/TT6 1 Tf -9 0 0 9 318.54 146.87 Tm -(.)Tj --21.3933 -2.2833 TD -0.3589 Tw -(For some applications, the restoration operation must be different depending on whether the)Tj -0 -1.2222 TD -0.0422 Tw -(computation completed successfully or was aborted somehow \(e.g., by an error or by typing Control-)Tj -T* -0.0411 Tw -[(D\). To facilitate this, while the restoration operation is being performed, the value of )]TJ -/TT8 1 Tf -38.3291 0 TD -0 Tw -(RESETSTATE)Tj -/TT6 1 Tf -6.001 0 TD -0.0411 Tw -[( is)]TJ --44.33 -1.2889 TD -0.0767 Tw -(bound to )Tj -/TT8 1 Tf -4.4204 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5767 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5767 0 TD -(RESET)Tj -/TT6 1 Tf -3.0005 0 TD -0.0767 Tw -(, or )Tj -/TT8 1 Tf -1.8443 0 TD -0 Tw -(HARDRESET)Tj -/TT6 1 Tf -5.4009 0 TD -0.0767 Tw -[( depending on whether the exit was normal, due to an)]TJ --20.6202 -1.2889 TD -0.0333 Tw -(error, due to a reset \(i.e., Control-D\), or due to call to )Tj -/TT8 1 Tf -23.8697 0 TD -0 Tw -(HARDRESET)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( \(see Chapter 23\). As an example of)]TJ --29.2706 -1.2889 TD -0 Tw -(the use of )Tj -/TT8 1 Tf -4.522 0 TD -(RESETSTATE)Tj -/TT6 1 Tf -6.001 0 TD -(,)Tj -/TT8 1 Tf --6.5229 -1.6667 TD -(\(RESETLST)Tj -1.3333 -1 TD -(\(RESETSAVE \(INFILE X\))Tj -ET -endstream -endobj -69 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -71 0 obj -<< -/Length 5974 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-19)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT8 1 Tf -9 0 0 9 162 570.14 Tm -(\(LIST [LAMBDA \(FL\))Tj -4 -1 TD -(\(COND \(\(EQ RESETSTATE RESET\))Tj --4 -1 TD -( \(CLOSEF FL\))Tj -T* -( DELFILE FL])Tj -T* -[( )-7799.3(X\)\))]TJ -/TT17 1 Tf -12 -1 TD -(FORMS)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf --24.3338 -1.8444 TD -(will cause )Tj -/TT8 1 Tf -4.6567 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( to be closed and deleted only if a Control-D was typed during the execution of )Tj -/TT17 1 Tf -35.1699 0 TD -(FORMS)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --43.4273 -2.0667 TD -0.1178 Tw -(When specifying complicated restoring expressions, it is often necessary to use the old value of the)Tj -0 -1.2222 TD -0.0856 Tw -[(saving expression. For example, the following expression will set the primary input file \(to )]TJ -/TT8 1 Tf -41.775 0 TD -0 Tw -(FL)Tj -/TT6 1 Tf -1.2002 0 TD -0.0856 Tw -(\) and)Tj --42.9752 -1.2889 TD -0 Tw -(execute some forms, but reset the primary input file only if an error or Control-D occurs.)Tj -/TT8 1 Tf -4 -1.6 TD -(\(RESETLST)Tj -5.3333 -1 TD -(\(SETQ TEM \(INPUT FL\)\))Tj -T* -(\(RESETSAVE NIL)Tj -T* -( \(LIST \(LAMBDA \(X\) \(AND RESETSTATE \(INPUT X\)\)\))Tj -T* -( TEM\)\))Tj -/TT17 1 Tf -T* -(FORMS)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf --12.3338 -1.8444 TD -0.0156 Tw -(So that you will not have to explicitely save the old value, the variable )Tj -/TT8 1 Tf -31.4048 0 TD -0 Tw -(OLDVALUE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0155 Tw -[( is bound at the time)]TJ --36.2056 -1.2889 TD -0.0989 Tw -[(the restoring operation is performed to the value of the saving expression. Using this, the previous)]TJ -0 -1.2222 TD -0 Tw -(example could be recoded as:)Tj -/TT8 1 Tf -4 -1.6 TD -(\(RESETLST)Tj -5.3333 -1 TD -(\(RESETSAVE \(INPUT FL\))Tj -T* -( \(AND RESETSTATE \(INPUT OLDVALUE\)\)\))Tj -/TT17 1 Tf -T* -(FORMS)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf --12.3338 -1.8444 TD -0.06 Tw -(As mentioned earlier, restoring is performed by applying )Tj -/TT8 1 Tf -26.0591 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.06 Tw -[( of the restoring expression to the )]TJ -/TT8 1 Tf -15.4263 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --45.086 -1.2889 TD -(so )Tj -/TT8 1 Tf -1.4319 0 TD -(RESETSTATE)Tj -/TT6 1 Tf -6.001 0 TD -0.2122 Tw -[( and )]TJ -/TT8 1 Tf -2.6173 0 TD -0.5089 Tw -(\(INPUT OLDVALUE\))Tj -/TT6 1 Tf -10.1105 0 TD -0.2122 Tw -[( will not be evaluated by the )]TJ -/TT8 1 Tf -14.2795 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.2122 Tw -[(. This particular)]TJ --37.4407 -1.2889 TD -0.2978 Tw -(example works because )Tj -/TT8 1 Tf -11.6292 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.2978 Tw -[( is an nlambda function that explicitly evaluates its arguments, so)]TJ -/TT8 1 Tf --13.4295 -1.2889 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -(ing )Tj -/TT8 1 Tf -1.707 0 TD -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -[( to )]TJ -/TT8 1 Tf -1.4276 0 TD -0.0656 Tw -(\(RESETSTATE \(INPUT OLDVALUE\)\))Tj -/TT6 1 Tf -17.5339 0 TD -0.0278 Tw -[( is the same as )]TJ -/TT8 1 Tf -6.7004 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(ing )Tj -/TT8 1 Tf -1.707 0 TD -0.0656 Tw -(\(AND RESETSTATE)Tj --36.2771 -1.2889 TD -0.0222 Tw -(\(INPUT OLDVALUE\)\))Tj -/TT6 1 Tf -10.2239 0 TD -0.0089 Tw -(. )Tj -/TT8 1 Tf -0.7678 0 TD -0 Tw -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -[( also has this property, so you can use a lambda function as a restoring)]TJ --13.9922 -1.2889 TD -0 Tw -(form by enclosing it within a )Tj -/TT8 1 Tf -12.9844 0 TD -(PROGN)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --15.9849 -2.0667 TD -0.4156 Tw -(The function )Tj -/TT8 1 Tf -6.712 0 TD -0 Tw -(RESETUNDO)Tj -/TT6 1 Tf -5.4009 0 TD -0.4156 Tw -[( \(see Chapter 13\) can be used in conjunction with )]TJ -/TT8 1 Tf -26.0564 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.4156 Tw -[( and)]TJ -/TT8 1 Tf --42.9701 -1.2889 TD -0 Tw -(RESETSAVE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0144 Tw -[( to provide a way of specifying that the system be restored to its prior state by )]TJ -/TT13 1 Tf -34.8876 0 TD -0 Tw -(undoing)Tj -/TT6 1 Tf -3.3901 0 TD -0.0144 Tw -[( the)]TJ --43.6787 -1.2889 TD -0 Tw -(side effects of the computations performed under the )Tj -/TT8 1 Tf -23.7393 0 TD -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 188 Tm -(Error List)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 185.29 m -510.01 185.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 171.34 Tm -0.1622 Tw -[(There are currently fifty-plus types of errors in Medley. Some of these errors are implementation)]TJ -0 -1.2222 TD -0.03 Tw -[(dependent, i.e., appear in Medley but may not appear in other Interlisp systems. The error number is)]TJ -T* -0.0256 Tw -(set internally by the code that detects the error before it calls the error handling functions, and is used)Tj -T* -0 Tw -(by )Tj -/TT8 1 Tf -1.3594 0 TD -(ERRORMESS)Tj -/TT6 1 Tf -5.4009 0 TD -( for printing error messages.)Tj --6.7603 -2.0667 TD -0.2533 Tw -[(Most errors will print the offending expression as part of the error message. Error number 18)]TJ -0 -1.2222 TD -0.2844 Tw -(\(Control-B\) always causes a break \(unless )Tj -/TT8 1 Tf -20.3092 0 TD -0 Tw -(HELPFLAG)Tj -/TT6 1 Tf -4.8008 0 TD -0.2845 Tw -[( is )]TJ -/TT8 1 Tf -1.7837 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2844 Tw -[(\). All other errors cause breaks if)]TJ -/TT8 1 Tf --28.694 -1.2889 TD -0 Tw -(BREAKCHECK)Tj -/TT6 1 Tf -6.001 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( \(see Controlling When to Break above\).)Tj --10.3052 -2.0667 TD -0.2011 Tw -(The folloing error messages are arranged numerically with the printed message next to the error)Tj -0 -1.2222 TD -0.23 Tw -(number. )Tj -/TT17 1 Tf -4.7051 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.23 Tw -[( is the offending expression in each error message. The obsolete error numbers still)]TJ --5.3052 -1.2889 TD -0.2567 Tw -[(generate error messags, but they arent particularly useful. For information on how to use the)]TJ -0 -1.2222 TD -0 Tw -(Common Lisp error conditions in your own programs, see )Tj -/TT13 1 Tf -26.0444 0 TD -(Common Lisp: the Language)Tj -/TT6 1 Tf -11.5571 0 TD -( by Steele.)Tj -ET -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -74 0 obj -<< -/Length 5710 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-20)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 127.5 569.54 Tm -[(0)-1333.3(Obsolete.)]TJ -0 -1.6667 TD -[(1)-1333.3(Obsolete.)]TJ -T* -(2)Tj -/TT19 1 Tf -1.8333 0 TD -(Stack Overflow)Tj -/TT6 1 Tf -0 -1.7333 TD -0.0322 Tw -(Occurs when computation is too deep, either with respect to number of function calls, or number)Tj -0 -1.2222 TD -0.1522 Tw -[(of variable bindings. Usually because of a non-terminating recursive computation, i.e., a bug.)]TJ -T* -0 Tw -(Condition type: )Tj -/TT8 1 Tf -7.1963 0 TD -(STACK-OVERFLOW)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --17.431 -1.7333 TD -(3)Tj -/TT19 1 Tf -1.8333 0 TD -(RETURN to nonexistant block: )Tj -/TT21 1 Tf -17.4028 0 TD -(X)Tj -/TT6 1 Tf --17.4028 -1.7333 TD -(Call to )Tj -/TT8 1 Tf -3.1631 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -( when not inside of an interpreted )Tj -/TT8 1 Tf -15.2842 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(. Condition type: )Tj -/TT8 1 Tf -8.4463 0 TD -(ILLEGAL-RETURN)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --43.1292 -1.7333 TD -(4)Tj -/TT21 1 Tf -1.8333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a LIST)Tj -/TT8 1 Tf --0.6001 -1.7333 TD -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -0.4244 Tw -[( called on a non-list. Condition type: )]TJ -/TT8 1 Tf -21.3094 0 TD -0 Tw -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -14.2222 0 TD -(culprit)Tj -/TT8 1 Tf --39.1321 -1.2222 TD -(:EXPECTED-TYPE LIST)Tj -/TT6 1 Tf --1.8333 -1.7333 TD -(5)Tj -/TT19 1 Tf -1.8333 0 TD -(Device error: )Tj -/TT21 1 Tf -8.4014 0 TD -(X)Tj -/TT6 1 Tf --8.4014 -1.7333 TD -(An error with the local disk drive. Condition type: )Tj -/TT8 1 Tf -22.981 0 TD -(XCL:SIMPLE-DEVICE-ERROR )Tj -/TT17 1 Tf -14.4023 0 TD -(message)Tj -/TT6 1 Tf --39.2166 -1.7333 TD -(6)Tj -/TT19 1 Tf -1.8333 0 TD -(Serious condition XCL:ATTEMPT-TO-CHANGE-CONSTANT occured.)Tj -/TT6 1 Tf -0 -1.7333 TD -(Via )Tj -/TT8 1 Tf -1.7632 0 TD -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -(. Condition type: )Tj -/TT8 1 Tf -8.1963 0 TD -(XCL:ATTEMPT-TO-CHANGE-CONSTANT)Tj -/TT6 1 Tf --17.4344 -1.7333 TD -(7)Tj -/TT19 1 Tf -1.8333 0 TD -(Attempt to rplac NIL with )Tj -/TT21 1 Tf -15.6025 0 TD -(X)Tj -/TT6 1 Tf --15.6025 -1.7333 TD -0.0922 Tw -(Attempt either to )Tj -/TT8 1 Tf -8.1702 0 TD -0 Tw -(RPLACA)Tj -/TT6 1 Tf -3.6006 0 TD -0.0922 Tw -[( or to )]TJ -/TT8 1 Tf -2.8397 0 TD -0.2222 Tw -(RPLACD NIL)Tj -/TT6 1 Tf -6.2232 0 TD -0.0922 Tw -[( with something other than )]TJ -/TT8 1 Tf -12.7316 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -[(. Condition type:)]TJ -/TT8 1 Tf --35.3656 -1.2222 TD -0 Tw -(XCL:ATTEMPT-TO-RPLAC-NIL )Tj -/TT17 1 Tf -15.0024 0 TD -(message)Tj -/TT6 1 Tf --16.8358 -1.7333 TD -(8)Tj -/TT19 1 Tf -1.8333 0 TD -(GO to a nonexistant tag: )Tj -/TT21 1 Tf -15.0024 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --15.6025 -1.7333 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -( when not inside of a )Tj -/TT8 1 Tf -9.4878 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -( to nonexistent label. Condition type: )Tj -/TT8 1 Tf -17.0659 0 TD -(ILLEGAL-GO )Tj -/TT17 1 Tf -6.6011 0 TD -(tag)Tj -/TT6 1 Tf --41.4798 -1.7333 TD -(9)Tj -/TT19 1 Tf -1.8333 0 TD -(File wont open: )Tj -/TT21 1 Tf -10.2017 0 TD -(X)Tj -/TT6 1 Tf --10.2017 -1.7333 TD -(From )Tj -/TT8 1 Tf -2.6299 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -( \(see Chapter 24\). Condition type: )Tj -/TT8 1 Tf -15.5864 0 TD -(XCL:FILE-WONT-OPEN )Tj -/TT17 1 Tf -11.4019 0 TD -(pathname)Tj -/TT6 1 Tf --37.9525 -1.7333 TD -(10)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a NUMBER)Tj -/TT6 1 Tf --0.6001 -1.7333 TD -0.28 Tw -(A numeric function e.g., )Tj -/TT8 1 Tf -12.0668 0 TD -0 Tw -(PLUS)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.78 0 TD -(TIMES)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.78 0 TD -(GREATERP)Tj -/TT6 1 Tf -4.8008 0 TD -0.28 Tw -(, expected a number and didnt get one.)Tj --23.8284 -1.2889 TD -0 Tw -(Condition type: )Tj -/TT8 1 Tf -7.4463 0 TD -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -13.2022 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED TYPE CL:NUMBER)Tj -/TT6 1 Tf --27.1825 -1.7333 TD -(11)Tj -/TT19 1 Tf -2.3333 0 TD -(Symbol name too long)Tj -/TT6 1 Tf -0 -1.7333 TD -0.0633 Tw -(Attempted to create a symbol \(via )Tj -/TT8 1 Tf -15.6261 0 TD -0 Tw -(PACK)Tj -/TT6 1 Tf -2.4004 0 TD -0.0633 Tw -(, or typing one in, or reading from a file\) with too many)Tj --18.0265 -1.2889 TD -0.0911 Tw -[(characters. In Medley, the maximum number of characters in a symbol is 255. Condition type:)]TJ -/TT8 1 Tf -0 -1.1556 TD -0 Tw -(XCL:SYMBOL-NAME-TOO-LONG)Tj -/TT6 1 Tf --2.3333 -1.7333 TD -(12)Tj -/TT19 1 Tf -2.3333 0 TD -(Symbol hash table full)Tj -/TT6 1 Tf -0 -1.7333 TD -(No room for any more \(new\) atoms. Condition type: )Tj -/TT8 1 Tf -23.8975 0 TD -(XCL:SYMBOL-HT-FULL)Tj -/TT6 1 Tf --26.2308 -1.7333 TD -(13)Tj -/TT19 1 Tf -2.3333 0 TD -(Stream not open: )Tj -/TT21 1 Tf -10.2017 0 TD -(X)Tj -/TT6 1 Tf --10.2017 -1.7333 TD -0.13 Tw -(From an I/O function, e.g., )Tj -/TT8 1 Tf -12.8331 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.63 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.63 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.13 Tw -[(. Condition type: )]TJ -/TT8 1 Tf -8.8463 0 TD -0 Tw -(XCL:STREAM-NOT-OPEN)Tj -/TT17 1 Tf --31.9409 -1.2222 TD -(stream)Tj -/TT6 1 Tf --2.3333 -1.7333 TD -(14)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a SYMBOL.)Tj -/TT8 1 Tf --0.6001 -1.7333 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5467 0 TD -(PUTPROP)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5467 0 TD -(GETTOPVAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.0467 Tw -[(, etc., given a non-atomic argument. Condition type: )]TJ -/TT8 1 Tf -24.2421 0 TD -0 Tw -(XCL:SMPLE-)Tj --37.3373 -1.2222 TD -(TYPE-ERROR )Tj -/TT17 1 Tf -6.6011 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED-TYPE CL:SYMBOL)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R -/TT21 76 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -78 0 obj -<< -/Length 5199 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-21)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT6 1 Tf -9 0 0 9 75 569.54 Tm -[(15)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(16)Tj -/TT19 1 Tf -2.3333 0 TD -(End of file )Tj -/TT21 1 Tf -7.2012 0 TD -(X)Tj -/TT6 1 Tf --7.2012 -1.7333 TD -0.0267 Tw -(From an input function, e.g., )Tj -/TT8 1 Tf -12.9908 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(READC)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(RATOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.0267 Tw -[(. After the error occurs, the file will still be left)]TJ --22.4455 -1.2889 TD -0 Tw -(open. Condition type: )Tj -/TT8 1 Tf -10.4043 0 TD -(END-OF-FILE )Tj -/TT17 1 Tf -7.2012 0 TD -(stream)Tj -/TT6 1 Tf --19.9388 -1.7333 TD -(17)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT21 1 Tf -0.6001 0 TD -(varying messages)Tj -/TT19 1 Tf -9.6016 0 TD -(.)Tj -/TT6 1 Tf --10.8018 -1.7333 TD -(Call to )Tj -/TT8 1 Tf -3.1631 0 TD -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -( \(see Signalling Errors above\). Condition type: )Tj -/TT8 1 Tf -21.1182 0 TD -(INTERLISP-ERROR MESSAGE)Tj -/TT6 1 Tf --29.6151 -1.7333 TD -[(18)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(19)Tj -/TT19 1 Tf -2.3333 0 TD -(Illegal stack arg: )Tj -/TT21 1 Tf -11.4019 0 TD -(X)Tj -/TT6 1 Tf --11.4019 -1.7333 TD -0.0322 Tw -[(A stack function expected a stack position and was given something else. This might occur if the)]TJ -0 -1.2222 TD -0.0878 Tw -[(arguments to a stack function are reversed. Also occurs if you specified a stack position with a)]TJ -T* -0.0978 Tw -[(function name, and that function was not found on the stack \(see Chapter 11\). Condition type:)]TJ -/TT8 1 Tf -T* -0 Tw -(ILLEGAL-STACK-ARG )Tj -/TT17 1 Tf -10.8018 0 TD -(arg)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --14.9354 -1.7333 TD -[(20)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(21)Tj -/TT19 1 Tf -2.3333 0 TD -(Array space full)Tj -/TT6 1 Tf -0 -1.7333 TD -0.1122 Tw -(System will first initiate a garbage collection of array space, and if no array space is reclaimed,)Tj -0 -1.2222 TD -0 Tw -(will then generate this error. Condition type: )Tj -/TT8 1 Tf -20.502 0 TD -(XCL:ARRAY-SPACE-FULL)Tj -/TT6 1 Tf -12.002 0 TD -(.)Tj --34.8372 -1.7333 TD -(22)Tj -/TT19 1 Tf -2.3333 0 TD -(File system resources exceeded)Tj -/TT6 1 Tf -18.0029 0 TD -(: )Tj -/TT21 1 Tf -0.75 0 TD -(X)Tj -/TT6 1 Tf --18.7529 -1.7333 TD -0.0556 Tw -[(Includes no more disk space, disk quota exceeded, directory full, etc. Condition type: )]TJ -/TT8 1 Tf -39.1351 0 TD -0 Tw -(XCL:FS-)Tj --39.1351 -1.2222 TD -(RESOURCE-EXCEEDED)Tj -/TT6 1 Tf --2.3333 -1.7333 TD -(23)Tj -/TT19 1 Tf -2.3333 0 TD -(File not found)Tj -/TT6 1 Tf -0 -1.7333 TD -(File name does not correspond to a file in the corresponding directory. Can also occur if file name)Tj -0 -1.2222 TD -(is ambiguous. Condition type: )Tj -/TT8 1 Tf -14.1201 0 TD -(XCL:FILE-NOT-FOUND)Tj -/TT6 1 Tf -10.8018 0 TD -( )Tj -/TT13 1 Tf -0.25 0 TD -(pathname)Tj -/TT6 1 Tf --27.5052 -1.7333 TD -[(24)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(25)Tj -/TT19 1 Tf -2.3333 0 TD -(Invalid argument: )Tj -/TT21 1 Tf -10.8018 0 TD -(X)Tj -/TT6 1 Tf --10.8018 -1.7333 TD -0.1222 Tw -(A form ends in a non-list other than )Tj -/TT8 1 Tf -17.0745 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1222 Tw -(, e.g., )Tj -/TT8 1 Tf -2.7796 0 TD -0.2922 Tw -(\(CONS T . 3\))Tj -/TT6 1 Tf -8.0778 0 TD -0.1222 Tw -[(. Condition type: )]TJ -/TT8 1 Tf -8.8074 0 TD -0 Tw -(INVALID-)Tj --38.5396 -1.2222 TD -(ARGUMENT-LIST )Tj -/TT17 1 Tf -8.4014 0 TD -(argument)Tj -/TT6 1 Tf --10.7347 -1.7333 TD -(26)Tj -/TT19 1 Tf -2.3333 0 TD -(Hash table full)Tj -/TT6 1 Tf -9.0015 0 TD -(: )Tj -/TT21 1 Tf -0.75 0 TD -(X)Tj -/TT6 1 Tf --9.7515 -1.7333 TD -(See hash array functions, Chapter 6. Condition type: )Tj -/TT8 1 Tf -23.8364 0 TD -(XCL:HASH-TABLE-FULL )Tj -/TT17 1 Tf -12.002 0 TD -(table)Tj -/TT6 1 Tf --38.1717 -1.7333 TD -(27)Tj -/TT19 1 Tf -2.3333 0 TD -(Invalid argument: )Tj -/TT21 1 Tf -10.8018 0 TD -(X)Tj -/TT6 1 Tf --10.8018 -1.7333 TD -0.0522 Tw -[(Catch-all error. Currently used by )]TJ -/TT8 1 Tf -15.8119 0 TD -0 Tw -(PUTD)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5522 0 TD -(EVALA)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5522 0 TD -(ARG)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5522 0 TD -(FUNARG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[(, etc. Condition type: )]TJ -/TT8 1 Tf -10.2586 0 TD -0 Tw -(INVALID-)Tj --38.5289 -1.2222 TD -(ARGUMENT-LIST )Tj -/TT17 1 Tf -8.4014 0 TD -(argument)Tj -/TT6 1 Tf --10.7347 -1.7333 TD -(28)Tj -/TT19 1 Tf -2.3333 0 TD -(X is not a ARRAYP.)Tj -/TT8 1 Tf -0 -1.7333 TD -(ELT)Tj -/TT6 1 Tf -1.8003 0 TD -0.2422 Tw -[( or )]TJ -/TT8 1 Tf -1.9254 0 TD -0 Tw -(SETA)Tj -/TT6 1 Tf -2.4004 0 TD -0.2422 Tw -[( given an argument that is not a legal array \(see Chapter 5\). Condition type:)]TJ -/TT8 1 Tf --6.126 -1.2222 TD -0 Tw -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -13.2022 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED-TYPE ARRAYP)Tj -/TT6 1 Tf --19.7362 -1.7333 TD -[(29)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(30)Tj -/TT19 1 Tf -2.3333 0 TD -(Stack ptr ahs been released NOBIND)Tj -/TT6 1 Tf -0 -1.7333 TD -0.1122 Tw -(A released stack pointer was supplied as a stack descriptor for a purpose other than as a stack)Tj -0 -1.2222 TD -0 Tw -(pointer to be re-used \(see Chapter 11\). Condition type: )Tj -/TT8 1 Tf -24.7847 0 TD -(STACK-POINTER-REALEASED )Tj -/TT17 1 Tf -14.4023 0 TD -(name)Tj -ET -endstream -endobj -79 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R -/TT21 76 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -82 0 obj -<< -/Length 4429 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-22)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 123 569.54 Tm -(31)Tj -/TT19 1 Tf -2.3333 0 TD -(Serious condition XCL:STORAGE-EXHAUSTED occured.)Tj -/TT6 1 Tf -0 -1.7333 TD -0.1755 Tw -(Following a garbage collection, if not enough words have been collected, and there is no un-)Tj -0 -1.2222 TD -0.2333 Tw -[(allocated space left in the system, this error is generated. Condition type: )]TJ -/TT8 1 Tf -36.1348 0 TD -0 Tw -(XCL:STORAGE-)Tj --36.1348 -1.2222 TD -(EXHAUSTED)Tj -/TT6 1 Tf --2.3333 -1.7333 TD -[(32)-1333.3(Obsolete)]TJ -0 -1.6667 TD -[(33)-1333.3(Obsolete)]TJ -T* -(34)Tj -/TT19 1 Tf -2.3333 0 TD -(No more data types available)Tj -/TT6 1 Tf -0 -1.7333 TD -0.0678 Tw -[(All available user data types have been allocated \(see Chapter 8\). Condition type: )]TJ -/TT8 1 Tf -37.9321 0 TD -0 Tw -(XCL:DATA-)Tj --37.9321 -1.2222 TD -(TYPES-EXHAUSTED)Tj -/TT6 1 Tf --2.3333 -1.7333 TD -(35)Tj -/TT19 1 Tf -2.3333 0 TD -(Serious condition XCL:ATTEMPT-TO-CHANGE-CONSTANT occured.)Tj -/TT6 1 Tf -0 -1.7333 TD -(In a )Tj -/TT8 1 Tf -1.9189 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -( expression. Condition type: )Tj -/TT8 1 Tf -13.1831 0 TD -(XCL:ATTEMPT-TO-CHANGE-CONSTANT)Tj -/TT6 1 Tf --24.8773 -1.7333 TD -[(36)-1333.3(Obsolete)]TJ -0 -1.6667 TD -[(37)-1333.3(Obsolete)]TJ -T* -(38)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a READTABLEP.)Tj -/TT6 1 Tf --0.6001 -1.7333 TD -0.3678 Tw -[(The argument was expected to be a valid read table \(see Chapter 25\). Condition type:)]TJ -/TT8 1 Tf -0 -1.1556 TD -0 Tw -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -13.2022 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED-TYPE READTABLEP)Tj -/TT6 1 Tf --19.7362 -1.7333 TD -(39)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a TERMTABLEP.)Tj -/TT6 1 Tf --0.6001 -1.7333 TD -0.25 Tw -[(The argument was expected to be a valid terminal table \(see Chapter 30\). Condition type:)]TJ -/TT8 1 Tf -0 -1.1556 TD -0 Tw -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -13.2022 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED-TYPE TERMTABLEP)Tj -/TT6 1 Tf --19.7362 -1.7333 TD -[(40)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(41)Tj -/TT19 1 Tf -2.3333 0 TD -(Protection violation)Tj -/TT6 1 Tf -12.002 0 TD -(: )Tj -/TT21 1 Tf -0.75 0 TD -(X)Tj -/TT6 1 Tf --12.752 -1.7333 TD -0.19 Tw -[(Attempt to open a file that you do not have access to. Also reference to unassigned device.)]TJ -0 -1.2222 TD -0 Tw -(Condition type: )Tj -/TT8 1 Tf -7.4463 0 TD -(XCL:FS-PROTECTION-VIOLATION)Tj -/TT6 1 Tf --9.7796 -1.7333 TD -(42)Tj -/TT19 1 Tf -2.3333 0 TD -(Invalid pathname: )Tj -/TT21 1 Tf -10.8018 0 TD -(X)Tj -/TT6 1 Tf --10.8018 -1.7333 TD -0.5356 Tw -(Illegal character in file specification, illegal syntax, e.g. two )Tj -/TT10 1 Tf -31.0436 0 TD -0 Tw -(;)Tj -/TT6 1 Tf -0.25 0 TD -0.5356 Tw -[(s etc. Condition type:)]TJ -/TT8 1 Tf --31.2936 -1.1556 TD -0 Tw -(XCL:INVALID-PATHNAME )Tj -/TT17 1 Tf -12.6021 0 TD -(pathname)Tj -/TT6 1 Tf --14.9354 -1.7333 TD -[(43)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(44)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is an unbound variable)Tj -/TT6 1 Tf --0.6001 -1.7333 TD -0.1556 Tw -(This occurs when a variable \(symbol\) was used which had neither a stack binding \(wasnt an)Tj -0 -1.2222 TD -0.2722 Tw -(argument to a function nor a )Tj -/TT8 1 Tf -14.5596 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.2722 Tw -[( variable\) nor a top level value. The culprit \()]TJ -/TT8 1 Tf -23.3765 0 TD -0 Tw -(\(CADR)Tj --40.3365 -1.2889 TD -(ERRORMESS\))Tj -/TT6 1 Tf -6.001 0 TD -0.0244 Tw -[(\) is the symbol. If DWIM corrects the error, no error occurs and the error number is)]TJ --6.001 -1.2889 TD -0.1311 Tw -[(not set. However, if an error is going to occur, whether or not it will cause a break, the error)]TJ -0 -1.2222 TD -0 Tw -(number will be set. Condition type: )Tj -/TT8 1 Tf -16.4097 0 TD -(UNBOUND-VARIABLE)Tj -/TT6 1 Tf -9.6016 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(name)Tj -/TT6 1 Tf --28.5946 -1.7333 TD -(45)Tj -/TT19 1 Tf -2.3333 0 TD -(Serious condition UNDEFINED-CAR-OF-FORM occured.)Tj -/TT6 1 Tf -0 -1.7333 TD -0.0922 Tw -[(Undefined function error. This occurs when a form is evaluated whose function position \()]TJ -/TT8 1 Tf -41.1832 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -(\))Tj --42.9835 -1.2889 TD -(does not have a definition as a function. Condition type: )Tj -/TT8 1 Tf -25.5488 0 TD -(UNDEFINE-CAR-OF FORM )Tj -/TT17 1 Tf -12.6021 0 TD -(function)Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R -/TT21 76 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -85 0 obj -<< -/Length 3192 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-23)Tj -/TT15 1 Tf -10 0 0 10 373.43 612 Tm -(ERRORS AND DEBUGGING)Tj -/TT6 1 Tf -9 0 0 9 75 569.54 Tm -(46)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT21 1 Tf -0.6001 0 TD -(varying messages)Tj -/TT19 1 Tf -9.6016 0 TD -(.)Tj -/TT6 1 Tf --10.8018 -1.7333 TD -0.0733 Tw -(This error is generated if )Tj -/TT8 1 Tf -11.4824 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0733 Tw -[( is given an undefined function. Culprit is)]TJ -/TT17 1 Tf -19.3157 0 TD -0.1756 Tw -[( \(LIST FN ARGS\))]TJ -/TT6 1 Tf --33.7986 -1.2889 TD -0 Tw -(Condition type: )Tj -/TT8 1 Tf -7.4463 0 TD -(UNDEFINED-FUNCTION-IN-APPLY)Tj -/TT6 1 Tf --9.7796 -1.7333 TD -(47)Tj -/TT19 1 Tf -2.3333 0 TD -(CONTROL)Tj -/TT10 1 Tf -4.2007 0 TD -( E)Tj -/TT6 1 Tf --4.2007 -1.7333 TD -(Control-E was typed. Condition type: )Tj -/TT8 1 Tf -17.3662 0 TD -(XCL:CONTROL-E-INTERRUPT)Tj -/TT6 1 Tf --19.6995 -1.7333 TD -(48)Tj -/TT19 1 Tf -2.3333 0 TD -(Floating point underflow.)Tj -/TT6 1 Tf -0 -1.7333 TD -(Underflow during floating-point operation. Condition type: )Tj -/TT8 1 Tf -27.2036 0 TD -(XCL:FLOATING-UNDERFLOW)Tj -/TT6 1 Tf --29.5369 -1.7333 TD -(49)Tj -/TT19 1 Tf -2.3333 0 TD -(Floating point overflow.)Tj -/TT6 1 Tf -0 -1.7333 TD -(Overflow during floating-point operation. Condition type: )Tj -/TT8 1 Tf -26.584 0 TD -(XCL:OVERFLOW)Tj -/TT6 1 Tf --28.9173 -1.7333 TD -[(50)-1333.3(Obsolete)]TJ -0 -1.6667 TD -(51)Tj -/TT21 1 Tf -2.3333 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( is not a HASH-TABLE)Tj -/TT6 1 Tf --0.6001 -1.7333 TD -0.4856 Tw -[(Hash array operations given an argument that is not a hash array. Condition type:)]TJ -/TT8 1 Tf -0 -1.1556 TD -0 Tw -(XCL:SIMPLE-TYPE-ERROR )Tj -/TT17 1 Tf -13.2022 0 TD -(culprit)Tj -/TT8 1 Tf -4.2007 0 TD -( :EXPECTED-TYPE CL:HASH-TABLE)Tj -/TT6 1 Tf --19.7362 -1.7333 TD -(52)Tj -/TT19 1 Tf -2.3333 0 TD -(Too many arguments to )Tj -/TT21 1 Tf -13.2022 0 TD -(X)Tj -/TT6 1 Tf --13.2022 -1.7333 TD -(Too many arguments given to a lambda-spread, lambda-nospread, or nlambda-spread function.)Tj -0 -1.6667 TD -0.0033 Tw -(Medley does not cause an error if more arguments are passed to a function than it is defined with.)Tj -0 -1.2222 TD -0.0144 Tw -(This argument occurs when more individual arguments are passed to a function than Medley can)Tj -T* -0 Tw -(store on the stack at once. The limit is currently 80 arguments.)Tj -0 -1.6667 TD -0.2933 Tw -(In addition, many system functions, e.g., )Tj -/TT8 1 Tf -19.9656 0 TD -0 Tw -(DEFINE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.7933 0 TD -(ARGLIST)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.7933 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.7933 0 TD -(LOG)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7933 0 TD -(EXPT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2933 Tw -(, etc, also)Tj --38.7414 -1.2889 TD -0.0622 Tw -(generate errors with appropriate messages by calling )Tj -/TT8 1 Tf -24.1172 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0622 Tw -[( \(see Signalling Errors above\) which)]TJ --27.1177 -1.2889 TD -0.3444 Tw -[(causes error number 17. Condition type: )]TJ -/TT8 1 Tf -21.2805 0 TD -0 Tw -(TOO-MANY-ARGUMENTS )Tj -/TT17 1 Tf -12.2274 0 TD -(callee)Tj -/TT8 1 Tf -3.6006 0 TD -0.8256 Tw -[( :MAXIMUM)]TJ --37.1085 -1.2222 TD -0 Tw -(CL:CALL-ARGUMENTS-LIMIT)Tj -ET -endstream -endobj -86 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT15 16 0 R -/TT17 17 0 R -/TT19 22 0 R -/TT21 76 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -88 0 obj -<< -/Length 199 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(14-24)Tj -/TT15 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 228 496.55 Tm -([This page intentionally left blank])Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -18 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 291 -/Height 271 -/BitsPerComponent 1 -/ImageMask true -/Length 10028 ->> -stream -?????????????????>>>>>>8????8Zٶa;ֵ;ֶ86c;ֵ;ֵ8F9a???8vw;Ãw;÷w8W÷;W;Ww8]???8Zٶa;ֵ݃vww;ֶv7{ݿvۻw86cv7{ۿ׿w;ֵv׿vσw;ֵv:Çn׻78F9av{ݿOtO?v{ݿO?Ã?8c7;׷;ׇ;1;;ַ;1???8v;;8W;W;W8]v?v?ßwݿ7;w<~<m v~:Nljv;^kxq;0#;Zm}A:JllH<;ÿ q;?ÿn~7?ÿn~78vÿn~ڷ;Ç?nڷ;ÿn~ٷ8Wÿn~ٷ;WÃq۰;W8]???8:?;Z7;V/8:;Z;Z8???8Zٶa;ֵ;ֶ086c @;ֵ#ÈH |OQ@;ֵ"$H @ЄH8F9a 0 @ PH?"# -|O爐0???????????????????????????????|78??{{?{?7{>߳j{?to{>o{?;?????|78??{{?{?7{>߳j{?to{>o{?;?????|7?{??7>߳j?t>??????8x8??۷n߿{?۷n߿{?۾߿{>y߇_{?wn߿?o{>wn߿_o{?8߃;?????n݃ 8??nտۿ{?6տ{?;տ}{>pՇ<{?wuɿ۸o{>wuɿ۵o{?>݃ <};?????8?n?n?{>8w߫?n>nݫ?88?????x?۷oݻ{?oݻ{?Xw{>W[{?oݻ۷{>oݻW۷{?|xw`?????p`>ûw?۵߻w>۶߻w?w`ݻ?ݿ~oݫ?ݿ~?݇~ݫ?ݻ~?ݻ~mo?ݻ~mo?80???H$PI'%PrI$OF0Γi $HF0 -bǏ| -endstream -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBGNHM+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 96 0 R ->> -endobj -96 0 obj -<< -/Filter /FlateDecode -/Length 20106 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8PB1pbAPo#̒ )4[))R &EEZ>*Db}=Z{g~マ{o p ȣwsfA|rZUoO'# wa1 Ţ] H'CH]onx|+r2d8uCp 9LkicX!,0$1ܥUp?0Lz`Q5-P|䩈G7pVGP7E-r:ԟ8:_ۈz,^y`p. Zxpr;84ptB*~TH|x4W`Z l̍@:~X˸ 0`6#4Y#2Z #`Ma;>#`S [ X45P-$/Lȃ& ߁Klx̹/b\b'XςRqf$ V[;0FwI)w.r,xВ&~ )&ӑ<DBi<`-ob~ :Ԥ>w"CV͗X p KH -Tͷ}2PCk wjU[IXŧH=_I'S_[3ge^%#\\y?!-|Eh$\xwBF:=I? f I}'d};k4OBZ'nIeRI_1(ڈWu}'x(e|"=^i}'雤_eg:SUJ6S4 ^!ٙapf2sq7 pxy|<0z1j٧pE2s& *!34CXm6.G6.ql\n -WڸW۸Ƶ6>e6cٸ:qXos6ny_pNN豟ㆪŢ^"j4aҟJ5 :/hĐL5FCjT5+SBHj΀ -J~onq%H_]Ucf!]h*&VAW<n\R\KLQ0hŤV1L5UVf_1h[Umu&?ͮv\%ݮ4/wp5s2OX[&./sZSM٩c}+ˮ/wF'5c/sǺN}O\9&Rw]j˼c8Z5RKgR/RF*gX[Jvwçݵqk3KKVyASnC>)!$ -LO睕[l) Ny{>D.goOwf\$o};yR3;/brd&ww|uqwP7ؘ٫vn'Yi0wD[Gab.XQ.# %ҮIԺhZJPCHB(R6Cet(`" t:t[a=wI }u~ޏ;K]?;sު\$)3`JѢ*$q7.{='2#Bł܂WYG,ݭMf6 -KTѩ9`aZhK/,ٮق0R9u^Vc@"#92F1xQ&|w4xCG$8WJFhdqpXխL)_Ãi3\nSܙfJ0=^$ cUBFږ.vyNȧTM ԇLءVZ?~,nRCFŅYV8WnCG}~S@P}@-! -PI`:b|OZѹXnPɳT9T]٪4IFd]{fuKKj\=?p u˺Ogit7){r]X:gSݭjwU9Ҫu~);?SOryTYvAS%dtډy\/wo Cg,sJGp9 CbK徚=_oTC-[1O9ՐK -ϣvU-!cRYگ@w*@:Ki9TYl;tvmh? 7QI2Mtܱ9fK)Pp2ʡ|H1_/k驘d wka`Knr]%@Dg)E ֈ{#r[4˃o77N*)6H rmʛvH-u` GFw{QH;a1ѣQQg,IF2Cb)Ҍ~ [g[j*R.!%K?Y bTb$6Ȩ>\p0;amFXElN -+axLI0F>/gc02`4A+^ Spe8y)%dOj3d%yh$D^!-d'y#oϤ#Ӥ\ UJڨP7CQt}V%>GWhn[諴Eߣ]z~AAh?M03dc0eTVf0?{-`Kl5gdCCvfv]arn>OSOx?ŗov?;a~SG%~G?&j22LX'n*|?A!HPg0bZ@qpXQ3CQT Xa482RwZf8݊2 cLj"VG}X#& -ɚW2 Yt?X~' -oP%%i0HR+4b ݒ&c6S+Q'b]vdQEτ1,װc?`cEpՌިd3A> sШd -8eݎg3-G{})f2Ͷ L乑m;-ΡZRU_w3DKP)ji7Zraڭ-BesK-$IY8Dp]]i>s ȭU'npZK;~jkɒ^_RKD>4{GK{yѥhk꺺bR%8>:D/lI'F`|6q.眤<m:(5×Be+HI[uNPv#'Nr-dnV(q Nti4[`HAus{lP~i[Yݽ}ػ;na5G't%W߶߶lۺ[_~bYal `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|(W4<e.ąE>faru&g N8jv_b[LxOfY*!gEiPSzl L pkAE_  ,ώtnW>M ]QiYc*Z*n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~}tlt\nEb;aVd1tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWq_ZafUdŷ@y.%ؔ[Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:.I"[,W~ˤ=Y_@d|ZXY@Vo47 PK9tev|q+ Y4c4; Y2`YX gLqB%ASJ؊hݏ[Z,ZҖ%8 ̂jԍRK¸2ٸ瘱?%UJ9C':g*.?.ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStVRKAİXk== x^.wwR9sߚq?W?NhN-:zTDw!_hG,h)cxz}GGVWAhSdicEk%`еdA"mψԒn^1v缴/y]4|ˊ^ox6g@EV4 @3h UFF;b|thƖorz̲[Bn+/LkI̯/^Gދaa4"$wQ eIp>}$XhNqUblfqBҡ>r[m)1x| u(8GTA"r wj;-A^7-W^-)AyjŪfϽ^Ww[ =x -n:Y,Š ,}*:,aCpx>Mz<4Vc|肽 DE8 -'U8 _ 'x7`@ȋEu5/{h# Ao%tq)^b7f~ -wo^<'?opS*IYIVH|7Mr/q?~;jۅ2oEFE-D*~v`32JMS# lt! -$2jZLFcDg21iI;6bD^Ͻ,v={w}.*WTCP jP]V!5T;շwգjz^~^VTMZ46AM֦kOi3HxY#{ T8q1 :&VQM%VMQ -6aNlGh1ĎTj;@?):FZ[VicM^c9\Z-JQl0=|@'D1RP 7~O`n&a 諈 -H([A'N1BNqG,B@qVPGAë-uEei5pSfXǦ8!c8MQ k.|;$wFv.=g|_f4)^w$d-DB3Cِgt75uM!*y8 vХYcBF6$7׹Fkk)}⽰!H{\ 'd @ouv۳I ug"0aH\[}A*- 53d HƗh,JnZ}ė}6D;ELz3IM >Pd䍵݁޵=%r s@c/isąuH#5F#"9:ni"87Jkï.")]H&Hz5nO[xohp.Ԧs -]yd7veWakй6PIÍDvjBQ&KZlx"}{޾C/_g+3 -PKyr+$v<v޵c[ؙ*t:[vsݹPǞglO|@X Zu+fdwZWG<Wˌ8`1k2V5/ۗ|`NnoX󆥷[H|q8:\!K$-$.=+}]bL$нa_M\NjsOWLH"is27dep $_X^Qz x] 4V1c]j3/`K$Aa}gQ Pz$B0G!% : bTW^,µ`0p|:zssA̓)3vld'^`TVgN^t`wM3绺ϲNd.?`n9l*͞H'yӌ|ۗ3,۽z ΁\bG:'fnV!r1clC${8;gg -FMx!פȧFlۄ Ƕ!-L=wsQo,O"-~4$A۪Єump{oLg7I0G۸%W =To/0Džu Ố QM ȂȪrX(BfU" kx -&dX mWI)|_ M /*2YCjȫdyCz>9M>"g?ɿEFL -Qc7 d:N rZIUt nv#K?=M~z!"KP2]ɖ̬YR,CvVDF 9ZҡA9t)ǕS(+5dj5+s0'sxļƳ {l -KgY&b?bAfv<R(y K"wBIU]B̗z,[= +"v, 7ra%r( C$ {\ۄZ $| U-D8Edm+US6P,XgِHwXرE>HR5KUo Xjъa!Ue)4\Q.ʼ)x_m3,(.2_[nJTVʺv< }m{"ώۖѣfB~okh*H9?I4YwdKn _%oߘ_X6dj0dawZC'3RǩcY58vЎ]#{i8~vN~;"&dJS -_#|8{mv/6!F34QK@IH6$bM?2NA*#r4CMdZpv&dD;HE%;{ߟyB=OnX@o7ՠ/ŹB pdc"""Ҍ)eu9..3rwMgIEaXuP״yv%׿YC5sfh[vNK*Zn_a濱i|S 5z9 {nuw}C.,vC=Q7%mg@>64k&[UYHn>)[l:tρùUu; VV[J۪D'o<;0׎.lуaw?s-CWK7svT[<}MUHhϼ eivnC -[ӭh+or{~$_Vi5E\]4⨉6~o}oyi Zַݰ_={OxݵF9(;{n~ݮs튖n(-BMoiD5oNo>d - q}gHJ>cwI^qQd\(GPIE,1"vXNDUzBL$ƕљ2K^_w|-8'iTlvmfYȤDC Y#,})ȃjB(0|(E=Uzj1TMnA=X+NX kPO[`;ڠ~A8G9T]Eu[އ8H6U UE*TVu,&[n%#܅j=D&LZȃ!H7y%A{r>z$$&7y'͠~K/G}UH~Vi~+tD4B[GhғO5teTZ|T[X5e7zvk`k:\Ml3*&5jGՉ -c'X7;Z,JjXJ >(F+Jݍ Tqz㼱gM)]Ev[2\! -͝ϳEKi-%Ra+)c\ -[)؂Ue3y Pqif{JʺhG2T mSAO&)Qb3DAc.[C /+W &ǯYJPvҰ, I<E+Lxlca b `!iYl#BNbS,?O[A;y-o2g}LcA=KA<1&+cJՂl{4өxM)0(]'loFEӿ22 yc@:X'Avʹ[`v{^; j?8~x/!)<(Q'oLaOlq mEw`Ƙ{^PU"|rfF` 0g$ÍrK aW YBM,aamUmp 68-F{rnkc*5lK"<ߐt_ïp^6c,gxYsckf+YʴЧ܋qz GK} =5e1Yle1 yԹ,nzS]:XJ7-X,!z,bEٳGY%JrnX bټ0WwVaPUMd!Q}x2S+JXS^ip3hnc.٪VvYfֿɯ82nwڷ& Q"#%qTvCˆ< RIK_0|!_WH4$$^{J&m,g JyQk'm@H̃|;;:)p|lvdn|:9w--̲-M,#Yxt%Q9hhY0KYCZªp,]=.rџт Ư^Թ5ʳf!1fPUk|MϾysƵhCMw<x2ZpGpݲTicK<ʚşcМ}Û-?zqe %,fά:Y,MDVs<Е¡5眣;Έ[Lm*׹*8qWWo6=C&> À%3 Vmm0G[xKxD-p29ٜ79]Xv"=YEd1/bRѾ /A& " -=e:!"%58dj]dڹ5xc'sF-&օlRX%#f-0 %*lu1LMS,?uQżS`$BmU4(vx h)וֹ+܃LN,y6ia -fE9,pTw|GBw ǩ 6h95P" R_Y8NN!j;WV{uٍOC:dыZh+9-ZxfOxٳp{9̎->.~ 8+XXM Ż-&ʰBu'YZ jf ,Uho1+b2_hq줜:2DmuT7L~ -a/ބƐ5"#@"]hMx}yx*p;[ *5,"^"Y~-L44Y5x`jh10nZN׏dWRŚ^sˏ ˚2pbax[_OCT_f5 MT`uQ}1,P gѫ/lKw`b;ˉ6]-O+J0O_Ǣ:^ǯ/P݉,~I -Kk ׊fA2q"=.WGLGo8L>b~v6YA hYwRkᦊOYEAuAM퓅FWwyTAHe-X~06PBȳ!üll`j|JrCoiF5*vf[hvY[qtu?D3mRga>ڛ)k2G&c~ MGWwg mc=ۏHV +h#iۏhPhYeNdӡf&#d(^ 18RzH y~뿗Sx/}6+ŀ (B24Hܗ{*}edݣlءhtap͇fySVe24[lqFs=8> S"Xbh4-_flow)pm1,uh;65L>,EJ}}š{BK,v\Suc\, &!{QMl~(gq?Mnr+FW;M,OnN CCQ:4| I(`ZY^o[1Xqb`w ![fbe5ʈ2|Z9|Ir^ywKO^-PQg}¢(a,B5E۲b_+5 b]xh -k<410OkGqTԪ1&>cm|cE.N5csg柹ߢf'*`X_R2syl!gzmgmcv]ea,Cy"|gq7M|?s ~ߖ¥ޒ&Y8X*UHF-itD:/]l49KvSry^n' -S"ʏ\e2[,VV)*(;0ݫV('ʿKJTU5&^:Hf5@_OJLF™D^D%*-PBcU…^$L&0P#$*H{c=DVa(bU(P#tPb@K#&ga8C,& >a4EOA~T4TFnF`TQĬGl75CN"H F*4 WE%.`U QB}Aԉ8!ہ M\-vH׃ߠ6Oo,ԃ+ b/>,z,me~+ ;Az]۫{uVZZvݾVTցu'<7Wzֹ[;"G^!/гcc:KuxqI #K?_KsJw++ }Ҭ-yK[~m^ɲ̟,N6^幧Sge$jǎ --_+ jeu5 $7ovTӵQ0ҽ3O\,[|,:E~kD2gҙ]ӌ U7Ϛ ^{ZKCi%Sǻל̯~g'Q -Նɵ?ȯX<_ϵ^,-{wRq5ub VJ[|^wUZo!KݢyyGĥֶ4"s/- JB!^kίNlCܔ-:K4w@`3! JKˉW &dWqXqg튾֭ 4n_}tsrLӪڤ#qT-41VYu*Ϻr> 1tHk/㾜nX"+$w2amLTͣve\uX`ܗ;93,)Hƞ,~eap7ˢ3ϕ{3%pz `?|t (z(b!C$|j0)?l y01ߚ Tnx0 kPsކfbv8 0;C;t TxFD$ē$BOP2d;%c2L&Ed)%ee2TU, Md5Yy\OdKr|y%r kJg^85hf4a4i9it:c9c ]JUtEn>.%ӣ#z~F/ޠF3cɢX֏Ų8fa,='PQ3CЇʧ(0DD9eh-F%R=r}%L#6b򨣊Qqr[^A )8ꖇ LP˔.3YWF^]paW4 - Gu!]+WV/QVIAar dIB(q|~@U3hRgv,Mͨh>p+4 pXXI g+N8q.D( "Љ¬5pNpanbf@1(3@f;̛7־\xك/޾쁏6ظvPyk_MK31<<e#v -Pv5zP(0sMw! wk].vq`䦱n 97r@~6xƒk. .Ҍ~-%dKʳ/rb}B^B}*s~Rl jʍTMwn@,g?–\]W._} -G۝ۻPO}}Oq۽a}gt|iu/|u5&B< -%cF6IWVjDoPkjmFgirϿ}kr5.y}WUmK <%O?U[rmMpZz3TZEfMOZI3)XӇ/il(%4'fхur$L$KjPaȒ - u&9 | ->#!m`+xWλm)9![M^߂߀__#rckȋs;Dz!7)4g!SI<~qx!u5}*ɚK . -+( f$uRkRwk^X(Xh[T-t{h7Љ܃()]hS -ϿP槐wBַCSl#' -c~s"fk!o׋uL Zhր*\ +PWLPK%ӏQ\W] -"LLyi=yy[e]\R=Df -/`a(#B#U 8ּElh fsՙaqM$Ρ41P[t~:6>ٟ L& NDpw{9L߃qXhp8H[мᐇC`p(h29!p0d o(<JlCbz Ӌ\eH&w >kX:p{v/r@G3m;[T-tdT-,ڛB mm]{: --@-15ʄ3pF [*,a))W𳍟2~ђ$\T$e:f?7qة^mŎVdCEajYoAv:4Kw[^Iuq՛K\^rWr_;ӏe59)}X*'g~C̟@N!r6hV měQ&'ob;[b!o_a}5'.?Te's4R_BF;;;T5ufȮ7MkO 9CfU콀>QH:kqF}VsR -k#ToZv v6rF/i}|GSUqvM*L3m26$7yۆVQZ#5M4j(zKFslCd_l26J2զd*y^*~"8?HL}=QM=9u\Dī-Yq-8f̲8bͲ̲QGf?y挟>Kx#3Xϧt6d|VO{A&K~I |8&BH"mG\&~ -mBKvX|zqx_L{n|Ef 5 -endstream -endobj -97 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -98 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -99 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -100 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -101 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262243 -/FontBBox [-56 -250 868 801] -/FontName /Courier-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 90 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 556 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 0 778 0 278 0 722 611 0 722 778 -0 0 722 667 0 722 667 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 0 611 611 278 0 556 278 889 611 611 -0 0 389 556 333 0 0 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 91 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 840 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 92 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [600 600 600 0 0 0 0 0 600 600 600 600 600 600 600 600 -600 600 600 600 0 0 0 600 600 0 600 0 0 600 0 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 0 -0 600 600 0 600 600 0 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 93 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 147 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 -0 0 0 0 0 0 0 0 0 0 250 250 0 0 0 0 -0 0 0 0 0 611 0 0 0 0 0 0 0 0 833 0 -611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 500 0 444 0 500 389 0 0 0 0 0 0 889 611 556 -0 0 389 0 333 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 94 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBGNHM+Symbol -/Encoding /Identity-H -/DescendantFonts [ 102 0 R ] -/ToUnicode 103 0 R ->> -endobj -102 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBGNHM+Symbol -/FontDescriptor 95 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 0 0 667 0 0 0 0 0 0 0 0 556 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 97 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 778 0 278 0 0 556 833 722 778 -0 0 722 667 0 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 98 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 0 600 600 0 -0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 600 600 0 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 600 0 600 0 0 -0 600 600 600 0 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 99 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 0 0 0 0 0 0 0 0 600 600 0 600 600 0 -0 600 0 0 0 0 0 0 0 0 600 0 0 600 0 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 100 0 R ->> -endobj -76 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 600 0 0 0 0 0 0 0 -0 600 0 0 0 600 0 600 0 600 0 0 0 600 600 0 -0 0 600 600 0 0 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-BoldOblique -/FontDescriptor 101 0 R ->> -endobj -103 0 obj -<< -/Filter /FlateDecode -/Length 226 ->> -stream -HTP=o [uCTXK~IsH .F~6?O}E;`Gƍ,g@*ph>L\3p7R>{| uRqApblҋYUǎ{BP czt&cL:!NBOi発.2~|fE{T.uǛ-V5nbc? m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -67 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 69 0 R -/Contents 68 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -77 0 obj -<< -/Type /Page -/Parent 80 0 R -/Resources 79 0 R -/Contents 78 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 80 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -84 0 obj -<< -/Type /Page -/Parent 80 0 R -/Resources 86 0 R -/Contents 85 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 80 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -104 0 obj -<< -/S /D ->> -endobj -105 0 obj -<< -/Nums [0 104 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 19 0 R 23 0 R 26 0 R 29 0 R 32 0 R 35 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [44 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 67 0 R 70 0 R 73 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -80 0 obj -<< -/Type /Pages -/Kids [77 0 R 81 0 R 84 0 R 87 0 R] -/Count 4 -/Parent 47 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [12 0 R 48 0 R 80 0 R ] -/Count 24 -/MediaBox [0 0 612 792] ->> -endobj -106 0 obj -<< -/CreationDate (D:20210202102650-06'00') -/ModDate (D:20210202102650-06'00') -/Producer (Apple pstopdf) ->> -endobj -107 0 obj -<< -/Type /Catalog -/Pages 47 0 R -/PageLabels 105 0 R ->> -endobj -xref -0 108 -0000000000 65535 f -0000200146 00000 n -0000000016 00000 n -0000005336 00000 n -0000195221 00000 n -0000195432 00000 n -0000195860 00000 n -0000196417 00000 n -0000196962 00000 n -0000197401 00000 n -0000197758 00000 n -0000172682 00000 n -0000202230 00000 n -0000200227 00000 n -0000005502 00000 n -0000010945 00000 n -0000198168 00000 n -0000198485 00000 n -0000162510 00000 n -0000200311 00000 n -0000011148 00000 n -0000018960 00000 n -0000198941 00000 n -0000200395 00000 n -0000019153 00000 n -0000025942 00000 n -0000200479 00000 n -0000026135 00000 n -0000032374 00000 n -0000200563 00000 n -0000032545 00000 n -0000039392 00000 n -0000200647 00000 n -0000039550 00000 n -0000046637 00000 n -0000200731 00000 n -0000046807 00000 n -0000053322 00000 n -0000200815 00000 n -0000053505 00000 n -0000060763 00000 n -0000200899 00000 n -0000060945 00000 n -0000068118 00000 n -0000200983 00000 n -0000068299 00000 n -0000075232 00000 n -0000202600 00000 n -0000202367 00000 n -0000201067 00000 n -0000075426 00000 n -0000084542 00000 n -0000201151 00000 n -0000084737 00000 n -0000093213 00000 n -0000201235 00000 n -0000093408 00000 n -0000102889 00000 n -0000201319 00000 n -0000103083 00000 n -0000109895 00000 n -0000201403 00000 n -0000110089 00000 n -0000118072 00000 n -0000201487 00000 n -0000118266 00000 n -0000126861 00000 n -0000201571 00000 n -0000127044 00000 n -0000136296 00000 n -0000201655 00000 n -0000136479 00000 n -0000142506 00000 n -0000201739 00000 n -0000142675 00000 n -0000148438 00000 n -0000199463 00000 n -0000201823 00000 n -0000148609 00000 n -0000153861 00000 n -0000202505 00000 n -0000201907 00000 n -0000154045 00000 n -0000158527 00000 n -0000201991 00000 n -0000158710 00000 n -0000161955 00000 n -0000202075 00000 n -0000162138 00000 n -0000162389 00000 n -0000172823 00000 n -0000173020 00000 n -0000173226 00000 n -0000173426 00000 n -0000173617 00000 n -0000173822 00000 n -0000174012 00000 n -0000194208 00000 n -0000194411 00000 n -0000194606 00000 n -0000194807 00000 n -0000195010 00000 n -0000197545 00000 n -0000199846 00000 n -0000202159 00000 n -0000202188 00000 n -0000202699 00000 n -0000202823 00000 n -trailer -<< -/Size 108 -/Root 107 0 R -/Info 106 0 R -/ID [<8d6d901b05fd6e990bf3573dfa290903><8d6d901b05fd6e990bf3573dfa290903>] ->> -startxref -202895 -%%EOF diff --git a/docs/medley-irm/15-BREAKING.pdf b/docs/medley-irm/15-BREAKING.pdf deleted file mode 100644 index 06a8e3f9..00000000 --- a/docs/medley-irm/15-BREAKING.pdf +++ /dev/null @@ -1,7042 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5411 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 501.7499 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-1)Tj -/TT4 1 Tf -10 0 0 10 302.2 568.2 Tm -(15. BREAKING, TRACING, AND ADVISING)Tj -ET -0 G -0 J 0 j 3 w 10 M []0 d -1 i -54.01 564.49 m -510.01 564.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 541.54 Tm -(Medley provides several different facilities for modifing the behavior of a function without actually)Tj -0 -1.2222 TD -(editing its definition. By breaking a function, you can cause breaks to occur at various times in the)Tj -T* -(running of an incomplete program, so that the program state can be inspected. Tracing a function)Tj -T* -(causes information to be printed every time the function is entered or exited.)Tj -0 -2 TD -0.0478 Tw -[(Advising is a facility for specifying longer-term function modifications. Even system functions can)]TJ -0 -1.2222 TD -0 Tw -(be changed through advising.)Tj -/TT4 1 Tf -10 0 0 10 54 452.2 Tm -(Breaking Functions and Debugging)Tj -ET -1 w -54.01 449.49 m -510.01 449.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 435.54 Tm -0.2589 Tw -(Debugging a collection of Lisp functions involves isolating problems within particular functions)Tj -T* -0.1933 Tw -[(and/or determining when and where incorrect data are being generated and transmitted. In the)]TJ -T* -0.4156 Tw -(Medley, there are three facilities which allow you to \(temporarily\) modify selected function)Tj -T* -0.1233 Tw -(definitions so that you can follow the flow of control in your programs, and obtain this debugging)Tj -T* -0 Tw -(information. All three redefine functions in terms of a system function, )Tj -/TT8 1 Tf -31.7334 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -( \(see Chapter 14\).)Tj -/TT8 1 Tf --35.334 -2.0667 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( modifies the definition of a function )]TJ -/TT10 1 Tf -17.0037 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0844 Tw -(, so that whenever )Tj -/TT10 1 Tf -8.6869 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0844 Tw -[( is called and a break condition)]TJ --31.0915 -1.2889 TD -0.0433 Tw -[(\(user-defined\) is satisfied, a function break occurs. You can then interrogate the state of the machine,)]TJ -0 -1.2222 TD -0 Tw -(perform any computation, and continue or return from the call.)Tj -/TT8 1 Tf -0 -2 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1078 Tw -[( modifies a definition of a function )]TJ -/TT10 1 Tf -16.2798 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1078 Tw -[( so that whenever )]TJ -/TT10 1 Tf -8.5302 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1078 Tw -[( is called, its arguments \(or some)]TJ --30.2109 -1.2889 TD -0.0456 Tw -[(other user-specified values\) are printed. When the value of )]TJ -/TT10 1 Tf -26.9214 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0456 Tw -[( is computed it is printed also. )]TJ -/TT8 1 Tf -14.1999 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf --42.3215 -1.2889 TD -(is a special case of )Tj -/TT8 1 Tf -8.2202 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf --11.2207 -2.0667 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.1956 Tw -[( allows you to insert a breakpoint inside an expression defining a function. When the)]TJ --4.2007 -1.2889 TD -0.0956 Tw -(breakpoint is reached and if a break condition \(defined by you\) is satisfied, a temporary halt occurs)Tj -0 -1.2222 TD -0 Tw -(and you can again investigate the state of the computation.)Tj -0 -2 TD -0.0222 Tw -[(The following two examples illustrate these facilities. In the first example, the function )]TJ -/TT8 1 Tf -38.9386 0 TD -0 Tw -(FACTORIA)Tj -/TT6 1 Tf -4.8008 0 TD -0.0222 Tw -(L is)Tj --43.7393 -1.2889 TD -0.0644 Tw -(traced. )Tj -/TT8 1 Tf -3.6338 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0644 Tw -[( redefines )]TJ -/TT8 1 Tf -4.7016 0 TD -0 Tw -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.0644 Tw -[( so that it print its arguments and value, and then goes on with)]TJ --16.7368 -1.2889 TD -0.1322 Tw -[(the computation. When an error occurs on the fifth recursion, a full interactive break occurs. The)]TJ -0 -1.2222 TD -0.0856 Tw -(situation is then the same as though )Tj -/TT8 1 Tf -16.7141 0 TD -0.2056 Tw -(\(BREAK FACTORIAL\))Tj -/TT6 1 Tf -10.4072 0 TD -0.0856 Tw -[( had been performed instead of )]TJ -/TT8 1 Tf -14.6129 0 TD -0 Tw -(\(TRACE)Tj --41.7343 -1.2889 TD -(FACTORIAL\))Tj -/TT6 1 Tf -6.001 0 TD -0.0233 Tw -(, now you can evaluate various Interlisp forms and direct the course of the computation.)Tj --6.001 -1.2889 TD -0.0144 Tw -(In this case, the variable )Tj -/TT8 1 Tf -10.9223 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( is examined, and )]TJ -/TT8 1 Tf -8.0563 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0144 Tw -[( is instructed to return 1 as the value of this cell to)]TJ -/TT8 1 Tf --23.1793 -1.2889 TD -0 Tw -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.1211 Tw -[(. The rest of the tracing proceeds without incident. Presumably, )]TJ -/TT8 1 Tf -29.8713 0 TD -0 Tw -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.1211 Tw -[( would be)]TJ --40.673 -1.2889 TD -0 Tw -(edited to change )Tj -/TT8 1 Tf -7.812 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(1)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT11 1 Tf --5.0509 -1.7333 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(PP FACTORIAL)Tj --0.9868 -1 TD -(\(FACTORIAL)Tj -4 -1 TD -([LAMBDA \(N\))Tj -T* -(\(COND)Tj --4 -1 TD -( \(\(ZEROP N\))Tj -T* -( L\))Tj -T* -( \(T \(ITIMES N \(FACTORIAL \(SUB1 N]\))Tj -T* -(FACTORIAL)Tj -/TT11 1 Tf -0 -1.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(TRACE FACTORIAL\))Tj --0.9868 -1 TD -(\(FACTORIAL\))Tj -/TT11 1 Tf -0 -1.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(FACTORIAL 4\))Tj --0.9868 -1 TD -(FACTORIAL:)Tj -T* -(N = 4)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 3279 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-2)Tj -/TT13 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 570.14 Tm -( FACTORIAL:)Tj -0 -1 TD -( N = 3)Tj -T* -( FACTORIAL:)Tj -T* -( N = 2)Tj -T* -( FACTORIAL:)Tj -T* -( N = 1)Tj -T* -( FACTORIAL:)Tj -T* -( N = 0)Tj -T* -(UNBOUND ATOM)Tj -T* -(L)Tj -T* -(\(FACTORIAL BROKEN\))Tj -T* -(:N)Tj -T* -(0)Tj -T* -(:RETURN 1)Tj -T* -( FACTORIAL = 1)Tj -T* -( FACTORIAL = 1)Tj -T* -( FACTORIAL = 2)Tj -T* -( FACTORIAL = 6)Tj -T* -(FACTORIAL = 24)Tj -T* -(24)Tj -/TT11 1 Tf -0 -1.0667 TD -<0040>Tj -/TT6 1 Tf --5.3333 -1.7778 TD -0.09 Tw -(In the second example, a non-recursive definition of )Tj -/TT8 1 Tf -23.9392 0 TD -0 Tw -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.09 Tw -[( has been constructed. )]TJ -/TT8 1 Tf -10.7288 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.09 Tw -[( is)]TJ --44.2696 -1.2889 TD -0.0556 Tw -(used to insert a call to )Tj -/TT8 1 Tf -10.2171 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0556 Tw -[( just after the )]TJ -/TT8 1 Tf -6.2295 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0556 Tw -[( label )]TJ -/TT8 1 Tf -2.7254 0 TD -0 Tw -(LOOP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0556 Tw -[(. This break is to occur only on the last)]TJ --27.5734 -1.2889 TD -0.0289 Tw -(two iterations, when )Tj -/TT8 1 Tf -9.4299 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -[( is less than 2. When the break occurs, in trying to look at the value of )]TJ -/TT8 1 Tf -31.6328 0 TD -0 Tw -(N,)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.2789 0 TD -(NN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0289 Tw -[( is)]TJ --44.3421 -1.2889 TD -0.0156 Tw -[(mistakenly typed. The break is maintained, however, and no damage is done. After examining )]TJ -/TT8 1 Tf -42.7806 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -[( and)]TJ -/TT8 1 Tf --43.3807 -1.2889 TD -0 Tw -(M)Tj -/TT6 1 Tf -0.6001 0 TD -0.2333 Tw -[( the computation is allowed to continue by typing )]TJ -/TT8 1 Tf -24.8822 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.2333 Tw -[(. A second break occurs after the next)]TJ --26.6825 -1.2889 TD -0.1311 Tw -(iteration, this time with )Tj -/TT8 1 Tf -11.146 0 TD -0.3144 Tw -(N = 0)Tj -/TT6 1 Tf -3.6294 0 TD -0.1311 Tw -[(. When this break is released, the function )]TJ -/TT8 1 Tf -20.1463 0 TD -0 Tw -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.1311 Tw -[( returns its)]TJ --40.3226 -1.2889 TD -0 Tw -(value of )Tj -/TT8 1 Tf -3.8169 0 TD -(120)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT11 1 Tf -1.0495 -2.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(PP FACTORIAL)Tj --0.9868 -1 TD -(\(FACTORIAL)Tj -T* -( [LAMBDA \(N\))Tj -T* -( \(PROG \(\(M 1\)\))Tj -T* -( LOOP \(COND)Tj -T* -( \(\(ZEROP N\))Tj -T* -( \(RETURN M\)\)\))Tj -T* -( \(SETQ M \(ITIMES M N\)\))Tj -T* -( \(SETQ N \(SUB1 N\)\))Tj -T* -( \(GO LOOP]\))Tj -T* -(FACTORIAL)Tj -/TT11 1 Tf -0 -1.8444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(BREAKIN FACTORIAL \(AFTER LOOP\) \(ILESSP N 2])Tj --0.9868 -1 TD -(SEARCHING...)Tj -T* -(FACTORIAL)Tj -/TT11 1 Tf -0 -1.8444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(\(FACTORIAL 5\))Tj --0.9868 -1 TD -(\(\(FACTORIAL\) BROKEN\))Tj -T* -(:NN)Tj -T* -(U.B.A.)Tj -T* -(NN)Tj -T* -(\(FACTORIAL BROKEN AFTER LOOP\))Tj -T* -(:N)Tj -T* -(1)Tj -T* -(:M)Tj -T* -(120)Tj -T* -(:OK)Tj -T* -(\(FACTORIAL\))Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT11 9 0 R -/TT13 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -17 0 obj -<< -/Length 9019 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-3)Tj -/TT13 1 Tf -10 0 0 10 324.52 612 Tm -(BREAKING, TRACING, AND ADVISING)Tj -/TT8 1 Tf -9 0 0 9 138 561.14 Tm -(\(\(FACTORIAL\) BROKEN\))Tj -0 -1 TD -(:N)Tj -T* -(0)Tj -T* -(:OK)Tj -T* -(\(FACTORIAL\))Tj -T* -(120)Tj -/TT11 1 Tf -0 -1.0667 TD -<0040>Tj -/TT15 1 Tf --6.6667 -1.7778 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0344 Tw -(: )Tj -/TT8 1 Tf -0.8189 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0344 Tw -[( and )]TJ -/TT8 1 Tf -2.2618 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0344 Tw -[( can also be used on CLISP words which appear as )]TJ -/TT8 1 Tf -23.0205 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0344 Tw -[( of form, e.g. )]TJ -/TT8 1 Tf -5.9586 0 TD -0 Tw -(FETCH)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj -/TT8 1 Tf --45.0836 -1.2889 TD -(REPLACE)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.6533 0 TD -(IF)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.6533 0 TD -(FOR)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6533 0 TD -(DO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1533 Tw -[(, etc., even though these are not implemented as functions. For conditional)]TJ --10.3614 -1.2889 TD -0.1667 Tw -(breaking, you can refer to the entire expression via the variable )Tj -/TT8 1 Tf -29.9237 0 TD -0 Tw -(EXP)Tj -/TT6 1 Tf -1.8003 0 TD -0.1667 Tw -(, e.g. )Tj -/TT8 1 Tf -2.6185 0 TD -0.3989 Tw -(\(BREAK \(FOR \(MEMB)Tj --34.3425 -1.2889 TD -0 Tw -(UNTIL EXP\)\)\))Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT8 1 Tf --5.1346 -2.2155 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BREAK0)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHEN)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(COMS )Tj -/TT8 1 Tf -4.8008 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 236.1149 435.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 435.8 Tm -([Function])Tj --35.4033 -1.8445 TD -0.1522 Tw -(Sets up a break on the function )Tj -/TT10 1 Tf -14.9791 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1522 Tw -(; returns )Tj -/TT10 1 Tf -4.2585 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1522 Tw -[(. If )]TJ -/TT10 1 Tf -2.1266 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1522 Tw -[( is not defined, returns )]TJ -/TT8 1 Tf -11.0199 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.4022 0 TD -(NOT)Tj --38.1873 -1.2889 TD -(DEFINED\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --4.8008 -2.0667 TD -0.0578 Tw -(The value of )Tj -/TT10 1 Tf -5.9141 0 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0578 Tw -(, if non-)Tj -/TT8 1 Tf -3.5325 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0578 Tw -(, should be an expression that is evaluated whenever )Tj -/TT10 1 Tf -24.126 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0578 Tw -[( is)]TJ --38.9734 -1.2889 TD -0.22 Tw -[(entered. If the value of the expression is non-)]TJ -/TT8 1 Tf -22.0869 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.22 Tw -(, a break is entered, otherwise the)Tj --23.8872 -1.2889 TD -0.0811 Tw -[(function simply called and returns without causing a break. This provides the means of)]TJ -0 -1.2222 TD -0 Tw -(conditionally breaking a function.)Tj -0 -2 TD -0.0944 Tw -(The value of )Tj -/TT10 1 Tf -6.0241 0 TD -0 Tw -(COMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0944 Tw -(, if non-)Tj -/TT8 1 Tf -3.6059 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0944 Tw -(, should be a list of break commands, that are interpreted)Tj --13.8306 -1.2889 TD -0 Tw -(and executed if a break occurs. \(See the )Tj -/TT10 1 Tf -17.7959 0 TD -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -( argument to )Tj -/TT8 1 Tf -5.9463 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -(, Chapter 14.\))Tj -/TT8 1 Tf --31.5435 -2.0667 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -( sets up a break by doing the following: )Tj --0.9339 -2.0667 TD -(Redefines )Tj -/TT10 1 Tf -4.9868 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.3911 Tw -[( as a call to )]TJ -/TT8 1 Tf -7.0273 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.3911 Tw -[( \(Chapter 14\), passing an equivalent)]TJ --16.8149 -1.2889 TD -0.1044 Tw -(definition of )Tj -/TT10 1 Tf -5.9198 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6044 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6044 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1044 Tw -(, and )Tj -/TT10 1 Tf -2.6518 0 TD -0 Tw -(COMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.1044 Tw -[( as the )]TJ -/TT8 1 Tf -3.3744 0 TD -0 Tw -(BRKEXP)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6044 0 TD -(BRKWHEN)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6044 0 TD -(BRKFN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1044 Tw -(, and)Tj -/TT10 1 Tf --32.3667 -1.2889 TD -0 Tw -(BRKCOMS)Tj -/TT6 1 Tf -4.2007 0 TD -( arguments to )Tj -/TT8 1 Tf -6.3701 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj --14.1714 -2.0667 TD -0.0011 Tw -(Defines a )Tj -/TT8 1 Tf -4.364 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0011 Tw -( \(Chapter 2\) with the original definition of )Tj -/TT10 1 Tf -18.8507 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0011 Tw -(, and puts it on)Tj --28.0155 -1.2889 TD -0 Tw -(the property list of )Tj -/TT10 1 Tf -8.4976 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( under the property )Tj -/TT8 1 Tf -8.9565 0 TD -(BROKEN)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj --22.2549 -2.0667 TD -0.1867 Tw -(Puts the form )Tj -/TT8 1 Tf -6.811 0 TD -0 Tw -(\(BREAK0)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4367 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4367 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1867 Tw -[( on the property list of )]TJ -/TT10 1 Tf -11.2455 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1867 Tw -[( under the)]TJ --29.7316 -1.2889 TD -0 Tw -(property )Tj -/TT8 1 Tf -4.1494 0 TD -(BRKINFO)Tj -/TT6 1 Tf -4.2007 0 TD -( \(for use in conjunction with )Tj -/TT8 1 Tf -12.6987 0 TD -(REBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -(\) )Tj --25.2495 -2.0667 TD -(Adds )Tj -/TT10 1 Tf -2.6733 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( to the front of the list )Tj -/TT8 1 Tf -9.7896 0 TD -(BROKENFNS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --21.7306 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9799 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.06 Tw -[( is non-atomic and of the form )]TJ -/TT8 1 Tf -14.0333 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 288.14 165.2 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 291.74 167.2 Tm -( )Tj -/TT8 1 Tf -0.31 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.31 0 TD -(FN)Tj -6 0 0 6 318.92 165.2 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 322.52 167.2 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.56 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.06 Tw -[( breaks every call to )]TJ -/TT10 1 Tf -9.3293 0 TD -0 Tw -(FN)Tj -6 0 0 6 460.12 165.2 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 463.72 167.2 Tm -0.06 Tw -[( from)]TJ --37.5244 -1.3944 TD -0 Tw -(within )Tj -/TT10 1 Tf -3.2085 0 TD -(FN)Tj -6 0 0 6 165.68 152.65 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 169.28 154.65 Tm -0.0522 Tw -[(. This is useful for breaking on a function that is called from many places, but)]TJ --4.8089 -1.3944 TD -0.0311 Tw -(where one is only interested in the call from a specific function, e.g., )Tj -/TT8 1 Tf -30.6042 0 TD -0.0733 Tw -(\(RPLACA IN FOO\))Tj -/TT6 1 Tf -9.1481 0 TD -0 Tw -(,)Tj -/TT8 1 Tf --39.7523 -1.2889 TD -0.0967 Tw -(\(PRINT IN FIE\),)Tj -/TT6 1 Tf -9.1948 0 TD -0.04 Tw -[( etc. It is similar to )]TJ -/TT8 1 Tf -8.8537 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.04 Tw -[( described below, but can be performed)]TJ --22.2492 -1.2889 TD -0.43 Tw -(even when )Tj -/TT10 1 Tf -5.942 0 TD -0 Tw -(FN)Tj -6 0 0 6 190.28 116.9 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 193.88 118.9 Tm -0.43 Tw -[( is compiled or blockcompiled, whereas )]TJ -/TT8 1 Tf -20.3598 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.43 Tw -[( only works on)]TJ --32.1027 -1.3944 TD -0.1622 Tw -[(interpreted functions. If )]TJ -/TT10 1 Tf -11.664 0 TD -0 Tw -(FN)Tj -6 0 0 6 241.79 104.35 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 245.39 106.35 Tm -0.1622 Tw -[( is not found in )]TJ -/TT10 1 Tf -7.7779 0 TD -0 Tw -(FN)Tj -6 0 0 6 326.2 104.35 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 329.8 106.35 Tm -(, )Tj -/TT8 1 Tf -0.6622 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.1622 Tw -[( returns the value )]TJ -/TT8 1 Tf -8.6782 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 462.47 104.35 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 466.07 106.35 Tm -( )Tj -/TT8 1 Tf -0.4122 0 TD -(NOT)Tj --38.1978 -1.3944 TD -(FOUND IN)Tj -/TT6 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FN)Tj -6 0 0 6 182.25 91.8 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 185.85 93.8 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --7.2501 -2.1722 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( breaks one function )]TJ -/TT19 1 Tf -9.6523 0 TD -0 Tw -(inside)Tj -/TT6 1 Tf -2.3901 0 TD -0.1078 Tw -[( another by first calling a function which changes the)]TJ --15.643 -1.2889 TD -0.1167 Tw -(name of )Tj -/TT10 1 Tf -4.0561 0 TD -0 Tw -(FN)Tj -6 0 0 6 173.31 60.65 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 176.91 62.65 Tm -0.1167 Tw -[( wherever it appears inside of )]TJ -/TT10 1 Tf -14.0818 0 TD -0 Tw -(FN)Tj -6 0 0 6 314.47 60.65 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 318.07 62.65 Tm -0.1167 Tw -[( to that of a new function, )]TJ -/TT10 1 Tf -12.4041 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --39.7462 -1.3944 TD -0.14 Tw -(which is initially given the same function definition as )Tj -/TT10 1 Tf -25.4861 0 TD -0 Tw -(FN)Tj -6 0 0 6 366.2 48.1 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 369.8 50.1 Tm -0.14 Tw -[(. Then )]TJ -/TT8 1 Tf -3.6759 0 TD -0 Tw -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.14 Tw -[( proceeds to)]TJ -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -23 0 obj -<< -/Length 9872 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-4)Tj -/TT13 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0589 Tw -(break on )Tj -/TT10 1 Tf -4.2291 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -0.0589 Tw -[( exactly as described above. In addition to breaking )]TJ -/TT10 1 Tf -23.7661 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf --38.1969 -1.2889 TD -0.04 Tw -(and adding )Tj -/TT10 1 Tf -5.4237 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -[( to the list )]TJ -/TT8 1 Tf -4.7513 0 TD -0 Tw -(BROKENFNS)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.54 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.04 Tw -[( adds )]TJ -/TT10 1 Tf -2.7255 0 TD -0 Tw -(FN1)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -[( to the property value)]TJ --30.2433 -1.2889 TD -0.02 Tw -(for the property )Tj -/TT8 1 Tf -7.3705 0 TD -0 Tw -(NAMESCHANGED)Tj -/TT6 1 Tf -7.2012 0 TD -0.02 Tw -[( on the property list of )]TJ -/TT10 1 Tf -10.2455 0 TD -0 Tw -(FN)Tj -6 0 0 6 408.13 544.34 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 411.73 546.34 Tm -0.02 Tw -[( and puts )]TJ -/TT8 1 Tf -4.457 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 468.05 544.34 Tm -(2)Tj -/TT8 1 Tf -0.6 0 TD -( )Tj -9 0 0 9 475.53 546.34 Tm -(. )Tj -/TT10 1 Tf -1.2469 0 TD -(FN)Tj -6 0 0 6 497.5499 544.34 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 501.15 546.34 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( on the)]TJ --36.9501 -1.3944 TD -0.1433 Tw -(property list of )Tj -/TT10 1 Tf -7.2903 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -0.1433 Tw -[( under the property )]TJ -/TT8 1 Tf -9.5299 0 TD -0 Tw -(ALIAS)Tj -/TT6 1 Tf -3.0005 0 TD -0.1433 Tw -[(. This will enable )]TJ -/TT8 1 Tf -8.7176 0 TD -0 Tw -(UNBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.1433 Tw -[( to)]TJ --38.74 -1.2889 TD -0 Tw -(recognize what changes have been made and restore the function )Tj -/TT10 1 Tf -29.104 0 TD -(FN)Tj -6 0 0 6 446.76 520.19 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 450.36 522.19 Tm -( to its original state.)Tj --30.7067 -2.1722 TD -(If )Tj -/TT10 1 Tf -1.0399 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.12 Tw -[( is nonatomic and not of the above form, )]TJ -/TT8 1 Tf -19.2074 0 TD -0 Tw -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.12 Tw -[( is called for each member of )]TJ -/TT10 1 Tf -13.7502 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf --38.7983 -1.2889 TD -0.2033 Tw -(using the same values for )Tj -/TT10 1 Tf -12.5313 0 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.7033 0 TD -(COMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.2033 Tw -(, and )Tj -/TT10 1 Tf -2.8495 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2033 Tw -[(. This distributivity permits you to)]TJ --23.2854 -1.2889 TD -0 Tw -(specify complicated break conditions on several functions. For example,)Tj -/TT8 1 Tf -2.6667 -1.6 TD -(\(BREAK0 \(FOO1 \(\(PRINT PRIN1\) IN \(FOO2 FOO3\)\)\))Tj -0 -1 TD -( \(NEQ X T\))Tj -T* -( \(EVAL ?= \(Y Z\) OK\) \))Tj -/TT6 1 Tf --2.6667 -1.8444 TD -0.1044 Tw -(will break on )Tj -/TT8 1 Tf -6.3817 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6044 0 TD -(PRINT-IN-FOO2)Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT8 1 Tf -0.6044 0 TD -(PRINT-IN-FOO3)Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT8 1 Tf -0.6044 0 TD -(PRIN1-IN-FOO2)Tj -/TT6 1 Tf -7.8013 0 TD -0.1044 Tw -[( and )]TJ -/TT8 1 Tf -2.4018 0 TD -0 Tw -(PRIN1-)Tj --36.401 -1.2222 TD -(IN-FOO3.)Tj -/TT6 1 Tf -0 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( is non-atomic, the value of )Tj -/TT8 1 Tf -12.2017 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -( is a list of the functions broken.)Tj -/TT8 1 Tf --20.589 -2.2156 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BREAK)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 204.0035 380.9 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 380.9 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.1344 Tw -(For each atomic argument, it performs )Tj -/TT8 1 Tf -18.0454 0 TD -0 Tw -(\(BREAK0 )Tj -/TT10 1 Tf -5.1219 0 TD -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.3211 Tw -[( T\))]TJ -/TT6 1 Tf -2.1214 0 TD -0.1344 Tw -[(. For each list, it performs)]TJ -/TT8 1 Tf --27.6891 -1.2889 TD -0.2978 Tw -(\(APPLY BREAK0)Tj -/TT6 1 Tf -8.6991 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3744 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1244 Tw -[(. For example, )]TJ -/TT8 1 Tf -7.2439 0 TD -0.2978 Tw -(\(BREAK FOO1 \(FOO2 \(GREATERP N 5\))Tj --19.3179 -1.2889 TD -0 Tw -(\(EVAL\)\)\))Tj -/TT6 1 Tf -4.8008 0 TD -0.01 Tw -[( is equivalent to)]TJ -/TT8 1 Tf -7.0432 0 TD -0.0244 Tw -[( \(BREAK0 FOO1 T\))]TJ -/TT6 1 Tf -10.275 0 TD -0.01 Tw -[( and )]TJ -/TT8 1 Tf -2.2129 0 TD -0.0244 Tw -(\(BREAK0 FOO2 \(GREATERP N)Tj --24.3318 -1.2889 TD -0 Tw -(5\) \(EVAL\)\))Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT8 1 Tf --9.2677 -2.2156 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TRACE)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT13 1 Tf -10 0 0 10 198.6026 309.56 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 309.56 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.1033 Tw -(For each atomic argument, it performs )Tj -/TT8 1 Tf -17.8588 0 TD -0 Tw -(\(BREAK0 )Tj -/TT10 1 Tf -5.0486 0 TD -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2478 Tw -[( T \(TRACE ?= NIL GO\)\))]TJ -/TT6 1 Tf -14.441 0 TD -0 Tw -(.)Tj --39.7488 -1.2889 TD -0.0844 Tw -(The flag )Tj -/TT8 1 Tf -4.0229 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( is checked for in )]TJ -/TT8 1 Tf -8.1288 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0844 Tw -[( and causes the message )]TJ -/TT10 1 Tf -11.3705 0 TD -0 Tw -(FUNCTION)Tj -/TT8 1 Tf -5.4009 0 TD -0.2022 Tc -( :)Tj -/TT6 1 Tf -1.4024 0 TD -0 Tc -0.0844 Tw -( to be)Tj --36.9265 -1.2889 TD -0 Tw -(printed instead of )Tj -/TT8 1 Tf -8.127 0 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FUNCTION)Tj -/TT6 1 Tf -4.8008 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(BROKEN\))Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --17.9785 -2.0667 TD -0.0556 Tw -(For each list argument, )Tj -/TT8 1 Tf -10.6304 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -[( is the function to be traced, and )]TJ -/TT8 1 Tf -14.8556 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -[( the forms to be viewed,)]TJ --29.0866 -1.2889 TD -0 Tw -(i.e., )Tj -/TT8 1 Tf -1.77 0 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -( performs:)Tj -/TT8 1 Tf --2.1038 -1.6667 TD -(\(BREAK0 \(CAR )Tj -/TT10 1 Tf -7.8013 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(\) T \(LIST TRACE ?= \(CDR )Tj -/TT10 1 Tf -15.6025 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(\) GO\)\))Tj -/TT6 1 Tf --30.8713 -1.8444 TD -0.0656 Tw -(For example, )Tj -/TT8 1 Tf -6.1272 0 TD -0.1578 Tw -(\(TRACE FOO1 \(FOO2 Y\)\))Tj -/TT6 1 Tf -13.0754 0 TD -0.0656 Tw -[( causes both )]TJ -/TT8 1 Tf -5.8275 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0656 Tw -[( and )]TJ -/TT8 1 Tf -2.324 0 TD -0 Tw -(FOO2)Tj -/TT6 1 Tf -2.4004 0 TD -0.0656 Tw -[( to be traced. All)]TJ --32.1549 -1.2889 TD -0.0144 Tw -(the arguments of)Tj -/TT8 1 Tf -7.543 0 TD -0.0356 Tw -[( FOO1)]TJ -/TT6 1 Tf -3.036 0 TD -0.0144 Tw -[( are printed; only the value of )]TJ -/TT8 1 Tf -13.4395 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0144 Tw -[( is printed for )]TJ -/TT8 1 Tf -6.3317 0 TD -0 Tw -(FOO2)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[(. In the special)]TJ --33.3508 -1.2889 TD -0.0178 Tw -(case when you want to see )Tj -/TT19 1 Tf -12.1316 0 TD -0 Tw -(only)Tj -/TT6 1 Tf -1.7778 0 TD -0.0178 Tw -[( the value, you can perform )]TJ -/TT8 1 Tf -12.5447 0 TD -0.0433 Tw -(\(TRACE \()Tj -/TT10 1 Tf -4.8441 0 TD -0 Tw -(FUNCTION)Tj -/TT8 1 Tf -4.8008 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0178 Tw -[(. This)]TJ --37.2991 -1.2889 TD -0 Tw -(sets up a break with commands )Tj -/TT8 1 Tf -14.2456 0 TD -(\(TRACE ?= \(NIL\) GO\))Tj -/TT6 1 Tf -11.4019 0 TD -(.)Tj -/TT15 1 Tf --25.6475 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1911 Tw -[(: You can always call )]TJ -/TT8 1 Tf -10.8693 0 TD -0 Tw -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.1911 Tw -[( to obtain combination of options of )]TJ -/TT8 1 Tf -17.817 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.1911 Tw -[( not)]TJ --38.1096 -1.2889 TD -0.4478 Tw -(directly available with )Tj -/TT8 1 Tf -11.4898 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.4478 Tw -[( and )]TJ -/TT8 1 Tf -3.0884 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.4478 Tw -[(. These two functions merely provide)]TJ --20.5792 -1.2889 TD -0 Tw -(convenient ways of calling )Tj -/TT8 1 Tf -12.0239 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -(, and will serve for most uses.)Tj -/TT15 1 Tf --15.6245 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0367 Tw -(: )Tj -/TT8 1 Tf -0.8233 0 TD -0 Tw -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5367 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -(, and )Tj -/TT8 1 Tf -2.5162 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( print a warning if you try to modify a function on the)]TJ --15.6999 -1.2889 TD -0 Tw -(list )Tj -/TT8 1 Tf -1.582 0 TD -(UNSAFE.TO.MODIFY.FNS)Tj -/TT6 1 Tf -12.002 0 TD -( \(Chapter 10\).)Tj -/TT8 1 Tf --16.2507 -2.0667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BREAKIN)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHERE)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHEN)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -18.1784 0 TD -([NLambda Function])Tj -/TT8 1 Tf --30.6633 -1.8444 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0856 Tw -[( enables you to insert a break, i.e., a call to )]TJ -/TT8 1 Tf -19.736 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0855 Tw -[( \(Chapter 14\), at a specified)]TJ --27.5373 -1.2889 TD -0.0978 Tw -(location in the interpreted function )Tj -/TT10 1 Tf -16.1964 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0978 Tw -(. )Tj -/TT8 1 Tf -0.9456 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0978 Tw -[( can be used to insert breaks before or)]TJ --22.5428 -1.2889 TD -0 Tw -(after )Tj -/TT8 1 Tf -2.3465 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0633 Tw -[( labels, particular )]TJ -/TT8 1 Tf -8.0743 0 TD -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0633 Tw -[( expressions, or even the evaluation of a variable. This)]TJ -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -26 0 obj -<< -/Length 10184 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-5)Tj -/TT13 1 Tf -10 0 0 10 324.52 612 Tm -(BREAKING, TRACING, AND ADVISING)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0444 Tw -(is because )Tj -/TT8 1 Tf -4.7857 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0444 Tw -[( operates by calling the editor and actually inserting a call to )]TJ -/TT8 1 Tf -27.4113 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf --36.3976 -1.2889 TD -0.0733 Tw -(at a specified point )Tj -/TT19 1 Tf -8.9183 0 TD -0 Tw -(inside)Tj -/TT6 1 Tf -2.3901 0 TD -0.0733 Tw -[( of the function. If )]TJ -/TT10 1 Tf -8.8331 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0733 Tw -[( is a compiled function, )]TJ -/TT8 1 Tf -10.9341 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0733 Tw -[( returns)]TJ -/TT8 1 Tf --36.4765 -1.2889 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(UNBREAKABLE\))Tj -/TT6 1 Tf -7.2012 0 TD -( as its value.)Tj -/TT10 1 Tf --9.2515 -2.0667 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1667 Tw -[( should be an expression that is evaluated whenever the break is entered. If the)]TJ --2.4004 -1.2889 TD -0.2078 Tw -(value of the expression is non-)Tj -/TT8 1 Tf -14.4876 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2078 Tw -(, a break is entered, otherwise the function simply)Tj --16.2879 -1.2889 TD -0.2722 Tw -[(called and returns without causing a break. This provides the means of creating a)]TJ -0 -1.2222 TD -0 Tw -(conditional break. For )Tj -/TT8 1 Tf -10.2402 0 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -(, unlike )Tj -/TT8 1 Tf -3.5522 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -(, if )Tj -/TT10 1 Tf -1.374 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, it defaults to )Tj -/TT8 1 Tf -6.3062 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --35.2896 -2.0667 TD -(COMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.01 Tw -(, if non-)Tj -/TT8 1 Tf -3.437 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.01 Tw -(, should be a list of break commands, that are interpreted and executed if)Tj --7.6377 -1.2889 TD -0 Tw -(a break occurs. \(See the )Tj -/TT10 1 Tf -10.792 0 TD -(BRKCONMS)Tj -/TT6 1 Tf -4.8008 0 TD -( argument to )Tj -/TT8 1 Tf -5.9463 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -(, Chapter 14.\))Tj -/TT10 1 Tf --25.1397 -2.0667 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( specifies where in the definition of )]TJ -/TT10 1 Tf -16.0436 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0411 Tw -[( the call to )]TJ -/TT8 1 Tf -4.9496 0 TD -0 Tw -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0411 Tw -[( is to be inserted. )]TJ -/TT10 1 Tf -8.2027 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf --36.9972 -1.2889 TD -0.07 Tw -(should be a list of the form )Tj -/TT8 1 Tf -12.5838 0 TD -0.1689 Tw -(\(BEFORE ...\), \(AFTER ...\))Tj -/TT6 1 Tf -15.5091 0 TD -0.07 Tw -(, or )Tj -/TT8 1 Tf -1.8309 0 TD -0.1689 Tw -(\(AROUND ...\))Tj -/TT6 1 Tf -7.3701 0 TD -0.07 Tw -[(. You)]TJ --37.2938 -1.2889 TD -0.05 Tw -(specify where the break is to be inserted by a sequence of editor commands, preceded by)Tj -0 -1.2222 TD -0.0622 Tw -(one of the symbols )Tj -/TT8 1 Tf -8.7987 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5622 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0622 Tw -(, or )Tj -/TT8 1 Tf -1.8154 0 TD -0 Tw -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0622 Tw -(, which )Tj -/TT8 1 Tf -3.6074 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0622 Tw -[( uses to determine what)]TJ --29.186 -1.2889 TD -0.08 Tw -(to do once the editor has found the specified point, i.e., put the call to )Tj -/TT8 1 Tf -32.0169 0 TD -0.1911 Tw -(BREAK1 BEFORE)Tj -/TT6 1 Tf --32.0169 -1.2889 TD -0.1022 Tw -(that point, )Tj -/TT8 1 Tf -5.035 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.1022 Tw -[( that point, or )]TJ -/TT8 1 Tf -6.6804 0 TD -0 Tw -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -0.1022 Tw -[( that point. For example, )]TJ -/TT8 1 Tf -11.5878 0 TD -0.2444 Tw -(\(BEFORE COND\))Tj -/TT6 1 Tf -8.0457 0 TD -0.1022 Tw -[( will)]TJ --37.9499 -1.2889 TD -0.01 Tw -(insert a break before the first occurrence of )Tj -/TT8 1 Tf -19.1913 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.51 0 TD -0.0233 Tw -(\(AFTER COND 2 1\))Tj -/TT6 1 Tf -9.6716 0 TD -0.01 Tw -[( will insert a break)]TJ --31.7733 -1.2889 TD -0.0111 Tw -(after the predicate in the first )Tj -/TT8 1 Tf -13.1424 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.0111 Tw -[( clause, )]TJ -/TT8 1 Tf -3.5129 0 TD -0.0278 Tw -(\(AFTER BF \(SETQ X &\)\))Tj -/TT6 1 Tf -12.7132 0 TD -0.0111 Tw -[( after the )]TJ -/TT19 1 Tf -4.2037 0 TD -0 Tw -(last)Tj -/TT6 1 Tf -1.4438 0 TD -0.0111 Tw -[( place)]TJ -/TT8 1 Tf --37.4164 -1.2889 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( is set. Note that )]TJ -/TT8 1 Tf -7.797 0 TD -0.0756 Tw -(\(BEFORE TTY:\))Tj -/TT6 1 Tf -7.8768 0 TD -0.0311 Tw -[( or )]TJ -/TT8 1 Tf -1.5031 0 TD -0.0756 Tw -(\(AFTER TTY:\))Tj -/TT6 1 Tf -7.2767 0 TD -0.0311 Tw -[( permit you to type in commands)]TJ --25.0538 -1.2889 TD -0.1933 Tw -(to the editor, locate the correct point, and verify it, and exit from the editor with )Tj -/TT8 1 Tf -38.5582 0 TD -0 Tw -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --39.7584 -1.2889 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -( then inserts the break )Tj -/TT8 1 Tf -10.0107 0 TD -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -( that point.)Tj -/TT15 1 Tf --26.604 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.0511 Tw -[(: A )]TJ -/TT8 1 Tf -1.9312 0 TD -0 Tw -(STOP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0511 Tw -[( command typed to )]TJ -/TT8 1 Tf -9.098 0 TD -0 Tw -(TTY:)Tj -/TT6 1 Tf -2.4004 0 TD -0.0511 Tw -[( produces the same effect as an unsuccessful edit)]TJ --18.0521 -1.2889 TD -0.0778 Tw -(command in the original specification, e.g., )Tj -/TT8 1 Tf -19.7142 0 TD -0.1867 Tw -(\(BEFORE CONDD\))Tj -/TT6 1 Tf -8.588 0 TD -0.0778 Tw -[(. In both cases, the editor)]TJ --28.3023 -1.2889 TD -0 Tw -(aborts, and )Tj -/TT8 1 Tf -5.187 0 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -( types )Tj -/TT8 1 Tf -2.8862 0 TD -(\(NOT FOUND\))Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --18.875 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.0777 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1578 Tw -[( is )]TJ -/TT8 1 Tf -1.5304 0 TD -0.3778 Tw -(\(BEFORE ...\))Tj -/TT6 1 Tf -7.5789 0 TD -0.1578 Tw -[( or )]TJ -/TT8 1 Tf -1.7565 0 TD -0.3778 Tw -(\(AFTER ...\))Tj -/TT6 1 Tf -6.9789 0 TD -0.1578 Tw -(, the break expression is )Tj -/TT8 1 Tf -11.6112 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1578 Tw -(, since the)Tj --35.3343 -1.2889 TD -0.1444 Tw -[(value of the break is irrelevant. For )]TJ -/TT8 1 Tf -17.1082 0 TD -0.3456 Tw -(\(AROUND ...\))Tj -/TT6 1 Tf -7.5467 0 TD -0.1444 Tw -(, the break expression will be the)Tj --24.6549 -1.2889 TD -0.0867 Tw -[(indicated form. In this case, you can use the )]TJ -/TT8 1 Tf -20.6709 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( command to evaluate that form, and)]TJ --23.0713 -1.2889 TD -0.2367 Tw -[(examine its value, before allowing the computation to proceed. For example, if you)]TJ -0 -1.2222 TD -0.1267 Tw -(inserted a break after a )Tj -/TT8 1 Tf -10.9868 0 TD -0 Tw -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.1267 Tw -[( predicate, e.g., )]TJ -/TT8 1 Tf -7.2911 0 TD -0.3044 Tw -(\(AFTER \(EQUAL X Y\)\))Tj -/TT6 1 Tf -12.3152 0 TD -0.1267 Tw -(, you would be)Tj --32.9936 -1.2889 TD -0.0711 Tw -(powerless to alter the flow of computation if the predicate were not true, since the break)Tj -0 -1.2222 TD -0.2033 Tw -[(would not be reached. However, by breaking )]TJ -/TT8 1 Tf -22.1394 0 TD -0.4889 Tw -(\(AROUND \(EQUAL X Y\)\))Tj -/TT6 1 Tf -13.4686 0 TD -0.2033 Tw -(, you can)Tj --35.608 -1.2889 TD -0.0233 Tw -(evaluate the break expression, i.e., )Tj -/TT8 1 Tf -15.4873 0 TD -0.0567 Tw -(\(EQUAL X Y\))Tj -/TT6 1 Tf -6.7144 0 TD -0.0233 Tw -(, look at its value, and return something)Tj --22.2017 -1.2889 TD -0 Tw -(else if desired.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -0.9733 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0533 Tw -[( is interpreted, )]TJ -/TT8 1 Tf -6.8392 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[( types )]TJ -/TT8 1 Tf -2.9929 0 TD -0 Tw -(SEARCHING)Tj -/TT6 1 Tf -5.4009 0 TD -0.0533 Tw -[(... while it calls the editor. If the location)]TJ --21.6071 -1.2889 TD -0.0578 Tw -(specified by )Tj -/TT10 1 Tf -5.6776 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0578 Tw -[( is not found, )]TJ -/TT8 1 Tf -6.3249 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0578 Tw -[( types )]TJ -/TT8 1 Tf -3.0018 0 TD -0.1378 Tw -(\(NOT FOUND\))Tj -/TT6 1 Tf -6.7388 0 TD -0.0578 Tw -[( and exits. If it is found,)]TJ -/TT8 1 Tf --28.9442 -1.2889 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0389 Tw -[( puts )]TJ -/TT8 1 Tf -2.5319 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0389 Tw -[( under the property )]TJ -/TT8 1 Tf -9.1121 0 TD -0 Tw -(BROKEN-IN)Tj -/TT6 1 Tf -5.4009 0 TD -0.0389 Tw -[( and )]TJ -/TT8 1 Tf -2.2706 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2889 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2889 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0389 Tw -[( under the the)]TJ --33.6955 -1.2889 TD -0 Tw -(property )Tj -/TT8 1 Tf -4.4461 0 TD -(BRKINFO)Tj -/TT6 1 Tf -4.2007 0 TD -0.2967 Tw -[( on the property list of )]TJ -/TT10 1 Tf -11.9055 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2967 Tw -(, and adds )Tj -/TT10 1 Tf -5.7284 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2967 Tw -[( to the front of the list)]TJ -/TT8 1 Tf --28.681 -1.2889 TD -0 Tw -(BROKENFNS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -2.0667 TD -0.05 Tw -(Multiple break points, can be inserted with a single call to )Tj -/TT8 1 Tf -26.3308 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.05 Tw -[( by using a list of the)]TJ --30.5314 -1.2889 TD -0 Tw -(form )Tj -/TT8 1 Tf -2.5634 0 TD -0.3756 Tw -(\(\(BEFORE ...\) ... \(AROUND ...\)\))Tj -/TT6 1 Tf -20.1053 0 TD -0.1567 Tw -[( for )]TJ -/TT10 1 Tf -2.0873 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1567 Tw -[(. It is also possible to call)]TJ -/TT8 1 Tf --27.7564 -1.2889 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0689 Tw -[( or )]TJ -/TT8 1 Tf -1.5787 0 TD -0 Tw -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0689 Tw -[( on a function which has been modified by )]TJ -/TT8 1 Tf -19.6908 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0689 Tw -(, and conversely to)Tj -/TT8 1 Tf --31.4712 -1.2889 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -( a function which has been redefined by a call to )Tj -/TT8 1 Tf -21.5562 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -ET -endstream -endobj -27 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -29 0 obj -<< -/Length 9093 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-6)Tj -/TT13 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0378 Tw -(The message typed for a )Tj -/TT8 1 Tf -11.2045 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0378 Tw -[( break is )]TJ -/TT8 1 Tf -4.0616 0 TD -0 Tw -(\(\()Tj -/TT10 1 Tf -1.2002 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.2878 0 TD -(BROKEN\))Tj -/TT6 1 Tf -4.2007 0 TD -0.0378 Tw -(, where )Tj -/TT10 1 Tf -3.5946 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0378 Tw -[( is the name of the)]TJ --31.7505 -1.2889 TD -0.0044 Tw -(function inside of which the break was inserted. Any error, or typing control-E, will cause)Tj -0 -1.2222 TD -0 Tw -(the full identifying message to be printed, e.g., )Tj -/TT8 1 Tf -20.773 0 TD -(\(FOO BROKEN AFTER COND 2 1\))Tj -/TT6 1 Tf -16.2026 0 TD -(.)Tj --36.9756 -2.0667 TD -0.0511 Tw -(A special check is made to avoid inserting a break inside of an expression headed by any)Tj -0 -1.2222 TD -0.0111 Tw -(member of the list )Tj -/TT8 1 Tf -8.3145 0 TD -0 Tw -(NOBREAKS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0111 Tw -(, initialized to )Tj -/TT8 1 Tf -6.3585 0 TD -0.0278 Tw -(\(GO QUOTE *\))Tj -/TT6 1 Tf -7.2567 0 TD -0.0111 Tw -(, since this break would never)Tj --26.7305 -1.2889 TD -0.0578 Tw -[(be activated. For example, if )]TJ -/TT8 1 Tf -13.291 0 TD -0.14 Tw -(\(GO L\))Tj -/TT6 1 Tf -3.7406 0 TD -0.0578 Tw -[( appears before the label )]TJ -/TT8 1 Tf -11.3255 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5578 0 TD -0.14 Tw -(BREAKIN \(AFTER L\))Tj -/TT6 1 Tf --29.515 -1.2889 TD -0.06 Tw -(will not insert the break inside of the )Tj -/TT8 1 Tf -16.9527 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.06 Tw -[( expression, but skip this occurrence of )]TJ -/TT8 1 Tf -17.8238 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.06 Tw -[( and go)]TJ --36.5768 -1.2889 TD -0.0111 Tw -(on to the next L, in this case the label )Tj -/TT8 1 Tf -16.6067 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.0111 Tw -[(. Similarly, for )]TJ -/TT8 1 Tf -6.8413 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0111 Tw -[( or )]TJ -/TT8 1 Tf -1.4631 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0111 Tw -[( breaks, )]TJ -/TT8 1 Tf -3.6795 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf --35.7918 -1.2889 TD -0.0311 Tw -[(checks to make sure that the break is being inserted at a safe place. For example, if you)]TJ -0 -1.2222 TD -0.0378 Tw -(request a break )Tj -/TT8 1 Tf -7.1128 0 TD -0.0911 Tw -(\(AFTER X\))Tj -/TT6 1 Tf -5.492 0 TD -0.0378 Tw -[( in )]TJ -/TT8 1 Tf -1.4486 0 TD -0.0911 Tw -(\(PROG ... \(SETQ X &\) ...\))Tj -/TT6 1 Tf -15.458 0 TD -0.0378 Tw -(, the break will actually)Tj --29.5114 -1.2889 TD -0.2944 Tw -(be inserted after )Tj -/TT8 1 Tf -8.2857 0 TD -0.7067 Tw -(\(SETQ X &\))Tj -/TT6 1 Tf -7.4143 0 TD -0.2944 Tw -(, and a message printed to this effect, e.g., )Tj -/TT8 1 Tf -21.297 0 TD -0 Tw -(BREAK)Tj --36.997 -1.2889 TD -(INSERTED AFTER \(SETQ X &\))Tj -/TT6 1 Tf -15.0024 0 TD -(.)Tj -/TT8 1 Tf --17.6691 -2.2156 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNBREAK)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 214.8035 416.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 416.8 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --25.9256 -1.8444 TD -(UNBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.3922 Tw -[( takes an indefinite number of functions modified by )]TJ -/TT8 1 Tf -27.071 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.8922 0 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.3922 Tw -(, or)Tj -/TT8 1 Tf --38.1649 -1.2889 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.1156 Tw -[( and restores them to their original state by calling )]TJ -/TT8 1 Tf -23.6033 0 TD -0 Tw -(UNBREAK0)Tj -/TT6 1 Tf -4.8008 0 TD -0.1156 Tw -[(. Returns list of)]TJ --32.6048 -1.2889 TD -0 Tw -(values of )Tj -/TT8 1 Tf -4.2407 0 TD -(UNBREAK0)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --9.0415 -2.0667 TD -(\(UNBREAK\))Tj -/TT6 1 Tf -5.4009 0 TD -0.2411 Tw -[( will unbreak all functions on )]TJ -/TT8 1 Tf -14.663 0 TD -0 Tw -(BROKENFNS)Tj -/TT6 1 Tf -5.4009 0 TD -0.2411 Tw -[(, in reverse order. It first sets)]TJ -/TT8 1 Tf --25.4647 -1.2889 TD -0 Tw -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --9.1733 -2.0667 TD -0.4811 Tw -(\(UNBREAK T\))Tj -/TT6 1 Tf -7.0822 0 TD -0.2011 Tw -[( unbreaks just the first function on )]TJ -/TT8 1 Tf -16.8282 0 TD -0 Tw -(BROKENFNS)Tj -/TT6 1 Tf -5.4009 0 TD -0.2011 Tw -(, i.e., the most recently)Tj --29.3113 -1.2889 TD -0 Tw -(broken function.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNBREAK0)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN )Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 236.4061 297.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 297.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Restores )Tj -/TT10 1 Tf -4.0629 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0722 Tw -[( to its original state. If )]TJ -/TT10 1 Tf -10.5959 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0722 Tw -[( was not broken, value is )]TJ -/TT8 1 Tf -11.6594 0 TD -0.1722 Tw -(\(NOT BROKEN\) )Tj -/TT6 1 Tf -8.1457 0 TD -0.0722 Tw -(and no)Tj --36.8643 -1.2889 TD -0 Tw -(changes are made. If )Tj -/TT10 1 Tf -9.5835 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( was modified by )Tj -/TT8 1 Tf -7.9116 0 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(UNBREAKIN)Tj -/TT6 1 Tf -5.4009 0 TD -( is called to edit it back to)Tj --28.7969 -1.2889 TD -0.0689 Tw -[(its original state. If )]TJ -/TT10 1 Tf -9.0627 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0689 Tw -[( was created from )]TJ -/TT8 1 Tf -8.424 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 358.4 255.46 Tm -(1)Tj -/TT15 1 Tf -9 0 0 9 362 257.46 Tm -( )Tj -/TT8 1 Tf -0.3189 0 TD -(IN)Tj -/TT15 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.3189 0 TD -(FN)Tj -6 0 0 6 389.34 255.46 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 392.94 257.46 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0689 Tw -(, \(i.e., if it has a property )Tj -/TT8 1 Tf -11.4817 0 TD -0 Tw -(ALIAS)Tj -/TT6 1 Tf -3.0005 0 TD -(\),)Tj --39.409 -1.3944 TD -0.0033 Tw -(the function in which )Tj -/TT10 1 Tf -9.7135 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0033 Tw -( appears is restored to its original state. All dummy functions that)Tj --10.9137 -1.2889 TD -0.0056 Tw -[(were created by the break are eliminated. Adds property value of )]TJ -/TT8 1 Tf -29.4641 0 TD -0 Tw -(BRKINFO)Tj -/TT6 1 Tf -4.2007 0 TD -0.0056 Tw -[( to the front of)]TJ -/TT8 1 Tf --33.6648 -1.2889 TD -0 Tw -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT15 1 Tf --6.001 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.1533 Tw -(: )Tj -/TT8 1 Tf -1.0567 0 TD -0 Tw -(\(UNBREAK0)Tj -/TT15 1 Tf -5.4009 0 TD -( )Tj -/TT8 1 Tf -0.4033 0 TD -(\()Tj -/TT10 1 Tf -1.2002 0 TD -(FN)Tj -6 0 0 6 277.34 201.11 Tm -(1)Tj -/TT15 1 Tf -9 0 0 9 280.94 203.11 Tm -( )Tj -/TT8 1 Tf -0.4033 0 TD -(IN)Tj -/TT15 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.4033 0 TD -(FN)Tj -6 0 0 6 309.8 201.11 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 313.4 203.11 Tm -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -0.1533 Tw -[( is allowed: )]TJ -/TT8 1 Tf -6.1299 0 TD -0 Tw -(UNBREAK0)Tj -/TT6 1 Tf -4.8008 0 TD -0.1533 Tw -[( will operate on )]TJ -/TT8 1 Tf -7.7745 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 508.75 201.11 Tm -(1)Tj -/TT8 1 Tf -9 0 0 9 512.35 203.11 Tm -(-IN-)Tj -/TT10 1 Tf --37.5944 -1.3944 TD -(FN)Tj -6 0 0 6 184.8 188.56 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 188.4 190.56 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( instead.)Tj -/TT8 1 Tf --4.8668 -2.3211 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNBREAKIN)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -(\))Tj -/TT13 1 Tf -10 0 0 10 225.6035 169.67 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 169.67 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0967 Tw -(Performs the appropriate editing operations to eliminate all changes made by )Tj -/TT8 1 Tf -35.5458 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --39.7464 -1.2889 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( may be either the name or definition of a function. Value is )Tj -/TT10 1 Tf -26.7734 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --29.1738 -2.0667 TD -(UNBREAKIN)Tj -/TT6 1 Tf -5.4009 0 TD -0.2267 Tw -[( is automatically called by )]TJ -/TT8 1 Tf -12.8804 0 TD -0 Tw -(UNBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.2267 Tw -[( if )]TJ -/TT10 1 Tf -1.5774 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2267 Tw -[( has property )]TJ -/TT8 1 Tf -6.8353 0 TD -0 Tw -(BROKEN-IN)Tj -/TT6 1 Tf -5.4009 0 TD -0.2267 Tw -[( with)]TJ --37.4957 -1.2889 TD -0 Tw -(value )Tj -/TT8 1 Tf -2.688 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( on its property list.)Tj -/TT8 1 Tf --5.9548 -2.2156 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(REBREAK)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT13 1 Tf -10 0 0 10 209.4026 91.33 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 91.33 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.4178 Tw -(Nlambda nospread function for rebreaking functions that were previously broken)Tj -0 -1.2222 TD -0.1933 Tw -[(without having to respecify the break information. For each function on )]TJ -/TT10 1 Tf -34.5109 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.6933 0 TD -(REBREAK)Tj -/TT6 1 Tf --35.8044 -1.2889 TD -(searches )Tj -/TT8 1 Tf -4.0455 0 TD -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -[( for break\(s\) and performs the corresponding operation. Value is a)]TJ -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -32 0 obj -<< -/Length 7797 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-7)Tj -/TT13 1 Tf -10 0 0 10 324.52 612 Tm -(BREAKING, TRACING, AND ADVISING)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0033 Tw -(list of values corresponding to calls to )Tj -/TT8 1 Tf -16.9916 0 TD -0 Tw -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -0.0008 Tc -0.0025 Tw -( or )Tj -/TT8 1 Tf -1.4476 0 TD -0 Tc -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0001 Tc -0.0032 Tw -(. If no information is found for)Tj --26.2405 -1.2889 TD -0 Tc -0 Tw -(a particular function, returns )Tj -/TT8 1 Tf -13.0073 0 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( - )Tj -/TT8 1 Tf -0.833 0 TD -(NO BREAK INFORMATION SAVED\))Tj -/TT6 1 Tf -16.2026 0 TD -(.)Tj -/TT8 1 Tf --31.8433 -2.0667 TD -(\(REBREAK\))Tj -/TT6 1 Tf -5.4009 0 TD -0.3567 Tw -[( rebreaks everything on )]TJ -/TT8 1 Tf -12.1474 0 TD -0 Tw -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.3567 Tw -(, so )Tj -/TT8 1 Tf -2.4331 0 TD -0 Tw -(\(REBREAK\))Tj -/TT6 1 Tf -5.4009 0 TD -0.3567 Tw -[( is the inverse of)]TJ -/TT8 1 Tf --31.3832 -1.2889 TD -0 Tw -(\(UNBREAK\))Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --5.4009 -2.0667 TD -0.6211 Tw -(\(REBREAK T\))Tj -/TT6 1 Tf -7.2222 0 TD -0.2589 Tw -[( rebreaks just the first break on )]TJ -/TT8 1 Tf -15.698 0 TD -0 Tw -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.2589 Tw -(, i.e., the function most)Tj --28.9211 -1.2889 TD -0 Tw -(recently unbroken.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CHANGENAME)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FROM)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 225.3096 478.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 478.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.02 Tw -(Replaces all occurrences of )Tj -/TT10 1 Tf -12.1611 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -[( by )]TJ -/TT10 1 Tf -1.6494 0 TD -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -[( in the definition of )]TJ -/TT10 1 Tf -8.8212 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -[(. If )]TJ -/TT10 1 Tf -1.7299 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.02 Tw -[( is defined by an expr)]TJ --30.3625 -1.2889 TD -0 Tw -(definition, )Tj -/TT8 1 Tf -4.8431 0 TD -(CHANGENAME)Tj -/TT6 1 Tf -6.001 0 TD -0.0111 Tw -[( performs )]TJ -/TT8 1 Tf -4.5779 0 TD -0 Tw -(\(ESUBST)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.2611 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.2611 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.2611 0 TD -(\(GETD)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2611 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0111 Tw -[( \(see Chapter 16\). If )]TJ -/TT10 1 Tf -9.1267 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf --38.7953 -1.2889 TD -0.1311 Tw -(is compiled, )Tj -/TT8 1 Tf -6.2537 0 TD -0 Tw -(CHANGENAME)Tj -/TT6 1 Tf -6.001 0 TD -0.1311 Tw -[( searches the literals of )]TJ -/TT10 1 Tf -10.8953 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1311 Tw -[( \(and all of its compiler generated)]TJ --24.3502 -1.2889 TD -0 Tw -(subfunctions\), replacing each occurrence of )Tj -/TT10 1 Tf -19.3774 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --25.5112 -2.0667 TD -0.0022 Tw -(Note that )Tj -/TT10 1 Tf -4.4209 0 TD -0 Tw -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0004 Tc -0.0018 Tw -( and )Tj -/TT10 1 Tf -2.1973 0 TD -0 Tc -0 Tw -(TO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0022 Tw -( do not have to be functions, e.g., they can be names of variables, or)Tj --10.2189 -1.2889 TD -0 Tw -(any other literals.)Tj -/TT8 1 Tf -0 -2 TD -(CHANGENAME)Tj -/TT6 1 Tf -6.001 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( if at least one instance of )Tj -/TT10 1 Tf -11.334 0 TD -(FROM)Tj -/TT6 1 Tf -2.4004 0 TD -( was found, otherwise )Tj -/TT8 1 Tf -10.0386 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --39.1452 -2.2156 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VIRGINFN)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT13 1 Tf -10 0 0 10 190.6561 358.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 358.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0644 Tw -(The function that knows how to restore functions to their original state regardless of any)Tj -0 -1.2222 TD -0.2189 Tw -[(amount of breaks, breakins, advising, compiling and saving exprs, etc. It is used by)]TJ -/TT8 1 Tf -T* -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(DEFINE)Tj -/TT6 1 Tf -3.6006 0 TD -(, and the compiler.)Tj --10.7017 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9277 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -[( = NIL)]TJ -/TT6 1 Tf -3.6384 0 TD -0.0078 Tw -(, as for )Tj -/TT8 1 Tf -3.2211 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0078 Tw -(, it does not modify the definition of )Tj -/TT10 1 Tf -16.261 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0078 Tw -[( in the process)]TJ --33.6497 -1.2889 TD -0 Tw -(of producing a clean version of the definition; it works on a copy.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -1.0633 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.3433 Tw -[( = T)]TJ -/TT6 1 Tf -3.0871 0 TD -0.1433 Tw -(, as for the compiler and )Tj -/TT8 1 Tf -11.8175 0 TD -0 Tw -(DEFINE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1433 Tw -(, it physically restores the function to its)Tj --21.3687 -1.2889 TD -0.0233 Tw -(original state, and prints the changes it is making, e.g., )Tj -/TT8 1 Tf -24.4921 0 TD -0.0567 Tw -(FOO UNBROKEN)Tj -/TT6 1 Tf -7.2578 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5233 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.2733 0 TD -(UNADVISED)Tj -/TT6 1 Tf -5.4009 0 TD -(,)Tj -/TT8 1 Tf --39.7478 -1.2889 TD -(FOO NAMES RESTORED)Tj -/TT6 1 Tf -10.8018 0 TD -(, etc.)Tj --10.8018 -2.0667 TD -(Returns the virgin function definition.)Tj -/TT4 1 Tf -10 0 0 10 54 202.72 Tm -(Advising)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 200.01 m -510.01 200.01 l -S -BT -/TT6 1 Tf -9 0 0 9 78 186.06 Tm -0.0344 Tw -(The operation of advising gives you a way of modifying a function without necessarily knowing how)Tj -0 -1.2222 TD -0.2567 Tw -[(the function works or even what it does. Advising consists of modifying the )]TJ -/TT19 1 Tf -37.6304 0 TD -0 Tw -(interface)Tj -/TT6 1 Tf -3.4634 0 TD -0.2567 Tw -[( between)]TJ --41.0938 -1.2222 TD -0.1333 Tw -(functions as opposed to modifying the function definition itself, as in editing. )Tj -/TT8 1 Tf -36.3701 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6333 0 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1333 Tw -(, and)Tj -/TT8 1 Tf --43.0044 -1.2889 TD -0 Tw -(BREAKDOWN)Tj -/TT6 1 Tf -5.4009 0 TD -0.1289 Tw -(, are examples of the use of this technique: they each modify user functions by placing)Tj --5.4009 -1.2889 TD -0 Tw -(relevant computations )Tj -/TT19 1 Tf -10.189 0 TD -(between)Tj -/TT6 1 Tf -3.2417 0 TD -( the function and the rest of the programming environment.)Tj --13.4307 -2 TD -0.0233 Tw -(The principal advantage of advising, aside from its convenience, is that it allows you to treat anyones)Tj -0 -1.2222 TD -0.2389 Tw -(functions as black boxes, and to modify them without concern for their contents or details of)Tj -T* -0.0611 Tw -[(operations. For example, you could modify )]TJ -/TT8 1 Tf -20.0332 0 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( to set )]TJ -/TT8 1 Tf -3.0344 0 TD -0 Tw -(SYSDATE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0611 Tw -[( to the time and date of creation)]TJ --30.8689 -1.2889 TD -0 Tw -(by )Tj -/TT8 1 Tf -1.3594 0 TD -(\(ADVISE SYSOUT \(SETQ SYSDATE \(DATE\)\)\))Tj -/TT6 1 Tf -23.4038 0 TD -(.)Tj --24.7632 -2.0667 TD -0.0956 Tw -(As with )Tj -/TT8 1 Tf -3.926 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -0.0956 Tw -[(, advising works equally well on compiled and interpreted functions. Similarly, it is)]TJ --6.9265 -1.2889 TD -0.0967 Tw -(possible to make a change which only operates when a function is called from some other specified)Tj -0 -1.2222 TD -0.0544 Tw -[(function. For example, you can modify the interface between two particular functions, instead of the)]TJ -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -35 0 obj -<< -/Length 6120 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-8)Tj -/TT13 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1111 Tw -[(interface between one function and the rest of the world. This latter feature is especially useful for)]TJ -0 -1.2222 TD -0 Tw -(changing the )Tj -/TT19 1 Tf -5.9805 0 TD -(internal)Tj -/TT6 1 Tf -3.2231 0 TD -( workings of a system function.)Tj --9.2036 -2 TD -0.0233 Tw -(For example, suppose you wanted )Tj -/TT8 1 Tf -15.5776 0 TD -0 Tw -(TIME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0233 Tw -[( \(Chapter 22\) to print the results of your measurements to the)]TJ --17.978 -1.2889 TD -0 Tw -(file )Tj -/TT8 1 Tf -1.674 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -[( instead of the terminal. You can accomplish this by )]TJ -/TT8 1 Tf -23.6357 0 TD -0.0722 Tw -(\(ADVISE \(\(PRIN1 PRINT SPACES\))Tj --27.11 -1.2222 TD -0 Tw -(IN TIME\) BEFORE \(SETQQ U FOO\)\).)Tj -/TT6 1 Tf -0 -2.0667 TD -(Advising )Tj -/TT8 1 Tf -4.4554 0 TD -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6078 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -0.1078 Tw -(, or )Tj -/TT8 1 Tf -1.9065 0 TD -0 Tw -(SPACES)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( directly would have affected all calls to these frequently used)]TJ --16.5713 -1.2889 TD -0.0178 Tw -(functions, whereas advising )Tj -/TT8 1 Tf -12.6969 0 TD -0.0422 Tw -(\(\(PRIN1 PRINT SPACES\) IN TIME\))Tj -/TT6 1 Tf -18.1718 0 TD -0.0178 Tw -[( affects just those calls to )]TJ -/TT8 1 Tf -11.2112 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj -/TT8 1 Tf --45.0804 -1.2889 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(SPACES)Tj -/TT6 1 Tf -3.6006 0 TD -( from )Tj -/TT8 1 Tf -2.6567 0 TD -(TIME)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --14.1011 -2.0667 TD -0.0511 Tw -[(Advice can also be specified to operate after a function has been evaluated. The value of the body of)]TJ -0 -1.2222 TD -0 Tw -(the original function can be obtained from the variable )Tj -/TT8 1 Tf -24.3608 0 TD -(!VALUE)Tj -/TT6 1 Tf -3.6006 0 TD -(, as with )Tj -/TT8 1 Tf -3.957 0 TD -(BREAK1)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 426.6 Tm -(Implementation of Advising)Tj -/TT6 1 Tf -9 0 0 9 126 410.94 Tm -(After a function has been modified several times by )Tj -/TT8 1 Tf -23.0566 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -(, it will look like:)Tj -/TT8 1 Tf --18.6572 -1.6667 TD -(\(LAMBDA arguments)Tj -0 -1 TD -( \(PROG \(!VALUE\))Tj -T* -( \(SETQ !VALUE)Tj -T* -( \(PROG NIL)Tj -T* -( advice1)Tj -T* -( .)Tj -0 -1.0667 TD -( . )Tj -/TT19 1 Tf -13.8022 0 TD -(advice before)Tj -/TT8 1 Tf --13.8022 -1 TD -( .)Tj -T* -( advicen)Tj -T* -( \(RETURN )Tj -/TT10 1 Tf -13.2022 0 TD -(BODY)Tj -/TT8 1 Tf -2.4004 0 TD -(\)\)\))Tj --15.6025 -1 TD -( advice1)Tj -T* -( .)Tj -0 -1.0667 TD -( . )Tj -/TT19 1 Tf -9.0015 0 TD -(advice after)Tj -/TT8 1 Tf --9.0015 -1 TD -( .)Tj -T* -( advicem)Tj -T* -( \(RETURN !VALUE\)\)\))Tj -/TT6 1 Tf --8 -1.8444 TD -(where )Tj -/TT10 1 Tf -3.109 0 TD -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -[( is equivalent to the original definition. If )]TJ -/TT10 1 Tf -19.4145 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.09 Tw -[( was originally an expr definition, )]TJ -/TT10 1 Tf -15.7524 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -[( is)]TJ --44.2769 -1.2889 TD -0.2222 Tw -(the body of the definition, otherwise a form using a )Tj -/TT8 1 Tf -25.1924 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.2222 Tw -[( which is defined with the original)]TJ --28.793 -1.2889 TD -0 Tw -(definition.)Tj -0 -2 TD -0.2256 Tw -(The structure of a function modified by )Tj -/TT8 1 Tf -19.2376 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2256 Tw -[( allows a piece of advice to bypass the original)]TJ --22.8382 -1.2889 TD -0.0656 Tw -(definition by using the function )Tj -/TT8 1 Tf -14.5695 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0656 Tw -[(. For example, if )]TJ -/TT8 1 Tf -7.9479 0 TD -0.1567 Tw -(\(COND \(\(ATOM X)Tj -/TT15 1 Tf -8.7147 0 TD -0 Tw -(\) )Tj -/TT8 1 Tf -0.6486 0 TD -0.1567 Tw -(\(RETURN Y\)\)\))Tj -/TT6 1 Tf -7.3578 0 TD -0.0656 Tw -[( were)]TJ --42.8391 -1.2889 TD -0.0467 Tw -(one of the pieces of advice )Tj -/TT19 1 Tf -12.1394 0 TD -0 Tw -(before)Tj -/TT6 1 Tf -2.3521 0 TD -0.0467 Tw -[( a function, and this function was entered with )]TJ -/TT8 1 Tf -21.2921 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0467 Tw -[( atomic, )]TJ -/TT8 1 Tf -3.8331 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0467 Tw -[( would be)]TJ --40.8168 -1.2889 TD -0.0056 Tw -(returned as the value of the inner )Tj -/TT8 1 Tf -15.0032 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5056 0 TD -(!VALUE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0056 Tw -[( would be set to )]TJ -/TT8 1 Tf -7.2958 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -(, and control passed to the advice, if)Tj --29.4057 -1.2889 TD -0.1211 Tw -(any, to be executed )Tj -/TT8 1 Tf -9.2139 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.1211 Tw -[( the function. If this same piece of advice appeared )]TJ -/TT19 1 Tf -24.2336 0 TD -0 Tw -(after)Tj -/TT6 1 Tf -1.833 0 TD -0.1211 Tw -[( the function, )]TJ -/TT8 1 Tf -6.4576 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf --44.7386 -1.2889 TD -(would be returned as the value of the entire advised function.)Tj -0 -2 TD -0.0144 Tw -(The advice )Tj -/TT8 1 Tf -5.0924 0 TD -0.0333 Tw -(\(COND \(\(ATOM X\) \(SETQ !VALUE Y\)\)\))Tj -/TT6 1 Tf -19.9699 0 TD -0 Tw -( )Tj -/TT19 1 Tf -0.2644 0 TD -(after)Tj -/TT6 1 Tf -1.833 0 TD -0.0144 Tw -[( the function would have a similar effect,)]TJ --27.1597 -1.2889 TD -0 Tw -(but the rest of the advice )Tj -/TT19 1 Tf -11.1494 0 TD -(after)Tj -/TT6 1 Tf -1.833 0 TD -( the function would still be executed.)Tj -/TT15 1 Tf --12.9824 -2 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -(: Actually, )Tj -/TT8 1 Tf -5.0391 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -( uses its own versions of )Tj -/TT8 1 Tf -11.0171 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -(, \(called )Tj -/TT8 1 Tf -3.6987 0 TD -(ADV-PROG, ADV-)Tj --36.9219 -1.2889 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(ADV-RETURN)Tj -/TT6 1 Tf -6.001 0 TD -(\) to enable advising these functions.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -38 0 obj -<< -/Length 12172 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 493.4999 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-9)Tj -/TT13 1 Tf -10 0 0 10 324.52 612 Tm -(BREAKING, TRACING, AND ADVISING)Tj -/TT4 1 Tf --24.652 -4.38 TD -(Advise Functions)Tj -/TT8 1 Tf -9 0 0 9 78 552.54 Tm -(ADVISE)Tj -/TT6 1 Tf -3.6 0 TD -0.2467 Tw -[( is a function of four arguments: )]TJ -/TT10 1 Tf -16.1525 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.7467 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.7467 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.2467 Tw -(, and )Tj -/TT10 1 Tf -2.9362 0 TD -0 Tw -(WHAT)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT19 1 Tf -0.25 0 TD -( )Tj -/TT10 1 Tf -0.4967 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2467 Tw -[( is the function to be)]TJ --35.1303 -1.2889 TD -0.0467 Tw -(modified by advising, )Tj -/TT10 1 Tf -10.1136 0 TD -0 Tw -(WHAT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -[( is the modification, or piece of advice.)]TJ -/TT19 1 Tf -17.3257 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2967 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0467 Tw -[( is either )]TJ -/TT8 1 Tf -4.1571 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5467 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0467 Tw -(, or)Tj -/TT8 1 Tf --43.8416 -1.2889 TD -0 Tw -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -(, and indicates whether the advice is to operate )Tj -/TT8 1 Tf -21.5578 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5611 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0611 Tw -(, or)Tj -/TT8 1 Tf -1.502 0 TD -0.1467 Tw -[( AROUND)]TJ -/TT6 1 Tf -4.3474 0 TD -0.0611 Tw -[( the body of the)]TJ --38.17 -1.2889 TD -0.0478 Tw -(function definition.)Tj -/TT19 1 Tf -8.5868 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2978 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[( specifies exactly where in the list of advice the new advice is to be placed,)]TJ --11.8851 -1.2889 TD -0 Tw -(e.g., )Tj -/TT8 1 Tf -2.224 0 TD -(FIRST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1889 Tw -(, or )Tj -/TT8 1 Tf -2.0687 0 TD -0.4533 Tw -(\(BEFORE PRINT\))Tj -/TT6 1 Tf -8.8547 0 TD -0.1889 Tw -[( meaning before the advice containing )]TJ -/TT8 1 Tf -18.2686 0 TD -0 Tw -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -0.1889 Tw -(, or )Tj -/TT8 1 Tf -2.0687 0 TD -0.4533 Tw -(\(AFTER 3\))Tj -/TT6 1 Tf --39.4857 -1.2889 TD -0.0144 Tw -(meaning after the third piece of advice, or even )Tj -/TT8 1 Tf -21.2369 0 TD -0.0356 Tw -(\(: TTY:\))Tj -/TT6 1 Tf -4.8363 0 TD -0.0144 Tw -[(. If )]TJ -/TT10 1 Tf -1.7133 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0144 Tw -[( is specified, )]TJ -/TT8 1 Tf -5.7108 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0144 Tw -[( first checks)]TJ --40.0984 -1.2889 TD -0.1656 Tw -(to see if it is one of )Tj -/TT8 1 Tf -9.6047 0 TD -0 Tw -(LAST)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6656 0 TD -(BOTTOM)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.6656 0 TD -(END)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6656 0 TD -(FIRST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1656 Tw -(, or )Tj -/TT8 1 Tf -2.022 0 TD -0 Tw -(TOP)Tj -/TT6 1 Tf -1.8003 0 TD -0.1656 Tw -[(, and operates accordingly. Otherwise, it)]TJ --26.2254 -1.2889 TD -0.04 Tw -(constructs an appropriate edit command and calls the editor to insert the advice at the corresponding)Tj -0 -1.2222 TD -0 Tw -(location.)Tj -0 -2 TD -(Both )Tj -/TT10 1 Tf -2.4605 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1456 Tw -[( and )]TJ -/TT10 1 Tf -2.484 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1455 Tw -[( are optional arguments, in the sense that they can be omitted in the call to)]TJ -/TT8 1 Tf --10.3454 -1.2889 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1722 Tw -(. In other words, )Tj -/TT8 1 Tf -8.2455 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1722 Tw -[( can be thought of as a function of two arguments )]TJ -/TT8 1 Tf -24.0668 0 TD -0 Tw -(\(ADVISE)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4222 0 TD -(FN)Tj --44.1364 -1.2889 TD -(WHAT)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -(, or a function of three arguments: )Tj -/TT8 1 Tf -15.6517 0 TD -0 Tw -(\(ADVISE)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(WHAT)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -(, or a function of four arguments:)Tj -/TT8 1 Tf --30.3606 -1.2889 TD -0 Tw -(\(ADVISE)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.29 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.6957 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.29 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.29 0 TD -(WHAT)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -(. Note that the advice is always the )Tj -/TT19 1 Tf -15.9704 0 TD -0 Tw -(last)Tj -/TT6 1 Tf -1.4438 0 TD -0.04 Tw -[( argument. If )]TJ -/TT10 1 Tf -6.1141 0 TD -0 Tw -(WHEN )Tj -/TT8 1 Tf -3.096 0 TD -0.0956 Tw -(= NIL)Tj -/TT6 1 Tf -3.096 0 TD -0 Tw -(,)Tj -/TT8 1 Tf --45.0884 -1.2889 TD -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -( is used. If )Tj -/TT10 1 Tf -4.7515 0 TD -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -( = NIL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(LAST)Tj -/TT6 1 Tf -2.4004 0 TD -( is used.)Tj -/TT8 1 Tf --15.1869 -2.0667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADVISE)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHEN)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHERE)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(WHAT)Tj -/TT8 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -23.5184 0 TD -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0889 Tw -[( is the function to be advised, )]TJ -/TT10 1 Tf -13.8161 0 TD -0 Tw -(WHEN)Tj -/TT8 1 Tf -2.4004 0 TD -0.2133 Tw -[( = BEFORE)]TJ -/TT6 1 Tf -5.8275 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5889 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0889 Tw -(, or )Tj -/TT8 1 Tf -1.8687 0 TD -0 Tw -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5889 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0889 Tw -[( specifies)]TJ --35.8922 -1.2889 TD -0 Tw -(where in the advice list the advice is to be inserted, and )Tj -/TT10 1 Tf -24.6768 0 TD -(WHAT)Tj -/TT6 1 Tf -2.4004 0 TD -( is the piece of advice.)Tj --27.0772 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9244 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0003 Tc -0.0041 Tw -( is of the form )Tj -/TT8 1 Tf -6.4099 0 TD -0 Tc -0 Tw -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -6 0 0 6 219.02 328.54 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 222.62 330.54 Tm -( )Tj -/TT8 1 Tf -0.2544 0 TD -(IN)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.2544 0 TD -(FN)Tj -6 0 0 6 248.8 328.54 Tm -(2)Tj -/TT8 1 Tf -9 0 0 9 252.4 330.54 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5044 0 TD -(FN)Tj -6 0 0 6 273.14 328.54 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 276.74 330.54 Tm -0.0003 Tc -0.0041 Tw -( is changed to )Tj -/TT10 1 Tf -6.3586 0 TD -0 Tc -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -0.0004 Tc -0.004 Tw -( throughout )Tj -/TT10 1 Tf -5.5743 0 TD -0 Tc -0 Tw -(FN)Tj -6 0 0 6 448.93 328.54 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 452.53 330.54 Tm -0.0044 Tw -(, as with)Tj --36.2811 -1.3944 TD -0.0522 Tw -(break, and then )Tj -/TT10 1 Tf -7.3022 0 TD -0 Tw -(FN1)Tj -/TT8 1 Tf -1.8003 0 TD -(-IN-)Tj -/TT10 1 Tf -2.4004 0 TD -(FN2)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( is used in place of )]TJ -/TT10 1 Tf -8.7118 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0522 Tw -[(. If )]TJ -/TT10 1 Tf -1.8266 0 TD -0 Tw -(FN)Tj -6 0 0 6 362.19 315.99 Tm -(1)Tj -/TT6 1 Tf -9 0 0 9 365.79 317.99 Tm -0.0522 Tw -[( and/or )]TJ -/TT10 1 Tf -3.8442 0 TD -0 Tw -(FN)Tj -6 0 0 6 411.19 315.99 Tm -(2)Tj -/TT6 1 Tf -9 0 0 9 414.79 317.99 Tm -0.0522 Tw -[( are lists, they are)]TJ --32.0878 -1.3944 TD -0 Tw -(distributed as with )Tj -/TT8 1 Tf -8.6172 0 TD -(BREAK0)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --12.2178 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( is broken, it is unbroken before advising.)Tj --2.1201 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( is not defined, an error is generated, )Tj -/TT8 1 Tf -16.4688 0 TD -(NOT A FUNCTION)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --26.9902 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9499 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.03 Tw -[( is being advised for the first time, i.e., if )]TJ -/TT8 1 Tf -18.26 0 TD -0 Tw -(\(GETP )Tj -/TT10 1 Tf -3.6717 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0711 Tw -[( ADVISED\) = NIL)]TJ -/TT6 1 Tf -9.8149 0 TD -0.03 Tw -(, a )Tj -/TT8 1 Tf -1.31 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf --36.4069 -1.2889 TD -0.09 Tw -(is generated and stored on the property list of )Tj -/TT10 1 Tf -21.2812 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.09 Tw -[( under the property )]TJ -/TT8 1 Tf -9.3165 0 TD -0 Tw -(ADVISED)Tj -/TT6 1 Tf -4.2007 0 TD -0.09 Tw -(, and the)Tj -/TT8 1 Tf --35.9986 -1.2889 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1167 Tw -[( is defined with the original definition of )]TJ -/TT10 1 Tf -19.1174 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1167 Tw -[(. An appropriate expr definition is)]TJ --23.9182 -1.2889 TD -0.1811 Tw -(then created for )Tj -/TT10 1 Tf -7.7704 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1811 Tw -(, using private versions of )Tj -/TT8 1 Tf -12.6033 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6811 0 TD -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1811 Tw -(, and )Tj -/TT8 1 Tf -2.8051 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1811 Tw -(, so that these)Tj --33.4615 -1.2889 TD -0.0522 Tw -[(functions can also be advised. Finally, )]TJ -/TT10 1 Tf -17.6131 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0522 Tw -[( is added to the \(front of\) )]TJ -/TT8 1 Tf -11.6283 0 TD -0 Tw -(ADVISEDFNS)Tj -/TT6 1 Tf -6.001 0 TD -0.0522 Tw -(, so that)Tj -/TT8 1 Tf --36.4425 -1.2889 TD -0 Tw -(\(UNADVISE T\))Tj -/TT6 1 Tf -7.2012 0 TD -( always unadvises the last function advised.)Tj --7.2012 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( has been advised before, it is moved to the front of )Tj -/TT8 1 Tf -22.8506 0 TD -(ADVISEDFNS)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj --30.9717 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9766 0 TD -(WHEN)Tj -/TT8 1 Tf -2.4004 0 TD -0.1356 Tw -[( = BEFORE)]TJ -/TT6 1 Tf -5.672 0 TD -0.0567 Tw -[( or )]TJ -/TT8 1 Tf -1.5543 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -[(, the advice is inserted in )]TJ -/TT10 1 Tf -11.8483 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0567 Tw -(s definition either )Tj -/TT8 1 Tf -8.5059 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0567 Tw -[( or)]TJ -/TT8 1 Tf --38.7588 -1.2889 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0021 Tw -( the original body of the function. Within that context, its position is determined by)Tj -/TT10 1 Tf --3.0005 -1.2889 TD -0 Tc -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.04 Tw -[(. If )]TJ -/TT10 1 Tf -1.7899 0 TD -0 Tw -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0967 Tw -[( = LAST)]TJ -/TT6 1 Tf -4.394 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.54 0 TD -(BOTTOM)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.54 0 TD -(END)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -(, or )Tj -/TT8 1 Tf -1.7709 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -(, the advice is added following all other)Tj --22.237 -1.2889 TD -0.1467 Tw -[(advice, if any. If )]TJ -/TT10 1 Tf -8.3051 0 TD -0 Tw -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -0.3522 Tw -[( = FIRST)]TJ -/TT6 1 Tf -5.5052 0 TD -0.1467 Tw -[( or )]TJ -/TT8 1 Tf -1.7343 0 TD -0 Tw -(TOP)Tj -/TT6 1 Tf -1.8003 0 TD -0.1467 Tw -(, the advice is inserted as the first piece of)Tj --20.3454 -1.2889 TD -0.1322 Tw -[(advice. Otherwise, )]TJ -/TT10 1 Tf -9.1325 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1322 Tw -[( is treated as a command for the editor, similar to )]TJ -/TT8 1 Tf -23.4134 0 TD -0 Tw -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj --39.7471 -1.2889 TD -(e.g., )Tj -/TT8 1 Tf -2.0352 0 TD -(\(BEFORE 3\))Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(AFTER PRINT\))Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj --16.3374 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9266 0 TD -(WHEN )Tj -/TT8 1 Tf -3.016 0 TD -0.0156 Tw -(= AROUND)Tj -/TT6 1 Tf -4.8163 0 TD -0.0067 Tw -(, the body is substituted for )Tj -/TT8 1 Tf -12.3984 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( in the advice, and the result becomes the)]TJ --21.7575 -1.2889 TD -0.01 Tw -(new body, e.g., )Tj -/TT8 1 Tf -6.9763 0 TD -0.0233 Tw -(\(ADVISE FOO AROUND \(RESETFORM \(OUTPUT T\) *\)\))Tj -/TT6 1 Tf -28.3446 0 TD -0.01 Tw -(. Note that)Tj --35.3209 -1.2889 TD -0.0067 Tw -(if several pieces of )Tj -/TT8 1 Tf -8.3802 0 TD -0 Tw -(AROUND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0067 Tw -[( advice are specified, earlier ones will be embedded inside later)]TJ --11.9808 -1.2889 TD -0 Tw -(ones. The value of )Tj -/TT10 1 Tf -8.5215 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( is ignored.)Tj -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -41 0 obj -<< -/Length 8152 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-10)Tj -/TT13 1 Tf -10 0 0 10 102 612 Tm -(MEDLEY REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(Finally )Tj -/TT8 1 Tf -3.5718 0 TD -(\(LIST)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.5044 0 TD -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.5044 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.5044 0 TD -(WHAT)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.2544 Tw -[( is added \(by )]TJ -/TT8 1 Tf -6.9865 0 TD -0 Tw -(ADDPROP)Tj -/TT6 1 Tf -4.2007 0 TD -0.2544 Tw -(\) to the value of property)Tj -/TT8 1 Tf --27.6742 -1.2889 TD -0 Tw -(ADVICE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1833 Tw -[( on the property list of )]TJ -/TT10 1 Tf -11.2255 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1833 Tw -(, so that a record of all the changes is available for)Tj --16.0263 -1.2889 TD -0.03 Tw -[(subsequent use in readvising. Note that this property value is a list of the advice in order)]TJ -0 -1.2222 TD -0.0156 Tw -(of calls to )Tj -/TT8 1 Tf -4.4973 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0156 Tw -(, not necessarily in order of appearance of the advice in the definition of)Tj -/TT10 1 Tf --8.0979 -1.2889 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --1.2002 -2.0667 TD -(The value of )Tj -/TT8 1 Tf -5.7407 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --11.7563 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9766 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0567 Tw -[( is non-atomic, every function in )]TJ -/TT10 1 Tf -14.8918 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0567 Tw -[( is advised with the same values \(but copies\) for)]TJ -/TT10 1 Tf --18.2687 -1.2889 TD -0 Tw -(WHEN)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(WHAT)Tj -/TT6 1 Tf -2.4004 0 TD -(. In this case, )Tj -/TT8 1 Tf -6.1387 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -( returns a list of individual functions.)Tj -/TT15 1 Tf --20.4834 -2.0667 TD -(Note)Tj -/TT6 1 Tf -2.2222 0 TD -0.05 Tw -[(: Advised functions can be broken. However if a function is broken at the time it is)]TJ --2.2222 -1.2222 TD -0.1189 Tw -[(advised, it is first unbroken. Similarly, advised functions can be edited, including their)]TJ -T* -0.0267 Tw -(advice. )Tj -/TT8 1 Tf -3.693 0 TD -0 Tw -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0267 Tw -[( will still restore the function to its unadvised state, but any changes to)]TJ --8.4938 -1.2889 TD -0.0589 Tw -[(the body of the definition will survive. Since the advice stored on the property list is the)]TJ -0 -1.2222 TD -0.0733 Tw -(same structure as the advice inserted in the function, editing of advice can be performed)Tj -T* -0 Tw -(on either the functions definition or its property list.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNADVISE)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 220.2035 381.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 381.4 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.2133 Tw -(An nlambda nospread like )Tj -/TT8 1 Tf -12.888 0 TD -0 Tw -(UNBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.2133 Tw -[(. It takes an indefinite number of functions and)]TJ --17.0887 -1.2889 TD -0.0778 Tw -(restores them to their original unadvised state, including removing the properties added)Tj -0 -1.2222 TD -0 Tw -(by )Tj -/TT8 1 Tf -1.6127 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2533 Tw -(. )Tj -/TT8 1 Tf -1.2567 0 TD -0 Tw -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2533 Tw -[( saves on the list )]TJ -/TT8 1 Tf -8.7554 0 TD -0 Tw -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.2533 Tw -[( enough information to allow)]TJ --26.0272 -1.2889 TD -0.1122 Tw -(restoring a function to its advised state using )Tj -/TT8 1 Tf -21.0037 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1122 Tw -(. )Tj -/TT8 1 Tf -0.9744 0 TD -0 Tw -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.1122 Tw -[( and )]TJ -/TT8 1 Tf -2.4173 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf --35.1973 -1.2889 TD -0.2633 Tw -(thus correspond to )Tj -/TT8 1 Tf -9.3696 0 TD -0 Tw -(BRKINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.2633 Tw -[( and )]TJ -/TT8 1 Tf -2.7195 0 TD -0 Tw -(REBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.2633 Tw -[(. If a function contains the property)]TJ -/TT8 1 Tf --22.2908 -1.2889 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -( moves the current value of the property )Tj -/TT8 1 Tf -18.1113 0 TD -(ADVICE)Tj -/TT6 1 Tf -3.6006 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --37.9863 -2.0667 TD -(\(UNADVISE\))Tj -/TT6 1 Tf -6.001 0 TD -0.0956 Tw -[( unadvises all functions on )]TJ -/TT8 1 Tf -12.5471 0 TD -0 Tw -(ADVISEDFNS)Tj -/TT6 1 Tf -6.001 0 TD -0.0956 Tw -[( in reverse order, so that the most)]TJ --24.5491 -1.2889 TD -0 Tw -(recently advised function is unadvised last. It first sets )Tj -/TT8 1 Tf -24.4961 0 TD -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --33.6694 -2.0667 TD -0.6167 Tw -(\(UNADVISE T\))Tj -/TT6 1 Tf -7.8178 0 TD -0.2567 Tw -[( unadvises the first function of )]TJ -/TT8 1 Tf -15.2607 0 TD -0 Tw -(ADVISEDFNS)Tj -/TT6 1 Tf -6.001 0 TD -0.2567 Tw -(, i.e., the most recently)Tj --29.0795 -1.2889 TD -0 Tw -(advised function.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(READVISE)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\) )Tj -/TT13 1 Tf -10 0 0 10 220.2035 227.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 227.66 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.0833 Tw -(An nlambda nospread like )Tj -/TT8 1 Tf -12.368 0 TD -0 Tw -(REBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.0833 Tw -[( for restoring a function to its advised state without)]TJ --16.5687 -1.2889 TD -0.0756 Tw -(having to specify all the advise information. For each function on )Tj -/TT10 1 Tf -29.858 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5756 0 TD -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0756 Tw -[( retrieves)]TJ --35.8344 -1.2889 TD -0.2178 Tw -(the advise information either from the property )Tj -/TT8 1 Tf -22.8018 0 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2178 Tw -[( for that function, or from)]TJ -/TT8 1 Tf --27.6026 -1.2889 TD -0 Tw -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.2078 Tw -[(, and performs the corresponding advise operation\(s\). It also stores this)]TJ --6.001 -1.2889 TD -0.0067 Tw -(information on the property )Tj -/TT8 1 Tf -12.7161 0 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0067 Tw -[( if not already there. If no information is found for)]TJ --17.5169 -1.2889 TD -0 Tw -(a particular function, value is )Tj -/TT8 1 Tf -13.2061 0 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( - )Tj -/TT8 1 Tf -0.833 0 TD -(NO ADVICE SAVED\))Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj -/TT8 1 Tf --25.4409 -2.0667 TD -(\(READVISE\))Tj -/TT6 1 Tf -6.001 0 TD -( readvises everything on )Tj -/TT8 1 Tf -11.1069 0 TD -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf --23.1089 -2.0667 TD -0.5989 Tw -(\(READVISE T\))Tj -/TT6 1 Tf -7.8001 0 TD -0.25 Tw -[( readvises the first function on )]TJ -/TT8 1 Tf -15.1587 0 TD -0 Tw -(ADVINFOLST)Tj -/TT6 1 Tf -6.001 0 TD -0.25 Tw -(, i.e., the function most)Tj --28.9597 -1.2889 TD -0 Tw -(recently unadvised.)Tj -0 -2 TD -0.0889 Tw -(A difference between )Tj -/TT8 1 Tf -9.9527 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5889 0 TD -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0889 Tw -(, and )Tj -/TT8 1 Tf -2.6207 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0889 Tw -[( versus )]TJ -/TT8 1 Tf -3.5674 0 TD -0 Tw -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5889 0 TD -(UNBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.0889 Tw -(, and)Tj -/TT8 1 Tf --37.7219 -1.2889 TD -0 Tw -(REBREAK)Tj -/TT6 1 Tf -4.2007 0 TD -0.0733 Tw -(, is that if a function is not rebroken between successive )Tj -/TT8 1 Tf -25.5498 0 TD -0 Tw -(\(UNBREAK\))Tj -/TT6 1 Tf -5.4009 0 TD -0.0733 Tw -(s, its break)Tj --35.1514 -1.2889 TD -0.01 Tw -[(information is forgotten. However, once )]TJ -/TT8 1 Tf -18.3198 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.01 Tw -[( is called on a function, that functions)]TJ --23.1205 -1.2889 TD -0.1244 Tw -(advice is permanently saved on its property list \(under )Tj -/TT8 1 Tf -25.6307 0 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1244 Tw -(\); subsequent calls to)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -44 0 obj -<< -/Length 3074 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 489 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(15-11)Tj -/TT13 1 Tf -10 0 0 10 324.52 612 Tm -(BREAKING, TRACING, AND ADVISING)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0522 Tw -[( will not remove it. In fact, calls to )]TJ -/TT8 1 Tf -15.991 0 TD -0 Tw -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0522 Tw -[( update the property )]TJ -/TT8 1 Tf -9.6156 0 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf --35.2082 -1.2889 TD -0.0467 Tw -(with the current value of the property )Tj -/TT8 1 Tf -17.3247 0 TD -0 Tw -(ADVICE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0467 Tw -(, so that the sequence )Tj -/TT8 1 Tf -9.8744 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5467 0 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -(,)Tj -/TT8 1 Tf --39.7478 -1.2889 TD -(UNADVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0156 Tw -[( causes the augmented advice to become permanent. The sequence )]TJ -/TT8 1 Tf -30.1472 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj -/TT8 1 Tf --39.7487 -1.2889 TD -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.6633 0 TD -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1633 Tw -[( removes the intermediate advice by restoring the function to its)]TJ --9.0647 -1.2889 TD -0 Tw -(earlier state.)Tj -/TT8 1 Tf --2.6667 -2.1489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADVISEDUMP)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(X)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT13 1 Tf -10 0 0 10 196.0553 503.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 503.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1067 Tw -(Used by )Tj -/TT8 1 Tf -4.1142 0 TD -0 Tw -(PRETTYDEF)Tj -/TT6 1 Tf -5.4009 0 TD -0.1067 Tw -[( when given a command of the form )]TJ -/TT8 1 Tf -17.1746 0 TD -0.2556 Tw -(\(ADVISE ...\))Tj -/TT6 1 Tf -7.4567 0 TD -0.1067 Tw -[( or )]TJ -/TT8 1 Tf -1.6543 0 TD -0 Tw -(\(ADVICE)Tj --35.8007 -1.2889 TD -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.2922 Tw -(. If )Tj -/TT10 1 Tf -2.0044 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.7011 Tw -[( = T)]TJ -/TT6 1 Tf -3.8026 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.7922 0 TD -(ADVISEDUMP)Tj -/TT6 1 Tf -6.001 0 TD -0.2922 Tw -[( writes both a )]TJ -/TT8 1 Tf -7.4252 0 TD -0 Tw -(DEFLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.2922 Tw -[( and a )]TJ -/TT8 1 Tf -3.8195 0 TD -0 Tw -(READVISE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2922 Tw -[(; this)]TJ --37.0471 -1.2889 TD -0.1833 Tw -(corresponds to )Tj -/TT8 1 Tf -7.185 0 TD -0.4411 Tw -(\(ADVISE ...\))Tj -/TT6 1 Tf -7.6423 0 TD -0.1833 Tw -[(. If )]TJ -/TT10 1 Tf -2.2199 0 TD -0 Tw -(FLG )Tj -/TT8 1 Tf -2.8415 0 TD -0.4411 Tw -(= NIL)Tj -/TT6 1 Tf -3.4416 0 TD -0.1833 Tw -(, only the )Tj -/TT8 1 Tf -4.9123 0 TD -0 Tw -(DEFLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.1833 Tw -[( is written; this)]TJ --32.4433 -1.2889 TD -0.4711 Tw -(corresponds to )Tj -/TT8 1 Tf -7.7606 0 TD -1.13 Tw -(\(ADVICE ...\))Tj -/TT6 1 Tf -8.3312 0 TD -0.4711 Tw -(. In either case, )Tj -/TT8 1 Tf -8.7023 0 TD -0 Tw -(ADVISEDUMP)Tj -/TT6 1 Tf -6.001 0 TD -0.4711 Tw -[( copies the advise)]TJ --30.795 -1.2889 TD -0.2622 Tw -(information to the property )Tj -/TT8 1 Tf -13.4825 0 TD -0 Tw -(READVICE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2622 Tw -(, thereby making it permanent as described)Tj --18.2833 -1.2889 TD -0 Tw -(above.)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -48 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -49 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -50 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -51 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -52 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -53 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBHEBE+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 54 0 R ->> -endobj -54 0 obj -<< -/Filter /FlateDecode -/Length 20016 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`Bi C9͎~03K6JJ4H#ZKS))R &EEZ>*R -B1MO3{w{s}ͼ ُ0L|`I'5-PMOEd\<*QV "@rqcTP y4~)w@j/Xܑu(28uxpr;8p?tA&~O}p{A+t7\k6p"gHMs p&rXMYsn2D6@!v6luD 6qs12\LsTWa?vh,7U$a8`, - 6rCJCtg5܁Nn`J09pϮ߀ pXk=[;F%y>cy=*PЀ>.̳d$[U|a0#C 0y77WXsmpPW*~+9 kFWq~t(Wv09"9p/W(.Ll^r27My$ _I'\ƒMd\?Fpz/~#бl(Uc p7M'`|yYdf[dXX2@TBVrx L%,=:?hEӠωLD|N~Ty.z8S{LfwX'LLSJch&&D{L𣔎0OfNo}o6c(=y%dfvZd0Iye2}8> \N7~{|`b.gʵOo㼓d5g,@g ,B4fi6.ƥ6.6.6qm\ccOXkZill|zq?l`6c?g UEǼ(Dh¤?4jtAB6!] j,3QԨjV4 -!-џ;Z¿T0|7J,)+pSѐKL7W)y0V"iN鯥05F`NIuˮb$j\~b:QѶyhhA5Oh5 Auok+uhq%!RMS1 =Y nN"a{MJZc&ng[ć0ZOb)* SW c/m;ř" -mE?mS;"cnboݨϧӐFi_Bߌ*c"c(>FCnTu^i/bUWeaþZke7|MF}tMP#`̌(fm+c= M1Kc;t۲dF%NK-2zJ|aO/ z{}@d$"h0F K!e3񳽄&׏;c>5S4a_7{)QzE~.EsRܖ7,-ptˌ_ɴi_߼*[Z#}Mva~>T[Nfw|[7f+7M .[vrAlʺKKRƜԱ}KuΪkq7yj}R˪FwwzuisPBAsl΁aM՝fV dP_6MgLʚs+ -VZe8adTu" Z6 AK%jhI% @&uU5T:9%LDTQnk2L6I !qgsުΨpIVSgdbE/W(bq6.{=$2#BB܂_YG,ݭMff4їSsp/joѨr@9H $2]s cr&ǀEF lrdyb0: שTXv4yG8%TJFhdqp [UR*36F#Ǘ9fܦ|3`{>ߑH@ګۅ-ofyngԇTM UׇL*ߡVV?wgPBO^ˎp}ҡ#>)V X>SK(ċ$F1XsS>:F+;m,zdW*cg!6Yמk) =ni \an-PtܦOgҧfڥs6JB@-Y1GZr/ģ:gI.*;hj|d'ie6)d>|)Fo{>.?? ?{y_y|DMfS) M%݂;(3 *$fΩG83EȤƑCJ4 !VlL2aX)Ccm>菘*$kʢ_uK&z~2NF?rJKLH6R+4b ݒ&c6S+Q'b]vdQEτ1,װc?PcEpՌިd3A> sШ -8eݎg3-G{})f2Ͷ Lym;-ZRe_w3LKP` ji7Zaڭ-BesK-$MY8L]]iFsdj*SZRFu|H$|5jѵdA %*l`=c%=oz4 -GڮągmTc) >U"$|05#ec{sNR sA6VcK!۲Ǥ:'(YMQr LIJ'9 2Gv+M[8j:شVLH0 zwC("E}ϝ{Ck7ȰÒoo[m]խ/Xb@)W4=e.ąF>faru&g N8j_b[LxOfY/#qod~>r]QL-慌(9IqyKOo'K`/TgӷgkSu?ږغ`9dmƺ"J|_Ҩk8Q+ؑr{K1)7?g$lBj/.zt$v[n~Ʀ%G~@-5T& "=/Px،OesgG:7竂IЦE.WA41 .-vqFFK}U[ka^ifmvȲ-,k \V+"Vr>.(oZbe -3aq4/ݴuL2hb gY]T7vyQ YY2;l,|y1x,,^p߳z&ؼ@ь)TgJ~%l~4sG@-| lyD-i__fA5LFoJa^jtl^Jk؟ ɪ~u%Em!t\Yq.E%,-*?J$]J~ƣ졖.ru>q)Fe1J9Ky\ʱ)l`xl>kge@b< سb"ulp4*#XE?yop|box>wW -4^@c[orz̲[Bn+/LkI/^G>aa4"$Өòd)P7~39Sw\`>%8ۺE\z쿲tVw[JL:_.߳{C\*ZD[nfeA)}SR{,-5rRK,Yi Tjnr/Wrݭ`Y'4azwCBU?l`i5_&JOO0]^G8pރop -TQTQ2ڍ8:N_ߢz]BW?-L5x-Vpn_O7p6.xOis:~'O8xd UϒH=i -.$˟KUyHEVũ$+)G*)T%[yZ<)%|A] GH S$Xcb UXb1¿Leۨ ĆG -XqN%̱bslFIChCn,lX9ָ`*6bf(}>< -8ԉyDŷ*rD$;INWA;BQF`ahZ$z*S) ,` W[j,k`5& ~W1Byfc!!-\)|C4vZw`!T?b֥իYѪb-#C <Ƃ -$ɱÎXvn?kmBEnXoki{GZ8-oͯvX.5<6Zs0F>`۝jQptM2է y%CqOG8?0G,yKN{/O{%H~}pRc%-O5y%nN8R"[WQ>{&d4mx,>:l/r4U -cUFG:)oWpt+uD Yzt }V}Q78UGVfyiuه;VM;Z*_j#o{?AVF$QyLH{lϕou~Ru&y>3DC&,n8 -˜<# X5Vϝ&I,lDT{C!L6W('ql&0  sbM}** -U8#T<dI'/SpF*6[ho|y2?<}e.*QQ)Jظiw+ޟ$qvdƿ657|k?ouLCuw@!k+-y+سoK@S?>5wH˿2>7mzhЁa:ԨuB8g3' fpБ1#i(qìL~cӑ;Pi Oキٽۄ xG8D.A%#`d5 P[HK'(ޑ9jP {9 3:zر^$v/%ةt߻~w+M qS -X R,9kUD\D1&4.IV(ɻ("K,+>QuMٰ̽Nsj̭/]2CpzIǫ/ -6| `jM-_`SrXNuwlʎ~;ImsOx"JOUm3m|$HW{Vtćc:ڞ ͼ~׃ci0.ecV!sCu9|=*a7ս}k^W'Mx"v쑲U[F>[Uw`񉍵=t{H]CڑC-z|!̜_7g]2tff7ށ.7^_MuVl7OChOeSAU(u=Os4MDSdU rڭR47.x9]?W/iWi5E\sÝ4nᨉ6ow~ou6nm3?Ň.<o3(GH;_ Swݺ J7S뛳7>`ZGo}tMևLaw&)T'(+.-730*4<%Fd.SةHJOiĸR:8Pviѩ{GNMsFƿ=ajmF*e I>6c<<`}OP<%y@-U0PO͂j ݨ~`1aG`=lvh_>8G(<긫9x50r&ע܄j:Y| =b%d4fBI.49J~ -}9IHL^#o-Pj4i.U!uj -ZI:z7.]D*i/Qg=M('k4N/ҿ,]ƢֺPmMaQmY-Ǿ2VUak:T^Ml3kf?CՆX'X;ZYJjXJ >(F+Jݍ Uqz㼱gM1]Ev[2\! -͝ϳEKi-%Ra+)c\ -[1؂Ue3y Pqif{LʺhG2T mSAO&)Qb3DAcݛC ƻ/M+W &ƇXJPvҰ, I<U3Lxlca b `!iYl#BbS,?OE;y-o2g}LcA=KA<1&*CJՂl{03x)0(]GlwFEӿ22 yc@:'AvMev{^i?8~.z7!)<(Q'oLa9X$'!V4K[E,b5E E<F:@4^nlӿ^2%.X  r+,Xhd3dejw( =`J_b'`,& ^Rö$ I7,4IQ%l:Bz։w!0ƿfI%:-N hn3}ZȽ'Xаc(`%˲,R >Q}<DSӃنm߁,,,lȭ߻E #*;D3㕀0._-X,RTGRq=NU-M >1K9~[ZZ7RӢF,,jd] -r=0]gW`$Yǁk:lvɲsIL4>`DoCwnsYw>@Y\th`\ c ^TMj edkA1|FE\%}!7R,X1E]yO0MwRBUW7D ~9ޗZ^P]%)MF 7J:播 heef5#_qeӵo f\r'D}`ĕR !#PH]'Qj/}ʞ·6'BFׂ bZɤ훥A)U6 qN&nwv7#nTJ+SUk1hgi5?'G3h2JUhh90`˫xӇ5_RܪpgXh߿zJ]>;s_$т g'Yҙ1J B#7͖CmCJN7#H %X&[cn\6ddxwKFSTi‘=J )RV"#j[PR4#io켺J.h1SPSE]Z̞]C 6}0N׸EQ,Еu ^)K 5mYe:8Zxzw9xmGw]|Hǹ!t׵bvJc|Os'T&hmi΋漸͋)%RƓ6 -d_G)E c.-:\IuCP6nEBXp-kuYLg=uvdb:uPZ∞"HǼY8Պ7)nu$?0+ţ5/{!p]h`ʓڀ=ua:²ŅȂH -&5\j".EM߻4!Cɘg.h  -tkׂPh] z}7:b)A󂍍zdFvC+s;^ou+@㠛4-Yft*3m Ԓ {Se¶u;^͓ZO"@ gne2F8qZh\_Fu*-Zt»dv -?aq@J9ђ<'&̞ W /gH !:ZE YwzE!lzd:?" #qhap+h +NBSG^C&+J֬%B;}B -[,p]J&-S}z̢V."XPtG8qP\}첌|^d*ӒAu` -Plq/ɉUg!(c1z FAiֹ[+TO[PfS{E~gd%3vŭw=ƋC'!6 [7_ǜ%{P-U8z[8xrĜSfGA *oVvghd Ve)-X5rұ&-( -fj ZL2UWlA8˓b32mrW摩a9`鬮DMXjkXk],2QDZbZ@)Jky2kƂ -op Ke4e _ZoiྩE,۳{9DoMbٚ^yˏey ˚2p"Ax[_@X_stWkwkeX]F{/xX_ !I2;N0n;K6`-_+0\ǒ:Qǯ/ʺZ2 .ꑅ9L-7%9vL;&[6玎x7Hnl-S6~)77_^jpYA h׫;eu'zaM\H*,pYw =i^ޯ;wLC"YhIE埶Z؁ -#jC ,!4DM DKxSlWr-ͨ z -wJ^VMgMzԨޱU›~ms6?r"Srެ-&9X_~9hac4mwL! -dH, -2Q -v7P=%q-?/TGٯ?RD[C|?Kun|` '>JhINsx} Ӣl'zG@Zoni8_oyx8氖}~ 7{h[6_oa !O/_|_工pIVi4F*H"QIP:"\6 r%;KrH~]^/{? M)J?GJ2YyYQ+wU+GYs_%SeU[/YT3LuTruG#\pf&QQJEKdYA-(WUpA 1 H"I -h=ItA:uVy4WOaPb@7FB!=DpQ>J0"u# >2A\C`PFnF`TQĬGlCIo ]Ojp)D"Tp8D} I%$*`Y QBa:>@Hvu{gK|>D7 s -`6Hxr=tM6u2{U =p燢=kuVZZvݾVTցu'<ֱ7Wz9[;"G_!/гcc:JuxqI #K?%Ż ~b|iVȴ^9Sgf$jǎ --c_+ jeu[5 G%7ovTӵ0ҽ#3O\,[|,:E~kcD2{™]S U7ϜhS%->/*-KnμJ#Rk[H~KԹ y%Idyڐk5W'Vykj!JCIn%;ey [`xI*Rr"UB Q/jeYwuW_>x0ô6H\c-Ug,'MUcʳܬ|f ˸.fs.Ȋ3 .8cLmk}ۀ'U]W]!hrwD88ɢnKJO$M77vG){u½8Wfx%pZ zwI+>> (z(b!C$ܵV{ @6 <oM*7ey͂`TA-,k%p1yg5Ѥ7#$t2 %Nrh2L IJJIy"d>fmd!%Kj !+HYMb0A8&a^x\%7H;*N4>b2MtͤvGbEt*Fg`XNaXCet]g6 s(ы2F7h;E;i0 egF(֋a,YX:qJM%.`fѤ\6ΩvYRݚQ|Wh@䱒'$Ǔ>Hy6:DɱQ8މUB1s~P# ;'j?؟؂6ժUr}!VXjՆ#|gKj\WMƁOTx]O;cYlػk!pݏׅʂt¬#5psGjqGjlSc햎OʮLk7z-)-* (vr1wD;kiFbC 8XOG~ -99ỳ5_p'[g`7JX#,*ػ.M/8V{Πð: RI> KO6mNsi4m6IoeXQadEaADtXpayA\azz.,_swrNJdoR.>y0JgTrd 奮>-\؏BD=JgtF}e RL)?ڣ􄪔|jۄ>nޢBZ~K]#27Kߦ,IIdSG"~|P -mbZBr!Y>FL~D$c((__tv!kTu~Le7 > x~*>$on>OyDrc?&9+)rz} -Q;{~PI?4AbVz|C|ICx_W>|Q ~M/Ǵ׮Rw/ > qF#TJ$޹Ab9+8DN.zS(b~z}#E۟;P[O}uiz\hڳ|_dz. h0U15~Ͷ)̖ vueƷuF6B/M̖ ,g#Q۞C3q6i>jHf`mCgb;kk0t6S`5Wm[ݘl0 O3Vu,OuQ -XGiFW5hm0n0C0eA+]%91i |4{;GLiuk8 -̂R#˽?6(b.Vd˄,I]Fԥ2 *4R\ {&aF"@m9q -Vm we-lnO8){k",nްDa|kh5HP^gr&al`uZ7j }7MV⶟k7|ւIPs"c;Y:ʓld j;| jj^[[[t:-4QϢƐ<`I3e!و氹3֮VZ&[#5!j6T Je4KRce\NqDt`4 fdOuVtrvǝ+ +RA*BC/>&!Q!cM /ϗ\KV{gs~wzp&v k؊:k'\ΦʎgR]"ZtRmCM6oݓ&o4ǥYzsSp#]M"$ W/1k5 /z#g}kdU*kZKu|흽K-ۑduhgQ0BR5Y]>eEsg)huk q=?u-3kU]%N$ltnns+ݿ5S_`MAc eҥ;:1+ +Vz_+iiV^e\wUKSM/G%9wߕ )1 -scGXxqtKcc4' ^8?ݯѴ%#_9JRx",⭍ȸoL!0XT>kPJiq77.=^[Sn颸GoTCɁl%HqiODWi -EZ5}hePJF:ƙӐYrEPz^ZKsi?74Q4D:j$|zљ9,$KJPaȒ u! |w;mx;v>9CFW鯤 Y!_/< < NDO--|B,BRp'1F2?\^ M"hOhdچz[DQ{ z =pǴcnf=-]p \ *2DBXW˱L0C\b;K80e2屧|P"e%\gK-^ULE졬)<"4"ZE iJ-ɡ(?Lp>f=|Dr͌j -Ls(?t>rc14z. Lg3p2N듐{ 9ƃq`,Vj<%Ep Fu㑎AyDtpa6! !HȵesBpy84(?d?p4r*~/v`>790;ӋwLzdDyh@z}E)WtRyG97U=:YmNF!\.{hz@-hڂ6j>]eEH-Z0$}ksl秌z~4$IJˏ~n~qةjގ'8ڎa 8jyl=lcދ˺IÛ[Iryp; ^qIoN*>yg8XAC2PQZz7Y;RD8i0v>|̗.fe}5Gn?ɖ dU 6kԒJaMmMϐTө>zG>YI]{esC~ΐ _% -NڜPTU+%5tw/]jvڻڍFG'1@zÝ%Qy ŲŒ+!fEUokGKoN=%7J[ָO&,duf9olxTdxlfr=|8?|fqLL4~ܯ` lia;?%nT{ -_#ާ-oS -ox'; -endstream -endobj -55 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -56 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -57 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -58 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 48 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 118 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 278 0 -0 556 0 0 0 556 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 722 0 0 722 0 -0 0 722 667 611 0 667 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 0 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 49 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 0 500 0 500 0 0 0 250 250 0 0 0 0 -0 778 611 709 774 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 50 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 0 0 0 0 600 0 600 600 600 0 600 600 600 0 -600 600 600 600 600 600 600 0 0 0 600 0 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 0 600 600 600 0 600 0 600 0 0 0 600 600 0 -0 0 600 600 600 600 600 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 51 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -0 0 600 600 600 600 0 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 600 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 52 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBHEBE+Symbol -/Encoding /Identity-H -/DescendantFonts [ 59 0 R ] -/ToUnicode 60 0 R ->> -endobj -59 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBHEBE+Symbol -/FontDescriptor 53 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 667 722 722 667 611 778 0 278 0 667 556 833 722 0 -0 0 722 667 611 722 667 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 55 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 333 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 500 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 56 0 R ->> -endobj -20 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 48 -/LastChar 86 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 0 600 600 0 -600 0 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 57 0 R ->> -endobj -21 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 0 0 278 0 0 278 0 556 444 -0 0 389 389 333 0 500 722 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 58 0 R ->> -endobj -60 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'8omN&nN- Z<Z?+;dOcgF%o(hp8yy1LkD^E64"JUs$~n2,J?F/r݈]H ߉!Gsj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -25 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 27 0 R -/Contents 26 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -61 0 obj -<< -/S /D ->> -endobj -62 0 obj -<< -/Nums [0 61 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 16 0 R 22 0 R 25 0 R 28 0 R 31 0 R 34 0 R 37 0 R 40 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [43 0 R] -/Count 1 -/Parent 46 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [11 0 R 47 0 R ] -/Count 11 -/MediaBox [0 0 612 792] ->> -endobj -63 0 obj -<< -/CreationDate (D:20210202102651-06'00') -/ModDate (D:20210202102651-06'00') -/Producer (Apple pstopdf) ->> -endobj -64 0 obj -<< -/Type /Catalog -/Pages 46 0 R -/PageLabels 62 0 R ->> -endobj -xref -0 65 -0000000000 65535 f -0000113046 00000 n -0000000016 00000 n -0000005479 00000 n -0000108908 00000 n -0000109119 00000 n -0000109541 00000 n -0000110080 00000 n -0000110597 00000 n -0000111064 00000 n -0000086671 00000 n -0000114035 00000 n -0000113127 00000 n -0000005632 00000 n -0000008964 00000 n -0000111409 00000 n -0000113211 00000 n -0000009108 00000 n -0000018180 00000 n -0000111730 00000 n -0000112084 00000 n -0000112367 00000 n -0000113295 00000 n -0000018375 00000 n -0000028300 00000 n -0000113379 00000 n -0000028483 00000 n -0000038721 00000 n -0000113463 00000 n -0000038891 00000 n -0000048037 00000 n -0000113547 00000 n -0000048207 00000 n -0000056057 00000 n -0000113631 00000 n -0000056238 00000 n -0000062411 00000 n -0000113715 00000 n -0000062592 00000 n -0000074818 00000 n -0000113799 00000 n -0000074999 00000 n -0000083204 00000 n -0000113883 00000 n -0000083374 00000 n -0000086501 00000 n -0000114246 00000 n -0000114172 00000 n -0000086812 00000 n -0000087009 00000 n -0000087215 00000 n -0000087415 00000 n -0000087606 00000 n -0000087807 00000 n -0000087997 00000 n -0000108103 00000 n -0000108298 00000 n -0000108503 00000 n -0000108705 00000 n -0000111206 00000 n -0000112755 00000 n -0000113967 00000 n -0000113995 00000 n -0000114338 00000 n -0000114461 00000 n -trailer -<< -/Size 65 -/Root 64 0 R -/Info 63 0 R -/ID [] ->> -startxref -114531 -%%EOF diff --git a/docs/medley-irm/16-SEDIT.pdf b/docs/medley-irm/16-SEDIT.pdf deleted file mode 100644 index ff5f28ed..00000000 --- a/docs/medley-irm/16-SEDIT.pdf +++ /dev/null @@ -1,28838 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 3938 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(SEDIT - The EDITOR)Tj -/TT6 1 Tf -0 -2 TD -(16. SEdit - The Structure Editor)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 544.99 m -558.01 544.99 l -S -BT -/TT8 1 Tf -9 0 0 9 78 522.54 Tm -0.0756 Tw -(Medleys code editors are structure editorsthey know how to take advantage of Lisp code being)Tj -0 -1.2222 TD -0 Tw -(represented as lists. One is a display editor named SEdit and the other is a TTY-based editor.)Tj -/TT6 1 Tf -12 0 0 12 54 467.64 Tm -(Starting the Editor)Tj -ET -1 w -54.01 464.49 m -558.01 464.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 450.54 Tm -(The editor is normally called using the following functions:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(DF)Tj -/TT12 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 136.6526 428.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 359.33 428.2 Tm -([NLambda NoSpread Function])Tj --27.2589 -2.7333 TD -0.01 Tw -(Edit the definition of the function )Tj -/TT14 1 Tf -15.0912 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.01 Tw -(. )Tj -/TT10 1 Tf -0.77 0 TD -0 Tw -(DF)Tj -/TT8 1 Tf -1.2002 0 TD -0.01 Tw -[( handles exceptional cases \(the function is broken or)]TJ --18.2616 -1.2889 TD -(advised, the definition is on the property list, the function needs to be loaded from a file, etc.\))Tj -0 -1.2222 TD -0 Tw -(the same as )Tj -/TT10 1 Tf -5.3467 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -( \(see below\).)Tj --8.3472 -2.9556 TD -0.0222 Tw -(If you call )Tj -/TT10 1 Tf -4.7175 0 TD -0 Tw -(DF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( with a name that has no function definition, you are prompted with a choise of)]TJ --5.9177 -1.2889 TD -0 Tw -(definers to use.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(DV)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 147.4544 320.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 359.33 320.46 Tm -([NLambda NoSpread Function])Tj --27.2589 -2.7333 TD -(Edit the value of the variable )Tj -/TT14 1 Tf -13.0044 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --16.138 -2.5489 TD -(\(DP)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 176.7088 272.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 359.33 272.92 Tm -([NLambda NoSpread Function])Tj --27.2589 -2.7333 TD -0.1522 Tw -(Edit property )Tj -/TT14 1 Tf -6.5427 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[( of the symbol )]TJ -/TT14 1 Tf -7.1279 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[(. If )]TJ -/TT14 1 Tf -2.1266 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[( is not given, the whole property list of)]TJ -/TT14 1 Tf --22.9984 -1.2889 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( is edited.)Tj -/TT10 1 Tf --3.7337 -2.4 TD -(\(DC)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT8 1 Tf -24.1418 0 TD -([NLambda NoSpread Function])Tj --27.2589 -2.7333 TD -(Edit the file package commands \(or filecoms, see Chapter 17\) for the file )Tj -/TT14 1 Tf -32.9551 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --36.6888 -2.4 TD -(\(ED)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME OPTIONS)Tj -/TT10 1 Tf -7.2012 0 TD -(\) )Tj -/TT8 1 Tf -28.8188 0 TD -([Function])Tj --36.7367 -2.7333 TD -0.0689 Tw -(This function finds out what kind of definiton )Tj -/TT14 1 Tf -21.0858 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -[( has and lets you edit it. If NAME has)]TJ --23.4862 -1.2889 TD -0.0067 Tw -(more than one definition \(e.g., its both a function and a macro\), you will be prompted for the)Tj -0 -1.2222 TD -0 Tw -(right one. If NAME has no definition, youll be asked what kind of definition to create.)Tj -/TT6 1 Tf -12 0 0 12 54 77.82 Tm -(Choosing Your Editor)Tj -ET -54.01 74.67 m -558.01 74.67 l -S -BT -/TT8 1 Tf -9 0 0 9 78 60.72 Tm -(The default editor may be set with )Tj -/TT10 1 Tf -15.4482 0 TD -(EDITMODE)Tj -/TT8 1 Tf -4.8008 0 TD -(:)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 3841 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-2)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\(EDITMODE)Tj -/TT8 1 Tf -5.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEWMODE)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 244.057 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --36.7367 -2.7333 TD -(If )Tj -/TT14 1 Tf -0.9377 0 TD -(NEWMODE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0178 Tw -[( is )]TJ -/TT10 1 Tf -1.2504 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0178 Tw -(, sets the default editor to be SEdit; or the teletype editor \(if )Tj -/TT14 1 Tf -26.5509 0 TD -0 Tw -(NEWMODE)Tj -/TT8 1 Tf --37.1404 -1.2889 TD -(is )Tj -/TT10 1 Tf -0.9893 0 TD -(TELETYPE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0244 Tw -[(\). Returns the previous setting. If )]TJ -/TT14 1 Tf -15.4509 0 TD -0 Tw -(NEWMODE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0244 Tw -[( is )]TJ -/TT10 1 Tf -1.2637 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0244 Tw -(, returns the previous setting)Tj --28.5057 -1.2889 TD -0 Tw -(without setting a new editor.)Tj -/TT6 1 Tf -12 0 0 12 102 476.5 Tm -(SEdit - The Structure Editor)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 473.35 m -582.01 473.35 l -S -BT -/TT8 1 Tf -9 0 0 9 126 451.4 Tm -0.0867 Tw -[(SEdit is a structure editor. You use a structure editor when you want to edit objects instead of text.)]TJ -0 -1.2222 TD -0.1444 Tw -(SEdit is a part of the environment and operates directly on objects in the system you are running.)Tj -T* -0 Tw -(SEdit behaves differently depending on the type of objects you are editing.)Tj -4.4167 -2 TD -0.1178 Tw -[(Common )117.8(Lisp )117.8(definitions:)-1335.6(SEdit always edits a copy of a Common Lisp definition. The)]TJ -12.9167 -1.2222 TD -0.1378 Tw -(changes made while you edit a function will not be installed)Tj -T* -0 Tw -(until the edit session is complete.)Tj -0 -2 TD -0.0167 Tw -(For example, when you edit a Common Lisp function, you edit)Tj -0 -1.2222 TD -0.0444 Tw -(the definition of the function and not the executable version of)Tj -T* -0.0578 Tw -[(the function. When you end the session the comments will be)]TJ -T* -0.0001 Tc -0.0043 Tw -(stripped of the definition and the definition will be installed as)Tj -T* -0 Tc -0 Tw -(the executable version of the function.)Tj --15.0789 -2 TD -0.0389 Tw -[(Interlisp )38.9(functions )38.9(and )38.9(macros:)-1337.7(SEdit edits the actual structure that will be run, except editing)]TJ -15.0789 -1.2222 TD -0.1378 Tw -[(the source for a compiled function. In this case, changes are)]TJ -T* -0.0433 Tw -(made and the function is unsaved when you complete the edit)Tj -T* -0 Tw -(session.)Tj --10.1922 -2 TD -0.5111 Tw -[(All )511.1(other )511.1(structures:)-1335.3(Variables, property lists and other structures are edited)]TJ -10.1922 -1.2222 TD -0 Tw -(directly in place, i.e. SEdit installs all changes as they are made.)Tj --17.3333 -2.8889 TD -0.2167 Tw -(If you make a severe editing error, you can abort the edit session with an Abort command \(see)Tj -0 -1.2222 TD -0.0922 Tw -[(Command Keys, below\). This command undoes all changes from the beginning of the edit session)]TJ -T* -0 Tw -(and exits from SEdit without changing your environment.)Tj -0 -2.8889 TD -0.03 Tw -(If you change the definition of an object that is being edited in an SEdit window, Medley will ask you)Tj -0 -1.2222 TD -0 Tw -(if you want to throw away the changes made there.)Tj -0 -2.8889 TD -(SEdit supports the standard Copy-Select mechanism in Medley.)Tj -/TT6 1 Tf -12 0 0 12 102 92.5 Tm -( An SEdit Session)Tj -ET -102.01 89.35 m -582.01 89.35 l -S -BT -/TT8 1 Tf -9 0 0 9 126 67.4 Tm -0.1156 Tw -[(Whenever you call SEdit, a new SEdit window is created. This SEdit window has its own process.)]TJ -0 -1.2222 TD -0.0956 Tw -(You can make edits in the window, shrink it while you do something else, expand it and edit some)Tj -T* -0 Tw -(more, and finally close the window when you are done.)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -17 0 obj -<< -/Length 2367 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-3)Tj -/TT8 1 Tf --42.8333 60.6156 TD -0.0944 Tw -[(Throughout an edit session, SEdit remembers everything that you do IN a change history. You can)]TJ -0 -1.2222 TD -0.06 Tw -[(undo and redo edits sequentially. When you end the edit session, SEdit forgets this information and)]TJ -T* -0 Tw -(installs the changes in the system.)Tj -0 -2.8889 TD -(You signal the end of the session in the following ways:)Tj -T* -[()-727.4(Close the window. )]TJ -T* -[()-727.4(Shrink the window. If you expand the window again, you can continue editing.)]TJ -T* -[()-727.4(Issue a Completion Command, see below.)]TJ -/TT6 1 Tf -10 0 0 10 54 401.2 Tm -(SEdit Carets)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 398.49 m -558.01 398.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 376.54 Tm -0.1411 Tw -[(There are two carets in SEdit, the edit caret and the structure caret. The edit caret appears when)]TJ -0 -1.2222 TD -0.0711 Tw -[(characters are edited within a single symbol, string, or comment. Anything you type will appear at)]TJ -T* -0 Tw -(the edit caret as part of the item its in. The edit caret looks like this:)Tj -ET -q -30 0 0 -19.5 78.01 334.99 cm -/Im1 Do -Q -BT -9 0 0 9 78 292.04 Tm -0.0567 Tw -(The structure caret appears when the edit point is between symbols \(or strings or comments\), so that)Tj -T* -0 Tw -(anything you type will go into a new one. It looks like this: )Tj -ET -q -30.75 0 0 -20.25 78.01 261.49 cm -/Im2 Do -Q -BT -9 0 0 9 108.75 241.24 Tm -( )Tj --3.4167 -2.8889 TD -0.1933 Tw -[(SEdit changes the caret frequently, depending on where the caret is positioned. The left mouse)]TJ -0 -1.2222 TD -0 Tw -(button positions the edit caret. The middle mouse button positions the structure caret.)Tj -/TT6 1 Tf -10 0 0 10 54 161.9 Tm -( The Mouse)Tj -ET -54.01 159.19 m -558.01 159.19 l -S -BT -/TT8 1 Tf -9 0 0 9 78 137.24 Tm -0.0756 Tw -[(The left mouse button selects parts of Lisp structures. The middle mouse button)-6.6( selects whole Lisp)]TJ -T* -0 Tw -(structures.)Tj -0 -2.8889 TD -0.03 Tw -(For example; select the )Tj -/TT10 1 Tf -10.4462 0 TD -0 Tw -(Q)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( in )]TJ -/TT10 1 Tf -1.433 0 TD -0 Tw -(LEQ)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[( below by pressing the left mouse button when the pointer is over the)]TJ -/TT10 1 Tf --14.2796 -1.2889 TD -0 Tw -(Q)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -q -52.5 0 0 -16.5 78.01 68.49 cm -/Im3 Do -Q -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/XObject << -/Im1 19 0 R -/Im2 20 0 R -/Im3 21 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -23 0 obj -<< -/Length 3470 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-4)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(Any characters you type in now will be appended to the symbol )Tj -/TT10 1 Tf -28.6226 0 TD -(LEQ)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --30.4229 -2.9556 TD -0.0133 Tw -(Selecting the same letter with the middle mouse button selects the whole symbol \(this matches TEdits)Tj -0 -1.2222 TD -0 Tw -(character/word selection convention\), and sets a structure caret between the )Tj -/TT10 1 Tf -34.0488 0 TD -(LEQ)Tj -/TT8 1 Tf -1.8003 0 TD -( and the )Tj -/TT10 1 Tf -3.8301 0 TD -(n)Tj -/TT8 1 Tf -0.6001 0 TD -(:)Tj -ET -q -53.25 0 0 -21 126.01 511.79 cm -/Im4 Do -Q -BT -9 0 0 9 126 467.34 Tm -(Any characters you type in now will form a new symbol between the )Tj -/TT10 1 Tf -30.7886 0 TD -(LEQ)Tj -/TT8 1 Tf -1.8003 0 TD -( and the )Tj -/TT10 1 Tf -3.8301 0 TD -(n)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --37.019 -2.9556 TD -0.1144 Tw -(Larger structures can be selected in two ways. Use the middle mouse button to position the mouse)Tj -0 -1.2222 TD -0.03 Tw -[(cursor on the parenthesis of the list you want to edit. Press the mouse button multiple times, without)]TJ -T* -0.0578 Tw -[(moving the mouse, extends the selection. In the previous example, if the middle button was pressed)]TJ -T* -0 Tw -(twice, the list )Tj -/TT10 1 Tf -6.0933 0 TD -(\(LEQ ...\))Tj -/TT8 1 Tf -5.4009 0 TD -( would be selected:)Tj -ET -q -56.25 0 0 -18.75 126.01 387.59 cm -/Im5 Do -Q -BT -9 0 0 9 126 345.39 Tm -(Press the button a third time and you will select the list containing the )Tj -/TT10 1 Tf -31.188 0 TD -(\(LEQ n 1\))Tj -/TT8 1 Tf -5.4009 0 TD -( to be selected. )Tj --36.5889 -2.9556 TD -0.4122 Tw -[(The right mouse button positions the mouse cursor for selecting sequences of structures or)]TJ -0 -1.2222 TD -0.2056 Tw -[(substructures. Extended selections are indicated by a box enclosing the structures selected. The)]TJ -T* -0.1133 Tw -[(selection extends in the same mode as the original selection. That is, if the original selection was a)]TJ -T* -0.0122 Tw -[(character selection, the right button will be used to select more characters in the same atom. Extended)]TJ -T* -0.0067 Tw -[(selections also have the property of being marked for pending deletion. That is, the selection takes the)]TJ -T* -0 Tw -(place of the caret, and anything typed in is inserted in place of the selection.)Tj -0 -2.8889 TD -0.1178 Tw -[(For example, selecting the )]TJ -/TT10 1 Tf -12.5943 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.1178 Tw -[( by pressing the left mouse button and selecting the )]TJ -/TT10 1 Tf -24.1788 0 TD -0 Tw -(Q)Tj -/TT8 1 Tf -0.6001 0 TD -0.1178 Tw -[( by pressing the)]TJ --37.9732 -1.2889 TD -0 Tw -(right mouse button will produce:)Tj -ET -q -51.75 0 0 -18.75 126.01 206.64 cm -/Im6 Do -Q -BT -9 0 0 9 126 164.44 Tm -0.0711 Tw -(Similarly, pressing the middle mouse button and then selecting with the right mouse button extends)Tj -0 -1.2222 TD -0.1133 Tw -[(the selection by whole structures. In our example, pressing the middle mouse button to select )]TJ -/TT10 1 Tf -43.5253 0 TD -0 Tw -(LEQ)Tj -/TT8 1 Tf --43.5253 -1.2889 TD -(and pressing the right mouse button to select the )Tj -/TT10 1 Tf -21.8057 0 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -( will produce:)Tj -ET -q -54.75 0 0 -24 126.01 121.69 cm -/Im7 Do -Q -BT -9 0 0 9 126 74.24 Tm -0.2322 Tw -[(This is not the same as selecting the entire list, as above. Instead, the elements in the list are)]TJ -0 -1.2222 TD -0 Tw -(collectively selected, but the list itself is not.)Tj -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/XObject << -/Im4 25 0 R -/Im5 26 0 R -/Im6 27 0 R -/Im7 28 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -30 0 obj -<< -/Length 3596 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-5)Tj -/TT6 1 Tf -10 0 0 10 54 568.2 Tm -( Gaps)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -558.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 543.54 Tm -0.1967 Tw -[(SEdit requires that everything edited must have an underlying Lisp structure at all times. Some)]TJ -0 -1.2222 TD -0.2611 Tw -(characters, such as single quote )Tj -/TT10 1 Tf -15.9081 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.2611 Tw -( have no meaning by themselves, but must be followed by)Tj --16.5082 -1.2889 TD -0.1622 Tw -[(something more. Whenyou type such a character, SEdit puts a gap where the rest of the input)]TJ -0 -1.2222 TD -0 Tw -(should go. When you type, the gap is automatically replaced. )Tj -0 -2.8889 TD -(A gap looks like: )Tj -ET -q -11.25 0 0 -3.75 151.48 487.69 cm -/Im8 Do -Q -BT -9 0 0 9 162.72 483.94 Tm -( )Tj --9.4133 -3.4222 TD -(After you type a quote, the gap looks like this: )Tj -ET -q -15.75 0 0 -11.25 265.98 464.39 cm -/Im9 Do -Q -BT -9 0 0 9 281.72 453.14 Tm -( with the gap marked for pending deletion.)Tj -/TT6 1 Tf -10 0 0 10 54 410.8 Tm -(Broken Atoms )Tj -ET -54.01 408.09 m -558.01 408.09 l -S -BT -/TT8 1 Tf -9 0 0 9 78 386.14 Tm -0.1167 Tw -(When you type an atom \(a symbol or a number\), SEdit saves the characters you type until you are)Tj -0 -1.2222 TD -0.06 Tw -[(finished. Typing any character that cannot belong to an atom, like a space or open parenthesis, ends)]TJ -T* -0.1033 Tw -[(the atom. SEdit then tries to create an atom with the characters you just typed, just as if they were)]TJ -T* -0 Tw -(read by the Lisp reader. The atom then becomes part of the structure youre editing.)Tj -0 -2.8889 TD -0.1789 Tw -[(If an error occurs when SEdit reads the atom, SEdit creates a structure called a Broken-Atom. A)]TJ -0 -1.2222 TD -0.1989 Tw -(Broken-Atom looks and behaves just like a normal atom, but is printed in italics to tell you that)Tj -T* -0 Tw -(something is wrong.)Tj -0 -2.8889 TD -0.1056 Tw -[(SEdit creates a Broken-Atom when the characters typed dont make a legal atom. For example, the)]TJ -0 -1.2222 TD -0.0355 Tw -(characters "DECLARE:" cant be a symbol because the colon is a package specifier, but the form is not)Tj -T* -0.0744 Tw -[(correct for a package-qualified symbol. Similarly, the characters "#b123" cannot represent an integer)]TJ -T* -0.04 Tw -(in base two, because 2 and 3 arent legal digits in base two, so SEdit would make a Broken-Atom that)Tj -T* -0 Tw -(looks like )Tj -/TT14 1 Tf -4.48 0 TD -(#b123)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --7.4805 -2.9556 TD -0.0811 Tw -[(You can edit Broken-Atoms just like real atoms. Whenever you finish editing a Broken-Atom, SEdit)]TJ -0 -1.2222 TD -0.1378 Tw -[(again tries to create an atom from the characters. If SEdit succeeds, it reprints the atom in SEdits)]TJ -T* -0.1656 Tw -[(default font, rather than in italics. Be sure to correct any Broken-Atoms you create before exiting)]TJ -T* -0 Tw -(SEdit, since Broken-Atoms do not behave in any useful way outside SEdit.)Tj -/TT6 1 Tf -10 0 0 10 54 133.2 Tm -(Special Characters)Tj -ET -54.01 130.49 m -558.01 130.49 l -S -BT -/TT8 1 Tf -9 0 0 9 90 108.54 Tm -0.0757 Tw -[(Some characters have special meanings in Lisp, and are therefor treated specially by SEdit. SEdit)]TJ -T* -0.0656 Tw -[(must always have a complete structure to work on at any level of the edit. This means that SEdit)]TJ -T* -0.2211 Tw -[(needs a special way to type in structures such as lists, strings, and quoted objects. In most)]TJ -T* -0.1833 Tw -[(instances these structures can be typed in just as they would be to a regular Exec, but in the)]TJ -T* -0 Tw -(following cases this is not possible.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R ->> -/XObject << -/Im8 32 0 R -/Im9 33 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -35 0 obj -<< -/Length 3968 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-6)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 189.06 569.54 Tm -(Lists:)Tj -/TT16 1 Tf -3.66 0 TD -(\( \))Tj -/TT8 1 Tf -5.3333 0 TD -0.1411 Tw -(Lists begin with an open parenthesis character "\(". Typing)Tj -0 -1.2889 TD -0.2144 Tw -[(an open parenthesis gives a balanced list. SEdit inserts)]TJ -0 -1.2222 TD -0.0344 Tw -[(both an open and a close parenthesis. The structure caret is)]TJ -T* -0.11 Tw -[(placed between the two parentheses. List elements can be)]TJ -T* -0.0122 Tw -[(typed in at the structure caret. When a close parenthesis, "\)")]TJ -T* -0.0456 Tw -(is typed, the caret will be moved outside the list, effectively)Tj -T* -0.2622 Tw -[(finishing the list. Square bracket characters, "[" and "]",)]TJ -T* -0.1367 Tw -(have no special meaning in SEdit, as they have no special)Tj -T* -0 Tw -(meaning in Common Lisp. )Tj --12.6289 -2 TD -(Single Quote:)Tj -/TT16 1 Tf -7.2956 0 TD -()Tj -/TT8 1 Tf --6.2078 -1.2889 TD -(Backquote:)Tj -/TT16 1 Tf -6.2078 0 TD -()Tj -/TT8 1 Tf --5.1044 -1.2889 TD -(Comma:)Tj -/TT16 1 Tf -5.1044 0 TD -(,)Tj -/TT8 1 Tf --4.89 -1.2889 TD -(At Sign:)Tj -/TT16 1 Tf -4.89 0 TD -(,@)Tj -/TT8 1 Tf --3.2289 -1.2889 TD -(Dot:)Tj -/TT16 1 Tf -3.2289 0 TD -(,.)Tj -/TT8 1 Tf --6.9111 -1.2889 TD -(Hash Quote:)Tj -/TT16 1 Tf -6.9111 0 TD -(#)Tj -/TT8 1 Tf -5.3333 0 TD -0.6056 Tw -(All these characters are special macro characters in)Tj -0 -1.2889 TD -0.2689 Tw -(Common Lisp. When you type one, SEdit will echo the)Tj -0 -1.2222 TD -0 Tw -(character followed by a gap, which you should then fill in.)Tj --12.3044 -2 TD -(Dotted Lists:)Tj -/TT16 1 Tf -6.9711 0 TD -(\( . \))Tj -/TT8 1 Tf -5.3333 0 TD -0.2378 Tw -[(Use period to enter dotted pairs. After you type a dot,)]TJ -0 -1.2889 TD -0.0822 Tw -(SEdit prints a dot and a gap to fill in for the tail of the list.)Tj -0 -1.2222 TD -0.0233 Tw -(To dot an existing list, point the cursor between the last and)Tj -T* -0.1489 Tw -[(second to last elements, and type a dot. To undot a list,)]TJ -T* -0.0833 Tw -(select the tail of the list before the dot while holding down)Tj -T* -0 Tw -(the SHIFT key.)Tj --12.8178 -2 TD -(Single escape:)Tj -/TT16 1 Tf -7.4844 0 TD -(\\ )Tj -/TT8 1 Tf -1.2002 0 TD -(or)Tj -/TT16 1 Tf -0.9409 0 TD -( %)Tj -/TT8 1 Tf -3.1922 0 TD -0.32 Tw -(Use the single escape characters to make symbols with)Tj -0 -1.2889 TD -0.0756 Tw -[(special characters. The single escape character for Interlisp)]TJ -0 -1.2222 TD -0 Tw -(is "%". The single escape character for Common Lisp is "\\".)Tj -0 -2 TD -0.07 Tw -(When you want to create a symbol with a special character)Tj -0 -1.2222 TD -0.1056 Tw -(in it you have to type a single escape character before you)Tj -T* -0.2967 Tw -(type the character itself. SEdit does not echo the single)Tj -T* -0 Tw -(escape character until you type the following character.)Tj -0 -2 TD -0.1478 Tw -(For example; create the Common Lisp symbol )Tj -/TT10 1 Tf -21.6189 0 TD -0 Tw -(APAREN-\()Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --26.4197 -1.2889 TD -0.0767 Tw -(Since SEdit normally will treat the ")Tj -/TT10 1 Tf -16.1802 0 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.6001 0 TD -0.0767 Tw -(" as the start of a new)Tj --16.7803 -1.2889 TD -0.0144 Tw -(list you have to tell SEdit to treat it as an ordinary character.)Tj -0 -1.2222 TD -0 Tw -(You do this by typing a ")Tj -/TT10 1 Tf -10.9888 0 TD -(\\)Tj -/TT8 1 Tf -0.6001 0 TD -(" before you type the ")Tj -/TT10 1 Tf -9.832 0 TD -(\()Tj -/TT8 1 Tf -0.6001 0 TD -(".)Tj --36.4254 -4.0667 TD -(Multiple Escape)Tj -/TT16 1 Tf -7.1367 0 TD -1.3343 Tc -(:|)Tj -/TT8 1 Tf -7.2677 0 TD -0 Tc -0.09 Tw -(Use the multiple escape character when you enter symbols)Tj -0 -1.2889 TD -0.3867 Tw -[(with many special characters. SEdit always balances)]TJ -0 -1.2222 TD -0.0344 Tw -[(multiple escape characters. When you type one, SEdit adds)]TJ -T* -0.0467 Tw -[(another, with the caret between them. If you type a second)]TJ -T* -0.0822 Tw -[(vertical bar, the caret moves after it, but is still inthe same)]TJ -T* -0 Tw -(symbol, so you can add more unescaped characters.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -39 0 obj -<< -/Length 3622 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-7)Tj -/TT8 1 Tf --38.1578 60.6156 TD -(Comment:)Tj -/TT16 1 Tf -5.9911 0 TD -(;)Tj -/TT8 1 Tf -5.3333 0 TD -0.0067 Tw -[(A semicolon starts a comment. When you type a semicolon,)]TJ -0 -1.2889 TD -0.0878 Tw -(an empty comment is inserted with the caret in position to)Tj -0 -1.2222 TD -0 Tw -(type the comment. Comments can be edited like strings. )Tj -0 -2 TD -0.2744 Tw -(There are three levels of comments supported by SEdit:)Tj -0 -1.2222 TD -0.3711 Tw -[(single-, double-, and triple-semicolon. Single-semicolon)]TJ -T* -0.2989 Tw -(comments are formatted at the comment column, about)Tj -T* -0.3233 Tw -[(three-quarters of the way across the window. Double-)]TJ -T* -0.8167 Tw -(semicolon comments are formatted at the current)Tj -T* -0.3733 Tw -[(indentation of the code they are in. Triple semicolon)]TJ -T* -0.0933 Tw -[(comments are formatted against the left margin. The level)]TJ -T* -0.2089 Tw -(of a comment can be increased or decreased by pointing)Tj -T* -0.0333 Tw -(after the semicolon, and either typing another semicolon, or)Tj -T* -0.08 Tw -[(backspacing over the preceding semicolon. Comments can)]TJ -T* -0.0322 Tw -[(be placed anywhere in your Common Lisp code. However,)]TJ -T* -0.1144 Tw -(in Interlisp code, they must follow the placement rules for)Tj -T* -0 Tw -(Interlisp comments.)Tj --9.5911 -2 TD -(String:)Tj -/TT16 1 Tf -4.2578 0 TD -(")Tj -/TT8 1 Tf -5.3333 0 TD -0.2811 Tw -[(Enter strings in SEdit by typing a double quote. SEdit)]TJ -0 -1.2889 TD -0.3144 Tw -[(balances the double quotes: When one is typed, SEdit)]TJ -0 -1.2222 TD -0.0878 Tw -[(produces a second, with the caret between the two. If you)]TJ -T* -(type a double-quote in the middle of a string, SEdit breaks)Tj -T* -0 Tw -(the string in two, leaving the caret between them.)Tj -/TT6 1 Tf -10 0 0 10 54 292 Tm -(SEdit Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 289.29 m -534.01 289.29 l -S -BT -/TT8 1 Tf -9 0 0 9 78 267.34 Tm -0.0122 Tw -[(Enter SEdit commands either from the keyboard or from the SEdit menu. When possible, SEdit uses a)]TJ -T* -0.1978 Tw -[(named key on the keyboard, e.g., the DELETE key. Other commands are combinations of Meta,)]TJ -T* -0.0978 Tw -[(Control, and alphabetic keys. For the alphabetic command keys, either uppercase or lowercase will)]TJ -T* -0 Tw -(work.)Tj -0 -2.8889 TD -0.0489 Tw -[(There are two menus available, as an alternative means of invoking commands. They are the middle)]TJ -0 -1.2222 TD -0.1278 Tw -[(button popup menu, and the attached command menu. These menus are described in more detail)]TJ -T* -0 Tw -(below.)Tj -/TT16 1 Tf -4.4 -2.3333 TD -(Meta-A)Tj -/TT8 1 Tf -4.9333 0 TD -(Abort the session. Throw away the changes made to the form. )Tj -/TT16 1 Tf --4.9333 -2.1778 TD -(Meta-B)Tj -/TT8 1 Tf -4.9333 0 TD -0.0867 Tw -[(Change the Print Base. Prompts for entry of the desired Print Base, in decimal.)]TJ -0 -1.0667 TD -0 Tw -(SEdit redisplays fixed point numbers in this new base. )Tj -/TT16 1 Tf --6.7333 -2.1111 TD -(Control-C)Tj -/TT8 1 Tf -6.7333 0 TD -0.0656 Tw -(Tell SEdit that this session is complete and compiles the definition being edited.)Tj -0 -1.0667 TD -0.04 Tw -(The variable )Tj -/TT10 1 Tf -5.828 0 TD -0 Tw -(*COMPILE-FN*)Tj -/TT8 1 Tf -7.2012 0 TD -0.04 Tw -[( determines which function to use as compiler. See)]TJ --13.0292 -1.0667 TD -0 Tw -(the Options section below.)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-C)Tj -/TT8 1 Tf -9.33 0 TD -0.3078 Tw -(Signals the system that this edit is complete, compiles the definition being)Tj -0 -1.0667 TD -0 Tw -(editing, and closes the window.)Tj -/TT16 1 Tf --4.9333 -2.1111 TD -(DELETE)Tj -/TT8 1 Tf -5.1556 0 TD -(Deletes the current selection. )Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -42 0 obj -<< -/Length 4519 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-8)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT16 1 Tf -9 0 0 9 163.35 569.54 Tm -(Meta-E)Tj -/TT8 1 Tf -3.6 0 TD -0.0756 Tw -[( )-1257.7(Evaluate the current selection. If the result is a structure, the inspector is called)]TJ -1.5833 -1.0667 TD -0.0267 Tw -[(on it, allowing the user to choose how to look at the result. Otherwise, the result)]TJ -0 -1 TD -0.1222 Tw -[(is printed in the SEdit prompt window. The evaluation is done in the process)]TJ -T* -0.0944 Tw -[(from which the edit session was started. Thus, while editing a function from a)]TJ -T* -0 Tw -(break window, evaluations are done in the context of the break.)Tj -/TT16 1 Tf --3.7333 -2.0444 TD -(FIND)Tj --1.2 -1.0667 TD -(Meta-F)Tj -/TT8 1 Tf -4.9333 0 TD -0.3144 Tw -[(Find a specified structure, or sequence of structures. If there is a current)]TJ -0 -1.0667 TD -0.0422 Tw -[(selection, SEdit looks for the next occurrence of the selected structure. If there is)]TJ -0 -1 TD -0.0689 Tw -(no selection, SEdit prompts for the structure to find, and searches forward from)Tj -T* -0.2556 Tw -[(the position of the caret. The found structure will be selected, so the Find)]TJ -T* -0 Tw -(command can be used to easily find the same structure again.)Tj -0 -2 TD -0.04 Tw -(If a sequence of structures are selected, SEdit will look for the next occurrence of)Tj -0 -1 TD -0.0444 Tw -[(the same sequence. Similarly, when SEdit prompts for the structure to find, you)]TJ -T* -0 Tw -(can type a sequence of structures to look for.)Tj -0 -2 TD -0.0311 Tw -(The variable )Tj -/TT10 1 Tf -5.8103 0 TD -0 Tw -(*WRAP-SEARCH*)Tj -/TT8 1 Tf -7.8013 0 TD -0.0311 Tw -[( controls whether or not SEdit wraps around from)]TJ --13.6115 -1.0667 TD -0.4455 Tw -(the end of the structure being edited and continues searching from the)Tj -0 -1 TD -0 Tw -(beginning.)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-F)Tj -/TT8 1 Tf -8.4 0 TD -[( )-680(Find a specified structure, searching in reverse from the position of the caret.)]TJ -/TT16 1 Tf --2.8033 -2.1111 TD -(HELP)Tj --1.2 -1.0667 TD -(Meta-H)Tj -/TT8 1 Tf -4.9333 0 TD -0.1833 Tw -(Show the argument list for the function currently selected, or currently being)Tj -0 -1.0667 TD -0.0811 Tw -[(typed in, in the SEdit prompt window. If the argument list will not fit in the)]TJ -0 -1 TD -0 Tw -(SEdit prompt window, it is displayed in the main Prompt Window.)Tj -/TT16 1 Tf --4.9333 -2.1111 TD -(Meta-I)Tj -/TT8 1 Tf -4.9333 0 TD -(Inspect the current selection.)Tj -/TT16 1 Tf --4.9333 -2.1778 TD -(Meta-J)Tj -/TT8 1 Tf -4.9333 0 TD -0.0111 Tw -(Join any number of sequential Lisp objects of the same type into a single object of)Tj -0 -1.0667 TD -0.0233 Tw -[(that type. Join is supported for atoms, strings, lists, and comments. In addition,)]TJ -0 -1 TD -0.1322 Tw -(SEdit permits joining of a sequence of atoms and strings, since either type can)Tj -T* -0.01 Tw -[(easily be coerced into the other. In this case, the result of the Join will be an atom)]TJ -T* -0 Tw -(if the first object in the selection is an atom, otherwise the result will be a string.)Tj -/TT16 1 Tf --6.7333 -2.1111 TD -(Control-L)Tj -/TT8 1 Tf -6.8444 0 TD -(Redisplay the structure being edited. )Tj -/TT16 1 Tf --6.8444 -2.1111 TD -(SKIP-NEXT)Tj -1.2 -1.0667 TD -(Meta-N )Tj -/TT8 1 Tf -5.5333 0 TD -(Select next gap in the structure.)Tj -/TT16 1 Tf --5.1833 -2.1778 TD -(Meta-O)Tj -/TT8 1 Tf -3.6 0 TD -0.1078 Tw -[( )-1225.5(Edit the definition of the current selection. If the selected name has more than)]TJ -1.5833 -1.0667 TD -0.1689 Tw -[(one type of definition, SEdit asks for the type to edit. If the selection has no)]TJ -0 -1 TD -0.0144 Tw -[(definition, a menu pops up. This menu lets you specify the type of definition to)]TJ -T* -0 Tw -(create.)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-O)Tj -/TT8 1 Tf -9.33 0 TD -(Perform a fast edit by calling )Tj -/TT10 1 Tf -12.9893 0 TD -(ED)Tj -/TT8 1 Tf -1.2002 0 TD -( with the )Tj -/TT10 1 Tf -4.1704 0 TD -(CURRENT)Tj -/TT8 1 Tf -4.2007 0 TD -( option. )Tj -/TT16 1 Tf --27.4939 -2.1778 TD -(Meta-P)Tj -/TT8 1 Tf -4.9333 0 TD -0.1455 Tw -[(Change the current package for this edit. Prompt the user for a new package)]TJ -0 -1.0667 TD -0 Tw -(name. SEdit will redisplay atoms with respect to that package. )Tj -/TT16 1 Tf --4.3333 -2.0444 TD -(AGAIN)Tj --0.6 -1.0667 TD -(Meta-R)Tj -/TT8 1 Tf -4.9333 0 TD -0.0378 Tw -[(Redo the edit change that was just undone. Redo only works directly following)]TJ -0 -1.0667 TD -0 Tw -(an Undo. Any number of Undo commands can be sequentially redone.)Tj -/TT16 1 Tf --7.3333 -2.0444 TD -(SHIFT-FIND)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -45 0 obj -<< -/Length 4183 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-9)Tj -/TT16 1 Tf --38.4333 60.6156 TD -(Meta-S)Tj -/TT8 1 Tf -4.9333 0 TD -0.2378 Tw -(Substitute a structure, or sequence of structures within the current selection.)Tj -0 -1.0667 TD -0.0111 Tw -(SEdit prompts you in the SEdit prompt window for the structures to replace, and)Tj -0 -1 TD -0.2433 Tw -[(the structures to replace with. The selection to substitute within must be a)]TJ -T* -0 Tw -(structure selection.)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-S)Tj -/TT8 1 Tf -9.33 0 TD -0.0222 Tw -(Remove all occurences of a structure or sequence of structures within the current)Tj -0 -1.0667 TD -0 Tw -(selection. SEdit prompts you for the structures to delete.)Tj -/TT16 1 Tf --3.7333 -2.0444 TD -(UNDO)Tj --1.2 -1.0667 TD -(Meta-U)Tj -/TT8 1 Tf -4.9333 0 TD -0.0611 Tw -[(Undo the last edit. All changes in the the edit session are remembered, and can)]TJ -0 -1.0667 TD -0 Tw -(be undone sequentially)Tj -/TT16 1 Tf -10.3174 0 TD -(.)Tj --17.0507 -2.1778 TD -(Control-W)Tj -/TT8 1 Tf -6.7333 0 TD -0.1022 Tw -[(Delete the previous atom or structure. If the caret is in the middle of an atom,)]TJ -0 -1.0667 TD -0 Tw -(deletes backward to the beginning of the atom only.)Tj -/TT16 1 Tf --6.7333 -2.1111 TD -(Control-X)Tj -/TT8 1 Tf -6.8444 0 TD -(Tell SEdit that this session is complete. The SEdit window remains open.)Tj -/TT16 1 Tf --5.0444 -2.1111 TD -(EXPAND)Tj -0 -1.0667 TD -(Meta-X)Tj -/TT8 1 Tf -4.9333 0 TD -0.0633 Tw -[(Replaces the current selection with its definition. This command can be used to)]TJ -0 -1.0667 TD -0 Tw -(expand macros and translate CLISP.)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-X)Tj -/TT8 1 Tf -9.4411 0 TD -(Tell SEdit that this session is complete Close the SEdit window.)Tj -/TT16 1 Tf --5.0444 -2.1778 TD -(Meta-Z)Tj -/TT8 1 Tf -4.9333 0 TD -0.0178 Tw -[(Mutate. Prompt for a function and call this function with the current selection as)]TJ -0 -1.0667 TD -0 Tw -(the argument. The result is inserted into SEdit and made the current selection. )Tj -0 -2.1111 TD -0.2722 Tw -(For example, you can replace a structure with its value by selecting it and)Tj -0 -1 TD -0 Tw -(mutating by )Tj -/TT10 1 Tf -5.6768 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT16 1 Tf --13.0105 -2.1778 TD -(Meta-;)Tj -/TT8 1 Tf -4.9333 0 TD -0.1544 Tw -[(Convert old style comments in the selected structure to new style comments.)]TJ -0 -1.0667 TD -0.1533 Tw -(The converter notices any list that begins with the symbol IL:* as an old style)Tj -0 -1 TD -0 Tw -(comment. Section 16.1.18, Options, describes the converter options .)Tj -/TT16 1 Tf --9.33 -2.1111 TD -(Control-Meta-;)Tj -/TT8 1 Tf -9.33 0 TD -0.0811 Tw -[(Put the contents of a structure selection into a comment. This provides an easy)]TJ -0 -1.0667 TD -0.1244 Tw -[(way to "comment out" a chunk of code. The Extract command can be used to)]TJ -0 -1 TD -0 Tw -(reverse this process, returning the comment to the structures contained therein.)Tj -/TT16 1 Tf --4.9333 -2.1111 TD -(Meta-/)Tj -/TT8 1 Tf -4.9333 0 TD -0.0733 Tw -[(Extract one level of structure from the current selection. If there is no selection,)]TJ -0 -1.0667 TD -0.0156 Tw -[(but there is a structure caret, the list containing the caret is used. This command)]TJ -0 -1 TD -0.0678 Tw -[(can be used to strip the parentheses off a list, or to unquote a quoted structure,)]TJ -T* -0 Tw -(or to replace a comment with the contained structures.)Tj -/TT16 1 Tf --4.9333 -2.0444 TD -(Meta-)Tj -0 -1 TD -(Meta-)Tj -T* -(Meta-,)Tj -T* -(Meta-.)Tj --4.3967 -1.0667 TD -(Meta-@ )Tj -/TT8 1 Tf -4.2007 0 TD -(or)Tj -/TT16 1 Tf -0.9409 0 TD -( Meta-2)Tj --5.1416 -1.0667 TD -(Meta-# )Tj -/TT8 1 Tf -4.2007 0 TD -(or)Tj -/TT16 1 Tf -0.9409 0 TD -( Meta-3)Tj --0.7449 -1.0667 TD -(Meta-.)Tj -/TT8 1 Tf -4.9333 0 TD -(Quote the current selection with the specified kind of quote.)Tj -/TT16 1 Tf --7.3333 -2.1111 TD -(Meta-Space)Tj --0.6 -1.0667 TD -(Meta-Return)Tj -/TT8 1 Tf -7.9333 0 TD -0.0856 Tw -[(Scroll the current selection to the center of the window. Similarly, the Space or)]TJ -0 -1.0667 TD -0 Tw -(Return key can be used to normalize the caret.)Tj -/TT16 1 Tf --4.9333 -2.0444 TD -(Meta-\))Tj -0 -1.0667 TD -(Meta-0)Tj -/TT8 1 Tf -4.9333 0 TD -(Parenthesize the current selection, position the caret after the new list.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -48 0 obj -<< -/Length 2772 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-10)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT16 1 Tf -9 0 0 9 165.6 570.14 Tm -(Meta-\()Tj -0 -1.0667 TD -(Meta-9)Tj -/TT8 1 Tf -4.9333 0 TD -0.0433 Tw -(ParenthesizE the current selection, position the caret at the beginning of the new)Tj -0 -1.0667 TD -0 Tw -(list.)Tj -/TT16 1 Tf --4.9333 -2.1111 TD -(Meta-M)Tj -/TT8 1 Tf -4.9333 0 TD -0.1722 Tw -[(Attach a menu of common commands to the top of the SEdit window. Each)]TJ -0 -1.0667 TD -0 Tw -(SEdit window can have its own menu.)Tj -/TT6 1 Tf -10 0 0 10 102 482 Tm -(SEdit Command Mnemonics)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 479.29 m -606.01 479.29 l -S -BT -/TT8 1 Tf -9 0 0 9 270.62 453.34 Tm -[(Abort)-2666.3(Meta-A)]TJ --5.5233 -1 TD -[(Change Print Base)-2667.7(Meta-B)]TJ -3.8078 -1 TD -[(Complete)-2666(Control-X)]TJ --5.0778 -1 TD -[(Compile & Complete)-2666.2(Control-C)]TJ --2.9489 -1 TD -[(Close, Compile & Complete)-2666.3(Control-Meta-C)]TJ -4.0811 -1 TD -[(Convert Comment)-2665.8(Meta-;)]TJ --3.0911 -1 TD -[(Make Selection Comment)-2665.1(Control-Meta-;)]TJ -4.3644 -1 TD -[(Previous Delete)-2667.4(Control-W)]TJ --0.0545 -1 TD -[(Selection Delete)-2665.6(DELETE)]TJ --2.5889 -1 TD -[(Selection Dot Comma)-2666.2(Meta-.)]TJ -0.5422 -1 TD -[(Selection At Comma)-2665.9(Meta-@)]TJ -7.2478 -1 TD -[(Edit)-2666.7(Meta-O)]TJ --2.0556 -1 TD -[(Fast Edit)-2666.1(Control-Meta-O)]TJ --2.2844 -1 TD -[(Selection Eval)-2665.9(Meta-E)]TJ --0.3233 -1 TD -[(Macro Expand)-2667.4(Meta-X)]TJ -0.3744 -1 TD -[(Forward Find)-2667.5(Meta-F)]TJ -0.3489 -1 TD -[(Reverse Find)-2666.7(Control-Meta-F)]TJ -1.5133 -1 TD -[(Next Gap)-2665.6(Meta-N)]TJ --1.2489 -1 TD -[(Arglist Help)-2666.9(Meta-H)]TJ -2.3211 -1 TD -[(Inspect)-2667.1(Meta-I)]TJ -1.4411 -1 TD -[(Join)-2666.9(Meta-J)]TJ --4.0633 -1 TD -[(Attach Menu)-2666.3(Meta-M)]TJ --2.4833 -1 TD -[(Expression Mutate)-2666.7(Meat-Z)]TJ -1.0022 -1 TD -[(Change Package)-2666(Meta-P)]TJ --4.5567 -1 TD -[(Selection Left Parenthesize)-2667(Meta-\()]TJ --0.6733 -1 TD -[(Selection Right Parenthesize)-2666(Meta-\))]TJ -6.5633 -1 TD -[(Selection Pop)-2666.1(Meta-/)]TJ --3.3489 -1 TD -[(Selection Back Quote)-2664.9(Meta-)]TJ --0.2278 -1 TD -[(Selection Hash Quote)-2665.6(Meta-#)]TJ -2.5889 -1 TD -[(Selection Quote)-2664.7(Meta-)]TJ -2.53 -1 TD -[(Redisplay)-2666.9(Control-L)]TJ -1.8678 -1 TD -[( Redo)-2666.3(Meta-R)]TJ --1.0656 -1 TD -[(Remove)-2665.9(Control-Meta-S)]TJ --0.8367 -1 TD -[(Substitute)-2665.7(Meta-S)]TJ -1.9389 -1 TD -[(Undo)-2666.7(Meta-U)]TJ -/TT6 1 Tf -10 0 0 10 102 107 Tm -(SEdit Command Menu)Tj -ET -102.01 104.29 m -606.01 104.29 l -S -BT -/TT8 1 Tf -9 0 0 9 174 90.34 Tm -0.1389 Tw -(When the mouse cursor is in the SEdit title bar and you press middle mouse button, a)Tj -0 -1.2222 TD -0 Tw -(Help Menu of commands pops up. The menu looks like this: )Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -51 0 obj -<< -/Length 1104 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-11)Tj -/TT8 1 Tf --25.75 29.1656 TD -( )Tj -ET -q -155.25 0 0 -289.4999 229.51 575.9899 cm -/Im10 Do -Q -BT -9 0 0 9 126 268.49 Tm -0.0478 Tw -(The Help Menu lists each command and its corresponding Command Key. \(C- stands for)Tj -0 -1.2222 TD -0.2811 Tw -[(Control, M- for Meta.\) The menu pops up with the mouse cursor next to the last)]TJ -T* -0 Tw -(command you used from the menu. This makes it easy to repeat a command.)Tj -/TT6 1 Tf -10 0 0 10 54 204.15 Tm -(SEdit Attached Menu)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 201.44 m -558.01 201.44 l -S -570 201.93 0.99 -0.99 re -f -BT -/TT8 1 Tf -9 0 0 9 126 187.49 Tm -0.01 Tw -[(SEdits Attached Command Menu contains the commonly used commands. Use the Meta-)]TJ -T* -0.0411 Tw -[(M keyboard command to bring up this menu. The menu can be closed, independently of)]TJ -T* -0 Tw -(the SEdit window. The menu looks like:)Tj -ET -q -245.25 0 0 -76.5 183.38 153.94 cm -/Im11 Do -Q -BT -9 0 0 9 126 61.99 Tm -0.0733 Tw -(Menu commands work like the corresponding keyboard commands, except for Find and)Tj -T* -0 Tw -(Substitute.)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/XObject << -/Im10 53 0 R -/Im11 54 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -58 0 obj -<< -/Length 4134 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-12)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0733 Tw -(For Find, SEdit prompts in the menu window, next to the Find button, for the structures)Tj -0 -1.2222 TD -0.0989 Tw -[(to find. Type in the structures then select Find again. The search begins from the caret)]TJ -T* -0 Tw -(position in the SEdit window.)Tj -0 -2 TD -0.0667 Tw -[(Similarly, Substitute prompts next to the Find button for the structures to find, and next)]TJ -0 -1.2222 TD -0.1867 Tw -(to the Substitute button for the structures to replace them with. After both have been)Tj -T* -0.2033 Tw -[(typed in, selecting Substitute replaces all occurrences of the Find structures with the)]TJ -T* -0 Tw -(Substitute structures, within the current selection.)Tj -0 -2 TD -0.1533 Tw -[(To selectively substitute, use Find to find the next potential substitution target. If you)]TJ -0 -1.2222 TD -0 Tw -(want to replace it, select Substitute. Otherwise, select Find again to go on.)Tj -0 -2 TD -0.03 Tw -[(Selecting either Find or Substitute with the right mouse button erases the old structure to)]TJ -0 -1.2222 TD -0 Tw -(find or substitute from the menu, and prompts for a new one.)Tj -/TT6 1 Tf -10 0 0 10 102 396.2 Tm -(SEdit Programmers Interface )Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 393.49 m -606.01 393.49 l -S -BT -/TT8 1 Tf -9 0 0 9 174 379.54 Tm -0.0333 Tw -[(The following sections describe SEdits programmers)-6( interface. All symbols are external)]TJ -T* -0 Tw -(in the package )Tj -/TT10 1 Tf -6.6465 0 TD -(SEDIT)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 102 325.6 Tm -(SEdit Window Region Manager)Tj -ET -102.01 322.89 m -606.01 322.89 l -S -BT -/TT8 1 Tf -9 0 0 9 174 308.94 Tm -0.0456 Tw -(SEdit provides user redefinable functions which control how SEdit chooses the region for)Tj -0 -1.2222 TD -0.0522 Tw -(a new edit window. In the follwin thext there are a few concepts that you will have to be)Tj -T* -0 Tw -(familliar with. They are:)Tj -0 -2 TD -0.0911 Tw -(The region stack. This is a stack of old used regions. The reason to keep these around is)Tj -0 -1.2222 TD -0.0656 Tw -(that the user probably was comfortable with the old position of the window, so when he)Tj -T* -0 Tw -(starts a new SEdit it is a good bet that he will be happy with the old placement.)Tj -0 -2 TD -0.73 Tw -[(SEdit uses the respective value of the symbols )]TJ -/TT10 1 Tf -28.3444 0 TD -0 Tw -(SEDIT::DEFAULT-FONT)Tj -/TT8 1 Tf -11.4019 0 TD -(,)Tj -/TT10 1 Tf --39.7463 -1.2889 TD -(SEDIT::ITALIC-FONT)Tj -/TT8 1 Tf -10.8018 0 TD -(, )Tj -/TT10 1 Tf -1.5689 0 TD -(SEDIT::KEYWORD-FONT)Tj -/TT8 1 Tf -11.4019 0 TD -(, )Tj -/TT10 1 Tf -1.5689 0 TD -(SEDIT::COMMENT-FONT)Tj -/TT8 1 Tf -11.4019 0 TD -1.0689 Tw -(, and)Tj -/TT10 1 Tf --36.7432 -1.2889 TD -0 Tw -(SEDIT::BROKEN-ATOM-FONT)Tj -/TT8 1 Tf -13.8022 0 TD -0.4589 Tw -[( when displaying an expression. The value of these)]TJ --13.8022 -1.2889 TD -0 Tw -(symbols have to be font descriptors.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(GET-WINDOW-REGION)Tj -/TT8 1 Tf -10.2003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(context reason name type)Tj -/TT8 1 Tf -14.4023 0 TD -[(\))-12551.3([Function])]TJ --22.519 -1.8444 TD -0.06 Tw -(This function is called when SEdit wants to know where to place a window it is about to)Tj -0 -1.2222 TD -0.0789 Tw -[(open. This happens whenever the user starts a new SEdit or expands an Sedit icon. The)]TJ -T* -0.1455 Tw -(default behavior is to pop a window region off SEdits stack of regions that have been)Tj -T* -0 Tw -(used in the past. If the stack is empty, SEdit prompts for a new region. )Tj -/TT14 1 Tf -0 -2 TD -(context)Tj -/TT8 1 Tf -4.2007 0 TD -( is the current editor context.)Tj -/TT14 1 Tf --4.2007 -2.0667 TD -(reason)Tj -/TT8 1 Tf -3.6006 0 TD -0.0911 Tw -[( is one of )]TJ -/TT10 1 Tf -4.5651 0 TD -0 Tw -(:CREATE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0911 Tw -[( or )]TJ -/TT10 1 Tf -1.6231 0 TD -0 Tw -(:EXPAND)Tj -/TT8 1 Tf -4.2007 0 TD -0.0911 Tw -[( depending on what action prompted the call to)]TJ -/TT10 1 Tf --18.1902 -1.2222 TD -0 Tw -(GET-WINDOW-REGION)Tj -/TT14 1 Tf -0 -2.0667 TD -(name)Tj -/TT8 1 Tf -2.4004 0 TD -( is the name of the structure to be edited.)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -61 0 obj -<< -/Length 4479 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-13)Tj -/TT14 1 Tf --37 60.6156 TD -(type)Tj -/TT8 1 Tf -2.4004 0 TD -( is the edit type of the calling context.)Tj --5.0671 -2.4 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(SAVE-WINDOW-REGION)Tj -/TT8 1 Tf -10.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(context reason name type region)Tj -/TT8 1 Tf -18.603 0 TD -[(\))-7750.6([Function])]TJ --27.3197 -1.8445 TD -0.1211 Tw -(This function is called whenever SEdit is finished with a region and wants to make the)Tj -0 -1.2222 TD -0.0744 Tw -[(region available for other SEdits. This happens whenever an SEdit window is closed or)]TJ -T* -0 Tw -(shrunk, or when an SEdit Icon is closed. The default behavior is simply to push the region)Tj -T* -(onto SEdits stack of regions. )Tj -/TT14 1 Tf -0 -2 TD -(context)Tj -/TT8 1 Tf -4.2007 0 TD -( is the current editor context.)Tj -/TT14 1 Tf --4.2007 -2.0667 TD -(reason)Tj -/TT8 1 Tf -3.6006 0 TD -0.1778 Tw -[( is one of )]TJ -/TT10 1 Tf -4.9118 0 TD -0 Tw -(:CLOSE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6778 0 TD -(:SHRINK)Tj -/TT8 1 Tf -4.2007 0 TD -0.1778 Tw -(, or )Tj -/TT10 1 Tf -2.0465 0 TD -0 Tw -(:CLOSE-ICON)Tj -/TT8 1 Tf -6.6011 0 TD -0.1778 Tw -[( or depending on what action)]TJ --25.639 -1.2889 TD -0 Tw -(prompted the call to )Tj -/TT10 1 Tf -9.2271 0 TD -(SAVE-WINDOW-REGION)Tj -/TT14 1 Tf --9.2271 -2.0667 TD -(name)Tj -/TT8 1 Tf -2.4004 0 TD -( is the name of the structure to be edited.)Tj -/TT14 1 Tf --2.4004 -2.0667 TD -(type)Tj -/TT8 1 Tf -2.4004 0 TD -( is the edit type of the calling context.)Tj -/TT14 1 Tf --2.4004 -2.0667 TD -(region)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -[( is the region to be pushed onto the region stack. If region is )]TJ -/TT10 1 Tf -26.9522 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[( the old region of)]TJ --32.353 -1.2889 TD -0 Tw -(the SEdit will be pushed top the region stack.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(KEEP-WINDOW-REGION)Tj -/TT8 1 Tf -10.8018 0 TD -27.216 Tw -[( [Variable])]TJ --8.1351 -1.8444 TD -0 Tw -(Default )Tj -/TT10 1 Tf -3.8628 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3067 Tw -[(. This flag determines the behavior of the default SEdit region manager,)]TJ --4.4629 -1.2889 TD -0.1433 Tw -[(explained above, for shrinking and expanding windows. When set to )]TJ -/TT10 1 Tf -32.6299 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1433 Tw -[(, shrinking an)]TJ --33.23 -1.2889 TD -0.11 Tw -(SEdit window will not give up that windows region; the icon will always expand back)Tj -0 -1.2222 TD -0.0811 Tw -[(into the same region. When set to )]TJ -/TT10 1 Tf -15.9101 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0811 Tw -(, the windows region is made available for other)Tj --17.7104 -1.2889 TD -0.0667 Tw -[(SEdits when the window is shrunk. Then when an SEdit icon is expanded, the window)]TJ -0 -1.2222 TD -0 Tw -(will be reshaped to the next available region.)Tj -0 -2 TD -0.1211 Tw -(This variable is only used by the default implementations of the functions get-window-)Tj -0 -1.2222 TD -0.1111 Tw -[(region and save-window-region. If these functions are redefined, this flag is no longer)]TJ -T* -0 Tw -(used.)Tj -/TT6 1 Tf -10 0 0 10 54 206 Tm -(Options)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 203.29 m -558.01 203.29 l -S -570 203.78 0.99 -0.99 re -f -BT -/TT8 1 Tf -9 0 0 9 126 189.34 Tm -(The following parameters can be set as desired.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(*WRAP-PARENS*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.3656 Tw -(This SEdit pretty printer flag determines whether or not trailing close parenthesis)Tj -0 -1.2222 TD -0 Tw -(characters, )Tj -/TT10 1 Tf -5.0343 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0456 Tw -[(, are forced to be visible in the window without scrolling. By default it is set)]TJ --5.6344 -1.2889 TD -0 Tw -(to )Tj -/TT10 1 Tf -1.1276 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[(, meaning that close parens are allowed to "fall off" the right edge of the window. If)]TJ --2.9279 -1.2889 TD -0.1256 Tw -(set to )Tj -/TT10 1 Tf -2.8522 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1256 Tw -(, the pretty printer will start a new line before the structure preceding the close)Tj --3.4523 -1.2889 TD -0 Tw -(parens, so that all the parens will be visible.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(*WRAP-SEARCH*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.2789 Tw -(This flag determines whether or not SEdit find will wrap around to the top of the)Tj -0 -1.2222 TD -0.05 Tw -[(structure when it reaches the end, or vice versa in the case of reverse find. The default is)]TJ -/TT10 1 Tf -T* -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -64 0 obj -<< -/Length 4371 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-14)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT16 1 Tf -9 0 0 9 150 569.54 Tm -(*CLEAR-LINEAR-ON-COMPLETION*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0644 Tw -(This flag determines whether or not SEdit completely re-pretty prints the structure being)Tj -0 -1.2222 TD -0.0722 Tw -[(edited when you complete the edit. The default value is )]TJ -/TT10 1 Tf -25.8862 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0722 Tw -(, meaning that SEdit reuses)Tj --27.6865 -1.2889 TD -0 Tw -(the pretty printing.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(*IGNORE-CHANGES-ON-COMPLETION*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0733 Tw -(Sometimes the structure that you are editing is changed by the system upon completion.)Tj -0 -1.2222 TD -0.0867 Tw -[(Editdates are an example of this behavior. When this flag is )]TJ -/TT10 1 Tf -27.748 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0867 Tw -(, the default, SEdit will)Tj --29.5483 -1.2889 TD -0.1367 Tw -[(redisplay the new structure, capturing the changes. When )]TJ -/TT10 1 Tf -27.3008 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1367 Tw -(, SEdit will ignore the fact)Tj --27.9009 -1.2889 TD -0 Tw -(that changes were made by the system and keep the old structure.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(CONVERT-UPGRADE)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.1933 Tw -[(Default 100. When using Meta-; to convert old-style single- asterisk comments, if the)]TJ -0 -1.2222 TD -0.0022 Tw -(length of the comment exceeds convert-upgrade characters, the comment is converted into)Tj -T* -0.3456 Tw -[(a double semicolon comment. Otherwise, the comment is converted into a single)]TJ -T* -0 Tw -(semicolon comment.)Tj -0 -2 TD -0.0456 Tw -(Old-style double-asterisk comments are always converted into new-style triple-semicolon)Tj -0 -1.2222 TD -0 Tw -(comments.)Tj -/TT6 1 Tf -10 0 0 10 102 316.6 Tm -(Control Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 313.89 m -606.01 313.89 l -S -BT -/TT8 1 Tf -9 0 0 9 150 296.94 Tm -(\()Tj -/TT16 1 Tf -0.3333 0 TD -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -34.7362 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.1944 Tw -[(This function recomputes the SEdit edit environment. Any changes made in the font)]TJ -0 -1.2222 TD -0.1289 Tw -[(profile, or any changes made to SEdits commands are captured by resetting. Close all)]TJ -T* -0 Tw -(SEdit windows before calling this function.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(ADD-COMMAND)Tj -/TT8 1 Tf -6.6003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(key-code form &optional scroll? key-name command-name)Tj --6.5167 -1.0667 TD -(help-string)Tj -/TT8 1 Tf -6.6011 0 TD -[(\))-30469.2([Function])]TJ --4.6011 -1.8444 TD -0.1634 Tw -[(This function allows you to write your own SEdit keyboard commands. You can add)]TJ -0 -1.2222 TD -0.1444 Tw -(commands to new keys, or you can redefine keys that SEdit already uses as command)Tj -T* -0.1222 Tw -[(keys. If you mistakenly redefine an SEdit command, the funtion Reset-Commands will)]TJ -T* -0 Tw -(remove all user-added commands, leaving SEdit with its default set of commands.)Tj -/TT14 1 Tf -0 -2 TD -(key-code)Tj -/TT8 1 Tf -4.8008 0 TD -( can be a character code, or any form acceptible to il:charcode.)Tj -/TT14 1 Tf --4.8008 -2.0667 TD -(form)Tj -/TT8 1 Tf -2.4004 0 TD -0.0956 Tw -[( determines the function to be called when the key command is typed. It can be a)]TJ --2.4004 -1.2889 TD -0.1267 Tw -(symbol naming a function, or a list, whose first element is a symbol naming a function)Tj -0 -1.2222 TD -0.0833 Tw -[(and the rest of the elements are extra arguments to the function. When the command is)]TJ -T* -0.0122 Tw -(invoked, SEdit will apply the function to the edit context \(SEdits main data structure\), the)Tj -T* -0.0001 Tc -0.0043 Tw -(charcode that was typed, and any extra arguments supplied in form. The extra arguments)Tj -T* -0 Tc -0.3178 Tw -(do not get evaluated, but are useful as keywords or flags, depending on how the)Tj -T* -0.3789 Tw -[(command was invoked. The command function must return )]TJ -/TT10 1 Tf -30.5912 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3789 Tw -[( if it handled the)]TJ --31.1913 -1.2889 TD -0.1744 Tw -[(command. If the function returns )]TJ -/TT10 1 Tf -16.2132 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1744 Tw -(, SEdit will ignore the command and insert the)Tj --18.0135 -1.2889 TD -0 Tw -(character typed.)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -67 0 obj -<< -/Length 4152 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-15)Tj -/TT8 1 Tf --37 60.6156 TD -0.3189 Tw -(The first optional argument, )Tj -/TT14 1 Tf -13.9758 0 TD -0 Tw -(scroll?)Tj -/TT8 1 Tf -4.2007 0 TD -0.3189 Tw -(, determines whether or not SEdit scrolls the)Tj --18.1764 -1.2889 TD -0.1844 Tw -[(window after running the command. This argument defaults to )]TJ -/TT10 1 Tf -30.425 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1844 Tw -[(, meaning dont)]TJ --32.2253 -1.2889 TD -0.0433 Tw -[(scroll. If the value of )]TJ -/TT14 1 Tf -9.7746 0 TD -0 Tw -(scroll?)Tj -/TT8 1 Tf -4.2007 0 TD -0.0433 Tw -[( is )]TJ -/TT10 1 Tf -1.3015 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -[(, SEdit will scroll the window to ensure that the caret)]TJ --15.8769 -1.2889 TD -0 Tw -(is visible. )Tj -0 -2 TD -0.0033 Tw -(The rest of the optional arguments are used to add this command to SEdits middle button)Tj -0 -1.2222 TD -0.0489 Tw -[(menu. When the item is selected from the menu, the command function will be called as)]TJ -T* -0 Tw -(described above, with the charcode argument set to )Tj -/TT10 1 Tf -23.0259 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT14 1 Tf --24.8262 -2.0667 TD -(key-name)Tj -/TT8 1 Tf -4.8008 0 TD -0.3311 Tw -[( is a string to identify the key \(combination\) to be typed to invoke the)]TJ --4.8008 -1.2889 TD -0.0022 Tw -(command. For example "M-A" to represent the Meta-A key combination, and "C-M-A" for)Tj -0 -1.2222 TD -0 Tw -(Control-Meta-A.)Tj -0 -2 TD -0.0044 Tw -(command-name is a string to identify the command function, and will appear in the menu)Tj -0 -1.2222 TD -0 Tw -(next to the key-name.)Tj -0 -2 TD -0.0822 Tw -(help-string is a string to be printed in the prompt window when a mouse button is held)Tj -0 -1.2222 TD -0 Tw -(down over the menu item.)Tj -0 -2 TD -0.0867 Tw -(After adding all the commands that you want, you must call Reset-Commands to install)Tj -0 -1.2222 TD -0 Tw -(them.)Tj -0 -2 TD -(For example:)Tj -/TT10 1 Tf -4 -1.9333 TD -(\(ADD-COMMAND "^U" \(MY-CHANGE-CASE T\)\))Tj -0 -2 TD -(\(ADD-COMMAND "^Y" \(MY-CHANGE-CASE NIL\)\))Tj -T* -(\(ADD-COMMAND "1,R" MY-REMOVE-NIL)Tj -0 -1.2222 TD -( "M-R" "REMOVE NIL")Tj -T* -( "REMOVE NIL FROM THE SELECTED STRUCTURE"\)\))Tj -0 -2 TD -(\(RESET-COMMANDS\))Tj -/TT8 1 Tf --4 -2.0667 TD -(will add three commands.)Tj -0 -2 TD -(Suppose )Tj -/TT10 1 Tf -4.0844 0 TD -(MY-CHANGE-CASE)Tj -/TT8 1 Tf -8.4014 0 TD -0.0556 Tw -[( takes the arguments )]TJ -/TT18 1 Tf -9.6426 0 TD -0 Tw -(context)Tj -/TT8 1 Tf -2.9624 0 TD -(, )Tj -/TT18 1 Tf -0.5556 0 TD -(charcode)Tj -/TT8 1 Tf -3.4805 0 TD -0.0556 Tw -(, and )Tj -/TT18 1 Tf -2.554 0 TD -0 Tw -(upper-case?)Tj -/TT8 1 Tf -4.7969 0 TD -0.0556 Tw -(. )Tj -/TT18 1 Tf -0.8611 0 TD -0 Tw -(upper-)Tj --37.3388 -1.2889 TD -(case?)Tj -/TT8 1 Tf -2.1294 0 TD -0.1311 Tw -[( will be set to )]TJ -/TT10 1 Tf -6.7459 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1311 Tw -[( when )]TJ -/TT10 1 Tf -3.2393 0 TD -0 Tw -(MY-CHANGE-CASE)Tj -/TT8 1 Tf -8.4014 0 TD -0.1311 Tw -[( is called from Control-U, and )]TJ -/TT10 1 Tf -14.2227 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1311 Tw -[( when)]TJ --37.139 -1.2889 TD -0.19 Tw -(called from Control-Y. )Tj -/TT10 1 Tf -11.1775 0 TD -0 Tw -(MY-REMOVE-NIL)Tj -/TT8 1 Tf -7.8013 0 TD -0.19 Tw -[( will be called with only )]TJ -/TT18 1 Tf -12.0033 0 TD -0 Tw -(context)Tj -/TT8 1 Tf -2.9624 0 TD -0.19 Tw -[( and )]TJ -/TT18 1 Tf -2.5729 0 TD -0 Tw -(charcode)Tj -/TT8 1 Tf --36.5173 -1.2889 TD -(arguments when you type Meta-R.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(RESET-COMMANDS)Tj -/TT8 1 Tf -8.4003 0 TD -[(\))-29003.7([Function])]TJ --6.0667 -1.8444 TD -0.1111 Tw -[(This function installs all commands added by add-command. SEdits which are open at)]TJ -0 -1.2222 TD -0.16 Tw -(the time of the reset-commands will not see the new commands; only new SEdits will)Tj -T* -0 Tw -(have the new commands available.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(DEFAULT-COMMANDS)Tj -/TT8 1 Tf -9.6003 0 TD -[(\))-27803.7([Function])]TJ --7.2667 -1.8444 TD -0.19 Tw -[(This function removes all commands added by add-command, leaving SEdit with its)]TJ -0 -1.2222 TD -0.0944 Tw -[(default set of commands. As in reset-commands, open SEdits will not be changed; only)]TJ -T* -0 Tw -(new SEdits will have the user commands removed.)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 37 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -71 0 obj -<< -/Length 6005 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-16)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT16 1 Tf -0.333 0 TD -(GET-PROMPT-WINDOW)Tj -/TT8 1 Tf -10.2003 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(context)Tj -/TT8 1 Tf -2.9624 0 TD -[(\))-23991.3([Function])]TJ --11.0791 -1.8444 TD -(Returns the attached prompt window for a particular SEdit.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(GET-SELECTION)Tj -/TT8 1 Tf -7.8003 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(context)Tj -/TT8 1 Tf -2.9624 0 TD -[(\))-26391.3([Function])]TJ --8.6791 -1.8444 TD -0.0833 Tw -(This function returns two values: the selected structure, and the type of selection, one of)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1 Tw -(, or)Tj -/TT10 1 Tf -1.5409 0 TD -0.2389 Tw -[( :SUB-LIST)]TJ -/TT8 1 Tf -6.2399 0 TD -0.1 Tw -[(. The selection type )]TJ -/TT10 1 Tf -9.498 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1 Tw -[( means there is not a valid selection \(in)]TJ --22.0795 -1.2889 TD -0.1089 Tw -(this case the structure is meaningless\). )Tj -/TT10 1 Tf -18.1528 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1089 Tw -[( means the selection is one complete structure.)]TJ -/TT10 1 Tf --18.7529 -1.2889 TD -0 Tw -(:SUB-LIST)Tj -/TT8 1 Tf -5.4009 0 TD -0.1411 Tw -[( means a series of elements in a list is selected, in which case the structure)]TJ --5.4009 -1.2889 TD -0 Tw -(returned is a list of the elements selected.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(REPLACE-SELECTION)Tj -/TT8 1 Tf -10.2003 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(context structure selection-type)Tj -/TT8 1 Tf -12.7231 0 TD -[( \))-13980.5([Function])]TJ --20.8398 -1.8444 TD -0.1033 Tw -(This function replaces the current selection with a new structure, or multiple structures,)Tj -0 -1.2222 TD -0.2489 Tw -[(by deleting the selection and then inserting the new structure\(s\). The selection-type)]TJ -T* -0.0411 Tw -(argument must be one of )Tj -/TT10 1 Tf -11.5337 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( or )]TJ -/TT10 1 Tf -1.5231 0 TD -0 Tw -(:SUB-LIST)Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -[(. If )]TJ -/TT10 1 Tf -1.7933 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -(, the structure is inserted as one complete)Tj --21.4512 -1.2889 TD -0.1289 Tw -[(structure. If )]TJ -/TT10 1 Tf -6.0517 0 TD -0 Tw -(:SUB-LIST)Tj -/TT8 1 Tf -5.4009 0 TD -0.1289 Tw -(, the structure is treated as a list of elements, each of which is)Tj --11.4526 -1.2889 TD -0 Tw -(insertd.)Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(*EDIT-FN*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0933 Tw -(This function is called with the selected structure and the edit specified as arguments to)Tj -0 -1.2222 TD -0.0167 Tw -[(Sedit options as its arguments from the Edit \(M-O\) command. It should start the editor as)]TJ -T* -0 Tw -(appropriate, or generate an error if the selection is not editable. )Tj -/TT16 1 Tf --2.6667 -2.3333 TD -(*COMPILE-FN*)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.5578 Tw -(This function is called with the arguments )Tj -/TT14 1 Tf -22.7702 0 TD -0 Tw -(name)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT14 1 Tf -1.0578 0 TD -(type)Tj -/TT8 1 Tf -2.4004 0 TD -0.5578 Tw -(, and )Tj -/TT14 1 Tf -3.5584 0 TD -0 Tw -(body)Tj -/TT8 1 Tf -2.4004 0 TD -0.5578 Tw -(, from the)Tj --34.5875 -1.2889 TD -0.1211 Tw -[(compile/completion commands. It should compile the definition, )]TJ -/TT14 1 Tf -30.444 0 TD -0 Tw -(body)Tj -/TT8 1 Tf -2.4004 0 TD -0.1211 Tw -(, and install the)Tj --32.8444 -1.2889 TD -0 Tw -(code as appropriate.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT16 1 Tf -0.3333 0 TD -(SEDIT)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(structure props options)Tj -/TT8 1 Tf -13.8023 0 TD -[(\))-20350.9([Function])]TJ --14.7194 -1.8444 TD -0.0678 Tw -(This function provides a means of starting SEdit directly. )Tj -/TT14 1 Tf -26.3599 0 TD -0 Tw -(structure)Tj -/TT8 1 Tf -5.4009 0 TD -0.0678 Tw -[( is the structure to)]TJ --31.7608 -1.2889 TD -0 Tw -(be edited.)Tj -/TT14 1 Tf -0 -2 TD -(props)Tj -/TT8 1 Tf -3.0005 0 TD -( is a property list, which may specify the following properties:)Tj -/TT10 1 Tf --3.0005 -2.0667 TD -(:NAME)Tj -/TT8 1 Tf -3.0005 0 TD -( - the name of the object being edited)Tj -/TT10 1 Tf --3.0005 -2.0667 TD -(:TYPE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -[( - the file manager type of the object being edited. If NIL, SEdit will not call the file)]TJ --3.0005 -1.2889 TD -0.0211 Tw -[(manager when it tries to refetch the definition it is editing. Instead, it will just continue to)]TJ -0 -1.2222 TD -0 Tw -(use the structure that it has.)Tj -/TT10 1 Tf -0 -2 TD -(:COMPLETION-FN)Tj -/TT8 1 Tf -8.4014 0 TD -0.1333 Tw -[( - the function to be called when the edit session is completed. This)]TJ --8.4014 -1.2889 TD -0.0022 Tw -(function is called with the )Tj -/TT14 1 Tf -11.7191 0 TD -0 Tw -(context)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT14 1 Tf -0.5022 0 TD -(structure)Tj -/TT8 1 Tf -5.4009 0 TD -0.0022 Tw -(, and )Tj -/TT14 1 Tf -2.4473 0 TD -0 Tw -(changed?)Tj -/TT8 1 Tf -4.8008 0 TD -0.0002 Tc -0.002 Tw -( arguments. )Tj -/TT14 1 Tf -5.7547 0 TD -0 Tc -0 Tw -(context)Tj -/TT8 1 Tf -4.2007 0 TD -0.0007 Tc -0.0015 Tw -( is)Tj --39.0264 -1.2889 TD -0 Tc -0.33 Tw -(SEdits main data structure. )Tj -/TT14 1 Tf -14.1256 0 TD -0 Tw -(structure)Tj -/TT8 1 Tf -5.4009 0 TD -0.33 Tw -[( is the structure being edited. )]TJ -/TT14 1 Tf -15.6655 0 TD -0 Tw -(changed?)Tj -/TT8 1 Tf --35.1919 -1.2889 TD -0.0311 Tw -(specifies if any changes have been made, and is one of )Tj -/TT10 1 Tf -24.5224 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5311 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -(, or )Tj -/TT10 1 Tf -1.7531 0 TD -0 Tw -(:ABORT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -(, where )Tj -/TT10 1 Tf -3.5813 0 TD -0 Tw -(:ABORT)Tj -/TT8 1 Tf --36.3889 -1.2889 TD -0.0311 Tw -[(means the user is aborting the edit and throwing away any changes made. If the value of)]TJ -0 -1.2222 TD -0.2167 Tw -(this property is a list, the first element is treated as the function, and the rest of the)Tj -T* -0 Tw -(elements are extra arguments for the function.)Tj -ET -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT16 37 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -74 0 obj -<< -/Length 4100 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-17)Tj -/TT10 1 Tf --37 60.6156 TD -(:ROOT-CHANGED-FN)Tj -/TT8 1 Tf -9.6016 0 TD -0.0622 Tw -[( - the function to be called when the entire structure being edited is)]TJ --9.6016 -1.2889 TD -0.2367 Tw -[(replaced with a new structure. This function is called with the new structure as its)]TJ -0 -1.2222 TD -0.0256 Tw -[(argument. If the value of this property is a list, the first element is treated as the function,)]TJ -T* -0.0622 Tw -(and the rest of the elements are extra arguments that the function is applied to following)Tj -T* -0 Tw -(the structure argument. )Tj -/TT14 1 Tf -0 -2 TD -(options)Tj -/TT8 1 Tf -4.2007 0 TD -( is one or a list of any number of the followng keywords:)Tj -/TT10 1 Tf --4.2007 -2.0667 TD -(:CLOSE-ON-COMPLETION)Tj -/TT8 1 Tf -12.002 0 TD -0.2511 Tw -[( - This option specifies that SEdit cannot remain active for)]TJ --12.002 -1.2889 TD -0.1089 Tw -[(multiple completions. That is, the SEdit window cannot be shrunk, and the completion)]TJ -0 -1.2222 TD -0.0878 Tw -(commands that normally leave the window open will in this case close the window and)Tj -T* -0 Tw -(terminate the edit.)Tj -/TT10 1 Tf -0 -2 TD -(:COMPILE-ON-COMPLETION)Tj -/TT8 1 Tf -13.2021 0 TD -0.62 Tw -[( - This option specifies that SEdit should call the)]TJ -/TT10 1 Tf --13.2021 -1.2889 TD -0 Tw -(*COMPILE-FN*)Tj -/TT8 1 Tf -7.2012 0 TD -0.0244 Tw -[( to compile the definition being edited upon completion, regardless of the)]TJ --7.2012 -1.2889 TD -0 Tw -(completion command used.)Tj -/TT6 1 Tf -10 0 0 10 54 371.2 Tm -(The TTY Editor )Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 368.49 m -510.01 368.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 346.54 Tm -0.0167 Tw -[(This editor the main code editor in pre-window-system versions of Interlisp. For that task, it has been)]TJ -0 -1.2222 TD -0 Tw -(replaced by SEdit.)Tj -0 -2.8889 TD -0.0789 Tw -(However, the TTY Editor provides an excellent language for manipulating list structure and making)Tj -0 -1.2222 TD -0.1989 Tw -[(large-scale code changes. For example, several tools for cleaning up code are written using TTY)]TJ -T* -0 Tw -(Editor calls to do the actual work.)Tj -/TT6 1 Tf -10 0 0 10 54 245.2 Tm -(TTY Editor Local Attention-Changing Commands )Tj -ET -54.01 242.49 m -510.01 242.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 220.54 Tm -0.2344 Tw -(This section describes commands that change the current expression \(i.e., change the edit chain\))Tj -T* -0.1422 Tw -[(thereby "shifting the editors attention." These commands depend only on the )]TJ -/TT18 1 Tf -36.4518 0 TD -0 Tw -(structure)Tj -/TT8 1 Tf -3.7422 0 TD -0.1422 Tw -[( of the edit)]TJ --40.194 -1.2222 TD -0.26 Tw -(chain, as compared to the search commands \(presented later\), which search the contents of the)Tj -T* -0 Tw -(structure.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(UP)Tj -/TT4 1 Tf -10 0 0 10 112.8 165.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 165.2 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -2.7333 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0433 Tw -[( modifies the edit chain so that the old current expression \(i.e., the one at the time )]TJ -/TT10 1 Tf -36.8768 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0433 Tw -[( was)]TJ --39.2772 -1.2889 TD -0.0278 Tw -[(called\) is the first element in the new current expression. If the current expression is the first)]TJ -0 -1.2222 TD -0.3533 Tw -(element in the next higher expression )Tj -/TT10 1 Tf -18.9247 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.3533 Tw -[( simply does a )]TJ -/TT10 1 Tf -8.0188 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.3533 Tw -[(. Otherwise )]TJ -/TT10 1 Tf -6.6562 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.3533 Tw -[( adds the)]TJ --36.6002 -1.2889 TD -0 Tw -(corresponding tail to the edit chain.)Tj -0 -2.8889 TD -0.0178 Tw -(If a )Tj -/TT10 1 Tf -1.7055 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( command would cause the editor to type )]TJ -/TT10 1 Tf -18.7946 0 TD -0 Tw -(...)Tj -/TT8 1 Tf -1.8003 0 TD -0.0178 Tw -[( before typing the current expression, ie.,)]TJ --22.9004 -1.2889 TD -0 Tw -(the current expression is a tail of the next higher expression, )Tj -/TT10 1 Tf -26.7627 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -( has no effect.)Tj --27.9629 -2.9556 TD -(For example:)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -77 0 obj -<< -/Length 5934 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-18)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 246 570.14 Tm -(*PP)Tj -0 -1.2222 TD -(\(COND \(\(NULL X\) \(RETURN Y\)\)\))Tj -0 -1 TD -(*1 P)Tj -T* -(COND)Tj -T* -(*UP P)Tj -T* -(\(COND \(& &\)\))Tj -T* -(*-1 P)Tj -T* -(\(\(NULL X\) \(RETURN Y\)\))Tj -T* -(*UP P)Tj -T* -(... \(\(NULL X\) \(RETURN Y\)\))Tj -T* -(*UP P)Tj -T* -(... \(\(NULL X\) \(RETURN Y\)\)\))Tj -T* -(*F NULL P)Tj -T* -(\(NULL X\))Tj -T* -(*UP P)Tj -T* -(\(\(NULL X\) \(RETURN Y\)\))Tj -T* -(*UP P)Tj -T* -(... \(\(NULL X\) \(RETURN Y\)\)\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.1244 Tw -(The execution of )Tj -/TT10 1 Tf -7.9422 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1244 Tw -[( is straightforward, except in those cases where the current expression)]TJ --9.1424 -1.2889 TD -0.0344 Tw -(appears more than once in the next higher expression. For example, if the current expression)Tj -0 -1.2222 TD -0 Tw -(is )Tj -/TT10 1 Tf -1.0948 0 TD -0.3122 Tw -(\(A NIL B NIL C NIL\))Tj -/TT8 1 Tf -12.963 0 TD -0.13 Tw -[( and you perform )]TJ -/TT10 1 Tf -8.5498 0 TD -0 Tw -(4)Tj -/TT8 1 Tf -0.6001 0 TD -0.13 Tw -[( followed by )]TJ -/TT10 1 Tf -6.18 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.13 Tw -(, the current expression)Tj --30.5879 -1.2889 TD -0.0711 Tw -(should then be )Tj -/TT10 1 Tf -7.0214 0 TD -0.1711 Tw -(... NIL C NIL\))Tj -/TT8 1 Tf -8.9147 0 TD -0.0711 Tw -(. )Tj -/TT10 1 Tf -0.8922 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0711 Tw -[( can determine which tail is the correct one because)]TJ --18.0286 -1.2889 TD -0.0567 Tw -(the commands that descend save the last tail on an internal editor variable, )Tj -/TT10 1 Tf -34.0423 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0567 Tw -[(. Thus)]TJ --38.243 -1.2889 TD -0.1333 Tw -(after the )Tj -/TT10 1 Tf -4.1871 0 TD -0 Tw -(4)Tj -/TT8 1 Tf -0.6001 0 TD -0.1333 Tw -[( command is executed, )]TJ -/TT10 1 Tf -10.8834 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.1333 Tw -[( is )]TJ -/TT10 1 Tf -1.4815 0 TD -0.3189 Tw -(\(NIL C NIL\))Tj -/TT8 1 Tf -7.2389 0 TD -0.1333 Tw -[(. When )]TJ -/TT10 1 Tf -4.0431 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1333 Tw -[( is called, it first)]TJ --33.8349 -1.2889 TD -0.1711 Tw -[(determines if the current expression is a tail of the next higher expression. If it is, )]TJ -/TT10 1 Tf -38.9963 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1711 Tw -[( is)]TJ --40.1965 -1.2889 TD -0.48 Tw -[(finished. Otherwise, )]TJ -/TT10 1 Tf -10.879 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.48 Tw -[( computes )]TJ -/TT10 1 Tf -5.7657 0 TD -0 Tw -(\(MEMB)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.73 0 TD -(CURRENT-EXPRESSION)Tj -/TT10 1 Tf -10.8018 0 TD -( )Tj -/TT14 1 Tf -1.7534 0 TD -(NEXT-HIGHER-)Tj --34.1305 -1.2889 TD -(EXPRESSION)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[( to obtain a tail beginning with the current expression. The current expression)]TJ --6.6011 -1.2889 TD -0 Tw -(should )Tj -/TT18 1 Tf -3.36 0 TD -(always)Tj -/TT8 1 Tf -2.7769 0 TD -0.0533 Tw -[( be either a tail or an element of the next higher expression. If it is neither, for)]TJ --6.1368 -1.2222 TD -0.1444 Tw -(example yopu have directly \(and incorrectly\) manipulated the edit chain, )Tj -/TT10 1 Tf -34.0367 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1444 Tw -[( generates an)]TJ --35.2369 -1.2889 TD -0.05 Tw -[(error. If there are no other instances of the current expression in the next higher expression,)]TJ -0 -1.2222 TD -0 Tw -(this tail is the correct one. Otherwise )Tj -/TT10 1 Tf -16.6152 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -( uses )Tj -/TT10 1 Tf -2.4297 0 TD -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -( to select the correct tail.)Tj --24.4458 -2.9556 TD -0.2344 Tw -(Occasionally you can get the edit chain into a state where )Tj -/TT10 1 Tf -28.1385 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.2344 Tw -[( cannot resolve the)]TJ --32.3391 -1.2889 TD -0.0767 Tw -(ambiguity, for example if there were two non-atomic structures in the same expression that)Tj -0 -1.2222 TD -0 Tw -(were )Tj -/TT10 1 Tf -2.5448 0 TD -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.1078 Tw -(, and you descended more than one level into one of them and then tried to come)Tj --3.745 -1.2889 TD -0.0033 Tw -(back out using )Tj -/TT10 1 Tf -6.7444 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0002 Tc -0.0031 Tw -(. In this case, )Tj -/TT10 1 Tf -6.1553 0 TD -0 Tc -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0004 Tc -0.0029 Tw -( prints )Tj -/TT10 1 Tf -3.1258 0 TD -0 Tc -0.0078 Tw -(LOCATION UNCERTAIN)Tj -/TT8 1 Tf -10.8095 0 TD -0.0002 Tc -0.0031 Tw -( and generates an error. Of)Tj --29.2355 -1.2889 TD -0 Tc -0.1144 Tw -(course, we could have solved this problem completely in our implementation by saving at)Tj -0 -1.2222 TD -0.04 Tw -(each descent )Tj -/TT18 1 Tf -5.9296 0 TD -0 Tw -(both)Tj -/TT8 1 Tf -1.7397 0 TD -0.04 Tw -[( elements and tails. However, this would be a costly solution to a situation)]TJ --7.6694 -1.2222 TD -0.0289 Tw -[(that arises infrequently, and when it does, has no detrimental effects. The )]TJ -/TT10 1 Tf -33.2354 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0289 Tw -[( solution)]TJ --37.4361 -1.2889 TD -0 Tw -(is cheap and resolves almost all of the ambiguities.)Tj -/TT14 1 Tf --1.3333 -2.4822 TD -(N)Tj -/TT6 1 Tf -10 0 0 10 155.4009 124.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 158.1792 124.8 Tm -(\()Tj -/TT14 1 Tf -0.333 0 TD -(N> = 1)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 196.5786 124.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 124.8 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0289 Tw -(Adds the )Tj -/TT14 1 Tf -4.3683 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -(th element of the current expression to the front of the edit chain, thereby making)Tj --4.9684 -1.2889 TD -0.1478 Tw -[(it be the new current expression. Sets )]TJ -/TT10 1 Tf -18.0787 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.1478 Tw -[( for use by )]TJ -/TT10 1 Tf -5.4803 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1478 Tw -[(. Generates an error if the)]TJ --28.9599 -1.2889 TD -0 Tw -(current expression is not a list that contains at least )Tj -/TT14 1 Tf -22.7373 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( elements.)Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -80 0 obj -<< -/Length 4283 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-19)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT6 1 Tf -10 0 0 10 112.8017 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 115.5801 568.2 Tm -(\()Tj -/TT14 1 Tf -0.333 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(> = 1)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT10 1 Tf -0.333 0 TD -( )Tj -/TT4 1 Tf -10 0 0 10 159.3804 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 568.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1022 Tw -(Adds the )Tj -/TT14 1 Tf -4.515 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -(th element from the end of the current expression to the front of the edit chain,)Tj --5.1151 -1.2889 TD -0.0233 Tw -[(thereby making it be the new current expression. Sets )]TJ -/TT10 1 Tf -24.3686 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0233 Tw -[( for use by )]TJ -/TT10 1 Tf -4.9825 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0233 Tw -[(. Generates an)]TJ --34.752 -1.2889 TD -0 Tw -(error if the current expression is not a list that contains at least )Tj -/TT14 1 Tf -27.7085 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( elements.)Tj -/TT10 1 Tf --29.6419 -2.5489 TD -(0)Tj -/TT4 1 Tf -10 0 0 10 107.4 497.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 497.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0278 Tw -(Sets the edit chain to )Tj -/TT10 1 Tf -9.508 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -[( of the edit chain, thereby making the next higher expression be the)]TJ --11.3083 -1.2889 TD -0.0622 Tw -[(new current expression. Generates an error if there is no higher expression, i.e., )]TJ -/TT10 1 Tf -36.3164 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( of edit)]TJ --38.1167 -1.2889 TD -0 Tw -(chain is )Tj -/TT10 1 Tf -3.6138 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --5.4141 -2.9556 TD -0.1433 Tw -(Note that )Tj -/TT10 1 Tf -4.7032 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.1433 Tw -[( usually corresponds to going back to the next higher left parenthesis, but not)]TJ --5.3033 -1.2889 TD -0 Tw -(always. For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1 TD -(\(A B C D E F B\))Tj -T* -(*3 UP P)Tj -T* -(... C D E F G\))Tj -T* -(*3 UP P)Tj -T* -(... E F G\))Tj -T* -(*0 P)Tj -T* -(... C D E F G\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.0322 Tw -(If the intention is to go back to the next higher left parenthesis, regardless of any intervening)Tj -0 -1.2222 TD -0 Tw -(tails, the command )Tj -/TT10 1 Tf -8.6675 0 TD -(!0)Tj -/TT8 1 Tf -1.2002 0 TD -( can be used.)Tj -/TT10 1 Tf --11.201 -2.5489 TD -(!0)Tj -/TT4 1 Tf -10 0 0 10 112.8 272.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 272.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0189 Tw -(Does repeated )Tj -/TT10 1 Tf -6.6306 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -(s until it reaches a point where the current expression is )Tj -/TT18 1 Tf -25.3508 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0189 Tw -[( a tail of the next)]TJ --33.9145 -1.2889 TD -0 Tw -(higher expression, i.e., always goes back to the next higher left parenthesis.)Tj -/TT19 1 Tf -10 0 0 10 102 213.98 Tm -<0042>Tj -/TT4 1 Tf -0.603 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 213.98 Tm -([Editor Command])Tj --32.9222 -2.6667 TD -0.17 Tw -(Sets the edit chain to )Tj -/TT10 1 Tf -10.2191 0 TD -0 Tw -(LAST)Tj -/TT8 1 Tf -2.4004 0 TD -0.17 Tw -[( of edit chain, thereby making the top level expression be the)]TJ --12.6195 -1.2889 TD -0 Tw -(current expression. Never generates an error.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(NX)Tj -/TT4 1 Tf -10 0 0 10 112.8 156.04 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 156.04 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1156 Tw -(Effectively does an )Tj -/TT10 1 Tf -8.9463 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1156 Tw -[( followed by a )]TJ -/TT10 1 Tf -7.0023 0 TD -0 Tw -(2)Tj -/TT8 1 Tf -0.6001 0 TD -0.1156 Tw -(, thereby making the current expression be the next)Tj --17.7488 -1.2889 TD -0.0867 Tw -[(expression. Generates an error if the current expression is the last one in a list. \(However,)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -( described below will handle this case.\))Tj -/TT10 1 Tf --3.1336 -2.5489 TD -(BK)Tj -/TT4 1 Tf -10 0 0 10 112.8 85.9 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 85.9 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.2489 Tw -(Makes the current expression be the previous expression in the next higher expression.)Tj -0 -1.2222 TD -0 Tw -(Generates an error if the current expression is the first expression in a list.)Tj -ET -endstream -endobj -81 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -84 0 obj -<< -/Length 3514 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-20)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -(For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*PP)Tj -0 -1 TD -(\(COND \(\(NULL X\) \(RETURN Y\)\)\))Tj -T* -(*F RETURN P)Tj -T* -(\(RETURN Y\))Tj -T* -(*BK P)Tj -T* -(\(NULL X\))Tj -/TT8 1 Tf --13.3333 -2.7333 TD -(Both )Tj -/TT10 1 Tf -2.3638 0 TD -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.0489 Tw -[( and )]TJ -/TT10 1 Tf -2.2906 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0489 Tw -[( operate by performing a)]TJ -/TT10 1 Tf -11.1921 0 TD -0.1167 Tw -[( !0)]TJ -/TT8 1 Tf -1.917 0 TD -0.0489 Tw -[( followed by an appropriate number, i.e., there wont be)]TJ --20.164 -1.2889 TD -0.0378 Tw -(an extra tail above the new current expression, as there would be if )Tj -/TT10 1 Tf -30.31 0 TD -0 Tw -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.0378 Tw -[( operated by performing an )]TJ -/TT10 1 Tf -12.6283 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf --44.1385 -1.2889 TD -(followed by a )Tj -/TT10 1 Tf -6.29 0 TD -(2)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --4.2235 -2.5489 TD --0.0001 Tc -(\(NX )Tj -/TT14 1 Tf -2.4001 0 TD -0 Tc -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 187.8035 436.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 436.4 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(\()Tj -/TT14 1 Tf -0.333 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.3378 Tw -[( >= 1)]TJ -/TT8 1 Tf -3.676 0 TD -0.1411 Tw -[(\) Equivalent to )]TJ -/TT14 1 Tf -7.5776 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3911 0 TD -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.1411 Tw -[( commands, except if an error occurs, the edit chain is not)]TJ --14.3782 -1.2889 TD -0 Tw -(changed.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD --0.0001 Tc -(\(BK )Tj -/TT14 1 Tf -2.4001 0 TD -0 Tc -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 187.8035 377.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 377.86 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(\()Tj -/TT14 1 Tf -0.333 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.3378 Tw -[( >= 1)]TJ -/TT8 1 Tf -3.676 0 TD -0.1411 Tw -[(\) Equivalent to )]TJ -/TT14 1 Tf -7.5776 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3911 0 TD -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.1411 Tw -[( commands, except if an error occurs, the edit chain is not)]TJ --14.3782 -1.2889 TD -0 Tw -(changed.)Tj -4 -2 TD -(Note: )Tj -/TT10 1 Tf -2.9321 0 TD -(\(NX)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is equivalent to )Tj -/TT10 1 Tf -7.2632 0 TD -(\(BK )Tj -/TT14 1 Tf -2.4004 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, and vice versa.)Tj -/TT10 1 Tf --22.9798 -2.5489 TD -(!NX)Tj -/TT4 1 Tf -10 0 0 10 166.2 300.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 300.72 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0633 Tw -(Makes the current expression be the next expression at a higher level, i.e., goes through any)Tj -0 -1.2222 TD -0 Tw -(number of right parentheses to get to the next expression. For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*PP)Tj -0 -1 TD -(\(PROG \(\(L L\))Tj -T* -( \(UF L\)\))Tj -T* -( LP \(COND)Tj -T* -( \(\(NULL \(SETQ L \(CDR L\)\)\))Tj -T* -( \(ERROR!\)\))Tj -T* -( \([NULL \(CDR \(FMEMB \(CAR L\) \(CADR L])Tj -T* -( \(GO LP\)\)\))Tj -T* -( \(EDITCOM \(QUOTE NX\)\))Tj -T* -( \(SETQ UNFIND UF\))Tj -T* -( \(RETURN L\)\))Tj -T* -(*F CDR P)Tj -T* -(\(CDR L\))Tj -T* -(*NX)Tj -0 -2 TD -(NX ?)Tj -0 -1 TD -(*!NX P)Tj -T* -(\(ERROR!\))Tj -T* -(*!NX P)Tj -T* -(\(\(NULL &\) \(GO LP\)\))Tj -T* -(*!NX P)Tj -T* -(\(EDITCOM \(QUOTE NX\)\))Tj -T* -(*)Tj -ET -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -87 0 obj -<< -/Length 4794 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-21)Tj -/TT10 1 Tf --38.3333 60.6156 TD -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0378 Tw -[( operates by doing )]TJ -/TT10 1 Tf -8.5964 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0378 Tw -(s until it reaches a stage where the current expression is )Tj -/TT18 1 Tf -25.4976 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0378 Tw -[( the last)]TJ --37.8274 -1.2889 TD -0.01 Tw -(expression in the next higher expression, and then does a )Tj -/TT10 1 Tf -25.5941 0 TD -0 Tw -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.01 Tw -[(. Thus )]TJ -/TT10 1 Tf -3.2517 0 TD -0 Tw -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[( always goes through)]TJ --31.8463 -1.2889 TD -0.1789 Tw -(at least one unmatched right parenthesis, and the new current expression is always on a)Tj -0 -1.2222 TD -0.1811 Tw -(different level, i.e., )Tj -/TT10 1 Tf -8.9974 0 TD -0 Tw -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -0.1811 Tw -[( and )]TJ -/TT10 1 Tf -2.5551 0 TD -0 Tw -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.1811 Tw -[( always produce different results. For example using the)]TJ --14.553 -1.2889 TD -0 Tw -(previous current expression:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*F CAR P)Tj -0 -1 TD -(\(CAR L\))Tj -T* -(*!NX P)Tj -T* -(\(GO LP\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -(P P)Tj --1.2061 -1 TD -(\(CAR L\))Tj -T* -(*NX P)Tj -T* -(\(CADR L\))Tj -T* -(*)Tj --10.6667 -2.3267 TD -(\(NTH)Tj -/TT6 1 Tf -10 0 0 10 123.6 412.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.3783 412.8 Tm -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 137.1801 412.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 412.8 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -2.7333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.0922 Tw -[( ~= 0\))]TJ -/TT8 1 Tf -3.785 0 TD -0.0389 Tw -[( Equivalent to )]TJ -/TT14 1 Tf -6.8357 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0389 Tw -[( followed by )]TJ -/TT10 1 Tf -5.9067 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0389 Tw -(, i.e., causes the list starting with the )Tj -/TT14 1 Tf -16.4947 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0389 Tw -(th element)Tj --36.6228 -1.2889 TD -0.1378 Tw -(of the current expression \(or )Tj -/TT14 1 Tf -13.4399 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1378 Tw -(th from the end if )Tj -/TT14 1 Tf -8.6869 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1378 Tw -[( < 0\) to become the current expression.)]TJ --23.327 -1.2889 TD -0 Tw -(Causes an error if current expression does not have at least )Tj -/TT14 1 Tf -26.2515 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( elements.)Tj -/TT10 1 Tf --26.8516 -2.9556 TD -(\(NTH 1\))Tj -/TT8 1 Tf -4.2007 0 TD -( is a no-op, as is )Tj -/TT10 1 Tf -7.2114 0 TD -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(-)Tj -/TT14 1 Tf -0.6001 0 TD -(L)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( where )Tj -/TT14 1 Tf -3.269 0 TD -(L)Tj -/TT8 1 Tf -0.6001 0 TD -( is the length of the current expression.)Tj -/TT10 1 Tf --21.0653 -2.5489 TD -(line-feed)Tj -/TT4 1 Tf -10 0 0 10 150.6 315.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 315.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.2989 Tw -(Moves to the "next" expression and prints it, i.e. performs a )Tj -/TT10 1 Tf -29.6437 0 TD -0 Tw -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.2989 Tw -[( if possible, otherwise)]TJ --30.8439 -1.2889 TD -0 Tw -(performs a )Tj -/TT10 1 Tf -5.0557 0 TD -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -(. \(The latter case is indcated by first printing ")Tj -/TT10 1 Tf -20.3535 0 TD -(>)Tj -/TT8 1 Tf -0.6001 0 TD -(".\))Tj -/TT10 1 Tf --29.1429 -2.5489 TD -(Control-X)Tj -/TT4 1 Tf -10 0 0 10 150.6 256.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 256.32 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1589 Tw -(Control-X moves to the "previous" thing and then prints it, i.e. performs a )Tj -/TT10 1 Tf -34.8239 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.1589 Tw -[( if possible,)]TJ --36.0241 -1.2889 TD -0 Tw -(otherwise a )Tj -/TT10 1 Tf -5.356 0 TD -(!0)Tj -/TT8 1 Tf -1.2002 0 TD -( followed by a )Tj -/TT10 1 Tf -6.54 0 TD -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --15.6297 -2.5489 TD -(Control-Z)Tj -/TT4 1 Tf -10 0 0 10 150.6 197.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 197.18 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Control-Z moves to the last expression and prints it, i.e. does )Tj -/TT10 1 Tf -27.0874 0 TD -(-1)Tj -/TT8 1 Tf -1.2002 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(P)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --38.6777 -2.9556 TD -0.0889 Tw -(Line-feed, Control-X, and Control-Z are implemented as )Tj -/TT18 1 Tf -25.7555 0 TD -0 Tw -(immediate)Tj -/TT8 1 Tf -4.1665 0 TD -0.0889 Tw -[( read macros; as soon as they are)]TJ --29.922 -1.2222 TD -0.0789 Tw -[(read, they abort the current printout. They thus provide a convenient way of moving around in the)]TJ -T* -0 Tw -(editor. To facilitate using different control characters for those macros, the function )Tj -/TT10 1 Tf -37.1582 0 TD -(SETTERMCHARS)Tj -/TT8 1 Tf -7.2012 0 TD -( is)Tj --44.3594 -1.2889 TD -(provided \(see below\).)Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -91 0 obj -<< -/Length 10539 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-22)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -0.6 -4.38 TD -(Commands That Search)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -0.0544 Tw -(All of the editor commands that search use the same pattern matching routine \(the function )Tj -/TT10 1 Tf -41.4724 0 TD -0 Tw -(EDIT4E)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --45.073 -1.2889 TD -0.3211 Tw -[(below\). We will therefore begin our discussion of searching)-6.2( by describing the pattern match)]TJ -0 -1.2222 TD -0 Tw -(mechanism. A pattern )Tj -/TT14 1 Tf -10.3047 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( matches with )Tj -/TT14 1 Tf -6.4209 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if any of the following conditions are true:)Tj --16.4593 -2.0667 TD -[(1.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(X)Tj -/TT8 1 Tf --8.5073 -2.0667 TD -[(2.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(&)Tj -/TT8 1 Tf --5.9351 -2.0667 TD -[(3.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( is a number and )Tj -/TT10 1 Tf -7.6528 0 TD -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(X)Tj -/TT8 1 Tf --15.5454 -2.0667 TD -[(4.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( is a string and )Tj -/TT10 1 Tf -6.7319 0 TD -(\(STREQUAL)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is true)Tj --20.7036 -2.0667 TD -[(5.)-1250(If )]TJ -/TT10 1 Tf -2.941 0 TD -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2711 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( is the atom )]TJ -/TT10 1 Tf -5.4414 0 TD -0 Tw -(*ANY*)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2711 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( is a list of patterns, and one of the patterns on)]TJ -/TT10 1 Tf --21.3811 -1.2889 TD -0 Tw -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( matches )Tj -/TT14 1 Tf -4.1377 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --10.4552 -2.0667 TD -[(6.)-1250(If )]TJ -/TT14 1 Tf -2.9944 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0744 Tw -[( is a literal atom or string containing one or more )]TJ -/TT10 1 Tf -22.6778 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0744 Tw -(s \(escapes\), each )Tj -/TT10 1 Tf -7.6686 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0744 Tw -[( can match an)]TJ --35.6746 -1.2889 TD -0.1311 Tw -(indefinite number \(including 0\) of contiguous characters in the atom or string )Tj -/TT18 1 Tf -36.0694 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.7222 0 TD -0.1311 Tw -(, e.g., )Tj -/TT10 1 Tf -2.7974 0 TD -0 Tw -(VER$)Tj -/TT8 1 Tf --39.589 -1.2889 TD -0.08 Tw -(matches both )Tj -/TT10 1 Tf -6.305 0 TD -0 Tw -(VERYLONGATOM)Tj -/TT8 1 Tf -7.2012 0 TD -0.08 Tw -[( and )]TJ -/TT10 1 Tf -2.3529 0 TD -0 Tw -("VERYLONGSTRING")Tj -/TT8 1 Tf -9.6016 0 TD -0.08 Tw -[( as do )]TJ -/TT10 1 Tf -3.0706 0 TD -0 Tw -($LONG$)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( \(but not )]TJ -/TT10 1 Tf -4.2595 0 TD -0 Tw -($LONG)Tj -/TT8 1 Tf -3.0005 0 TD -0.08 Tw -(\), and)Tj -/TT10 1 Tf --39.3918 -1.2889 TD -0 Tw -($V$L$T$)Tj -/TT8 1 Tf -4.2007 0 TD -(. Note: the litatom )Tj -/TT10 1 Tf -8.7324 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -( \(escape\) matches only with itself.)Tj --14.1999 -2.0667 TD -[(7.)-1250(If )]TJ -/TT14 1 Tf -2.9833 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( is a literal atom or string ending in )]TJ -/TT10 1 Tf -16.3522 0 TD -0 Tw -($$)Tj -/TT8 1 Tf -1.2002 0 TD -0.0633 Tw -[( \(escape, escape\), )]TJ -/TT14 1 Tf -7.9595 0 TD -0 Tw -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( matches with the atom)]TJ --31.4291 -1.2889 TD -0.0889 Tw -(or string )Tj -/TT14 1 Tf -4.1929 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0889 Tw -[( if it is "close" to )]TJ -/TT14 1 Tf -7.7872 0 TD -0 Tw -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0889 Tw -(, in the sense used by the spelling corrector \(see Chapter 20\).)Tj --14.3805 -1.2889 TD -0 Tw -(For example, )Tj -/TT10 1 Tf -5.9961 0 TD -(CONSS$$)Tj -/TT8 1 Tf -4.2007 0 TD -( matches with )Tj -/TT10 1 Tf -6.4209 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(CNONC$$)Tj -/TT8 1 Tf -4.2007 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NCONC1)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --37.6273 -2.9556 TD -0.0178 Tw -(The pattern matching routine always types a message of the form )Tj -/TT10 1 Tf -29.3738 0 TD -0 Tw -(=)Tj -/TT14 1 Tf -0.6001 0 TD -(MATCHING-ITEM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0178 Tw -[( to inform you of)]TJ --37.7751 -1.2889 TD -0.0333 Tw -(the object matched by a pattern of the above two types, unless )Tj -/TT10 1 Tf -28.067 0 TD -0.08 Tw -(EDITQUIETFLG = T)Tj -/TT8 1 Tf -9.7616 0 TD -0.0333 Tw -[(. For example, if)]TJ -/TT10 1 Tf --37.8286 -1.2889 TD -0 Tw -(VER$)Tj -/TT8 1 Tf -2.4004 0 TD -( matches )Tj -/TT10 1 Tf -4.1377 0 TD -(VERYLONGATOM)Tj -/TT8 1 Tf -7.2012 0 TD -(, the editor would print )Tj -/TT10 1 Tf -10.6152 0 TD -(=VERYLONGATOM)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj --29.4891 -2.0667 TD -[(8.)-1250(If )]TJ -/TT10 1 Tf -2.961 0 TD -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2911 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( is the atom )]TJ -/TT12 1 Tf -5.5214 0 TD -0 Tw -(--)Tj -/TT8 1 Tf -0.666 0 TD -(, )Tj -/TT14 1 Tf -0.5411 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[( matches )]TJ -/TT14 1 Tf -4.2199 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( if )]TJ -/TT10 1 Tf -1.2062 0 TD -0 Tw -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2911 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( matches with some tail of )]TJ -/TT14 1 Tf -12.0362 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[(. For)]TJ --39.6695 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.2668 0 TD -0.0422 Tw -(\(A -- \(&\)\))Tj -/TT8 1 Tf -6.0854 0 TD -0.0178 Tw -[( will match with )]TJ -/TT10 1 Tf -7.5462 0 TD -0.0422 Tw -(\(A B C \(D\)\))Tj -/TT8 1 Tf -6.7277 0 TD -0.0178 Tw -(, but not )Tj -/TT10 1 Tf -3.9899 0 TD -0.0422 Tw -(\(A B C D\))Tj -/TT8 1 Tf -5.5275 0 TD -0.0178 Tw -(, or )Tj -/TT10 1 Tf -1.7265 0 TD -0.0422 Tw -(\(A B C \(D\))Tj --35.8701 -1.2889 TD -0 Tw -(E\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0089 Tw -[(. However, note that )]TJ -/TT10 1 Tf -9.5918 0 TD -0.0211 Tw -(\(A -- \(&\) --\) )Tj -/TT8 1 Tf -8.4858 0 TD -0.0089 Tw -(will match with )Tj -/TT10 1 Tf -7.2518 0 TD -0.0211 Tw -(\(A B C \(D\) E\))Tj -/TT8 1 Tf -7.8857 0 TD -0.0089 Tw -[(. In other words,)]TJ -/TT10 1 Tf --34.4153 -1.2889 TD -0 Tw -(--)Tj -/TT8 1 Tf -1.2002 0 TD -( can match any interior segment of a list.)Tj -0.1331 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.931 0 TD -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT18 1 Tf -0.2611 0 TD -(P)Tj -/TT14 1 Tf -0.6108 0 TD -(AT)Tj -/TT10 1 Tf -1.2002 0 TD -0.0278 Tw -(\)= NIL)Tj -/TT8 1 Tf -3.6284 0 TD -0.0111 Tw -(, i.e., )Tj -/TT14 1 Tf -2.2922 0 TD -0 Tw -(PAT )Tj -/TT10 1 Tf -2.4282 0 TD -0.0278 Tw -(= \(--\),)Tj -/TT8 1 Tf -4.2285 0 TD -0.0111 Tw -[( then it matches any tail of a list. Therefore, )]TJ -/TT10 1 Tf -19.6545 0 TD -0.0278 Tw -(\(A --)Tj --38.9686 -1.2889 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( matches )Tj -/TT10 1 Tf -4.1377 0 TD -(\(A\), \(A B C\))Tj -/TT8 1 Tf -7.2012 0 TD -( and)Tj -/TT10 1 Tf -1.9429 0 TD -( \(A . B\))Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --19.3493 -2.0667 TD -[(9.)-1250(If )]TJ -/TT10 1 Tf -2.9199 0 TD -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is the atom )Tj -/TT10 1 Tf -5.3569 0 TD -(==)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -( matches )Tj -/TT14 1 Tf -4.1377 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if and only if )Tj -/TT10 1 Tf -6.166 0 TD -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --35.1699 -2.0667 TD -0.1856 Tw -(This pattern is for use by programs that call the editor as a subroutine, since any non-)Tj --1.3333 -1.2222 TD -0.1022 Tw -(atomic expression in a command )Tj -/TT18 1 Tf -15.309 0 TD -0 Tw -(typed)Tj -/TT8 1 Tf -2.2222 0 TD -0.1022 Tw -[( in by you obviously cannot be )]TJ -/TT10 1 Tf -14.5403 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -[( to already existing)]TJ --33.2716 -1.2889 TD -0 Tw -(structure.)Tj --0.6667 -2 TD -[(10.)-750(If )]TJ -/TT10 1 Tf -2.9266 0 TD -(\(CADR)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2567 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( is the atom )]TJ -/TT10 1 Tf -5.3836 0 TD -0 Tw -(..)Tj -/TT8 1 Tf -1.2002 0 TD -0.0067 Tw -[( \(two periods\), )]TJ -/TT14 1 Tf -6.7387 0 TD -0 Tw -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0067 Tw -[( matches )]TJ -/TT14 1 Tf -4.151 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( if )]TJ -/TT10 1 Tf -1.1374 0 TD -0 Tw -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2567 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( matches )]TJ -/TT10 1 Tf -4.151 0 TD -0 Tw -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2567 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf --41.3944 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(\(CDDR)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is contained in )Tj -/TT14 1 Tf -6.9487 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(, as described below.)Tj --15.8092 -2.0667 TD -0.1389 Tw -[(11.)-750(Otherwise if )]TJ -/TT14 1 Tf -7.998 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( is a list, )]TJ -/TT14 1 Tf -4.3524 0 TD -0 Tw -(PAT)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -[( matches )]TJ -/TT14 1 Tf -4.4155 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( if )]TJ -/TT10 1 Tf -1.4018 0 TD -0 Tw -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3889 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( matches )]TJ -/TT10 1 Tf -4.4155 0 TD -0 Tw -(\(CAR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3889 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -(, and )Tj -/TT10 1 Tf -2.7206 0 TD -0 Tw -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3889 0 TD -(PAT)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf --41.4064 -1.2889 TD -(matches )Tj -/TT10 1 Tf -3.8877 0 TD -(\(CDR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -94 0 obj -<< -/Length 6160 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-23)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.17 Tw -(When the editor is searching, the pattern matching routine is called to match with )Tj -/TT18 1 Tf -38.7296 0 TD -0 Tw -(elements)Tj -/TT8 1 Tf -3.5015 0 TD -0.17 Tw -[( in the)]TJ --42.2311 -1.2222 TD -0.1878 Tw -(structure, unless the pattern begins with )Tj -/TT10 1 Tf -19.1897 0 TD -0 Tw -(...)Tj -/TT8 1 Tf -1.8003 0 TD -0.1878 Tw -[( \(three periods\), in which case )]TJ -/TT10 1 Tf -14.6032 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1878 Tw -[( of the pattern is)]TJ --37.3935 -1.2889 TD -0 Tw -(matched against proper tails in the structure. Thus,)Tj -/TT10 1 Tf -4 -2.8222 TD -(*P)Tj -5.3333 -1 TD -(\(A B C \(B C\)\))Tj -T* -(*F \(B --\))Tj -T* -(*P)Tj -T* -(\(B C\))Tj -T* -(*0 F \(... B --\))Tj -T* -(*P)Tj -T* -(... B C \(B C\)\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(Matching is also attempted with atomic tails \(except for )Tj -/TT10 1 Tf -24.791 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(\). Thus,)Tj -/TT10 1 Tf --22.5913 -2.8889 TD -(*P)Tj -5.3333 -1 TD -(\(A \(B . C\)\))Tj -T* -(*F C)Tj -T* -(*P)Tj -T* -(... . C\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.0544 Tw -(Although the current expression is the atom )Tj -/TT10 1 Tf -20.1004 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0544 Tw -[( after the final command, it is printed as )]TJ -/TT10 1 Tf -18.3967 0 TD -0.13 Tw -(... . C\))Tj -/TT8 1 Tf -5.0608 0 TD -0.0544 Tw -[( to)]TJ --44.158 -1.2889 TD -0.1233 Tw -(alert you to the fact that )Tj -/TT10 1 Tf -11.5233 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -[( is a )]TJ -/TT18 1 Tf -2.3321 0 TD -0 Tw -(tail)Tj -/TT8 1 Tf -1.3325 0 TD -0.1233 Tw -[(, not an element. Note that the pattern )]TJ -/TT10 1 Tf -18.4153 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -[( will match with either)]TJ --34.8034 -1.2889 TD -0.0478 Tw -(instance of )Tj -/TT10 1 Tf -5.1024 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0478 Tw -[( in )]TJ -/TT10 1 Tf -1.4686 0 TD -0.1156 Tw -(\(A C \(B . C\)\))Tj -/TT8 1 Tf -8.2635 0 TD -0.0478 Tw -(, whereas)Tj -/TT10 1 Tf -4.2407 0 TD -0.1156 Tw -[( \(... . C\))]TJ -/TT8 1 Tf -6.3476 0 TD -0.0478 Tw -[( will match only the second )]TJ -/TT10 1 Tf -12.6763 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0478 Tw -[(. The pattern)]TJ -/TT10 1 Tf --39.2993 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( will only match with )]TJ -/TT10 1 Tf -9.828 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( as an element, i.e., it will not match in )]TJ -/TT10 1 Tf -17.4367 0 TD -0.0611 Tw -(\(A B\))Tj -/TT8 1 Tf -3.0616 0 TD -0.0256 Tw -(, even though )Tj -/TT10 1 Tf -6.377 0 TD -0 Tw -(CDDR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -[( of )]TJ -/TT10 1 Tf -1.43 0 TD -0 Tw -(\(A)Tj --44.1342 -1.2889 TD -(B\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0578 Tw -[( is )]TJ -/TT10 1 Tf -1.3304 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0578 Tw -[(. However, )]TJ -/TT10 1 Tf -5.5532 0 TD -0.1378 Tw -(\(... . NIL\))Tj -/TT8 1 Tf -6.8766 0 TD -0.0578 Tw -[( \(or equivalently )]TJ -/TT10 1 Tf -7.7207 0 TD -0 Tw -(\(...\))Tj -/TT8 1 Tf -3.0005 0 TD -0.0578 Tw -(\) may be used to specify a )Tj -/TT10 1 Tf -12.0753 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT18 1 Tf -0.3078 0 TD -(tail)Tj -/TT8 1 Tf -1.3325 0 TD -0.0578 Tw -(, e.g.,)Tj -/TT10 1 Tf --42.9979 -1.2889 TD -0 Tw -(\(... . NIL\))Tj -/TT8 1 Tf -6.6011 0 TD -( will match with )Tj -/TT10 1 Tf -7.4751 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( of the third subexpression of )Tj -/TT10 1 Tf -13.167 0 TD -(\(\(A . B\) \(C . D\) \(E\)\))Tj -/TT8 1 Tf -12.6021 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 78 261.4 Tm -(Search Algorithm)Tj -/TT8 1 Tf -9 0 0 9 78 245.74 Tm -0.0922 Tw -[(Searching begins with the current expression and proceeds in print order. Searching usually means)]TJ -0 -1.2222 TD -0.0333 Tw -(find the next instance of this pattern, and consequently a match is not attempted that would leave the)Tj -T* -0.0278 Tw -[(edit chain unchanged. At each step, the pattern is matched against the next element in the expression)]TJ -T* -0.2467 Tw -(currently being searched, unless the pattern begins with )Tj -/TT10 1 Tf -26.9875 0 TD -0 Tw -(...)Tj -/TT8 1 Tf -1.8003 0 TD -0.2467 Tw -[( \(three periods\) in which case it is)]TJ --28.7878 -1.2889 TD -0 Tw -(matched against the next tail of the expression.)Tj -0 -2 TD -0.0722 Tw -(If the match is not successful, the search operation is recursive first in the )Tj -/TT10 1 Tf -33.4862 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0722 Tw -[( direction, and then in)]TJ --35.2865 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.7894 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1522 Tw -[( direction, i.e., if the element under examination is a list, the search descends into that list)]TJ --3.5897 -1.2889 TD -0.0189 Tw -[(before attempting to match with other elements \(or tails\) at the same level. Note: A find command of)]TJ -0 -1.2222 TD -0.0456 Tw -(the form )Tj -/TT10 1 Tf -4.1351 0 TD -0 Tw -(\(F)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.2956 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.2956 0 TD -(NIL\))Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( will only attempts matches at the top level of the current expression, i.e.,)]TJ --12.5274 -1.2889 TD -0 Tw -(it does not descend into elements, or ascend to higher expressions.)Tj -0 -2 TD -0.1478 Tw -(However, at no point is the total recursive depth of the search \(sum of number of )Tj -/TT10 1 Tf -38.3952 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1478 Tw -(s and )Tj -/TT10 1 Tf -2.9123 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -(s)Tj --44.9081 -1.2889 TD -0.0956 Tw -(descended into\) allowed to exceed the value of the variable )Tj -/TT10 1 Tf -27.3501 0 TD -0 Tw -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0956 Tw -[(. At that point, the search of)]TJ --32.1509 -1.2889 TD -0.0456 Tw -(that element or tail is abandoned, exactly as though the element or tail had been completely searched)Tj -0 -1.2222 TD -0.1344 Tw -(without finding a match, and the search continues with the element or tail for which the recursive)Tj -T* -0.0311 Tw -(depth is below )Tj -/TT10 1 Tf -6.8604 0 TD -0 Tw -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[(. This feature is designed to enable you to search circular list structures \(by)]TJ --11.6612 -1.2889 TD -0 Tw -(setting )Tj -/TT10 1 Tf -3.4455 0 TD -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -0.2111 Tw -[( small\), as well as protecting him from accidentally encountering a circular list)]TJ -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -97 0 obj -<< -/Length 6851 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-24)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1089 Tw -(structure in the course of normal editing. )Tj -/TT10 1 Tf -19.479 0 TD -0 Tw -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1089 Tw -[( can also be set to )]TJ -/TT10 1 Tf -8.5733 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1089 Tw -(, which is equivalent to)Tj --34.6534 -1.2889 TD -0 Tw -(infinity. )Tj -/TT10 1 Tf -4.0024 0 TD -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -( is initially set to 300.)Tj --8.8032 -2.0667 TD -0.1033 Tw -(If a successful match is not found in the current expression, the search automatically ascends to the)Tj -0 -1.2222 TD -0.1178 Tw -(next higher expression, and continues searching there on the next expression after the expression it)Tj -T* -0.07 Tw -[(just finished searching. If there is none, it ascends again, etc. This process continues until the entire)]TJ -T* -0.0667 Tw -[(edit chain has been searched, at which point the search fails, and an error is generated. If the search)]TJ -T* -0 Tw -(fails \(or is aborted by Control-E\), the edit chain is not changed \(nor are any )Tj -/TT10 1 Tf -33.3032 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(es performed\).)Tj --35.7036 -2.0667 TD -0.0533 Tw -(If the search is successful, i.e., an expression is found that the pattern matches, the edit chain is set to)Tj -0 -1.2222 TD -0 Tw -(the value it would have had had you reached that expression via a sequence of integer commands.)Tj -0 -2 TD -0.0378 Tw -(If the expression that matched was a list, it will be the final link in the edit chain, i.e., the new current)Tj -0 -1.2222 TD -0.0433 Tw -[(expression. If the expression that matched is not a list, e.g., is an atom, the current expression will be)]TJ -T* -0.01 Tw -(the tail beginning with that atom, unless the atom is a tail, e.g., )Tj -/TT10 1 Tf -28.0236 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.01 Tw -[( in )]TJ -/TT10 1 Tf -1.393 0 TD -0.0244 Tw -(\(A . B\))Tj -/TT8 1 Tf -4.2496 0 TD -0.01 Tw -[(. In this case, the current)]TJ --34.2663 -1.2889 TD -0.0744 Tw -(expression will be )Tj -/TT10 1 Tf -8.4494 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0744 Tw -(, but will print as )Tj -/TT10 1 Tf -8.1808 0 TD -0.18 Tw -(... . B\))Tj -/TT8 1 Tf -5.1608 0 TD -0.0744 Tw -[(. In other words, the search effectively does an )]TJ -/TT10 1 Tf -21.7298 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf --44.1209 -1.2889 TD -(\(unless )Tj -/TT10 1 Tf -3.3857 0 TD -(UPFINDFLG = NIL)Tj -/TT8 1 Tf -9.0015 0 TD -( \(initially )Tj -/TT10 1 Tf -4.2524 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(\). See "Form Oriented Editing" in this chapter\).)Tj -/TT6 1 Tf -10 0 0 10 126 374.6 Tm -(Search Commands)Tj -/TT8 1 Tf -9 0 0 9 126 358.94 Tm -0.0556 Tw -(All of the commands below set )Tj -/TT10 1 Tf -14.2635 0 TD -0 Tw -(LASTAIL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0556 Tw -[( for use by )]TJ -/TT10 1 Tf -5.1114 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0556 Tw -(, set )Tj -/TT10 1 Tf -2.0901 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.0556 Tw -[( for use by \\ \(below\), and do not)]TJ --30.4665 -1.2889 TD -0 Tw -(change the edit chain or perform any )Tj -/TT10 1 Tf -16.5972 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(es if they are unsuccessful or aborted.)Tj -/TT10 1 Tf --16.3309 -2.5489 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT4 1 Tf -10 0 0 10 195.45 324.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 324.4 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0367 Tw -(Actually two commands: the )Tj -/TT10 1 Tf -13.1511 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( informs the editor that the )]TJ -/TT18 1 Tf -12.3304 0 TD -0 Tw -(next)Tj -/TT8 1 Tf -1.7783 0 TD -0.0367 Tw -[( command is to be interpreted)]TJ --27.8598 -1.2889 TD -0.0622 Tw -[(as a pattern. This is the most common and useful form of the find command. If successful,)]TJ -0 -1.2222 TD -0 Tw -(the edit chain always changes, i.e., )Tj -/TT10 1 Tf -15.4351 0 TD -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( means find the next instance of )Tj -/TT14 1 Tf -14.2319 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --38.9185 -2.9556 TD -(If )Tj -/TT10 1 Tf -1.2355 0 TD -(\(MEMB)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.5656 0 TD -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -1.3568 0 TD -(CURRENT-EXPRESSION)Tj -/TT10 1 Tf -10.8018 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.3156 Tw -[( is true, )]TJ -/TT10 1 Tf -4.4647 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.3156 Tw -[( does not proceed with a full)]TJ --26.8257 -1.2889 TD -0.0833 Tw -[(recursive search. If the value of the )]TJ -/TT10 1 Tf -16.5763 0 TD -0 Tw -(MEMB)Tj -/TT8 1 Tf -2.4004 0 TD -0.0833 Tw -[( is )]TJ -/TT10 1 Tf -1.3815 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5833 0 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( invokes the search algorithm described)]TJ --23.342 -1.2889 TD -0 Tw -(above.)Tj -0 -2.8889 TD -0.0567 Tw -(If the current expression is )Tj -/TT10 1 Tf -12.2662 0 TD -0.1356 Tw -(\(PROG NIL LP \(COND \(-- \(GO LP1\)\)\) ... LP1 ...\))Tj -/TT8 1 Tf -28.8245 0 TD -0 Tw -(,)Tj --41.0907 -1.2889 TD -(then )Tj -/TT10 1 Tf -2.307 0 TD -0.2111 Tw -(F LP1)Tj -/TT8 1 Tf -3.2116 0 TD -0.0878 Tw -[( will find the )]TJ -/TT10 1 Tf -6.2622 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[( label, not the )]TJ -/TT10 1 Tf -6.5567 0 TD -0 Tw -(LP1)Tj -/TT8 1 Tf -1.8003 0 TD -0.0878 Tw -[( inside of the )]TJ -/TT10 1 Tf -6.295 0 TD -0 Tw -(GO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0878 Tw -[( expression, even though)]TJ --30.0334 -1.2889 TD -0.0367 Tw -[(the latter appears first \(in print order\) in the current expression. Typing )]TJ -/TT10 1 Tf -32.5309 0 TD -0 Tw -(1)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( \(making the atom)]TJ -/TT10 1 Tf --33.131 -1.2889 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( be the current expression\) followed by )Tj -/TT10 1 Tf -17.5034 0 TD -(F)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(LP1)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(would)Tj -/TT8 1 Tf -2.5 0 TD -( find the first )Tj -/TT10 1 Tf -5.9731 0 TD -(LP1)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --34.7611 -2.5489 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(N)Tj -/TT4 1 Tf -10 0 0 10 203.1 143.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 143.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0044 Tw -(Same as )Tj -/TT10 1 Tf -3.8194 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.2544 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0044 Tw -(, i.e., )Tj -/TT10 1 Tf -2.2789 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.0044 Tw -(inds the )Tj -/TT10 1 Tf -3.8038 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0044 Tw -(ext instance of )Tj -/TT14 1 Tf -6.5915 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0044 Tw -(, except that the )Tj -/TT10 1 Tf -7.2346 0 TD -0 Tw -(MEMB)Tj -/TT8 1 Tf -2.4004 0 TD -0.0004 Tc -0.004 Tw -( check of )Tj -/TT10 1 Tf -4.1471 0 TD -0 Tc -0 Tw -(F)Tj -/TT14 1 Tf --40.7318 -1.2889 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( is not performed.)Tj -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 37 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -100 0 obj -<< -/Length 8380 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-25)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT4 1 Tf -10 0 0 10 155.1 568.2 Tm -[( )-24986.3([)]TJ -/TT8 1 Tf -9 0 0 9 413.2983 568.2 Tm -(Editor Command])Tj --33.2554 -2.7333 TD -0.1478 Tw -(Similar to )Tj -/TT10 1 Tf -4.8434 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.3978 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1478 Tw -(, except that it may succeed without changing the edit chain, and it)Tj --10.042 -1.2889 TD -0.0089 Tw -(does not perform the )Tj -/TT10 1 Tf -9.5683 0 TD -0 Tw -(MEMB)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( check. For example, if the current expression is )]TJ -/TT10 1 Tf -21.5269 0 TD -0.02 Tw -(\(COND ...\), F)Tj --33.4955 -1.2889 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( will look for the next )Tj -/TT10 1 Tf -9.7104 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(, but )Tj -/TT10 1 Tf -2.2324 0 TD -(\(F COND T\))Tj -/TT8 1 Tf -6.001 0 TD -( will "stay here".)Tj -/TT10 1 Tf --24.078 -2.5489 TD -(\(F)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD --0.001 Tc -(N\))Tj -/TT4 1 Tf -10 0 0 10 165.9009 497.46 Tm -0 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 497.46 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -2.7333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -0.4156 Tw -[( >= 1\))]TJ -/TT8 1 Tf -4.4317 0 TD -0.1733 Tw -[( Finds the )]TJ -/TT14 1 Tf -5.5444 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1733 Tw -(th place that )Tj -/TT14 1 Tf -6.2275 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1733 Tw -[( matches. Equivalent to )]TJ -/TT10 1 Tf -11.6845 0 TD -0 Tw -(\(F)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.4233 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4233 0 TD -(T\))Tj -/TT8 1 Tf --40.1367 -1.2889 TD -0.0078 Tw -(followed by )Tj -/TT10 1 Tf -5.5556 0 TD -0 Tw -(\(F)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.2578 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.2578 0 TD -(N\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0078 Tw -[( repeated )]TJ -/TT14 1 Tf -4.3857 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0078 Tw -[(-1 times. Each time )]TJ -/TT14 1 Tf -8.8905 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0078 Tw -[( successfully matches, )]TJ -/TT14 1 Tf -9.9765 0 TD -0 Tw -(N)Tj -/TT8 1 Tf --40.7256 -1.2889 TD -0.1022 Tw -(is decremented by 1, and the search continues, until )Tj -/TT14 1 Tf -24.0357 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -[( reaches 0. Note that )]TJ -/TT14 1 Tf -10.0826 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1022 Tw -[( does)]TJ --38.9191 -1.2889 TD -0.1656 Tw -(not have to match with )Tj -/TT14 1 Tf -11.298 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1656 Tw -[( identical expressions; it just has to match )]TJ -/TT14 1 Tf -19.8669 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1656 Tw -[( times. Thus if the)]TJ --32.3651 -1.2889 TD -0 Tw -(current expression is )Tj -/TT10 1 Tf -9.4258 0 TD -(\(FOO1)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FOO2 FOO3\))Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(F FOO$ 3\))Tj -/TT8 1 Tf -6.001 0 TD -( will find )Tj -/TT10 1 Tf -4.2739 0 TD -(FOO3)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --31.8525 -2.9556 TD -(If )Tj -/TT14 1 Tf -1.0033 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0833 Tw -[( does not match successfully )]TJ -/TT14 1 Tf -13.2306 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( times, an error is generated and the edit chain is)]TJ --19.0347 -1.2889 TD -0 Tw -(unchanged \(even if )Tj -/TT14 1 Tf -8.751 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( matched )Tj -/TT14 1 Tf -4.3247 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(-1 times\).)Tj -/TT10 1 Tf --19.2098 -2.5489 TD -(\(F)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 158.2588 365.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 365.32 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.2156 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT4 1 Tf -10 0 0 10 165.9 354.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 354.38 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.2122 Tw -(Similar to )Tj -/TT10 1 Tf -4.9723 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.4622 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.2122 Tw -(, except that it only matches with elements at the top level of the)Tj --10.2353 -1.2889 TD -0.0367 Tw -(current expression, i.e., the search will not descend into the current expression, nor will it go)Tj -0 -1.2222 TD -0 Tw -(outside of the current expression. May succeed without changing the edit chain.)Tj -0 -2.8889 TD -0.0233 Tw -(For example, if the current expression is )Tj -/TT10 1 Tf -18.0964 0 TD -0.0544 Tw -(\(PROG NIL \(SETQ X \(COND & &\)\) \(COND &\))Tj --18.0964 -1.2889 TD -0 Tw -(...\))Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -(, the command )Tj -/TT10 1 Tf -6.9488 0 TD -0.0911 Tw -(F COND)Tj -/TT8 1 Tf -3.6917 0 TD -0.0378 Tw -[( will find the )]TJ -/TT10 1 Tf -6.0622 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -[( inside the )]TJ -/TT10 1 Tf -4.9283 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -(, whereas )Tj -/TT10 1 Tf -4.5184 0 TD -0.0911 Tw -(\(F \(COND --\)\))Tj -/TT8 1 Tf --33.3506 -1.2889 TD -0 Tw -(will find the top level )Tj -/TT10 1 Tf -9.7393 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(, i.e., the second one.)Tj -/TT10 1 Tf --13.473 -2.5489 TD -(\(FS)Tj -/TT6 1 Tf -10 0 0 10 118.2 235.04 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 120.9783 235.04 Tm -(PATTERN)Tj -4.2002 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... PATTERN)Tj -7.2 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 239.7809 235.04 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 235.04 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -0.05 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.2802 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.3 0 TD -(PATTERN)Tj -4.1986 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.05 Tw -[( followed by )]TJ -/TT10 1 Tf -5.94 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.3 0 TD -(PATTERN)Tj -4.1999 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.12 Tw -[( ...)]TJ -/TT8 1 Tf -2.5204 0 TD -0.05 Tw -[( followed by )]TJ -/TT10 1 Tf -5.94 0 TD -0 Tw -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.3 0 TD -(PATTERN)Tj -4.1995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.05 Tw -(, so that)Tj --37.7789 -1.6222 TD -0 Tw -(if )Tj -/TT10 1 Tf -0.874 0 TD -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -4.2003 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( fails, the edit chain is left at the place )Tj -/TT14 1 Tf -16.7544 0 TD -(PATTERN)Tj -4.2012 -0.3333 TD -(M-1)Tj -/TT8 1 Tf -1.8 0.3333 TD -( matched.)Tj -/TT10 1 Tf --30.6133 -2.8822 TD -(\(F=)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(EXPRESSION)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 187.5105 166.9 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 166.9 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1811 0 TD -(\(F \(== . )Tj -/TT14 1 Tf -5.4033 0 TD -(EXPRESSION)Tj -/TT10 1 Tf -6.001 0 TD -(\) )Tj -/TT14 1 Tf -1.2001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, i.e., searches for a structure )Tj -/TT10 1 Tf -12.7765 0 TD -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -( to )Tj -/TT14 1 Tf -1.3731 0 TD -(EXPRESSION)Tj -/TT8 1 Tf --35.3356 -1.2889 TD -(\(see above\).)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(ORF)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -4.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... PATTERN)Tj -7.2 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 244.6509 108.36 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 108.36 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -0.0544 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.2891 0 TD -0.1322 Tw -(\(F \(*ANY*)Tj -/TT14 1 Tf -5.5331 0 TD -0 Tw -(PATTERN)Tj -4.1978 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.1322 Tw -[( ... )]TJ -/TT14 1 Tf -3.2649 0 TD -0 Tw -(PATTERN)Tj -4.1995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.1322 Tw -(\) N\))Tj -/TT8 1 Tf -2.5326 0 TD -0.0544 Tw -(, i.e., searches for an expression)Tj --27.2171 -1.6222 TD -0 Tw -(that is matched by either )Tj -/TT14 1 Tf -11.1855 0 TD -(PATTERN)Tj -4.2 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(, )Tj -/TT18 1 Tf -0.5 0 TD -(PATTERN)Tj -4.6111 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.5 0.3333 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( or)Tj -/TT18 1 Tf -1.1909 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -4.1999 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( \(see above\).)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -103 0 obj -<< -/Length 5917 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-26)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(BF)Tj -/TT8 1 Tf -1.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT4 1 Tf -10 0 0 10 200.8561 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 568.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.4778 Tw -[("Backwards Find". Searches in reverse print order, beginning with the expression)]TJ -0 -1.2222 TD -0.2033 Tw -(immediately before the current expression \(unless the current expression is the top level)Tj -T* -0 Tw -(expression, in which case )Tj -/TT10 1 Tf -11.4395 0 TD -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -( searches the entire expression, in reverse order\).)Tj -/TT10 1 Tf --12.6397 -2.9556 TD -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -0.03 Tw -[( uses the same pattern match routine as )]TJ -/TT10 1 Tf -17.9329 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -(, and )Tj -/TT10 1 Tf -2.5029 0 TD -0 Tw -(MAXLEVEL)Tj -/TT8 1 Tf -4.8008 0 TD -0.03 Tw -[( and )]TJ -/TT10 1 Tf -2.2529 0 TD -0 Tw -(UPFINDFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.03 Tw -[( have the same)]TJ --34.6906 -1.2889 TD -0.0467 Tw -(effect, but the searching begins at the )Tj -/TT18 1 Tf -16.9419 0 TD -0 Tw -(end)Tj -/TT8 1 Tf -1.4453 0 TD -0.0467 Tw -[( of each list, and descends into each element before)]TJ --18.3872 -1.2222 TD -0.2855 Tw -[(attempting to match that element. If unsuccessful, the search continues with the next)]TJ -T* -0.1211 Tw -(previous element, etc., until the front of the list is reached, at which point )Tj -/TT10 1 Tf -34.238 0 TD -0 Tw -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -0.1211 Tw -[( ascends and)]TJ --35.4382 -1.2889 TD -0 Tw -(backs up, etc.)Tj -0 -2.8889 TD -(For example, if the current expression is)Tj -/TT10 1 Tf -0 -2.8222 TD -(\(PROG NIL \(SETQ X \(SETQ Y \(LIST Z\)\)\) \(COND \(\(SETQ W --\) --\)\) --\),)Tj -/TT8 1 Tf -0 -2.9556 TD -0.06 Tw -(the command )Tj -/TT10 1 Tf -6.4555 0 TD -0.1456 Tw -(F LIST)Tj -/TT8 1 Tf -3.7461 0 TD -0.06 Tw -[( followed by )]TJ -/TT10 1 Tf -5.97 0 TD -0.1456 Tw -(BF SETQ)Tj -/TT8 1 Tf -4.3462 0 TD -0.06 Tw -[( will leave the current expression as )]TJ -/TT10 1 Tf -16.463 0 TD -0.1456 Tw -(\(SETQ Y)Tj --36.9808 -1.4378 TD -0 Tw -(\(LIST Z\)\))Tj -/TT8 1 Tf -5.4009 0 TD -(, as will )Tj -/TT10 1 Tf -3.6309 0 TD -(F COND)Tj -/TT8 1 Tf -3.6006 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(BF SETQ)Tj -/TT4 1 Tf -10 0 0 10 365.6074 358.86 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 150 335.92 Tm -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT4 1 Tf -10 0 0 10 208.5088 335.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 335.92 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1267 Tw -(Similar to )Tj -/TT10 1 Tf -4.8012 0 TD -0 Tw -(BF)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.3767 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1267 Tw -(, except that the search always includes the current expression, i.e.,)Tj --10.5787 -1.2889 TD -0 Tw -(starts at the end of current expression and works backward, then ascends and backs up, etc.)Tj -0 -2.8889 TD -0.0056 Tw -(Thus in the previous example, where )Tj -/TT10 1 Tf -16.6871 0 TD -0.0133 Tw -(F COND)Tj -/TT8 1 Tf -3.6139 0 TD -0.0056 Tw -[( followed by )]TJ -/TT10 1 Tf -5.8067 0 TD -0.0133 Tw -(BF SETQ)Tj -/TT8 1 Tf -4.214 0 TD -0.0056 Tw -[( found )]TJ -/TT10 1 Tf -3.1859 0 TD -0.0133 Tw -(\(SETQ Y \(LIST)Tj --33.5077 -1.2889 TD -0 Tw -(Z\)\), F COND)Tj -/TT8 1 Tf -6.6011 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(\(BF SETQ T\))Tj -/TT8 1 Tf -6.6011 0 TD -( would find the )Tj -/TT10 1 Tf -7.0889 0 TD -(\(SETQ W --\))Tj -/TT8 1 Tf -6.6011 0 TD -( expression.)Tj -/TT10 1 Tf --34.0155 -2.5489 TD -(\(BF)Tj -/TT6 1 Tf -10 0 0 10 166.2026 239.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 168.9809 239.18 Tm -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 212.188 239.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 239.18 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.2156 TD -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT4 1 Tf -10 0 0 10 219.3 228.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 228.24 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --10.7948 -2.5489 TD -(\(GO)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(LABEL)Tj -/TT10 1 Tf -2.9997 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 200.8509 180.7 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 180.7 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0156 Tw -(Makes the current expression be the first thing after the )Tj -/TT10 1 Tf -24.8548 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( label )]TJ -/TT14 1 Tf -2.6454 0 TD -0 Tw -(LABEL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0156 Tw -(, i.e. goes where an)Tj --32.901 -1.2889 TD -0 Tw -(executed )Tj -/TT10 1 Tf -4.187 0 TD -(GO)Tj -/TT8 1 Tf -1.2002 0 TD -( would go.)Tj -/TT6 1 Tf -10 0 0 10 126 116.56 Tm -(Location Specification)Tj -/TT8 1 Tf -9 0 0 9 126 100.9 Tm -0.0389 Tw -(Many of the more sophisticated commands described later in this chapter use a more general method)Tj -0 -1.2222 TD -0.2911 Tw -[(of specifying position called a "location specification." A location specification is a list of edit)]TJ -T* -0.1744 Tw -[(commands that are executed in the normal fashion with two exceptions. First, all commands not)]TJ -T* -0.1856 Tw -(recognized by the editor are interpreted as though they had been preceded by )Tj -/TT10 1 Tf -37.0846 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.1856 Tw -[(; normally such)]TJ --37.6847 -1.2889 TD -0.02 Tw -[(commands would cause errors. For example, the location specification )]TJ -/TT10 1 Tf -31.7513 0 TD -0.0489 Tw -(\(COND 2 3\))Tj -/TT8 1 Tf -6.0988 0 TD -0.02 Tw -[( specifies the 3rd)]TJ --37.85 -1.2889 TD -0.0367 Tw -(element in the first clause of the next )Tj -/TT10 1 Tf -16.7518 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -[(. Note that you could always write )]TJ -/TT10 1 Tf -16.0897 0 TD -0.0889 Tw -(F COND)Tj -/TT8 1 Tf -3.6895 0 TD -0.0367 Tw -[( followed by 2)]TJ -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -106 0 obj -<< -/Length 6132 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-27)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.1967 Tw -(and 3 for )Tj -/TT10 1 Tf -4.8068 0 TD -0.4711 Tw -(\(COND 2 3\))Tj -/TT8 1 Tf -6.9432 0 TD -0.1967 Tw -[( if you were not sure whether or not )]TJ -/TT10 1 Tf -17.9634 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1967 Tw -[( was the name of an atomic)]TJ --32.1137 -1.2889 TD -0 Tw -(command.)Tj -0 -2 TD -0.0889 Tw -(Secondly, if an error occurs while evaluating one of the commands in the location specification, and)Tj -0 -1.2222 TD -0.0456 Tw -(the edit chain had been changed, i.e., was not the same as it was at the beginning of that execution of)Tj -T* -[(the location specification, the location operation will continue. In other words, the location operation)]TJ -T* -0.1056 Tw -(keeps going unless it reaches a state where it detects that it is "looping", at which point it gives up.)Tj -T* -0.1644 Tw -(Thus, if )Tj -/TT10 1 Tf -3.9246 0 TD -0.3933 Tw -(\(COND 2 3\))Tj -/TT8 1 Tf -6.7876 0 TD -0.1644 Tw -[( is being located, and the first clause of the next )]TJ -/TT10 1 Tf -22.9412 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1644 Tw -[( contained only two)]TJ --36.0538 -1.2889 TD -0.0489 Tw -[(elements, the execution of the command 3 would cause an error. The search would then continue by)]TJ -0 -1.2222 TD -0.0122 Tw -(looking for the next )Tj -/TT10 1 Tf -8.9815 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[(. However, if a point were reached where there were no further )]TJ -/TT10 1 Tf -28.6442 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -(s, then)Tj --42.4265 -1.2889 TD -0.04 Tw -(the first command, )Tj -/TT10 1 Tf -8.7245 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -(, would cause the error; the edit chain would not have been changed, and so)Tj --11.1249 -1.2889 TD -0 Tw -(the entire location operation would fail, and cause an error.)Tj -0 -2 TD -(The )Tj -/TT10 1 Tf -1.9661 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -[( command \(see above\) in conjunction with the )]TJ -/TT10 1 Tf -20.9501 0 TD -0 Tw -(##)Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -[( function \(see below\) provide a way of using)]TJ --25.3165 -1.2889 TD -0.1378 Tw -(arbitrary predicates applied to elements in the current expression. )Tj -/TT10 1 Tf -30.9994 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.1378 Tw -[( and )]TJ -/TT10 1 Tf -2.4684 0 TD -0 Tw -(##)Tj -/TT8 1 Tf -1.2002 0 TD -0.1378 Tw -[( will be described in)]TJ --35.8682 -1.2889 TD -0 Tw -(detail later in the chapter, along with examples illustrating their use in location specifications.)Tj -0 -2 TD -0.0333 Tw -(Throughout this chapter, the meta-symbol )Tj -/TT10 1 Tf -19.13 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0333 Tw -[( is used to denote a location specification. Thus )]TJ -/TT10 1 Tf -21.6092 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0333 Tw -[( is a list)]TJ --41.9395 -1.2889 TD -0.0656 Tw -(of commands interpreted as described above. )Tj -/TT10 1 Tf -21.0277 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0656 Tw -[( can also be atomic, in which case it is interpreted as)]TJ -/TT10 1 Tf --21.6278 -1.2889 TD -0 Tw -(\(LIST @\))Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --2.1341 -2.4 TD --0.0001 Tc -0.0001 Tw -(\(LC . @\) )Tj -/TT8 1 Tf -34.2556 0 TD -0 Tc -0 Tw -([Editor Command])Tj --32.9222 -2.7333 TD -0.1444 Tw -(Provides a way of explicitly invoking the location operation, e.g., )Tj -/TT10 1 Tf -30.3981 0 TD -0.3467 Tw -(\(LC COND 2 3\))Tj -/TT8 1 Tf -8.8413 0 TD -0.1444 Tw -[( will)]TJ --39.2393 -1.2889 TD -0 Tw -(perform the the search described above.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(LCL . @\))Tj -/TT4 1 Tf -10 0 0 10 150.6079 287.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 287.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1867 Tw -(Same as )Tj -/TT10 1 Tf -4.1839 0 TD -0 Tw -(LC)Tj -/TT8 1 Tf -1.2002 0 TD -0.1867 Tw -[( except the search is confined to the current expression, i.e., the edit chain is)]TJ --5.3841 -1.2889 TD -0.0056 Tw -(rebound during the search so that it looks as though the editor were called on just the current)Tj -0 -1.2222 TD -0.12 Tw -[(expression. For example, to find a )]TJ -/TT10 1 Tf -16.2619 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.12 Tw -[( containing a )]TJ -/TT10 1 Tf -6.3102 0 TD -0 Tw -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -0.12 Tw -(, one might use the location)Tj --28.573 -1.2889 TD -0 Tw -(specification )Tj -/TT10 1 Tf -5.8995 0 TD -0.2344 Tw -(\(COND \(LCL RETURN\))Tj -/TT12 1 Tf -11.2706 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.3478 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( where the \\ would reverse the effects of the )]TJ -/TT10 1 Tf -20.8118 0 TD -0 Tw -(LCL)Tj -/TT8 1 Tf --39.5358 -1.2889 TD -(command, and make the final current expression be the )Tj -/TT10 1 Tf -24.8237 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --28.5575 -2.5489 TD -(\(2ND . @\) )Tj -/TT4 1 Tf -10 0 0 10 156.0088 194.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 194.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1222 Tw -(Same as )Tj -/TT10 1 Tf -4.055 0 TD -0.2933 Tw -(\(LC . @\))Tj -/TT8 1 Tf -5.3874 0 TD -0.1222 Tw -[( followed by another )]TJ -/TT10 1 Tf -9.9391 0 TD -0.2933 Tw -(\(LC . @\))Tj -/TT8 1 Tf -5.3874 0 TD -0.1222 Tw -[( except that if the first succeeds and)]TJ --24.769 -1.2889 TD -0 Tw -(second fails, no change is made to the edit chain.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(3ND . @\))Tj -/TT4 1 Tf -10 0 0 10 150.6079 135.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 135.72 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(2ND)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --7.6815 -2.5489 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -<0040>Tj -/TT6 1 Tf -10 0 0 10 116.2822 88.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 119.0605 88.18 Tm -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 162.2676 88.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 88.18 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.08 Tw -(Ascends the edit chain looking for a link which matches )Tj -/TT14 1 Tf -25.7673 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.08 Tw -(. In other words, it keeps)Tj --29.968 -1.2889 TD -0 Tw -(doing )Tj -/TT10 1 Tf -2.9115 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0756 Tw -(s until it gets to a specified point. If )Tj -/TT14 1 Tf -16.7181 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0756 Tw -[( is atomic, it is matched with the first)]TJ -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -109 0 obj -<< -/Length 5480 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-28)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -0.2489 Tw -[(element of each link, otherwise with the entire link. If no match is found, an error is)]TJ -0 -1.2222 TD -0 Tw -(generated, and the edit chain is unchanged.)Tj -0 -2.8889 TD -(If )Tj -/TT14 1 Tf -0.9688 0 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0489 Tw -[( is of the form )]TJ -/TT10 1 Tf -6.6321 0 TD -0 Tw -(\(IF)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.2989 0 TD -(EXPRESSION)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT14 1 Tf -0.5489 0 TD -(EXPRESSION)Tj -/TT8 1 Tf -6.001 0 TD -0.0489 Tw -[( is evaluated at each link, and if)]TJ --27.0518 -1.2889 TD -0 Tw -(its value is )Tj -/TT10 1 Tf -4.9438 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, or the evaluation causes an error, the ascent continues. )Tj --6.7441 -2.9556 TD -(For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*PP)Tj -0 -1 TD -([PROG NIL)Tj -T* -( \(COND)Tj -T* -( [\(NULL \(SETQ L \(CDR L\)\)\))Tj -T* -( \(COND)Tj -T* -( \(FLG \(RETURN L])Tj -T* -( \([NULL \(CDR \(FMEMB \(CAR L\))Tj -T* -( \(CADR L]])Tj -T* -(*F CADR)Tj -0 -1.0667 TD -(*\()Tj -/TT19 1 Tf -1.2002 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(COND\))Tj --2.437 -1 TD -(*P)Tj -T* -(\(COND \(& &\) \(& &\)\))Tj -T* -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.0089 Tw -(Note that this command differs from )Tj -/TT10 1 Tf -16.5636 0 TD -0 Tw -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0089 Tw -[( in that it does not search )]TJ -/TT18 1 Tf -11.3742 0 TD -0 Tw -(inside)Tj -/TT8 1 Tf -2.3901 0 TD -0.0089 Tw -[( of each link, it simply)]TJ --31.5282 -1.2889 TD -0.1522 Tw -[(ascends. Thus in the above example, )]TJ -/TT10 1 Tf -17.653 0 TD -0.3644 Tw -(F CADR)Tj -/TT8 1 Tf -3.965 0 TD -0.1522 Tw -[( followed by )]TJ -/TT10 1 Tf -6.2467 0 TD -0.3644 Tw -(BF COND)Tj -/TT8 1 Tf -4.5651 0 TD -0.1522 Tw -[( would find )]TJ -/TT10 1 Tf -5.9083 0 TD -0 Tw -(\(COND)Tj --38.3382 -1.2889 TD -(\(FLG \(RETURN L\)\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(, not the higher )Tj -/TT10 1 Tf -6.9766 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --20.912 -2.5489 TD -(\(BELOW)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.5991 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 213.9009 297.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 297.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0222 Tw -(Ascends the edit chain looking for a link specified by )Tj -/TT14 1 Tf -23.8809 0 TD -0 Tw -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -(, and stops )Tj -/TT14 1 Tf -5.0803 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0222 Tw -[( links below that \(only)]TJ --31.3616 -1.2889 TD -0.0356 Tw -[(links that are elements are counted, not tails\). In other words )]TJ -/TT10 1 Tf -27.7626 0 TD -0 Tw -(BELOW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0356 Tw -[( keeps doing )]TJ -/TT10 1 Tf -5.9817 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -(s until it)Tj --37.3449 -1.2889 TD -0 Tw -(gets to a specified point, and then backs off )Tj -/TT14 1 Tf -19.3071 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -(s.)Tj --20.7573 -2.9556 TD -(Note that )Tj -/TT14 1 Tf -4.4165 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is evaluated, so one can type )Tj -/TT10 1 Tf -13.1338 0 TD -(\(BELOW)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(IPLUS X Y\)\))Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --32.5858 -2.5489 TD -(\(BELOW)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 206.2535 200.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 200.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(BELOW)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(1\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --10.9116 -2.9556 TD -0.0733 Tw -(For example,)Tj -/TT10 1 Tf -5.8194 0 TD -0.1756 Tw -[( \(BELOW COND\))]TJ -/TT8 1 Tf -8.1524 0 TD -0.0733 Tw -[( will cause the )]TJ -/TT10 1 Tf -6.8373 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT18 1 Tf -0.3233 0 TD -(clause)Tj -/TT8 1 Tf -2.4634 0 TD -0.0733 Tw -[( containing the current expression)]TJ --25.9962 -1.2889 TD -0.1022 Tw -(to become the new current expression. Thus if the current expression is as shown above, )Tj -/TT10 1 Tf -40.7257 0 TD -0 Tw -(F)Tj --40.7257 -1.2889 TD -(CADR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[( followed by )]TJ -/TT10 1 Tf -5.8267 0 TD -0.03 Tw -(\(BELOW COND\))Tj -/TT8 1 Tf -7.2312 0 TD -0.0122 Tw -[( will make the new expression be)]TJ -/TT12 1 Tf -14.7496 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2622 0 TD -0.03 Tw -(\([NULL \(CDR \(FMEMB)Tj --30.4701 -1.2889 TD -0 Tw -(\(CAR L\) \(CADR L] \(GO LP\)\))Tj -/TT8 1 Tf -15.0024 0 TD -(, and is therefore equivalent to )Tj -/TT10 1 Tf -13.7202 0 TD -(0 0 0 0)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --32.9233 -2.9556 TD -(The )Tj -/TT10 1 Tf -2.2505 0 TD -(BELOW)Tj -/TT8 1 Tf -3.0005 0 TD -0.3267 Tw -[( command is useful for locating a substructure by specifying something it)]TJ --5.251 -1.2889 TD -0.0567 Tw -[(contains. For example, suppose you are editing a list of lists, and want to find a sublist that)]TJ -0 -1.2222 TD -0 Tw -(contains a )Tj -/TT10 1 Tf -4.6948 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( \(at any depth\). He simply executes )Tj -/TT10 1 Tf -15.8364 0 TD -(F)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FOO \(BELOW)Tj -/TT12 1 Tf -6.001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -110 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -112 0 obj -<< -/Length 5130 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-29)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(\(NEX)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 147.4535 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 568.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(BELOW)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --17.0518 -2.9556 TD -0.0378 Tw -(For example, if you are deep inside of a )Tj -/TT10 1 Tf -18.0158 0 TD -0 Tw -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -0.0378 Tw -[( clause, you can advance to the next clause)]TJ --22.2165 -1.2889 TD -0 Tw -(with )Tj -/TT10 1 Tf -2.2832 0 TD -(\(NEX SELECTQ\))Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --11.4178 -2.5489 TD -(NEX)Tj -/TT4 1 Tf -10 0 0 10 118.2 482.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 482.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(NEX )Tj -/TT19 1 Tf -3.0005 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --8.3979 -2.9556 TD -0.1778 Tw -(The atomic form of )Tj -/TT10 1 Tf -9.4103 0 TD -0 Tw -(NEX)Tj -/TT8 1 Tf -1.8003 0 TD -0.1778 Tw -[( is useful if you will be performing repeated executions of )]TJ -/TT10 1 Tf -27.7217 0 TD -0 Tw -(\(NEX)Tj -/TT14 1 Tf --38.9323 -1.2889 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[(. By simply )]TJ -/TT10 1 Tf -5.5429 0 TD -0 Tw -(MARK)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -(ing \(see the next section\) the chain corresponding to )Tj -/TT14 1 Tf -23.3992 0 TD -0 Tw -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.02 Tw -(, you can use)Tj -/TT10 1 Tf --35.5432 -1.2889 TD -0 Tw -(NEX)Tj -/TT8 1 Tf -1.8003 0 TD -( to step through the sublists.)Tj -/TT10 1 Tf --3.1336 -2.5489 TD -(\(NTH )Tj -/TT14 1 Tf -3.0005 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 150.6079 385.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 385.12 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Generalized )Tj -/TT10 1 Tf -5.6757 0 TD -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( command. Effectively performs )]TJ -/TT10 1 Tf -14.9897 0 TD -0.1333 Tw -(\(LCL . )Tj -/TT14 1 Tf -4.4674 0 TD -0 Tw -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -(, followed by )Tj -/TT10 1 Tf -6.2067 0 TD -0 Tw -(\(BELOW )Tj -/TT8 1 Tf -4.334 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --41.0802 -1.2889 TD -(followed by )Tj -/TT10 1 Tf -5.54 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --6.7402 -2.9556 TD -(If the search is unsuccessful, )Tj -/TT10 1 Tf -12.749 0 TD -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -( generates an error and the edit chain is not changed.)Tj --14.5493 -2.9556 TD -0.05 Tw -(Note that )Tj -/TT10 1 Tf -4.5165 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3 0 TD -(NUMBER)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( is just a special case of )]TJ -/TT10 1 Tf -10.6571 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -(, and in fact, no special check is)Tj --27.1755 -1.2889 TD -0 Tw -(made for )Tj -/TT14 1 Tf -4.2466 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -( a number; both commands are executed identically.)Tj --6.0469 -2.9556 TD -0.0222 Tw -(In other words, )Tj -/TT10 1 Tf -7.1233 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -[( locates )]TJ -/TT14 1 Tf -3.5542 0 TD -0 Tw -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -(, using a search restricted to the current expression, and then)Tj --14.2781 -1.2889 TD -0.0078 Tw -(backs up to the current level, where the new current expression is the tail whose first element)Tj -0 -1.2222 TD -0.1622 Tw -(contains, however deeply, the expression that was the terminus of the location operation.)Tj -T* -0 Tw -(For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1 TD -(\(PROG \(& &\) LP \(COND & &\) \(EDITCOM &\) \(SETQ UNFIND)Tj -T* -(UF\) \(RETURN L\)\))Tj -T* -(*\(NTH UF\))Tj -T* -(*P)Tj -T* -(... \(SETQ UNFIND UF\) \(RETURN L\)\))Tj -T* -(*)Tj -/TT14 1 Tf --10.6667 -2.3267 TD -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.. @)Tj -/TT6 1 Tf -10 0 0 10 163.6597 131.58 Tm -( )Tj -/TT4 1 Tf -0.2778 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 131.58 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1278 Tw -(For example, )Tj -/TT10 1 Tf -6.2516 0 TD -0.3078 Tw -(\(COND .. RETURN\))Tj -/TT8 1 Tf -10.2171 0 TD -0.1278 Tw -[(. Finds a )]TJ -/TT10 1 Tf -4.725 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1278 Tw -[( that contains a )]TJ -/TT10 1 Tf -7.4403 0 TD -0 Tw -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -0.1278 Tw -(, at any depth.)Tj --34.635 -1.2889 TD -0.2244 Tw -(Equivalent to \(but more efficient than\) )Tj -/TT10 1 Tf -18.5264 0 TD -0 Tw -(\(F)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.4744 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4744 0 TD -(N\))Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.7244 0 TD -0.54 Tw -(\(LCL . @\))Tj -/TT8 1 Tf -6.4809 0 TD -0.2244 Tw -[( followed by )]TJ -/TT10 1 Tf -6.4634 0 TD -0 Tw -(\()Tj -/TT19 1 Tf -0.6001 0 TD -<0040>Tj -/TT14 1 Tf --40.3451 -1.2889 TD -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -113 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -115 0 obj -<< -/Length 6563 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-30)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -0.0633 Tw -(An infix command, ")Tj -/TT10 1 Tf -9.3824 0 TD -0 Tw -(..)Tj -/TT8 1 Tf -1.2002 0 TD -0.0633 Tw -(" is not a meta-symbol, it )Tj -/TT18 1 Tf -11.5612 0 TD -0 Tw -(is)Tj -/TT8 1 Tf -0.667 0 TD -0.0633 Tw -[( the name of the command. )]TJ -/TT10 1 Tf -12.9887 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0633 Tw -[( is )]TJ -/TT10 1 Tf -1.3415 0 TD -0 Tw -(CDDR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -[( of)]TJ --40.1415 -1.2889 TD -0.1011 Tw -[(the command. Note that )]TJ -/TT10 1 Tf -11.7575 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3511 0 TD -0.2422 Tw -(.. @\))Tj -/TT8 1 Tf -3.2427 0 TD -0.1011 Tw -[( can also be used directly as an edit pattern as)]TJ --20.1521 -1.2889 TD -0 Tw -(described above, e.g. )Tj -/TT10 1 Tf -9.4648 0 TD -(F \()Tj -/TT14 1 Tf -1.8003 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.. @\))Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --18.7163 -2.9556 TD -(For example, if the current expression is)Tj -/TT10 1 Tf -0 -2.8222 TD -(\(PROG NIL [COND \(\(NULL L\) \(COND \(FLG \(RETURN L] --\),)Tj -/TT8 1 Tf -0 -2.9556 TD -(then )Tj -/TT10 1 Tf -2.4537 0 TD -0.5611 Tw -(\(COND .. RETURN\))Tj -/TT8 1 Tf -10.7238 0 TD -0.2344 Tw -[( will make )]TJ -/TT10 1 Tf -5.5783 0 TD -0.5611 Tw -(\(COND \(FLG \(RETURN L\)\)\))Tj -/TT8 1 Tf -15.4856 0 TD -0.2344 Tw -[( be the current)]TJ --34.2414 -1.2889 TD -0.1056 Tw -[(expression. Note that it is the innermost )]TJ -/TT10 1 Tf -18.9748 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1056 Tw -[( that is found, because this is the first )]TJ -/TT10 1 Tf -17.5501 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf --38.9253 -1.2889 TD -0.1256 Tw -(encountered when ascending from the )Tj -/TT10 1 Tf -17.8934 0 TD -0 Tw -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[(. In other words, )]TJ -/TT10 1 Tf -8.4344 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3756 0 TD -0.3022 Tw -(.. @\))Tj -/TT8 1 Tf -3.3027 0 TD -0.1256 Tw -[( is not)]TJ -/TT18 1 Tf --38.4075 -1.2889 TD -0 Tw -(always)Tj -/TT8 1 Tf -2.7769 0 TD -( equivalent to )Tj -/TT10 1 Tf -6.5483 0 TD -(\(F)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(N\))Tj -/TT8 1 Tf -1.2002 0 TD -(, followed by )Tj -/TT10 1 Tf -6.04 0 TD -(\(LCL . @\))Tj -/TT8 1 Tf -5.4009 0 TD -( followed by \\.)Tj --27.8672 -2.9556 TD -0.0056 Tw -(Note that )Tj -/TT10 1 Tf -4.4276 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( is a location specification, not just a pattern. Thus )]TJ -/TT10 1 Tf -22.5758 0 TD -0.0133 Tw -(\(RETURN ..)Tj -/TT12 1 Tf -6.0143 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2556 0 TD -0.0133 Tw -(COND 2 3\))Tj -/TT8 1 Tf -5.4275 0 TD -0.0056 Tw -[( can)]TJ --39.3009 -1.2889 TD -0.0211 Tw -(be used to find the )Tj -/TT10 1 Tf -8.5807 0 TD -0 Tw -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( which contains a )]TJ -/TT10 1 Tf -8.0122 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( whose first clause contains \(at least\) three)]TJ --22.5938 -1.2889 TD -0.0222 Tw -[(elements. Note also that since )]TJ -/TT12 1 Tf -13.7232 0 TD -0 Tw -(@)Tj -/TT8 1 Tf -0.7471 0 TD -0.0222 Tw -[( permits any edit command, you can write commands of the)]TJ --14.4702 -1.2222 TD -0 Tw -(form )Tj -/TT10 1 Tf -2.5245 0 TD -0.2833 Tw -(\(COND .. \(RETURN .. COND\)\))Tj -/TT8 1 Tf -16.7359 0 TD -0.1178 Tw -(, which will locate the first )Tj -/TT10 1 Tf -12.6388 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1178 Tw -[( that contains a)]TJ -/TT10 1 Tf --34.2996 -1.2889 TD -0 Tw -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -( that contains a )Tj -/TT10 1 Tf -6.9292 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 102 317.6 Tm -(Commands That Save and Restore the Edit Chain)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 314.89 m -558.01 314.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 292.94 Tm -0.1178 Tw -(Several facilities are available for saving the current edit chain and later retrieving it: )Tj -/TT10 1 Tf -39.5845 0 TD -0 Tw -(MARK)Tj -/TT8 1 Tf -2.4004 0 TD -0.1178 Tw -(, which)Tj --41.9849 -1.2889 TD -0.0489 Tw -(marks the current chain for future reference, )Tj -/TT19 1 Tf -20.1884 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0489 Tw -(, which returns to the last mark without destroying it,)Tj --21.1752 -1.2222 TD -0 Tw -(and )Tj -/TT19 1 Tf -1.9429 0 TD -<00400040>Tj -/TT8 1 Tf -1.9736 0 TD -(, which returns to the last mark and also erases it.)Tj -/TT10 1 Tf --1.2498 -2.4822 TD -(MARK)Tj -/TT4 1 Tf -10 0 0 10 171.6 248 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 248 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Adds the current edit chain to the front of the list )Tj -/TT10 1 Tf -21.9302 0 TD -(MARKLST)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT19 1 Tf -11 0 0 10 150 200.46 Tm -<0040>Tj -/TT4 1 Tf -10 0 0 10 160.8549 200.46 Tm --0.0983 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 200.46 Tm -0 Tc -([Editor Command])Tj --32.9222 -2.6667 TD -0.0789 Tw -(Makes the new edit chain be )Tj -/TT10 1 Tf -13.2985 0 TD -0.19 Tw -(\(CAR MARKLST\))Tj -/TT8 1 Tf -7.9913 0 TD -0.0789 Tw -[(. Generates an error if )]TJ -/TT10 1 Tf -10.5666 0 TD -0 Tw -(MARKLST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0789 Tw -[( is )]TJ -/TT10 1 Tf -1.3726 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0789 Tw -(, i.e.,)Tj --39.23 -1.2889 TD -0 Tw -(no )Tj -/TT10 1 Tf -1.3779 0 TD -(MARK)Tj -/TT8 1 Tf -2.4004 0 TD -(s have been performed, or all have been erased.)Tj --3.7783 -2.9556 TD -(This is an atomic command; do not confuse it with the list command )Tj -/TT10 1 Tf -30.4839 0 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT19 1 Tf -11 0 0 10 150 115.32 Tm -<00400040>Tj -/TT4 1 Tf -10 0 0 10 169.74 115.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 115.32 Tm -([Editor Command])Tj --32.9222 -2.6667 TD -0.3578 Tw -(Similar to )Tj -/TT19 1 Tf -5.2634 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.3578 Tw -[( but also erases the last )]TJ -/TT10 1 Tf -12.5187 0 TD -0 Tw -(MARK)Tj -/TT8 1 Tf -2.4004 0 TD -0.3578 Tw -(, i.e., performs)Tj -/TT12 1 Tf -7.0412 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.6078 0 TD -0.8578 Tw -(\(SETQ MARKLST \(CDR)Tj --28.8184 -1.2889 TD -0 Tw -(MARKLST\)\))Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -3.1044 TD -0.0122 Tw -(If you have two chains marked, and wish to return to the first chain, you must perform )Tj -/TT19 1 Tf -11 0 0 10 511.9872 51.78 Tm -0 Tw -<00400040>Tj -/TT8 1 Tf -9 0 0 9 533.6971 51.78 Tm -(,)Tj --41.2997 -1.2222 TD -0.0633 Tw -(which removes the second mark, and then )Tj -/TT19 1 Tf -19.4155 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0633 Tw -[(. However, the second mark is then no longer)]TJ -ET -endstream -endobj -116 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -118 0 obj -<< -/Length 6389 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-31)Tj -/TT8 1 Tf --38.3333 60.6156 TD -0.0322 Tw -[(accessible. If you want to be able to return to either of two \(or more\) chains, you can use the)]TJ -0 -1.2222 TD -0 Tw -(following generalized )Tj -/TT10 1 Tf -9.9331 0 TD -(MARK)Tj -/TT8 1 Tf -2.4004 0 TD -(:)Tj -/TT10 1 Tf --13.6668 -2.5489 TD -(\(MARK)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SYMBOL)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 169.0605 535.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 535.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Sets )Tj -/TT14 1 Tf -2.0039 0 TD -(SYMBOL)Tj -/TT8 1 Tf -3.6006 0 TD -( to the current edit chain,)Tj -/TT18 1 Tf --6.9378 -2.5489 TD -(\()Tj -/TT8 1 Tf -0.333 0 TD -(\\)Tj -/TT6 1 Tf -10 0 0 10 110.4507 488.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 113.229 488.06 Tm -(SYMBOL)Tj -/TT18 1 Tf -3.6006 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 150.8813 488.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 488.06 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Makes the current edit chain become the value of )Tj -/TT14 1 Tf -21.96 0 TD -(SYMBOL)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --25.5605 -2.9556 TD -0.11 Tw -(If you did not prepare in advance for returning to a particular edit chain, you may still be)Tj -0 -1.2222 TD -0 Tw -(able to return to that chain with a single command by using \\ or \\)Tj -/TT10 1 Tf -29.3037 0 TD -(P)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --31.2371 -2.5489 TD -(\\)Tj -/TT4 1 Tf -10 0 0 10 107.45 402.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 402.92 Tm -([Editor Command])Tj --32.9222 -2.6667 TD -(Makes the edit chain be the value of )Tj -/TT10 1 Tf -16.1343 0 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -(. Generates an error if )Tj -/TT10 1 Tf -10.0933 0 TD -(UNFIND = NIL)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --37.0293 -2.9556 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.1511 Tw -[( is set to the current edit chain by each command that makes a "big jump", i.e., a)]TJ --3.6006 -1.2889 TD -0.1433 Tw -(command that usually performs more than a single ascent or descent, namely )Tj -/TT19 1 Tf -36.2239 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(, )Tj -/TT19 1 Tf -0.6433 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(, )Tj -/TT19 1 Tf -0.6433 0 TD -<00400040>Tj -/TT8 1 Tf -1.9736 0 TD -(,)Tj -/TT10 1 Tf --41.0741 -1.2222 TD -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0078 Tw -(, all commands that involve a search, e.g., )Tj -/TT10 1 Tf -18.6784 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5078 0 TD -(LC)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.5078 0 TD -(..)Tj -/TT8 1 Tf -0.5 0 TD -(, )Tj -/TT10 1 Tf -0.5078 0 TD -(BELOW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0078 Tw -(, et al and \\ and \\)Tj -/TT10 1 Tf -7.9905 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0078 Tw -[( themselves.)]TJ --35.8935 -1.2889 TD -0.2522 Tw -(One exception is that )Tj -/TT10 1 Tf -10.5694 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.2522 Tw -[( is not reset when the current edit chain is the top level)]TJ --14.17 -1.2889 TD -0 Tw -(expression, since this could always be returned to via the )Tj -/TT19 1 Tf -25.4468 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -( command.)Tj --26.0498 -2.8889 TD -0.1333 Tw -(For example, if you type )Tj -/TT10 1 Tf -11.7043 0 TD -0.32 Tw -(F COND)Tj -/TT8 1 Tf -3.9206 0 TD -0.1333 Tw -(, and then )Tj -/TT10 1 Tf -5.0621 0 TD -0.32 Tw -(F CAR)Tj -/TT8 1 Tf -3.3205 0 TD -0.1333 Tw -(, \\ would take you back to the )Tj -/TT10 1 Tf -14.6863 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --41.0941 -1.2889 TD -(Another \\ would take you back to the )Tj -/TT10 1 Tf -17.0576 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -(, etc.)Tj --20.1912 -2.5489 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -(P)Tj -/TT4 1 Tf -10 0 0 10 112.85 245.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 245.98 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0989 Tw -(Restores the edit chain to its state as of the last print operation, i.e., )Tj -/TT10 1 Tf -31.049 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5989 0 TD -(?)Tj -/TT8 1 Tf -0.6001 0 TD -0.0989 Tw -(, or )Tj -/TT10 1 Tf -1.8887 0 TD -0 Tw -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0989 Tw -[(. If the edit)]TJ --35.937 -1.2889 TD -0.1689 Tw -(chain has not changed since the last printing, \\)Tj -/TT10 1 Tf -22.0923 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1689 Tw -[( restores it to its state as of the printing)]TJ --22.6924 -1.2889 TD -0 Tw -(before that one, i.e., two chains are always saved.)Tj -0 -2.8889 TD -0.1022 Tw -(For example, if you type )Tj -/TT10 1 Tf -11.5487 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -[( followed by )]TJ -/TT10 1 Tf -6.0967 0 TD -0.2456 Tw -(3 2 1 P)Tj -/TT8 1 Tf -4.9373 0 TD -0.1022 Tw -(, \\)Tj -/TT10 1 Tf -1.2082 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -[( returns to the first )]TJ -/TT10 1 Tf -8.9935 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -(, i.e., would be)Tj --34.5848 -1.2889 TD -0.0467 Tw -(equivalent to )Tj -/TT10 1 Tf -6.1417 0 TD -0.1111 Tw -(0 0 0)Tj -/TT8 1 Tf -3.2227 0 TD -0.0467 Tw -[(. Another \\)]TJ -/TT10 1 Tf -5.4339 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0467 Tw -[( would then take you back to the second )]TJ -/TT10 1 Tf -18.4884 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0467 Tw -(, i.e., you could)Tj --34.4869 -1.2889 TD -0 Tw -(use \\)Tj -/TT10 1 Tf -2.3618 0 TD -(P)Tj -/TT8 1 Tf -0.6001 0 TD -( to flip back and forth between the two edit chains.)Tj --2.9619 -2.9556 TD -0.0533 Tw -(If you had typed )Tj -/TT10 1 Tf -7.8544 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( followed by )]TJ -/TT10 1 Tf -5.95 0 TD -0.1267 Tw -(F COND)Tj -/TT8 1 Tf -3.7273 0 TD -0.0533 Tw -(, you could use )Tj -/TT18 1 Tf -7.1689 0 TD -0 Tw -(either)Tj -/TT8 1 Tf -2.2783 0 TD -0.0533 Tw -[( \\ or \\)]TJ -/TT10 1 Tf -3.0628 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( to return to the )]TJ -/TT10 1 Tf -7.4283 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -(, i.e.,)Tj --39.2704 -1.2889 TD -0 Tw -(the action of \\ and \\)Tj -/TT10 1 Tf -9.1099 0 TD -(P)Tj -/TT8 1 Tf -0.6001 0 TD -( are independent.)Tj -/TT10 1 Tf --11.0433 -2.5489 TD -(S)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SYMBOL)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(@)Tj -/TT6 1 Tf -10 0 0 10 149.707 87.84 Tm -( )Tj -/TT4 1 Tf -0.2778 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 87.84 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Sets )Tj -/TT14 1 Tf -2.0861 0 TD -(SYMBOL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[( \(using )]TJ -/TT10 1 Tf -3.4535 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -(\) to the current expression after performing )Tj -/TT10 1 Tf -19.973 0 TD -0.1967 Tw -(\(LC . @\))Tj -/TT8 1 Tf -5.1941 0 TD -0.0822 Tw -[(. The edit)]TJ --36.7077 -1.2889 TD -0 Tw -(chain is not changed.)Tj -ET -endstream -endobj -119 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -122 0 obj -<< -/Length 6210 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-32)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -(Thus )Tj -/TT10 1 Tf -2.4739 0 TD -0.0067 Tw -(\(S FOO\))Tj -/TT8 1 Tf -4.2074 0 TD -0.0002 Tc -0.002 Tw -( will set )Tj -/TT10 1 Tf -3.6927 0 TD -0 Tc -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( to the current expression, and )Tj -/TT10 1 Tf -13.6764 0 TD -0 Tc -0.0067 Tw -(\(S FOO -1 1\))Tj -/TT8 1 Tf -7.2212 0 TD -0.0002 Tc -0.002 Tw -( will set )Tj -/TT10 1 Tf -3.6927 0 TD -0 Tc -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0003 Tc -0.0019 Tw -( to the)Tj --38.5648 -1.2889 TD -0 Tc -0 Tw -(first element in the last element of the current expression.)Tj -/TT6 1 Tf -10 0 0 10 102 515.6 Tm -(Commands That Modify Structure)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 512.89 m -558.01 512.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 490.94 Tm -(The basic structure modification commands in the editor are:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) \()Tj -/TT14 1 Tf -1.8003 0 TD -(N )Tj -/TT10 1 Tf -1.2002 0 TD -(>= 1\))Tj -/TT4 1 Tf -10 0 0 10 214.8105 468.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 468.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Deletes the corresponding element from the current expression.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5998 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5997 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 210.7509 421.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 213.5292 421.66 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N )Tj -/TT10 1 Tf -1.2002 0 TD -(>= 1\))Tj -/TT4 1 Tf -10 0 0 10 256.7362 421.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 421.66 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Replaces the )Tj -/TT18 1 Tf -5.7729 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -(th element in the current expression with )Tj -/TT14 1 Tf -18.4316 0 TD -(E)Tj -0.602 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj -/TT10 1 Tf --31.7178 -2.8822 TD -(\(-)Tj -/TT14 1 Tf -1.2002 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5997 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5997 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) \()Tj -/TT14 1 Tf -1.8003 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( >= 1\) )Tj -/TT4 1 Tf -10 0 0 10 270.1597 368.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 368.12 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Inserts )Tj -/TT14 1 Tf -3.2168 0 TD -(E)Tj -0.601 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( before the )Tj -/TT14 1 Tf -4.9224 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element in the current expression.)Tj -/TT10 1 Tf --15.4736 -2.8822 TD -(\(N)Tj -/TT6 1 Tf -10 0 0 10 160.8017 314.58 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 163.5801 314.58 Tm -(E)Tj -0.6 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... E)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 217.5809 314.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 314.58 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Attaches )Tj -/TT14 1 Tf -4.1089 0 TD -(E)Tj -0.6 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( at the end of the current expression.)Tj --13.5089 -3.2889 TD -0.0267 Tw -(As mentioned earlier: )Tj -/TT18 1 Tf -9.8905 0 TD -(all structure modification done by the editor is destructive, i.e., the editor uses )Tj -/TT10 1 Tf -31.8394 0 TD -0 Tw -(RPLACA)Tj -/TT18 1 Tf --41.7299 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9778 0 TD -(RPLACD)Tj -/TT18 1 Tf -3.6006 0 TD -0.2278 Tw -[( to physically change the structure it was given.)]TJ -/TT8 1 Tf -21.0727 0 TD -[( However, all structure modification is)]TJ --26.6511 -1.2889 TD -0 Tw -(undoable, see )Tj -/TT10 1 Tf -6.2969 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -( .)Tj --8.6973 -2.9556 TD -0.0611 Tw -(All of the above commands generate errors if the current expression is not a list, or in the case of the)Tj -0 -1.2222 TD -0.0733 Tw -(first three commands, if the list contains fewer than )Tj -/TT14 1 Tf -23.6107 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -[( elements. In addition, the command )]TJ -/TT10 1 Tf -17.2184 0 TD -0 Tw -(\(1\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0733 Tw -(, i.e.,)Tj --43.2295 -1.2889 TD -0.0178 Tw -(delete the first element, will cause an error if there is only one element, since deleting the first element)Tj -0 -1.2222 TD -0.0767 Tw -[(must be done by replacing it with the second element, and then deleting the second element. Or, to)]TJ -T* -0.2167 Tw -(look at it another way, deleting the first element when there is only one element would require)Tj -T* -0.0611 Tw -(changing a list to an atom \(i.e., to )Tj -/TT10 1 Tf -15.3483 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -[(\) which cannot be done. However, the command )]TJ -/TT10 1 Tf -22.5612 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0611 Tw -[( will)]TJ --43.3104 -1.2889 TD -0.0011 Tw -(work even if there is only one element in the current expression, since it will ascend to a point where it)Tj -/TT18 1 Tf -0 -1.2222 TD -0 Tw -(can)Tj -/TT8 1 Tf -1.4072 0 TD -( do the deletion.)Tj --1.4072 -2.8889 TD -0.0444 Tw -(If the value of )Tj -/TT10 1 Tf -6.5518 0 TD -0 Tw -(CHANGESARRAY)Tj -/TT8 1 Tf -7.2012 0 TD -0.0444 Tw -[( is a hash array, the editor will mark all structures that are changed by)]TJ --13.753 -1.2889 TD -0 Tw -(doing )Tj -/TT10 1 Tf -3.077 0 TD -(\(PUTHASH)Tj -/TT12 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.4911 0 TD -(STRUCTURE)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.4911 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.4911 0 TD -(CHANGESARRAY\))Tj -/TT8 1 Tf -7.8013 0 TD -0.2411 Tw -(, where )Tj -/TT14 1 Tf -4.0013 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.2411 Tw -[( is the name of the function. The)]TJ --28.955 -1.2889 TD -0 Tw -(algorithm used for marking is as follows: )Tj -2.6667 -2 TD -0.2233 Tw -[(1.)-1250(If the expression is inside of another expression already marked as being changed, do)]TJ -0.6667 -1.2222 TD -0 Tw -(nothing. )Tj -ET -endstream -endobj -123 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -125 0 obj -<< -/Length 8490 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-33)Tj -/TT8 1 Tf --39.6667 60.6156 TD -[(2.)-1250(If the change is an insertion of or replacement with a list, mark the list as changed. )]TJ -0 -2 TD -0.0411 Tw -[(3.)-1250(If the change is an insertion of or replacement with an atom, or a deletion, mark the parent)]TJ -0.6667 -1.2222 TD -0 Tw -(as changed.)Tj -/TT10 1 Tf --3.3333 -2.8889 TD -(CHANGESARRAY)Tj -/TT8 1 Tf -7.2012 0 TD -0.0267 Tw -[( is primarily for use by )]TJ -/TT10 1 Tf -10.4671 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0267 Tw -[( \(Chapter 26\). When the value of )]TJ -/TT10 1 Tf -15.0688 0 TD -0 Tw -(CHANGECHAR)Tj -/TT8 1 Tf --39.3382 -1.2889 TD -0.1578 Tw -(is non-)Tj -/TT10 1 Tf -3.1656 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6578 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.1578 Tw -(, when printing to a file or display terminal, prints )Tj -/TT10 1 Tf -24.0265 0 TD -0 Tw -(CHANGECHAR)Tj -/TT8 1 Tf -6.001 0 TD -0.1578 Tw -[( in the)]TJ --42.2522 -1.2889 TD -0.0644 Tw -(right margin while printing an expression marked as having been changed. )Tj -/TT10 1 Tf -34.5722 0 TD -0 Tw -(CHANGECHAR)Tj -/TT8 1 Tf -6.001 0 TD -0.0644 Tw -[( is initially)]TJ --40.5731 -1.2889 TD -0 Tw -(|.)Tj -/TT6 1 Tf -10 0 0 10 78 452.4 Tm -(Implementation)Tj -/TT18 1 Tf -9 0 0 9 108 436.74 Tm -0.0456 Tw -[(Note:)-1139.5(Since all commands that insert, replace, delete or attach structure use the same low level)]TJ -3.3333 -1.2222 TD -0 Tw -(editor functions, the remarks made here are valid for all structure changing commands.)Tj -/TT8 1 Tf --6.6667 -2 TD -0.1256 Tw -(For all replacement, insertion, and attaching at the end of a list, unless the command was typed in)Tj -0 -1.2222 TD -0.0289 Tw -(directly to the editor, )Tj -/TT18 1 Tf -9.6659 0 TD -0 Tw -(copies)Tj -/TT8 1 Tf -2.4072 0 TD -0.0289 Tw -[( of the corresponding structure are used, because of the possibility that the)]TJ --12.0731 -1.2222 TD -0.0256 Tw -[(exact same command, \(i.e., same list structure\) might be used again. Thus if a program constructs the)]TJ -T* -0 Tw -(command )Tj -/TT10 1 Tf -4.7394 0 TD -0.0989 Tw -(\(1 \(A B C\)\))Tj -/TT8 1 Tf -6.8977 0 TD -0.0411 Tw -[( e.g., via )]TJ -/TT10 1 Tf -4.0144 0 TD -0.0989 Tw -(\(LIST 1 FOO\))Tj -/TT8 1 Tf -7.399 0 TD -0.0411 Tw -[(, and gives this command to the editor, the )]TJ -/TT10 1 Tf -19.7846 0 TD -0.0989 Tw -(\(A B)Tj --42.8351 -1.2889 TD -0 Tw -(C\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0233 Tw -[( used for the replacement will )]TJ -/TT18 1 Tf -13.5838 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0233 Tw -[( be )]TJ -/TT10 1 Tf -1.5789 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0233 Tw -[( to )]TJ -/TT10 1 Tf -1.4187 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[(. You can circumvent this by using the )]TJ -/TT10 1 Tf -17.6392 0 TD -0 Tw -(I)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( command,)]TJ --40.3545 -1.2889 TD -0.0567 Tw -[(which computes the structure to be used. In the above example, the form of the command would be)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\(I 1)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FOO\))Tj -/TT8 1 Tf -2.4004 0 TD -(, which would replace the first element with the value of )Tj -/TT10 1 Tf -25.2192 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( itself.)Tj --28.737 -2.0667 TD -0.0822 Tw -[(Note:)-901.2(Some editor commands take as arguments a list of edit commands, e.g., )]TJ -/TT10 1 Tf -36.131 0 TD -0.1978 Tw -(\(LP F)Tj --32.7977 -1.2889 TD -0.2578 Tw -(FOO \(1 \(CAR FOO\)\)\))Tj -/TT8 1 Tf -11.5751 0 TD -0.1078 Tw -[(. In this case, the command )]TJ -/TT10 1 Tf -13.2286 0 TD -0.2578 Tw -(\(1 \(CAR FOO\)\))Tj -/TT8 1 Tf -8.3168 0 TD -0.1078 Tw -[( is not)]TJ --33.1205 -1.2889 TD -0.0044 Tw -(considered to have been "typed in" even though the )Tj -/TT10 1 Tf -23.1186 0 TD -0 Tw -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0002 Tc -0.0042 Tw -( command itself may have)Tj --24.3188 -1.2889 TD -0 Tc -0.2233 Tw -[(been typed in. Similarly, commands originating from macros, or commands)]TJ -0 -1.2222 TD -0.1633 Tw -(given to the editor as arguments to )Tj -/TT10 1 Tf -16.8176 0 TD -0 Tw -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6633 0 TD -(EDITV)Tj -/TT8 1 Tf -3.0005 0 TD -0.1633 Tw -(, et al, e.g., )Tj -/TT10 1 Tf -5.5347 0 TD -0.3911 Tw -(EDITF\(FOO F)Tj --29.0166 -1.2889 TD -0 Tw -(COND \(N --\)\))Tj -/TT8 1 Tf -7.2012 0 TD -( are not considered typed in.)Tj --13.8678 -2.0667 TD -0.2267 Tw -(The rest of this section is included for applications wherein the editor is used to modify a data)Tj -0 -1.2222 TD -0.2633 Tw -[(structure, and pointers into that data structure are stored elsewhere. In these cases, the actual)]TJ -T* -0.2967 Tw -(mechanics of structure modification must be known in order to predict the effect that various)Tj -T* -0.0222 Tw -[(commands may have on these outside pointers. For example, if the value of )]TJ -/TT10 1 Tf -34.1641 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -[( is )]TJ -/TT10 1 Tf -1.2593 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -[( of the current)]TJ --39.024 -1.2889 TD -0 Tw -(expression, what will the commands )Tj -/TT10 1 Tf -16.4453 0 TD -(\(2\))Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(3\))Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(2 X Y Z\))Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(-2 X Y Z\))Tj -/TT8 1 Tf -6.001 0 TD -(, etc. do to )Tj -/TT10 1 Tf -4.7778 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(?)Tj --39.5259 -2.0667 TD -0.1233 Tw -(Deletion of the first element in the current expression is performed by replacing it with the second)Tj -0 -1.2222 TD -0.0067 Tw -[(element and deleting the second element by patching around it. Deletion of any other element is done)]TJ -T* -0.1278 Tw -[(by patching around it, i.e., the previous tail is altered. Thus if )]TJ -/TT10 1 Tf -29.1177 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1278 Tw -[( is )]TJ -/TT10 1 Tf -1.4704 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.1278 Tw -[( to the current expression)]TJ --33.5885 -1.2889 TD -0.0033 Tw -(which is )Tj -/TT10 1 Tf -3.9544 0 TD -0.0089 Tw -(\(A B C D\))Tj -/TT8 1 Tf -5.4275 0 TD -0.0033 Tw -(, and )Tj -/TT10 1 Tf -2.4495 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0008 Tc -0.0025 Tw -( is )Tj -/TT10 1 Tf -1.2215 0 TD -0 Tc -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0008 Tc -0.0025 Tw -( of )Tj -/TT10 1 Tf -1.3856 0 TD -0 Tc -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0033 Tw -(, after executing the command )Tj -/TT10 1 Tf -13.6617 0 TD -0 Tw -(\(1\))Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5033 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0004 Tc -0.0029 Tw -( will be )Tj -/TT10 1 Tf -3.4993 0 TD -0 Tc -0.0089 Tw -(\(B C D\))Tj -/TT8 1 Tf --41.1043 -1.2889 TD -0.0356 Tw -(\(which is )Tj -/TT10 1 Tf -4.3519 0 TD -0 Tw -(EQUAL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0356 Tw -[( but not )]TJ -/TT10 1 Tf -3.7932 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0356 Tw -[( to )]TJ -/TT10 1 Tf -1.4432 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0356 Tw -[(\). However, under the same initial conditions, after executing )]TJ -/TT10 1 Tf -27.9356 0 TD -0 Tw -(\(2\))Tj --43.5249 -1.2889 TD -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0756 Tw -[( will be unchanged, i.e., )]TJ -/TT10 1 Tf -11.076 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0756 Tw -[( will still be )]TJ -/TT10 1 Tf -5.6645 0 TD -0.1822 Tw -(\(B C D\))Tj -/TT8 1 Tf -4.5651 0 TD -0.0756 Tw -[( even though the current expression and )]TJ -/TT10 1 Tf -18.6202 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf --43.5265 -1.2889 TD -(are now )Tj -/TT10 1 Tf -3.8359 0 TD -(\(A C D\))Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --8.0366 -2.0667 TD -0.0211 Tw -(A general solution of the problem isnt possible, as it would require being able to make two lists )Tj -/TT10 1 Tf -42.9874 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0211 Tw -[( to)]TJ --44.1876 -1.2889 TD -0.13 Tw -[(each other that were originally different. Thus if )]TJ -/TT10 1 Tf -22.8985 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.13 Tw -[( is )]TJ -/TT10 1 Tf -1.4748 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.13 Tw -[( of the current expression, and )]TJ -/TT10 1 Tf -14.4499 0 TD -0 Tw -(FUM)Tj -/TT8 1 Tf -1.8003 0 TD -0.13 Tw -[( is)]TJ -/TT10 1 Tf --44.2242 -1.2889 TD -0 Tw -(CDDR)Tj -/TT8 1 Tf -2.4004 0 TD -0.2722 Tw -[( of the current expression, performing )]TJ -/TT10 1 Tf -18.6714 0 TD -0 Tw -(\(2\))Tj -/TT8 1 Tf -1.8003 0 TD -0.2722 Tw -[( would have to make )]TJ -/TT10 1 Tf -10.9119 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.2722 Tw -[( be )]TJ -/TT10 1 Tf -2.0767 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.2722 Tw -[( to )]TJ -/TT10 1 Tf -1.9165 0 TD -0 Tw -(FUM)Tj -/TT8 1 Tf -1.8003 0 TD -0.2722 Tw -[( if all)]TJ --42.578 -1.2889 TD -0 Tw -(subsequent operations were to update both )Tj -/TT10 1 Tf -19.4097 0 TD -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(FUM)Tj -/TT8 1 Tf -1.8003 0 TD -( correctly.)Tj -ET -endstream -endobj -126 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -128 0 obj -<< -/Length 8354 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-34)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.5044 Tw -(Both replacement and insertion are accomplished by smashing both )Tj -/TT10 1 Tf -34.7505 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.5044 Tw -[( and )]TJ -/TT10 1 Tf -3.2018 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.5044 Tw -[( of the)]TJ --41.5528 -1.2889 TD -0.0578 Tw -[(corresponding tail. Thus, if )]TJ -/TT10 1 Tf -12.7445 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0578 Tw -[( were )]TJ -/TT10 1 Tf -2.8026 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0578 Tw -[( to the current expression, )]TJ -/TT10 1 Tf -12.0091 0 TD -0.1378 Tw -(\(A B C D\))Tj -/TT8 1 Tf -5.8142 0 TD -0.0578 Tw -(, after )Tj -/TT10 1 Tf -2.8988 0 TD -0.1378 Tw -(\(1 X Y Z\))Tj -/TT8 1 Tf -5.8142 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --45.0838 -1.2889 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( would be )]TJ -/TT10 1 Tf -4.8337 0 TD -0.1344 Tw -(\(X Y Z B C D\))Tj -/TT8 1 Tf -8.4735 0 TD -0.0556 Tw -[(. Similarly, if )]TJ -/TT10 1 Tf -6.3692 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( were )]TJ -/TT10 1 Tf -2.7981 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.0556 Tw -[( to the current expression, )]TJ -/TT10 1 Tf -11.998 0 TD -0.1344 Tw -(\(A B C D\))Tj -/TT8 1 Tf -5.8042 0 TD -0 Tw -(,)Tj --45.0775 -1.2889 TD -(then after )Tj -/TT10 1 Tf -4.5024 0 TD -(\(-1 X Y Z\), FOO)Tj -/TT8 1 Tf -9.0015 0 TD -( would be )Tj -/TT10 1 Tf -4.667 0 TD -(\(X Y Z A B C D\))Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj --27.1724 -2.0667 TD -(The )Tj -/TT10 1 Tf -1.936 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[( command is accomplished by smashing the last )]TJ -/TT10 1 Tf -21.6354 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[( of the current expression a la )]TJ -/TT10 1 Tf -13.3536 0 TD -0 Tw -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[(. Thus)]TJ --42.3259 -1.2889 TD -0 Tw -(if )Tj -/TT10 1 Tf -0.894 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.02 Tw -[( were )]TJ -/TT10 1 Tf -2.727 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.02 Tw -[( to any tail of the current expression, after executing an )]TJ -/TT10 1 Tf -24.7571 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( command, the corresponding)]TJ --31.9787 -1.2889 TD -0 Tw -(expressions would also appear at the end of )Tj -/TT10 1 Tf -19.6465 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --21.4468 -2.0667 TD -0.0689 Tw -(In summary, the only situation in which an edit operation will )Tj -/TT18 1 Tf -28.54 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0689 Tw -[( change an external pointer occurs)]TJ --29.873 -1.2222 TD -0.1656 Tw -(when the external pointer is to a )Tj -/TT18 1 Tf -15.6486 0 TD -(proper tail)Tj -/TT8 1 Tf -4.3594 0 TD -[( of the data structure, i.e., to )]TJ -/TT10 1 Tf -13.7492 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1656 Tw -[( of some node in the)]TJ --35.5576 -1.2889 TD -0.0589 Tw -[(structure, and the operation is deletion. If all external pointers are to )]TJ -/TT18 1 Tf -31.3871 0 TD -0 Tw -(elements)Tj -/TT8 1 Tf -3.5015 0 TD -0.0589 Tw -[( of the structure, i.e., to)]TJ -/TT10 1 Tf --34.8886 -1.2222 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.31 Tw -[( of some node, or if only insertions, replacements, or attachments are performed, the edit)]TJ --1.8003 -1.2889 TD -0 Tw -(operation will )Tj -/TT18 1 Tf -6.4731 0 TD -(always)Tj -/TT8 1 Tf -2.7769 0 TD -( have the same effect on an external pointer as it does on the current expression.)Tj -/TT6 1 Tf -10 0 0 10 126 401.8 Tm -(The A, B, and : Commands)Tj -/TT8 1 Tf -9 0 0 9 126 386.14 Tm -0.0667 Tw -(In the )Tj -/TT10 1 Tf -2.9395 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5667 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.7601 0 TD -(E)Tj -0.5988 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.16 Tw -[( ... )]TJ -/TT14 1 Tf -3.3205 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -(, and )Tj -/TT10 1 Tf -2.5762 0 TD -0 Tw -(\(-)Tj -/TT14 1 Tf -1.2002 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.7601 0 TD -(E)Tj -0.6 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.16 Tw -[( ... )]TJ -/TT14 1 Tf -3.3205 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( commands, the sign of the integer is used to)]TJ --25.0423 -1.6222 TD -0.2156 Tw -[(indicate the operation. As a result, there is no direct way to express insertion after a particular)]TJ -0 -1.2222 TD -0.1356 Tw -(element \(hence the necessity for a separate )Tj -/TT10 1 Tf -19.987 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1356 Tw -[( command\). Similarly, you cannot specify deletion or)]TJ --20.5871 -1.2889 TD -0.0622 Tw -(replacement of the )Tj -/TT14 1 Tf -8.6618 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -(th element from the end of a list without first converting )Tj -/TT14 1 Tf -25.8319 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( to the corresponding)]TJ --35.6939 -1.2889 TD -0 Tw -(positive integer. Accordingly, we have:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(B)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5998 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... E)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 217.0509 315 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 315 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Inserts )Tj -/TT14 1 Tf -3.2168 0 TD -(E)Tj -0.601 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0022 0 TD -(E)Tj -0.6 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( before the current expression. Equivalent to )Tj -/TT10 1 Tf -20.0635 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(\(-1)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.6004 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ...)Tj -/TT14 1 Tf --38.9244 -1.6222 TD -(E)Tj -0.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --1.8001 -3.2889 TD -0.0633 Tw -(For example, to insert )Tj -/TT10 1 Tf -10.1186 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( before the last element in the current expression, perform )]TJ -/TT12 1 Tf -26.4688 0 TD -0 Tw -(-)Tj -/TT10 1 Tf -0.333 0 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -0.0633 Tw -[( and)]TJ --39.3208 -1.2889 TD -0 Tw -(then )Tj -/TT10 1 Tf -2.2192 0 TD -(\(B FOO\))Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --7.7533 -2.5489 TD -(\(A)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5998 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... E)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 222.4517 208.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 208.66 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Inserts )Tj -/TT14 1 Tf -3.2546 0 TD -(E)Tj -0.601 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0911 Tw -[( ... )]TJ -/TT14 1 Tf -3.1827 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0378 Tw -[( after the current expression. Equivalent to )]TJ -/TT10 1 Tf -19.6137 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0378 Tw -[( followed by )]TJ -/TT10 1 Tf -5.9034 0 TD -0 Tw -(\(-2)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.2878 0 TD -(E)Tj -0.6002 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0911 Tw -[( ...)]TJ -/TT14 1 Tf --38.8433 -1.6222 TD -0 Tw -(E)Tj -0.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(\(N)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5999 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, whichever is appropriate.)Tj -/TT10 1 Tf --12.0245 -2.7333 TD -(\(:)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5998 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... E)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT8 1 Tf -27.4056 0 TD -([Editor Command])Tj --32.9222 -3.0667 TD -0.0678 Tw -(Replaces the current expression by )Tj -/TT14 1 Tf -15.9322 0 TD -0 Tw -(E)Tj -0.6023 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.1622 Tw -[( ... )]TJ -/TT14 1 Tf -3.3249 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0678 Tw -[(. Equivalent to )]TJ -/TT10 1 Tf -7.2013 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0678 Tw -[( followed by )]TJ -/TT10 1 Tf -5.9934 0 TD -0 Tw -(\(1)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.3178 0 TD -(E)Tj -0.5983 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.1622 Tw -[( ...)]TJ -/TT14 1 Tf --38.77 -1.6222 TD -0 Tw -(E)Tj -0.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -129 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -131 0 obj -<< -/Length 7407 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-35)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(DELETE)Tj -/TT4 1 Tf -10 0 0 10 134.4 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 568.2 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.2155 TD -(\(:\) )Tj -/TT4 1 Tf -10 0 0 10 123.6035 557.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 557.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Deletes the current expression.)Tj -/TT10 1 Tf -0 -2.8889 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[( first tries to delete the current expression by performing an )]TJ -/TT10 1 Tf -26.7918 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.02 Tw -[( and then a )]TJ -/TT10 1 Tf -5.2421 0 TD -0 Tw -(\(1\))Tj -/TT8 1 Tf -1.8003 0 TD -0.02 Tw -[(. This)]TJ --38.635 -1.2889 TD -0.0722 Tw -[(works in most cases. However, if after performing )]TJ -/TT10 1 Tf -23.3253 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0722 Tw -(, the new current expression contains)Tj --24.5255 -1.2889 TD -0.2056 Tw -(only one element, the command )Tj -/TT10 1 Tf -15.4643 0 TD -0 Tw -(\(1\))Tj -/TT8 1 Tf -1.8003 0 TD -0.2056 Tw -[( will not work. Therefore, )]TJ -/TT10 1 Tf -13.0263 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2056 Tw -[( starts over and)]TJ --33.8915 -1.2889 TD -0.1211 Tw -(performs a )Tj -/TT10 1 Tf -5.2979 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.1211 Tw -(, followed by )Tj -/TT10 1 Tf -6.4034 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1211 Tw -(, followed by )Tj -/TT10 1 Tf -6.4034 0 TD -0 Tw -(\(2\))Tj -/TT8 1 Tf -1.8003 0 TD -0.1211 Tw -(. For example, if the current expression is)Tj -/TT10 1 Tf --22.3053 -1.2889 TD -0.0756 Tw -(\(COND \(\(MEMB X Y\)\) \(T Y\)\))Tj -/TT8 1 Tf -15.3802 0 TD -0.0311 Tw -(, and you perform )Tj -/TT10 1 Tf -8.4042 0 TD -0 Tw -(-1)Tj -/TT8 1 Tf -1.2002 0 TD -0.0311 Tw -(, and then )Tj -/TT10 1 Tf -4.7554 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -(, the)Tj -/TT10 1 Tf -1.9183 0 TD -0.0756 Tw -[( BK-UP-\(2\))]TJ -/TT8 1 Tf --35.259 -1.2889 TD -0 Tw -(method is used, and the new current expression will be )Tj -/TT10 1 Tf -24.6836 0 TD -(... \(\(MEMB X Y\)\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(.)Tj --34.8853 -2.9556 TD -0.0933 Tw -(However, if the next higher expression contains only one element, )Tj -/TT10 1 Tf -30.3957 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0933 Tw -[( will not work. So in)]TJ --31.5959 -1.2889 TD -0.0044 Tw -(this case, )Tj -/TT10 1 Tf -4.2286 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0004 Tc -0.004 Tw -( performs )Tj -/TT10 1 Tf -4.5646 0 TD -0 Tc -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0044 Tw -(, followed by )Tj -/TT10 1 Tf -6.0534 0 TD -0.0111 Tw -(\(: NIL\))Tj -/TT8 1 Tf -4.2118 0 TD -0.0044 Tw -(, i.e., it )Tj -/TT18 1 Tf -3.1505 0 TD -0 Tw -(replaces)Tj -/TT8 1 Tf -3.1855 0 TD -0.0002 Tc -0.0042 Tw -( the higher expression by)Tj -/TT10 1 Tf --30.1952 -1.2889 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0844 Tw -[(. For example, if the current expression is )]TJ -/TT10 1 Tf -19.4431 0 TD -0.2033 Tw -(\(COND \(\(MEMB X Y\)\) \(T Y\)\))Tj -/TT8 1 Tf -16.0191 0 TD -0.0844 Tw -[( and you)]TJ --37.2625 -1.2889 TD -0 Tw -(perform )Tj -/TT10 1 Tf -3.9518 0 TD -0.1689 Tw -(F MEMB)Tj -/TT8 1 Tf -3.7695 0 TD -0.07 Tw -[( and then )]TJ -/TT10 1 Tf -4.6221 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.07 Tw -(, the new current expression will be )Tj -/TT10 1 Tf -16.4724 0 TD -0.1689 Tw -(... NIL \(T Y\)\))Tj -/TT8 1 Tf --32.4164 -1.2889 TD -0.0033 Tw -(and the original expression would now be )Tj -/TT10 1 Tf -18.9213 0 TD -0.0078 Tw -(\(COND NIL \(T Y\)\))Tj -/TT8 1 Tf -9.6249 0 TD -0.0001 Tc -0.0032 Tw -(. The rationale behind this is)Tj --28.5462 -1.2889 TD -0 Tc -0.0311 Tw -(that deleting )Tj -/TT10 1 Tf -5.9118 0 TD -0.0744 Tw -(\(MEMB X Y\))Tj -/TT8 1 Tf -6.1499 0 TD -0.0311 Tw -[( from )]TJ -/TT10 1 Tf -2.719 0 TD -0.0744 Tw -(\(\(MEMB X Y\)\))Tj -/TT8 1 Tf -7.3501 0 TD -0.0311 Tw -[( changes a list of one element to a list of no)]TJ --22.1307 -1.2889 TD -0 Tw -(elements, i.e., )Tj -/TT10 1 Tf -6.2129 0 TD -(\(\))Tj -/TT8 1 Tf -1.2002 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --10.6543 -2.9556 TD -0.1867 Tw -(If the current expression is a tail, then )Tj -/TT10 1 Tf -18.3537 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6867 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.6867 0 TD -(:)Tj -/TT8 1 Tf -0.25 0 TD -0.1867 Tw -(, and )Tj -/TT10 1 Tf -2.8162 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1867 Tw -[( all work exactly the same as)]TJ --27.594 -1.2889 TD -0.2967 Tw -[(though the current expression were the first element in that tail. Thus if the current)]TJ -0 -1.2222 TD -0.0356 Tw -(expression were )Tj -/TT10 1 Tf -7.4949 0 TD -0.0856 Tw -(... \(PRINT Y\) \(PRINT Z\)\), \(B \(PRINT X\)\))Tj -/TT8 1 Tf -24.0027 0 TD -0.0356 Tw -[( would insert )]TJ -/TT10 1 Tf -6.2385 0 TD -0 Tw -(\(PRINT)Tj --37.7361 -1.2889 TD -(X\))Tj -/TT8 1 Tf -1.2002 0 TD -0.2211 Tw -[( before )]TJ -/TT10 1 Tf -3.7274 0 TD -0.53 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.9309 0 TD -0.2211 Tw -(, leaving the current expression )Tj -/TT10 1 Tf -15.2179 0 TD -0 Tw -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.4711 0 TD -0.53 Tw -(\(PRINT X\) \(PRINT Y\))Tj --28.3477 -1.2889 TD -0 Tw -(\(PRINT Z\)\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --10.001 -2.0667 TD -(The following forms of the )Tj -/TT10 1 Tf -12.0405 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(, and )Tj -/TT12 1 Tf -2.4429 0 TD -(:)Tj -/TT8 1 Tf -0.25 0 TD -( commands incorporate a location specification:)Tj -/TT10 1 Tf --13.7669 -2.5489 TD -(\(INSERT)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5993 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(BEFORE . @\))Tj -/TT4 1 Tf -10 0 0 10 252.3096 238.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 238.52 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -3.0667 TD -(\(@)Tj -/TT8 1 Tf -1.2002 0 TD -0.0278 Tw -[( is )]TJ -/TT10 1 Tf -1.2704 0 TD -0.0678 Tw -(\(CDR \(MEMBER BEFORE)Tj -/TT12 1 Tf -12.1375 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.2778 0 TD -(COMMAND)Tj -/TT10 1 Tf -4.2007 0 TD -(\)\)\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -[( Similar to )]TJ -/TT10 1 Tf -5.159 0 TD -0.0678 Tw -(\(LC .@\))Tj -/TT8 1 Tf -4.2685 0 TD -0.0278 Tw -[( followed by )]TJ -/TT10 1 Tf -5.8734 0 TD -0 Tw -(\(B)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.2778 0 TD -(E)Tj -0.5966 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0678 Tw -[( ...)]TJ -/TT14 1 Tf --38.8622 -1.6222 TD -0 Tw -(E)Tj -0.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -2.1999 -2.4 TD -[(Warning:)-1177.1(If )]TJ -/TT10 1 Tf -6.4799 0 TD -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.2267 Tw -[( causes an error, the location process does )]TJ -/TT18 1 Tf -20.514 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.2267 Tw -[( continue as)]TJ --25.5937 -1.2889 TD -0.0556 Tw -[(described above. For example, if )]TJ -/TT10 1 Tf -15.1331 0 TD -0.1322 Tw -(@ = \(COND 3\))Tj -/TT8 1 Tf -7.5978 0 TD -0.0556 Tw -[( and the next )]TJ -/TT10 1 Tf -6.2056 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf --28.9366 -1.2889 TD -0.1056 Tw -(does not have a thirdelement, the search stops and the )Tj -/TT10 1 Tf -25.2811 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1056 Tw -[( fails.)]TJ --28.8817 -1.2889 TD -0.2144 Tw -(You can always write )Tj -/TT10 1 Tf -10.6298 0 TD -0.5156 Tw -(\(LC COND 3\))Tj -/TT8 1 Tf -7.6322 0 TD -0.2144 Tw -[( if you intend the search to)]TJ --18.2619 -1.2889 TD -0 Tw -(continue.)Tj -/TT10 1 Tf -2 -1.9333 TD -(*P)Tj -0 -1 TD -(\(PROG \(& & X\) **COMMENT** \(SELECTQ ATM & NIL\) \(OR &)Tj -T* -(&\) \(PRIN1 & T\))Tj -T* -(\(PRIN1 & T\) \(SETQ X & )Tj -0 -2 TD -(*\(INSERT LABEL BEFORE PRIN1\))Tj -0 -1 TD -(*P)Tj -ET -endstream -endobj -132 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -134 0 obj -<< -/Length 5810 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-36)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 246 570.14 Tm -(\(PROG \(& & X\) **COMMENT** \(SELECTQ ATM & NIL\) \(OR &)Tj -0 -1 TD -(&\) LABEL)Tj -0 -1.0667 TD -(\(PRIN1 & T\) \( )Tj -/TT18 1 Tf -11.4019 0 TD -(user typed Control-E)Tj -/TT10 1 Tf --11.4019 -2 TD -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.2433 Tw -(Current edit chain is not changed, but )Tj -/TT10 1 Tf -18.7038 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.2433 Tw -[( is set to the edit chain after the )]TJ -/TT10 1 Tf -16.1695 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.2433 Tw -[( was)]TJ --39.074 -1.2889 TD -0 Tw -(performed, i.e., \\ will make the edit chain be that chain where the insertion was performed.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(INSERT)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5993 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(AFTER . @\) )Tj -/TT4 1 Tf -10 0 0 10 300.3097 475 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 475 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(INSERT BEFORE)Tj -/TT8 1 Tf -7.8013 0 TD -( except uses )Tj -/TT10 1 Tf -5.5249 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --25.2494 -2.5489 TD -(\(INSERT)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5993 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FOR . @\) )Tj -/TT4 1 Tf -10 0 0 10 289.5079 424.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 424.46 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(INSERT BEFORE)Tj -/TT8 1 Tf -7.8013 0 TD -( except uses )Tj -/TT10 1 Tf -5.5249 0 TD -(:)Tj -/TT8 1 Tf -0.6001 0 TD -( for )Tj -/TT10 1 Tf -1.7739 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --22.1815 -2.5489 TD -(\(REPLACE @ BY)Tj -/TT8 1 Tf -7.8013 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5987 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 276.4508 373.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 373.92 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.5489 TD -(\(REPLACE @ WITH)Tj -/TT8 1 Tf -9.0015 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5985 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 292.6517 359.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 359.98 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Here )Tj -/TT10 1 Tf -2.5228 0 TD -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( is the )]TJ -/TT18 1 Tf -3.1154 0 TD -0 Tw -(segment)Tj -/TT8 1 Tf -3.3345 0 TD -0.0878 Tw -[( of the command between )]TJ -/TT10 1 Tf -12.1357 0 TD -0 Tw -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0878 Tw -[( and )]TJ -/TT10 1 Tf -2.3684 0 TD -0 Tw -(WITH)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[(. Same as )]TJ -/TT10 1 Tf -4.9117 0 TD -0 Tw -(\(INSERT)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.3378 0 TD -(E)Tj -0.5997 -0.3333 TD -(1)Tj -/TT10 1 Tf --40.7278 -1.2889 TD -(... )Tj -/TT14 1 Tf -2.4004 0 TD -(E)Tj -0.5996 -0.3333 TD -(M)Tj -/TT12 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FOR . @\))Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --8.6508 -3.2889 TD -(Example: )Tj -/TT10 1 Tf -4.3809 0 TD -(\(REPLACE COND -1 WITH \(T \(RETURN L\)\)\))Tj --5.7142 -2.5489 TD -(\(CHANGE @ TO)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.5988 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 276.4517 265.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 265.24 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(REPLACE WITH)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --12.3451 -2.4 TD -(\(DELETE . @\) )Tj -/TT8 1 Tf -34.2556 0 TD -([Editor Command])Tj --32.9222 -2.7333 TD -0.0133 Tw -(Does a )Tj -/TT10 1 Tf -3.2493 0 TD -0.0322 Tw -(\(LC . @\))Tj -/TT8 1 Tf -4.8652 0 TD -0.0133 Tw -[( followed by )]TJ -/TT10 1 Tf -5.83 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0133 Tw -[( \(see warning about )]TJ -/TT10 1 Tf -9.0367 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0133 Tw -[( above\). The current edit)]TJ --30.1825 -1.2889 TD -0 Tw -(chain is not changed, but )Tj -/TT10 1 Tf -11.3042 0 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to the edit chain after the )Tj -/TT10 1 Tf -13.9795 0 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -( was performed.)Tj --28.4849 -2.0667 TD -0.0489 Tw -[(Note:)-901.2(The edit chain will be changed if the current expression is no longer a)]TJ -3.3333 -1.2222 TD -0.1611 Tw -(part of the expression being edited, e.g., if the current expression is)Tj -/TT10 1 Tf -T* -0.1511 Tw -(... C\))Tj -/TT8 1 Tf -3.7517 0 TD -0.0633 Tw -[( and you perform )]TJ -/TT10 1 Tf -8.2831 0 TD -0.1511 Tw -(\(DELETE 1\))Tj -/TT8 1 Tf -6.1521 0 TD -0.0633 Tw -(, the tail, )Tj -/TT10 1 Tf -4.2354 0 TD -0 Tw -(\(C\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -(, will have been)Tj --24.2226 -1.2889 TD -0.2767 Tw -(cut off. Similarly, if the current expression is )Tj -/TT10 1 Tf -22.0083 0 TD -0.6656 Tw -(\(CDR Y\))Tj -/TT8 1 Tf -4.8662 0 TD -0.2767 Tw -[( and you)]TJ --26.8745 -1.2889 TD -0 Tw -(perform )Tj -/TT10 1 Tf -3.8818 0 TD -(\(REPLACE WITH \(CAR X\)\))Tj -/TT8 1 Tf -13.2021 0 TD -(.)Tj --24.4173 -2.9556 TD -(Example: )Tj -/TT10 1 Tf -4.3809 0 TD -(\(DELETE -1\), \(DELETE COND 3\))Tj -/TT18 1 Tf --0.3809 -2.0667 TD -[(Note:)-1139.5(If )]TJ -/TT10 1 Tf -4.372 0 TD -(@)Tj -/TT18 1 Tf -0.6001 0 TD -0.1778 Tw -[( is )]TJ -/TT10 1 Tf -1.5225 0 TD -0 Tw -(NIL)Tj -/TT18 1 Tf -1.8003 0 TD -0.1778 Tw -[( \(i.e., empty\), the corresponding operation is performed on the)]TJ --4.9616 -1.2889 TD -0 Tw -(current edit chain.)Tj -ET -endstream -endobj -135 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -137 0 obj -<< -/Length 10096 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-37)Tj -/TT8 1 Tf --31 60.6156 TD -0.0433 Tw -(For example, )Tj -/TT10 1 Tf -6.0828 0 TD -0.1044 Tw -(\(REPLACE WITH \(CAR X\)\))Tj -/TT8 1 Tf -13.5155 0 TD -0.0433 Tw -[( is equivalent to )]TJ -/TT10 1 Tf -7.4365 0 TD -0.1044 Tw -(\(: \(CAR)Tj --27.0348 -1.2889 TD -0 Tw -(X\)\))Tj -/TT8 1 Tf -1.8003 0 TD -0.1933 Tw -[(. For added readability, )]TJ -/TT10 1 Tf -11.8187 0 TD -0 Tw -(HERE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1933 Tw -[( is also permitted, e.g., )]TJ -/TT10 1 Tf -11.1185 0 TD -0 Tw -(\(INSERT)Tj --27.1379 -1.2889 TD -0.51 Tw -(\(PRINT X\) BEFORE HERE\))Tj -/TT8 1 Tf -14.7322 0 TD -0.2122 Tw -[( will insert )]TJ -/TT10 1 Tf -5.5908 0 TD -0.51 Tw -(\(PRINT X\))Tj -/TT8 1 Tf -5.9109 0 TD -0.2122 Tw -[( before the)]TJ --26.2338 -1.2889 TD -0 Tw -(current expression \(but not change the edit chain\).)Tj -/TT18 1 Tf --3.3333 -2 TD -(Note:)Tj -/TT10 1 Tf -3.3333 0 TD -(@)Tj -/TT18 1 Tf -0.6001 0 TD -0.08 Tw -[( does not have to specify a location within the current expression, i.e., it is)]TJ --0.6001 -1.2889 TD -0 Tw -(perfectly legal to ascend to )Tj -/TT10 1 Tf -10.8413 0 TD -(INSERT)Tj -/TT18 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(REPLACE)Tj -/TT18 1 Tf -4.2007 0 TD -(, or )Tj -/TT10 1 Tf -1.583 0 TD -(DELETE)Tj -/TT8 1 Tf --20.7256 -2.0667 TD -0.0656 Tw -(For example, )Tj -/TT10 1 Tf -6.1272 0 TD -0.1567 Tw -(\(INSERT \(RETURN\) AFTER ^ PROG -1\))Tj -/TT8 1 Tf -20.5866 0 TD -0.0656 Tw -[( will go to)]TJ --26.7138 -1.2889 TD -0.0478 Tw -(the top, find the first )Tj -/TT10 1 Tf -9.5724 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -(, and insert a )Tj -/TT10 1 Tf -6.1311 0 TD -0 Tw -(\(RETURN\))Tj -/TT8 1 Tf -4.8008 0 TD -0.0478 Tw -[( at its end, and not)]TJ --22.9046 -1.2889 TD -0 Tw -(change the current edit chain.)Tj --7.3333 -2.8889 TD -(The )Tj -/TT10 1 Tf -1.9527 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5289 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -(, and )Tj -/TT10 1 Tf -2.5006 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -[( commands, commands, \(and consequently )]TJ -/TT10 1 Tf -19.5365 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5289 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0289 Tw -(, and )Tj -/TT10 1 Tf -2.5006 0 TD -0 Tw -(CHANGE)Tj -/TT8 1 Tf -3.6006 0 TD -(\),)Tj --40.7505 -1.2889 TD -0.0044 Tw -(all make special checks in )Tj -/TT14 1 Tf -11.6038 0 TD -0 Tw -(E)Tj -0.6029 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0007 Tc -0.0037 Tw -( thru )Tj -/TT14 1 Tf -2.4151 0 TD -0 Tc -0 Tw -(E)Tj -0.6004 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0002 Tc -0.0042 Tw -( for expressions of the form )Tj -/TT10 1 Tf -12.3841 0 TD -0 Tc -0.01 Tw -(\(## . )Tj -/TT14 1 Tf -3.6206 0 TD -0 Tw -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0003 Tc -0.0041 Tw -(. In this case,)Tj --35.4274 -1.6222 TD -0 Tc -0.2844 Tw -(the expression used for inserting or replacing is a )Tj -/TT18 1 Tf -24.5458 0 TD -0 Tw -(copy)Tj -/TT8 1 Tf -1.8511 0 TD -0.2844 Tw -[( of the current expression after)]TJ --26.3969 -1.2222 TD -0 Tw -(executing )Tj -/TT14 1 Tf -4.5819 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0555 Tw -(, a list of edit commands \(the execution of )Tj -/TT14 1 Tf -19.1553 0 TD -0 Tw -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0556 Tw -[( does not change the current)]TJ --28.538 -1.2889 TD -0.0378 Tw -[(edit chain\). For example, )]TJ -/TT10 1 Tf -11.6239 0 TD -0.09 Tw -(\(INSERT \(## F)Tj -/TT12 1 Tf -7.9813 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2878 0 TD -0.09 Tw -(COND -1 -1\) AFTER 3\))Tj -/TT8 1 Tf -12.3619 0 TD -0.0378 Tw -[( will make a copy of)]TJ --32.2549 -1.2889 TD -0.1011 Tw -(the last form in the last clause of the next )Tj -/TT10 1 Tf -19.3075 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1011 Tw -(, and insert it after the third element of the)Tj --21.7079 -1.2889 TD -0.1333 Tw -[(current expression. Note that this is not the same as )]TJ -/TT10 1 Tf -24.7328 0 TD -0.32 Tw -(\(INSERT F COND -1 \(## -1\))Tj --24.7328 -1.2889 TD -0.1044 Tw -(AFTER 3\))Tj -/TT8 1 Tf -4.9052 0 TD -0.0433 Tw -(, which inserts four elements after the third element, namely )Tj -/TT10 1 Tf -27.3425 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5433 0 TD -0.1044 Tw -(COND, -1)Tj -/TT8 1 Tf -4.9052 0 TD -0.0433 Tw -(, and a)Tj --38.2964 -1.2889 TD -0 Tw -(copy of the last element in the current expression.)Tj -/TT6 1 Tf -10 0 0 10 78 314.8 Tm -(Form Oriented Editing and the Role of UP)Tj -/TT8 1 Tf -9 0 0 9 78 299.14 Tm -(The )Tj -/TT10 1 Tf -1.9594 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0356 Tw -[( that is performed before )]TJ -/TT10 1 Tf -11.3838 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5356 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -(, and )Tj -/TT10 1 Tf -2.514 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -[( commands \(and therefore in )]TJ -/TT10 1 Tf -13.2129 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5356 0 TD -(CHANGE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5356 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj --45.0791 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0229 0 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( commands after the location portion of the operation has been performed\) makes these)]TJ --5.6235 -1.2889 TD -0.0833 Tw -[(operations form-oriented. For example, if you type )]TJ -/TT10 1 Tf -23.5929 0 TD -0.1989 Tw -(F SETQ)Tj -/TT8 1 Tf -3.7995 0 TD -0.0833 Tw -(, and then )Tj -/TT10 1 Tf -4.9121 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0833 Tw -(, or simply )Tj -/TT10 1 Tf -5.2368 0 TD -0 Tw -(\(DELETE)Tj --41.1419 -1.2889 TD -(SETQ\))Tj -/TT8 1 Tf -3.0005 0 TD -0.0022 Tw -(, you will delete the entire )Tj -/TT10 1 Tf -11.7799 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -( expression, whereas )Tj -/TT10 1 Tf -9.4364 0 TD -0 Tc -0.0056 Tw -(\(DELETE X\))Tj -/TT8 1 Tf -6.0065 0 TD -0.0006 Tc -0.0016 Tw -( if )Tj -/TT10 1 Tf -1.1285 0 TD -0 Tc -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0001 Tc -0.0021 Tw -( is a variable, deletes just)Tj --34.3523 -1.2889 TD -0 Tc -0.03 Tw -(the variable )Tj -/TT10 1 Tf -5.5214 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[(. In both cases, the operation is performed on the corresponding )]TJ -/TT18 1 Tf -29.1134 0 TD -0 Tw -(form)Tj -/TT8 1 Tf -1.8887 0 TD -0.03 Tw -(, and in both cases)Tj --37.1236 -1.2889 TD -0.0289 Tw -[(is probably what you intended. Similarly, if you type )]TJ -/TT10 1 Tf -24.222 0 TD -0.07 Tw -(\(INSERT \(RETURN Y\) BEFORE SETQ\))Tj -/TT8 1 Tf -18.883 0 TD -0.0289 Tw -(, you)Tj --43.105 -1.2889 TD -0.0078 Tw -(mean before the )Tj -/TT10 1 Tf -7.3895 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0078 Tw -[( expression, not before the atom )]TJ -/TT10 1 Tf -14.4148 0 TD -0 Tw -(SETQ.)Tj -/TT8 1 Tf -3.0005 0 TD -0.0078 Tw -[( A consequent of this procedure is that a)]TJ --27.2053 -1.2889 TD -0.0478 Tw -(pattern of the form )Tj -/TT10 1 Tf -8.8234 0 TD -0.1156 Tw -(\(SETQ Y --\))Tj -/TT8 1 Tf -6.8322 0 TD -0.0478 Tw -[( can be viewed as simply an elaboration and further refinement of)]TJ --15.6556 -1.2889 TD -0.1411 Tw -(the pattern )Tj -/TT10 1 Tf -5.3789 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.1411 Tw -[(. Thus )]TJ -/TT10 1 Tf -3.645 0 TD -0.3389 Tw -(\(INSERT \(RETURN Y\) BEFORE SETQ\))Tj -/TT8 1 Tf -19.9586 0 TD -0.1411 Tw -[( and )]TJ -/TT10 1 Tf -2.4751 0 TD -0.3389 Tw -(\(INSERT \(RETURN Y\))Tj --33.858 -1.2889 TD -0.0811 Tw -(BEFORE \(SETQ Y --\)\))Tj -/TT8 1 Tf -11.6452 0 TD -0.0344 Tw -[( perform the same operation \(assuming the next )]TJ -/TT10 1 Tf -21.7326 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( is of the form )]TJ -/TT10 1 Tf -6.5599 0 TD -0 Tw -(\(SETQ)Tj --42.3381 -1.2889 TD -0.4078 Tw -(Y --\)\))Tj -/TT8 1 Tf -4.0084 0 TD -0.17 Tw -[( and, in fact, this is one of the motivations behind making the current expression after )]TJ -/TT10 1 Tf -40.7273 0 TD -0 Tw -(F)Tj --44.7357 -1.2889 TD -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(F \(SETQ Y --\))Tj -/TT8 1 Tf -7.8013 0 TD -( be the same.)Tj --9.3112 -2.0667 TD -0.2189 Tw -[(Note:)-901.2(There is some ambiguity in )]TJ -/TT10 1 Tf -16.7046 0 TD -0 Tw -(\(INSERT)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.4689 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4689 0 TD -(AFTER)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.4689 0 TD -(FUNCTIONNAME)Tj -/TT10 1 Tf -7.2012 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2189 Tw -(, as you)Tj --32.1808 -1.2889 TD -0.0811 Tw -(might mean make )Tj -/TT14 1 Tf -8.4933 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0811 Tw -[( be the functions first argument. Similarly, you cannot)]TJ --10.8937 -1.2889 TD -0 Tw -(write )Tj -/TT10 1 Tf -2.8441 0 TD -0.6444 Tw -(\(REPLACE SETQ WITH SETQQ\))Tj -/TT8 1 Tf -16.9358 0 TD -0.2689 Tw -[( meaning change the name of the)]TJ --19.7799 -1.2889 TD -0.0622 Tw -[(function. You must in these cases write )]TJ -/TT10 1 Tf -18.2654 0 TD -0 Tw -(\(INSERT)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.3122 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3122 0 TD -(AFTER)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3122 0 TD -(FUNCTIONNAME)Tj -/TT10 1 Tf --28.8036 -1.2889 TD -(1\))Tj -/TT8 1 Tf -1.2002 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(\(REPLACE SETQ 1 WITH SETQQ\))Tj -/TT8 1 Tf -16.2026 0 TD -(.)Tj --26.5124 -2.0667 TD -0.0556 Tw -(Occasionally, however, you may have a data structure in which no special significance or meaning is)Tj -0 -1.2222 TD -0.0478 Tw -(attached to the position of an atom in a list, as Interlisp attaches to atoms that appear as )Tj -/TT10 1 Tf -39.6813 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0478 Tw -[( of a list,)]TJ --41.4816 -1.2889 TD -0.0933 Tw -[(versus those appearing elsewhere in a list. In general, you may not even )]TJ -/TT18 1 Tf -33.6099 0 TD -0 Tw -(know)Tj -/TT8 1 Tf -2.166 0 TD -0.0933 Tw -[( whether a particular)]TJ --35.7759 -1.2222 TD -0.06 Tw -[(atom is at the head of a list or not. Thus, when you write )]TJ -/TT10 1 Tf -26.3399 0 TD -0 Tw -(\(INSERT)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.31 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.31 0 TD -0.1456 Tw -(BEFORE FOO\))Tj -/TT8 1 Tf -6.7466 0 TD -0.06 Tw -(, you mean)Tj --40.3077 -1.2889 TD -0.1256 Tw -(before the atom )Tj -/TT10 1 Tf -7.5539 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1256 Tw -(, whether or not it is )Tj -/TT10 1 Tf -9.9076 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1256 Tw -[( of a list. By setting the variable )]TJ -/TT10 1 Tf -15.4537 0 TD -0 Tw -(UPFINDFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.1256 Tw -[( to )]TJ -/TT10 1 Tf -1.6232 0 TD -0 Tw -(NIL)Tj -ET -endstream -endobj -138 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -140 0 obj -<< -/Length 7327 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-38)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(\(initially )Tj -/TT10 1 Tf -4.1224 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.12 Tw -(\), you can suppress the implicit )Tj -/TT10 1 Tf -14.7898 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.12 Tw -[( that follows searches for atoms, and thus achieve the)]TJ --20.7126 -1.2889 TD -0.0567 Tw -[(desired effect. With )]TJ -/TT10 1 Tf -9.3595 0 TD -0.1378 Tw -(UPFINDFLG = NIL)Tj -/TT8 1 Tf -9.277 0 TD -0.0567 Tw -(, following )Tj -/TT10 1 Tf -5.1334 0 TD -0.1378 Tw -(F FOO)Tj -/TT8 1 Tf -3.1383 0 TD -0.0567 Tw -(, for example, the current expression will)Tj --26.9081 -1.2889 TD -0.03 Tw -(be the atom )Tj -/TT10 1 Tf -5.5143 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[(. In this case, the )]TJ -/TT10 1 Tf -7.9559 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -(, and )Tj -/TT10 1 Tf -2.5029 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( operations will operate with respect to the atom )]TJ -/TT10 1 Tf -21.9385 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[(. If)]TJ --43.8424 -1.2889 TD -0 Tw -(you intend the operation to refer to the list which )Tj -/TT10 1 Tf -22.0068 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( heads, use the pattern )Tj -/TT10 1 Tf -10.1982 0 TD -(\(FOO --\))Tj -/TT8 1 Tf -4.8008 0 TD -(instead .)Tj -/TT6 1 Tf -10 0 0 10 126 506.8 Tm -(Extract and Embed)Tj -/TT8 1 Tf -9 0 0 9 126 491.14 Tm -(Extraction involves replacing the current expression with one of its subexpressions \(from any depth\).)Tj -/TT10 1 Tf -2.6667 -2.4822 TD --0.0002 Tc -0.0002 Tw -(\(XTR . @\))Tj -/TT4 1 Tf -10 0 0 10 198.6009 468.8 Tm -0 Tc -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 468.8 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.06 Tw -(Replaces the original current expression with the expression that is current after performing)Tj -/TT10 1 Tf -0 -1.2222 TD -0.0744 Tw -(\(LCL . @\))Tj -/TT8 1 Tf -5.5498 0 TD -0.0311 Tw -[( \(see warning about )]TJ -/TT10 1 Tf -9.1078 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[( above\). If the current expression after )]TJ -/TT10 1 Tf -17.5262 0 TD -0.0744 Tw -(\(LCL . @\))Tj -/TT8 1 Tf --35.7844 -1.2889 TD -0 Tw -(is a )Tj -/TT18 1 Tf -1.7148 0 TD -(tail)Tj -/TT8 1 Tf -1.3325 0 TD -( of a higher expression, its first element is used.)Tj --3.0474 -2.8889 TD -0.0267 Tw -(If the extracted expression is a list, then after )Tj -/TT10 1 Tf -20.1594 0 TD -0 Tw -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0267 Tw -[( has finished, the current expression will be)]TJ --21.9597 -1.2889 TD -0.1389 Tw -[(that list. If the extracted expression is not a list, the new current expression will be a tail)]TJ -0 -1.2222 TD -0 Tw -(whose first element is that non-list.)Tj -0 -2.8889 TD -0.1889 Tw -(For example, if the current expression is )Tj -/TT10 1 Tf -19.2553 0 TD -0.4544 Tw -(\(COND \(\(NULL X\) \(PRINT Y\)\)\), \(XTR)Tj --19.2553 -1.2889 TD -0 Tw -(PRINT\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -(, or )Tj -/TT10 1 Tf -1.8554 0 TD -0.1967 Tw -(\(XTR 2 2\))Tj -/TT8 1 Tf -5.7942 0 TD -0.0822 Tw -[( will replace the )]TJ -/TT10 1 Tf -7.6121 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[( by the )]TJ -/TT10 1 Tf -3.4933 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0822 Tw -[(. The current expression after)]TJ --27.7564 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -( would be )Tj -/TT10 1 Tf -4.667 0 TD -(\(PRINT Y\))Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --13.5054 -2.9556 TD -0.0167 Tw -(If the current expression is )Tj -/TT10 1 Tf -12.0662 0 TD -0.0389 Tw -(\(COND \(\(NULL X\) Y\) \(T Z\)\))Tj -/TT8 1 Tf -15.1969 0 TD -0.0167 Tw -(, then )Tj -/TT10 1 Tf -2.7526 0 TD -0.0389 Tw -(\(XTR Y\))Tj -/TT8 1 Tf -4.2396 0 TD -0.0167 Tw -[( will replace the)]TJ -/TT10 1 Tf --34.2553 -1.2889 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( with )]TJ -/TT10 1 Tf -2.571 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -(, even though the current expression after performing )Tj -/TT10 1 Tf -24.1438 0 TD -0.0467 Tw -(\(LCL Y\))Tj -/TT8 1 Tf -4.2473 0 TD -0.0189 Tw -[( is )]TJ -/TT10 1 Tf -1.2526 0 TD -0.0467 Tw -(... Y\))Tj -/TT8 1 Tf -3.6473 0 TD -0.0189 Tw -[(. The)]TJ --38.8625 -1.2889 TD -0 Tw -(current expression after the )Tj -/TT10 1 Tf -12.3813 0 TD -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -( would be )Tj -/TT10 1 Tf -4.667 0 TD -(... Y)Tj -/TT8 1 Tf -3.0005 0 TD -( followed by whatever followed the )Tj -/TT10 1 Tf -16.0181 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --40.2676 -2.9556 TD -0.1344 Tw -(If the current expression )Tj -/TT18 1 Tf -11.5558 0 TD -0 Tw -(initially)Tj -/TT8 1 Tf -3.2222 0 TD -0.1344 Tw -[( is a tail, extraction works exactly the same as though the)]TJ --14.778 -1.2222 TD -0.0956 Tw -[(current expression were the first element in that tail. Thus if the current expression is )]TJ -/TT10 1 Tf -39.5265 0 TD -0 Tw -(...)Tj --39.5265 -1.2889 TD -0.1744 Tw -(\(COND \(\(NULL X\) \(PRINT Y\)\)\) \(RETURN Z\)\))Tj -/TT8 1 Tf -24.4505 0 TD -0.0722 Tw -(, then )Tj -/TT10 1 Tf -2.8637 0 TD -0.1744 Tw -(\(XTR PRINT\))Tj -/TT8 1 Tf -6.7755 0 TD -0.0722 Tw -[( will replace the)]TJ -/TT10 1 Tf --34.0897 -1.2889 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( by the )Tj -/TT10 1 Tf -3.2466 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, leaving )Tj -/TT10 1 Tf -4.0142 0 TD -(\(PRINT Y\))Tj -/TT8 1 Tf -5.4009 0 TD -( as the current expression.)Tj --22.0625 -2.0667 TD -(The extract command can also incorporate a location specification:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(EXTRACT @)Tj -6 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( FROM . @)Tj -5.4 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 268.8008 172.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 172.26 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Performs )Tj -/TT10 1 Tf -4.3286 0 TD -0.0489 Tw -(\(LC . @)Tj -4.3003 -0.3333 TD -0 Tw -(2)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( and then )]TJ -/TT10 1 Tf -4.4721 0 TD -0.0489 Tw -(\(XTR . @)Tj -4.8978 -0.3333 TD -0 Tw -(1)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( \(see warning about )]TJ -/TT10 1 Tf -9.0634 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[(\). The current edit)]TJ --33.063 -1.6222 TD -0 Tw -(chain is not changed, but )Tj -/TT10 1 Tf -11.3042 0 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to the edit chain after the )Tj -/TT10 1 Tf -13.9795 0 TD -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -( was performed.)Tj --26.6846 -2.0667 TD -(Note:)Tj -/TT10 1 Tf -3.3333 0 TD -(@)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( is the )Tj -/TT18 1 Tf -2.8521 0 TD -(segment)Tj -/TT8 1 Tf -3.3345 0 TD -( between )Tj -/TT10 1 Tf -4.2324 0 TD -(EXTRACT)Tj -/TT8 1 Tf -4.2007 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --27.7462 -3.2889 TD -0.0467 Tw -[(For example: If the current expression is )]TJ -/TT10 1 Tf -18.6023 0 TD -0.1111 Tw -(\(PRINT \(COND \(\(NULL X\) Y\) \(T Z\)\)\))Tj -/TT8 1 Tf -20.4699 0 TD -0.0467 Tw -[( then)]TJ --39.0722 -1.2889 TD -0 Tw -(following )Tj -/TT10 1 Tf -4.8045 0 TD -0.6833 Tw -(\(EXTRACT Y FROM COND\))Tj -/TT8 1 Tf -14.6521 0 TD -0.2844 Tw -(, the current expression will be )Tj -/TT10 1 Tf -15.5441 0 TD -0.6833 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -6.0842 0 TD -0 Tw -(.)Tj -/TT10 1 Tf --41.0848 -1.2889 TD -0.0478 Tw -(\(EXTRACT 2 -1 FROM COND\))Tj -/TT8 1 Tf -14.5935 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.52 0 TD -0.0478 Tw -(\(EXTRACT Y FROM 2\))Tj -/TT8 1 Tf -10.9451 0 TD -0.02 Tw -(, and )Tj -/TT10 1 Tf -2.4829 0 TD -0.0478 Tw -(\(EXTRACT 2 -1 FROM 2\))Tj -/TT8 1 Tf --28.5414 -1.2889 TD -0 Tw -(will all produce the same result.)Tj -ET -endstream -endobj -141 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -143 0 obj -<< -/Length 6824 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-39)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.0722 Tw -(While extracting replaces the current expression by a subexpression, embedding replaces the current)Tj -0 -1.2222 TD -0 Tw -(expression with one containing )Tj -/TT18 1 Tf -14.0772 0 TD -(it)Tj -/TT8 1 Tf -0.6108 0 TD -( as a subexpression.)Tj -/TT10 1 Tf --12.0213 -2.4822 TD -(\(MBD)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(E)Tj -0.6 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... E)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 185.2517 536.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 536.2 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -3.0667 TD -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.1144 Tw -[( substitutes the current expression for all instances of the atom )]TJ -/TT10 1 Tf -29.065 0 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1144 Tw -[( in )]TJ -/TT14 1 Tf -1.6019 0 TD -0 Tw -(E)Tj -0.6037 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.2756 Tw -[( ... )]TJ -/TT14 1 Tf -3.5516 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1144 Tw -(, and)Tj --39.0222 -1.6222 TD -0.0878 Tw -[(replaces the current expression with the result of that substitution. As with )]TJ -/TT10 1 Tf -34.6841 0 TD -0 Tw -(SUBST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0878 Tw -(, a fresh)Tj --37.6846 -1.2889 TD -0 Tw -(copy is used for each substitution.)Tj -0 -2.8889 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(&)Tj -/TT8 1 Tf -0.6001 0 TD -( does not appear in )Tj -/TT14 1 Tf -8.7129 0 TD -(E)Tj -0.6004 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(, the )Tj -/TT10 1 Tf -2.1372 0 TD -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -( is interpreted as )Tj -/TT10 1 Tf -7.603 0 TD -(\(MBD \()Tj -/TT14 1 Tf -3.6006 0 TD -(E)Tj -0.6 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(E)Tj -0.5995 -0.3333 TD -(M)Tj -/TT12 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(&\)\))Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --38.2247 -3.2889 TD -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -( leaves the edit chain so that the larger expression is the new current expression.)Tj --1.8003 -2.9556 TD -(Examples:)Tj -0 -2.8889 TD -0.0167 Tw -(If the current expression is )Tj -/TT10 1 Tf -12.0662 0 TD -0.04 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.4409 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5167 0 TD -0.04 Tw -(\(MBD \(COND \(\(NULL X\) &\) \(\(NULL)Tj -/TT12 1 Tf -18.2029 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2667 0 TD -0.04 Tw -(\(CAR Y\)\))Tj --36.4934 -1.2889 TD -0.4156 Tw -(& \(GO LP\)\)\)\))Tj -/TT8 1 Tf -8.0323 0 TD -0.1733 Tw -[( would replace )]TJ -/TT10 1 Tf -7.3437 0 TD -0.4156 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.8164 0 TD -0.1733 Tw -[( with )]TJ -/TT10 1 Tf -2.8799 0 TD -0.4156 Tw -(\(COND \(\(NULL X\) \(PRINT Y\)\))Tj --24.0723 -1.2889 TD -0 Tw -(\(\(NULL \(CAR Y\)\) \(PRINT Y\) \(GO LP\)\)\))Tj -/TT8 1 Tf -21.0034 0 TD -(.)Tj --21.0034 -2.9556 TD -0.0033 Tw -(If the current expression is )Tj -/TT10 1 Tf -11.9996 0 TD -0.0078 Tw -(\(RETURN X\))Tj -/TT8 1 Tf -6.0088 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5033 0 TD -0.0078 Tw -(\(MBD \(PRINT Y\) \(AND FLG &\)\))Tj -/TT8 1 Tf -16.2415 0 TD -0.0002 Tc -0.0031 Tw -( would replace)Tj --34.7532 -1.2889 TD -0 Tc -0.0222 Tw -(it with the )Tj -/TT18 1 Tf -4.8543 0 TD -0 Tw -(two)Tj -/TT8 1 Tf -1.499 0 TD -0.0222 Tw -[( expressions )]TJ -/TT10 1 Tf -5.7051 0 TD -0.0533 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.4542 0 TD -0.0222 Tw -[( and )]TJ -/TT10 1 Tf -2.2373 0 TD -0.0533 Tw -(\(AND FLG \(RETURN X\)\),)Tj -/TT8 1 Tf -12.7621 0 TD -0.0222 Tw -[( i.e., if the )]TJ -/TT10 1 Tf -4.6201 0 TD -0 Tw -(\(RETURN)Tj --37.1321 -1.2889 TD -(X\))Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -[( appeared in the cond clause )]TJ -/TT10 1 Tf -13.4629 0 TD -0.2444 Tw -(\(T \(RETURN X\)\))Tj -/TT8 1 Tf -8.8903 0 TD -0.1022 Tw -(, after the )Tj -/TT10 1 Tf -4.7271 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.1022 Tw -(, the clause would be )Tj -/TT10 1 Tf -10.056 0 TD -0 Tw -(\(T)Tj --40.1368 -1.2889 TD -(\(PRINT Y\) \(AND FLG \(RETURN X\)\)\))Tj -/TT8 1 Tf -18.603 0 TD -(.)Tj --18.603 -2.9556 TD -0.0478 Tw -(If the current expression is )Tj -/TT10 1 Tf -12.2218 0 TD -0.1144 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.5153 0 TD -0.0478 Tw -(, then )Tj -/TT10 1 Tf -2.8148 0 TD -0.1144 Tw -(\(MBD SETQ X\))Tj -/TT8 1 Tf -7.4301 0 TD -0.0478 Tw -[( will replace it with )]TJ -/TT10 1 Tf -9.0353 0 TD -0.1144 Tw -(\(SETQ X)Tj --37.0173 -1.2889 TD -0.1189 Tw -(\(PRINT Y\)\))Tj -/TT8 1 Tf -6.1199 0 TD -0.05 Tw -[(. If the current expression is )]TJ -/TT10 1 Tf -13.0829 0 TD -0.1189 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.5198 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.55 0 TD -0.1189 Tw -(\(MBD RETURN\))Tj -/TT8 1 Tf -7.3201 0 TD -0.05 Tw -[( will replace it with)]TJ -/TT10 1 Tf --32.5926 -1.2889 TD -0 Tw -(\(RETURN \(PRINT Y\)\))Tj -/TT8 1 Tf -10.8018 0 TD -(.)Tj --10.8018 -2.9556 TD -0.0922 Tw -(If the current expression )Tj -/TT18 1 Tf -11.387 0 TD -0 Tw -(initially)Tj -/TT8 1 Tf -3.2222 0 TD -0.0922 Tw -[( is a tail, embedding works exactly the same as though the)]TJ --14.6091 -1.2222 TD -0.0033 Tw -(current expression were the first element in that tail. Thus if the current expression were )Tj -/TT10 1 Tf -39.5231 0 TD -0 Tw -(...)Tj --39.5231 -1.2889 TD -0.2811 Tw -(\(PRINT Y\) \(PRINT Z\)\))Tj -/TT8 1 Tf -12.8453 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.6178 0 TD -0.2811 Tw -(\(MBD SETQ X\))Tj -/TT8 1 Tf -7.7634 0 TD -0.1178 Tw -[( would replace )]TJ -/TT10 1 Tf -7.1771 0 TD -0.2811 Tw -(\(PRINT Y\))Tj -/TT8 1 Tf -5.682 0 TD -0.1178 Tw -[( with )]TJ -/TT10 1 Tf -2.7688 0 TD -0.2811 Tw -(\(SETQ X)Tj --36.8543 -1.2222 TD -0 Tw -(\(PRINT Y\)\).)Tj -/TT8 1 Tf -0 -2.9556 TD -(The embed command can also incorporate a location specification:)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(EMBED @ IN . )Tj -/TT14 1 Tf -8.4008 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 188.4088 130.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 130.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(@)Tj -/TT8 1 Tf -0.6001 0 TD -0.1533 Tw -[( is the segment between )]TJ -/TT10 1 Tf -11.5801 0 TD -0 Tw -(EMBED)Tj -/TT8 1 Tf -3.0005 0 TD -0.1533 Tw -[( and )]TJ -/TT10 1 Tf -2.4995 0 TD -0 Tw -(IN)Tj -/TT8 1 Tf -1.2002 0 TD -0.1533 Tw -[(.\) Does )]TJ -/TT10 1 Tf -4.0157 0 TD -0.3689 Tw -(\(LC . @\))Tj -/TT8 1 Tf -5.5386 0 TD -0.1533 Tw -[( and then )]TJ -/TT10 1 Tf -4.8721 0 TD -0.3689 Tw -(\(MBD .)Tj -/TT12 1 Tf -3.9695 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.4033 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1533 Tw -[( \(see)]TJ --39.2128 -1.2889 TD -0.0467 Tw -(warning about )Tj -/TT10 1 Tf -6.8619 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -[(\). Edit chain is not changed, but )]TJ -/TT10 1 Tf -14.8494 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -[( is set to the edit chain after)]TJ --28.9125 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -( was performed.)Tj --3.4375 -2.9556 TD -(Examples: )Tj -/TT10 1 Tf -4.8458 0 TD -0.0989 Tw -(\(EMBED PRINT IN SETQ X\), \(EMBED 3 2 IN RETURN\), \(EMBED COND)Tj --4.8458 -1.2889 TD -0 Tw -(3 1 IN \(OR & \(NULL X\)\)\))Tj -/TT8 1 Tf -13.8022 0 TD -(.)Tj -ET -endstream -endobj -144 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -146 0 obj -<< -/Length 6088 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-40)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 162 569.54 Tm -(WITH)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( can be used for )]TJ -/TT10 1 Tf -7.3043 0 TD -0 Tw -(IN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0211 Tw -(, and )Tj -/TT10 1 Tf -2.4851 0 TD -0 Tw -(SURROUND)Tj -/TT8 1 Tf -4.8008 0 TD -0.0211 Tw -[( can be used for )]TJ -/TT10 1 Tf -7.3043 0 TD -0 Tw -(EMBED)Tj -/TT8 1 Tf -3.0005 0 TD -0.0211 Tw -(, e.g., )Tj -/TT10 1 Tf -2.5774 0 TD -0.0522 Tw -(\(SURROUND NUMBERP)Tj --31.0729 -1.2889 TD -0 Tw -(WITH \(AND & \(MINUSP X\)\)\))Tj -/TT8 1 Tf -14.4023 0 TD -(.)Tj -/TT10 1 Tf --15.7357 -2.5489 TD -(EDITEMBEDTOKEN)Tj -/TT4 1 Tf -10 0 0 10 225.6 535 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 535 Tm -([Variable])Tj --36.9344 -2.7333 TD -0.0211 Tw -(The special atom used in the )Tj -/TT10 1 Tf -12.9621 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.0211 Tw -[( and )]TJ -/TT10 1 Tf -2.2351 0 TD -0 Tw -(EMBED)Tj -/TT8 1 Tf -3.0005 0 TD -0.0211 Tw -[( commands is the value of this variable, initially)]TJ -/TT10 1 Tf --19.998 -1.2889 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 126 470.86 Tm -(The MOVE Command)Tj -/TT8 1 Tf -9 0 0 9 126 455.2 Tm -(The )Tj -/TT10 1 Tf -1.9749 0 TD -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( command allows you to specify the expression to be moved, the place it is to be moved to,)]TJ --4.3753 -1.2889 TD -0 Tw -(and the operation to be performed there, e.g., insert it before, insert it after, replace, etc.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(MOVE @)Tj -4.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( TO)Tj -/TT6 1 Tf -10 0 0 10 209.4 421.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.1783 421.26 Tm -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -( . @)Tj -2.3999 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 260.7809 421.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 421.26 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(@)Tj -0.6003 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1533 Tw -[( is the segment between )]TJ -/TT10 1 Tf -11.5801 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1533 Tw -[( and )]TJ -/TT10 1 Tf -2.4995 0 TD -0 Tw -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.1533 Tw -(.\) )Tj -/TT14 1 Tf -1.3897 0 TD -0 Tw -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.1533 Tw -[( is )]TJ -/TT10 1 Tf -1.5215 0 TD -0 Tw -(BEFORE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6533 0 TD -(AFTER)Tj -/TT8 1 Tf -3.0005 0 TD -0.1533 Tw -(, or the name of a list)Tj --31.1795 -1.6222 TD -0.0111 Tw -(command, e.g., )Tj -/TT10 1 Tf -7.0056 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5111 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[(, etc. Performs )]TJ -/TT10 1 Tf -6.8521 0 TD -0.0278 Tw -(\(LC . @)Tj -4.2588 -0.3333 TD -0 Tw -(1)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( \(see warning about )]TJ -/TT10 1 Tf -9.0278 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0111 Tw -(\), and obtains the)Tj --33.6563 -1.6222 TD -0 Tw -(current expression there \(or its first element, if it is a tail\), which we will call )Tj -/TT14 1 Tf -33.8013 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -( then)Tj --39.1021 -1.2889 TD -0.02 Tw -(goes back to the original edit chain, performs )Tj -/TT10 1 Tf -20.3412 0 TD -0.0489 Tw -(\(LC . @)Tj -4.2988 -0.3333 TD -0 Tw -(2)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( followed by )]TJ -/TT10 1 Tf -5.85 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.649 0 TD -(EXPR)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( \(setting)]TJ --37.74 -1.6222 TD -0.1456 Tw -(an internal flag so )Tj -/TT14 1 Tf -8.7604 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1456 Tw -[( is not copied\), then goes back to )]TJ -/TT10 1 Tf -15.7875 0 TD -0 Tw -(@)Tj -0.5994 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1456 Tw -[( and deletes )]TJ -/TT14 1 Tf -5.9684 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1455 Tw -[(. The edit)]TJ --36.5166 -1.6222 TD -0 Tw -(chain is not changed. )Tj -/TT10 1 Tf -9.8218 0 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to the edit chain after )Tj -/TT10 1 Tf -12.3423 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(EXPR)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( was performed.)Tj --31.7656 -2.9556 TD -(If )Tj -/TT10 1 Tf -0.9699 0 TD -(@)Tj -0.6001 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.05 Tw -[( specifies a location )]TJ -/TT18 1 Tf -8.9915 0 TD -(inside of the expression to be moved,)Tj -/TT8 1 Tf -14.8474 0 TD -[( a message is printed and an error)]TJ --26.0089 -1.6222 TD -0.16 Tw -(is generated, e.g., )Tj -/TT10 1 Tf -8.3872 0 TD -0.3844 Tw -(\(MOVE 2 TO AFTER X\))Tj -/TT8 1 Tf -12.9396 0 TD -0.16 Tw -(, where )Tj -/TT10 1 Tf -3.839 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.16 Tw -[( is contained inside of the second)]TJ --25.766 -1.2889 TD -0 Tw -(element.)Tj -0 -2.8889 TD -0.0544 Tw -(For example, if the current expression is )Tj -/TT10 1 Tf -18.3142 0 TD -0.1322 Tw -(\(A B C D\))Tj -/TT8 1 Tf -5.7975 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5544 0 TD -0.1322 Tw -(\(MOVE 2 TO AFTER 4\))Tj -/TT8 1 Tf -11.9307 0 TD -0.0544 Tw -[( will make)]TJ --36.597 -1.2889 TD -0.0367 Tw -(the new current expression be )Tj -/TT10 1 Tf -13.7087 0 TD -0.0878 Tw -(\(A C D B\))Tj -/TT8 1 Tf -5.6642 0 TD -0.0367 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.3132 0 TD -0 Tw -(4)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( was executed as of the original edit)]TJ --25.2862 -1.2889 TD -0 Tw -(chain, and that the second element had not yet been removed.)Tj -0 -2.8889 TD -0.1444 Tw -(As the following examples taken from actual editing will show, the )Tj -/TT10 1 Tf -31.501 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1444 Tw -[( command is an)]TJ --33.9014 -1.2889 TD -0 Tw -(extremely versatile and powerful feature of the editor.)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*?)Tj -0 -1 TD -(\(PROG \(\(L L\)\) \(EDLOC \(CDDR C\)\) \(RETURN \(CAR L\)\)\))Tj -T* -(*\(MOVE 3 TO : CAR\))Tj -T* -(*?)Tj -T* -(\(PROG \(\(L L\)\) \(RETURN \(EDLOC \(CDDR C\)\)\)\))Tj -T* -(*)Tj -T* -(*P)Tj -T* -(... \(SELECTQ OBJPR & &\) \(RETURN &\) LP2 \(COND & &\)\))Tj -T* -(*\(MOVE 2 TO N 1\))Tj -T* -(*P)Tj -T* -(... \(SELECTQ OBJPR & & &\) LP2 \(COND & &\)\))Tj -0 -2.7778 TD -(*)Tj -0 -1 TD -(*P)Tj -ET -endstream -endobj -147 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -149 0 obj -<< -/Length 3727 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-41)Tj -/TT10 1 Tf --29 60.6822 TD -(\(OR \(EQ X LASTAIL\) \(NOT &\) \(AND & & &\)\))Tj -0 -1 TD -(*\(MOVE 4 TO AFTER \(BELOW COND\)\))Tj -T* -(*P)Tj -T* -(\(OR \(EQ X LASTAIL\) \(NOT &\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(... \(& &\) \(AND & & &\) \(T & &\)\))Tj -T* -(*)Tj -0 -1.7778 TD -(*P)Tj -0 -1 TD -(\(\(NULL X\) **COMMENT** \(COND & &\)\))Tj -T* -(*\(-3 \(GO NXT])Tj -0 -1.0667 TD -(*\(MOVE 4 TO N \()Tj -/TT19 1 Tf -9.0015 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( PROG\)\))Tj --9.9883 -1 TD -(*P)Tj -T* -(\(\(NULL X\) **COMMENT** \(GO NXT\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(\(PROG \(&\) **COMMENT** \(COND & & &\) \(COND & & &\) \(COND & &\)\))Tj -T* -(*\(INSERT NXT BEFORE -1\))Tj -T* -(*P)Tj -T* -(\(PROG \(&\) **COMMENT** \(COND & & &\) \(COND & & &\) NXT \(COND & &\)\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.08 Tw -(In the last example, you could have added the )Tj -/TT10 1 Tf -21.3406 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tw -[( label )]TJ -/TT10 1 Tf -2.7743 0 TD -0 Tw -(NXT)Tj -/TT8 1 Tf -1.8003 0 TD -0.08 Tw -[( and moved the )]TJ -/TT10 1 Tf -7.4836 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tw -[( in one)]TJ --38.1995 -1.2889 TD -0.0733 Tw -(operation by performing )Tj -/TT10 1 Tf -11.4065 0 TD -0.1767 Tw -(\(MOVE 4 TO N \()Tj -/TT19 1 Tf -9.108 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.1767 Tw -[( PROG\) \(N NXT\)\))]TJ -/TT8 1 Tf -9.5315 0 TD -0.0733 Tw -[(. Similarly, in the next)]TJ --31.0328 -1.2889 TD -0.0667 Tw -(example, in the course of specifying )Tj -/TT10 1 Tf -16.4859 0 TD -0 Tw -(@)Tj -0.6018 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0667 Tw -(, the location where the expression was to be moved)Tj --17.6878 -1.6222 TD -0.0678 Tw -(to, you also perform a structure modification, via )Tj -/TT10 1 Tf -22.5066 0 TD -0.1622 Tw -(\(N \(T\)\))Tj -/TT8 1 Tf -4.3629 0 TD -0.0678 Tw -(, thus creating the structure that)Tj --26.8695 -1.2889 TD -0 Tw -(will receive the expression being moved.)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1 TD -(\(\(CDR &\) **COMMENT** \(SETQ CL &\) \(EDITSMASH CL & &\)\))Tj -T* -(*MOVE 4 TO N 0 \(N \(T\)\) -1])Tj -T* -(*P)Tj -T* -(\(\(CDR &\) **COMMENT** \(SETQ CL &\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(*\(T \(EDITSMASH CL & &\)\))Tj -T* -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(If )Tj -/TT10 1 Tf -0.9233 0 TD -(@)Tj -0.6001 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0008 Tc -0.0025 Tw -( is )Tj -/TT10 1 Tf -1.2215 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0033 Tw -(, or )Tj -/TT10 1 Tf -1.6976 0 TD -0 Tw -(\(HERE\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0033 Tw -(, the current position specifies where the operation is to take place. In)Tj --10.4433 -1.6222 TD -0.0633 Tw -(this case, )Tj -/TT10 1 Tf -4.3464 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.0633 Tw -[( is set to where the expression that was moved was originally located, i.e.,)]TJ -/TT10 1 Tf --7.947 -1.2889 TD -0 Tw -(@)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(. For example:)Tj -/TT10 1 Tf -8.1333 -2.3333 TD -(*P)Tj -0 -1 TD -(\(TENEX\))Tj -0 -1.0667 TD -(*\(MOVE )Tj -/TT19 1 Tf -4.2007 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -( F APPLY TO N HERE\))Tj --4.8037 -1 TD -(*P)Tj -T* -(\(TENEX \(APPLY & &\)\))Tj -T* -(*)Tj -0 -1.7778 TD -(*P)Tj -0 -1 TD -(\(PROG \(& & & ATM IND VAL\) \(OR & &\) **COMMENT** \(OR & &\))Tj -T* -(\(PRIN1 & T\) \()Tj -0 -1.2156 TD -(PRIN1 & T\) \(SETQ IND)Tj -/TT6 1 Tf -10 0 0 10 306.0176 91 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 322.6875 91 Tm -( )Tj -/TT18 1 Tf -0.25 0 TD -(user typed Control-E)Tj -/TT10 1 Tf --14.1042 -2.1111 TD -(*\(MOVE * TO BEFORE HERE\))Tj -0 -1 TD -(*P)Tj -T* -(\(PROG \(& & & ATM IND VAL\) \(OR & &\) \(OR & &\) \(PRIN1 &)Tj -ET -endstream -endobj -150 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -153 0 obj -<< -/Length 5998 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-42)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 246 570.14 Tm -(*P)Tj -0 -1 TD -(\(T \(PRIN1 C-EXP T\)\))Tj -0 -1.0667 TD -(*\(MOVE )Tj -/TT19 1 Tf -4.2007 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -( BF PRIN1 TO N HERE\))Tj --4.8037 -1 TD -(*P)Tj -T* -(\(T \(PRIN1 C-EXP T\) \(PRIN1 & T\)\))Tj -T* -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.03 Tw -(Finally, if )Tj -/TT10 1 Tf -4.5014 0 TD -0 Tw -(@)Tj -0.5997 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.03 Tw -[( is )]TJ -/TT10 1 Tf -1.2748 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -(, the )Tj -/TT10 1 Tf -2.1972 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -[( command allows you to specify where the )]TJ -/TT18 1 Tf -19.4353 0 TD -(current expression)Tj -/TT8 1 Tf -7.5237 0 TD -[( is)]TJ --40.3328 -1.6222 TD -0.1078 Tw -[(to be moved to. In this case, the edit chain is changed, and is the chain where the current)]TJ -0 -1.2222 TD -0 Tw -(expression was moved to; )Tj -/TT10 1 Tf -11.7002 0 TD -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to where it was.)Tj -/TT10 1 Tf --5.9675 -2 TD -(*P)Tj -0 -1 TD -(\(SELECTQ OBJPR \(&\) \(PROGN & &\)\))Tj -T* -(*\(MOVE TO BEFORE LOOP\))Tj -T* -(*P)Tj -T* -(... \(SELECTQ OBJPR & &\) LOOP \(FRPLACA DFPRP &\) \(FRPLACD DFPRP)Tj -0 -1.0667 TD -(&\) \(SELECTQ )Tj -/TT18 1 Tf -10.8018 0 TD -(user typed Control-E)Tj -/TT10 1 Tf --10.8018 -2 TD -(*)Tj -/TT6 1 Tf -10 0 0 10 126 366.8 Tm -(Commands That Move Parentheses)Tj -/TT8 1 Tf -9 0 0 9 126 351.14 Tm -0.0567 Tw -(The commands presented in this section permit modification of the list structure itself, as opposed to)Tj -0 -1.2222 TD -0.0433 Tw -[(modifying components thereof. Their effect can be described as inserting or removing a single left or)]TJ -T* -0.1856 Tw -[(right parenthesis, or pair of left and right parentheses. Of course, there will always be the same)]TJ -T* -0.0922 Tw -(number of left parentheses as right parentheses in any list structure, since the parentheses are just a)Tj -T* -0.1022 Tw -(notational guide to the structure provided by )Tj -/TT10 1 Tf -20.9582 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1022 Tw -[(. Thus, no command can insert or remove just)]TJ --23.9587 -1.2889 TD -0 Tw -(one parenthesis, but this is suggestive of what actually happens.)Tj -0 -2 TD -0.2633 Tw -(In all six commands, )Tj -/TT18 1 Tf -10.4073 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.2633 Tw -[( and )]TJ -/TT18 1 Tf -2.7195 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.9438 0 TD -0.2633 Tw -[( are used to specify an element of a list, usually of the current)]TJ --14.8486 -1.2222 TD -0.3444 Tw -[(expression. In practice, )]TJ -/TT18 1 Tf -12.0135 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.3444 Tw -[( and )]TJ -/TT18 1 Tf -2.8818 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.9438 0 TD -0.3444 Tw -[( are usually positive or negative integers with the obvious)]TJ --16.617 -1.2222 TD -0.15 Tw -[(interpretation. However, all six commands use the generalized )]TJ -/TT10 1 Tf -29.5907 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.15 Tw -[( command )]TJ -/TT10 1 Tf -5.2482 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.4 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.15 Tw -[( to find)]TJ --41.84 -1.2889 TD -0.03 Tw -(their element\(s\), so that )Tj -/TT14 1 Tf -10.7562 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -(th element means the first element of the tail found by performing )Tj -/TT10 1 Tf -29.8497 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.28 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --45.0867 -1.2889 TD -0.0078 Tw -(In other words, if the current expression is )Tj -/TT10 1 Tf -19.0559 0 TD -0.0178 Tw -(\(LIST \(CAR X\) \(SETQ Y \(CONS W Z\)\)\))Tj -/TT8 1 Tf -20.5278 0 TD -0.0078 Tw -(, then )Tj -/TT10 1 Tf -2.7348 0 TD -0.0178 Tw -(\(BI 2)Tj --42.3184 -1.2889 TD -0 Tw -(CONS\))Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(BI X -1\))Tj -/TT8 1 Tf -5.4009 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(\(BI X Z\))Tj -/TT8 1 Tf -4.8008 0 TD -( all specify the exact same operation.)Tj --16.145 -2.0667 TD -(All six commands generate an error if the element is not found, i.e., the )Tj -/TT10 1 Tf -31.5825 0 TD -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -( fails. All are undoable.)Tj -/TT10 1 Tf --30.7162 -2.5489 TD -(\(BI)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(M)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT8 1 Tf -30.7554 0 TD -([Editor Command])Tj --32.9222 -2.7333 TD -0.0789 Tw -[("Both In". Inserts a left parentheses before the )]TJ -/TT14 1 Tf -21.2754 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -(th element and after the )Tj -/TT14 1 Tf -11.185 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -(th element in the)Tj --33.6606 -1.2889 TD -0.0378 Tw -[(current expression. Generates an error if the )]TJ -/TT14 1 Tf -20.2436 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0378 Tw -(th element is not contained in the )Tj -/TT14 1 Tf -15.2317 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0378 Tw -(th tail, i.e.,)Tj --36.6756 -1.2889 TD -0 Tw -(the )Tj -/TT14 1 Tf -1.6372 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -(th element must be "to the right" of the )Tj -/TT14 1 Tf -17.3633 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element.)Tj --20.2007 -2.9556 TD -0.0222 Tw -[(Example: If the current expression is )]TJ -/TT10 1 Tf -16.7693 0 TD -0.0544 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.5283 0 TD -0.0222 Tw -(, then )Tj -/TT10 1 Tf -2.7637 0 TD -0.0544 Tw -(\(BI 2 4\))Tj -/TT8 1 Tf -4.9097 0 TD -0.0222 Tw -[( will modify it)]TJ --34.971 -1.2889 TD -0 Tw -(to be )Tj -/TT10 1 Tf -2.4043 0 TD -(\(A \(B \(C D E\) F\) G\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --15.1395 -2.5489 TD -(\(BI)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.5997 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 184.6517 70.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 70.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(BI)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -154 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -156 0 obj -<< -/Length 5794 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-43)Tj -/TT8 1 Tf --38.3333 60.6156 TD -0.0067 Tw -[(Example: If the current expression is )]TJ -/TT10 1 Tf -16.6604 0 TD -0.0144 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.2883 0 TD -0.0067 Tw -(, then )Tj -/TT10 1 Tf -2.7326 0 TD -0.0144 Tw -(\(BI -2\))Tj -/TT8 1 Tf -4.2151 0 TD -0.0067 Tw -[( will modify it to)]TJ --33.8965 -1.2889 TD -0 Tw -(be )Tj -/TT10 1 Tf -1.2822 0 TD -(\(A B \(C D E\) \(F\) G\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --14.0174 -2.5489 TD -(\(BO)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.5997 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 131.2509 535 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 535 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1878 Tw -[("Both Out". Removes both parentheses from the )]TJ -/TT14 1 Tf -23.1404 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1878 Tw -[(th element. Generates an error if )]TJ -/TT14 1 Tf -16.0849 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th)Tj --40.4256 -1.2889 TD -(element is not a list.)Tj -0 -2.8889 TD -0.0356 Tw -(Example: If the current expression is )Tj -/TT10 1 Tf -16.5771 0 TD -0.0856 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.715 0 TD -0.0356 Tw -(, then )Tj -/TT10 1 Tf -2.7903 0 TD -0.0856 Tw -(\(BO D\))Tj -/TT8 1 Tf -3.6861 0 TD -0.0356 Tw -[( will modify it to)]TJ --33.7686 -1.2889 TD -0 Tw -(be )Tj -/TT10 1 Tf -1.2822 0 TD -(\(A B C D E F G\))Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj -/TT10 1 Tf --11.617 -2.5489 TD -(\(LI)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.5997 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 131.2509 438.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 438.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0422 Tw -[("Left In". Inserts a left parenthesis before the )]TJ -/TT18 1 Tf -20.4415 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.0422 Tw -(th element \(and a matching right parenthesis)Tj --21.2194 -1.2222 TD -0 Tw -(at the end of the current expression\), i.e. equivalent to )Tj -/TT10 1 Tf -24.0137 0 TD -(\(BI)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(-1\))Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --28.7144 -2.9556 TD -0.0378 Tw -(Example: if the current expression is )Tj -/TT10 1 Tf -16.5445 0 TD -0.09 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.7417 0 TD -0.0378 Tw -(, then )Tj -/TT10 1 Tf -2.7948 0 TD -0.09 Tw -(\(LI 2\))Tj -/TT8 1 Tf -3.6906 0 TD -0.0378 Tw -[( will modify it to)]TJ --33.7716 -1.2889 TD -0 Tw -(be )Tj -/TT10 1 Tf -1.2822 0 TD -(\(A \(B \(C D E\) F G\)\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --14.0174 -2.5489 TD -(\(LO)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.5997 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 136.6517 341.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 341.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1122 Tw -[("Left Out". Removes a left parenthesis from the )]TJ -/TT14 1 Tf -22.3162 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1122 Tw -(th element. )Tj -/TT18 1 Tf -5.7639 0 TD -(All elements following the )Tj -/TT14 1 Tf -11.2277 0 TD -0 Tw -(N)Tj -/TT18 1 Tf -0.6001 0 TD -(th)Tj --40.508 -1.2889 TD -(element are deleted.)Tj -/TT8 1 Tf -7.8628 0 TD -( Generates an error if )Tj -/TT14 1 Tf -9.8433 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element is not a list.)Tj --18.3062 -2.9556 TD -0.0356 Tw -(Example: If the current expression is )Tj -/TT10 1 Tf -16.5771 0 TD -0.0856 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.715 0 TD -0.0356 Tw -(, then )Tj -/TT10 1 Tf -2.7903 0 TD -0.0856 Tw -(\(LO 3\))Tj -/TT8 1 Tf -3.6861 0 TD -0.0356 Tw -[( will modify it to)]TJ --33.7686 -1.2889 TD -0 Tw -(be )Tj -/TT10 1 Tf -1.2822 0 TD -(\(A B C D E\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --9.2166 -2.4 TD -(\(RI)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(M)Tj -/TT10 1 Tf -0.5996 0 TD -(\) )Tj -/TT8 1 Tf -30.7556 0 TD -([Editor Command])Tj --32.9222 -2.7333 TD -0.0911 Tw -[("Right In". Inserts a right parenthesis after the )]TJ -/TT14 1 Tf -21.5251 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0911 Tw -(th element of the )Tj -/TT14 1 Tf -8.0578 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0911 Tw -[(th element. The rest of)]TJ --30.7831 -1.2889 TD -0 Tw -(the )Tj -/TT18 1 Tf -1.6372 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -(th element is brought up to the level of the current expression.)Tj --2.415 -2.8889 TD -0.0244 Tw -(Example: If the current expression is )Tj -/TT10 1 Tf -16.5104 0 TD -0.0589 Tw -(\(A \(B C D E\) F G\))Tj -/TT8 1 Tf -10.555 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5244 0 TD -0.0589 Tw -(\(RI 2 2\))Tj -/TT8 1 Tf -4.9186 0 TD -0.0244 Tw -[( will modify it to be)]TJ -/TT10 1 Tf --32.5084 -1.2889 TD -0.1378 Tw -(\(A \(B C\) D E F G\))Tj -/TT8 1 Tf -11.0283 0 TD -0.0578 Tw -[(. Another way of thinking about )]TJ -/TT10 1 Tf -15.1564 0 TD -0 Tw -(RI)Tj -/TT8 1 Tf -1.2002 0 TD -0.0578 Tw -[( is to read it as "move the right)]TJ --27.3849 -1.2889 TD -0 Tw -(parenthesis at the end of the )Tj -/TT14 1 Tf -12.7344 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element )Tj -/TT18 1 Tf -4.9272 0 TD -(in)Tj -/TT8 1 Tf -0.834 0 TD -( to after its )Tj -/TT14 1 Tf -4.9463 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element.")Tj -/TT10 1 Tf --25.9754 -2.5489 TD -(\(RO)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 131.2518 137.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 137.18 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0133 Tw -[("Right Out". Removes the right parenthesis from the )]TJ -/TT14 1 Tf -23.7089 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -(th element, moving it to the end of the)Tj --24.309 -1.2889 TD -0.1944 Tw -[(current expression. All elements following the )]TJ -/TT14 1 Tf -22.282 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1944 Tw -(th element are moved inside of the )Tj -/TT14 1 Tf -16.9397 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th)Tj --40.4219 -1.2889 TD -(element. Generates an error if )Tj -/TT14 1 Tf -13.6123 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th element is not a list.)Tj -ET -endstream -endobj -157 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -159 0 obj -<< -/Length 6626 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-44)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -0.0178 Tw -(Example: If the current expression is )Tj -/TT10 1 Tf -16.4704 0 TD -0.0422 Tw -(\(A B \(C D E\) F G\))Tj -/TT8 1 Tf -10.455 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5178 0 TD -0.0422 Tw -(\(RO 3\))Tj -/TT8 1 Tf -3.6428 0 TD -0.0178 Tw -[( will modify it to be )]TJ -/TT10 1 Tf -9.0549 0 TD -0 Tw -(\(A)Tj --40.1409 -1.2889 TD -0.31 Tw -(B \(C D E F G\)\))Tj -/TT8 1 Tf -9.9514 0 TD -0.1289 Tw -[(. Another way of thinking about )]TJ -/TT10 1 Tf -15.6542 0 TD -0 Tw -(RO)Tj -/TT8 1 Tf -1.2002 0 TD -0.1289 Tw -[( is to read it as "move the right)]TJ --26.8057 -1.2889 TD -0 Tw -(parenthesis at the end of the )Tj -/TT18 1 Tf -12.7344 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -(th element )Tj -/TT18 1 Tf -4.9272 0 TD -(out)Tj -/TT8 1 Tf -1.333 0 TD -( to the end of the current expression.")Tj -/TT6 1 Tf -10 0 0 10 126 519 Tm -(TO and THRU)Tj -/TT10 1 Tf -9 0 0 9 126 503.34 Tm -(EXTRACT)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.7756 0 TD -(EMBED)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7756 0 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7756 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2756 Tw -(, and )Tj -/TT10 1 Tf -2.994 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2756 Tw -[( can be made to operate on several contiguous)]TJ --22.7235 -1.2889 TD -0.1033 Tw -(elements, i.e., a segment of a list, by using in their respective location specifications the )Tj -/TT10 1 Tf -40.0861 0 TD -0 Tw -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( or )]TJ -/TT10 1 Tf -1.6476 0 TD -0 Tw -(THRU)Tj -/TT8 1 Tf --42.9339 -1.2889 TD -(command.)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\(@)Tj -1.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD --0.0003 Tw -( THRU @)Tj -4.2 -0.3333 TD -0 Tw -(2)Tj -0.6 0.3333 TD -(\) )Tj -/TT8 1 Tf -27.6556 0 TD -([Editor Command])Tj --32.9222 -3.0667 TD -0.1522 Tw -(Does a )Tj -/TT10 1 Tf -3.5271 0 TD -0.3656 Tw -(\(LC . @)Tj -4.9318 -0.3333 TD -0 Tw -(1)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1522 Tw -(, followed by an )Tj -/TT10 1 Tf -7.981 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1522 Tw -(, and then a )Tj -/TT10 1 Tf -6.021 0 TD -0.3656 Tw -(\(BI 1 @)Tj -4.9311 -0.3333 TD -0 Tw -(2)Tj -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1522 Tw -(, thereby grouping the)Tj --30.9923 -1.6222 TD -0.1011 Tw -(segment into a single element, and finally does a )Tj -/TT10 1 Tf -22.6229 0 TD -0 Tw -(1)Tj -/TT8 1 Tf -0.6001 0 TD -0.1011 Tw -(, making the final current expression be)Tj --23.223 -1.2889 TD -0 Tw -(that element.)Tj -0 -2.8889 TD -0.0011 Tw -(For example, if the current expression is )Tj -/TT10 1 Tf -17.9409 0 TD -0.0022 Tw -(\(A \(B \(C D\) \(E\) \(F G H\) I\) J K\))Tj -/TT8 1 Tf -18.6253 0 TD -0.0011 Tw -(, following)Tj -/TT10 1 Tf --36.5661 -1.2889 TD -0 Tw -(\(C THRU G\))Tj -/TT8 1 Tf -6.001 0 TD -(, the current expression will be )Tj -/TT10 1 Tf -13.8374 0 TD -(\(\(C D\) \(E\) \(F G H\)\))Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj -/TT10 1 Tf --32.5736 -2.5489 TD -(\(@)Tj -1.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD --0.0001 Tc -0.0001 Tw -( TO @)Tj -3 -0.3333 TD -0 Tc -0 Tw -(2)Tj -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 209.4017 344.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 344.8 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -0.17 Tw -(Same as )Tj -/TT10 1 Tf -4.1505 0 TD -0 Tw -(THRU)Tj -/TT8 1 Tf -2.4004 0 TD -0.17 Tw -[( except the last element not included, i.e., after the )]TJ -/TT10 1 Tf -24.0486 0 TD -0 Tw -(BI)Tj -/TT8 1 Tf -1.2002 0 TD -0.17 Tw -(, an )Tj -/TT10 1 Tf -2.172 0 TD -0.4089 Tw -(\(RI 1 -2\))Tj -/TT8 1 Tf -6.2187 0 TD -0.17 Tw -[( is)]TJ --40.1905 -1.2889 TD -0 Tw -(performed.)Tj --4 -2 TD -0.0733 Tw -(If both )Tj -/TT10 1 Tf -3.3239 0 TD -0 Tw -(@)Tj -0.5994 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0733 Tw -[( and )]TJ -/TT10 1 Tf -2.3395 0 TD -0 Tw -(@)Tj -0.6005 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0733 Tw -[( are numbers, and )]TJ -/TT10 1 Tf -8.5292 0 TD -0 Tw -(@)Tj -0.603 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0733 Tw -[( is greater than )]TJ -/TT10 1 Tf -7.1288 0 TD -0 Tw -(@)Tj -0.6001 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0733 Tw -(, then )Tj -/TT10 1 Tf -2.8659 0 TD -0 Tw -(@)Tj -0.5996 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0733 Tw -[( counts from the beginning of the)]TJ --30.19 -1.6222 TD -0.0367 Tw -(current expression, the same as )Tj -/TT10 1 Tf -14.241 0 TD -0 Tw -(@)Tj -0.6035 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0367 Tw -[(. In other words, if the current expression is )]TJ -/TT10 1 Tf -20.1103 0 TD -0.0878 Tw -(\(A B C D E F G\))Tj -/TT8 1 Tf -9.5281 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --45.0829 -1.6222 TD -0.0578 Tw -(\(3 THRU 5\))Tj -/TT8 1 Tf -6.1165 0 TD -0.0244 Tw -[( means )]TJ -/TT10 1 Tf -3.4166 0 TD -0.0578 Tw -(\(C THRU E\))Tj -/TT8 1 Tf -6.1165 0 TD -0.0244 Tw -[( not )]TJ -/TT10 1 Tf -2.003 0 TD -0.0578 Tw -(\(C THRU G\))Tj -/TT8 1 Tf -6.1165 0 TD -0.0244 Tw -[(. In this case, the corresponding )]TJ -/TT10 1 Tf -14.6487 0 TD -0 Tw -(BI)Tj -/TT8 1 Tf -1.2002 0 TD -0.0244 Tw -[( command is)]TJ -/TT10 1 Tf --39.618 -1.2889 TD -0 Tw -(\(BI 1 @)Tj -4.2 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(-@)Tj -1.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD -(+1\))Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --8.4003 -2.4 TD -(THRU)Tj -/TT8 1 Tf -2.4004 0 TD -0.3211 Tw -[( and )]TJ -/TT10 1 Tf -2.8351 0 TD -0 Tw -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.3211 Tw -[( are not very useful commands by themselves; they are intended to be used in)]TJ --6.4357 -1.2889 TD -0.0256 Tw -(conjunction with )Tj -/TT10 1 Tf -7.764 0 TD -0 Tw -(EXTRACT)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5256 0 TD -(EMBED)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5256 0 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5256 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0256 Tw -(, and )Tj -/TT10 1 Tf -2.494 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -[(. After )]TJ -/TT10 1 Tf -3.3877 0 TD -0 Tw -(THRU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -[( and )]TJ -/TT10 1 Tf -2.244 0 TD -0 Tw -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0256 Tw -[( have operated,)]TJ --38.4698 -1.2889 TD -0.0367 Tw -(they set an internal editor flag informing the above commands that the element they are operating on)Tj -0 -1.2222 TD -0.03 Tw -(is actually a segment, and that the extra pair of parentheses should be removed when the operation is)Tj -T* -0 Tw -(complete. Thus:)Tj -/TT10 1 Tf -4 -2.8222 TD -(*P)Tj -5.3333 -1 TD -(\(PROG \(& & ATM IND VAL WORD\) \(PRIN1 & T\) \(PRIN1 & T\) \(SETQ)Tj -T* -(IND &\))Tj -0 -1.0667 TD -(\(SETQ VAL &\) **COMMENT** \(SETQQ )Tj -/TT18 1 Tf -21.6035 0 TD -(user typed Control-E)Tj -/TT10 1 Tf --26.9369 -3.8889 TD -(*\(MOVE \(3 THRU 4\) TO BEFORE 7\))Tj -5.3333 -1 TD -(*P)Tj -T* -(\(PROG \(& & ATM IND VAL WORD\) \(SETQ IND &\) \(SETQ VAL &\))Tj -T* -(\(PRIN1 & T\))Tj -0 -1.0667 TD -(\(PRIN1 & T\) **COMMENT** )Tj -/TT8 1 Tf -16.2026 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(user typed Control-E)Tj -ET -endstream -endobj -160 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -162 0 obj -<< -/Length 2752 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-45)Tj -/TT10 1 Tf --38.3333 60.6822 TD -(*)Tj -5.3333 -1 TD -(*P)Tj -T* -(\(* FAIL RETURN FROM EDITOR. USER SHOULD NOTE THE VALUES OF)Tj -T* -(SOURCEXPR)Tj -T* -(AND CURRENTFORM. CURRENTFORM IS THE LAST FORM IN SOURCEXPR)Tj -T* -(WHICH WILL)Tj -T* -(HAVE BEEN TRANSLATED, AND IT CAUSED THE ERROR.\))Tj -T* -(*\(DELETE \(USER THRU CURR$\)\))Tj -T* -(=CURRENTFORM.)Tj -T* -(*P)Tj -0 -1.0667 TD -(\(* FAIL RETURN FROM EDITOR.CURRENTFORM IS )Tj -/TT8 1 Tf -27.0044 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(user typed Control-E)Tj -/TT10 1 Tf --32.5877 -3.8889 TD -(*)Tj -5.3333 -1 TD -(*P)Tj -T* -(... LP \(SELECTO & & & & NIL\) \(SETQ Y &\) OUT \(SETQ FLG &\))Tj -T* -(\(RETURN Y\)\))Tj -T* -(*\(MOVE \(1 TO OUT\) TO N HERE])Tj -T* -(*P)Tj -T* -(... OUT \(SETQ FLG &\) \(RETURN Y\) LP \(SELECTQ & & & & NIL\))Tj -T* -(\(SETQ Y &\)\))Tj -T* -(*)Tj --5.3333 -2.6667 TD -(*PP)Tj -5.3333 -1 TD -([PROG \(RF TEMP1 TEMP2\))Tj -T* -( \(COND)Tj -T* -( \(\(NOT \(MEMB REMARG LISTING\)\))Tj -T* -( \(SETQ TEMP1 \(ASSOC REMARG NAMEDREMARKS\)\))Tj -T* -(**COMMENT**)Tj -T* -( \(SETQ TEMP2 \(CADR TEMP1\)\))Tj -T* -( \(GO SKIP\)\))Tj -T* -( \(T **COMMENT**)Tj -T* -( \(SETQ TEMP1 REMARG\)\)\))Tj -T* -( \(NCONC1 LISTING REMARG\))Tj -T* -( \(COND)Tj -T* -( \(\(NOT \(SETQ TEMP2 \(SASSOC)Tj --5.3333 -3.8889 TD -(*\(EXTRACT \(SETQ THRU CADR\) FROM COND\))Tj -5.3333 -1 TD -(*P)Tj -T* -(\(PROG \(RF TEMP1 TEMP2\) \(SETQ TEMP1 &\) **COMMENT** \(SETQ)Tj -0 -1.0667 TD -(TEMP2 &\) \(NCONC1 LISTING REMARG\) \(COND & & )Tj -/TT8 1 Tf -27.6045 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(user typed Control-)Tj --27.8545 -1.0667 TD -(E)Tj -/TT10 1 Tf -0 -1.9333 TD -(*)Tj --9.3333 -1.8444 TD -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0656 Tw -[( and )]TJ -/TT10 1 Tf -2.324 0 TD -0 Tw -(THRU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( can also be used directly with )]TJ -/TT10 1 Tf -14.0707 0 TD -0 Tw -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -(, because )Tj -/TT10 1 Tf -4.363 0 TD -0 Tw -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( involves a location specification while)]TJ -/TT10 1 Tf --27.9589 -1.2889 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -(, B, )Tj -/TT10 1 Tf -1.7353 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -(, and )Tj -/TT10 1 Tf -2.5673 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( do not. Thus in the previous example, if the current expression had been the )]TJ -/TT10 1 Tf -35.3867 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj --45.0902 -1.2889 TD -0.0444 Tw -(e.g.,you had first performed )Tj -/TT10 1 Tf -12.8516 0 TD -0.1056 Tw -(F COND)Tj -/TT8 1 Tf -3.7061 0 TD -0.0444 Tw -(, you could have used )Tj -/TT10 1 Tf -10.1646 0 TD -0.1056 Tw -(\(XTR \(SETQ THRU CADR\)\))Tj -/TT8 1 Tf -13.5188 0 TD -0.0444 Tw -[( to perform)]TJ --40.2412 -1.2889 TD -0 Tw -(the extraction.)Tj -ET -endstream -endobj -163 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -165 0 obj -<< -/Length 2543 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-46)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\(@)Tj -1.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( TO\))Tj -/TT4 1 Tf -10 0 0 10 187.8035 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 568.2 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.5489 TD -(\(@)Tj -1.2 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( THRU\))Tj -/TT4 1 Tf -10 0 0 10 198.6053 554.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 554.26 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Both are the same as )Tj -/TT10 1 Tf -9.2856 0 TD -(\(@)Tj -1.201 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( THRU -1\))Tj -/TT8 1 Tf -5.4009 0 TD -(, i.e., from )Tj -/TT10 1 Tf -4.6768 0 TD -(@)Tj -0.6001 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( through the end of the list.)Tj --22.3644 -3.2889 TD -(Examples:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1.2222 TD -(\(VALUE \(RPLACA DEPRP &\) \(RPLACD &\) \(RPLACA VARSWORD)Tj -0 -1 TD -(&\) \(RETURN\)\))Tj -0 -1.0667 TD -(*\(MOVE \(2 TO\) TO N \()Tj -/TT19 1 Tf -12.002 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( PROG\)\))Tj --12.9888 -1 TD -(*\(N \(GO VAR\)\))Tj -T* -(*P)Tj -T* -(\(VALUE \(GO VAR\)\))Tj -T* -(*P)Tj -T* -(\(T **COMMENT** \(COND &\) **COMMENT** \(EDITSMASH CL &)Tj -T* -(&\) \(COND &\)\))Tj -T* -(*\(-3 \(GO REPLACE\)\))Tj -0 -1.0667 TD -(*\(MOVE \(COND TO\) TO N )Tj -/TT19 1 Tf -13.2021 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -( PROG \(N REPLACE\)\))Tj --13.8052 -1 TD -(*P)Tj -T* -(\(T **COMMENT** \(GO REPLACE\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(\(PROG \(&\) **COMMENT** \(COND & & &\) \(COND & & &\))Tj -T* -(DELETE \(COND & &\) REPLACE)Tj -T* -(\(COND &\) **COMMENT** \(EDITSMASH CL & &\) \(COND &\)\))Tj -T* -(*)Tj -0 -1.7778 TD -(*PP)Tj -0 -1 TD -([LAMBDA \(CLAUSALA X\))Tj -T* -( \(PROG \(A D\))Tj -T* -( \(SETQ A CLAUSALA\))Tj -T* -( LP \(COND)Tj -T* -( \(\(NULL A\))Tj -T* -( \(RETURN\)\)\))Tj -T* -( \(SERCH X A\))Tj -T* -( \(RUMARK \(CDR A\)\))Tj -T* -( \(NOTICECL \(CAR A\)\))Tj -T* -( \(SETQ A \(CDR A\)\))Tj -T* -( \(GO LP])Tj -T* -(*\(EXTRACT \(SERCH THRU NOT$\) FROM PROG\))Tj -T* -(=NOTICECL)Tj -T* -(*P)Tj -T* -(\(LAMBDA \(CLAUSALA X\) \(SERCH X A\) \(RUMARK &\) \(NOTICECL)Tj -T* -(&\)\))Tj -T* -(*\(EMBED \(SERCH TO\) IN \(MAP CLAUSALA \(FUNCTION \(LAMBDA)Tj -T* -(\(A\) *])Tj -T* -(*PP)Tj -T* -([LAMBDA \(CLAUSALA X\))Tj -T* -( \(MAP CLAUSALA)Tj -T* -( \(FUNCTION \(LAMBDA \(A\))Tj -T* -( \(SERCH X A\))Tj -T* -( \(RUMARK \(CDR A\)\))Tj -T* -( \(NOTICECL \(CAR A])Tj -T* -(*)Tj -ET -endstream -endobj -166 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -168 0 obj -<< -/Length 7466 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-47)Tj -/TT6 1 Tf -10 0 0 10 78 568.2 Tm -(The R Command)Tj -/TT10 1 Tf -9 0 0 9 102 548.2 Tm -(\(R)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 133.5044 548.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 548.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.2744 Tw -(Replaces all instances of )Tj -/TT14 1 Tf -11.9962 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2744 Tw -[( by )]TJ -/TT14 1 Tf -2.1583 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.2744 Tw -[( in the current expression, e.g., )]TJ -/TT10 1 Tf -15.403 0 TD -0.6589 Tw -(\(R CAADR CADAR\))Tj -/TT8 1 Tf -10.3192 0 TD -0 Tw -(.)Tj --41.0769 -1.2889 TD -(Generates an error if there is not at least one instance.)Tj -0 -2.8889 TD -(The )Tj -/TT10 1 Tf -1.9294 0 TD -(R)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( command operates in conjunction with the search mechanism of the editor. The search)]TJ --2.5295 -1.2889 TD -0.1 Tw -(proceeds as described in the Search Algorithm section above, and )Tj -/TT14 1 Tf -30.1997 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1 Tw -[( can employ any of the)]TJ --30.7998 -1.2889 TD -0.2478 Tw -[(patterns shown in the Commands That Search section above. Each time )]TJ -/TT14 1 Tf -35.0183 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2478 Tw -[( matches an)]TJ --35.6184 -1.2889 TD -0.0611 Tw -(element of the structure, the element is replaced by \(a copy of\) )Tj -/TT14 1 Tf -28.4858 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0611 Tw -(; each time )Tj -/TT14 1 Tf -5.1672 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0611 Tw -[( matches a tail)]TJ --34.8532 -1.2889 TD -0 Tw -(of the structure, the tail is replaced by \(a copy of\) )Tj -/TT14 1 Tf -21.8726 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --22.4727 -2.9556 TD -(For example, if the current expression is )Tj -/TT10 1 Tf -17.9331 0 TD -(\(A \(B C\) \(B . C\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(,)Tj -/TT10 1 Tf --28.1348 -2.9556 TD -(\(R C D\))Tj -/TT8 1 Tf -4.2007 0 TD -( will change it to )Tj -/TT10 1 Tf -7.5894 0 TD -(\(A \(B D\) \(B . D\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(,)Tj -/TT10 1 Tf --21.9917 -2.9556 TD -(\(R \(... . C\) D\))Tj -/TT8 1 Tf -9.0015 0 TD -( will change it to )Tj -/TT10 1 Tf -7.5894 0 TD -(\(A \(B C\) \(B . D\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(,)Tj -/TT10 1 Tf --26.7925 -2.9556 TD -(\(R C \(D E\)\))Tj -/TT8 1 Tf -6.6011 0 TD -( will change it to )Tj -/TT10 1 Tf -7.5894 0 TD -(\(A \(B \(D E\)\) \(B D E\)\))Tj -/TT8 1 Tf -12.6021 0 TD -(, and)Tj -/TT10 1 Tf --26.7925 -2.9556 TD -(\(R \(... . NIL\) D\))Tj -/TT8 1 Tf -10.2017 0 TD -( will change it to )Tj -/TT10 1 Tf -7.5894 0 TD -(\(A \(B C . D\) \(B . C\) . D\))Tj -/TT8 1 Tf -15.0024 0 TD -(.)Tj --32.7935 -2.9556 TD -(If )Tj -/TT14 1 Tf -1.0177 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( is an atom or string containing )]TJ -/TT10 1 Tf -14.7015 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -(s \(escapes\), )Tj -/TT10 1 Tf -5.386 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -(s appearing in )Tj -/TT14 1 Tf -6.8456 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( stand for the characters)]TJ --30.3512 -1.2889 TD -0.0178 Tw -(matched by the corresponding )Tj -/TT10 1 Tf -13.8441 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( in )]TJ -/TT14 1 Tf -1.4086 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8172 0 TD -0.0422 Tw -(\(R FOO$ FIE$\))Tj -/TT8 1 Tf -7.8857 0 TD -0.0178 Tw -[( means for all atoms or)]TJ --31.1558 -1.2889 TD -0.0567 Tw -(strings that begin with )Tj -/TT10 1 Tf -10.4537 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0567 Tw -(, replace the characters ")Tj -/TT10 1 Tf -10.9127 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0567 Tw -(" by ")Tj -/TT10 1 Tf -2.4649 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0567 Tw -[(". Applied to the list )]TJ -/TT10 1 Tf -9.7043 0 TD -0 Tw -(\(FOO)Tj --38.9365 -1.2889 TD -0.2678 Tw -(FOO2 XFOO1\))Tj -/TT8 1 Tf -6.8689 0 TD -0 Tw -(, )Tj -/TT14 1 Tf -0.6111 0 TD -0.2678 Tw -(\(R FOO$ FIE$\))Tj -/TT8 1 Tf -8.3368 0 TD -0.1111 Tw -[( would produce )]TJ -/TT10 1 Tf -7.6468 0 TD -0.2678 Tw -(\(FIE FIE2 XFOO1\))Tj -/TT8 1 Tf -10.1371 0 TD -0.1111 Tw -(, and )Tj -/TT10 1 Tf -2.6651 0 TD -0.2678 Tw -(\(R $FOO$)Tj --36.2658 -1.2889 TD -0 Tw -($FIE$\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0189 Tw -[( would produce )]TJ -/TT10 1 Tf -7.3701 0 TD -0.0444 Tw -(\(FIE FIE2 XFIE1\))Tj -/TT8 1 Tf -9.6905 0 TD -0.0189 Tw -[(. Similarly, )]TJ -/TT10 1 Tf -5.3296 0 TD -0.0444 Tw -(\(R $D$ $A$\))Tj -/TT8 1 Tf -6.69 0 TD -0.0189 Tw -[( will change )]TJ -/TT10 1 Tf -5.6568 0 TD -0 Tw -(\(LIST)Tj --38.3375 -1.2889 TD -0.3222 Tw -(\(CADR X\) \(CADDR Y\)\))Tj -/TT8 1 Tf -12.3685 0 TD -0.1344 Tw -[( to )]TJ -/TT10 1 Tf -1.641 0 TD -0.3222 Tw -(\(LIST \(CAAR X\) \(CAADR\)\))Tj -/TT8 1 Tf -14.7689 0 TD -0.1344 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.7043 0 TD -0 Tw -(CADDR)Tj -/TT8 1 Tf -3.0005 0 TD -0.1344 Tw -[( was )]TJ -/TT18 1 Tf -2.5267 0 TD -0 Tw -(not)Tj -/TT8 1 Tf --40.0099 -1.2889 TD -0.0211 Tw -(changed to )Tj -/TT10 1 Tf -5.1682 0 TD -0 Tw -(CAAAR)Tj -/TT8 1 Tf -3.0005 0 TD -0.0211 Tw -(, i.e., )Tj -/TT10 1 Tf -2.3122 0 TD -0.0511 Tw -(\(R $D$ $A$\))Tj -/TT8 1 Tf -6.7033 0 TD -0.0211 Tw -[( does not mean replace every )]TJ -/TT10 1 Tf -13.2473 0 TD -0 Tw -(D)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( with )]TJ -/TT10 1 Tf -2.5754 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -(, but replace the)Tj --34.2071 -1.2889 TD -0 Tw -(first )Tj -/TT10 1 Tf -2.019 0 TD -(D)Tj -/TT8 1 Tf -0.6001 0 TD -( in every atom or string by )Tj -/TT10 1 Tf -11.9766 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(. If you wanted to replace every )Tj -/TT10 1 Tf -14.4922 0 TD -(D)Tj -/TT8 1 Tf -0.6001 0 TD -( by )Tj -/TT10 1 Tf -1.6094 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, you could perform)Tj -/TT10 1 Tf --32.4976 -1.2889 TD -(\(LP \(R $D$ $A$\)\))Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj --9.6016 -2.9556 TD -0.0411 Tw -(You will be informed of all such )Tj -/TT10 1 Tf -14.7263 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( replacements by a message of the form )]TJ -/TT14 1 Tf -17.9886 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(->)Tj -/TT14 1 Tf -1.2002 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -(, e.g., )Tj -/TT10 1 Tf -2.6174 0 TD -0 Tw -(CADR-)Tj --38.3327 -1.2889 TD -(>CAAR)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --3.0005 -2.9556 TD -(If )Tj -/TT14 1 Tf -1.1233 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2033 Tw -[( matches a string, it will be replaced by a string. It does not matter whether )]TJ -/TT14 1 Tf -36.5683 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2033 Tw -[( or )]TJ -/TT14 1 Tf -1.8476 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf --40.7393 -1.2889 TD -0.0822 Tw -(themselves are strings, i.e. )Tj -/TT10 1 Tf -12.1526 0 TD -0.1978 Tw -(\(R $D$ $A$\))Tj -/TT8 1 Tf -6.9966 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5822 0 TD -0.1978 Tw -(\(R "$D$" $A$\), \(R $D$ "$A$"\))Tj -/TT8 1 Tf -17.7916 0 TD -0.0822 Tw -(, and )Tj -/TT10 1 Tf -2.6073 0 TD -0 Tw -(\(R)Tj --40.1304 -1.2889 TD -0.0489 Tw -("$D$" "$A$"\))Tj -/TT8 1 Tf -7.2501 0 TD -0.02 Tw -[( are equivalent. )]TJ -/TT14 1 Tf -7.3803 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( will never match with a number, i.e., )]TJ -/TT10 1 Tf -16.9002 0 TD -0.0489 Tw -(\(R $1 $2\))Tj -/TT8 1 Tf -5.4987 0 TD -0.02 Tw -[( will not)]TJ --37.6293 -1.2889 TD -0 Tw -(change 11 to 12.)Tj -0 -2.8889 TD -(The )Tj -/TT10 1 Tf -1.9949 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( \(escape\) feature can be used to delete or add characters, as well as replace them. For)]TJ --2.595 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.4768 0 TD -0.5467 Tw -(\(R $1 $\))Tj -/TT8 1 Tf -5.8941 0 TD -0.2278 Tw -[( will delete the terminating )]TJ -/TT10 1 Tf -13.3596 0 TD -0 Tw -(1)Tj -/TT8 1 Tf -0.6001 0 TD -0.2278 Tw -(s from all literal atoms and strings.)Tj -ET -endstream -endobj -169 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -171 0 obj -<< -/Length 9451 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-48)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -0.2267 Tw -(Similarly, if an )Tj -/TT10 1 Tf -7.409 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.2267 Tw -[( in )]TJ -/TT14 1 Tf -1.8264 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2267 Tw -[( does not have a mate in )]TJ -/TT14 1 Tf -12.5374 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.2267 Tw -(, the characters matched by the )Tj -/TT10 1 Tf -15.3073 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.2267 Tw -[( are)]TJ --39.4804 -1.2889 TD -0.1633 Tw -[(effectively deleted. For example, )]TJ -/TT10 1 Tf -15.6648 0 TD -0.3922 Tw -(\(R $/$ $\))Tj -/TT8 1 Tf -6.1853 0 TD -0.1633 Tw -[( will change )]TJ -/TT10 1 Tf -6.0901 0 TD -0 Tw -(AND/OR)Tj -/TT8 1 Tf -3.6006 0 TD -0.1633 Tw -[( to )]TJ -/TT10 1 Tf -1.6987 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -0.1633 Tw -[(. There is no)]TJ --35.0399 -1.2889 TD -0.0278 Tw -(similar operation for changing )Tj -/TT10 1 Tf -13.8191 0 TD -0 Tw -(AND/OR)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( to )]TJ -/TT10 1 Tf -1.4276 0 TD -0 Tw -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.0278 Tw -(, since the first )Tj -/TT10 1 Tf -6.7371 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0278 Tw -[( in )]TJ -/TT14 1 Tf -1.4286 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0278 Tw -[( always corresponds to the)]TJ --29.4134 -1.2889 TD -0 Tw -(first )Tj -/TT10 1 Tf -2.0246 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( in )]TJ -/TT18 1 Tf -1.3842 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.7222 0 TD -0.0056 Tw -(, the second )Tj -/TT12 1 Tf -5.4893 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.5 0 TD -0.0056 Tw -[( in )]TJ -/TT14 1 Tf -1.3842 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( to the second in )]TJ -/TT14 1 Tf -7.4956 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -(, etc. )Tj -/TT14 1 Tf -2.5157 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( can also be a list containing )]TJ -/TT10 1 Tf -12.64 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -(s, e.g., )Tj -/TT10 1 Tf -2.9701 0 TD -0 Tw -(\(R)Tj --40.1262 -1.2889 TD -($1 \(CAR $\)\))Tj -/TT8 1 Tf -6.6011 0 TD -( will change )Tj -/TT10 1 Tf -5.6001 0 TD -(FOO1)Tj -/TT8 1 Tf -2.4004 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(\(CAR FOO\))Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(FIE1)Tj -/TT8 1 Tf -2.4004 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(\(CAR FIE\))Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --31.0479 -2.9556 TD -(If )Tj -/TT14 1 Tf -0.9233 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( does not contain )Tj -/TT10 1 Tf -7.798 0 TD -0 Tc -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -(s, )Tj -/TT10 1 Tf -0.9272 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( appearing in )Tj -/TT14 1 Tf -6.1384 0 TD -0 Tc -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( refers to the )Tj -/TT18 1 Tf -5.7775 0 TD -0 Tc -0 Tw -(entire)Tj -/TT8 1 Tf -2.3345 0 TD -0.0001 Tc -0.0032 Tw -( expression matched by )Tj -/TT14 1 Tf -10.6842 0 TD -0 Tc -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0033 Tw -(, e.g., )Tj -/TT10 1 Tf -2.5418 0 TD -0 Tw -(\(R)Tj --40.1254 -1.2889 TD -0.0156 Tw -(LONGATOM $\))Tj -/TT8 1 Tf -7.2167 0 TD -0.0067 Tw -[( changes )]TJ -/TT10 1 Tf -4.0802 0 TD -0 Tw -(LONGATOM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0067 Tw -[( to )]TJ -/TT10 1 Tf -1.3854 0 TD -0 Tw -(LONGATOM)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5067 0 TD -(\(R)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.2567 0 TD -0.0156 Tw -(\(SETQ X &\) \(PRINT $\)\))Tj -/TT8 1 Tf -12.6643 0 TD -0.0067 Tw -[( changes)]TJ --37.5118 -1.2889 TD -0 Tw -(every )Tj -/TT10 1 Tf -2.8208 0 TD -0.2311 Tw -(\(SETQ X &\))Tj -/TT8 1 Tf -6.4632 0 TD -0.0967 Tw -[( to )]TJ -/TT10 1 Tf -1.5654 0 TD -0.2311 Tw -(\(PRINT \(SETQ X &\)\))Tj -/TT8 1 Tf -11.4951 0 TD -0.0967 Tw -[(. If )]TJ -/TT14 1 Tf -1.9599 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0967 Tw -[( is a pattern containing an )]TJ -/TT10 1 Tf -12.2865 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0967 Tw -[( pattern)]TJ --37.7911 -1.2889 TD -0 Tw -(somewhere )Tj -/TT18 1 Tf -5.3673 0 TD -(within)Tj -/TT8 1 Tf -2.667 0 TD -0.0167 Tw -[( it, the characters matched by the )]TJ -/TT10 1 Tf -14.9311 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0167 Tw -(s are not available, and for the purposes)Tj --23.5655 -1.2889 TD -0.0067 Tw -(of replacement, the effect is the same as though )Tj -/TT14 1 Tf -21.186 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( did not contain any )]TJ -/TT10 1 Tf -9.1593 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[(s. For example, if you)]TJ --31.5455 -1.2889 TD -0 Tw -(type )Tj -/TT10 1 Tf -2.2324 0 TD -0.0478 Tw -(\(R \(CAR)Tj -/TT12 1 Tf -4.2485 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.27 0 TD -0.0478 Tw -(F$\) \(PRINT)Tj -/TT18 1 Tf -6.0488 0 TD -0.02 Tc -0 Tw -( $)Tj -/TT10 1 Tf -0.77 0 TD -0 Tc -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.02 Tw -(, the second )Tj -/TT10 1 Tf -5.5327 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -[( will refer to the entire expression matched by)]TJ -/TT10 1 Tf --20.9026 -1.2889 TD -0 Tw -(\(CAR F$\))Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --4.8008 -2.9556 TD -(Since )Tj -/TT10 1 Tf -2.6364 0 TD -(\(R )Tj -/TT14 1 Tf -1.9581 0 TD -0.1578 Tw -($X$ $Y$)Tj -/TT10 1 Tf -4.3585 0 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0656 Tw -[( is a frequently used operation for )]TJ -/TT12 1 Tf -15.685 0 TD -0 Tw -(R)Tj -/TT8 1 Tf -0.7222 0 TD -(eplacing )Tj -/TT12 1 Tf -4.0597 0 TD -(C)Tj -/TT8 1 Tf -0.7222 0 TD -0.0656 Tw -(haracters, the following)Tj --30.742 -1.2889 TD -0 Tw -(command is provided:)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(RC)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 186.9026 366.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 366.4 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1802 0 TD -(\(R)Tj -/TT18 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -($X$ $Y$)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj --11.8311 -2.9556 TD -(R)Tj -/TT8 1 Tf -0.6001 0 TD -0.2222 Tw -[( and )]TJ -/TT10 1 Tf -2.6373 0 TD -0 Tw -(RC)Tj -/TT8 1 Tf -1.2002 0 TD -0.2222 Tw -[( change all instances of )]TJ -/TT14 1 Tf -11.5169 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2222 Tw -[( to )]TJ -/TT14 1 Tf -1.8165 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.2222 Tw -[(. The commands )]TJ -/TT10 1 Tf -8.6848 0 TD -0 Tw -(R1)Tj -/TT8 1 Tf -1.2002 0 TD -0.2222 Tw -[( and )]TJ -/TT10 1 Tf -2.6373 0 TD -0 Tw -(RC1)Tj -/TT8 1 Tf -1.8003 0 TD -0.2222 Tw -[( are available for)]TJ --33.2938 -1.2889 TD -0 Tw -(changing just one, \(i.e., the first\) instance of )Tj -/TT14 1 Tf -19.3862 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --23.2918 -2.5489 TD -(\(R1)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 186.9026 280.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 280.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Find the first instance of )Tj -/TT14 1 Tf -10.9531 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( and replace it by )Tj -/TT14 1 Tf -7.8584 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --21.3451 -2.5489 TD -(\(RC1)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(Y)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 192.3026 233.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 233.12 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1802 0 TD -(\(R1)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -($X$ $Y$)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --13.0313 -2.9556 TD -0.1656 Tw -(In addition, while )Tj -/TT10 1 Tf -8.6505 0 TD -0 Tw -(R)Tj -/TT8 1 Tf -0.6001 0 TD -0.1656 Tw -[( and )]TJ -/TT10 1 Tf -2.524 0 TD -0 Tw -(RC)Tj -/TT8 1 Tf -1.2002 0 TD -0.1656 Tw -[( only operate within the current expression, )]TJ -/TT10 1 Tf -20.7146 0 TD -0 Tw -(R1)Tj -/TT8 1 Tf -1.2002 0 TD -0.1656 Tw -[( and )]TJ -/TT10 1 Tf -2.524 0 TD -0 Tw -(RC1)Tj -/TT8 1 Tf -1.8003 0 TD -0.1656 Tw -[( will)]TJ --39.2138 -1.2889 TD -0.0889 Tw -(continue searching, a la the )Tj -/TT10 1 Tf -12.7286 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.0889 Tw -[( command, until they find an instance of )]TJ -/TT14 1 Tf -18.8517 0 TD -0 Tw -(x)Tj -/TT8 1 Tf -0.6001 0 TD -0.0889 Tw -(, even if the search)Tj --32.7806 -1.2889 TD -0 Tw -(carries them beyond the current expression.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(SW)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(M)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 186.9026 136.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 136.38 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Switches the )Tj -/TT14 1 Tf -5.792 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th and )Tj -/TT14 1 Tf -3.1011 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -(th elements of the current expression.)Tj --10.0933 -2.9556 TD -0.14 Tw -(For example, if the current expression is )Tj -/TT10 1 Tf -18.9131 0 TD -0.3367 Tw -(\(LIST \(CONS \(CAR X\) \(CAR Y\)\) \(CONS)Tj --18.9131 -1.2889 TD -0.0067 Tw -(\(CDR X\) \(CDR Y\)\)\))Tj -/TT8 1 Tf -10.2217 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5022 0 TD -0.0067 Tw -(\(SW 2 3\))Tj -/TT8 1 Tf -4.8141 0 TD -0.0001 Tc -0.0021 Tw -( will modify it to be )Tj -/TT10 1 Tf -8.9616 0 TD -0 Tc -0.0067 Tw -(\(LIST \(CONS \(CDR X\) \(CDR Y\)\))Tj --24.4996 -1.2889 TD -0.1389 Tw -(\(CONS \(CAR X\) \(CAR Y\)\)\))Tj -/TT8 1 Tf -14.3578 0 TD -0.0578 Tw -[(. The relative order of )]TJ -/TT14 1 Tf -10.4014 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0578 Tw -[( and )]TJ -/TT14 1 Tf -2.3084 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0578 Tw -[( is not important, i.e., )]TJ -/TT10 1 Tf -9.9281 0 TD -0.1389 Tw -(\(SW 3)Tj --38.1958 -1.2889 TD -0 Tw -(2\))Tj -/TT8 1 Tf -1.2002 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(\(SW 2 3\))Tj -/TT8 1 Tf -4.8008 0 TD -( are equivalent.)Tj -ET -endstream -endobj -172 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -174 0 obj -<< -/Length 4321 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-49)Tj -/TT10 1 Tf --38.3333 60.6156 TD -(SW)Tj -/TT8 1 Tf -1.2002 0 TD -0.0411 Tw -[( uses the generalized )]TJ -/TT10 1 Tf -9.6444 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[( command )]TJ -/TT10 1 Tf -5.0305 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.2911 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[( to find the )]TJ -/TT14 1 Tf -5.2406 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -(th and )Tj -/TT14 1 Tf -3.1833 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -(th elements, a la the)Tj -/TT10 1 Tf --32.3914 -1.2889 TD -0 Tw -(BI)Tj -/TT8 1 Tf -1.2002 0 TD -(-)Tj -/TT10 1 Tf -0.333 0 TD -(BO)Tj -/TT8 1 Tf -1.2002 0 TD -( commands.)Tj --2.7334 -2.9556 TD -(Thus in the previous example, )Tj -/TT10 1 Tf -13.6348 0 TD -(\(SW CAR CDR\))Tj -/TT8 1 Tf -7.2012 0 TD -( would produce the same result.)Tj -/TT10 1 Tf --22.1693 -2.4 TD --0.0001 Tc -0.0001 Tw -(\(SWAP @)Tj -4.2 -0.3333 TD -0 Tc -0 Tw -(1)Tj -0.6 0.3333 TD -( @)Tj -1.2 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(\) )Tj -/TT8 1 Tf -27.6556 0 TD -([Editor Command])Tj --32.9222 -3.0667 TD -(Like )Tj -/TT10 1 Tf -2.4215 0 TD -(SW)Tj -/TT8 1 Tf -1.2002 0 TD -0.2344 Tw -[( except switches the expressions specified by )]TJ -/TT10 1 Tf -21.6499 0 TD -0 Tw -(@)Tj -0.6029 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.2344 Tw -[( and )]TJ -/TT10 1 Tf -2.6618 0 TD -0 Tw -(@)Tj -0.6005 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.2344 Tw -(, not the corresponding)Tj --30.3367 -1.6222 TD -0.2633 Tw -(elements of the current expression, i.e. )Tj -/TT10 1 Tf -18.7699 0 TD -0 Tw -(@)Tj -0.6023 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.2633 Tw -[( and )]TJ -/TT10 1 Tf -2.7195 0 TD -0 Tw -(@)Tj -0.6005 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.2633 Tw -[( can be at different levels in current)]TJ --23.8922 -1.6222 TD -0 Tw -(expression, or one or both be outside of current expression.)Tj -0 -2.8889 TD -0.0311 Tw -(Thus, using the previous example, )Tj -/TT10 1 Tf -15.6233 0 TD -0.0756 Tw -(\(SWAP CAR CDR\))Tj -/TT8 1 Tf -8.5525 0 TD -0.0311 Tw -[( would result in )]TJ -/TT10 1 Tf -7.4003 0 TD -0.0756 Tw -(\(LIST \(CONS \(CDR)Tj --31.5761 -1.2889 TD -0 Tw -(X\) \(CAR Y\)\) \(CONS \(CAR X\) \(CDR Y\)\)\))Tj -/TT8 1 Tf -21.0034 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 54 372.4 Tm -(Commands That Print)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 369.69 m -510.01 369.69 l -S -BT -/TT10 1 Tf -9 0 0 9 102 351.4 Tm -(PP)Tj -/TT4 1 Tf -10 0 0 10 112.8 351.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 351.4 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prettyprints the current expression.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(P)Tj -/TT4 1 Tf -10 0 0 10 107.4 304.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 304.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prints the current expression as though PRINTLEVEL \(Chapter 25\) were set to 2.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(P )Tj -/TT14 1 Tf -1.8003 0 TD -(M)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 134.4053 257.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 257.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prints the )Tj -/TT14 1 Tf -4.5093 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -(th element of the current expression as though PRINTLEVEL were set to 2.)Tj -/TT10 1 Tf --6.4427 -2.5489 TD -(\(P )Tj -/TT18 1 Tf -1.8003 0 TD -(0)Tj -/TT10 1 Tf -0.5 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 133.5044 209.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 209.98 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as P.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(P )Tj -/TT14 1 Tf -1.8003 0 TD -(M)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 142.0562 163.04 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 163.04 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prints the )Tj -/TT14 1 Tf -4.5093 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -(th element of the current expression as though PRINTLEVEL were set to )Tj -/TT14 1 Tf -32.2798 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --39.3226 -2.4 TD -(\(P 0)Tj -/TT14 1 Tf -2.4004 0 TD -( N)Tj -/TT10 1 Tf -1.2002 0 TD -(\) )Tj -/TT8 1 Tf -30.655 0 TD -([Editor Command])Tj --32.9222 -2.7333 TD -(Prints the current expression as though PRINTLEVEL were set to )Tj -/TT14 1 Tf -29.0957 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --31.0291 -2.5489 TD --0.0001 Tc -(? )Tj -/TT4 1 Tf -10 0 0 10 112.8009 69.3 Tm -0 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 69.3 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as \(P 0 100\).)Tj -ET -endstream -endobj -175 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -177 0 obj -<< -/Length 4518 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-50)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(Both )Tj -/TT10 1 Tf -2.3461 0 TD -(\(P)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.2811 0 TD -(M)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( and )]TJ -/TT10 1 Tf -2.2551 0 TD -0 Tw -(\(P)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.2811 0 TD -(M)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6745 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( use the generalized )]TJ -/TT10 1 Tf -9.1806 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[( command )]TJ -/TT10 1 Tf -5.0105 0 TD -0 Tw -(\(NTH )Tj -/TT14 1 Tf -3.0749 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( to obtain the corresponding)]TJ --32.7055 -1.2889 TD -0.2211 Tw -(element, so that )Tj -/TT18 1 Tf -7.8865 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.9438 0 TD -0.2211 Tw -[( does not have to be a number, e.g., )]TJ -/TT10 1 Tf -17.8142 0 TD -0 Tw -(\(P)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.4711 0 TD -0.5311 Tw -(COND 3\))Tj -/TT8 1 Tf -4.7318 0 TD -0.2211 Tw -[( will work. PP causes all)]TJ --33.0476 -1.2889 TD -0.0067 Tw -(comments to be printed as )Tj -/TT10 1 Tf -11.963 0 TD -0 Tw -(**COMMENT**)Tj -/TT8 1 Tf -6.6011 0 TD -0.0067 Tw -[( \(see Chapter 26\). P and ? print as )]TJ -/TT10 1 Tf -15.3167 0 TD -0 Tw -(**COMMENT**)Tj -/TT8 1 Tf -6.6011 0 TD -0.0067 Tw -[( only those)]TJ --40.4818 -1.2889 TD -0.1244 Tw -[(comments that are \(top level\) elements of the current expression. Lower expressions are not really)]TJ -0 -1.2222 TD -0 Tw -(seen by the editor; the printing command simply sets )Tj -/TT10 1 Tf -23.7671 0 TD -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -( and calls )Tj -/TT10 1 Tf -4.3926 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --34.4945 -2.5489 TD --0.0001 Tc -(PP* )Tj -/TT4 1 Tf -10 0 0 10 171.6009 500.8 Tm -0 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 500.8 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prettyprints current expression, )Tj -/TT18 1 Tf -14.2666 0 TD -(including)Tj -/TT8 1 Tf -3.9092 0 TD -( comments.)Tj -/TT10 1 Tf --18.1758 -2.8889 TD -(PP*)Tj -/TT8 1 Tf -1.8003 0 TD -( is equivalent to )Tj -/TT10 1 Tf -7.2632 0 TD -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -( except that it first resets )Tj -/TT10 1 Tf -10.9927 0 TD -(**COMMENT**FLG)Tj -/TT8 1 Tf -8.4014 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( \(see Chapter 26\).)Tj -/TT10 1 Tf --34.1634 -2.5489 TD -(PPV)Tj -/TT4 1 Tf -10 0 0 10 166.2 427.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 427.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0333 Tw -(Prettyprints the current expression as a variable, i.e., no special treatment for )Tj -/TT10 1 Tf -34.5499 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5333 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj -/TT10 1 Tf --41.0842 -1.2889 TD -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -(, etc., or for CLISP.)Tj -/TT10 1 Tf --3.7337 -2.5489 TD -(PPT)Tj -/TT4 1 Tf -10 0 0 10 166.2 368.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 368.12 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Prettyprints the current expression, printing CLISP translations, if any.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(?=)Tj -/TT4 1 Tf -10 0 0 10 160.8 321.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 321.18 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0389 Tw -[(Prints the argument names and corresponding values for the current expression. Analagous)]TJ -0 -1.2222 TD -0 Tw -(to the )Tj -/TT10 1 Tf -2.7593 0 TD -(?=)Tj -/TT8 1 Tf -1.2002 0 TD -( break command \(Chapter 14\). For example,)Tj -/TT10 1 Tf -5.3739 -2 TD -(*P)Tj -0 -1 TD -(\(STRPOS "A0???" X N \(QUOTE ?\) T\))Tj -T* -(*?=)Tj -T* -(X = "A0???")Tj -T* -(Y = X)Tj -T* -(START = N)Tj -T* -(SKIP = \(QUOTE ?\))Tj -T* -(ANCHOR = T)Tj -T* -(TAIL =)Tj -/TT8 1 Tf --13.3333 -2.7333 TD -0.04 Tw -(The command )Tj -/TT10 1 Tf -6.7021 0 TD -0 Tw -(MAKE)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -[( \(see below\) is an imperative form of )]TJ -/TT10 1 Tf -16.7136 0 TD -0 Tw -(?=)Tj -/TT8 1 Tf -1.2002 0 TD -0.04 Tw -[(. It allows you to specify a change to the)]TJ --27.0162 -1.2889 TD -0 Tw -(element of the current expression that corresponds to a particular argument name.)Tj -0 -2.8889 TD -0.0022 Tw -(All printing functions print to the terminal, regardless of the primary output file. All use the readtable)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0744 Tw -[(. No printing function ever changes the edit chain. All record the current edit chain for use by \\)]TJ -/TT10 1 Tf -44.1173 0 TD -0 Tw -(P)Tj -/TT8 1 Tf --44.7174 -1.2889 TD -(\(above\). All can be aborted with Control-E.)Tj -ET -endstream -endobj -178 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -180 0 obj -<< -/Length 3929 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-51)Tj -/TT6 1 Tf -10 0 0 10 54 568.2 Tm -(Commands for Leaving the Editor)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT10 1 Tf -9 0 0 9 102 547.2 Tm -(OK)Tj -/TT4 1 Tf -10 0 0 10 112.8 547.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 547.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Exits from the editor.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(STOP)Tj -/TT4 1 Tf -10 0 0 10 123.6 500.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 500.26 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0233 Tw -[(Exits from the editor with an error. Mainly for use in conjunction with )]TJ -/TT10 1 Tf -31.7935 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( commands \(see)]TJ --34.1939 -1.2889 TD -0 Tw -(next section\) that you want to abort.)Tj -0 -2.8889 TD -0.0544 Tw -(Since all of the commands in the editor are errorset protected, you must exit from the editor)Tj -0 -1.2222 TD -0.3956 Tw -(via a command. )Tj -/TT10 1 Tf -9.1364 0 TD -0 Tw -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -0.3956 Tw -[( provides a way of distinguishing between a successful and)]TJ --11.5368 -1.2889 TD -0.2444 Tw -[(unsuccessful \(from your standpoint\) editing session. For example, if you are executing)]TJ -/TT10 1 Tf -0 -1.2222 TD -0.2467 Tw -(\(MOVE 3 TO AFTER COND TTY:\))Tj -/TT8 1 Tf -17.436 0 TD -0.1022 Tw -(, and you exitsfrom the lower editor with an )Tj -/TT10 1 Tf -20.7061 0 TD -0 Tw -(OK)Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -(, the)Tj -/TT10 1 Tf --39.3423 -1.2889 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -[( command will then complete its operation. If you want to abort the )]TJ -/TT10 1 Tf -31.5006 0 TD -0 Tw -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -[( command,)]TJ --36.3014 -1.2889 TD -0.1389 Tw -(you must make the )Tj -/TT10 1 Tf -9.3016 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( command generate an error. Do this by exiting from the lower)]TJ --11.702 -1.2889 TD -0.0289 Tw -(editor with a )Tj -/TT10 1 Tf -6.0178 0 TD -0 Tw -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( command. In this case, the higher editors edit chain will not be changed)]TJ --8.4182 -1.2889 TD -0 Tw -(by the )Tj -/TT10 1 Tf -2.9966 0 TD -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -( command.)Tj --5.397 -2.9556 TD -0.0611 Tw -(Actually, it is also possible to exit the editor by typing Control-D. )Tj -/TT10 1 Tf -30.0786 0 TD -0 Tw -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -[( is preferred even if)]TJ --32.479 -1.2889 TD -0.0467 Tw -(you are editing at the )Tj -/TT10 1 Tf -9.912 0 TD -0 Tw -(EVALQT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -[( level, as it will perform the necessary "wrapup" to insure that)]TJ --13.5126 -1.2889 TD -0 Tw -(the changes made while editing will be undoable.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(SAVE)Tj -/TT4 1 Tf -10 0 0 10 123.6035 285.92 Tm --0.0002 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 285.92 Tm -0 Tc -([Editor Command])Tj --32.9222 -2.7333 TD -0.0878 Tw -(Exits from the editor and saves the "state of the edit" on the property list of the function or)Tj -0 -1.2222 TD -0.1444 Tw -(variable being edited under the property )Tj -/TT10 1 Tf -19.1557 0 TD -0 Tw -(EDIT-SAVE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1444 Tw -[(. If the editor is called again on the)]TJ --24.5566 -1.2889 TD -0.11 Tw -(same structure, the editing is effectively "continued," i.e., the edit chain, mark list, value of)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -( are restored.)Tj --9.9941 -2.9556 TD -(For example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1 TD -(\(NULL X\))Tj -T* -(*F COND P)Tj -T* -(\(COND \(& &\) \(T &\)\))Tj -T* -(*SAVE)Tj -T* -(FOO)Tj -/TT19 1 Tf -0 -1.0667 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( .)Tj --0.9868 -1 TD -( .)Tj -T* -( .)Tj -/TT19 1 Tf -0 -1.0667 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(EDITF\(FOO\))Tj --0.9868 -1 TD -(EDIT)Tj -T* -(*P)Tj -T* -(\(COND \(& &\) \(T &\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(\(NULL X\))Tj -T* -(*)Tj -ET -endstream -endobj -181 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -184 0 obj -<< -/Length 3816 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-52)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 162 569.54 Tm -(SAVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -[( is necessary only if you are editing many different expressions; an exit from the editor)]TJ --2.4004 -1.2889 TD -0 Tw -(via )Tj -/TT10 1 Tf -1.696 0 TD -(OK)Tj -/TT8 1 Tf -1.2002 0 TD -0.09 Tw -[( always saves the state of the edit of that call to the editor on the property list of the)]TJ --2.8962 -1.2889 TD -0 Tw -(atom )Tj -/TT10 1 Tf -2.5738 0 TD -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -(, under the property name )Tj -/TT10 1 Tf -12.2448 0 TD -0 Tw -(LASTVALUE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -(. )Tj -/TT10 1 Tf -0.8878 0 TD -0 Tw -(OK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0689 Tw -[( also remprops )]TJ -/TT10 1 Tf -7.0411 0 TD -0 Tw -(EDIT-SAVE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -[( from the)]TJ --37.1499 -1.2889 TD -0 Tw -(property list of the function or variable being edited.)Tj -0 -2.8889 TD -0.0422 Tw -(Whenever the editor is entered, it checks to see if it is editing the same expression as the last)Tj -0 -1.2222 TD -0.0001 Tc -0.0032 Tw -(one edited. In this case, it restores the mark list and )Tj -/TT10 1 Tf -23.1635 0 TD -0 Tc -0 Tw -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0033 Tw -(, and sets )Tj -/TT10 1 Tf -4.3557 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.0002 Tc -0.0031 Tw -( to be the edit)Tj --35.3205 -1.2889 TD -0 Tc -0 Tw -(chain as of the previous exit from the editor. For example:)Tj -/TT19 1 Tf -9.3333 -2 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(EDITF\(FOO\))Tj --0.9868 -1 TD -(EDIT)Tj -T* -(*P)Tj -T* -(\(LAMBDA \(X\) \(PROG & & LP & & & &\)\))Tj -T* -( .)Tj -T* -( .)Tj -T* -( .)Tj -T* -(*P)Tj -T* -(\(COND & &\))Tj -T* -(*OK)Tj -T* -(FOO)Tj -/TT19 1 Tf -0 -1.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.)Tj --1.2368 -1.0667 TD -( . )Tj -/TT8 1 Tf -10.8018 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(any number of )Tj -/TT8 1 Tf -6.103 0 TD -(LISPX)Tj -/TT18 1 Tf -2.7437 0 TD -( inputs)Tj -/TT10 1 Tf --19.8984 -1.0667 TD -( . )Tj -/TT8 1 Tf -10.8018 0 TD -( )Tj -/TT18 1 Tf -0.25 0 TD -(except for calls to the editor)Tj -/TT19 1 Tf --11.0518 -1.0667 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(EDITF\(FOO\))Tj --0.9868 -1 TD -(EDIT)Tj -T* -(*P)Tj -T* -(\(LAMBDA \(X\) \(PROG & & LP & & & &\)\))Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(\(COND & &\))Tj -T* -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.0767 Tw -(Furthermore, as a result of the history feature, if the editor is called on the same expression)Tj -0 -1.2222 TD -0.0933 Tw -(within a certain number of )Tj -/TT10 1 Tf -12.514 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0933 Tw -[( inputs \(namely, the size of the history list, which can be)]TJ --15.5145 -1.2889 TD -0.0633 Tw -(changed with )Tj -/TT10 1 Tf -6.4138 0 TD -0 Tw -(CHANGESLICE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0633 Tw -(, Chapter 13\) the state of the edit of that expression is restored,)Tj --13.0149 -1.2889 TD -0.2167 Tw -[(regardless of how many other expressions may have been edited in the meantime. For)]TJ -0 -1.2222 TD -0 Tw -(example:)Tj -/TT19 1 Tf -9.3333 -2 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(EDITF\(FOO\))Tj --0.9868 -1 TD -(EDIT)Tj -T* -(*)Tj -T* -( .)Tj -T* -( .)Tj -T* -( .)Tj -T* -(*P)Tj -T* -(\(COND \(& &\) \(& &\) \(&\) \(T &\)\))Tj -T* -(*OK)Tj -T* -(FOO)Tj -0 -1.0667 TD -( . )Tj -/TT18 1 Tf -11.4019 0 TD -(a small number of )Tj -/TT8 1 Tf -7.4634 0 TD -(LISPX)Tj -/TT18 1 Tf -2.7437 0 TD -( inputs,)Tj -/TT10 1 Tf --21.6089 -1.0667 TD -( . )Tj -/TT18 1 Tf -11.4019 0 TD -(including editing)Tj -/TT10 1 Tf --11.4019 -1 TD -( .)Tj -/TT19 1 Tf -0 -1.0667 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(EDITF\(FOO\))Tj --0.9868 -1 TD -(EDIT)Tj -0 -1.0667 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(\\)Tj -/TT10 1 Tf -0.606 0 TD -( P)Tj --1.2061 -1 TD -(\(COND \(& &\) \(& &\) \(&\) \(T &\)\))Tj -T* -(*)Tj -ET -endstream -endobj -185 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -187 0 obj -<< -/Length 4296 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-53)Tj -/TT8 1 Tf --38.3333 60.6156 TD -0.1033 Tw -(Thus you can always continue editing, including undoing changes from a previous editing)Tj -0 -1.2222 TD -0 Tw -(session, if one of the following occurs:)Tj -5.3333 -2 TD -[( 1.)-1000(No other expressions have been edited since that session \(since saving takes)]TJ -2 -1.2222 TD -(place at )Tj -/TT18 1 Tf -3.6411 0 TD -(exit)Tj -/TT8 1 Tf -1.5 0 TD -( time, intervening calls that were aborted via Control-D or exited)Tj --5.1411 -1.2222 TD -(via )Tj -/TT10 1 Tf -1.606 0 TD -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -( will not affect the editors memory\). )Tj --6.0063 -2.0667 TD -[(2.)-1250(That session was "sufficiently" recent. )]TJ -0 -2 TD -[(3.)-1250(It was ended with a )]TJ -/TT10 1 Tf -10.9658 0 TD -(SAVE)Tj -/TT8 1 Tf -2.4004 0 TD -( command.)Tj -/TT6 1 Tf -10 0 0 10 54 439 Tm -(Nested Calls to Editor)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 436.29 m -510.01 436.29 l -S -BT -/TT10 1 Tf -9 0 0 9 102 418 Tm -(TTY:)Tj -/TT4 1 Tf -10 0 0 10 123.6035 418 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 418 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0433 Tw -[(Calls the editor recursively. You can then type in commands, and have them executed. The)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -( command is completed when you exit from the lower editor \(see )Tj -/TT10 1 Tf -29.3189 0 TD -(OK)Tj -/TT8 1 Tf -1.2002 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -( above\).)Tj --37.5127 -2.9556 TD -(The )Tj -/TT10 1 Tf -2.0027 0 TD -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -[( command is extremely useful. It enables you to set up a complex operation, and)]TJ --4.4031 -1.2889 TD -0.1789 Tw -[(perform interactive attention-changing commands part way through it. For example, the)]TJ -0 -1.2222 TD -0 Tw -(command )Tj -/TT10 1 Tf -4.7249 0 TD -0.0633 Tw -(\(MOVE 3 TO AFTER COND 3 P TTY:\) )Tj -/TT8 1 Tf -19.7098 0 TD -0.0267 Tw -(allows you to interact, in effect, )Tj -/TT18 1 Tf -14.2332 0 TD -0 Tw -(within)Tj -/TT8 1 Tf --38.6679 -1.2889 TD -(the )Tj -/TT10 1 Tf -1.8361 0 TD -(MOVE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1989 Tw -[( command. You can then verify for yourself that the correct location has been)]TJ --4.2365 -1.2889 TD -0.1022 Tw -[(found, or complete the specification "by hand." In effect, )]TJ -/TT10 1 Tf -26.3152 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.1022 Tw -[( says "Ill tell you what you)]TJ --28.7156 -1.2889 TD -0 Tw -(should do when you get there.")Tj -0 -2.8889 TD -(The )Tj -/TT10 1 Tf -2.0116 0 TD -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[( command operates by printing )]TJ -/TT10 1 Tf -14.621 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[( and then calling the editor. The initial edit)]TJ --21.4334 -1.2889 TD -0.1467 Tw -(chain in the lower editor is the one that existed in the higher editor at the time the )Tj -/TT10 1 Tf -38.9344 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf --38.9344 -1.2889 TD -0.3089 Tw -[(command was entered. Until you exit from the lower editor, any attention changing)]TJ -0 -1.2222 TD -0.0956 Tw -[(commands you execute only affect the lower editors edit chain. Of course, if you perform)]TJ -T* -0.0689 Tw -(any structure modification commands while under a )Tj -/TT10 1 Tf -24.0281 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -[( command, these will modify the)]TJ --26.4285 -1.2889 TD -0.0911 Tw -[(structure in both editors, since it is the same structure. When the )]TJ -/TT10 1 Tf -30.1317 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.0911 Tw -[( command finishes,)]TJ --32.5321 -1.2889 TD -0 Tw -(the lower editors edit chain becomes the edit chain of the higher editor.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(EF)Tj -/TT4 1 Tf -10 0 0 10 112.8 181.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 181.66 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.2156 TD -(EV)Tj -/TT4 1 Tf -10 0 0 10 112.8 170.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 170.72 Tm -([Editor Command])Tj -/TT10 1 Tf --34.2556 -1.2156 TD -(EP)Tj -/TT4 1 Tf -10 0 0 10 112.8 159.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 159.78 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Calls )Tj -/TT10 1 Tf -2.4648 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(EDITV)Tj -/TT8 1 Tf -3.0005 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(EDITP)Tj -/TT8 1 Tf -3.0005 0 TD -( on )Tj -/TT10 1 Tf -1.6279 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( of current expression.)Tj -ET -endstream -endobj -188 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -190 0 obj -<< -/Length 4561 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-54)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -0.6 -4.38 TD -(Manipulating the Characters of an Atom or String)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT10 1 Tf -9 0 0 9 150 547.2 Tm -(RAISE)Tj -/TT4 1 Tf -10 0 0 10 177 547.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 547.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1656 Tw -(An edit macro defined as )Tj -/TT10 1 Tf -12.2218 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1656 Tw -[( followed by )]TJ -/TT10 1 Tf -6.2867 0 TD -0.3967 Tw -(\(I 1 \(U-CASE \(## 1\)\)\))Tj -/TT8 1 Tf -14.1887 0 TD -0.1656 Tw -(, i.e., it raises to)Tj --33.8974 -1.2889 TD -0 Tw -(uppercase the current expression, or if a tail, the first element of the current expression.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(LOWER)Tj -/TT4 1 Tf -10 0 0 10 177 488.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 488.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(RAISE)Tj -/TT8 1 Tf -3.0005 0 TD -(, except uses )Tj -/TT10 1 Tf -5.7749 0 TD -(L-CASE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --18.2572 -2.5489 TD -(CAP)Tj -/TT4 1 Tf -10 0 0 10 166.2 441.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 441.12 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1011 Tw -(First does a )Tj -/TT10 1 Tf -5.6051 0 TD -0 Tw -(RAISE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1011 Tw -(, and then lowers all but the first character, i.e., the first character is left)Tj --8.6056 -1.2889 TD -0 Tw -(capitalized.)Tj -/TT10 1 Tf -0 -2.8889 TD -(RAISE)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.56 0 TD -(LOWER)Tj -/TT8 1 Tf -3.0005 0 TD -0.06 Tw -(, and )Tj -/TT10 1 Tf -2.5629 0 TD -0 Tw -(CAP)Tj -/TT8 1 Tf -1.8003 0 TD -0.06 Tw -[( are all no-ops if the corresponding atom or string is already in that)]TJ --10.9241 -1.2889 TD -0 Tw -(state.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(RAISE)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 200.8526 344.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 344.98 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1033 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.3868 0 TD -0.2489 Tw -(\(I R \(L-CASE)Tj -/TT12 1 Tf -7.6989 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.3533 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT14 1 Tf -1.4491 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1033 Tw -(, i.e., changes every lowercase )Tj -/TT14 1 Tf -13.9693 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1033 Tw -[( to uppercase in the)]TJ --32.2579 -1.2889 TD -0 Tw -(current expression.)Tj -/TT10 1 Tf --1.3333 -2.3333 TD -(\(LOWER)Tj -/TT8 1 Tf -3.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT8 1 Tf -29.8055 0 TD -([Editor Command])Tj --32.9222 -2.7333 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(RAISE)Tj -/TT8 1 Tf -3.0005 0 TD -(, except performs )Tj -/TT10 1 Tf -7.9009 0 TD -(\(I R )Tj -/TT14 1 Tf -3.0005 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( \(L-CASE )Tj -/TT14 1 Tf -5.4009 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --26.251 -2.9556 TD -(In both )Tj -/TT10 1 Tf -3.4263 0 TD -(\(RAISE )Tj -/TT14 1 Tf -4.2007 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(\(LOWER)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( should be typed in uppercase.)Tj -/TT10 1 Tf --18.5042 -2.5489 TD -(REPACK)Tj -/TT4 1 Tf -10 0 0 10 182.4 213.64 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 213.64 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Permits the "editing" of an atom or string.)Tj -/TT10 1 Tf -0 -2.8889 TD -(REPACK)Tj -/TT8 1 Tf -3.6006 0 TD -0.0489 Tw -[( operates by calling the editor recursively on )]TJ -/TT10 1 Tf -20.2905 0 TD -0 Tw -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -0.0489 Tw -[( of the current expression, or if)]TJ --27.4917 -1.2889 TD -0.0356 Tw -(it is a list, on )Tj -/TT10 1 Tf -5.9698 0 TD -0 Tw -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -0.0356 Tw -[( of its first element. If the lower editor is exited successfully, i.e., via )]TJ -/TT10 1 Tf -30.5642 0 TD -0 Tw -(OK)Tj -/TT8 1 Tf --40.1345 -1.2889 TD -0.0278 Tw -(as opposed to )Tj -/TT10 1 Tf -6.4368 0 TD -0 Tw -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0278 Tw -(, the list of atoms is made into a single atom or string, which replaces the)Tj --8.8372 -1.2889 TD -0 Tw -(atom or string being "repacked." The new atom or string is always printed.)Tj -0 -2.8889 TD -(Example:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*P)Tj -0 -1 TD -(... "THIS IS A LOGN STRING"\))Tj -T* -(*REPACK)Tj -T* -(*EDIT)Tj -T* -(P)Tj -T* -(\(T H I S % I S % A % L O G N % S T R I N G\))Tj -ET -endstream -endobj -191 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -193 0 obj -<< -/Length 6686 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-55)Tj -/TT10 1 Tf --29 60.6822 TD -(*\(SW G N\))Tj -0 -1 TD -(*OK)Tj -T* -("THIS IS A LONG STRING")Tj -T* -(*)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(This could also have been accomplished by )Tj -/TT10 1 Tf -19.3389 0 TD -(\(R $GN$ $NG$\))Tj -/TT8 1 Tf -7.8013 0 TD -( or simply )Tj -/TT10 1 Tf -4.7368 0 TD -(\(RC GN NG\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --39.2113 -2.5489 TD --0.0002 Tc -0.0002 Tw -(\(REPACK @\))Tj -/TT4 1 Tf -10 0 0 10 156.0009 495.6 Tm -0 Tc -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 495.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Does )Tj -/TT10 1 Tf -2.4727 0 TD -(\(LC . @\))Tj -/TT8 1 Tf -4.8008 0 TD -( followed by )Tj -/TT10 1 Tf -5.79 0 TD -(REPACK)Tj -/TT8 1 Tf -3.6006 0 TD -(, e.g. )Tj -/TT10 1 Tf -2.2852 0 TD -(\(REPACK THIS$\))Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 54 428.06 Tm -(Manipulating Predicates and Conditional Expressions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 425.35 m -510.01 425.35 l -S -BT -/TT10 1 Tf -9 0 0 9 102 407.06 Tm -(JOINC)Tj -/TT4 1 Tf -10 0 0 10 129 407.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 407.06 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0533 Tw -(Used to join two neighboring )Tj -/TT10 1 Tf -13.4527 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -(s together, e.g. )Tj -/TT10 1 Tf -6.8084 0 TD -0 Tw -(\(COND)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3033 0 TD -(CLAUSE)Tj -3.5969 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.7279 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( followed by)]TJ -/TT10 1 Tf --35.6901 -1.6222 TD -0 Tw -(\(COND)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3589 0 TD -(CLAUSE)Tj -3.5995 -0.3333 TD -(3)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.8601 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(4)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1089 Tw -[( becomes)]TJ -/TT12 1 Tf -4.1665 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3589 0 TD -(\(COND)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3589 0 TD -(CLAUSE)Tj -3.6007 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.8601 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.8601 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(3)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.8601 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(4)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --41.0845 -1.6222 TD -(JOINC)Tj -/TT8 1 Tf -3.0005 0 TD -( does an )Tj -/TT10 1 Tf -3.8916 0 TD -(\(F COND T\))Tj -/TT8 1 Tf -6.001 0 TD -( first so that you dont have to be at the first )Tj -/TT10 1 Tf -19.5337 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --36.1605 -2.5489 TD -(\(SPLITC )Tj -/TT14 1 Tf -4.8007 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 161.4088 330.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 330.32 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0156 Tw -(Splits one )Tj -/TT10 1 Tf -4.5961 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( into two. )]TJ -/TT14 1 Tf -4.7634 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( specifies the last clause in the first )]TJ -/TT10 1 Tf -15.5883 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -(, e.g. )Tj -/TT10 1 Tf -2.3163 0 TD -0.0378 Tw -(\(SPLITC 3\))Tj -/TT8 1 Tf -6.0388 0 TD -0.0156 Tw -[( splits)]TJ -/TT10 1 Tf --38.7037 -1.2889 TD -0 Tw -(\(COND)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2867 0 TD -(CLAUSE)Tj -3.5995 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.689 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.689 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(3)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.689 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(4)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( into)]TJ -/TT12 1 Tf -2.0318 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2867 0 TD -(\(COND)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2867 0 TD -(CLAUSE)Tj -3.5987 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.689 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2867 0 TD -(\(COND)Tj -/TT14 1 Tf --38.3334 -1.6222 TD -(CLAUSE)Tj -3.6 -0.3333 TD -(3)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.8857 0 TD -(CLAUSE)Tj -3.5999 -0.3333 TD -(4)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1189 Tw -(. Uses the generalized )Tj -/TT10 1 Tf -10.3803 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.1189 Tw -[( command )]TJ -/TT10 1 Tf -5.186 0 TD -0 Tw -(\(NTH)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3689 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1189 Tw -(, so that )Tj -/TT14 1 Tf -4.0608 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1189 Tw -[( does not)]TJ --37.0828 -1.6222 TD -0.1122 Tw -(have to be a number, e.g., you can say )Tj -/TT10 1 Tf -18.0315 0 TD -0.27 Tw -(\(SPLITC RETURN\))Tj -/TT8 1 Tf -9.2715 0 TD -0.1122 Tw -(, meaning split after the clause)Tj --27.3029 -1.2889 TD -0 Tw -(containing )Tj -/TT10 1 Tf -4.9502 0 TD -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(SPLITC)Tj -/TT8 1 Tf -3.6006 0 TD -( also does an )Tj -/TT10 1 Tf -5.9023 0 TD -(\(F COND T\))Tj -/TT8 1 Tf -6.001 0 TD -( first.)Tj -/TT10 1 Tf --26.138 -2.5489 TD -(NEGATE)Tj -/TT4 1 Tf -10 0 0 10 134.4 230.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 230.38 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.3033 Tw -(Negates the current expression, i.e. performs )Tj -/TT10 1 Tf -21.839 0 TD -0.7278 Tw -(\(MBD NOT\))Tj -/TT8 1 Tf -6.1287 0 TD -0.3033 Tw -(, except that is smart about)Tj --27.9677 -1.2889 TD -0.1744 Tw -[(simplifying. For example, if the current expression is: )]TJ -/TT10 1 Tf -25.6022 0 TD -0.4189 Tw -(\(OR \(NULL X\) \(LISTP X\)\))Tj -/TT8 1 Tf -15.4778 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --41.08 -1.2889 TD -(NEGATE)Tj -/TT8 1 Tf -3.6006 0 TD -( would change it to )Tj -/TT10 1 Tf -8.7671 0 TD -(\(AND X \(NLISTP X\)\))Tj -/TT8 1 Tf -10.8018 0 TD -(.)Tj -/TT10 1 Tf --23.1694 -2.9556 TD -(NEGATE)Tj -/TT8 1 Tf -3.6006 0 TD -( is implemented via the function )Tj -/TT10 1 Tf -14.5698 0 TD -(NEGATE)Tj -/TT8 1 Tf -3.6006 0 TD -( \(Chapter 3\).)Tj -/TT10 1 Tf --23.1043 -2.5489 TD -(SWAPC)Tj -/TT4 1 Tf -10 0 0 10 129 133.04 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 133.04 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1 Tw -(Takes a conditional expression of the form )Tj -/TT10 1 Tf -19.6912 0 TD -0.24 Tw -(\(COND \(A B\)\(T C\)\))Tj -/TT8 1 Tf -10.9217 0 TD -0.1 Tw -[( and rearranges it to an)]TJ --30.6129 -1.2889 TD -0 Tw -(equivalent )Tj -/TT10 1 Tf -4.9385 0 TD -0.0289 Tw -(\(COND \(\(NOT A\) C\)\(T B\)\))Tj -/TT8 1 Tf -13.9178 0 TD -0.0122 Tw -(, or )Tj -/TT10 1 Tf -1.7154 0 TD -0.0289 Tw -(\(COND \(A B\) \(C D\)\))Tj -/TT8 1 Tf -10.9173 0 TD -0.0122 Tw -[( to )]TJ -/TT10 1 Tf -1.3965 0 TD -0.0289 Tw -(\(COND \(\(NOT A\))Tj --32.8855 -1.2889 TD -0 Tw -(\(COND \(C D\)\)\) \(T B\)\))Tj -/TT8 1 Tf -12.002 0 TD -(.)Tj -ET -endstream -endobj -194 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -196 0 obj -<< -/Length 4766 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-56)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 162 569.54 Tm -(SWAPC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0833 Tw -[( is smart about negations \(uses )]TJ -/TT10 1 Tf -14.3198 0 TD -0 Tw -(NEGATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0833 Tw -(\) and simplifying )Tj -/TT10 1 Tf -8.125 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0833 Tw -[(s. It always produces)]TJ --31.4463 -1.2889 TD -0.0489 Tw -[(an equivalent expression. It is useful for those cases where one wants to insert extra clauses)]TJ -0 -1.2222 TD -0 Tw -(or tests. )Tj -/TT6 1 Tf -10 0 0 10 102 504.6 Tm -(History Commands in the Editor)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 501.89 m -558.01 501.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 479.94 Tm -0.1967 Tw -(All of your inputs to the editor are stored on the history list )Tj -/TT10 1 Tf -29.002 0 TD -0 Tw -(EDITHISTORY)Tj -/TT8 1 Tf -6.6011 0 TD -0.1967 Tw -[( \(see Chapter 13, the)]TJ --35.6031 -1.2889 TD -0.0256 Tw -(editors history list, and all of the programmers assistant commands for manipulating the history list,)Tj -0 -1.2222 TD -0 Tw -(e.g. )Tj -/TT10 1 Tf -1.9029 0 TD -(REDO)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6178 0 TD -(USE)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6178 0 TD -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6178 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.1178 Tw -(, etc., are available for use on events on )Tj -/TT10 1 Tf -18.5439 0 TD -0 Tw -(EDITHISTORY)Tj -/TT8 1 Tf -6.6011 0 TD -0.1178 Tw -[(. In addition, the)]TJ --37.3026 -1.2889 TD -0.0489 Tw -[(following four history commands are recognized specially by the editor. They always operate on the)]TJ -0 -1.2222 TD -0 Tw -(last, i.e. most recent, event.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(DO)Tj -/TT6 1 Tf -10 0 0 10 160.8 412.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 163.5783 412.4 Tm -(COM)Tj -/TT4 1 Tf -10 0 0 10 179.7809 412.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 412.4 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Allows you to supply the command name when it was omitted.)Tj -/TT10 1 Tf -0 -2.8889 TD -(USE)Tj -/TT8 1 Tf -1.8003 0 TD -( is useful when a command name is )Tj -/TT18 1 Tf -16.0317 0 TD -(incorrect)Tj -/TT8 1 Tf -3.5928 0 TD -(.)Tj --21.4248 -2.9556 TD -0.1122 Tw -(For example, suppose you want to perform )Tj -/TT10 1 Tf -20.1606 0 TD -0.27 Tw -(\(-2 \(SETQ X \(LIST Y Z\)\)\))Tj -/TT8 1 Tf -15.7523 0 TD -0.1122 Tw -[( but instead)]TJ --35.9129 -1.2889 TD -0.0244 Tw -(types just )Tj -/TT10 1 Tf -4.522 0 TD -0.0578 Tw -(\(SETQ X \(LIST Y Z\)\))Tj -/TT8 1 Tf -11.633 0 TD -0.0244 Tw -[(. The editor will type )]TJ -/TT10 1 Tf -9.8879 0 TD -0.0578 Tw -(SETQ ?)Tj -/TT8 1 Tf -3.6584 0 TD -0.0244 Tw -(, whereupon you can type)Tj -/TT10 1 Tf --29.7012 -1.2889 TD -0.0156 Tw -(DO -2)Tj -/TT8 1 Tf -3.016 0 TD -0.0067 Tw -[(. The effect is the same as though you had typed )]TJ -/TT10 1 Tf -21.8759 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0067 Tw -(, followed by )Tj -/TT10 1 Tf -6.06 0 TD -0.0156 Tw -(\(LI 1\))Tj -/TT8 1 Tf -3.6161 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5067 0 TD -0.0156 Tw -(\(-1 -2\))Tj -/TT8 1 Tf -4.2162 0 TD -0 Tw -(,)Tj --41.0913 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9651 0 TD -(OK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -(, i.e., the command )Tj -/TT10 1 Tf -8.6944 0 TD -0.0533 Tw -(\(-2 \(SETQ X \(LIST Y Z\)\)\))Tj -/TT8 1 Tf -14.669 0 TD -0.0222 Tw -[( is executed. )]TJ -/TT10 1 Tf -5.9907 0 TD -0 Tw -(DO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( also works if the)]TJ --33.7196 -1.2889 TD -0 Tw -(command is a line command.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(!F)Tj -/TT4 1 Tf -10 0 0 10 160.8017 266.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 266.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(DO F)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --6.2109 -2.9556 TD -0.0089 Tw -(In the case of )Tj -/TT10 1 Tf -6.0673 0 TD -0 Tw -(!F)Tj -/TT8 1 Tf -1.2002 0 TD -0.0089 Tw -(, the previous command is always treated as though it were a line command,)Tj --7.2675 -1.2889 TD -0.0344 Tw -(e.g., if you type )Tj -/TT10 1 Tf -7.2144 0 TD -0.0833 Tw -(\(SETQ X &\))Tj -/TT8 1 Tf -6.1676 0 TD -0.0344 Tw -[( and then )]TJ -/TT10 1 Tf -4.5154 0 TD -0 Tw -(!F)Tj -/TT8 1 Tf -1.2002 0 TD -0.0344 Tw -(, the effect is the same as though you had typed )Tj -/TT10 1 Tf -21.6382 0 TD -0 Tw -(F)Tj --40.7359 -1.2889 TD -(\(SETQ X &\))Tj -/TT8 1 Tf -6.001 0 TD -(, not )Tj -/TT10 1 Tf -2.2041 0 TD -(\(F \(SETQ X &\)\))Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --17.9398 -2.5489 TD --0.0001 Tc -(!E )Tj -/TT4 1 Tf -10 0 0 10 166.2009 169.12 Tm -0 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 169.12 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(DO E)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --7.5443 -2.5489 TD -(!N)Tj -/TT4 1 Tf -10 0 0 10 160.8 121.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 121.58 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(DO N)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -197 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -199 0 obj -<< -/Length 4510 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-57)Tj -/TT6 1 Tf -10 0 0 10 54 568.2 Tm -(Miscellaneous Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT10 1 Tf -9 0 0 9 102 547.2 Tm -(NIL)Tj -/TT4 1 Tf -10 0 0 10 118.2026 547.2 Tm --0.0001 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 547.2 Tm -0 Tc -([Editor Command])Tj --32.9222 -2.7333 TD -0.2011 Tw -(Unless preceded by )Tj -/TT10 1 Tf -9.5389 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.2011 Tw -[( or )]TJ -/TT10 1 Tf -1.8431 0 TD -0 Tw -(BF)Tj -/TT8 1 Tf -1.2002 0 TD -0.2011 Tw -[(, is always a no-op. Thus extra right parentheses or square)]TJ --13.1823 -1.2889 TD -0 Tw -(brackets at the ends of commands are ignored.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(CL)Tj -/TT4 1 Tf -10 0 0 10 112.8 488.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 488.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Clispifies the current expression \(see Chapter 21\).)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(DW)Tj -/TT4 1 Tf -10 0 0 10 112.8 441.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 441.72 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Dwimifies the current expression \(see Chapter 21\).)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(IFY)Tj -/TT4 1 Tf -10 0 0 10 118.2 394.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 394.78 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1611 Tw -(If the current statement is a )Tj -/TT10 1 Tf -13.288 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1611 Tw -[( statement \(Chapter 9\), replaces it with an eqivalent )]TJ -/TT10 1 Tf -24.452 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf --40.1403 -1.2889 TD -(statement.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(GET*)Tj -/TT4 1 Tf -10 0 0 10 123.6 336.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 336.24 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0878 Tw -(If the current expression is a comment pointer \(see Chapter 26\), reads in the full text of the)Tj -0 -1.2222 TD -0 Tw -(comment, and replaces the current expression by it.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(* . )Tj -/TT14 1 Tf -3.0005 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 139.8062 278.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 278.3 Tm -([Editor Command])Tj -/TT14 1 Tf --32.9222 -2.7333 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( is the text of a comment. )]TJ -/TT10 1 Tf -12.3032 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( ascends the edit chain looking for a "safe" place to insert the)]TJ --13.5034 -1.2889 TD -0.0733 Tw -(comment, e.g., in a )Tj -/TT10 1 Tf -8.8441 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0733 Tw -[( clause, after a )]TJ -/TT10 1 Tf -6.8173 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0733 Tw -[( statement, etc., and inserts )]TJ -/TT10 1 Tf -12.5547 0 TD -0.1767 Tw -(\(* .)Tj -/TT12 1 Tf -2.5771 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.3233 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT18 1 Tf -0.3233 0 TD -(after)Tj -/TT8 1 Tf -1.833 0 TD -0.0733 Tw -[( that)]TJ --39.2737 -1.2889 TD -0.0533 Tw -[(point, if possible, otherwise before. For example, if the current expression is )]TJ -/TT10 1 Tf -34.5967 0 TD -0.1289 Tw -(\(FACT \(SUB1)Tj --34.5967 -1.2889 TD -0 Tw -(N\)\))Tj -/TT8 1 Tf -1.8003 0 TD -( in)Tj -/TT10 1 Tf -7.533 -2 TD -([COND)Tj -0 -1 TD -( \(\(ZEROP N\) 1\))Tj -T* -( \(T \(ITIMES N \(FACT \(SUB1 N])Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(then )Tj -/TT10 1 Tf -2.2392 0 TD -0.0467 Tw -(\(* CALL FACT RECURSIVELY\))Tj -/TT8 1 Tf -15.1424 0 TD -0.02 Tw -[( would insert )]TJ -/TT10 1 Tf -6.1918 0 TD -0.0467 Tw -(\(* CALL FACT RECURSIVELY\))Tj -/TT8 1 Tf -15.1424 0 TD -0 Tw -( )Tj -/TT18 1 Tf -0.27 0 TD -(before)Tj -/TT8 1 Tf --38.986 -1.2889 TD -(the )Tj -/TT10 1 Tf -2.035 0 TD -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.3978 Tw -[( expression. If inserted after the )]TJ -/TT10 1 Tf -17.1985 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.3978 Tw -(, the comment would then be)Tj --26.4347 -1.2889 TD -0.1744 Tw -(\(incorrectly\) returned as the value of the )Tj -/TT10 1 Tf -19.2714 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -[(. However, if the )]TJ -/TT10 1 Tf -8.7633 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -[( was itself a )]TJ -/TT10 1 Tf -6.0996 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf --38.9352 -1.2889 TD -0.1267 Tw -(statement, and hence its value was not being used, the comment could be \(and would be\))Tj -0 -1.2222 TD -0 Tw -(inserted after the )Tj -/TT10 1 Tf -7.7573 0 TD -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -( expression.)Tj -/TT10 1 Tf --11.3579 -2.9556 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.1789 Tw -[( does not change the edit chain, but )]TJ -/TT10 1 Tf -17.3134 0 TD -0 Tw -(UNFIND)Tj -/TT8 1 Tf -3.6006 0 TD -0.1789 Tw -[( is set to where the comment was actually)]TJ --21.5141 -1.2889 TD -0 Tw -(inserted.)Tj -ET -endstream -endobj -200 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -202 0 obj -<< -/Length 5367 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-58)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(GETD)Tj -/TT4 1 Tf -10 0 0 10 171.6035 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 568.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Essentially "expands" the current expression in line: )Tj -5.3333 -2 TD -[(1.)-1250(If \()]TJ -/TT10 1 Tf -3.2529 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( of\) the current expression is the name of a macro, expands the macro)Tj --3.0532 -1.2889 TD -(in line; )Tj --2 -2 TD -[(2.)-1250(If a CLISP word, translates the current expression and replaces it with the)]TJ -2 -1.2222 TD -(translation;)Tj --2 -2 TD -[( 3.)-1000(If )]TJ -/TT10 1 Tf -2.9199 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( is the name of a function for which the editor can obtain a symbolic)Tj --2.7202 -1.2889 TD -(definition, either in-core or from a file, substitutes the argument expressions)Tj -0 -1.2222 TD -(for the corresponding argument names in the body of the definition and)Tj -T* -(replaces the current expression with the result;)Tj --2 -2 TD -[(4.)-1250(If )]TJ -/TT10 1 Tf -2.9199 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( of the current expression is an open lambda, substitutes the)Tj --2.7202 -1.2889 TD -(arguments for the corresponding argument names in the body of the)Tj -0 -1.2222 TD -(lambda, and then removes the lambda and argument list.)Tj --3.3333 -2 TD -0.7422 Tw -[(Warning:)-1177.1(When expanding a function definition or open lambda)]TJ -3.3333 -1.2222 TD -0 Tw -(expression, )Tj -/TT10 1 Tf -5.369 0 TD -(GETD)Tj -/TT8 1 Tf -2.4004 0 TD -0.1322 Tw -[( does a simple substitution of the actual arguments)]TJ --7.7694 -1.2889 TD -0.04 Tw -[(for the formal arguments. Therefore, if any of the function arguments)]TJ -0 -1.2222 TD -0.2467 Tw -(are used in other ways in the function definition \(as functions, as)Tj -T* -0.3589 Tw -(record fields, etc.\), they will simply be replaced with the actual)Tj -T* -0 Tw -(arguments.)Tj -/TT10 1 Tf --8.6667 -2.4822 TD -(\(MAKEFN \()Tj -/TT14 1 Tf -5.4009 0 TD -(FN . ACTUALARGS)Tj -/TT10 1 Tf -9.0015 0 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(ARGLIST N1 N2)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 366.0352 296.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 296.86 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0511 Tw -(The inverse of )Tj -/TT10 1 Tf -6.6709 0 TD -0 Tw -(GETD)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -(: makes the current expression into a function. )Tj -/TT14 1 Tf -21.3521 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0511 Tw -[( is the function name,)]TJ -/TT14 1 Tf --31.6236 -1.2889 TD -0 Tw -(ARGLIST)Tj -/TT8 1 Tf -4.2007 0 TD -0.3656 Tw -[( its arguments. The argument names are substituted for the corresponding)]TJ --4.2007 -1.2889 TD -0.0311 Tw -(argument values in )Tj -/TT14 1 Tf -8.9024 0 TD -0 Tw -(ACTUALARGS)Tj -/TT8 1 Tf -6.001 0 TD -0.0311 Tw -(, and the result becomes the body of the function definition)Tj --14.9034 -1.2889 TD -0 Tw -(for )Tj -/TT14 1 Tf -1.5239 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -(. The current expression is then replaced with )Tj -/TT10 1 Tf -20.6519 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -( . )Tj -/TT14 1 Tf -1.8003 0 TD -(ACTUALARGS)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --33.5776 -2.9556 TD -(If )Tj -/TT14 1 Tf -0.9588 0 TD -(N)Tj -0.6001 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0389 Tw -[( and )]TJ -/TT14 1 Tf -2.2707 0 TD -0 Tw -(N)Tj -0.6005 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0389 Tw -[( are supplied, )]TJ -/TT10 1 Tf -6.3916 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -0.6017 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0944 Tw -[( THRU )]TJ -/TT14 1 Tf -3.7895 0 TD -0 Tw -(N)Tj -0.5994 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0389 Tw -[( is used rather than the current expression; if just)]TJ -/TT14 1 Tf --19.4123 -1.6222 TD -0 Tw -(N)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( is supplied, )Tj -/TT10 1 Tf -5.6157 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(N)Tj -0.602 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( THRU -1\))Tj -/TT8 1 Tf -5.4009 0 TD -( is used.)Tj --14.0187 -3.2889 TD -(If )Tj -/TT14 1 Tf -1.3777 0 TD -(ARGLIST)Tj -/TT8 1 Tf -4.2007 0 TD -0.4578 Tw -[( is omitted, )]TJ -/TT10 1 Tf -6.5501 0 TD -0 Tw -(MAKEFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.4578 Tw -[( will make up some arguments, using elements of)]TJ -/TT14 1 Tf --15.7291 -1.2889 TD -0 Tw -(ACTUALARGS)Tj -/TT8 1 Tf -6.001 0 TD -0.0522 Tw -(, if they are literal atoms, otherwise arguments selected from )Tj -/TT10 1 Tf -27.509 0 TD -0.1244 Tw -(\(X Y Z A B C)Tj --33.51 -1.2889 TD -0 Tw -(...\))Tj -/TT8 1 Tf -2.4004 0 TD -(, avoiding duplicate argument names.)Tj --2.4004 -2.9556 TD -0.0633 Tw -[(Example: If the current expression is )]TJ -/TT10 1 Tf -17.0571 0 TD -0.1522 Tw -(\(COND \(\(CAR X\) \(PRINT Y T\)\) \(T)Tj -/TT12 1 Tf -18.9163 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3133 0 TD -(\(HELP\)\)\))Tj -/TT8 1 Tf -4.8008 0 TD -(,)Tj --41.0875 -1.2889 TD -(then )Tj -/TT10 1 Tf -2.2648 0 TD -0.1089 Tw -(\(MAKEFN \(FOO \(CAR X\) Y\) \(A B\)\))Tj -/TT8 1 Tf -18.6563 0 TD -0.0456 Tw -[( will define )]TJ -/TT10 1 Tf -5.3686 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[( as )]TJ -/TT10 1 Tf -1.5149 0 TD -0.1089 Tw -(\(LAMBDA \(A B\) \(COND)Tj --29.6049 -1.2889 TD -0.2278 Tw -(\(A \(PRINT B T\)\) \(T \(HELP\)\)\)\))Tj -/TT8 1 Tf -17.9416 0 TD -0.0944 Tw -[( and then replace the current expression with )]TJ -/TT10 1 Tf -20.988 0 TD -0 Tw -(\(FOO)Tj --38.9296 -1.2889 TD -(\(CAR X\) Y\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -ET -endstream -endobj -203 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -205 0 obj -<< -/Length 3772 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-59)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(\(MAKE)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ARGNAME)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(EXP)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 198.3149 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 568.2 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1556 Tw -(Makes the value of )Tj -/TT14 1 Tf -9.2311 0 TD -0 Tw -(ARGNAME)Tj -/TT8 1 Tf -4.2007 0 TD -0.1556 Tw -[( be )]TJ -/TT14 1 Tf -1.8433 0 TD -0 Tw -(EXP)Tj -/TT8 1 Tf -1.8003 0 TD -0.1556 Tw -[( in the call which is the current expression, i.e. a )]TJ -/TT10 1 Tf -23.0632 0 TD -0 Tw -(?=)Tj -/TT8 1 Tf --40.1386 -1.2889 TD -(command following a )Tj -/TT10 1 Tf -9.9683 0 TD -(MAKE)Tj -/TT8 1 Tf -2.4004 0 TD -( will always print )Tj -/TT14 1 Tf -8.0073 0 TD -(ARGNAME)Tj -/TT10 1 Tf -4.2007 0 TD -( =)Tj -/TT14 1 Tf -1.2002 0 TD -( EXP)Tj -/TT8 1 Tf -2.4004 0 TD -(. For example:)Tj -/TT10 1 Tf --18.8439 -2 TD -(*P)Tj -0 -1 TD -(\(JSYS\))Tj -T* -(*?=)Tj -T* -(JSYS[N;AC1,AC2,AC3,RESULTAC])Tj -T* -(*\(MAKE N 10\))Tj -T* -(*\(MAKE RESULTAC 3\))Tj -T* -(*P)Tj -T* -(\(JSYS 10 NIL NIL NIL 3\))Tj --10.6667 -2.3267 TD -(Q)Tj -/TT4 1 Tf -10 0 0 10 107.4 430.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 430.06 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Quotes the current expression, i.e. )Tj -/TT10 1 Tf -15.2822 0 TD -(MBD QUOTE)Tj -/TT8 1 Tf -5.4011 0 TD -(.)Tj -/TT10 1 Tf --22.0167 -2.5489 TD -(D)Tj -/TT4 1 Tf -10 0 0 10 107.4 382.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 382.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Deletes the current expression, then prints new current expression, i.e. )Tj -/TT10 1 Tf -31.3145 0 TD -(\(:\) I P)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 54 314.98 Tm -(Commands That Evaluate)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 312.27 m -510.01 312.27 l -S -BT -/TT10 1 Tf -9 0 0 9 102 293.98 Tm -(E)Tj -/TT4 1 Tf -10 0 0 10 107.4 293.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 293.98 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0711 Tw -(Causes the editor to call the Interlisp executive )Tj -/TT10 1 Tf -21.4361 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -[( giving it the next input as argument.)]TJ --24.4366 -1.2889 TD -0 Tw -(Example: )Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(*E BREAK\(FIE FUM\))Tj -0 -1 TD -(\(FIE FUM\))Tj -T* -(*E \(FOO\))Tj -0 -2.7778 TD -(\(FIE BROKEN\))Tj -0 -1 TD -(:)Tj --9.3333 -2.7333 TD -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -[( only works when when typed in, e.g, )]TJ -/TT10 1 Tf -17.5555 0 TD -0.1922 Tw -(\(INSERT D BEFORE E\))Tj -/TT8 1 Tf -11.9785 0 TD -0.08 Tw -[( will treat )]TJ -/TT10 1 Tf -4.7234 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -[( as a pattern,)]TJ --35.4576 -1.2889 TD -0 Tw -(and search for )Tj -/TT10 1 Tf -6.5405 0 TD -(E)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --8.474 -2.5489 TD -(\(E)Tj -/TT6 1 Tf -10 0 0 10 112.8017 129.24 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 115.5801 129.24 Tm -(X)Tj -/TT10 1 Tf -0.6 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 126.3809 129.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 129.24 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Evaluates )Tj -/TT18 1 Tf -4.5488 0 TD -(X)Tj -/TT8 1 Tf -0.7222 0 TD -(, i.e., performs )Tj -/TT10 1 Tf -6.5757 0 TD -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, and prints the result on the terminal.)Tj -/TT10 1 Tf --17.6307 -2.5489 TD -(\(E)Tj -/TT6 1 Tf -10 0 0 10 112.8017 81.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 115.5801 81.7 Tm -(X)Tj -/TT21 1 Tf -10 0 0 10 120.981 81.7 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 123.7593 81.7 Tm -(T\))Tj -/TT4 1 Tf -10 0 0 10 134.5609 81.7 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 81.7 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(E)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(x)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( but does not print.)Tj -ET -endstream -endobj -206 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT21 207 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -209 0 obj -<< -/Length 5813 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-60)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -(The )Tj -/TT10 1 Tf -2.0283 0 TD -(\(E)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.3544 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1044 Tw -[( and )]TJ -/TT10 1 Tf -2.4018 0 TD -0 Tw -(\(E)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.3544 0 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3544 0 TD -(T\))Tj -/TT8 1 Tf -1.2002 0 TD -0.1044 Tw -[( commands are mainly intended for use by macros and subroutine)]TJ --10.8942 -1.2889 TD -0.2867 Tw -(calls to the editor; you would probably type in a form for evaluation using the more)Tj -0 -1.2222 TD -0 Tw -(convenient format of the \(atomic\) )Tj -/TT10 1 Tf -15.0308 0 TD -(E)Tj -/TT8 1 Tf -0.6001 0 TD -( command.)Tj -/TT10 1 Tf --16.9642 -2.5489 TD -(\(I )Tj -/TT14 1 Tf -1.8003 0 TD -(C X)Tj -1.7997 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... X)Tj -3.6 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 236.4017 524 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 524 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -0.0267 Tw -(Executes the )Tj -/TT18 1 Tf -5.8224 0 TD -(editor command)Tj -/TT8 1 Tf -6.5164 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2767 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(C)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6623 0 TD -(Y)Tj -0.5998 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0622 Tw -[( ... )]TJ -/TT14 1 Tf -3.1249 0 TD -0 Tw -(Y)Tj -0.5995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0267 Tw -[( where )]TJ -/TT14 1 Tf -3.3224 0 TD -0 Tw -(Y)Tj -0.6009 -0.3333 TD -(i)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0622 Tw -[( = \(EVAL)]TJ -/TT12 1 Tf -4.9252 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.2767 0 TD -(X)Tj -0.5992 -0.3333 TD -(i)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0267 Tw -[(. If )]TJ -/TT14 1 Tf -1.7499 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0267 Tw -[( is not an atom,)]TJ -/TT14 1 Tf --34.4768 -1.6222 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -( is evaluated also.)Tj --0.6001 -2.9556 TD -(Examples:)Tj -/TT10 1 Tf -0 -2.8889 TD -0.3589 Tw -(\(I 3 \(GETD FOO\)\))Tj -/TT8 1 Tf -11.2783 0 TD -0.15 Tw -[( will replace the third element of the current expression with the)]TJ --11.2783 -1.2889 TD -0 Tw -(definition of )Tj -/TT10 1 Tf -5.7109 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --7.5112 -2.9556 TD -0.0222 Tw -(\(I N FOO \(CAR FIE\)\))Tj -/TT8 1 Tf -11.4907 0 TD -0.0089 Tw -[( will attach the value of )]TJ -/TT10 1 Tf -10.6427 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0089 Tw -[( and )]TJ -/TT10 1 Tf -2.2107 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0089 Tw -[( of the value of )]TJ -/TT10 1 Tf -6.8775 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0089 Tw -[( to the end)]TJ --36.6224 -1.2889 TD -0 Tw -(of the current expression.)Tj -/TT10 1 Tf -0 -2.8889 TD -(\(I F = FOO T\))Tj -/TT8 1 Tf -7.8013 0 TD -( will search for an expression )Tj -/TT10 1 Tf -13.1235 0 TD -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -( to the value of )Tj -/TT10 1 Tf -6.8262 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --30.7515 -2.9556 TD -0.1878 Tw -(\(I \(COND \(\(NULL FLG\) -1\) \(T 1\)\) FOO\))Tj -/TT8 1 Tf -23.5181 0 TD -0.0778 Tw -(, if )Tj -/TT10 1 Tf -1.5296 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0778 Tw -[( is )]TJ -/TT10 1 Tf -1.3704 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0778 Tw -(, inserts the value of )Tj -/TT10 1 Tf -9.5139 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf --39.5325 -1.2889 TD -0.0533 Tw -(before the first element of the current expression, otherwise replaces the first element by the)Tj -0 -1.2222 TD -0 Tw -(value of )Tj -/TT10 1 Tf -3.8169 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --5.6172 -2.9556 TD -(The )Tj -/TT10 1 Tf -1.9772 0 TD -(I)Tj -/TT8 1 Tf -0.6001 0 TD -0.0533 Tw -[( command sets an internal flag to indicate to the structure modification commands )]TJ -/TT18 1 Tf -37.4189 0 TD -0 Tw -(not)Tj -/TT8 1 Tf --39.9962 -1.2889 TD -(to copy expression\(s\) when inserting, replacing, or attaching.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(EVAL)Tj -/TT4 1 Tf -10 0 0 10 171.6 243.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 243.66 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Does an )Tj -/TT10 1 Tf -3.8047 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -( of the current expression.)Tj -/TT10 1 Tf --6.2051 -2.9556 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2556 Tw -(, line-feed, and the )Tj -/TT10 1 Tf -9.4802 0 TD -0 Tw -(GO)Tj -/TT8 1 Tf -1.2002 0 TD -0.2556 Tw -[( command together effectively allows you to "single-step" a)]TJ --13.0808 -1.2889 TD -0 Tw -(program through its symbolic definition.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(GETVAL)Tj -/TT4 1 Tf -10 0 0 10 182.4 158.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 158.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Replaces the current expression by the result of evaluating it.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(##)Tj -/TT8 1 Tf -1.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -1.8 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( COM)Tj -2.4 -0.3333 TD -(2)Tj -0.6 0.3333 TD -( ... COM)Tj -4.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 271.0508 111.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 407.33 111.58 Tm -([NLambda NoSpread Function])Tj --27.2589 -3.0667 TD -0.0933 Tw -[(An nlambda, nospread function \(not a command\). Its value is what the current expression)]TJ -0 -1.2222 TD -0.0233 Tw -(would be after executing the edit commands )Tj -/TT14 1 Tf -20.1062 0 TD -0 Tw -(COM)Tj -1.8016 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0578 Tw -[( ... )]TJ -/TT14 1 Tf -3.116 0 TD -0 Tw -(COM)Tj -1.7995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0233 Tw -[( starting from the present edit)]TJ --28.0233 -1.6222 TD -0.0867 Tw -[(chain. Generates an error if any of )]TJ -/TT14 1 Tf -16.2026 0 TD -0 Tw -(COM)Tj -1.8029 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0867 Tw -[( thru )]TJ -/TT10 1 Tf -2.5796 0 TD -0 Tw -(COM)Tj -1.8004 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0867 Tw -[( cause errors. The current edit chain is)]TJ --23.5856 -1.6222 TD -0 Tw -(never changed.)Tj -ET -endstream -endobj -210 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -212 0 obj -<< -/Length 6857 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-61)Tj -/TT8 1 Tf --34.3333 60.6156 TD -[(Note:)-901.2(The )]TJ -/TT10 1 Tf -5.326 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5689 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5689 0 TD -(:)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5689 0 TD -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5689 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0689 Tw -(, and )Tj -/TT10 1 Tf -2.5806 0 TD -0 Tw -(CHANGE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0689 Tw -[( commands make special)]TJ --20.0511 -1.2889 TD -0.0478 Tw -(checks for )Tj -/TT10 1 Tf -4.7982 0 TD -0 Tw -(##)Tj -/TT8 1 Tf -1.2002 0 TD -0.0478 Tw -[( forms in the expressions used for inserting or replacing,)]TJ --5.9984 -1.2889 TD -0.1967 Tw -(and use a copy of )Tj -/TT10 1 Tf -8.9579 0 TD -0 Tw -(##)Tj -/TT8 1 Tf -1.2002 0 TD -0.1967 Tw -[( form instead \(see the )]TJ -/TT10 1 Tf -10.705 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf -0.25 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.1967 Tw -(, and )Tj -/TT10 1 Tf -2.8362 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.1967 Tw -[( Commands)]TJ --25.7497 -1.2889 TD -0.0367 Tw -[(section above\). Thus, )]TJ -/TT10 1 Tf -9.9362 0 TD -0.0867 Tw -(\(INSERT \(## 3 2\) AFTER 1\))Tj -/TT8 1 Tf -15.4358 0 TD -0.0367 Tw -[( is equivalent)]TJ --25.372 -1.2889 TD -0 Tw -(to )Tj -/TT10 1 Tf -1.1221 0 TD -(\(I INSERT \(COPY \(## 3 2\)\) AFTER 1\))Tj -/TT8 1 Tf -21.0034 0 TD -(.)Tj --29.4588 -2.9556 TD -(Example: )Tj -/TT10 1 Tf -4.4209 0 TD -0.0967 Tw -(\(I R X \(## \(CONS .. Z\)\)\))Tj -/TT8 1 Tf -15.5824 0 TD -0.04 Tw -[( replaces all )]TJ -/TT10 1 Tf -5.5648 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -(s in the current expression by the)Tj --26.1682 -1.2889 TD -0 Tw -(first )Tj -/TT10 1 Tf -2.019 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -( containing a )Tj -/TT10 1 Tf -5.9502 0 TD -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --14.9697 -2.9556 TD -(The )Tj -/TT10 1 Tf -2.0027 0 TD -(I)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[( command is not very convenient for computing an )]TJ -/TT18 1 Tf -23.6363 0 TD -0 Tw -(entire)Tj -/TT8 1 Tf -2.3345 0 TD -0.0789 Tw -[( edit command for execution, since it)]TJ --28.5736 -1.2889 TD -0.0456 Tw -[(computes the command name and its arguments separately. Also, the )]TJ -/TT10 1 Tf -31.7951 0 TD -0 Tw -(I)Tj -/TT8 1 Tf -0.6001 0 TD -0.0456 Tw -[( command cannot be used to)]TJ --32.3952 -1.2889 TD -0.3567 Tw -[(compute an atomic command. The following two commands provide more general ways of)]TJ -0 -1.2222 TD -0 Tw -(computing commands.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(COMS)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -0.5995 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... X)Tj -3.6 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 185.2509 401.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 401.8 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Each )Tj -/TT14 1 Tf -2.3867 0 TD -(X)Tj -0.6011 -0.3333 TD -(i)Tj -/TT8 1 Tf -0.6 0.3333 TD -( is evaluated and its value is executed as a command.)Tj --3.5878 -3.2889 TD -0.14 Tw -(For example, )Tj -/TT10 1 Tf -6.2761 0 TD -0.3367 Tw -(\(COMS \(COND \(X \(LIST 1 X\)\)\)\))Tj -/TT8 1 Tf -18.4861 0 TD -0.14 Tw -[( will replace the first element of the)]TJ --24.7622 -1.2889 TD -0.3044 Tw -(current expression with the value of )Tj -/TT10 1 Tf -18.0249 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.3044 Tw -[( if non-)]TJ -/TT10 1 Tf -3.7759 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3044 Tw -[(, otherwise do nothing. The editor)]TJ --24.2012 -1.2889 TD -0 Tw -(command )Tj -/TT10 1 Tf -4.6982 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( is a no-op \(see the Miscellaneous Commands section above\).)Tj -/TT10 1 Tf --7.8319 -2.5489 TD -(\(COMSQ)Tj -/TT6 1 Tf -10 0 0 10 134.4053 298.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.1836 298.46 Tm -(COM)Tj -1.7996 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COM)Tj -4.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 212.7809 298.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 298.46 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Executes )Tj -/TT14 1 Tf -4.1318 0 TD -(COM)Tj -1.8004 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COM)Tj -1.7995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj -/TT10 1 Tf --11.9322 -3.2889 TD -(COMSQ)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[( is mainly useful in conjunction with the )]TJ -/TT10 1 Tf -18.495 0 TD -0 Tw -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0589 Tw -[( command. For example, suppose you)]TJ --23.8959 -1.2889 TD -0.1056 Tw -(want to compute an entire list of commands for evaluation, as opposed to computing each)Tj -0 -1.2222 TD -0.0667 Tw -(command one at a time as does the )Tj -/TT10 1 Tf -16.2643 0 TD -0 Tw -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0667 Tw -[( command. You would then write )]TJ -/TT10 1 Tf -15.91 0 TD -0.1589 Tw -(\(COMS \(CONS)Tj --34.5747 -1.2889 TD -0 Tw -(COMSQ)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT18 1 Tf -0.2744 0 TD -(X)Tj -/TT10 1 Tf -0.7222 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0244 Tw -[( where )]TJ -/TT18 1 Tf -3.3179 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.7222 0 TD -0.0244 Tw -[( computed the list of commands, e.g.,)]TJ -/TT12 1 Tf -16.6447 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2744 0 TD -0.0589 Tw -(\(COMS \(CONS COMSQ \(GETP)Tj --26.7567 -1.2889 TD -0 Tw -(FOO COMMANDS\)\)\))Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 54 152.52 Tm -(Commands That Test)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 149.81 m -510.01 149.81 l -S -BT -/TT10 1 Tf -9 0 0 9 102 131.52 Tm -(\(IF)Tj -/TT6 1 Tf -10 0 0 10 118.2 131.52 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 120.9783 131.52 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT4 1 Tf -10 0 0 10 137.181 131.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 131.52 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.0489 Tw -(Generates an error )Tj -/TT18 1 Tf -8.6159 0 TD -0 Tw -(unless)Tj -/TT8 1 Tf -2.5576 0 TD -0.0489 Tw -[( the value of )]TJ -/TT10 1 Tf -5.8997 0 TD -0 Tw -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2989 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -[( is true. In other words, if )]TJ -/TT10 1 Tf -12.0898 0 TD -0 Tw -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2989 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -[( causes)]TJ --38.1622 -1.2889 TD -0 Tw -(an error or )Tj -/TT10 1 Tf -4.9829 0 TD -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) = NIL)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -( will cause an error.)Tj --14.7344 -2.9556 TD -0.0489 Tw -(For some editor commands, the occurrence of an error has a well defined meaning, i.e., they)Tj -0 -1.2222 TD -0.0089 Tw -(use errors to branch on, as )Tj -/TT10 1 Tf -11.923 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( uses )]TJ -/TT10 1 Tf -2.4475 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0089 Tw -[( and non-)]TJ -/TT10 1 Tf -4.2536 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0089 Tw -[(. For example, an error condition in a)]TJ --24.625 -1.2889 TD -0.2644 Tw -[(location specification may simply mean "not this one, try the next." Thus the location)]TJ -ET -endstream -endobj -213 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -216 0 obj -<< -/Length 6101 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-62)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -0.0767 Tw -(specification )Tj -/TT10 1 Tf -6.2051 0 TD -0.1833 Tw -(\(IPLUS \(E \(OR \(NUMBERP \(## 3\)\))Tj -/TT12 1 Tf -18.9196 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3267 0 TD -0.1833 Tw -(\(ERROR!\)\) T\)\))Tj -/TT8 1 Tf -7.9846 0 TD -0.0767 Tw -[( specifies the first)]TJ -/TT10 1 Tf --33.436 -1.2889 TD -0 Tw -(IPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1089 Tw -[( whose second argument is a number. The )]TJ -/TT10 1 Tf -20.1382 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.1089 Tw -[( command, by equating )]TJ -/TT10 1 Tf -11.1406 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1089 Tw -[( to error,)]TJ --37.2798 -1.2889 TD -0.0367 Tw -[(provides a more natural way of accomplishing the same result. Thus, an equivalent location)]TJ -0 -1.2222 TD -0 Tw -(specification is )Tj -/TT10 1 Tf -6.7666 0 TD -(\(IPLUS \(IF \(NUMBERP \(## 3\)\)\)\))Tj -/TT8 1 Tf -17.4028 0 TD -(.)Tj --24.1694 -2.9556 TD -(The )Tj -/TT10 1 Tf -2.0838 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.16 Tw -[( command can also be used to select between two alternate lists of commands for)]TJ --3.284 -1.2889 TD -0 Tw -(execution.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(IF )Tj -/TT14 1 Tf -2.4004 0 TD -(X COMS)Tj -3.5996 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( COMS)Tj -3 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 247.2009 474.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 474.8 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(If )Tj -/TT10 1 Tf -0.991 0 TD -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3211 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( is true, execute )]TJ -/TT14 1 Tf -7.3787 0 TD -0 Tw -(COMS)Tj -2.3996 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0711 Tw -(; if )Tj -/TT10 1 Tf -1.5162 0 TD -0 Tw -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3211 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( causes an error or is equal to )]TJ -/TT10 1 Tf -13.6954 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -(, execute)Tj -/TT14 1 Tf --37.4248 -1.6222 TD -0 Tw -(COMS)Tj -2.4 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj --3 -3.2889 TD -(Thus )Tj -/TT10 1 Tf -2.4717 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -( is equivalent to)Tj -/TT10 1 Tf -5.6615 -2 TD -(\(COMS \(CONS COMSQ)Tj -0 -1 TD -( \(COND)Tj -T* -( \(\(CAR \(NLSETQ \(EVAL X\)\)\))Tj -T* -( )Tj -/TT14 1 Tf -7.8013 0 TD -(COMS)Tj -2.3987 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj --10.8 -1.3333 TD -( \(T )Tj -/TT14 1 Tf -8.4014 0 TD -(COMS)Tj -2.3986 -0.3333 TD -(2)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\)\)\)\))Tj -/TT8 1 Tf --20.7333 -3.0667 TD -0.07 Tw -(For example, the command )Tj -/TT10 1 Tf -12.6115 0 TD -0.1678 Tw -(\(IF \(READP T\) NIL \(P\)\))Tj -/TT8 1 Tf -13.8733 0 TD -0.07 Tw -[( will print the current expression)]TJ --26.4848 -1.2889 TD -0 Tw -(provided the input buffer is empty.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(IF)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X COMS)Tj -3.5997 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 211.6509 284.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 284.46 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(\(EVAL)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( is true, execute )Tj -/TT14 1 Tf -7.0942 0 TD -(COMS)Tj -2.3996 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(; otherwise generate an error.)Tj -/TT10 1 Tf --16.7978 -2.8822 TD -(\(LP)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COMS)Tj -2.3997 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 254.8508 230.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 230.92 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Repeatedly executes )Tj -/TT14 1 Tf -9.2402 0 TD -(COMS)Tj -2.3987 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( until an error occurs.)Tj --18.2389 -3.2889 TD -0.03 Tw -(For example,)Tj -/TT10 1 Tf -5.7761 0 TD -0.0733 Tw -[( \(LP F PRINT \(N T\)\))]TJ -/TT8 1 Tf -11.7685 0 TD -0.03 Tw -[( will attach a )]TJ -/TT10 1 Tf -6.0053 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( at the end of every )]TJ -/TT10 1 Tf -8.9183 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.03 Tw -[( expression.)]TJ -/TT10 1 Tf --36.0687 -1.2889 TD -0.2289 Tw -(\(LP F PRINT \(IF \(## 3\) NIL \(\(N T\)\)\)\))Tj -/TT8 1 Tf -23.4346 0 TD -0.0956 Tw -[( will attach a )]TJ -/TT10 1 Tf -6.2675 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0956 Tw -[( at the end of each print)]TJ --30.3022 -1.2889 TD -0.0178 Tw -[(expression which does not already have a second argument. The form )]TJ -/TT10 1 Tf -31.645 0 TD -0.0422 Tw -(\(## 3\))Tj -/TT8 1 Tf -3.6428 0 TD -0.0178 Tw -[( will cause an)]TJ --35.2878 -1.2889 TD -0.2422 Tw -(error if the edit command )Tj -/TT10 1 Tf -12.8376 0 TD -0 Tw -(3)Tj -/TT8 1 Tf -0.6001 0 TD -0.2422 Tw -[( causes an error, thereby selecting )]TJ -/TT10 1 Tf -16.6115 0 TD -0.5822 Tw -(\(\(N T\)\))Tj -/TT8 1 Tf -4.7829 0 TD -0.2422 Tw -[( as the list of)]TJ --34.8321 -1.2889 TD -0.0722 Tw -(commands to be executed. The )Tj -/TT10 1 Tf -14.2483 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0722 Tw -[( could also be written as )]TJ -/TT10 1 Tf -11.3782 0 TD -0.1744 Tw -(\(IF \(CDDR \(##\)\) NIL \(\(N)Tj --26.8267 -1.2889 TD -0 Tw -(T\)\)\))Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --2.4004 -2.9556 TD -0.2356 Tw -(When an error occurs, )Tj -/TT10 1 Tf -10.9827 0 TD -0 Tw -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -0.2356 Tw -[( prints )]TJ -/TT18 1 Tf -3.5903 0 TD -0 Tw -(N)Tj -/TT12 1 Tf -0.7778 0 TD -( )Tj -/TT10 1 Tf -0.4856 0 TD -(OCCURRENCES)Tj -/TT8 1 Tf -6.6011 0 TD -0.2356 Tw -[( where )]TJ -/TT18 1 Tf -3.7402 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.2356 Tw -[( is the number of times the)]TJ --28.1556 -1.2889 TD -0.3256 Tw -[(commands were successfully executed. The edit chain is left as of the last complete)]TJ -0 -1.2222 TD -0 Tw -(successful execution of )Tj -/TT14 1 Tf -10.3633 0 TD -(COMS)Tj -2.4034 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj -ET -endstream -endobj -217 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -219 0 obj -<< -/Length 6679 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-63)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(\(LPQ)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COMS)Tj -2.4 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 212.2509 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 568.2 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -( but does not print the message )Tj -/TT14 1 Tf -14.0732 0 TD -(N)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(OCCURRENCES)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --26.5352 -2.9556 TD -0.0767 Tw -(In order to prevent non-terminating loops, both )Tj -/TT10 1 Tf -21.8501 0 TD -0 Tw -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0767 Tw -[( and )]TJ -/TT10 1 Tf -2.3462 0 TD -0 Tw -(LPQ)Tj -/TT8 1 Tf -1.8003 0 TD -0.0767 Tw -[( terminate when the number of)]TJ --27.1968 -1.2889 TD -0.3022 Tw -(iterations reaches )Tj -/TT10 1 Tf -8.5673 0 TD -0 Tw -(MAXLOOP)Tj -/TT8 1 Tf -4.2007 0 TD -0.3022 Tw -(, initially set to 30. )Tj -/TT10 1 Tf -10.3338 0 TD -0 Tw -(MAXLOOP)Tj -/TT8 1 Tf -4.2007 0 TD -0.3022 Tw -[( can be set to )]TJ -/TT10 1 Tf -7.4203 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3022 Tw -(, which is)Tj --36.5231 -1.2889 TD -0.2589 Tw -[(equivalent to setting it to infinity. Since the edit chain is left as of the last successful)]TJ -0 -1.2222 TD -0.1022 Tw -(completion of the loop, you can simply continue the )Tj -/TT10 1 Tf -24.1759 0 TD -0 Tw -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -[( command with )]TJ -/TT10 1 Tf -7.5381 0 TD -0 Tw -(REDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1022 Tw -[( \(see Chapter)]TJ --35.3146 -1.2889 TD -0 Tw -(13\).)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(SHOW)Tj -/TT8 1 Tf -3 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 142.0517 445.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 445.86 Tm -([Editor Command])Tj -/TT14 1 Tf --32.9222 -2.7333 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0689 Tw -[( is a list of patterns. )]TJ -/TT10 1 Tf -9.5413 0 TD -0 Tw -(SHOW)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -[( does a )]TJ -/TT10 1 Tf -3.5162 0 TD -0 Tw -(LPQ)Tj -/TT8 1 Tf -1.8003 0 TD -0.0689 Tw -[( printing all instances of the indicated expression\(s\),)]TJ --17.8583 -1.2889 TD -0 Tw -(e.g. )Tj -/TT10 1 Tf -1.8352 0 TD -0.1189 Tw -(\(SHOW FOO \(SETQ FIE &\)\))Tj -/TT8 1 Tf -14.2778 0 TD -0.05 Tw -[( will print all )]TJ -/TT10 1 Tf -6.1844 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.05 Tw -(s and all )Tj -/TT10 1 Tf -4.0987 0 TD -0.1189 Tw -(\(SETQ FIE &\))Tj -/TT8 1 Tf -7.439 0 TD -0.05 Tw -[(s. Generates)]TJ --35.6353 -1.2889 TD -0 Tw -(an error if there arent any instances of the expression\(s\).)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(EXAM)Tj -/TT8 1 Tf -3 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 142.0517 375.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 375.72 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Like )Tj -/TT10 1 Tf -2.3348 0 TD -(SHOW)Tj -/TT8 1 Tf -2.4004 0 TD -0.1478 Tw -[( except calls the editor recursively \(via the )]TJ -/TT10 1 Tf -20.0103 0 TD -0 Tw -(TTY:)Tj -/TT8 1 Tf -2.4004 0 TD -0.1478 Tw -[( command, see above\) on each)]TJ --27.1459 -1.2889 TD -0 Tw -(instance of the indicated espression\(s\) so that you can examine and/or change them.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(ORR)Tj -/TT6 1 Tf -10 0 0 10 123.6 317.18 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 126.3783 317.18 Tm -(COMS)Tj -2.4002 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 212.7809 317.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 317.18 Tm -([Editor Command])Tj -/TT10 1 Tf --32.9222 -3.0667 TD -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1967 Tw -[( begins by executing )]TJ -/TT14 1 Tf -10.0577 0 TD -0 Tw -(COMS)Tj -2.3987 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1967 Tw -(, a list of commands. If no error occurs, )Tj -/TT10 1 Tf -19.2163 0 TD -0 Tw -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1967 Tw -[( is finished.)]TJ --35.8732 -1.6222 TD -0 Tw -(Otherwise, )Tj -/TT10 1 Tf -5.3317 0 TD -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.2356 Tw -[( restores the edit chain to its original value, and continues by executing)]TJ -/TT14 1 Tf --7.132 -1.2889 TD -0 Tw -(COMS)Tj -2.4 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0611 Tw -[(, etc. If none of the command lists execute without errors, i.e., the )]TJ -/TT10 1 Tf -30.0592 0 TD -0 Tw -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -[( "drops off the)]TJ --34.8595 -1.6222 TD -0 Tw -(end", )Tj -/TT10 1 Tf -2.5585 0 TD -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0156 Tw -[( generates an error. Otherwise, the edit chain is left as of the completion of the first)]TJ --4.3588 -1.2889 TD -0 Tw -(command list which executes without an error.)Tj -/TT10 1 Tf -0 -2.8889 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[( as a command list is perfectly legal, and will always execute successfully. Thus, making)]TJ --1.8003 -1.2889 TD -0.0433 Tw -(the last "argument" to )Tj -/TT10 1 Tf -10.04 0 TD -0 Tw -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0433 Tw -[( be )]TJ -/TT10 1 Tf -1.6189 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0433 Tw -[( will insure that the )]TJ -/TT10 1 Tf -9.0692 0 TD -0 Tw -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0433 Tw -[( never causes an error. Any other)]TJ --26.129 -1.2889 TD -0 Tw -(atom is treated as )Tj -/TT10 1 Tf -8.0098 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(ATOM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, i.e., the above example could be written as )Tj -/TT10 1 Tf -19.4834 0 TD -(\(ORR NX !NX NIL\))Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj --40.6953 -2.9556 TD -0.08 Tw -(For example, )Tj -/TT10 1 Tf -6.1561 0 TD -0.1911 Tw -(\(ORR \(NX\) \(!NX\) NIL\))Tj -/TT8 1 Tf -12.5753 0 TD -0.08 Tw -[( will perform a )]TJ -/TT10 1 Tf -7.1589 0 TD -0 Tw -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -0.08 Tw -(, if possible, otherwise a )Tj -/TT10 1 Tf -11.2389 0 TD -0 Tw -(!NX)Tj -/TT8 1 Tf -1.8003 0 TD -0.08 Tw -(, if)Tj --40.1296 -1.2889 TD -0.1356 Tw -[(possible, otherwise do nothing. Similarly, )]TJ -/TT10 1 Tf -19.6732 0 TD -0 Tw -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1356 Tw -[( could be written as )]TJ -/TT10 1 Tf -9.6119 0 TD -0.3244 Tw -(\(ORR \(UP \(1\)\))Tj --32.8856 -1.2889 TD -0 Tw -(\(BK UP \(2\)\) \(UP \(: NIL\)\)\))Tj -/TT8 1 Tf -15.0024 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 54 95.24 Tm -(Edit Macros)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 92.53 m -510.01 92.53 l -S -BT -/TT8 1 Tf -9 0 0 9 78 70.58 Tm -0.1278 Tw -(Many of the more sophisticated branching commands in the editor, such as )Tj -/TT10 1 Tf -35.0231 0 TD -0 Tw -(ORR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6278 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.1278 Tw -(, etc., are most)Tj --38.6514 -1.2889 TD -0.04 Tw -[(often used in conjunction with edit macros. The macro feature permits you to define new commands)]TJ -0 -1.2222 TD -0.1556 Tw -(and thereby expand the editors repertoire, or redefine existing commands \(to refer to the original)Tj -ET -endstream -endobj -220 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -222 0 obj -<< -/Length 8653 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-64)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2456 Tw -(definition of a built-in command when redefining it via a macro, use the )Tj -/TT10 1 Tf -35.3319 0 TD -0 Tw -(ORIGINAL)Tj -/TT8 1 Tf -4.8008 0 TD -0.2456 Tw -[( command,)]TJ --40.1327 -1.2889 TD -0 Tw -(below\).)Tj -0 -2.8889 TD -(Macros are defined by using the )Tj -/TT10 1 Tf -14.4668 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -( command:)Tj -/TT10 1 Tf --12.4002 -2.5489 TD -(\(M)Tj -/TT6 1 Tf -10 0 0 10 160.8017 509 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 163.5801 509 Tm -(C COMS)Tj -3.6 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 260.7809 509 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 509 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(For )Tj -/TT14 1 Tf -1.766 0 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -[( an atom, )]TJ -/TT10 1 Tf -4.3936 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -[( defines )]TJ -/TT14 1 Tf -3.7365 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -[( as an atomic command. If a macro is redefined, its new definition)]TJ --11.6963 -1.2889 TD -0.03 Tw -[(replaces its old. Executing )]TJ -/TT14 1 Tf -12.1598 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( is then the same as executing the list of commands )]TJ -/TT14 1 Tf -23.1073 0 TD -0 Tw -(COMS)Tj -2.4039 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0711 Tw -[( ...)]TJ -/TT14 1 Tf --38.8711 -1.6222 TD -0 Tw -(COMS)Tj -2.4 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj --3 -3.2889 TD -0.1044 Tw -(For example, )Tj -/TT10 1 Tf -6.205 0 TD -0.25 Tw -(\(M BP BK UP P\))Tj -/TT8 1 Tf -9.4014 0 TD -0.1044 Tw -[( will define )]TJ -/TT10 1 Tf -5.5453 0 TD -0 Tw -(BP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1044 Tw -[( as an atomic command which does three)]TJ --22.3518 -1.2889 TD -0.0411 Tw -(things, a )Tj -/TT10 1 Tf -4.0935 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0411 Tw -(, and )Tj -/TT10 1 Tf -2.5251 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0411 Tw -(, and a )Tj -/TT10 1 Tf -3.3162 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0411 Tw -[(. Macros can use commands defined by macros as well as built)]TJ --12.9352 -1.2889 TD -0.1389 Tw -[(in commands in their definitions. For example, suppose )]TJ -/TT10 1 Tf -26.3711 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[( is defined by )]TJ -/TT10 1 Tf -6.7655 0 TD -0.3322 Tw -(\(M Z -1 \(IF)Tj --33.7367 -1.2889 TD -0.0256 Tw -(\(READP T\) NIL \(P\)\)\))Tj -/TT8 1 Tf -11.4785 0 TD -0.0111 Tw -(, i.e., )Tj -/TT10 1 Tf -2.2922 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( does a )]TJ -/TT10 1 Tf -3.3429 0 TD -0 Tw -(-1)Tj -/TT8 1 Tf -1.2002 0 TD -0.0111 Tw -(, and then if nothing has been typed, a )Tj -/TT10 1 Tf -17.2738 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[(. Now we)]TJ --36.7879 -1.2889 TD -0 Tw -(can define )Tj -/TT10 1 Tf -4.8008 0 TD -(ZZ)Tj -/TT8 1 Tf -1.2002 0 TD -( by )Tj -/TT10 1 Tf -1.6094 0 TD -(\(M ZZ -1 Z\))Tj -/TT8 1 Tf -6.6011 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(ZZZ)Tj -/TT8 1 Tf -1.8003 0 TD -( by )Tj -/TT10 1 Tf -1.6094 0 TD -(\(M ZZZ -1 -1 Z\) or \(M ZZZ -1 ZZ\))Tj -/TT8 1 Tf -19.2031 0 TD -(.)Tj --39.2671 -2.9556 TD -(Macros can also define list commands, i.e., commands that take arguments.)Tj -/TT10 1 Tf --1.3333 -2.4822 TD -(\(M \()Tj -/TT14 1 Tf -2.4004 0 TD -(C)Tj -/TT10 1 Tf -0.6001 0 TD -(\) \()Tj -/TT14 1 Tf -1.8003 0 TD -(ARG)Tj -1.7992 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(ARG)Tj -1.7995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(COMS)Tj -2.3998 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 360.6009 330.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 330.26 Tm -([Editor Command])Tj -/TT14 1 Tf --32.9222 -3.0667 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -[( an atom. )]TJ -/TT10 1 Tf -4.6402 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -[( defines )]TJ -/TT14 1 Tf -3.7254 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -[( as a list command. Executing )]TJ -/TT10 1 Tf -13.7056 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(C)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.6312 0 TD -(E)Tj -0.6026 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0311 Tw -[( ... )]TJ -/TT14 1 Tf -3.0627 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -[( is then performed by)]TJ --31.7679 -1.6222 TD -0 Tw -(substituting )Tj -/TT14 1 Tf -5.6879 0 TD -(E)Tj -0.5999 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1322 Tw -[( for )]TJ -/TT14 1 Tf -2.0384 0 TD -0 Tw -(ARG)Tj -1.8005 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.3167 Tw -(, ... )Tj -/TT14 1 Tf -4.2339 0 TD -0 Tw -(E)Tj -0.5994 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1322 Tw -[( for )]TJ -/TT14 1 Tf -2.0384 0 TD -0 Tw -(ARG)Tj -1.8005 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1322 Tw -[( throughout )]TJ -/TT14 1 Tf -5.8299 0 TD -0 Tw -(COMS)Tj -2.399 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.3167 Tw -[( ... )]TJ -/TT14 1 Tf -3.6338 0 TD -0 Tw -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1322 Tw -(, and then)Tj --36.6611 -1.6222 TD -0 Tw -(executing )Tj -/TT14 1 Tf -4.5264 0 TD -(COMS)Tj -2.3992 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj --13.5256 -3.2889 TD -0.0278 Tw -(For example, we could define a more general )Tj -/TT10 1 Tf -20.3858 0 TD -0 Tw -(BP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0278 Tw -[( by )]TJ -/TT10 1 Tf -1.6649 0 TD -0.0667 Tw -(\(M \(BP\) \(N\) \(BK N\) UP P\))Tj -/TT8 1 Tf -14.8023 0 TD -0.0278 Tw -[(. Thus,)]TJ -/TT10 1 Tf --38.0533 -1.2889 TD -0 Tw -(\(BP 3\))Tj -/TT8 1 Tf -3.6006 0 TD -( would perform )Tj -/TT10 1 Tf -7.2666 0 TD -(\(BK 3\))Tj -/TT8 1 Tf -3.6006 0 TD -(, followed by an )Tj -/TT10 1 Tf -7.3721 0 TD -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -(, followed by a )Tj -/TT10 1 Tf -6.79 0 TD -(P)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --30.4302 -2.9556 TD -0.1533 Tw -(A list command can be defined via a macro so as to take a fixed or indefinite number of)Tj -0 -1.2222 TD -0.0133 Tw -[("arguments", as with spread vs. nospread functions. The form given above specified a macro)]TJ -T* -0.0389 Tw -[(with a fixed number of arguments, as indicated by its argument list. If the "argument list" is)]TJ -/TT18 1 Tf -T* -0 Tw -(atomic)Tj -/TT8 1 Tf -2.6836 0 TD -(, the command takes an indefinite number of arguments.)Tj -/TT10 1 Tf --4.0169 -2.4822 TD -(\(M \()Tj -/TT14 1 Tf -2.4004 0 TD -(C)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT14 1 Tf -1.2002 0 TD -(ARG)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(COMS)Tj -2.3989 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 295.8008 150.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 150.32 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(If )Tj -/TT14 1 Tf -1.0021 0 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT14 1 Tf -0.5822 0 TD -(ARG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0822 Tw -[( are both atoms, this defines )]TJ -/TT14 1 Tf -13.1252 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[( as a list command. Executing )]TJ -/TT10 1 Tf -14.1879 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(C)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.7968 0 TD -(E)Tj -0.6029 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.1967 Tw -[( ... )]TJ -/TT14 1 Tf -3.3938 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[( is)]TJ --40.2912 -1.6222 TD -0.1378 Tw -(performed by substituting )Tj -/TT10 1 Tf -12.3001 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(E)Tj -0.601 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.33 Tw -[( ... )]TJ -/TT14 1 Tf -3.6605 0 TD -0 Tw -(E)Tj -0.5995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1378 Tw -(, i.e., )Tj -/TT10 1 Tf -2.5456 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1378 Tw -[( of the command, for )]TJ -/TT14 1 Tf -10.1772 0 TD -0 Tw -(ARG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1378 Tw -[( throughout)]TJ -/TT14 1 Tf --35.8845 -1.6222 TD -0 Tw -(COMS)Tj -2.4 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(, and then executing )Tj -/TT14 1 Tf -9.1885 0 TD -(COMS)Tj -2.3993 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT14 1 Tf -3.0005 0 TD -(COMS)Tj -2.3995 -0.3333 TD -(M)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj --27.1878 -3.2889 TD -0.23 Tw -(For example, the command )Tj -/TT10 1 Tf -13.2515 0 TD -0 Tw -(2ND)Tj -/TT8 1 Tf -1.8003 0 TD -0.23 Tw -[( \(see the Location Specification section above\), could be)]TJ --15.0518 -1.2889 TD -0 Tw -(defined as a macro by )Tj -/TT10 1 Tf -9.9365 0 TD -(\(M)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(2ND\) X \(ORR \(\(LC . X\) \(LC . X\)\)\)\))Tj -/TT8 1 Tf -20.4033 0 TD -(.)Tj -ET -endstream -endobj -223 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -225 0 obj -<< -/Length 5971 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-65)Tj -/TT8 1 Tf --38.3333 60.6156 TD -0.1211 Tw -(For all editor commands, "built in" commands as well as commands defined by macros as)Tj -0 -1.2222 TD -0.2878 Tw -(atomic commands and list definitions are )Tj -/TT18 1 Tf -20.2433 0 TD -0 Tw -(completely)Tj -/TT8 1 Tf -4.2959 0 TD -0.2878 Tw -[( independent. In other words, the)]TJ --24.5392 -1.2222 TD -0.0211 Tw -(existence of an atomic definition for )Tj -/TT14 1 Tf -16.2033 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( in )]TJ -/TT18 1 Tf -1.4153 0 TD -0 Tw -(no)Tj -/TT8 1 Tf -1 0 TD -0.0211 Tw -[( way affects the treatment of )]TJ -/TT14 1 Tf -12.9182 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( when it appears as)]TJ -/TT10 1 Tf --32.737 -1.2889 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.2011 Tw -[( of a list command, and the existence of a list definition for )]TJ -/TT14 1 Tf -28.6906 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.2011 Tw -[( in )]TJ -/TT18 1 Tf -1.7753 0 TD -0 Tw -(no)Tj -/TT8 1 Tf -1 0 TD -0.2011 Tw -[( way affects the)]TJ --33.8663 -1.2889 TD -0.0233 Tw -(treatment of )Tj -/TT14 1 Tf -5.722 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( when it appears as an atom. In particular, )]TJ -/TT14 1 Tf -19.3534 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( can be used as the name of either)]TJ --26.2756 -1.2889 TD -0.14 Tw -[(an atomic command, or a list command, or both. In the latter case, two entirely different)]TJ -0 -1.2222 TD -0 Tw -(definitions can be used.)Tj -0 -2.8889 TD -(Once )Tj -/TT14 1 Tf -2.6321 0 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0911 Tw -[( is defined as an atomic command via a macro definition, it will )]TJ -/TT18 1 Tf -29.5087 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0911 Tw -[( be searched for)]TJ --34.0739 -1.2889 TD -0.16 Tw -(when used in a location specification, unless it is preceded by an )Tj -/TT10 1 Tf -30.6392 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.16 Tw -[(. Thus )]TJ -/TT10 1 Tf -3.7017 0 TD -0.3844 Tw -(\(INSERT --)Tj --34.941 -1.2889 TD -0.1322 Tw -(BEFORE BP\))Tj -/TT8 1 Tf -6.1332 0 TD -0.0544 Tw -[( would not search for )]TJ -/TT10 1 Tf -9.9587 0 TD -0 Tw -(BP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0544 Tw -(, but instead perform a )Tj -/TT10 1 Tf -10.5994 0 TD -0 Tw -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -0.0544 Tw -(, and )Tj -/TT10 1 Tf -2.5518 0 TD -0 Tw -(UP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0544 Tw -(, and a )Tj -/TT10 1 Tf -3.3562 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.0544 Tw -(, and then)Tj --36.8 -1.2889 TD -0 Tw -(do the insertion. The corresponding also holds true for list commands.)Tj -0 -2.8889 TD -0.0644 Tw -(Occasionally, your will want to employ the )Tj -/TT10 1 Tf -19.7704 0 TD -0 Tw -(S)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( command in a macro to save some temporary)]TJ --20.3705 -1.2889 TD -0 Tw -(result. For example, the )Tj -/TT10 1 Tf -10.9014 0 TD -(SW)Tj -/TT8 1 Tf -1.2002 0 TD -( command could be defined as:)Tj -/TT10 1 Tf --2.7682 -2 TD -(\(M \(SW\) \(N M\))Tj -0 -1 TD -( \(NTH N\))Tj -T* -( \(S FOO 1\))Tj -T* -( MARK)Tj -T* -( 0)Tj -T* -( \(NTH M\))Tj -T* -( \(S FIE 1\))Tj -T* -( \(I 1 FOO\))Tj -0 -1.0667 TD -( )Tj -/TT19 1 Tf -2.4004 0 TD -<00400040>Tj -/TT10 1 Tf --2.4004 -1 TD -( \(I 1 FIE\)\))Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.2189 Tw -(Since this version of )Tj -/TT10 1 Tf -9.98 0 TD -0 Tw -(SW)Tj -/TT8 1 Tf -1.2002 0 TD -0.2189 Tw -[( sets )]TJ -/TT10 1 Tf -2.5906 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.2189 Tw -[( and )]TJ -/TT10 1 Tf -2.6306 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.2189 Tw -(, using )Tj -/TT10 1 Tf -3.6438 0 TD -0 Tw -(SW)Tj -/TT8 1 Tf -1.2002 0 TD -0.2189 Tw -[( may have undesirable side effects,)]TJ --24.8461 -1.2889 TD -0.1678 Tw -(especially when the editor was called from deep in a computation, we would have to be)Tj -0 -1.2222 TD -0.2789 Tw -(careful to make up unique names for dummy variables used in edit macros, which is)Tj -T* -0.2144 Tw -(bothersome. Furthermore, it would be impossible to define a command that called itself)Tj -T* -0 Tw -(recursively while setting free variables. The )Tj -/TT10 1 Tf -19.4912 0 TD -(BIND)Tj -/TT8 1 Tf -2.4004 0 TD -( command solves both problems.)Tj -/TT10 1 Tf --23.2249 -2.5489 TD -(\(BIND)Tj -/TT6 1 Tf -10 0 0 10 129 211.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.7783 211.6 Tm -(COMS)Tj -2.4002 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 218.1808 211.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 211.6 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -0.1867 Tw -(Binds three dummy variables )Tj -/TT10 1 Tf -14.0601 0 TD -0 Tw -(#1)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6867 0 TD -(#2)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6867 0 TD -(#3)Tj -/TT8 1 Tf -1.2002 0 TD -0.1867 Tw -(, \(initialized to )Tj -/TT10 1 Tf -7.2182 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1867 Tw -(\), and then executes the edit)Tj --28.0526 -1.2889 TD -0 Tw -(commands )Tj -/TT14 1 Tf -5.1487 0 TD -(COMS)Tj -2.4024 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.0633 Tw -[( ... )]TJ -/TT14 1 Tf -3.1272 0 TD -0 Tw -(COMS)Tj -2.3995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0267 Tw -(. )Tj -/TT10 1 Tf -0.8033 0 TD -0 Tw -(BIND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0267 Tw -[( uses a )]TJ -/TT10 1 Tf -3.2597 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0267 Tw -[( to make these bindings, so they are only)]TJ --23.1416 -1.6222 TD -0.1644 Tw -(in effect while the commands are being executed and )Tj -/TT10 1 Tf -25.1988 0 TD -0 Tw -(BIND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1644 Tw -(s can be used recursively; the)Tj --27.5991 -1.2889 TD -0 Tw -(variables )Tj -/TT10 1 Tf -4.248 0 TD -(#1)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(#2)Tj -/TT8 1 Tf -1.2002 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(#3)Tj -/TT8 1 Tf -1.2002 0 TD -( will be rebound each time )Tj -/TT10 1 Tf -11.9922 0 TD -(BIND)Tj -/TT8 1 Tf -2.4004 0 TD -( is invoked.)Tj --25.1841 -2.9556 TD -(Thus, we can write SW safely as:)Tj -/TT10 1 Tf -9.3333 -1.9333 TD -(\(M \(SW\) \(N M\))Tj -0 -1 TD -( \(BIND \(NTH N\))Tj -T* -( \(S #1 1\))Tj -T* -( MARK)Tj -T* -( 0)Tj -T* -( \(NTH M\))Tj -T* -( \(S #2 1\))Tj -T* -( \(I 1 #1\))Tj -ET -endstream -endobj -226 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -228 0 obj -<< -/Length 6191 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-66)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 246 569.54 Tm -( )Tj -/TT19 1 Tf -6.001 0 TD -<00400040>Tj -/TT10 1 Tf -1.9736 0 TD -( \(I 1 #2\)\)\))Tj --18.6413 -2.3267 TD -(\(ORIGINAL)Tj -/TT6 1 Tf -10 0 0 10 198.6 548.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.3783 548.6 Tm -(COMS)Tj -2.4002 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... COMS)Tj -5.4 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 287.7809 548.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 548.6 Tm -([Editor Command])Tj --32.9222 -3.0667 TD -(Executes )Tj -/TT14 1 Tf -4.2163 0 TD -(COMS)Tj -2.4004 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -0.2011 Tw -[( ... )]TJ -/TT14 1 Tf -3.4027 0 TD -0 Tw -(COMS)Tj -2.3995 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0844 Tw -[( without regard to macro definitions. Useful for redefining a)]TJ --13.6189 -1.6222 TD -0 Tw -(built in command in terms of itself., i.e. effectively allows you to "advise" edit commands.)Tj --4 -2.8889 TD -0.0356 Tw -(User macros are stored on a list )Tj -/TT10 1 Tf -14.3807 0 TD -0 Tw -(USERMACROS)Tj -/TT8 1 Tf -6.001 0 TD -0.0356 Tw -[(. The file package command )]TJ -/TT10 1 Tf -13.1157 0 TD -0 Tw -(USERMACROS)Tj -/TT8 1 Tf -6.001 0 TD -0.0356 Tw -[( \(Chapter 17\))]TJ --39.4984 -1.2889 TD -0 Tw -(is available for dumping all or selected user macros.)Tj -/TT6 1 Tf -10 0 0 10 102 426.46 Tm -(Undo)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 423.75 m -558.01 423.75 l -S -BT -/TT8 1 Tf -9 0 0 9 126 401.8 Tm -0.3311 Tw -(Each command that causes structure modification automatically adds an entry to the front of)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -0.1833 Tw -[( that contains the information required to restore all pointers that were changed by that)]TJ --4.2007 -1.2889 TD -0 Tw -(command.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(UNDO)Tj -/TT4 1 Tf -10 0 0 10 171.6 356.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 356.86 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.2 Tw -(Undoes the last, i.e., most recent, structure modification command that has not yet been)Tj -0 -1.2222 TD -0.1133 Tw -(undone, and prints the name of that command, e.g., )Tj -/TT10 1 Tf -24.1626 0 TD -0.2722 Tw -(MBD undone)Tj -/TT8 1 Tf -6.2732 0 TD -0.1133 Tw -[(. The edit chain is then)]TJ -/TT18 1 Tf --30.4358 -1.2889 TD -0 Tw -(exactly)Tj -/TT8 1 Tf -2.8511 0 TD -0.21 Tw -[( what it was before the "undone" command had been performed. If there are no)]TJ --2.8511 -1.2222 TD -0 Tw -(commands to undo, )Tj -/TT10 1 Tf -9.0859 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -( types )Tj -/TT10 1 Tf -2.8862 0 TD -(nothing saved)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --23.5072 -2.5489 TD -(!UNDO)Tj -/TT4 1 Tf -10 0 0 10 177 275.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 275.72 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.02 Tw -[(Undoes all modifications performed during this editing session, i.e. this call to the editor. As)]TJ -0 -1.2222 TD -0.1067 Tw -(each command is undone, its name is printed a la )Tj -/TT10 1 Tf -23.1633 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[(. If there is nothing to be undone,)]TJ -/TT10 1 Tf --25.5637 -1.2889 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -( prints )Tj -/TT10 1 Tf -3.1191 0 TD -(nothing saved)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj --17.9209 -2.9556 TD -0.3567 Tw -(Undoing an event containing an )Tj -/TT10 1 Tf -16.2745 0 TD -0 Tw -(I)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.8567 0 TD -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.3567 Tw -(, or )Tj -/TT10 1 Tf -2.4043 0 TD -0 Tw -(S)Tj -/TT8 1 Tf -0.6001 0 TD -0.3567 Tw -[( command will also undo the side effects of the)]TJ --21.3358 -1.2889 TD -0.05 Tw -(evaluation\(s\), e.g., undoing )Tj -/TT10 1 Tf -12.4791 0 TD -0.12 Tw -(\(I 3 \(/NCONC FOO FIE\)\))Tj -/TT8 1 Tf -13.6821 0 TD -0.05 Tw -[( will not only restore the third element but)]TJ --26.1613 -1.2889 TD -0.0678 Tw -(also restore )Tj -/TT10 1 Tf -5.4402 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0678 Tw -(. Similarly, undoing an )Tj -/TT10 1 Tf -10.6471 0 TD -0 Tw -(S)Tj -/TT8 1 Tf -0.6001 0 TD -0.0678 Tw -[( command will undo the set. See the discussion of )]TJ -/TT10 1 Tf -23.247 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0678 Tw -[( in)]TJ --44.1351 -1.2889 TD -0.1622 Tw -[(Chapter 13. \(If the )]TJ -/TT10 1 Tf -9.2935 0 TD -0 Tw -(I)Tj -/TT8 1 Tf -0.6001 0 TD -0.1622 Tw -[( command was typed directly to the editor, )]TJ -/TT10 1 Tf -20.6274 0 TD -0 Tw -(/NCONC)Tj -/TT8 1 Tf -3.6006 0 TD -0.1622 Tw -[( would automatically be)]TJ --34.1216 -1.2889 TD -0 Tw -(substituted for )Tj -/TT10 1 Tf -6.7402 0 TD -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -( as described in Chapter 13.\))Tj --9.7407 -2.9556 TD -(Since )Tj -/TT10 1 Tf -2.6564 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0856 Tw -[( and )]TJ -/TT10 1 Tf -2.364 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.0856 Tw -[( cause structure modification, they also add an entry to )]TJ -/TT10 1 Tf -25.4122 0 TD -0 Tw -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0856 Tw -[(. However,)]TJ -/TT10 1 Tf --40.0341 -1.2889 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0667 Tw -[( and )]TJ -/TT10 1 Tf -2.3262 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.0667 Tw -[( entries are skipped by )]TJ -/TT10 1 Tf -10.6058 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0667 Tw -(, e.g., if you perform an )Tj -/TT10 1 Tf -10.9781 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0667 Tw -(, and then an )Tj -/TT10 1 Tf -6.2608 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.0667 Tw -(, the)Tj --43.3731 -1.2889 TD -0 Tw -(first )Tj -/TT10 1 Tf -2.0868 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0678 Tw -[( will undo the )]TJ -/TT10 1 Tf -6.7071 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.0678 Tw -(, and the second will undo the )Tj -/TT10 1 Tf -14.076 0 TD -0 Tw -(INSERT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0678 Tw -[(. However, you can also specify)]TJ --30.6712 -1.2889 TD -0.1311 Tw -[(precisely which commands you want undone by identifying the corresponding entry. In this case,)]TJ -0 -1.2222 TD -0.0311 Tw -(you can undo an )Tj -/TT10 1 Tf -7.7792 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[( command, e.g., by typing )]TJ -/TT10 1 Tf -11.9109 0 TD -0.0756 Tw -(UNDO UNDO)Tj -/TT8 1 Tf -5.4764 0 TD -0.0311 Tw -(, or undo a )Tj -/TT10 1 Tf -5.1572 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.0311 Tw -[( command, or undo a)]TJ --35.7246 -1.2889 TD -0 Tw -(command other than that most recently performed.)Tj -ET -endstream -endobj -229 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R -/TT19 82 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -231 0 obj -<< -/Length 5658 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-67)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.0811 Tw -(Whenever you )Tj -/TT18 1 Tf -6.9283 0 TD -0 Tw -(continue)Tj -/TT8 1 Tf -3.5195 0 TD -0.0811 Tw -[( an editing session, the undo information of the previous session is protected)]TJ --10.4479 -1.2222 TD -0.1911 Tw -(by inserting a special blip, called an undo-block, on the front of )Tj -/TT10 1 Tf -30.434 0 TD -0 Tw -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -0.1911 Tw -[(. This undo-block will)]TJ --34.6347 -1.2889 TD -0.2478 Tw -(terminate the operation of a )Tj -/TT10 1 Tf -13.7823 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.2478 Tw -(, thereby confining its effect to the current session, and will)Tj --16.7828 -1.2889 TD -0 Tw -(similarly prevent an )Tj -/TT10 1 Tf -9.1812 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -( command from operating on commands executed in the previous session.)Tj --11.5815 -2.9556 TD -0.1156 Tw -(Thus, if you enter the editor continuing a session, and immediately execute an )Tj -/TT10 1 Tf -36.263 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1156 Tw -[( or )]TJ -/TT10 1 Tf -1.672 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.1156 Tw -(, the)Tj --43.3359 -1.2889 TD -0.0967 Tw -(editor will type )Tj -/TT10 1 Tf -7.3574 0 TD -0 Tw -(BLOCKED)Tj -/TT8 1 Tf -4.2007 0 TD -0.0967 Tw -[( instead of )]TJ -/TT10 1 Tf -5.1318 0 TD -0.2322 Tw -(NOTHING SAVED)Tj -/TT8 1 Tf -8.0335 0 TD -0.0967 Tw -[(. Similarly, if you execute several commands)]TJ --24.7234 -1.2889 TD -0 Tw -(and then undo them all, another )Tj -/TT10 1 Tf -14.5161 0 TD -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -( will also cause )Tj -/TT10 1 Tf -6.9175 0 TD -(BLOCKED)Tj -/TT8 1 Tf -4.2007 0 TD -( to be typed.)Tj -/TT10 1 Tf --29.8094 -2.5489 TD -(UNBLOCK)Tj -/TT4 1 Tf -10 0 0 10 139.8 462.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 462.6 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -0.1811 Tw -[(Removes an undo-block. If executed at a non-blocked state, i.e., if )]TJ -/TT10 1 Tf -31.519 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1811 Tw -[( or )]TJ -/TT10 1 Tf -1.8031 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT18 1 Tf -0.4311 0 TD -(could)Tj -/TT8 1 Tf --39.1542 -1.2889 TD -(operate, types )Tj -/TT10 1 Tf -6.4624 0 TD -(NOT BLOCKED)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --14.3968 -2.5489 TD -(TEST)Tj -/TT4 1 Tf -10 0 0 10 123.6 403.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 403.46 Tm -([Editor Command])Tj --32.9222 -2.7333 TD -(Adds an undo-block at the front of )Tj -/TT10 1 Tf -15.5947 0 TD -(UNDOLST)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --19.7954 -2.9556 TD -0.1622 Tw -(Note that )Tj -/TT10 1 Tf -4.7409 0 TD -0 Tw -(TEST)Tj -/TT8 1 Tf -2.4004 0 TD -0.1622 Tw -[( together with )]TJ -/TT10 1 Tf -6.9593 0 TD -0 Tw -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -0.1622 Tw -[( provide a "tentative" mode for editing, i.e., you can)]TJ --17.1012 -1.2889 TD -0 Tw -(perform a number of changes, and then undo all of them with a single )Tj -/TT10 1 Tf -31.2139 0 TD -(!UNDO)Tj -/TT8 1 Tf -3.0005 0 TD -( command.)Tj -/TT10 1 Tf --35.5477 -2.5489 TD -(\(UNDO)Tj -/TT6 1 Tf -10 0 0 10 129 317.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.7783 317.72 Tm -(EventSpec)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT4 1 Tf -10 0 0 10 185.7871 317.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 410.3 317.72 Tm -([Editor Command])Tj -/TT14 1 Tf --32.9222 -2.7333 TD -(EventSpec)Tj -/TT8 1 Tf -5.4009 0 TD -0.1344 Tw -[( is an event specification \(see Chapter 13\). Undoes the indicated event on the)]TJ --5.4009 -1.2889 TD -0.0589 Tw -[(history list. In this case, the event does not have to be in the current editing session, even if)]TJ -0 -1.2222 TD -0.0711 Tw -[(the previous session has not been unblocked as described above. However, you do have to)]TJ -T* -0 Tw -(be editing the same expression as was being edited in the indicated event.)Tj -0 -2.8889 TD -0.7633 Tw -(If the expressions differ, the editor types the warning message )Tj -/TT10 1 Tf -35.3365 0 TD -0 Tw -("different)Tj --35.3365 -1.2889 TD -(expression,")Tj -/TT8 1 Tf -7.2012 0 TD -0.2789 Tw -[( and does not undo the event. The editor enforces this to avoid your)]TJ --7.2012 -1.2889 TD -0 Tw -(accidentally undoing a random command by giving the wrong event specification.)Tj -/TT6 1 Tf -10 0 0 10 54 167.98 Tm -(EDITDEFAULT)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 165.27 m -510.01 165.27 l -S -BT -/TT8 1 Tf -9 0 0 9 78 143.32 Tm -0.03 Tw -(Whenever a command is not recognized, i.e., is not "built in" or defined as a macro, the editor calls an)Tj -0 -1.2222 TD -0.02 Tw -(internal function, )Tj -/TT10 1 Tf -7.9433 0 TD -0 Tw -(EDITDEFAULT)Tj -/TT8 1 Tf -6.6011 0 TD -0.02 Tw -[(, to determine what action to take. Since )]TJ -/TT10 1 Tf -18.3123 0 TD -0 Tw -(EDITDEFAULT)Tj -/TT8 1 Tf -6.6011 0 TD -0.02 Tw -[( is part of the)]TJ --39.4578 -1.2889 TD -0.2533 Tw -(edit block, you cannot advise or redefine it as a means of augmenting or extending the editor.)Tj -0 -1.2222 TD -0.0989 Tw -(However, you can accomplish this via )Tj -/TT10 1 Tf -17.6886 0 TD -0 Tw -(EDITUSERFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0989 Tw -[(. If the value of the variable )]TJ -/TT10 1 Tf -13.3766 0 TD -0 Tw -(EDITUSERFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0989 Tw -[( is )]TJ -/TT10 1 Tf -1.4126 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf --45.0798 -1.2889 TD -(EDITDEFAULT)Tj -/TT8 1 Tf -6.6011 0 TD -0.4533 Tw -[( calls the function )]TJ -/TT10 1 Tf -9.8573 0 TD -0 Tw -(EDITUSERFN)Tj -/TT8 1 Tf -6.001 0 TD -0.4533 Tw -[( giving it the command as an argument. If)]TJ -/TT10 1 Tf --22.4593 -1.2889 TD -0 Tw -(EDITUSERFN)Tj -/TT8 1 Tf -6.001 0 TD -0.1467 Tw -[( returns a non-)]TJ -/TT10 1 Tf -6.9371 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1467 Tw -[( value, its value is interpreted as a single command and executed.)]TJ --14.7383 -1.2889 TD -0 Tw -(Otherwise, the error correction procedure described below is performed.)Tj -ET -endstream -endobj -232 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -234 0 obj -<< -/Length 5446 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-68)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2622 Tw -(If a location specification is being executed, an internal flag informs )Tj -/TT10 1 Tf -32.9074 0 TD -0 Tw -(EDITDEFAULT)Tj -/TT8 1 Tf -6.6011 0 TD -0.2622 Tw -[( to treat the)]TJ --39.5085 -1.2889 TD -0 Tw -(command as though it had been preceded by an )Tj -/TT10 1 Tf -21.5107 0 TD -(F)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --22.1108 -2.9556 TD -0.0033 Tw -(If the command is a list, an attempt is made to perform spelling correction on the )Tj -/TT10 1 Tf -36.0485 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0002 Tc -0.0031 Tw -( of the command)Tj --37.8487 -1.2889 TD -0 Tc -0 Tw -(\(unless )Tj -/TT10 1 Tf -3.4313 0 TD -0.1089 Tw -(DWIMFLG = NIL)Tj -/TT8 1 Tf -8.019 0 TD -0.0456 Tw -(\) using )Tj -/TT10 1 Tf -3.3802 0 TD -0 Tw -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0456 Tw -[(, a list of all list edit commands. If spelling correction is)]TJ --20.2314 -1.2889 TD -0.1033 Tw -(successful, the correct command name is )Tj -/TT10 1 Tf -18.8612 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -(ed into the command, and the editor continues by)Tj --22.4618 -1.2889 TD -0.05 Tw -[(executing the command. In other words, if you type )]TJ -/TT10 1 Tf -23.96 0 TD -0.12 Tw -(\(LP F PRINT \(MBBD AND \(NULL FLG\)\)\))Tj -/TT8 1 Tf -21.1233 0 TD -0 Tw -(,)Tj --45.0833 -1.2889 TD -0.14 Tw -(only one spelling correction will be necessary to change )Tj -/TT10 1 Tf -26.092 0 TD -0 Tw -(MBBD)Tj -/TT8 1 Tf -2.4004 0 TD -0.14 Tw -[( to )]TJ -/TT10 1 Tf -1.6521 0 TD -0 Tw -(MBD)Tj -/TT8 1 Tf -1.8003 0 TD -0.14 Tw -[(. If spelling correction is not)]TJ --31.9448 -1.2889 TD -0 Tw -(successful, an error is generated.)Tj -3.3333 -2 TD -0.1256 Tw -[(Note:)-901.2(When a macro is defined via the )]TJ -/TT10 1 Tf -18.7166 0 TD -0 Tw -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.1256 Tw -[( command, the command name is added to)]TJ -/TT10 1 Tf --15.9834 -1.2889 TD -0 Tw -(EDITCOMSA)Tj -/TT8 1 Tf -5.4009 0 TD -0.3622 Tw -[( or )]TJ -/TT10 1 Tf -2.1654 0 TD -0 Tw -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -0.3622 Tw -(, depending on whether it is an atomic or list)Tj --12.9671 -1.2889 TD -0.32 Tw -[(command. The )]TJ -/TT10 1 Tf -8.0821 0 TD -0 Tw -(USERMACROS)Tj -/TT8 1 Tf -6.001 0 TD -0.32 Tw -[( file package command is aware of this, and)]TJ --14.083 -1.2889 TD -0 Tw -(provides for restoring )Tj -/TT10 1 Tf -9.9297 0 TD -(EDITCOMSA)Tj -/TT8 1 Tf -5.4009 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --29.591 -3.1044 TD -(If the command is atomic, the procedure followed is a little more )Tj -/TT4 1 Tf -10 0 0 10 385.6729 392.6 Tm -(elaborate.)Tj -/TT8 1 Tf -9 0 0 9 150 374.6 Tm -0.0344 Tw -[(1.)-3916.7(If the command is one of the list commands, i.e., a member of )]TJ -/TT10 1 Tf -32.4826 0 TD -0 Tw -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0344 Tw -(, and there)Tj --37.2168 -1.2889 TD -0.0011 Tw -(is additional input on the same terminal line, treat the entire line as a single list command. The)Tj -0 -1.2222 TD -0.2189 Tw -(line is read using )Tj -/TT10 1 Tf -8.6744 0 TD -0 Tw -(READLINE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2189 Tw -[( \(see Chapter 13\), so the line can be terminated by a square)]TJ --13.4752 -1.2889 TD -0.0889 Tw -[(bracket, or by a carriage return not preceded by a space. You may omit parentheses for any)]TJ -0 -1.2222 TD -0 Tw -(list command typed in at the top level \(provided the command is not also an atomic command,)Tj -T* -(e.g. )Tj -/TT10 1 Tf -1.7852 0 TD -(NX)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(BK)Tj -/TT8 1 Tf -1.2002 0 TD -(\). For example,)Tj -/TT10 1 Tf --4.0189 -2.8889 TD -(*P)Tj -5.3333 -1 TD -(\(COND \(& &\) \(T &\)\))Tj -T* -(*XTR 3 2])Tj -T* -(*MOVE TO AFTER LP)Tj -T* -(*)Tj -/TT8 1 Tf --2 -1.8444 TD -0.0822 Tw -(If the command is on the list )Tj -/TT10 1 Tf -13.3929 0 TD -0 Tw -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0822 Tw -[( but no additional input is on the terminal)]TJ --22.7938 -1.2889 TD -0 Tw -(line, an error is generated. For example:)Tj -/TT10 1 Tf -0.6667 -2.8222 TD -(*P)Tj -5.3333 -1 TD -(\(COND \(& &\) \(T &\)\))Tj -T* -(*MOVE)Tj -0 -2.2222 TD -(MOVE ?)Tj -0 -1.2222 TD -(*)Tj -/TT8 1 Tf --2 -1.8444 TD -0.0356 Tw -(If the command is on )Tj -/TT10 1 Tf -9.7759 0 TD -0 Tw -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0356 Tw -(, and )Tj -/TT18 1 Tf -2.514 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0356 Tw -[( typed in directly, e.g., it appears as one of)]TJ --23.0238 -1.2889 TD -0.1978 Tw -(the commands in a )Tj -/TT10 1 Tf -9.4234 0 TD -0 Tw -(LP)Tj -/TT8 1 Tf -1.2002 0 TD -0.1978 Tw -[( command, the procedure is similar, with the rest of the command)]TJ --10.6236 -1.2889 TD -0.0722 Tw -(stream at that level being treated as "the terminal line", e.g. )Tj -/TT10 1 Tf -27.023 0 TD -0.1722 Tw -(\(LP F \(COND)Tj -/TT12 1 Tf -6.9455 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3222 0 TD -0.1722 Tw -(\(T &\)\) XTR 2)Tj --34.2907 -1.2889 TD -0 Tw -(2\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -2.7998 -2.0667 TD -0.0133 Tw -(If the command is being executed in location context, )Tj -/TT10 1 Tf -23.8568 0 TD -0 Tw -(EDITDEFAULT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0133 Tw -[( does not get this)]TJ --34.4579 -1.2889 TD -0.1144 Tw -(far, e.g., )Tj -/TT10 1 Tf -3.9921 0 TD -0.2733 Tw -(\(MOVE TO AFTER COND XTR 3\))Tj -/TT8 1 Tf -16.9692 0 TD -0.1144 Tw -[( will search for )]TJ -/TT10 1 Tf -7.2625 0 TD -0 Tw -(XTR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT18 1 Tf -0.6144 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1144 Tw -[( execute it. However,)]TJ -/TT10 1 Tf --31.9715 -1.2889 TD -0 Tw -(\(MOVE TO AFTER COND \(XTR 3\)\))Tj -/TT8 1 Tf -16.8027 0 TD -( will work.)Tj -ET -endstream -endobj -235 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -237 0 obj -<< -/Length 3436 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-69)Tj -/TT8 1 Tf --39.6667 60.6156 TD -0.0267 Tw -[(2.)-3916.7(If the command was typed in and the first character in the command is an 8, treat the)]TJ -0.6667 -1.2222 TD -0.0178 Tw -(8 as a mistyped left parenthesis, and and the rest of the line as the arguments to the command,)Tj -T* -0 Tw -(e.g.,)Tj -/TT10 1 Tf -0.6667 -2.8222 TD -(*P)Tj -5.3333 -1 TD -(\(COND \(& &\) \(T &\)\))Tj -T* -(*8-2 \(Y \(RETURN Z\)\)\))Tj -T* -(=\(-2)Tj -T* -(*P)Tj -T* -(\(COND \(Y &\) \(& &\) \(T &\)\))Tj -/TT8 1 Tf --6.6667 -1.8444 TD -0.0533 Tw -[(3.)-3916.7(If the command was typed in, is the name of a function, and is followed by )]TJ -/TT10 1 Tf -38.8091 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0533 Tw -[( or a)]TJ --39.9427 -1.2889 TD -0 Tw -(list )Tj -/TT10 1 Tf -1.5987 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0167 Tw -[( of which is not an edit command, assume you forgot to type )]TJ -/TT10 1 Tf -27.2889 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.0167 Tw -[( and intend to apply the)]TJ --31.288 -1.2889 TD -0.3567 Tw -(function to its arguments, type )Tj -/TT10 1 Tf -15.6139 0 TD -0 Tw -(=E)Tj -/TT8 1 Tf -1.2002 0 TD -0.3567 Tw -[( and the function name, and perform the indicated)]TJ --16.8141 -1.2889 TD -0 Tw -(computation, e.g.)Tj -/TT10 1 Tf -0.6667 -2.8222 TD -(*BREAK\(FOO\))Tj -5.3333 -1 TD -(=E BREAK)Tj -T* -(\(FOO\))Tj -T* -(*)Tj -/TT8 1 Tf --6.6667 -1.8444 TD -0.1978 Tw -[(4.)-3916.7(If the last character in the command is )]TJ -/TT10 1 Tf -23.3353 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1978 Tw -(, and the first )Tj -/TT14 1 Tf -6.8902 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1978 Tw -(-1 characters comprise a)Tj --30.7591 -1.2889 TD -0 Tw -(number, assume that you intended two commands, e.g.,)Tj -/TT10 1 Tf -0.6667 -2.8222 TD -(*P)Tj -5.3333 -1 TD -(\(COND \(& &\) \(T &\)\))Tj -T* -(*0P)Tj -T* -(=0 P)Tj -T* -(\(SETQ X \(COND & &\)\))Tj -/TT8 1 Tf --6.6667 -1.8444 TD -0.4678 Tw -[(5.)-3916.7(Attempt spelling correction using )]TJ -/TT10 1 Tf -21.676 0 TD -0 Tw -(EDITCOMSA)Tj -/TT8 1 Tf -5.4009 0 TD -0.4678 Tw -(, and if successful, execute the)Tj --26.4102 -1.2889 TD -0 Tw -(corrected command.)Tj --0.6667 -2 TD -0.1744 Tw -[(6.)-3916.7(If there is additional input on the same line, or command stream, spelling correct)]TJ -0.6667 -1.2222 TD -0 Tw -(using )Tj -/TT10 1 Tf -2.7061 0 TD -(EDITCOMSL)Tj -/TT8 1 Tf -5.4009 0 TD -( as a spelling list, e.g.,)Tj -/TT10 1 Tf --7.4403 -2.8889 TD -(*MBBD SETQ X)Tj -5.3333 -1 TD -(=MBD)Tj -T* -(*)Tj -/TT8 1 Tf --6.6667 -1.8444 TD -[(7.)-3916.7(Otherwise, generate an error.)]TJ -/TT6 1 Tf -10 0 0 10 54 94.6 Tm -(Time Stamps)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 91.89 m -510.01 91.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 69.94 Tm -0.1544 Tw -(Whenever a function is edited, and changes were made, the function is time-stamped \(by )Tj -/TT10 1 Tf -41.7486 0 TD -0 Tw -(EDITE)Tj -/TT8 1 Tf -3.0005 0 TD -(\),)Tj --44.7491 -1.2889 TD -0.0044 Tw -(which consists of inserting a comment of the form )Tj -/TT10 1 Tf -22.354 0 TD -0 Tw -(\(* )Tj -/TT14 1 Tf -1.8103 0 TD -(USERS-INITIALS)Tj -/TT10 1 Tf -8.4014 0 TD -( )Tj -/TT14 1 Tf -0.6101 0 TD -(DATE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0044 Tw -(. )Tj -/TT14 1 Tf -0.7589 0 TD -0 Tw -(USERS-INITIALS)Tj -/TT8 1 Tf --36.9351 -1.2889 TD -0.0389 Tw -(is the value of the variable )Tj -/TT10 1 Tf -12.1137 0 TD -0 Tw -(INITIALS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0389 Tw -[(. After greeting \(see Chapter 12\), the function )]TJ -/TT10 1 Tf -20.81 0 TD -0 Tw -(SETINITIALS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0389 Tw -[( is)]TJ -ET -endstream -endobj -238 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT14 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -240 0 obj -<< -/Length 5391 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-70)Tj -/TT4 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.32 Tw -(called. )Tj -/TT10 1 Tf -4.0057 0 TD -0 Tw -(SETINITIALS)Tj -/TT8 1 Tf -6.6011 0 TD -0.32 Tw -[( searches )]TJ -/TT10 1 Tf -4.8666 0 TD -0 Tw -(INITIALSLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.32 Tw -(, a list of elements of the form )Tj -/TT10 1 Tf -15.8867 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(USERNAME)Tj -/TT10 1 Tf -4.8008 0 TD -0.7689 Tc -( .)Tj -/TT14 1 Tf --43.362 -1.2889 TD -0 Tc -(INITIALS)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1889 Tw -[( or )]TJ -/TT10 1 Tf -1.8187 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(USERNAME)Tj -/TT10 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -1.0545 0 TD -(FIRSTNAME)Tj -/TT10 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -1.0545 0 TD -(INITIALS)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1889 Tw -[(. If your name is found, )]TJ -/TT10 1 Tf -12.1757 0 TD -0 Tw -(INITIALS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1889 Tw -[( is set)]TJ --42.5078 -1.2889 TD -0.0611 Tw -[(accordingly. If your username name is )]TJ -/TT18 1 Tf -17.917 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0611 Tw -[( found on )]TJ -/TT10 1 Tf -4.7361 0 TD -0 Tw -(INITIALSLST)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.5611 0 TD -(INITIALS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0611 Tw -[( is set to the value of)]TJ -/TT10 1 Tf --35.9491 -1.2889 TD -0 Tw -(DEFAULTINITIALS)Tj -/TT8 1 Tf -9.0015 0 TD -0.0478 Tw -(, initially )Tj -/TT10 1 Tf -4.265 0 TD -0 Tw -(edited:)Tj -/TT8 1 Tf -4.2007 0 TD -0.0478 Tw -[(. Thus, the default is to always time stamp. To suppress time)]TJ --17.4671 -1.2889 TD -0.26 Tw -(stamping, you must either include an entry of the form )Tj -/TT10 1 Tf -27.1503 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(USERNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.26 Tw -[( on )]TJ -/TT10 1 Tf -2.1479 0 TD -0 Tw -(INITIALSLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.26 Tw -(, or set)Tj -/TT10 1 Tf --41.9003 -1.2889 TD -0 Tw -(DEFAULTINITIALS)Tj -/TT8 1 Tf -9.0015 0 TD -0.1022 Tw -[( to )]TJ -/TT10 1 Tf -1.5765 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1022 Tw -[( before greeting, i.e. in your user profile, or else, )]TJ -/TT18 1 Tf -22.4158 0 TD -0 Tw -(after)Tj -/TT8 1 Tf -1.833 0 TD -0.1022 Tw -[( greeting, explicitly)]TJ --36.6271 -1.2889 TD -0 Tw -(set )Tj -/TT10 1 Tf -1.479 0 TD -(INITIALS)Tj -/TT8 1 Tf -4.8008 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --9.4521 -2.9556 TD -0.0444 Tw -[(If you want your functions to be time stamped with your initials when edited, include a file package)]TJ -0 -1.2222 TD -0.0422 Tw -(command command of the form )Tj -/TT10 1 Tf -14.7804 0 TD -0.1 Tw -(\(ADDVARS \(INITIALSLST)Tj -/TT12 1 Tf -12.702 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2922 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(USERNAME)Tj -/TT10 1 Tf -4.8008 0 TD -0.1 Tw -[( . )]TJ -/TT14 1 Tf -2.0003 0 TD -0 Tw -(INITIALS)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\)\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0422 Tw -[( in your)]TJ -/TT10 1 Tf --41.777 -1.2889 TD -0 Tw -(INIT.LISP)Tj -/TT8 1 Tf -5.4009 0 TD -( file \(see Chapter 12\).)Tj --5.4009 -2.9556 TD -0.2989 Tw -(The following three functions may be of use for specialized applications with respect to time-)Tj -0 -1.2222 TD -0 Tw -(stamping:)Tj -/TT10 1 Tf -4.4131 0 TD -0.4822 Tw -[( \(FIXEDITDATE)]TJ -/TT12 1 Tf -8.2835 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.4511 0 TD -(EXPR)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2011 Tw -[( which, given a lambda expression, inserts or smashes a time-)]TJ --16.1482 -1.2889 TD -0.3789 Tw -(stamp comment; )Tj -/TT10 1 Tf -8.3842 0 TD -0 Tw -(\(EDITDATE?)Tj -/TT12 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.6289 0 TD -(COMMENT)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.3789 Tw -[( which returns )]TJ -/TT10 1 Tf -7.8237 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3789 Tw -[( if )]TJ -/TT14 1 Tf -1.8818 0 TD -0 Tw -(COMMENT)Tj -/TT8 1 Tf -4.2007 0 TD -0.3789 Tw -[( is a time stamp; and)]TJ -/TT10 1 Tf --34.3212 -1.2889 TD -0 Tw -(\(EDITDATE)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.2733 0 TD -(OLDATE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.2733 0 TD -(INITLS)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( which returns a new time-stamp comment. If )]TJ -/TT14 1 Tf -20.9004 0 TD -0 Tw -(OLDATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -[( is a time-stamp)]TJ --38.2498 -1.2889 TD -0 Tw -(comment, it will be reused.)Tj -/TT6 1 Tf -10 0 0 10 102 317 Tm -(Warning with Declarations )Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 314.29 m -582.01 314.29 l -S -BT -/TT8 1 Tf -9 0 0 9 174 300.34 Tm -0.1144 Tw -(CAUTION: There is a feature of the BYTECOMPILER that is not supported by SEdit or)Tj -0 -1.2222 TD -0.1078 Tw -[(the XCL compiler. It is possible to insert a comment at the beginning of your function)]TJ -T* -0 Tw -(that looks like)Tj -4 -2.4444 TD -(\(* DECLARATIONS: --\))Tj --4 -2.4444 TD -0.0001 Tc -0.0032 Tw -(The tail, or -- section, of this comment is taken as a set of local record declarations which)Tj -0 -1.2222 TD -0 Tc -0.08 Tw -(are then used by the compiler in that function just as if they had been declared globally.)Tj -T* -0 Tw -(See the "Compiler" section in Chapter 3 of these Notes for additional behavior in XCL. )Tj -0 -3.2222 TD -0.0778 Tw -[(SEdit does not recognize such declarations. Thus, if the "Expand" command is used, the)]TJ -0 -1.2222 TD -0.0422 Tw -(expansion will not be done with these record declarations in effect. The code that you see)Tj -T* -0 Tw -(in SEdit will not be the same code compiled by the BYTECOMPILER.)Tj -ET -endstream -endobj -241 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT18 69 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -243 0 obj -<< -/Length 137 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(16-71)Tj -/TT8 1 Tf --25.6667 52.2833 TD -([This page intentionally left blank])Tj -ET -endstream -endobj -244 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -19 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 40 -/Height 26 -/BitsPerComponent 1 -/ImageMask true -/Length 131 ->> -stream -?g -endstream -endobj -20 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 41 -/Height 27 -/BitsPerComponent 1 -/ImageMask true -/Length 163 ->> -stream -q{ -endstream -endobj -21 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 70 -/Height 22 -/BitsPerComponent 1 -/ImageMask true -/Length 199 ->> -stream -??~=ߺ߻߻ûo߻߻ -endstream -endobj -25 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 71 -/Height 28 -/BitsPerComponent 1 -/ImageMask true -/Length 253 ->> -stream -`wwww7O~~ -endstream -endobj -26 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 75 -/Height 25 -/BitsPerComponent 1 -/ImageMask true -/Length 251 ->> -stream -8}}}}w}_8߿ -endstream -endobj -27 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 69 -/Height 25 -/BitsPerComponent 1 -/ImageMask true -/Length 226 ->> -stream -A=___Co__A -endstream -endobj -28 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 73 -/Height 32 -/BitsPerComponent 1 -/ImageMask true -/Length 321 ->> -stream -oh0q k;kq -endstream -endobj -32 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 5 -/BitsPerComponent 1 -/ImageMask true -/Length 11 ->> -stream - -endstream -endobj -33 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 21 -/Height 15 -/BitsPerComponent 1 -/ImageMask true -/Length 46 ->> -stream -6w7 -endstream -endobj -53 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 207 -/Height 386 -/BitsPerComponent 1 -/ImageMask true -/Length 10037 ->> -stream -o߻ownv߻pwso[~ٵww|o[ߵzwnvv_z뎎_}ϟ?}ϟ?px{.?߿ooݻv߿Ϳ.mٿpo_߃poݻn_ow.?_oϟpϟpxc߁oonݻ߾fپpox߾poݻ_oчq_oϟpϟx<\߿onݕ۾_o<~_oϟ`ϟ o/߿o߿oٿo߿`_o/_oϟ`oϟop߾ono߾ooپ`poo߁ono_op_oϟ`ϟpwo7߾oپo߾o7_ox_oϟoϟ`w owonݻonٿon߿oflݻ_otx_oϟ`ϟ `w7<ow}mۿoٿ]o~8?߿o?ۿ_otx<_]ooϟ`?ϟ`w7ow}on{ono~no?flotxo{`?`wowwooootxow`oxw߾o߾pwwwz󷲿_zxt_}ϟ}ϟ"2#$FLQ"*"E"""MD"""DD"""DD3#2$dIl8@ -endstream -endobj -54 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 327 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 4183 ->> -stream -?????0p`93'&L9s?'&|9s<'&p9s8g 9s1&G9s3'&L9s8g N@???????3?3s?3s3s0ds?32s?32s0$r???????3I?g q`Nb@q3I?'&ONLLOnv3I?0~OIOv0`'<2xOO߃w3&I'<rpdAw<83&Hg?8qCv3&Hg?8OqIOnv0`}qw????0?777778 pALϜ&790'?9>|Ϝx33f79$3'?Ƀ9>pϜy3prd79$g'?ə1>as93s2d79 '??>GϜLϜs8ᓛ790 p>a?' };7770????0?7777?7d3Ϝq88< N`7>dɄ93Ϝ>a򓓜NNs7? Ʉ93>a󓓜<`s7?$ə9Ƀ>I󓓜|7$Ƀ93əI󓓜|d7? d93>󓓜dd93>󓓜qs7d930  7770???LFDdɀF& -$EDZȵ@EU$DDIDL$DDHDD$DDHDDI&dfDd8͘كD -endstream -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -246 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -247 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -248 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -249 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -250 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -251 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -252 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -253 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -254 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -255 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBHKOH+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 256 0 R ->> -endobj -256 0 obj -<< -/Filter /FlateDecode -/Length 20104 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8P%i C9͎~03K6JJ@S4tk54Z -$!HG@PLc ovvSyq}{nr~{,,^@ڹ~C>J {(t8P,<ːz"6Ƕb{ЪBKNX7 ǐT ر ?.>n="l3]VmG $w\bexjx -`=G(ɸxTzkCy~[/5AqST)[B?qu?`%/Xu( -8ud vpqĕi$> U֢4W`o l̍}?G:>xq`&48GiFe(6C3F\H9v|fsG A9j%~i7k$YÝp [(9s .^^@ &s8N+0 ;` 8qC'I@) 9?? va!2! )Y%6Rp;L#-/Ay܉'7y56Z%dQID^/=0? PDŽl`o%;{d0:ss'q-j -Wo%'aB | 'iL2~JnE E+2xrqm^U,'sS ϓNr%t@3+ݤ@I&>!уK׳h1vMBgA% \p:NǗ;ʊʕA3d-mJz0]uLᑪ?AO?MYr l'0Z0p&wL? ,N> iY&H'ƐO|s#^wࡔ{1Nwoo}7JOAwۈ/L=s$@f\{`g>&uZ}4 !~XΦy'TkϘdh l\lcOظKm\frWظU6ڸ56)ٸ6l 6>kFy甄8#nZ,:!F&QàI JTcџj4FU*%F h Dޚ5O%Unb{}Uh4iΌmi$nVl(ډf3DU3kE}>4f$X< g2vP4d5iBjKKf]C._/1{:/Eۼr18u,ߔ:ַu7zj}R>=w~wtUpIVSgdE/U*5bIo(]dz6OeG -P'Yݻ[,zmїSsp/joѨ -_YH $2] ar&ǀEF lsdEb0:?שLXiPrHqre{߯(&NѮ#8[UR*36Ǘ9fܦ|3`{>ߑH@ƺۅ-w]~2Ov6qTCl2Yܞ >>xqү:BIh`?D*"cZBB./uF.ϙ"sx5]١lg-s$&Uin7;ɺX3BոtK{~{͕>;̭uΘoSLt"vuΦ<[ ({sU 3Rv,3~)~,v찃6Jȷs5^*7AFg]X&6Y鏖rJ:}5A{ߨZbr.!McmG[BgZB޳_5r> Uu$s5$:d>vn_ۀ';2dC-MNc0^T/?5L8%8;+\VØ/{:IXYXU&I/@.?P Q'͡n:>H*-<9KA}/@Wi}G' ~`fɾ`2&`~[jV^a-a؇$;""8"|̧2(/y=7|w??x/K2~Md6e2: OT-~B83 baL92hg@R3hqd+{q[-d{DD±6cGLx5eѯez~2NF?rJKa +F,CWh %Ml b#V&QfO>!*6.= ?cXPa~1NJ6fQɰg6|Q_ p˺fl[rR̸)v%9(F{neh_AKݛmQjs#bwZC2jɥ'-[Fg,@E-Rpoô[[rZH"p 2}`KE [LiI Nᴖvը$6Fג%}iK*?%uu%.+ww j4OKmm>~cuU2!^–EXnX(&i&^̋J TQrHb\z_,F8ot˲CYML7eprQ&`ix-B =>6c$\H ?|RZD[sMrAp2 hlvnͲxNAٖcQ7xgD2m>(pd%, -/&T R Y*ۖL=Ў -^,X9j2g >Y޼dt}vp|BUC ^ C"0Ҡ74x\NH:⳧$3rt.ik MĽI˟YtaZSF1d2g$q-=zQ,-9P1;vL߂N.!h[bvYȒeRvJS`(}Ib D<cGίvUs.PVW1 xC7ӑ龓o_|@R@ւ̋t@2a3?Y, - -|t'CA\Ҥ0T:U-Umݮyiɷ5!6,KemVu -hP{YJiW Z[9;&- p2Qۅ3B)=wì0c :],Oش>{yPOn]M4fGݨ`̪>QZ[&jifre4‘D^f) G[lKi EҌX e"Ȋo!9f]Jɱ)N-*nNt[3B8ֶ:VYqdKf@ i=䯳AQAm0{ȍ?d\ Cy Ct\EƅYjO/~I-z ^iӁ'pYxؚcSX YjMG%ت̄qӼt*>3ʠ5I33ewQ}hoEE5f>sfV@:|i:hvex~~`KD3P=(Ѹ;ωb-X--Kp:R|c2+qeq)1cJ7$+ՕrOtПUr]~\g6ZYD[ \(t*ZDiH.'ǥVNƜ"(s",qZ*Ǧ1OM#aPj {XنDz9̅kR4Ouxi!DsrR!d2K |d^0EmokP< &t.aQJ{V*zEAh,\xr5~3~[ϝќZt ]c4BЎY"R揎%f)< .311NJ0OJk%ɂEhn ;%uݼb:yi_~ilc9=ފl6`Ϛif$cv"Z)Hgk%-EcߞreQc6*WX_09K__0(,f"ei:XEHL@f“-d}EM|H -ucǏ/(),',⒅cC}Rb2u8ĵ)QpEwZ,(o[p塽[Sj  %U;͞{׽HVzh!{, -ujYAY{7D+Tj^uXÆ8>o>A |Vyht$ n"ZJ=P=jB_F_CGG 4FK* R -n ŽxO)<o~U|/""">W,yԓB3+ Ysp.[m䚹/qOrAn}n^~3wE{Eu]sܷ )ef.h[T6(DhkgdL'QVF.CPGIdԴҙF;S'&mEƈdR;cvl؉2{Y/F{s?]b7T&:EuXRCjT}]ݩvoG~SzAR74D-Ii~m6IMמfhOkZ69PrG5!T#q`%6$ctL`TKp/Rl`6 8ЂcU;Ω8p1 Ԇ9v1ǁ~DStdhǚȱs*Z8Z az O7 -(cS7o. -DL;'nWA;BQķN`chکz*S)X㬠` W[**j`7FMq1B.u;fc!q >=\̀ i SνHZg $!nNqEkp&8BUq@fKH2mHn\s;TRp{aC/!$,0 $N>,s휷g{>2:DaTv[ 1(<jf;'/X8 -\R;/;mw$gDx>C4}z}ku%kW{K$ ^T >БV%GjFDrt`IEzq,nֆ_]ER(L>'jF= N4\d MI %$%jɒ?)o(ˮsmRӡ֓ Ԅ9L,LE}._ -Vf1qh4W"Ix?쐽kǶ3[Uus=؞0_/5@yW(m(ﴎx2V6Mq8v%bd&j_/!U7x3xm67n/qyH&n._ -ߞ˟ -4'b/.(+5UH6o+m"&Eˮr"FgŶ{ -V^kO%mNiفvH$6_MX| Ko˷EptCLH"e[H\z'݉W1wJŋ1l|ɬ3a*T#O!RgS jpСGpם*v/KEb;͹MȔO6; -G~GQq^pmBf#ihl00IĚo (e TxGh1ȴ ( 9LɈvՑ֋8;V#ӋKr vj3n?y=~Mz"ݰ`2n݁A_s{6v*_ED`ESBr\.]tgnΒ"]'꠮i kuK`iQ͇rkHEж TV_5 6ݾRcu 0/j0s-,L.9*xʣ*;K,/=kQ|3]VYR%:x{ocu͛K΀|lhL(ܚ}RjKh7tՇsv\آ ~䫷}[n;뫩3B[kEIy"E* -BОy==4^vՇT'h[`W_8'@\I?<8"Ҟk̭h6?!yQm6|oWa8C/{ן>λk)=rtQNwpO]-PZXߜ* ?2|]Skޜ]d}vΐB|B/3SQ - BɓYbD6톱<5꫉4&I+3MehPs)>ZpNҨ'ڞ5Y H;zI3ևLGXSR9RP aPz b`)܂zV֠v)Aps4PS p#lr)UH9YLɷP]JG,r zl!MQa=Bn$9J~ -}9IHL^#o6yO(5A4^^I z :5i7:z .]AWһ:i҇/Qg=I('k4N?0`.eT[WjVnfa.ֲucfT^Mlkf?CՎXcOnv3Yϑ A|QBW#x51uycGDSܻ^d:B(F;g=݋*yGZ?ڥWRB2+S7*y(L&ڽ|4ͫhugq71uюd4^§& -LR$1$gV\@@v9Lw_D?WXUM&/I _7  'aQY x.xWؾ/ )6>Bx+ea#'7F:BS5bX4~,$@?f=v?[d$88VƔ)hL RccͧS[V<)DiMmO  VYy l\2dYV}U>E}g0υoJ8s5H >{n|E(9ҫg0l^*@ZⲰ=T2tKhfs½p.5Ed" yF\tZP'dC9-mgl6! m2l'[skb XX0bВkZKTJ83^ e=r(anL%z{,,Tբ( Hs3=YҺaķ*C6bAdTM$r0ؖy@8a9:\>7 0gOIbVf<|@ ,$zrklb:bAs9X.ݚ 2|,toR[X"CLX Xg7JpH`MVumyea&N:BXeW/0 >F''?61%ҨfpTI\U̬_qeӵo fM"E0GJJny@(( `DeNCrh}-HH zLھYjPe -r ߷;N&nwv7MuShR sjTurxZ[e[l5X8Gh2Jrha4+S@GU,5NgYh߻zR]>۳?O-._=;s=k^% Bg7͖C& 5!cd}\ۍkц-.p)yhegRde{Ɔxl5+*]?)n97[F ~N] 0.hsPGK:Y̜YE >u X- 0Xxd+3Ck9Gs{]Cw+R ۖUskU7p. ޖmp=ztÇM|Ry]K,fha4D >6Z4Zjes9'ojs2tiD{2(b^Ť}A^LF 0DL[zttC2P1nEJZkp-պ-xa3tM5~x|:y,<8.Kt}q6NR :.pDϐyTjbu -3Kx-\mZB# ӭ$Mc F>ZLh.b4}8psbjw]86/:]xBmt-; -S}?\_)L\9VoH(6 ]).$On62"p2[,p&:6pKi- #YhnuB d]4O$k?]h-QTwZ$qE (;dDB]v1[h|W\HVY򀞒2=4#ަKRv4؋Tw%)lzl?u$^(^x|ȴs+j(N -[M ?JG^ZtDZ3`@J Tbb,NѧYL/h.#yE<"HhdS^mrsjD޳p?cC-(vNU/tȢ/l0Wx s1ZA b ̞Vk)gAs*N[|\p-WD3r>w).ZLaN@ $Y8 6-TbWuʕdO4,5I9u4eF+n<fř&8^pu !okkEF*%/#QE›HU^-wX5Tx3kX*?E@&EZ|8h3Yt; L~CF]Qz,~.hW" ,7-wmYf;d!*pt Ni|P1#Cބ/p -c ,16ž.bAC~~^akvK1eLr\U4^(Z:?݅EQ YjeVkĺ%4="jyhSc=`l7Hצh㨨UcL|&NJ\5jPv`ZW9QN*gϕ)NjTMj_U/du:XP3j.J!ȁn X 33JT*Z* -zQE% - !H8L`FI"PU0 z$ҭaQĨʣQG XĀ:6GB!LDpY>L5P$|h$Եyi>=/#܌v3Y-Eo _ojp)D"Th8Da!1J(];):"qB7@ۛZAmXWεAp_p}Xd[Y6OVUyw@E,WmN(Rg9n}w'Ox`ӭ;osvD|3Q19B*_ge)0.t%@NGpD+.>7WV@Y!ӳ ['Wl2ej럙?)ZYlyB%{~٧F.|sOVH ϧ,[ƿ"W@Zʲ붷kIn.쨪k`f;{[sGgXXt:@G-_re 3啻:7n5̵֣J,w}9{_9_3Ns k_]WUoى,ky0şkX[j@Nv W/BE7:*=Km!iE,Q^[7$f_'-jC֜_X孩ن, %)7[th:*ȗgl9C1C=c˟,Uɕ*n1MȢX}Q,}խ[h\ݾ-UIGnZ61c9icTuf%}z4c萦/^}97}DVI}dj3_fOK<12^'i/$:~QwQ4BIZa S0 ~0`c5qa5^נ -ja)^+a5 h lpav7\v @8&}I'I$|d8$vKƒ dL4RJd6 0k& I-YH YAj ć$'4 K*AהP ϼpj1i*Mh&<:sF-t:sr:.=@}O]KGG^5A-I09f( <3E>eqY{ dO gmOQa -F%,r"ZJD{ A8K)8Fm*QGD!xU' .˽ƒRp-#)]g6<ȍ&b"®h+C"VJ%._ҕt׃t\*ɒ7Q -JM%.`fѤ\6vYR=Q|Wh@䱒'$Ǔy6:DɱashĪh9T?(~Y@m Rnժi93>R+R,X j#jd3y5o۫ԦOu+:J'q3,pZ|6Wj5 qz x]PD(;YGk>6y>kh9mo=ra;319GSbB5v,>8m?la ` #?8t'+  %(>gjqGjlSc햎OʮLnJ-kP+pp+[@(r}ɎÛd%WejB<3vB[z{h٦!.X-ևe[=IIT,˖䏱=CXB =Jr*KBa) ]zP]B0{2 R{b~ |3{y z qZ_@߿`3gwr SA -].+ϘU?C3'/2G[;0sϘW}ὸbQ:gw7 o2 -}_> -}5mq9 ־0gc{9xx -0FjsP`怛B|0A \,#Mcso0O?rm._ט]_:\aZKq|ɀÕg_~y8Z?U!ԺÕ9v盐]܀X/iE-1\, Xwk0 ;9.oOw6 ?Ms۟N·{4k^}^ڷ$kLxK # m>gb=ƭ^9դ ۉޠ -@э"^yj\ -e&xMг=MD0XGjPxx2mv1NkhNB[fi(dQ)Omby \AQ]^F=-y͹;dE >ƌ52y=͵:h.zXq4E!Nݰz/OMI4!xib4lTJ6H;|ۮEkmtXϑ8ŒψM-a&pr"Jg[V%[Ա\Zz>*cQUy܎[>Q3ZLaMɲmFba@83Ab$]o(>Ut4Xʛˆq,8Z\s3Z*\ XoDB#V1\9tW+WL'0VcFaZ&KEyҔs2R<48qמQDliP5V(H3ؿey;IuN搩jAde<CL_EI>\--;C#PѐEeH!;`zפ珧KK>IvG2ˊkf@Cl9Sn >JK:cȎµIνR*p#A]VHGu3764 Y)uhH![fa6!'Z8Lh5[Q7$tKTXjerjtep7uJ.]ti -MTm[ANۜF5šB,.:DSH.T>Ȫ)BJlûiMu)b99Nl̪hET7 -%ucHZqRߡay."fbdB@QPWwY*}9"2dWGNЎ} [bqk-ZX[_~}bWM;Qݠ^v+ͮ_Z7o{{̩לȊOZO ;!`1 ,>w3mCV4%/>,wsiRL9z\M(maݹ9YՊΈ'O'O_ܾ5/cn[=.ؒ/x gzeGr;<>eƣjVUs..bgSzmZ} ꧙ߎv.T}_b|yHIݨ7UݮTR4x}Nׇ1"V;Ksֵ[n6o~0һIٛiX6㪟̛2:EΪ=ZRt:Kd\w_'O¶/OL.kZRa k/LZXr9nܨc7 UVr"{d\( |q2X$WITD)Ҧqy¨?'94(H:n(:yQKh&whtF4Ƒ>xND3L~*ɝoJɡC+)d%YR2CT%`3/  |}G6M]\9@M菤[,o7F:x -~ ~^~ ~^[H; YF94X̯!ׂ'W!A x`XWUg Lܑ}TWw%23uԗ@4dsom'~'v/큅2vEBv, Kl=)zbXމ6%`13?^MBOhdڊv[Dh 6B+̵ЬWU(6Wt9dR.cM?Bp]avc[M>wp`ʐeϞn0:.w`ޅzI˛xɋ[Ջeo~|ȇIW5p~yӏC,N!r>:zAğY329c(>gӨユ>t> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 246 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 0 0 0 0 0 278 0 0 0 0 -0 556 556 0 0 556 0 0 556 0 0 0 222 0 0 556 -0 0 333 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 247 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0 -0 556 0 0 0 0 556 0 0 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 248 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 0 371 606 0 840 778 0 333 333 389 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 606 0 0 444 -747 778 611 709 774 611 556 763 832 337 333 726 611 946 831 786 -604 786 668 525 613 778 722 1000 667 667 667 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 606 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 278 278 500 500 606 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 249 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 600 600 600 600 600 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 0 600 600 0 600 600 0 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 -0 600 0 0 600 600 600 600 600 600 0 0 600 0 600 600 -600 0 600 600 600 600 600 0 600 0 0 0 0 0 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 250 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 82 -/Widths [250 0 0 0 500 0 0 0 0 0 0 0 0 333 250 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -747 0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 251 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [600 0 0 600 600 0 600 0 600 600 0 0 0 600 600 0 -0 600 600 600 600 0 0 0 0 0 0 0 0 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 252 0 R ->> -endobj -37 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 600 0 0 600 600 600 0 600 600 600 600 -600 0 600 600 0 0 0 0 0 600 600 600 0 0 0 0 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 0 600 0 600 0 0 0 -0 600 0 600 0 600 0 0 0 0 0 0 600 0 600 600 -600 0 600 0 600 600 0 0 0 0 0 0 600 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 253 0 R ->> -endobj -69 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 500 0 0 0 333 333 0 0 250 333 250 0 -500 0 500 0 0 0 0 0 0 0 250 0 0 0 0 500 -0 722 0 667 0 611 0 0 0 333 0 0 0 944 778 0 -611 0 667 556 611 0 0 0 722 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 254 0 R ->> -endobj -82 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBHKOH+Symbol -/Encoding /Identity-H -/DescendantFonts [ 258 0 R ] -/ToUnicode 259 0 R ->> -endobj -258 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBHKOH+Symbol -/FontDescriptor 255 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -207 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 257 0 R ->> -endobj -259 0 obj -<< -/Filter /FlateDecode -/Length 227 ->> -stream -HTPn0 tYZC۠v+e}%MA# >l;L0y%p -iG5DYmK© MGN.6x{yz|3uT_q@p`j⛙][DP}p"0"4BҀ3uW]{3~< vQARݫJÖ]zjs,c? dm -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -79 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 81 0 R -/Contents 80 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 56 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -108 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 110 0 R -/Contents 109 0 R ->> -endobj -111 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 113 0 R -/Contents 112 0 R ->> -endobj -114 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 116 0 R -/Contents 115 0 R ->> -endobj -117 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 119 0 R -/Contents 118 0 R ->> -endobj -121 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 123 0 R -/Contents 122 0 R ->> -endobj -124 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 126 0 R -/Contents 125 0 R ->> -endobj -127 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 129 0 R -/Contents 128 0 R ->> -endobj -130 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 132 0 R -/Contents 131 0 R ->> -endobj -133 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 135 0 R -/Contents 134 0 R ->> -endobj -136 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 138 0 R -/Contents 137 0 R ->> -endobj -139 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 141 0 R -/Contents 140 0 R ->> -endobj -142 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 144 0 R -/Contents 143 0 R ->> -endobj -145 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 147 0 R -/Contents 146 0 R ->> -endobj -148 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 150 0 R -/Contents 149 0 R ->> -endobj -152 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 154 0 R -/Contents 153 0 R ->> -endobj -155 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 157 0 R -/Contents 156 0 R ->> -endobj -158 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 160 0 R -/Contents 159 0 R ->> -endobj -161 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 163 0 R -/Contents 162 0 R ->> -endobj -164 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 166 0 R -/Contents 165 0 R ->> -endobj -167 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 169 0 R -/Contents 168 0 R ->> -endobj -170 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 172 0 R -/Contents 171 0 R ->> -endobj -173 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 175 0 R -/Contents 174 0 R ->> -endobj -176 0 obj -<< -/Type /Page -/Parent 151 0 R -/Resources 178 0 R -/Contents 177 0 R ->> -endobj -179 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 181 0 R -/Contents 180 0 R ->> -endobj -183 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 185 0 R -/Contents 184 0 R ->> -endobj -186 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 188 0 R -/Contents 187 0 R ->> -endobj -189 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 191 0 R -/Contents 190 0 R ->> -endobj -192 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 194 0 R -/Contents 193 0 R ->> -endobj -195 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 197 0 R -/Contents 196 0 R ->> -endobj -198 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 200 0 R -/Contents 199 0 R ->> -endobj -201 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 203 0 R -/Contents 202 0 R ->> -endobj -204 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 206 0 R -/Contents 205 0 R ->> -endobj -208 0 obj -<< -/Type /Page -/Parent 182 0 R -/Resources 210 0 R -/Contents 209 0 R ->> -endobj -211 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 213 0 R -/Contents 212 0 R ->> -endobj -215 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 217 0 R -/Contents 216 0 R ->> -endobj -218 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 220 0 R -/Contents 219 0 R ->> -endobj -221 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 223 0 R -/Contents 222 0 R ->> -endobj -224 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 226 0 R -/Contents 225 0 R ->> -endobj -227 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 229 0 R -/Contents 228 0 R ->> -endobj -230 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 232 0 R -/Contents 231 0 R ->> -endobj -233 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 235 0 R -/Contents 234 0 R ->> -endobj -236 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 238 0 R -/Contents 237 0 R ->> -endobj -239 0 obj -<< -/Type /Page -/Parent 214 0 R -/Resources 241 0 R -/Contents 240 0 R ->> -endobj -242 0 obj -<< -/Type /Page -/Parent 245 0 R -/Resources 244 0 R -/Contents 243 0 R ->> -endobj -260 0 obj -<< -/S /D ->> -endobj -261 0 obj -<< -/Nums [0 260 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 16 0 R 22 0 R 29 0 R 34 0 R 38 0 R 41 0 R 44 0 R 47 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -56 0 obj -<< -/Type /Pages -/Kids [50 0 R 57 0 R 60 0 R 63 0 R 66 0 R 70 0 R 73 0 R 76 0 R 79 0 R 83 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -89 0 obj -<< -/Type /Pages -/Kids [86 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R 105 0 R 108 0 R 111 0 R 114 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -120 0 obj -<< -/Type /Pages -/Kids [117 0 R 121 0 R 124 0 R 127 0 R 130 0 R 133 0 R 136 0 R 139 0 R 142 0 R 145 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -151 0 obj -<< -/Type /Pages -/Kids [148 0 R 152 0 R 155 0 R 158 0 R 161 0 R 164 0 R 167 0 R 170 0 R 173 0 R 176 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -182 0 obj -<< -/Type /Pages -/Kids [179 0 R 183 0 R 186 0 R 189 0 R 192 0 R 195 0 R 198 0 R 201 0 R 204 0 R 208 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -214 0 obj -<< -/Type /Pages -/Kids [211 0 R 215 0 R 218 0 R 221 0 R 224 0 R 227 0 R 230 0 R 233 0 R 236 0 R 239 0 R] -/Count 10 -/Parent 55 0 R ->> -endobj -245 0 obj -<< -/Type /Pages -/Kids [242 0 R] -/Count 1 -/Parent 55 0 R ->> -endobj -55 0 obj -<< -/Type /Pages -/Kids [12 0 R 56 0 R 89 0 R 120 0 R 151 0 R 182 0 R 214 0 R 245 0 R ] -/Count 71 -/MediaBox [0 0 612 792] ->> -endobj -262 0 obj -<< -/CreationDate (D:20210202102652-06'00') -/ModDate (D:20210202102652-06'00') -/Producer (Apple pstopdf) ->> -endobj -263 0 obj -<< -/Type /Catalog -/Pages 55 0 R -/PageLabels 261 0 R ->> -endobj -xref -0 264 -0000000000 65535 f -0000439044 00000 n -0000000016 00000 n -0000004006 00000 n -0000434225 00000 n -0000434437 00000 n -0000434829 00000 n -0000435338 00000 n -0000435933 00000 n -0000436487 00000 n -0000436774 00000 n -0000411682 00000 n -0000445257 00000 n -0000439125 00000 n -0000004172 00000 n -0000008066 00000 n -0000439209 00000 n -0000008221 00000 n -0000010641 00000 n -0000394317 00000 n -0000394588 00000 n -0000394891 00000 n -0000439293 00000 n -0000010831 00000 n -0000014354 00000 n -0000395230 00000 n -0000395623 00000 n -0000396014 00000 n -0000396380 00000 n -0000439377 00000 n -0000014556 00000 n -0000018205 00000 n -0000396841 00000 n -0000396990 00000 n -0000439461 00000 n -0000018396 00000 n -0000022417 00000 n -0000437247 00000 n -0000439545 00000 n -0000022561 00000 n -0000026236 00000 n -0000439629 00000 n -0000026380 00000 n -0000030952 00000 n -0000439713 00000 n -0000031096 00000 n -0000035332 00000 n -0000439797 00000 n -0000035465 00000 n -0000038290 00000 n -0000439881 00000 n -0000038433 00000 n -0000039590 00000 n -0000397175 00000 n -0000407356 00000 n -0000446347 00000 n -0000445394 00000 n -0000439965 00000 n -0000039758 00000 n -0000043945 00000 n -0000440049 00000 n -0000044113 00000 n -0000048645 00000 n -0000440133 00000 n -0000048802 00000 n -0000053226 00000 n -0000440217 00000 n -0000053394 00000 n -0000057599 00000 n -0000437763 00000 n -0000440301 00000 n -0000057758 00000 n -0000063816 00000 n -0000440385 00000 n -0000063986 00000 n -0000068139 00000 n -0000440469 00000 n -0000068307 00000 n -0000074294 00000 n -0000440553 00000 n -0000074474 00000 n -0000078810 00000 n -0000438208 00000 n -0000440637 00000 n -0000078991 00000 n -0000082558 00000 n -0000440721 00000 n -0000082714 00000 n -0000087561 00000 n -0000445532 00000 n -0000440805 00000 n -0000087741 00000 n -0000098334 00000 n -0000440889 00000 n -0000098514 00000 n -0000104727 00000 n -0000440973 00000 n -0000104896 00000 n -0000111800 00000 n -0000441057 00000 n -0000111993 00000 n -0000120427 00000 n -0000441143 00000 n -0000120608 00000 n -0000126579 00000 n -0000441230 00000 n -0000126760 00000 n -0000132946 00000 n -0000441317 00000 n -0000133127 00000 n -0000138661 00000 n -0000441404 00000 n -0000138844 00000 n -0000144028 00000 n -0000441491 00000 n -0000144209 00000 n -0000150826 00000 n -0000441578 00000 n -0000151020 00000 n -0000157463 00000 n -0000445675 00000 n -0000441666 00000 n -0000157657 00000 n -0000163921 00000 n -0000441754 00000 n -0000164102 00000 n -0000172646 00000 n -0000441842 00000 n -0000172803 00000 n -0000181211 00000 n -0000441930 00000 n -0000181392 00000 n -0000188853 00000 n -0000442018 00000 n -0000189023 00000 n -0000194887 00000 n -0000442106 00000 n -0000195057 00000 n -0000205208 00000 n -0000442194 00000 n -0000205378 00000 n -0000212759 00000 n -0000442282 00000 n -0000212915 00000 n -0000219793 00000 n -0000442370 00000 n -0000219963 00000 n -0000226105 00000 n -0000442458 00000 n -0000226274 00000 n -0000230055 00000 n -0000445824 00000 n -0000442546 00000 n -0000230225 00000 n -0000236277 00000 n -0000442634 00000 n -0000236471 00000 n -0000242319 00000 n -0000442722 00000 n -0000242477 00000 n -0000249157 00000 n -0000442810 00000 n -0000249313 00000 n -0000252119 00000 n -0000442898 00000 n -0000252253 00000 n -0000254850 00000 n -0000442986 00000 n -0000254995 00000 n -0000262515 00000 n -0000443074 00000 n -0000262684 00000 n -0000272189 00000 n -0000443162 00000 n -0000272359 00000 n -0000276734 00000 n -0000443250 00000 n -0000276915 00000 n -0000281487 00000 n -0000443338 00000 n -0000281645 00000 n -0000285628 00000 n -0000445973 00000 n -0000443426 00000 n -0000285784 00000 n -0000289654 00000 n -0000443514 00000 n -0000289812 00000 n -0000294162 00000 n -0000443602 00000 n -0000294318 00000 n -0000298933 00000 n -0000443690 00000 n -0000299101 00000 n -0000305841 00000 n -0000443778 00000 n -0000306009 00000 n -0000310829 00000 n -0000443866 00000 n -0000310998 00000 n -0000315562 00000 n -0000443954 00000 n -0000315743 00000 n -0000321164 00000 n -0000444042 00000 n -0000321321 00000 n -0000325147 00000 n -0000438567 00000 n -0000444130 00000 n -0000325342 00000 n -0000331209 00000 n -0000444218 00000 n -0000331379 00000 n -0000338290 00000 n -0000446122 00000 n -0000444306 00000 n -0000338471 00000 n -0000344626 00000 n -0000444394 00000 n -0000344796 00000 n -0000351529 00000 n -0000444482 00000 n -0000351697 00000 n -0000360404 00000 n -0000444570 00000 n -0000360585 00000 n -0000366610 00000 n -0000444658 00000 n -0000366792 00000 n -0000373037 00000 n -0000444746 00000 n -0000373219 00000 n -0000378931 00000 n -0000444834 00000 n -0000379100 00000 n -0000384600 00000 n -0000444922 00000 n -0000384757 00000 n -0000388247 00000 n -0000445010 00000 n -0000388392 00000 n -0000393837 00000 n -0000445098 00000 n -0000394018 00000 n -0000394208 00000 n -0000446271 00000 n -0000411823 00000 n -0000412021 00000 n -0000412217 00000 n -0000412424 00000 n -0000412625 00000 n -0000412817 00000 n -0000413023 00000 n -0000413225 00000 n -0000413428 00000 n -0000413632 00000 n -0000413824 00000 n -0000434019 00000 n -0000438353 00000 n -0000438743 00000 n -0000445186 00000 n -0000445215 00000 n -0000446486 00000 n -0000446610 00000 n -trailer -<< -/Size 264 -/Root 263 0 R -/Info 262 0 R -/ID [<9c0651bb6b47389963dbbfdb38f01fde><9c0651bb6b47389963dbbfdb38f01fde>] ->> -startxref -446682 -%%EOF diff --git a/docs/medley-irm/17-FILEPACKAGE.pdf b/docs/medley-irm/17-FILEPACKAGE.pdf deleted file mode 100644 index 8bb05160..00000000 --- a/docs/medley-irm/17-FILEPACKAGE.pdf +++ /dev/null @@ -1,27712 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5089 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(17. FILE MANAGER)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -510.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.1022 Tw -[(Warning: The subsystem within Medley used for managing collections of definitions \(of functions, variables,)]TJ -0 -1.2222 TD -0.0278 Tw -[(etc.\) is known as the "File Manager." This terminology is confusing, because the word "file" is also used in the)]TJ -T* -0.0233 Tw -[(more conventional sense as meaning a collection of data stored on some physical media. Unfortunately, it is not)]TJ -T* -0.3933 Tw -(possible to change this terminology at this time, because many functions and variables \()Tj -/TT10 1 Tf -40.2794 0 TD -0 Tw -(MAKEFILE)Tj -/TT8 1 Tf -4.8008 0 TD -(,)Tj -/TT10 1 Tf --45.0801 -1.2889 TD -(FILEPKGTYPES)Tj -/TT8 1 Tf -7.2012 0 TD -(, etc.\) incorporate the word "file" in their names.)Tj -/TT12 1 Tf --7.2012 -2.9556 TD -0.1244 Tw -(Most implementations of Lisp treat symbolic files as unstructured text, much as they are treated in)Tj -0 -1.2222 TD -0.21 Tw -[(most conventional programming environments. Function definitions are edited with a character-)]TJ -T* -0.0033 Tw -(oriented text editor, and then the changed definitions \(or sometimes the entire file\) is read or compiled)Tj -T* -0.0656 Tw -[(to install those changes in the running memory image. Interlisp incorporates a different philosophy.)]TJ -T* -0.1411 Tw -(A symbolic file is considered as a database of information about a group of data objects---function)Tj -T* -0.2522 Tw -[(definitions, variable values, record declarations, etc. The text in a symbolic file is never edited)]TJ -T* -0.0289 Tw -[(directly. Definitions are edited only after their textual representations on files have been converted to)]TJ -T* -0.0544 Tw -[(data-structures that reside inside the Lisp address space. The programs for editing definitions inside)]TJ -T* -0.0733 Tw -(Medley can therefore make use of the full set of data-manipulation capabilities that the environment)Tj -T* -0.1478 Tw -(already provides, and editing operations can be easily intermixed with the processes of evaluation)Tj -T* -0 Tw -(and compilation.)Tj -0 -2.8889 TD -0.0911 Tw -(Medley is thus a "resident" programming environment, and as such it provides facilities for moving)Tj -0 -1.2222 TD -0.1822 Tw -(definitions back and forth between memory and the external databases on symbolic files, and for)Tj -T* -0.0167 Tw -(doing the bookkeeping involved when definitions on many symbolic files with compiled counterparts)Tj -T* -0.19 Tw -[(are being manipulated. The file manager provides those capabilities. It shoulders the burden of)]TJ -T* -0.0733 Tw -[(keeping track of where things are and what things have changed so that you dont have to. The file)]TJ -T* -0 Tw -(manager also keeps track of which files have been modified and need to be updated and recompiled.)Tj -0 -2.8889 TD -0.0933 Tw -[(The file manager is integrated into many other system packages. For example, if only the compiled)]TJ -0 -1.2222 TD -0.0311 Tw -(version of a file is loaded and you attempt to edit a function, the file manager will attempt to load the)Tj -T* -0.1189 Tw -[(source of that function from the appropriate symbolic file. In many cases, if a datum is needed by)]TJ -T* -(some program, the file manager will automatically retrieve it from a file if it is not already in your)Tj -T* -0 Tw -(working environment.)Tj -0 -2.8889 TD -0.0744 Tw -[(Some of the operations of the file manager are rather complex. For example, the same function may)]TJ -0 -1.2222 TD -0.0633 Tw -(appear in several different files, or the symbolic or compiled files may be in different directories, etc.)Tj -T* -0.1011 Tw -(Therefore, this chapter does not document how the file manager works in each and every situation,)Tj -T* -0.22 Tw -(but instead makes the deliberately vague statement that it does the "right" thing with respect to)Tj -T* -0.0144 Tw -(keeping track of what has been changed, and what file operations need to be performed in accordance)Tj -T* -0 Tw -(with those changes.)Tj -0 -2.8889 TD -0.0044 Tw -(For a simple illustration of what the file manager does, suppose that the symbolic file )Tj -/TT10 1 Tf -37.9368 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0003 Tc -0.0041 Tw -( contains the)Tj --39.7371 -1.2889 TD -0 Tc -0 Tw -(functions )Tj -/TT10 1 Tf -4.4964 0 TD -(FOO1)Tj -/TT12 1 Tf -2.4004 0 TD -0.1156 Tw -[( and )]TJ -/TT10 1 Tf -2.424 0 TD -0 Tw -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.1156 Tw -(, and that the file )Tj -/TT10 1 Tf -8.2863 0 TD -0 Tw -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1156 Tw -[( contains the functions )]TJ -/TT10 1 Tf -10.6751 0 TD -0 Tw -(BAR1)Tj -/TT12 1 Tf -2.4004 0 TD -0.1156 Tw -[( and )]TJ -/TT10 1 Tf -2.424 0 TD -0 Tw -(BAR2)Tj -/TT12 1 Tf -2.4004 0 TD -0.1156 Tw -[(. These two)]TJ --39.7076 -1.2889 TD -0 Tw -(files could be loaded into the environment with the function )Tj -/TT10 1 Tf -26.8521 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(:)Tj -/TT13 1 Tf --19.9191 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(LOAD FOO\))Tj --0.9868 -1 TD -(FILE CREATED 4-MAR-83 09:26:55)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 5075 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 210 570.14 Tm -(FOOCOMS)Tj -0 -1 TD -({DSK}FOO.;1)Tj -/TT13 1 Tf -0 -1.6222 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(LOAD BAR\))Tj --0.9868 -1 TD -(FILE CREATED 4-MAR-83 09:27:24)Tj -T* -(BARCOMS)Tj -T* -({DSK}BAR.;1)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.2689 Tw -(Now, suppose that we change the definition of )Tj -/TT10 1 Tf -23.0784 0 TD -0 Tw -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.2689 Tw -[( with the editor, and we define two new)]TJ --25.4787 -1.2889 TD -0 Tw -(functions, )Tj -/TT10 1 Tf -4.7486 0 TD -(NEW1)Tj -/TT12 1 Tf -2.4004 0 TD -0.1178 Tw -[( and )]TJ -/TT10 1 Tf -2.4284 0 TD -0 Tw -(NEW2)Tj -/TT12 1 Tf -2.4004 0 TD -0.1178 Tw -[(. At that point, the file manager knows that the in-memory definition of)]TJ -/TT10 1 Tf --11.9778 -1.2889 TD -0 Tw -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.0444 Tw -[( is no longer consistent with the definition in the file )]TJ -/TT10 1 Tf -23.7614 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0444 Tw -(, and that the new functions have been)Tj --27.962 -1.2889 TD -0.0789 Tw -[(defined but have not yet been associated with a symbolic file and saved on permanent storage. The)]TJ -0 -1.2222 TD -0 Tw -(function )Tj -/TT10 1 Tf -3.9681 0 TD -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.0111 Tw -[( summarizes this state of affairs and enters into an interactive dialog in which we can)]TJ --7.5687 -1.2889 TD -0 Tw -(specify what files the new functions are to belong to.)Tj -/TT13 1 Tf -9.3333 -1.7778 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(FILES?\))Tj --0.9868 -1 TD -(FOO...to be dumped.)Tj -T* -( plus the functions: NEW1,NEW2)Tj -T* -(want to say where the above go ? Yes)Tj -T* -(\(functions\))Tj -T* -(NEW1 File name: BAR)Tj -T* -(NEW2 File name: ZAP)Tj -T* -( new file ? Yes)Tj -T* -(NIL)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.2567 Tw -(The file manager knows that the file )Tj -/TT10 1 Tf -17.9671 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.2567 Tw -[( has been changed, and needs to be dumped back to)]TJ --19.7674 -1.2889 TD -0 Tw -(permanent storage. This can be done with )Tj -/TT10 1 Tf -19.022 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj -/TT13 1 Tf --14.4894 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(MAKEFILE FOO\))Tj --0.9868 -1 TD -({DSK}FOO.;2)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.0022 Tw -(Since we added )Tj -/TT10 1 Tf -7.202 0 TD -0 Tw -(NEW1)Tj -/TT12 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -( to the old file )Tj -/TT10 1 Tf -6.3622 0 TD -0 Tc -0 Tw -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( and established a new file )Tj -/TT10 1 Tf -11.9552 0 TD -0 Tc -0 Tw -(ZAP)Tj -/TT12 1 Tf -1.8003 0 TD -0.0002 Tc -0.002 Tw -( to contain )Tj -/TT10 1 Tf -4.8997 0 TD -0 Tc -0 Tw -(NEW2)Tj -/TT12 1 Tf -2.4004 0 TD -0.0022 Tw -(, both )Tj -/TT10 1 Tf -2.7618 0 TD -0 Tw -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0006 Tc -0.0016 Tw -( and)Tj -/TT10 1 Tf --43.3826 -1.2889 TD -0 Tc -0 Tw -(ZAP)Tj -/TT12 1 Tf -1.8003 0 TD -( now also need to be dumped. This is confirmed by a second call to )Tj -/TT10 1 Tf -30.0962 0 TD -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -(:)Tj -/TT13 1 Tf --26.1637 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(FILES?\))Tj --0.9868 -1 TD -(BAR, ZAP...to be dumped.)Tj -T* -(FOO...to be listed.)Tj -T* -(FOO...to be compiled)Tj -T* -(NIL)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.0656 Tw -(We are also informed that the new version we made of )Tj -/TT10 1 Tf -25.1674 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0656 Tw -[( needs to be listed \(sent to a printer\) and)]TJ --26.9677 -1.2889 TD -0 Tw -(that the functions on the file must be compiled.)Tj -0 -2.8889 TD -0.0789 Tw -(Rather than doing several )Tj -/TT10 1 Tf -11.9747 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0789 Tw -(s to dump the files )Tj -/TT10 1 Tf -8.8432 0 TD -0 Tw -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0789 Tw -[( and )]TJ -/TT10 1 Tf -2.3507 0 TD -0 Tw -(ZAP)Tj -/TT12 1 Tf -1.8003 0 TD -0.0789 Tw -(, we can simply call )Tj -/TT10 1 Tf -9.3051 0 TD -0 Tw -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj --45.0757 -1.2889 TD -0.0622 Tw -(Without any further user interaction, this will dump any files whose definitions have been modified.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.1511 Tw -[( will also send any unlisted files to the printer and recompile any files which need to be)]TJ --4.2007 -1.2889 TD -0.1956 Tw -(recompiled. )Tj -/TT10 1 Tf -6.1606 0 TD -0 Tw -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.1955 Tw -[( is a useful function to use at the end of a debugging session. It will call)]TJ -/TT10 1 Tf --10.3613 -1.2889 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.1322 Tw -[( if any new objects have been defined, so you do not lose the opportunity to say explicitly)]TJ --3.6006 -1.2889 TD -0.0144 Tw -[(where those belong. In effect, the function )]TJ -/TT10 1 Tf -19.1561 0 TD -0 Tw -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0144 Tw -[( executes all the operations necessary to make the)]TJ --23.3568 -1.2889 TD -0 Tw -(your permanent files consistent with the definitions in the current core-image.)Tj -/TT13 1 Tf -9.3333 -1.7778 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(CLEANUP\))Tj --1.2368 -1 TD -(FOO...compiling {DSK}FOO.;2)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -17 0 obj -<< -/Length 5582 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-3)Tj -/TT10 1 Tf --33.5 60.6822 TD -( .)Tj -0 -1 TD -( .)Tj -T* -( .)Tj -T* -(BAR...compiling {DSK}BAR.;2)Tj -T* -( .)Tj -T* -( .)Tj -T* -( .)Tj -T* -(ZAP...compiling {DSK}ZAP.;1)Tj -T* -( .)Tj -T* -( .)Tj -T* -( .)Tj -/TT12 1 Tf --9.3333 -3.7333 TD -0.2189 Tw -(In addition to the definitions of functions, symbolic files in Interlisp can contain definitions of a)Tj -0 -1.2222 TD -0.0478 Tw -(variety of other types, e.g. variable values, property lists, record declarations, macro definitions, hash)Tj -T* -0.0822 Tw -[(arrays, etc. In order to treat such a diverse assortment of data uniformly from the standpoint of file)]TJ -T* -0.0311 Tw -(operations, the file manager uses the concept of a )Tj -/TT8 1 Tf -22.2639 0 TD -(typed definition)Tj -/TT12 1 Tf -6.3929 0 TD -(, of which a function definition is just)Tj --28.6568 -1.2222 TD -0.1078 Tw -[(one example. A typed definition associates with a name \(usually a symbol\), a definition of a given)]TJ -T* -0.0156 Tw -[(type \(called the file manager type\). Note that the same name may have several definitions of different)]TJ -T* -0.0511 Tw -[(types. For example, a symbol may have both a function definition and a variable definition. The file)]TJ -T* -0.0211 Tw -(manager also keeps track of the files that a particular typed definition is stored on, so one can think of)Tj -T* -0 Tw -(a typed definition as a relation between four elements: a name, a definition, a type, and a file.)Tj -0 -2.8889 TD -0.3578 Tw -(Symbolic files on permanent storage devices are referred to by names that obey the naming)Tj -0 -1.2222 TD -0.28 Tw -[(conventions of those devices, usually including host, directory, and version fields. When such)]TJ -T* -0.0944 Tw -(definition groups are noticed by the file manager, they are assigned simple )Tj -/TT8 1 Tf -34.4317 0 TD -(root names)Tj -/TT12 1 Tf -4.5105 0 TD -[( and these are)]TJ --38.9421 -1.2222 TD -0.0367 Tw -[(used by all file manager operations to refer to those groups of definitions. The root name for a group)]TJ -T* -0.1844 Tw -(is computed from its full permanent storage name by applying the function )Tj -/TT10 1 Tf -35.8159 0 TD -0 Tw -(ROOTFILENAME)Tj -/TT12 1 Tf -7.2012 0 TD -0.1844 Tw -(; this)Tj --43.0171 -1.2889 TD -0.0589 Tw -[(strips off the host, directory, version, etc., and returns just the simple name field of the file. For each)]TJ -0 -1.2222 TD -0.1789 Tw -[(file, the file manager also has a data structure that describes what definitions it contains. This is)]TJ -T* -0.0433 Tw -[(known as the commands of the file, or its "filecoms". By convention, the filecoms of a file whose root)]TJ -T* -0.1533 Tw -(name is )Tj -/TT15 1 Tf -3.9654 0 TD -0 Tw -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.1533 Tw -[( is stored as the value of the symbol )]TJ -/TT15 1 Tf -17.3937 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1533 Tw -[(. For example, the value of )]TJ -/TT10 1 Tf -13.2735 0 TD -0 Tw -(FOOCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1533 Tw -[( is the)]TJ --42.4338 -1.2889 TD -0.1456 Tw -(filecoms for the file )Tj -/TT10 1 Tf -9.3278 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.1456 Tw -[(. This variable can be directly manipulated, but the file manager contains)]TJ --11.1281 -1.2889 TD -0.1044 Tw -(facilities such as )Tj -/TT10 1 Tf -7.7098 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.1044 Tw -[( which make constructing and updating filecoms easier, and in some cases)]TJ --11.3104 -1.2889 TD -0 Tw -(automatic. See the Functions for Manipulating File Command Lists section.)Tj -0 -2.8889 TD -0.0122 Tw -(The file manager is able to maintain its databases of information because it is notified by various other)Tj -0 -1.2222 TD -0.0133 Tw -[(routines in the system when events take place that may change that database. A file is "noticed" when)]TJ -T* -0.1489 Tw -[(it is loaded, or when a new file is stored \(though there are ways to explicitly notice files without)]TJ -T* -0.0656 Tw -[(completely loading all their definitions\). Once a file is noticed, the file manager takes it into account)]TJ -T* -0.2211 Tw -[(when modifying filecoms, dumping files, etc. The file manager also needs to know what typed)]TJ -T* -0.1622 Tw -(definitions have been changed or what new definitions have been introduced, so it can determine)Tj -T* -0.1256 Tw -[(which files need to be updated. This is done by "marking changes". All the system functions that)]TJ -T* -0.1489 Tw -(perform file manager operations \()Tj -/TT10 1 Tf -15.5394 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(TCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1489 Tw -(, etc.\), as well as those functions that)Tj --28.239 -1.2889 TD -0.0556 Tw -(define or change data, \()Tj -/TT10 1 Tf -10.6011 0 TD -0 Tw -(EDITF)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5556 0 TD -(EDITV)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5556 0 TD -(EDITP)Tj -/TT12 1 Tf -3.0005 0 TD -0.0555 Tw -(, DWIM corrections to user functions\) interact with the)Tj --20.7137 -1.2889 TD -0.0289 Tw -[(file manager. Also, )]TJ -/TT8 1 Tf -8.9432 0 TD -0 Tw -(typed-in)Tj -/TT12 1 Tf -3.3892 0 TD -0.0289 Tw -[( assignment of variables or property values is noticed by the file manager.)]TJ --12.3324 -1.2222 TD -0.1133 Tw -(\(Note that modifications to variable or property values during the execution of a function body are)Tj -T* -0.0422 Tw -[(not noticed.\) In some cases the marking procedure can be subtle, e.g. if you edit a property list using)]TJ -/TT10 1 Tf -T* -0 Tw -(EDITP)Tj -/TT12 1 Tf -3.0005 0 TD -(, only those properties whose values are actually changed \(or added\) are marked.)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -21 0 obj -<< -/Length 4741 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -(All file manager operations can be disabled with )Tj -/TT10 1 Tf -21.6899 0 TD -(FILEPKGFLG)Tj -/TT12 1 Tf -6.001 0 TD -(.)Tj -/TT17 1 Tf --25.0243 -2.5489 TD -(FILEPKGFLG)Tj -/TT6 1 Tf -10 0 0 10 204 546.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 494.41 546.6 Tm -([Variable])Tj --35.6011 -2.0667 TD -0.2144 Tw -(The file manager can be disabled by setting )Tj -/TT10 1 Tf -21.0901 0 TD -0 Tw -(FILEPKGFLG)Tj -/TT12 1 Tf -6.001 0 TD -0.2144 Tw -[( to )]TJ -/TT10 1 Tf -1.801 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2144 Tw -[(. This will turn off)]TJ --30.6923 -1.2889 TD -0 Tw -(noticing files and marking changes. )Tj -/TT10 1 Tf -16.209 0 TD -(FILEPKGFLG)Tj -/TT12 1 Tf -6.001 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -(.)Tj --33.0277 -2.9556 TD -0.1433 Tw -[(The rest of this chapter goes into further detail about the file manager. Functions for loading and)]TJ -0 -1.2222 TD -0.2122 Tw -[(storing symbolic files are presented first, followed by functions for adding and removing typed)]TJ -T* -0.1644 Tw -(definitions from files, moving typed definitions from one file to another, determining which file a)Tj -T* -0 Tw -(particular definition is stored in, and so on. )Tj -/TT4 1 Tf -10 0 0 10 102 414.46 Tm -(Loading Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 411.75 m -558.01 411.75 l -S -BT -/TT12 1 Tf -9 0 0 9 126 389.8 Tm -0.0389 Tw -[(The functions below load information from symbolic files into the Interlisp environment. A symbolic)]TJ -T* -0.1789 Tw -(file contains a sequence of Interlisp expressions that can be evaluated to establish specified typed)Tj -T* -0 Tw -(definitions. The expressions on symbolic files are read using )Tj -/TT10 1 Tf -27.0889 0 TD -(FILERDTBL)Tj -/TT12 1 Tf -5.4009 0 TD -( as the read table.)Tj --32.4897 -2.9556 TD -0.3256 Tw -(The loading functions all have an argument )Tj -/TT15 1 Tf -21.8248 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.3256 Tw -(. )Tj -/TT15 1 Tf -1.4011 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.3256 Tw -[( affects the operation of )]TJ -/TT10 1 Tf -12.2489 0 TD -0 Tw -(DEFINE)Tj -/TT12 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --45.0763 -1.2889 TD -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6611 0 TD -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6611 0 TD -(RPAQ?)Tj -/TT12 1 Tf -3.0005 0 TD -0.1611 Tw -(, and )Tj -/TT10 1 Tf -2.7651 0 TD -0 Tw -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.1611 Tw -[(. While a source file is being loaded, )]TJ -/TT10 1 Tf -17.8416 0 TD -0 Tw -(DFNFLG)Tj -/TT12 1 Tf -3.6006 0 TD -0.1611 Tw -[( \(Chapter 10\) is)]TJ --38.1316 -1.2889 TD -0.0556 Tw -(rebound to )Tj -/TT15 1 Tf -5.2522 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0556 Tw -[(. Thus, if )]TJ -/TT15 1 Tf -4.5679 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3056 0 TD -0.1344 Tw -(= NIL)Tj -/TT12 1 Tf -3.1349 0 TD -0.0555 Tw -(, and a function is redefined, a message is printed and the)Tj --19.2616 -1.2889 TD -0.0056 Tw -[(old definition saved. If )]TJ -/TT15 1 Tf -10.5561 0 TD -0 Tw -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -0.0133 Tw -[( = T )]TJ -/TT12 1 Tf -3.0405 0 TD -0.0056 Tw -[(, the old definition is simply overwritten. If )]TJ -/TT15 1 Tf -19.6159 0 TD -0 Tw -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -0.0133 Tw -[( = PROP)]TJ -/TT12 1 Tf -4.2273 0 TD -0.0056 Tw -(, the)Tj --43.4408 -1.2889 TD -0.1111 Tw -(functions are stored as "saved" definitions on the property lists under the property )Tj -/TT10 1 Tf -38.1075 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.1111 Tw -[( instead of)]TJ --40.5079 -1.2889 TD -0.0322 Tw -[(being installed as the active definitions. If )]TJ -/TT15 1 Tf -19.1059 0 TD -0 Tw -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -0.0767 Tw -[( = ALLPROP)]TJ -/TT12 1 Tf -6.1543 0 TD -0.0322 Tw -(, not only function definitions but also)Tj --28.2607 -1.2889 TD -0.1033 Tw -(variables set by )Tj -/TT10 1 Tf -7.3964 0 TD -0 Tw -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6033 0 TD -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6033 0 TD -(RPAQ?)Tj -/TT12 1 Tf -3.0005 0 TD -0.1033 Tw -[( are stored on property lists \(except when the variable has the)]TJ --17.0045 -1.2889 TD -0 Tw -(value )Tj -/TT10 1 Tf -2.688 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(, in which case they are set to the indicated value regardless of )Tj -/TT10 1 Tf -27.7637 0 TD -(DFNFLG)Tj -/TT12 1 Tf -3.6006 0 TD -(\).)Tj --37.6528 -2.9556 TD -0.1667 Tw -[(Another option is available for loading systems for others to use and who wish to suppress the)]TJ -0 -1.2222 TD -0 Tw -(saving of information used to aid in development and debugging. If )Tj -/TT15 1 Tf -30.5776 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -( = SYSLOAD)Tj -/TT12 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -( will: )Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -25 0 obj -<< -/Length 8000 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-5)Tj -/TT12 1 Tf --40.1667 60.6156 TD -[(1.)-1916.7(Rebind )]TJ -/TT10 1 Tf -6.1007 0 TD -(DFNFLG)Tj -/TT12 1 Tf -3.6006 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -(, so old definitions are simply overwritten)Tj --11.6735 -2.0667 TD -[(2.)-1916.7(Rebind )]TJ -/TT10 1 Tf -6.2307 0 TD -(LISPXHIST)Tj -/TT12 1 Tf -5.4009 0 TD -0.13 Tw -[( to )]TJ -/TT10 1 Tf -1.6321 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.13 Tw -(, thereby making the )Tj -/TT10 1 Tf -9.896 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.13 Tw -[( not be undoable and eliminating)]TJ --26.027 -1.2889 TD -0 Tw -(the cost of saving undo information \(Chapter 13\))Tj --1.3333 -2 TD -[(3.)-1916.7(Rebind )]TJ -/TT10 1 Tf -6.1007 0 TD -(ADDSPELLFLG)Tj -/TT12 1 Tf -6.6011 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, to suppress adding to spelling lists)Tj --15.8742 -2.0667 TD -[(4.)-1916.7(Rebind )]TJ -/TT10 1 Tf -6.1007 0 TD -(FILEPKGFLG)Tj -/TT12 1 Tf -6.001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, to prevent the file from being "noticed" by the file manager)Tj --15.2741 -2.0667 TD -[(5.)-1916.7(Rebind )]TJ -/TT10 1 Tf -6.1007 0 TD -(BUILDMAPFLG)Tj -/TT12 1 Tf -6.6011 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, to prevent a file map from being constructed)Tj --15.8742 -2.0667 TD -0.2556 Tw -[(6.)-1916.7(After the load has completed, set the filecoms variable and any filevars variables to)]TJ -/TT10 1 Tf -1.3333 -1.1556 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf --1.3333 -2.0667 TD -[(7.)-1916.7(Add the file name to )]TJ -/TT10 1 Tf -12.0133 0 TD -(SYSFILES)Tj -/TT12 1 Tf -4.8008 0 TD -( rather than )Tj -/TT10 1 Tf -5.4175 0 TD -(FILELST)Tj -/TT12 1 Tf --24.8983 -2.9556 TD -0.1456 Tw -(A filevars variable is any variable appearing in a file manager command of the form )Tj -/TT10 1 Tf -39.529 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(FILECOM)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3956 0 TD -(*)Tj -/TT15 1 Tf --44.7254 -1.2889 TD -(VARIABLE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0156 Tw -[( \(see the FileVars section\). Therefore, if the filecoms includes )]TJ -/TT10 1 Tf -27.3332 0 TD -0.0378 Tw -(\(FNS * FOOFNS\))Tj -/TT12 1 Tf -8.4769 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5156 0 TD -(FOOFNS)Tj -/TT12 1 Tf --41.7266 -1.2889 TD -0.0356 Tw -(is set to )Tj -/TT10 1 Tf -3.6726 0 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -0.0356 Tw -[(. If you want the value of such a variable to be retained, even when the file is loaded)]TJ --7.2732 -1.2889 TD -0 Tw -(with )Tj -/TT15 1 Tf -2.5243 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -0.5778 Tw -[( = SYSLOAD)]TJ -/TT12 1 Tf -7.1565 0 TD -0.2411 Tw -(, then you should replace the variable with an equivalent, )Tj -/TT8 1 Tf -28.084 0 TD -0 Tw -(non-atomic)Tj -/TT12 1 Tf --40.7653 -1.2889 TD -(expression, such as )Tj -/TT10 1 Tf -8.7134 0 TD -(\(FNS * \(PROGN FOOFNS\)\))Tj -/TT12 1 Tf -13.2022 0 TD -(.)Tj --21.9155 -2.9556 TD -0.0767 Tw -(All functions that have )Tj -/TT15 1 Tf -10.6577 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0767 Tw -[( as an argument perform spelling correction using )]TJ -/TT10 1 Tf -22.9942 0 TD -0 Tw -(LOADOPTIONS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0767 Tw -[( as a)]TJ --43.2535 -1.2889 TD -0.0056 Tw -(spelling list when )Tj -/TT15 1 Tf -8.0909 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0056 Tw -[( is not a member of )]TJ -/TT10 1 Tf -8.7531 0 TD -0 Tw -(LOADOPTIONS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0056 Tw -(. )Tj -/TT10 1 Tf -0.7611 0 TD -0 Tw -(LOADOPTIONS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0056 Tw -[( is initially )]TJ -/TT10 1 Tf -4.9009 0 TD -0.0133 Tw -(\(NIL T PROP)Tj --38.7086 -1.2889 TD -0 Tw -(ALLPROP SYSLOAD\))Tj -/TT12 1 Tf -9.6016 0 TD -(.)Tj -/TT10 1 Tf --6.9349 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOAD)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PRINTFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 232.9658 290.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 290.8 Tm -([Function])Tj --35.4033 -2.0667 TD -0.1133 Tw -(Reads successive expressions from )Tj -/TT15 1 Tf -16.0285 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1133 Tw -[( \(with )]TJ -/TT10 1 Tf -3.0929 0 TD -0 Tw -(FILERDTBL)Tj -/TT12 1 Tf -5.4009 0 TD -0.1133 Tw -[( as read table\) and evaluates)]TJ --26.9227 -1.2889 TD -0.0022 Tw -(each as it is read, until it reads either )Tj -/TT10 1 Tf -16.437 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0022 Tw -(, or the single atom )Tj -/TT10 1 Tf -8.7172 0 TD -0 Tw -(STOP)Tj -/TT12 1 Tf -2.4004 0 TD -0.0002 Tc -0.002 Tw -(. Note that )Tj -/TT10 1 Tf -5.1754 0 TD -0 Tc -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.0003 Tc -0.0019 Tw -( can be)Tj --36.9306 -1.2889 TD -0 Tc -0 Tw -(used to load both symbolic and compiled files. Returns )Tj -/TT15 1 Tf -24.8149 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -( \(full name\).)Tj --27.2153 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9199 0 TD -(PRINTFLG )Tj -/TT10 1 Tf -5.4009 0 TD -(= T)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -( prints the value of each expression; otherwise it does not. )Tj -/TT10 1 Tf --13.6882 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOAD?)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PRINTFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 238.3658 207.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 207.46 Tm -([Function])Tj --35.4033 -2.0667 TD -0.0689 Tw -(Similar to )Tj -/TT10 1 Tf -4.6856 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.0689 Tw -[( except that it does not load )]TJ -/TT15 1 Tf -12.8904 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0689 Tw -[( if it has already been loaded, in which)]TJ --22.3768 -1.2889 TD -0 Tw -(case it returns )Tj -/TT10 1 Tf -6.418 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --8.2183 -2.0667 TD -(LOAD?)Tj -/TT12 1 Tf -3.0005 0 TD -0.0767 Tw -[( loads )]TJ -/TT15 1 Tf -3.0249 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0767 Tw -[( except when the )]TJ -/TT8 1 Tf -8.0161 0 TD -0 Tw -(same)Tj -/TT12 1 Tf -2 0 TD -0.0767 Tw -[( version of the file has been loaded \(either from)]TJ --18.4419 -1.2889 TD -0.04 Tw -[(the same place, or from a copy of it from a different place\). Specifically, )]TJ -/TT10 1 Tf -32.5082 0 TD -0 Tw -(LOAD?)Tj -/TT12 1 Tf -3.0005 0 TD -0.04 Tw -[( considers)]TJ --35.5087 -1.2889 TD -0 Tw -(that )Tj -/TT15 1 Tf -2.0866 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1022 Tw -[( has already been loaded if the full name of )]TJ -/TT15 1 Tf -20.343 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1022 Tw -[( is on )]TJ -/TT10 1 Tf -2.8994 0 TD -0 Tw -(LOADEDFILELST)Tj -/TT12 1 Tf -7.8013 0 TD -0.1022 Tw -[( \(see)]TJ --37.9311 -1.2889 TD -0.0811 Tw -(the Noticing Files section\) or the date stored on the )Tj -/TT10 1 Tf -23.5714 0 TD -0 Tw -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0811 Tw -[( property of the root file)]TJ --28.9722 -1.2889 TD -0 Tw -(name of )Tj -/TT15 1 Tf -3.8228 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -( is the same as the )Tj -/TT10 1 Tf -8.1987 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -( expression on )Tj -/TT15 1 Tf -6.6147 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --32.7048 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADFNS)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VARS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 246.0149 89.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 89.32 Tm -([Function])Tj --35.4033 -2.0667 TD -0.0611 Tw -(Permits selective loading of definitions. )Tj -/TT15 1 Tf -18.3081 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0611 Tw -[( is a list of function names, a single function)]TJ --20.1084 -1.2889 TD -0.0144 Tw -(name, or )Tj -/TT10 1 Tf -4.1637 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0144 Tw -(, meaning to load all of the functions on the file. )Tj -/TT15 1 Tf -21.7544 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0144 Tw -[( can be either a compiled)]TJ -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -29 0 obj -<< -/Length 7053 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -0.34 Tw -[(or symbolic file. If a compiled definition is loaded, so are all compiler-generated)]TJ -0 -1.2222 TD -0 Tw -(subfunctions. The interpretation of )Tj -/TT15 1 Tf -15.8833 0 TD -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -( is the same as for )Tj -/TT10 1 Tf -8.0854 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --29.3696 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9966 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -0.1833 Tw -[( = NIL)]TJ -/TT12 1 Tf -3.9673 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0767 Tw -[( will use )]TJ -/TT10 1 Tf -4.1929 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0767 Tw -[( \(see the Storing Files section\) to determine)]TJ --20.5352 -1.2889 TD -0.1167 Tw -(where the first function in )Tj -/TT15 1 Tf -12.3387 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.1167 Tw -[( resides, and load from that file. Note that the file must)]TJ --14.139 -1.2889 TD -0.2811 Tw -[(previously have been "noticed". If )]TJ -/TT10 1 Tf -17.0978 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2811 Tw -[( returns )]TJ -/TT10 1 Tf -4.2663 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2811 Tw -(, and the )Tj -/TT10 1 Tf -4.9234 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2811 Tw -[( library)]TJ --36.4892 -1.2889 TD -0.2578 Tw -(package has been loaded, )Tj -/TT10 1 Tf -12.5541 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2578 Tw -[( will use the )]TJ -/TT10 1 Tf -6.6312 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2578 Tw -[( data base to find the file)]TJ --27.5866 -1.2889 TD -0 Tw -(containing )Tj -/TT15 1 Tf -4.9502 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -(.)Tj -/TT15 1 Tf --6.1504 -2.0667 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1511 Tw -[( specifies which non-)]TJ -/TT10 1 Tf -9.7448 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.1511 Tw -[( expressions are to be loaded \(i.e., evaluated\). It is)]TJ --16.3459 -1.2889 TD -0 Tw -(interpreted as follows:)Tj -/TT17 1 Tf -8.7333 -2.1489 TD -(T)Tj -/TT12 1 Tf -1.2667 0 TD -(Means to load all non-)Tj -/TT10 1 Tf -9.8755 0 TD -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -( expressions.)Tj -/TT17 1 Tf --16.5428 -2.2156 TD -(NIL)Tj -/TT12 1 Tf -2.4667 0 TD -(Means to load none of the non-)Tj -/TT10 1 Tf -13.7485 0 TD -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -( expressions.)Tj -/TT17 1 Tf --21.0159 -2.2156 TD -(VARS)Tj -/TT12 1 Tf -3.0667 0 TD -0.57 Tw -(Means to evaluate all variable assignment expressions)Tj -0 -1.2889 TD -0.16 Tw -(\(beginning with )Tj -/TT10 1 Tf -7.6589 0 TD -0 Tw -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.66 0 TD -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.16 Tw -(, or )Tj -/TT10 1 Tf -2.0109 0 TD -0 Tw -(RPAQ?)Tj -/TT12 1 Tf -3.0005 0 TD -0.16 Tw -(, see the Functions)Tj --18.7312 -1.2889 TD -0 Tw -(Used Within Source Files section\).)Tj --8.6633 -2 TD -[(Any other symbol)-666.3(Means the same as specifying a list containing that atom.)]TJ -5.6367 -2 TD -[(A list)-666.8(If )]TJ -/TT15 1 Tf -4.0933 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1467 Tw -[( is a list that is not a valid function definition, each)]TJ --3.467 -1.2889 TD -0.2967 Tw -(element in )Tj -/TT15 1 Tf -5.4854 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.2967 Tw -[( is "matched" against each non-)]TJ -/TT10 1 Tf -15.2421 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf --23.1279 -1.2889 TD -0.0156 Tw -(expression, and if any elements in )Tj -/TT15 1 Tf -15.3511 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0156 Tw -[( "match" successfully,)]TJ --17.7515 -1.2889 TD -0.0144 Tw -[(the expression is evaluated. "Matching" is defined as follows:)]TJ -0 -1.2222 TD -0.0656 Tw -(If an element of )Tj -/TT15 1 Tf -7.4121 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0656 Tw -[( is an atom, it matches an expression if)]TJ --9.8125 -1.2889 TD -0.0467 Tw -(it is )Tj -/TT10 1 Tf -1.9254 0 TD -0 Tw -(EQ)Tj -/TT12 1 Tf -1.2002 0 TD -0.0467 Tw -[( to either the )]TJ -/TT10 1 Tf -5.9982 0 TD -0 Tw -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0467 Tw -[( or the )]TJ -/TT10 1 Tf -3.2181 0 TD -0 Tw -(CADR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0467 Tw -[( of the expression. If an)]TJ --16.5426 -1.2889 TD -0.1078 Tw -(element of )Tj -/TT15 1 Tf -5.1135 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1078 Tw -[( is a list, it is treated as an edit pattern \(see)]TJ --7.5139 -1.2889 TD -0.1422 Tw -(Chapter 16\), and matched with the entire expression \(using)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(EDIT4E)Tj -/TT12 1 Tf -3.6006 0 TD -0.0367 Tw -[(, described in Chapter 16\). For example, if )]TJ -/TT15 1 Tf -19.2851 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0367 Tw -[( was)]TJ -/TT10 1 Tf --25.2861 -1.2889 TD -0.1367 Tw -(\(FOOCOMS DECLARE: \(DEFLIST & \(QUOTE MACRO\)\)\))Tj -/TT12 1 Tf -27.0876 0 TD -0 Tw -(,)Tj --27.0876 -1.2889 TD -0.0933 Tw -(this would cause )Tj -/TT10 1 Tf -7.9875 0 TD -0.2244 Tw -(\(RPAQQ FOOCOMS ...\))Tj -/TT12 1 Tf -11.8507 0 TD -0.0933 Tw -(, all )Tj -/TT10 1 Tf -2.0187 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -(s,)Tj --26.6577 -1.2889 TD -0.3256 Tw -(and all )Tj -/TT10 1 Tf -3.926 0 TD -0 Tw -(DEFLIST)Tj -/TT12 1 Tf -4.2007 0 TD -0.3256 Tw -(s which set up )Tj -/TT10 1 Tf -7.8921 0 TD -0 Tw -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -0.3256 Tw -(s to be read and)Tj --19.0193 -1.2889 TD -0 Tw -(evaluated.)Tj --9.9844 -2 TD -[(A function definition)-667.5(If )]TJ -/TT15 1 Tf -11.1566 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.2522 Tw -[( is a list and a valid function definition )]TJ -/TT10 1 Tf -19.5566 0 TD -0 Tw -(\(\(FNTYP)Tj -/TT15 1 Tf --23.1292 -1.2889 TD -(VARS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1689 Tw -[( is true\), then )]TJ -/TT10 1 Tf -6.7459 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1689 Tw -[( will invoke that function on)]TJ --13.947 -1.2889 TD -0.0344 Tw -(every non-)Tj -/TT10 1 Tf -4.8015 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.0344 Tw -[( expression being considered, applying it)]TJ --9.0022 -1.2889 TD -0.3744 Tw -(to two arguments, the first and second elements in the)Tj -0 -1.2222 TD -0.1378 Tw -[(expression. If the function returns )]TJ -/TT10 1 Tf -16.2817 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1378 Tw -(, the expression will)Tj --18.082 -1.2889 TD -0.2733 Tw -(be skipped; if it returns a non-)Tj -/TT10 1 Tf -14.9735 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2733 Tw -[( symbol \(e.g., )]TJ -/TT10 1 Tf -7.4644 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.2733 Tw -(\), the)Tj --24.8383 -1.2889 TD -0.03 Tw -(expression will be evaluated; and if it returns a list, this list is)Tj -0 -1.2222 TD -0.06 Tw -[(evaluated instead of the expression. The file pointer is set to)]TJ -T* -0.0778 Tw -(the very beginning of the expression before calling the )Tj -/TT15 1 Tf -24.9354 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf --24.9354 -1.2889 TD -0.22 Tw -(function definition, so it may read the entire expression if)Tj -0 -1.2222 TD -0.0322 Tw -[(necessary. If the function returns a symbol, the file pointer is)]TJ -T* -0.1233 Tw -(reset and the expression is )Tj -/TT10 1 Tf -12.5014 0 TD -0 Tw -(READ)Tj -/TT12 1 Tf -2.4004 0 TD -0.1233 Tw -[( or )]TJ -/TT10 1 Tf -1.6876 0 TD -0 Tw -(SKREAD)Tj -/TT12 1 Tf -3.6006 0 TD -0.1233 Tw -[(. However, the)]TJ --20.19 -1.2889 TD -0.0189 Tw -(file pointer is not reset when the function returns a list, so the)Tj -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -32 0 obj -<< -/Length 5653 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-7)Tj -/TT12 1 Tf --27.5 60.6156 TD -0.1856 Tw -(function must leave it set immediately after the expression)Tj -0 -1.2222 TD -0 Tw -(that it has presumably read.)Tj -/TT10 1 Tf --10 -2.8889 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -( returns a list of: )Tj --0.2007 -2.0667 TD -[(1.)-583.3(The names of the functions that were found)]TJ -0 -2 TD -0.2667 Tw -[(2.)-583.3(A list of those functions not found \(if any\) headed by the symbol )]TJ -/TT10 1 Tf -33.5949 0 TD -0 Tw -(NOT-)Tj --32.2616 -1.2222 TD -(FOUND:)Tj -/TT12 1 Tf --1.3333 -2.0667 TD -[(3.)-583.3(All of the expressions that were evaluated)]TJ -0 -2 TD -[(4.)-583.3(A list of those members of )]TJ -/TT15 1 Tf -13.1536 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -( for which no corresponding expressions were)Tj --14.2207 -1.2889 TD -(found \(if any\), again headed by the symbol )Tj -/TT10 1 Tf -19.2935 0 TD -(NOT-FOUND:)Tj -/TT12 1 Tf --24.6268 -2.9556 TD -(For example:)Tj -/TT13 1 Tf -4 -1.7778 TD -<0040>Tj -/TT12 1 Tf -0.9868 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(LOADFNS \(FOO FIE FUM\) )Tj -/TT15 1 Tf -14.4023 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -( NIL \(BAZ \(DEFLIST &\)\)\))Tj --18.0396 -1 TD -(\(FOO FIE \(NOT-FOUND: FUM\) \(RPAQ BAZ ...\) \(NOT-FOUND:)Tj -T* -(\(DEFLIST &\)\)\))Tj --6.6667 -2.1778 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADVARS)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VARS)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-23018.6([Function])]TJ --11.8847 -1.8444 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(LOADFNS NIL)Tj -/TT19 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VARS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --22.8298 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADFROM)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-23618.7([Function])]TJ --11.2846 -1.8444 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(LOADFNS)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FNS)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T\))Tj -/TT12 1 Tf -1.2002 0 TD -(.)Tj --23.346 -2.9556 TD -0.03 Tw -(Once the file manager has noticed a file, you can edit functions contained in the file without explicitly)Tj -0 -1.2222 TD -0.0833 Tw -[(loading them. Similarly, those functions which have not been modified do not have to be loaded in)]TJ -T* -0.2122 Tw -[(order to write out an updated version of the file. Files are normally noticed \(i.e., their contents)]TJ -T* -0.1711 Tw -(become known to the file manager\) when either the symbolic or compiled versions of the file are)Tj -T* -0.2544 Tw -[(loaded. If the file is )]TJ -/TT8 1 Tf -10.4803 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.2544 Tw -[( going to be loaded completely, the preferred way to notice it is with)]TJ -/TT10 1 Tf --11.8133 -1.2222 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.2467 Tw -[(. You can also load some functions at the same time by giving )]TJ -/TT10 1 Tf -31.1447 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.2467 Tw -[( a second)]TJ --40.7463 -1.2889 TD -0.0511 Tw -(argument, but it is normally used simply to inform the file manager about the existence and contents)Tj -0 -1.2222 TD -0 Tw -(of a particular file.)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADBLOCK)Tj -/TT19 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-23618.8([Function])]TJ --11.2845 -1.8444 TD -(Calls )Tj -/TT10 1 Tf -2.5515 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0867 Tw -[( on those functions contained in the block declaration containing )]TJ -/TT15 1 Tf -29.6587 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0867 Tw -[( \(see)]TJ --37.6111 -1.2889 TD -0.1356 Tw -(Chapter 18\). )Tj -/TT10 1 Tf -6.332 0 TD -0 Tw -(LOADBLOCK)Tj -/TT12 1 Tf -5.4009 0 TD -0.1356 Tw -[( is designed primarily for use with symbolic files, to load the)]TJ -/TT10 1 Tf --11.7328 -1.2889 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.1133 Tw -[(s for a given block. It will not load a function which already has an in-core )]TJ -/TT10 1 Tf -35.1894 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf --37.5898 -1.2889 TD -(definition, and it will not load the block name, unless it is also one of the block functions.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADCOMP)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-25669([Function])]TJ --9.2343 -1.8444 TD -0.0067 Tw -(Performs all operations on )Tj -/TT15 1 Tf -11.9852 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0067 Tw -[( associated with compilation, i.e. evaluates all expressions)]TJ --14.3856 -1.2889 TD -0.13 Tw -(under a )Tj -/TT10 1 Tf -3.9299 0 TD -0.3122 Tw -(DECLARE: EVAL@COMPILE)Tj -/TT12 1 Tf -12.9143 0 TD -0.13 Tw -(, and "notices" the function and variable names by)Tj --16.8442 -1.2889 TD -0 Tw -(adding them to the lists )Tj -/TT10 1 Tf -10.686 0 TD -(NOFIXFNSLST)Tj -/TT12 1 Tf -6.6011 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(NOFIXVARSLST)Tj -/TT12 1 Tf -7.2012 0 TD -( \(see Chapter 21\).)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -35 0 obj -<< -/Length 6107 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -0.0156 Tw -(Thus, if building a system composed of many files with compilation information scattered)Tj -0 -1.2222 TD -0 Tw -(among them, all that is required to compile one file is to )Tj -/TT10 1 Tf -24.9258 0 TD -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -( the others.)Tj -/TT10 1 Tf --32.3932 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADCOMP?)Tj -/TT19 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LDFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-25069([Function])]TJ --9.8343 -1.8444 TD -0.2944 Tw -(Similar to )Tj -/TT10 1 Tf -5.1367 0 TD -0 Tw -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -0.2944 Tw -(, except it does not load if file has already been loaded \(with)Tj -/TT10 1 Tf --9.9375 -1.2889 TD -0 Tw -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -(\), in which case its value is )Tj -/TT10 1 Tf -11.9795 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --18.5806 -2.0667 TD -(LOADCOMP?)Tj -/TT12 1 Tf -5.4009 0 TD -0.1167 Tw -[( will load the file even if it has been loaded with )]TJ -/TT10 1 Tf -22.8521 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6167 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1167 Tw -[(, etc. The)]TJ --35.4708 -1.2889 TD -0 Tw -(only time it will not load the file is if the file has already been loaded with )Tj -/TT10 1 Tf -32.8335 0 TD -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --42.9676 -2.9556 TD -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -( provides an easy way for you to load a series of files, setting various options: )Tj -/TT10 1 Tf --2.7342 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILESLOAD)Tj -/TT19 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-12942.1([NLambda NoSpread Function])]TJ --12.4834 -2.0667 TD -0.0211 Tw -(Loads the files )Tj -/TT15 1 Tf -6.7098 0 TD -0 Tw -(FILE)Tj -2.4013 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.2711 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.2711 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0211 Tw -[( \(all arguments unevaluated\). If any of these arguments)]TJ --15.0533 -1.5111 TD -0.1644 Tw -(are lists, they specify certain loading options for all following files \(unless changed by)Tj -0 -1.2222 TD -0 Tw -(another list\). Within these lists, the following commands are recognized:)Tj -/TT17 1 Tf -6.2167 -2.1489 TD -(FROM)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT21 1 Tf -0.25 0 TD -(DIR)Tj -/TT12 1 Tf -3.1329 0 TD -0.2778 Tw -(Search the specified directories for the file. )Tj -/TT15 1 Tf -21.4727 0 TD -0 Tw -(DIR)Tj -/TT12 1 Tf -1.8003 0 TD -0.2778 Tw -[( can)]TJ --23.273 -1.2889 TD -0.2622 Tw -(either be a single directory, or a list of directories to)Tj -0 -1.2222 TD -0.2811 Tw -[(search in order. For example, )]TJ -/TT10 1 Tf -15.0553 0 TD -0.6744 Tw -(\(FILESLOAD \(FROM)Tj --15.0553 -1.2889 TD -0.2944 Tw -({ERIS}SOURCES>\) ...\))Tj -/TT12 1 Tf -18.2974 0 TD -0.1233 Tw -[( will search the)]TJ --18.2974 -1.2889 TD -0 Tw -(directory )Tj -/TT10 1 Tf -4.583 0 TD -({ERIS}SOURCES>)Tj -/TT12 1 Tf -14.4023 0 TD -0.29 Tw -[( for the files.)]TJ --18.9853 -1.2889 TD -0.3833 Tw -(If this is not specified, the default is to search the)Tj -0 -1.2222 TD -0 Tw -(contents of )Tj -/TT10 1 Tf -5.0879 0 TD -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -( \(see Chapter 24\).)Tj --11.689 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.2599 0 TD -(FROM)Tj -/TT12 1 Tf -2.4004 0 TD -0.34 Tw -[( is followed by the key word )]TJ -/TT10 1 Tf -15.2491 0 TD -0 Tw -(VALUEOF)Tj -/TT12 1 Tf -4.2007 0 TD -0.34 Tw -(, the)Tj --23.1101 -1.2889 TD -0.02 Tw -(following word is evaluated, and the value is used as the)Tj -0 -1.2222 TD -0.1244 Tw -[(list of directories to search. For example, )]TJ -/TT10 1 Tf -19.3291 0 TD -0 Tw -(\(FILESLOAD)Tj --19.3291 -1.2889 TD -0.1222 Tw -(\(FROM VALUEOF FOO\) ...\))Tj -/TT12 1 Tf -14.1689 0 TD -0.0511 Tw -[( will search the directory)]TJ --14.1689 -1.2889 TD -0 Tw -(list that is the value of the variable )Tj -/TT10 1 Tf -15.4468 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --17.2471 -2.0667 TD -0.2067 Tw -(As a special case, if )Tj -/TT15 1 Tf -9.7355 0 TD -0 Tw -(DIR)Tj -/TT12 1 Tf -1.8003 0 TD -0.2067 Tw -[( is a symbol, and the symbol)]TJ -/TT15 1 Tf --11.5358 -1.2889 TD -0 Tw -(DIR)Tj -/TT10 1 Tf -1.8003 0 TD -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0567 Tw -[( is bound, the value of this variable is)]TJ --8.4014 -1.2889 TD -0.0856 Tw -[(used as the directory search list. For example, since the)]TJ -0 -1.2222 TD -0 Tw -(variable )Tj -/TT10 1 Tf -4.0542 0 TD -(LISPUSERSDIRECTORIES)Tj -/TT12 1 Tf -12.002 0 TD -0.23 Tw -[( \(see Chapter 24\) is)]TJ --16.0562 -1.2889 TD -0.0311 Tw -(commonly used to contain a list of directories containing)Tj -0 -1.2222 TD -0.0878 Tw -("library" packages, )Tj -/TT10 1 Tf -8.7092 0 TD -0.2111 Tw -(\(FILESLOAD \(FROM LISPUSERS\))Tj --8.7092 -1.2889 TD -0 Tw -(...\))Tj -/TT12 1 Tf -2.4004 0 TD -0.3644 Tw -[( can be used instead of )]TJ -/TT10 1 Tf -12.4533 0 TD -0.8756 Tw -(\(FILESLOAD \(FROM)Tj --14.8537 -1.2222 TD -0 Tw -(VALUEOF LISPUSERSDIRECTORIES\) ...\))Tj -/TT12 1 Tf -0 -2.0667 TD -0.1567 Tw -(If a )Tj -/TT10 1 Tf -1.9833 0 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.1567 Tw -[( is read and evaluated while loading a)]TJ --7.3841 -1.2889 TD -0.0211 Tw -(file, and it doesnt contain a )Tj -/TT10 1 Tf -12.5974 0 TD -0 Tw -(FROM)Tj -/TT12 1 Tf -2.4004 0 TD -0.0211 Tw -[( expression, the default)]TJ --14.9978 -1.2889 TD -0.3222 Tw -(is to search the directory containing the )Tj -/TT10 1 Tf -19.9338 0 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf --19.9338 -1.2889 TD -1.0011 Tw -(expression before the value of )Tj -/TT10 1 Tf -18.4816 0 TD -0 Tw -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --25.0827 -1.2889 TD -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.1811 Tw -[( expressions can be dumped on files using)]TJ --5.4009 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( file manager command.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R -/TT21 37 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -39 0 obj -<< -/Length 5485 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-9)Tj -/TT17 1 Tf --30.4333 60.4667 TD -(SOURCE)Tj -/TT12 1 Tf -4.9333 0 TD -0.3933 Tw -(Load the source version of the file rather than the)Tj -0 -1.2889 TD -0 Tw -(compiled version.)Tj -/TT17 1 Tf --6.1333 -2.1489 TD -(COMPILED)Tj -/TT12 1 Tf -6.1333 0 TD -(Load the compiled version of the file.)Tj -0 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.0933 0 TD -(COMPILED)Tj -/TT12 1 Tf -4.8008 0 TD -0.1733 Tw -[( is specified, the compiled version will be)]TJ --5.894 -1.2889 TD -0.0922 Tw -[(loaded, if it is found. The source will not be loaded. If)]TJ -0 -1.2222 TD -0 Tw -(neither )Tj -/TT10 1 Tf -3.4776 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0933 Tw -[( or )]TJ -/TT10 1 Tf -1.6276 0 TD -0 Tw -(COMPILED)Tj -/TT12 1 Tf -4.8008 0 TD -0.0933 Tw -[( is specified, the compiled)]TJ --13.5066 -1.2889 TD -0.0567 Tw -(version of the file will be loaded if it is found, otherwise)Tj -0 -1.2222 TD -0 Tw -(the source will be loaded if it is found.)Tj -/TT17 1 Tf --3.7333 -2.1489 TD -(LOAD)Tj -/TT12 1 Tf -3.7333 0 TD -0.1089 Tw -(Load the file by calling )Tj -/TT10 1 Tf -10.9077 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.1089 Tw -(, if it has not already been)Tj --13.3081 -1.2889 TD -0.5433 Tw -[(loaded. This is the default unless )]TJ -/TT10 1 Tf -18.7985 0 TD -0 Tw -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -0.5433 Tw -[( or)]TJ -/TT10 1 Tf --23.5992 -1.2889 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -( is specified.)Tj --4.8008 -2.0667 TD -(If )Tj -/TT10 1 Tf -1.0744 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.1544 Tw -[( is specified, )]TJ -/TT10 1 Tf -6.1308 0 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.1544 Tw -[( considers that the file)]TJ --15.0065 -1.2889 TD -0.0356 Tw -(has already been loaded if the root name of the file has a)Tj -0 -1.2222 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.6056 0 TD -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -0.3556 Tw -[( property. This is a somewhat)]TJ --9.8497 -1.2889 TD -0.3856 Tw -(different algorithm than )Tj -/TT10 1 Tf -12.0961 0 TD -0 Tw -(LOAD?)Tj -/TT12 1 Tf -3.0005 0 TD -0.3856 Tw -[( uses. In particular,)]TJ -/TT10 1 Tf --15.0966 -1.2889 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.1267 Tw -[( will not load a newer version of a file that)]TJ --5.4009 -1.2889 TD -0 Tw -(has already been loaded.)Tj -/TT17 1 Tf --6.1333 -2.1489 TD -(LOADCOMP)Tj -/TT12 1 Tf -6.1333 0 TD -0.54 Tw -(Load the file with )Tj -/TT10 1 Tf -10.242 0 TD -0 Tw -(LOADCOMP?)Tj -/TT12 1 Tf -5.4009 0 TD -0.54 Tw -[( rather than )]TJ -/TT10 1 Tf -7.0375 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --25.0808 -1.2889 TD -(Automatically implies )Tj -/TT10 1 Tf -10.0947 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT17 1 Tf --19.8286 -2.2156 TD -(LOADFROM)Tj -/TT12 1 Tf -6.1333 0 TD -(Load the file with )Tj -/TT10 1 Tf -8.082 0 TD -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -( rather than )Tj -/TT10 1 Tf -5.4175 0 TD -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT17 1 Tf --29.234 -2.2156 TD -(NIL)Tj -/TT10 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -1.2002 0 TD -(T)Tj -/TT10 1 Tf -0.6001 0 TD -(, )Tj -/TT17 1 Tf -1.2002 0 TD -(PROP)Tj --1.8008 -1 TD -(ALLPROP)Tj -0 -1.2155 TD -(SYSLOAD)Tj -/TT12 1 Tf -5.5333 0 TD -0.1056 Tw -(The loading function is called with its )Tj -/TT15 1 Tf -17.6515 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.1056 Tw -[( argument)]TJ --20.652 -1.2889 TD -0.0278 Tw -(set to the specified token. )Tj -/TT15 1 Tf -11.8468 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0278 Tw -[( affects the operation of)]TJ --14.8473 -1.2889 TD -0.1167 Tw -(the loading functions by resetting )Tj -/TT10 1 Tf -15.6961 0 TD -0 Tw -(DFNFLG)Tj -/TT12 1 Tf -3.6006 0 TD -0.1167 Tw -[( \(see Chapter)]TJ --19.2967 -1.2889 TD -0.0356 Tw -(10\) to )Tj -/TT15 1 Tf -2.7762 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0356 Tw -[( during the loading. If none of these tokens)]TJ --5.7767 -1.2889 TD -0.0244 Tw -(are specified, the value of the variable )Tj -/TT10 1 Tf -17.1633 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0244 Tw -[( is used if it)]TJ --20.1638 -1.2889 TD -0 Tw -(is bound, otherwise )Tj -/TT10 1 Tf -8.9658 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( is used.)Tj -/TT17 1 Tf --16.2995 -2.2156 TD -(NOERROR)Tj -/TT12 1 Tf -5.5333 0 TD -(If )Tj -/TT10 1 Tf -0.9255 0 TD -(NOERROR)Tj -/TT12 1 Tf -4.2007 0 TD -0.0056 Tw -[( is specified, no error occurs when a file is not)]TJ --5.1262 -1.2889 TD -0 Tw -(found. )Tj --13.3333 -2.8889 TD -0.0956 Tw -(Each list determines how all further files in the lists are loaded, unless changed by another)Tj -0 -1.2222 TD -0 Tw -(list. The tokens above can be joined together in a single list. For example,)Tj -/TT10 1 Tf -6.6667 -1.9333 TD -(\(FILESLOAD \(LOADCOMP\) NET \(SYSLOAD FROM VALUEOF)Tj -0 -1.2222 TD -(NEWDIRECTORIES\) CJSYS\))Tj -/TT12 1 Tf --6.6667 -2.9556 TD -0.0367 Tw -(will call )Tj -/TT10 1 Tf -3.8062 0 TD -0 Tw -(LOADCOMP?)Tj -/TT12 1 Tf -5.4009 0 TD -0.0367 Tw -[( to load the file )]TJ -/TT10 1 Tf -7.0344 0 TD -0 Tw -(NET)Tj -/TT12 1 Tf -1.8003 0 TD -0.0367 Tw -[( searching the value of )]TJ -/TT10 1 Tf -10.3904 0 TD -0 Tw -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0367 Tw -(, and then call)Tj -/TT10 1 Tf --35.0333 -1.2889 TD -0 Tw -(LOADCOMP?)Tj -/TT12 1 Tf -5.4009 0 TD -0.0878 Tw -[( to load the file )]TJ -/TT10 1 Tf -7.29 0 TD -0 Tw -(CJSYS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0878 Tw -[( with )]TJ -/TT15 1 Tf -2.7088 0 TD -0 Tw -(LDFLG)Tj -/TT12 1 Tf -3.0005 0 TD -0.0878 Tw -[( set to )]TJ -/TT10 1 Tf -3.1144 0 TD -0 Tw -(SYSLOAD)Tj -/TT12 1 Tf -4.2007 0 TD -0.0878 Tw -(, searching the directory list)Tj --28.7157 -1.2889 TD -0 Tw -(that is the value of the variable )Tj -/TT10 1 Tf -13.8647 0 TD -(NEWDIRECTORIES)Tj -/TT12 1 Tf -8.4014 0 TD -(.)Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -42 0 obj -<< -/Length 8091 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 162 569.54 Tm -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -( expressions can be dumped on files using the )Tj -/TT10 1 Tf -20.5454 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( file manager command.)Tj -/TT4 1 Tf -10 0 0 10 102 526.6 Tm -(Storing Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 523.89 m -558.01 523.89 l -S -BT -/TT10 1 Tf -9 0 0 9 150 506.94 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MAKEFILE)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REPRINTFNS)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCEFILE)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-11966.9([Function])]TJ --22.9365 -1.8444 TD -0.3011 Tw -(Makes a new version of the file )Tj -/TT15 1 Tf -16.0995 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.3011 Tw -(, storing the information specified by )Tj -/TT15 1 Tf -18.4009 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(s)Tj --39.3012 -1.2889 TD -0.6278 Tw -[(filecoms. Notices )]TJ -/TT15 1 Tf -9.9146 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.6278 Tw -[( if not previously noticed. Then, it adds )]TJ -/TT15 1 Tf -23.5265 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.6278 Tw -[( to)]TJ -/TT10 1 Tf --38.2418 -1.2889 TD -0 Tw -(NOTLISTEDFILES)Tj -/TT12 1 Tf -8.4014 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf -9.6016 0 TD -(.)Tj -/TT15 1 Tf --20.1958 -2.0667 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2022 Tw -[( is a symbol or list of symbols which specify options. By specifying certain)]TJ --4.2007 -1.2889 TD -0 Tw -(options, )Tj -/TT10 1 Tf -3.9326 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1167 Tw -[( can automatically compile or list )]TJ -/TT15 1 Tf -15.5906 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1167 Tw -[(. Note that if )]TJ -/TT15 1 Tf -6.6239 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1167 Tw -[( does not)]TJ --35.7486 -1.2889 TD -0.0289 Tw -(contain any function definitions, it is not compiled even when )Tj -/TT15 1 Tf -27.9246 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0289 Tw -[( specifies )]TJ -/TT10 1 Tf -4.3234 0 TD -0 Tw -(C)Tj -/TT12 1 Tf -0.6001 0 TD -0.0289 Tw -[( or )]TJ -/TT10 1 Tf -1.4987 0 TD -0 Tw -(RC)Tj -/TT12 1 Tf -1.2002 0 TD -(.)Tj --39.7477 -1.2889 TD -0.4222 Tw -(The options are spelling corrected using the list )Tj -/TT10 1 Tf -24.5506 0 TD -0 Tw -(MAKEFILEOPTIONS)Tj -/TT12 1 Tf -9.0015 0 TD -0.4222 Tw -[(. If spelling)]TJ --33.5521 -1.2889 TD -0 Tw -(correction fails, )Tj -/TT10 1 Tf -7.0366 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -( generates an error. The options are interpreted as follows:)Tj -/TT17 1 Tf --3.7707 -2.2156 TD -(C)Tj --0.6 -1.2156 TD -(RC)Tj -/TT12 1 Tf -2.5333 0 TD -0.0622 Tw -(After making )Tj -/TT15 1 Tf -6.3036 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5622 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0622 Tw -[( will compile )]TJ -/TT15 1 Tf -6.1784 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0622 Tw -[( by calling)]TJ -/TT10 1 Tf --22.6458 -1.2889 TD -0 Tw -(TCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -0.0922 Tw -[( \(if )]TJ -/TT10 1 Tf -1.6415 0 TD -0 Tw -(C)Tj -/TT12 1 Tf -0.6001 0 TD -0.0922 Tw -[( is specified\) or )]TJ -/TT10 1 Tf -7.3103 0 TD -0 Tw -(RECOMPILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0922 Tw -[( \(if )]TJ -/TT10 1 Tf -1.6415 0 TD -0 Tw -(RC)Tj -/TT12 1 Tf -1.2002 0 TD -0.0922 Tw -[( is specified\).)]TJ --21.395 -1.2889 TD -0.1611 Tw -(If there are any block declarations specified in the filecoms)Tj -0 -1.2222 TD -0 Tw -(for )Tj -/TT15 1 Tf -1.5239 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(BCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(BRECOMPILE)Tj -/TT12 1 Tf -6.001 0 TD -( will be called instead.)Tj --15.4668 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9399 0 TD -(F)Tj -/TT12 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.52 0 TD -(ST)Tj -/TT12 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.52 0 TD -(STF)Tj -/TT12 1 Tf -1.8003 0 TD -0.02 Tw -(, or )Tj -/TT10 1 Tf -1.7309 0 TD -0 Tw -(S)Tj -/TT12 1 Tf -0.6001 0 TD -0.02 Tw -[( is the )]TJ -/TT8 1 Tf -2.9121 0 TD -0 Tw -(next)Tj -/TT12 1 Tf -1.7783 0 TD -0.02 Tw -[( item on )]TJ -/TT15 1 Tf -3.9169 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.02 Tw -[( following )]TJ -/TT10 1 Tf -4.81 0 TD -0 Tw -(C)Tj -/TT12 1 Tf -0.6001 0 TD -0.02 Tw -[( or)]TJ -/TT10 1 Tf --26.1296 -1.2889 TD -0 Tw -(RC)Tj -/TT12 1 Tf -1.2002 0 TD -0.0389 Tw -(, it is given to the compiler as the answer to the compilers)Tj --1.2002 -1.2889 TD -0 Tw -(question )Tj -/TT10 1 Tf -4.6033 0 TD -(LISTING?)Tj -/TT12 1 Tf -4.8008 0 TD -0.5422 Tw -[( \(see Chapter 18\). For example,)]TJ -/TT10 1 Tf --9.404 -1.2889 TD -0.3011 Tw -(\(MAKEFILE FOO \(C F LIST\)\))Tj -/TT12 1 Tf -17.4071 0 TD -0.1256 Tw -[( will dump )]TJ -/TT10 1 Tf -5.5315 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.1256 Tw -(, then)Tj -/TT10 1 Tf --24.7388 -1.2889 TD -0 Tw -(TCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -0.0922 Tw -[( or )]TJ -/TT10 1 Tf -1.6254 0 TD -0 Tw -(BCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -0.0922 Tw -[( it specifying that functions are not to be)]TJ --8.8265 -1.2889 TD -0 Tw -(redefined, and finally list the file.)Tj -/TT17 1 Tf --3.7333 -2.1489 TD -(LIST)Tj -/TT12 1 Tf -3.7333 0 TD -0.1611 Tw -(After making )Tj -/TT15 1 Tf -6.5014 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6611 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1611 Tw -[( calls )]TJ -/TT10 1 Tf -2.7719 0 TD -0 Tw -(LISTFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.1611 Tw -[( to print a)]TJ --22.5365 -1.4378 TD -0 Tw -(hardcopy listing of )Tj -/TT8 1 Tf -8.625 0 TD -(FILE)Tj -/TT6 1 Tf -10 0 0 10 360.1303 228.18 Tm -(.)Tj -/TT17 1 Tf -9 0 0 9 208.8 208.84 Tm -(CLISPIFY)Tj -/TT10 1 Tf -6.1333 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.22 Tw -[( calls )]TJ -/TT10 1 Tf -2.8897 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.22 Tw -[( with )]TJ -/TT10 1 Tf -2.9732 0 TD -0 Tw -(CLISPIFYPRETTYFLG)Tj -/TT12 1 Tf -10.2017 0 TD -( )Tj -/TT10 1 Tf -0.47 0 TD -(=)Tj --26.7362 -1.2889 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1689 Tw -[( \(see Chapter 21\). This causes )]TJ -/TT10 1 Tf -14.6056 0 TD -0 Tw -(CLISPIFY)Tj -/TT12 1 Tf -4.8008 0 TD -0.1689 Tw -[( to be called on)]TJ --20.0064 -1.2889 TD -0 Tw -(each function defined as an )Tj -/TT10 1 Tf -12.3535 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -( before it is prettyprinted.)Tj --14.7539 -2.0667 TD -0.0167 Tw -(Alternatively, if )Tj -/TT15 1 Tf -7.2667 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0167 Tw -[( has the property )]TJ -/TT10 1 Tf -7.8591 0 TD -0 Tw -(FILETYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0167 Tw -[( with value)]TJ -/TT10 1 Tf --22.3271 -1.2889 TD -0 Tw -(CLISP)Tj -/TT12 1 Tf -3.0005 0 TD -0.0656 Tw -[( or a list containing )]TJ -/TT10 1 Tf -9.0509 0 TD -0 Tw -(CLISP)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.0656 Tw -[( is called with)]TJ -/TT10 1 Tf --21.0183 -1.2889 TD -0 Tw -(CLISPIFYPRETTYFLG)Tj -/TT12 1 Tf -10.2017 0 TD -0.2189 Tw -[( reset to )]TJ -/TT10 1 Tf -4.3818 0 TD -0 Tw -(CHANGES)Tj -/TT12 1 Tf -4.2007 0 TD -0.2189 Tw -(, which will cause)Tj -/TT10 1 Tf --18.7841 -1.2889 TD -0 Tw -(CLISPIFY)Tj -/TT12 1 Tf -4.8008 0 TD -0.2222 Tw -[( to be called on all functions marked as having)]TJ --4.8008 -1.2889 TD -0.1378 Tw -[(been changed. If )]TJ -/TT15 1 Tf -8.3182 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1378 Tw -[( has property )]TJ -/TT10 1 Tf -6.5686 0 TD -0 Tw -(FILETYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1378 Tw -[( with value)]TJ -/TT10 1 Tf --22.088 -1.2889 TD -0 Tw -(CLISP)Tj -/TT12 1 Tf -3.0005 0 TD -0.45 Tw -(, the compiler will )Tj -/TT10 1 Tf -10.0739 0 TD -0 Tw -(DWIMIFY)Tj -/TT12 1 Tf -4.2007 0 TD -0.45 Tw -[( its functions before)]TJ --17.2751 -1.2889 TD -0 Tw -(compiling them \(see Chapter 18\).)Tj -/TT17 1 Tf --3.7333 -2.1489 TD -(FAST)Tj -/TT10 1 Tf -3.7333 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1822 Tw -[( calls )]TJ -/TT10 1 Tf -2.8142 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1822 Tw -[( with )]TJ -/TT10 1 Tf -2.8977 0 TD -0 Tw -(PRETTYFLG)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT10 1 Tf -0.4322 0 TD -0.4378 Tw -(= NIL)Tj -/TT12 1 Tf -3.4383 0 TD -0.1822 Tw -[( \(see)]TJ --25.1848 -1.2889 TD -0.2056 Tw -[(Chapter 26\). This causes data objects to be printed rather)]TJ -0 -1.2222 TD -0 Tw -(than prettyprinted, which is much faster.)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -45 0 obj -<< -/Length 7326 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-11)Tj -/TT17 1 Tf --31.9333 60.4667 TD -(REMAKE)Tj -/TT10 1 Tf -4.9333 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0567 Tw -[( "remakes" )]TJ -/TT15 1 Tf -5.0713 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0567 Tw -[(: The prettyprinted definitions of)]TJ --12.2725 -1.2889 TD -0.1633 Tw -(functions that have not changed are copied from an earlier)Tj -0 -1.2222 TD -0.1089 Tw -[(version of the symbolic file. Only those functions that have)]TJ -T* -0 Tw -(changed are prettyprinted. )Tj -/TT17 1 Tf --3.1333 -2.1489 TD -(NEW)Tj -/TT10 1 Tf -3.1333 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0822 Tw -[( does )]TJ -/TT8 1 Tf -2.724 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0822 Tw -[( remake )]TJ -/TT15 1 Tf -3.9564 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0822 Tw -[(. If )]TJ -/TT10 1 Tf -1.9166 0 TD -0 Tw -(MAKEFILEREMAKEFLG)Tj --17.1312 -1.2889 TD -0.1289 Tw -(= T)Tj -/TT12 1 Tf -1.9292 0 TD -0.0533 Tw -[( \(the initial setting\), the default for all calls to )]TJ -/TT10 1 Tf -20.6012 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf --22.5304 -1.2889 TD -0.1589 Tw -[(is to remake. The )]TJ -/TT10 1 Tf -8.8472 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.1589 Tw -[( option can be used to override this)]TJ --10.6475 -1.2889 TD -0 Tw -(default.)Tj -/TT15 1 Tf -0 -2 TD -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.1678 Tw -[( and )]TJ -/TT15 1 Tf -2.5284 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.1678 Tw -[( are used when remaking a)]TJ --14.5304 -1.2889 TD -0 Tw -(file.)Tj -/TT15 1 Tf -0 -2 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1478 Tw -[( is not added to )]TJ -/TT10 1 Tf -7.8414 0 TD -0 Tw -(NOTLISTEDFILES)Tj -/TT12 1 Tf -8.4014 0 TD -0.1478 Tw -[( if )]TJ -/TT15 1 Tf -1.4196 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1478 Tw -[( has on its)]TJ --22.4632 -1.2889 TD -0.0211 Tw -(property list the property )Tj -/TT10 1 Tf -11.6025 0 TD -0 Tw -(FILETYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0211 Tw -[( with value )]TJ -/TT10 1 Tf -5.2845 0 TD -0 Tw -(DONTLIST)Tj -/TT12 1 Tf -5.4009 0 TD -(,)Tj --27.0887 -1.2889 TD -0.3456 Tw -(or a list containing )Tj -/TT10 1 Tf -9.8554 0 TD -0 Tw -(DONTLIST)Tj -/TT12 1 Tf -5.4009 0 TD -0.3456 Tw -(. )Tj -/TT15 1 Tf -1.4411 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.3456 Tw -[( is not added to)]TJ -/TT10 1 Tf --19.0977 -1.2889 TD -0 Tw -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf -9.6016 0 TD -0.3022 Tw -[( if )]TJ -/TT15 1 Tf -1.7285 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.3022 Tw -[( has on its property list the)]TJ --13.7304 -1.2889 TD -0 Tw -(property )Tj -/TT10 1 Tf -4.4627 0 TD -(FILETYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.3133 Tw -[( with value )]TJ -/TT10 1 Tf -6.1612 0 TD -0 Tw -(DONTCOMPILE)Tj -/TT12 1 Tf -7.2012 0 TD -0.3133 Tw -(, or a list)Tj --22.6259 -1.2889 TD -0 Tw -(containing )Tj -/TT10 1 Tf -5.0858 0 TD -(DONTCOMPILE)Tj -/TT12 1 Tf -7.2012 0 TD -0.1356 Tw -[(. Also, if )]TJ -/TT15 1 Tf -4.7048 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1356 Tw -[( does not contain)]TJ --19.3921 -1.2889 TD -1.2522 Tw -(any function definitions, it is not added to)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf -9.6016 0 TD -0.3611 Tw -(, and it is not compiled even when)Tj -/TT15 1 Tf --9.6016 -1.2889 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -( specifies )Tj -/TT10 1 Tf -4.2656 0 TD -(C)Tj -/TT12 1 Tf -0.6001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(RC)Tj -/TT12 1 Tf -1.2002 0 TD -(.)Tj --23.0409 -2.9556 TD -0.0222 Tw -(If a remake is )Tj -/TT8 1 Tf -6.2656 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0222 Tw -[( being performed, )]TJ -/TT10 1 Tf -8.2498 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0222 Tw -[( checks the state of )]TJ -/TT15 1 Tf -8.6111 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( to make sure that the)]TJ --31.6607 -1.2889 TD -0.1233 Tw -(entire source file was actually )Tj -/TT10 1 Tf -13.9726 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.1233 Tw -[(ed. If )]TJ -/TT15 1 Tf -3.1298 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1233 Tw -[( was loaded as a compiled file, )]TJ -/TT10 1 Tf -14.6221 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf --36.5253 -1.2889 TD -0.1167 Tw -(prints the message )Tj -/TT10 1 Tf -8.851 0 TD -0.2789 Tw -(CANT DUMP: ONLY THE COMPILED FILE HAS BEEN LOADED)Tj -/TT12 1 Tf -32.236 0 TD -0 Tw -(.)Tj --41.087 -1.2889 TD -0.0844 Tw -(Similarly, if only some of the symbolic definitions were loaded via )Tj -/TT10 1 Tf -30.4728 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0844 Tw -[( or )]TJ -/TT10 1 Tf -1.6098 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -(,)Tj -/TT10 1 Tf --41.0841 -1.2889 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0233 Tw -[( prints )]TJ -/TT10 1 Tf -3.1658 0 TD -0.0556 Tw -(CANT DUMP: ONLY SOME OF ITS SYMBOLICS HAVE BEEN)Tj -/TT19 1 Tf -29.2491 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2733 0 TD -(LOADED)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj --41.0896 -1.2889 TD -0.2633 Tw -(In both cases, )Tj -/TT10 1 Tf -6.9868 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2633 Tw -[( will then ask you if it should dump anyway; if you decline,)]TJ -/TT10 1 Tf --11.7876 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -( does not call )Tj -/TT10 1 Tf -6.0396 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(, but simply returns )Tj -/TT10 1 Tf -8.9824 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NOT DUMPED\))Tj -/TT12 1 Tf -6.6011 0 TD -( as its value.)Tj --35.0752 -2.9556 TD -0.1456 Tw -(You can indicate that )Tj -/TT15 1 Tf -10.1823 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1456 Tw -[( must be block compiled together with other files as a unit by)]TJ --12.5827 -1.2889 TD -0.02 Tw -(putting a list of those files on the property list of each file under the property )Tj -/TT10 1 Tf -34.4723 0 TD -0 Tw -(FILEGROUP)Tj -/TT12 1 Tf -5.4009 0 TD -0.02 Tw -[(. If)]TJ -/TT15 1 Tf --39.8732 -1.2889 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.25 Tw -[( has a )]TJ -/TT10 1 Tf -3.5059 0 TD -0 Tw -(FILEGROUP)Tj -/TT12 1 Tf -5.4009 0 TD -0.25 Tw -[( property, the compiler will not be called until all files on this)]TJ --11.3071 -1.2889 TD -0 Tw -(property have been dumped that need to be.)Tj -/TT10 1 Tf -0 -2.8889 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -1.74 Tw -[( operates by rebinding )]TJ -/TT10 1 Tf -17.1597 0 TD -0 Tw -(PRETTYFLG)Tj -/TT12 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -2.24 0 TD -(PRETTYTRANFLG)Tj -/TT12 1 Tf -7.8013 0 TD -1.74 Tw -(, and)Tj -/TT10 1 Tf --37.4026 -1.4378 TD -0 Tw -(CLISPIFYPRETTYFLG)Tj -/TT12 1 Tf -10.2017 0 TD -0.3133 Tw -(, evaluating each expression on )Tj -/TT10 1 Tf -15.6297 0 TD -0 Tw -(MAKEFILEFORMS)Tj -/TT6 1 Tf -10 0 0 10 416.6933 144.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 422.9516 144.12 Tm -0.3133 Tw -(\(under errorset)Tj --34.328 -1.2889 TD -0 Tw -(protection\), and then calling )Tj -/TT10 1 Tf -12.7363 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --18.1372 -2.9556 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.0311 Tw -[( calls )]TJ -/TT10 1 Tf -2.5119 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.0311 Tw -[( with its second argument )]TJ -/TT15 1 Tf -11.8894 0 TD -0 Tw -(PRETTYDEFLG)Tj -/TT12 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -0.2811 0 TD -0.0733 Tw -(= T)Tj -/TT12 1 Tf -1.8736 0 TD -0.0311 Tw -(, so whenever)Tj -/TT10 1 Tf --35.1591 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.3011 Tw -[( \(and hence )]TJ -/TT10 1 Tf -6.2451 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.3011 Tw -(\) start printing a new function, the name of that)Tj --17.647 -1.2889 TD -0.1644 Tw -(function is printed if more than 30 seconds \(real time\) have elapsed since the last time it)Tj -0 -1.2222 TD -0 Tw -(printed the name of a function.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -50 0 obj -<< -/Length 7597 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MAKEFILES)Tj -/TT19 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILES)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-23268.7([Function])]TJ --11.6346 -1.8444 TD -(Performs )Tj -/TT10 1 Tf -4.3886 0 TD -(\(MAKEFILE)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.33 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.33 0 TD -(OPTIONS)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.08 Tw -[( for each file on )]TJ -/TT15 1 Tf -7.4508 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.08 Tw -[( that needs to be dumped.)]TJ --28.1019 -1.2889 TD -0 Tw -(If )Tj -/TT15 1 Tf -0.9966 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3267 0 TD -0.1833 Tw -(= NIL)Tj -/TT12 1 Tf -3.1838 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.0767 Tw -[( is used. For example, )]TJ -/TT10 1 Tf -10.5376 0 TD -0.1833 Tw -(\(MAKEFILES LIST\))Tj -/TT12 1 Tf -10.385 0 TD -0.0767 Tw -[( will make and)]TJ --33.2076 -1.2889 TD -0.1189 Tw -[(list all files that have been changed. In this case, if any typed definitions for any items)]TJ -0 -1.2222 TD -0.0533 Tw -(have been defined or changed and they are )Tj -/TT8 1 Tf -19.7367 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0533 Tw -[( contained in one of the files on )]TJ -/TT10 1 Tf -14.4794 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -(,)Tj -/TT10 1 Tf --39.7498 -1.2889 TD -(MAKEFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.1833 Tw -[( calls )]TJ -/TT10 1 Tf -2.8164 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.1833 Tw -[( to allow you to specify where these go. )]TJ -/TT10 1 Tf -19.7835 0 TD -0 Tw -(MAKEFILES)Tj -/TT12 1 Tf --34.6019 -1.2889 TD -(returns a list of all files that are made.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLEANUP)Tj -/TT19 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-10892.1([NLambda NoSpread Function])]TJ --14.5334 -2.0667 TD -0.0178 Tw -(Dumps, lists, and recompiles \(with )Tj -/TT10 1 Tf -15.771 0 TD -0 Tw -(RECOMPILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0178 Tw -[( or )]TJ -/TT10 1 Tf -1.4765 0 TD -0 Tw -(BRECOMPILE)Tj -/TT12 1 Tf -6.001 0 TD -0.0178 Tw -(\) any of the specified files)Tj --28.6493 -1.2889 TD -0.0144 Tw -[(\(unevaluated\) requiring the corresponding operation. If no files are specified, )]TJ -/TT10 1 Tf -34.8137 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.0144 Tw -[( is)]TJ --39.0144 -1.2889 TD -0 Tw -(used. )Tj -/TT10 1 Tf -2.8667 0 TD -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --12.5718 -2.0667 TD -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0911 Tw -[( uses the value of the variable )]TJ -/TT10 1 Tf -13.983 0 TD -0 Tw -(CLEANUPOPTIONS)Tj -/TT12 1 Tf -8.4014 0 TD -0.0911 Tw -[( as the )]TJ -/TT15 1 Tf -3.3344 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0911 Tw -[( argument to)]TJ -/TT10 1 Tf --34.1201 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2789 Tw -(. )Tj -/TT10 1 Tf -1.3078 0 TD -0 Tw -(CLEANUPOPTIONS)Tj -/TT12 1 Tf -8.4014 0 TD -0.2789 Tw -[( is initially )]TJ -/TT10 1 Tf -5.7209 0 TD -0 Tw -(\(RC\))Tj -/TT12 1 Tf -2.4004 0 TD -0.2789 Tw -(, to indicate that the files should be)Tj --22.6313 -1.2889 TD -0.0656 Tw -[(recompiled. If )]TJ -/TT10 1 Tf -6.8861 0 TD -0 Tw -(CLEANUPOPTIONS)Tj -/TT12 1 Tf -8.4014 0 TD -0.0656 Tw -[( is set to )]TJ -/TT10 1 Tf -4.0781 0 TD -0.1567 Tw -(\(RC F\))Tj -/TT12 1 Tf -3.7573 0 TD -0.0656 Tw -(, no listing will be performed, and no)Tj --23.1229 -1.2889 TD -0.08 Tw -[(functions will be redefined as the result of compiling. Alternatively, if )]TJ -/TT15 1 Tf -32.2662 0 TD -0 Tw -(FILE)Tj -2.4038 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.08 Tw -[( is a list, it)]TJ --35.27 -1.5111 TD -0 Tw -(will be interpreted as the list of options regardless of the value of )Tj -/TT10 1 Tf -28.9282 0 TD -(CLEANUPOPTIONS)Tj -/TT12 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --39.9963 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILES?)Tj -/TT10 1 Tf -3.5999 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 193.2009 342.8 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 342.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0722 Tw -(Prints on the terminal the names of those files that have been modified but not dumped,)Tj -0 -1.2222 TD -0.1044 Tw -(dumped but not listed, dumped but not compiled, plus the names of any functions and)Tj -T* -0.0178 Tw -[(other typed definitions \(if any\) that are not contained in any file. If there are any, )]TJ -/TT10 1 Tf -36.4096 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf --36.4096 -1.2889 TD -(then calls )Tj -/TT10 1 Tf -4.4189 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -( to allow you to specify where these go.)Tj -/TT10 1 Tf --13.6867 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDTOFILES?)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -()Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 236.4035 269.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 269.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1489 Tw -(Called from )Tj -/TT10 1 Tf -5.8354 0 TD -0 Tw -(MAKEFILES)Tj -/TT12 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.1489 Tw -(, and )Tj -/TT10 1 Tf -2.7406 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.1489 Tw -[( when there are typed definitions that)]TJ --22.4271 -1.2889 TD -0.1122 Tw -(have been marked as changed which do not belong to any file. )Tj -/TT10 1 Tf -29.5351 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.1122 Tw -[( lists the)]TJ --36.1361 -1.2889 TD -0.0456 Tw -(names of the changed items, and asks if you want to specify where these items should be)Tj -0 -1.2222 TD -0.13 Tw -[(put. If you answer )]TJ -/TT10 1 Tf -9.2691 0 TD -0 Tw -(N)Tj -/TT12 1 Tf -0.6001 0 TD -(\(o\), )Tj -/TT10 1 Tf -1.8419 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.13 Tw -[( returns )]TJ -/TT10 1 Tf -3.9641 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.13 Tw -[( without taking any action. If you)]TJ --24.0766 -1.2889 TD -0 Tw -(answer )Tj -/TT10 1 Tf -3.5272 0 TD -(])Tj -/TT12 1 Tf -0.6001 0 TD -0.0633 Tw -(, this is taken to be an answer to each question that would be asked, and all the)Tj --4.1273 -1.2889 TD -0.1767 Tw -[(changed items are marked as dummy items to be ignored. Otherwise, )]TJ -/TT10 1 Tf -33.3973 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf --33.3973 -1.2889 TD -(prints the name of each changed item, and accepts one of the following responses:)Tj -5.55 -2 TD -(A file name)Tj -1.2344 -1.2222 TD -0.0467 Tw -[(A )46.7(filevar)-1333.7(If you give a file name or a variable whose value is a list)]TJ -5.2156 -1.2222 TD -0.0622 Tw -(\(a filevar\), the item is added to the corresponding file or)Tj -T* -0 Tw -(list, using )Tj -/TT10 1 Tf -4.5381 0 TD -(ADDTOFILE)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj --9.939 -2.0667 TD -0.0489 Tw -(If your response is not the name of a file on )Tj -/TT10 1 Tf -19.8884 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.0489 Tw -[( or)]TJ --24.0891 -1.2889 TD -0.3644 Tw -(a variable whose value is a list, you will be asked)Tj -0 -1.2222 TD -0.5756 Tw -[(whether it is a new file. If you say no, then)]TJ -/TT10 1 Tf -T* -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.1167 Tw -[( will check whether the item is the name)]TJ --6.6011 -1.2889 TD -0.0411 Tw -[(of a list, i.e., whether its value is a list. If not, youwill be)]TJ -0 -1.2222 TD -0 Tw -(asked whether it is a new list.)Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -53 0 obj -<< -/Length 5646 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-13)Tj -/TT12 1 Tf --30.2122 60.6156 TD -[(line-feed)-1334.3(Same as your previous response.)]TJ -1.43 -2 TD -(space)Tj --4.1433 -1 TD -[(carriage return)-1335.2(Take no action.)]TJ -/TT17 1 Tf -5.9922 -2.1489 TD -(])Tj -/TT12 1 Tf -1.9333 0 TD -0.1911 Tw -(The item is marked as a dummy item by adding it to)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(NILCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1633 Tw -[(. This tells the file manager simply to ignore)]TJ --4.2007 -1.2889 TD -0 Tw -(this item.)Tj -/TT17 1 Tf --1.9333 -2.1489 TD -([)Tj -/TT12 1 Tf -1.9333 0 TD -0.1211 Tw -(The "definition" of the item in question is prettyprinted)Tj -0 -1.2889 TD -0.1267 Tw -(to the terminal, and then you are asked again about its)Tj -0 -1.2222 TD -0 Tw -(disposition.)Tj -/TT17 1 Tf --1.9333 -2.1489 TD -(\()Tj -/TT10 1 Tf -1.9333 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.0567 Tw -[( prompts with ")]TJ -/TT10 1 Tf -7.1002 0 TD -0.1344 Tw -(LISTNAME: \()Tj -/TT12 1 Tf -6.7355 0 TD -0.0567 Tw -(", you type)Tj --20.4368 -1.2889 TD -0.0744 Tw -(in the name of a list, i.e. a variable whose value is a list,)Tj -0 -1.2222 TD -0.0822 Tw -(terminated by a )Tj -/TT10 1 Tf -7.4781 0 TD -0 Tw -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0822 Tw -[(. The item will then only be added to)]TJ --8.0782 -1.2889 TD -0.0233 Tw -(\(under\) a command in which the named list appears as a)Tj -0 -1.2222 TD -0.0389 Tw -[(filevar. If none are found, a message is printed, and you)]TJ -T* -0.0133 Tw -[(are asked again. For example, you define a new function)]TJ -/TT10 1 Tf -T* -0 Tw -(FOO3)Tj -/TT12 1 Tf -2.4004 0 TD -0.1389 Tw -(. When asked where it goes, you type )Tj -/TT10 1 Tf -17.8826 0 TD -0 Tw -(\(FOOFNS\))Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj --25.0838 -1.2889 TD -0.0789 Tw -(If the command )Tj -/TT10 1 Tf -7.492 0 TD -0.1889 Tw -(\(FNS * FOOFNS\))Tj -/TT12 1 Tf -8.7791 0 TD -0.0789 Tw -[( is found, )]TJ -/TT10 1 Tf -4.6263 0 TD -0 Tw -(FOO3)Tj -/TT12 1 Tf -2.4004 0 TD -0.0789 Tw -[( will)]TJ --23.2979 -1.2889 TD -0.16 Tw -(be added to the value of )Tj -/TT10 1 Tf -11.8799 0 TD -0 Tw -(FOOFNS)Tj -/TT12 1 Tf -3.6006 0 TD -0.16 Tw -[(. If instead you type)]TJ -/TT10 1 Tf --15.4805 -1.2889 TD -0 Tw -(\(FOOCOMS\))Tj -/TT12 1 Tf -5.4009 0 TD -0.06 Tw -(, and the command )Tj -/TT10 1 Tf -9.0183 0 TD -0.1444 Tw -(\(COMS * FOOCOMS\))Tj -/TT12 1 Tf -9.8904 0 TD -0.06 Tw -[( is)]TJ --24.3097 -1.2889 TD -0.3489 Tw -(found, then )Tj -/TT10 1 Tf -6.0918 0 TD -0 Tw -(FOO3)Tj -/TT12 1 Tf -2.4004 0 TD -0.3489 Tw -[( will be added to a command for)]TJ --8.4922 -1.2889 TD -0 Tw -(dumping functions that is contained in )Tj -/TT10 1 Tf -17.4409 0 TD -(FOOCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -(. )Tj --21.6416 -2.0667 TD -0.1244 Tw -(If the named list is not also the name of a file, you can)Tj -0 -1.2222 TD -0 Tw -(simply type it in without parenthesis as described above.)Tj -/TT17 1 Tf --1.9333 -2 TD -(@)Tj -/TT10 1 Tf -1.9333 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.0056 Tw -[( prompts with ")]TJ -/TT10 1 Tf -6.9468 0 TD -0.0144 Tw -(Near: \()Tj -/TT12 1 Tf -4.2151 0 TD -0.0056 Tw -(", you type in the)Tj --17.763 -1.2889 TD -0.24 Tw -(name of an object, and the item is then inserted in a)Tj -0 -1.2222 TD -0.0622 Tw -(command for dumping objects \(of its type\) that contains)Tj -T* -0.1967 Tw -[(the indicated name. The item is inserted immediately)]TJ -T* -0 Tw -(after the indicated name.)Tj -/TT10 1 Tf --14.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LISTFILES)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.399 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 273.0017 198.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 359.33 198.98 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -0.0778 Tw -[(Lists each of the specified files \(unevaluated\). If no files are given, )]TJ -/TT10 1 Tf -30.5463 0 TD -0 Tw -(NOTLISTEDFILES)Tj -/TT12 1 Tf -8.4014 0 TD -0.0778 Tw -[( is)]TJ --38.9476 -1.2889 TD -0.0533 Tw -[(used. Each file listed is removed from )]TJ -/TT10 1 Tf -17.5751 0 TD -0 Tw -(NOTLISTEDFILES)Tj -/TT12 1 Tf -8.4014 0 TD -0.0533 Tw -[( if the listing is completed. For)]TJ --25.9765 -1.2889 TD -0.0067 Tw -(each file not found, )Tj -/TT10 1 Tf -8.8045 0 TD -0 Tw -(LISTFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0067 Tw -[( prints the message )]TJ -/TT15 1 Tf -8.7776 0 TD -0 Tw -(FILENAME)Tj -/TT10 1 Tf -4.8008 0 TD -0.0156 Tw -[( NOT FOUND)]TJ -/TT12 1 Tf -6.0321 0 TD -0.0067 Tw -[( and proceeds)]TJ --33.8159 -1.2889 TD -0 Tw -(to the next file.)Tj -/TT10 1 Tf -0 -2 TD -(LISTFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.4089 Tw -[( calls the function )]TJ -/TT10 1 Tf -9.6795 0 TD -0 Tw -(LISTFILES1)Tj -/TT12 1 Tf -6.001 0 TD -0.4089 Tw -[( on each file to be listed. Normally,)]TJ -/TT10 1 Tf --21.0814 -1.2889 TD -0 Tw -(LISTFILES1)Tj -/TT12 1 Tf -6.001 0 TD -0.1578 Tw -[( is defined to simply call )]TJ -/TT10 1 Tf -11.9911 0 TD -0 Tw -(SEND.FILE.TO.PRINTER)Tj -/TT12 1 Tf -12.002 0 TD -0.1578 Tw -[( \(see Chapter 29\), but)]TJ --29.994 -1.2889 TD -0 Tw -(you can advise or redefine )Tj -/TT10 1 Tf -11.9404 0 TD -(LISTFILES1)Tj -/TT12 1 Tf -6.001 0 TD -( for more specialized applications.)Tj --17.9414 -2.0667 TD -0.0678 Tw -(Any lists inside the argument list to )Tj -/TT10 1 Tf -16.4896 0 TD -0 Tw -(LISTFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0678 Tw -[( are interpreted as property lists that set)]TJ --21.8905 -1.2889 TD -0.0233 Tw -(the various printing options, such as the printer, number of copies, banner page name, etc)Tj -0 -1.2222 TD -0 Tw -(\(see see Chapter 29\). Later properties override earlier ones. For example,)Tj -/TT10 1 Tf -5.3333 -1.9333 TD -(\(LISTFILES FOO \(HOST JEDI\) FUM \(#COPIES 3\) FIE\))Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -56 0 obj -<< -/Length 8537 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -0.0511 Tw -(will cause one copy of )Tj -/TT10 1 Tf -10.2951 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0511 Tw -[( to be printed on the default printer, and one copy of )]TJ -/TT10 1 Tf -24.106 0 TD -0 Tw -(FUM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0511 Tw -[( and)]TJ --38.0017 -1.2889 TD -0 Tw -(three copies of )Tj -/TT10 1 Tf -6.6748 0 TD -(FIE)Tj -/TT12 1 Tf -1.8003 0 TD -( to be printed on the printer )Tj -/TT10 1 Tf -12.5239 0 TD -(JEDI)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --26.0661 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COMPILEFILES)Tj -/TT12 1 Tf -7.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 331.8008 535 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 407.33 535 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -0.0689 Tw -(Executes the )Tj -/TT10 1 Tf -5.9068 0 TD -0 Tw -(RC)Tj -/TT12 1 Tf -1.2002 0 TD -0.0689 Tw -[( and )]TJ -/TT10 1 Tf -2.3306 0 TD -0 Tw -(C)Tj -/TT12 1 Tf -0.6001 0 TD -0.0689 Tw -[( options of )]TJ -/TT10 1 Tf -5.1515 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0689 Tw -[( for each of the specified files \(unevaluated\).)]TJ --19.99 -1.2889 TD -0.1133 Tw -(If no files are given, )Tj -/TT10 1 Tf -9.5296 0 TD -0 Tw -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf -9.6016 0 TD -0.1133 Tw -[( is used. Each file compiled is removed from)]TJ -/TT10 1 Tf --19.1311 -1.2889 TD -0 Tw -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf -9.6016 0 TD -0.1556 Tw -[(. If )]TJ -/TT15 1 Tf -2.1366 0 TD -0 Tw -(FILE)Tj -2.3985 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1556 Tw -[( is a list, it is interpreted as the )]TJ -/TT15 1 Tf -15.0543 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1556 Tw -[( argument to)]TJ -/TT10 1 Tf --33.9916 -1.5111 TD -0 Tw -(MAKEFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0867 Tw -[(. This feature can be used to supply an answer to the compilers )]TJ -/TT10 1 Tf -29.7978 0 TD -0 Tw -(LISTING?)Tj -/TT12 1 Tf --35.1987 -1.2889 TD -0.0756 Tw -(question, e.g., )Tj -/TT10 1 Tf -6.4973 0 TD -0.1811 Tw -(\(COMPILEFILES \(STF\)\))Tj -/TT12 1 Tf -12.1831 0 TD -0.0756 Tw -[( will compile each file on )]TJ -/TT10 1 Tf -11.7219 0 TD -0 Tw -(NOTCOMPILEDFILES)Tj -/TT12 1 Tf --30.4023 -1.2889 TD -(so that the functions are redefined without the )Tj -/TT10 1 Tf -20.7515 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -(s definitions being saved.)Tj -/TT10 1 Tf --25.8185 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(WHEREIS)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 288.614 433.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 433.46 Tm -([Function])Tj -/TT15 1 Tf --35.4033 -1.8444 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0456 Tw -[( is a file manager type. )]TJ -/TT10 1 Tf -10.7852 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0456 Tw -[( sweeps through all the files on the list )]TJ -/TT15 1 Tf -17.6253 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0456 Tw -[( and)]TJ --38.0121 -1.2889 TD -0.0578 Tw -(returns a list of all files containing )Tj -/TT15 1 Tf -15.6696 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0578 Tw -[( as a )]TJ -/TT15 1 Tf -2.3472 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0578 Tw -(. )Tj -/TT10 1 Tf -0.8656 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0578 Tw -[( knows about and expands)]TJ --27.8838 -1.2889 TD -0.1211 Tw -(all file manager commands and file manager macros. )Tj -/TT15 1 Tf -25.0065 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3711 0 TD -0.29 Tw -(= NIL)Tj -/TT12 1 Tf -3.2905 0 TD -0.1211 Tw -[( defaults to )]TJ -/TT10 1 Tf -5.5523 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.1211 Tw -[( \(to)]TJ --38.4211 -1.2889 TD -0 Tw -(retrieve function definitions\). If )Tj -/TT15 1 Tf -14.375 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( is not a list, the value of )Tj -/TT10 1 Tf -10.9551 0 TD -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -( is used.)Tj --32.5312 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.0133 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0933 Tw -[( is given, it should be a function \(with arguments )]TJ -/TT15 1 Tf -22.8987 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5933 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0933 Tw -(, and )Tj -/TT15 1 Tf -2.6295 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0933 Tw -(\) which is)Tj --35.5362 -1.2889 TD -0.1789 Tw -(applied for every file in )Tj -/TT15 1 Tf -11.5336 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.1789 Tw -[( that contains )]TJ -/TT15 1 Tf -6.7159 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1789 Tw -[( as a )]TJ -/TT15 1 Tf -2.7105 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1789 Tw -[(. In this case, )]TJ -/TT10 1 Tf -7.0331 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf --35.7944 -1.2889 TD -(returns )Tj -/TT10 1 Tf -3.4541 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --5.2544 -2.0667 TD -0.0033 Tw -(If the )Tj -/TT10 1 Tf -2.5638 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0001 Tc -0.0032 Tw -( library package has been loaded, )Tj -/TT10 1 Tf -15.0244 0 TD -0 Tc -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0002 Tc -0.0031 Tw -( is redefined so that )Tj -/TT15 1 Tf -8.9454 0 TD -0 Tc -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2533 0 TD -0.0089 Tw -(= T)Tj -/TT12 1 Tf --38.1888 -1.2889 TD -0.0933 Tw -(means to use the whereis package data base, so )Tj -/TT10 1 Tf -21.9557 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0933 Tw -[( will find )]TJ -/TT15 1 Tf -4.5539 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0933 Tw -[( even if the file)]TJ --33.1107 -1.2889 TD -0 Tw -(has not been loaded or noticed. )Tj -/TT15 1 Tf -14.3105 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(= NIL)Tj -/TT12 1 Tf -3.0005 0 TD -( always means use )Tj -/TT10 1 Tf -8.4785 0 TD -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 255.52 Tm -(Remaking a Symbolic File)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 252.81 m -558.01 252.81 l -S -BT -/TT12 1 Tf -9 0 0 9 126 230.86 Tm -0.1133 Tw -(Most of the time that a symbolic file is written using )Tj -/TT10 1 Tf -24.504 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1133 Tw -(, only a few of the functions that it)Tj --29.3048 -1.2889 TD -0.0944 Tw -[(contains have been changed since the last time the file was written. Rather than prettprinting all of)]TJ -0 -1.2222 TD -0.0089 Tw -(the functions, it is often considerably faster to "remake" the file, copying the prettprinted definitions of)Tj -T* -0.2633 Tw -(unchanged functions from an earlier version of the symbolic file, and only prettyprinting those)Tj -T* -0 Tw -(functions that have been changed.)Tj -/TT10 1 Tf -0 -2.8889 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0367 Tw -[( will remake the symbolic file if the )]TJ -/TT10 1 Tf -16.0726 0 TD -0 Tw -(REMAKE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0367 Tw -[( option is specified. If the )]TJ -/TT10 1 Tf -11.8734 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.0367 Tw -[( option is given,)]TJ --38.1477 -1.2889 TD -0.0611 Tw -[(the file is not remade, and all of the functions are prettprinted. The default action is specified by the)]TJ -0 -1.2222 TD -0.1344 Tw -(value of )Tj -/TT10 1 Tf -4.0858 0 TD -0 Tw -(MAKEFILEREMAKEFLG)Tj -/TT12 1 Tf -10.2017 0 TD -0.1344 Tw -[(: if )]TJ -/TT10 1 Tf -2.0274 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1344 Tw -[( \(its initial value\), )]TJ -/TT10 1 Tf -8.5051 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1344 Tw -[( will remake files unless the )]TJ -/TT10 1 Tf -13.3135 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf --43.5342 -1.2889 TD -(option is given; if )Tj -/TT10 1 Tf -8.2041 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -( will not remake unless the )Tj -/TT10 1 Tf -12.1431 0 TD -(REMAKE)Tj -/TT12 1 Tf -3.6006 0 TD -( option is given.)Tj --27.7155 -2.0667 TD -0.1511 Tw -[(Note: If the file has never been loaded or dumped, for example if the filecoms were)]TJ -3.3333 -1.2222 TD -0.0611 Tw -(simply set up in memory, then )Tj -/TT10 1 Tf -14.1797 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0611 Tw -[( will never attempt to remake the file,)]TJ --18.9804 -1.2889 TD -0.3344 Tw -(regardless of the setting of )Tj -/TT10 1 Tf -13.6053 0 TD -0 Tw -(MAKEFILEREMAKEFLG)Tj -/TT12 1 Tf -10.2017 0 TD -0.3344 Tw -(, or whether the )Tj -/TT10 1 Tf -8.5931 0 TD -0 Tw -(REMAKE)Tj -/TT12 1 Tf --32.4001 -1.2889 TD -(option was specified.)Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -59 0 obj -<< -/Length 8002 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-15)Tj -/TT12 1 Tf --42.3333 60.6156 TD -(When )Tj -/TT10 1 Tf -2.9197 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0267 Tw -[( is remaking a symbolic file, you can explicitly indicate the functions which are to be)]TJ --7.7205 -1.2889 TD -0.1844 Tw -(prettyprinted and the file to be used for copying the rest of the function definitions from via the)Tj -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.1778 Tw -[( and )]TJ -/TT15 1 Tf -2.5484 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.1778 Tw -[( arguments to )]TJ -/TT10 1 Tf -6.9035 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1778 Tw -[(. Normally, both of these arguments are)]TJ --26.2546 -1.2889 TD -0.1322 Tw -(defaulted to )Tj -/TT10 1 Tf -5.8694 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1322 Tw -[(. In this case, )]TJ -/TT15 1 Tf -6.7998 0 TD -0 Tw -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.1322 Tw -[( will be set to those functions that have been changed)]TJ --20.4705 -1.2889 TD -0.0067 Tw -[(since the last version of the file was written. For )]TJ -/TT15 1 Tf -21.6515 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5067 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0067 Tw -[( obtains the full name of the)]TJ --32.9599 -1.2889 TD -0.1367 Tw -(most recent version of the file \(that it knows about\) from the )Tj -/TT10 1 Tf -28.4974 0 TD -0 Tw -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -0.1367 Tw -[( property of the file, and)]TJ --33.8983 -1.2889 TD -0.0033 Tw -(checks to make sure that the file still exists and has the same file date as that stored on the )Tj -/TT10 1 Tf -39.9207 0 TD -0 Tw -(FILEDATES)Tj -/TT12 1 Tf --39.9207 -1.2889 TD -0.0156 Tw -[(property. If it does, )]TJ -/TT10 1 Tf -9.0739 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0156 Tw -[( uses that file as )]TJ -/TT15 1 Tf -7.3097 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.0156 Tw -[(. This procedure permits you to )]TJ -/TT10 1 Tf -14.5474 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.0156 Tw -[( or)]TJ -/TT10 1 Tf --44.1331 -1.2889 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.0989 Tw -[( a file in a different directory, and still be able to remake the file with )]TJ -/TT10 1 Tf -32.1213 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0989 Tw -[(. In the)]TJ --41.7229 -1.2889 TD -0.1533 Tw -(case where the most recent version of the file cannot be found, )Tj -/TT10 1 Tf -29.6056 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1533 Tw -[( will attempt to remake)]TJ --34.4064 -1.2889 TD -0.0322 Tw -(using the )Tj -/TT8 1 Tf -4.4077 0 TD -0 Tw -(original)Tj -/TT12 1 Tf -3.1665 0 TD -0.0322 Tw -[( version of the file \(i.e., the one first loaded\), specifying as )]TJ -/TT15 1 Tf -26.0463 0 TD -0 Tw -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.0322 Tw -[( the union of)]TJ --39.6215 -1.2889 TD -0.3478 Tw -(all changes that have been made since the file was first loaded, which is obtained from the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FILECHANGES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0422 Tw -[( property of the file. If both of these fail, )]TJ -/TT10 1 Tf -18.5352 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0422 Tw -[( prints the message ")]TJ -/TT10 1 Tf -9.291 0 TD -0.1022 Tw -(CANT FIND)Tj --39.2281 -1.2222 TD -0.2278 Tw -(EITHER THE PREVIOUS VERSION OR THE ORIGINAL VERSION OF )Tj -/TT15 1 Tf -35.0554 0 TD -0 Tw -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -0.2278 Tw -(, SO IT WILL)Tj --37.4558 -1.2889 TD -0 Tw -(HAVE TO BE WRITTEN ANEW)Tj -/TT12 1 Tf -13.8022 0 TD -(", and does not remake the file, i.e. will prettyprint all of the functions.)Tj --13.8022 -2.9556 TD -0.0878 Tw -(When a remake is specified, )Tj -/TT10 1 Tf -13.0414 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0878 Tw -[( also checks to see how the file was originally loaded. If the)]TJ --17.8422 -1.2889 TD -0.0144 Tw -(file was originally loaded as a compiled file, )Tj -/TT10 1 Tf -19.8177 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0144 Tw -[( will call )]TJ -/TT10 1 Tf -4.0262 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0144 Tw -[( to obtain those )]TJ -/TT10 1 Tf -7.0851 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf --40.5306 -1.2889 TD -0.0156 Tw -(expressions that are contained on the symbolic file, but not the compiled file, and hence have not been)Tj -0 -1.2222 TD -0.1067 Tw -[(loaded. If the file was loaded by )]TJ -/TT10 1 Tf -15.4969 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1067 Tw -[( \(but not )]TJ -/TT10 1 Tf -4.3395 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.1067 Tw -(\), then )Tj -/TT10 1 Tf -3.2656 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1067 Tw -[( is called to obtain)]TJ --36.9043 -1.2889 TD -0.0622 Tw -(any non-)Tj -/TT10 1 Tf -3.9934 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.0622 Tw -[( expressions. Before calling )]TJ -/TT10 1 Tf -12.7696 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0622 Tw -[( to re-load definitions, )]TJ -/TT10 1 Tf -10.2816 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0622 Tw -[( asks you,)]TJ --40.8468 -1.2889 TD -0.08 Tw -(e.g. ")Tj -/TT10 1 Tf -2.2362 0 TD -0.1911 Tw -(Only the compiled version of FOO was loaded, do you want to LOADVARS)Tj --2.2362 -1.2889 TD -0.0956 Tw -(the \(DECLARE: .. DONTCOPY ..\) expressions from {DSK}FOO.;3?")Tj -/TT12 1 Tf -40.8754 0 TD -0.04 Tw -[(. You can)]TJ --40.8754 -1.2889 TD -0 Tw -(respond )Tj -/TT10 1 Tf -4.2433 0 TD -(Yes)Tj -/TT12 1 Tf -1.8003 0 TD -0.3556 Tw -[( to execute the )]TJ -/TT10 1 Tf -8.0077 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.3556 Tw -[( and continue the )]TJ -/TT10 1 Tf -9.3553 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.8556 0 TD -(No)Tj -/TT12 1 Tf -1.2002 0 TD -0.3556 Tw -[( to proceed with the)]TJ -/TT10 1 Tf --35.0639 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0967 Tw -[( without performing the )]TJ -/TT10 1 Tf -11.3432 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0967 Tw -(, or )Tj -/TT10 1 Tf -1.8843 0 TD -0 Tw -(Abort)Tj -/TT12 1 Tf -3.0005 0 TD -0.0967 Tw -[( to abort the )]TJ -/TT10 1 Tf -5.9663 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0967 Tw -[(. You may wish to)]TJ --36.5966 -1.2889 TD -0.2011 Tw -(skip the )Tj -/TT10 1 Tf -4.1615 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.2011 Tw -[( if you had circumvented the file manager in some way, and loading the old)]TJ --8.9623 -1.2889 TD -0 Tw -(definitions would overwrite new ones.)Tj -0 -2.8889 TD -0.0078 Tw -(Remaking a symbolic file is considerably faster if the earlier version has a )Tj -/TT8 1 Tf -32.7207 0 TD -(file map)Tj -/TT12 1 Tf -3.2021 0 TD -[( indicating where the)]TJ --35.9229 -1.2222 TD -0 Tw -(function definitions are located \(see the File Maps section\), but it does not depend on this information.)Tj -/TT4 1 Tf -10 0 0 10 54 187.6 Tm -(Loading Files in a Distributed Environment)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 184.89 m -510.01 184.89 l -S -BT -/TT12 1 Tf -9 0 0 9 78 162.94 Tm -0.0878 Tw -(Each Interlisp source and compiled code file contains the full filename of the file, including the host)Tj -T* -0.0789 Tw -(and directory names, in a )Tj -/TT10 1 Tf -11.871 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0789 Tw -[( expression at the beginning of the file. The compiled code)]TJ --18.4721 -1.2889 TD -0.2144 Tw -[(file also contains the full file name of the source file it was created from. In earlier versions of)]TJ -0 -1.2222 TD -0.0244 Tw -(Interlisp, the file manager used this information to locate the appropriate source file when "remaking")Tj -T* -0 Tw -(or recompiling a file.)Tj -0 -2.8889 TD -0.1233 Tw -(This turned out to be a bad feature in distributed environments, where users frequently move files)Tj -0 -1.2222 TD -0.0633 Tw -[(from one place to another, or where files are stored on removable media. For example, suppose you)]TJ -/TT10 1 Tf -T* -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0367 Tw -[( to a floppy, and then copy the file to a file server. If you loaded and edited the file from a)]TJ --4.8008 -1.2889 TD -0.12 Tw -(file server, and tried to do )Tj -/TT10 1 Tf -12.4246 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.12 Tw -(, it would try to locate the source file on the floppy, which is)Tj --17.2254 -1.2889 TD -0 Tw -(probably no longer loaded.)Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -62 0 obj -<< -/Length 6641 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -0.07 Tw -(Currently, the file manager searches for sources file on the connected directory, and on the directory)Tj -0 -1.2222 TD -0.0944 Tw -(search path \(on the variable )Tj -/TT10 1 Tf -12.9776 0 TD -0 Tw -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0944 Tw -[(\). If it is not found, the host/directory information from)]TJ --19.5787 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -( expression be used.)Tj --4.9049 -2.0667 TD -0.27 Tw -[(Warning: One situation where the new algorithm does the wrong thing is if you)]TJ -4.6667 -1.2222 TD -0 Tw -(explicitly )Tj -/TT10 1 Tf -4.4453 0 TD -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.1089 Tw -[( a file that is not on your directory search path. Future)]TJ -/TT10 1 Tf --9.2461 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.6222 Tw -(s and )Tj -/TT10 1 Tf -3.8611 0 TD -0 Tw -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.6222 Tw -(s will search the connected directory and)Tj -/TT10 1 Tf --12.8626 -1.2889 TD -0 Tw -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -0.2856 Tw -[( to find the source file, rather than using the file that the)]TJ -/TT10 1 Tf --6.6011 -1.2889 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.0867 Tw -[( was done from. Even if the correct file is on the directory search)]TJ --4.8008 -1.2889 TD -0.0144 Tw -(path, you could still create a bad file if there is another version of the file in an)Tj -0 -1.2222 TD -0.1122 Tw -[(earlier directory on the search path. In general, you should either explicitly)]TJ -T* -0.0156 Tw -(specify the )Tj -/TT15 1 Tf -5.0462 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.0156 Tw -[( argument to )]TJ -/TT10 1 Tf -5.993 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0156 Tw -[( to tell it where to get the old)]TJ --21.841 -1.2889 TD -0 Tw -(source, or connect to the directory where the correct source file is.)Tj -/TT4 1 Tf -10 0 0 10 102 395 Tm -(Marking Changes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 392.29 m -558.01 392.29 l -S -BT -/TT12 1 Tf -9 0 0 9 126 370.34 Tm -0.0144 Tw -(The file manager needs to know what typed definitions have been changed, so it can determine which)Tj -0 -1.2222 TD -0.0756 Tw -[(files need to be updated. This is done by "marking changes". All the system functions that perform)]TJ -T* -0.1144 Tw -(file manager operations \()Tj -/TT10 1 Tf -11.4053 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6144 0 TD -(TCOMPL)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6144 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1144 Tw -(, etc.\), as well as those functions that define or)Tj --24.0361 -1.2889 TD -0.2567 Tw -(change data, \()Tj -/TT10 1 Tf -6.6764 0 TD -0 Tw -(EDITF)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7567 0 TD -(EDITV)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7567 0 TD -(EDITP)Tj -/TT12 1 Tf -3.0005 0 TD -0.2567 Tw -(, DWIM corrections to user functions\) interact with the file)Tj --17.1912 -1.2889 TD -0.0389 Tw -[(manager by marking changes. Also, )]TJ -/TT8 1 Tf -16.6064 0 TD -0 Tw -(typed-in)Tj -/TT12 1 Tf -3.3892 0 TD -0.0389 Tw -[( assignment of variables or property values is noticed by)]TJ --19.9955 -1.2222 TD -0.1 Tw -[(the file manager. \(If a program modifies a variable or property value, this is not noticed.\) In some)]TJ -T* -0.1344 Tw -(cases the marking procedure can be subtle, e.g. if you edit a property list using )Tj -/TT10 1 Tf -36.9835 0 TD -0 Tw -(EDITP)Tj -/TT12 1 Tf -3.0005 0 TD -0.1344 Tw -(, only those)Tj --39.984 -1.2889 TD -0 Tw -(properties whose values are actually changed \(or added\) are marked.)Tj -0 -2.8889 TD -0.0411 Tw -(The various system functions which create or modify objects call )Tj -/TT10 1 Tf -29.1797 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.0411 Tw -[( to mark the object)]TJ --36.9809 -1.2889 TD -0.2144 Tw -[(as changed. For example, when a function is defined via )]TJ -/TT10 1 Tf -27.6733 0 TD -0 Tw -(DEFINE)Tj -/TT12 1 Tf -3.6006 0 TD -0.2144 Tw -[( or )]TJ -/TT10 1 Tf -1.8698 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.2144 Tw -(, or modified via)Tj -/TT10 1 Tf --37.3444 -1.2889 TD -0 Tw -(EDITF)Tj -/TT12 1 Tf -3.0005 0 TD -0.0233 Tw -(, or a )Tj -/TT10 1 Tf -2.5109 0 TD -0 Tw -(DWIM)Tj -/TT12 1 Tf -2.4004 0 TD -0.0233 Tw -[( correction, the function is marked as being a changed object of type )]TJ -/TT10 1 Tf -30.5465 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0233 Tw -[(. Similarly,)]TJ --40.2586 -1.2889 TD -0.04 Tw -(whenever a new record is declared, or an existing record redeclared or edited, it is marked as being a)Tj -0 -1.2222 TD -0 Tw -(changed object of type )Tj -/TT10 1 Tf -10.1772 0 TD -(RECORDS)Tj -/TT12 1 Tf -4.2007 0 TD -(, and so on for all of the other file manager types. )Tj --14.3779 -2.9556 TD -0.2433 Tw -(You can also call )Tj -/TT10 1 Tf -8.6018 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.2433 Tw -[( directly to mark objects of a particular file manager type as)]TJ --16.403 -1.2889 TD -0 Tw -(changed:)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MARKASCHANGED)Tj -/TT19 1 Tf -7.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REASON)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-19418.5([Function])]TJ --15.4848 -1.8444 TD -(Marks )Tj -/TT15 1 Tf -3.593 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.5222 Tw -[( of type )]TJ -/TT15 1 Tf -5.158 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.5222 Tw -[( as being changed. )]TJ -/TT10 1 Tf -11.2503 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.5222 Tw -[( returns )]TJ -/TT15 1 Tf -4.7485 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --39.7523 -1.2889 TD -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -( is undoable.)Tj -/TT15 1 Tf --7.8013 -2.0667 TD -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -0.0367 Tw -[( is a symbol that indicated how )]TJ -/TT15 1 Tf -14.3055 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0367 Tw -[( was changed. )]TJ -/TT10 1 Tf -6.9084 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.0367 Tw -[( recognizes)]TJ --35.0161 -1.2889 TD -0 Tw -(the following values for )Tj -/TT15 1 Tf -10.793 0 TD -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -(:)Tj -/TT17 1 Tf --7.9269 -2.0667 TD -(DEFINED)Tj -/TT12 1 Tf -5.5333 0 TD -0.0022 Tw -(Used to indicate the creation of )Tj -/TT15 1 Tf -14.0299 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0022 Tw -(, e.g. from )Tj -/TT10 1 Tf -4.6986 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf --21.1289 -1.2889 TD -(\(Chapter 10\).)Tj -/TT17 1 Tf --5.5333 -2 TD -(CHANGED)Tj -/TT12 1 Tf -5.5333 0 TD -(Used to indicate a change to )Tj -/TT15 1 Tf -12.7026 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, e.g. from the editor.)Tj -ET -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -65 0 obj -<< -/Length 8700 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-17)Tj -/TT17 1 Tf --30.5333 60.6156 TD -(DELETED)Tj -/TT12 1 Tf -5.5333 0 TD -(Used to indicate the deletion of )Tj -/TT15 1 Tf -14.0586 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, e.g. by )Tj -/TT10 1 Tf -3.6445 0 TD -(DELDEF)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT17 1 Tf --28.0374 -2.0667 TD -(CLISP)Tj -/TT12 1 Tf -4.3333 0 TD -0.3056 Tw -(Used to indicate the modification of )Tj -/TT15 1 Tf -17.9305 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.3056 Tw -[( by CLISP)]TJ --20.3309 -1.2889 TD -0 Tw -(translation.)Tj --12 -2 TD -0.1211 Tw -(For backwards compatibility, )Tj -/TT10 1 Tf -13.5767 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.1211 Tw -[( also accepts a )]TJ -/TT15 1 Tf -6.963 0 TD -0 Tw -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -0.1211 Tw -[( of )]TJ -/TT10 1 Tf -1.6211 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1211 Tc -( \()Tj -/TT10 1 Tf -0.7041 0 TD -0 Tc -(=DEFINED)Tj -/TT12 1 Tf -4.8008 0 TD -(\))Tj --39.6677 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( \()Tj -/TT10 1 Tf -0.583 0 TD -(=CHANGED)Tj -/TT12 1 Tf -4.8008 0 TD -(\). New programs should avoid using these values.)Tj --9.127 -2.0667 TD -0.09 Tw -(The variable )Tj -/TT10 1 Tf -5.928 0 TD -0 Tw -(MARKASCHANGEDFNS)Tj -/TT12 1 Tf -9.6016 0 TD -0.09 Tw -[( is a list of functions that )]TJ -/TT10 1 Tf -11.671 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.09 Tw -[( calls \(with)]TJ --35.0019 -1.2889 TD -0 Tw -(arguments )Tj -/TT15 1 Tf -5.1792 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.6811 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1811 Tw -(, and )Tj -/TT15 1 Tf -2.8051 0 TD -0 Tw -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -0.1811 Tw -[(\). Functions can be added to this list to "advise")]TJ -/TT10 1 Tf --17.0667 -1.2889 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.1156 Tw -[( to do additional work for all types of objects. The )]TJ -/TT10 1 Tf -23.8461 0 TD -0 Tw -(WHENCHANGED)Tj -/TT12 1 Tf -6.6011 0 TD -0.1156 Tw -[( file)]TJ --38.2485 -1.2889 TD -0.0278 Tw -(manager type property \(see the Defining New File Manager Types section\) can be used to)Tj -0 -1.2222 TD -0 Tw -(specify additional actions when )Tj -/TT10 1 Tf -14.2666 0 TD -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -( gets called on specific types of objects.)Tj -/TT10 1 Tf --24.7345 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNMARKASCHANGED)Tj -/TT12 1 Tf -8.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 241.5079 422.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 422.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(Unmarks )Tj -/TT15 1 Tf -4.5066 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1389 Tw -[( of type )]TJ -/TT15 1 Tf -4.008 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1389 Tw -[( as being changed. Returns )]TJ -/TT15 1 Tf -13.1995 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1389 Tw -[( if )]TJ -/TT15 1 Tf -1.4018 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1389 Tw -[( was marked as)]TJ --32.7175 -1.2889 TD -0 Tw -(changed and is now unmarked, )Tj -/TT10 1 Tf -14.2324 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( otherwise. )Tj -/TT10 1 Tf -5.356 0 TD -(UNMARKASCHANGED)Tj -/TT12 1 Tf -9.0015 0 TD -( is undoable.)Tj -/TT10 1 Tf --33.0568 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEPKGCHANGES)Tj -/TT12 1 Tf -8.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LST)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 236.1079 371.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 401.99 371.26 Tm -([NoSpread Function])Tj --30.6656 -1.8444 TD -(If )Tj -/TT15 1 Tf -1.0521 0 TD -(LST)Tj -/TT12 1 Tf -1.8003 0 TD -0.1322 Tw -[( is not specified \(as opposed to being )]TJ -/TT10 1 Tf -17.5773 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1322 Tw -(\), returns a list of those objects of type)Tj -/TT15 1 Tf --22.23 -1.2889 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0689 Tw -[( that have been marked as changed but not yet associated with their corresponding)]TJ --2.4004 -1.2889 TD -0.0589 Tw -[(files \(see the File Manager Types section\). If )]TJ -/TT15 1 Tf -20.2927 0 TD -0 Tw -(LST)Tj -/TT12 1 Tf -1.8003 0 TD -0.0589 Tw -[( is specified, )]TJ -/TT10 1 Tf -5.8441 0 TD -0 Tw -(FILEPKGCHANGES)Tj -/TT12 1 Tf -8.4014 0 TD -0.0589 Tw -[( sets the)]TJ --36.3385 -1.2889 TD -0.0344 Tw -(corresponding list.)Tj -/TT19 1 Tf -8.3181 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2844 0 TD -(\(FILEPKGCHANGES\))Tj -/TT12 1 Tf -9.6016 0 TD -0.0344 Tw -[( returns a list of )]TJ -/TT8 1 Tf -7.3373 0 TD -0 Tw -(all)Tj -/TT12 1 Tf -0.9995 0 TD -0.0344 Tw -[( objects marked as changed as)]TJ --26.5409 -1.2889 TD -0 Tw -(a list of elements of the form )Tj -/TT10 1 Tf -12.8267 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(TYPENAME)Tj -/TT10 1 Tf -4.8008 0 TD -( . )Tj -/TT15 1 Tf -1.8003 0 TD -(CHANGEDOBJECTS)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(.)Tj --34.3626 -2.9556 TD -0.0122 Tw -(Some properties \(e.g. )Tj -/TT10 1 Tf -9.6246 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(ADVICE)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(I.S.OPR)Tj -/TT12 1 Tf -4.2007 0 TD -0.0122 Tw -(, etc.\) are used to implement other file manager)Tj --24.3634 -1.2889 TD -0.1333 Tw -[(types. For example, if you change the value of the property )]TJ -/TT10 1 Tf -28.1952 0 TD -0 Tw -(I.S.OPR)Tj -/TT12 1 Tf -4.2007 0 TD -0.1333 Tw -(, you are really changing an)Tj --32.3959 -1.2889 TD -0.0844 Tw -(object of type )Tj -/TT10 1 Tf -6.4267 0 TD -0 Tw -(I.S.OPR)Tj -/TT12 1 Tf -4.2007 0 TD -0.0844 Tw -[(. The effect is the same as though you had redefined the i.s.opr via a direct)]TJ --10.6274 -1.2889 TD -0.2444 Tw -(call to the function )Tj -/TT10 1 Tf -9.47 0 TD -0 Tw -(I.S.OPR)Tj -/TT12 1 Tf -4.2007 0 TD -0.2444 Tw -[(. If a property whose value has been changed or added does not)]TJ --13.6707 -1.2889 TD -0.0244 Tw -(correspond to a specific file manager type, then it is marked as a changed object of type )Tj -/TT10 1 Tf -39.1944 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0244 Tw -[( whose)]TJ -/TT8 1 Tf --42.1949 -1.2889 TD -0 Tw -(name)Tj -/TT12 1 Tf -2.167 0 TD -0.0733 Tw -[( is )]TJ -/TT10 1 Tf -1.3615 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VARIABLENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.7757 0 TD -(PROPNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0733 Tw -[( \(except if the property name has a property )]TJ -/TT10 1 Tf -20.6713 0 TD -0 Tw -(PROPTYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0733 Tw -[( with)]TJ --42.9784 -1.2889 TD -0 Tw -(value )Tj -/TT10 1 Tf -2.688 0 TD -(IGNORE)Tj -/TT12 1 Tf -3.6006 0 TD -(\). )Tj --6.2886 -2.9556 TD -0.07 Tw -(Similarly, if you change a variable which implements the file manager type )Tj -/TT10 1 Tf -34.2697 0 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.07 Tw -[( \(as indicated by)]TJ --37.8703 -1.2889 TD -0.0233 Tw -(the appearance of the property )Tj -/TT10 1 Tf -14.0005 0 TD -0 Tw -(VARTYPE)Tj -/TT12 1 Tf -4.2007 0 TD -0.0233 Tw -[( with value )]TJ -/TT10 1 Tf -5.2912 0 TD -0 Tw -(ALIST)Tj -/TT12 1 Tf -3.0005 0 TD -0.0233 Tw -[( on the variables property list\), only those)]TJ --26.4928 -1.2889 TD -0.0211 Tw -(entries that are actually changed are marked as being changed objects of type )Tj -/TT10 1 Tf -34.6582 0 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.0211 Tw -[(. The "name" of)]TJ --38.2588 -1.2889 TD -0.1356 Tw -(the object will be )Tj -/TT10 1 Tf -8.2507 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VARIABLENAME)Tj -/TT10 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.9257 0 TD -(KEY)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1356 Tw -[( where )]TJ -/TT15 1 Tf -3.5402 0 TD -0 Tw -(KEY)Tj -/TT12 1 Tf -1.8003 0 TD -0.1356 Tw -[( is )]TJ -/TT10 1 Tf -1.486 0 TD -0 Tw -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1356 Tw -[( of the entry on the alist that is being)]TJ --28.0047 -1.2889 TD -0.33 Tw -[(marked. If the variable corresponds to a specific file manager type other than )]TJ -/TT10 1 Tf -39.12 0 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.33 Tw -(, e.g.,)Tj -/TT10 1 Tf --42.7206 -1.2889 TD -0 Tw -(USERMACROS)Tj -/TT12 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5367 0 TD -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0367 Tw -[(, etc., then an object of that type is marked. In this case, the name of the)]TJ --13.1387 -1.2889 TD -0.2956 Tw -(changed object will be )Tj -/TT10 1 Tf -11.2574 0 TD -0 Tw -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.2956 Tw -[( of the corresponding entry on the alist. For example, if you edit)]TJ -/TT10 1 Tf --13.0577 -1.2889 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0433 Tw -[( and change a definition for )]TJ -/TT10 1 Tf -12.7019 0 TD -0 Tw -(PL)Tj -/TT12 1 Tf -1.2002 0 TD -0.0433 Tw -(, then the object )Tj -/TT10 1 Tf -7.3618 0 TD -0 Tw -(PL)Tj -/TT12 1 Tf -1.2002 0 TD -0.0433 Tw -[( of type )]TJ -/TT10 1 Tf -3.7213 0 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0433 Tw -[( is marked as)]TJ --39.3876 -1.2889 TD -0 Tw -(being changed. )Tj -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -68 0 obj -<< -/Length 6504 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Noticing Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT12 1 Tf -9 0 0 9 126 543.54 Tm -0.1233 Tw -(Already existing files are "noticed" by )Tj -/TT10 1 Tf -17.6375 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.1233 Tw -[( or )]TJ -/TT10 1 Tf -1.6876 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.1233 Tw -[( \(or by )]TJ -/TT10 1 Tf -3.5033 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1233 Tw -[( or )]TJ -/TT10 1 Tf -1.6876 0 TD -0 Tw -(LOADVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1233 Tw -[( when the)]TJ -/TT15 1 Tf --40.7186 -1.2889 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.2422 Tw -[( argument is )]TJ -/TT10 1 Tf -6.5157 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.2422 Tw -[(. New files are noticed when they are constructed by )]TJ -/TT10 1 Tf -26.3627 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2422 Tw -(, or when)Tj --40.6797 -1.2889 TD -0.2167 Tw -(definitions are first associated with them via )Tj -/TT10 1 Tf -21.3692 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.2167 Tw -[( or )]TJ -/TT10 1 Tf -1.8742 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.2167 Tw -[(. Noticing a file updates)]TJ --33.4451 -1.2889 TD -0.2744 Tw -(certain lists and properties so that the file manager functions know to include the file in their)Tj -0 -1.2222 TD -0 Tw -(operations. For example, )Tj -/TT10 1 Tf -11.436 0 TD -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -( will only dump files that have been noticed.)Tj --15.6367 -2.9556 TD -0.0744 Tw -(You can explicitly tell the file manager to notice a newly-created file by defining the filecoms for the)Tj -0 -1.2222 TD -0 Tw -(file, and calling )Tj -/TT10 1 Tf -7.042 0 TD -(ADDFILE)Tj -/TT12 1 Tf -4.2007 0 TD -(:)Tj -/TT10 1 Tf --8.576 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDFILE)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT12 1 Tf -30.6196 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0567 Tw -(Tells the file manager that )Tj -/TT8 1 Tf -12.0416 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.0562 0 TD -0.0567 Tw -[( should be recognized as a file; it adds )]TJ -/TT15 1 Tf -17.5622 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0567 Tw -[( to )]TJ -/TT10 1 Tf -1.4854 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -(,)Tj --39.7465 -1.2889 TD -0.0267 Tw -(and also sets up the )Tj -/TT10 1 Tf -9.0811 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0267 Tw -[( property of )]TJ -/TT15 1 Tf -5.6083 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0267 Tw -[( to reflect the current set of changes which are)]TJ --19.4902 -1.2889 TD -0 Tw -("registered against" )Tj -/TT15 1 Tf -8.8564 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --16.5902 -2.9556 TD -0.0956 Tw -[(The file manager uses information stored on the property list of the root name of noticed files. The)]TJ -0 -1.2222 TD -0 Tw -(following property names are used:)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(FILE)Tj -/TT6 1 Tf -10 0 0 10 171.6035 338.8 Tm --0.0002 Tc -( )Tj -/TT12 1 Tf -9 0 0 9 466.39 338.8 Tm -0 Tc -([Property Name])Tj --32.4878 -1.8444 TD -0.0489 Tw -(When a file is noticed, the property )Tj -/TT10 1 Tf -16.1596 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0489 Tw -(, value )Tj -/TT10 1 Tf -3.2858 0 TD -0 Tw -(\(\()Tj -/TT15 1 Tf -1.2002 0 TD -(FILECOMS)Tj -/TT10 1 Tf -4.8008 0 TD -0.1167 Tw -[( . )]TJ -/TT15 1 Tf -2.0336 0 TD -0 Tw -(LOADTYPE)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\))Tj -/TT12 1 Tf -1.2002 0 TD -0.0489 Tw -[( is added)]TJ --35.8813 -1.2889 TD -0.0589 Tw -(to the property list of its root name. )Tj -/TT15 1 Tf -16.6975 0 TD -0 Tw -(FILECOMS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0589 Tw -[( is the variable containing the filecoms of)]TJ --21.4983 -1.2889 TD -0.2722 Tw -(the file. )Tj -/TT15 1 Tf -4.5979 0 TD -0 Tw -(LOADTYPE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2722 Tw -[( indicates )]TJ -/TT8 1 Tf -4.9922 0 TD -0 Tw -(how)Tj -/TT12 1 Tf -1.666 0 TD -0.2722 Tw -[( the file was loaded, e.g., completely loaded, only)]TJ --16.0569 -1.2889 TD -0 Tw -(partially loaded as with )Tj -/TT10 1 Tf -10.7461 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -(, loaded as a compiled file, etc.)Tj --14.9468 -2.0667 TD -0.0989 Tw -(The property )Tj -/TT10 1 Tf -6.271 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0989 Tw -[( is used to determine whether or not the corresponding file has been)]TJ --8.6714 -1.2889 TD -0.0478 Tw -(modified since the last time it was loaded or dumped. )Tj -/TT10 1 Tf -24.8381 0 TD -0 Tw -(CDR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0478 Tw -[( of the )]TJ -/TT10 1 Tf -3.1594 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0478 Tw -[( property records)]TJ --32.1982 -1.2889 TD -0.0678 Tw -(by type those items that have been changed since the last )Tj -/TT10 1 Tf -26.1826 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0678 Tw -[(. Whenever a file is)]TJ --30.9834 -1.2889 TD -0.1844 Tw -(dumped, these items are moved to the property )Tj -/TT10 1 Tf -22.8222 0 TD -0 Tw -(FILECHANGES)Tj -/TT12 1 Tf -6.6011 0 TD -0.1844 Tw -(, and )Tj -/TT10 1 Tf -2.8118 0 TD -0 Tw -(CDR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1844 Tw -[( of the )]TJ -/TT10 1 Tf -3.5694 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf --37.6048 -1.2889 TD -(property is reset to )Tj -/TT10 1 Tf -8.5894 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT17 1 Tf --13.0563 -2.5489 TD -(FILECHANGES)Tj -/TT6 1 Tf -10 0 0 10 209.4 199.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 466.39 199.46 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0633 Tw -(The property )Tj -/TT10 1 Tf -6.1999 0 TD -0 Tw -(FILECHANGES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0633 Tw -[( contains a list of all changed items since the file was loaded)]TJ --12.801 -1.2889 TD -0.0722 Tw -[(\(there may have been several sequences of editing and rewriting the file\). When a file is)]TJ -0 -1.2222 TD -0.2678 Tw -(dumped, the changes in )Tj -/TT10 1 Tf -11.9359 0 TD -0 Tw -(CDR)Tj -/TT12 1 Tf -1.8003 0 TD -0.2678 Tw -[( of the )]TJ -/TT10 1 Tf -3.8194 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2678 Tw -[( property are added to the )]TJ -/TT10 1 Tf -13.4509 0 TD -0 Tw -(FILECHANGES)Tj -/TT12 1 Tf --33.4069 -1.2889 TD -(property.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FILEDATES)Tj -/TT6 1 Tf -10 0 0 10 198.6 126.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 466.39 126.32 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0444 Tw -(The property )Tj -/TT10 1 Tf -6.1621 0 TD -0 Tw -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0444 Tw -[( contains a list of version numbers and corresponding file dates)]TJ --11.563 -1.2889 TD -0.1467 Tw -[(for this file. These version numbers and dates are used for various integrity checks in)]TJ -0 -1.2222 TD -0 Tw -(connection with )Tj -/TT8 1 Tf -7.355 0 TD -(re)Tj -/TT12 1 Tf -0.7783 0 TD -(making a file.)Tj -ET -endstream -endobj -69 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -71 0 obj -<< -/Length 6968 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-19)Tj -/TT17 1 Tf --39.6667 60.4667 TD -(FILEMAP)Tj -/TT6 1 Tf -10 0 0 10 139.8 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 418.39 568.2 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.1189 Tw -(The property )Tj -/TT10 1 Tf -6.311 0 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -0.1189 Tw -[( is used to store the filemap for the file. This is used to directly)]TJ --10.5117 -1.2889 TD -0 Tw -(load individual functions from the middle of a file.)Tj --5.3333 -2.8889 TD -0.1867 Tw -(To compute the root name, )Tj -/TT10 1 Tf -13.1179 0 TD -0 Tw -(ROOTFILENAME)Tj -/TT12 1 Tf -7.2012 0 TD -0.1867 Tw -[( is applied to the name of the file as indicated in the)]TJ -/TT10 1 Tf --20.3191 -1.2889 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0667 Tw -[( expression appearing at the front of the file, since this name corresponds to the name)]TJ --6.6011 -1.2889 TD -0.0522 Tw -[(the file was originally made under. The file manager detects that the file being noticed is a compiled)]TJ -0 -1.2222 TD -0.0744 Tw -(file \(regardless of its name\), by the appearance of more than one )Tj -/TT10 1 Tf -29.4773 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0744 Tw -[( expressions. In this)]TJ --36.0784 -1.2889 TD -0.2978 Tw -(case, each of the files mentioned in the following )Tj -/TT10 1 Tf -24.4246 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.2978 Tw -[( expressions are noticed. For)]TJ --31.0257 -1.2889 TD -0.03 Tw -(example, if you perform )Tj -/TT10 1 Tf -11.08 0 TD -0.0722 Tw -(\(BCOMPL \(FOO FIE\)\))Tj -/TT12 1 Tf -11.5463 0 TD -0.03 Tw -(, and subsequently loads )Tj -/TT10 1 Tf -11.3148 0 TD -0 Tw -(FOO.DCOM)Tj -/TT12 1 Tf -4.8008 0 TD -0.03 Tw -(, both )Tj -/TT10 1 Tf -2.8173 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.03 Tw -[( and)]TJ -/TT10 1 Tf --43.3595 -1.2889 TD -0 Tw -(FIE)Tj -/TT12 1 Tf -1.8003 0 TD -( will be noticed.)Tj --1.8003 -2.9556 TD -(When a file is noticed, its root name is added to the list )Tj -/TT10 1 Tf -24.4463 0 TD -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -(: )Tj -/TT17 1 Tf --25.9803 -2.5489 TD -(FILELST)Tj -/TT6 1 Tf -10 0 0 10 139.8 395.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 395.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -(Contains a list of the root names of the files that have been noticed.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(LOADEDFILELST)Tj -/TT6 1 Tf -10 0 0 10 172.2 356.52 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 356.52 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1711 Tw -(Contains a list of the actual names of the files as loaded by )Tj -/TT10 1 Tf -28.2191 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6711 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1711 Tw -[(, etc. For)]TJ --35.4913 -1.2889 TD -0.0478 Tw -(example, if you perform )Tj -/TT10 1 Tf -11.1511 0 TD -0.1156 Tw -(\(LOAD EDITA.COM;3\), EDITA)Tj -/TT12 1 Tf -21.2345 0 TD -0.0478 Tw -[( will be added to)]TJ -/TT10 1 Tf --32.3856 -1.2889 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -1.3533 Tw -(, but )Tj -/TT10 1 Tf -4.9391 0 TD -0 Tw -(EDITA.COM;3)Tj -/TT12 1 Tf -12.002 0 TD -1.3533 Tw -[( is added to )]TJ -/TT10 1 Tf -10.8118 0 TD -0 Tw -(LOADEDFILELST)Tj -/TT12 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --39.7548 -1.2889 TD -(LOADEDFILELST)Tj -/TT12 1 Tf -7.8013 0 TD -( is not used by the file manager; it is maintained solely for your benefit.)Tj -/TT4 1 Tf -10 0 0 10 54 262.18 Tm -(Distributing Change Information)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 259.47 m -510.01 259.47 l -S -BT -/TT12 1 Tf -9 0 0 9 78 237.52 Tm -0.0633 Tw -(Periodically, the function )Tj -/TT10 1 Tf -11.5831 0 TD -0 Tw -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -0.0633 Tw -[( is called to find which file\(s\) contain the elements that have)]TJ --18.1841 -1.2889 TD -0.1222 Tw -(been changed. )Tj -/TT10 1 Tf -7.2138 0 TD -0 Tw -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -0.1222 Tw -[( is called by )]TJ -/TT10 1 Tf -5.9288 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6222 0 TD -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.1222 Tw -(, and )Tj -/TT10 1 Tf -2.6873 0 TD -0 Tw -(MAKEFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.1222 Tw -(, i.e., any procedure)Tj --36.2554 -1.2889 TD -0.0222 Tw -(that requires the )Tj -/TT10 1 Tf -7.5642 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( property to be up to date. This procedure is followed rather than updating the)]TJ -/TT10 1 Tf --9.9646 -1.2889 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2944 Tw -[( property after each change because scanning )]TJ -/TT10 1 Tf -22.3346 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.2944 Tw -[( and examining each file manager)]TJ --28.9356 -1.2889 TD -0.0733 Tw -(command can be a time-consuming process; this is not so noticeable when performed in conjunction)Tj -0 -1.2222 TD -0 Tw -(with a large operation like loading or writing a file.)Tj -/TT10 1 Tf -0 -2.8889 TD -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -0.03 Tw -[( operates by scanning )]TJ -/TT10 1 Tf -9.9403 0 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.03 Tw -[( and interrogating the file manager commands for each)]TJ --20.7421 -1.2889 TD -0.1122 Tw -[(file. When \(if\) any files are found that contain the corresponding typed definition, the name of the)]TJ -0 -1.2222 TD -0.36 Tw -(element is added to the value of the property )Tj -/TT10 1 Tf -23.3982 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.36 Tw -[( for the corresponding file. Thus, after)]TJ -/TT10 1 Tf --25.7986 -1.2889 TD -0 Tw -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -0.1189 Tw -[( has completed operating, the files that need to be dumped are simply those files on)]TJ -/TT10 1 Tf --6.6011 -1.2889 TD -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.1344 Tw -[( for which )]TJ -/TT10 1 Tf -5.1602 0 TD -0 Tw -(CDR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1344 Tw -[( of their )]TJ -/TT10 1 Tf -4.1055 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1344 Tw -[( property is non-)]TJ -/TT10 1 Tf -7.8106 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1344 Tw -[(. For example, if you load the file )]TJ -/TT10 1 Tf -16.2642 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf --43.5421 -1.2889 TD -0.04 Tw -(containing definitions for )Tj -/TT10 1 Tf -11.6 0 TD -0 Tw -(FOO1)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.54 0 TD -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -(, and )Tj -/TT10 1 Tf -2.5229 0 TD -0 Tw -(FOO3)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -(, edit )Tj -/TT10 1 Tf -2.537 0 TD -0 Tw -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -(, and then call )Tj -/TT10 1 Tf -6.598 0 TD -0 Tw -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.54 0 TD -(\(GETPROP)Tj --40.5405 -1.2889 TD -0.0144 Tw -(FOO FILE\))Tj -/TT12 1 Tf -6.6155 0 TD -0.0056 Tw -[( will be )]TJ -/TT10 1 Tf -3.5059 0 TD -0.0144 Tw -(\(\(FOOCOMS . T\) \(FNS FOO2\)\))Tj -/TT12 1 Tf -15.6603 0 TD -0.0056 Tw -[(. If any objects marked as changed have not)]TJ --25.7818 -1.2889 TD -0.1467 Tw -(been transferred to the )Tj -/TT10 1 Tf -10.8582 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1467 Tw -[( property for some file, e.g., you define a new function but forget \(or)]TJ --13.2585 -1.2889 TD -0.1089 Tw -(declines\) to add it to the file manager commands for the corresponding file, then both )Tj -/TT10 1 Tf -39.6817 0 TD -0 Tw -(FILES?)Tj -/TT12 1 Tf -3.6006 0 TD -0.1089 Tw -[( and)]TJ -ET -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -74 0 obj -<< -/Length 4583 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 126 569.54 Tm -(CLEANUP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0078 Tw -[( will print warning messages, and then call )]TJ -/TT10 1 Tf -19.3112 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.0078 Tw -[( to permit you to specify on which)]TJ --30.113 -1.2889 TD -0 Tw -(files these items belong.)Tj -0 -2.8889 TD -(You can also invoke )Tj -/TT10 1 Tf -9.1216 0 TD -(UPDATEFILES)Tj -/TT12 1 Tf -6.6011 0 TD -( directly:)Tj -/TT10 1 Tf --13.056 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UPDATEFILES)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 247.2053 509 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 509 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(\(UPDATEFILES\))Tj -/TT12 1 Tf -7.8013 0 TD -( will update the )Tj -/TT10 1 Tf -7.2144 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -( properties of the noticed files.)Tj -/TT4 1 Tf -10 0 0 10 102 449.46 Tm -(File Manager Types)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 446.75 m -558.01 446.75 l -S -BT -/TT12 1 Tf -9 0 0 9 126 424.8 Tm -0.0056 Tw -(In addition to the definitions of functions and values of variables, source files in Interlisp can contain a)Tj -0 -1.2222 TD -0.1378 Tw -(variety of other information, e.g. property lists, record declarations, macro definitions, hash arrays,)Tj -T* -0.28 Tw -[(etc. In order to treat such a diverse assortment of data uniformly from the standpoint of file)]TJ -T* -0.0311 Tw -(operations, the file manager uses the concept of a )Tj -/TT8 1 Tf -22.2639 0 TD -(typed definition)Tj -/TT12 1 Tf -6.3929 0 TD -(, of which a function definition is just)Tj --28.6568 -1.2222 TD -0.1078 Tw -[(one example. A typed definition associates with a name \(usually a symbol\), a definition of a given)]TJ -T* -0.0156 Tw -[(type \(called the file manager type\). Note that the same name may have several definitions of different)]TJ -T* -0.0511 Tw -[(types. For example, a symbol may have both a function definition and a variable definition. The file)]TJ -T* -0.0033 Tw -(manager also keeps track of the file that a particular typed definition is stored on, so one can think of a)Tj -T* -0 Tw -(typed definition as a relation between four elements: a name, a definition, a type, and a file.)Tj -0 -2.8889 TD -0.15 Tw -(A file manager type is an abstract notion of a class of objects which share the property that every)Tj -0 -1.2222 TD -0.0344 Tw -(object of the same file manager type is stored, retrieved, edited, copied etc., by the file manager in the)Tj -T* -0.0022 Tw -(same way. Each file manager type is identified by a symbol, which can be given as an argument to the)Tj -T* -0.0433 Tw -[(functions that manipulate typed definitions. You may define new file manager types, as described in)]TJ -T* -0 Tw -(the Defining New Package Types section.)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(FILEPKGTYPES)Tj -/TT6 1 Tf -10 0 0 10 214.8 244.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 494.41 244.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0067 Tw -(The value of )Tj -/TT10 1 Tf -5.7607 0 TD -0 Tw -(FILEPKGTYPES)Tj -/TT12 1 Tf -7.2012 0 TD -0.0067 Tw -[( is a list of all file manager types, including any that you may)]TJ --12.9619 -1.2889 TD -0 Tw -(have defined.)Tj --5.3333 -2.8889 TD -(The file manager is initialized with the following built-in file manager types:)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(ADVICE)Tj -/TT6 1 Tf -10 0 0 10 182.4 167.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 167.92 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access "advice" modifying a function \(see Chapter 15\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(ALISTS)Tj -/TT6 1 Tf -10 0 0 10 182.4 128.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 128.98 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.2056 Tw -(Used to access objects stored on an association list that is the value of a symbol \(see)Tj -0 -1.2222 TD -0 Tw -(Chapter 3\).)Tj -0 -2 TD -0.0233 Tw -(A variable is declared to have an association list as its value by putting on its property list)Tj -0 -1.2222 TD -0.0922 Tw -(the property )Tj -/TT10 1 Tf -5.9711 0 TD -0 Tw -(VARTYPE)Tj -/TT12 1 Tf -4.2007 0 TD -0.0922 Tw -[( with value )]TJ -/TT10 1 Tf -5.4979 0 TD -0 Tw -(ALIST)Tj -/TT12 1 Tf -3.0005 0 TD -0.0922 Tw -[(. In this case, each dotted pair on the list is an)]TJ --18.6701 -1.2889 TD -0.0056 Tw -(object of type )Tj -/TT10 1 Tf -6.19 0 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.0056 Tw -[(. When the value of such a variable is changed, only those entries in)]TJ --9.7906 -1.2889 TD -0.1011 Tw -(the association list that are actually changed or added are marked as changed objects of)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -77 0 obj -<< -/Length 5528 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-21)Tj -/TT12 1 Tf --37 60.6156 TD -(type )Tj -/TT10 1 Tf -2.2291 0 TD -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.0167 Tw -[( \(with "name" )]TJ -/TT10 1 Tf -6.3522 0 TD -0 Tw -(\(SYMBOL )Tj -/TT15 1 Tf -4.8408 0 TD -(KEY)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0167 Tw -[(\). Objects of type )]TJ -/TT10 1 Tf -8.0037 0 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.0167 Tw -[( are dumped via the)]TJ -/TT10 1 Tf --31.0274 -1.2889 TD -0 Tw -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(ADDVARS)Tj -/TT12 1 Tf -4.2007 0 TD -( file manager commands.)Tj --9.2422 -2.0667 TD -0.1389 Tw -[(Note that some association lists are used to "implement" other file manager types. For)]TJ -0 -1.2222 TD -0.06 Tw -(example, the value of the global variable )Tj -/TT10 1 Tf -18.5719 0 TD -0 Tw -(USERMACROS)Tj -/TT12 1 Tf -6.001 0 TD -0.06 Tw -[( implements the file manager type)]TJ -/TT10 1 Tf --24.5728 -1.2889 TD -0 Tw -(USERMACROS)Tj -/TT12 1 Tf -6.001 0 TD -0.1589 Tw -[( and the values of )]TJ -/TT10 1 Tf -8.8652 0 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.1589 Tw -[( and )]TJ -/TT10 1 Tf -2.5107 0 TD -0 Tw -(LISPXHISTORYMACROS)Tj -/TT12 1 Tf -10.8018 0 TD -0.1589 Tw -[( implement)]TJ --34.7797 -1.2889 TD -0.0656 Tw -(the file manager type )Tj -/TT10 1 Tf -9.9009 0 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0656 Tw -[(. This is indicated by putting on the property list of)]TJ --16.502 -1.2889 TD -0.04 Tw -(the variable the property )Tj -/TT10 1 Tf -11.408 0 TD -0 Tw -(VARTYPE)Tj -/TT12 1 Tf -4.2007 0 TD -0.04 Tw -[( with value a list of the form )]TJ -/TT10 1 Tf -13.0461 0 TD -0 Tw -(\(ALIST)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.29 0 TD -(FILEPKGTYPE)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(.)Tj --39.7466 -1.2889 TD -0.2444 Tw -(For example, )Tj -/TT10 1 Tf -6.485 0 TD -0.5856 Tw -[(\(GETPROP LISPXHISTORYMACROS VARTYPE\) => \(ALIST)]TJ --6.485 -1.2889 TD -0 Tw -(LISPXMACROS\))Tj -/TT12 1 Tf -7.2012 0 TD -(.)Tj -/TT17 1 Tf --9.8678 -2.5489 TD -(COURIERPROGRAMS)Tj -/TT6 1 Tf -10 0 0 10 183 447.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 447.4 Tm -([File Manager Type])Tj --31.01 -1.9933 TD -(Used to access Courier programs \(see Chapter 31\))Tj -/TT6 1 Tf -10 0 0 10 323.8726 429.46 Tm -(.)Tj -/TT17 1 Tf -9 0 0 9 102 407.12 Tm -(EXPRESSIONS)Tj -/TT6 1 Tf -10 0 0 10 161.4 407.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 407.12 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.0089 Tw -(Used to access lisp expressions that are put on a file by using the )Tj -/TT10 1 Tf -28.8832 0 TD -0 Tw -(REMEMBER)Tj -/TT12 1 Tf -4.8008 0 TD -0.0089 Tw -[( programmers)]TJ --33.684 -1.2889 TD -0.0556 Tw -(assistant command \(Chapter 13\), or by explicitly putting the )Tj -/TT10 1 Tf -27.313 0 TD -0 Tw -(P)Tj -/TT12 1 Tf -0.6001 0 TD -0.0556 Tw -[( file manager command on)]TJ --27.9131 -1.2889 TD -0 Tw -(the filecoms. )Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FIELDS)Tj -/TT6 1 Tf -10 0 0 10 134.4 344.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 344.98 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.0144 Tw -[(Used to access fields of records. The "definition" of an object of type )]TJ -/TT10 1 Tf -30.5636 0 TD -0 Tw -(FIELDS)Tj -/TT12 1 Tf -3.6006 0 TD -0.0144 Tw -[( is a list of all)]TJ --34.1641 -1.2889 TD -0 Tw -(the record declarations which contain the name. See Chapter 8.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FILEPKGCOMS)Tj -/TT6 1 Tf -10 0 0 10 161.4097 294.44 Tm --0.0008 Tc -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 294.44 Tm -0 Tc -([File Manager Type])Tj --31.01 -1.8444 TD -0.0089 Tw -[(Used to access file manager commands and types. A single name can be defined both as a)]TJ -0 -1.2222 TD -0.1789 Tw -[(file manager type and a file manager command. The "definition" of an object of type)]TJ -/TT10 1 Tf -T* -0 Tw -(FILEPKGCOMS)Tj -/TT12 1 Tf -6.6011 0 TD -0.3089 Tw -[( is a list structure of the form )]TJ -/TT10 1 Tf -15.436 0 TD -0.7411 Tw -(\(\(COM . )Tj -/TT15 1 Tf -6.283 0 TD -0 Tw -(COMPROPS)Tj -/TT10 1 Tf -4.8008 0 TD -0.7411 Tw -(\) \(TYPE .)Tj -/TT15 1 Tf --33.1208 -1.2889 TD -0 Tw -(TYPEPROPS)Tj -/TT10 1 Tf -5.4009 0 TD -(\)\))Tj -/TT12 1 Tf -1.2002 0 TD -0.0389 Tw -(, where )Tj -/TT15 1 Tf -3.5968 0 TD -0 Tw -(COMPROPS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0389 Tw -[( is a property list specifying how the name is defined as)]TJ --14.9987 -1.2889 TD -0.4722 Tw -(a file manager command by )Tj -/TT10 1 Tf -14.9578 0 TD -0 Tw -(FILEPKGCOM)Tj -/TT12 1 Tf -6.001 0 TD -0.4722 Tw -[( \(see the Defining New File Manager)]TJ --20.9588 -1.2889 TD -0.2978 Tw -(Commands section\), and )Tj -/TT15 1 Tf -12.1482 0 TD -0 Tw -(TYPEPROPS)Tj -/TT12 1 Tf -5.4009 0 TD -0.2978 Tw -[( is a property list specifying how the name is)]TJ --17.5491 -1.2889 TD -0.1744 Tw -(defined as a file manager type by )Tj -/TT10 1 Tf -16.1415 0 TD -0 Tw -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.6011 0 TD -0.1744 Tw -[( \(see the Defining New File Manager)]TJ --22.7426 -1.2889 TD -0 Tw -(Types section\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FILES)Tj -/TT6 1 Tf -10 0 0 10 129 175.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 175.5 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.2478 Tw -[(Used to access files. This file manager type is most useful for renaming files. The)]TJ -0 -1.2222 TD -0 Tw -("definition" of a file is not a useful structure.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FILEVARS)Tj -/TT6 1 Tf -10 0 0 10 145.2 125.56 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 125.56 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access Filevars \(see the FileVars section\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(FNS)Tj -/TT6 1 Tf -10 0 0 10 118.2 86.62 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 405.09 86.62 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access function definitions.)Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -81 0 obj -<< -/Length 4521 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 568.2 Tm -(I.S.OPRS)Tj -/TT6 1 Tf -10 0 0 10 193.2 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 568.2 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access the definitions of iterative statement operators \(see Chapter 9\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(LISPXMACROS)Tj -/TT6 1 Tf -10 0 0 10 209.4 529.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 529.26 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.0111 Tw -(Used to access programmers assistant commands defined on the variables )Tj -/TT10 1 Tf -33.3914 0 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf --33.3914 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(LISPXHISTORYMACROS)Tj -/TT12 1 Tf -10.8018 0 TD -( \(see Chapter 13\).)Tj -/TT17 1 Tf --15.4113 -2.5489 TD -(MACROS)Tj -/TT6 1 Tf -10 0 0 10 182.4 478.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 478.12 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access macro definitions \(see Chapter 10\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(PROPS)Tj -/TT6 1 Tf -10 0 0 10 177 439.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 439.18 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -0.1278 Tw -[(Used to access objects stored on the property list of a symbol \(see Chapter 2\). When a)]TJ -0 -1.2222 TD -0.4544 Tw -(property is changed or added, an object of type )Tj -/TT10 1 Tf -25.216 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.4544 Tw -(, with "name" )Tj -/TT10 1 Tf -7.5826 0 TD -0 Tw -(\(SYMBOL)Tj -/TT15 1 Tf --35.799 -1.2889 TD -(PROPNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -( is marked as being changed.)Tj --5.4009 -2.0667 TD -0.11 Tw -[(Note that some symbol properties are used to implement other file manager types. For)]TJ -0 -1.2222 TD -0.1778 Tw -(example, the property )Tj -/TT10 1 Tf -10.569 0 TD -0 Tw -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -0.1778 Tw -[( implements the file manager type )]TJ -/TT10 1 Tf -16.4441 0 TD -0 Tw -(MACROS)Tj -/TT12 1 Tf -3.6006 0 TD -0.1778 Tw -(, the property)Tj -/TT10 1 Tf --33.6142 -1.2889 TD -0 Tw -(ADVICE)Tj -/TT12 1 Tf -3.6006 0 TD -0.11 Tw -[( implements )]TJ -/TT10 1 Tf -5.9588 0 TD -0 Tw -(ADVICE)Tj -/TT12 1 Tf -3.6006 0 TD -0.11 Tw -[(, etc. This is indicated by putting the property )]TJ -/TT10 1 Tf -21.7899 0 TD -0 Tw -(PROPTYPE)Tj -/TT12 1 Tf -4.8008 0 TD -(,)Tj --39.7507 -1.2889 TD -0.2444 Tw -[(with value of the file manager type on the property list of the property name. For)]TJ -0 -1.2222 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.3135 0 TD -0.1556 Tw -[(\(GETPROP MACRO PROPTYPE\) => MACROS)]TJ -/TT12 1 Tf -23.737 0 TD -0.0644 Tw -[(. When such a property is)]TJ --28.0505 -1.2889 TD -0.2889 Tw -[(changed or added, an object of the corresponding file manager type is marked. If)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\(GETPROP)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.3267 0 TD -(PROPNAME)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.3267 0 TD -0.1833 Tw -[(PROPTYPE\) => IGNORE)]TJ -/TT12 1 Tf -13.9355 0 TD -0.0767 Tw -[(, the change is ignored. The )]TJ -/TT10 1 Tf -13.1656 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(,)Tj -/TT10 1 Tf --39.7563 -1.2889 TD -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6078 0 TD -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -0.1078 Tw -[(, etc. properties are all handled this way. \()]TJ -/TT10 1 Tf -19.7141 0 TD -0 Tw -(IGNORE)Tj -/TT12 1 Tf -3.6006 0 TD -0.1078 Tw -[( cannot be the)]TJ --33.5241 -1.2889 TD -0 Tw -(name of a file manager type implemented as a property\). )Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(RECORDS)Tj -/TT6 1 Tf -10 0 0 10 187.8 268.04 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 268.04 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access record declarations \(see Chapter 8\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(RESOURCES)Tj -/TT6 1 Tf -10 0 0 10 198.6 229.1 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 229.1 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access resources \(see Chapter 12\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(TEMPLATES)Tj -/TT6 1 Tf -10 0 0 10 198.6 190.16 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 190.16 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access Masterscope templates \(see Chapter 19\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(USERMACROS)Tj -/TT6 1 Tf -10 0 0 10 204 151.22 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 151.22 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access user edit macros \(see Chapter 16\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(VARS)Tj -/TT6 1 Tf -10 0 0 10 171.6 112.28 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 453.09 112.28 Tm -([File Manager Type])Tj --31.01 -1.8444 TD -(Used to access top-level variable values.)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -84 0 obj -<< -/Length 5813 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-23)Tj -/TT4 1 Tf -10 0 0 10 78 568.2 Tm -(Functions for Manipulating Typed Definitions)Tj -/TT12 1 Tf -9 0 0 9 78 544.54 Tm -0.0267 Tw -(The functions described below can be used to manipulate typed definitions, without needing to know)Tj -0 -1.2222 TD -0.1367 Tw -[(how the manipulations are done. For example,)]TJ -/TT10 1 Tf -21.8136 0 TD -0.3289 Tw -[( \(GETDEF FOO FNS\))]TJ -/TT12 1 Tf -12.3885 0 TD -0.1367 Tw -[( will return the function)]TJ --34.2021 -1.2889 TD -0.1511 Tw -(definition of )Tj -/TT10 1 Tf -6.0132 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6511 0 TD -0.3611 Tw -(\(GETDEF FOO VARS\))Tj -/TT12 1 Tf -12.1241 0 TD -0.1511 Tw -[( will return the variable value of )]TJ -/TT10 1 Tf -15.5734 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.1511 Tw -[(, etc. All of the)]TJ --37.9623 -1.2889 TD -0 Tw -(functions use the following conventions:)Tj -2.6667 -2.3333 TD -[(1.)-1916.7(All functions which make destructive changes are undoable.)]TJ -T* -0.0356 Tw -[(2.)-1916.7(Any argument that expects a list of symbols will also accept a single symbol, operating as)]TJ -1.3333 -1.2222 TD -0.0001 Tc -0.0032 Tw -(though it were enclosed in a list. For example, if the argument )Tj -/TT15 1 Tf -27.9349 0 TD -0 Tc -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0001 Tc -0.0032 Tw -( should be a list of files,)Tj --30.9354 -1.2889 TD -0 Tc -0 Tw -(it may also be a single file.)Tj --1.3333 -2.3333 TD -(3.)Tj -/TT15 1 Tf -2.6667 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1078 Tw -[( is a file manager type. )]TJ -/TT15 1 Tf -11.2208 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3578 0 TD -0.26 Tw -(= NIL)Tj -/TT12 1 Tf -3.2605 0 TD -0.1078 Tw -[( is equivalent to )]TJ -/TT15 1 Tf -7.6943 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3578 0 TD -0.26 Tw -(= FNS)Tj -/TT12 1 Tf -3.2605 0 TD -0.1078 Tw -[(. The singular)]TJ --34.6861 -1.2889 TD -0.1489 Tw -(form of a file manager type is also recognized, e.g. )Tj -/TT15 1 Tf -23.9196 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3989 0 TD -0.3578 Tw -(= VAR)Tj -/TT12 1 Tf -3.3583 0 TD -0.1489 Tw -[( is equivalent to )]TJ -/TT15 1 Tf -7.8587 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3989 0 TD -(=)Tj --40.7351 -1.2889 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --3.7337 -2.4 TD -(4.)Tj -/TT15 1 Tf -2.6667 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(= NIL)Tj -/TT12 1 Tf -3.0005 0 TD -( is equivalent to )Tj -/TT15 1 Tf -7.2632 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(= FILELST)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj --24.8322 -2.4 TD -(5.)Tj -/TT15 1 Tf -2.6667 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0622 Tw -[( is used to indicate the source of a definition, that is, where the definition should)]TJ --4.9339 -1.2889 TD -0 Tw -(be found. )Tj -/TT15 1 Tf -4.707 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( can be one of: )Tj -/TT17 1 Tf --1.841 -2.0667 TD -(CURRENT)Tj -/TT12 1 Tf -5.5333 0 TD -(Get the definition currently in effect.)Tj -/TT17 1 Tf --4.3333 -2.0667 TD -(SAVED)Tj -/TT12 1 Tf -4.3333 0 TD -(Get the "saved" definition, as stored by )Tj -/TT10 1 Tf -17.4224 0 TD -(SAVEDEF)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj -/TT17 1 Tf --25.3564 -2.0667 TD -(FILE)Tj -/TT12 1 Tf -3.7333 0 TD -0.02 Tw -(Get the definition contained on the \(first\) file determined by)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -(. )Tj -/TT10 1 Tf --4.2007 -2.0667 TD -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0511 Tw -[( is called with )]TJ -/TT15 1 Tf -6.5682 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -0.1233 Tw -(= T)Tj -/TT12 1 Tf -1.9236 0 TD -0.0511 Tw -(, so that if the )Tj -/TT10 1 Tf -6.4709 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf --22.465 -1.2889 TD -0.1756 Tw -(library package is loaded, the )Tj -/TT10 1 Tf -14.1351 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1756 Tw -[( data base will be)]TJ --18.3358 -1.2889 TD -0 Tw -(used to find the file containing the definition.)Tj -/TT17 1 Tf --1.9333 -2 TD -(?)Tj -/TT12 1 Tf -1.9333 0 TD -0.07 Tw -(Get the definition currently in effect if there is one, else the)Tj -0 -1.2889 TD -0.2778 Tw -(saved definition if there is one, otherwise the definition)Tj -0 -1.2222 TD -0.4278 Tw -(from a file determined by )Tj -/TT10 1 Tf -13.6848 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.4278 Tw -[(. Like specifying)]TJ -/TT10 1 Tf --17.8855 -1.2889 TD -0 Tw -(CURRENT)Tj -/TT12 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6567 0 TD -(SAVED)Tj -/TT12 1 Tf -3.0005 0 TD -0.1567 Tw -(, and )Tj -/TT10 1 Tf -2.7562 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1567 Tw -[( in order, and taking the first)]TJ --13.0144 -1.2889 TD -0 Tw -(definition that is found.)Tj --6.1722 -2 TD -(a file name)Tj --3.1356 -1 TD -0.1611 Tw -[(a )161.1(list )161.1(of )161.1(file )161.1(names)-1335.1(Get the definition from the first of the indicated files that)]TJ -9.3078 -1.2222 TD -0 Tw -(contains one.)Tj -/TT17 1 Tf --3.1333 -2 TD -(NIL)Tj -/TT12 1 Tf -3.1333 0 TD -0.03 Tw -(In most cases, giving )Tj -/TT15 1 Tf -9.5795 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.28 0 TD -0.0733 Tw -(= NIL)Tj -/TT12 1 Tf -3.0738 0 TD -0.03 Tw -[( \(or not specifying it at)]TJ --16.5339 -1.2889 TD -0.0644 Tw -(all\) is the same as giving )Tj -/TT10 1 Tf -11.4545 0 TD -0 Tw -(?)Tj -/TT12 1 Tf -0.6001 0 TD -0.0644 Tw -(, to get either the current, saved,)Tj --12.0546 -1.2889 TD -0.0267 Tw -[(or filed definition. However, with )]TJ -/TT10 1 Tf -15.6009 0 TD -0 Tw -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT15 1 Tf -0.5267 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.2767 0 TD -0.0633 Tw -(= NIL)Tj -/TT12 1 Tf --23.6054 -1.2889 TD -0.0767 Tw -(is interpreted as equal to )Tj -/TT15 1 Tf -11.5415 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3267 0 TD -0.1844 Tw -(= CURRENT)Tj -/TT12 1 Tf -5.5853 0 TD -0.0767 Tw -(, which only)Tj --21.0541 -1.2889 TD -0 Tw -(tests if there is a current definition.)Tj -ET -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -87 0 obj -<< -/Length 7590 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-24)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 162 569.54 Tm -0.2144 Tw -(The operation of most of the functions described below can be changed or extended by)Tj -0 -1.2222 TD -0.2333 Tw -(modifying the appropriate properties for the corresponding file manager type using the)Tj -T* -0 Tw -(function )Tj -/TT10 1 Tf -3.957 0 TD -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.6011 0 TD -(, described in the Defining New File Manager Types section.)Tj -/TT10 1 Tf --11.8914 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(GETDEF)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPTIONS)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 315.6193 524.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 524.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1689 Tw -(Returns the definition of )Tj -/TT15 1 Tf -11.7508 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1689 Tw -(, of type )Tj -/TT15 1 Tf -4.348 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1689 Tw -(, from )Tj -/TT15 1 Tf -3.2445 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.1689 Tw -[(. For most types, )]TJ -/TT10 1 Tf -8.6565 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf --36.4011 -1.2889 TD -0.0333 Tw -(returns the expression which would be pretty printed when dumping )Tj -/TT15 1 Tf -31.3841 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0333 Tw -[( as )]TJ -/TT15 1 Tf -1.4905 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0333 Tw -[(. For)]TJ --37.6754 -1.2889 TD -0.0878 Tw -(example, for )Tj -/TT15 1 Tf -5.9485 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3378 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3378 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0878 Tw -(, an )Tj -/TT10 1 Tf -2.0076 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0878 Tw -[( definition is returned, for )]TJ -/TT15 1 Tf -12.1298 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3378 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3378 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0878 Tw -(, the value of)Tj -/TT15 1 Tf --34.0391 -1.2889 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( is returned, etc.)Tj -/TT15 1 Tf --2.4004 -2.0667 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -( is a list which specifies certain options:)Tj -/TT17 1 Tf -0.9326 -2.2156 TD -(NOERROR)Tj -/TT10 1 Tf -5.5333 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.08 Tw -[( causes an error if an appropriate definition cannot)]TJ --3.6006 -1.2889 TD -0.0856 Tw -(be found, unless )Tj -/TT15 1 Tf -7.7664 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0856 Tw -[( is or contains )]TJ -/TT10 1 Tf -6.6928 0 TD -0 Tw -(NOERROR)Tj -/TT12 1 Tf -4.2007 0 TD -0.0856 Tw -[(. In this)]TJ --22.8606 -1.2889 TD -0 Tw -(case, )Tj -/TT10 1 Tf -2.8567 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.51 Tw -[( returns the value of the )]TJ -/TT10 1 Tf -13.8554 0 TD -0 Tw -(NULLDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.51 Tw -[( file)]TJ --24.5134 -1.2889 TD -0.0256 Tw -(manager type property \(see the Defining New File Manager)Tj -0 -1.2222 TD -0 Tw -(Types section\), usually )Tj -/TT10 1 Tf -10.3657 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --16.8238 -2.0667 TD -[(a string)-1333.6(If )]TJ -/TT15 1 Tf -5.9344 0 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.3567 Tw -[( is or contains a string, that string will be)]TJ --5.4773 -1.2889 TD -0.2967 Tw -(returned if no definition is found \(and )Tj -/TT10 1 Tf -19.1963 0 TD -0 Tw -(NOERROR)Tj -/TT12 1 Tf -4.2007 0 TD -0.2967 Tw -[( is not)]TJ --23.397 -1.2889 TD -0.0356 Tw -[(among the options\). The caller can thus determine whether)]TJ -0 -1.2222 TD -0.2133 Tw -(a definition was found, even for types for which )Tj -/TT10 1 Tf -23.4566 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2133 Tw -[( or)]TJ -/TT10 1 Tf --25.2569 -1.2889 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -( are acceptable definitions.)Tj -/TT17 1 Tf --8.5339 -2.2156 TD -(NOCOPY)Tj -/TT10 1 Tf -4.9333 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.0722 Tw -[( returns a copy of the definition unless )]TJ -/TT15 1 Tf -17.8297 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0722 Tw -[( is)]TJ --25.631 -1.2889 TD -0 Tw -(or contains )Tj -/TT10 1 Tf -5.1357 0 TD -(NOCOPY)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT17 1 Tf --12.4697 -2.2156 TD -(EDIT)Tj -/TT12 1 Tf -3.7333 0 TD -(If )Tj -/TT15 1 Tf -1.0166 0 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0967 Tw -[( is or contains )]TJ -/TT10 1 Tf -6.7373 0 TD -0 Tw -(EDIT)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5967 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.0967 Tw -[( returns a copy of)]TJ --18.5522 -1.2889 TD -0.1156 Tw -(the definition unless it is possible to edit the definition "in)Tj -0 -1.2222 TD -0.08 Tw -[(place." With some file manager types, such as functions, it)]TJ -T* -0.4411 Tw -(is meaningful \(and efficient\) to edit the definition by)Tj -T* -0.2167 Tw -(destructively modifying the list structure, without calling)Tj -/TT10 1 Tf -T* -0 Tw -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1067 Tw -[(. However, some file manager types \(like records\))]TJ --3.6006 -1.2889 TD -0.1989 Tw -(need to be "installed" with )Tj -/TT10 1 Tf -12.8699 0 TD -0 Tw -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1989 Tw -[( after they are edited.)]TJ --16.4705 -1.2889 TD -0.1178 Tw -(The default )Tj -/TT10 1 Tf -5.5525 0 TD -0 Tw -(EDITDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.1178 Tw -[( \(see the Defining New File Manager)]TJ --9.7531 -1.2889 TD -0.4511 Tw -(Types section\) calls )Tj -/TT10 1 Tf -10.1507 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.4511 Tw -[( with )]TJ -/TT15 1 Tf -3.4354 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.4511 Tw -[( of )]TJ -/TT10 1 Tf -2.2811 0 TD -0 Tw -(\(EDIT)Tj --23.6685 -1.2889 TD -(NOCOPY\))Tj -/TT12 1 Tf -4.2007 0 TD -0.0433 Tw -(, so it doesnt use a copy unless it has to, and only)Tj --4.2007 -1.2889 TD -0 Tw -(calls )Tj -/TT10 1 Tf -2.2575 0 TD -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.0578 Tw -[( if the result of editing is not )]TJ -/TT10 1 Tf -13.1756 0 TD -0 Tw -(EQUAL)Tj -/TT12 1 Tf -3.0005 0 TD -0.0578 Tw -[( to the old)]TJ --22.0342 -1.2889 TD -0 Tw -(definition.)Tj -/TT17 1 Tf --4.9333 -2 TD -(NODWIM)Tj -/TT12 1 Tf -4.9333 0 TD -(A )Tj -/TT10 1 Tf -1.1256 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0978 Tw -[( definition will be dwimified if it is likely to contain)]TJ --2.9259 -1.2889 TD -0 Tw -(CLISP unless )Tj -/TT15 1 Tf -6.0884 0 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -( is or contains )Tj -/TT10 1 Tf -6.3506 0 TD -(NODWIM)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --33.5736 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PUTDEF)Tj -/TT12 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(DEFINITION)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REASON)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 331.822 95.24 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 95.24 Tm -([Function])Tj --35.4033 -1.8444 TD -(Defines )Tj -/TT15 1 Tf -3.7574 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1456 Tw -[( of type )]TJ -/TT15 1 Tf -4.028 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1456 Tw -[( with )]TJ -/TT15 1 Tf -2.8243 0 TD -0 Tw -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -0.1456 Tw -[(. For )]TJ -/TT15 1 Tf -2.9337 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3956 0 TD -0.3489 Tw -(= FNS)Tj -/TT12 1 Tf -3.3494 0 TD -0.1456 Tw -(, does a )Tj -/TT10 1 Tf -3.9962 0 TD -0 Tw -(DEFINE)Tj -/TT12 1 Tf -3.6006 0 TD -0.1456 Tw -(; for)Tj -/TT15 1 Tf --38.0873 -1.2889 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -(, does a )Tj -/TT10 1 Tf -3.5596 0 TD -(SAVESET)Tj -/TT12 1 Tf -4.2007 0 TD -(, etc.)Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -90 0 obj -<< -/Length 9948 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-25)Tj -/TT12 1 Tf --37 60.6156 TD -(For )Tj -/TT15 1 Tf -1.8893 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3922 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3922 0 TD -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6422 0 TD -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1422 Tw -[( establishes the command list, notices )]TJ -/TT15 1 Tf -17.6356 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1422 Tw -(, and then calls)Tj -/TT10 1 Tf --32.9535 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0833 Tw -[( to actually dump the file )]TJ -/TT15 1 Tf -11.8623 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0833 Tw -(, copying functions if necessary from the "old")Tj --19.0635 -1.2889 TD -0 Tw -(file \(supplied as part of )Tj -/TT15 1 Tf -10.5029 0 TD -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -(\).)Tj -/TT10 1 Tf --16.5039 -2.0667 TD -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.3344 Tw -[( calls )]TJ -/TT10 1 Tf -3.1186 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.3344 Tw -[( \(see the Mrking Changes section\) to mark )]TJ -/TT15 1 Tf -21.5667 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.3344 Tw -[( as)]TJ --38.4875 -1.2889 TD -0 Tw -(changed, giving a reason of )Tj -/TT15 1 Tf -12.3999 0 TD -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -(. If )Tj -/TT15 1 Tf -1.6699 0 TD -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, the default is )Tj -/TT10 1 Tf -6.4951 0 TD -(DEFINED)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj --34.9819 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.1188 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4489 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4489 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6989 0 TD -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1989 Tw -[( prints a warning if you try to redefine a function on the list)]TJ -/TT10 1 Tf --11.1168 -1.2889 TD -0 Tw -(UNSAFE.TO.MODIFY.FNS)Tj -/TT12 1 Tf -12.002 0 TD -( \(see Chapter 10\).)Tj -/TT10 1 Tf --14.6686 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(HASDEF)Tj -/TT12 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SPELLFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 273.0202 463 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 463 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.8459 0 TD -(\(OR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3689 0 TD -(NAME)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3689 0 TD -(T\))Tj -/TT12 1 Tf -1.2002 0 TD -0.1189 Tw -[( if )]TJ -/TT15 1 Tf -1.3618 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1189 Tw -[( is the name of something of type )]TJ -/TT15 1 Tf -15.8862 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1189 Tw -[(. If not, attempts)]TJ --32.0333 -1.2889 TD -0.0544 Tw -(spelling correction if )Tj -/TT15 1 Tf -9.5002 0 TD -0 Tw -(SPELLFLG)Tj -/TT12 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.3044 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3044 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0544 Tw -(, and returns the spelling-corrected )Tj -/TT15 1 Tf -16.0232 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0544 Tw -[(. Otherwise)]TJ --34.5337 -1.2889 TD -0 Tw -(returns )Tj -/TT10 1 Tf -3.5985 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(. )Tj -/TT10 1 Tf -0.6444 0 TD -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1444 Tw -[( for type FNS \(or NIL\) indicates that )]TJ -/TT15 1 Tf -17.3719 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1444 Tw -[( has an editable source)]TJ --29.4161 -1.2889 TD -0.1011 Tw -(definition. If )Tj -/TT15 1 Tf -5.9542 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1011 Tw -[( is a function that exists on a file for which you have loaded only the)]TJ --8.3546 -1.2889 TD -0 Tw -(compiled version and not the source, )Tj -/TT10 1 Tf -16.6021 0 TD -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -( returns NIL.)Tj -/TT10 1 Tf --20.2026 -2.0667 TD -(\(HASDEF NIL)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -( if )Tj -/TT10 1 Tf -1.124 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( has a valid definition.)Tj --17.0801 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9355 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.2656 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2656 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT15 1 Tf -0.5156 0 TD -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.0156 Tw -[( interprets this as equal to )]TJ -/TT15 1 Tf -11.7437 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.2656 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2656 0 TD -(CURRENT)Tj -/TT12 1 Tf -4.2007 0 TD -0.0156 Tw -(, which only tests)Tj --32.2599 -1.2889 TD -0 Tw -(if there is a current definition.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TYPESOF)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(POSSIBLETYPES)Tj -/TT8 1 Tf -7.8013 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(IMPOSSIBLETYPES)Tj -/TT8 1 Tf -9.0015 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 364.8343 328.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 328.86 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1 Tw -(Returns a list of the types in )Tj -/TT15 1 Tf -13.2845 0 TD -0 Tw -(POSSIBLETYPES)Tj -/TT12 1 Tf -7.8013 0 TD -0.1 Tw -[( but not in )]TJ -/TT15 1 Tf -5.2096 0 TD -0 Tw -(IMPOSSIBLETYPES)Tj -/TT12 1 Tf -9.0015 0 TD -0.1 Tw -[( for which)]TJ -/TT15 1 Tf --35.2968 -1.2889 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( has a definition. )Tj -/TT10 1 Tf -7.8379 0 TD -(FILEPKGTYPES)Tj -/TT12 1 Tf -7.2012 0 TD -( is used if )Tj -/TT15 1 Tf -4.4556 0 TD -(POSSIBLETYPES)Tj -/TT12 1 Tf -7.8013 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --35.3781 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COPYDEF)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OLD)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPTIONS)Tj -/TT10 1 Tf -4.2007 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 291.472 277.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 277.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Defines )Tj -/TT15 1 Tf -3.7274 0 TD -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.1156 Tw -[( to have a copy of the definition of )]TJ -/TT15 1 Tf -16.4121 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1156 Tw -[( by doing )]TJ -/TT10 1 Tf -4.792 0 TD -0 Tw -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1156 Tw -[( on a copy of the)]TJ --32.1326 -1.2889 TD -0.1444 Tw -(definition retrieved by )Tj -/TT10 1 Tf -10.6448 0 TD -0 Tw -(\(GETDEF)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.3944 0 TD -(OLD)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3944 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3944 0 TD -(SOURCE)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.3944 0 TD -(OPTIONS)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1444 Tw -(. )Tj -/TT15 1 Tf -1.0389 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.1444 Tw -[( is substituted for)]TJ -/TT15 1 Tf --31.8645 -1.2889 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -( in the copied definition, in a manner that may depend on the )Tj -/TT15 1 Tf -27.4092 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(. )Tj --31.6099 -2.0667 TD -0.2278 Tw -(For example, )Tj -/TT10 1 Tf -6.4516 0 TD -0.5467 Tw -(\(COPYDEF PDQ RST FILES\))Tj -/TT12 1 Tf -17.2425 0 TD -0.2278 Tw -[( sets up )]TJ -/TT10 1 Tf -4.2903 0 TD -0 Tw -(RSTCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2278 Tw -[( to be a copy of)]TJ -/TT10 1 Tf --32.1851 -1.2889 TD -0 Tw -(PDQCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2067 Tw -(, changes things like )Tj -/TT10 1 Tf -10.022 0 TD -0.4944 Tw -(\(VARS * PDQVARS\))Tj -/TT12 1 Tf -10.5905 0 TD -0.2067 Tw -[( to be )]TJ -/TT10 1 Tf -3.2743 0 TD -0.4944 Tw -(\(VARS * RSTVARS\))Tj -/TT12 1 Tf -10.5905 0 TD -0.2067 Tw -[( in)]TJ -/TT10 1 Tf --38.6779 -1.2889 TD -0 Tw -(RSTCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.17 Tw -(, and performs a )Tj -/TT10 1 Tf -8.1785 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.17 Tw -[( on )]TJ -/TT10 1 Tf -1.9679 0 TD -0 Tw -(RST)Tj -/TT12 1 Tf -1.8003 0 TD -0.17 Tw -[( such that the appropriate definitions get)]TJ --20.9482 -1.2889 TD -0 Tw -(copied from )Tj -/TT10 1 Tf -5.6284 0 TD -(PDQ)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --7.4287 -2.0667 TD -(COPYDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.0678 Tw -[( disables the )]TJ -/TT10 1 Tf -5.9133 0 TD -0 Tw -(NOCOPY)Tj -/TT12 1 Tf -3.6006 0 TD -0.0678 Tw -[( option of )]TJ -/TT10 1 Tf -4.7243 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.0678 Tw -(, so )Tj -/TT8 1 Tf -1.8553 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -2.3325 0 TD -0.0678 Tw -[( will always have a )]TJ -/TT8 1 Tf -9.0269 0 TD -0 Tw -(copy)Tj -/TT12 1 Tf -1.8511 0 TD -0.0678 Tw -[( of the)]TJ --37.1052 -1.2889 TD -0 Tw -(definition of )Tj -/TT15 1 Tf -5.7109 0 TD -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --7.5112 -2.0667 TD -(COPYDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.1178 Tw -[( substitutes )]TJ -/TT15 1 Tf -5.5149 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.1178 Tw -[( for )]TJ -/TT15 1 Tf -2.0095 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1178 Tw -[( throughout the definition of )]TJ -/TT15 1 Tf -13.5025 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1178 Tw -[(. This is usually the)]TJ --30.6284 -1.2889 TD -0.1344 Tw -(right thing to do, but in some cases, e.g., where the old name appears within a quoted)Tj -0 -1.2222 TD -0 Tw -(expression but was not used in the same context, you must re-edit the definition.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DELDEF)Tj -/TT12 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 192.9079 90.78 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 90.78 Tm -([Function])Tj --35.4033 -1.8444 TD -(Removes the definition of )Tj -/TT15 1 Tf -11.6416 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( as a )Tj -/TT15 1 Tf -2.1738 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( that is currently in effect.)Tj -ET -endstream -endobj -91 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -93 0 obj -<< -/Length 9481 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-26)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(SHOWDEF)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 270.1614 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0422 Tw -(Prettyprints the definition of )Tj -/TT15 1 Tf -13.0727 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0422 Tw -[( as a )]TJ -/TT15 1 Tf -2.3005 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0422 Tw -[( to )]TJ -/TT15 1 Tf -1.4565 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0422 Tw -[(. This shows you how )]TJ -/TT15 1 Tf -10.3896 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0422 Tw -[( would)]TJ --36.8208 -1.2889 TD -0 Tw -(be written to a file. Used by )Tj -/TT10 1 Tf -12.6826 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -( \(see the Storing Files section\).)Tj -/TT10 1 Tf --21.9504 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(EDITDEF)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(EDITCOMS)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 326.4202 517.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 517.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Edits the definition of )Tj -/TT15 1 Tf -9.8608 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( as a )Tj -/TT15 1 Tf -2.1738 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(. Essentially performs)Tj -/TT10 1 Tf --11.5021 -1.7778 TD -(\(PUTDEF )Tj -/TT15 1 Tf -4.8008 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -(TYPE)Tj -/TT10 1 Tf --7.8013 -1 TD -( \(EDITE \(GETDEF )Tj -/TT15 1 Tf -10.8018 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -(SOURCE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj --20.4033 -1 TD -( )Tj -/TT15 1 Tf -5.4009 0 TD -(EDITCOMS)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\))Tj --18.2017 -2.3267 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(SAVEDEF)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(DEFINITION)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 302.5667 445.52 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 445.52 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0956 Tw -(Sets the "saved" definition of )Tj -/TT15 1 Tf -13.4006 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0956 Tw -[( as a )]TJ -/TT15 1 Tf -2.4605 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0956 Tw -[( to )]TJ -/TT15 1 Tf -1.5632 0 TD -0 Tw -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -0.0956 Tw -[(. If )]TJ -/TT15 1 Tf -1.9566 0 TD -0 Tw -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.3456 0 TD -0.2289 Tw -(= NIL)Tj -/TT12 1 Tf -3.2294 0 TD -0 Tw -(,)Tj --39.7586 -1.2889 TD -(the current definition of )Tj -/TT15 1 Tf -10.8223 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( is saved.)Tj --13.2227 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9366 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2667 0 TD -0.0389 Tw -(= FNS)Tj -/TT12 1 Tf -3.0394 0 TD -0.0167 Tw -[( \(or )]TJ -/TT10 1 Tf -1.8073 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0167 Tw -(\), the function definition is saved on )Tj -/TT15 1 Tf -16.2973 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0167 Tw -(s property list under the)Tj --28.9483 -1.2889 TD -0 Tw -(property )Tj -/TT10 1 Tf -4.2505 0 TD -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.1011 Tw -(, or )Tj -/TT10 1 Tf -1.8931 0 TD -0 Tw -(CODE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1011 Tw -[( \(depending on the )]TJ -/TT10 1 Tf -9.0446 0 TD -0 Tw -(FNTYP)Tj -/TT12 1 Tf -3.0005 0 TD -0.1011 Tw -[( of the function definition\). If )]TJ -/TT10 1 Tf -14.0159 0 TD -0 Tw -(\(GETD)Tj -/TT15 1 Tf --37.0054 -1.2889 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0056 Tw -[( is non-)]TJ -/TT10 1 Tf -3.2689 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0056 Tw -(, but )Tj -/TT10 1 Tf -2.2435 0 TD -0 Tw -(\(FNTYP)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.2556 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2556 0 TD -0.0133 Tw -(= NIL)Tj -/TT12 1 Tf -3.0138 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5056 0 TD -(SAVEDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.0056 Tw -[( saves the definition on the property)]TJ --23.9453 -1.2889 TD -0 Tw -(name )Tj -/TT10 1 Tf -2.8472 0 TD -(LIST)Tj -/TT12 1 Tf -2.4004 0 TD -0.1533 Tw -[(. This can happen if a function was somehow defined with an illegal expr)]TJ --5.2476 -1.2889 TD -0 Tw -(definition, such as )Tj -/TT10 1 Tf -8.3086 0 TD -(\(LAMMMMDA \(X\) ...\))Tj -/TT12 1 Tf -10.8018 0 TD -(.)Tj --19.1104 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9544 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2844 0 TD -0.0833 Tw -(= VARS)Tj -/TT12 1 Tf -3.6839 0 TD -0.0344 Tw -(, the definition is stored as the value of the )Tj -/TT10 1 Tf -19.3244 0 TD -0 Tw -(VALUE)Tj -/TT12 1 Tf -3.0005 0 TD -0.0344 Tw -[( property of )]TJ -/TT15 1 Tf -5.6317 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0344 Tw -[(. For)]TJ --37.6801 -1.2889 TD -0.1589 Tw -(other types, the definition is stored in an internal data structure, from where it can be)Tj -0 -1.2222 TD -0 Tw -(retrieved by )Tj -/TT10 1 Tf -5.6294 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(UNSAVEDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --18.7384 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 257.1079 288.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 288.18 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1544 Tw -(Restores the "saved" definition of )Tj -/TT15 1 Tf -15.6819 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1544 Tw -[( as a )]TJ -/TT15 1 Tf -2.6372 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1544 Tw -(, making it be the current definition.)Tj --23.1198 -1.2889 TD -0 Tw -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --6.1274 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.0833 0 TD -(TYPE )Tj -/TT10 1 Tf -3.3916 0 TD -0.3911 Tw -(= FNS)Tj -/TT12 1 Tf -3.3916 0 TD -0.1633 Tw -[( \(or )]TJ -/TT10 1 Tf -2.1006 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(\), )Tj -/TT10 1 Tf -0.9963 0 TD -(UNSAVEDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1633 Tw -[( unsaves the function definition from the )]TJ -/TT10 1 Tf -19.4402 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf --37.6048 -1.2889 TD -0.2967 Tw -(property if any, else )Tj -/TT10 1 Tf -10.2711 0 TD -0 Tw -(CODE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2967 Tw -(, and returns the property name used. )Tj -/TT10 1 Tf -19.6175 0 TD -0 Tw -(UNSAVEDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.2967 Tw -[( also)]TJ --37.6899 -1.2889 TD -0 Tw -(recognizes )Tj -/TT15 1 Tf -4.9502 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -0.0111 Tw -[( = EXPR)]TJ -/TT12 1 Tf -4.2229 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5044 0 TD -(CODE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0044 Tw -(, or )Tj -/TT10 1 Tf -1.6998 0 TD -0 Tw -(LIST)Tj -/TT12 1 Tf -2.4004 0 TD -0.0044 Tw -(, meaning to unsave the definition only from the)Tj --18.5786 -1.2889 TD -0 Tw -(corresponding property only.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -0.9833 0 TD -(DFNFLG)Tj -/TT12 1 Tf -3.6006 0 TD -0.0633 Tw -[( is not )]TJ -/TT10 1 Tf -3.1089 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0633 Tw -[( \(see Chapter 10\), the current definition of )]TJ -/TT15 1 Tf -19.2191 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0633 Tw -(, if any, is saved using)Tj -/TT10 1 Tf --29.9123 -1.2889 TD -0 Tw -(SAVEDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.3767 Tw -[(. Thus one can use )]TJ -/TT10 1 Tf -10.8704 0 TD -0 Tw -(UNSAVEDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.3767 Tw -[( to switch back and forth between two)]TJ --20.4719 -1.2889 TD -0 Tw -(definitions.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOADDEF)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 280.9632 143.04 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 143.04 Tm -([Function])Tj --35.4033 -1.8444 TD -0.3278 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.8357 0 TD -0 Tw -(\(PUTDEF)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.5778 0 TD -(NAME)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.5778 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.5778 0 TD -(\(GETDEF)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.5778 0 TD -(NAME)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.5778 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.5778 0 TD -(SOURCE)Tj -/TT10 1 Tf -3.6006 0 TD -(\)\))Tj -/TT12 1 Tf -1.2002 0 TD -0.3278 Tw -(. )Tj -/TT10 1 Tf -1.4056 0 TD -0 Tw -(LOADDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.3278 Tw -[( is)]TJ --38.7123 -1.2889 TD -0.0344 Tw -(essentially a generalization of )Tj -/TT10 1 Tf -13.4781 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0344 Tw -(, e.g. it enables loading a single record declaration)Tj --17.6788 -1.2889 TD -0.2211 Tw -(from a file. )Tj -/TT10 1 Tf -5.7141 0 TD -0 Tw -(\(LOADDEF)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.4711 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.2211 Tw -[( will give )]TJ -/TT15 1 Tf -5.0115 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.2211 Tw -[( an )]TJ -/TT10 1 Tf -2.0243 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.2211 Tw -[( definition, either obtained from its)]TJ --23.4226 -1.2889 TD -0 Tw -(property list or a file, unless it already has one.)Tj -ET -endstream -endobj -94 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -96 0 obj -<< -/Length 9846 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-27)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CHANGECALLERS)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OLD)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(METHOD)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 313.0702 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0467 Tw -(Finds all of the places where )Tj -/TT15 1 Tf -13.0998 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.0467 Tw -[( is used as any of the types in )]TJ -/TT15 1 Tf -13.5889 0 TD -0 Tw -(TYPES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0467 Tw -[( and changes those)]TJ --31.4896 -1.2889 TD -0.02 Tw -(places to use )Tj -/TT15 1 Tf -5.9267 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.02 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8261 0 TD -0.0489 Tw -(\(CHANGECALLERS NLSETQ ERSETQ\))Tj -/TT12 1 Tf -18.7008 0 TD -0.02 Tw -[( will change all)]TJ --33.2539 -1.2889 TD -0.0289 Tw -(calls to )Tj -/TT10 1 Tf -3.3796 0 TD -0 Tw -(NLSETQ)Tj -/TT12 1 Tf -3.6006 0 TD -0.0289 Tw -[( to be calls to )]TJ -/TT10 1 Tf -6.1205 0 TD -0 Tw -(ERSETQ)Tj -/TT12 1 Tf -3.6006 0 TD -0.0289 Tw -[(. Also changes occurrences of )]TJ -/TT15 1 Tf -13.6421 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.0289 Tw -[( to )]TJ -/TT15 1 Tf -1.4298 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.0289 Tw -[( inside the)]TJ --35.3738 -1.2889 TD -0 Tw -(filecoms of any file, inside record declarations, properties, etc. )Tj -/TT10 1 Tf -0 -2 TD -(CHANGECALLERS)Tj -/TT12 1 Tf -7.8013 0 TD -0.0656 Tw -[( attempts to determine if )]TJ -/TT15 1 Tf -11.464 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.0656 Tw -[( might be used as more than one type; for)]TJ --21.0656 -1.2889 TD -0.1911 Tw -[(example, if it is both a function and a record field. If so, rather than performing the)]TJ -0 -1.2222 TD -0 Tw -(transformation )Tj -/TT15 1 Tf -6.9289 0 TD -(OLD)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3 0 TD -(->)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT15 1 Tf -0.3 0 TD -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.05 Tw -[( automatically, you are allowed to edit all of the places where)]TJ -/TT15 1 Tf --12.3297 -1.2889 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1189 Tw -[( occurs. For each occurrence of )]TJ -/TT15 1 Tf -14.8791 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1189 Tw -(, you are asked whether you want to make the)Tj --18.4797 -1.2889 TD -0.0211 Tw -[(replacement. If you respond with anything except )]TJ -/TT10 1 Tf -22.7446 0 TD -0 Tw -(Yes)Tj -/TT12 1 Tf -1.8003 0 TD -0.0211 Tw -[( or )]TJ -/TT10 1 Tf -1.4831 0 TD -0 Tw -(No)Tj -/TT12 1 Tf -1.2002 0 TD -0.0211 Tw -(, the editor is invoked on the)Tj --27.2282 -1.2889 TD -0 Tw -(expression containing that occurrence.)Tj -0 -2 TD -0.0744 Tw -[(There are two different methods for determining which functions are to be examined. If)]TJ -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(METHOD)Tj -/TT10 1 Tf -3.6006 0 TD -0.1989 Tw -[( = EDITCALLERS)]TJ -/TT12 1 Tf -8.7991 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5833 0 TD -(EDITCALLERS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0833 Tw -[( is used to search )]TJ -/TT15 1 Tf -8.194 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0833 Tw -[( \(see Chapter 16\). If)]TJ -/TT15 1 Tf --30.7786 -1.2889 TD -0 Tw -(METHOD )Tj -/TT10 1 Tf -4.4362 0 TD -0.2356 Tw -(= MASTERSCOPE)Tj -/TT12 1 Tf -8.0368 0 TD -0.0978 Tw -(, then the Masterscope database is used instead. )Tj -/TT15 1 Tf -22.4874 0 TD -0 Tw -(METHOD)Tj -/TT10 1 Tf -3.6006 0 TD -0.2356 Tc -( =)Tj --38.5611 -1.2889 TD -0 Tc -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1822 Tw -[( defaults to )]TJ -/TT10 1 Tf -5.7356 0 TD -0 Tw -(MASTERSCOPE)Tj -/TT12 1 Tf -6.6011 0 TD -0.1822 Tw -[( if the value of the variable )]TJ -/TT10 1 Tf -13.3151 0 TD -0 Tw -(DEFAULTRENAMEMETHOD)Tj -/TT12 1 Tf -11.4019 0 TD -0.1822 Tw -[( is)]TJ -/TT10 1 Tf --38.854 -1.2889 TD -0 Tw -(MASTERSCOPE)Tj -/TT12 1 Tf -6.6011 0 TD -( and a Masterscope database exists, otherwise it defaults to )Tj -/TT10 1 Tf -26.2715 0 TD -(EDITCALLERS)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --42.1403 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RENAME)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OLD)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NEW)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(METHOD)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 275.2702 354.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 354.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.27 Tw -(First performs )Tj -/TT10 1 Tf -7.0879 0 TD -0 Tw -(\(COPYDEF)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.52 0 TD -(OLD)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.52 0 TD -(NEW)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.52 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.27 Tw -[( for all )]TJ -/TT15 1 Tf -3.916 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.27 Tw -[( inside )]TJ -/TT15 1 Tf -3.7177 0 TD -0 Tw -(TYPES)Tj -/TT12 1 Tf -3.0005 0 TD -0.27 Tw -[(. It then calls)]TJ -/TT10 1 Tf --33.0843 -1.2889 TD -0 Tw -(CHANGECALLERS)Tj -/TT12 1 Tf -7.8013 0 TD -0.13 Tw -[( to change all occurrences of )]TJ -/TT15 1 Tf -13.4905 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.13 Tw -[( to )]TJ -/TT15 1 Tf -1.6321 0 TD -0 Tw -(NEW)Tj -/TT12 1 Tf -1.8003 0 TD -0.13 Tw -(, and then "deletes" )Tj -/TT15 1 Tf -9.2632 0 TD -0 Tw -(OLD)Tj -/TT12 1 Tf -1.8003 0 TD -0.13 Tw -[( with)]TJ -/TT10 1 Tf --37.5878 -1.2889 TD -0 Tw -(DELDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.2011 Tw -[(. For example, if you have a function )]TJ -/TT10 1 Tf -18.4682 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.2011 Tw -[( which you now wish to call )]TJ -/TT10 1 Tf -14.0865 0 TD -0 Tw -(FIE)Tj -/TT12 1 Tf -1.8003 0 TD -(,)Tj --39.7559 -1.2889 TD -0.06 Tw -(simply perform )Tj -/TT10 1 Tf -7.2977 0 TD -0.1444 Tw -(\(RENAME FOO FIE\))Tj -/TT12 1 Tf -11.0906 0 TD -0.06 Tw -(, and )Tj -/TT10 1 Tf -2.5629 0 TD -0 Tw -(FIE)Tj -/TT12 1 Tf -1.8003 0 TD -0.06 Tw -[( will be given )]TJ -/TT10 1 Tf -6.4524 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.06 Tw -(s definition, and all)Tj --31.0042 -1.2889 TD -0 Tw -(places that )Tj -/TT10 1 Tf -4.9731 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( are called will be changed to call )Tj -/TT10 1 Tf -14.8809 0 TD -(FIE)Tj -/TT12 1 Tf -1.8003 0 TD -( instead.)Tj -/TT15 1 Tf --23.4546 -2.0667 TD -(METHOD)Tj -/TT12 1 Tf -3.6006 0 TD -( is interpreted the same as the )Tj -/TT15 1 Tf -13.4131 0 TD -(METHOD)Tj -/TT12 1 Tf -3.6006 0 TD -( argument to )Tj -/TT10 1 Tf -5.9463 0 TD -(CHANGECALLERS)Tj -/TT12 1 Tf -7.8013 0 TD -(, above.)Tj -/TT10 1 Tf --37.0285 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COMPARE)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -2.4 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -3.5996 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCE)Tj -3.6 -0.2222 TD -(2)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 313.0508 250.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 250.12 Tm -([Function])Tj --35.4033 -2.0667 TD -0.36 Tw -(Compares the definition of )Tj -/TT15 1 Tf -13.5748 0 TD -0 Tw -(NAME)Tj -2.4008 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.36 Tw -[( with that of )]TJ -/TT15 1 Tf -7.0865 0 TD -0 Tw -(NAME)Tj -2.3991 -0.2222 TD -(2)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.36 Tw -(, by calling )Tj -/TT10 1 Tf -6.1445 0 TD -0 Tw -(COMPARELISTS)Tj -/TT12 1 Tf --32.8056 -1.5111 TD -0.0311 Tw -(\(Chapter 3\) on )Tj -/TT10 1 Tf -7.0107 0 TD -0 Tw -(\(GETDEF)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(NAME)Tj -2.3998 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(SOURCE)Tj -3.5996 -0.2222 TD -(1)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0311 Tw -[( and )]TJ -/TT10 1 Tf -2.2551 0 TD -0 Tw -(\(GETDEF)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(NAME)Tj -2.3997 -0.2222 TD -(2)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.2811 0 TD -(SOURCE)Tj -3.5996 -0.2222 TD -(2)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(,)Tj --39.7534 -1.5111 TD -(which prints their differences on the terminal.)Tj -0 -2 TD -0.0078 Tw -(For example, if the current value of the variable )Tj -/TT10 1 Tf -21.3298 0 TD -0 Tw -(A)Tj -/TT12 1 Tf -0.6001 0 TD -0.0078 Tw -[( is )]TJ -/TT10 1 Tf -1.2304 0 TD -0.0178 Tw -(\(A B C \(D E F\) G\))Tj -/TT12 1 Tf -10.3083 0 TD -0.0078 Tw -(, and the value)Tj --33.4686 -1.2889 TD -0 Tw -(of the variable )Tj -/TT10 1 Tf -6.5903 0 TD -(B)Tj -/TT12 1 Tf -0.6001 0 TD -( on the file )Tj -/TT10 1 Tf -4.9092 0 TD -(FOO)Tj -/TT12 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(\(A B C \(D F E\) G\))Tj -/TT12 1 Tf -10.2017 0 TD -(, then:)Tj -/TT13 1 Tf --23.5837 -2.0667 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(COMPARE A B VARS CURRENT FOO\))Tj --0.9868 -1 TD -(A from CURRENT and B from TEST differ:)Tj -T* -(\(E -> F\) \(F -> E\) )Tj -T* -(T)Tj --8 -2.3267 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COMPAREDEFS)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCES)Tj -/TT10 1 Tf -4.2007 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 265.3649 108.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 108.18 Tm -([Function])Tj --35.4033 -1.8444 TD -(Calls )Tj -/TT10 1 Tf -2.556 0 TD -(COMPARELISTS)Tj -/TT12 1 Tf -7.2012 0 TD -0.0911 Tw -[( \(Chapter 3\) on all pairs of definitions of )]TJ -/TT15 1 Tf -18.7629 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0911 Tw -[( as a )]TJ -/TT15 1 Tf -2.4472 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0911 Tw -[( obtained)]TJ --35.7679 -1.2889 TD -0 Tw -(from the various )Tj -/TT15 1 Tf -7.6177 0 TD -(SOURCES)Tj -/TT12 1 Tf -4.2007 0 TD -( \(interpreted as a list of source specifications\). )Tj -ET -endstream -endobj -97 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -99 0 obj -<< -/Length 7007 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-28)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Defining New File Manager Types)Tj -/TT12 1 Tf -9 0 0 9 126 544.54 Tm -0.3289 Tw -(All manipulation of typed definitions in the file manager is done using the type-independent)Tj -0 -1.2222 TD -0 Tw -(functions )Tj -/TT10 1 Tf -4.4509 0 TD -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.57 0 TD -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.07 Tw -[(, etc. Therefore, to define a new file manager type, it is only necessary to)]TJ --12.222 -1.2889 TD -0.0867 Tw -(specify \(via the function )Tj -/TT10 1 Tf -11.2578 0 TD -0 Tw -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.6011 0 TD -0.0867 Tw -(\) what these functions should do when dealing with a typed)Tj --17.8589 -1.2889 TD -0.1367 Tw -[(definition of the new type. Each file manager type has the following properties, whose values are)]TJ -0 -1.2222 TD -0 Tw -(functions or lists of functions:)Tj -0 -2.8889 TD -0.1489 Tw -(These functions are defined to take a )Tj -/TT15 1 Tf -17.4929 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1489 Tw -[( argument so that you may have the same function for)]TJ --19.8933 -1.2889 TD -0 Tw -(more than one type.)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(GETDEF)Tj -/TT6 1 Tf -10 0 0 10 182.4 439.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 439.4 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0822 Tw -(Value is a function of three arguments, )Tj -/TT15 1 Tf -17.9808 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5822 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0822 Tw -(, and )Tj -/TT15 1 Tf -2.6073 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0822 Tw -(, which should return)Tj --30.1718 -1.2889 TD -0.1256 Tw -(the current definition of )Tj -/TT15 1 Tf -11.3245 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1256 Tw -[( as a type )]TJ -/TT15 1 Tf -4.8885 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1256 Tw -[(. Used by )]TJ -/TT10 1 Tf -5.1531 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1256 Tw -[( \(see the Functions for)]TJ --29.7674 -1.2889 TD -0 Tw -(Manipulating Typed Definitions section\), which passes its )Tj -/TT15 1 Tf -25.8984 0 TD -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -( argument.)Tj --30.0991 -2.0667 TD -0.02 Tw -(If there is no )Tj -/TT10 1 Tf -5.8539 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.02 Tw -[( property, a file manager command for dumping )]TJ -/TT15 1 Tf -21.9476 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.02 Tw -[( is created \(by)]TJ -/TT10 1 Tf --33.8025 -1.2889 TD -0 Tw -(MAKENEWCOM)Tj -/TT12 1 Tf -6.001 0 TD -0.0167 Tw -[(\). This command is then used to write the definition of )]TJ -/TT15 1 Tf -24.7371 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0167 Tw -[( as a type )]TJ -/TT15 1 Tf -4.4529 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf --37.5914 -1.2889 TD -0.1244 Tw -(onto the file )Tj -/TT10 1 Tf -5.9046 0 TD -0 Tw -(FILEPKG.SCRATCH)Tj -/TT12 1 Tf -9.0015 0 TD -0.1244 Tw -[( \(in Medley, this file is created on the )]TJ -/TT10 1 Tf -17.6688 0 TD -0 Tw -({CORE})Tj -/TT12 1 Tf -3.6006 0 TD -0.1244 Tw -[( device\).)]TJ --36.1755 -1.2889 TD -0 Tw -(This expression is then read back in and returned as the current definition.)Tj -0 -2 TD -0.1611 Tw -(In some situations, the function )Tj -/TT10 1 Tf -14.9633 0 TD -0 Tw -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1611 Tw -[( needs to call )]TJ -/TT10 1 Tf -6.6171 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1611 Tw -[( to determine whether a)]TJ --28.7815 -1.2889 TD -0.2922 Tw -[(definition exists. In this case, )]TJ -/TT15 1 Tf -14.934 0 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2922 Tw -[( will include the symbol )]TJ -/TT10 1 Tf -12.3591 0 TD -0 Tw -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.2922 Tw -(, and it is)Tj --35.0943 -1.2889 TD -0.1678 Tw -(permissable for a )Tj -/TT10 1 Tf -8.3471 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1678 Tw -[( function to return )]TJ -/TT10 1 Tf -9.0305 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1678 Tw -[( or )]TJ -/TT10 1 Tf -1.7765 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1678 Tw -(, rather than creating a complex)Tj --25.155 -1.2889 TD -0 Tw -(structure which will not be used.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(NULLDEF)Tj -/TT6 1 Tf -10 0 0 10 187.8 271.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 271.06 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.3267 Tw -(The value of the )Tj -/TT10 1 Tf -8.6846 0 TD -0 Tw -(NULLDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.3267 Tw -[( property is returned by )]TJ -/TT10 1 Tf -12.4771 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.3267 Tw -[( \(see the Functions for)]TJ --28.9629 -1.2889 TD -0.1622 Tw -(Manipulating Typed Definitions section\) when there is no definition and the )Tj -/TT10 1 Tf -35.8006 0 TD -0 Tw -(NOERROR)Tj -/TT12 1 Tf --35.8006 -1.2889 TD -(option is supplied. For example, the )Tj -/TT10 1 Tf -16.3911 0 TD -(NULLDEF)Tj -/TT12 1 Tf -4.2007 0 TD -( of )Tj -/TT10 1 Tf -1.3789 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT17 1 Tf --31.8532 -2.5489 TD -(FILEGETDEF)Tj -/TT6 1 Tf -10 0 0 10 204 208.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 208.32 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0067 Tw -(This enables you to provide a way of obtaining definitions from a file that is more efficient)Tj -0 -1.2222 TD -0.12 Tw -(than the default procedure used by )Tj -/TT10 1 Tf -16.5193 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.12 Tw -[( \(see the Functions for Manipulating Typed)]TJ --20.1199 -1.2889 TD -0.2489 Tw -[(Definitions section\). Value is a function of four arguments, )]TJ -/TT15 1 Tf -28.8536 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.7489 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.7489 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2489 Tw -(, and)Tj -/TT15 1 Tf --37.5526 -1.2889 TD -0 Tw -(OPTIONS)Tj -/TT12 1 Tf -4.2007 0 TD -0.2944 Tw -[(. The function is applied by )]TJ -/TT10 1 Tf -14.6402 0 TD -0 Tw -(GETDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.2944 Tw -[( when it is determined that a typed)]TJ --22.4415 -1.2889 TD -0.0733 Tw -[(definition is needed from a particular file. The function must open and search the given)]TJ -0 -1.2222 TD -0 Tw -(file and return any )Tj -/TT15 1 Tf -8.5054 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( definition for )Tj -/TT15 1 Tf -6.356 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( that it finds.)Tj -/TT17 1 Tf --22.3288 -2.5489 TD -(CANFILEDEF)Tj -/TT6 1 Tf -10 0 0 10 204 111.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 111.98 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0456 Tw -(If the value of this property is non-)Tj -/TT10 1 Tf -15.7232 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0456 Tw -(, this indicates that definitions of this file manager)Tj --17.5235 -1.2889 TD -0.0633 Tw -(type are not loaded when a file is loaded with )Tj -/TT10 1 Tf -21.1182 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.0633 Tw -[( \(see the Loading Files section\).)]TJ --25.919 -1.2889 TD -0 Tw -(The default is )Tj -/TT10 1 Tf -6.2817 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(. Initially, only )Tj -/TT10 1 Tf -6.9404 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -( has this property set to non-)Tj -/TT10 1 Tf -12.6724 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -100 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -102 0 obj -<< -/Length 8227 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-29)Tj -/TT17 1 Tf --39.6667 60.4667 TD -(PUTDEF)Tj -/TT6 1 Tf -10 0 0 10 134.4 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 568.2 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.1922 Tw -(Value is a function of three arguments, )Tj -/TT15 1 Tf -18.7508 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.6922 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1922 Tw -(, and )Tj -/TT15 1 Tf -2.8273 0 TD -0 Tw -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -0.1922 Tw -(, which should)Tj --33.0721 -1.2889 TD -0 Tw -(store )Tj -/TT15 1 Tf -2.5299 0 TD -(DEFINITION)Tj -/TT12 1 Tf -6.001 0 TD -0.11 Tw -[( as the definition of )]TJ -/TT15 1 Tf -9.322 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.11 Tw -[( as a type )]TJ -/TT15 1 Tf -4.8262 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.11 Tw -[(. Used by )]TJ -/TT10 1 Tf -5.0909 0 TD -0 Tw -(PUTDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.11 Tw -[( \(see the)]TJ --36.1713 -1.2889 TD -0 Tw -(Functions for Manipulating Typed Definitions section\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(HASDEF)Tj -/TT6 1 Tf -10 0 0 10 134.4 506.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 506.06 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.1289 Tw -(Value is a function of three arguments, )Tj -/TT15 1 Tf -18.3075 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.6289 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1289 Tw -(, and )Tj -/TT15 1 Tf -2.7006 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.1289 Tw -(, which should return)Tj -/TT10 1 Tf --30.0384 -1.2889 TD -0 Tw -(\(OR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.26 0 TD -(NAME)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.26 0 TD -(T\))Tj -/TT12 1 Tf -1.2002 0 TD -0.01 Tw -[( if )]TJ -/TT15 1 Tf -1.144 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.01 Tw -[( is the name of something of type )]TJ -/TT15 1 Tf -15.0151 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.01 Tw -(. )Tj -/TT15 1 Tf -0.77 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.01 Tw -[( is as interpreted by)]TJ -/TT10 1 Tf --31.2513 -1.2889 TD -0 Tw -(HASDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.1 Tw -[( \(see the Functions for Manipulating Typed Definitions section\), which uses this)]TJ --3.6006 -1.2889 TD -0 Tw -(property.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(EDITDEF)Tj -/TT6 1 Tf -10 0 0 10 139.8 432.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 432.32 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.2578 Tw -(Value is a function of four arguments, )Tj -/TT15 1 Tf -18.8254 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.7578 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.7578 0 TD -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.2578 Tw -(, and )Tj -/TT15 1 Tf -2.9584 0 TD -0 Tw -(EDITCOMS)Tj -/TT12 1 Tf -4.8008 0 TD -0.2578 Tw -(, which)Tj --36.5016 -1.2889 TD -0.0978 Tw -(should edit the definition of )Tj -/TT15 1 Tf -13.1007 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0978 Tw -[( as a type )]TJ -/TT15 1 Tf -4.7773 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0978 Tw -[( from the source )]TJ -/TT15 1 Tf -7.8257 0 TD -0 Tw -(SOURCE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0978 Tw -(, interpreting)Tj --34.1051 -1.2889 TD -0.0878 Tw -(the edit commands )Tj -/TT15 1 Tf -8.9796 0 TD -0 Tw -(EDITCOMS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0878 Tw -[(. If sucessful, should return )]TJ -/TT15 1 Tf -13.0579 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0878 Tw -[( \(or a spelling-corrected)]TJ -/TT15 1 Tf --29.2387 -1.2889 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.2667 Tw -[(\). If it returns )]TJ -/TT10 1 Tf -7.6576 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2667 Tw -[(, the "default" editor is called. Used by )]TJ -/TT10 1 Tf -19.8019 0 TD -0 Tw -(EDITDEF)Tj -/TT12 1 Tf -4.2007 0 TD -0.2667 Tw -[( \(see the)]TJ --35.8608 -1.2889 TD -0 Tw -(Functions for Manipulating Typed Definitions section\).)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(DELDEF)Tj -/TT6 1 Tf -10 0 0 10 134.4 346.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 346.98 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0933 Tw -(Value is a function of two arguments, )Tj -/TT15 1 Tf -17.5034 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0933 Tw -(, and )Tj -/TT15 1 Tf -2.6295 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0933 Tw -(, which removes the definition of)Tj -/TT15 1 Tf --24.9338 -1.2889 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.25 Tw -[( as a )]TJ -/TT15 1 Tf -2.9238 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.25 Tw -[( that is currently in effect. Used by )]TJ -/TT10 1 Tf -17.9385 0 TD -0 Tw -(DELDEF)Tj -/TT12 1 Tf -3.6006 0 TD -0.25 Tw -[( \(see the Functions for)]TJ --29.2637 -1.2889 TD -0 Tw -(Manipulating Typed Definitions section\). )Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(NEWCOM)Tj -/TT6 1 Tf -10 0 0 10 134.4 284.84 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 284.84 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.05 Tw -(Value is a function of four arguments, )Tj -/TT15 1 Tf -17.371 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.55 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.55 0 TD -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.05 Tw -(, and )Tj -/TT15 1 Tf -2.5429 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.05 Tw -[(. Specifies how)]TJ --33.0158 -1.2889 TD -0.1356 Tw -(to make a new \(instance of a\) file manager command to dump )Tj -/TT15 1 Tf -29.2917 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1356 Tw -(, an object of type)Tj -/TT15 1 Tf --31.6921 -1.2889 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -[(. The function should return the new file manager command. Used by )]TJ -/TT10 1 Tf -32.1982 0 TD -0 Tw -(ADDTOFILE)Tj -/TT12 1 Tf --34.5986 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(SHOWDEF)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj --6.1436 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.2077 0 TD -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.2878 Tw -[( is non-)]TJ -/TT10 1 Tf -3.8334 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2878 Tw -(, this means that you specified )Tj -/TT15 1 Tf -15.3595 0 TD -0 Tw -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.2878 Tw -[( as the filevar in)]TJ --31.8024 -1.2889 TD -0 Tw -(interaction with )Tj -/TT10 1 Tf -7.2954 0 TD -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -( \(see the FileVars section\).)Tj --13.8965 -2.0667 TD -0.3456 Tw -(If no )Tj -/TT10 1 Tf -2.989 0 TD -0 Tw -(NEWCOM)Tj -/TT12 1 Tf -3.6006 0 TD -0.3456 Tw -[( is specified, the default is to call )]TJ -/TT10 1 Tf -17.325 0 TD -0 Tw -(DEFAULTMAKENEWCOM)Tj -/TT12 1 Tf -10.2017 0 TD -0.3456 Tw -(, which will)Tj --34.1162 -1.2889 TD -0.0833 Tw -(construct and return a command of the form )Tj -/TT10 1 Tf -20.6007 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3333 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0833 Tw -[(. You can advise or redefine)]TJ -/TT10 1 Tf --26.9351 -1.2889 TD -0 Tw -(DEFAULTMAKENEWCOM)Tj -/TT12 1 Tf -10.2017 0 TD -( . )Tj -/TT17 1 Tf --12.8683 -2.5489 TD -(WHENCHANGED)Tj -/TT6 1 Tf -10 0 0 10 161.4 138.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 367.72 138.5 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.1811 Tw -(Value is a list of functions to be applied to )Tj -/TT15 1 Tf -20.6134 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.6811 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1811 Tw -(, and )Tj -/TT15 1 Tf -2.8051 0 TD -0 Tw -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -0.1811 Tw -[( when )]TJ -/TT15 1 Tf -3.3393 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1811 Tw -(, an)Tj --38.2406 -1.2889 TD -0.2689 Tw -(instance of type )Tj -/TT15 1 Tf -8.0259 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2689 Tw -(, is changed or defined \(see )Tj -/TT10 1 Tf -13.8736 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.2689 Tw -(, in the Marking)Tj --32.1012 -1.2889 TD -0.1067 Tw -[(Changes section\). Used for various applications, e.g. when an object of type )]TJ -/TT10 1 Tf -35.1972 0 TD -0 Tw -(I.S.OPRS)Tj -/TT12 1 Tf --35.1972 -1.2889 TD -(changes, it is necessary to clear the corresponding translatons from )Tj -/TT10 1 Tf -29.8042 0 TD -(CLISPARRAY)Tj -/TT12 1 Tf -6.001 0 TD -(.)Tj --35.8052 -2.0667 TD -(The )Tj -/TT10 1 Tf -1.9927 0 TD -(WHENCHANGED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0689 Tw -[( functions are called before the object is marked as changed, so that it)]TJ --8.5938 -1.2889 TD -0.0467 Tw -(can, in fact, decide that the object is )Tj -/TT8 1 Tf -16.2083 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0467 Tw -[( to be marked as changed, and execute )]TJ -/TT10 1 Tf -17.6482 0 TD -0 Tw -(\(RETFROM)Tj --35.1895 -1.2889 TD -(MARKASCHANGED\))Tj -/TT12 1 Tf -9.0015 0 TD -(.)Tj -ET -endstream -endobj -103 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -105 0 obj -<< -/Length 6455 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-30)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -(The )Tj -/TT15 1 Tf -1.9238 0 TD -(REASON)Tj -/TT12 1 Tf -3.6006 0 TD -( argument passed to )Tj -/TT10 1 Tf -9.2349 0 TD -(WHENCHANGED)Tj -/TT12 1 Tf -6.6011 0 TD -( functions is either )Tj -/TT10 1 Tf -8.3979 0 TD -(DEFINED)Tj -/TT12 1 Tf -4.2007 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(CHANGED)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj -/TT17 1 Tf --42.2673 -2.5489 TD -(WHENFILED)Tj -/TT6 1 Tf -10 0 0 10 198.6079 546.6 Tm --0.0006 Tc -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 546.6 Tm -0 Tc -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0122 Tw -(Value is a list of functions to be applied to )Tj -/TT15 1 Tf -18.9245 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5122 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -(, and )Tj -/TT15 1 Tf -2.4673 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -[( when )]TJ -/TT15 1 Tf -3.0015 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -(, an instance)Tj --34.5071 -1.2889 TD -0 Tw -(of type )Tj -/TT15 1 Tf -3.3413 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(, is added to )Tj -/TT15 1 Tf -5.6484 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT17 1 Tf --16.4572 -2.5489 TD -(WHENUNFILED)Tj -/TT6 1 Tf -10 0 0 10 209.4 495.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 495.46 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0122 Tw -(Value is a list of functions to be applied to )Tj -/TT15 1 Tf -18.9245 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5122 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -(, and )Tj -/TT15 1 Tf -2.4673 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -[( when )]TJ -/TT15 1 Tf -3.0015 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -(, an instance)Tj --34.5071 -1.2889 TD -0 Tw -(of type )Tj -/TT15 1 Tf -3.3413 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(, is removed from )Tj -/TT15 1 Tf -8.0791 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT17 1 Tf --18.8879 -2.5489 TD -(DESCRIPTION)Tj -/TT6 1 Tf -10 0 0 10 209.4 444.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 415.72 444.32 Tm -([File Manager Type Property])Tj --26.8578 -1.8444 TD -0.0722 Tw -[(Value is a string which describes instances of this type. For example, for type )]TJ -/TT10 1 Tf -35.5487 0 TD -0 Tw -(RECORDS)Tj -/TT12 1 Tf -4.2007 0 TD -(,)Tj --39.7494 -1.2889 TD -(the value of )Tj -/TT10 1 Tf -5.4541 0 TD -(DESCRIPTION)Tj -/TT12 1 Tf -6.6011 0 TD -( is the string )Tj -/TT10 1 Tf -5.6763 0 TD -("record declarations")Tj -/TT12 1 Tf -12.6021 0 TD -(.)Tj --35.6668 -2.9556 TD -0.0811 Tw -(The function )Tj -/TT10 1 Tf -6.0431 0 TD -0 Tw -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.6011 0 TD -0.0811 Tw -[( is used to define new file manager types, or to change the properties of)]TJ --12.6442 -1.2889 TD -0.1111 Tw -[(existing types. It is possible to redefine the attributes of system file manager types, such as )]TJ -/TT10 1 Tf -42.2317 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.1111 Tw -[( or)]TJ -/TT10 1 Tf --44.032 -1.2889 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --0.3338 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3996 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 368.7009 343.38 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 449.99 343.38 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -0.0144 Tw -(Nospread function for defining new file manager types, or changing properties of existing)Tj -0 -1.2222 TD -0.0444 Tw -(file manager types. )Tj -/TT15 1 Tf -9.1031 0 TD -0 Tw -(PROP)Tj -2.4003 -0.2222 TD -(i)Tj -/TT10 1 Tf -0.6 0.2222 TD -( )Tj -/TT12 1 Tf -0.7068 0 TD -0.0444 Tw -(is one of the property names given above; )Tj -/TT15 1 Tf -19.3712 0 TD -0 Tw -(VAL)Tj -1.7987 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0444 Tw -[( is the value)]TJ --34.58 -1.5111 TD -0 Tw -(to be given to that property. Returns )Tj -/TT15 1 Tf -16.6104 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --19.0107 -2.0667 TD -(\(FILEPKGTYPE)Tj -/TT19 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -( returns the value of the property )Tj -/TT15 1 Tf -14.9448 0 TD -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -(, without changing it.)Tj -/TT10 1 Tf --30.4473 -2.0667 TD -(\(FILEPKGTYPE)Tj -/TT19 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.3989 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1489 Tw -[( returns a property list of all of the defined properties of )]TJ -/TT15 1 Tf -26.751 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(,)Tj --39.752 -1.2889 TD -(using the property names as keys.)Tj -0 -2 TD -(Specifying )Tj -/TT15 1 Tf -5.056 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1478 Tw -[( as the symbol )]TJ -/TT10 1 Tf -7.1551 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1478 Tw -[( can be used to define one file manager type as a)]TJ --17.0118 -1.2889 TD -0.0167 Tw -[(synonym of another. For example, )]TJ -/TT10 1 Tf -15.7641 0 TD -0.0389 Tw -(\(FILEPKGTYPE R TYPE RECORDS\))Tj -/TT12 1 Tf -18.7197 0 TD -0.0167 Tw -[( defines )]TJ -/TT10 1 Tf -3.7321 0 TD -0 Tw -(R)Tj -/TT12 1 Tf -0.6001 0 TD -0.0167 Tw -[( as)]TJ --38.8159 -1.2889 TD -0 Tw -(a synonym for the file manager type )Tj -/TT10 1 Tf -16.2915 0 TD -(RECORDS)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 167.24 Tm -(File Manager Commands)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 164.53 m -558.01 164.53 l -S -BT -/TT12 1 Tf -9 0 0 9 126 142.58 Tm -0.2322 Tw -(The basic mechanism for creating symbolic files is the function )Tj -/TT10 1 Tf -30.2373 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2322 Tw -[( \(see the Storing Files)]TJ --35.038 -1.2889 TD -0.0611 Tw -[(section\). For each file, the file manager has a data structure known as the "filecoms", which specifies)]TJ -0 -1.2222 TD -0.0356 Tw -[(what typed descriptions are contained in the file. A filecoms is a list of file manager commands, each)]TJ -T* -0.0767 Tw -[(of which specifies objects of a certain file manager type which should be dumped. For example, the)]TJ -T* -0 Tw -(filecoms)Tj -/TT10 1 Tf -10.6667 -1.7111 TD -(\(\(FNS FOO\))Tj -0 -1 TD -( \(VARS FOO BAR BAZ\))Tj -T* -( \(RECORDS XYZZY\)\))Tj -ET -endstream -endobj -106 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -108 0 obj -<< -/Length 8082 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-31)Tj -/TT12 1 Tf --42.3333 60.6156 TD -0.0767 Tw -(has a )Tj -/TT10 1 Tf -2.6592 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0767 Tw -(, a )Tj -/TT10 1 Tf -1.4033 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0767 Tw -(, and a )Tj -/TT10 1 Tf -3.4229 0 TD -0 Tw -(RECORDS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0767 Tw -[( file manager command. This filecoms specifies that the function)]TJ --15.8868 -1.2889 TD -0.1211 Tw -(definition for )Tj -/TT10 1 Tf -6.3482 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.1211 Tw -(, the variable values of )Tj -/TT10 1 Tf -10.8077 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6211 0 TD -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1211 Tw -(, and )Tj -/TT10 1 Tf -2.6851 0 TD -0 Tw -(BAZ)Tj -/TT12 1 Tf -1.8003 0 TD -0.1211 Tw -(, and the record declaration for )Tj -/TT10 1 Tf -14.6651 0 TD -0 Tw -(XYZZY)Tj -/TT12 1 Tf --42.3284 -1.2889 TD -(should be dumped.)Tj -0 -2.8889 TD -0.1722 Tw -(By convention, the filecoms of a file )Tj -/TT15 1 Tf -17.166 0 TD -0 Tw -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.1722 Tw -[( is stored as the value of the symbol )]TJ -/TT15 1 Tf -17.5637 0 TD -0 Tw -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1722 Tw -[(. For example,)]TJ -/TT10 1 Tf --38.3303 -1.2889 TD -0.0511 Tw -(\(MAKEFILE FOO.;27\))Tj -/TT12 1 Tf -11.453 0 TD -0.0211 Tw -[( will use the value of )]TJ -/TT10 1 Tf -9.5437 0 TD -0 Tw -(FOOCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0211 Tw -[( as the filecoms. This variable can be directly)]TJ --25.1973 -1.2889 TD -0.0633 Tw -(manipulated, but the file manager contains facilities which make constructing and updating filecoms)Tj -0 -1.2222 TD -0 Tw -(easier, and in some cases automatic \(see the Functions for Manipulating File Command Lists section\).)Tj -0 -2.8889 TD -0.3533 Tw -(A file manager command is an instruction to )Tj -/TT10 1 Tf -22.8208 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.3533 Tw -[( to perform an explicit, well-defined)]TJ --27.6216 -1.2889 TD -0.0611 Tw -[(operation, usually printing an expression. Usually there is a one-to-one correspondence between file)]TJ -0 -1.2222 TD -0.2433 Tw -(manager types and file manager commands; for each file manager type, there is a file manager)Tj -T* -0.0844 Tw -(command which is used for writing objects of that type to a file, and each file manager command is)Tj -T* -0.0389 Tw -[(used to write objects of a particular type. However, in some cases, the same file manager type can be)]TJ -T* -0.1789 Tw -[(dumped by several different file manager commands. For example, the file manager commands)]TJ -/TT10 1 Tf -T* -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5189 0 TD -(IFPROP)Tj -/TT12 1 Tf -3.6006 0 TD -0.0189 Tw -(, and )Tj -/TT10 1 Tf -2.4806 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0189 Tw -[( all dump out objects with the file manager type )]TJ -/TT10 1 Tf -21.6215 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0189 Tw -[(. This means if you)]TJ --36.623 -1.2889 TD -0.03 Tw -(change an object of file manager type )Tj -/TT10 1 Tf -16.8975 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.03 Tw -[( via )]TJ -/TT10 1 Tf -1.916 0 TD -0 Tw -(EDITP)Tj -/TT12 1 Tf -3.0005 0 TD -0.03 Tw -(, a typed-in call to )Tj -/TT10 1 Tf -8.3272 0 TD -0 Tw -(PUTPROP)Tj -/TT12 1 Tf -4.2007 0 TD -0.03 Tw -(, or via an explicit)Tj --37.3424 -1.2889 TD -0.0422 Tw -(call to )Tj -/TT10 1 Tf -2.9824 0 TD -0 Tw -(MARKASCHANGED)Tj -/TT12 1 Tf -7.8013 0 TD -0.0422 Tw -[(, this object can be written out with any of the above three commands. Thus,)]TJ --10.7837 -1.2889 TD -0.1111 Tw -(when the file manager attempts to determine whether this typed object is contained on a particular)Tj -0 -1.2222 TD -0.0456 Tw -(file, it must look at instances of all three file manager commands )Tj -/TT10 1 Tf -29.2439 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5456 0 TD -(IFPROP)Tj -/TT12 1 Tf -3.6006 0 TD -0.0456 Tw -(, and )Tj -/TT10 1 Tf -2.534 0 TD -0 Tw -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0456 Tw -(, to see if)Tj --41.3249 -1.2889 TD -0.1333 Tw -[(the corresponding atom and property are specified. It is also permissible for a single file manager)]TJ -0 -1.2222 TD -0.0711 Tw -[(command to dump several different file manager types. For example, you can define a file manager)]TJ -T* -0.1667 Tw -[(command which dumps both a function definition and its macro. Conversely, some file manager)]TJ -T* -0 Tw -(comands do not dump any file manager types at all, such as the )Tj -/TT10 1 Tf -28.3833 0 TD -(E)Tj -/TT12 1 Tf -0.6001 0 TD -( command. )Tj --28.9834 -2.9556 TD -0.09 Tw -(For each file manager command, the file manager must be able to determine what typed definitions)Tj -0 -1.2222 TD -0.0622 Tw -(the command will cause to be printed so that the file manager can determine on what file \(if any\) an)Tj -T* -0.2478 Tw -[(object of a given type is contained \(by searching through the filecoms\). Similarly, for each file)]TJ -T* -0.0778 Tw -(manager type, the file manager must be able to construct a command that will print out an object of)Tj -T* -0.1478 Tw -[(that type. In other words, the file manager must be able to map file manager commands into file)]TJ -T* -0.01 Tw -[(manager types, and vice versa. Information can be provided to the file manager about a particular file)]TJ -T* -0.1411 Tw -(manager command via the function )Tj -/TT10 1 Tf -16.749 0 TD -0 Tw -(FILEPKGCOM)Tj -/TT12 1 Tf -6.001 0 TD -0.1411 Tw -[( \(see the Defining New File Manager Commands)]TJ --22.75 -1.2889 TD -0.0289 Tw -(section\), and information about a particular file manager type via the function )Tj -/TT10 1 Tf -35.0654 0 TD -0 Tw -(FILEPKGTYPE)Tj -/TT12 1 Tf -6.6011 0 TD -0.0289 Tw -[( \(see the)]TJ --41.6665 -1.2889 TD -0.0244 Tw -[(prior section\). In the absence of other information, the default is simply that a file manager command)]TJ -0 -1.2222 TD -0.09 Tw -(of the form )Tj -/TT10 1 Tf -5.4429 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.8145 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.09 Tw -[( prints out the definition of )]TJ -/TT15 1 Tf -12.7324 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.09 Tw -[( as a type )]TJ -/TT15 1 Tf -5.0862 0 TD -0 Tw -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.09 Tw -(, and, conversely, if )Tj -/TT15 1 Tf -9.1876 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.09 Tw -[( is an)]TJ --42.8652 -1.2889 TD -0 Tw -(object of type )Tj -/TT15 1 Tf -6.1733 0 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -(, then )Tj -/TT15 1 Tf -2.7192 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( can be written out by a command of the form )Tj -/TT10 1 Tf -20.4971 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.6001 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(.)Tj --37.1909 -2.9556 TD -0.2556 Tw -(If a file manager function is given a command or type that is not defined, it attempts spelling)Tj -0 -1.2222 TD -0.0567 Tw -(correction using )Tj -/TT10 1 Tf -7.5171 0 TD -0 Tw -(FILEPKGCOMSPLST)Tj -/TT12 1 Tf -9.0015 0 TD -0.0567 Tw -[( as a spelling list \(unless )]TJ -/TT10 1 Tf -11.2467 0 TD -0 Tw -(DWIMFLG)Tj -/TT12 1 Tf -4.2007 0 TD -0.0567 Tw -[( or )]TJ -/TT10 1 Tf -1.5542 0 TD -0.1356 Tw -(NOSPELLFLG = NIL)Tj -/TT12 1 Tf -9.8727 0 TD -0.0567 Tw -(; see)Tj --43.393 -1.2889 TD -0.0022 Tw -(Chapter 20\). If successful, the corrected version of the list of file manager commands is written \(again\))Tj -0 -1.2222 TD -0.1011 Tw -(on the output file, since at this point, the uncorrected list of file manager commands would already)Tj -T* -0.1322 Tw -[(have been printed on the output file. When the file is loaded, this will result in )]TJ -/TT15 1 Tf -37.6969 0 TD -0 Tw -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1322 Tw -[( being)]TJ --42.4977 -1.2889 TD -0.1856 Tw -(reset, and may cause a message to be printed, e.g., )Tj -/TT10 1 Tf -24.2594 0 TD -0.4467 Tw -(\(FOOCOMS RESET\))Tj -/TT12 1 Tf -9.4481 0 TD -0.1856 Tw -[(. The value of )]TJ -/TT10 1 Tf -7.4185 0 TD -0 Tw -(FOOCOMS)Tj -/TT12 1 Tf --41.126 -1.2889 TD -0.2222 Tw -[(would then be the corrected version. If the spelling correction is unsuccessful, the file manager)]TJ -0 -1.2222 TD -0 Tw -(functions generate an error, )Tj -/TT10 1 Tf -12.4692 0 TD -(BAD FILE PACKAGE COMMAND)Tj -/TT12 1 Tf -14.4023 0 TD -(.)Tj -ET -endstream -endobj -109 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -112 0 obj -<< -/Length 7252 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-32)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -0.1889 Tw -(File package commands can be used to save on the output file definitions of functions, values of)Tj -0 -1.2222 TD -0.2822 Tw -[(variables, property lists of atoms, advised functions, edit macros, record declarations, etc. The)]TJ -T* -0 Tw -(interpretation of each file manager command is documented in the following sections.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(USERMACROS)Tj -/TT19 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.6 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 313.3509 525.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 525.2 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1122 Tw -(Each symbol )Tj -/TT15 1 Tf -6.1141 0 TD -0 Tw -(SYMBOL)Tj -3.6015 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1122 Tw -[( is the name of a user edit macro. Writes expressions to add the)]TJ --10.3156 -1.5111 TD -0.0067 Tw -(edit macro definitions of )Tj -/TT15 1 Tf -11.136 0 TD -0 Tw -(SYMBOL)Tj -3.6017 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0067 Tw -[( to )]TJ -/TT10 1 Tf -1.3854 0 TD -0 Tw -(USERMACROS)Tj -/TT12 1 Tf -6.001 0 TD -0.0067 Tw -(, and adds the names of the commands)Tj --22.7242 -1.5111 TD -0 Tw -(to the appropriate spelling lists.)Tj -0 -2 TD -(If )Tj -/TT15 1 Tf -0.9366 0 TD -(SYMBOL)Tj -3.6001 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0167 Tw -[( is not a user macro, a warning message ")]TJ -/TT10 1 Tf -18.3434 0 TD -0.04 Tw -(no EDIT MACRO for )Tj -/TT15 1 Tf -10.9618 0 TD -0 Tw -(SYMBOL)Tj -3.6027 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0167 Tw -(" is)Tj --38.6444 -1.5111 TD -0 Tw -(printed.)Tj -/TT4 1 Tf -10 0 0 10 126 420.46 Tm -(Functions and Macros)Tj -/TT10 1 Tf -9 0 0 9 150 400.46 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FNS)Tj -/TT12 1 Tf -1.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.2 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 237.7517 400.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 400.46 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Writes a )Tj -/TT10 1 Tf -3.915 0 TD -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -( expression with the function definitions of )Tj -/TT15 1 Tf -19.249 0 TD -(FN)Tj -1.2019 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -(.)Tj --33.2667 -2.2889 TD -0.1789 Tw -(You should never print a )Tj -/TT10 1 Tf -12.2123 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.1789 Tw -[( expression directly onto a file \(by using the )]TJ -/TT10 1 Tf -21.1696 0 TD -0 Tw -(P)Tj -/TT12 1 Tf -0.6001 0 TD -0.1789 Tw -[( file)]TJ --38.1827 -1.2889 TD -0.1444 Tw -(manager command, for example\), because )Tj -/TT10 1 Tf -19.6534 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1444 Tw -[( generates the filemap of function)]TJ --24.4542 -1.2889 TD -0 Tw -(definitions from the )Tj -/TT10 1 Tf -9.0498 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -( file manager commands \(see the File Maps section\).)Tj -/TT10 1 Tf --13.5168 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADVISE)Tj -/TT12 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.2 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 248.5509 315.12 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 315.12 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1822 Tw -(For each function )Tj -/TT15 1 Tf -8.5057 0 TD -0 Tw -(FN)Tj -1.201 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1822 Tw -(, writes expressions to reinstate the function to its advised state)Tj --10.3067 -1.5111 TD -0 Tw -(when the file is loaded. See Chapter 15.)Tj -0 -2 TD -0.0322 Tw -[(When advice is applied to a function programmatically or by hand, it is additive. That is,)]TJ -0 -1.2222 TD -0.2067 Tw -(if a function already has some advice, further advice is added to the already-existing)Tj -T* -0.0133 Tw -[(advice. However, when advice is applied to a function as a result of loading a file with an)]TJ -/TT10 1 Tf -T* -0 Tw -(ADVISE)Tj -/TT12 1 Tf -3.6006 0 TD -0.2011 Tw -[( file manager command, the new advice replaces any earlier advice. )]TJ -/TT10 1 Tf -32.7932 0 TD -0 Tw -(ADVISE)Tj -/TT12 1 Tf --36.3938 -1.2889 TD -0.0133 Tw -[(works this way to prevent problems with loading different versions of the same advice. If)]TJ -0 -1.2222 TD -0.0544 Tw -(you really want to apply additive advice, a file manager command such as )Tj -/TT10 1 Tf -33.866 0 TD -0.1311 Tw -(\(P \(ADVISE)Tj --33.866 -1.2889 TD -0 Tw -(...\)\))Tj -/TT12 1 Tf -3.0005 0 TD -( should be used \(see the Miscellaneous File Manager Commands section\).)Tj -/TT10 1 Tf --5.6672 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADVICE)Tj -/TT19 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.2 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 248.5509 174.78 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 174.78 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.0733 Tw -(For each function )Tj -/TT15 1 Tf -8.179 0 TD -0 Tw -(FN)Tj -1.201 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0733 Tw -(, writes a )Tj -/TT10 1 Tf -4.469 0 TD -0 Tw -(PUTPROPS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0733 Tw -[( expression which will put the advice back on)]TJ --19.2498 -1.5111 TD -0.2856 Tw -[(the property list of the function. You can then use )]TJ -/TT10 1 Tf -25.5498 0 TD -0 Tw -(READVISE)Tj -/TT12 1 Tf -4.8008 0 TD -0.2856 Tw -[( \(see Chapter 15\) to)]TJ --30.3506 -1.2889 TD -0 Tw -(reactivate the advice.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MACROS)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.6 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 291.7509 108.64 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 108.64 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.5112 0 TD -(SYMBOL)Tj -3.6011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1244 Tw -[( is a symbol with a )]TJ -/TT10 1 Tf -9.2476 0 TD -0 Tw -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -0.1244 Tw -[( definition \(and/or a )]TJ -/TT10 1 Tf -9.9026 0 TD -0 Tw -(DMACRO)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6244 0 TD -(10MACRO)Tj -/TT12 1 Tf -4.2007 0 TD -0.1244 Tw -(, etc.\).)Tj --37.2886 -1.5111 TD -0.3267 Tw -(Writes out an expression to restore all of the macro properties for each )Tj -/TT15 1 Tf -35.5533 0 TD -0 Tw -(SYMBOL)Tj -3.6033 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -(,)Tj --39.7567 -1.5111 TD -0.0267 Tw -(embedded in a )Tj -/TT10 1 Tf -6.9086 0 TD -0.0656 Tw -(DECLARE: EVAL@COMPILE)Tj -/TT12 1 Tf -12.6676 0 TD -0.0267 Tw -[( so the macros will be defined when the file is)]TJ --19.5762 -1.2889 TD -0 Tw -(compiled. See Chapter 10.)Tj -ET -endstream -endobj -113 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -115 0 obj -<< -/Length 8946 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-33)Tj -/TT4 1 Tf -10 0 0 10 78 568.2 Tm -(Variables)Tj -/TT10 1 Tf -9 0 0 9 102 548.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VARS)Tj -/TT4 1 Tf -10 0 0 10 129 548.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 131.7783 548.2 Tm -(VAR)Tj -1.8002 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 201.0809 548.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 548.2 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.0944 Tw -(For each )Tj -/TT15 1 Tf -4.1908 0 TD -0 Tw -(VAR)Tj -1.8003 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0944 Tw -[(, writes an expression to set its top level value when the file is loaded. If)]TJ -/TT15 1 Tf --6.5911 -1.5111 TD -0 Tw -(VAR)Tj -1.8 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0422 Tw -[( is atomic, )]TJ -/TT10 1 Tf -4.8313 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0422 Tw -[( writes out an expression to set )]TJ -/TT15 1 Tf -14.1896 0 TD -0 Tw -(VAR)Tj -1.801 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0422 Tw -[( to the top-level value it had at)]TJ --26.2222 -1.5111 TD -0.0433 Tw -[(the time the file was written. If )]TJ -/TT15 1 Tf -14.4053 0 TD -0 Tw -(VAR)Tj -1.8003 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0433 Tw -[( is non-atomic, it is interpreted as )]TJ -/TT10 1 Tf -15.2711 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.2933 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0433 Tw -(, and)Tj -/TT10 1 Tf --37.7709 -1.5111 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.07 Tw -[( write out an expression to set )]TJ -/TT15 1 Tf -13.9602 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.07 Tw -[( to the value of )]TJ -/TT15 1 Tf -7.1762 0 TD -0 Tw -(FORM)Tj -/TT12 1 Tf -2.4004 0 TD -0.07 Tw -[( \(evaluated when the file is)]TJ --27.7375 -1.2889 TD -0 Tw -(loaded\).)Tj -/TT10 1 Tf -0 -2 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.19 Tw -[( prints out expressions using )]TJ -/TT10 1 Tf -13.9109 0 TD -0 Tw -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.19 Tw -[( and )]TJ -/TT10 1 Tf -2.5729 0 TD -0 Tw -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -0.19 Tw -(, which are like )Tj -/TT10 1 Tf -7.7341 0 TD -0 Tw -(SETQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.19 Tw -[( and )]TJ -/TT10 1 Tf -2.5729 0 TD -0 Tw -(SETQ)Tj -/TT12 1 Tf --37.5926 -1.2889 TD -0.1578 Tw -(except that they also perform some special operations with respect to the file manager)Tj -0 -1.2222 TD -0 Tw -(\(see the Functions Used within Source Files section\).)Tj -/TT10 1 Tf -0 -2 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1411 Tw -[( cannot be used for putting arbitrary variable values on files. For example, if the)]TJ --2.4004 -1.2889 TD -0.0611 Tw -(value of a variable is an array \(or many other data types\), a symbol which represents the)Tj -0 -1.2222 TD -0.0911 Tw -[(array is dumped in the file instead of the array itself. The )]TJ -/TT10 1 Tf -26.8304 0 TD -0 Tw -(HORRIBLEVARS)Tj -/TT12 1 Tf -7.2012 0 TD -0.0911 Tw -[( file manager)]TJ --34.0316 -1.2889 TD -0.1922 Tw -(command provides a way of saving and reloading variables whose values contain re-)Tj -0 -1.2222 TD -0 Tw -(entrant or circular list structure, user data types, arrays, or hash arrays.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(INITVARS)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 227.5517 351.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 351.06 Tm -([File Manager Command])Tj -/TT10 1 Tf --28.5444 -2.0667 TD -(INITVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.28 Tw -[( is used for initializing variables, setting their values only when they are)]TJ --4.8008 -1.2889 TD -0 Tw -(currently )Tj -/TT10 1 Tf -4.4091 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -0.0878 Tw -[(. A variable value defined in an )]TJ -/TT10 1 Tf -15.0831 0 TD -0 Tw -(INITVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0878 Tw -[( command will not change)]TJ --27.8935 -1.2889 TD -0.3756 Tw -[(an already established value. This means that re-loading files to get some other)]TJ -0 -1.2222 TD -0 Tw -(information will not automatically revert to the initialization values.)Tj -0 -2 TD -0.1511 Tw -(The format of an )Tj -/TT10 1 Tf -8.2221 0 TD -0 Tw -(INITVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1511 Tw -[( command is just like )]TJ -/TT10 1 Tf -10.3727 0 TD -0 Tw -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1511 Tw -[(. The only difference is that if)]TJ -/TT15 1 Tf --25.796 -1.2889 TD -0 Tw -(VAR)Tj -1.8 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.39 Tw -[( is atomic, the current value is not dumped; instead )]TJ -/TT10 1 Tf -26.8233 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.39 Tw -[( is defined as the)]TJ --31.0236 -1.5111 TD -0.0433 Tw -[(initialization value. Therefore, )]TJ -/TT10 1 Tf -14.0205 0 TD -0.1033 Tw -(\(INITVARS FOO \(FUM 2\)\))Tj -/TT12 1 Tf -13.5121 0 TD -0.0433 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.7782 0 TD -0 Tw -(\(VARS)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2933 0 TD -(\(FOO)Tj --37.6047 -1.2889 TD -(NIL\)\(FUM 2\)\))Tj -/TT12 1 Tf -7.2012 0 TD -(, if )Tj -/TT10 1 Tf -1.374 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(FUM)Tj -/TT12 1 Tf -1.8003 0 TD -( are both )Tj -/TT10 1 Tf -4.1314 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --22.1006 -2.0667 TD -(INITVARS)Tj -/TT12 1 Tf -4.8008 0 TD -( writes out an )Tj -/TT10 1 Tf -6.3062 0 TD -(RPAQ?)Tj -/TT12 1 Tf -3.0005 0 TD -( expression on the file instead of )Tj -/TT10 1 Tf -14.4878 0 TD -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(RPAQQ.)Tj --35.1032 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDVARS)Tj -/TT10 1 Tf -4.1999 0 TD -( \()Tj -/TT15 1 Tf -1.2002 0 TD -(VAR)Tj -1.7998 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LST)Tj -1.7999 -0.2222 TD -(1)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT15 1 Tf -0.6001 0 TD -(...)Tj -/TT10 1 Tf -1.8003 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -1.7995 -0.2222 TD -(N)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LST)Tj -1.7999 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT6 1 Tf -10 0 0 10 300.0017 201.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 201.92 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(For each )Tj -/TT10 1 Tf -4.0044 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -1.7999 -0.2222 TD -(i)Tj -/TT19 1 Tf -0.6 0.2222 TD -( . )Tj -/TT15 1 Tf -0.7522 0 TD -(LST)Tj -1.8 -0.2222 TD -(i)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(, writes an )Tj -/TT10 1 Tf -4.8355 0 TD -(ADDTOVAR)Tj -/TT12 1 Tf -4.8008 0 TD -( \(see the Functions Used Within Source Files)Tj --20.393 -1.5111 TD -0.0033 Tw -(section\) to add each element of )Tj -/TT15 1 Tf -13.9414 0 TD -0 Tw -(LST)Tj -1.8008 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0001 Tc -0.0032 Tw -( to the list that is the value of )Tj -/TT15 1 Tf -13.0246 0 TD -0 Tc -0 Tw -(VAR)Tj -1.7976 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0002 Tc -0.0031 Tw -( at the time the file)Tj --31.7644 -1.5111 TD -0.0042 Tw -(is loaded. The new value of )Tj -/TT15 1 Tf -12.6693 0 TD -0 Tc -0 Tw -(VAR)Tj -1.8018 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0001 Tc -0.0043 Tw -( will be the union of its old value and )Tj -/TT15 1 Tf -16.7734 0 TD -0 Tc -0 Tw -(LST)Tj -1.801 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0003 Tc -0.0041 Tw -(. If the value)Tj --34.2456 -1.5111 TD -0 Tc -0 Tw -(of )Tj -/TT15 1 Tf -1.1289 0 TD -(VAR)Tj -1.8 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(, it is first set to )Tj -/TT10 1 Tf -6.9522 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --17.0968 -2.2889 TD -0.2033 Tw -(For example, )Tj -/TT10 1 Tf -6.4028 0 TD -0.4878 Tw -(\(ADDVARS \(DIRECTORIES LISP LISPUSERS\)\))Tj -/TT12 1 Tf -24.267 0 TD -0.2033 Tw -[( will add )]TJ -/TT10 1 Tf -4.7887 0 TD -0 Tw -(LISP)Tj -/TT12 1 Tf -2.4004 0 TD -0.2033 Tw -[( and)]TJ -/TT10 1 Tf --37.8589 -1.2889 TD -0 Tw -(LISPUSERS)Tj -/TT12 1 Tf -5.4009 0 TD -( to the value of )Tj -/TT10 1 Tf -6.8262 0 TD -(DIRECTORIES)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj --18.8281 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9577 0 TD -(LST)Tj -1.8001 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0378 Tw -[( is not specified, )]TJ -/TT15 1 Tf -7.5227 0 TD -0 Tw -(VAR)Tj -1.8018 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0378 Tw -[( is initialized to )]TJ -/TT10 1 Tf -7.1911 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0378 Tw -[( if its current value is )]TJ -/TT10 1 Tf -9.7687 0 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -0.0378 Tw -[(. In other)]TJ --35.6429 -1.5111 TD -0 Tw -(words, )Tj -/TT10 1 Tf -3.3096 0 TD -(\(ADDVARS \()Tj -/TT15 1 Tf -6.001 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -(\)\))Tj -/TT12 1 Tf -1.2002 0 TD -( will initialize )Tj -/TT15 1 Tf -6.2993 0 TD -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -( has not previously been set.)Tj -ET -endstream -endobj -116 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -118 0 obj -<< -/Length 9098 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-34)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(APPENDVARS)Tj -/TT10 1 Tf -5.9999 0 TD -( \()Tj -/TT15 1 Tf -1.2002 0 TD -(VAR)Tj -1.7998 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LST)Tj -1.7999 -0.2222 TD -(1)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT15 1 Tf -0.6001 0 TD -( ... )Tj -/TT10 1 Tf -3.0005 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -1.7993 -0.2222 TD -(N)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LST)Tj -1.7999 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\)\) )Tj -/TT6 1 Tf -10 0 0 10 380.4026 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 568.2 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1822 Tw -(The same as )Tj -/TT10 1 Tf -6.18 0 TD -0 Tw -(ADDVARS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1822 Tw -(, except that the values are added to the end of the lists \(using)Tj -/TT10 1 Tf --10.3807 -1.2889 TD -0 Tw -(APPENDTOVAR)Tj -/TT12 1 Tf -6.6011 0 TD -0.2156 Tw -(, in the Functions Used Within Source Files section\), rather than at the)Tj --6.6011 -1.2889 TD -0 Tw -(beginning.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(UGLYVARS)Tj -/TT4 1 Tf -10 0 0 10 198.6 504.06 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 201.3783 504.06 Tm -(VAR)Tj -1.8002 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 270.6808 504.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 504.06 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Like )Tj -/TT10 1 Tf -2.2681 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0811 Tw -(, except that the value of each )Tj -/TT15 1 Tf -13.8563 0 TD -0 Tw -(VAR)Tj -1.7974 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0811 Tw -[( may contain structures for which )]TJ -/TT10 1 Tf -15.6224 0 TD -0 Tw -(READ)Tj -/TT12 1 Tf -2.4004 0 TD -0.0811 Tw -[( is)]TJ --38.945 -1.5111 TD -0.1333 Tw -(not an inverse of )Tj -/TT10 1 Tf -8.1632 0 TD -0 Tw -(PRINT)Tj -/TT12 1 Tf -3.0005 0 TD -0.1333 Tw -(, e.g. arrays, readtables, user data types, etc. Uses )Tj -/TT10 1 Tf -23.1409 0 TD -0 Tw -(HPRINT)Tj -/TT12 1 Tf -3.6006 0 TD -0.1333 Tw -[( \(see)]TJ --37.9052 -1.2889 TD -0 Tw -(Chapter 25\).)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6 0 TD -(HORRIBLEVARS)Tj -/TT4 1 Tf -10 0 0 10 220.2105 437.92 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 222.9888 437.92 Tm -(VAR)Tj -1.799 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 297.6817 437.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 437.92 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Like )Tj -/TT10 1 Tf -2.2781 0 TD -(UGLYVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0911 Tw -[(, except structures may also contain circular pointers. Uses )]TJ -/TT10 1 Tf -27.2573 0 TD -0 Tw -(HPRINT)Tj -/TT12 1 Tf -3.6006 0 TD -0.0911 Tw -[( \(see)]TJ --37.9368 -1.2889 TD -0.0111 Tw -[(Chapter 25\). The values of )]TJ -/TT15 1 Tf -12.1565 0 TD -0 Tw -(VAR)Tj -1.8013 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.2611 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.2611 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0111 Tw -[( are printed in the same operation, so that they)]TJ --19.28 -1.5111 TD -0 Tw -(may contain pointers to common substructures. )Tj -/TT10 1 Tf -0 -2 TD -(UGLYVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0856 Tw -[( does not do any checking for circularities, which results in a large speed and)]TJ --4.8008 -1.2889 TD -0.3278 Tw -(internal-storage advantage over )Tj -/TT10 1 Tf -15.3427 0 TD -0 Tw -(HORRIBLEVARS)Tj -/TT12 1 Tf -7.2012 0 TD -0.3278 Tw -(. Thus, if it is known that the data)Tj --22.5439 -1.2889 TD -0.4278 Tw -(structures do )Tj -/TT8 1 Tf -6.9312 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.4278 Tw -[( contain circular pointers, )]TJ -/TT10 1 Tf -13.2389 0 TD -0 Tw -(UGLYVARS)Tj -/TT12 1 Tf -4.8008 0 TD -0.4278 Tw -[( should be used instead of)]TJ -/TT10 1 Tf --26.304 -1.2889 TD -0 Tw -(HORRIBLEVARS)Tj -/TT12 1 Tf -7.2012 0 TD -(.)Tj -/TT10 1 Tf --9.8678 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ALISTS)Tj -/TT10 1 Tf -3.5999 0 TD -( \()Tj -/TT15 1 Tf -1.2002 0 TD -(VAR)Tj -1.7998 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(KEY)Tj -1.8 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(KEY)Tj -1.8 -0.2222 TD -(2)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...\))Tj -/TT15 1 Tf -2.4004 0 TD -(...)Tj -/TT10 1 Tf -1.8003 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -1.7992 -0.2222 TD -(N)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(KEY)Tj -1.8 -0.2222 TD -(3)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(KEY)Tj -1.8 -0.2222 TD -(4)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...\)\))Tj -/TT6 1 Tf -10 0 0 10 411.9044 318.38 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 318.38 Tm -([File Manager Command])Tj -/TT15 1 Tf --28.5444 -2.0667 TD -(VAR)Tj -1.8 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.5856 Tw -[( is a variable whose value is an association list, such as )]TJ -/TT10 1 Tf -31.3475 0 TD -0 Tw -(EDITMACROS)Tj -/TT12 1 Tf -6.001 0 TD -(,)Tj -/TT10 1 Tf --39.7485 -1.5111 TD -(BAKTRACELST)Tj -/TT12 1 Tf -6.6011 0 TD -0.03 Tw -[(, etc. For each )]TJ -/TT15 1 Tf -6.651 0 TD -0 Tw -(VAR)Tj -1.7991 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(ALISTS)Tj -/TT12 1 Tf -3.6006 0 TD -0.03 Tw -[( writes out expressions which will restore the)]TJ --19.7817 -1.5111 TD -0.1022 Tw -[(values associated with the specified keys. For example, )]TJ -/TT10 1 Tf -25.7105 0 TD -0.2444 Tw -(\(ALISTS \(BREAKMACROS BT)Tj --25.7105 -1.2889 TD -0 Tw -(BTV\)\))Tj -/TT12 1 Tf -3.0005 0 TD -( will dump the definition for the )Tj -/TT10 1 Tf -14.5352 0 TD -(BT)Tj -/TT12 1 Tf -1.2002 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(BTV)Tj -/TT12 1 Tf -1.8003 0 TD -( commands on )Tj -/TT10 1 Tf -6.75 0 TD -(BREAKMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj --36.0801 -2.0667 TD -0.0022 Tw -(Some association lists \()Tj -/TT10 1 Tf -10.1517 0 TD -0 Tw -(USERMACROS)Tj -/TT12 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5022 0 TD -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.0022 Tw -(, etc.\) are used to implement other file)Tj --23.256 -1.2889 TD -0 Tw -(manager types, and they have their own file manager commands.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(SPECVARS)Tj -/TT12 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 270.1508 208.44 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 208.44 Tm -([File Manager Command])Tj -/TT10 1 Tf --31.2111 -1.66 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOCALVARS)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 280.9517 193.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 193.5 Tm -([File Manager Command])Tj -/TT10 1 Tf --31.2111 -1.66 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(GLOBALVARS)Tj -/TT12 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 286.3517 178.56 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 178.56 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.6456 Tw -(Outputs the corresponding compiler declaration embedded in a )Tj -/TT10 1 Tf -33.6459 0 TD -0 Tw -(DECLARE: )Tj --33.6459 -1.2889 TD -(DOEVAL@COMPILE DONTCOPY)Tj -/TT12 1 Tf -13.8022 0 TD -(. See Chapter 18.)Tj -/TT10 1 Tf --16.4689 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CONSTANTS)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 275.5508 125.42 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 125.42 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Like )Tj -/TT10 1 Tf -2.2915 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -0.1044 Tw -(, for each )Tj -/TT15 1 Tf -4.5921 0 TD -0 Tw -(VAR)Tj -1.8005 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1044 Tw -[( writes an expression to set its top level value when the file is)]TJ --11.6844 -1.5111 TD -0.0678 Tw -[(loaded. Also writes a )]TJ -/TT10 1 Tf -10.1641 0 TD -0 Tw -(CONSTANTS)Tj -/TT12 1 Tf -5.4009 0 TD -0.0678 Tw -[( expression to declare these variables as constants \(see)]TJ --15.565 -1.2889 TD -0.07 Tw -[(Chapter 18\). Both of these expressions are wrapped in a )]TJ -/TT10 1 Tf -25.8579 0 TD -0.1689 Tw -[(\(DECLARE: EVAL@COMPILE)]TJ --25.8579 -1.2889 TD -0 Tw -(...\))Tj -/TT12 1 Tf -2.4004 0 TD -( expression, so they can be used by the compiler.)Tj -ET -endstream -endobj -119 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -121 0 obj -<< -/Length 8604 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-35)Tj -/TT12 1 Tf --37 60.6156 TD -(Like )Tj -/TT10 1 Tf -2.2803 0 TD -(VARS)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5933 0 TD -(VAR)Tj -1.7993 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0933 Tw -[( can be non-atomic, in which case it is interpreted as )]TJ -/TT10 1 Tf -24.2903 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3433 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0933 Tw -(, and)Tj --37.7079 -1.5111 TD -0 Tw -(passed to )Tj -/TT10 1 Tf -4.4106 0 TD -(CONSTANTS)Tj -/TT12 1 Tf -5.4009 0 TD -( \(along with the variable being initialized to )Tj -/TT15 1 Tf -19.5894 0 TD -(FORM)Tj -/TT12 1 Tf -2.4004 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 78 528 Tm -(Symbol Properties)Tj -/TT10 1 Tf -9 0 0 9 102 508 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PROP)Tj -/TT19 1 Tf -2.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROPNAME)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5992 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.6001 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5996 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 281.5508 508 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 508 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.17 Tw -(Writes a )Tj -/TT10 1 Tf -4.255 0 TD -0 Tw -(PUTPROPS)Tj -/TT12 1 Tf -4.8008 0 TD -0.17 Tw -[( expression to restore the value of the )]TJ -/TT15 1 Tf -18.1041 0 TD -0 Tw -(PROPNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.17 Tw -[( property of each)]TJ --31.9607 -1.2889 TD -0 Tw -(symbol )Tj -/TT15 1 Tf -3.5029 0 TD -(SYMBOL)Tj -3.6004 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -( when the file is loaded.)Tj --7.7033 -2.2889 TD -(If )Tj -/TT15 1 Tf -1.1888 0 TD -(PROPNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.2689 Tw -[( is a list, expressions will be written for each property on that list. If)]TJ -/TT15 1 Tf --5.9896 -1.2889 TD -0 Tw -(PROPNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.0111 Tw -[( is the symbol )]TJ -/TT10 1 Tf -6.3994 0 TD -0 Tw -(ALL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0111 Tw -(, the values of all user properties \(on the property list of each)Tj -/TT15 1 Tf --13.0005 -1.2889 TD -0 Tw -(SYMBOL)Tj -3.6 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1222 Tw -(\) are saved. )Tj -/TT10 1 Tf -6.0245 0 TD -0 Tw -(SYSPROPS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1222 Tw -[( is a list of properties used by system functions. Only)]TJ --15.0253 -1.5111 TD -0 Tw -(properties )Tj -/TT8 1 Tf -4.7871 0 TD -(not)Tj -/TT12 1 Tf -1.333 0 TD -( on that list are dumped when the )Tj -/TT10 1 Tf -15.2202 0 TD -(ALL)Tj -/TT12 1 Tf -1.8003 0 TD -( option is used.)Tj --23.1406 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.0633 0 TD -(SYMBOL)Tj -3.6001 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1433 Tw -[( does not have the property )]TJ -/TT15 1 Tf -13.2863 0 TD -0 Tw -(PROPNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.1433 Tw -[( \(as opposed to having the property)]TJ --23.3504 -1.5111 TD -0.1078 Tw -(with value )Tj -/TT10 1 Tf -5.1867 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1078 Tw -(\), a warning message )Tj -/TT10 1 Tf -9.999 0 TD -0 Tw -("NO )Tj -/TT15 1 Tf -2.6593 0 TD -(PROPNAME)Tj -/TT10 1 Tf -4.8008 0 TD -0.2589 Tw -[( PROPERTY FOR )]TJ -/TT15 1 Tf -9.178 0 TD -0 Tw -(SYMBOL)Tj -3.5992 -0.2222 TD -(i)Tj -/TT10 1 Tf -0.6 0.2222 TD -(" )Tj -/TT12 1 Tf -1.4591 0 TD -(is)Tj --39.2824 -1.5111 TD -0.1111 Tw -[(printed. The command )]TJ -/TT10 1 Tf -11.1017 0 TD -0 Tw -(IFPROP)Tj -/TT12 1 Tf -3.6006 0 TD -0.1111 Tw -[( can be used if it is not known whether or not an atom)]TJ --14.7023 -1.2889 TD -0 Tw -(will have the corresponding property.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(IFPROP)Tj -/TT12 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROPNAME)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5992 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 289.2008 340.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 340.66 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1567 Tw -(Same as the )Tj -/TT10 1 Tf -5.9178 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -0.1567 Tw -[( file manager command, except that it only saves the properties that)]TJ --8.3181 -1.2889 TD -0.0444 Tw -[(actually appear on the property list of the corresponding atom. For example, if )]TJ -/TT10 1 Tf -35.799 0 TD -0 Tw -(FOO1)Tj -/TT12 1 Tf -2.4004 0 TD -0.0444 Tw -[( has)]TJ --38.1994 -1.2889 TD -0 Tw -(property )Tj -/TT10 1 Tf -4.1727 0 TD -(PROP1)Tj -/TT12 1 Tf -3.0005 0 TD -0.0233 Tw -[( and )]TJ -/TT10 1 Tf -2.2395 0 TD -0 Tw -(PROP2)Tj -/TT12 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5233 0 TD -(FOO2)Tj -/TT12 1 Tf -2.4004 0 TD -0.0233 Tw -[( has )]TJ -/TT10 1 Tf -2.0525 0 TD -0 Tw -(PROP3)Tj -/TT12 1 Tf -3.0005 0 TD -0.0233 Tw -(, and )Tj -/TT10 1 Tf -2.4895 0 TD -0 Tw -(FOO3)Tj -/TT12 1 Tf -2.4004 0 TD -0.0233 Tw -[( has property )]TJ -/TT10 1 Tf -6.2253 0 TD -0 Tw -(PROP1)Tj -/TT12 1 Tf -3.0005 0 TD -0.0233 Tw -[( and )]TJ -/TT10 1 Tf -2.2395 0 TD -0 Tw -(PROP3)Tj -/TT12 1 Tf -3.0005 0 TD -(,)Tj --39.7457 -1.2889 TD -(then )Tj -/TT10 1 Tf -2.2715 0 TD -0.1244 Tw -(\(IFPROP \(PROP1 PROP2 PROP3\) FOO1 FOO2 FOO3\))Tj -/TT12 1 Tf -26.5509 0 TD -0.0522 Tw -[( will save only those five)]TJ --28.8223 -1.2889 TD -0 Tw -(property values.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PROPS)Tj -/TT10 1 Tf -2.9999 0 TD -( \()Tj -/TT15 1 Tf -1.2002 0 TD -(SYMBOL)Tj -3.5998 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROPNAME)Tj -4.8 -0.2222 TD -(1)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT15 1 Tf -0.6001 0 TD -(...)Tj -/TT10 1 Tf -1.8003 0 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(SYMBOL)Tj -3.5995 -0.2222 TD -(N)Tj -0.6 0.2222 TD -( PROPNAME)Tj -5.4 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT6 1 Tf -10 0 0 10 363.4517 253.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 253.32 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.31 Tw -(Similar to )Tj -/TT10 1 Tf -5.1679 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -0.31 Tw -[( command. Writes a )]TJ -/TT10 1 Tf -10.9133 0 TD -0 Tw -(PUTPROPS)Tj -/TT12 1 Tf -4.8008 0 TD -0.31 Tw -[( expression to restore the value of)]TJ -/TT15 1 Tf --23.2823 -1.2889 TD -0 Tw -(PROPNAME)Tj -4.8 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -( for each )Tj -/TT15 1 Tf -4.0288 0 TD -(SYMBOL)Tj -3.6012 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -( when the file is loaded.)Tj --13.63 -2.2889 TD -0.2478 Tw -(As with the )Tj -/TT10 1 Tf -6.1154 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -0.2478 Tw -[( command, if )]TJ -/TT15 1 Tf -6.8156 0 TD -0 Tw -(SYMBOL)Tj -3.6019 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2478 Tw -[( does not have the property )]TJ -/TT15 1 Tf -13.9129 0 TD -0 Tw -(PROPNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.2478 Tw -[( \(as)]TJ --38.2471 -1.5111 TD -0.1167 Tw -(opposed to having the property with )Tj -/TT10 1 Tf -17.2757 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1167 Tw -[( value\), a warning message )]TJ -/TT10 1 Tf -12.8392 0 TD -0 Tw -("NO )Tj -/TT15 1 Tf -2.6815 0 TD -(PROPNAME)Tj -4.7989 -0.2222 TD -(i)Tj -/TT10 1 Tf --39.3956 -1.2889 TD -(PROPERTY FOR )Tj -/TT15 1 Tf -7.8013 0 TD -(SYMBOL)Tj -3.5987 -0.2222 TD -(i)Tj -/TT10 1 Tf -0.6 0.2222 TD -(")Tj -/TT12 1 Tf -0.6001 0 TD -( is printed.)Tj -/TT4 1 Tf -10 0 0 10 78 145.38 Tm -(Miscellaneous File Manager Commands)Tj -/TT10 1 Tf -9 0 0 9 102 125.38 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RECORDS)Tj -/TT12 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REC)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REC)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 216.7509 125.38 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 125.38 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.6534 0 TD -(REC)Tj -1.8011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2667 Tw -[( is the name of a record \(see Chapter 8\). Writes expressions which will)]TJ --5.0544 -1.5111 TD -0 Tw -(redeclare the records when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(INITRECORDS)Tj -/TT19 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REC)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REC)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-15561([File Manager Command])]TJ --12.4834 -2.0667 TD -0.1256 Tw -(Similar to )Tj -/TT10 1 Tf -4.799 0 TD -0 Tw -(RECORDS)Tj -/TT12 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6256 0 TD -(INITRECORDS)Tj -/TT12 1 Tf -6.6011 0 TD -0.1256 Tw -[( writes expressions on a file that will, when loaded,)]TJ --16.2263 -1.2889 TD -0.5422 Tw -(perform whatever initialization/allocation is necessary for the indicated records.)Tj -ET -endstream -endobj -122 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -124 0 obj -<< -/Length 7652 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-36)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -0.0067 Tw -[(However, the record declarations themselves are not written out. This facility is useful for)]TJ -0 -1.2222 TD -0.0311 Tw -(building systems on top of Interlisp, in which the implementor may want to eliminate the)Tj -T* -0.0956 Tw -(record declarations from a production version of the system, but the allocation for these)Tj -T* -0 Tw -(records must still be done.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LISPXMACROS)Tj -/TT12 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.6 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 318.7509 514.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 514.2 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.4567 0 TD -(SYMBOL)Tj -3.6011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.07 Tw -[( is defined on )]TJ -/TT10 1 Tf -6.5085 0 TD -0 Tw -(LISPXMACROS)Tj -/TT12 1 Tf -6.6011 0 TD -0.07 Tw -[( or )]TJ -/TT10 1 Tf -1.5809 0 TD -0 Tw -(LISPXHISTORYMACROS)Tj -/TT12 1 Tf -10.8018 0 TD -0.07 Tw -[( \(see Chapter 13\).)]TJ --32.15 -1.5111 TD -0.1078 Tw -(Writes expressions which will save and restore the definition for each macro, as well as)Tj -0 -1.2222 TD -0 Tw -(making the necessary additions to )Tj -/TT10 1 Tf -15.3418 0 TD -(LISPXCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -( )Tj -/TT10 1 Tf --23.4093 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(I.S.OPRS)Tj -/TT12 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPR)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 270.1508 448.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 448.06 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.4001 0 TD -(OPR)Tj -1.8011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0133 Tw -[( is the name of a user-defined i.s.opr \(see Chapter 9\). Writes expressions which)]TJ --4.8011 -1.5111 TD -0 Tw -(will redefine the i.s.oprs when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RESOURCES)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(RESOURCE)Tj -4.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(RESOURCE)Tj -4.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 329.5508 393.52 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 393.52 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.4556 0 TD -(RESOURCES)Tj -5.4011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0689 Tw -[( is the name of a resource \(see Chapter 12\). Writes expressions which)]TJ --8.4567 -1.5111 TD -0 Tw -(will redeclare the resource when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(INITRESOURCES)Tj -/TT12 1 Tf -7.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(RESOURCE)Tj -4.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(RESOURCE)Tj -4.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 351.1508 338.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 338.98 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.3189 Tw -(Parallel to )Tj -/TT10 1 Tf -5.3609 0 TD -0 Tw -(INITRECORDS)Tj -/TT12 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.8189 0 TD -(INITRESOURCES)Tj -/TT12 1 Tf -7.8013 0 TD -0.3189 Tw -[( writes expressions on a file to perform)]TJ --20.5822 -1.2889 TD -0.0044 Tw -(whatever initialization/allocation is necessary for the indicated resources, without writing)Tj -0 -1.2222 TD -0 Tw -(the resource declaration itself.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COURIERPROGRAMS)Tj -/TT12 1 Tf -8.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 318.7509 275.44 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 275.44 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.3989 0 TD -(NAME)Tj -2.4011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0122 Tw -[( is the name of a Courier program \(see Chapter 31\). Writes expressions which)]TJ --5.4 -1.5111 TD -0 Tw -(will redeclare the Courier program when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TEMPLATES)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.6 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 307.9508 220.9 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 220.9 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.5078 0 TD -(SYMBOL)Tj -3.6011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1211 Tw -[( is a symbol which has a Masterscope template \(see Chapter 19\). Writes)]TJ --6.7089 -1.5111 TD -0 Tw -(expressions which will restore the templates when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILES)Tj -/TT12 1 Tf -2.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 264.7509 166.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 166.36 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.2811 Tw -[(Used to specify auxiliary files to be loaded in when the file is loaded. Dumps an)]TJ -0 -1.2222 TD -0.0522 Tw -(expression calling )Tj -/TT10 1 Tf -8.2963 0 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.0522 Tw -[( \(see the Loading Files section\), with )]TJ -/TT15 1 Tf -16.6634 0 TD -0 Tw -(FILE)Tj -2.4016 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3022 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0522 Tw -[( as)]TJ --38.7667 -1.5111 TD -0.3011 Tw -(the arguments. )Tj -/TT10 1 Tf -8.0386 0 TD -0 Tw -(FILESLOAD)Tj -/TT12 1 Tf -5.4009 0 TD -0.3011 Tw -[( interprets )]TJ -/TT15 1 Tf -5.4006 0 TD -0 Tw -(FILE)Tj -2.4 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.5511 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.5511 0 TD -(FILE)Tj -2.3997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.3011 Tw -[( as files to load, possibly)]TJ --27.7422 -1.5111 TD -0 Tw -(interspersed with lists used to specify certain loading options.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEPKGCOMS)Tj -/TT12 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.6 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SYMBOL)Tj -3.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 318.7509 87.22 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 87.22 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1167 Tw -(Each symbol )Tj -/TT15 1 Tf -6.123 0 TD -0 Tw -(SYMBOL)Tj -3.6015 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1167 Tw -[( is either the name of a user-defined file manager command or a)]TJ --10.3244 -1.5111 TD -0.2244 Tw -[(user-defined file manager type \(or both\). Writes expressions which will restore each)]TJ -0 -1.2222 TD -0 Tw -(command/type.)Tj -ET -endstream -endobj -125 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -127 0 obj -<< -/Length 6936 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-37)Tj -/TT12 1 Tf --37 60.6156 TD -(If )Tj -/TT15 1 Tf -1.1488 0 TD -(SYMBOL)Tj -3.6001 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2289 Tw -[( is not a file manager command or type, a warning message )]TJ -/TT10 1 Tf -29.2911 0 TD -0.55 Tw -("no FILE)Tj --34.64 -1.5111 TD -0 Tw -(PACKAGE COMMAND for )Tj -/TT15 1 Tf -12.002 0 TD -(SYMBOL)Tj -3.598 -0.2222 TD -(i)Tj -/TT10 1 Tf -0.6 0.2222 TD -(")Tj -/TT12 1 Tf -0.6001 0 TD -( is printed.)Tj -/TT10 1 Tf --19.4668 -2.7711 TD -(\()Tj -/TT17 1 Tf -0.6 0 TD -(* .)Tj -/TT15 1 Tf -1.8003 0 TD -( TEXT)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 156.0079 531 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 531 Tm -([File Manager Command])Tj --28.5444 -1.8444 TD -0.1089 Tw -[(Used for inserting comments in a file. The file manager command is simply written on)]TJ -0 -1.2222 TD -0 Tw -(the output file; it will be ignored when the file is loaded.)Tj -0 -2 TD -0.1867 Tw -(If the first element of )Tj -/TT15 1 Tf -10.4075 0 TD -0 Tw -(TEXT)Tj -/TT12 1 Tf -2.4004 0 TD -0.1867 Tw -[( is another )]TJ -/TT10 1 Tf -5.435 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.1867 Tw -(, a form-feed is printed on the file before the)Tj --18.8429 -1.2889 TD -0 Tw -(comment.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(P)Tj -/TT12 1 Tf -0.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(EXP)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(EXP)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 184.3509 451.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 451.46 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.1789 Tw -(Writes each of the expressions )Tj -/TT15 1 Tf -14.4911 0 TD -0 Tw -(EXP)Tj -1.8022 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.4289 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.4289 0 TD -(EXP)Tj -1.7997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1789 Tw -[( on the output file, where they will be)]TJ --21.9511 -1.5111 TD -0 Tw -(evaluated when the file is loaded.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(E)Tj -/TT12 1 Tf -0.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FORM)Tj -2.4 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FORM)Tj -2.3997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 200.5517 396.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 396.92 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.2956 Tw -(Each of the forms )Tj -/TT15 1 Tf -9.1656 0 TD -0 Tw -(FORM)Tj -2.4022 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.5456 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.5456 0 TD -(FORM)Tj -2.3997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2956 Tw -[( is evaluated at )]TJ -/TT8 1 Tf -8.0772 0 TD -0 Tw -(output)Tj -/TT12 1 Tf -2.7222 0 TD -0.2956 Tw -[( time, when )]TJ -/TT10 1 Tf -6.3427 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf --35.201 -1.5111 TD -(interpretes this file manager command.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(COMS)Tj -/TT12 1 Tf -2.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 200.5509 342.38 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 342.38 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -(Each of the commands )Tj -/TT15 1 Tf -10.2749 0 TD -(COM)Tj -1.8029 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -( is interpreted as a file manager command.)Tj -/TT10 1 Tf --20.0444 -2.7711 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ORIGINAL)Tj -/TT12 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 222.1509 298.84 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 298.84 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.2078 Tw -(Each of the commands )Tj -/TT15 1 Tf -11.106 0 TD -0 Tw -(COM)Tj -1.8029 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2078 Tw -[( will be interpreted as a file manager command without)]TJ --13.5089 -1.5111 TD -0.0189 Tw -(regard to any file manager macros \(as defined by the )Tj -/TT10 1 Tf -23.7548 0 TD -0 Tw -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -0.0189 Tw -[( property of the )]TJ -/TT10 1 Tf -7.2411 0 TD -0 Tw -(FILEPKGCOM)Tj -/TT12 1 Tf --33.9964 -1.2889 TD -0.0633 Tw -[(function, in the Defining New File Manager Commands section\). Useful for redefining a)]TJ -0 -1.2222 TD -0 Tw -(built-in file manager command in terms of itself.)Tj -0 -2 TD -0.1767 Tw -(Some of the "built-in" file manager commands are defined by file manager macros, so)Tj -0 -1.2222 TD -0.0167 Tw -(interpreting them \(or new user-defined file manager commands\) with )Tj -/TT10 1 Tf -31.2897 0 TD -0 Tw -(ORIGINAL)Tj -/TT12 1 Tf -4.8008 0 TD -0.0167 Tw -[( will fail.)]TJ -/TT10 1 Tf --36.0904 -1.2889 TD -0 Tw -(ORIGINAL)Tj -/TT12 1 Tf -4.8008 0 TD -( was never intended to be used outside of a file manager command macro.)Tj -/TT4 1 Tf -10 0 0 10 78 175.5 Tm -(DECLARE:)Tj -/TT10 1 Tf -9 0 0 9 102 155.5 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DECLARE:)Tj -/TT4 1 Tf -10 0 0 10 150.6 155.5 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 153.3783 155.5 Tm -(.)Tj -/TT23 1 Tf -10 0 0 10 158.7792 155.5 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 161.5575 155.5 Tm -(FILEPKGCOMS/FLAGS)Tj -/TT10 1 Tf -10.2017 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 258.7733 155.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 155.5 Tm -([File Manager Command])Tj --28.5444 -1.8444 TD -0.0911 Tw -(Normally expressions written onto a symbolic file are evaluated when loaded; copied to)Tj -0 -1.2222 TD -0.0767 Tw -(the compiled file when the symbolic file is compiled \(see Chapter 18\); and not evaluated)Tj -T* -0 Tw -(at compile time. )Tj -/TT10 1 Tf -7.5898 0 TD -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -( allows you to override these defaults.)Tj -/TT15 1 Tf --12.3906 -2.0667 TD -(FILEPKGCOMS/FLAGS)Tj -/TT12 1 Tf -10.2017 0 TD -0.2256 Tw -[( is a list of file manager commands, possibly interspersed with)]TJ --10.2017 -1.2889 TD -0.2322 Tw -[("tags". The output of those file manager commands within )]TJ -/TT15 1 Tf -28.603 0 TD -0 Tw -(FILEPKGCOMS/FLAGS)Tj -/TT12 1 Tf -10.2017 0 TD -0.2322 Tw -[( is)]TJ --38.8046 -1.2889 TD -0.3167 Tw -(embedded in a )Tj -/TT10 1 Tf -7.7786 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.3167 Tw -[( expression, along with any tags that are specified. For)]TJ --12.5794 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.299 0 TD -0.1189 Tw -(\(DECLARE: EVAL@COMPILE DONTCOPY \(FNS ...\) \(PROP ...\)\))Tj -/TT12 1 Tf -32.5185 0 TD -0.05 Tw -[( would)]TJ --36.8175 -1.2889 TD -0 Tw -(produce )Tj -/TT10 1 Tf -4.1654 0 TD -0.5667 Tw -(\(DECLARE: EVAL@COMPILE DONTCOPY \(DEFINEQ ...\) \(PUTPROPS)Tj -ET -endstream -endobj -128 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT23 129 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -131 0 obj -<< -/Length 4920 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-38)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -0.3689 Tw -[(...\)\). DECLARE:)]TJ -/TT12 1 Tf -10.3393 0 TD -0.1544 Tw -[( is )]TJ -/TT8 1 Tf -1.5237 0 TD -0 Tw -(defined)Tj -/TT12 1 Tf -2.8901 0 TD -0.1544 Tw -[( as an nlambda nospread function, which processes its)]TJ --14.7532 -1.2889 TD -0.1211 Tw -(arguments by evaluating or not evaluating each expression depending on the setting of)Tj -0 -1.2222 TD -0.1311 Tw -[(internal state variables. The initial setting is to evaluate, but this can be overridden by)]TJ -T* -0 Tw -(specifying the )Tj -/TT10 1 Tf -6.4443 0 TD -(DONTEVAL@LOAD)Tj -/TT12 1 Tf -7.8013 0 TD -( tag.)Tj -/TT10 1 Tf --14.2456 -2.0667 TD -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.2389 Tw -[( expressions are specially processed by the compiler. For the purposes of)]TJ --4.8008 -1.2889 TD -0 Tw -(compilation, )Tj -/TT10 1 Tf -5.9508 0 TD -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.15 Tw -[( has two principal applications: to specify forms that are to be)]TJ --10.7516 -1.2889 TD -0.1356 Tw -(evaluated at compile time, presumably to affect the compilation, e.g., to set up macros;)Tj -0 -1.2222 TD -0.0078 Tw -(and/or to indicate which expressions appearing in the symbolic file are )Tj -/TT8 1 Tf -31.8863 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0078 Tw -[( to be copied to)]TJ --33.2193 -1.2222 TD -0.0211 Tw -(the output file. \(Normally, expressions are )Tj -/TT8 1 Tf -19.0739 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0211 Tw -[( evaluated and )]TJ -/TT8 1 Tf -6.8602 0 TD -0 Tw -(are)Tj -/TT12 1 Tf -1.2222 0 TD -0.0211 Tw -[( copied.\) Each expression)]TJ --28.4893 -1.2222 TD -0 Tw -(in )Tj -/TT10 1 Tf -1.3319 0 TD -(CDR)Tj -/TT12 1 Tf -1.8003 0 TD -0.2089 Tw -[( of a )]TJ -/TT10 1 Tf -2.7556 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.2089 Tw -[( form is either evaluated/not-evaluated and copied/not-copied)]TJ --10.6886 -1.2889 TD -0.1356 Tw -(depending on the settings of two internal state variables, initially set for copy and not-)Tj -0 -1.2222 TD -0.1611 Tw -(evaluate. These state variables can be reset for the remainder of the expressions in the)Tj -/TT10 1 Tf -T* -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -( by means of the tags )Tj -/TT10 1 Tf -9.5493 0 TD -(DONTCOPY)Tj -/TT12 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(EVAL@COMPILE)Tj -/TT12 1 Tf -7.2012 0 TD -(, etc.)Tj --26.8521 -2.0667 TD -(The tags are:)Tj -/TT17 1 Tf -5.2667 -2.1489 TD -(EVAL@LOAD)Tj --1.2 -1.4378 TD -(DOEVAL@LOAD)Tj -/TT12 1 Tf -7.9333 0 TD -0.2756 Tw -(Evaluate the following forms when the file is loaded)Tj -0 -1.2889 TD -0 Tw -(\(unless overridden by )Tj -/TT10 1 Tf -9.9487 0 TD -(DONTEVAL@LOAD)Tj -/TT12 1 Tf -7.8013 0 TD -(\).)Tj -/TT17 1 Tf --26.8833 -2.2156 TD -(DONTEVAL@LOAD)Tj -/TT12 1 Tf -9.1333 0 TD -0.2611 Tw -(Do not evaluate the following forms when the file is)Tj -0 -1.2889 TD -0 Tw -(loaded.)Tj -/TT17 1 Tf --9.1333 -2.1489 TD -(EVAL@LOADWHEN)Tj -/TT12 1 Tf -9.1333 0 TD -0.1333 Tw -(This tag can be used to provide conditional evaluation.)Tj -0 -1.2889 TD -0.1744 Tw -(The value of the expression immediately following the)Tj -0 -1.2222 TD -0.2189 Tw -(tag determines whether or not to evaluate subsequent)Tj -T* -0.1889 Tw -(expressions when loading. )Tj -/TT10 1 Tf -13.0202 0 TD -0.4544 Tw -(... EVAL@LOADWHEN T)Tj --13.0202 -1.2889 TD -0 Tw -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( is equivalent to )Tj -/TT10 1 Tf -7.2632 0 TD -(... EVAL@LOAD ...)Tj -/TT17 1 Tf --12.7968 -2.2156 TD -(COPY)Tj --1.2 -1.4378 TD -(DOCOPY)Tj -/TT12 1 Tf -4.9333 0 TD -0.3844 Tw -(When compiling, copy the following forms into the)Tj -0 -1.4378 TD -0 Tw -(compiled file)Tj -/TT6 1 Tf -10 0 0 10 334.1059 223.16 Tm -(.)Tj -/TT17 1 Tf -9 0 0 9 226.8 203.82 Tm -(DONTCOPY)Tj -/TT12 1 Tf -6.1333 0 TD -0.1522 Tw -(When compiling, do not copy the following forms into)Tj -0 -1.2889 TD -0 Tw -(the compiled file.)Tj -0 -2 TD -0.4756 Tw -[(Note: If the file manager commands following)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DONTCOPY)Tj -/TT12 1 Tf -4.8008 0 TD -0.1078 Tw -[( include record declarations for datatypes,)]TJ --4.8008 -1.2889 TD -0.1 Tw -(or records with initialization forms, it is necessary to)Tj -0 -1.2222 TD -0.1067 Tw -(include a )Tj -/TT10 1 Tf -4.5141 0 TD -0 Tw -(INITRECORDS)Tj -/TT12 1 Tf -6.6011 0 TD -0.1067 Tw -[( file manager command \(see)]TJ --11.1152 -1.2889 TD -0.1856 Tw -(the prior section\) outside of the )Tj -/TT10 1 Tf -15.1993 0 TD -0 Tw -(DONTCOPY)Tj -/TT12 1 Tf -4.8008 0 TD -0.1856 Tw -[( form so)]TJ --20.0001 -1.2889 TD -0.4022 Tw -[(that the initialization information is copied. For)]TJ -0 -1.2222 TD -0 Tw -(example, if )Tj -/TT10 1 Tf -5.123 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( was defined as a datatype,)Tj -/TT10 1 Tf --6.9233 -2 TD -(\(DECLARE: DONTCOPY \(RECORDS FOO\)\))Tj -0 -1 TD -(\(INITRECORDS FOO\))Tj -/TT12 1 Tf -0 -2.0667 TD -0.2389 Tw -(would copy the data type declaration for )Tj -/TT10 1 Tf -19.9794 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.2389 Tw -(, but)Tj --21.7796 -1.2889 TD -0 Tw -(would not copy the whole record declaration.)Tj -ET -endstream -endobj -132 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -134 0 obj -<< -/Length 5690 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-39)Tj -/TT17 1 Tf --31.1333 60.4667 TD -(COPYWHEN)Tj -/TT12 1 Tf -6.1333 0 TD -0.0944 Tw -(When compiling, if the next form evaluates to non-)Tj -/TT10 1 Tf -23.2868 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(,)Tj --25.0871 -1.2889 TD -(copy the following forms into the compiled file.)Tj -/TT17 1 Tf --8.5333 -2.1489 TD -(EVAL@COMPILE)Tj --1.2 -1.4378 TD -(DOEVAL@COMPILE)Tj -/TT12 1 Tf -9.7333 0 TD -(When compiling, evaluate the following forms.)Tj -/TT17 1 Tf --10.9333 -2.2156 TD -(DONTEVAL@COMPILE)Tj -/TT12 1 Tf -10.9333 0 TD -(When compiling, do not evaluate the following forms.)Tj -/TT17 1 Tf --10.9333 -2.2156 TD -(EVAL@COMPILEWHEN)Tj -/TT12 1 Tf -10.9333 0 TD -0.0944 Tw -(When compiling, if the next form evaluates to non-)Tj -/TT10 1 Tf -23.2868 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(,)Tj --25.0871 -1.2889 TD -(evaluate the following forms.)Tj -/TT17 1 Tf --4.3333 -2 TD -(FIRST)Tj -/TT12 1 Tf -4.3333 0 TD -0.0144 Tw -(For expressions that are to be copied to the compiled file,)Tj -0 -1.2889 TD -0.1 Tw -(the tag )Tj -/TT10 1 Tf -3.4695 0 TD -0 Tw -(FIRST)Tj -/TT12 1 Tf -3.0005 0 TD -0.1 Tw -[( can be used to specify that the following)]TJ --6.47 -1.2889 TD -0.0011 Tw -(expressions in the )Tj -/TT10 1 Tf -8.1742 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.0011 Tw -( are to appear at the front of)Tj --12.975 -1.2889 TD -0.5344 Tw -(the compiled file, before anything else except the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.01 Tw -[( expressions \(see the Symbolic File Format)]TJ --6.6011 -1.2889 TD -0.1211 Tw -[(section\). For example, )]TJ -/TT10 1 Tf -10.6553 0 TD -0.2922 Tw -(\(DECLARE: COPY FIRST \(P)Tj --10.6553 -1.2889 TD -0 Tw -(\(PRINT)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.4244 0 TD -(MESS1)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.4244 0 TD -0.42 Tw -(T\)\) NOTFIRST \(P \(PRINT)Tj -/TT19 1 Tf -14.4622 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.4244 0 TD -(MESS2)Tj -/TT10 1 Tf --22.3366 -1.2889 TD -(T\)\)\))Tj -/TT12 1 Tf -2.4004 0 TD -0.05 Tw -[( will cause )]TJ -/TT10 1 Tf -5.0567 0 TD -0 Tw -(\(PRINT)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.3 0 TD -(MESS1)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3 0 TD -(T\))Tj -/TT12 1 Tf -1.2002 0 TD -0.05 Tw -[( to appear first in the)]TJ --15.8584 -1.2889 TD -0.1667 Tw -(compiled file, followed by any functions, then )Tj -/TT10 1 Tf -21.7345 0 TD -0 Tw -(\(PRINT)Tj --21.7345 -1.2889 TD -(MESS2 T\))Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj -/TT17 1 Tf --10.9341 -2.0667 TD -(NOTFIRST)Tj -/TT12 1 Tf -6.1333 0 TD -(Reverses the effect of )Tj -/TT10 1 Tf -9.5728 0 TD -(FIRST)Tj -/TT12 1 Tf -3.0005 0 TD -(.)Tj --24.5732 -2.0667 TD -0.0167 Tw -(The value of )Tj -/TT10 1 Tf -5.7907 0 TD -0 Tw -(DECLARETAGSLST)Tj -/TT12 1 Tf -8.4014 0 TD -0.0167 Tw -[( is a list of all the tags used in )]TJ -/TT10 1 Tf -13.3576 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.0167 Tw -[( expressions. If a)]TJ --32.3505 -1.2889 TD -0.0889 Tw -(tag not on this list appears in a )Tj -/TT10 1 Tf -14.5036 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.0889 Tw -[( file manager command, spelling correction is)]TJ --19.3044 -1.2889 TD -0 Tw -(performed using )Tj -/TT10 1 Tf -7.6777 0 TD -(DECLARETAGSLST)Tj -/TT12 1 Tf -8.4014 0 TD -( as a spelling list.)Tj --16.0791 -2.0667 TD -0.1367 Tw -(Note that the function )Tj -/TT10 1 Tf -10.5574 0 TD -0 Tw -(LOADCOMP)Tj -/TT12 1 Tf -4.8008 0 TD -0.1367 Tw -[( \(see the Loading Files section\) provides a convenient)]TJ --15.3582 -1.2889 TD -0.07 Tw -(way of obtaining information from the )Tj -/TT10 1 Tf -17.7354 0 TD -0 Tw -(DECLARE: )Tj -/TT12 1 Tf -5.5675 0 TD -0.07 Tw -(expressions in a file, without reading)Tj --23.303 -1.2889 TD -0 Tw -(in the entire file. This information may be used for compiling other files.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BLOCKS)Tj -/TT19 1 Tf -3.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(BLOCK)Tj -3 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(BLOCK)Tj -2.9997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 232.9509 226.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 382.9 226.5 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.2667 Tw -(For each )Tj -/TT15 1 Tf -4.5353 0 TD -0 Tw -(BLOCK)Tj -3.0003 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2667 Tw -(, writes a )Tj -/TT10 1 Tf -5.049 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.2667 Tw -[( expression which the block compile functions)]TJ --17.9854 -1.5111 TD -0 Tw -(interpret as a block declaration. See Chapter 18.)Tj -/TT4 1 Tf -10 0 0 10 78 166.96 Tm -(Exporting Definitions)Tj -/TT12 1 Tf -9 0 0 9 78 143.3 Tm -0.0422 Tw -(When building a large system in Interlisp, it is often the case that there are record definitions, macros)Tj -0 -1.2222 TD -0.0467 Tw -(and the like that are needed by several different system files when running, analyzing and compiling)Tj -T* -0.0311 Tw -[(the source code of the system, but which are not needed for running the compiled code. By using the)]TJ -/TT10 1 Tf -T* -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.0333 Tw -[( file manager command with tag )]TJ -/TT10 1 Tf -14.8528 0 TD -0 Tw -(DONTCOPY)Tj -/TT12 1 Tf -4.8008 0 TD -0.0333 Tw -[( \(see the prior section\), these definitions can be)]TJ --24.4544 -1.2889 TD -0.0622 Tw -(kept out of the compiled files, and hence out of the system constructed by loading the compiled files)Tj -0 -1.2222 TD -0.2633 Tw -[(files into Interlisp. This saves loading time, space in the resulting system, and whatever other)]TJ -T* -0.0656 Tw -(overhead might be incurred by keeping those definitions around, e.g., burden on the record package)Tj -T* -0.0589 Tw -(to consider more possibilities in translating record accesses, or conflicts between system record fields)Tj -T* -0 Tw -(and user record fields.)Tj -ET -endstream -endobj -135 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -137 0 obj -<< -/Length 8064 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-40)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 126 569.54 Tm -0.0567 Tw -(However, if the implementor wants to debug or compile code in the resulting system, the definitions)Tj -0 -1.2222 TD -0.0167 Tw -[(are needed. And even if the definitions )]TJ -/TT8 1 Tf -17.8409 0 TD -0 Tw -(had)Tj -/TT12 1 Tf -1.4438 0 TD -0.0167 Tw -[( been copied to the compiled files, a similar problem arises)]TJ --19.2847 -1.2222 TD -0.0144 Tw -(if one wants to work on system code in a regular Interlisp environment where none of the system files)Tj -T* -0.0467 Tw -[(had been loaded. One could mandate that any definition needed by more than one file in the system)]TJ -T* -0.1789 Tw -(should reside on a distinguished file of definitions, to be loaded into any environment where the)Tj -T* -0.1044 Tw -[(system files are worked on. Unfortunately, this would keep the definitions away from where they)]TJ -T* -0 Tw -(logically belong. The )Tj -/TT10 1 Tf -9.6973 0 TD -(EXPORT)Tj -/TT12 1 Tf -3.6006 0 TD -( mechanism is designed to solve this problem.)Tj --13.2979 -2.9556 TD -0.0722 Tw -(To use the mechanism, the implementor identifies any definitions needed by files other than the one)Tj -0 -1.2222 TD -0.06 Tw -(in which the definitions reside, and wraps the corresponding file manager commands in the )Tj -/TT10 1 Tf -41.7248 0 TD -0 Tw -(EXPORT)Tj -/TT12 1 Tf --41.7248 -1.2889 TD -0.0467 Tw -[(file manager command. Thereafter, )]TJ -/TT10 1 Tf -16.3017 0 TD -0 Tw -(GATHEREXPORTS)Tj -/TT12 1 Tf -7.8013 0 TD -0.0467 Tw -[( can be used to make a single file containing all)]TJ --24.103 -1.2889 TD -0 Tw -(the exports.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(EXPORT)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.7993 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 264.7517 420.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 430.9 420.4 Tm -([File Manager Command])Tj --28.5444 -2.0667 TD -0.0322 Tw -[(This command is used for "exporting" definitions. Like )]TJ -/TT10 1 Tf -24.9809 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0322 Tw -(, each of the commands )Tj -/TT15 1 Tf -10.8042 0 TD -0 Tw -(COM)Tj -1.8068 -0.2222 TD -(1)Tj -/TT10 1 Tf --39.3922 -1.2889 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3211 0 TD -(COM)Tj -1.7997 -0.2222 TD -(N)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0711 Tw -[( is interpreted as a file manager command. The commands are also flagged in)]TJ --4.5211 -1.5111 TD -0 Tw -(the file as being "exported" commands, for use with )Tj -/TT10 1 Tf -23.0469 0 TD -(GATHEREXPORTS)Tj -/TT12 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --33.5148 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(GATHEREXPORTS)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FROMFILES)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TOFILE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 340.3676 351.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 351.66 Tm -([Function])Tj -/TT15 1 Tf --35.4033 -1.8444 TD -(FROMFILES)Tj -/TT12 1 Tf -5.4009 0 TD -0.0533 Tw -[( is a list of files containing )]TJ -/TT10 1 Tf -12.0672 0 TD -0 Tw -(EXPORT)Tj -/TT12 1 Tf -3.6006 0 TD -0.0533 Tw -[( commands. )]TJ -/TT10 1 Tf -6.0321 0 TD -0 Tw -(GATHEREXPORTS)Tj -/TT12 1 Tf -7.8013 0 TD -0.0533 Tw -[( extracts all)]TJ --34.902 -1.2889 TD -0.0578 Tw -(the exported commands from those files and produces a loadable file )Tj -/TT15 1 Tf -31.39 0 TD -0 Tw -(TOFILE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0578 Tw -[( containing)]TJ --34.9905 -1.2889 TD -0.0544 Tw -[(them. If )]TJ -/TT15 1 Tf -4.1033 0 TD -0 Tw -(FLG)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3044 0 TD -(=)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3044 0 TD -(EVAL)Tj -/TT12 1 Tf -2.4004 0 TD -0.0544 Tw -(, the expressions are evaluated as they are gathered; i.e., the exports)Tj --9.5129 -1.2889 TD -0 Tw -(are effectively loaded into the current environment as well as being written to )Tj -/TT15 1 Tf -34.6138 0 TD -(TOFILE)Tj -/TT12 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --40.881 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(IMPORTFILE)Tj -/TT4 1 Tf -10 0 0 10 209.4 277.32 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.1783 277.32 Tm -(FILE)Tj -/TT23 1 Tf -10 0 0 10 233.7818 277.32 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 236.5601 277.32 Tm -(RETURNFLG)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 290.5689 277.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 277.32 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT15 1 Tf -1.1244 0 TD -(RETURNFLG)Tj -/TT12 1 Tf -5.4009 0 TD -0.2044 Tw -[( is )]TJ -/TT10 1 Tf -1.6237 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2044 Tw -(, this loads any exported definitions from )Tj -/TT15 1 Tf -19.9296 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2044 Tw -[( into the current)]TJ --32.2793 -1.2889 TD -0.0478 Tw -[(environment. If )]TJ -/TT15 1 Tf -7.5232 0 TD -0 Tw -(RETURNFLG)Tj -/TT12 1 Tf -5.4009 0 TD -0.0478 Tw -[( is )]TJ -/TT10 1 Tf -1.3104 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0478 Tw -(, this returns a list of the exported definitions \(evaluable)Tj --14.8346 -1.2889 TD -0 Tw -(expressions\) without actually evaluating them.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CHECKIMPORTS)Tj -/TT4 1 Tf -10 0 0 10 220.2 215.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 222.9783 215.18 Tm -(FILES)Tj -/TT23 1 Tf -10 0 0 10 249.9827 215.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 252.761 215.18 Tm -(NOASKFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 301.3689 215.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 215.18 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0289 Tw -(Checks each of the files in )Tj -/TT15 1 Tf -11.8291 0 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0289 Tw -[( to see if any exists in a version newer than the one from)]TJ --14.8296 -1.2889 TD -0.1322 Tw -(which the exports in memory were taken \()Tj -/TT10 1 Tf -19.6609 0 TD -0 Tw -(GATHEREXPORTS)Tj -/TT12 1 Tf -7.8013 0 TD -0.1322 Tw -[( and )]TJ -/TT10 1 Tf -2.4573 0 TD -0 Tw -(IMPORTFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.1322 Tw -[( note the)]TJ --35.9205 -1.2889 TD -0.0444 Tw -(creation dates of the files involved\), or if any file in the list has not had its exports loaded)Tj -0 -1.2222 TD -[(at all. If there are any such files, you are asked for permission to )]TJ -/TT10 1 Tf -29.3493 0 TD -0 Tw -(IMPORTFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.0444 Tw -[( each such)]TJ --35.3503 -1.2889 TD -0 Tw -(file. If )Tj -/TT15 1 Tf -3.064 0 TD -(NOASKFLG)Tj -/TT12 1 Tf -4.8008 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(IMPORTFILE)Tj -/TT12 1 Tf -6.001 0 TD -( is performed without asking.)Tj --24.7572 -2.9556 TD -0.0844 Tw -(For example, suppose file )Tj -/TT10 1 Tf -11.9057 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0844 Tw -[( contains records )]TJ -/TT10 1 Tf -7.9916 0 TD -0 Tw -(R1)Tj -/TT12 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5844 0 TD -(R2)Tj -/TT12 1 Tf -1.2002 0 TD -0.0844 Tw -(, and )Tj -/TT10 1 Tf -2.6118 0 TD -0 Tw -(R3)Tj -/TT12 1 Tf -1.2002 0 TD -0.0844 Tw -(, macros )Tj -/TT10 1 Tf -4.1103 0 TD -0 Tw -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0844 Tw -[( and )]TJ -/TT10 1 Tf -2.3618 0 TD -0 Tw -(BAZ)Tj -/TT12 1 Tf -1.8003 0 TD -0.0844 Tw -(, and constants)Tj -/TT10 1 Tf --38.567 -1.2889 TD -0 Tw -(CON1)Tj -/TT12 1 Tf -2.4004 0 TD -0.0789 Tw -[( and )]TJ -/TT10 1 Tf -2.3506 0 TD -0 Tw -(CON2)Tj -/TT12 1 Tf -2.4004 0 TD -0.0789 Tw -[(. If the definitions of )]TJ -/TT10 1 Tf -9.9152 0 TD -0 Tw -(R1)Tj -/TT12 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5789 0 TD -(R2)Tj -/TT12 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5789 0 TD -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0789 Tw -(, and )Tj -/TT10 1 Tf -2.6006 0 TD -0 Tw -(BAZ)Tj -/TT12 1 Tf -1.8003 0 TD -0.0789 Tw -[( are needed by files other than )]TJ -/TT10 1 Tf -14.1626 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0789 Tw -(, then)Tj --42.7889 -1.2889 TD -0 Tw -(the file commands for )Tj -/TT10 1 Tf -9.9272 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( might contain the command)Tj -/TT10 1 Tf --2.3942 -1.7778 TD -(\(DECLARE: EVAL@COMPILE DONTCOPY)Tj -0 -1 TD -( \(EXPORT \(RECORDS R1 R2\))Tj -T* -( \(MACROS BAR BAZ\)\))Tj -T* -( \(RECORDS R3\))Tj -T* -( \(CONSTANTS BAZ\)\))Tj -ET -endstream -endobj -138 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT23 129 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -140 0 obj -<< -/Length 4944 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-41)Tj -/TT12 1 Tf --42.3333 60.6156 TD -0.5033 Tw -(None of the commands inside this )Tj -/TT10 1 Tf -18.397 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.5033 Tw -[( would appear on )]TJ -/TT10 1 Tf -10.1022 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.5033 Tw -(s compiled file, but)Tj -/TT10 1 Tf --35.1002 -1.2889 TD -0.0433 Tw -(\(GATHEREXPORTS \(FOO\) MYEXPORTS\))Tj -/TT12 1 Tf -19.8899 0 TD -0.0178 Tw -[( would copy the record definitions for )]TJ -/TT10 1 Tf -17.1928 0 TD -0 Tw -(R1)Tj -/TT12 1 Tf -1.2002 0 TD -0.0178 Tw -[( and )]TJ -/TT10 1 Tf -2.2284 0 TD -0 Tw -(R2)Tj -/TT12 1 Tf -1.2002 0 TD -0.0178 Tw -[( and the)]TJ --41.7115 -1.2889 TD -0 Tw -(macro definitions for )Tj -/TT10 1 Tf -9.5474 0 TD -(BAR)Tj -/TT12 1 Tf -1.8003 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(BAZ)Tj -/TT12 1 Tf -1.8003 0 TD -( to the file )Tj -/TT10 1 Tf -4.6533 0 TD -(MYEXPORTS)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 518.4 Tm -(FileVars)Tj -/TT12 1 Tf -9 0 0 9 78 494.74 Tm -0.1011 Tw -(In each of the file manager commands described above, if the symbol )Tj -/TT10 1 Tf -32.0083 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.1011 Tw -[( follows the command type,)]TJ --32.6084 -1.2889 TD -0.0222 Tw -(the form following the )Tj -/TT10 1 Tf -10.2901 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.0222 Tw -(, i.e., )Tj -/TT10 1 Tf -2.3145 0 TD -0 Tw -(CADDR)Tj -/TT12 1 Tf -3.0005 0 TD -0.0222 Tw -[( of the command, is evaluated and its value used in executing the)]TJ --16.2051 -1.2889 TD -0.1722 Tw -(command, e.g., )Tj -/TT10 1 Tf -7.3278 0 TD -0.4144 Tw -(\(FNS * \(APPEND FNS1 FNS2\)\))Tj -/TT12 1 Tf -17.2603 0 TD -0.1722 Tw -[(. When this form is a symbol, e.g. )]TJ -/TT10 1 Tf -16.7258 0 TD -0.4144 Tw -(\(FNS *)Tj --41.3139 -1.2889 TD -0 Tw -(FOOFNS\))Tj -/TT12 1 Tf -4.2007 0 TD -0.1956 Tw -[(, we say that the variable is a "filevar". Note that )]TJ -/TT10 1 Tf -24.063 0 TD -0.4689 Tw -(\(COMS *)Tj -/TT19 1 Tf -4.6696 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.4456 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1956 Tw -[( provides a way of)]TJ -/TT8 1 Tf --36.3793 -1.2889 TD -0 Tw -(computing)Tj -/TT12 1 Tf -4.3521 0 TD -( what should be done by )Tj -/TT10 1 Tf -11.1582 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj --20.311 -2.9556 TD -(Example:)Tj -/TT13 1 Tf -5.3333 -2 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(SETQ FOOFNS \(FOO1 FOO2 FOO3\)\))Tj -3.0132 -1 TD -(\(FOO1 FOO2 FOO3\))Tj -/TT13 1 Tf --4 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(SETQ FOOCOMS)Tj -3.0132 -1 TD -(\(\(FNS * FOOFNS\))Tj -T* -(\(VARS FIE\))Tj -T* -(\(PROP MACRO FOO1 FOO2\))Tj -T* -(\(P \(MOVD FOO1 FIE1\)\)])Tj -/TT13 1 Tf --4 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(MAKEFILE FOO\))Tj -/TT12 1 Tf --6.3201 -2.7333 TD -(would create a file )Tj -/TT10 1 Tf -8.4019 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( containing:)Tj -/TT10 1 Tf --4.8688 -2 TD -0.7778 Tw -(\(FILECREATED ")Tj -/TT15 1 Tf -9.1791 0 TD -(time and date the file was made)Tj -/TT10 1 Tf -23.2697 0 TD -(" . ")Tj -/TT15 1 Tf -4.556 0 TD -0 Tw -(other)Tj --37.0049 -1 TD -(information)Tj -/TT10 1 Tf -6.6011 0 TD -("\))Tj --2.6011 -1 TD -(\(PRETTYCOMPRINT FOOCOMS\))Tj -T* -(\(RPAQQ FOOCOMS \(\(FNS * FOOFNS\) ...\))Tj -T* -(\(RPAQQ FOOFNS \(FOO1 FOO3 FOO3\)\))Tj -T* -(\(DEFINEQ ")Tj -/TT15 1 Tf -6.001 0 TD -(definitions of )Tj -/TT10 1 Tf -9.0015 0 TD -(FOO1)Tj -/TT15 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -1.2002 0 TD -(FOO2)Tj -/TT15 1 Tf -2.4004 0 TD -(, and )Tj -/TT10 1 Tf -3.6006 0 TD -(FOO3"\))Tj --24.604 -1 TD -(\(RPAQQ FIE ")Tj -/TT15 1 Tf -7.2012 0 TD -(value of )Tj -/TT10 1 Tf -5.4009 0 TD -(FIE"\))Tj --12.6021 -1 TD -(\(PUTPROPS FOO1 MACRO )Tj -/TT15 1 Tf -12.6021 0 TD -(PROPVALUE)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj --18.0029 -1 TD -(\(PUTPROPS FOO2 MACRO )Tj -/TT15 1 Tf -12.6021 0 TD -(PROPVALUE)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj --18.0029 -1 TD -(\(MOVD \(QUOTE FOO1\) \(QUOTE FIE1\)\))Tj -T* -(STOP)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.0533 Tw -(For the )Tj -/TT10 1 Tf -3.4909 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -0.0533 Tw -[( and )]TJ -/TT10 1 Tf -2.2995 0 TD -0 Tw -(IFPROP)Tj -/TT12 1 Tf -3.6006 0 TD -0.0533 Tw -[( commands \(see the Litatom Properties section\), the )]TJ -/TT10 1 Tf -23.4858 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.0533 Tw -[( follows the property)]TJ --35.8773 -1.2889 TD -0.1933 Tw -(name instead of the command, e.g., )Tj -/TT10 1 Tf -17.0663 0 TD -0.4633 Tw -(\(PROP MACRO * FOOMACROS\))Tj -/TT12 1 Tf -15.7923 0 TD -0.1933 Tw -[(. Also, in the form )]TJ -/TT10 1 Tf -9.6156 0 TD -0.4633 Tw -(\(* *)Tj --42.4742 -1.2889 TD -0 Tw -(comment ...\))Tj -/TT12 1 Tf -7.2012 0 TD -(, the word )Tj -/TT10 1 Tf -4.7729 0 TD -(comment)Tj -/TT12 1 Tf -4.2007 0 TD -( is not treated as a filevar.)Tj -/TT4 1 Tf -10 0 0 10 78 117.2 Tm -(Defining New File Manager Commands)Tj -/TT12 1 Tf -9 0 0 9 78 93.54 Tm -(A file manager command is defined by specifying the values of certain properties. You can specify the)Tj -0 -1.2222 TD -0.0789 Tw -(various attributes of a file manager command for a new command, or respecify them for an existing)Tj -T* -0 Tw -(command. The following properties are used:)Tj -ET -endstream -endobj -141 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -144 0 obj -<< -/Length 10992 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-42)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 568.2 Tm -(MACRO)Tj -/TT6 1 Tf -10 0 0 10 177 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 393.53 568.2 Tm -([File Manager Command Property])Tj --24.3922 -1.8444 TD -0.1044 Tw -[(Defines how to dump the file manager command. Used by )]TJ -/TT10 1 Tf -27.5678 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1044 Tw -[(. Value is a pair)]TJ -/TT10 1 Tf --32.3686 -1.2889 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(ARGS)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.2833 0 TD -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0333 Tw -[(. The "arguments" to the file manager command are substituted for )]TJ -/TT15 1 Tf -30.4249 0 TD -0 Tw -(ARGS)Tj -/TT12 1 Tf --37.5927 -1.2889 TD -(throughout )Tj -/TT15 1 Tf -5.3343 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0189 Tw -[(, and the result treated as a list of file manager commands. For example,)]TJ --7.7347 -1.2889 TD -0 Tw -(following )Tj -/TT10 1 Tf -4.7645 0 TD -0.5867 Tw -(\(FILEPKGCOM FOO MACRO \(\(X Y\) .)Tj -/TT19 1 Tf -22.7366 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.4944 0 TD -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT12 1 Tf -1.2002 0 TD -0.2444 Tw -(, the file manager)Tj --31.5961 -1.2889 TD -0 Tw -(command )Tj -/TT10 1 Tf -4.7494 0 TD -0.1233 Tw -(\(FOO A B\))Tj -/TT12 1 Tf -5.6475 0 TD -0.0511 Tw -[( will cause )]TJ -/TT10 1 Tf -5.0601 0 TD -0 Tw -(A)Tj -/TT12 1 Tf -0.6001 0 TD -0.0511 Tw -[( to be substituted for )]TJ -/TT10 1 Tf -9.6501 0 TD -0 Tw -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.0511 Tw -[( and )]TJ -/TT10 1 Tf -2.2951 0 TD -0 Tw -(B)Tj -/TT12 1 Tf -0.6001 0 TD -0.0511 Tw -[( for )]TJ -/TT10 1 Tf -1.8761 0 TD -0 Tw -(Y)Tj -/TT12 1 Tf -0.6001 0 TD -0.0511 Tw -[( throughout )]TJ -/TT15 1 Tf -5.6677 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -(,)Tj --39.7467 -1.2889 TD -(and then )Tj -/TT15 1 Tf -4.1621 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -( treated as a list of commands.)Tj --6.5625 -2.0667 TD -0.0344 Tw -(The substitution is carried out by )Tj -/TT10 1 Tf -15.09 0 TD -0 Tw -(SUBPAIR)Tj -/TT12 1 Tf -4.2007 0 TD -0.0344 Tw -[( \(see Chapter 3\), so that the "argument list" for)]TJ --19.2907 -1.2889 TD -0.0578 Tw -[(the macro can also be atomic. For example, if )]TJ -/TT10 1 Tf -20.9113 0 TD -0.1378 Tw -(\(X .)Tj -/TT19 1 Tf -2.5382 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.3078 0 TD -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0578 Tw -[( was used instead of )]TJ -/TT10 1 Tf -9.5052 0 TD -0.1378 Tw -(\(\(X Y\))Tj --36.2629 -1.2889 TD -0 Tw -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.3789 0 TD -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1289 Tw -(, then the command )Tj -/TT10 1 Tf -9.5702 0 TD -0.31 Tw -(\(FOO A B\))Tj -/TT12 1 Tf -6.0209 0 TD -0.1289 Tw -[( would cause )]TJ -/TT10 1 Tf -6.4711 0 TD -0.31 Tw -(\(A B\))Tj -/TT12 1 Tf -3.3105 0 TD -0.1289 Tw -[( to be substituted for )]TJ -/TT10 1 Tf -10.039 0 TD -0 Tw -(X)Tj -/TT12 1 Tf --39.3912 -1.2889 TD -(throughout )Tj -/TT15 1 Tf -5.3154 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --7.7158 -2.0667 TD -0.1056 Tw -(Filevars are evaluated )Tj -/TT8 1 Tf -10.2957 0 TD -0 Tw -(before)Tj -/TT12 1 Tf -2.3521 0 TD -0.1056 Tw -[( substitution. For example, if the symbol )]TJ -/TT10 1 Tf -19.1501 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.1056 Tw -[( follows )]TJ -/TT15 1 Tf -3.9758 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1056 Tw -[( in)]TJ --38.7741 -1.2889 TD -0 Tw -(the command, )Tj -/TT10 1 Tf -6.5854 0 TD -(CADDR)Tj -/TT12 1 Tf -3.0005 0 TD -( of the command is evaluated substituting in )Tj -/TT15 1 Tf -19.9619 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT17 1 Tf --34.6149 -2.5489 TD -(ADD)Tj -/TT6 1 Tf -10 0 0 10 166.2 387.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 393.53 387.06 Tm -([File Manager Command Property])Tj --24.3922 -1.8444 TD -0.0967 Tw -(Specifies how \(if possible\) to add an instance of an object of a particular type to a given)Tj -0 -1.2222 TD -0.0067 Tw -[(file manager command. Used by )]TJ -/TT10 1 Tf -14.9282 0 TD -0 Tw -(ADDTOFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0067 Tw -[(. Value is )]TJ -/TT15 1 Tf -4.5867 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0067 Tw -(, a function of three arguments,)Tj -/TT15 1 Tf --26.116 -1.2889 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0233 Tw -(, a file manager command )Tj -/TT10 1 Tf -11.854 0 TD -0 Tw -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0233 Tw -[( of which is )]TJ -/TT10 1 Tf -5.42 0 TD -0 Tw -(EQ)Tj -/TT12 1 Tf -1.2002 0 TD -0.0233 Tw -[( to )]TJ -/TT15 1 Tf -1.4187 0 TD -0 Tw -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -(, )Tj -/TT15 1 Tf -0.5233 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0233 Tw -(, a typed object,)Tj --33.0183 -1.2889 TD -0 Tw -(and )Tj -/TT15 1 Tf -2.0106 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0678 Tw -(, its type. )Tj -/TT15 1 Tf -4.7745 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0678 Tw -[( should return )]TJ -/TT10 1 Tf -6.7902 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0678 Tw -[( if it \(undoably\) adds )]TJ -/TT15 1 Tf -9.8838 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0678 Tw -[( to )]TJ -/TT15 1 Tf -1.5076 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5678 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0678 Tw -[( if not. If)]TJ --35.7363 -1.2889 TD -0 Tw -(no )Tj -/TT10 1 Tf -1.4868 0 TD -(ADD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1089 Tw -[( property is specified, then the default is \(1\) if )]TJ -/TT10 1 Tf -21.4102 0 TD -0 Tw -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3589 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.2622 Tw -(\) = )Tj -/TT15 1 Tf -2.9248 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1089 Tw -[( and )]TJ -/TT10 1 Tf -2.4106 0 TD -0 Tw -(\(CADR)Tj -/TT15 1 Tf --36.9927 -1.2889 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.1878 Tw -(\) = *,)Tj -/TT12 1 Tf -3.9761 0 TD -0.0778 Tw -[( and )]TJ -/TT10 1 Tf -2.3484 0 TD -0 Tw -(\(CADDR)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.3278 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0778 Tw -[( is a filevar \(i.e. a literal atom\), add )]TJ -/TT15 1 Tf -16.2547 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0778 Tw -[( to the value of)]TJ --33.1087 -1.2889 TD -0.1222 Tw -(the filevar, or \(2\) if )Tj -/TT10 1 Tf -9.0833 0 TD -0 Tw -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3722 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.2933 Tw -(\) =)Tj -/TT15 1 Tf -2.0936 0 TD -[( TYPE)]TJ -/TT12 1 Tf -3.2938 0 TD -0.1222 Tw -[( and )]TJ -/TT19 1 Tf -2.4373 0 TD -0 Tw -(\()Tj -/TT10 1 Tf -0.333 0 TD -(CADR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3722 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1222 Tw -[( is not )]TJ -/TT10 1 Tf -3.2856 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.1222 Tw -(, add )Tj -/TT15 1 Tf -2.7161 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1222 Tw -[( to )]TJ -/TT10 1 Tf -1.6165 0 TD -0 Tw -(\(CDR)Tj -/TT15 1 Tf --37.6057 -1.2889 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(. )Tj --2.4004 -2.0667 TD -0.17 Tw -(Actually, the function is given a fourth argument, )Tj -/TT15 1 Tf -23.5407 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.17 Tw -(, which if non-)Tj -/TT10 1 Tf -6.9099 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.17 Tw -(, means the)Tj --34.6513 -1.2889 TD -0.0967 Tw -(function should try to add the item after )Tj -/TT15 1 Tf -18.8075 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0967 Tw -[(. See discussion of )]TJ -/TT10 1 Tf -8.9843 0 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -0.0967 Tw -(, in the)Tj --36.7933 -1.2889 TD -0 Tw -(Storing Files section.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(DELETE)Tj -/TT6 1 Tf -10 0 0 10 182.4 225.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 393.53 225.72 Tm -([File Manager Command Property])Tj --24.3922 -1.8444 TD -0.1333 Tw -(Specifies how \(if possible\) to delete an instance of an object of a particular type from a)Tj -0 -1.2222 TD -0.0555 Tw -[(given file manager command. Used by )]TJ -/TT10 1 Tf -18.0002 0 TD -0 Tw -(DELFROMFILES)Tj -/TT12 1 Tf -7.2012 0 TD -0.0556 Tw -[(. Value is )]TJ -/TT15 1 Tf -4.7823 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0556 Tw -(, a function of three)Tj --31.1839 -1.2889 TD -0 Tw -(arguments, )Tj -/TT15 1 Tf -5.3503 0 TD -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT15 1 Tf -0.6022 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1022 Tw -(, and )Tj -/TT15 1 Tf -2.6473 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1022 Tw -(, same as for )Tj -/TT10 1 Tf -6.1423 0 TD -0 Tw -(ADD)Tj -/TT12 1 Tf -1.8003 0 TD -0.1022 Tw -(. )Tj -/TT15 1 Tf -0.9544 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.1022 Tw -[( should return )]TJ -/TT10 1 Tf -6.8936 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1022 Tw -[( if it \(undoably\))]TJ --32.7918 -1.2889 TD -0 Tw -(deletes )Tj -/TT15 1 Tf -3.3678 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0289 Tw -[( from )]TJ -/TT15 1 Tf -2.7145 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5289 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0289 Tw -[( if not. If no )]TJ -/TT10 1 Tf -5.7993 0 TD -0 Tw -(DELETE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0289 Tw -[( property is specified, then the default is)]TJ --22.012 -1.2889 TD -0 Tw -(either )Tj -/TT10 1 Tf -2.8722 0 TD -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.32 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.1689 Tw -(\) = )Tj -/TT15 1 Tf -2.7382 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.07 Tw -[( and )]TJ -/TT10 1 Tf -2.3329 0 TD -0 Tw -(\(CADR)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.32 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.1689 Tw -(\) = *)Tj -/TT12 1 Tf -3.3383 0 TD -0.07 Tw -(, and )Tj -/TT10 1 Tf -2.5829 0 TD -0 Tw -(\(CADDR)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.32 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.07 Tw -[( is a filevar \(i.e. a)]TJ --32.2273 -1.2889 TD -0.0056 Tw -(literal atom\), and )Tj -/TT15 1 Tf -7.8707 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0056 Tw -[( is contained in the value of the filevar, then remove )]TJ -/TT15 1 Tf -23.2711 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0056 Tw -[( from the)]TJ --35.9425 -1.2889 TD -0.1222 Tw -(filevar, or if )Tj -/TT10 1 Tf -5.7856 0 TD -0 Tw -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.3722 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.2933 Tw -(\) =)Tj -/TT15 1 Tf -2.0936 0 TD -[( TYPE)]TJ -/TT12 1 Tf -3.2938 0 TD -0.1222 Tw -[( and )]TJ -/TT10 1 Tf -2.4373 0 TD -0 Tw -(\(CADR)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.3722 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1222 Tw -[( is not )]TJ -/TT10 1 Tf -3.2856 0 TD -0 Tw -(*)Tj -/TT12 1 Tf -0.6001 0 TD -0.1222 Tw -(, and )Tj -/TT15 1 Tf -2.6873 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1222 Tw -[( is contained in)]TJ -/TT10 1 Tf --32.9298 -1.2889 TD -0 Tw -(\(CDR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(, then remove )Tj -/TT15 1 Tf -6.3159 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -( from )Tj -/TT10 1 Tf -2.6567 0 TD -(\(CDR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(. )Tj --21.4746 -2.0667 TD -(If )Tj -/TT15 1 Tf -1.0433 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.1233 Tw -[( returns the value of )]TJ -/TT10 1 Tf -9.7749 0 TD -0 Tw -(ALL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1233 Tw -(, it means that the command is now "empty", and can be)Tj --13.8186 -1.2889 TD -0 Tw -(deleted entirely from the command list.)Tj -ET -endstream -endobj -145 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -147 0 obj -<< -/Length 9832 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-43)Tj -/TT17 1 Tf --39.6667 60.4667 TD -(CONTENTS)Tj -/TT6 1 Tf -10 0 0 10 145.2 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 345.53 568.2 Tm -([File Manager Command Property])Tj -/TT17 1 Tf --27.0589 -1.4378 TD -(CONTAIN)Tj -/TT6 1 Tf -10 0 0 10 139.8 555.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 345.53 555.26 Tm -([File Manager Command Property])Tj --24.3922 -1.8444 TD -0.1144 Tw -(Determines whether an instance of an object of a given type is contained in a given file)Tj -0 -1.2222 TD -0.1367 Tw -[(manager command. Used by )]TJ -/TT10 1 Tf -13.9275 0 TD -0 Tw -(WHEREIS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1367 Tw -[( and )]TJ -/TT10 1 Tf -2.4662 0 TD -0 Tw -(INFILECOMS?)Tj -/TT12 1 Tf -6.6011 0 TD -0.1367 Tw -[(. Value is )]TJ -/TT15 1 Tf -5.1067 0 TD -0 Tw -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.1367 Tw -(, a function of)Tj --33.5024 -1.2889 TD -0.1656 Tw -(three arguments, )Tj -/TT15 1 Tf -8.0904 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.1656 Tw -(, a file manager command )Tj -/TT10 1 Tf -12.5651 0 TD -0 Tw -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1656 Tw -[( of which is )]TJ -/TT10 1 Tf -5.9889 0 TD -0 Tw -(EQ)Tj -/TT12 1 Tf -1.2002 0 TD -0.1656 Tw -[( to )]TJ -/TT15 1 Tf -1.7032 0 TD -0 Tw -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -(,)Tj -/TT15 1 Tf --39.7494 -1.2889 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1711 Tw -(, and )Tj -/TT15 1 Tf -2.7851 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1711 Tw -[(. The interpretation of )]TJ -/TT15 1 Tf -11.0279 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1711 Tw -[( is as follows: if )]TJ -/TT15 1 Tf -7.8829 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1711 Tw -[( is )]TJ -/TT10 1 Tf -1.5571 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT15 1 Tf -0.6711 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.1711 Tw -[( should)]TJ --36.5261 -1.2889 TD -0.0067 Tw -(return a list of elements of type )Tj -/TT15 1 Tf -14.0721 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0067 Tw -[( contained in )]TJ -/TT15 1 Tf -6.0039 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0067 Tw -[(. If )]TJ -/TT15 1 Tf -1.6899 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0067 Tw -[( is )]TJ -/TT10 1 Tf -1.2282 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -(, )Tj -/TT15 1 Tf -0.5067 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -0.0067 Tw -[( should return )]TJ -/TT10 1 Tf -6.6069 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0067 Tw -[( if)]TJ --39.1091 -1.2889 TD -0.1567 Tw -(there are )Tj -/TT8 1 Tf -4.4486 0 TD -0 Tw -(any)Tj -/TT12 1 Tf -1.5 0 TD -0.1567 Tw -[( elements of type )]TJ -/TT15 1 Tf -8.4108 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1567 Tw -[( in )]TJ -/TT15 1 Tf -1.6864 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.1567 Tw -[(. If )]TJ -/TT15 1 Tf -2.1399 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.1567 Tw -[( is an atom other than )]TJ -/TT10 1 Tf -10.8101 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.1567 Tw -[( or )]TJ -/TT10 1 Tf -1.7543 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(,)Tj --39.7516 -1.2889 TD -(return )Tj -/TT10 1 Tf -3.0525 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.0222 Tw -[( if )]TJ -/TT15 1 Tf -1.1685 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( of type )]TJ -/TT15 1 Tf -3.658 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( is contained in )]TJ -/TT15 1 Tf -7.0376 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0222 Tw -[(. Finally, if )]TJ -/TT15 1 Tf -5.2803 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( is a list, return a list of)]TJ --29.7984 -1.2889 TD -0 Tw -(those elements of type )Tj -/TT15 1 Tf -10.1411 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( contained in )Tj -/TT15 1 Tf -5.9839 0 TD -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -( that are also contained in )Tj -/TT15 1 Tf -11.603 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --34.3291 -2.0667 TD -0.0167 Tw -(It is sufficient for the )Tj -/TT10 1 Tf -9.4784 0 TD -0 Tw -(CONTENTS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0167 Tw -[( function to simply return the list of items of type )]TJ -/TT15 1 Tf -22.1809 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0167 Tw -[( in)]TJ --38.8604 -1.2889 TD -0 Tw -(command )Tj -/TT15 1 Tf -4.9338 0 TD -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.2356 Tw -(, i.e. it can in fact ignore the )Tj -/TT15 1 Tf -14.2599 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.2356 Tw -[( argument. The )]TJ -/TT15 1 Tf -8.1903 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.2356 Tw -[( argument is)]TJ --33.9851 -1.2889 TD -0.1967 Tw -(supplied mainly for those situations where producing the entire list of items involves)Tj -0 -1.2222 TD -0.0378 Tw -(significantly more computation or creates more storage than simply determining whether)Tj -T* -0 Tw -(a particular item \(or any item\) of type )Tj -/TT15 1 Tf -16.8906 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( is contained in the command.)Tj --19.291 -2.0667 TD -0.1178 Tw -(If a )Tj -/TT10 1 Tf -1.9055 0 TD -0 Tw -(CONTENTS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1178 Tw -[( property is specified and the corresponding function application returns)]TJ -/TT10 1 Tf --6.7063 -1.2889 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0144 Tw -[( and )]TJ -/TT10 1 Tf -2.2218 0 TD -0 Tw -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.2644 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.0344 Tw -(\) = )Tj -/TT15 1 Tf -2.4693 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0144 Tw -[(, then the operation indicated by )]TJ -/TT15 1 Tf -14.9678 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0144 Tw -[( is performed on the)]TJ --30.7251 -1.2889 TD -0.0033 Tw -(value of )Tj -/TT10 1 Tf -3.8236 0 TD -0 Tw -(\(CADDR)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.2533 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0033 Tw -(, if )Tj -/TT10 1 Tf -1.3807 0 TD -0 Tw -(\(CADR)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.2533 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -0.0067 Tw -(\) = *)Tj -/TT12 1 Tf -3.0138 0 TD -0.0033 Tw -(, otherwise on )Tj -/TT10 1 Tf -6.4939 0 TD -0 Tw -(\(CDR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.2533 0 TD -(COM)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -(. In other words, by)Tj --31.0745 -1.2889 TD -0 Tc -0.0122 Tw -(specifying a )Tj -/TT10 1 Tf -5.5816 0 TD -0 Tw -(CONTENTS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0122 Tw -[( property that returns )]TJ -/TT10 1 Tf -9.8868 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0122 Tw -(, e.g. the function )Tj -/TT10 1 Tf -7.9283 0 TD -0 Tw -(NILL)Tj -/TT12 1 Tf -2.4004 0 TD -0.0122 Tw -(, you specify that)Tj --32.3981 -1.2889 TD -(a file manager command of name )Tj -/TT10 1 Tf -15.1334 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0122 Tw -[( produces objects of file manager type )]TJ -/TT10 1 Tf -17.0743 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0122 Tw -[( and only)]TJ --35.8083 -1.2889 TD -0 Tw -(objects of type )Tj -/TT10 1 Tf -6.5972 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --8.3975 -2.0667 TD -0.02 Tw -(If the )Tj -/TT10 1 Tf -2.5971 0 TD -0 Tw -(CONTENTS)Tj -/TT12 1 Tf -4.8008 0 TD -0.02 Tw -[( property is not provided, the command is simply expanded according to)]TJ --7.3979 -1.2889 TD -0 Tw -(its )Tj -/TT10 1 Tf -1.7321 0 TD -(MACRO)Tj -/TT12 1 Tf -3.0005 0 TD -0.4411 Tw -[( definition, and each command on the resulting command list is then)]TJ --4.7326 -1.2889 TD -0 Tw -(interrogated.)Tj -0 -2 TD -(If )Tj -/TT15 1 Tf -0.9766 0 TD -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -0.0567 Tw -[( is a file manager command that is used frequently, its expansion by the)]TJ --7.5777 -1.2889 TD -0.1 Tw -(various parts of the system that need to interrogate files can result in a large number of)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CONS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0456 Tw -[(es and garbage collections. By informing the file manager as to what this command)]TJ --2.4004 -1.2889 TD -0.3322 Tw -(actually does and does not produce via the )Tj -/TT10 1 Tf -21.857 0 TD -0 Tw -(CONTENTS)Tj -/TT12 1 Tf -4.8008 0 TD -0.3322 Tw -[( property, this expansion is)]TJ --26.6578 -1.2889 TD -0.2078 Tw -[(avoided. For example, suppose you have a file manager command called )]TJ -/TT10 1 Tf -35.2038 0 TD -0 Tw -(GRAMMARS)Tj -/TT12 1 Tf --35.2038 -1.2889 TD -0.0522 Tw -[(which dumps various property lists but no functions. The file manager could ignore this)]TJ -0 -1.2222 TD -0 Tw -(command when seeking information about )Tj -/TT10 1 Tf -19.3457 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj --26.4793 -2.9556 TD -0.0356 Tw -(The function )Tj -/TT10 1 Tf -5.952 0 TD -0 Tw -(FILEPKGCOM)Tj -/TT12 1 Tf -6.001 0 TD -0.0355 Tw -[( is used to define new file manager commands, or to change the properties)]TJ --11.9529 -1.2889 TD -0.0189 Tw -[(of existing commands. It is possible to redefine the attributes of system file manager commands, such)]TJ -0 -1.2222 TD -0 Tw -(as )Tj -/TT10 1 Tf -1.1738 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(PROPS)Tj -/TT12 1 Tf -3.0005 0 TD -(, and to cause unpredictable results.)Tj -/TT10 1 Tf --4.7489 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEPKGCOM)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COMMANDNAME)Tj -/TT8 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3989 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 353.1009 117.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 401.99 117.32 Tm -([NoSpread Function])Tj --30.6656 -2.0667 TD -0.1267 Tw -(Nospread function for defining new file manager commands, or changing properties of)Tj -0 -1.2222 TD -0.2078 Tw -(existing file manager commands. )Tj -/TT15 1 Tf -15.7076 0 TD -0.5 Tw -[( PROP)]TJ -3.5024 -0.2222 TD -0 Tw -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.2078 Tw -[( is one of of the property names described)]TJ --19.81 -1.5111 TD -0 Tw -(above; )Tj -/TT15 1 Tf -3.4753 0 TD -(VAL)Tj -1.7992 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.3322 Tw -[( is the value to be given that property of the file manager command)]TJ -/TT15 1 Tf --5.8744 -1.5111 TD -0 Tw -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -(. Returns )Tj -/TT15 1 Tf -4.4771 0 TD -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj -ET -endstream -endobj -148 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -150 0 obj -<< -/Length 8662 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-44)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(\(FILEPKGCOM)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.4444 0 TD -(COMMANDNAME)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.4444 0 TD -(PROP)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1944 Tw -[( returns the value of the property )]TJ -/TT15 1 Tf -16.3059 0 TD -0 Tw -(PROP)Tj -/TT12 1 Tf -2.4004 0 TD -0.1944 Tw -(, without)Tj --35.7979 -1.2889 TD -0 Tw -(changing it.)Tj -/TT10 1 Tf -0 -2 TD -(\(FILEPKGCOM)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.3533 0 TD -(COMMANDNAME)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1033 Tw -[( returns a property list of all of the defined properties of)]TJ -/TT15 1 Tf --14.1556 -1.2889 TD -0 Tw -(COMMANDNAME)Tj -/TT12 1 Tf -6.6011 0 TD -(, using the property names as keys.)Tj --6.6011 -2.0667 TD -(Specifying )Tj -/TT15 1 Tf -4.9382 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.03 Tw -[( as the symbol )]TJ -/TT10 1 Tf -6.684 0 TD -0 Tw -(COM)Tj -/TT12 1 Tf -1.8003 0 TD -0.03 Tw -[( can be used to define one file manager command as a)]TJ --15.8229 -1.2889 TD -0.5311 Tw -[(synonym of another. For example, )]TJ -/TT10 1 Tf -18.8507 0 TD -1.2744 Tw -(\(FILEPKGCOM INITVARIABLES COM)Tj --18.8507 -1.2889 TD -0 Tw -(INITVARS\))Tj -/TT12 1 Tf -6.001 0 TD -0.2544 Tw -[( defines )]TJ -/TT10 1 Tf -4.2076 0 TD -0 Tw -(INITVARIABLES)Tj -/TT12 1 Tf -7.8013 0 TD -0.2544 Tw -[( as a synonym for the file manager command)]TJ -/TT10 1 Tf --18.0099 -1.2889 TD -0 Tw -(INITVARS)Tj -/TT12 1 Tf -4.8008 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 432 Tm -(Functions for Manipulating File Command Lists)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 429.29 m -558.01 429.29 l -S -BT -/TT12 1 Tf -9 0 0 9 126 407.34 Tm -0.0944 Tw -[(The following functions may be used to manipulate filecoms. The argument )]TJ -/TT15 1 Tf -35.1626 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0944 Tw -[( does )]TJ -/TT8 1 Tf -2.7485 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.0944 Tw -[( have to)]TJ --41.6445 -1.2889 TD -0.0189 Tw -[(correspond to the filecoms for some file. For example, )]TJ -/TT15 1 Tf -24.4067 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0189 Tw -[( can be the list of commands generated as)]TJ --26.8071 -1.2889 TD -0 Tw -(a result of expanding a user-defined file manager command.)Tj -0 -2.8889 TD -0.0044 Tw -(The following functions will accept a file manager command as a valid value for their )Tj -/TT15 1 Tf -38.0965 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0004 Tc -0.004 Tw -( argument,)Tj --40.4968 -1.2889 TD -0 Tc -0.0344 Tw -[(even if it does not have a corresponding file manager type. User-defined file manager commands are)]TJ -0 -1.2222 TD -0 Tw -(expanded as necessary.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(INFILECOMS)Tj -/TT10 1 Tf -6.001 0 TD -(?)Tj -/TT8 1 Tf -0.5989 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COMS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 291.7614 313.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 313.2 Tm -([Function])Tj -/TT15 1 Tf --35.4033 -1.8444 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.2289 Tw -[( is a list of file manager commands, or a variable whose value is a list of file)]TJ --2.4004 -1.2889 TD -0.12 Tw -(manager commands. )Tj -/TT15 1 Tf -10.1271 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.12 Tw -[( is a file manager type. )]TJ -/TT10 1 Tf -11.3063 0 TD -0 Tw -(INFILECOMS?)Tj -/TT12 1 Tf -6.6011 0 TD -0.12 Tw -[( returns )]TJ -/TT10 1 Tf -3.9441 0 TD -0 Tw -(T)Tj -/TT12 1 Tf -0.6001 0 TD -0.12 Tw -[( if )]TJ -/TT15 1 Tf -1.364 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.12 Tw -[( of)]TJ --38.7435 -1.2889 TD -0 Tw -(type )Tj -/TT15 1 Tf -2.2124 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( is "contained" in )Tj -/TT15 1 Tf -7.6909 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --14.7041 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9199 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -( = NIL)Tj -/TT12 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(INFILECOMS?)Tj -/TT12 1 Tf -6.6011 0 TD -( returns a list of all elements of type )Tj -/TT15 1 Tf -16.0312 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj --32.4536 -2.0667 TD -(If )Tj -/TT15 1 Tf -0.9199 0 TD -(NAME )Tj -/TT10 1 Tf -3.0005 0 TD -(= T)Tj -/TT12 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(INFILECOMS?)Tj -/TT12 1 Tf -6.6011 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -( if there are )Tj -/TT8 1 Tf -5.2593 0 TD -(any)Tj -/TT12 1 Tf -1.5 0 TD -( elements of type )Tj -/TT15 1 Tf -7.7842 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( in )Tj -/TT15 1 Tf -1.373 0 TD -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --40.5099 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDTOFILE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NEAR)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LISTNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 350.272 213.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 213.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Adds )Tj -/TT15 1 Tf -2.7022 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0289 Tw -[( of type )]TJ -/TT15 1 Tf -3.678 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0289 Tw -[( to the file manager commands for )]TJ -/TT15 1 Tf -15.6466 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0289 Tw -[(. If )]TJ -/TT15 1 Tf -1.7566 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0289 Tw -[( is given and it)]TJ --33.3849 -1.2889 TD -0.0033 Tw -(is the name of an item of type )Tj -/TT15 1 Tf -13.3538 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0003 Tc -0.003 Tw -( already on )Tj -/TT15 1 Tf -5.22 0 TD -0 Tc -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0033 Tw -(, then )Tj -/TT15 1 Tf -2.7259 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( is added to the command)Tj --28.5009 -1.2889 TD -0 Tc -0.0611 Tw -(that dumps )Tj -/TT15 1 Tf -5.4782 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0611 Tw -[(. If )]TJ -/TT15 1 Tf -1.8533 0 TD -0 Tw -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.0611 Tw -[( is given and is the name of a list of items of )]TJ -/TT15 1 Tf -20.3428 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0611 Tw -[( items)]TJ --37.2758 -1.2889 TD -0 Tw -(on )Tj -/TT15 1 Tf -1.4757 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0978 Tw -(, then )Tj -/TT15 1 Tf -2.9148 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0978 Tw -[( is added to that list. Uses )]TJ -/TT10 1 Tf -12.6016 0 TD -0 Tw -(ADDTOCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.0978 Tw -[( and )]TJ -/TT10 1 Tf -2.3884 0 TD -0 Tw -(MAKENEWCOM)Tj -/TT12 1 Tf -6.001 0 TD -0.0978 Tw -[(. Returns)]TJ -/TT15 1 Tf --35.5831 -1.2889 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(ADDTOFILE)Tj -/TT12 1 Tf -5.4009 0 TD -( is undoable.)Tj -/TT10 1 Tf --11.2179 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DELFROMFILES)Tj -/TT12 1 Tf -7.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILES)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 302.5623 127.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 127.32 Tm -([Function])Tj --35.4033 -1.8444 TD -0.21 Tw -(Deletes all instances of )Tj -/TT15 1 Tf -11.1047 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.21 Tw -[( of type )]TJ -/TT15 1 Tf -4.2213 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.21 Tw -[( from the filecoms for each of the files on)]TJ -/TT15 1 Tf --20.1267 -1.2889 TD -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT15 1 Tf -1.6766 0 TD -0 Tc -0 Tw -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -0.0002 Tc -0.002 Tw -( is a non-)Tj -/TT10 1 Tf -4.0145 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0002 Tc -0.002 Tw -( symbol, )Tj -/TT10 1 Tf -4.0074 0 TD -0 Tc -0 Tw -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT15 1 Tf -0.2522 0 TD -(FILES)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0002 Tc -0.002 Tw -( is used. )Tj -/TT15 1 Tf -4.0904 0 TD -0 Tc -0 Tw -(FILES)Tj -/TT10 1 Tf -3.0005 0 TD -0.0056 Tw -[( = NIL)]TJ -/TT12 1 Tf -3.6117 0 TD -0.0002 Tc -0.002 Tw -( defaults to)Tj -/TT10 1 Tf --35.0556 -1.2889 TD -0 Tc -0 Tw -(FILELST)Tj -/TT12 1 Tf -4.2007 0 TD -0.3689 Tw -[(. Returns a list of files from which )]TJ -/TT15 1 Tf -18.7155 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.3689 Tw -[( was actually removed. Uses)]TJ -/TT10 1 Tf --25.3166 -1.2889 TD -0 Tw -(DELFROMCOMS)Tj -/TT12 1 Tf -6.6011 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(DELFROMFILES)Tj -/TT12 1 Tf -7.2012 0 TD -( is undoable.)Tj --14.5522 -2.0667 TD -0.1389 Tw -(Deleting a function will also remove the function from any )Tj -/TT10 1 Tf -27.5779 0 TD -0 Tw -(BLOCKS)Tj -/TT12 1 Tf -3.6006 0 TD -0.1389 Tw -[( declarations in the)]TJ --31.1784 -1.2889 TD -0 Tw -(filecoms.)Tj -ET -endstream -endobj -151 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -153 0 obj -<< -/Length 9024 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-45)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDTOCOMS)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NEAR)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(LISTNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 302.272 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Adds )Tj -/TT15 1 Tf -2.6956 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( as a )]TJ -/TT15 1 Tf -2.2405 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -[( to )]TJ -/TT15 1 Tf -1.4165 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0222 Tw -(, a list of file manager commands or a variable whose value)Tj --13.5537 -1.2889 TD -0.1811 Tw -[(is a list of file manager commands. Returns )]TJ -/TT10 1 Tf -21.194 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.1811 Tw -[( if )]TJ -/TT10 1 Tf -1.4862 0 TD -0 Tw -(ADDTOCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.1811 Tw -[( was unable to find a)]TJ --29.8814 -1.2889 TD -0.0989 Tw -(command appropriate for adding )Tj -/TT15 1 Tf -15.504 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0989 Tw -[( to )]TJ -/TT15 1 Tf -1.5699 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.0989 Tw -(. )Tj -/TT15 1 Tf -0.9478 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0989 Tw -[( and )]TJ -/TT15 1 Tf -2.3906 0 TD -0 Tw -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.0989 Tw -[( are described in)]TJ --32.4142 -1.2889 TD -0 Tw -(the discussion of )Tj -/TT10 1 Tf -7.6553 0 TD -(ADDTOFILE)Tj -/TT12 1 Tf -5.4009 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(ADDTOCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -( is undoable.)Tj --19.207 -2.0667 TD -0.1289 Tw -[(The exact algorithm for adding commands depends the particular command itself. See)]TJ -0 -1.2222 TD -0 Tw -(discussion of the )Tj -/TT10 1 Tf -7.6553 0 TD -(ADD)Tj -/TT12 1 Tf -1.8003 0 TD -( property, in the description of )Tj -/TT10 1 Tf -13.7783 0 TD -(FILEPKGCOM)Tj -/TT12 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --29.2349 -2.0667 TD -(ADDTOCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.2756 Tw -[( will not attempt to add an item to any command which is inside of a)]TJ -/TT10 1 Tf --5.4009 -1.2889 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.1989 Tw -[( unless you specified a specific name via the )]TJ -/TT10 1 Tf -21.4941 0 TD -0 Tw -(LISTNAME)Tj -/TT12 1 Tf -4.8008 0 TD -0.1989 Tw -[( or )]TJ -/TT10 1 Tf -1.8387 0 TD -0 Tw -(NEAR)Tj -/TT12 1 Tf -2.4004 0 TD -0.1989 Tw -[( option of)]TJ -/TT10 1 Tf --35.3348 -1.2889 TD -0 Tw -(ADDTOFILES?)Tj -/TT12 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --9.2677 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DELFROMCOMS)Tj -/TT12 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(COMS)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 243.7614 422.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 422.46 Tm -([Function])Tj --35.4033 -1.8444 TD -(Deletes )Tj -/TT15 1 Tf -3.542 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -[( as a )]TJ -/TT15 1 Tf -2.2938 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -[( from )]TJ -/TT15 1 Tf -2.7367 0 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -0.04 Tw -[(. Returns )]TJ -/TT10 1 Tf -4.5971 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.04 Tw -[( if )]TJ -/TT10 1 Tf -1.204 0 TD -0 Tw -(DELFROMCOMS)Tj -/TT12 1 Tf -6.6011 0 TD -0.04 Tw -[( was unable to modify)]TJ -/TT15 1 Tf --29.9761 -1.2889 TD -0 Tw -(COMS)Tj -/TT12 1 Tf -2.4004 0 TD -( to delete )Tj -/TT15 1 Tf -4.2871 0 TD -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(DELFROMCOMS)Tj -/TT12 1 Tf -6.6011 0 TD -( is undoable.)Tj -/TT10 1 Tf --19.1056 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MAKENEWCOM)Tj -/TT12 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 214.5079 371.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 371.32 Tm -([Function])Tj --35.4033 -1.8444 TD -0.13 Tw -(Returns a file manager command for dumping )Tj -/TT15 1 Tf -21.7752 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.13 Tw -[( of type )]TJ -/TT15 1 Tf -3.9813 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.13 Tw -(. Uses the procedure)Tj --30.5573 -1.2889 TD -0 Tw -(described in the discussion of )Tj -/TT10 1 Tf -13.3149 0 TD -(NEWCOM)Tj -/TT12 1 Tf -3.6006 0 TD -(, in the Defining New File Manager Types section.)Tj -/TT10 1 Tf --19.5822 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(MOVETOFILE)Tj -/TT12 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TOFILE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FROMFILE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 294.6202 320.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 320.18 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0333 Tw -(Moves the definition of )Tj -/TT15 1 Tf -10.691 0 TD -0 Tw -(NAME)Tj -/TT12 1 Tf -2.4004 0 TD -0.0333 Tw -[( as a )]TJ -/TT15 1 Tf -2.2738 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0333 Tw -[( from )]TJ -/TT15 1 Tf -2.7234 0 TD -0 Tw -(FROMFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0333 Tw -[( to)]TJ -/TT8 1 Tf -1.1554 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.2833 0 TD -(TOFILE)Tj -/TT12 1 Tf -3.6006 0 TD -0.0333 Tw -[( by modifying the file)]TJ --30.3291 -1.2889 TD -0 Tw -(commands in the appropriate way \(with )Tj -/TT10 1 Tf -18.124 0 TD -(DELFROMFILES)Tj -/TT12 1 Tf -7.2012 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(ADDTOFILE)Tj -/TT12 1 Tf -5.4009 0 TD -(\).)Tj --32.9189 -2.0667 TD -0.0833 Tw -(Note that if )Tj -/TT15 1 Tf -5.5405 0 TD -0 Tw -(FROMFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0833 Tw -[( is specified, the definition will be retrieved from that file, even if)]TJ --10.3413 -1.2889 TD -0 Tw -(there is another definition currently in your environment.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILECOMSLST)Tj -/TT4 1 Tf -10 0 0 10 166.8 239.44 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 169.5783 239.44 Tm -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 220.4362 239.44 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 239.44 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns a list of all objects of type )Tj -/TT15 1 Tf -15.1172 0 TD -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -( in )Tj -/TT15 1 Tf -1.373 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --23.9577 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEFNSLST)Tj -/TT12 1 Tf -5.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 190.6544 199.9 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 199.9 Tm -([Function])Tj --35.4033 -1.8444 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(\(FILECOMSLST)Tj -/TT19 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FNS\))Tj -/TT12 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --19.5793 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILECOMS)Tj -/TT12 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 203.7079 160.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 160.36 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.877 0 TD -(\(PACK*)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT15 1 Tf -0.4 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4 0 TD -(\(OR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.4 0 TD -(TYPE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4 0 TD -(COMS\)\))Tj -/TT12 1 Tf -4.2007 0 TD -0.15 Tw -(. Note that )Tj -/TT10 1 Tf -5.3665 0 TD -0.3611 Tw -(\(FILECOMS FOO\))Tj -/TT12 1 Tf -9.3626 0 TD -0.15 Tw -[( returns the)]TJ --34.6085 -1.2889 TD -0 Tw -(symbol )Tj -/TT10 1 Tf -3.5029 0 TD -(FOOCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -(, not the value of )Tj -/TT10 1 Tf -7.6582 0 TD -(FOOCOMS)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --22.2292 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(SMASHFILECOMS)Tj -/TT12 1 Tf -7.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 206.8544 109.22 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 109.22 Tm -([Function])Tj --35.4033 -1.8444 TD -0.09 Tw -(Maps down )Tj -/TT10 1 Tf -5.7235 0 TD -0 Tw -(\(FILECOMSLST)Tj -/TT19 1 Tf -7.2012 0 TD -( )Tj -/TT15 1 Tf -0.34 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.34 0 TD -(FILEVARS\))Tj -/TT12 1 Tf -6.001 0 TD -0.09 Tw -[( and sets to )]TJ -/TT10 1 Tf -5.5778 0 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -0.09 Tw -[( all filevars \(see the)]TJ --31.1844 -1.2889 TD -0.3178 Tw -(FileVars section\), i.e., any variable used in a command of the form )Tj -/TT10 1 Tf -33.2396 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(COMMAND)Tj -/TT10 1 Tf -4.2007 0 TD -0.7611 Tc -( *)Tj -/TT15 1 Tf --38.0404 -1.2889 TD -0 Tc -(VARIABLE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -(. Also sets )Tj -/TT10 1 Tf -4.9414 0 TD -(\(FILECOMS)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(. Returns )Tj -/TT15 1 Tf -4.4771 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -154 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -156 0 obj -<< -/Length 7707 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-46)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Symbolic File Format)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT12 1 Tf -9 0 0 9 126 543.54 Tm -0.0467 Tw -[(The file manager manipulates symbolic files in a particular format. This format is defined so that the)]TJ -0 -1.2222 TD -0.0367 Tw -(information in the file is easily readable when the file is listed, as well as being easily manipulated by)Tj -T* -0.0189 Tw -[(the file manager functions. In general, there is no reason for you to manually change the contents of a)]TJ -T* -0.1078 Tw -[(symbolic file. However, to allow you to extend the file manager, this section describes some of the)]TJ -T* -0 Tw -(functions used to write symbolic files, and other matters related to their format.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PRETTYDEF)Tj -/TT19 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PRTTYFNS)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PRTTYFILE)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PRTTYCOMS)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(REPRINTFNS)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(SOURCEFILE)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(CHANGES)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 509.1475 477.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 156 467.6 Tm -([Function])Tj -2 -1.7778 TD -0.06 Tw -(Writes a symbolic file in )Tj -/TT10 1 Tf -11.2199 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.06 Tw -[( format for loading, using )]TJ -/TT10 1 Tf -11.8898 0 TD -0 Tw -(FILERDTBL)Tj -/TT12 1 Tf -5.4009 0 TD -0.06 Tw -[( as its read)]TJ --35.1117 -1.2889 TD -0 Tw -(table. )Tj -/TT10 1 Tf -2.8994 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -( returns the name of the symbolic file that was created.)Tj -/TT10 1 Tf --8.3003 -2.0667 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.2178 Tw -[( operates under a )]TJ -/TT10 1 Tf -8.791 0 TD -0 Tw -(RESETLST)Tj -/TT12 1 Tf -4.8008 0 TD -0.2178 Tw -[( \(see Chapter 14\), so if an error occurs, or a)]TJ --18.9927 -1.2889 TD -0.2011 Tw -(Control-D is typed, all files that )Tj -/TT10 1 Tf -15.381 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.2011 Tw -[( has opened will be closed, the \(partially)]TJ --20.7819 -1.2889 TD -0.0111 Tw -(complete\) file being written will be deleted, and any undoable operations executed will be)Tj -0 -1.2222 TD -0.1011 Tw -[(undone. The )]TJ -/TT10 1 Tf -6.38 0 TD -0 Tw -(RESETLST)Tj -/TT12 1 Tf -4.8008 0 TD -0.1011 Tw -[( also means that any )]TJ -/TT10 1 Tf -9.7565 0 TD -0 Tw -(RESETSAVE)Tj -/TT12 1 Tf -5.4009 0 TD -0.1011 Tw -(s executed in the file manager)Tj --26.3382 -1.2889 TD -0 Tw -(commands will also be protected.)Tj -/TT15 1 Tf -0 -2 TD -(PRTTYFNS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1467 Tw -[( is an optional list of function names. It is equivalent to including )]TJ -/TT10 1 Tf -31.2462 0 TD -0.3522 Tw -(\(FNS *)Tj -/TT15 1 Tf --36.047 -1.2889 TD -0 Tw -(PRTTYFNS)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0267 Tw -[( in the file manager commands in )]TJ -/TT15 1 Tf -15.2311 0 TD -0 Tw -(PRTTYCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.0267 Tw -(. )Tj -/TT15 1 Tf -0.8033 0 TD -0 Tw -(PRTTYFNS)Tj -/TT12 1 Tf -4.8008 0 TD -0.0267 Tw -[( is an anachronism)]TJ --31.637 -1.2889 TD -0.22 Tw -(from when )Tj -/TT10 1 Tf -5.5738 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.22 Tw -[( did not use a list of file manager commands, and should be)]TJ --10.9747 -1.2889 TD -0 Tw -(specified as )Tj -/TT10 1 Tf -5.3765 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT15 1 Tf --7.1768 -2.0667 TD -(PRTTYFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0522 Tw -[( is the name of the file on which the output is to be written. )]TJ -/TT15 1 Tf -27.3976 0 TD -0 Tw -(PRTTYFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0522 Tw -[( has)]TJ --38.1993 -1.2889 TD -0.0333 Tw -[(to be a symbnol. If )]TJ -/TT15 1 Tf -9.1425 0 TD -0 Tw -(PRTTYFILE)Tj -/TT10 1 Tf -5.4009 0 TD -0.0811 Tw -[( = NIL)]TJ -/TT12 1 Tf -3.7628 0 TD -0.0333 Tw -[(, the primary output file is used. )]TJ -/TT15 1 Tf -15.2893 0 TD -0 Tw -(PRTTYFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0333 Tw -[( is)]TJ --38.9963 -1.2889 TD -0.0267 Tw -(opened if not already open, and it becomes the primary output file. )Tj -/TT15 1 Tf -30.5381 0 TD -0 Tw -(PRTTYFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.0267 Tw -[( is closed)]TJ --35.939 -1.2889 TD -0 Tw -(at end of )Tj -/TT10 1 Tf -4.127 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(, and the primary output file is restored.)Tj -/TT15 1 Tf --9.5278 -2.0667 TD -(PRTTYCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.2844 Tw -[( is a list of file manager commands interpreted as described in the File)]TJ --5.4009 -1.2889 TD -0.0744 Tw -[(Manager Commands section. If )]TJ -/TT15 1 Tf -14.7292 0 TD -0 Tw -(PRTTYCOMS)Tj -/TT12 1 Tf -5.4009 0 TD -0.0744 Tw -[( is atomic, its top level value is used and an)]TJ -/TT10 1 Tf --20.13 -1.2889 TD -0 Tw -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.2544 Tw -[( is written which will set that atom to the list of commands when the file is)]TJ --3.0005 -1.2889 TD -0.1522 Tw -[(subsequently loaded. A )]TJ -/TT10 1 Tf -11.5547 0 TD -0 Tw -(PRETTYCOMPRINT)Tj -/TT12 1 Tf -8.4014 0 TD -0.1522 Tw -[( expression \(see below\) will also be written)]TJ --19.9561 -1.2889 TD -0.06 Tw -(which informs you of the named atom or list of commands when the file is subsequently)Tj -0 -1.2222 TD -0.0433 Tw -[(loaded. In addition, if any of the functions in the file are nlambda functions, )]TJ -/TT10 1 Tf -34.6026 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf --34.6026 -1.2889 TD -0.0189 Tw -(will automatically print a )Tj -/TT10 1 Tf -11.535 0 TD -0 Tw -(DECLARE:)Tj -/TT12 1 Tf -4.8008 0 TD -0.0189 Tw -[( expression suitable for informing the compiler about)]TJ --16.3358 -1.2889 TD -0.1356 Tw -(these functions, in case you recompile the file without having first loaded the nlambda)Tj -0 -1.2222 TD -0 Tw -(functions \(see Chapter 18\).)Tj -/TT15 1 Tf -0 -2 TD -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.1211 Tw -[( and )]TJ -/TT15 1 Tf -2.4351 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.1211 Tw -[( are for use in conjunction with remaking a file \(see the)]TJ --14.437 -1.2889 TD -0.3433 Tw -(Remaking a Symbolic File section\). )Tj -/TT15 1 Tf -17.956 0 TD -0 Tw -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -0.3433 Tw -[( can be a list of functions to be)]TJ --23.957 -1.2889 TD -0.0633 Tw -(prettyprinted, or )Tj -/TT10 1 Tf -7.7863 0 TD -0 Tw -(EXPRS)Tj -/TT12 1 Tf -3.0005 0 TD -0.0633 Tw -(, meaning prettyprint all functions with )Tj -/TT10 1 Tf -18.128 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0633 Tw -[( definitions, or )]TJ -/TT10 1 Tf -6.8868 0 TD -0 Tw -(ALL)Tj -/TT12 1 Tf --38.202 -1.2889 TD -0.0389 Tw -(meaning prettyprint all functions either defined as )Tj -/TT10 1 Tf -22.8489 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0389 Tw -(s, or with )Tj -/TT10 1 Tf -4.5146 0 TD -0 Tw -(EXPR)Tj -/TT12 1 Tf -2.4004 0 TD -0.0389 Tw -[( properties. Note)]TJ --32.1643 -1.2889 TD -0.0133 Tw -(that doing a remake with )Tj -/TT15 1 Tf -11.4622 0 TD -0 Tw -(REPRINTFNS )Tj -/TT10 1 Tf -6.6322 0 TD -0.0311 Tw -(= NIL)Tj -/TT12 1 Tf -3.0316 0 TD -0.0133 Tw -[( makes sense if there have been changes in)]TJ --21.126 -1.2889 TD -0.27 Tw -(the file, but not to any of the functions, e.g., changes to variables or property lists.)Tj -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.0156 Tw -[( is the name of the file from which to copy the definitions for those functions)]TJ --6.001 -1.2889 TD -0.4389 Tw -(that are )Tj -/TT8 1 Tf -4.4862 0 TD -0 Tw -(not)Tj -/TT12 1 Tf -1.333 0 TD -0.4389 Tw -[( going to be prettyprinted, i.e., those not specified by )]TJ -/TT15 1 Tf -27.9363 0 TD -0 Tw -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -(.)Tj -/TT15 1 Tf --39.7564 -1.2889 TD -(SOURCEFILE )Tj -/TT10 1 Tf -7.5555 0 TD -0.9544 Tw -(= T)Tj -/TT12 1 Tf -2.7547 0 TD -0.3978 Tw -[( means to use most recent version \(i.e., highest number\) of)]TJ -ET -endstream -endobj -157 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -159 0 obj -<< -/Length 7514 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-47)Tj -/TT15 1 Tf --37 60.6156 TD -(PRTTYFILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.2433 Tw -(, the second argument to )Tj -/TT10 1 Tf -12.3856 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.2433 Tw -[(. If )]TJ -/TT15 1 Tf -2.3999 0 TD -0 Tw -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -0.2433 Tw -[( cannot be found,)]TJ -/TT10 1 Tf --31.5883 -1.2889 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1467 Tw -[( prints the message )]TJ -/TT10 1 Tf -9.3376 0 TD -0 Tw -(")Tj -/TT15 1 Tf -0.6001 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -0.3511 Tw -[( NOT FOUND, SO IT WILL BE WRITTEN)]TJ --17.739 -1.2889 TD -0 Tw -(ANEW",)Tj -/TT12 1 Tf -3.6006 0 TD -( and proceeds as it does when )Tj -/TT15 1 Tf -13.499 0 TD -(REPRINTFNS)Tj -/TT12 1 Tf -6.001 0 TD -( and )Tj -/TT15 1 Tf -2.1929 0 TD -(SOURCEFILE)Tj -/TT12 1 Tf -6.001 0 TD -( are both )Tj -/TT10 1 Tf -4.1313 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --37.2261 -2.0667 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.2611 Tw -[( calls )]TJ -/TT10 1 Tf -2.9719 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.2611 Tw -[( with its second argument )]TJ -/TT15 1 Tf -13.0394 0 TD -0 Tw -(PRETTYDEFLG)Tj -/TT10 1 Tf -6.6011 0 TD -0.6267 Tw -[( = T)]TJ -/TT12 1 Tf -3.6537 0 TD -0.2611 Tw -(, so)Tj --38.2681 -1.2889 TD -0 Tw -(whenever )Tj -/TT10 1 Tf -4.655 0 TD -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.01 Tw -[( starts a new function, it prints \(on the terminal\) the name of that)]TJ --11.2561 -1.2889 TD -0.0389 Tw -(function if more than 30 seconds \(real time\) have elapsed since the last time it printed the)Tj -0 -1.2222 TD -0 Tw -(name of a function.)Tj -0 -2 TD -0.0467 Tw -(Note that normally if )Tj -/TT10 1 Tf -9.7711 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.0467 Tw -[( is given a symbol which is not defined as a function)]TJ --16.3722 -1.2889 TD -0.0089 Tw -(but is known to be on one of the files noticed by the file manager, )Tj -/TT10 1 Tf -29.2183 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.0089 Tw -[( will load)]TJ --35.8194 -1.2889 TD -0.0989 Tw -(in the definition \(using )Tj -/TT10 1 Tf -10.7769 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0989 Tw -[(\) and print it. This is not done when )]TJ -/TT10 1 Tf -17.3507 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT12 1 Tf -6.6011 0 TD -0.0989 Tw -[( is)]TJ --38.9294 -1.2889 TD -0 Tw -(called from )Tj -/TT10 1 Tf -5.2725 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(.)Tj --10.6733 -2.0667 TD -(In Medley the )Tj -/TT10 1 Tf -6.418 0 TD -(SYSPRETTYFLG)Tj -/TT12 1 Tf -7.2012 0 TD -( is ignored in the Interlisp exec.)Tj -/TT10 1 Tf --16.2858 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PRINTFNS)Tj -/TT12 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 163.6517 399.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 399.2 Tm -([Function])Tj -/TT15 1 Tf --35.4033 -1.8444 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.1967 Tw -[( is a list of functions. )]TJ -/TT10 1 Tf -10.9333 0 TD -0 Tw -(PRINTFNS)Tj -/TT12 1 Tf -4.8008 0 TD -0.1967 Tw -[( prettyprints a )]TJ -/TT10 1 Tf -7.1427 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.1967 Tw -[( epression that defines the)]TJ --27.6776 -1.2889 TD -0.4211 Tw -[(functions to the primary output stream using the primary read table. Used by)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -( to implement the )Tj -/TT10 1 Tf -8.0742 0 TD -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -( file manager command.)Tj -/TT10 1 Tf --17.9421 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PRINTDATE)Tj -/TT12 1 Tf -5.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(CHANGES)Tj -/TT10 1 Tf -4.2007 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 230.7114 337.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 444.63 337.06 Tm -([Function])Tj --35.4033 -1.8445 TD -0.0478 Tw -(Prints the )Tj -/TT10 1 Tf -4.6048 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0478 Tw -[( expression at beginning of )]TJ -/TT10 1 Tf -12.4034 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.0478 Tw -[( files. )]TJ -/TT15 1 Tf -2.9612 0 TD -0 Tw -(CHANGES)Tj -/TT12 1 Tf -4.2007 0 TD -0.0478 Tw -[( used by)]TJ --36.1721 -1.2889 TD -0 Tw -(the file manager.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 185.2526 286.52 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 359.33 286.52 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.0878 Tw -(Prints a message \(using )Tj -/TT10 1 Tf -11.0069 0 TD -0 Tw -(LISPXPRINT)Tj -/TT12 1 Tf -6.001 0 TD -0.0878 Tw -(\) followed by the time and date the file was made,)Tj --17.0079 -1.2889 TD -0.3644 Tw -(which is )Tj -/TT10 1 Tf -4.6766 0 TD -0 Tw -(\(CAR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.6144 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.3644 Tw -[(. The message is the value of )]TJ -/TT10 1 Tf -16.003 0 TD -0 Tw -(PRETTYHEADER)Tj -/TT12 1 Tf -7.2012 0 TD -0.3644 Tw -(, initially )Tj -/TT10 1 Tf -4.8983 0 TD -0 Tw -("FILE)Tj --36.9941 -1.2889 TD -(CREATED")Tj -/TT12 1 Tf -4.8008 0 TD -0.0122 Tw -[(. If )]TJ -/TT10 1 Tf -1.7066 0 TD -0.0289 Tw -(PRETTYHEADER = NIL)Tj -/TT12 1 Tf -10.8595 0 TD -0.0122 Tw -(, nothing is printed. )Tj -/TT10 1 Tf -9.2764 0 TD -0 Tw -(\(CDR)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.2622 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0122 Tw -[( contains information)]TJ --30.5062 -1.2889 TD -0.4911 Tw -(about the file, e.g., full name, address of file map, list of changed items, etc.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0656 Tw -[( also stores the time and date the file was made on the property list of the)]TJ --6.6011 -1.2889 TD -0 Tw -(file under the property )Tj -/TT10 1 Tf -10.3506 0 TD -(FILEDATES)Tj -/TT12 1 Tf -5.4009 0 TD -( and performs other initialization for the file manager.)Tj -/TT10 1 Tf --18.4181 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PRETTYCOMPRINT)Tj -/TT8 1 Tf -8.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 196.0517 189.58 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 401.97 189.58 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -(Prints )Tj -/TT15 1 Tf -2.8721 0 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -( \(unevaluated\) using )Tj -/TT10 1 Tf -9.4111 0 TD -(LISPXPRINT)Tj -/TT12 1 Tf -6.001 0 TD -(, unless )Tj -/TT10 1 Tf -3.5527 0 TD -(PRETTYHEADER = NIL)Tj -/TT12 1 Tf -10.8018 0 TD -(.)Tj -/TT17 1 Tf --35.9054 -2.5489 TD -(PRETTYHEADER)Tj -/TT6 1 Tf -10 0 0 10 166.8105 150.04 Tm --0.0009 Tc -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 150.04 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.2933 Tw -(Value is the message printed by )Tj -/TT10 1 Tf -16.0964 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.2933 Tw -(. )Tj -/TT10 1 Tf -1.3367 0 TD -0 Tw -(PRETTYHEADER)Tj -/TT12 1 Tf -7.2012 0 TD -0.2933 Tw -[( is initially )]TJ -/TT10 1 Tf -5.7643 0 TD -0 Tw -("FILE)Tj --36.9996 -1.2889 TD -(CREATED")Tj -/TT12 1 Tf -4.8008 0 TD -0.01 Tw -(. If )Tj -/TT10 1 Tf -1.4399 0 TD -0.0233 Tw -(PRETTYHEADER = NIL)Tj -/TT12 1 Tf -10.8484 0 TD -0.01 Tw -(, neither )Tj -/TT10 1 Tf -3.9043 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.01 Tw -[( nor )]TJ -/TT10 1 Tf -2.0429 0 TD -0 Tw -(PRETTYCOMPRINT)Tj -/TT12 1 Tf -8.4014 0 TD -0.01 Tw -[( will)]TJ --38.0388 -1.2889 TD -0.3667 Tw -[(print anything. Thus, setting )]TJ -/TT10 1 Tf -14.9603 0 TD -0 Tw -(PRETTYHEADER)Tj -/TT12 1 Tf -7.2012 0 TD -0.3667 Tw -[( to )]TJ -/TT10 1 Tf -2.1054 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.3667 Tw -[( will result in "silent loads".)]TJ -/TT10 1 Tf --26.0672 -1.2889 TD -0 Tw -(PRETTYHEADER)Tj -/TT12 1 Tf -7.2012 0 TD -( is reset to )Tj -/TT10 1 Tf -4.6899 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -( during greeting \(see Chapter 12\).)Tj -ET -endstream -endobj -160 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -162 0 obj -<< -/Length 4609 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-48)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILECHANGES)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 273.3088 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1067 Tw -(Returns a list of the changed objects of file manager type )Tj -/TT15 1 Tf -26.3887 0 TD -0 Tw -(TYPE)Tj -/TT12 1 Tf -2.4004 0 TD -0.1067 Tw -[( from the )]TJ -/TT10 1 Tf -4.6139 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf --33.403 -1.2889 TD -0.0878 Tw -(expression of )Tj -/TT15 1 Tf -6.2913 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0878 Tw -[(. If )]TJ -/TT15 1 Tf -1.9333 0 TD -0 Tw -(TYPE )Tj -/TT10 1 Tf -3.2116 0 TD -0.2111 Tw -(= NIL)Tj -/TT12 1 Tf -3.2116 0 TD -0.0878 Tw -(, returns an alist of all of the changes, with the file)Tj --17.0481 -1.2889 TD -0 Tw -(manager types as the )Tj -/TT10 1 Tf -9.5923 0 TD -(CAR)Tj -/TT12 1 Tf -1.8003 0 TD -(s of the elements..)Tj -/TT10 1 Tf --14.0592 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FILEDATE)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-28919.5([Function])]TJ --5.9838 -1.8444 TD -(Returns the file date contained in the )Tj -/TT10 1 Tf -16.5454 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -( expression of )Tj -/TT15 1 Tf -6.3657 0 TD -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --34.5793 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LISPSOURCEFILEP)Tj -/TT19 1 Tf -8.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -[( )-24719.5([Function])]TJ --10.1838 -1.8444 TD -0.2333 Tw -(Returns a non-)Tj -/TT10 1 Tf -6.9867 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.2333 Tw -[( value if )]TJ -/TT15 1 Tf -4.512 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.2333 Tw -[( is in file manager format and has a file map, )]TJ -/TT10 1 Tf -22.5032 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf --38.2026 -1.2889 TD -(otherwise.)Tj -/TT4 1 Tf -10 0 0 10 126 413.06 Tm -(Copyright Notices)Tj -/TT12 1 Tf -9 0 0 9 126 389.4 Tm -0.0122 Tw -(The system has a facility for automatically printing a copyright notice near the front of files, right after)Tj -0 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6383 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0011 Tw -( expression, specifying the years it was edited and the copyright owner. The format)Tj --8.2394 -1.2889 TD -0 Tw -(of the copyright notice is:)Tj -/TT10 1 Tf -4 -2.8222 TD -(\(* Copyright \(c\) 1981 by Foo Bars Corporation\))Tj -/TT12 1 Tf --4 -2.9556 TD -0.0022 Tw -(Once a file has a copyright notice then every version will have a new copyright notice inserted into the)Tj -0 -1.2222 TD -0.0244 Tw -[(file without your intervention. \(The copyright information necessary to keep the copyright up to date)]TJ -T* -0 Tw -(is stored at the end of the file.\).)Tj -0 -2.8889 TD -0.2611 Tw -(Any year the file has been edited is considered a "copyright year" and therefore kept with the)Tj -0 -1.2222 TD -0.2455 Tw -[(copyright information. For example, if a file has been edited in 1981, 1982, and 1984, then the)]TJ -T* -0 Tw -(copyright notice would look like:)Tj -/TT10 1 Tf -4 -2.8222 TD -(\(* Copyright \(c\) 1981,1982,1984 by Foo Bars Corporation\))Tj -/TT12 1 Tf --4 -2.9556 TD -0.2444 Tw -(When a file is made, if it has no copyright information, the system will ask you to specify the)Tj -0 -1.2222 TD -0.56 Tw -(copyright owner \(if )Tj -/TT10 1 Tf -10.5203 0 TD -0 Tw -(COPYRIGHTFLG)Tj -/TT12 1 Tf -7.2012 0 TD -( )Tj -/TT10 1 Tf -0.81 0 TD -1.3444 Tw -(= T)Tj -/TT12 1 Tf -3.1447 0 TD -0.56 Tw -[(\). You may specify one of the names from)]TJ -/TT10 1 Tf --21.6762 -1.2889 TD -0 Tw -(COPYRIGHTOWNERS)Tj -/TT12 1 Tf -9.0015 0 TD -(, or give one of the following responses:)Tj --6.3348 -2.0667 TD -0.1989 Tw -[()-2060.7(Type a left-square-bracket. The system will then prompt for an arbitrary string)]TJ -0.6667 -1.2222 TD -0 Tw -(which will be used as the owner-string)Tj --0.6667 -2 TD -0.0167 Tw -[()-2060.7(Type a right-square-bracket, which specifies that you really do not want a copyright)]TJ -0.6667 -1.2222 TD -0 Tw -(notice.)Tj --0.6667 -2 TD -[()-2060.7(Type )]TJ -/TT10 1 Tf -5.1657 0 TD -("NONE")Tj -/TT12 1 Tf -3.6006 0 TD -( which specifies that this file should never have a copyright notice.)Tj --11.4329 -2.9556 TD -(For example, if )Tj -/TT10 1 Tf -6.8701 0 TD -(COPYRIGHTOWNERS)Tj -/TT12 1 Tf -9.0015 0 TD -( has the value)Tj -/TT10 1 Tf --6.5382 -1.7778 TD -(\(\(BBN "Bolt Beranek and Newman Inc."\))Tj -0 -1 TD -( \(XEROX "Xerox Corporation"\)\))Tj -ET -endstream -endobj -163 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -165 0 obj -<< -/Length 3973 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-49)Tj -/TT12 1 Tf --42.3333 60.6156 TD -(then for a new file )Tj -/TT10 1 Tf -8.2822 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -( the following interaction will take place:)Tj -/TT10 1 Tf --0.7492 -1.7778 TD -(Do you want to Copyright FOO? Yes)Tj -0 -1 TD -(Copyright owner: )Tj -/TT15 1 Tf -11.4019 0 TD -(\(user typed ?\))Tj -/TT10 1 Tf --11.4019 -1 TD -(one of:)Tj -T* -(BBN - Bolt Beranek and Newman Inc.)Tj -T* -(XEROX - Xerox Corporation)Tj -T* -(NONE - no copyright ever for this file)Tj -T* -([ - new copyright owner -- type one line of text)Tj -T* -(] - no copyright notice for this file now)Tj -0 -2 TD -(Copyright owner: BBN)Tj -/TT12 1 Tf --9.3333 -2.7333 TD -0.0967 Tw -(Then "Foo Bars Corporation" in the above copyright notice example would have been "Bolt Beranek)Tj -0 -1.2222 TD -0 Tw -(and Newman Inc.")Tj -0 -2.8889 TD -(The following variables control the operation of the copyright facility:)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(COPYRIGHTFLG)Tj -/TT6 1 Tf -10 0 0 10 166.8 388.6 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 388.6 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0478 Tw -(The value of )Tj -/TT10 1 Tf -5.8841 0 TD -0 Tw -(COPYRIGHTFLG)Tj -/TT12 1 Tf -7.2012 0 TD -0.0478 Tw -[( determines whether copyright information is maintained in)]TJ --13.0852 -1.2889 TD -0 Tw -(files. Its value is interpreted as follows:)Tj -/TT17 1 Tf -6.8667 -2 TD -(NIL)Tj -/TT12 1 Tf -3.1333 0 TD -0.0722 Tw -(The system will preserve old copyright information, but will)Tj -0 -1.2889 TD -0.0522 Tw -[(not ask you about copyrighting new files. This is the default)]TJ -0 -1.2222 TD -0 Tw -(value of )Tj -/TT10 1 Tf -3.8169 0 TD -(COPYRIGHTFLG)Tj -/TT12 1 Tf -7.2012 0 TD -(.)Tj -/TT17 1 Tf --12.9514 -2.0667 TD -(T)Tj -/TT12 1 Tf -1.9333 0 TD -0.1389 Tw -(When a file is made, if it has no copyright information, the)Tj -0 -1.2889 TD -0 Tw -(system will ask you to specify the copyright owner.)Tj -/TT17 1 Tf --4.3333 -2 TD -(NEVER)Tj -/TT12 1 Tf -4.3333 0 TD -0.7367 Tw -(The system will neither prompt for new copyright)Tj -0 -1.2889 TD -0 Tw -(information nor preserve old copyright information.)Tj -/TT17 1 Tf --5.5333 -2 TD -(DEFAULT)Tj -/TT12 1 Tf -5.5333 0 TD -0.0733 Tw -(The value of )Tj -/TT10 1 Tf -5.9607 0 TD -0 Tw -(DEFAULTCOPYRIGHTOWNER)Tj -/TT12 1 Tf -12.6021 0 TD -0.0733 Tw -[( \(below\) is used for)]TJ --18.5628 -1.2889 TD -0.2433 Tw -(putting copyright information in files that dont have any)Tj -0 -1.2222 TD -0.2222 Tw -[(other copyright. The prompt )]TJ -/TT10 1 Tf -14.2625 0 TD -0.5344 Tw -("Copyright owner for)Tj --14.2625 -1.2889 TD -0.0944 Tw -(file xx:")Tj -/TT12 1 Tf -5.4953 0 TD -0.0389 Tw -[( will still be printed, but the default will be filled)]TJ --5.4953 -1.2889 TD -0 Tw -(in immediately.)Tj -/TT17 1 Tf --12.6667 -2.4822 TD -(COPYRIGHTOWNERS)Tj -/TT6 1 Tf -10 0 0 10 183 173.86 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 173.86 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(COPYRIGHTOWNERS)Tj -/TT12 1 Tf -9.0015 0 TD -0.1378 Tw -[( is a list of entries of the form )]TJ -/TT10 1 Tf -14.3147 0 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(KEY)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3878 0 TD -(OWNERSTRING)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.1378 Tw -(, where )Tj -/TT15 1 Tf -3.7946 0 TD -0 Tw -(KEY)Tj -/TT12 1 Tf -1.8003 0 TD -0.1378 Tw -[( is)]TJ --38.9004 -1.2889 TD -0.3944 Tw -(used as a response to )Tj -/TT10 1 Tf -11.5645 0 TD -0 Tw -(ASKUSER)Tj -/TT12 1 Tf -4.2007 0 TD -0.3944 Tw -[( and )]TJ -/TT15 1 Tf -2.9818 0 TD -0 Tw -(OWNERSTRING)Tj -/TT12 1 Tf -6.6011 0 TD -0.3944 Tw -[( is a string which is the full)]TJ --25.348 -1.2889 TD -0 Tw -(identification of the owner. )Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(DEFAULTCOPYRIGHTOWNER)Tj -/TT6 1 Tf -10 0 0 10 215.4 111.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 111.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.3278 Tw -(If you do not respond in )Tj -/TT10 1 Tf -12.9633 0 TD -0 Tw -(DWIMWAIT)Tj -/TT12 1 Tf -4.8008 0 TD -0.3278 Tw -[( seconds to the copyright query, the value of)]TJ -/TT10 1 Tf --17.764 -1.2889 TD -0 Tw -(DEFAULTCOPYRIGHTOWNER)Tj -/TT12 1 Tf -12.6021 0 TD -( is used.)Tj -ET -endstream -endobj -166 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -168 0 obj -<< -/Length 9023 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-50)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Functions Used Within Source Files)Tj -/TT12 1 Tf -9 0 0 9 126 544.54 Tm -0.0422 Tw -(The following functions are normally only used within symbolic files, to set variable values, property)Tj -0 -1.2222 TD -0 Tw -(values, etc. Most of these have special behavior depending on file manager variables.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RPAQ)Tj -/TT19 1 Tf -2.3999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 230.1079 511.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 449.97 511.2 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.1378 Tw -(An nlambda function like )Tj -/TT10 1 Tf -12.1551 0 TD -0 Tw -(SETQ)Tj -/TT12 1 Tf -2.4004 0 TD -0.1378 Tw -[( that sets the top level binding of )]TJ -/TT15 1 Tf -15.8 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1378 Tw -[( \(unevaluated\) to)]TJ -/TT15 1 Tf --32.1558 -1.2889 TD -0 Tw -(VALUE)Tj -/TT12 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --5.6672 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RPAQQ)Tj -/TT19 1 Tf -2.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 235.5079 460.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 449.97 460.06 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.0944 Tw -(An nlambda function like )Tj -/TT10 1 Tf -11.9818 0 TD -0 Tw -(SETQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.0944 Tw -[( that sets the top level binding of )]TJ -/TT15 1 Tf -15.4533 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0944 Tw -[( \(unevaluated\) to)]TJ -/TT15 1 Tf --32.2359 -1.2889 TD -0 Tw -(VALUE)Tj -/TT12 1 Tf -3.0005 0 TD -( \(unevaluated\).)Tj -/TT10 1 Tf --5.6672 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(RPAQ?)Tj -/TT19 1 Tf -2.9999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 235.5079 408.92 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 449.97 408.92 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.0144 Tw -(Similar to )Tj -/TT10 1 Tf -4.5767 0 TD -0 Tw -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -0.0144 Tw -(, except that it does nothing if )Tj -/TT15 1 Tf -13.4468 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0144 Tw -[( already has a top level value other than)]TJ -/TT10 1 Tf --22.2242 -1.2889 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -(. Returns )Tj -/TT15 1 Tf -4.4771 0 TD -(VALUE)Tj -/TT12 1 Tf -3.0005 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -( is reset, otherwise )Tj -/TT10 1 Tf -8.4238 0 TD -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --29.5599 -2.9556 TD -(RPAQ)Tj -/TT12 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5133 0 TD -(RPAQQ)Tj -/TT12 1 Tf -3.0005 0 TD -0.0133 Tw -(, and )Tj -/TT10 1 Tf -2.4695 0 TD -0 Tw -(RPAQ?)Tj -/TT12 1 Tf -3.0005 0 TD -0.0133 Tw -[( generate errors if )]TJ -/TT15 1 Tf -8.1075 0 TD -0 Tw -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.0133 Tw -[( is not a symbol. All are affected by the value of )]TJ -/TT10 1 Tf -21.6475 0 TD -0 Tw -(DFNFLG)Tj -/TT12 1 Tf --41.7393 -1.2889 TD -0.1122 Tw -[(\(see Chapter 10\). If )]TJ -/TT10 1 Tf -9.3712 0 TD -0.2689 Tw -(DFNFLG = ALLPROP)Tj -/TT12 1 Tf -10.1393 0 TD -0.1122 Tw -[( \(and the value of )]TJ -/TT15 1 Tf -8.5411 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1122 Tw -[( is other than )]TJ -/TT10 1 Tf -6.4821 0 TD -0 Tw -(NOBIND)Tj -/TT12 1 Tf -3.6006 0 TD -0.1122 Tw -(\), instead of)Tj --39.9346 -1.2889 TD -0 Tw -(setting )Tj -/TT15 1 Tf -3.2477 0 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -0.0133 Tw -(, the corresponding value is stored on the property list of )Tj -/TT15 1 Tf -25.5446 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0133 Tw -[( under the property )]TJ -/TT10 1 Tf -9.0099 0 TD -0 Tw -(VALUE)Tj -/TT12 1 Tf -3.0005 0 TD -0.0133 Tw -[(. All)]TJ --43.2031 -1.2889 TD -0 Tw -(are undoable.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ADDTOVAR)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.5997 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.6 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 280.0508 296.98 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 407.33 296.98 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -(Each )Tj -/TT15 1 Tf -2.5723 0 TD -(X)Tj -0.6011 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.1856 Tw -[( that is not a member of the value of )]TJ -/TT15 1 Tf -18.0138 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1856 Tw -[( is added to it, i.e. after )]TJ -/TT10 1 Tf -11.6177 0 TD -0 Tw -(ADDTOVAR)Tj -/TT12 1 Tf --35.2051 -1.5111 TD -0.0522 Tw -(completes, the value of )Tj -/TT15 1 Tf -10.6356 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.0522 Tw -[( will be )]TJ -/TT10 1 Tf -3.6459 0 TD -0.1267 Tw -(\(UNION \(LIST)Tj -/TT19 1 Tf -7.3278 0 TD -0 Tw -( )Tj -/TT15 1 Tf -0.3022 0 TD -(X)Tj -0.5992 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.3022 0 TD -(X)Tj -0.6 -0.2222 TD -(2)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.3022 0 TD -(X)Tj -0.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT15 1 Tf -0.3022 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -0.6001 0 TD -0.0522 Tw -(. )Tj -/TT10 1 Tf -0.8544 0 TD -0 Tw -(ADDTOVAR)Tj -/TT12 1 Tf -4.8008 0 TD -0.0522 Tw -[( is)]TJ --38.9757 -1.5111 TD -0.1767 Tw -(used by )Tj -/TT10 1 Tf -4.0794 0 TD -0 Tw -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -0.1767 Tw -[( for implementing the )]TJ -/TT10 1 Tf -10.6119 0 TD -0 Tw -(ADDVARS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1767 Tw -[( command. It performs some file)]TJ --24.2929 -1.2889 TD -0.1133 Tw -(manager related operations, i.e. "notices" that )Tj -/TT15 1 Tf -20.9344 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -0.1133 Tw -[( has been changed. Returns the atom)]TJ -/TT15 1 Tf --22.7347 -1.2889 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -( \(not the value of )Tj -/TT15 1 Tf -7.7412 0 TD -(VAR)Tj -/TT12 1 Tf -1.8003 0 TD -(\).)Tj -/TT10 1 Tf --14.0085 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(APPENDTOVAR)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.5985 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.6 -0.2222 TD -(2)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(X)Tj -0.5997 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 296.2509 205.04 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 407.33 205.04 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -0.0022 Tw -(Similar to )Tj -/TT10 1 Tf -4.5523 0 TD -0 Tw -(ADDTOVAR)Tj -/TT12 1 Tf -4.8008 0 TD -0.0022 Tw -(, except that the values are added to the end tof the list, rather than at)Tj --9.3531 -1.2889 TD -0 Tw -(the beginning.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PUTPROPS)Tj -/TT25 1 Tf -4.7999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(ATM)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.2222 TD -(N)Tj -/TT10 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 347.1009 152.5 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 407.33 152.5 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -0.0611 Tw -(Nlambda nospread version of )Tj -/TT10 1 Tf -13.7117 0 TD -0 Tw -(PUTPROP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0611 Tw -[( \(none of the arguments are evaluated\). For )]TJ -/TT15 1 Tf -20.1442 0 TD -0 Tw -(i )Tj -/TT10 1 Tf -1.3457 0 TD -(=)Tj --39.4024 -1.2889 TD -(1...)Tj -/TT15 1 Tf -2.4004 0 TD -(N)Tj -/TT12 1 Tf -0.6001 0 TD -0.0233 Tw -(, puts property )Tj -/TT15 1 Tf -6.9235 0 TD -0 Tw -(PROP)Tj -2.3993 -0.2222 TD -(i)Tj -/TT12 1 Tf -0.6 0.2222 TD -0.0233 Tw -(, value )Tj -/TT15 1 Tf -3.2347 0 TD -0 Tw -(VALi)Tj -/TT12 1 Tf -2.4004 0 TD -0.0233 Tw -(, on the property list of )Tj -/TT15 1 Tf -10.5155 0 TD -0 Tw -(ATM)Tj -/TT12 1 Tf -1.8003 0 TD -0.0233 Tw -[(. Performs some file)]TJ --30.8742 -1.5111 TD -0.19 Tw -(manager related operations, i.e., "notices" that the corresponding properties have been)Tj -0 -1.2222 TD -0 Tw -(changed.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(SAVEPUT)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(ATM)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 259.3596 75.36 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 492.6299 75.36 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0811 Tw -(Same as )Tj -/TT10 1 Tf -3.9728 0 TD -0 Tw -(PUTPROP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0811 Tw -(, but marks the corresponding property value as having been changed)Tj --8.1735 -1.2889 TD -0 Tw -(\(used by the file manager\).)Tj -ET -endstream -endobj -169 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R -/TT19 27 0 R -/TT25 170 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -172 0 obj -<< -/Length 7358 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-51)Tj -/TT4 1 Tf -10 0 0 10 78 568.2 Tm -(File Maps)Tj -/TT12 1 Tf -9 0 0 9 78 544.54 Tm -0.0178 Tw -[(A file map is a data structure which contains a symbolic map of the contents of a file. Currently, this)]TJ -0 -1.2222 TD -0.2289 Tw -(consists of the begin and end byte address \(see )Tj -/TT10 1 Tf -22.9355 0 TD -0 Tw -(GETFILEPTR)Tj -/TT12 1 Tf -6.001 0 TD -0.2289 Tw -(, in Chapter 25\) for each )Tj -/TT10 1 Tf -12.2005 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf --41.137 -1.2889 TD -0.0167 Tw -(expression in the file, the begin and end address for each function definition within the )Tj -/TT10 1 Tf -38.9092 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.0167 Tw -(, and)Tj --43.1099 -1.2889 TD -0 Tw -(the begin and end address for each compiled function.)Tj -/TT10 1 Tf -0 -2.8889 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.8511 0 TD -(PRETTYDEF)Tj -/TT12 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.8511 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.8511 0 TD -(RECOMPILE)Tj -/TT12 1 Tf -5.4009 0 TD -0.3511 Tw -(, and numerous other system functions depend)Tj --22.3566 -1.2889 TD -0.1167 Tw -[(heavily on the file map for efficient operation. For example, the file map enables )]TJ -/TT10 1 Tf -37.5747 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1167 Tw -[( to load)]TJ --41.7754 -1.2889 TD -0.1789 Tw -(selected function definitions simply by setting the file pointer to the corresponding address using)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(SETFILEPTR)Tj -/TT12 1 Tf -6.001 0 TD -0.2133 Tw -(, and then performing a single )Tj -/TT10 1 Tf -14.8762 0 TD -0 Tw -(READ)Tj -/TT12 1 Tf -2.4004 0 TD -0.2133 Tw -(. Similarly, the file map is heavily used by the)Tj --23.2776 -1.2889 TD -0.0889 Tw -("remake" option of )Tj -/TT10 1 Tf -8.8218 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0889 Tw -[( \(see the Remaking a Symbolic File section\): those function definitions)]TJ --13.6226 -1.2889 TD -0.0622 Tw -(that have been changed since the previous version are prettyprinted; the rest are simply copied from)Tj -0 -1.2222 TD -0 Tw -(the old file to the new one, resulting in a considerable speedup.)Tj -0 -2.8889 TD -0.0456 Tw -(Whenever a file is written by )Tj -/TT10 1 Tf -13.286 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0456 Tw -[(, a file map for the new file is built. Building the map in this)]TJ --18.0868 -1.2889 TD -0.0789 Tw -(case essentially comes for free, since it requires only reading the current file pointer before and after)Tj -0 -1.2222 TD -0.1611 Tw -[(each definition is written or copied. However, building the map does require that )]TJ -/TT10 1 Tf -38.7287 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf --38.7287 -1.2889 TD -(know)Tj -/TT12 1 Tf -2.166 0 TD -0.1222 Tw -[( that it is printing a )]TJ -/TT10 1 Tf -9.4243 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf -4.2007 0 TD -0.1222 Tw -[( expression. For this reason, you should never print a )]TJ -/TT10 1 Tf -25.3342 0 TD -0 Tw -(DEFINEQ)Tj -/TT12 1 Tf --41.1251 -1.2889 TD -0.0267 Tw -(expression onto a file yourself, but should instead always use the )Tj -/TT10 1 Tf -29.3011 0 TD -0 Tw -(FNS)Tj -/TT12 1 Tf -1.8003 0 TD -0.0267 Tw -[( file manager command \(see the)]TJ --31.1014 -1.2889 TD -0 Tw -(Functions and Macros section\).)Tj -0 -2.8889 TD -0.0011 Tw -(The file map is stored on the property list of the root name of the file, under the property )Tj -/TT10 1 Tf -39.4547 0 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0002 Tc -0.0009 Tw -(. In)Tj --43.6554 -1.2889 TD -0 Tc -0 Tw -(addition, )Tj -/TT10 1 Tf -4.2889 0 TD -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.0311 Tw -[( writes the file map on the file itself. For cosmetic reasons, the file map is written)]TJ --9.0897 -1.2889 TD -0.0711 Tw -[(as the last expression in the file. However, the )]TJ -/TT8 1 Tf -21.4714 0 TD -0 Tw -(address)Tj -/TT12 1 Tf -3.0005 0 TD -0.0711 Tw -[( of the file map in the file is \(over\)written into)]TJ --24.4719 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.7994 0 TD -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.1622 Tw -[( expression that appears at the beginning of the file so that the file map can be)]TJ --8.4005 -1.2889 TD -0.0078 Tw -[(rapidly accessed without having to scan the entire file. In most cases, )]TJ -/TT10 1 Tf -31.0083 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.0078 Tw -[( and )]TJ -/TT10 1 Tf -2.2084 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0078 Tw -[( do not have)]TJ --39.8178 -1.2889 TD -0.0044 Tw -(to build the file map at all, since a file map will usually appear in the corresponding file, unless the file)Tj -0 -1.2222 TD -0 Tw -(was written with )Tj -/TT10 1 Tf -7.7744 0 TD -(BUILDMAPFLG = NIL)Tj -/TT12 1 Tf -10.2017 0 TD -(, or was written outside of Interlisp.)Tj --17.9761 -2.9556 TD -0.0844 Tw -(Currently, file maps for )Tj -/TT8 1 Tf -10.9999 0 TD -0 Tw -(compiled)Tj -/TT12 1 Tf -3.5737 0 TD -0.0844 Tw -[( files are not written onto the files themselves. However, )]TJ -/TT10 1 Tf -26.3249 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.0844 Tw -[( and)]TJ -/TT10 1 Tf --43.2989 -1.2889 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0222 Tw -[( will build maps for a compiled file when it is loaded, and store it on the property )]TJ -/TT10 1 Tf -36.6686 0 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -(.)Tj --45.0699 -1.2889 TD -(Similary, )Tj -/TT10 1 Tf -4.2319 0 TD -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -( will obtain and use the file map for a compiled file, when available.)Tj --8.4326 -2.9556 TD -(The use and creation of file maps is controlled by the following variables:)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(BUILDMAPFLG)Tj -/TT6 1 Tf -10 0 0 10 161.4 139.4 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 446.41 139.4 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1889 Tw -(Whenever a file is read by )Tj -/TT10 1 Tf -12.8975 0 TD -0 Tw -(LOAD)Tj -/TT12 1 Tf -2.4004 0 TD -0.1889 Tw -[( or )]TJ -/TT10 1 Tf -1.8187 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.1889 Tw -(, or written by )Tj -/TT10 1 Tf -7.2892 0 TD -0 Tw -(MAKEFILE)Tj -/TT12 1 Tf -4.8008 0 TD -0.1889 Tw -(, a file map is)Tj --33.4073 -1.2889 TD -0 Tw -(automatically built unless )Tj -/TT10 1 Tf -11.6743 0 TD -(BUILDMAPFLG = NIL)Tj -/TT12 1 Tf -10.2017 0 TD -(. \()Tj -/TT10 1 Tf -0.833 0 TD -(BUILDMAPFLG)Tj -/TT12 1 Tf -6.6011 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT12 1 Tf -0.6001 0 TD -(.\))Tj --34.7944 -2.0667 TD -0.16 Tw -(While building the map will not help the first reference to a file, it will help in future)Tj -0 -1.2222 TD -0.0311 Tw -[(references. For example, if you perform )]TJ -/TT10 1 Tf -18.1636 0 TD -0.0744 Tw -(\(LOADFROM FOO\))Tj -/TT12 1 Tf -9.0759 0 TD -0.0311 Tw -[( where )]TJ -/TT10 1 Tf -3.3313 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0311 Tw -[( does not contain)]TJ --32.371 -1.2889 TD -0.0544 Tw -(a file map, the )Tj -/TT10 1 Tf -6.7329 0 TD -0 Tw -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -0.0544 Tw -[( will be \(slightly\) slower than if )]TJ -/TT10 1 Tf -14.4368 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0544 Tw -[( did contain a file map, but)]TJ --27.7708 -1.2889 TD -0.0611 Tw -(subsequent calls to )Tj -/TT10 1 Tf -8.7883 0 TD -0 Tw -(LOADFNS)Tj -/TT12 1 Tf -4.2007 0 TD -0.0611 Tw -[( for this version of )]TJ -/TT10 1 Tf -8.6132 0 TD -0 Tw -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -0.0611 Tw -[( will be able to use the map that was)]TJ --23.4025 -1.2889 TD -0 Tw -(built as the result of the )Tj -/TT10 1 Tf -10.6597 0 TD -(LOADFROM)Tj -/TT12 1 Tf -4.8008 0 TD -(, since it will be stored on )Tj -/TT10 1 Tf -11.4849 0 TD -(FOO)Tj -/TT12 1 Tf -1.8003 0 TD -(s )Tj -/TT10 1 Tf -0.9517 0 TD -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -( property.)Tj -ET -endstream -endobj -173 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -176 0 obj -<< -/Length 2539 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(17-52)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 568.2 Tm -(USEMAPFLG)Tj -/TT6 1 Tf -10 0 0 10 198.6 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 494.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9321 0 TD -0.03 Tw -(USEMAPFLG = T)Tj -/TT12 1 Tf -7.8613 0 TD -0.0122 Tw -[( \(the initial setting\), the functions that use file maps will first check the)]TJ -/TT10 1 Tf --8.7934 -1.2889 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0178 Tw -[( property to see if a file map for this file was previously obtained or built. If not,)]TJ --4.2007 -1.2889 TD -0.0056 Tw -(the first expression on the file is checked to see if it is a )Tj -/TT10 1 Tf -24.3996 0 TD -0 Tw -(FILECREATED)Tj -/TT12 1 Tf -6.6011 0 TD -0.0056 Tw -[( expression that also)]TJ --31.0006 -1.2889 TD -0.0022 Tw -(contains the address of a file map. If the file map is not on the )Tj -/TT10 1 Tf -27.6869 0 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0001 Tc -0.0021 Tw -( property or in the)Tj --31.8876 -1.2889 TD -0 Tc -0 Tw -(file, a file map will be built \(unless )Tj -/TT10 1 Tf -15.4614 0 TD -(BUILDMAPFLG)Tj -/TT12 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(= NIL)Tj -/TT12 1 Tf -3.0005 0 TD -(\).)Tj --25.313 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.961 0 TD -0.0989 Tw -(USEMAPFLG = NIL)Tj -/TT12 1 Tf -9.1992 0 TD -0.0411 Tw -(, the )Tj -/TT10 1 Tf -2.2194 0 TD -0 Tw -(FILEMAP)Tj -/TT12 1 Tf -4.2007 0 TD -0.0411 Tw -[( property and the file will not be checked for the file)]TJ --16.5804 -1.2889 TD -0.0156 Tw -[(map. This allows you to recover in those cases where the file and its map for some reason)]TJ -0 -1.2222 TD -0.0011 Tw -(do not agree. For example, if you use a text editor to change a symbolic file that contains a)Tj -T* -0.0533 Tw -(map \(not recommended\), inserting or deleting just one character will throw that map off.)Tj -T* -0.2056 Tw -(The functions which use file maps contain various integrity checks to enable them to)Tj -T* -0.0567 Tw -(detect that something is wrong, and to generate the error)Tj -/TT10 1 Tf -25.6648 0 TD -0.1356 Tw -[( FILEMAP DOES NOT AGREE)]TJ --25.6648 -1.2889 TD -(WITH CONTENTS OF )Tj -/TT15 1 Tf -10.6083 0 TD -0 Tw -(FILE)Tj -/TT12 1 Tf -2.4004 0 TD -0.0567 Tw -[(. In such cases, you can set )]TJ -/TT10 1 Tf -12.6555 0 TD -0 Tw -(USEMAPFLG)Tj -/TT12 1 Tf -5.4009 0 TD -0.0567 Tw -[( to )]TJ -/TT10 1 Tf -1.4854 0 TD -0 Tw -(NIL)Tj -/TT12 1 Tf -1.8003 0 TD -0.0567 Tw -(, causing the)Tj --34.3508 -1.2889 TD -0 Tw -(map contained in the file to be ignored, and then reexecute the operation.)Tj -ET -endstream -endobj -177 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT15 19 0 R -/TT17 23 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -178 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -179 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -180 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -181 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -182 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -183 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -184 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBIIPG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 185 0 R ->> -endobj -185 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"T0`I1pbAPo#̒ (+14R))4|-*PRi nxj3wߛ{o oN~{;p>[ - -Vo~_'#M@{ưXFb-_|$@P,r[[߂PUj`PJ5M.F>& ^C3]R]Gc $ʇu`W|Ѧ"J2.؟N+"@rqCTЉ^En;:_ -uKq=?{8@m Zxpr۹8cptB&~O|tkA+tP9f5$%y8a),& hp4d ˰wn"HC=3!r6e.lqD 6r1\LrTWca -? fh 7U$a8'a4 -2VrGJtg5܆4[vn`J0Th?B>~=?Q`uPoFVPnuȪb OB gB=Z0h"y(U:@? ]la)ε;̕C\-0H=_I*&S_=bd Ɂ| FFpٸ6/gb:)BIWD:xઠ.' 1K~нpMDgB9 \cAn:_&˃f!n}u2Ka*aw1G+"}xg"wwhJkęc2m&&FijOXkOl\k36l|zq/srBT7T-Q LҨay E t%`E5RY F h FWPU"Kteވ+Az3Í)Q!W.KL7-AWT0V,iNo05F`NIuˮ-b$j\~b:QѶzhhA5Oh5 Auokkuhqճ]b@?z,SݤE U2L]<7ab˟[)* SW c/m;ř-" -E?mS"cnbkݨקӐFiOBߌrZrZ7\OA7EJ~WeX+AijXFj/?ZY-zEk]`"`b+3#~׭X >HZVI -mЯd9a,_,?M˖%'2,q]Zlѓ |JxD=N }$#A1ҧY -(!4y~sR7ɏ{Sy(MCΐ<7M^1'5zmycYHNKfrFedyElFO{1}nu&?ͮUoCoݮ47wp-=7H'𥞰bT]_ʗ2.Mթc{b詑J-S×c[O\9*RbwMjKo^5Vot%3Z/X/ΰw%H>^g]6azTY5(vn+5KmB-J-eԐ jpw-k\,{'ܻ2.o7" K 823,_ZOXSYV7N՛S:ABdow߁m%KNi̽ -z)saھm.=a",ȿAVöQL]nޙsj"kϰE+vM~H@MTGr>*$輜֜mC;μpΝw9GvITP0nP`faܵ${x/&3?sώNʚs+ -_+2|q0Z2 -*:Ok 54$j e:TFת*`@[Z &@W*ШC5sgWyy~ުΨpIVSgd/W*=5bI.l,]dz6!@esmG&}  .s >20V;f(w6YQF_N=ý  ՂF^* 5v,,8!21=5dTă_2cKgA?"ʕW79 F&\w8nVgHb7_HAr4#T|G"*n2JuBsQV5m'X2bZZeḹ=[ 2fZ}_vz]6~EOAUDZ"\*$HkN3 <|^%A^crMgw=9 r$cMKx[.Pcg_QIːQ6W:dD:LzYLOc{3kp#%bkM$g.≹ !8 2ܣ!yO[yO%Z"hvym炡EȸF;լ '$cc&_-aQ#7yIcvt vcY\t5M fN&IPNZ6D8UAYVX_sy8=E~j׉|ɘ :6GYmu=;VW5-}с]+NzOfg8FA<|Y]껲7 H\`2B}'u]"h茢65r$k;W,ES۽<&qss!QI@9)ѡAP@Ry.颥,aatȨ2 -ir; \21z4*E7"HaX7E6$q0lkU<\J6d' DlSpq\;цաSnp'4 xpI!`; 0#WLxSó]@=!>_p!N,A d -yHC,YI^& WI+I 3&4#%rj6yMGӇTt6G?Ut=ӕEZO7-5NGߢn =Ct&eư l*+f3X=5WY+kgow!!;NȮANGp7')Ǽ?ƟK%7|;wA]0?OO)#̣_|_q5M,N7t L$X37):"Pf-bTzPVj#fGFQ+,[B21˄&b%z ?b«)~-͢;Qxȅ*/NC3Vb#HЈ-vKLFLD%;̞}tTlؑ]D-z=ǰ^ÎCc,m&V3zfam,A+u;ضqSKrP0"ܾ𾂖7ۢ.2G>8kd2KU"OZ~ݍ0-BZhi.D$g0-#t-we6ϩ[LiI Nᴖը$6Zג-|}i K*꺻bR%0D?lMx A#akF(Zs?|Ƕq.8$38*(9T %M9R -]A#%4q4 C mPlv=ni-MEBH-J3jxlK$x"~w>~}Gk7ȰÒoo[m]խ/Xb@)W4=e.ąD>baru&g N8j_b[LxOfY/#qod~g>t]QL-慌()9IqyKOo'K`/TgӷgkUu?ږغ`9dmƺ"J|_Ҩk8Q+ؑr{K1)7?g$lBj/.zt$vnƦ%GG-5T& "=/Px،OdsgG:7竂IЦE.WA41 .-vqFFK}U[ka^ifmvȲo47 PK9tev|q+ Y4]c4; Y2`YX gLyB%ASJ؊hݏ[Z,ZҖ%8 ̂jԍRK¼2ټט?%UJ9C':g..?/ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStWRKAİX{== x^.wwT9sߚq?W?NhN-:zTDO!WhG,h)cxz}GGVWAhSdcE{%`нdA"mψԒn^1vt,y]4|ˊ^ox6g@EV4 @3h UFF;b|thƶorz̲[Bn+/LkI/^>aa4"$Өòd)P7~39J}Jn1 pu3dePjtL]gB6E= -UеA~%˂R*XZ:j12O-}XX5칿C-:p>'[NV-K1h2=\yhJ--h4Oj> Ma`/=0x xNïpf ,yѣգ&E} qt@@A3M[`;.kZ܌?O.Mm܋g5Nq -_")"+*"cxUOH=i -(K7>_wߑWUY < |ZGZx\Hc/v1~`ۄݰޒp-婏 r q$[*_\۱r]VykVeybmؕxa8}; &.'eusI+dO-(,5|K=FK㞎2q~adYRɝ^H)JBlJ&[[HK*pxOEw|tM hRh1)!YXq]%|t^m?YriXZƪtRޮW3@>i钙An?"^n-qx"dy phE3rCWIw򵾮&>O&x 6gygs3dUŞVpp$_X4-AE$.puh^ϽGX<&Z  K!@4کT]k'=I}!fkx4qɴ;>SoWL]r` #rO8dl?|̙|/u겏v8v:cUF/9mAb^H kA"ˑئ;+4ĥbM|gMXp|+_1yFj;M`yI}!߽V&m:<`Nm m 1UPHq$L?<,g8Wz.HDHׁHB*LBF5 f" -P̪ ^`9r4@ނȰb ]WG )|_-"I\M&ȴrI7TWH y%uME浕l'mdG!$r|HΒ_2 ʨ yh*Ll:SVt5]Khn[i2=ӃO(=Fs^tH'=-eKy#7꤈$5#GkbCRtR:,4BKX*a*C$ē)~M\ -YqVm7Gf}C_EҾ\{UMl;UO8;2_xlF>ķ:; 濔5ޕ<Yw tkn ݩ_n__6f40DawjcOJ! 3RۙS38vΘ4aVu Hlg׌LxEzcq(V4~g -m#|8{mv/6!F34QKPIH6$BMT𯵌Q -H 5bLK`нÄ@GZi9X N/o{g:}~oGC -8Yhs&nUD\D1&.I7Vn(ɻ("N[|wa< -ߗ[G*`6dҎ׿_RY}c/xf+&=7 ?ۦ/,){ԍ9,xC *;Jd;ki.̵# [r9mO}vЙu⎛xx}5սzZQ<MUHhMw?=4 Nݺ}{z[ӥh%o\r$k"s}N ϊx7_Dawqoq6ni3?ʃ<}zpWoyܴ,n2VA[k/]&C; wEvzŏRH}TM#i IT_MY'4Lb\)i&(CĮBͽ#`9Ibߞk{vWf56#G|2NF$Z9V>'(ʁ<*bPM̀RSefC5 .S?Ű -XzaX᧰A8/:*SpFM>$!\E5&*"7An%d6&Bu|Xd)4fBGIs *ߓ$ԣ#3yIΓwEh\zBz5ԤΥu.].JD=DGo8=ONA/ v5Z@5@u;fl>gF0{E6f3T_m:Pul7{u^`/b}\@o@sjTQG1+7;x&DZd%B0P<^T; -Yy.?=^}-Qi#%Gf2磙o^U;a&Ǥv$C>5Td"%&/>C  Calœ"KtZ8f{1LOaP `%KeW5#X|ty,d냤m\S7W$=Z{ 2 ĭ9. ;SJ%Ctˈj6, u,G<qk7ӊB<0= kE6Nk`MM>gQ~;FF>{,^tnKFT sskW gka\[X2,-Dr@=zZe`A }zcr/Btnu逸JEXY0pɺ̕z^a,$Τ"vAW!>$eg1eTq -xA¹#TZ(޵Pw:5.->Z$(^Êr%-HAy@OL -=4A^#n‘Bt4؋B$5,Bu~2*EFxъ-xVrVT8,& LMVH9#6YK΅(vfXMZ6Eh]Ehu2p0x6e;V k!U%i+8 b{)C!@z&'VТty,eET_PZnmrrRsKD(Nk5G_XK8V73mH\O3lmlڤǟ;: EyL\|y}.f-9^R֝X 7Ur]@g= @eúsX&&{ux 2IddQ%-ja* q3P3̳ VAN461wV.!M)^ɵ4֚K\;s-*"Zx]Z5al5QnxV oYHbȉL=ȅ{̚_c}Q栅ᦣІ1K Gh+r#ճG4(F1eKC^cxd>PRezH ynSN/CbXAhln$Ž} U~dޣlءhwa`fysR!24oqFs>l&Eji4-_e8low iظ#ZpuІvGmj[ ~C}}{"-,v\Suci\\ZwFE]6QC,m~.h;+&-V;͉-Oni*}Q: | cZ1^oB'H0(&$ Y&/ɫdKn)2+QN(_V\PkU+e_W T (0HFmYp1X$'Z$PXiTL11x ]>V14k#+YT93޹ܙvӫqf`Y"KaX\~沅f&viƇ1|:o.~*-K=%MJHä1R4EIM҇t]YN,!O_EzU#)_o*LP)?Rr,eXY|vrX9T*+R.)*SUըުxuf\Bݮ;<X 33=JT*Z*  -jEE - "=H8L`FI"U0G#HK BQĨʣ(Fx -}G辱5  -v&#Q"|E @eDpHs) P};θhz0r3<"f=bHz[zR3K$ Ї`pq -CN(!W#ZBP uD P'qB7@ۛ8[!mPWϵA“@ɶlrџۗ(ث;?}^?tJк U+>vTl\iU+ˮުY_hX>* }GU=]k3J.ۚ;2ŲǢS1:j6J+ )5ոQ~箵=V2yy{{w?Pm\꺪zNeY )\ܲw&$WSmu~[!z-q3̫8".OD{oYߐW}D Zs~ubf4ln6(tDܑ/=rc,{FO(Uɕ*n1MX}Q,խ[h\ݾ͇UIGoZ6>c9imTuf%}v4c/^u97uDVIudj3_`/K)Ƈ/|R -L"=uAlewj"."Fa!z7+bmU*q)(%9R,z=HLg5,^B1W -l,qq[5&}qNm˒jԌ/B'\>%>pAʳ֑'J=6؎NQcOb|.? T̰EV3# łP6;\W溽pm7Lz89gsޭ\CO~.PP{@hfX?slvWŢ9mX˅VwGycc1`J<^o@w-(%ǡ< X!H$Xp.1F198R+U=RSgnt|Vve]~(kmO9n-P)g@1&މ\K3z:SȣhA‡S<> #֗8IVdPޅwnlW]XOm;>(82K&i{0,ImzsDLI&˰ -> ><"(0. "Âˠ22 ]X O'Jv/Cs.W]Sʷ>$EoRrV}/Gd2 pS*c? -_=GDߏ(9݋+~HG1U)=#$7 + }L.A-DGFdnC^~ߠȗDޡJƵbC}:I9QQ_w/z̿V:߽$~HC#zP.SM"_kĿ[{s vܴ؏I~KmJ\D~>_ۇר]=BlE _+{At!!/qk+O o>/K_ыq1- ~rY/=(p*P?|~;7H,G?\\/ |Gܗ?R$qy{ 9v>!=;'o'W%Ճddz`kp!g &NY6Dnm5lQ/VXKeTFȌ . MHӁkI FvuylpvH8 Z8-fT4=d3'IK>UݥjkљD9X=n L% qؐ9KE1,5z q4`b/([Kjy.X&ueSJ0xҘZ353 -nIBPj##ޕ4[Z^U?Ds%SycӉ3_AA$X*[ 3! SgԒ.R[>j=9Iu,mk&1"9>3밳az4l4$:3(c NCqHծ?;cY ۆhF̸P;Uu! {aβ3B7m,t(摇*0Yu=޴(YI.ݘZx2^~$CDہ©u'C[T ȄU[ Ub%xֱhB|u0KѰp`.F̷mE5͝Q5v7,P4yO%Qö'հilfIkL5,k']CVƤK>R%+6I AzHBRtw$ZU^3bBl ƺ.v Z$\Y0f( ;==֪n(4aoU՝;|o]۟?^;nz%&XIe8nnkU2}T-*E` -ѭr۳ Mjޝ{@m饰[ _mޣpP:9.dU΍GUM=6NP} :v{(IE &wDÚ,2 A#5aYG+"RJ.lOYps5s|zoxA™+t5/PYyH` S i0OgUrkL%4>42Q8 !?$]FOi*鸢h(ICt]ӛQ:%''z3M{=MxJC5;9%ǞtnE"ɒy,$Hݠ | v?}x~;OΛou=-rB;2x ~ lσ;4{;G9%t_v -iȧ&5061C>VXkx\5=f_hd*rbK5#˖*Ow,23uaOi)ɖnj;yO( z(Xh?}sB'r}Ef>XN)mF0?]b{{4 -9ўȴL6{i3FpZX_us-kx'˴e`]Ě2 -Vrp},!˔ϞG|R'Ɩ> -endobj -187 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -188 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -189 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262243 -/FontBBox [-56 -250 868 801] -/FontName /Courier-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -190 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -191 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262242 -/FontBBox [-170 -271 1073 926] -/FontName /Palatino-BoldItalic -/ItalicAngle -15 -/StemV 133 -/XHeight 469 -/StemH 122 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 178 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 556 0 0 333 0 0 0 0 0 -0 722 0 722 722 667 611 778 0 278 0 0 611 833 722 0 -667 0 722 667 611 722 667 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 179 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 180 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 500 0 0 0 0 0 333 333 0 0 250 333 250 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 0 0 0 0 611 556 0 0 333 0 0 556 944 778 0 -0 0 0 0 611 778 0 944 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 181 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 0 600 0 600 600 600 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 182 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 183 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBIIPG+Symbol -/Encoding /Identity-H -/DescendantFonts [ 192 0 R ] -/ToUnicode 193 0 R ->> -endobj -192 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBIIPG+Symbol -/FontDescriptor 184 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 600 600 0 0 600 0 600 600 -0 600 600 600 600 0 0 0 0 0 0 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 0 0 600 600 600 0 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 186 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 93 -/Widths [600 0 0 0 0 0 0 0 600 0 600 0 0 0 600 0 -0 0 0 0 0 0 0 0 0 0 600 0 0 0 0 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 187 0 R ->> -endobj -27 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 46 -/Widths [250 0 0 0 0 0 0 0 333 0 0 0 0 0 250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 188 0 R ->> -endobj -37 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 68 -/LastChar 82 -/Widths [600 0 0 0 0 600 0 0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-BoldOblique -/FontDescriptor 189 0 R ->> -endobj -129 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 190 0 R ->> -endobj -170 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-BoldItalic -/FontDescriptor 191 0 R ->> -endobj -193 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 {!R - Uv%F*Nd7g?gssiEMzGq3(:nfd"qlPUB~y+ѐSvG -,B_ux#3n 8m5 R'U[o5},^T-g^azj$[pZ+vj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -67 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 69 0 R -/Contents 68 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -89 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 91 0 R -/Contents 90 0 R ->> -endobj -92 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 94 0 R -/Contents 93 0 R ->> -endobj -95 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 97 0 R -/Contents 96 0 R ->> -endobj -98 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 100 0 R -/Contents 99 0 R ->> -endobj -101 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 103 0 R -/Contents 102 0 R ->> -endobj -104 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 106 0 R -/Contents 105 0 R ->> -endobj -107 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 109 0 R -/Contents 108 0 R ->> -endobj -111 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 113 0 R -/Contents 112 0 R ->> -endobj -114 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 116 0 R -/Contents 115 0 R ->> -endobj -117 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 119 0 R -/Contents 118 0 R ->> -endobj -120 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 122 0 R -/Contents 121 0 R ->> -endobj -123 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 125 0 R -/Contents 124 0 R ->> -endobj -126 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 128 0 R -/Contents 127 0 R ->> -endobj -130 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 132 0 R -/Contents 131 0 R ->> -endobj -133 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 135 0 R -/Contents 134 0 R ->> -endobj -136 0 obj -<< -/Type /Page -/Parent 110 0 R -/Resources 138 0 R -/Contents 137 0 R ->> -endobj -139 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 141 0 R -/Contents 140 0 R ->> -endobj -143 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 145 0 R -/Contents 144 0 R ->> -endobj -146 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 148 0 R -/Contents 147 0 R ->> -endobj -149 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 151 0 R -/Contents 150 0 R ->> -endobj -152 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 154 0 R -/Contents 153 0 R ->> -endobj -155 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 157 0 R -/Contents 156 0 R ->> -endobj -158 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 160 0 R -/Contents 159 0 R ->> -endobj -161 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 163 0 R -/Contents 162 0 R ->> -endobj -164 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 166 0 R -/Contents 165 0 R ->> -endobj -167 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 169 0 R -/Contents 168 0 R ->> -endobj -171 0 obj -<< -/Type /Page -/Parent 174 0 R -/Resources 173 0 R -/Contents 172 0 R ->> -endobj -175 0 obj -<< -/Type /Page -/Parent 174 0 R -/Resources 177 0 R -/Contents 176 0 R ->> -endobj -194 0 obj -<< -/S /D ->> -endobj -195 0 obj -<< -/Nums [0 194 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 16 0 R 20 0 R 24 0 R 28 0 R 31 0 R 34 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [44 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 67 0 R 70 0 R 73 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -79 0 obj -<< -/Type /Pages -/Kids [76 0 R 80 0 R 83 0 R 86 0 R 89 0 R 92 0 R 95 0 R 98 0 R 101 0 R 104 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -110 0 obj -<< -/Type /Pages -/Kids [107 0 R 111 0 R 114 0 R 117 0 R 120 0 R 123 0 R 126 0 R 130 0 R 133 0 R 136 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -142 0 obj -<< -/Type /Pages -/Kids [139 0 R 143 0 R 146 0 R 149 0 R 152 0 R 155 0 R 158 0 R 161 0 R 164 0 R 167 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -174 0 obj -<< -/Type /Pages -/Kids [171 0 R 175 0 R] -/Count 2 -/Parent 47 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [12 0 R 48 0 R 79 0 R 110 0 R 142 0 R 174 0 R ] -/Count 52 -/MediaBox [0 0 612 792] ->> -endobj -196 0 obj -<< -/CreationDate (D:20210202102657-06'00') -/ModDate (D:20210202102657-06'00') -/Producer (Apple pstopdf) ->> -endobj -197 0 obj -<< -/Type /Catalog -/Pages 47 0 R -/PageLabels 195 0 R ->> -endobj -xref -0 198 -0000000000 65535 f -0000406953 00000 n -0000000016 00000 n -0000005157 00000 n -0000402151 00000 n -0000402363 00000 n -0000402806 00000 n -0000403113 00000 n -0000403547 00000 n -0000404107 00000 n -0000404661 00000 n -0000379269 00000 n -0000411484 00000 n -0000407034 00000 n -0000005323 00000 n -0000010451 00000 n -0000407118 00000 n -0000010596 00000 n -0000016231 00000 n -0000405011 00000 n -0000407202 00000 n -0000016376 00000 n -0000021170 00000 n -0000405536 00000 n -0000407286 00000 n -0000021339 00000 n -0000029392 00000 n -0000405895 00000 n -0000407370 00000 n -0000029574 00000 n -0000036680 00000 n -0000407454 00000 n -0000036838 00000 n -0000042544 00000 n -0000407538 00000 n -0000042728 00000 n -0000048888 00000 n -0000406098 00000 n -0000407622 00000 n -0000049083 00000 n -0000054621 00000 n -0000407706 00000 n -0000054768 00000 n -0000062912 00000 n -0000407790 00000 n -0000063105 00000 n -0000070484 00000 n -0000412281 00000 n -0000411621 00000 n -0000407874 00000 n -0000070666 00000 n -0000078316 00000 n -0000407958 00000 n -0000078498 00000 n -0000084197 00000 n -0000408042 00000 n -0000084366 00000 n -0000092956 00000 n -0000408126 00000 n -0000093136 00000 n -0000101191 00000 n -0000408210 00000 n -0000101347 00000 n -0000108041 00000 n -0000408294 00000 n -0000108234 00000 n -0000116987 00000 n -0000408378 00000 n -0000117169 00000 n -0000123726 00000 n -0000408462 00000 n -0000123906 00000 n -0000130927 00000 n -0000408546 00000 n -0000131083 00000 n -0000135719 00000 n -0000408630 00000 n -0000135899 00000 n -0000141480 00000 n -0000411759 00000 n -0000408714 00000 n -0000141651 00000 n -0000146225 00000 n -0000408798 00000 n -0000146396 00000 n -0000152262 00000 n -0000408882 00000 n -0000152420 00000 n -0000160063 00000 n -0000408966 00000 n -0000160232 00000 n -0000170233 00000 n -0000409050 00000 n -0000170415 00000 n -0000179949 00000 n -0000409134 00000 n -0000180131 00000 n -0000190030 00000 n -0000409218 00000 n -0000190225 00000 n -0000197285 00000 n -0000409303 00000 n -0000197455 00000 n -0000205736 00000 n -0000409390 00000 n -0000205919 00000 n -0000212428 00000 n -0000409477 00000 n -0000212622 00000 n -0000220758 00000 n -0000411899 00000 n -0000409565 00000 n -0000220893 00000 n -0000228199 00000 n -0000409653 00000 n -0000228393 00000 n -0000237393 00000 n -0000409741 00000 n -0000237587 00000 n -0000246739 00000 n -0000409829 00000 n -0000246933 00000 n -0000255591 00000 n -0000409917 00000 n -0000255785 00000 n -0000263491 00000 n -0000410005 00000 n -0000263661 00000 n -0000270651 00000 n -0000406307 00000 n -0000410093 00000 n -0000270846 00000 n -0000275820 00000 n -0000410181 00000 n -0000275977 00000 n -0000281721 00000 n -0000410269 00000 n -0000281915 00000 n -0000290033 00000 n -0000410357 00000 n -0000290228 00000 n -0000295226 00000 n -0000412048 00000 n -0000410445 00000 n -0000295409 00000 n -0000306456 00000 n -0000410533 00000 n -0000306639 00000 n -0000316525 00000 n -0000410621 00000 n -0000316708 00000 n -0000325424 00000 n -0000410709 00000 n -0000325618 00000 n -0000334696 00000 n -0000410797 00000 n -0000334890 00000 n -0000342651 00000 n -0000410885 00000 n -0000342845 00000 n -0000350413 00000 n -0000410973 00000 n -0000350596 00000 n -0000355259 00000 n -0000411061 00000 n -0000355453 00000 n -0000359480 00000 n -0000411149 00000 n -0000359652 00000 n -0000368729 00000 n -0000406483 00000 n -0000411237 00000 n -0000368937 00000 n -0000376349 00000 n -0000412197 00000 n -0000411325 00000 n -0000376517 00000 n -0000379110 00000 n -0000379410 00000 n -0000379608 00000 n -0000379815 00000 n -0000380011 00000 n -0000380215 00000 n -0000380407 00000 n -0000380608 00000 n -0000380800 00000 n -0000400909 00000 n -0000401111 00000 n -0000401314 00000 n -0000401520 00000 n -0000401731 00000 n -0000401937 00000 n -0000404806 00000 n -0000406661 00000 n -0000411413 00000 n -0000411442 00000 n -0000412404 00000 n -0000412528 00000 n -trailer -<< -/Size 198 -/Root 197 0 R -/Info 196 0 R -/ID [<1f86b68c6c72d093dab97e5d782cd12c><1f86b68c6c72d093dab97e5d782cd12c>] ->> -startxref -412600 -%%EOF diff --git a/docs/medley-irm/18-COMPILER.pdf b/docs/medley-irm/18-COMPILER.pdf deleted file mode 100644 index 4b9e3716..00000000 --- a/docs/medley-irm/18-COMPILER.pdf +++ /dev/null @@ -1,10517 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5531 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-1)Tj -/TT4 1 Tf -10 0 0 10 54 558.2 Tm -(18. COMPILER)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 554.99 m -510.01 554.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 532.54 Tm -0.2155 Tw -[(The compiler is contained in the standard Medley system. It may be used to compile functions)]TJ -0 -1.2222 TD -0.1467 Tw -[(defined in Medley, or to compile definitions stored in a file. The resulting compiled code may be)]TJ -T* -0.1033 Tw -(stored as it is compiled, so as to be available for immediate use, or it may be written onto a file for)Tj -T* -0 Tw -(subsequent loading.)Tj -0 -2.8889 TD -0.2311 Tw -(The most common way to use the compiler is to use one of the file package functions, such as)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0978 Tw -[( \(Chapter 17\), which automatically updates source files, and produces compiled versions.)]TJ --4.8008 -1.2889 TD -0.0411 Tw -(However, it is also possible to compile individual functions defined in Medley, by directly calling the)Tj -0 -1.2222 TD -0.2267 Tw -(compiler using functions such as )Tj -/TT8 1 Tf -15.8765 0 TD -0 Tw -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2267 Tw -[(. No matter how the compiler is called, the function)]TJ -/TT8 1 Tf --20.0772 -1.2889 TD -0 Tw -(COMPSET)Tj -/TT6 1 Tf -4.2007 0 TD -0.0922 Tw -[( is called which asks you certain questions concerning the compilation. \()]TJ -/TT8 1 Tf -33.2029 0 TD -0 Tw -(COMPSET)Tj -/TT6 1 Tf -4.2007 0 TD -0.0922 Tw -[( sets the)]TJ --41.6042 -1.2889 TD -0.35 Tw -(free variables )Tj -/TT8 1 Tf -6.8841 0 TD -0 Tw -(LAPFLG)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.85 0 TD -(STRF)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.85 0 TD -(SVFLG)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.85 0 TD -(LCFIL)Tj -/TT6 1 Tf -3.0005 0 TD -0.35 Tw -[( and )]TJ -/TT8 1 Tf -2.8929 0 TD -0 Tw -(LSTFIL)Tj -/TT6 1 Tf -3.6006 0 TD -0.35 Tw -[( which determine various modes of)]TJ --27.9295 -1.2889 TD -0.0233 Tw -[(operation.\) Those that can be answered "yes" or "no" can be answered with )]TJ -/TT8 1 Tf -33.8228 0 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5233 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -(, or )Tj -/TT8 1 Tf -1.7376 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -[( for "yes"; and)]TJ -/TT8 1 Tf --39.0842 -1.2889 TD -0 Tw -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( for "no". The questions are:)Tj -/TT10 1 Tf -2.7418 -2.2156 TD -(LISTING?)Tj -/TT6 1 Tf -6.1333 0 TD -0.1333 Tw -(This asks whether to generate a listing of the compiled code.)Tj -0 -1.2889 TD -0 Tw -(The )Tj -/TT8 1 Tf -2.0105 0 TD -(LAP)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( and machine code are usually not of interest but can)]TJ --3.8108 -1.2889 TD -0 Tw -(be helpful in debugging macros. Possible answers are:)Tj -/TT10 1 Tf -3.4 -2.1489 TD -(1)Tj -/TT6 1 Tf -1.9333 0 TD -(Prints output of pass 1, the )Tj -/TT8 1 Tf -12.0923 0 TD -(LAP)Tj -/TT6 1 Tf -1.8003 0 TD -( macro code)Tj -/TT10 1 Tf --15.8259 -2.2156 TD -(2)Tj -/TT6 1 Tf -1.9333 0 TD -(Prints output of pass 2, the machine code)Tj -/TT10 1 Tf --3.1333 -2.2156 TD -(YES)Tj -/TT6 1 Tf -3.1333 0 TD -(Prints output of both passes)Tj -/TT10 1 Tf --2.5333 -2.2156 TD -(NO)Tj -/TT6 1 Tf -2.5333 0 TD -(Prints no listings)Tj --5.3333 -2.0667 TD -(The variable )Tj -/TT8 1 Tf -5.748 0 TD -(LAPFLG)Tj -/TT6 1 Tf -3.6006 0 TD -( is set to the answer.)Tj -/TT10 1 Tf --13.682 -2.2156 TD -(FILE:)Tj -/TT6 1 Tf -4.3333 0 TD -0.0656 Tw -(This question \(which only appears if the answer to )Tj -/TT8 1 Tf -23.1989 0 TD -0 Tw -(LISTING?)Tj -/TT6 1 Tf --23.1989 -1.2889 TD -0.16 Tw -(is affirmative\) ask where the compiled code listing\(s\) should)Tj -0 -1.2222 TD -0.0478 Tw -[(be written. Answering )]TJ -/TT8 1 Tf -10.6276 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0478 Tw -[( will print the listings at the terminal.)]TJ --11.2277 -1.2889 TD -0 Tw -(The variable )Tj -/TT8 1 Tf -5.748 0 TD -(LSTFIL)Tj -/TT6 1 Tf -3.6006 0 TD -( is set to the answer.)Tj -/TT10 1 Tf --16.082 -2.2156 TD -(REDEFINE?)Tj -/TT6 1 Tf -6.7333 0 TD -0.1178 Tw -(This question asks whether the functions compiled should be)Tj -0 -1.2889 TD -0.2311 Tw -[(redefined to their compiled definitions. If this is answered)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.1633 Tw -(, the compiled code is stored and the function definition)Tj --1.8003 -1.2889 TD -1.0811 Tw -(changed, otherwise the function definition remains)Tj -0 -1.2222 TD -0 Tw -(unchanged.)Tj -0 -2 TD -0.1522 Tw -(The compiler does )Tj -/TT12 1 Tf -8.8698 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.1522 Tw -[( respect the value of )]TJ -/TT8 1 Tf -9.8632 0 TD -0 Tw -(DFNFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.1522 Tw -[( \(Chapter)]TJ --23.6665 -1.2889 TD -0.1589 Tw -(10\) when it redefines functions to their compiled definitions.)Tj -0 -1.2222 TD -0.2767 Tw -(Therefore, if you set )Tj -/TT8 1 Tf -10.2156 0 TD -0 Tw -(DFNFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.2767 Tw -[( to )]TJ -/TT8 1 Tf -1.9254 0 TD -0 Tw -(PROP)Tj -/TT6 1 Tf -2.4004 0 TD -0.2767 Tw -[( to completely avoid)]TJ --18.1419 -1.2889 TD -0.22 Tw -(inadvertantly redefining something in your running system,)Tj -0 -1.2222 TD -0 Tw -(you )Tj -/TT12 1 Tf -1.9551 0 TD -(must)Tj -/TT6 1 Tf -2.0562 0 TD -( not answer )Tj -/TT8 1 Tf -5.418 0 TD -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -( to this question.)Tj --11.2295 -2.0667 TD -(The variable )Tj -/TT8 1 Tf -5.748 0 TD -(STRF)Tj -/TT6 1 Tf -2.4004 0 TD -( is set to )Tj -/TT8 1 Tf -3.8159 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( \(if this is answered )Tj -/TT8 1 Tf -8.8486 0 TD -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(\) or )Tj -/TT8 1 Tf -1.7739 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 4885 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-2)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 186.6 568.2 Tm -(SAVE EXPRS?)Tj -/TT6 1 Tf -7.9333 0 TD -0.3033 Tw -(This question asks whether the original defining )Tj -/TT8 1 Tf -23.7395 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.3033 Tw -(s of)Tj --26.1399 -1.2889 TD -0.3244 Tw -[(functions should be saved. If answered )]TJ -/TT8 1 Tf -20.0431 0 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.3244 Tw -(, then before)Tj --21.8434 -1.2889 TD -0.3456 Tw -(redefining a function to its compiled definition, the )Tj -/TT8 1 Tf -25.5984 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf --25.5984 -1.2889 TD -0.11 Tw -[(definition is saved on the property list of the function name.)]TJ -0 -1.2222 TD -0 Tw -(Otherwise they are discarded.)Tj -0 -2 TD -0.13 Tw -(It is very useful to save the )Tj -/TT8 1 Tf -12.993 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.13 Tw -[( definitions, just in case the)]TJ --15.3934 -1.2889 TD -0.0522 Tw -[(compiled function needs to be changed. The editing functions)]TJ -0 -1.2222 TD -0.3867 Tw -(will retrieve this saved definition if it exists, rather than)Tj -T* -0 Tw -(reading from a source file.)Tj -0 -2 TD -(The variable )Tj -/TT8 1 Tf -5.748 0 TD -(SVFLG)Tj -/TT6 1 Tf -3.0005 0 TD -( is set to )Tj -/TT8 1 Tf -3.8159 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( \(if this is answered )Tj -/TT8 1 Tf -8.8486 0 TD -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(\) or )Tj -/TT8 1 Tf -1.7739 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --35.921 -2.2156 TD -(OUTPUT FILE?)Tj -/TT6 1 Tf -8.5333 0 TD -0.6122 Tw -(This question asks whether \(and where\) the compiled)Tj -0 -1.2889 TD -0.0011 Tw -(definitions should be written into a file for later loading. If you)Tj -0 -1.2222 TD -0.1278 Tw -[(answer with the name of a file, that file will be used. If you)]TJ -T* -0 Tw -(answer )Tj -/TT8 1 Tf -3.5061 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -[( or )]TJ -/TT8 1 Tf -1.5254 0 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -[(, you will be asked the name of the file. If the)]TJ --7.4318 -1.2889 TD -0.0744 Tw -[(file named is already open, it will continue to be used. If you)]TJ -0 -1.2222 TD -0 Tw -(answer )Tj -/TT8 1 Tf -3.4683 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0011 Tc -0.0033 Tw -( or )Tj -/TT8 1 Tf -1.4498 0 TD -0 Tc -0 Tw -(TTY)Tj -/TT10 1 Tf -1.8003 0 TD -(:)Tj -/TT6 1 Tf -0.6001 0 TD -0.0044 Tw -(, the output will be typed on the teletype \(not)Tj --7.9186 -1.2889 TD -0.1044 Tw -[(particularly useful\). If you answer )]TJ -/TT8 1 Tf -16.2248 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.6044 0 TD -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -0.1044 Tw -(, or )Tj -/TT8 1 Tf -1.8998 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1044 Tw -(, output will)Tj -/TT12 1 Tf --22.3296 -1.2889 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -( be done.)Tj --1.333 -2 TD -(The variable )Tj -/TT8 1 Tf -5.748 0 TD -(LCFIL)Tj -/TT6 1 Tf -3.0005 0 TD -( is set to the name of the file.)Tj --23.4152 -2.9556 TD -0.1511 Tw -(To make answering these questions easier, there are four other possible answers to the )Tj -/TT8 1 Tf -40.5243 0 TD -0 Tw -(LISTING?)Tj -/TT6 1 Tf --40.5243 -1.2889 TD -(question, which specify common compiling modes:)Tj -/TT10 1 Tf -12.7333 -2.1489 TD -1.3332 Tc -(SS)Tj -/TT6 1 Tf -2.5334 0 TD -0 Tc -0.3122 Tw -[(ame as last setting. Uses the same answers to compiler)]TJ --0.6001 -1.2889 TD -0 Tw -(questions as given for the last compilation.)Tj -/TT10 1 Tf --1.9333 -2.1489 TD -(F)Tj -/TT6 1 Tf -1.9333 0 TD -(Compile to )Tj -/TT10 1 Tf -5.1719 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -(ile, without redefining functions.)Tj -/TT10 1 Tf --8.3053 -2.2156 TD -[(ST)-1333.1(ST)]TJ -/TT6 1 Tf -3.7335 0 TD -(ore new definitions, saving )Tj -/TT8 1 Tf -12.2388 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -( definitions)Tj -/TT14 1 Tf -10 0 0 10 445.6069 227.04 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 229.8 207.1 Tm -[(STF)-1333(ST)]TJ -/TT6 1 Tf -4.3335 0 TD -(ore new definitions; )Tj -/TT10 1 Tf -9.0708 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -(orget )Tj -/TT8 1 Tf -2.5522 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -( definitions.)Tj --30.4904 -2.9556 TD -0.0567 Tw -(Implicit in these answers are the answers to the questions on disposition of compiled code and )Tj -/TT8 1 Tf -42.9218 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf --42.9218 -1.2889 TD -0.1489 Tw -(definitions, so the questions )Tj -/TT8 1 Tf -13.1932 0 TD -0 Tw -(REDEFINE?)Tj -/TT6 1 Tf -5.4009 0 TD -0.1489 Tw -[( and )]TJ -/TT8 1 Tf -2.4906 0 TD -0.3578 Tw -(SAVE EXPRS?)Tj -/TT6 1 Tf -6.9589 0 TD -0.1489 Tw -[( would not be asked if these answers)]TJ --28.0436 -1.2889 TD -0 Tw -(were given. )Tj -/TT8 1 Tf -5.6602 0 TD -(OUTPUT FILE?)Tj -/TT6 1 Tf -7.2012 0 TD -( would still be asked, however. For example:)Tj -/TT15 1 Tf --2.1947 -2.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(COMPILE\(\(FACT FACT1 FACT2\)\))Tj --0.9868 -1 TD -(LISTING? ST)Tj -T* -(OUTPUT FILE? FACT.DCOM)Tj -T* -(\(FACT COMPILING\))Tj -T* -(.)Tj -T* -(.)Tj -T* -(\(FACT REDEFINED\))Tj -T* -(.)Tj -T* -(.)Tj -T* -(\(FACT2 REDEFINED\))Tj -T* -(\(FACT FACT1 FACT2\))Tj -/TT15 1 Tf -0 -1.0667 TD -<0040>Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -18 0 obj -<< -/Length 6382 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-3)Tj -/TT6 1 Tf --42.8333 60.6156 TD -0.2533 Tw -(This process caused the functions )Tj -/TT8 1 Tf -16.3174 0 TD -0 Tw -(FACT)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.7533 0 TD -(FACT1)Tj -/TT6 1 Tf -3.0005 0 TD -0.2533 Tw -(, and )Tj -/TT8 1 Tf -2.9495 0 TD -0 Tw -(FACT2)Tj -/TT6 1 Tf -3.0005 0 TD -0.2533 Tw -[( to be compiled, redefined, and the)]TJ --28.4217 -1.2889 TD -0 Tw -(compiled definitions also written on the file )Tj -/TT8 1 Tf -19.5547 0 TD -(FACT.DCOM)Tj -/TT6 1 Tf -5.4009 0 TD -( for subsequent loading.)Tj -/TT4 1 Tf -10 0 0 10 54 515 Tm -(Compiler Printout)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 512.29 m -510.01 512.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 490.34 Tm -0.3 Tw -(In Medley, for each function )Tj -/TT17 1 Tf -14.2666 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.3 Tw -[( compiled, whether by )]TJ -/TT8 1 Tf -11.3821 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.8 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.3 Tw -(, or )Tj -/TT8 1 Tf -2.2909 0 TD -0 Tw -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.3 Tw -(, the)Tj --43.142 -1.2889 TD -0 Tw -(compiler prints:)Tj -/TT8 1 Tf -9.3333 -2 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ARG)Tj -1.7996 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ARG)Tj -1.7997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\) \(uses:)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -1.7992 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\) \(calls: )Tj -/TT17 1 Tf -6.001 0 TD -(FN)Tj -1.199 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT6 1 Tf --43.1333 -2.9556 TD -0.1522 Tw -(The message is printed at the beginning of the second pass of the compilation of )Tj -/TT17 1 Tf -37.8839 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1522 Tw -(. )Tj -/TT8 1 Tf -1.0544 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(ARG)Tj -1.8025 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT10 1 Tf -0.4022 0 TD -(...)Tj -/TT17 1 Tf --43.5433 -1.5111 TD -(ARG)Tj -1.8 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( is the list of arguments to )]TJ -/TT17 1 Tf -11.9009 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -(; following uses: are the free variables referenced or set in )Tj -/TT17 1 Tf -25.956 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[( \(not)]TJ --43.2574 -1.5111 TD -0 Tw -(including global variables\); following calls)Tj -/TT8 1 Tf -18.7891 0 TD -(:)Tj -/TT6 1 Tf -0.6001 0 TD -( are the undefined functions called within )Tj -/TT17 1 Tf -18.7349 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj --39.3242 -2.9556 TD -0.06 Tw -(If the compilation of )Tj -/TT17 1 Tf -9.4768 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.06 Tw -[( causes the generation of one or more auxilary functions, a compiler message)]TJ --10.677 -1.2889 TD -0 Tw -(will be printed for these functions before the message for )Tj -/TT17 1 Tf -25.4102 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(, e.g.,)Tj -/TT8 1 Tf --17.277 -2 TD -(\(FOOA0027 \(X\) \(uses: XX\)\))Tj -0 -1.2222 TD -(\(FOO \(A B\)\))Tj -/TT6 1 Tf --9.3333 -2.7333 TD -0.0078 Tw -(When compiling a block, the compiler first prints)Tj -/TT19 1 Tf -21.7776 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.2578 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BLKNAME)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.2578 0 TD -(BLKFN)Tj -3.0027 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT17 1 Tf -0.2578 0 TD -(BLKFN)Tj -3 -0.2222 TD -(2)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.2578 0 TD -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[(. Then the normal)]TJ --37.2126 -1.5111 TD -0.1189 Tw -[(message is printed for the entire block. The names of the arguments to the block are generated by)]TJ -0 -1.2222 TD -0 Tw -(suffixing )Tj -/TT8 1 Tf -4.1903 0 TD -(#)Tj -/TT6 1 Tf -0.6001 0 TD -0.0111 Tw -[( and a number to the block name, e.g., )]TJ -/TT8 1 Tf -17.4275 0 TD -0.0267 Tw -(\(FOOBLOCK \(FOOBLOCK#0 FOOBLOCK#1\))Tj -/TT19 1 Tf -19.8566 0 TD -0 Tw -( )Tj -/TT17 1 Tf -0.2611 0 TD -(FREE-)Tj --42.3356 -1.2889 TD -(VARIABLES)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(. Then a message is printed for each )Tj -/TT12 1 Tf -16.2793 0 TD -(entry)Tj -/TT6 1 Tf -2.1675 0 TD -( to the block.)Tj --24.4478 -2.9556 TD -0.0689 Tw -(In addition to the above output, both )Tj -/TT8 1 Tf -17.074 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0689 Tw -[( and )]TJ -/TT8 1 Tf -2.3307 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -[( print the name of each function)]TJ --30.8065 -1.2889 TD -0.2311 Tw -[(that is being copied from the old compiled file to the new compiled file. The normal compiler)]TJ -0 -1.2222 TD -0 Tw -(message is printed for each function that is actually compiled.)Tj -0 -2.8889 TD -0.2278 Tw -[(The compiler prints out error messages when it encounters problems compiling a function. For)]TJ -0 -1.2222 TD -0 Tw -(example:)Tj -/TT8 1 Tf -9.3333 -1.9333 TD -(----- In BAZ:)Tj -0 -1.2222 TD -(***** \(BAZ - illegal RETURN\))Tj -T* -(-----)Tj -/TT6 1 Tf --9.3333 -2.7333 TD -0.0344 Tw -(The above error message indicates that an )Tj -/TT8 1 Tf -19.0268 0 TD -0.0822 Tw -(illegal RETURN)Tj -/TT6 1 Tf -8.4836 0 TD -0.0344 Tw -[( compiler error occurred while trying to)]TJ --27.5103 -1.2889 TD -0.25 Tw -(compile the function )Tj -/TT8 1 Tf -10.1289 0 TD -0 Tw -(BAZ)Tj -/TT6 1 Tf -1.8003 0 TD -0.25 Tw -[(. Some compiler errors cause the compilation to terminate, producing)]TJ --11.9292 -1.2889 TD -0.04 Tw -[(nothing; however, there are other compiler errors which do not stop compilation. The compiler error)]TJ -0 -1.2222 TD -0 Tw -(messages are described in the last section of this chapter.)Tj -0 -2.8889 TD -0.0422 Tw -(Compiler printout and error messages go to the file )Tj -/TT8 1 Tf -23.3219 0 TD -0 Tw -(COUTFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0422 Tw -(, initially )Tj -/TT8 1 Tf -4.2539 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -(. )Tj -/TT8 1 Tf -0.8344 0 TD -0 Tw -(COUTFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0422 Tw -[( can also be set)]TJ --38.6119 -1.2889 TD -0.06 Tw -(to the name of a file opened for output, in which case all compiler printout will go to )Tj -/TT8 1 Tf -38.6991 0 TD -0 Tw -(COUTFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.06 Tw -(, i.e.)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -23 0 obj -<< -/Length 5849 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-4)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0456 Tw -[(the compiler will compile "silently." However, any error messages will be printed to both )]TJ -/TT8 1 Tf -40.5247 0 TD -0 Tw -(COUTFILE)Tj -/TT6 1 Tf --40.5247 -1.2889 TD -(as well as )Tj -/TT8 1 Tf -4.4927 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 515 Tm -(Global Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 512.29 m -558.01 512.29 l -S -BT -/TT6 1 Tf -9 0 0 9 126 490.34 Tm -0.0556 Tw -(Variables that appear on the list )Tj -/TT8 1 Tf -14.6463 0 TD -0 Tw -(GLOBALVARS)Tj -/TT6 1 Tf -6.001 0 TD -0.0556 Tw -(, or have the property )Tj -/TT8 1 Tf -10.1313 0 TD -0 Tw -(GLOBALVAR)Tj -/TT6 1 Tf -5.4009 0 TD -0.0556 Tw -[( with value )]TJ -/TT8 1 Tf -5.3879 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -(, or are)Tj --42.1674 -1.2889 TD -0.0267 Tw -(declared with the )Tj -/TT8 1 Tf -8.06 0 TD -0 Tw -(GLOBALVARS)Tj -/TT6 1 Tf -6.001 0 TD -0.0267 Tw -[( file package command, are called global variables. Such variables are)]TJ --14.061 -1.2889 TD -0.0967 Tw -[(always accessed through their top level value when they are used freely in a compiled function. In)]TJ -0 -1.2222 TD -0.0944 Tw -(other words, a reference to the value of a global variable is equivalent to calling )Tj -/TT8 1 Tf -36.7253 0 TD -0 Tw -(GETTOPVAL)Tj -/TT6 1 Tf -5.4009 0 TD -0.0944 Tw -[( on the)]TJ --42.1261 -1.2889 TD -0.19 Tw -[(variable, regardless of whether or not it is bound in the current access chain. Similarly,)]TJ -/TT8 1 Tf -41.2768 0 TD -0.4556 Tw -[( \(SETQ)]TJ -/TT17 1 Tf --41.2768 -1.2889 TD -0 Tw -(VARIABLE)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( will compile as )Tj -/TT8 1 Tf -7.1655 0 TD -(\(SETTOPVAL \(QUOTE)Tj -/TT19 1 Tf -10.2017 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VARIABLE)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --35.52 -2.9556 TD -0.12 Tw -[(All system parameters, unless otherwise specified, are declared as global variables. Thus, )]TJ -/TT12 1 Tf -41.4194 0 TD -0 Tw -(rebinding)Tj -/TT6 1 Tf --41.4194 -1.2222 TD -0.02 Tw -(these variables in a deep bound system like Medley will not affect the behavior of the system: instead,)Tj -T* -0.0733 Tw -(the variables must be )Tj -/TT12 1 Tf -9.9467 0 TD -0 Tw -(reset)Tj -/TT6 1 Tf -1.8896 0 TD -0.0733 Tw -[( to their new values, and if they are to be restored to their original values,)]TJ --11.8363 -1.2222 TD -0 Tw -(reset again. For example, you might write)Tj -/TT8 1 Tf -9.3333 -2 TD -(\(SETQ)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(GLOBALVARIABLE)Tj -/TT19 1 Tf -8.4014 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT17 1 Tf --16.7026 -1.0667 TD -(FORM)Tj -/TT8 1 Tf -T* -(\(SETQ)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(GLOBALVARIABLE)Tj -/TT19 1 Tf -8.4014 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(OLDVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf --26.036 -2.7333 TD -0.06 Tw -(In this case, if an error occurred during the evaluation of )Tj -/TT17 1 Tf -25.8685 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.06 Tw -(, or a Control-D was typed, the global)Tj --28.2689 -1.2889 TD -0.0978 Tw -[(variable would not be restored to its original value. The function )]TJ -/TT8 1 Tf -30.2075 0 TD -0 Tw -(RESETVAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0978 Tw -[( provides a convenient)]TJ --35.0083 -1.2889 TD -0.0289 Tw -(way of resetting global variables in such a way that their values are restored even if an error occurred)Tj -0 -1.2222 TD -0 Tw -(or Control-D is typed.)Tj -3.3333 -2 TD -0.4844 Tw -[(Note:)-901.2(The variables that a given function accesses as global variables can be)]TJ -3.3333 -1.2222 TD -0 Tw -(determined by using the function )Tj -/TT8 1 Tf -15.0454 0 TD -(CALLS)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 205.4 Tm -(Local Variables and Special Variables)Tj -ET -102.01 202.69 m -558.01 202.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 180.74 Tm -0.0311 Tw -(In normal compiled and interpreted code, all variable bindings are accessible by lower level functions)Tj -0 -1.2222 TD -0.1111 Tw -[(because the variables name is associated with its value. We call such variables )]TJ -/TT12 1 Tf -36.7216 0 TD -0 Tw -(special)Tj -/TT6 1 Tf -2.6851 0 TD -0.1111 Tw -[( variables, or)]TJ --39.4066 -1.2222 TD -0.0811 Tw -[(specvars. As mentioned earlier, the block compiler normally does )]TJ -/TT12 1 Tf -30.2637 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0811 Tw -[( associate names with variable)]TJ --31.5968 -1.2222 TD -0.0822 Tw -[(values. Such unnamed variables are not accessible from outside the function which binds them and)]TJ -T* -0 Tw -(are therefore )Tj -/TT12 1 Tf -5.8882 0 TD -(local)Tj -/TT6 1 Tf -1.8506 0 TD -( to that function. We call such unnamed variables local variables, or localvars.)Tj --7.7388 -2.8889 TD -0.0189 Tw -(The time economies of local variables can be achieved without block compiling by use of declarations.)Tj -0 -1.2222 TD -0.1278 Tw -(Using local variables will increase the speed of compiled code; the price is the work of writing the)Tj -T* -0 Tw -(necessary specvar declarations for those variables which need to be accessed from outside the block.)Tj -/TT8 1 Tf -0 -2.8889 TD -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.3311 Tw -[( and )]TJ -/TT8 1 Tf -2.8551 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.3311 Tw -[( are variables that affect compilation. During regular compilation,)]TJ -/TT8 1 Tf --13.0568 -1.2889 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1522 Tw -[( is normally )]TJ -/TT8 1 Tf -5.9655 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1522 Tw -(, and )Tj -/TT8 1 Tf -2.7473 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1522 Tw -[( is )]TJ -/TT8 1 Tf -1.5193 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1522 Tw -[( or a list. This configuration causes all variables)]TJ -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -26 0 obj -<< -/Length 4944 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-5)Tj -/TT6 1 Tf --42.8333 60.6156 TD -(bound in the functions being compiled to be treated as special )Tj -/TT12 1 Tf -27.6172 0 TD -(except)Tj -/TT6 1 Tf -2.5186 0 TD -( those that appear on )Tj -/TT8 1 Tf -9.5454 0 TD -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --45.082 -1.2889 TD -0.0244 Tw -(During block compilation, )Tj -/TT8 1 Tf -11.9654 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0244 Tw -[( is normally )]TJ -/TT8 1 Tf -5.5821 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0244 Tw -[( and )]TJ -/TT8 1 Tf -2.2418 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0244 Tw -[( is )]TJ -/TT8 1 Tf -1.2637 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -[( or a list. All variables are)]TJ --33.6551 -1.2889 TD -0 Tw -(then treated as local )Tj -/TT12 1 Tf -9.0811 0 TD -(except)Tj -/TT6 1 Tf -2.5186 0 TD -( those that appear on )Tj -/TT8 1 Tf -9.5454 0 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --25.9458 -2.9556 TD -0.0367 Tw -(Declarations to set )Tj -/TT8 1 Tf -8.5128 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0367 Tw -[( and )]TJ -/TT8 1 Tf -2.2662 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0367 Tw -[( to other values, and therefore affect how variables are)]TJ --20.9807 -1.2889 TD -0 Tw -(treated, may be used at several levels in the compilation process with varying scope.)Tj -2.6667 -2 TD -0.04 Tw -[(1.)-1916.7(The declarations may be included in the filecoms of a file, by using the )]TJ -/TT8 1 Tf -34.5983 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf --33.9316 -1.2889 TD -(and )Tj -/TT8 1 Tf -2.0262 0 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0833 Tw -[( file package commands. The scope of the declaration is then the entire)]TJ --6.827 -1.2889 TD -0 Tw -(file:)Tj -/TT8 1 Tf -6 -1.9333 TD -(... \(LOCALVARS . T\) \(SPECVARS X Y\) ...)Tj -/TT6 1 Tf --6.6667 -2.0667 TD -0.0489 Tw -[(2.)-1916.7(The declarations may be included in block declarations; the scope is then the block,)]TJ -0.6667 -1.2222 TD -0 Tw -(e.g.,)Tj -/TT8 1 Tf -6 -1.9333 TD -(\(BLOCKS \(\(FOOBLOCK FOO FIE \(SPECVARS . T\) \(LOCALVARS)Tj -0 -1.2222 TD -(X\)\)\))Tj -/TT6 1 Tf --6.6667 -2.0667 TD -0.0367 Tw -[(3.)-1916.7(The declarations may also appear in individual functions, or in )]TJ -/TT8 1 Tf -31.0753 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -(s or )Tj -/TT8 1 Tf -2.2159 0 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -(s)Tj --38.6256 -1.2889 TD -0.0311 Tw -(within a function, using the )Tj -/TT8 1 Tf -12.6121 0 TD -0 Tw -(DECLARE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( function. In this case, the scope of the declaration)]TJ --16.8128 -1.2889 TD -0.0422 Tw -(is the function or the )Tj -/TT8 1 Tf -9.5983 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0422 Tw -[( or )]TJ -/TT8 1 Tf -1.5254 0 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -0.0422 Tw -[( in which it appears. )]TJ -/TT8 1 Tf -9.7265 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0422 Tw -[( and )]TJ -/TT8 1 Tf -2.2773 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf --34.5293 -1.2889 TD -0.1589 Tw -(declarations must appear immediately after the variable list in the function, )Tj -/TT8 1 Tf -35.3323 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.1589 Tw -(, or)Tj -/TT8 1 Tf --37.7327 -1.2889 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -(, but intervening comments are permitted. For example: )Tj -/TT8 1 Tf -2.3994 -2 TD -(\(DEFINEQ \(\(FOO)Tj -2.6667 -1.2222 TD -(\(LAMBDA \(X Y\))Tj -2.6667 -1 TD -(\(DECLARE \(LOCALVARS Y\)\))Tj --7.3333 -1 TD -[( )-6133.1(\(PROG \(X Y Z\))]TJ -T* -[( )-9399.9(\(DECLARE \(LOCALVARS X\)\))]TJ -10 -1 TD -(... ])Tj -/TT6 1 Tf --17.3333 -2.7333 TD -0.0189 Tw -(If the above function is compiled \(non-block\), the outer )Tj -/TT8 1 Tf -24.773 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0189 Tw -[( will be special, the )]TJ -/TT8 1 Tf -8.7507 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0189 Tw -[( bound in the )]TJ -/TT8 1 Tf -6.2308 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0189 Tw -[( will)]TJ --43.3551 -1.2889 TD -0 Tw -(be local, and both bindings of )Tj -/TT8 1 Tf -13.3232 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -( will be local.)Tj --13.9233 -2.9556 TD -0.0633 Tw -(Declarations for )Tj -/TT8 1 Tf -7.4524 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0633 Tw -[( and )]TJ -/TT8 1 Tf -2.3195 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0633 Tw -[( can be used in two ways: either to cause variables to be)]TJ --19.9736 -1.2889 TD -0.12 Tw -(treated the same whether the function\(s\) are block compiled or compiled normally, or to affect one)Tj -0 -1.2222 TD -0 Tw -(compilation mode while not affecting the default in the other mode. For example:)Tj -/TT8 1 Tf -7.3333 -1.9333 TD -(\(LAMBDA \(X Y\))Tj -4.6667 -1 TD -(\(DECLARE \(SPECVARS . T\)\))Tj -T* -(\(PROG \(Z\) ... ])Tj -/TT6 1 Tf --12 -2.7333 TD -(will cause )Tj -/TT8 1 Tf -4.6567 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(Z)Tj -/TT6 1 Tf -0.6001 0 TD -( to be specvars for both block and normal compilation while)Tj -/TT8 1 Tf --2.0666 -2 TD -(\(LAMBDA \(X Y\))Tj -4.6667 -1 TD -(\(DECLARE \(SPECVARS X\)\))Tj -T* -(... ])Tj -ET -endstream -endobj -27 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -29 0 obj -<< -/Length 7801 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-6)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0078 Tw -(will make )Tj -/TT8 1 Tf -4.6406 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0078 Tw -[( a specvar when block compiling, but when regular compiling the declaration will have no)]TJ --5.2407 -1.2889 TD -0.0744 Tw -(effect, because the default value of specvars would be )Tj -/TT8 1 Tf -24.6417 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -(, and therefore )Tj -/TT12 1 Tf -6.9304 0 TD -0 Tw -(both)Tj -/TT6 1 Tf -1.7397 0 TD -( )Tj -/TT8 1 Tf -0.3244 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -[( and )]TJ -/TT8 1 Tf -2.3418 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -[( will be specvars)]TJ --37.7783 -1.2889 TD -0 Tw -(by default.)Tj -0 -2.8889 TD -(Although )Tj -/TT8 1 Tf -4.5642 0 TD -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.05 Tw -[( and )]TJ -/TT8 1 Tf -2.2929 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.05 Tw -[( declarations have the same form as other components of block)]TJ --17.0587 -1.2889 TD -0.2611 Tw -(declarations such as )Tj -/TT8 1 Tf -9.8986 0 TD -0.6278 Tw -(\(LINKFNS . T\))Tj -/TT6 1 Tf -9.0568 0 TD -0.2611 Tw -(, their operation is somewhat different because the two)Tj --18.9554 -1.2889 TD -0.2778 Tw -(variables are not independent. )Tj -/TT8 1 Tf -15.3381 0 TD -0.6678 Tw -(\(SPECVARS . T\))Tj -/TT6 1 Tf -9.7369 0 TD -0.2778 Tw -[( will cause )]TJ -/TT8 1 Tf -5.7401 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.2778 Tw -[( to be set to )]TJ -/TT8 1 Tf -6.6443 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2778 Tw -(, and)Tj -/TT8 1 Tf --42.8602 -1.2889 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0222 Tw -[( to be set to )]TJ -/TT8 1 Tf -5.3665 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT19 1 Tf -0.25 0 TD -( )Tj -/TT8 1 Tf -0.2722 0 TD -0.0544 Tw -(\(SPECVARS V1 V2 ...\))Tj -/TT6 1 Tf -12.1653 0 TD -0.0222 Tw -[( will have )]TJ -/TT12 1 Tf -4.9219 0 TD -0 Tw -(no)Tj -/TT6 1 Tf -1 0 TD -0.0222 Tw -[( effect if the value of )]TJ -/TT8 1 Tf -9.3555 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf --40.5326 -1.2889 TD -(is )Tj -/TT8 1 Tf -0.986 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0211 Tw -(, but if it is a list \(or )Tj -/TT8 1 Tf -8.9633 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\), )Tj -/TT8 1 Tf -0.8541 0 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0211 Tw -[( will be set to the union of its prior value and )]TJ -/TT8 1 Tf -20.3637 0 TD -0.0522 Tw -(\(V1 V2 ...\))Tj -/TT6 1 Tf -6.7055 0 TD -0 Tw -(.)Tj --45.0738 -1.2889 TD -0.0522 Tw -(The operation of )Tj -/TT8 1 Tf -7.7255 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0522 Tw -[( is analogous. Thus, to affect both modes of compilation one of the two)]TJ --13.1264 -1.2889 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -(\) must be declared )Tj -/TT8 1 Tf -8.4106 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( before specifying a list for the other.)Tj --17.653 -2.0667 TD -0.0533 Tw -[(Note:)-901.2(The variables that a given function binds as local variables or accesses as special)]TJ -3.3333 -1.2222 TD -0 Tw -(variables can be determined by using the function )Tj -/TT8 1 Tf -22.3516 0 TD -(CALLS)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --28.6854 -2.0667 TD -(Note:)Tj -/TT8 1 Tf -3.3333 0 TD -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0456 Tw -[( and )]TJ -/TT8 1 Tf -2.284 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0456 Tw -[( declarations affect the compilation of local variables)]TJ --12.4856 -1.2889 TD -0.3211 Tw -(within a function, but the arguments to functions are always accessible as)Tj -0 -1.2222 TD -0 Tw -(specvars. This can be changed by redefining the following function:)Tj -/TT8 1 Tf --4 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DASSEM.SAVELOCALVARS)Tj -/TT8 1 Tf -11.9999 0 TD -( )Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -(\) )Tj -/TT14 1 Tf -10 0 0 10 290.4044 357.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 357.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0167 Tw -(This function is called by the compiler to determine whether argument information for )Tj -/TT17 1 Tf -38.7875 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf --38.7875 -1.2889 TD -0.0233 Tw -(should be written on the compiled file for )Tj -/TT17 1 Tf -18.8375 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0233 Tw -[(. If it returns )]TJ -/TT8 1 Tf -6.1079 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0233 Tw -(, the argument information)Tj --27.9459 -1.2889 TD -0 Tw -(is )Tj -/TT12 1 Tf -0.9648 0 TD -(not)Tj -/TT6 1 Tf -1.333 0 TD -( saved, and the function is stored with arguments )Tj -/TT8 1 Tf -22.1426 0 TD -(U)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(V)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(W)Tj -/TT6 1 Tf -0.6001 0 TD -(, etc instead of the originals.)Tj --27.2407 -2.0667 TD -(Initially, )Tj -/TT8 1 Tf -4.5353 0 TD -(DASSEM.SAVELOCALVARS)Tj -/TT6 1 Tf -12.002 0 TD -0.57 Tw -[( is defined to return )]TJ -/TT8 1 Tf -11.8529 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(. )Tj -/TT8 1 Tf -1.07 0 TD -1.3689 Tw -[( \(MOVD NILL)]TJ --30.0603 -1.2889 TD -0 Tw -(DASSEM.SAVELOCALVARS\))Tj -/TT6 1 Tf -13.2022 0 TD -0.0622 Tw -[( causes the compiler to retain no local variable or argument)]TJ --13.2022 -1.2889 TD -0.1 Tw -[(names. Alternatively, )]TJ -/TT8 1 Tf -10.2771 0 TD -0 Tw -(DASSEM.SAVELOCALVARS)Tj -/TT6 1 Tf -12.002 0 TD -0.1 Tw -[( could be redefined as a more complex)]TJ --22.279 -1.2889 TD -0 Tw -(predicate, to allow finer discrimination.)Tj -/TT4 1 Tf -10 0 0 10 102 222.06 Tm -(Constants)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 219.35 m -558.01 219.35 l -S -BT -/TT6 1 Tf -9 0 0 9 126 197.4 Tm -0.0456 Tw -(Interlisp allows the expression of constructions which are intended to be description of their constant)Tj -0 -1.2222 TD -0.0422 Tw -[(values. The following functions are used to define constant values. The function )]TJ -/TT8 1 Tf -36.638 0 TD -0 Tw -(SELECTC)Tj -/TT6 1 Tf -4.2007 0 TD -0.0422 Tw -[( provides)]TJ --40.8387 -1.2889 TD -0 Tw -(a mechanism for comparing a value to a number of constants.)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CONSTANT)Tj -/TT4 1 Tf -10 0 0 10 198.6 152.46 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 201.3783 152.46 Tm -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 212.1801 152.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 152.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0278 Tw -(This function enables you to define that the expression )Tj -/TT17 1 Tf -24.6353 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0278 Tw -[( should be treated as a "constant")]TJ --25.2354 -1.2889 TD -0.1011 Tw -[(value. When )]TJ -/TT8 1 Tf -6.3844 0 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.1011 Tw -[( is interpreted, )]TJ -/TT17 1 Tf -6.9825 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( is evaluted each time it is encountered. If the)]TJ -/TT8 1 Tf --18.7678 -1.2889 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -( form is compiled, however, the expression will be evaluated only once.)Tj --4.8008 -2.0667 TD -0.0456 Tw -(If the value of )Tj -/TT17 1 Tf -6.5562 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0456 Tw -[( has a readable print name, then it will be evaluated at compile-time, and)]TJ --7.1563 -1.2889 TD -0.1711 Tw -(the value will be saved as a literal in the compiled functions definition, as if )Tj -/TT8 1 Tf -36.4011 0 TD -0 Tw -(\(QUOTE)Tj -/TT17 1 Tf --36.4011 -1.2889 TD -(VALUE-OF-EXPRESSION)Tj -/TT8 1 Tf -11.4019 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( had appeared instead of )Tj -/TT8 1 Tf -11.2007 0 TD -(\(CONSTANT)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(EXPRESSION)Tj -/TT8 1 Tf -6.001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --35.4546 -2.0667 TD -0.0622 Tw -(If the value of )Tj -/TT17 1 Tf -6.6229 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( does not have a readable print name, then the expression )]TJ -/TT17 1 Tf -26.3646 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -[( itself will be)]TJ --34.1877 -1.2889 TD -0.1011 Tw -[(saved with the function, and it will be evaluated when the function is first loaded. The)]TJ -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -32 0 obj -<< -/Length 6047 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-7)Tj -/TT6 1 Tf --37.5 60.6156 TD -0.31 Tw -(value will then be stored in the functions literals, and will be retrieved on future)Tj -0 -1.2222 TD -0 Tw -(references.)Tj -0 -2 TD -0.0411 Tw -(If a program needed a list of 30 )Tj -/TT8 1 Tf -14.3264 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0411 Tw -(s, you could specify )Tj -/TT8 1 Tf -9.1659 0 TD -0.1 Tw -(\(CONSTANT \(to 30 collect)Tj --25.2926 -1.2889 TD -0 Tw -(NIL\)\))Tj -/TT6 1 Tf -3.0005 0 TD -0.0533 Tw -[( instead of )]TJ -/TT8 1 Tf -5.0018 0 TD -0.1289 Tw -(\(QUOTE \(NIL NIL ...\)\))Tj -/TT6 1 Tf -12.9887 0 TD -0.0533 Tw -[(. The former is more concise and displays)]TJ --20.991 -1.2889 TD -0 Tw -(the important parameter much more directly than the latter.)Tj -/TT8 1 Tf -0 -2 TD -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.2156 Tw -[( can also be used to denote values that cannot be quoted directly, such as)]TJ -/TT8 1 Tf --4.8008 -1.2889 TD -0.8389 Tw -(\(CONSTANT \(PACK NIL\)\))Tj -/TT6 1 Tf -14.2798 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.85 0 TD -0.8389 Tw -(\(CONSTANT \(ARRAY 10\)\))Tj -/TT6 1 Tf -14.2798 0 TD -0.35 Tw -[(. It is also useful to)]TJ --29.4097 -1.2889 TD -0.0589 Tw -(parameterize quantities that are constant at run time but may differ at compile time, e.g.,)Tj -/TT8 1 Tf -0 -1.2222 TD -0.4644 Tw -(\(CONSTANT BITSPERWORD\))Tj -/TT6 1 Tf -13.6666 0 TD -0.1933 Tw -[( in a program is exactly equivalent to 36, if the variable)]TJ -/TT8 1 Tf --13.6666 -1.2889 TD -0 Tw -(BITSPERWORD)Tj -/TT6 1 Tf -6.6011 0 TD -0.1733 Tw -[( is bound to 36 when the )]TJ -/TT8 1 Tf -12.3095 0 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.1733 Tw -[( expression is evaluated at compile)]TJ --23.7114 -1.2889 TD -0 Tw -(time.)Tj -0 -2 TD -0.09 Tw -(Whereas the function )Tj -/TT8 1 Tf -9.9731 0 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.09 Tw -[( attempts to evaluate the expression as soon as possible)]TJ --14.7739 -1.2889 TD -0.4678 Tw -(\(compile-time, load-time, or first-run-time\), other options are available, using the)Tj -0 -1.2222 TD -0 Tw -(folowing two function:)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(LOADTIMECONSTANT)Tj -/TT8 1 Tf -9.5999 0 TD -( )Tj -/TT17 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 210.0026 379 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 379 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0767 Tw -(Similar to )Tj -/TT8 1 Tf -4.7012 0 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.0767 Tw -(, except that the evaluation of )Tj -/TT17 1 Tf -13.7388 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0767 Tw -[( is deferred until the compiled code)]TJ --23.8409 -1.2889 TD -0.0856 Tw -[(for the containing function is loaded in. For example, )]TJ -/TT8 1 Tf -24.7955 0 TD -0.2044 Tw -(\(LOADTIMECONSTANT \(DATE\)\))Tj -/TT6 1 Tf --24.7955 -1.2889 TD -0.0211 Tw -[(will return the date the code was loaded. If )]TJ -/TT8 1 Tf -19.6838 0 TD -0 Tw -(LOADTIMECONSTANT)Tj -/TT6 1 Tf -9.6016 0 TD -0.0211 Tw -[( is interpreted, it merely)]TJ --29.2853 -1.2889 TD -0 Tw -(returns the value of )Tj -/TT17 1 Tf -8.9082 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --12.175 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DEFERREDCONSTANT)Tj -/TT4 1 Tf -10 0 0 10 193.8 304.66 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 196.5783 304.66 Tm -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 207.3801 304.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 304.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0033 Tw -(Similar to )Tj -/TT8 1 Tf -4.5545 0 TD -0 Tw -(CONSTANT)Tj -/TT6 1 Tf -4.8008 0 TD -0.0033 Tw -(, except that the evaluation of )Tj -/TT17 1 Tf -13.2988 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0001 Tc -0.0032 Tw -( is always deferred until the compiled)Tj --23.2542 -1.2889 TD -0 Tc -0.0278 Tw -[(function is first run. This is useful when the storage for the constant is excessive so that it)]TJ -0 -1.2222 TD -0.7778 Tw -[(shouldnt be allocated until \(unless\) the function is actually invoked. If)]TJ -/TT8 1 Tf -T* -0 Tw -(DEFERREDCONSTANT)Tj -/TT6 1 Tf -9.6016 0 TD -( is interpreted, it merely returns the value of )Tj -/TT17 1 Tf -19.7876 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --32.6559 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CONSTANTS)Tj -/TT4 1 Tf -10 0 0 10 156 231.52 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 158.7783 231.52 Tm -(VAR)Tj -1.8002 -0.2222 TD -(1)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -1.8 -0.2222 TD -(2)Tj -/TT12 1 Tf -0.6 0.2222 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(...)Tj -/TT12 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 251.9309 231.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 231.52 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.0667 TD -(Defines )Tj -/TT17 1 Tf -3.8596 0 TD -(VAR)Tj -1.8015 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -(, )Tj -/TT8 1 Tf -0.7478 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.4978 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.2478 Tw -[( \(unevaluated\) to be compile-time constants. Whenever the)]TJ --11.7067 -1.5111 TD -0.0956 Tw -(compiler encounters a \(free\) reference to one of these constants, it will compile the form)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(\(CONSTANT)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAR)Tj -1.7991 -0.2222 TD -(i)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( instead.)Tj --8.6501 -2.2889 TD -(If )Tj -/TT17 1 Tf -0.9821 0 TD -(VAR)Tj -1.8001 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0622 Tw -[( is a list of the form )]TJ -/TT8 1 Tf -9.1553 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.749 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0622 Tw -(, a free reference to the variable will compile as)Tj -/TT8 1 Tf --18.6874 -1.5111 TD -0 Tw -(\(CONSTANT)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --8.6514 -2.0667 TD -0.0011 Tw -(The compiler prints a warning if user code attempts to bind a variable previously declared)Tj -0 -1.2222 TD -0 Tw -(as a constant.)Tj -0 -2 TD -(Constants can be saved using the )Tj -/TT8 1 Tf -14.8989 0 TD -(CONSTANTS)Tj -/TT6 1 Tf -5.4009 0 TD -( file package command.)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -35 0 obj -<< -/Length 6136 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-8)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Compiling Function Calls)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 126 543.54 Tm -0.04 Tw -(When compiling the call to a function, the compiler must know the type of the function, to determine)Tj -0 -1.2222 TD -0.0667 Tw -[(how the arguments should be prepared \(evaluated/unevaluated, spread/nospread\). There are three)]TJ -T* -0 Tw -(seperate cases: lambda, nlambda spread, and nlambda nospread functions.)Tj -0 -2.8889 TD -0.1356 Tw -(To determine which of these three cases is appropriate, the compiler will first look for a definition)Tj -0 -1.2222 TD -0.0578 Tw -[(among the functions in the file that is being compiled. The function can be defined anywhere in any)]TJ -T* -0.0267 Tw -(of the files given as arguments to )Tj -/TT8 1 Tf -15.0377 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -0.0644 Tw -(BRECOMPILE or RECOMPILE)Tj -/TT6 1 Tf -13.9311 0 TD -0.0267 Tw -[(. If the function is)]TJ --37.2234 -1.2889 TD -0.0633 Tw -(not contained in the file, the compiler will look for other information in the variables )Tj -/TT8 1 Tf -38.5174 0 TD -0 Tw -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5633 0 TD -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --45.0817 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -(, which can be set by you:)Tj -/TT10 1 Tf --1.6766 -2.5489 TD -(NLAMA)Tj -/TT14 1 Tf -10 0 0 10 177.0044 427.4 Tm --0.0003 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 427.4 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -(\(For )Tj -/TT8 1 Tf -2.1612 0 TD -(NLAM)Tj -/TT6 1 Tf -2.4004 0 TD -(bda )Tj -/TT8 1 Tf -1.9952 0 TD -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0811 Tw -(toms\) A list of functions to be treated as nlambda nospread functions by)Tj --7.1568 -1.2889 TD -0 Tw -(the compiler.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(NLAML)Tj -/TT14 1 Tf -10 0 0 10 177 376.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 376.86 Tm -([Variable])Tj --35.6011 -1.8444 TD -(\(For )Tj -/TT8 1 Tf -2.1967 0 TD -(NLAM)Tj -/TT6 1 Tf -2.4004 0 TD -(bda )Tj -/TT8 1 Tf -2.0307 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.1167 Tw -(ist\) A list of functions to be treated as nlambda spread functions by the)Tj --7.228 -1.2889 TD -0 Tw -(compiler.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(LAMS)Tj -/TT14 1 Tf -10 0 0 10 171.6 326.32 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 326.32 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0389 Tw -[(A list of functions to be treated as lambda functions by the compiler. Note that including)]TJ -0 -1.2222 TD -0.0767 Tw -(functions on )Tj -/TT8 1 Tf -5.9121 0 TD -0 Tw -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0767 Tw -[( is only necessary to override in-core nlambda definitions, since in the)]TJ --8.3125 -1.2889 TD -0 Tw -(absence of other information, the compiler assumes the function is a lambda.)Tj -0 -2 TD -0.22 Tw -(If the function is not contained in a file, or on the lists )Tj -/TT8 1 Tf -26.633 0 TD -0 Tw -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.72 0 TD -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -0.22 Tw -(, or )Tj -/TT8 1 Tf -2.1309 0 TD -0 Tw -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.22 Tw -(, the)Tj --37.8852 -1.2889 TD -0.0078 Tw -[(compiler will look for a current definition in the Interlisp system, and use its type. If there)]TJ -0 -1.2222 TD -0 Tw -(is no current definition, next )Tj -/TT8 1 Tf -12.8022 0 TD -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -( is called:)Tj -/TT10 1 Tf --23.2702 -2.5489 TD -(COMPILEUSERFN)Tj -/TT14 1 Tf -10 0 0 10 220.2 223.58 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 223.58 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.09 Tw -(When compiling a function call, if the function type cannot be found by looking in files,)Tj -0 -1.2222 TD -0.2267 Tw -(the variables )Tj -/TT8 1 Tf -6.3386 0 TD -0 Tw -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.7267 0 TD -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -0.2267 Tw -(, or )Tj -/TT8 1 Tf -2.1442 0 TD -0 Tw -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.2267 Tw -(, or at a current definition, then if the value of)Tj -/TT8 1 Tf --17.6109 -1.2889 TD -0 Tw -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.09 Tw -[( is not )]TJ -/TT8 1 Tf -3.1889 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.09 Tw -(, the compiler calls \(the value of\) )Tj -/TT8 1 Tf -15.2667 0 TD -0 Tw -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.09 Tw -[( giving it)]TJ --35.8585 -1.2889 TD -0.2767 Tw -(as arguments )Tj -/TT8 1 Tf -6.7252 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2767 Tw -[( of the form and the form itself, i.e., the compiler does )]TJ -/TT8 1 Tf -27.2702 0 TD -0 Tw -(\(APPLY*)Tj --35.7957 -1.2889 TD -0.3644 Tw -(COMPILEUSERFN \(CDR)Tj -/TT19 1 Tf -11.1662 0 TD -0 Tw -( )Tj -/TT17 1 Tf -0.4011 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.4011 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[(. If a non-)]TJ -/TT8 1 Tf -5.0673 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1511 Tw -[( value is returned, it is compiled)]TJ --24.837 -1.2889 TD -0.0089 Tw -(instead of )Tj -/TT17 1 Tf -4.6096 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -[(. If )]TJ -/TT8 1 Tf -1.6966 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0089 Tw -[( is returned, the compiler compiles the original expression as a call)]TJ --10.5068 -1.2889 TD -0 Tw -(to a lambda spread that is not yet defined.)Tj -/TT8 1 Tf -0 -2 TD -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.0989 Tw -[( is only called when the compiler encounters a )]TJ -/TT12 1 Tf -21.5995 0 TD -0 Tw -(list)Tj -/TT6 1 Tf -1.2778 0 TD -( )Tj -/TT8 1 Tf -0.3489 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0989 Tw -[( of which is not)]TJ --32.8278 -1.2889 TD -0.0278 Tw -(the name of a defined function. You can instruct the compiler about how to compile other)Tj -0 -1.2222 TD -0 Tw -(data types via )Tj -/TT8 1 Tf -6.4292 0 TD -(COMPILETYPELST)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --14.8306 -2.0667 TD -0.0078 Tw -(CLISP uses )Tj -/TT8 1 Tf -5.2309 0 TD -0 Tw -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.0078 Tw -[( to tell the compiler how to compile iterative statements, )]TJ -/TT8 1 Tf -25.174 0 TD -0 Tw -(IF-)Tj --38.2061 -1.2889 TD -(THEN-ELSE)Tj -/TT6 1 Tf -5.4009 0 TD -( statements, and pattern match constructs.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -38 0 obj -<< -/Length 6180 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-9)Tj -/TT6 1 Tf --37.5 60.6156 TD -0.0378 Tw -(If the compiler cannot determine the function type by any of the means above, it assumes)Tj -0 -1.2222 TD -0 Tw -(that the function is a lambda function, and its arguments are to be evaluated.)Tj -0 -2 TD -(If there are nlambda functions called from the functions being compiled, and they are only)Tj -0 -1.2222 TD -0.03 Tw -(defined in a separate file, they must be included on )Tj -/TT8 1 Tf -23.1579 0 TD -0 Tw -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( or )]TJ -/TT8 1 Tf -1.5009 0 TD -0 Tw -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -(, or the compiler will)Tj --30.6598 -1.2889 TD -0.2444 Tw -(incorrectly assume that their arguments are to be evaluated, and compile the calling)Tj -0 -1.2222 TD -0.1344 Tw -(function correspondingly. This is only necessary if the compiler does not "know" about)Tj -T* -0.1033 Tw -[(the function. If the function is defined at compile time, or is handled via a macro, or is)]TJ -T* -0.29 Tw -(contained in the same group of files as the functions that call it, the compiler will)Tj -T* -0 Tw -(automatically handle calls to that function correctly.)Tj -/TT4 1 Tf -10 0 0 10 54 431.6 Tm -(FUNCTION and Functional Arguments)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 428.89 m -510.01 428.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 406.94 Tm -0.4033 Tw -(Compiling the function )Tj -/TT8 1 Tf -11.8042 0 TD -0 Tw -(FUNCTION)Tj -/TT6 1 Tf -4.8008 0 TD -0.4033 Tw -[( may involve creating and compiling a seperate "auxiliary)]TJ --16.605 -1.2889 TD -0.0444 Tw -[(function", which will be called at run time. An auxiliary function is named by attaching a )]TJ -/TT8 1 Tf -40.5534 0 TD -0 Tw -(GENSYM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0444 Tw -[( to)]TJ --44.154 -1.2889 TD -0.0222 Tw -(the end of the name of the function in which they appear, e.g., )Tj -/TT8 1 Tf -27.9417 0 TD -0 Tw -(FOOA0003)Tj -/TT6 1 Tf -4.8008 0 TD -0.0222 Tw -[(. For example, suppose )]TJ -/TT8 1 Tf -10.7849 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf --43.5275 -1.2889 TD -0.0156 Tw -(is defined as )Tj -/TT8 1 Tf -5.8211 0 TD -0.0378 Tw -(\(LAMBDA \(X\) ... \(FOO1 X \(FUNCTION ...\)\) ...\))Tj -/TT6 1 Tf -26.6687 0 TD -0.0156 Tw -[( and compiled. When )]TJ -/TT8 1 Tf -10.0592 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0156 Tw -[( is)]TJ --44.3493 -1.2889 TD -0 Tw -(run, )Tj -/TT8 1 Tf -2.1756 0 TD -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0956 Tw -[( will be called with two arguments, )]TJ -/TT8 1 Tf -16.5112 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -(, and )Tj -/TT8 1 Tf -2.634 0 TD -0 Tw -(FOOA000)Tj -/TT17 1 Tf -4.2007 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -[( and )]TJ -/TT8 1 Tf -2.384 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0956 Tw -[( will call )]TJ -/TT8 1 Tf -4.2696 0 TD -0 Tw -(FOOA000)Tj -/TT17 1 Tf -4.2007 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -[( each)]TJ --42.9768 -1.2889 TD -0 Tw -(time it uses its functional argument.)Tj -0 -2.8889 TD -(Compiling )Tj -/TT8 1 Tf -5.0644 0 TD -(FUNCTION)Tj -/TT6 1 Tf -4.8008 0 TD -0.0644 Tw -[( will )]TJ -/TT12 1 Tf -2.3359 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0644 Tw -[( create an auxiliary function if it is a functional argument to a function)]TJ --13.5342 -1.2889 TD -0.0511 Tw -(that compiles open, such as most of the mapping functions \()Tj -/TT8 1 Tf -27.0614 0 TD -0 Tw -(MAPCAR)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5511 0 TD -(MAPLIST)Tj -/TT6 1 Tf -4.2007 0 TD -0.0511 Tw -[(, etc.\). A considerable)]TJ --35.4138 -1.2889 TD -0 Tw -(savings in time could be achieved by making )Tj -/TT8 1 Tf -20.1489 0 TD -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -( compile open via a computed macro, e.g.)Tj -/TT8 1 Tf --15.216 -2 TD -(\(PUTPROP FOO1 MACRO)Tj -2 -1.2222 TD -( \(Z \(LIST \(SUBST \(CADADR Z\))Tj -0 -1 TD -[( )-6199.7(\(QUOTE FN\))]TJ -/TT17 1 Tf -8 -1 TD -(DEF)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj --4.467 -1 TD -(\(CAR Z\)\)\))Tj -/TT17 1 Tf --14.6667 -2.7333 TD -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0811 Tw -[( is the definition of )]TJ -/TT8 1 Tf -8.9685 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0811 Tw -[( as a function of just its first argument, and )]TJ -/TT8 1 Tf -19.9849 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0811 Tw -[( is the name used for its)]TJ --34.3544 -1.2889 TD -0.0644 Tw -[(functional argument in its definition. In this case, )]TJ -/TT8 1 Tf -22.787 0 TD -0.1533 Tw -(\(FOO1 X \(FUNCTION ...\)\))Tj -/TT6 1 Tf -14.2622 0 TD -0.0644 Tw -[( would compile as)]TJ --37.0493 -1.2889 TD -0.0489 Tw -(an expression, containing the argument to )Tj -/TT8 1 Tf -19.1459 0 TD -0 Tw -(FUNCTION)Tj -/TT6 1 Tf -4.8008 0 TD -0.0489 Tw -[( as an open )]TJ -/TT8 1 Tf -5.4094 0 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -0.0489 Tw -[( expression. Thus you save)]TJ --32.9567 -1.2889 TD -0.0711 Tw -(not only the function call to )Tj -/TT8 1 Tf -12.8481 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0711 Tw -[(, but also each of the function calls to its functional argument. For)]TJ --15.2484 -1.2889 TD -0.0811 Tw -(example, if )Tj -/TT8 1 Tf -5.2853 0 TD -0 Tw -(FOO1)Tj -/TT6 1 Tf -2.4004 0 TD -0.0811 Tw -[( operates on a list of length ten, eleven function calls will be saved. Of course, this)]TJ --7.6857 -1.2889 TD -0 Tw -(savings in time costs space, and you must decide which is more important.)Tj -/TT4 1 Tf -10 0 0 10 54 118.8 Tm -(Open Functions)Tj -ET -54.01 116.09 m -510.01 116.09 l -S -BT -/TT6 1 Tf -9 0 0 9 78 94.14 Tm -0.1767 Tw -(When a function is called from a compiled function, a system routine is invoked that sets up the)Tj -0 -1.2222 TD -0.1489 Tw -[(parameter and control push lists as necessary for variable bindings and return information. If the)]TJ -T* -0.2289 Tw -(amount of time spent )Tj -/TT12 1 Tf -10.6255 0 TD -0 Tw -(inside)Tj -/TT6 1 Tf -2.3901 0 TD -0.2289 Tw -[( the function is small, this function calling time will be a significant)]TJ --13.0157 -1.2222 TD -0.0189 Tw -[(percentage of the total time required to use the function. Therefore, many "small" functions, e.g., )]TJ -/TT8 1 Tf -43.2817 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj -/TT8 1 Tf --45.082 -1.2889 TD -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5089 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.5089 0 TD -(NOT)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5089 0 TD -(CONS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -[( are always compiled "open", i.e., they do not result in a function call. Other larger)]TJ -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -41 0 obj -<< -/Length 6894 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-10)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0822 Tw -(functions such as )Tj -/TT8 1 Tf -8.1041 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5822 0 TD -0.1978 Tw -(SELECTQ, MAPC)Tj -/TT6 1 Tf -7.999 0 TD -0.0822 Tw -(, etc. are compiled open because they are frequently used.)Tj --19.0858 -1.2889 TD -0.06 Tw -(You can make other functions compile open via )Tj -/TT8 1 Tf -21.7974 0 TD -0 Tw -(MACRO)Tj -/TT6 1 Tf -3.0005 0 TD -0.06 Tw -[( definitions. You can also affect the compiled)]TJ --24.7979 -1.2889 TD -0 Tw -(code via )Tj -/TT8 1 Tf -3.9355 0 TD -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -( and )Tj -/TT8 1 Tf -2.4429 0 TD -(COMPILETYPELST)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 503.4 Tm -(COMPILETYPELST)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 500.69 m -558.01 500.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 478.74 Tm -0.1511 Tw -(Most of the compilers mechanism deals with how to handle forms \(lists\) and variables \(symbols\).)Tj -0 -1.2222 TD -0.1011 Tw -(You can affect the compilers behaviour with respect to lists and literal atoms in a number of ways,)Tj -T* -0.1333 Tw -(e.g. macros, declarations, )Tj -/TT8 1 Tf -11.7652 0 TD -0 Tw -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.1333 Tw -(, etc. )Tj -/TT8 1 Tf -2.899 0 TD -0 Tw -(COMPILETYPELST)Tj -/TT6 1 Tf -8.4014 0 TD -0.1333 Tw -[( allows you to tell the compiler)]TJ --30.8669 -1.2889 TD -0.0244 Tw -(what to do when it encounters a data type )Tj -/TT12 1 Tf -19.0945 0 TD -0 Tw -(other)Tj -/TT6 1 Tf -2.0552 0 TD -0.0244 Tw -[( than a list or an atom. It is the facility in the compiler)]TJ --21.1497 -1.2222 TD -0 Tw -(that corresponds to )Tj -/TT8 1 Tf -8.8027 0 TD -(DEFEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -( for the interpreter.)Tj -/TT10 1 Tf --10.3368 -2.5489 TD -(COMPILETYPELST)Tj -/TT14 1 Tf -10 0 0 10 225.6 411.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 411.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2978 Tw -(A list of elements of the form )Tj -/TT8 1 Tf -15.1889 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TYPENAME)Tj -/TT19 1 Tf -4.8008 0 TD -( )Tj -/TT8 1 Tf -0.5478 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.5478 0 TD -(FUNCTION)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.2978 Tw -[(. Whenever the compiler)]TJ --27.6863 -1.2889 TD -0.0211 Tw -(encounters a datum that is not a list and not an atom \(or a number\) in a context where the)Tj -0 -1.2222 TD -0.0067 Tw -(datum is being evaluated, the type name of the datum is looked up on )Tj -/TT8 1 Tf -31.3546 0 TD -0 Tw -(COMPILETYPELST)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --39.7559 -1.2889 TD -0.0056 Tw -(If an entry appears )Tj -/TT8 1 Tf -8.6126 0 TD -0 Tw -(CAR )Tj -/TT6 1 Tf -2.4148 0 TD -0.0056 Tw -(of which is equal to the type name, )Tj -/TT8 1 Tf -15.7197 0 TD -0 Tw -(CDR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0056 Tw -[( of that entry is applied to)]TJ --28.5474 -1.2889 TD -0.0022 Tw -(the datum. If the value returned by this application is )Tj -/TT12 1 Tf -24.1201 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -( )Tj -/TT8 1 Tf -0.2522 0 TD -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0001 Tc -0.0021 Tw -( to the datum, then that value)Tj --26.9056 -1.2889 TD -0 Tc -0.3044 Tw -[(is compiled instead. If the value )]TJ -/TT12 1 Tf -16.6995 0 TD -0 Tw -(is)Tj -/TT6 1 Tf -0.667 0 TD -( )Tj -/TT8 1 Tf -0.5544 0 TD -(EQ )Tj -/TT6 1 Tf -2.5303 0 TD -0.3044 Tw -(to the datum, or if there is no entry on)Tj -/TT8 1 Tf --20.4512 -1.2889 TD -0 Tw -(COMPILETYPELST)Tj -/TT6 1 Tf -8.4014 0 TD -0.34 Tw -[( for this type name, the compiler simply compiles the datum as)]TJ -/TT8 1 Tf --8.4014 -1.2889 TD -0 Tw -(\(QUOTE)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(DATUM)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 271.06 Tm -0.0001 Tc --0.0001 Tw -(Compiling CLISP)Tj -ET -102.01 268.35 m -558.01 268.35 l -S -BT -/TT6 1 Tf -9 0 0 9 126 246.4 Tm -0 Tc -0.2344 Tw -(Since the compiler does not know about CLISP, in order to compile functions containing CLISP)Tj -0 -1.2222 TD -0 Tw -(constructs, the definitions must first be )Tj -/TT8 1 Tf -17.4439 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -(ed. You can automate this process in several ways:)Tj --18.9779 -2.0667 TD -0.49 Tw -[(1.)-1916.7(If the variable )]TJ -/TT8 1 Tf -10.518 0 TD -0 Tw -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.49 Tw -[( is )]TJ -/TT8 1 Tf -2.1948 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.49 Tw -(, the compiler will always )Tj -/TT8 1 Tf -14.0789 0 TD -0 Tw -(DWIMIFY)Tj -/TT6 1 Tf --35.1266 -1.2889 TD -(expressions before compiling them. )Tj -/TT8 1 Tf -16.2007 0 TD -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -( is initially )Tj -/TT8 1 Tf -4.8843 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --31.9533 -2.0667 TD -0.05 Tw -[(2.)-1916.7(If a file has the property )]TJ -/TT8 1 Tf -13.8231 0 TD -0 Tw -(FILETYPE)Tj -/TT6 1 Tf -4.8008 0 TD -0.05 Tw -[( with value )]TJ -/TT8 1 Tf -5.3712 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -0.05 Tw -[( on its property list, )]TJ -/TT8 1 Tf -9.1504 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(,)Tj -/TT8 1 Tf --39.0799 -1.2889 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5767 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0767 Tw -(, and )Tj -/TT8 1 Tf -2.5962 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0767 Tw -[( will operate as though )]TJ -/TT8 1 Tf -10.7857 0 TD -0 Tw -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.0767 Tw -[( is )]TJ -/TT8 1 Tf -1.3682 0 TD -0 Tw -(T)Tj -/TT6 1 Tf --38.7305 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -( all expressions before compiling.)Tj --6.8102 -2.0667 TD -0.0167 Tw -[(3.)-1916.7(If the function definition has a local )]TJ -/TT8 1 Tf -18.7072 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -0.0167 Tw -[( declaration, including a null declaration,)]TJ --21.041 -1.2889 TD -0 Tw -(i.e., just )Tj -/TT8 1 Tf -3.6069 0 TD -(\(CLISP:\))Tj -/TT6 1 Tf -4.8008 0 TD -(, the definition will be automatically )Tj -/TT8 1 Tf -16.2656 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -(ed before compiling.)Tj --26.874 -2.0667 TD -(Note:)Tj -/TT8 1 Tf -2.6667 0 TD -(COMPILEUSERFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.26 Tw -[( is defined to call )]TJ -/TT8 1 Tf -9.0485 0 TD -0 Tw -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.26 Tw -[( on iterative statements, )]TJ -/TT8 1 Tf -11.8193 0 TD -0 Tw -(IF-)Tj --32.8698 -1.2889 TD -(THEN)Tj -/TT6 1 Tf -2.4004 0 TD -0.2622 Tw -[( statements, and )]TJ -/TT8 1 Tf -8.2286 0 TD -0 Tw -(fetch)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.7622 0 TD -(replace)Tj -/TT6 1 Tf -4.2007 0 TD -0.2622 Tw -(, and )Tj -/TT8 1 Tf -2.9673 0 TD -0 Tw -(match)Tj -/TT6 1 Tf -3.0005 0 TD -0.2622 Tw -[( expressions, i.e., any)]TJ --24.5602 -1.2889 TD -0.0111 Tw -(CLISP construct which can be recognized by its )Tj -/TT8 1 Tf -21.2886 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0111 Tw -[( of form. Thus, if the only)]TJ --23.0889 -1.2889 TD -0.33 Tw -(CLISP constructs in a function appear inside of iterative statements, )Tj -/TT8 1 Tf -33.4636 0 TD -0 Tw -(IF)Tj -/TT6 1 Tf --33.4636 -1.2889 TD -(statements, etc., the function does not have to be dwimified before compiling.)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -44 0 obj -<< -/Length 6110 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-11)Tj -/TT6 1 Tf --42.3333 60.6156 TD -(If )Tj -/TT8 1 Tf -1.0977 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.1778 Tw -[( is ever unsuccessful in processing a CLISP expression, it will print the error message)]TJ -/TT8 1 Tf --5.2984 -1.2889 TD -0.0611 Tw -(UNABLE TO DWIMIFY)Tj -/TT6 1 Tf -10.3239 0 TD -0.0256 Tw -[( followed by the expression, and go into a break unless )]TJ -/TT8 1 Tf -24.7713 0 TD -0.0611 Tw -(DWIMESSGAG = T)Tj -/TT6 1 Tf -8.5236 0 TD -0.0256 Tw -[(. In)]TJ --43.6188 -1.2889 TD -0.0022 Tw -(this case, the expression is just compiled as is, i.e. as though CLISP had not been enabled. You can exit)Tj -0 -1.2222 TD -0 Tw -(the break in one of these ways: )Tj -2.6667 -2 TD -[(1.)-1916.7(Type )]TJ -/TT8 1 Tf -5.3235 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.1578 Tw -[( to the break, which will cause the compiler to try again, e.g. you could)]TJ --5.857 -1.2889 TD -0 Tw -(define some missing records while in the break, and then continue )Tj --0.6667 -2 TD -[(2.)-1916.7(Type )]TJ -/TT15 1 Tf -5.2057 0 TD -<0042>Tj -/TT6 1 Tf -0.603 0 TD -0.04 Tw -(, which will cause the compiler to simply compile the expression as is, i.e. as)Tj --5.1421 -1.2889 TD -0 Tw -(though CLISP had not been enabled in the first place)Tj --0.6667 -2 TD -0.3 Tw -[( )300(3.)-1666.7(Return an expression to be compiled in its place by using the )]TJ -/TT8 1 Tf -33.3702 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.3 Tw -[( break)]TJ --36.3041 -1.2889 TD -0 Tw -(command.)Tj -2 -2 TD -(Note:)Tj -/TT8 1 Tf -2.6667 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.8344 0 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.8344 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.3344 Tw -(, and )Tj -/TT8 1 Tf -3.1118 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.3344 Tw -[( all scan the entire file)]TJ --23.3837 -1.2889 TD -0.0944 Tw -(before doing any compiling, and take note of the names of all functions that)Tj -0 -1.2222 TD -0.1778 Tw -(are defined in the file as well as the names of all variables that are set by)Tj -T* -0.1333 Tw -(adding them to )Tj -/TT8 1 Tf -7.443 0 TD -0 Tw -(NOFIXFNSLST)Tj -/TT6 1 Tf -6.6011 0 TD -0.1333 Tw -[( and )]TJ -/TT8 1 Tf -2.4595 0 TD -0 Tw -(NOFIXVARSLST)Tj -/TT6 1 Tf -7.2012 0 TD -0.1333 Tw -(, respectively. Thus, if a)Tj --23.7048 -1.2889 TD -0.17 Tw -(function is not currently defined, but )Tj -/TT12 1 Tf -17.5854 0 TD -0 Tw -(is)Tj -/TT6 1 Tf -0.667 0 TD -0.17 Tw -[( defined in the file being compiled,)]TJ --18.2524 -1.2222 TD -0 Tw -(when )Tj -/TT8 1 Tf -2.7926 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.0656 Tw -[( is called before compiling, it will not attempt to interpret the)]TJ --6.9933 -1.2889 TD -0.16 Tw -(function name as CLISP when it appears as )Tj -/TT8 1 Tf -20.6584 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.16 Tw -[( of a form. )]TJ -/TT8 1 Tf -5.8356 0 TD -0 Tw -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.16 Tw -[( also)]TJ --32.495 -1.2889 TD -0.1989 Tw -(takes into account variables that have been declared to be )Tj -/TT8 1 Tf -27.6295 0 TD -0 Tw -(LOCALVARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1989 Tw -(, or)Tj -/TT8 1 Tf --33.0304 -1.2889 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.3467 Tw -(, either via block declarations or )Tj -/TT8 1 Tf -16.4579 0 TD -0 Tw -(DECLARE)Tj -/TT6 1 Tf -4.2007 0 TD -0.3467 Tw -[( expressions in the)]TJ --25.4594 -1.2889 TD -0.1567 Tw -(function being compiled, and does not attempt spelling correction on these)Tj -0 -1.2222 TD -0.1189 Tw -[(variables. The declaration )]TJ -/TT8 1 Tf -12.3623 0 TD -0 Tw -(USEDFREE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1189 Tw -[( may also be used to declare variables)]TJ --17.1631 -1.2889 TD -0.1522 Tw -[(simply used freely in a function. These variables will also be left alone by)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -0.0556 Tw -[(. Finally, )]TJ -/TT8 1 Tf -4.4841 0 TD -0 Tw -(NOSPELLFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0556 Tw -[( is reset to )]TJ -/TT8 1 Tf -4.9122 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[( when compiling functions from)]TJ --20.198 -1.2889 TD -0.1067 Tw -(a file \(as opposed to from their in-core definition\) so as to suppress spelling)Tj -0 -1.2222 TD -0 Tw -(correction.)Tj -/TT4 1 Tf -10 0 0 10 54 227.4 Tm -(Compiler Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 224.69 m -510.01 224.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 202.74 Tm -0.1622 Tw -(Normally, the compiler is envoked through file package commands that keep track of the state of)Tj -T* -0.0544 Tw -(functions, and manage a set of files, such as )Tj -/TT8 1 Tf -19.9661 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0544 Tw -[(. However, it is also possible to explicitly call)]TJ --24.7669 -1.2889 TD -0.0222 Tw -[(the compiler using one of a number of functions. Functions may be compiled from in-core definitions)]TJ -0 -1.2222 TD -0 Tw -(\(via )Tj -/TT8 1 Tf -2.1967 0 TD -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2578 Tw -(\), or from definitions in files \()Tj -/TT8 1 Tf -14.5071 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.2578 Tw -(\), or from a combination of in-core and file)Tj --24.5051 -1.2889 TD -0 Tw -(definitions \()Tj -/TT8 1 Tf -5.3389 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -(\).)Tj -/TT8 1 Tf --10.7397 -2.9556 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -[( and )]TJ -/TT8 1 Tf -2.2195 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -[( produce "compiled" files. Compiled files usually have the same name as the)]TJ --11.221 -1.2889 TD -0.1011 Tw -(symbolic file they were made from, suffixed with )Tj -/TT8 1 Tf -22.8235 0 TD -0 Tw -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -[( \(the compiled file extension is stored as the)]TJ --25.2239 -1.2889 TD -0.1533 Tw -(value of the variable )Tj -/TT8 1 Tf -9.8917 0 TD -0 Tw -(COMPILE.EXT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1533 Tw -[(\). The file name is constructed from the name field only, e.g.,)]TJ -/TT8 1 Tf --16.4927 -1.2889 TD -0.3622 Tw -(\(TCOMPL FOO.TEM;3\))Tj -/TT6 1 Tf -16.5649 0 TD -0.1511 Tw -[( produces )]TJ -/TT8 1 Tf -4.9048 0 TD -0 Tw -(FOO.DCOM)Tj -/TT6 1 Tf -4.8008 0 TD -0.1511 Tw -[( on the connected directory. The version)]TJ --26.2704 -1.2889 TD -0 Tw -(number will be the standard default.)Tj -0 -2.8889 TD -(A "compiled file" contains the same expressions as the original symbolic file, except for the following:)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -49 0 obj -<< -/Length 8019 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-12)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 150 569.54 Tm -[( 1.)-1666.7(A )-100(special )]TJ -/TT8 1 Tf -7.1743 0 TD -(FILECREATED)Tj -/TT6 1 Tf -6.6011 0 TD -0.1 Tw -[( expression appears at the front of the file which contains)]TJ --13.1087 -1.2889 TD -0.1778 Tw -(information used by the file package, and which causes the message )Tj -/TT8 1 Tf -32.3052 0 TD -0.4256 Tw -(COMPILED ON)Tj -/TT17 1 Tf --32.3052 -1.2889 TD -0 Tw -(DATE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1922 Tw -[( to be printed when the file is loaded \(the actual string printed is the value of)]TJ -/TT8 1 Tf --2.4004 -1.2889 TD -0 Tw -(COMPILEHEADER)Tj -/TT6 1 Tf -7.8013 0 TD -(\). )Tj --8.4679 -2.0667 TD -[(2.)-1916.7(Every )]TJ -/TT8 1 Tf -5.7515 0 TD -(DEFINEQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.2289 Tw -[( in the symbolic file is replaced by the corresponding compiled)]TJ --9.2855 -1.2889 TD -0 Tw -(definitions in the compiled file.)Tj --0.6667 -2 TD -0.1411 Tw -[(3.)-1916.7(Expressions following a )]TJ -/TT8 1 Tf -13.9025 0 TD -0 Tw -(DONTCOPY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1411 Tw -[( tag inside of a )]TJ -/TT8 1 Tf -7.3945 0 TD -0 Tw -(DECLARE)Tj -/TT19 1 Tf -4.2007 0 TD -(:)Tj -/TT6 1 Tf -0.25 0 TD -0.1411 Tw -[( that appears in the)]TJ --29.8818 -1.2889 TD -0 Tw -(symbolic file are not copied to the compiled file. )Tj --3.3333 -2.8889 TD -0.0733 Tw -(The compiled definitions appear at the front of the compiled file, i.e., before the other expressions in)Tj -0 -1.2222 TD -0.0333 Tw -(the symbolic file, )Tj -/TT12 1 Tf -7.869 0 TD -(regardless of where they appear in the symbolic file.)Tj -/TT6 1 Tf -20.8883 0 TD -[( The only exceptions are expressions)]TJ --28.7573 -1.2222 TD -0.0711 Tw -(that follow a )Tj -/TT8 1 Tf -6.0385 0 TD -0 Tw -(FIRST )Tj -/TT6 1 Tf -3.7706 0 TD -0.0711 Tw -(tag inside of a )Tj -/TT8 1 Tf -6.7234 0 TD -0 Tw -(DECLARE)Tj -/TT19 1 Tf -4.2007 0 TD -(:)Tj -/TT6 1 Tf -0.25 0 TD -0.0711 Tw -[(. This "compiled" file can be loaded into any Interlisp)]TJ --20.9832 -1.2889 TD -0 Tw -(system with )Tj -/TT8 1 Tf -5.625 0 TD -(LOAD)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --2.6921 -2.0667 TD -0.2122 Tw -[(Note: )-1105.7(When a function is compiled from its in-core definition \(as opposed to)]TJ -2.6667 -1.2222 TD -0.0022 Tw -(being compiled from a definition in a file\), and the function has been modified)Tj -T* -0 Tw -(by )Tj -/TT8 1 Tf -1.3705 0 TD -(BREAK)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5111 0 TD -(TRACE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5111 0 TD -(BREAKIN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0111 Tw -(, or )Tj -/TT8 1 Tf -1.7131 0 TD -0 Tw -(ADVISE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0111 Tw -(, it is first restored to its original state,)Tj --17.9081 -1.2889 TD -0.1678 Tw -(and a message is printed out, e.g., )Tj -/TT8 1 Tf -16.3722 0 TD -0.4022 Tw -(FOO UNBROKEN)Tj -/TT6 1 Tf -7.6034 0 TD -0.1678 Tw -[(. If the function is not)]TJ --23.9756 -1.2889 TD -0.1667 Tw -(defined by an expr definition, the value of the functions )Tj -/TT8 1 Tf -26.8171 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.1667 Tw -[( property is)]TJ --29.2175 -1.2889 TD -0.0067 Tw -[(used for the compilation, if there is one. If there is no)]TJ -/TT8 1 Tf -23.6396 0 TD -0.0178 Tw -[( EXPR)]TJ -/TT6 1 Tf -3.0183 0 TD -0.0067 Tw -[( property, and the)]TJ --26.6578 -1.2889 TD -0.0511 Tw -(compilation is being performed by )Tj -/TT8 1 Tf -15.8137 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0511 Tw -(, the definition of the function)Tj --21.2145 -1.2889 TD -0.1833 Tw -(is obtained from the file \(using )Tj -/TT8 1 Tf -14.9301 0 TD -0 Tw -(LOADFNS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1833 Tw -[(\). Otherwise, the compiler prints)]TJ -/TT8 1 Tf --19.1308 -1.2889 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FN)Tj -/TT19 1 Tf -1.334 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(NOT COMPILEABLE\))Tj -/TT6 1 Tf -9.6016 0 TD -(, and goes on to the next function.)Tj -/TT8 1 Tf --17.119 -2.4 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(COMPILE)Tj -/TT19 1 Tf -4.1999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(X)Tj -/TT12 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-29269.5([Function])]TJ -/TT17 1 Tf --5.6338 -1.8444 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[( is a list of functions \(if atomic, )]TJ -/TT8 1 Tf -14.9623 0 TD -0 Tw -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.4011 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1511 Tw -[( is used\). )]TJ -/TT8 1 Tf -5.019 0 TD -0 Tw -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1511 Tw -[( first asks the standard)]TJ --29.3839 -1.2889 TD -0.1767 Tw -(compiler questions, and then compiles each function on )Tj -/TT17 1 Tf -26.2883 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1767 Tw -(, using its in-core definition.)Tj --26.8884 -1.2889 TD -0 Tw -(Returns )Tj -/TT17 1 Tf -3.7271 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --4.3271 -2.0667 TD -(If compiled definitions are being written to a file, the file is closed unless )Tj -/TT17 1 Tf -32.2495 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( = T)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --39.1169 -2.4 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(COMPILE1)Tj -/TT19 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -/TT12 1 Tf -1.2002 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(DEF)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -[( )-28069.4([Function])]TJ --6.8339 -1.8444 TD -(Compiles )Tj -/TT17 1 Tf -4.5036 0 TD -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tw -(, redefining )Tj -/TT17 1 Tf -5.4091 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.03 Tw -[( if )]TJ -/TT8 1 Tf -1.184 0 TD -0.0711 Tw -(STRF = T)Tj -/TT6 1 Tf -4.943 0 TD -0.03 Tc -0 Tw -( \()Tj -/TT8 1 Tf -0.613 0 TD -0 Tc -(STRF)Tj -/TT6 1 Tf -2.4004 0 TD -0.03 Tw -[( is one of the variables set by )]TJ -/TT8 1 Tf -13.1643 0 TD -0 Tw -(COMPSET)Tj -/TT6 1 Tf -4.2007 0 TD -(\).)Tj -/TT8 1 Tf --39.4187 -1.2889 TD -(COMPILE1)Tj -/TT6 1 Tf -4.8008 0 TD -( is used by )Tj -/TT8 1 Tf -4.9409 0 TD -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(RECOMPILE.)Tj -/TT6 1 Tf --20.4858 -2.0667 TD -(If )Tj -/TT8 1 Tf -1.0166 0 TD -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.0967 Tw -[( is )]TJ -/TT8 1 Tf -1.4082 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0967 Tw -(, or )Tj -/TT17 1 Tf -1.8842 0 TD -0 Tw -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0967 Tw -[( contains a CLISP declaration, )]TJ -/TT17 1 Tf -13.9287 0 TD -0 Tw -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0967 Tw -[( is dwimified before)]TJ --30.8397 -1.2889 TD -0 Tw -(compiling.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(TCOMPL)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT17 1 Tf -0.6001 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 225.6061 122.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 122.8 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8444 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.2878 Tw -[( is used to "compile files"; given a symbolic )]TJ -/TT8 1 Tf -21.8493 0 TD -0 Tw -(LOAD)Tj -/TT6 1 Tf -2.4004 0 TD -0.2878 Tw -[( file \(e.g., one created by)]TJ -/TT8 1 Tf --27.8503 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0367 Tw -(\), it produces a "compiled file". )Tj -/TT17 1 Tf -14.3411 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( is a list of symbolic files to be compiled)]TJ --22.1424 -1.2889 TD -0.0333 Tw -(\(if atomic, )Tj -/TT8 1 Tf -4.7634 0 TD -0 Tw -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.2833 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is used\). )]TJ -/TT8 1 Tf -4.5479 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -[( asks the standard compiler questions, except)]TJ --19.7963 -1.2889 TD -0.01 Tw -(for ")Tj -/TT8 1 Tf -1.905 0 TD -0.0244 Tw -(OUTPUT FILE:)Tj -/TT6 1 Tf -7.2256 0 TD -0.01 Tw -[(". The output from the compilation of each symbolic file is written on)]TJ --9.1306 -1.2889 TD -0.1011 Tw -(a file of the same name suffixed with )Tj -/TT8 1 Tf -17.3216 0 TD -0 Tw -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -(, e.g., )Tj -/TT8 1 Tf -2.7374 0 TD -0.2422 Tw -(\(TCOMPL \(SYM1 SYM2\)\))Tj -/TT6 1 Tf -13.0865 0 TD -0.1011 Tw -[( produces)]TJ --35.5459 -1.2889 TD -0 Tw -(two files, )Tj -/TT8 1 Tf -4.2739 0 TD -(SYM1.DCOM)Tj -/TT6 1 Tf -5.4009 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(SYM2.DCOM)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -52 0 obj -<< -/Length 8641 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-13)Tj -/TT8 1 Tf --37 60.6156 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.4467 Tw -[( processes the files one at a time, reading in the entire file. For each)]TJ -/TT8 1 Tf --3.6006 -1.2889 TD -0 Tw -(FILECREATED)Tj -/TT6 1 Tf -6.6011 0 TD -0.1167 Tw -[( expression, the list of functions that were marked as changed by the file)]TJ --6.6011 -1.2889 TD -0.1044 Tw -(package is noted, and the )Tj -/TT8 1 Tf -11.9973 0 TD -0 Tw -(FILECREATED)Tj -/TT6 1 Tf -6.6011 0 TD -0.1044 Tw -[( expression is written onto the output file. For)]TJ --18.5984 -1.2889 TD -0 Tw -(each )Tj -/TT8 1 Tf -2.3249 0 TD -(DEFINEQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.07 Tw -[( expression, )]TJ -/TT8 1 Tf -5.6268 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.07 Tw -[( adds any nlambda functions defined in the )]TJ -/TT8 1 Tf -20.0405 0 TD -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf --35.7934 -1.2889 TD -(to )Tj -/TT8 1 Tf -1.2154 0 TD -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -0.0933 Tw -[( or )]TJ -/TT8 1 Tf -1.6276 0 TD -0 Tw -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -0.0933 Tw -(, and adds lambda functions to )Tj -/TT8 1 Tf -14.4892 0 TD -0 Tw -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0933 Tw -(, so that calls to these functions)Tj --25.7336 -1.2889 TD -0.0078 Tw -(will be compiled correctly. )Tj -/TT8 1 Tf -12.2996 0 TD -0 Tw -(NLAMA)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5078 0 TD -(NLAML)Tj -/TT6 1 Tf -3.0005 0 TD -0.0078 Tw -(, and )Tj -/TT8 1 Tf -2.4584 0 TD -0 Tw -(LAMS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( are rebound to their top level values)]TJ --23.6672 -1.2889 TD -0 Tw -(\(using )Tj -/TT8 1 Tf -3.168 0 TD -(RESETVAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.1289 Tw -(\) by all of the compiling functions, so that any additions to these lists)Tj --7.9687 -1.2889 TD -[(while inside of these functions will not propagate outside. Expressions beginning with)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -0.0311 Tw -[( are processed specially. All other expressions are collected to be subsequently)]TJ --4.8008 -1.2889 TD -0 Tw -(written onto the output file.)Tj -0 -2 TD -0.07 Tw -(After processing the file in this fashion, )Tj -/TT8 1 Tf -18.0779 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.07 Tw -[( compiles each function, except for those)]TJ --21.6785 -1.2889 TD -0.2811 Tw -(functions which appear on the list )Tj -/TT8 1 Tf -16.9738 0 TD -0 Tw -(DONTCOMPILEFNS)Tj -/TT6 1 Tf -8.4014 0 TD -0.2811 Tw -[( \(initially )]TJ -/TT8 1 Tf -4.8147 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2811 Tw -(\), and writes the)Tj --31.9901 -1.2889 TD -0.1789 Tw -(compiled definition onto the output file. )Tj -/TT8 1 Tf -19.5164 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1789 Tw -[( then writes onto the output file the)]TJ --23.117 -1.2889 TD -0.29 Tw -(other expressions found in the symbolic file. )Tj -/TT8 1 Tf -22.3757 0 TD -0 Tw -(DONTCOMPILEFNS)Tj -/TT6 1 Tf -8.4014 0 TD -0.29 Tw -[( might be used for)]TJ --30.777 -1.2889 TD -0.0333 Tw -(functions that compile open, since their definitions would be superfluous when operating)Tj -0 -1.2222 TD -0 Tw -(with the compiled file. Note that )Tj -/TT8 1 Tf -14.8765 0 TD -(DONTCOMPILEFNS)Tj -/TT6 1 Tf -8.4014 0 TD -( can be set via block declarations.)Tj --20.6112 -2.0667 TD -0.3122 Tw -[(Note: )-339(If the rootname of a file has the property )]TJ -/TT8 1 Tf -24.2727 0 TD -0 Tw -(FILETYPE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3122 Tw -[( with value)]TJ -/TT8 1 Tf --25.7402 -1.2889 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -0.7478 Tw -(, or value a list containing )Tj -/TT8 1 Tf -16.1478 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -1.2478 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.7478 Tw -[( rebinds)]TJ -/TT8 1 Tf --26.9971 -1.2889 TD -0 Tw -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.0344 Tw -[( to )]TJ -/TT8 1 Tf -1.441 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -[( while compiling the functions on )]TJ -/TT17 1 Tf -15.3146 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0344 Tw -(, so the)Tj --28.1574 -1.2889 TD -0 Tw -(compiler will )Tj -/TT8 1 Tf -6.1367 0 TD -(DWIMIFY)Tj -/TT6 1 Tf -4.2007 0 TD -( all expressions before compiling them.)Tj -/TT8 1 Tf --16.3374 -2.0667 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1 Tw -[( returns a list of the names of the output files. All files are properly terminated)]TJ --3.6006 -1.2889 TD -0.0411 Tw -[(and closed. If the compilation of any file is aborted via an error or Control-D, all files are)]TJ -0 -1.2222 TD -0 Tw -(properly closed, and the \(partially complete\) compiled file is deleted.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(RECOMPILE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT17 1 Tf -0.6001 0 TD -(PFILE)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(CFILE)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 241.5132 273.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 273.4 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0178 Tw -(The purpose of )Tj -/TT8 1 Tf -7.005 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0178 Tw -[( is to allow you to update a compiled file without recompiling)]TJ --12.4059 -1.2889 TD -0.26 Tw -(every function in the file. )Tj -/TT8 1 Tf -13.1454 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.26 Tw -[( does this by using the results of a previous)]TJ --18.5463 -1.2889 TD -0.0067 Tw -[(compilation. It produces a compiled file similar to one that would have been produced by)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0867 Tw -(, but at a considerable savings in time by only compiling selected functions, and)Tj --3.6006 -1.2889 TD -0.1478 Tw -(copying the compiled definitions for the remainder of the functions in the file from an)Tj -0 -1.2222 TD -0 Tw -(earlier )Tj -/TT8 1 Tf -3.0801 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -( file.)Tj -/TT17 1 Tf --13.5225 -2.0667 TD -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( is the name of the )]TJ -/TT19 1 Tf -8.492 0 TD -0 Tw -(P)Tj -/TT6 1 Tf -0.6108 0 TD -0.03 Tw -(retty file \(source file\) to be compiled; )Tj -/TT17 1 Tf -16.687 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( is the name of the)]TJ -/TT19 1 Tf --31.7909 -1.2889 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.7222 0 TD -0.0978 Tw -(ompiled file containing compiled definitions that may be copied. )Tj -/TT17 1 Tf -30.1023 0 TD -0 Tw -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.0978 Tw -[( indicates which)]TJ --32.6248 -1.2889 TD -0.0789 Tw -(functions in )Tj -/TT17 1 Tf -5.6617 0 TD -0 Tw -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0789 Tw -[( are to be recompiled, e.g., have been changed or defined for the first)]TJ --8.6622 -1.2889 TD -0 Tw -(time since )Tj -/TT17 1 Tf -4.6987 0 TD -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -( was made. Note that )Tj -/TT17 1 Tf -9.897 0 TD -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, not )Tj -/TT17 1 Tf -2.2041 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -(, drives )Tj -/TT8 1 Tf -3.5146 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --33.5166 -2.0667 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0478 Tw -[( asks the standard compiler questions, except for ")]TJ -/TT8 1 Tf -22.5268 0 TD -0.1156 Tw -(OUTPUT FILE:)Tj -/TT6 1 Tf -7.3167 0 TD -0.0478 Tw -[(". As with)]TJ -/TT8 1 Tf --35.2444 -1.2889 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1456 Tw -(, the output automatically goes to )Tj -/TT17 1 Tf -15.95 0 TD -0 Tw -(PFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(.DCOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.1456 Tw -(. )Tj -/TT8 1 Tf -1.0411 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1456 Tw -[( processes )]TJ -/TT17 1 Tf -5.0064 0 TD -0 Tw -(PFILE)Tj -/TT6 1 Tf --37 -1.2889 TD -0.0089 Tw -(the same as does )Tj -/TT8 1 Tf -7.6918 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0089 Tw -[( except that )]TJ -/TT8 1 Tf -5.3563 0 TD -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.0089 Tw -[( expressions are not actually read into core.)]TJ --20.8493 -1.2889 TD -0 Tw -(Instead, )Tj -/TT8 1 Tf -3.7955 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0367 Tw -[( uses the filemap to obtain a list of the functions contained in )]TJ -/TT17 1 Tf -27.5548 0 TD -0 Tw -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --39.7516 -1.2889 TD -0.0233 Tw -(The filemap enables )Tj -/TT8 1 Tf -9.1799 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( to skip over the )]TJ -/TT8 1 Tf -7.4829 0 TD -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.0233 Tw -(s in the file by simply resetting)Tj --26.2643 -1.2889 TD -0.1244 Tw -(the file pointer, so that in most cases the scan of the symbolic file is very fast \(the only)Tj -0 -1.2222 TD -0.3256 Tw -(processing required is the reading of the non-)Tj -/TT8 1 Tf -22.4088 0 TD -0 Tw -(DEFINEQ)Tj -/TT6 1 Tf -4.2007 0 TD -0.3256 Tw -(s and the processing of the)Tj -/TT8 1 Tf --26.6095 -1.2889 TD -0 Tw -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -0.18 Tw -[( expressions as with )]TJ -/TT8 1 Tf -9.8377 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.18 Tw -[(\). A map is built if the symbolic file does not)]TJ -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -55 0 obj -<< -/Length 7057 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-14)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.4056 Tw -(already contain one, for example if it was written in an earlier system, or with)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BUILDMAPFLG = NIL)Tj -/TT6 1 Tf -10.2017 0 TD -(.)Tj --10.2017 -2.0667 TD -0.1089 Tw -(After this initial scan of )Tj -/TT17 1 Tf -11.1294 0 TD -0 Tw -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6089 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1089 Tw -[( then processes the functions defined in the)]TJ --20.1397 -1.2889 TD -0.0111 Tw -[(file. For each function in )]TJ -/TT17 1 Tf -11.2927 0 TD -0 Tw -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5111 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -[( determines whether or not the function is to)]TJ --20.2052 -1.2889 TD -0.1189 Tw -[(be \(re\)compiled. Functions that are members of )]TJ -/TT8 1 Tf -22.3559 0 TD -0 Tw -(DONTCOMPILEFNS)Tj -/TT6 1 Tf -8.4014 0 TD -0.1189 Tw -[( are simply ignored.)]TJ --30.7573 -1.2889 TD -0 Tw -(Otherwise, a function is recompiled if :)Tj -4 -2 TD -(1.)Tj -/TT17 1 Tf -2 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -( is a list and the function is a member of that list )Tj --3.8003 -2.0667 TD -(2.)Tj -/TT17 1 Tf -2 0 TD -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -( = T)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(EXPRS)Tj -/TT6 1 Tf -3.0005 0 TD -( and the function is defined by an expr definition )Tj --10.6421 -2.0667 TD -(3.)Tj -/TT17 1 Tf -2 0 TD -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -( = CHANGES)Tj -/TT6 1 Tf -6.001 0 TD -( and the function is marked as having been changed in the)Tj -/TT8 1 Tf --7.8013 -1.2889 TD -(FILECREATED)Tj -/TT6 1 Tf -6.6011 0 TD -( expression in )Tj -/TT17 1 Tf -6.3599 0 TD -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj --17.9614 -2.0667 TD -(4.)Tj -/TT17 1 Tf -2 0 TD -(FNS )Tj -/TT8 1 Tf -2.4004 0 TD -(= ALL)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj --11.4009 -2.0667 TD -0.1711 Tw -(If a function is not to be recompiled, )Tj -/TT8 1 Tf -17.5886 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1711 Tw -[( obtains its compiled definition from)]TJ -/TT17 1 Tf --22.9895 -1.2889 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -(, and copies it \(and all generated subfunctions\) to the output file, )Tj -/TT17 1 Tf -29.4658 0 TD -0 Tw -(PFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(.DCOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -[(. If)]TJ --38.4673 -1.2889 TD -0.0911 Tw -(the function does not appear on )Tj -/TT17 1 Tf -14.8587 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0911 Tw -[( simply recompiles it. Finally, after)]TJ --23.8512 -1.2889 TD -0.0922 Tw -(processing all functions, )Tj -/TT8 1 Tf -11.2313 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0922 Tw -[( writes out all other expressions that were collected)]TJ --16.6321 -1.2889 TD -0 Tw -(in the prescan of )Tj -/TT17 1 Tf -7.564 0 TD -(PFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --7.8978 -2.0667 TD -0.6512 Tw -(Note: If )Tj -/TT17 1 Tf -4.5244 0 TD -0 Tw -(FNS)Tj -/TT8 1 Tf -1.8003 0 TD -0.65 Tw -[( = ALL)]TJ -/TT6 1 Tf -4.9006 0 TD -0 Tw -(, )Tj -/TT17 1 Tf -0.7711 0 TD -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.2711 Tw -[( is superfluous, and does not have to be)]TJ --11.6635 -1.2889 TD -0.0355 Tw -[(specified. This option may be used to compile a symbolic file that has)]TJ -0 -1.2222 TD -0.0322 Tw -(never been compiled before, but which has already been loaded \(since)Tj -T* -0 Tw -(using )Tj -/TT8 1 Tf -2.7061 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -( would require reading the file in a second time\).)Tj --12.3066 -2.0667 TD -(If )Tj -/TT17 1 Tf -1.0377 0 TD -(CFILE )Tj -/TT8 1 Tf -3.8839 0 TD -0.2833 Tw -(= NIL)Tj -/TT6 1 Tf -3.2838 0 TD -0 Tw -(, )Tj -/TT17 1 Tf -0.6178 0 TD -(PFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(.DCOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.1178 Tw -[( \(the old version of the output file\) is used for copying)]TJ -/TT12 1 Tf --14.8242 -1.2889 TD -0 Tw -(from)Tj -/TT6 1 Tf -1.8887 0 TD -0.1311 Tw -[(. If both )]TJ -/TT17 1 Tf -4.4517 0 TD -0 Tw -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.1311 Tw -[( and )]TJ -/TT17 1 Tf -2.4551 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1311 Tw -[( are )]TJ -/TT8 1 Tf -2.1362 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.6311 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.1311 Tw -[( is set to the value of )]TJ -/TT8 1 Tf -10.1878 0 TD -0 Tw -(RECOMPILEDEFAULT)Tj -/TT6 1 Tf -9.6016 0 TD -(,)Tj --39.7535 -1.2889 TD -0.1844 Tw -(which is initially )Tj -/TT8 1 Tf -8.1705 0 TD -0 Tw -(CHANGES)Tj -/TT6 1 Tf -4.2007 0 TD -0.1844 Tw -[(. Thus you can perform his edits, dump the file, and then)]TJ --12.3712 -1.2889 TD -0 Tw -(simply )Tj -/TT8 1 Tf -3.2959 0 TD -(\(RECOMPILE )Tj -/TT17 1 Tf -7.2012 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( to update the compiled file.)Tj --13.4976 -2.0667 TD -0.2033 Tw -(The value of )Tj -/TT8 1 Tf -6.3507 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2033 Tw -[( is the file name of the new compiled file, )]TJ -/TT17 1 Tf -20.424 0 TD -0 Tw -(PFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(.DCOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.2033 Tw -[(. If)]TJ -/TT8 1 Tf --38.1765 -1.2889 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.3478 Tw -[( is aborted due to an error or Control-D, the new \(partially complete\))]TJ --5.4009 -1.2889 TD -0 Tw -(compiled file will be closed and deleted.)Tj -/TT8 1 Tf -0 -2 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.15 Tw -[( is designed to allow you to conveniently and )]TJ -/TT12 1 Tf -21.6747 0 TD -0 Tw -(efficiently)Tj -/TT6 1 Tf -3.9639 0 TD -0.15 Tw -[( update a compiled)]TJ --31.0395 -1.2889 TD -0.1467 Tw -[(file, even when the corresponding symbolic file has not been \(completely\) loaded. For)]TJ -0 -1.2222 TD -0.1167 Tw -(example, you can perform a )Tj -/TT8 1 Tf -13.1952 0 TD -0 Tw -(LOADFROM)Tj -/TT6 1 Tf -4.8008 0 TD -0.1167 Tw -[( to "notice" a symbolic file, edit the functions he)]TJ --17.9959 -1.2889 TD -0.1122 Tw -(wants to change \(the editor will automatically load those functions not already loaded\),)Tj -0 -1.2222 TD -0 Tw -(call )Tj -/TT8 1 Tf -1.8148 0 TD -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0389 Tw -[( to update the symbolic file \()]TJ -/TT8 1 Tf -12.8276 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0389 Tw -[( will copy the unchanged functions)]TJ --24.2439 -1.2889 TD -0 Tw -(from the old symbolic file\), and then perform )Tj -/TT8 1 Tf -20.2505 0 TD -(\(RECOMPILE)Tj -/TT19 1 Tf -6.001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(PFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --27.4354 -2.0667 TD -0.6512 Tw -(Note: Since )Tj -/TT8 1 Tf -6.5475 0 TD -0 Tw -(PRETTYDEF)Tj -/TT6 1 Tf -5.4009 0 TD -0.6433 Tw -[( automatically outputs a suitable )]TJ -/TT8 1 Tf -17.9203 0 TD -0 Tw -(DECLARE:)Tj -/TT6 1 Tf --26.5353 -1.2889 TD -0.0056 Tw -(expression to indicate which functions in the file \(if any\) are defined as)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -4.2007 0 TD -0.26 Tw -(s, calls to these functions will be handled correctly, even)Tj --4.2007 -1.2889 TD -0.1711 Tw -(though the )Tj -/TT8 1 Tf -5.4247 0 TD -0 Tw -(NLAMBDA)Tj -/TT6 1 Tf -4.2007 0 TD -0.1711 Tw -[( functions themselves may never be loaded, or)]TJ --9.6254 -1.2889 TD -0 Tw -(even looked at, by )Tj -/TT8 1 Tf -8.3193 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -58 0 obj -<< -/Length 7550 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-15)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(Block Compiling)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 543.54 Tm -0.1633 Tw -(In Interlisp-10, block compiling provides a way of compiling several functions into a single block.)Tj -0 -1.2222 TD -0.0944 Tw -[(Function calls between the component functions of the block are very fast. Thus, compiling a block)]TJ -T* -0.0067 Tw -(consisting of just a single recursive function may be yield great savings if the function calls itself many)Tj -T* -0.11 Tw -[(times. The output of a block compilation is a single, usually large, function. Calls from within the)]TJ -T* -0.1322 Tw -[(block to functions outside of the block look like regular function calls. A block can be entered via)]TJ -T* -0 Tw -(several different functions, called entries. These must be specified when the block is compiled. )Tj -0 -2.8889 TD -0.0578 Tw -(In Medley, block compiling is handled somewhat differently; block compiling provides a mechanism)Tj -0 -1.2222 TD -0.1233 Tw -(for hiding function names internal to a block, but it does not provide a performance improvement.)Tj -T* -0.0489 Tw -(Block compiling in Medley works by automatically renaming the block functions with special names,)Tj -T* -0.0733 Tw -[(and calling these functions with the normal function-calling mechanisms. Specifically, a function )]TJ -/TT17 1 Tf -44.1286 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf --44.1286 -1.2889 TD -0.0522 Tw -(is renamed to )Tj -/TT8 1 Tf -6.4223 0 TD -0 Tw -(\\)Tj -/TT17 1 Tf -0.6001 0 TD -(BLOCK-NAME)Tj -/TT8 1 Tf -6.001 0 TD -(/)Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0522 Tw -[(. For example, function )]TJ -/TT8 1 Tf -10.9642 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( in block )]TJ -/TT8 1 Tf -4.1698 0 TD -0 Tw -(BAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( is renamed to )]TJ -/TT8 1 Tf -6.7245 0 TD -0 Tw -(\\BAR/FOO)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --45.0836 -1.2889 TD -(Note that it is possible with this scheme to break functions internal to a block.)Tj -/TT4 1 Tf -10 0 0 10 78 379 Tm -(Block Declarations)Tj -/TT6 1 Tf -9 0 0 9 78 355.34 Tm -0.1089 Tw -(Block compiling a file frequently involves giving the compiler a lot of information about the nature)Tj -0 -1.2222 TD -0.0122 Tw -[(and structure of the compilation, e.g., block functions, entries, specvars, etc. To help with this, there is)]TJ -T* -0 Tw -(the )Tj -/TT8 1 Tf -1.6372 0 TD -(BLOCKS)Tj -/TT6 1 Tf -3.6006 0 TD -( file package command, which has the form:)Tj -/TT8 1 Tf --1.2378 -2.9556 TD -(\(BLOCKS)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLOCK)Tj -2.9993 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLOCK)Tj -2.9997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf --17.7 -2.9556 TD -0.1111 Tw -(where each )Tj -/TT17 1 Tf -5.4961 0 TD -0 Tw -(BLOCK)Tj -3.0016 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.1111 Tw -[( is a block declaration. The )]TJ -/TT8 1 Tf -12.6603 0 TD -0 Tw -(BLOCKS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1111 Tw -[( command outputs a )]TJ -/TT8 1 Tf -9.8219 0 TD -0 Tw -(DECLARE:)Tj -/TT6 1 Tf -4.8008 0 TD -0.1111 Tw -[( expression,)]TJ --39.9814 -1.5111 TD -0.1978 Tw -(which is noticed by )Tj -/TT8 1 Tf -9.627 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( and )]TJ -/TT8 1 Tf -2.5884 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1978 Tw -(. )Tj -/TT8 1 Tf -1.1456 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( and )]TJ -/TT8 1 Tf -2.5884 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1978 Tw -[( are sensitive to these)]TJ --35.1526 -1.2889 TD -0 Tw -(declarations and take the appropriate action.)Tj -5.3333 -2 TD -0.0633 Tw -[(Note:)-234.5(Masterscope includes a facility for checking the block declarations of a file or)]TJ -2.6667 -1.2222 TD -0.2122 Tw -(files for various anomalous conditions, e.g. functions in block declarations)Tj -T* -0.13 Tw -(which arent on the file\(s\), functions in )Tj -/TT8 1 Tf -18.2059 0 TD -0 Tw -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -0.13 Tw -[( not in the block, variables)]TJ --22.4066 -1.2889 TD -0.0133 Tw -(that may not need to be )Tj -/TT8 1 Tf -10.7626 0 TD -0 Tw -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -0.0133 Tw -[( because they are not used freely below the)]TJ --15.5634 -1.2889 TD -0 Tw -(places they are bound, etc.)Tj --8 -2.8889 TD -(A block declaration is a list of the form:)Tj -/TT8 1 Tf -9.3333 -1.7778 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BLKNAME)Tj -/TT19 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKFN)Tj -2.9992 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKFN)Tj -2.9997 -0.2222 TD -(M)Tj -/TT19 1 Tf --13.95 -1.0667 TD -( )Tj -/TT8 1 Tf -0.75 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -1.7999 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(. )Tj -/TT17 1 Tf -1.2002 0 TD -(VALUE)Tj -2.9998 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -1.7995 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -( . )Tj -/TT17 1 Tf -1.8003 0 TD -(VALUE)Tj -2.9997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT17 1 Tf --29.4333 -2.9556 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0444 Tw -[( is the name of a block. )]TJ -/TT17 1 Tf -10.9205 0 TD -0 Tw -(BLKFN)Tj -2.9999 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.2944 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.2944 0 TD -(BLKFN)Tj -2.9997 -0.2222 TD -(M)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0444 Tw -[( are the functions in the block and correspond)]TJ --24.71 -1.5111 TD -0 Tw -(to )Tj -/TT17 1 Tf -1.141 0 TD -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0189 Tw -[( in the call to )]TJ -/TT8 1 Tf -6.0026 0 TD -0 Tw -(BLOCKCOMPILE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0189 Tw -[(. The \()]TJ -/TT17 1 Tf -3.0635 0 TD -0 Tw -(VAR)Tj -1.7978 -0.2222 TD -(i)Tj -/TT8 1 Tf -0.6 0.2222 TD -0.0456 Tw -[( . )]TJ -/TT17 1 Tf -1.8914 0 TD -0 Tw -(VALUE)Tj -2.9997 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.0189 Tw -(\) expressions indicate the settings for)Tj --28.8978 -1.5111 TD -0.1389 Tw -[(variables affecting the compilation of that block. If )]TJ -/TT17 1 Tf -23.9536 0 TD -0 Tw -(VALUE)Tj -2.9997 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.1389 Tw -[( is atomic, then )]TJ -/TT17 1 Tf -7.4794 0 TD -0 Tw -(VAR)Tj -/TT12 1 Tf -1.8006 -0.3333 TD -(i)Tj -/TT6 1 Tf -0.2778 0.3333 TD -0.1389 Tw -[( is set to )]TJ -/TT17 1 Tf -4.3715 0 TD -0 Tw -(VALUE)Tj -2.9996 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -(,)Tj --45.0822 -1.5556 TD -(otherwise )Tj -/TT17 1 Tf -4.766 0 TD -(VAR)Tj -1.8007 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.16 Tw -[( is set to the )]TJ -/TT8 1 Tf -6.2531 0 TD -0 Tw -(UNION)Tj -/TT6 1 Tf -3.0005 0 TD -0.16 Tw -[( of )]TJ -/TT17 1 Tf -1.6989 0 TD -0 Tw -(VALUE)Tj -2.9986 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.16 Tw -[( and the current value of the variable )]TJ -/TT17 1 Tf -17.8625 0 TD -0 Tw -(VAR)Tj -1.8008 -0.2222 TD -(i)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.16 Tw -[(. Also,)]TJ --41.9811 -1.5111 TD -0.0156 Tw -(expressions of the form )Tj -/TT8 1 Tf -10.6457 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0378 Tw -[( * )]TJ -/TT17 1 Tf -1.8758 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -[( will cause )]TJ -/TT17 1 Tf -4.9534 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0156 Tw -[( to be evaluated and the resulting list used as)]TJ --25.2762 -1.2889 TD -0 Tw -(described above \(e.g. )Tj -/TT8 1 Tf -9.5479 0 TD -(\(GLOBALVARS)Tj -/TT19 1 Tf -6.6011 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(* MYGLOBALVARS\))Tj -/TT6 1 Tf -9.0015 0 TD -(\).)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -61 0 obj -<< -/Length 6757 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-16)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1933 Tw -[(For example, consider the block declaration below. The block name is )]TJ -/TT8 1 Tf -33.5056 0 TD -0 Tw -(EDITBLOCK)Tj -/TT6 1 Tf -5.4009 0 TD -0.1933 Tw -(, it includes a)Tj --38.9064 -1.2889 TD -0.3 Tw -(number of functions \()Tj -/TT8 1 Tf -10.4879 0 TD -0.72 Tw -(EDITL0, EDITL1, ... EDITH)Tj -/TT6 1 Tf -17.1624 0 TD -0.3 Tw -(\), and it sets the variables )Tj -/TT8 1 Tf -13.2312 0 TD -0 Tw -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj -/TT8 1 Tf --45.0822 -1.2889 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(RETFNS)Tj -/TT6 1 Tf -3.6006 0 TD -(, and )Tj -/TT8 1 Tf -2.4429 0 TD -(GLOBALVARS)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf --13.3452 -2.8889 TD -(\(EDITBLOCK)Tj -5.3333 -1 TD -(EDITL0 EDITL1 UNDOEDITL EDITCOM EDITCOMA)Tj -T* -(EDITMAC EDITCOMS EDIT]UNDO UNDOEDITCOM EDITH)Tj -T* -(\(ENTRIES EDITL0 ## UNDOEDITL\))Tj -T* -(\(SPECVARS L COM LCFLG #1 #2 #3 LISPXBUFS\))Tj -T* -(\(RETFNS EDITL0\))Tj -T* -(\(GLOBALVARS EDITCOMSA EDITCOMSL EDITOPS\)\))Tj -/TT6 1 Tf --9.3333 -2.7333 TD -(Whenever )Tj -/TT8 1 Tf -4.9188 0 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( or )]TJ -/TT8 1 Tf -1.6565 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1078 Tw -[( encounter a block declaration, they rebind )]TJ -/TT8 1 Tf -19.9 0 TD -0 Tw -(RETFNS)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.6078 0 TD -(SPECVARS)Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj -/TT8 1 Tf --45.0859 -1.2889 TD -(GLOBALVARS)Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -0.5022 0 TD -(BLKLIBRARY)Tj -/TT6 1 Tf -6.001 0 TD -0.0022 Tw -(, and )Tj -/TT8 1 Tf -2.4473 0 TD -0 Tw -(DONTCOMPILEFNS)Tj -/TT6 1 Tf -8.4014 0 TD -0.0001 Tc -0.0021 Tw -( to their top level values, bind )Tj -/TT8 1 Tf -13.4379 0 TD -0 Tc -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0006 Tc -0.0016 Tw -( and)Tj -/TT8 1 Tf --43.3918 -1.2889 TD -0 Tc -0 Tw -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( to )]TJ -/TT8 1 Tf -1.421 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -(, and bind )Tj -/TT8 1 Tf -4.8033 0 TD -0 Tw -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( to the first element of the declaration. They then scan the rest of)]TJ --16.4259 -1.2889 TD -0.1422 Tw -[(the declaration, setting these variables as described above. When the declaration is exhausted, the)]TJ -0 -1.2222 TD -0 Tw -(block compiler is called and given )Tj -/TT8 1 Tf -15.3164 0 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -(, the list of block functions, and )Tj -/TT8 1 Tf -14.062 0 TD -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --37.7798 -2.9556 TD -0.0733 Tw -(If a function appears in a block declaration, but is not defined in one of the files, then if it has an in-)Tj -0 -1.2222 TD -0.0522 Tw -(core definition, this definition is used and a message printed )Tj -/TT8 1 Tf -27.4773 0 TD -0.1256 Tw -(NOT ON FILE)Tj -/TT19 1 Tf -6.8522 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.5522 0 TD -0.1256 Tw -(COMPILING IN CORE)Tj --34.8817 -1.2889 TD -0 Tw -(DEFINITION)Tj -/TT6 1 Tf -6.001 0 TD -0.1989 Tw -[(. Otherwise, the message )]TJ -/TT8 1 Tf -12.4725 0 TD -0.4778 Tw -(NOT COMPILEABLE)Tj -/TT6 1 Tf -9.4792 0 TD -0.1989 Tw -(, is printed and the block declaration)Tj --27.9527 -1.2889 TD -0.0567 Tw -(processed as though the function were not on it, i.e. calls to the function will be compiled as external)Tj -0 -1.2222 TD -0 Tw -(function calls.)Tj -0 -2.8889 TD -0.1522 Tw -(Since all compiler variables are rebound for each block declaration, the declaration only has to set)Tj -0 -1.2222 TD -0.1 Tw -(those variables it wants )Tj -/TT12 1 Tf -11.0382 0 TD -0 Tw -(changed)Tj -/TT6 1 Tf -3.2964 0 TD -0.1 Tw -[(. Furthermore, setting a variable in one declaration has no effect on)]TJ --14.3346 -1.2222 TD -0 Tw -(the variables value for another declaration.)Tj -0 -2.8889 TD -0.0267 Tw -(After finishing all blocks, )Tj -/TT8 1 Tf -11.4958 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0267 Tw -[( and )]TJ -/TT8 1 Tf -2.2462 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0267 Tw -[( treat any functions in the file that did not appear)]TJ --23.3436 -1.2889 TD -0.2178 Tw -(in a block declaration in the same way as do )Tj -/TT8 1 Tf -21.9224 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.2178 Tw -[( and )]TJ -/TT8 1 Tf -2.6284 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2178 Tw -[(. If you wish a function)]TJ --33.5523 -1.2889 TD -0.0033 Tw -(compiled separately as well as in a block, or if you wish to compile some functions \(not blockcompile\),)Tj -0 -1.2222 TD -0 Tw -(with some compiler variables changed, you can use a special pseudo-block declaration of the form)Tj -/TT8 1 Tf -5.3333 -2.8889 TD -(\(NIL)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKFN)Tj -2.9996 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKFN)Tj -2.9997 -0.2222 TD -(M)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -1.7999 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VALUE)Tj -2.9999 -0.2222 TD -(1)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -1.7995 -0.2222 TD -(N)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(.)Tj -/TT19 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VALUE)Tj -2.9999 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\)\))Tj -/TT6 1 Tf --36.0333 -2.9556 TD -0.18 Tw -(which means that )Tj -/TT17 1 Tf -8.625 0 TD -0 Tw -(BLKFN)Tj -3.0017 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.43 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.43 0 TD -(BLKFN)Tj -2.9997 -0.2222 TD -(M)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.18 Tw -[( should be compiled after first setting )]TJ -/TT17 1 Tf -18.031 0 TD -0 Tw -(VAR)Tj -1.8023 -0.2222 TD -(1)Tj -/TT6 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.43 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.43 0 TD -(VAR)Tj -1.7997 -0.2222 TD -(N)Tj -/TT6 1 Tf -0.6 0.2222 TD -0.18 Tw -[( as)]TJ --43.98 -1.5111 TD -0 Tw -(described above.)Tj -0 -2.8889 TD -(The following variables control other aspects of compiling a block:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(RETFNS)Tj -/TT14 1 Tf -10 0 0 10 182.4 101.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 101.4 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0967 Tw -(Value is a list of internal block functions whose names must appear on the stack, e.g., if)Tj -0 -1.2222 TD -0.0011 Tw -(the function is to be returned from )Tj -/TT8 1 Tf -15.498 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5011 0 TD -(RETTO)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5011 0 TD -(RETEVAL)Tj -/TT6 1 Tf -4.2007 0 TD -0.0011 Tw -(, etc. Usually, internal calls)Tj --27.9021 -1.2889 TD -0 Tw -(between functions in a block are not put on the stack.)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -64 0 obj -<< -/Length 5975 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-17)Tj -/TT10 1 Tf --39.6667 60.4667 TD -(BLKAPPLYFNS)Tj -/TT14 1 Tf -10 0 0 10 161.4 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0267 Tw -(Value is a list of internal block functions called by other functions in the same block using)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BLKAPPLY)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(BLKAPPLY*)Tj -/TT6 1 Tf -5.4009 0 TD -( for efficiency reasons.)Tj --11.6426 -2.0667 TD -0.1089 Tw -(Normally, a call to )Tj -/TT8 1 Tf -8.8765 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.1089 Tw -[( from inside a block would be the same as a call to any other)]TJ --11.877 -1.2889 TD -0.0744 Tw -[(function outside of the block. If the first argument to )]TJ -/TT8 1 Tf -24.4844 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -[( turned out to be one of the)]TJ --27.4849 -1.2889 TD -0.2178 Tw -(entries to the block, the block would have to be reentered. )Tj -/TT8 1 Tf -28.6563 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.2178 Tw -[( enables a)]TJ --35.2574 -1.2889 TD -0.14 Tw -(program to compute the name of a function in the block to be called next, without the)Tj -0 -1.2222 TD -0.2 Tw -(overhead of leaving the block and reentering it. This is done by including on the list)Tj -/TT8 1 Tf -T* -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.38 Tw -[( those functions which will be called in this fashion, and by using)]TJ -/TT8 1 Tf --6.6011 -1.2889 TD -0 Tw -(BLKAPPLY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2111 Tw -[( in place of )]TJ -/TT8 1 Tf -5.9113 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.2111 Tw -(, and )Tj -/TT8 1 Tf -2.8651 0 TD -0 Tw -(BLKAPPLY*)Tj -/TT6 1 Tf -5.4009 0 TD -0.2111 Tw -[( in place of )]TJ -/TT8 1 Tf -5.9113 0 TD -0 Tw -(APPLY*)Tj -/TT6 1 Tf -3.6006 0 TD -0.2111 Tw -[(. If )]TJ -/TT8 1 Tf -2.3033 0 TD -0 Tw -(BLKAPPLY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2111 Tw -[( or)]TJ -/TT8 1 Tf --38.5945 -1.2889 TD -0 Tw -(BLKAPPLY*)Tj -/TT6 1 Tf -5.4009 0 TD -0.1111 Tw -[( is given a function not on )]TJ -/TT8 1 Tf -12.5048 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1111 Tw -(, the effect is the same as a call to)Tj -/TT8 1 Tf --24.5068 -1.2889 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0456 Tw -[( or )]TJ -/TT8 1 Tf -1.532 0 TD -0 Tw -(APPLY*)Tj -/TT6 1 Tf -3.6006 0 TD -0.0456 Tw -[( and no error is generated. Note however, that )]TJ -/TT8 1 Tf -21.4048 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0456 Tw -[( must be)]TJ --36.139 -1.2889 TD -0.1611 Tw -(set at )Tj -/TT12 1 Tf -2.8774 0 TD -0 Tw -(compile)Tj -/TT6 1 Tf -3.0737 0 TD -0.1611 Tw -[( time, not run time, and furthermore, that all functions on )]TJ -/TT8 1 Tf -27.4485 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf --33.3996 -1.2889 TD -(must be in the block, or an error is generated \(at compile time\),)Tj -/TT8 1 Tf -27.7793 0 TD -( NOT ON BLKFNS)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --38.8473 -2.5489 TD -(BLKAPPLYFNS)Tj -/TT14 1 Tf -10 0 0 10 161.4 384.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 384.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0356 Tw -(Value is a list of functions that are considered to be in the "block library" of functions that)Tj -0 -1.2222 TD -0 Tw -(should automatically be included in the block if they are called within the block.)Tj -0 -2 TD -0.03 Tw -[(Compiling a function open via a macro provides a way of eliminating a function call. For)]TJ -0 -1.2222 TD -0.01 Tw -[(block compiling, the same effect can be achieved by including the function in the block. A)]TJ -T* -0.1522 Tw -(further advantage is that the code for this function will appear only once in the block,)Tj -T* -0.1789 Tw -(whereas when a function is compiled open, its code appears at each place where it is)Tj -T* -0 Tw -(called.)Tj -0 -2 TD -(The block library feature provides a convenient way of including functions in a block. It is)Tj -0 -1.2222 TD -0.3211 Tw -(just a convenience since you can always achieve the same effect by specifying the)Tj -T* -0.05 Tw -(function\(s\) in question as one of the block functions, provided it has an expr definition at)Tj -T* -0.1244 Tw -[(compile time. The block library feature simply eliminates the burden of supplying this)]TJ -T* -0 Tw -(definition.)Tj -0 -2 TD -0.1389 Tw -(To use the block library feature, place the names of the functions of interest on the list)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BLKLIBRARY)Tj -/TT6 1 Tf -6.001 0 TD -0.1378 Tw -(, and their expr definitions on the property list of the functions under the)Tj --6.001 -1.2889 TD -0 Tw -(property )Tj -/TT8 1 Tf -4.2572 0 TD -(BLKLIBRARYDEF)Tj -/TT6 1 Tf -7.8013 0 TD -0.1078 Tw -[(. When the block compiler compiles a form, it first checks to)]TJ --12.0585 -1.2889 TD -0.0367 Tw -[(see if the function being called is one of the block functions. If not, and the function is on)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BLKLIBRARY)Tj -/TT6 1 Tf -6.001 0 TD -0.0478 Tw -(, its definition is obtained from the property value of )Tj -/TT8 1 Tf -23.9641 0 TD -0 Tw -(BLKLIBRARYDEF)Tj -/TT6 1 Tf -7.8013 0 TD -0.0478 Tw -(, and)Tj --37.7664 -1.2889 TD -0 Tw -(it is automatically included as part of the block.)Tj -/TT4 1 Tf -10 0 0 10 78 130.52 Tm -(Block Compiling Functions)Tj -/TT6 1 Tf -9 0 0 9 78 106.86 Tm -0.03 Tw -(There are three user level functions for block compiling, )Tj -/TT8 1 Tf -25.2388 0 TD -0 Tw -(BLOCKCOMPILE)Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -0.53 0 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -(, and )Tj -/TT8 1 Tf -2.5029 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -(,)Tj --45.0744 -1.2889 TD -0.2433 Tw -(corresponding to )Tj -/TT8 1 Tf -8.3104 0 TD -0 Tw -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.7433 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.2433 Tw -(, and )Tj -/TT8 1 Tf -2.9295 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2433 Tw -[(. Note that all of the remarks on macros,)]TJ --25.1854 -1.2889 TD -0.0878 Tw -[(globalvars, compiler messages, etc., all apply equally for block compiling. Using block declarations,)]TJ -0 -1.3711 TD -0 Tw -(you can intermix in a single file functions compiled normally and block compiled functions)Tj -/TT14 1 Tf -10 0 0 10 440.8257 71.32 Tm -(.)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -67 0 obj -<< -/Length 8404 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-18)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(BLOCKCOMPILE)Tj -/TT4 1 Tf -10 0 0 10 220.2 568.2 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 222.9783 568.2 Tm -(BLKNAME)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKFNS)Tj -/TT12 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(ENTRIES)Tj -/TT12 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 359.3494 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj -/TT17 1 Tf --35.4033 -1.8444 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.1033 Tw -[( is the name of a block, )]TJ -/TT17 1 Tf -11.0383 0 TD -0 Tw -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1033 Tw -[( is a list of the functions comprising the block,)]TJ --18.8395 -1.2889 TD -0 Tw -(and )Tj -/TT17 1 Tf -1.9429 0 TD -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -( a list of entries to the block.)Tj --6.1436 -2.0667 TD -0.0256 Tw -(Each of the entries must also be on )Tj -/TT17 1 Tf -15.7401 0 TD -0 Tw -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0256 Tw -[( or an error is generated, )]TJ -/TT8 1 Tf -11.2583 0 TD -0.0622 Tw -(NOT ON BLKFNS)Tj -/TT6 1 Tf -7.9257 0 TD -0.0256 Tw -[(. If)]TJ --38.5247 -1.2889 TD -0.3578 Tw -(only one entry is specified, the block name can also be one of the )Tj -/TT17 1 Tf -33.7599 0 TD -0 Tw -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.3578 Tw -(, e.g.,)Tj -/TT8 1 Tf --37.3605 -1.2889 TD -0.02 Tw -(\(BLOCKCOMPILE FOO \(FOO FIE FUM\) \(FOO\)\))Tj -/TT6 1 Tf -24.704 0 TD -0.0078 Tw -[(. However, if more than one entry)]TJ --24.704 -1.2889 TD -0.0622 Tw -(is specified, an error will be generated, )Tj -/TT8 1 Tf -17.7915 0 TD -0.1489 Tw -(CANT BE BOTH AN)Tj -/TT19 1 Tf -10.0482 0 TD -0 Tw -( )Tj -/TT8 1 Tf -0.3122 0 TD -0.1489 Tw -(ENTRY AND THE BLOCK)Tj --28.152 -1.2889 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --2.4004 -2.0667 TD -(If )Tj -/TT17 1 Tf -1.0421 0 TD -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -0.1222 Tw -[( is )]TJ -/TT8 1 Tf -1.4593 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6222 0 TD -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.3722 0 TD -(BLKNAME)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1222 Tw -[( is used, e.g., )]TJ -/TT8 1 Tf -6.3556 0 TD -0 Tw -(\(BLOCKCOMPILE)Tj -/TT19 1 Tf -7.8013 0 TD -( )Tj -/TT8 1 Tf -0.3722 0 TD -(COUNT)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.3722 0 TD -(\(COUNT)Tj --35.8 -1.2222 TD -(COUNT1\)\))Tj -/TT6 1 Tf -0 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9199 0 TD -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(BLKNAME)Tj -/TT8 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( is used, e.g., )Tj -/TT8 1 Tf -5.8667 0 TD -(\(BLOCKCOMPILE EQUAL\))Tj --21.9536 -2.0667 TD -(BLOCKCOMPILE)Tj -/TT6 1 Tf -7.2012 0 TD -0.1733 Tw -[( asks the standard compiler questions, and then begins compiling. As)]TJ --7.2012 -1.2889 TD -0 Tw -(with )Tj -/TT8 1 Tf -2.3243 0 TD -(COMPILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0411 Tw -(, if the compiled code is being written to a file, the file is closed unless )Tj -/TT17 1 Tf -31.6631 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf --38.1881 -1.2889 TD -0.0289 Tw -(= T)Tj -/TT6 1 Tf -1.8292 0 TD -0.0122 Tw -[(. The value of )]TJ -/TT8 1 Tf -6.5518 0 TD -0 Tw -(BLOCKCOMPILE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0122 Tw -[( is a list of the entries, or if )]TJ -/TT17 1 Tf -11.964 0 TD -0 Tw -(ENTRIES)Tj -/TT8 1 Tf -4.2007 0 TD -0.0289 Tw -[( = NIL)]TJ -/TT6 1 Tf -3.6584 0 TD -0.0122 Tw -(, the value)Tj --35.4052 -1.2889 TD -0 Tw -(is )Tj -/TT17 1 Tf -0.9648 0 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --5.1655 -2.0667 TD -0.2378 Tw -(The output of a call to )Tj -/TT8 1 Tf -11.3827 0 TD -0 Tw -(BLOCKCOMPILE)Tj -/TT6 1 Tf -7.2012 0 TD -0.2378 Tw -[( is one function definition for )]TJ -/TT17 1 Tf -14.5614 0 TD -0 Tw -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.2378 Tw -(, plus)Tj --37.346 -1.2889 TD -0.1044 Tw -(definitions for each of the functions on )Tj -/TT17 1 Tf -18.0407 0 TD -0 Tw -(ENTRIES)Tj -/TT6 1 Tf -4.2007 0 TD -0.1044 Tw -[( if any. These entry functions are very)]TJ --22.2414 -1.2889 TD -0 Tw -(short functions which immediately call )Tj -/TT17 1 Tf -17.5024 0 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf --24.3698 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(BCOMPL)Tj -/TT4 1 Tf -10 0 0 10 187.8 308.66 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 190.5783 308.66 Tm -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(CFILE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 252.238 308.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 308.66 Tm -([Function])Tj -/TT17 1 Tf --35.4033 -1.8444 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0333 Tw -[( is a list of symbolic files \(if atomic,)]TJ -/TT8 1 Tf -15.6949 0 TD -0.0789 Tw -[( \(LIST)]TJ -/TT19 1 Tf -3.6795 0 TD -0 Tw -( )Tj -/TT17 1 Tf -0.2833 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is used\). )]TJ -/TT8 1 Tf -4.5479 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0333 Tw -[( differs from)]TJ -/TT8 1 Tf --34.4072 -1.2889 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1444 Tw -[( in that it compiles all of the files at once, instead of one at a time, in order to)]TJ --3.6006 -1.2889 TD -0.1867 Tw -[(permit one block to contain functions in several files. \(If you have several files to be)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(ed )Tj -/TT12 1 Tf -1.5221 0 TD -(separately)Tj -/TT6 1 Tf -4.0552 0 TD -0.1822 Tw -(, you must make several calls to )Tj -/TT8 1 Tf -15.589 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1822 Tw -[(.\) Output is to )]TJ -/TT17 1 Tf -7.5766 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1822 Tw -[( if)]TJ --38.9446 -1.2889 TD -0.0589 Tw -(given, otherwise to a file whose name is )Tj -/TT19 1 Tf -18.3398 0 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -(CAR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.3089 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0589 Tw -[( suffixed with )]TJ -/TT8 1 Tf -6.5497 0 TD -0 Tw -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0589 Tw -[(. For example,)]TJ -/TT8 1 Tf --33.3326 -1.2889 TD -0 Tw -(\(BCOMPL \(EDIT WEDIT\)\))Tj -/TT6 1 Tf -13.2022 0 TD -( produces one file, )Tj -/TT8 1 Tf -8.3535 0 TD -(EDIT.DCOM)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --26.9565 -2.0667 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.37 Tw -[( asks the standard compiler questions, except for ")]TJ -/TT8 1 Tf -25.1045 0 TD -0.8867 Tw -(OUTPUT FILE:)Tj -/TT6 1 Tf -8.0878 0 TD -0.37 Tw -(", then)Tj --36.793 -1.2889 TD -0.3133 Tw -(processes each file exactly the same as )Tj -/TT8 1 Tf -19.2666 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.3133 Tw -(. )Tj -/TT8 1 Tf -1.3767 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.3133 Tw -[( next processes the block)]TJ --27.8444 -1.2889 TD -0.0122 Tw -[(declarations as described above. Finally, it compiles those functions not mentioned in one)]TJ -0 -1.2222 TD -0 Tw -(of the block declarations, and then writes out all other expressions.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -0.9433 0 TD -(any)Tj -/TT6 1 Tf -1.5 0 TD -0.0233 Tw -[( of the files have property)]TJ -/TT8 1 Tf -11.476 0 TD -0.0556 Tw -[( FILETYPE)]TJ -/TT6 1 Tf -5.4564 0 TD -0.0233 Tw -[( with value )]TJ -/TT8 1 Tf -5.2912 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -0.0233 Tw -(, or a list containing )Tj -/TT8 1 Tf -9.0898 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --39.7577 -1.2889 TD -(then )Tj -/TT8 1 Tf -2.2192 0 TD -(DWIMIFYCOMPFLG)Tj -/TT6 1 Tf -8.4014 0 TD -( is rebound to )Tj -/TT8 1 Tf -6.356 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( for )Tj -/TT12 1 Tf -1.7739 0 TD -(all)Tj -/TT6 1 Tf -0.9995 0 TD -( of the files. )Tj --20.3501 -2.0667 TD -0.1933 Tw -(The value of )Tj -/TT8 1 Tf -6.3207 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1933 Tw -[( is the output file \(the new compiled file\). If the compilation is)]TJ --9.9213 -1.2889 TD -0.2089 Tw -(aborted due to an error or Control-D, all files are closed and the \(partially complete\))Tj -0 -1.2222 TD -0 Tw -(output file is deleted.)Tj -0 -2 TD -0.16 Tw -(It is permissible to )Tj -/TT8 1 Tf -9.0008 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.16 Tw -[( files set up for )]TJ -/TT8 1 Tf -7.5749 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.16 Tw -(; the block declarations will simply)Tj --23.7769 -1.2889 TD -0.32 Tw -[(have no effect. Similarly, you can )]TJ -/TT8 1 Tf -17.3919 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.32 Tw -[( a file that does not contain any block)]TJ --20.9924 -1.2889 TD -0 Tw -(declarations and the result will be the same as having )Tj -/TT8 1 Tf -23.8989 0 TD -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(ed it.)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -70 0 obj -<< -/Length 7367 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-19)Tj -/TT8 1 Tf --39.6667 60.4667 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(BRECOMPILE)Tj -/TT4 1 Tf -10 0 0 10 161.4 568.2 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 164.1783 568.2 Tm -(FILES)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(CFILE)Tj -/TT12 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FNS)Tj -/TT21 1 Tf -10 0 0 10 238.8897 568.2 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 241.6681 568.2 Tm -()Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT14 1 Tf -10 0 0 10 252.4698 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8444 TD -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1844 Tw -[( plays the same role for )]TJ -/TT8 1 Tf -11.6365 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1844 Tw -[( that )]TJ -/TT8 1 Tf -2.6033 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1844 Tw -[( plays for )]TJ -/TT8 1 Tf -4.9493 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1844 Tw -[(. Its)]TJ --37.7921 -1.2889 TD -0 Tw -(purpose is to allow you to update a compiled file without requiring an entire )Tj -/TT8 1 Tf -34.2295 0 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT17 1 Tf --37.8301 -2.0667 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0032 Tw -( is a list of symbolic files \(if atomic, )Tj -/TT8 1 Tf -15.7082 0 TD -0 Tc -0 Tw -(\(LIST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.2533 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0003 Tc -0.003 Tw -( is used\). )Tj -/TT17 1 Tf -4.4279 0 TD -0 Tc -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0002 Tc -0.0031 Tw -( is the compiled)Tj --32.9915 -1.2889 TD -0 Tc -0.1067 Tw -(file produced by )Tj -/TT8 1 Tf -7.863 0 TD -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.1067 Tw -[( or a previous )]TJ -/TT8 1 Tf -6.7714 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1067 Tw -[( that contains compiled definitions)]TJ --24.2359 -1.2889 TD -0 Tw -(that may be copied. The interpretation of )Tj -/TT17 1 Tf -18.5996 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -( is the same as with )Tj -/TT8 1 Tf -8.8447 0 TD -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --34.6455 -2.0667 TD -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.0032 Tw -( asks the standard compiler questions, except for ")Tj -/TT8 1 Tf -22.1712 0 TD -0 Tc -0.0078 Tw -(OUTPUT FILE:)Tj -/TT6 1 Tf -7.209 0 TD -0.0003 Tc -0.003 Tw -(". As with)Tj -/TT8 1 Tf --35.3811 -1.2889 TD -0 Tc -0 Tw -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -(, output automatically goes to )Tj -/TT17 1 Tf -13.4395 0 TD -(FILE)Tj -/TT19 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -(, where )Tj -/TT17 1 Tf -3.519 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( is the first file in )Tj -/TT17 1 Tf -7.6382 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf --38.6489 -2.0667 TD -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.2544 Tw -[( processes each file the same as )]TJ -/TT8 1 Tf -15.742 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2544 Tw -(, then processes each block)Tj --27.1439 -1.2889 TD -0.0122 Tw -[(declaration. If )]TJ -/TT12 1 Tf -6.6714 0 TD -0 Tw -(any)Tj -/TT6 1 Tf -1.5 0 TD -0.0122 Tw -[( of the functions in the block are to be recompiled, the entire block must)]TJ --8.1714 -1.2222 TD -0.0656 Tw -[(be \(is\) recompiled. Otherwise, the block is copied from )]TJ -/TT17 1 Tf -25.305 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( as with )]TJ -/TT8 1 Tf -3.9037 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0656 Tw -[(. For)]TJ --37.61 -1.2889 TD -0.01 Tw -(pseudo-block declarations of the form )Tj -/TT8 1 Tf -17.0983 0 TD -0 Tw -(\(NIL)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.26 0 TD -(FN)Tj -1.2024 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.26 0 TD -(...\))Tj -/TT6 1 Tf -2.4004 0 TD -0.01 Tw -(, all variable assignments are made,)Tj --24.2215 -1.5111 TD -0 Tw -(but only those functions indicated by )Tj -/TT17 1 Tf -16.6895 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -( are recompiled.)Tj --18.4897 -2.0667 TD -0.0678 Tw -(After completing the block declarations, )Tj -/TT8 1 Tf -18.315 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0678 Tw -[( processes all functions that do not)]TJ --24.3159 -1.2889 TD -0.3189 Tw -(appear in a block declaration, recompiling those dictated by )Tj -/TT17 1 Tf -29.5873 0 TD -0 Tw -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.3189 Tw -(, and copying the)Tj --31.3876 -1.2889 TD -0 Tw -(compiled definitions of the remaining from )Tj -/TT17 1 Tf -19.3833 0 TD -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --22.3838 -2.0667 TD -(Finally, )Tj -/TT8 1 Tf -3.6807 0 TD -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1133 Tw -[( writes onto the output file the "other expressions" collected in the)]TJ --9.6817 -1.2889 TD -0 Tw -(initial scan of )Tj -/TT17 1 Tf -6.1509 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --9.1514 -2.0667 TD -0.0433 Tw -(The value of )Tj -/TT8 1 Tf -5.8707 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0433 Tw -[( is the output file \(the new compiled file\). If the compilation is)]TJ --11.8717 -1.2889 TD -0.2089 Tw -(aborted due to an error or Control-D, all files are closed and the \(partially complete\))Tj -0 -1.2222 TD -0 Tw -(output file is deleted.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -1.1577 0 TD -(CFILE )Tj -/TT8 1 Tf -4.1706 0 TD -0.57 Tw -(= NIL)Tj -/TT6 1 Tf -3.5705 0 TD -0.2378 Tw -(, the old version of )Tj -/TT17 1 Tf -9.6845 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.DCOM)Tj -/TT6 1 Tf -3.0005 0 TD -0.2378 Tw -[( is used, as with )]TJ -/TT8 1 Tf -8.4775 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2378 Tw -[(. In)]TJ --37.8625 -1.2889 TD -0.0344 Tw -(addition, if )Tj -/TT17 1 Tf -5.2007 0 TD -0 Tw -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.0344 Tw -[( and )]TJ -/TT17 1 Tf -2.2618 0 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0344 Tw -[( are both )]TJ -/TT8 1 Tf -4.2347 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.5344 0 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.0344 Tw -[( is set to the value of )]TJ -/TT8 1 Tf -9.5111 0 TD -0 Tw -(RECOMPILEDEFAULT)Tj -/TT6 1 Tf -9.6016 0 TD -(,)Tj --39.7457 -1.2889 TD -(initially )Tj -/TT8 1 Tf -3.6694 0 TD -(CHANGES)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 204.26 Tm -(Compiler Error Messages)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 201.55 m -510.01 201.55 l -S -BT -/TT6 1 Tf -9 0 0 9 78 179.6 Tm -0.1333 Tw -[(Messages describing errors in the function being compiled are also printed on the terminal. These)]TJ -0 -1.2222 TD -0.1656 Tw -(messages are always preceded by )Tj -/TT8 1 Tf -15.9333 0 TD -0 Tw -(*****)Tj -/TT6 1 Tf -3.0005 0 TD -0.1656 Tw -[(. Unless otherwise indicated below, the compilation will)]TJ --18.9337 -1.2889 TD -0 Tw -(continue.)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( NOT ON FILE, COMPILING IN CORE DEFINITION\))Tj -/TT14 1 Tf -10 0 0 10 350.4008 134.66 Tm -0 Tc -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 126 118.06 Tm -(From calls to )Tj -/TT8 1 Tf -5.9517 0 TD -(BCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf --20.4128 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT4 1 Tf -10 0 0 10 118.2026 95.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 120.981 95.12 Tm --0.0001 Tc -0.0001 Tw -(NOT COMPILEABLE\) )Tj -/TT6 1 Tf -0.5577 -1.8444 TD -0 Tc -0 Tw -(An )Tj -/TT8 1 Tf -1.6899 0 TD -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.08 Tw -[( definition for )]TJ -/TT17 1 Tf -6.596 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.08 Tw -[( could not be found. In this case, no code is produced for )]TJ -/TT17 1 Tf -26.6503 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(,)Tj --39.7369 -1.2889 TD -(and the compiler proceeds to the next function to be compiled, if any.)Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R -/TT19 21 0 R -/TT21 72 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -74 0 obj -<< -/Length 6515 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-20)Tj -/TT14 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT4 1 Tf -10 0 0 10 166.2026 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 168.9809 568.2 Tm --0.0001 Tc -0.0001 Tw -(NOT FOUND\))Tj -/TT14 1 Tf -10 0 0 10 222.9809 568.2 Tm -0 Tc -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 174 551.6 Tm -0.0333 Tw -(Occurs when )Tj -/TT8 1 Tf -6.1394 0 TD -0 Tw -(RECOMPILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( or )]TJ -/TT8 1 Tf -1.5076 0 TD -0 Tw -(BRECOMPILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0333 Tw -[( try to copy the compiled definition of )]TJ -/TT17 1 Tf -17.3067 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0333 Tw -[( from)]TJ -/TT17 1 Tf --37.5558 -1.2889 TD -0 Tw -(CFILE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0056 Tw -[(, and cannot find it. In this case, no code is copied and the compiler proceeds to the)]TJ --3.0005 -1.2889 TD -0 Tw -(next function to be compiled, if any.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT4 1 Tf -10 0 0 10 166.2026 506.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 168.9809 506.06 Tm --0.0001 Tc -0.0001 Tw -(NOT ON BLKFNS\))Tj -/TT14 1 Tf -10 0 0 10 244.5809 506.06 Tm -0 Tc -0 Tw -( )Tj -/TT17 1 Tf -9 0 0 9 174 489.46 Tm -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0356 Tw -[( was specified as an entry to a block, or else was on )]TJ -/TT8 1 Tf -23.2786 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0356 Tw -(, but did not appear)Tj --31.0799 -1.2889 TD -0.1356 Tw -(on the )Tj -/TT17 1 Tf -3.2862 0 TD -0 Tw -(BLKFNS)Tj -/TT6 1 Tf -3.6006 0 TD -0.1356 Tw -(. In this case, no code is produced for the entire block and the compiler)Tj --6.8868 -1.2889 TD -0 Tw -(proceeds to the next function to be compiled, if any.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT4 1 Tf -10 0 0 10 166.2026 443.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 168.9809 443.92 Tm --0.0001 Tc -0.0001 Tw -(CANT BE BOTH AN ENTRY AND THE BLOCK NAME\) )Tj -/TT6 1 Tf -0.5577 -1.9933 TD -0 Tc -0.0011 Tw -(In this case, no code is produced for the entire block and the compiler proceeds )Tj -/TT14 1 Tf -10 0 0 10 490.8814 425.98 Tm -0 Tw -(to )Tj -/TT6 1 Tf -9 0 0 9 502.0196 425.98 Tm -0.0011 Tw -(the next)Tj --36.4466 -1.2222 TD -0 Tw -(function to be compiled, if any.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(-)Tj -/TT4 1 Tf -10 0 0 10 200.8579 392.64 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 203.6362 392.64 Tm --0.0001 Tc -0.0001 Tw -(USED BLKAPPLY WHEN NOT APPLICABLE\) )Tj --3.2929 -1.8444 TD -0 Tc -0 Tw -(BLKAPPLY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1567 Tw -[( is used in the block )]TJ -/TT17 1 Tf -9.9219 0 TD -0 Tw -(BLKNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.1567 Tw -(, but there are no )Tj -/TT8 1 Tf -8.5289 0 TD -0 Tw -(BLKAPPLYFNS)Tj -/TT6 1 Tf -6.6011 0 TD -0.1567 Tw -[( or )]TJ -/TT8 1 Tf -1.7542 0 TD -0 Tw -(ENTRIES)Tj -/TT6 1 Tf --35.8077 -1.2889 TD -(declared for the block.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT4 1 Tf -10 0 0 10 171.6035 342.1 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 174.3818 342.1 Tm -(SHOULD BE A SPECVAR - USED FREELY BY )Tj -/TT17 1 Tf -22.2036 0 TD -(FN)Tj -/TT8 1 Tf -1.1962 0 TD -(\) )Tj -/TT6 1 Tf --23.4422 -1.8444 TD -0.2467 Tw -(While compiling a block, the compiler has already generated code to bind )Tj -/TT17 1 Tf -35.7789 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2467 Tw -[( as a)]TJ -/TT8 1 Tf --37.5791 -1.2889 TD -0 Tw -(LOCALVAR)Tj -/TT6 1 Tf -4.8008 0 TD -0.2989 Tw -(, but now discovers that )Tj -/TT17 1 Tf -12.3514 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2989 Tw -[( uses )]TJ -/TT17 1 Tf -3.0275 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2989 Tw -[( freely. )]TJ -/TT17 1 Tf -4.4299 0 TD -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.2989 Tw -[( should be declared a)]TJ -/TT8 1 Tf --29.4103 -1.2889 TD -0 Tw -(SPECVAR)Tj -/TT6 1 Tf -4.2007 0 TD -( and the block recompiled.)Tj -/TT8 1 Tf --6.8674 -2.3333 TD --0.0001 Tc -0.0001 Tw -(\(\(* --\) COMMENT USED FOR VALUE\) )Tj -/TT6 1 Tf -2.6667 -1.8444 TD -0 Tc -0.1 Tw -(A comment appears in a context where its value is being used, e.g. )Tj -/TT8 1 Tf -30.8889 0 TD -0.2389 Tw -(\(LIST X \(* --\))Tj --30.8889 -1.2889 TD -0 Tw -(Y\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0978 Tw -[(. The compiled function will run, but the value at the point where the comment was)]TJ --1.2002 -1.2889 TD -0 Tw -(used is undefined.)Tj -/TT8 1 Tf --2.6667 -2.2667 TD -(\(\()Tj -/TT17 1 Tf -1.2002 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD --0.0001 Tc -0.0001 Tw -(\) - NON-ATOMIC CAR OF FORM\) )Tj -/TT6 1 Tf --0.9339 -1.8444 TD -0 Tc -0.03 Tw -(If you intended to treat the value of )Tj -/TT17 1 Tf -16.1785 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.03 Tw -[( as a function, you should use )]TJ -/TT8 1 Tf -13.6084 0 TD -0 Tw -(APPLY*)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -[( \(Chapter)]TJ --35.7879 -1.2889 TD -0 Tw -(10\). )Tj -/TT17 1 Tf -2.083 0 TD -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -( is compiled as if )Tj -/TT8 1 Tf -7.6582 0 TD -(APPLY*)Tj -/TT6 1 Tf -3.6006 0 TD -( had been used.)Tj -/TT8 1 Tf --18.4089 -2.4 TD -(\(\(SETQ )Tj -/TT17 1 Tf -4.2007 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD --0.0002 Tc -0.0002 Tw -( --\) BAD SETQ\) )Tj --5.9847 -1.8444 TD -0 Tc -0 Tw -(SETQ)Tj -/TT6 1 Tf -2.4004 0 TD -( of more than two arguments.)Tj -/TT8 1 Tf --5.0671 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - USED AS ARG TO NUMBER FN?\) )Tj -/TT6 1 Tf -0.8664 -1.8444 TD -0 Tc -0.0867 Tw -(The value of a predicate, such as )Tj -/TT8 1 Tf -15.1999 0 TD -0 Tw -(GREATERP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0867 Tw -[( or )]TJ -/TT8 1 Tf -1.6143 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0867 Tw -(, is used as an argument to a function)Tj --22.8152 -1.2889 TD -0 Tw -(that expects numbers, such as )Tj -/TT8 1 Tf -13.3989 0 TD -(IPLUS)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf --19.0661 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - NO LONGER INTERPRETED AS FUNCTIONAL ARGUMENT\) )Tj -/TT6 1 Tf -0.8664 -1.8444 TD -0 Tc -0.0333 Tw -(The compiler has assumed )Tj -/TT17 1 Tf -12.166 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0333 Tw -[( is the name of a function. If you intended to treat the )]TJ -/TT12 1 Tf -24.4701 0 TD -0 Tw -(value)Tj -/TT6 1 Tf --37.8363 -1.2889 TD -(of )Tj -/TT17 1 Tf -1.1967 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0678 Tw -[( as a function, )]TJ -/TT8 1 Tf -6.652 0 TD -0 Tw -(APPLY*)Tj -/TT6 1 Tf -3.6006 0 TD -0.0678 Tw -[( \(Chapter 10\) should be used. This message is printed when)]TJ -/TT17 1 Tf --12.6494 -1.2889 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -( is not defined, and is also a local variable of the function being compiled.)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -77 0 obj -<< -/Length 4861 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(18-21)Tj -/TT8 1 Tf --39.6667 60.6822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - ILLEGAL RETURN\) )Tj -0.8664 -1.8444 TD -0 Tc -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -( encountered when not in )Tj -/TT8 1 Tf -11.5801 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --20.2477 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - ILLEGAL GO\) )Tj -0.8664 -1.8444 TD -0 Tc -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -( encountered when not in a )Tj -/TT8 1 Tf -12.3301 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --18.5973 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - MULTIPLY DEFINED TAG\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -0.0367 Tw -[( is a )]TJ -/TT8 1 Tf -2.0748 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -[( label that is defined more than once in a single )]TJ -/TT8 1 Tf -21.4424 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -[(. The second definition)]TJ --29.5182 -1.2889 TD -0 Tw -(is ignored.)Tj -/TT8 1 Tf --2.6667 -2.2667 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - UNDEFINED TAG\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -( is a )Tj -/TT8 1 Tf -1.9648 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -( label that is referenced but not defined in a )Tj -/TT8 1 Tf -19.4346 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --30.0671 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT8 1 Tf -1.8003 0 TD --0.0001 Tc -0.0001 Tw -( - NOT A BINDABLE VARIABLE\) )Tj -/TT17 1 Tf -0.2663 -1.8444 TD -0 Tc -0 Tw -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, or else not a literal atom.)Tj -/TT8 1 Tf --8.5822 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAL)Tj -/TT8 1 Tf -1.8003 0 TD --0.0001 Tc -0.0001 Tw -( -- BAD PROG BINDING\) )Tj -/TT6 1 Tf --1.784 -1.8444 TD -0 Tc -0 Tw -(Occurs when there is a prog binding of the form )Tj -/TT8 1 Tf -21.5361 0 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(VAR)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAL)Tj -1.8035 -0.2222 TD -(1)Tj -/TT19 1 Tf -0.6 0.2222 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(VAL)Tj -1.7997 -0.2222 TD -(N)Tj -/TT8 1 Tf -0.6 0.2222 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --34.5568 -2.5556 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - MULTIPLY DEFINED TAG, LAP\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -0.0144 Tw -[( is a label that was encountered twice during the second pass of the compilation. If this)]TJ --1.2002 -1.2889 TD -0.08 Tw -(error occurs with no indication of a multiply defined tag during pass one, the tag is in a)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(LAP)Tj -/TT6 1 Tf -1.8003 0 TD -( macro.)Tj -/TT8 1 Tf --4.467 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - UNDEFINED TAG, LAP\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -0.0756 Tw -[( is a label that is referenced during the second pass of compilation and is not defined.)]TJ -/TT8 1 Tf --1.2002 -1.2889 TD -0 Tw -(LAP)Tj -/TT6 1 Tf -1.8003 0 TD -( treats )Tj -/TT17 1 Tf -2.9502 0 TD -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -( as though it were a )Tj -/TT8 1 Tf -8.9233 0 TD -(COREVAL)Tj -/TT6 1 Tf -4.2007 0 TD -(, and continues the compilation.)Tj -/TT8 1 Tf --21.7414 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - MULTIPLY DEFINED TAG, ASSEMBLE\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -( is a label that is defined more than once in an assemble form. )Tj -/TT8 1 Tf --3.8669 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(TG)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - UNDEFINED TAG, ASSEMBLE\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(TG)Tj -/TT6 1 Tf -1.2002 0 TD -( is a label that is referenced but not defined in an assemble form.)Tj -/TT8 1 Tf --3.8669 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(OP)Tj -/TT8 1 Tf -1.2002 0 TD --0.0001 Tc -0.0001 Tw -( - OPCODE? - ASSEMBLE\) )Tj -/TT17 1 Tf -0.8664 -1.8444 TD -0 Tc -0 Tw -(OP)Tj -/TT6 1 Tf -1.2002 0 TD -( appears as )Tj -/TT8 1 Tf -5.1738 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of an assemble statement, and is illegal.)Tj -/TT8 1 Tf --10.841 -2.3333 TD -(\(NO BINARY CODE GENERATED OR LOADED FOR )Tj -/TT17 1 Tf -24.0039 0 TD -(FN)Tj -/TT8 1 Tf -1.1961 0 TD -(\) )Tj -/TT6 1 Tf --22.5333 -1.8444 TD -0.1989 Tw -(A previous error condition was sufficiently serious that binary code for )Tj -/TT17 1 Tf -33.886 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1989 Tw -[( cannot be)]TJ --35.0862 -1.2889 TD -0 Tw -(loaded without causing an error.)Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT17 20 0 R -/TT19 21 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -86 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -87 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBJGOB+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 88 0 R ->> -endobj -88 0 obj -<< -/Filter /FlateDecode -/Length 20106 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8K壂 S8-r}`flhH3iDkbJiJ)HIClQ -Q)@z&@?ޙ߻܆/'>]X܅s&}|ߕ)pBA#0i3QX4x;˗!Pd(^ivǷa{(*CKX7ǐT ܹv?6~n="lC3]ZmGc $w\behjh -`=G(ɸxLzkEy~[/AqSTлo PG\KZVbr\+Pۅ/YKNn'G\FrNP nJ,wt\WH<O2n"̄&I#釡׌3dOpgaqp_IH 0 @*>1e}JO$gݏq2$}tLGWz -JɌ~ɾ`ꙛ&2d;19Ww.cO@<'F/r6]+6;HZ~$sTU%Dcf~`bm|%6Ƨl\j2۸ƕ66qO6u6gm`m97/8$OqCb/ -50O%PMbHWLT!5)!t5sg@K_rU%p7L77F\ җ%EcnH52鲊UU>*-*[ -)h #@1nM$4SkWLg:*vOuP-B M!.P"muŃ.P4 ?x8$;Ei*:RkM%[$v/ݾRU)Gm̄HpzkI,K{=TaaT=ьv93YYiPEVh'ljQW}LM5th2Hhci!9Ӑ\Q"]~WX+A+ijXJj/?ZY ZEg7]8a00rv bg;)+$vmЯ`9e,^N3,?͔-MNeisi4ZNOK-9k5]o HߓDFOe!Dl3~d{{3Q3ޔ&?My4rD"4yǘ%eG" \";S2WeW7ʖVO3q/FVnyOn~+5{ f+/M .mv rAlɺK2ƜԱ|KvXʲbੑKX)UOF.JIv rT!5eװR%3Z)I)V#3Y-\T ;]ߵ?%{ڥ+b+ )!gb[Z'N-悔Rw#g\"xG';3.o7< K)1\ Cz2eey_;YU^5% rp r }֕gOym2Qȧu-m'8KϹ) -o[!+eYVWE{ث131>EaWȃ.Q-3x6i#9utqˇwᄡG;vNcUslf _K;]̬4 0w$[Gab.XQ.# %ҮIԺhZJPCHB(R6Cet(`" t:t[a=wI }u~ޏ;K]?;sު\$)3`JѢ*$q7.{='2#Bł܂WYG,ݭMf6 -KTѩ9`aZhK/,ٮق0R9u^Vc@"#92F1xQ&|w4xCG$8WJFhdqpXխL)_Ãi3\nSܙfJ0=^$ cUBFږ.vyNȧTM ԇLءVZ?~,nRCFŅYV8WnCG}~S@P}@-! -PI`:b|OZѹXnPɳT9T]٪4IFd]{fuKKj\=?p u˺Ogit7){r]X:gSݭjwU9Ҫu~);?SOryTYvAS%dtډy\/wo Cg,sJGp9 CbK徚=_oTC-[1O9ՐK -ϣvU-!cRYگ@w*@:Ki9TYl;tvmh? 7QI2Mtܱ9fK)Pp2ʡ|H1_/k驘d wka`Knr]%@Dg)E ֈ{#r[4˃o77N*)6H rmʛvH-u` GFw{QH;a1ѣQQg,IF2Cb)Ҍ~ [g[j*R.!%K?Y bTb$6Ȩ>\p0;amFXElN -+axLI0F>/gc02`4A+^ Spe8y)%dOj3d%yh$D^!-d'y#oϤ#Ӥ\ UJڨP7CQt}V%>GWhn[諴Eߣ]z~AAh?M03dc0eTVf0?{-`Kl5gdCCvfv]arn>OSOx?ŗov?;a~SG%~G?&j22LX'n*|?A!HPg0bZ@qpXQ3CQT Xa482RwZf8݊2 cLj"VG}X#& -ɚW2 Yt?X~' -oP%%i0HR+4b ݒ&c6S+Q'b]vdQEτ1,װc?`cEpՌިd3A> sШd -8eݎg3-G{})f2Ͷ L乑m;-ΡZRU_w3DKP)ji7Zraڭ-BesK-$IY8Dp]]i>s ȭU'npZK;~jkɒ^_RKD>4{GK{yѥhk꺺bR%8>:D/lI'F`|6q.眤<m:(5×Be+HI[uNPv#'Nr-dnV(q Nti4[`HAus{lP~i[Yݽ}ػ;na5G't%W߶߶lۺ[_~bYal `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|(W4<e.ąE>faru&g N8jv_b[LxOfY*!gEiPSzl L pkAE_  ,ώtnW>M ]QiYc*Z*n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~}tlt\nEb;aVd1tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWq_ZafUdŷ@y.%ؔ[Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:.I"[,W~ˤ=Y_@d|ZXY@Vo47 PK9tev|q+ Y4c4; Y2`YX gLqB%ASJ؊hݏ[Z,ZҖ%8 ̂jԍRK¸2ٸ瘱?%UJ9C':g*.?.ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStVRKAİXk== x^.wwR9sߚq?W?NhN-:zTDw!_hG,h)cxz}GGVWAhSdicEk%`еdA"mψԒn^1v缴/y]4|ˊ^ox6g@EV4 @3h UFF;b|thƖorz̲[Bn+/LkI̯/^Gދaa4"$wQ eIp>}$XhNqUblfqBҡ>r[m)1x| u(8GTA"r wj;-A^7-W^-)AyjŪfϽ^Ww[ =x -n:Y,Š ,}*:,aCpx>Mz<4Vc|肽 DE8 -'U8 _ 'x7`@ȋEu5/{h# Ao%tq)^b7f~ -wo^<'?opS*IYIVH|7Mr/q?~;jۅ2oEFE-D*~v`32JMS# lt! -$2jZLFcDg21iI;6bD^Ͻ,v={w}.*WTCP jP]V!5T;շwգjz^~^VTMZ46AM֦kOi3HxY#{ T8q1 :&VQM%VMQ -6aNlGh1ĎTj;@?):FZ[VicM^c9\Z-JQl0=|@'D1RP 7~O`n&a 諈 -H([A'N1BNqG,B@qVPGAë-uEei5pSfXǦ8!c8MQ k.|;$wFv.=g|_f4)^w$d-DB3Cِgt75uM!*y8 vХYcBF6$7׹Fkk)}⽰!H{\ 'd @ouv۳I ug"0aH\[}A*- 53d HƗh,JnZ}ė}6D;ELz3IM >Pd䍵݁޵=%r s@c/isąuH#5F#"9:ni"87Jkï.")]H&Hz5nO[xohp.Ԧs -]yd7veWakй6PIÍDvjBQ&KZlx"}{޾C/_g+3 -PKyr+$v<v޵c[ؙ*t:[vsݹPǞglO|@X Zu+fdwZWG<Wˌ8`1k2V5/ۗ|`NnoX󆥷[H|q8:\!K$-$.=+}]bL$нa_M\NjsOWLH"is27dep $_X^Qz x] 4V1c]j3/`K$Aa}gQ Pz$B0G!% : bTW^,µ`0p|:zssA̓)3vld'^`TVgN^t`wM3绺ϲNd.?`n9l*͞H'yӌ|ۗ3,۽z ΁\bG:'fnV!r1clC${8;gg -FMx!פȧFlۄ Ƕ!-L=wsQo,O"-~4$A۪Єump{oLg7I0G۸%W =To/0Džu Ố QM ȂȪrX(BfU" kx -&dX mWI)|_ M /*2YCjȫdyCz>9M>"g?ɿEFL -Qc7 d:N rZIUt nv#K?=M~z!"KP2]ɖ̬YR,CvVDF 9ZҡA9t)ǕS(+5dj5+s0'sxļƳ {l -KgY&b?bAfv<R(y K"wBIU]B̗z,[= +"v, 7ra%r( C$ {\ۄZ $| U-D8Edm+US6P,XgِHwXرE>HR5KUo Xjъa!Ue)4\Q.ʼ)x_m3,(.2_[nJTVʺv< }m{"ώۖѣfB~okh*H9?I4YwdKn _%oߘ_X6dj0dawZC'3RǩcY58vЎ]#{i8~vN~;"&dJS -_#|8{mv/6!F34QK@IH6$bM?2NA*#r4CMdZpv&dD;HE%;{ߟyB=OnX@o7ՠ/ŹB pdc"""Ҍ)eu9..3rwMgIEaXuP״yv%׿YC5sfh[vNK*Zn_a濱i|S 5z9 {nuw}C.,vC=Q7%mg@>64k&[UYHn>)[l:tρùUu; VV[J۪D'o<;0׎.lуaw?s-CWK7svT[<}MUHhϼ eivnC -[ӭh+or{~$_Vi5E\]4⨉6~o}oyi Zַݰ_={OxݵF9(;{n~ݮs튖n(-BMoiD5oNo>d - q}gHJ>cwI^qQd\(GPIE,1"vXNDUzBL$ƕљ2K^_w|-8'iTlvmfYȤDC Y#,})ȃjB(0|(E=Uzj1TMnA=X+NX kPO[`;ڠ~A8G9T]Eu[އ8H6U UE*TVu,&[n%#܅j=D&LZȃ!H7y%A{r>z$$&7y'͠~K/G}UH~Vi~+tD4B[GhғO5teTZ|T[X5e7zvk`k:\Ml3*&5jGՉ -c'X7;Z,JjXJ >(F+Jݍ Tqz㼱gM)]Ev[2\! -͝ϳEKi-%Ra+)c\ -[)؂Ue3y Pqif{JʺhG2T mSAO&)Qb3DAc.[C /+W &ǯYJPvҰ, I<E+Lxlca b `!iYl#BNbS,?O[A;y-o2g}LcA=KA<1&+cJՂl{4өxM)0(]'loFEӿ22 yc@:X'Avʹ[`v{^; j?8~x/!)<(Q'oLaOlq mEw`Ƙ{^PU"|rfF` 0g$ÍrK aW YBM,aamUmp 68-F{rnkc*5lK"<ߐt_ïp^6c,gxYsckf+YʴЧ܋qz GK} =5e1Yle1 yԹ,nzS]:XJ7-X,!z,bEٳGY%JrnX bټ0WwVaPUMd!Q}x2S+JXS^ip3hnc.٪VvYfֿɯ82nwڷ& Q"#%qTvCˆ< RIK_0|!_WH4$$^{J&m,g JyQk'm@H̃|;;:)p|lvdn|:9w--̲-M,#Yxt%Q9hhY0KYCZªp,]=.rџт Ư^Թ5ʳf!1fPUk|MϾysƵhCMw<x2ZpGpݲTicK<ʚşcМ}Û-?zqe %,fά:Y,MDVs<Е¡5眣;Έ[Lm*׹*8qWWo6=C&> À%3 Vmm0G[xKxD-p29ٜ79]Xv"=YEd1/bRѾ /A& " -=e:!"%58dj]dڹ5xc'sF-&օlRX%#f-0 %*lu1LMS,?uQżS`$BmU4(vx h)וֹ+܃LN,y6ia -fE9,pTw|GBw ǩ 6h95P" R_Y8NN!j;WV{uٍOC:dыZh+9-ZxfOxٳp{9̎->.~ 8+XXM Ż-&ʰBu'YZ jf ,Uho1+b2_hq줜:2DmuT7L~ -a/ބƐ5"#@"]hMx}yx*p;[ *5,"^"Y~-L44Y5x`jh10nZN׏dWRŚ^sˏ ˚2pbax[_OCT_f5 MT`uQ}1,P gѫ/lKw`b;ˉ6]-O+J0O_Ǣ:^ǯ/P݉,~I -Kk ׊fA2q"=.WGLGo8L>b~v6YA hYwRkᦊOYEAuAM퓅FWwyTAHe-X~06PBȳ!üll`j|JrCoiF5*vf[hvY[qtu?D3mRga>ڛ)k2G&c~ MGWwg mc=ۏHV +h#iۏhPhYeNdӡf&#d(^ 18RzH y~뿗Sx/}6+ŀ (B24Hܗ{*}edݣlءhtap͇fySVe24[lqFs=8> S"Xbh4-_flow)pm1,uh;65L>,EJ}}š{BK,v\Suc\, &!{QMl~(gq?Mnr+FW;M,OnN CCQ:4| I(`ZY^o[1Xqb`w ![fbe5ʈ2|Z9|Ir^ywKO^-PQg}¢(a,B5E۲b_+5 b]xh -k<410OkGqTԪ1&>cm|cE.N5csg柹ߢf'*`X_R2syl!gzmgmcv]ea,Cy"|gq7M|?s ~ߖ¥ޒ&Y8X*UHF-itD:/]l49KvSry^n' -S"ʏ\e2[,VV)*(;0ݫV('ʿKJTU5&^:Hf5@_OJLF™D^D%*-PBcU…^$L&0P#$*H{c=DVa(bU(P#tPb@K#&ga8C,& >a4EOA~T4TFnF`TQĬGl75CN"H F*4 WE%.`U QB}Aԉ8!ہ M\-vH׃ߠ6Oo,ԃ+ b/>,z,me~+ ;Az]۫{uVZZvݾVTցu'<7Wzֹ[;"G^!/гcc:KuxqI #K?_KsJw++ }Ҭ-yK[~m^ɲ̟,N6^幧Sge$jǎ --_+ jeu5 $7ovTӵQ0ҽ3O\,[|,:E~kD2gҙ]ӌ U7Ϛ ^{ZKCi%Sǻל̯~g'Q -Նɵ?ȯX<_ϵ^,-{wRq5ub VJ[|^wUZo!KݢyyGĥֶ4"s/- JB!^kίNlCܔ-:K4w@`3! JKˉW &dWqXqg튾֭ 4n_}tsrLӪڤ#qT-41VYu*Ϻr> 1tHk/㾜nX"+$w2amLTͣve\uX`ܗ;93,)Hƞ,~eap7ˢ3ϕ{3%pz `?|t (z(b!C$|j0)?l y01ߚ Tnx0 kPsކfbv8 0;C;t TxFD$ē$BOP2d;%c2L&Ed)%ee2TU, Md5Yy\OdKr|y%r kJg^85hf4a4i9it:c9c ]JUtEn>.%ӣ#z~F/ޠF3cɢX֏Ų8fa,='PQ3CЇʧ(0DD9eh-F%R=r}%L#6b򨣊Qqr[^A )8ꖇ LP˔.3YWF^]paW4 - Gu!]+WV/QVIAar dIB(q|~@U3hRgv,Mͨh>p+4 pXXI g+N8q.D( "Љ¬5pNpanbf@1(3@f;̛7־\xك/޾쁏6ظvPyk_MK31<<e#v -Pv5zP(0sMw! wk].vq`䦱n 97r@~6xƒk. .Ҍ~-%dKʳ/rb}B^B}*s~Rl jʍTMwn@,g?–\]W._} -G۝ۻPO}}Oq۽a}gt|iu/|u5&B< -%cF6IWVjDoPkjmFgir8ݧ80@ϟf:yqTyVJk۔pjlt&L8=^/=;R<4ܮz&wDN1>m1ںo -v 9xی+3L{ru7/_]gJp]P}`Axޞ_ZY~v6C/2Nvsjѕ,;?sM^ufʪxe?>aGy|x&Fݞ'ϝUv:u&yR݆%ّntp,CΓU9s&]|tny}Zn:VRV2-{&_Ǚ5wXnn]YU^TX~7*gD]Je9>llcLٜ[׎ikҼˡK%foX<9|+~lXT9䱒WG&|UDy9t犄ɽR 뿸%t 94*J/;P83J(UKKoPW8%IuO(Ҧq/yB/'m7 -%7}Q'Oi:w`tUFq4Ƒ>|ADI/ȟiBr뛣\rGgiWeI -YIԠÐ%d $Aj3 7| >[>xl&.w ߦ[GR-rB{7`#x^^//G.R/Νj\gМ|OQ +'%c<VJP #^Fr*#G.)'w䲸JꮠDfli筶DG}P^[99aiQ"3ES4˻Ѧ,?C@'wAɳGC LnY[yMdڂ֛ami=\Zp zXҿ`s%JWNi9tk1K -bh m{g! Yi16f]lda.ɢylUA:Q"3GFDhWpF99ؙZĬgX::?62#B#4JOCI:rc14z. LS& N'I8p,wc{ 9?(Ho1[p8 m#Bo@:":r8h0!CA@̭esBA`4L#2 "KN^ԍ;^&=G2y~h wY:'٨gDlQй {Sᷰb+sA4 -Y6VPuBt9B@U&Q3dPRg O'6{_~9̏$i\)1yؕNvt{qM_N -o}?ּIr?N!r0' a9á:zAğX3fpP|vQMp">?'źN&WFSTjW{ҟ=_lp38RԖ!wka]u|`A!º+F"Yi{ZR+Pomla~ۚښfg9Py(7Y*dMx?*Z7[SwguOaCH:sV^Di#FSk* JkVv2Z7ZS f+IFU³Qb9-zq> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 80 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 117 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 0 556 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 0 611 0 278 0 556 278 889 611 611 -611 0 389 556 333 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 81 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 0 500 500 0 0 250 250 0 0 0 0 -0 778 611 709 774 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 82 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 600 0 0 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 0 0 0 600 0 0 600 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 600 600 0 0 -0 600 0 600 0 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 83 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -0 600 600 0 0 0 0 0 0 0 600 0 0 0 0 600 -0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 84 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 556 0 0 0 0 0 0 0 778 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 85 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 -0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 86 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBJGOB+Symbol -/Encoding /Identity-H -/DescendantFonts [ 92 0 R ] -/ToUnicode 93 0 R ->> -endobj -92 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBJGOB+Symbol -/FontDescriptor 87 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -20 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 89 0 R ->> -endobj -21 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 80 -/Widths [250 0 0 0 0 0 0 0 333 0 0 0 250 0 250 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 -611 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 90 0 R ->> -endobj -72 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 91 0 R ->> -endobj -93 0 obj -<< -/Filter /FlateDecode -/Length 227 ->> -stream -HTP=O0 +<c@-@DiC=Ibg?S|F0#\,G@*pަh'gq- 6 34 9$xJɇ1Sn' h Əg/fB7oAU,%dˆq~J?Mu![l$5ڽt);mٕ(;!~82<#|m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -25 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 27 0 R -/Contents 26 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -94 0 obj -<< -/S /D ->> -endobj -95 0 obj -<< -/Nums [0 94 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 17 0 R 22 0 R 25 0 R 28 0 R 31 0 R 34 0 R 37 0 R 40 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [43 0 R 48 0 R 51 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R 73 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -79 0 obj -<< -/Type /Pages -/Kids [76 0 R] -/Count 1 -/Parent 46 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [11 0 R 47 0 R 79 0 R ] -/Count 21 -/MediaBox [0 0 612 792] ->> -endobj -96 0 obj -<< -/CreationDate (D:20210202102700-06'00') -/ModDate (D:20210202102700-06'00') -/Producer (Apple pstopdf) ->> -endobj -97 0 obj -<< -/Type /Catalog -/Pages 46 0 R -/PageLabels 95 0 R ->> -endobj -xref -0 98 -0000000000 65535 f -0000169623 00000 n -0000000016 00000 n -0000005599 00000 n -0000165224 00000 n -0000165435 00000 n -0000165859 00000 n -0000166396 00000 n -0000166921 00000 n -0000167258 00000 n -0000142692 00000 n -0000171452 00000 n -0000169704 00000 n -0000005752 00000 n -0000010690 00000 n -0000167663 00000 n -0000168039 00000 n -0000169788 00000 n -0000010859 00000 n -0000017294 00000 n -0000168394 00000 n -0000168868 00000 n -0000169872 00000 n -0000017474 00000 n -0000023376 00000 n -0000169956 00000 n -0000023557 00000 n -0000028554 00000 n -0000170040 00000 n -0000028685 00000 n -0000036539 00000 n -0000170124 00000 n -0000036732 00000 n -0000042832 00000 n -0000170208 00000 n -0000043025 00000 n -0000049214 00000 n -0000170292 00000 n -0000049407 00000 n -0000055640 00000 n -0000170376 00000 n -0000055795 00000 n -0000062742 00000 n -0000170460 00000 n -0000062935 00000 n -0000069098 00000 n -0000171801 00000 n -0000171589 00000 n -0000170544 00000 n -0000069253 00000 n -0000077325 00000 n -0000170628 00000 n -0000077507 00000 n -0000086201 00000 n -0000170712 00000 n -0000086383 00000 n -0000093493 00000 n -0000170796 00000 n -0000093663 00000 n -0000101266 00000 n -0000170880 00000 n -0000101434 00000 n -0000108244 00000 n -0000170964 00000 n -0000108426 00000 n -0000114454 00000 n -0000171048 00000 n -0000114621 00000 n -0000123078 00000 n -0000171132 00000 n -0000123271 00000 n -0000130691 00000 n -0000169149 00000 n -0000171216 00000 n -0000130897 00000 n -0000137465 00000 n -0000171300 00000 n -0000137633 00000 n -0000142547 00000 n -0000171727 00000 n -0000142833 00000 n -0000143030 00000 n -0000143236 00000 n -0000143436 00000 n -0000143627 00000 n -0000143829 00000 n -0000144032 00000 n -0000144227 00000 n -0000144417 00000 n -0000164613 00000 n -0000164814 00000 n -0000165019 00000 n -0000168182 00000 n -0000169323 00000 n -0000171384 00000 n -0000171412 00000 n -0000171900 00000 n -0000172023 00000 n -trailer -<< -/Size 98 -/Root 97 0 R -/Info 96 0 R -/ID [] ->> -startxref -172093 -%%EOF diff --git a/docs/medley-irm/19-DWIM.pdf b/docs/medley-irm/19-DWIM.pdf deleted file mode 100644 index a1f159d0..00000000 --- a/docs/medley-irm/19-DWIM.pdf +++ /dev/null @@ -1,11689 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5218 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(19. DWIM)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -510.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.1433 Tw -(A surprisingly large percentage of the errors made by Interlisp users are of the type that could be)Tj -0 -1.2222 TD -0.04 Tw -(corrected by another Lisp programmer without any information about the purpose of the program or)Tj -T* -0.1489 Tw -[(expression in question, e.g., misspellings, certain kinds of parentheses errors, etc. To correct these)]TJ -T* -0.0744 Tw -(types of errors we have implemented in Medley a )Tj -/TT10 1 Tf -22.8975 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0744 Tw -[( facility, short for Do-What-I-Mean. )]TJ -/TT10 1 Tf -16.5966 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0744 Tw -[( is)]TJ --44.2949 -1.2889 TD -0.0056 Tw -[(called automatically whenever an error occurs in the evaluation of an Interlisp expression. \(Currently,)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -[( only operates on unbound atoms and undefined function errors.\) )]TJ -/TT10 1 Tf -30.0749 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -[( then proceeds to try to)]TJ --34.8757 -1.2889 TD -0.1278 Tw -(correct the mistake using the current context of computation plus information about what you had)Tj -0 -1.2222 TD -0.0022 Tw -(previously been doing \(and what mistakes you had been making\) as guides to the remedy of the error.)Tj -T* -0 Tw -(If )Tj -/TT10 1 Tf -1.0277 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( is able to make the correction, the computation continues as though no error had occurred.)]TJ --3.4281 -1.2889 TD -0.2089 Tw -(Otherwise, the procedure is the same as though )Tj -/TT10 1 Tf -22.9641 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2089 Tw -[( had not intervened: a break occurs, or an)]TJ --25.3645 -1.2889 TD -0.1378 Tw -(unwind to the last )Tj -/TT10 1 Tf -8.8543 0 TD -0 Tw -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -0.1378 Tw -[( \(see Chapter 14\). The following protocol illustrates the operation of)]TJ -/TT10 1 Tf --13.6551 -1.2889 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --2.4004 -2.9556 TD -(For example, suppose you define the factorial function )Tj -/TT10 1 Tf -24.374 0 TD -(\(FACT N)Tj -/TT8 1 Tf -4.2007 0 TD -(\) as follows:)Tj -/TT11 1 Tf --20.5747 -1.8444 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(DEFINEQ\(\(FACT \(LAMBDA \(N\) \(COND)Tj --0.9868 -1 TD -(\(\(ZEROP N0 1\) \(\(T \(ITIMS N \(FACCT 9SUB1 N])Tj -T* -(\(FACT\))Tj -/TT11 1 Tf -0 -1.6222 TD -<0040>Tj -/TT8 1 Tf --8 -2.6667 TD -0.0511 Tw -(Note that the definition of )Tj -/TT10 1 Tf -12.0202 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( contains several mistakes: )]TJ -/TT10 1 Tf -12.466 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.0511 Tw -[( and )]TJ -/TT10 1 Tf -2.2951 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( have been misspelled;)]TJ --35.1827 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6928 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -[( in )]TJ -/TT10 1 Tf -1.4842 0 TD -0 Tw -(N0)Tj -/TT8 1 Tf -1.2002 0 TD -0.0556 Tw -[( was intended to be a right parenthesis, but the Shift key was not pressed; similarly, the )]TJ -/TT10 1 Tf -39.7526 0 TD -0 Tw -(9)Tj -/TT8 1 Tf --44.7298 -1.2889 TD -(in )Tj -/TT10 1 Tf -1.1397 0 TD -(9SUB1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0167 Tw -[( was intended to be a left parenthesis; and finally, there is an extra left parenthesis in front of)]TJ --4.1402 -1.2889 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6372 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( that begins the final clause in the conditional.)Tj -/TT11 1 Tf -3.096 -2.9556 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(PRETTYPRNT\(\(FACCT])Tj -3.0132 -1 TD -(=PRETTYPRINT)Tj -T* -(=FACT)Tj -0 -2 TD -(\(FACT)Tj -0 -1 TD -( [LAMBDA \(N\))Tj -T* -( \(COND)Tj -T* -( \(\(ZEROP N0 1\))Tj -T* -( \(\(T \(ITIMS N \(FACCT 9SUB1 N]\))Tj -T* -(\(FACT\))Tj -/TT11 1 Tf --4 -2.7333 TD -<0040>Tj -/TT8 1 Tf --5.3333 -2.6667 TD -0.0233 Tw -(After defining )Tj -/TT10 1 Tf -6.5828 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -(, you want to look at its definition using )Tj -/TT10 1 Tf -18.1236 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0233 Tw -(, which you unfortunately)Tj --33.7078 -1.2889 TD -0.0611 Tw -[(misspell. Since there is no function )]TJ -/TT10 1 Tf -16.2432 0 TD -0 Tw -(PRETTYPRNT)Tj -/TT8 1 Tf -6.001 0 TD -0.0611 Tw -[( in the system, an undefined function error occurs,)]TJ --22.2442 -1.2889 TD -0 Tw -(and )Tj -/TT10 1 Tf -2.0129 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( is called. )]TJ -/TT10 1 Tf -4.8606 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( invokes its spelling corrector, which searches a list of functions frequently)]TJ --11.6742 -1.2889 TD -0.0344 Tw -(used \(by )Tj -/TT13 1 Tf -4.128 0 TD -0 Tw -(this)Tj -/TT8 1 Tf -1.5 0 TD -0.0344 Tw -[( user\) for the best possible match. Finding one that is extremely close, )]TJ -/TT10 1 Tf -31.6165 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( proceeds on)]TJ --39.6449 -1.2889 TD -0 Tw -(the assumption that )Tj -/TT10 1 Tf -9.0513 0 TD -(PRETTYPRNT)Tj -/TT8 1 Tf -6.001 0 TD -( meant )Tj -/TT10 1 Tf -3.27 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(, notifies you of this, and calls )Tj -/TT10 1 Tf -13.3716 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 4444 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.01 Tw -(At this point, )Tj -/TT10 1 Tf -6.1032 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.01 Tw -[( would normally print )]TJ -/TT10 1 Tf -10.164 0 TD -0.0244 Tw -(\(FACCT NOT PRINTABLE\))Tj -/TT8 1 Tf -12.6509 0 TD -0.01 Tw -[( and exit, since )]TJ -/TT10 1 Tf -6.8149 0 TD -0 Tw -(FACCT)Tj -/TT8 1 Tf --42.3342 -1.2889 TD -0.0011 Tw -(has no definition. Note that this is )Tj -/TT13 1 Tf -15.4791 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0011 Tw -( an Interlisp error condition, so that )Tj -/TT10 1 Tf -15.9487 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0011 Tw -( would not be called as)Tj --35.1612 -1.2889 TD -0 Tw -(described above. However, it is obviously not what you )Tj -/TT13 1 Tf -25.168 0 TD -(meant)Tj -/TT8 1 Tf -2.5 0 TD -(.)Tj --27.668 -2.8889 TD -0.0111 Tw -(This sort of mistake is corrected by having )Tj -/TT10 1 Tf -19.0464 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0111 Tw -[( itself explicitly invoke the spelling corrector)]TJ --25.6475 -1.2889 TD -0.1211 Tw -(portion of )Tj -/TT10 1 Tf -4.9082 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1211 Tw -[( whenever given a function with no )]TJ -/TT10 1 Tf -16.8341 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1211 Tw -[( definition. Thus, with the aid of DWIM)]TJ -/TT10 1 Tf --26.5431 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.1767 Tw -[( is able to determine that you want to see the definition of the function )]TJ -/TT10 1 Tf -33.963 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1767 Tw -(, and)Tj --42.9645 -1.2889 TD -0 Tw -(proceeds accordingly.)Tj -/TT11 1 Tf -5.3333 -2.8889 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(FACT\(3])Tj -3.0132 -1 TD -(N0 [IN FACT] -> N \) ? YES)Tj -T* -([IN FACT] \(COND -- \(\(T --\)\)\) ->)Tj -T* -( \(COND -- \(T --\)\))Tj -T* -(ITIMS [IN FACT] -> ITIMES)Tj -T* -(FACCT [IN FACT] -> FACT)Tj -T* -(9SUB1 [IN FACT] -> \( SUB1 ? YES)Tj -T* -(6)Tj -/TT11 1 Tf --4 -2.7333 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(PP FACT)Tj -3.0132 -1 TD -(\(FACT)Tj -T* -( [LAMBDA \(N\))Tj -T* -( \(COND)Tj -T* -( \(\(ZEROP N\))Tj -T* -( 1\))Tj -T* -( \(T \(ITIMES N \(FACT \(SUB1 N]\))Tj -T* -(FACT)Tj -/TT11 1 Tf --4 -2.7333 TD -<0040>Tj -/TT8 1 Tf --5.3333 -2.6667 TD -0.1067 Tw -(You now call )Tj -/TT10 1 Tf -6.3737 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[(. During its execution, five errors occur, and )]TJ -/TT10 1 Tf -20.8946 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[( is called five times. At each)]TJ --32.0691 -1.2889 TD -0.0611 Tw -(point, the error is corrected, a message is printed describing the action taken, and the computation is)Tj -0 -1.2222 TD -0.0567 Tw -[(allowed to continue as if no error had occurred. Following the last correction, )]TJ -/TT10 1 Tf -35.4345 0 TD -0 Tw -(6)Tj -/TT8 1 Tf -0.6001 0 TD -0.0567 Tw -[( is printed, the value)]TJ --36.0345 -1.2889 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.1289 0 TD -(\(FACT 3\))Tj -/TT8 1 Tf -4.8008 0 TD -(. Finally, you prettyprint the new, now correct, definition of )Tj -/TT10 1 Tf -26.8853 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --35.2153 -2.9556 TD -0.0933 Tw -(In this particular example, you were operating in )Tj -/TT10 1 Tf -22.6754 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0933 Tw -[( mode, which gives )]TJ -/TT10 1 Tf -9.1897 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( carte blanche)]TJ --39.0663 -1.2889 TD -0.0111 Tw -[(for most corrections. You can also operate in )]TJ -/TT10 1 Tf -20.226 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0111 Tw -[( mode, in which case )]TJ -/TT10 1 Tf -9.5267 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( will inform you of)]TJ --36.9539 -1.2889 TD -0.0344 Tw -[(intended corrections before they are made, and allow you to approve or disapprove of them. If )]TJ -/TT10 1 Tf -42.9347 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --42.9347 -1.2889 TD -(was operating in )Tj -/TT10 1 Tf -7.6572 0 TD -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -( mode in the example above, it would proceed as follows:)Tj -/TT11 1 Tf --7.1247 -2.9556 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(FACT\(3\))Tj -3.0132 -1 TD -(N0 [IN FACT] -> N \) ? YES)Tj -T* -(U.D.F. T [IN FACT] FIX? YES)Tj -T* -([IN FACT] \(COND -- \(\(T --\)\)\) ->)Tj -T* -( \(COND -- \(T --\)\))Tj -T* -(ITIMS [IN FACT] -> ITIMES ? ...YES)Tj -T* -(FACCT [IN FACT] -> FACT ? ...YES)Tj -T* -(9SUB1 [IN FACT] -> \( SUB1 ? NO)Tj -T* -(U.B.A.)Tj -T* -(\(9SUB1 BROKEN\))Tj -T* -(:)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -17 0 obj -<< -/Length 7499 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-3)Tj -/TT8 1 Tf --42.8333 60.6156 TD -0.2589 Tw -(For most corrections, if you do not respond in a specified interval of time, )Tj -/TT10 1 Tf -36.3622 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2589 Tw -[( automatically)]TJ --38.7626 -1.2889 TD -0.19 Tw -[(proceeds with the correction, so that you need intervene only when you do not approve. In the)]TJ -0 -1.2222 TD -0.01 Tw -[(example, you responded to the first, second, and fifth questions; )]TJ -/TT10 1 Tf -28.9484 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.01 Tw -[( responded for you on the third)]TJ --31.3488 -1.2889 TD -0 Tw -(and fourth.)Tj -/TT10 1 Tf -0 -2.8889 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -[( uses )]TJ -/TT10 1 Tf -2.5596 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0633 Tw -[( for its interactions with you \(see Chapter 26\). Whenever an interaction is about)]TJ --9.1607 -1.2889 TD -0.0122 Tw -(to take place and you have typed ahead, )Tj -/TT10 1 Tf -18.1652 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0122 Tw -[( types several bells to warn you to stop typing, then)]TJ --22.3658 -1.2889 TD -0.0422 Tw -[(clears and saves the input buffers, restoring them after the interaction is complete. Thus if you typed)]TJ -0 -1.2222 TD -0.2422 Tw -(ahead before a )Tj -/TT10 1 Tf -7.4337 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2422 Tw -[( interaction, )]TJ -/TT10 1 Tf -5.9967 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2422 Tw -[( will not confuse your type-ahead with the answer to its)]TJ --18.2311 -1.2889 TD -0.0344 Tw -[(question, nor will your type-ahead be lost. The bells are printed by the function )]TJ -/TT10 1 Tf -36.0689 0 TD -0 Tw -(PRINTBELLS)Tj -/TT8 1 Tf -6.001 0 TD -0.0344 Tw -(, which)Tj --42.0699 -1.2889 TD -0 Tw -(can be advised or redefined for specialized applications, e.g. to flash the screen for a display terminal.)Tj -0 -2.8889 TD -0.0011 Tw -(A great deal of effort has gone into making )Tj -/TT10 1 Tf -19.2483 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0011 Tw -( "smart", and experience with a large number of users)Tj --21.6487 -1.2889 TD -0.0089 Tw -(indicates that )Tj -/TT10 1 Tf -6.1999 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( works very well; )]TJ -/TT10 1 Tf -7.9306 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( seldom fails to correct an error you feel it should have, and)]TJ --18.9313 -1.2889 TD -0.0811 Tw -[(almost never mistakenly corrects an error. However, it is important to note that even when )]TJ -/TT10 1 Tf -41.934 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT13 1 Tf -0.3311 0 TD -(is)Tj -/TT8 1 Tf --44.6655 -1.2889 TD -0.1333 Tw -(wrong, no harm is done: since an error had occurred, you would have had to intervene anyway if)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.11 Tw -[( took no action. Thus, if )]TJ -/TT10 1 Tf -11.6567 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.11 Tw -[( mistakenly corrects an error, you simply interrupt or abort the)]TJ --16.4575 -1.2889 TD -0.1711 Tw -(computation, reverse the )Tj -/TT10 1 Tf -11.7643 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1711 Tw -[( change using )]TJ -/TT10 1 Tf -6.8625 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1711 Tw -[( \(see Chapter 13\), and make the correction you)]TJ --23.4275 -1.2889 TD -0.1389 Tw -(would have had to make without )Tj -/TT10 1 Tf -15.8353 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[(. An exception is if )]TJ -/TT10 1 Tf -9.5462 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -(s correction mistakenly caused a)Tj --30.1823 -1.2889 TD -0.1689 Tw -[(destructive computation to be initiated, and information was lost before you could interrupt. We)]TJ -0 -1.2222 TD -0 Tw -(have not yet had such an incident occur.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(DWIM)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 142.0517 312 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 312 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0633 Tw -(Used to enable/disable )Tj -/TT10 1 Tf -10.7427 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -[(. If )]TJ -/TT17 1 Tf -1.8599 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0633 Tw -[( is the symbol )]TJ -/TT10 1 Tf -6.6083 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5633 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -[( is enabled in )]TJ -/TT10 1 Tf -6.3363 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0633 Tw -[( mode,)]TJ --36.9124 -1.2889 TD -0.2444 Tw -(so that )Tj -/TT10 1 Tf -3.693 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2444 Tw -[( will ask you before making corrections. If )]TJ -/TT17 1 Tf -21.2869 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2444 Tw -[( is )]TJ -/TT10 1 Tf -1.7037 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.7444 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2444 Tw -[( is enabled in)]TJ -/TT10 1 Tf --33.4291 -1.2889 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0456 Tw -[( mode, so )]TJ -/TT10 1 Tf -4.6249 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( will make most corrections automatically. If )]TJ -/TT17 1 Tf -20.5168 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0456 Tw -[( is )]TJ -/TT10 1 Tf -1.306 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5456 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( is)]TJ --38.9952 -1.2889 TD -0 Tw -(disabled. Medley initially has )Tj -/TT10 1 Tf -13.5469 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( enabled in )Tj -/TT10 1 Tf -5.1182 0 TD -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -( mode.)Tj -/TT10 1 Tf --25.8662 -2.0667 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( returns )]TJ -/TT10 1 Tf -3.7463 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0211 Tw -[( or )]TJ -/TT10 1 Tf -1.4831 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0211 Tw -(, depending to what mode it has just been put)Tj --19.5528 -1.2889 TD -0 Tw -(into.)Tj --5.3333 -2.8889 TD -0.1878 Tw -[(For corrections to expressions typed in for immediate execution \(typed into )]TJ -/TT10 1 Tf -36.0351 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.1878 Tw -(, Chapter 13\),)Tj -/TT10 1 Tf --39.0356 -1.2889 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -[( always acts as though it were in )]TJ -/TT10 1 Tf -14.7997 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0256 Tw -[( mode, i.e., no approval necessary. For certain types)]TJ --22.0008 -1.2889 TD -0.2722 Tw -(of corrections, e.g., run-on spelling corrections, 9-0 errors, etc., )Tj -/TT10 1 Tf -30.1292 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2722 Tw -[( always acts like it was in)]TJ -/TT10 1 Tf --32.5296 -1.2889 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1544 Tw -[( mode, and asks for approval. In either case, )]TJ -/TT10 1 Tf -21.5005 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1544 Tw -[( always informs you of its action as)]TJ --28.7017 -1.2889 TD -0 Tw -(described below.)Tj -/TT4 1 Tf -10 0 0 10 54 115.66 Tm -(Spelling Correction Protocol)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 112.95 m -510.01 112.95 l -S -BT -/TT8 1 Tf -9 0 0 9 78 91 Tm -0.05 Tw -(One type of error that )Tj -/TT10 1 Tf -10.1328 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.05 Tw -[( can correct is the misspelling of a function or a variable name. When an)]TJ --12.5332 -1.2889 TD -0.1778 Tw -(unbound symbol or undefined function error occurs, )Tj -/TT10 1 Tf -24.8616 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1778 Tw -[( tries to correct the spelling of the bad)]TJ --27.262 -1.2889 TD -0 Tw -(symbol. If a symbol is found whose spelling is "close" to the offender, )Tj -/TT10 1 Tf -31.103 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( proceeds as follows:)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -22 0 obj -<< -/Length 6068 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0622 Tw -(If the correction occurs in the typed-in expression, )Tj -/TT10 1 Tf -22.8845 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0622 Tw -[( prints )]TJ -/TT10 1 Tf -3.2436 0 TD -0 Tw -(=)Tj -/TT17 1 Tf -0.6001 0 TD -(CORRECT-SPELLING)Tj -/TT8 1 Tf -9.6016 0 TD -0.0622 Tw -[( and continues)]TJ --38.7301 -1.2889 TD -0 Tw -(evaluating the expression. For example:)Tj -/TT11 1 Tf -5.3333 -2.8889 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ FOO \(IPLUSS 1 2\)\))Tj -3.0132 -1 TD -(=IPLUS)Tj -T* -(3)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(If the correction does not occur in type-in, DWIM prints)Tj -/TT17 1 Tf -0 -2.8222 TD -(BAD-SPELLING)Tj -/TT10 1 Tf -7.2012 0 TD -( [IN )Tj -/TT17 1 Tf -3.0005 0 TD -(FUNCTION-NAME)Tj -/TT10 1 Tf -7.8013 0 TD -(] -> )Tj -/TT17 1 Tf -3.0005 0 TD -(CORRECT-SPELLING)Tj -/TT8 1 Tf --21.0034 -2.9556 TD -0.2156 Tw -(The appearance of )Tj -/TT10 1 Tf -9.0305 0 TD -0 Tw -(->)Tj -/TT8 1 Tf -1.2002 0 TD -0.2156 Tw -[( is to call attention to the fact that the users function will be or has been)]TJ --10.2307 -1.2889 TD -0 Tw -(changed.)Tj -0 -2.8889 TD -0.0889 Tw -(Then, if )Tj -/TT10 1 Tf -3.8077 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0889 Tw -[( is in )]TJ -/TT10 1 Tf -2.6046 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0889 Tw -[( mode, it prints a carriage return, makes the correction, and continues)]TJ --13.6134 -1.2889 TD -0.1911 Tw -[(the computation. If )]TJ -/TT10 1 Tf -9.7195 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1911 Tw -[( is in )]TJ -/TT10 1 Tf -2.9112 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1911 Tw -[( mode, it prints a few spaces and )]TJ -/TT10 1 Tf -16.2442 0 TD -0 Tw -(?)Tj -/TT8 1 Tf -0.6001 0 TD -0.1911 Tw -[( and then wait for)]TJ --36.6762 -1.2889 TD -0 Tw -(approval. The user then has six options:)Tj -1.9167 -2 TD -[(1.)-666.7(Type )]TJ -/TT10 1 Tf -3.9157 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( types )Tj -/TT10 1 Tf -2.8862 0 TD -(es)Tj -/TT8 1 Tf -1.2002 0 TD -(, and proceeds with the correction.)Tj --11.7526 -2.0667 TD -[(2.)-666.7(Type )]TJ -/TT10 1 Tf -3.9157 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( types )Tj -/TT10 1 Tf -2.8862 0 TD -(o)Tj -/TT8 1 Tf -0.6001 0 TD -(, and does not make the correction.)Tj --11.1525 -2.0667 TD -[(3.)-666.7(Type )]TJ -/TT11 1 Tf -3.989 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.0733 Tw -(. )Tj -/TT10 1 Tf -0.8967 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0733 Tw -[( does not make the correction, and furthermore guarantees that the error)]TJ --6.4724 -1.2889 TD -0 Tw -(will not cause a break.)Tj --1.4167 -2 TD -[(4.)-666.7(Type Control-E. For error correction, this has the same effect as typing )]TJ -/TT10 1 Tf -32.9416 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --33.5417 -2.0667 TD -0.2633 Tw -[(5.)-666.7(Do nothing. In this case )]TJ -/TT10 1 Tf -13.9205 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2633 Tw -[( waits for )]TJ -/TT10 1 Tf -5.1889 0 TD -0 Tw -(DWIMWAIT)Tj -/TT8 1 Tf -4.8008 0 TD -0.2633 Tw -[( seconds, and if you have not)]TJ --24.8939 -1.2889 TD -0 Tw -(responded, )Tj -/TT10 1 Tf -5.2275 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( will type )Tj -/TT10 1 Tf -4.4194 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( followed by the default answer.)Tj --13.8477 -2.0667 TD -0.4478 Tw -(The default on spelling corrections is determined by the value of the variable)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FIXSPELLDEFAULT)Tj -/TT8 1 Tf -9.0015 0 TD -(, whose top level value is initially )Tj -/TT10 1 Tf -15.0151 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --26.0334 -2.0667 TD -0.0689 Tw -[(6.)-666.7(Type space or carriage-return. In this case DWIM will wait indefinitely. This option is)]TJ -1.4167 -1.2222 TD -0.0078 Tw -(intended for those cases where you want to think about your answer, and want to insure)Tj -T* -0 Tw -(that DWIM does not get "impatient" and answer for you.)Tj --3.3333 -2.8889 TD -0.0822 Tw -[(The procedure for spelling correction on other than Interlisp errors is analogous. If the correction is)]TJ -0 -1.2222 TD -0.0178 Tw -(being handled as type-in, )Tj -/TT10 1 Tf -11.5306 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( prints )]TJ -/TT10 1 Tf -3.1547 0 TD -0 Tw -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( followed by the correct spelling, and returns it to the function)]TJ --17.6858 -1.2889 TD -0.1522 Tw -(that called )Tj -/TT10 1 Tf -5.1545 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1522 Tw -[(. Otherwise, )]TJ -/TT10 1 Tf -6.3029 0 TD -0 Tw -(DWIM )Tj -/TT8 1 Tf -3.3649 0 TD -0.1522 Tw -(prints the incorrect spelling, followed by the correct spelling.)Tj --17.2227 -1.2889 TD -0.1078 Tw -(Then, if )Tj -/TT10 1 Tf -3.8454 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( is in )]TJ -/TT10 1 Tf -2.6612 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1078 Tw -[( mode, )]TJ -/TT10 1 Tf -3.4841 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( prints a carriage-return and returns the correct spelling.)]TJ --19.5923 -1.2889 TD -0 Tw -(Otherwise, )Tj -/TT10 1 Tf -5.1151 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( prints a few spaces and a )]TJ -/TT10 1 Tf -11.7118 0 TD -0 Tw -(?)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -[( and waits for approval. You can then respond with )]TJ -/TT10 1 Tf -23.5305 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5189 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --45.077 -1.2889 TD -(Control-E, space, carriage return, or do nothing as described above.)Tj -0 -2.8889 TD -0.23 Tw -(The spelling corrector itself is not )Tj -/TT10 1 Tf -16.3517 0 TD -0 Tw -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -0.23 Tw -[( protected like the DWIM error correction routines.)]TJ --21.1525 -1.2889 TD -0.1467 Tw -(Therefore, typing )Tj -/TT10 1 Tf -8.2567 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1467 Tw -[( and typing Control-E may have different effects when the spelling corrector is)]TJ --8.8568 -1.2889 TD -0.0856 Tw -[(called directly. The former simply instructs the spelling corrector to return )]TJ -/TT10 1 Tf -34.3753 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0856 Tw -(, and lets the calling)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -25 0 obj -<< -/Length 5038 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-5)Tj -/TT8 1 Tf --42.8333 60.6156 TD -0.1811 Tw -(function decide what to do next; the latter causes an error which unwinds to the last )Tj -/TT10 1 Tf -40.2738 0 TD -0 Tw -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -(,)Tj --45.0745 -1.2889 TD -(however far back that may be.)Tj -/TT4 1 Tf -10 0 0 10 54 515.6 Tm -(Parentheses Errors Protocol)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 512.89 m -510.01 512.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 490.94 Tm -0.1967 Tw -(When an unbound symbol or undefined error occurs, and the offending symbol contains )Tj -/TT10 1 Tf -42.0327 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.1967 Tw -[( or )]TJ -/TT10 1 Tf -1.8342 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --45.0672 -1.2889 TD -0.1044 Tw -(DWIM tries to correct errors caused by typing )Tj -/TT10 1 Tf -21.4244 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.1044 Tw -[( for left parenthesis and )]TJ -/TT10 1 Tf -11.2512 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.1044 Tw -[( for right parenthesis. In)]TJ --33.8758 -1.2889 TD -0.1256 Tw -[(these cases, the interaction with you is similar to that for spelling correction. If the error occurs in)]TJ -0 -1.2222 TD -0 Tw -(type-in, )Tj -/TT10 1 Tf -3.6685 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( types )Tj -/TT10 1 Tf -2.8862 0 TD -(=)Tj -/TT17 1 Tf -0.6001 0 TD -(CORRECTION)Tj -/TT8 1 Tf -6.001 0 TD -(, and continues evaluating the expression. For example:)Tj -/TT11 1 Tf --10.2228 -2.9556 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ FOO 9IPLUS 1 2])Tj -3.0132 -1 TD -(= \( IPLUS)Tj -T* -(3)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(If the correction does not occur in type-in, )Tj -/TT10 1 Tf -18.7417 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( prints)Tj -/TT17 1 Tf --15.8088 -2.8889 TD -(BAD-ATOM)Tj -/TT10 1 Tf -4.8008 0 TD -( [IN )Tj -/TT17 1 Tf -3.0005 0 TD -(FUNCTION-NAME)Tj -/TT10 1 Tf -7.8013 0 TD -(] -> )Tj -/TT17 1 Tf -3.0005 0 TD -(CORRECTION)Tj -/TT10 1 Tf -6.001 0 TD -( ?)Tj -/TT8 1 Tf --29.9373 -2.9556 TD -0.0278 Tw -[(and then waits for approval. You then have the same six options as for spelling correction, except the)]TJ -0 -1.2222 TD -0.0533 Tw -(waiting time is 3)Tj -/TT10 1 Tf -7.4842 0 TD -0 Tw -(*DWIMWAIT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0533 Tw -[( seconds. If you type )]TJ -/TT10 1 Tf -9.9167 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[( operates as if it were in )]TJ -/TT10 1 Tf -11.0984 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.0533 Tw -[( mode,)]TJ --42.2548 -1.2889 TD -0 Tw -(i.e., it makes the correction and prints its message.)Tj -0 -2.8889 TD -(Actually, )Tj -/TT10 1 Tf -4.2924 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( uses the value of the variables )Tj -/TT10 1 Tf -13.7924 0 TD -0 Tc -0 Tw -(LPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0007 Tc -0.0026 Tw -( and )Tj -/TT10 1 Tf -2.1995 0 TD -0 Tc -0 Tw -(RPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0001 Tc -0.0032 Tw -( to determine the corresponding)Tj --31.0861 -1.2889 TD -0 Tc -0.1889 Tw -(lower case character for left and right parentheses. )Tj -/TT10 1 Tf -24.4739 0 TD -0 Tw -(LPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1889 Tw -[( and )]TJ -/TT10 1 Tf -2.5707 0 TD -0 Tw -(RPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1889 Tw -[( are initially )]TJ -/TT10 1 Tf -6.1101 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.1889 Tw -[( and )]TJ -/TT10 1 Tf -2.5706 0 TD -0 Tw -(0)Tj -/TT8 1 Tf --44.7268 -1.2889 TD -0.0467 Tw -(respectively, but they can be reset for other keyboard layouts, e.g., on some terminals left parenthesis)Tj -0 -1.2222 TD -0 Tw -(is over )Tj -/TT10 1 Tf -3.1997 0 TD -(8)Tj -/TT8 1 Tf -0.6001 0 TD -(, and right parenthesis is over )Tj -/TT10 1 Tf -13.376 0 TD -(9)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 209.2 Tm -(Undefined Function T Errors)Tj -ET -54.01 206.49 m -510.01 206.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 184.54 Tm -0.1811 Tw -(When an undefined function error occurs, and the offending function is )Tj -/TT10 1 Tf -33.8755 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1811 Tw -(, DWIM tries to correct)Tj --34.4756 -1.2889 TD -0.0711 Tw -(certain types of parentheses errors involving a )Tj -/TT10 1 Tf -21.2038 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( clause in a conditional. DWIM recognizes errors of)]TJ --21.8039 -1.2889 TD -0 Tw -(the following forms:)Tj -/TT10 1 Tf -11.0667 -2 TD -(\(COND --\) \(T --\))Tj -/TT8 1 Tf -11.6 0 TD -(The )Tj -/TT10 1 Tf -1.9238 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( clause appears outside and immediately)Tj --2.5239 -1.2889 TD -(following the )Tj -/TT10 1 Tf -6.1572 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --24.3576 -2.0667 TD -(\(COND -- \(-- & \(T --\)\)\))Tj -/TT8 1 Tf -15.8 0 TD -(The )Tj -/TT10 1 Tf -1.9238 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( clause appears inside a previous clause.)Tj -/TT10 1 Tf --15.3239 -2.0667 TD -(\(COND -- \(\(T --\)\)\))Tj -/TT8 1 Tf -12.8 0 TD -(The )Tj -/TT10 1 Tf -1.9238 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( clause has an extra pair of parentheses)Tj --2.5239 -1.2889 TD -(around it.)Tj --22.6667 -2.8889 TD -0.0056 Tw -(For undefined function errors that are not one of these three types, DWIM takes no corrective action at)Tj -0 -1.2222 TD -0 Tw -(all, and the error will occur.)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -28 0 obj -<< -/Length 7955 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0756 Tw -(If the error occurs in type-in, DWIM simply types )Tj -/TT10 1 Tf -22.8328 0 TD -0.1811 Tw -(T FIXED)Tj -/TT8 1 Tf -4.3818 0 TD -0.0756 Tw -[( and makes the correction. Otherwise if)]TJ --27.2146 -1.2889 TD -0 Tw -(DWIM is in )Tj -/TT10 1 Tf -5.3945 0 TD -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -( mode, DWIM makes the correction and prints the message:)Tj -/TT10 1 Tf --4.862 -2.8889 TD -([IN )Tj -/TT17 1 Tf -2.4004 0 TD -(FUNCTION-NAME)Tj -/TT10 1 Tf -7.8013 0 TD -(] {BAD-COND} ->)Tj --6.2017 -1 TD -( {CORRECTED-COND})Tj -/TT8 1 Tf --9.3333 -2.7333 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( is in )Tj -/TT10 1 Tf -2.3379 0 TD -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -( mode, DWIM prints)Tj -/TT10 1 Tf --5.1257 -2.8889 TD -(UNDEFINED FUNCTION T)Tj -4 -1 TD -([IN FUNCTION-NAME] FIX?)Tj -/TT8 1 Tf --9.3333 -2.7333 TD -0.0922 Tw -[(and waits for approval. You then have the same options as for spelling corrections and parenthesis)]TJ -0 -1.2222 TD -0 Tw -(errors. If you type )Tj -/TT10 1 Tf -8.4712 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( or default, )Tj -/TT10 1 Tf -5.084 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( makes the correction and prints its message.)Tj --16.5557 -2.9556 TD -0.12 Tw -(Having made the correction, )Tj -/TT10 1 Tf -13.3638 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.12 Tw -[( must then decide how to proceed with the computation. In the)]TJ --15.7642 -1.2889 TD -0.0067 Tw -(first case, )Tj -/TT10 1 Tf -4.3791 0 TD -0.0167 Tw -(\(COND --\) \(T --\))Tj -/TT8 1 Tf -9.6516 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5067 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0067 Tw -[( cannot know whether the )]TJ -/TT10 1 Tf -11.8458 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[( clause would have been executed if)]TJ --29.3836 -1.2889 TD -0.0033 Tw -(it had been inside of the )Tj -/TT10 1 Tf -10.8672 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0003 Tc -0.003 Tw -(. Therefore )Tj -/TT10 1 Tf -5.3108 0 TD -0 Tc -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0003 Tc -0.003 Tw -( asks you )Tj -/TT10 1 Tf -4.3689 0 TD -0 Tc -0.0067 Tw -(CONTINUE WITH T CLAUSE)Tj -/TT8 1 Tf -13.2221 0 TD -0.0002 Tc -0.0031 Tw -( \(with a default)Tj --38.5698 -1.2889 TD -0 Tc -0 Tw -(of )Tj -/TT10 1 Tf -1.2722 0 TD -(YES)Tj -/TT8 1 Tf -1.8003 0 TD -0.1433 Tw -[(\). If you type )]TJ -/TT10 1 Tf -6.8871 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6433 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1433 Tw -[( continues with the form after the )]TJ -/TT10 1 Tf -16.0277 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1433 Tw -(, i.e., the form that originally)Tj --32.0316 -1.2889 TD -0 Tw -(followed the )Tj -/TT10 1 Tf -5.8179 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( clause.)Tj --6.418 -2.9556 TD -0.0133 Tw -(In the second case, )Tj -/TT10 1 Tf -8.5416 0 TD -0.0311 Tw -(\(COND -- \(-- & \(T --\)\)\))Tj -/TT8 1 Tf -13.9578 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5133 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( has a different problem. After moving the )]TJ -/TT10 1 Tf -19.3241 0 TD -0 Tw -(T)Tj -/TT8 1 Tf --44.7372 -1.2889 TD -0.1233 Tw -(clause to its proper place, )Tj -/TT10 1 Tf -12.1025 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1233 Tw -[( must return as the value of )]TJ -/TT10 1 Tf -13.2574 0 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -[( as the value of the )]TJ -/TT10 1 Tf -9.2551 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1233 Tw -[(. Since this)]TJ --40.0159 -1.2889 TD -0.1933 Tw -(value is no longer around, )Tj -/TT10 1 Tf -12.8334 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1933 Tw -[( asks you )]TJ -/TT10 1 Tf -4.9389 0 TD -0.4656 Tw -(OK TO REEVALUATE)Tj -/TT8 1 Tf -10.5327 0 TD -0.1933 Tw -[( and then prints the expression)]TJ --30.7053 -1.2889 TD -0.1678 Tw -(corresponding to )Tj -/TT10 1 Tf -8.1593 0 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1678 Tw -[(. If you type )]TJ -/TT10 1 Tf -6.6763 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1678 Tw -(, or default, )Tj -/TT10 1 Tf -5.8373 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1678 Tw -[( continues by reevaluating )]TJ -/TT10 1 Tf -12.6247 0 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1678 Tw -(, otherwise )Tj -/TT10 1 Tf -5.4415 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --42.9398 -1.2889 TD -0.0422 Tw -(aborts, and a )Tj -/TT10 1 Tf -6.0637 0 TD -0.1 Tw -(U.D.F. T)Tj -/TT8 1 Tf -4.9008 0 TD -0.0422 Tw -[( error will then occur \(even though the )]TJ -/TT10 1 Tf -17.6762 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.0422 Tw -[( has in fact been fixed\). If )]TJ -/TT10 1 Tf -11.8959 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --42.9369 -1.2889 TD -0.2578 Tw -(can determine for itself that the form can safely be reevaluated, it does not consult you before)Tj -0 -1.2222 TD -0.18 Tw -(reevaluating. )Tj -/TT10 1 Tf -6.6774 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.18 Tw -[( can do this if the form is atomic, or )]TJ -/TT10 1 Tf -17.6691 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.18 Tw -[( of the form is a member of the list)]TJ -/TT10 1 Tf --28.5472 -1.2889 TD -0 Tw -(OKREEVALST)Tj -/TT8 1 Tf -6.001 0 TD -0.0678 Tw -[(, and each of the arguments can safely be reevaluated. For example, )]TJ -/TT10 1 Tf -31.2083 0 TD -0.1622 Tw -(\(SETQ X \(CONS)Tj --37.2092 -1.2889 TD -0 Tw -(\(IPLUS Y Z\) W\)\) )Tj -/TT8 1 Tf -9.6016 0 TD -(is safe to reevaluate because )Tj -/TT10 1 Tf -12.6719 0 TD -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(IPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -( are all on )Tj -/TT10 1 Tf -4.584 0 TD -(OKREEVALST)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --43.6025 -2.9556 TD -0.1711 Tw -(In the third case, )Tj -/TT10 1 Tf -8.2924 0 TD -0.4111 Tw -(\(COND -- \(\(T --\)\)\))Tj -/TT8 1 Tf -12.0351 0 TD -0.1711 Tw -(, there is no problem with continuation, so no further)Tj --20.3274 -1.2889 TD -0 Tw -(interaction is necessary.)Tj -/TT4 1 Tf -10 0 0 10 102 155.4 Tm -(DWIM Operation)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 152.69 m -558.01 152.69 l -S -BT -/TT8 1 Tf -9 0 0 9 126 130.74 Tm -0.1067 Tw -(Whenever the interpreter encounters an atomic form with no binding, or a non-atomic form )Tj -/TT10 1 Tf -42.2863 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1067 Tw -[( of)]TJ --44.0866 -1.2889 TD -0.0422 Tw -(which is not a function or function object, it calls the function )Tj -/TT10 1 Tf -27.7567 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0422 Tw -[(. Similarly, when )]TJ -/TT10 1 Tf -8.1689 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0422 Tw -[( is)]TJ --44.3269 -1.2889 TD -0.2933 Tw -(given an undefined function, )Tj -/TT10 1 Tf -14.2563 0 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.2933 Tw -[( is called. When )]TJ -/TT10 1 Tf -8.9403 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2933 Tw -[( is enabled, )]TJ -/TT10 1 Tf -6.09 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.2933 Tw -[( and)]TJ -/TT10 1 Tf --43.0889 -1.2889 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.0867 Tw -[( are redefined to first call the DWIM package, which tries to correct the error. If )]TJ -/TT10 1 Tf -36.9201 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --42.9211 -1.2889 TD -0.0489 Tw -(cannot decide how to fix the error, or you disapprove of )Tj -/TT10 1 Tf -25.5412 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0489 Tw -(s correction \(by typing )Tj -/TT10 1 Tf -10.7 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -(\), or you type)Tj --39.2416 -1.2889 TD -0.0678 Tw -(Control-E, then )Tj -/TT10 1 Tf -7.1937 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0678 Tw -[( and )]TJ -/TT10 1 Tf -2.3284 0 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.0678 Tw -[( cause an error or break. If you type )]TJ -/TT11 1 Tf -16.9312 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.0678 Tw -[( to )]TJ -/TT10 1 Tf -1.5076 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5678 0 TD -(DWIM)Tj -/TT8 1 Tf --42.934 -1.2889 TD -0.0311 Tw -(exits by performing )Tj -/TT10 1 Tf -9.0499 0 TD -0.0744 Tw -(\(RETEVAL FAULTEVAL \(ERROR!\)\))Tj -/TT8 1 Tf -18.1518 0 TD -0.0311 Tw -(, so that an error will be generated at the)Tj --27.2017 -1.2889 TD -0 Tw -(position of the call to )Tj -/TT10 1 Tf -9.521 0 TD -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -31 0 obj -<< -/Length 7797 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-7)Tj -/TT8 1 Tf --42.8333 60.6156 TD -(If )Tj -/TT10 1 Tf -0.9221 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0022 Tw -( can \(and is allowed to\) correct the error, it exits by performing )Tj -/TT10 1 Tf -28.002 0 TD -0 Tw -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0001 Tc -0.0021 Tw -( of the corrected form,)Tj --35.5253 -1.2889 TD -0 Tc -0.0389 Tw -(as of the position of the call to )Tj -/TT10 1 Tf -13.7721 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0389 Tw -[( or )]TJ -/TT10 1 Tf -1.5187 0 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.0389 Tw -[(. Thus in the example at the beginning of)]TJ --26.6926 -1.2889 TD -0.0567 Tw -(the chapter, when )Tj -/TT10 1 Tf -8.3614 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( determined that )]TJ -/TT10 1 Tf -7.7901 0 TD -0 Tw -(ITIMS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0567 Tw -[( was )]TJ -/TT10 1 Tf -2.3711 0 TD -0 Tw -(ITIMES)Tj -/TT8 1 Tf -3.6006 0 TD -0.0567 Tw -[( misspelled, )]TJ -/TT10 1 Tf -5.6368 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( called )]TJ -/TT10 1 Tf -3.2291 0 TD -0 Tw -(RETEVAL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0567 Tw -[( with)]TJ -/TT10 1 Tf --42.991 -1.2889 TD -0.2933 Tw -(\(ITIMES N \(FACCT 9SUB1 N\)\))Tj -/TT8 1 Tf -16.7759 0 TD -0.1222 Tw -[(. Since the interpreter uses the value returned by )]TJ -/TT10 1 Tf -23.1631 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf --39.939 -1.2889 TD -0.0633 Tw -(exactly as though it were the value of the erroneous form, the computation will thus proceed exactly)Tj -0 -1.2222 TD -0 Tw -(as though no error had occurred.)Tj -0 -2.8889 TD -0.0089 Tw -(In addition to continuing the computation, )Tj -/TT10 1 Tf -19.1905 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( also repairs the cause of the error whenever possible;)]TJ --21.5909 -1.2889 TD -0.0411 Tw -(in the above example, )Tj -/TT10 1 Tf -10.0668 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( also changed \(with )]TJ -/TT10 1 Tf -9.0453 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -(\) the expression )Tj -/TT10 1 Tf -7.3304 0 TD -0.0978 Tw -(\(ITIMS N \(FACCT 9SUB1)Tj --32.4434 -1.2889 TD -0 Tw -(N\)\))Tj -/TT8 1 Tf -1.8003 0 TD -( that caused the error. Note that if your program had )Tj -/TT13 1 Tf -23.8653 0 TD -(computed)Tj -/TT8 1 Tf -3.9072 0 TD -( the form and called )Tj -/TT10 1 Tf -9.1094 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(, it would)Tj --41.0826 -1.2889 TD -0.0289 Tw -(not be possible to repair the cause of the error, although )Tj -/TT10 1 Tf -25.2455 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( could correct the misspelling each time)]TJ --27.6459 -1.2889 TD -0 Tw -(it occurred.)Tj -0 -2.8889 TD -0.0189 Tw -(Error correction in )Tj -/TT10 1 Tf -8.4693 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( is divided into three categories: unbound atoms, undefined )]TJ -/TT10 1 Tf -26.8692 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -[( of form, and)]TJ --39.5392 -1.2889 TD -0.0722 Tw -(undefined function in )Tj -/TT10 1 Tf -10.1175 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0722 Tw -[(. Assuming that the user approves )]TJ -/TT10 1 Tf -16.1794 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0722 Tw -(s corrections, the action taken)Tj --31.6978 -1.2889 TD -0 Tw -(by )Tj -/TT10 1 Tf -1.3594 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( for the various types of errors in each of these categories is summarized below.)Tj -/TT4 1 Tf -10 0 0 10 78 362.6 Tm -(DWIM Correction: Unbound Atoms)Tj -/TT8 1 Tf -9 0 0 9 78 338.94 Tm -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( is called as the result of an unbound atom error, it proceeds as follows:)Tj --1.4036 -2.0667 TD -0.1344 Tw -[(1.)-666.7(If the first character of the unbound atom is )]TJ -/TT10 1 Tf -22.0837 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6344 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1344 Tw -[( assumes that you \(intentionally\))]TJ --24.302 -1.2889 TD -0 Tw -(typed )Tj -/TT10 1 Tf -2.9966 0 TD -()Tj -/TT17 1 Tf -0.6001 0 TD -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1733 Tw -[( for )]TJ -/TT10 1 Tf -2.1206 0 TD -0 Tw -(\(QUOTE)Tj -/TT19 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.4233 0 TD -(ATOM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1733 Tw -[( and makes the appropriate change. No message is)]TJ --15.1421 -1.2889 TD -0 Tw -(typed, and no approval is requested.)Tj -0 -2 TD -0.0356 Tw -(If the unbound atom is just )Tj -/TT10 1 Tf -12.4072 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -[( itself, )]TJ -/TT10 1 Tf -2.9652 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0356 Tw -[( assumes you want the )]TJ -/TT13 1 Tf -10.4986 0 TD -0 Tw -(next)Tj -/TT8 1 Tf -1.7783 0 TD -0.0356 Tw -[( expression quoted,)]TJ --30.6497 -1.2889 TD -0 Tw -(e.g., )Tj -/TT10 1 Tf -2.0563 0 TD -0.0511 Tw -(\(CONS X \(A B C\)\))Tj -/TT8 1 Tf -10.4061 0 TD -0.0211 Tw -[( will be changed to )]TJ -/TT10 1 Tf -8.7208 0 TD -0.0511 Tw -(\(CONS X \(QUOTE \(A B C\)\)\))Tj -/TT8 1 Tf -14.6579 0 TD -0.0211 Tw -[(. Again)]TJ --35.8411 -1.2889 TD -0.1222 Tw -[(no message will be printed or approval asked. If no expression follows the )]TJ -/TT10 1 Tf -35.0544 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.1222 Tw -(, DWIM)Tj --35.6545 -1.2889 TD -0 Tw -(gives up.)Tj -3.3333 -2 TD -(Note:)Tj -/TT10 1 Tf -4.1578 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -( is normally defined as a read-macro character which converts )Tj -/TT10 1 Tf -27.7124 0 TD -(FOO)Tj -/TT8 1 Tf -2.4004 0 TD -( to)Tj -/TT10 1 Tf --34.8707 -1.2889 TD -0.0567 Tw -(\(QUOTE FOO\))Tj -/TT8 1 Tf -6.6577 0 TD -0.0233 Tw -[( on input, so )]TJ -/TT10 1 Tf -5.8443 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( will not see the )]TJ -/TT19 1 Tf -7.2968 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.2778 0 TD -0.0233 Tw -[( in the case of expressions that)]TJ --22.4771 -1.2889 TD -0 Tw -(are typed-in.)Tj --4.75 -2 TD -0.1878 Tw -[(2.)-666.7(If CLISP \(see Chapter 21\) is enabled, and the atom is part of a CLISP construct, the)]TJ -1.4167 -1.2222 TD -0.3122 Tw -[(CLISP transformation is performed and the result returned. For example, )]TJ -/TT10 1 Tf -36.2499 0 TD -0 Tw -(N-1)Tj -/TT8 1 Tf -1.8003 0 TD -0.3122 Tw -[( is)]TJ --38.0502 -1.2889 TD -0.0744 Tw -(transformed to )Tj -/TT10 1 Tf -6.9946 0 TD -0.1778 Tw -(\(SUB1 N\))Tj -/TT8 1 Tf -4.9786 0 TD -0.0744 Tw -(, and )Tj -/TT10 1 Tf -2.5918 0 TD -0.1778 Tw -(\(... FOO_3 ...\))Tj -/TT8 1 Tf -9.357 0 TD -0.0744 Tw -[( is transformed into )]TJ -/TT10 1 Tf -9.2314 0 TD -0.1778 Tw -(\(... \(SETQ)Tj --33.1533 -1.2889 TD -0 Tw -(FOO 3\) ...\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --8.0177 -2.0667 TD -0.1533 Tw -[(3.)-666.7(If the atom contains an )]TJ -/TT10 1 Tf -12.5222 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.1533 Tw -[( \(actually )]TJ -/TT10 1 Tf -4.6509 0 TD -0 Tw -(LPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1533 Tw -[( \(see the DWIM Functions and Variables)]TJ --20.5572 -1.2889 TD -0.0844 Tw -(section below\), )Tj -/TT10 1 Tf -7.0468 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -[( assumes the )]TJ -/TT19 1 Tf -6.1269 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.5 0 TD -0.0844 Tw -[( was intended to be a left parenthesis, and calls the)]TJ --16.0741 -1.2889 TD -0.2644 Tw -[(editor to make appropriate repairs on the expression containing the atom. DWIM)]TJ -0 -1.2222 TD -0.0522 Tw -(assumes that you did not notice the mistake, i.e., that the entire expression was affected)Tj -T* -0.1478 Tw -[(by the missing left parenthesis. For example, if you type )]TJ -/TT10 1 Tf -26.8726 0 TD -0.3544 Tw -(\(SETQ X \(LIST \(CONS)Tj --26.8726 -1.2889 TD -0.1056 Tw -(9CAR Y\) \(CDR Z\)\) Y\))Tj -/TT8 1 Tf -11.8241 0 TD -0.0433 Tw -(, the expression will be changed to )Tj -/TT10 1 Tf -15.7926 0 TD -0.1056 Tw -(\(SETQ X \(LIST \(CONS)Tj --27.6167 -1.2889 TD -0.18 Tw -(\(CAR Y\) \(CDR Z\)\) Y\)\))Tj -/TT8 1 Tf -12.722 0 TD -0.0756 Tw -[(. The )]TJ -/TT10 1 Tf -2.9005 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0756 Tw -[( does not have to be the first character of the atom:)]TJ -/TT10 1 Tf --16.2225 -1.2889 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( will handle )Tj -/TT10 1 Tf -5.502 0 TD -(\(CONS X9CAR Y\))Tj -/TT8 1 Tf -8.4014 0 TD -( correctly.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT17 20 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -35 0 obj -<< -/Length 7728 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 143.25 569.54 Tm -0.2044 Tw -[(4.)-666.7(If the atom contains a )]TJ -/TT10 1 Tf -12.1957 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.2044 Tw -[( \(actually )]TJ -/TT10 1 Tf -4.7531 0 TD -0 Tw -(RPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2044 Tw -(, see the DWIM Functions and Variables)Tj --20.333 -1.2889 TD -0.2978 Tw -(section below\), DWIM assumes the )Tj -/TT10 1 Tf -17.297 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.2978 Tw -[( was intended to be a right parenthesis and)]TJ --17.8971 -1.2889 TD -0 Tw -(operates as in the case above.)Tj --1.4167 -2 TD -0.0822 Tw -[(5.)-666.7(If the atom begins with a )]TJ -/TT10 1 Tf -13.1405 0 TD -0 Tw -(7)Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -(, the )Tj -/TT10 1 Tf -2.3017 0 TD -0 Tw -(7)Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[( is treated as a )]TJ -/TT10 1 Tf -6.916 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.075 0 TD -0 Tw -(7FOO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[( becomes )]TJ -/TT10 1 Tf -4.4721 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj --39.0896 -1.2889 TD -(and then )Tj -/TT10 1 Tf -4.1621 0 TD -(\(QUOTE FOO\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --12.1799 -2.0667 TD -0.3233 Tw -[(6.)-666.7(The expressions on )]TJ -/TT10 1 Tf -11.0991 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.3233 Tw -[( \(see the )]TJ -/TT10 1 Tf -4.8221 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.3233 Tw -[( section below\) are)]TJ --30.107 -1.2889 TD -0.09 Tw -[(evaluated in the order that they appear. If any of these expressions returns a non-)]TJ -/TT10 1 Tf -37.5287 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf --37.5287 -1.2889 TD -0.1822 Tw -(value, this value is treated as the form to be used to continue the computation, it is)Tj -0 -1.2222 TD -0 Tw -(evaluated and its value is returned by )Tj -/TT10 1 Tf -16.9702 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --20.7873 -2.0667 TD -0.11 Tw -[(7.)-666.7(If the unbound atom occurs in a function, )]TJ -/TT10 1 Tf -20.8743 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.11 Tw -[( attempts spelling correction using the)]TJ -/TT10 1 Tf --21.858 -1.2889 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( variables of the function as the spelling list.)Tj --9.6105 -2.0667 TD -0.0467 Tw -[(8.)-666.7(If the unbound atom occurred in a type-in to a break, )]TJ -/TT10 1 Tf -25.6356 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0467 Tw -[( attempts spelling correction)]TJ --26.6193 -1.2889 TD -0 Tw -(using the )Tj -/TT10 1 Tf -4.3433 0 TD -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( variables of the broken function as the spelling list.)Tj --13.9538 -2.0667 TD -[(9.)-666.7(Otherwise, )]TJ -/TT10 1 Tf -6.564 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( attempts spelling correction using )]TJ -/TT10 1 Tf -15.7897 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0511 Tw -[( \(see the Spelling Lists)]TJ --29.3384 -1.2889 TD -0 Tw -(section below\).)Tj --1.9167 -2 TD -[(10.)-666.7(If all of the above fail, )]TJ -/TT10 1 Tf -11.7428 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( gives up.)Tj -/TT4 1 Tf -10 0 0 10 126 327.4 Tm -(Undefined CAR of Form)Tj -/TT8 1 Tf -9 0 0 9 126 303.74 Tm -(If DWIM is called as the result of an undefined )Tj -/TT10 1 Tf -20.918 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( of form error, it proceeds as follows:)Tj --20.8016 -2.0667 TD -[(1.)-666.7(If )]TJ -/TT10 1 Tf -2.4021 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( of the form is )]TJ -/TT10 1 Tf -6.7155 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0656 Tw -(, DWIM assumes a misplaced )Tj -/TT10 1 Tf -13.6442 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0656 Tw -[( clause and operates as described)]TJ --24.3456 -1.2889 TD -0 Tw -(in the Undefined Function T Errors section above.)Tj --1.4167 -2 TD -[(2.)-666.7(If )]TJ -/TT10 1 Tf -2.5699 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.2333 Tw -[( of the form is )]TJ -/TT10 1 Tf -7.5544 0 TD -0 Tw -(F/L)Tj -/TT8 1 Tf -1.8003 0 TD -0.2333 Tw -(, DWIM changes the ")Tj -/TT10 1 Tf -10.5652 0 TD -0 Tw -(F/L)Tj -/TT8 1 Tf -1.8003 0 TD -0.2333 Tw -(" to ")Tj -/TT10 1 Tf -2.5809 0 TD -0 Tw -(FUNCTION\(LAMBDA)Tj -/TT8 1 Tf -9.0015 0 TD -0.2333 Tw -[(". For)]TJ --36.2561 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.3079 0 TD -0.1411 Tw -(\(F/L \(Y\) \(PRINT \(CAR Y\)\)\))Tj -/TT8 1 Tf -15.5669 0 TD -0.0589 Tw -[( is changed to )]TJ -/TT10 1 Tf -6.5764 0 TD -0.1411 Tw -(\(FUNCTION \(LAMBDA \(Y\))Tj --26.4512 -1.2889 TD -0.2167 Tw -(\(PRINT \(CAR Y\)\)\))Tj -/TT8 1 Tf -10.0349 0 TD -0.09 Tw -[(. No message is printed and no approval requested. If you omit)]TJ --10.0349 -1.2889 TD -0.14 Tw -(the variable list, )Tj -/TT10 1 Tf -7.7135 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.14 Tw -[( supplies )]TJ -/TT10 1 Tf -4.4939 0 TD -0 Tw -(\(X\))Tj -/TT8 1 Tf -1.8003 0 TD -0.14 Tw -(, e.g., )Tj -/TT10 1 Tf -2.8152 0 TD -0.3344 Tw -(\(F/L \(PRINT \(CAR X\)\)\))Tj -/TT8 1 Tf -13.6054 0 TD -0.14 Tw -[( is changed to)]TJ -/TT10 1 Tf --32.8286 -1.2889 TD -0.1689 Tw -(\(FUNCTION \(LAMBDA \(X\) \(PRINT \(CAR X\)\)\)\))Tj -/TT8 1 Tf -24.2483 0 TD -0.07 Tw -(. )Tj -/TT10 1 Tf -0.89 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( determines that you have)]TJ --27.5386 -1.2889 TD -0.0978 Tw -(supplied the variable list when more than one expression follows )Tj -/TT10 1 Tf -30.0505 0 TD -0 Tw -(F/L)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5978 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0978 Tw -[( of the first)]TJ --34.2489 -1.2889 TD -0.1556 Tw -(expression is not the name of a function, and every element in the first expression is)Tj -0 -1.2222 TD -0.1578 Tw -(atomic. For example, DWIM will supply )Tj -/TT10 1 Tf -19.0224 0 TD -0 Tw -(\(X\))Tj -/TT8 1 Tf -1.8003 0 TD -0.1578 Tw -[( when correcting )]TJ -/TT10 1 Tf -8.1584 0 TD -0.3778 Tw -(\(F/L \(PRINT \(CDR)Tj --28.981 -1.2889 TD -0 Tw -(X\)\) \(PRINT \(CAR X\)\)\))Tj -/TT8 1 Tf -12.002 0 TD -(.)Tj --13.4186 -2.0667 TD -[(3.)-666.7(If )]TJ -/TT10 1 Tf -2.5321 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1956 Tw -[( of the form is a CLISP word \()]TJ -/TT10 1 Tf -14.7065 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6956 0 TD -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6956 0 TD -(DO)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6956 0 TD -(FETCH)Tj -/TT8 1 Tf -3.0005 0 TD -0.1956 Tw -(, etc.\), the indicated CLISP)Tj --26.9101 -1.2889 TD -0.2511 Tw -[(transformation is performed, and the result is returned as the corrected form. See)]TJ -0 -1.2222 TD -0 Tw -(Chapter 21.)Tj --1.4167 -2 TD -[(4.)-666.7(If )]TJ -/TT10 1 Tf -2.3599 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[( of the form has a function definition, )]TJ -/TT10 1 Tf -16.9044 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( attempts spelling correction on )]TJ -/TT10 1 Tf -14.3227 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[( of)]TJ --38.1714 -1.2889 TD -0.3144 Tw -(the definition using as spelling list the value of )Tj -/TT10 1 Tf -23.7304 0 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.3144 Tw -(, initially )Tj -/TT10 1 Tf -4.7983 0 TD -0 Tw -(\(LAMBDA)Tj --35.1298 -1.2889 TD -(NLAMBDA\))Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --6.2174 -2.0667 TD -[(5.)-666.7(If )]TJ -/TT10 1 Tf -2.3388 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0021 Tw -( of the form has an )Tj -/TT10 1 Tf -8.5241 0 TD -0 Tc -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0006 Tc -0.0016 Tw -( or )Tj -/TT10 1 Tf -1.4454 0 TD -0 Tc -0 Tw -(CODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0002 Tc -0.002 Tw -( property, )Tj -/TT10 1 Tf -4.6539 0 TD -0 Tc -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0003 Tc -0.0019 Tw -( prints )Tj -/TT17 1 Tf -3.1236 0 TD -0 Tc -0 Tw -(CAR-OF-FORM)Tj -/TT10 1 Tf -6.6011 0 TD -0.0067 Tw -[( UNSAVED)]TJ -/TT8 1 Tf -4.8074 0 TD -0 Tw -(,)Tj --39.079 -1.2889 TD -(performs an )Tj -/TT10 1 Tf -5.6377 0 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -(, and continues. No approval is requested.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -38 0 obj -<< -/Length 6850 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-9)Tj -/TT8 1 Tf --40.9167 60.6156 TD -[(6.)-666.7(If )]TJ -/TT10 1 Tf -2.4233 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0867 Tw -[( of the form has a )]TJ -/TT10 1 Tf -8.4487 0 TD -0 Tw -(FILEDEF)Tj -/TT8 1 Tf -4.2007 0 TD -0.0867 Tw -[( property, the definition is loaded from a file \(except)]TJ --15.4563 -1.2889 TD -0 Tw -(when )Tj -/TT10 1 Tf -2.7593 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0322 Tw -[(ing\). If the value of the property is atomic, the entire file is to be loaded.)]TJ --6.96 -1.2889 TD -0.1644 Tw -(If the value is a list, )Tj -/TT10 1 Tf -9.7787 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1644 Tw -[( is the name of the file and )]TJ -/TT10 1 Tf -13.2145 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1644 Tw -[( the relevant functions, and)]TJ -/TT10 1 Tf --26.5937 -1.2889 TD -0 Tw -(LOADFNS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0478 Tw -[( will be used. For both cases, )]TJ -/TT17 1 Tf -13.5131 0 TD -0 Tw -(LDFLG)Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -[( will be )]TJ -/TT10 1 Tf -3.6326 0 TD -0 Tw -(SYSLOAD)Tj -/TT8 1 Tf -4.2007 0 TD -0.0478 Tw -[( \(see Chapter 17\). )]TJ -/TT10 1 Tf -8.379 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --36.9266 -1.2889 TD -(uses )Tj -/TT10 1 Tf -2.4775 0 TD -(FINDFILE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2978 Tw -[( \(Chapter 24\), so that the file can be on any of the directories on)]TJ -/TT10 1 Tf --7.2782 -1.2889 TD -0 Tw -(DIRECTORIES)Tj -/TT8 1 Tf -6.6011 0 TD -0.1922 Tw -(, initially )Tj -/TT10 1 Tf -4.5539 0 TD -0.4611 Tw -(\(NIL NEWLISP LISP LISPUSERS\))Tj -/TT8 1 Tf -18.1861 0 TD -0.1922 Tw -[(. If the file is found,)]TJ --29.341 -1.2889 TD -0.16 Tw -(DWIM types )Tj -/TT10 1 Tf -6.2629 0 TD -0.3856 Tw -(SHALL I LOAD)Tj -/TT8 1 Tf -7.9723 0 TD -0.16 Tw -[( followed by the file name or list of functions. If you)]TJ --14.2352 -1.2889 TD -0 Tw -(approve, DWIM loads the function\(s\) or file, and continues the computation.)Tj --1.4167 -2 TD -0.1833 Tw -[(7.)-666.7(If CLISP is enabled, and )]TJ -/TT10 1 Tf -13.1917 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1833 Tw -[( of the form is part of a CLISP construct, the indicated)]TJ --13.5754 -1.2889 TD -0 Tw -(transformation is performed, e.g., )Tj -/TT10 1 Tf -15.1006 0 TD -(\(N)Tj -/TT11 1 Tf -1.2002 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(N-1\))Tj -/TT8 1 Tf -2.4004 0 TD -( becomes)Tj -/TT19 1 Tf -4.0576 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(SETQ N \(SUB1 N\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(.)Tj --35.6139 -2.0667 TD -[(8.)-666.7(If )]TJ -/TT10 1 Tf -2.4966 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.16 Tw -[( of the form contains an )]TJ -/TT10 1 Tf -11.6597 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.66 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.16 Tw -[( assumes a left parenthesis was intended e.g.,)]TJ -/TT10 1 Tf --18.2004 -1.2889 TD -0 Tw -(\(CONS9CAR X\))Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --8.6178 -2.0667 TD -[(9.)-666.7(If )]TJ -/TT10 1 Tf -2.3366 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( of the form contains a )Tj -/TT10 1 Tf -10.1177 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( assumes a right parenthesis was intended.)Tj --18.255 -2.0667 TD -[(10.)-666.7(If )]TJ -/TT10 1 Tf -2.8421 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[( of the form is a list, DWIM attempts spelling correction on )]TJ -/TT10 1 Tf -26.2991 0 TD -0 Tw -(CAAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0056 Tw -[( of the form using)]TJ -/TT10 1 Tf --31.4253 -1.2889 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -( as spelling list. If successful, )Tj -/TT10 1 Tf -13.1592 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( returns the corrected expression itself.)Tj --24.0773 -2.0667 TD -0.1789 Tw -[(11.)-666.7(The expressions on )]TJ -/TT10 1 Tf -11.1657 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1789 Tw -[( are evaluated in the order they appear. If any)]TJ --17.0503 -1.2889 TD -0.0656 Tw -(returns a non-)Tj -/TT10 1 Tf -6.3782 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( value, this value is treated as the corrected form, it is evaluated, and)]TJ -/TT10 1 Tf --8.1785 -1.2889 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( returns its value.)Tj --4.3171 -2.0667 TD -[(12.)-666.7(Otherwise, )]TJ -/TT10 1 Tf -7.0284 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( attempts spelling correction using )]TJ -/TT10 1 Tf -15.612 0 TD -0 Tw -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.0156 Tw -[( as the spelling list \(see)]TJ --29.1251 -1.2889 TD -0.3078 Tw -[(the Spelling Lists section below\). When )]TJ -/TT10 1 Tf -20.0045 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ing, )Tj -/TT10 1 Tf -2.237 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.3078 Tw -[( also attemps spelling)]TJ --28.8426 -1.2889 TD -0.6244 Tw -(correction on function names not defined but previously encountered, using)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NOFIXFNSLST)Tj -/TT8 1 Tf -6.6011 0 TD -( as a spelling list \(see Chapter 21\).)Tj --8.5177 -2.0667 TD -[(13.)-666.7(If all of the above fail, DWIM gives up.)]TJ -/TT4 1 Tf -10 0 0 10 78 239.2 Tm -(Undefined Function in APPLY)Tj -/TT8 1 Tf -9 0 0 9 78 215.54 Tm -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -( is called as the result of an undefined function in )Tj -/TT10 1 Tf -22.0215 0 TD -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -( error, it proceeds as follows:)Tj --26.4256 -2.0667 TD -0.2811 Tw -[(1.)-666.7(If the function has a definition, DWIM attempts spelling correction on )]TJ -/TT10 1 Tf -35.6236 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.2811 Tw -[( of the)]TJ --36.0073 -1.2889 TD -0 Tw -(definition using )Tj -/TT10 1 Tf -7.2881 0 TD -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -( as spelling list.)Tj --15.3058 -2.0667 TD -0.05 Tw -[(2.)-666.7(If the function has an )]TJ -/TT10 1 Tf -11.2687 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.05 Tw -[( or )]TJ -/TT10 1 Tf -1.5409 0 TD -0 Tw -(CODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.05 Tw -[( property, DWIM prints )]TJ -/TT17 1 Tf -11.0252 0 TD -0 Tw -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -0.12 Tw -[( UNSAVED)]TJ -/TT8 1 Tf -4.9208 0 TD -0.05 Tw -(, performs an)Tj -/TT10 1 Tf --33.3399 -1.2889 TD -0 Tw -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -( and continues. No approval is requested.)Tj --6.8175 -2.0667 TD -0.0689 Tw -[(3.)-666.7(If the function has a property )]TJ -/TT10 1 Tf -14.9994 0 TD -0 Tw -(FILEDEF)Tj -/TT8 1 Tf -4.2007 0 TD -0.0689 Tw -(, DWIM proceeds as in case 6 of undefined )Tj -/TT10 1 Tf -19.7484 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf --37.5319 -1.2889 TD -(of form.)Tj --1.4167 -2 TD -0.0367 Tw -[(4.)-666.7(If the error resulted from type-in, and CLISP is enabled, and the function name contains)]TJ -1.4167 -1.2222 TD -0.7222 Tw -(a CLISP operator, DWIM performs the indicated transformation, e.g., type)Tj -/TT10 1 Tf -T* -0 Tw -(FOO)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(APPEND FIE FUM\))Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj --13.8053 -2.0667 TD -0.0311 Tw -[(5.)-666.7(If the function name contains an )]TJ -/TT10 1 Tf -16.0882 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -(, DWIM assumes a left parenthesis was intended, e.g.,)Tj -/TT10 1 Tf --15.2716 -1.2889 TD -0 Tw -(EDIT9FOO])Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT17 20 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -41 0 obj -<< -/Length 6673 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 143.25 569.54 Tm -0.1611 Tw -[(6.)-666.7(If the "function" is a list, DWIM attempts spelling correction on )]TJ -/TT10 1 Tf -31.2548 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1611 Tw -[( of the list using)]TJ -/TT10 1 Tf --31.6384 -1.2889 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -( as spelling list.)Tj --8.0177 -2.0667 TD -0.0522 Tw -[(7.)-666.7(The expressions on )]TJ -/TT10 1 Tf -10.2857 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0522 Tw -[( are evaluated in the order they appear, and if any)]TJ --16.6703 -1.2889 TD -0.2467 Tw -(returns a non-)Tj -/TT10 1 Tf -6.7404 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2467 Tw -[( value, this value is treated as the function used to continue the)]TJ --8.5407 -1.2889 TD -0 Tw -(computation, i.e., it will be applied to its arguments.)Tj --1.4167 -2 TD -[(8.)-666.7(DWIM attempts spelling correction using )]TJ -/TT10 1 Tf -20.0075 0 TD -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -( as the spelling list.)Tj --26.0085 -2.0667 TD -[(9.)-666.7(DWIM attempts spelling correction using )]TJ -/TT10 1 Tf -20.0075 0 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -( as the spelling list.)Tj --26.5085 -2.0667 TD -[(10.)-666.7(If all fail, DWIM gives up.)]TJ -/TT4 1 Tf -10 0 0 10 102 418.6 Tm -(DWIMUSERFORMS)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 415.89 m -558.01 415.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 393.94 Tm -0.0289 Tw -(The variable )Tj -/TT10 1 Tf -5.8058 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8008 0 TD -0.0289 Tw -[( provides a convenient way of adding to the transformations that )]TJ -/TT10 1 Tf -29.3217 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf --42.9284 -1.2889 TD -0.0322 Tw -[(performs. For example, you might want to change atoms of the form )]TJ -/TT10 1 Tf -31.1728 0 TD -0 Tw -($X)Tj -/TT8 1 Tf -1.2002 0 TD -0.0322 Tw -[( to )]TJ -/TT10 1 Tf -1.4365 0 TD -0.0756 Tw -(\(QA4LOOKUP X\))Tj -/TT8 1 Tf -7.8768 0 TD -0.0322 Tw -[(. Before)]TJ --41.6863 -1.2889 TD -0.1744 Tw -(attempting spelling correction, but after performing other transformations \()Tj -/TT10 1 Tf -34.7696 0 TD -0 Tw -(F/L)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6744 0 TD -(9)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6744 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.1744 Tw -(, CLISP, etc.\),)Tj -/TT10 1 Tf --39.119 -1.2889 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1989 Tw -[( evaluates the expressions on )]TJ -/TT10 1 Tf -14.0872 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1989 Tw -[( in the order they appear. If any expression)]TJ --24.2889 -1.2889 TD -0.0422 Tw -(returns a non-)Tj -/TT10 1 Tf -6.3315 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0422 Tw -[( value, this value is treated as the transformed form to be used. If )]TJ -/TT10 1 Tf -29.8457 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0422 Tw -[( was called)]TJ --40.3779 -1.2889 TD -0 Tw -(from )Tj -/TT10 1 Tf -2.7567 0 TD -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.35 Tw -(, this form is evaluated and the resulting value is returned as the value of)Tj -/TT10 1 Tf --8.1576 -1.2889 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0822 Tw -[(. If )]TJ -/TT10 1 Tf -1.9166 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[( is called from )]TJ -/TT10 1 Tf -6.8162 0 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.0822 Tw -(, this form is treated as a function to be applied to)Tj -/TT10 1 Tf --22.535 -1.2889 TD -0 Tw -(FAULTARGS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0189 Tw -(, and the resulting value is returned as the value of )Tj -/TT10 1 Tf -22.886 0 TD -0 Tw -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -0.0189 Tw -[(. If all of the expressions)]TJ --34.2879 -1.2889 TD -0 Tw -(on )Tj -/TT10 1 Tf -1.5502 0 TD -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1722 Tw -[( return )]TJ -/TT10 1 Tf -3.6247 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6722 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1722 Tw -[( proceeds as though )]TJ -/TT10 1 Tf -9.7865 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -( )Tj -/TT10 1 Tf -0.4222 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4222 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1722 Tw -(, and attempts)Tj --38.6817 -1.2889 TD -0.2967 Tw -[(spelling correction. Note that )]TJ -/TT10 1 Tf -14.8627 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2967 Tw -[( simply takes the value and returns it; the expressions on)]TJ -/TT10 1 Tf --17.2631 -1.2889 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.2811 Tw -[( are responsible for making any modifications to the original expression. The)]TJ --7.8013 -1.2889 TD -0.0689 Tw -(expressions on )Tj -/TT10 1 Tf -6.9264 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0689 Tw -[( should make the transformation permanent, either by associating it)]TJ --14.7276 -1.2889 TD -0 Tw -(with )Tj -/TT10 1 Tf -2.2832 0 TD -(FAULTX)Tj -/TT8 1 Tf -3.6006 0 TD -( via )Tj -/TT10 1 Tf -1.856 0 TD -(CLISPTRAN)Tj -/TT8 1 Tf -5.4009 0 TD -(, or by destructively changing )Tj -/TT10 1 Tf -13.4336 0 TD -(FAULTX)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --30.1748 -2.9556 TD -0.13 Tw -(In order for an expression on )Tj -/TT10 1 Tf -13.8454 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.13 Tw -[( to be able to be effective, it needs to know various)]TJ --21.6467 -1.2889 TD -0.0156 Tw -[(things about the context of the error. Therefore, several of DWIMs internal variables have been made)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(SPECVARS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0656 Tw -[( \(see Chapter 18\) and are therefore "visible" to )]TJ -/TT10 1 Tf -21.0695 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0656 Tw -[(. Below are a list of those)]TJ --33.6715 -1.2889 TD -0 Tw -(variables that may be useful.)Tj -/TT15 1 Tf -2.6667 -2.4822 TD -(FAULTX)Tj -/TT6 1 Tf -10 0 0 10 182.4 171.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 171.6 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1144 Tw -(For unbound atom and undefined car of form errors, )Tj -/TT10 1 Tf -24.634 0 TD -0 Tw -(FAULTX)Tj -/TT8 1 Tf -3.6006 0 TD -0.1144 Tw -[( is the atom or form. For)]TJ --28.2346 -1.2889 TD -0 Tw -(undefined function in )Tj -/TT10 1 Tf -9.9009 0 TD -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -( errors, )Tj -/TT10 1 Tf -3.3838 0 TD -(FAULTX)Tj -/TT8 1 Tf -3.6006 0 TD -( is the name of the function.)Tj -/TT15 1 Tf --22.5524 -2.5489 TD -(FAULTARGS)Tj -/TT6 1 Tf -10 0 0 10 198.6 120.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 120.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0078 Tw -(For undefined function in )Tj -/TT10 1 Tf -11.6791 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0078 Tw -[( errors, )]TJ -/TT10 1 Tf -3.3993 0 TD -0 Tw -(FAULTARGS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0078 Tw -[( is the list of arguments. )]TJ -/TT10 1 Tf -11.1155 0 TD -0 Tw -(FAULTARGS)Tj -/TT8 1 Tf --34.5953 -1.2889 TD -(may be modified or reset by expressions on )Tj -/TT10 1 Tf -19.4575 0 TD -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -44 0 obj -<< -/Length 5933 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-11)Tj -/TT15 1 Tf --39.6667 60.4667 TD -(FAULTAPPLYFLG)Tj -/TT6 1 Tf -10 0 0 10 172.2 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.3489 Tw -(Value is )Tj -/TT10 1 Tf -4.5078 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3489 Tw -[( for undefined function in )]TJ -/TT10 1 Tf -13.4193 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.3489 Tw -[( errors; )]TJ -/TT10 1 Tf -4.0816 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3489 Tw -[( otherwise. The value of)]TJ -/TT10 1 Tf --27.4095 -1.2889 TD -0 Tw -(FAULTAPPLYFLG)Tj -/TT8 1 Tf -7.8013 0 TD -( )Tj -/TT13 1 Tf -0.6256 0 TD -(after)Tj -/TT8 1 Tf -1.833 0 TD -0.3756 Tw -[( an expression on )]TJ -/TT10 1 Tf -9.449 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.3756 Tw -[( returns a non-)]TJ -/TT10 1 Tf -7.6237 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3756 Tw -[( value)]TJ --36.9341 -1.2889 TD -0.1956 Tw -[(determines how the latter value is to be treated. Following an undefined function in)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.2411 Tw -[( error, if an expression on )]TJ -/TT10 1 Tf -12.9774 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.2411 Tw -[( sets )]TJ -/TT10 1 Tf -2.6351 0 TD -0 Tw -(FAULTAPPLYFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.2411 Tw -[( to )]TJ -/TT10 1 Tf -1.8543 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2411 Tw -(, the)Tj --37.8701 -1.2889 TD -0 Tw -(value returned is treated as a form to be evaluated, rather than a function to be applied.)Tj -/TT10 1 Tf -0 -2 TD -(FAULTAPPLYFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.3067 Tw -[( is necessary to distinguish between unbound atom and undefined)]TJ --7.8013 -1.2889 TD -0.21 Tw -(function in )Tj -/TT10 1 Tf -5.5001 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.21 Tw -[( errors, since )]TJ -/TT10 1 Tf -6.4835 0 TD -0 Tw -(FAULTARGS)Tj -/TT8 1 Tf -5.4009 0 TD -0.21 Tw -[( may be )]TJ -/TT10 1 Tf -4.3512 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.21 Tw -[( and )]TJ -/TT10 1 Tf -2.6129 0 TD -0 Tw -(FAULTX)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[( atomic in both)]TJ --32.7499 -1.2889 TD -0 Tw -(cases.)Tj -/TT15 1 Tf --2.6667 -2.4822 TD -(TAIL)Tj -/TT6 1 Tf -10 0 0 10 123.6 442.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 442.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0478 Tw -(For unbound atom errors, )Tj -/TT10 1 Tf -11.9069 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -[( is the tail of the expression )]TJ -/TT10 1 Tf -12.5976 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0478 Tw -[( of which is the unbound)]TJ --28.7052 -1.2889 TD -0.3167 Tw -(atom. )Tj -/TT10 1 Tf -3.6382 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.3167 Tw -[( expression can replace the atom by another expression by)]TJ --11.4395 -1.2889 TD -0 Tw -(performing )Tj -/TT10 1 Tf -5.311 0 TD -(\(/RPLACA TAIL)Tj -/TT19 1 Tf -7.8013 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(EXPR)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT15 1 Tf --18.4294 -2.5489 TD -(PARENT)Tj -/TT6 1 Tf -10 0 0 10 134.4 379.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 379.52 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0122 Tw -(For unbound atom errors, )Tj -/TT10 1 Tf -11.7647 0 TD -0 Tw -(PARENT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0122 Tw -[( is the form in which the unbound atom appears. )]TJ -/TT10 1 Tf -22.2214 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf --37.5867 -1.2889 TD -(is a tail of )Tj -/TT10 1 Tf -4.502 0 TD -(PARENT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT15 1 Tf --10.7692 -2.5489 TD -(TYPE-IN?)Tj -/TT6 1 Tf -10 0 0 10 145.2 328.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 328.38 Tm -([Variable])Tj --35.6011 -1.8444 TD -(True if the error occurred in type-in.)Tj -/TT15 1 Tf --2.6667 -2.4822 TD -(FAULTFN)Tj -/TT6 1 Tf -10 0 0 10 139.8 289.44 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 289.44 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.19 Tw -(Name of the function in which error occurred. )Tj -/TT10 1 Tf -22.6084 0 TD -0 Tw -(FAULTFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.19 Tw -[( is )]TJ -/TT10 1 Tf -1.5948 0 TD -0 Tw -(TYPE-IN)Tj -/TT8 1 Tf -4.2007 0 TD -0.19 Tw -[( when the error)]TJ --32.6047 -1.2889 TD -0.0411 Tw -(occurred in type-in, and )Tj -/TT10 1 Tf -11.0653 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( or )]TJ -/TT10 1 Tf -1.5231 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0411 Tw -[( when the error occurred under an explicit call to)]TJ -/TT10 1 Tf --17.9893 -1.2889 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT15 1 Tf --9.5085 -2.5489 TD -(DWIMIFYFLG)Tj -/TT6 1 Tf -10 0 0 10 156 226.7 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 226.7 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1756 Tw -(True if the error was encountered while )Tj -/TT10 1 Tf -19.0507 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1756 Tw -(ing \(as opposed to happening while)Tj --23.2514 -1.2889 TD -0 Tw -(running a program\).)Tj -/TT15 1 Tf --2.6667 -2.4822 TD -(EXPR)Tj -/TT6 1 Tf -10 0 0 10 123.6 176.16 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 176.16 Tm -([Variable])Tj --35.6011 -1.8444 TD -(Definition of )Tj -/TT10 1 Tf -5.874 0 TD -(FAULTFN)Tj -/TT8 1 Tf -4.2007 0 TD -(, or argument to )Tj -/TT10 1 Tf -7.3872 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(, i.e., the superform in which the error occurs.)Tj --25.1956 -2.9556 TD -0.2511 Tw -(The initial value of )Tj -/TT10 1 Tf -9.5633 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.2511 Tw -[( is )]TJ -/TT10 1 Tf -1.7143 0 TD -0 Tw -(\(\(DWIMLOADFNS?\)\))Tj -/TT8 1 Tf -9.6016 0 TD -0.2511 Tw -(. )Tj -/TT10 1 Tf -1.2484 0 TD -0 Tw -(DWIMLOADFNS?)Tj -/TT8 1 Tf -7.2012 0 TD -0.2511 Tw -[( is a function for)]TJ --37.1301 -1.2889 TD -0.0267 Tw -[(automatically loading functions from files. If )]TJ -/TT10 1 Tf -20.3961 0 TD -0 Tw -(DWIMLOADFNSFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.0267 Tw -[( is )]TJ -/TT10 1 Tf -1.2682 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0267 Tw -[( \(its initial value\), and )]TJ -/TT10 1 Tf -10.0435 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0267 Tw -[( of the)]TJ --42.5096 -1.2889 TD -0.0311 Tw -(form is the name of a function, and the function is contained on a file that has been noticed by the file)Tj -0 -1.2222 TD -0 Tw -(package, the function is loaded, and the computation continues.)Tj -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -49 0 obj -<< -/Length 6595 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT4 1 Tf -0.6 -3.38 TD -(DWIM Functions and Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT15 1 Tf -9 0 0 9 150 547.2 Tm -(DWIMWAIT)Tj -/TT6 1 Tf -10 0 0 10 193.2 547.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 547.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0978 Tw -(Value is the number of seconds that DWIM will wait before it assumes that you are not)Tj -0 -1.2222 TD -0 Tw -(going to respond to a question and uses the default response )Tj -/TT10 1 Tf -27.0566 0 TD -(FIXSPELLDEFAULT)Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj --36.0581 -2.0667 TD -0.0933 Tw -(DWIM operates by dismissing for 250 milliseconds, then checking to see if anything has)Tj -0 -1.2222 TD -0.0844 Tw -[(been typed. If not, it dismisses again, etc. until )]TJ -/TT10 1 Tf -21.7736 0 TD -0 Tw -(DWIMWAIT)Tj -/TT8 1 Tf -4.8008 0 TD -0.0844 Tw -[( seconds have elapsed. Thus,)]TJ --26.5744 -1.2889 TD -0 Tw -(there will be a delay of at most 1/4 second before DWIM responds to your answer.)Tj -/TT15 1 Tf --2.6667 -2.4822 TD -(FIXSPELLDEFAULT)Tj -/TT6 1 Tf -10 0 0 10 231 456.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 456.06 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1744 Tw -(If approval is requested for a spelling correction, and you do not respond, defaults to)Tj -0 -1.2222 TD -0.2122 Tw -(value of )Tj -/TT10 1 Tf -4.2413 0 TD -0 Tw -(FIXSPELLDEFAULT)Tj -/TT8 1 Tf -9.0015 0 TD -0.2122 Tw -(, initially )Tj -/TT10 1 Tf -4.5939 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf -0.7122 0 TD -0.5089 Tw -[( FIXSPELLDEFAULT)]TJ -/TT8 1 Tf -10.1105 0 TD -0.2122 Tw -[( is rebound to )]TJ -/TT10 1 Tf -7.2048 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2122 Tw -[( when)]TJ -/TT10 1 Tf --37.0644 -1.2889 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ing.)Tj -/TT15 1 Tf --6.8674 -2.5489 TD -(ADDSPELLFLG)Tj -/TT6 1 Tf -10 0 0 10 209.4 393.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 393.92 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, suppresses calls to )Tj -/TT10 1 Tf -8.9253 0 TD -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -(. Initially )Tj -/TT10 1 Tf -4.4653 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT15 1 Tf --24.1784 -2.5489 TD -(NOSPELLFLG)Tj -/TT6 1 Tf -10 0 0 10 204 354.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 354.38 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.991 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -(, suppresses )Tj -/TT13 1 Tf -5.7457 0 TD -0 Tw -(all)Tj -/TT8 1 Tf -0.9995 0 TD -0.0711 Tw -[( spelling correction. If some other non-)]TJ -/TT10 1 Tf -17.8332 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -[( value, suppresses spelling)]TJ --27.9699 -1.2889 TD -0.0767 Tw -(correction in programs but not type-in. )Tj -/TT10 1 Tf -18.2623 0 TD -0 Tw -(NOSPELLFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.0767 Tw -[( is initially )]TJ -/TT10 1 Tf -5.1143 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0767 Tw -[(. It is rebound to )]TJ -/TT10 1 Tf -8.229 0 TD -0 Tw -(T)Tj -/TT8 1 Tf --39.4068 -1.2889 TD -(when compiling from a file.)Tj -/TT15 1 Tf --2.6667 -2.4822 TD -(RUNONFLG)Tj -/TT6 1 Tf -10 0 0 10 193.2 292.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 292.24 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, suppresses run-on spelling corrections. Initially )Tj -/TT10 1 Tf -21.9966 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT15 1 Tf --29.1838 -2.4 TD -(DWIMLOADFNSFLG)Tj -/TT10 1 Tf -8.4 0 TD -( )Tj -/TT8 1 Tf -29.8678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9599 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -(, tells )Tj -/TT10 1 Tf -2.641 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -[( that when it encounters a call to an undefined function contained on a file)]TJ --6.6014 -1.2889 TD -0.0355 Tw -(that has been noticed by the file package, to simply load the function. )Tj -/TT10 1 Tf -31.5969 0 TD -0 Tw -(DWIMLOADFNSFLG)Tj -/TT8 1 Tf --31.5969 -1.2889 TD -(is initially )Tj -/TT10 1 Tf -4.6343 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( \(see above\). )Tj -/TT15 1 Tf --7.901 -2.5489 TD -(LPARKEY)Tj -/TT6 1 Tf -10 0 0 10 187.8 191.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 191.3 Tm -([Variable])Tj -/TT15 1 Tf --38.2678 -1.2156 TD -(RPARKEY)Tj -/TT10 1 Tf -4.2 0 TD -( )Tj -/TT6 1 Tf -10 0 0 10 193.2009 180.36 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 180.36 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.43 Tw -[( uses the value of the variables )]TJ -/TT10 1 Tf -16.779 0 TD -0 Tw -(LPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.43 Tw -[( and )]TJ -/TT10 1 Tf -3.0529 0 TD -0 Tw -(RPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.43 Tw -[( \(initially )]TJ -/TT10 1 Tf -5.1124 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.43 Tw -[( and )]TJ -/TT10 1 Tf -3.0529 0 TD -0 Tw -(0)Tj -/TT8 1 Tf --39.3991 -1.2889 TD -0.3044 Tw -(respectively\) to determine the corresponding lower case character for left and right)Tj -0 -1.2222 TD -0.2833 Tw -(parentheses. )Tj -/TT10 1 Tf -6.5877 0 TD -0 Tw -(LPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2833 Tw -[( and )]TJ -/TT10 1 Tf -2.7595 0 TD -0 Tw -(RPARKEY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2833 Tw -[( can be reset for other keyboard layouts. For)]TJ --17.7486 -1.2889 TD -0 Tw -(example, on some terminals left parenthesis is over )Tj -/TT10 1 Tf -22.8413 0 TD -(8)Tj -/TT8 1 Tf -0.6001 0 TD -(, and right parenthesis is over )Tj -/TT10 1 Tf -13.376 0 TD -(9)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT15 1 Tf --40.0842 -2.5489 TD -(OKREEVALST)Tj -/TT6 1 Tf -10 0 0 10 204 106.62 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 106.62 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0444 Tw -(The value of )Tj -/TT10 1 Tf -5.8741 0 TD -0 Tw -(OKREEVALST)Tj -/TT8 1 Tf -6.001 0 TD -0.0444 Tw -[( is a list of functions that )]TJ -/TT10 1 Tf -11.3521 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( can safely reevaluate. If a form)]TJ --25.6276 -1.2889 TD -0.0222 Tw -(is atomic, or )Tj -/TT10 1 Tf -5.7122 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0222 Tw -[( of the form is a member of )]TJ -/TT10 1 Tf -12.3663 0 TD -0 Tw -(OKREEVALST)Tj -/TT8 1 Tf -6.001 0 TD -0.0222 Tw -(, and each of the arguments can)Tj --25.8797 -1.2889 TD -0.1189 Tw -[(safely be reevaluated, then the form can be safely reevaluated. For example, )]TJ -/TT10 1 Tf -35.5172 0 TD -0.2844 Tw -(\(SETQ X)Tj --35.5172 -1.2889 TD -0.09 Tw -(\(CONS \(IPLUS Y Z\) W\)\))Tj -/TT8 1 Tf -12.9621 0 TD -0.0378 Tw -[( is safe to reevaluate because )]TJ -/TT10 1 Tf -13.1485 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5378 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -(, and )Tj -/TT10 1 Tf -2.5184 0 TD -0 Tw -(IPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -[( are all)]TJ --36.9681 -1.2889 TD -0 Tw -(on )Tj -/TT10 1 Tf -1.3779 0 TD -(OKREEVALST)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -ET -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -52 0 obj -<< -/Length 8704 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-13)Tj -/TT15 1 Tf --39.6667 60.4667 TD -(DWIMFLG)Tj -/TT6 1 Tf -10 0 0 10 139.8 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 568.2 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(DWIMFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4211 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4211 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1711 Tw -(, all )Tj -/TT10 1 Tf -2.1743 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1711 Tw -[( operations are disabled. )]TJ -/TT10 1 Tf -12.1793 0 TD -0.4111 Tw -(\(DWIM C\))Tj -/TT8 1 Tf -5.812 0 TD -0.1711 Tw -[( and )]TJ -/TT10 1 Tf -2.5351 0 TD -0.4111 Tw -(\(DWIM T\) )Tj -/TT8 1 Tf -6.2231 0 TD -0 Tw -(set)Tj -/TT10 1 Tf --38.7674 -1.2889 TD -(DWIMFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(\(DWIM NIL\))Tj -/TT8 1 Tf -6.001 0 TD -( sets )Tj -/TT10 1 Tf -2.1528 0 TD -(DWIMFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT15 1 Tf --24.8664 -2.5489 TD -(APPROVEFLG)Tj -/TT6 1 Tf -10 0 0 10 156.0088 517.06 Tm --0.0007 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 517.06 Tm -0 Tc -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(APPROVEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.2556 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2556 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( if )]TJ -/TT10 1 Tf -1.1351 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0056 Tw -[( should ask the user for approval before making a correction that)]TJ --11.2478 -1.2889 TD -0 Tw -(will modify the definition of one of his functions; )Tj -/TT10 1 Tf -21.9385 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj --23.7388 -2.0667 TD -(When )Tj -/TT10 1 Tf -2.9864 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( is put into )]TJ -/TT10 1 Tf -5.3636 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0933 Tw -[( mode with )]TJ -/TT10 1 Tf -5.5818 0 TD -0.2233 Tw -(\(DWIM C\))Tj -/TT8 1 Tf -5.6242 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5933 0 TD -(APPROVEFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.0933 Tw -[( is set to )]TJ -/TT10 1 Tf -4.1892 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -(; for)Tj -/TT10 1 Tf --38.1408 -1.2889 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -( mode, )Tj -/TT10 1 Tf -3.2686 0 TD -(APPROVEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( is set to )Tj -/TT10 1 Tf -3.8159 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT15 1 Tf --22.3532 -2.5489 TD -(LAMBDASPLST)Tj -/TT6 1 Tf -10 0 0 10 161.4 435.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 435.72 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( uses the value of )]TJ -/TT10 1 Tf -8.2338 0 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.07 Tw -[( as the spelling list when correcting "bad" function)]TJ --17.2353 -1.2889 TD -0.01 Tw -[(definitions. Initially )]TJ -/TT10 1 Tf -9.2512 0 TD -0.0233 Tw -(\(LAMBDA NLAMBDA\))Tj -/TT8 1 Tf -9.6249 0 TD -0.01 Tw -[(. You may wish to add to )]TJ -/TT10 1 Tf -11.6816 0 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.01 Tw -[( if you)]TJ --37.1587 -1.2889 TD -0.2533 Tw -(elect to define new "function types" via an appropriate )Tj -/TT10 1 Tf -26.5998 0 TD -0 Tw -(DWIMUSERFORMS)Tj -/TT8 1 Tf -7.8013 0 TD -0.2533 Tw -[( entry. For)]TJ --34.4011 -1.2889 TD -0 Tw -(example, the )Tj -/TT10 1 Tf -5.8862 0 TD -(QLAMBDA)Tj -/TT8 1 Tf -4.2007 0 TD -(s of SRIs QLISP are handled in this way.)Tj -/TT4 1 Tf -10 0 0 10 54 341.38 Tm -(Spelling Correction)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 338.67 m -510.01 338.67 l -S -BT -/TT8 1 Tf -9 0 0 9 78 316.72 Tm -0.0022 Tw -(The spelling corrector is given as arguments a misspelled word \(word means symbol\), a spelling list \(a)Tj -0 -1.2222 TD -0.1011 Tw -(list of words\), and a number: )Tj -/TT17 1 Tf -13.6482 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT17 1 Tf -0.6011 0 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1011 Tw -(, and )Tj -/TT17 1 Tf -2.6451 0 TD -0 Tw -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1011 Tw -[( respectively. Its task is to find that word on)]TJ -/TT17 1 Tf --24.6956 -1.2889 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1378 Tw -[( which is closest to )]TJ -/TT17 1 Tf -9.1923 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1378 Tw -[(, in the sense described below. This word is called a )]TJ -/TT13 1 Tf -24.917 0 TD -0 Tw -(respelling)Tj -/TT8 1 Tf -3.9463 0 TD -0.1378 Tw -[( of)]TJ -/TT17 1 Tf --44.0566 -1.2889 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1989 Tw -(. )Tj -/TT17 1 Tf -1.1478 0 TD -0 Tw -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1989 Tw -[( specifies the minimum "closeness" between )]TJ -/TT17 1 Tf -20.8286 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1989 Tw -[( and a respelling. If the spelling)]TJ --29.7776 -1.2889 TD -0.1122 Tw -(corrector cannot find a word on )Tj -/TT17 1 Tf -14.9536 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -[( closer to )]TJ -/TT17 1 Tf -4.5373 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -[( than )]TJ -/TT17 1 Tf -2.7147 0 TD -0 Tw -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1122 Tw -(, or if it finds two or more words)Tj --30.0069 -1.2889 TD -0.0622 Tw -(equally close, its value is )Tj -/TT10 1 Tf -11.4688 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -(, otherwise its value is the respelling. The spelling corrector can also be)Tj --13.2691 -1.2889 TD -0.1033 Tw -(given an optional functional argument, )Tj -/TT17 1 Tf -18.0772 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -(, to be used for selecting out a subset of )Tj -/TT17 1 Tf -18.6134 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1033 Tw -(, i.e., only)Tj --40.8913 -1.2889 TD -0 Tw -(those members of )Tj -/TT17 1 Tf -8.0815 0 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -( that satisfy )Tj -/TT17 1 Tf -5.3384 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( will be considered as possible respellings.)Tj --17.6206 -2.9556 TD -0.18 Tw -(The exact algorithm for computing the spelling metric is described later, but briefly "closeness" is)Tj -0 -1.2222 TD -0.3844 Tw -(inversely proportional to the number of disagreements between the two words, and directly)Tj -T* -0.0489 Tw -[(proportional to the length of the longer word. For example, )]TJ -/TT10 1 Tf -27.2306 0 TD -0 Tw -(PRTTYPRNT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0489 Tw -[( is "closer" to )]TJ -/TT10 1 Tf -6.1033 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf --38.7348 -1.2889 TD -(than )Tj -/TT10 1 Tf -2.3469 0 TD -(CS)Tj -/TT8 1 Tf -1.2002 0 TD -0.1067 Tw -[( is to )]TJ -/TT10 1 Tf -2.6569 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[( even though both pairs of words have the same number of disagreements. The)]TJ --8.6044 -1.2889 TD -0.12 Tw -(spelling corrector operates by proceeding down )Tj -/TT17 1 Tf -22.1209 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.12 Tw -(, and computing the closeness between each)Tj --25.1214 -1.2889 TD -0.0644 Tw -(word and )Tj -/TT17 1 Tf -4.7075 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0644 Tw -[(, and keeping a list of those that are closest. Certain differences between words are)]TJ --7.708 -1.2889 TD -0.1244 Tw -(not counted as disagreements, for example a single transposition, e.g., )Tj -/TT10 1 Tf -32.407 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1244 Tw -[( to )]TJ -/TT10 1 Tf -1.621 0 TD -0 Tw -(CNOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1244 Tw -(, or a doubled)Tj --38.8288 -1.2889 TD -0.0178 Tw -(letter, e.g., )Tj -/TT10 1 Tf -4.8671 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( to )]TJ -/TT10 1 Tf -1.4076 0 TD -0 Tw -(CONSS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0178 Tw -[(, etc. In the event that the spelling corrector finds a word on )]TJ -/TT17 1 Tf -27.0961 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0178 Tw -[( with )]TJ -/TT13 1 Tf -2.5688 0 TD -0 Tw -(no)Tj -/TT8 1 Tf --44.3409 -1.2889 TD -0.0833 Tw -[(disagreements, it will stop searching and return this word as the respelling. Otherwise, the spelling)]TJ -0 -1.2222 TD -0.1156 Tw -[(corrector continues through the entire spelling list. Then if it has found one and only one "closest")]TJ -T* -0.0189 Tw -[(word, it returns this word as the respelling. For example, if )]TJ -/TT17 1 Tf -26.7628 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0189 Tw -[( is )]TJ -/TT10 1 Tf -1.2526 0 TD -0 Tw -(VONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -(, the spelling corrector will)Tj --33.4163 -1.2889 TD -0.03 Tw -(probably return )Tj -/TT10 1 Tf -7.3359 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -[( as the respelling. However, if )]TJ -/TT17 1 Tf -13.9141 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.03 Tw -[( is )]TJ -/TT10 1 Tf -1.2748 0 TD -0 Tw -(CONZ)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -(, the spelling corrector will not be)Tj --30.3261 -1.2889 TD -0 Tw -(able to return a respelling, since )Tj -/TT10 1 Tf -14.3345 0 TD -(CONZ)Tj -/TT8 1 Tf -2.4004 0 TD -( is equally close to both )Tj -/TT10 1 Tf -10.5581 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(. If the spelling corrector)Tj --34.2866 -1.2889 TD -(finds an acceptable respelling, it interacts with you as described earlier.)Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -55 0 obj -<< -/Length 8816 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0989 Tw -(In the special case that the misspelled word contains one or more )Tj -/TT10 1 Tf -30.1955 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0989 Tw -(s \(escape\), the spelling corrector)Tj --30.7956 -1.2889 TD -0.0256 Tw -(searches for those words on )Tj -/TT17 1 Tf -12.6727 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0256 Tw -[( that match )]TJ -/TT17 1 Tf -5.2959 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0256 Tw -(, where a )Tj -/TT10 1 Tf -4.3457 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0256 Tw -[( can match any number of characters)]TJ --28.9154 -1.2889 TD -0.1389 Tw -(\(including 0\), e.g., )Tj -/TT10 1 Tf -8.6188 0 TD -0 Tw -(FOO$)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( matches )]TJ -/TT10 1 Tf -4.4155 0 TD -0 Tw -(FOO1)Tj -/TT8 1 Tf -2.4004 0 TD -0.1389 Tw -[( and )]TJ -/TT10 1 Tf -2.4706 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -(, but not )Tj -/TT10 1 Tf -4.3532 0 TD -0 Tw -(NEWFOO)Tj -/TT8 1 Tf -3.6006 0 TD -0.1389 Tw -(. )Tj -/TT10 1 Tf -1.0278 0 TD -0 Tw -($FOO$)Tj -/TT8 1 Tf -3.0005 0 TD -0.1389 Tw -[( matches all three. Both)]TJ --34.0881 -1.2889 TD -0.2822 Tw -(completion and correction may be involved, e.g. )Tj -/TT10 1 Tf -23.541 0 TD -0 Tw -(RPETTY$)Tj -/TT8 1 Tf -4.2007 0 TD -0.2822 Tw -[( will match )]TJ -/TT10 1 Tf -6.0386 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.2822 Tw -(, with one)Tj --40.3813 -1.2889 TD -0.1578 Tw -[(mistake. The entire spelling list is always searched, and if more than one respelling is found, the)]TJ -0 -1.2222 TD -0.1233 Tw -(spelling corrector prints )Tj -/TT10 1 Tf -11.224 0 TD -0 Tw -(AMBIGUOUS)Tj -/TT8 1 Tf -5.4009 0 TD -0.1233 Tw -(, and returns )Tj -/TT10 1 Tf -6.267 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1233 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.2394 0 TD -0 Tw -(CON$)Tj -/TT8 1 Tf -2.4004 0 TD -0.1233 Tw -[( would be ambiguous if)]TJ --34.332 -1.2889 TD -0 Tw -(both )Tj -/TT10 1 Tf -2.4718 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.2144 Tw -[( and )]TJ -/TT10 1 Tf -2.6218 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.2144 Tw -[( were on the spelling list. If the spelling corrector finds one and only one)]TJ --9.8943 -1.2889 TD -0 Tw -(respelling, it interacts with you as described earlier.)Tj -0 -2.8889 TD -0.0333 Tw -(For both spelling correction and spelling completion, regardless of whether or not you approve of the)Tj -0 -1.2222 TD -0.0033 Tw -(spelling correctors choice, the respelling is moved to the front of )Tj -/TT17 1 Tf -28.9039 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0033 Tw -(. Since many respellings are of)Tj --31.9043 -1.2889 TD -0.2355 Tw -(the type with no disagreements, this procedure has the effect of considerably reducing the time)Tj -0 -1.2222 TD -0 Tw -(required to correct the spelling of frequently misspelled words.)Tj -/TT4 1 Tf -10 0 0 10 126 402 Tm -(Synonyms)Tj -/TT8 1 Tf -9 0 0 9 126 378.34 Tm -0.2044 Tw -[(Spelling lists also provide a way of defining synonyms for a particular context. If a dotted pair)]TJ -T* -0.1289 Tw -(appears on a spelling list \(instead of just an atom\), )Tj -/TT10 1 Tf -23.6956 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1289 Tw -[( is interpreted as the correct spelling of the)]TJ --25.4959 -1.2889 TD -0.1511 Tw -(misspelled word, and )Tj -/TT10 1 Tf -10.3054 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1511 Tw -[( as the antecedent for that word. If )]TJ -/TT10 1 Tf -17.0431 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1511 Tw -[( is )]TJ -/TT13 1 Tf -1.5171 0 TD -0 Tw -(identical)Tj -/TT8 1 Tf -3.4629 0 TD -0.1511 Tw -[( with the misspelled)]TJ --35.929 -1.2889 TD -0.2844 Tw -[(word, the antecedent is returned without any interaction or approval being necessary. If the)]TJ -0 -1.2222 TD -0.0478 Tw -(misspelled word )Tj -/TT13 1 Tf -7.7547 0 TD -0 Tw -(corrects)Tj -/TT8 1 Tf -3.1479 0 TD -0.0478 Tw -[( to )]TJ -/TT10 1 Tf -1.4676 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0478 Tw -[( of the dotted pair, the usual interaction and approval will take place,)]TJ --14.1706 -1.2889 TD -0.0656 Tw -(and then the antecedent, i.e., )Tj -/TT10 1 Tf -13.2052 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( of the dotted pair, is returned. For example,you could make )]TJ -/TT10 1 Tf -27.9376 0 TD -0 Tw -(IFLG)Tj -/TT8 1 Tf --42.9431 -1.2889 TD -0.0489 Tw -(synonymous with )Tj -/TT10 1 Tf -8.3326 0 TD -0 Tw -(CLISPIFTRANFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.0489 Tw -[( by adding )]TJ -/TT10 1 Tf -5.1569 0 TD -0.1178 Tw -(\(IFLG . CLISPIFTRANFLG\))Tj -/TT8 1 Tf -14.0378 0 TD -0.0489 Tw -[( to )]TJ -/TT10 1 Tf -1.4698 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0489 Tw -(, the)Tj --43.3996 -1.2889 TD -0.0278 Tw -(spelling list for unbound atoms. Similarly, you could make )Tj -/TT10 1 Tf -26.5205 0 TD -0 Tw -(OTHERWISE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0278 Tw -[( mean the same as )]TJ -/TT10 1 Tf -8.4294 0 TD -0 Tw -(ELSEIF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( by)]TJ --43.9514 -1.2889 TD -0 Tw -(adding )Tj -/TT10 1 Tf -3.4442 0 TD -0.1033 Tw -(\(OTHERWISE . ELSEIF\))Tj -/TT8 1 Tf -12.2086 0 TD -0.0433 Tw -[( to )]TJ -/TT10 1 Tf -1.4587 0 TD -0 Tw -(CLISPIFWORDSPLST)Tj -/TT8 1 Tf -9.6016 0 TD -0.0433 Tw -(, or make )Tj -/TT10 1 Tf -4.4889 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -[( be synonymous with )]TJ -/TT10 1 Tf -9.9404 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf --41.7425 -1.2889 TD -0.1056 Tw -(by adding )Tj -/TT10 1 Tf -4.9714 0 TD -0.2522 Tw -(\(L . LAMBDA\))Tj -/TT8 1 Tf -7.7056 0 TD -0.1056 Tw -[( to )]TJ -/TT10 1 Tf -1.5832 0 TD -0 Tw -(LAMBDASPLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1056 Tw -[(. You can also use )]TJ -/TT10 1 Tf -8.9917 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.1056 Tw -[( as a variable without confusion,)]TJ --30.4531 -1.2889 TD -0 Tw -(since the association of )Tj -/TT10 1 Tf -10.3594 0 TD -(L)Tj -/TT8 1 Tf -0.6001 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -( occurs only in the appropriate context.)Tj -/TT4 1 Tf -10 0 0 10 126 235.6 Tm -(Spelling Lists)Tj -/TT8 1 Tf -9 0 0 9 126 211.94 Tm -0.1833 Tw -(Any list of atoms can be used as a spelling list, e.g., )Tj -/TT10 1 Tf -24.9866 0 TD -0 Tw -(BROKENFNS)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.6833 0 TD -(FILELST)Tj -/TT8 1 Tf -4.2007 0 TD -0.1833 Tw -[(, etc. Various system)]TJ --35.2715 -1.2889 TD -0.1633 Tw -(packages have their own spellings lists, e.g., )Tj -/TT10 1 Tf -20.8445 0 TD -0 Tw -(LISPXCOMS)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.6633 0 TD -(CLISPFORWORDSPLST)Tj -/TT8 1 Tf -10.2017 0 TD -(, )Tj -/TT10 1 Tf -0.6633 0 TD -(EDITCOMSA)Tj -/TT8 1 Tf -5.4009 0 TD -0.1633 Tw -(, etc.)Tj --43.1746 -1.2889 TD -0.0211 Tw -(These are documented under their corresponding sections, and are also indexed under "spelling lists.")Tj -0 -1.2222 TD -0.1011 Tw -(In addition to these spelling lists, the system maintains, i.e., automatically adds to, and occasionally)Tj -T* -0.0889 Tw -(prunes, four lists used solely for spelling correction: )Tj -/TT10 1 Tf -23.8683 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5889 0 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5889 0 TD -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0889 Tw -(, and)Tj -/TT10 1 Tf --43.049 -1.2889 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0367 Tw -(. These spelling lists are maintained )Tj -/TT13 1 Tf -16.2366 0 TD -0 Tw -(only)Tj -/TT8 1 Tf -1.7778 0 TD -0.0367 Tw -[( when )]TJ -/TT10 1 Tf -3.0504 0 TD -0 Tw -(ADDSPELLFLG)Tj -/TT8 1 Tf -6.6011 0 TD -0.0367 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3311 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj -/TT10 1 Tf -0.5367 0 TD -(ADDSPELLFLG)Tj -/TT8 1 Tf --38.7349 -1.2889 TD -(is initially )Tj -/TT10 1 Tf -4.6343 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT15 1 Tf --2.5677 -2.5489 TD -(SPELLINGS1)Tj -/TT6 1 Tf -10 0 0 10 204 120.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 120.6 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -0.0811 Tw -[( is a list of functions used for spelling correction when an input is typed in)]TJ --6.001 -1.2889 TD -0.3989 Tw -(apply format, and the function is undefined, e.g., )Tj -/TT10 1 Tf -25.0813 0 TD -0 Tw -(EDTIF\(FOO\))Tj -/TT8 1 Tf -6.001 0 TD -0.3989 Tw -(. )Tj -/TT10 1 Tf -1.5478 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -0.3989 Tw -[( is)]TJ --38.631 -1.2889 TD -0.0344 Tw -(initialized to contain )Tj -/TT10 1 Tf -9.4495 0 TD -0 Tw -(DEFINEQ)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(MAKEFILE)Tj -/TT8 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(TCOMPL)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -(, etc. Whenever)Tj -/TT10 1 Tf --33.1252 -1.2889 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0722 Tw -[( is given an input in apply format, i.e., a function and arguments, the name of the)]TJ --3.0005 -1.2889 TD -0 Tw -(function is added to )Tj -/TT10 1 Tf -9.1055 0 TD -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -( if the function has a definition.)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -58 0 obj -<< -/Length 9768 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-15)Tj -/TT8 1 Tf --37 60.6156 TD -0.0144 Tw -(For example, typing )Tj -/TT10 1 Tf -9.202 0 TD -0 Tw -(CALLS\(EDITF\))Tj -/TT8 1 Tf -7.2012 0 TD -0.0144 Tw -[( will cause )]TJ -/TT10 1 Tf -4.9501 0 TD -0 Tw -(CALLS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0144 Tw -[( to be added to )]TJ -/TT10 1 Tf -6.9101 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -0.0144 Tw -(. Thus)Tj --37.2649 -1.2889 TD -0.3467 Tw -(if you typed )Tj -/TT10 1 Tf -6.6923 0 TD -0 Tw -(CALLS\(EDITF\))Tj -/TT8 1 Tf -7.2012 0 TD -0.3467 Tw -[( and later typed )]TJ -/TT10 1 Tf -8.644 0 TD -0 Tw -(CALLLS\(EDITV\))Tj -/TT8 1 Tf -7.8013 0 TD -0.3467 Tw -(, since )Tj -/TT10 1 Tf -3.6631 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf --34.0018 -1.2889 TD -(would then contain )Tj -/TT10 1 Tf -8.875 0 TD -(CALLS)Tj -/TT8 1 Tf -3.0005 0 TD -(, DWIM would be successful in correcting )Tj -/TT10 1 Tf -18.773 0 TD -(CALLLS)Tj -/TT8 1 Tf -3.6006 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(CALLS)Tj -/TT8 1 Tf -3.0005 0 TD -(. )Tj -/TT15 1 Tf --41.2883 -2.5489 TD -(SPELLINGS2)Tj -/TT6 1 Tf -10 0 0 10 156 523.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 523.4 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.1978 Tw -[( is a list of functions used for spelling correction for all other undefined)]TJ --6.001 -1.2889 TD -0.1567 Tw -(functions. It is initialized to contain functions such as )Tj -/TT10 1 Tf -25.1224 0 TD -0 Tw -(ADD1)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6567 0 TD -(APPEND)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6567 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6567 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6567 0 TD -(GO)Tj -/TT8 1 Tf -1.2002 0 TD -(,)Tj -/TT10 1 Tf --39.751 -1.2889 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(RETURN)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -(, etc. Whenever )Tj -/TT10 1 Tf -7.2901 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -[( is given a non-atomic)]TJ --29.9766 -1.2889 TD -0.0522 Tw -(form, the name of the function is added to )Tj -/TT10 1 Tf -19.3294 0 TD -0 Tw -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.0522 Tw -(. For example, typing )Tj -/TT10 1 Tf -9.8676 0 TD -0 Tw -(\(RETFROM)Tj --35.1979 -1.2889 TD -0.0356 Tw -(\(STKPOS \(QUOTE FOO\) 2\)\))Tj -/TT8 1 Tf -13.9089 0 TD -0.0144 Tw -[( to a break would add )]TJ -/TT10 1 Tf -10.0486 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.0144 Tw -[( to )]TJ -/TT10 1 Tf -1.401 0 TD -0 Tw -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.0144 Tw -(. Function)Tj --35.5601 -1.2889 TD -0.3244 Tw -(names are also added to )Tj -/TT10 1 Tf -12.5583 0 TD -0 Tw -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.3244 Tw -[( by )]TJ -/TT10 1 Tf -2.2583 0 TD -0 Tw -(DEFINE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.8244 0 TD -(DEFINEQ)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.8244 0 TD -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -0.3244 Tw -[( \(when loading)]TJ --32.668 -1.2889 TD -0 Tw -(compiled code\), )Tj -/TT10 1 Tf -7.3081 0 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT15 1 Tf --27.9201 -2.5489 TD -(SPELLINGS3)Tj -/TT6 1 Tf -10 0 0 10 156 414.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 414.26 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.3022 Tw -[( is a list of words used for spelling correction on all unbound atoms.)]TJ -/TT10 1 Tf --6.001 -1.2889 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.8233 Tw -[( is initialized to )]TJ -/TT10 1 Tf -10.3334 0 TD -0 Tw -(EDITMACROS)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -1.3233 0 TD -(BREAKMACROS)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -1.3233 0 TD -(BROKENFNS)Tj -/TT8 1 Tf -5.4009 0 TD -0.8233 Tw -(, and)Tj -/TT10 1 Tf --36.9839 -1.2889 TD -0 Tw -(ADVISEDFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.16 Tw -(. Whenever )Tj -/TT10 1 Tf -5.631 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.16 Tw -[( is given an atom to evaluate, the name of the atom is)]TJ --14.6325 -1.2889 TD -0.1489 Tw -(added to )Tj -/TT10 1 Tf -4.4814 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.1489 Tw -[( if the atom has a value. Atoms are also added to )]TJ -/TT10 1 Tf -23.5215 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf --34.0039 -1.2889 TD -0.0867 Tw -(whenever they are edited by )Tj -/TT10 1 Tf -13.302 0 TD -0 Tw -(EDITV)Tj -/TT8 1 Tf -3.0005 0 TD -0.0867 Tw -(, and whenever they are set via )Tj -/TT10 1 Tf -14.5969 0 TD -0 Tw -(RPAQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0867 Tw -[( or )]TJ -/TT10 1 Tf -1.6143 0 TD -0 Tw -(RPAQQ)Tj -/TT8 1 Tf -3.0005 0 TD -0.0867 Tw -(. For)Tj --37.9145 -1.2889 TD -0.3967 Tw -(example, when a file is loaded, all of the variables set in the file are added to)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -(. Atoms are also added to )Tj -/TT10 1 Tf -11.6049 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( when they are set by a )]TJ -/TT10 1 Tf -10.4762 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0133 Tw -[( input,)]TJ --37.0835 -1.2889 TD -0.0211 Tw -(e.g., typing )Tj -/TT10 1 Tf -5.24 0 TD -0.0522 Tw -(\(SETQ FOO \(REVERSE \(SETQ FIE ...\)\)\))Tj -/TT8 1 Tf -21.2645 0 TD -0.0211 Tw -[( will add both )]TJ -/TT10 1 Tf -6.5205 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0211 Tw -[( and )]TJ -/TT10 1 Tf -2.2351 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0211 Tw -[( to)]TJ -/TT10 1 Tf --38.8607 -1.2889 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT15 1 Tf --8.6676 -2.5489 TD -(USERWORDS)Tj -/TT6 1 Tf -10 0 0 10 150.6 282.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 282.52 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0311 Tw -[( is a list containing both functions and variables that you have )]TJ -/TT13 1 Tf -28.0149 0 TD -0 Tw -(referred)Tj -/TT8 1 Tf -3.1128 0 TD -0.0311 Tw -[( to, e.g.,)]TJ --36.5286 -1.2889 TD -0.4433 Tw -(by breaking or editing. )Tj -/TT10 1 Tf -12.1225 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.4433 Tw -[( is used for spelling correction by )]TJ -/TT10 1 Tf -18.0311 0 TD -0 Tw -(ARGLIST)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj -/TT10 1 Tf --39.7551 -1.2889 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.7022 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.7022 0 TD -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7022 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7022 0 TD -(ADVISE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2022 Tw -(, etc. )Tj -/TT10 1 Tf -2.6535 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.2022 Tw -[( is initially )]TJ -/TT10 1 Tf -5.4909 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --39.758 -1.2889 TD -0.1489 Tw -(Function names are added to it by )Tj -/TT10 1 Tf -16.3743 0 TD -0 Tw -(DEFINE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(DEFINEQ,)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.3989 0 TD -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -0.1489 Tw -(, \(when loading compiled)Tj --28.2238 -1.2889 TD -0.6178 Tw -(code, or loading exprs to property lists\) )Tj -/TT10 1 Tf -21.9973 0 TD -0 Tw -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -1.1178 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -1.1178 0 TD -(EDITV)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -1.1178 0 TD -(EDITP)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj -/TT10 1 Tf --39.753 -1.2889 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0267 Tw -(, etc. Variable names are added to )Tj -/TT10 1 Tf -15.3424 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0267 Tw -[( at the same time as they are)]TJ --27.3444 -1.2889 TD -0.0456 Tw -(added to )Tj -/TT10 1 Tf -4.2747 0 TD -0 Tw -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.0456 Tw -(. In addition, the variable )Tj -/TT10 1 Tf -11.616 0 TD -0 Tw -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -0.0456 Tw -[( is always set to the last word)]TJ --26.6924 -1.2889 TD -0.1389 Tw -(added to )Tj -/TT10 1 Tf -4.4614 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.1389 Tw -(, i.e., the last function or variable referred to by the user, and the)Tj --9.8623 -1.2889 TD -0.0556 Tw -(respelling of )Tj -/TT10 1 Tf -5.8792 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( is defined to be the value of )]TJ -/TT10 1 Tf -13.1534 0 TD -0 Tw -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -0.0556 Tw -(. Thus, if you had just defined a)Tj --25.6337 -1.2889 TD -0 Tw -(function, you can then prettyprint it by typing )Tj -/TT10 1 Tf -20.6753 0 TD -(PP\(\))Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --28.409 -2.9556 TD -0.0711 Tw -(Each of the above four spelling lists are divided into two sections separated by a special marker \(the)Tj -0 -1.2222 TD -0.2033 Tw -(value of the variable )Tj -/TT10 1 Tf -10.0917 0 TD -0 Tw -(SPELLSTR1)Tj -/TT8 1 Tf -5.4009 0 TD -0.2033 Tw -[(\). The first section contains the "permanent" words; the second)]TJ --15.4925 -1.2889 TD -0.0311 Tw -[(section contains the temporary words. New words are added to the corresponding spelling list at the)]TJ -0 -1.2222 TD -0.0133 Tw -(front of its temporary section \(except that functions added to )Tj -/TT10 1 Tf -27.2354 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( or )]TJ -/TT10 1 Tf -1.4676 0 TD -0 Tw -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( by )]TJ -/TT10 1 Tf -1.636 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf --42.341 -1.2889 TD -0.0222 Tw -(are always added to the end of the permanent section. If the word is already in the temporary section,)Tj -0 -1.2222 TD -0.0089 Tw -(it is moved to the front of that section; if the word is in the permanent section, no action is taken. If the)Tj -T* -0.2811 Tw -(length of the temporary section then exceeds a specified number, the last \(oldest\) word in the)Tj -T* -0.0567 Tw -(temporary section is forgotten, i.e., deleted. This procedure prevents the spelling lists from becoming)Tj -T* -0.0578 Tw -(cluttered with unimportant words that are no longer being used, and thereby slowing down spelling)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -61 0 obj -<< -/Length 5613 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1033 Tw -(correction time. Since the spelling corrector usually moves each word selected as a respelling to the)Tj -0 -1.2222 TD -0.0844 Tw -(front of its spelling list, the word is thereby moved into the permanent section. Thus once a word is)Tj -T* -0 Tw -(misspelled and corrected, it is considered important and will never be forgotten.)Tj -0 -2.8889 TD -0.0222 Tw -(The spelling correction algorithm will not alter a spelling list unless it contains the special marker \(the)Tj -0 -1.2222 TD -0 Tw -(value of )Tj -/TT10 1 Tf -3.8169 0 TD -(SPELLSTR1)Tj -/TT8 1 Tf -5.4009 0 TD -(\). This provides a way to ensure that a spelling list will not be altered. )Tj -/TT15 1 Tf --6.5511 -2.5489 TD -(#SPELLINGS1)Tj -/TT6 1 Tf -10 0 0 10 209.4 487.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 487.6 Tm -([Variable])Tj -/TT15 1 Tf --38.2678 -1.2156 TD -(#SPELLINGS2)Tj -/TT6 1 Tf -10 0 0 10 209.4 476.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 476.66 Tm -([Variable])Tj -/TT15 1 Tf --38.2678 -1.2156 TD -(#SPELLINGS3)Tj -/TT6 1 Tf -10 0 0 10 209.4 465.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 465.72 Tm -([Variable])Tj -/TT15 1 Tf --38.2678 -1.2156 TD -(#USERWORDS)Tj -/TT6 1 Tf -10 0 0 10 204 454.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 454.78 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.5433 Tw -(The maximum length of the temporary section for )Tj -/TT10 1 Tf -26.7085 0 TD -0 Tw -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -1.0433 0 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -(,)Tj -/TT10 1 Tf --39.7538 -1.2889 TD -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -0.1711 Tw -[( and )]TJ -/TT10 1 Tf -2.5351 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.1711 Tw -[( is given by the value of )]TJ -/TT10 1 Tf -11.9492 0 TD -0 Tw -(#SPELLINGS1)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.6711 0 TD -(#SPELLINGS2)Tj -/TT8 1 Tf -6.6011 0 TD -(,)Tj -/TT10 1 Tf --39.7595 -1.2889 TD -(#SPELLINGS3)Tj -/TT8 1 Tf -6.6011 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(#USERWORDS)Tj -/TT8 1 Tf -6.001 0 TD -(, initialized to 30, 30, 30, and 60 respectively.)Tj --15.0449 -2.0667 TD -(You can alter these values to modify the performance behavior of spelling correction. )Tj -/TT4 1 Tf -10 0 0 10 126 369.04 Tm -(Generators for Spelling Correction)Tj -/TT8 1 Tf -9 0 0 9 126 345.38 Tm -0.0567 Tw -(For some applications, it is more convenient to )Tj -/TT13 1 Tf -21.3117 0 TD -0 Tw -(generate)Tj -/TT8 1 Tf -3.3896 0 TD -0.0567 Tw -[( candidates for a respelling one by one, rather)]TJ --24.7014 -1.2222 TD -0.1811 Tw -(than construct a complete list of all possible candidates, e.g., spelling correction involving a large)Tj -T* -0.0278 Tw -[(directory of files, or a natural language data base. For these purposes, )]TJ -/TT17 1 Tf -31.8371 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0278 Tw -[( can be an array \(of any)]TJ --34.8376 -1.2889 TD -0.0667 Tw -[(size\). The first element of this array is the generator function, which is called with the array itself as)]TJ -0 -1.2222 TD -0.08 Tw -[(its argument. Thus the function can use the remainder of the array to store "state" information, e.g.,)]TJ -T* -0.0167 Tw -[(the last position on a file, a pointer into a data structure, etc. The value returned by the function is the)]TJ -T* -0.0411 Tw -[(next candidate for respelling. If )]TJ -/TT10 1 Tf -14.5767 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[( is returned, the spelling "list" is considered to be exhausted, and)]TJ --16.377 -1.2889 TD -0.3433 Tw -[(the closest match is returned. If a candidate is found with no disagreements, it is returned)]TJ -0 -1.2222 TD -0 Tw -(immediately without waiting for the "list" to exhaust.)Tj -/TT17 1 Tf -0 -2.8889 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0689 Tw -[( can also be a generator, i.e. the value of the function )]TJ -/TT10 1 Tf -24.2222 0 TD -0 Tw -(GENERATOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -[( \(Chapter 11\). The generator)]TJ -/TT17 1 Tf --32.6235 -1.2889 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1656 Tw -[( will be started up whenever the spelling corrector needs the next candidate, and it should)]TJ --3.0005 -1.2889 TD -0.0678 Tw -(return candidates via the function )Tj -/TT10 1 Tf -15.5869 0 TD -0 Tw -(PRODUCE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0678 Tw -(. For example, the following could be used as a "spelling)Tj --19.7876 -1.2889 TD -0 Tw -(list" which effectively contains all functions in the system:)Tj -/TT10 1 Tf -5.3333 -2.8222 TD -([GENERATOR)Tj -4 -1 TD -0.15 Tw -(\(MAPATOMS \(FUNCTION \(LAMBDA \(X\) \(if \(GETD X\) then \(PRODUCE)Tj --4 -1 TD -0 Tw -(X])Tj -/TT4 1 Tf -10 0 0 10 126 126.04 Tm -(Spelling Corrector Algorithm)Tj -/TT8 1 Tf -9 0 0 9 126 102.38 Tm -0.1189 Tw -(The basic philosophy of )Tj -/TT10 1 Tf -11.2602 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1189 Tw -[( spelling correction is to count the number of disagreements between)]TJ --13.6606 -1.2889 TD -0.0256 Tw -(two words, and use this number divided by the length of the longer of the two words as a measure of)Tj -0 -1.2222 TD -0.0878 Tw -[(their relative disagreement. One minus this number is then the relative agreement or closeness. For)]TJ -T* -0 Tw -(example, )Tj -/TT10 1 Tf -4.4324 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1833 Tw -[( and )]TJ -/TT10 1 Tf -2.5595 0 TD -0 Tw -(CONX)Tj -/TT8 1 Tf -2.4004 0 TD -0.1833 Tw -[( differ only in their last character. Such substitution errors count as one)]TJ --11.7927 -1.2889 TD -0.0244 Tw -(disagreement, so that the two words are in 75% agreement. Most calls to the spelling corrector specify)Tj -0 -1.2222 TD -0.0633 Tw -(a relative agreement of 70, so that a single substitution error is permitted in words of four characters)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -64 0 obj -<< -/Length 8708 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-17)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.0289 Tw -[(or longer. However, spelling correction on shorter words is possible since certain types of differences)]TJ -0 -1.2222 TD -0.1267 Tw -[(such as single transpositions are not counted as disagreements. For example, )]TJ -/TT10 1 Tf -35.895 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -0.1267 Tw -[( and )]TJ -/TT10 1 Tf -2.4462 0 TD -0 Tw -(NAD)Tj -/TT8 1 Tf -1.8003 0 TD -0.1267 Tw -[( have a)]TJ --41.9418 -1.2889 TD -0.0478 Tw -(relative agreement of 100. Calls to the spelling corrector from DWIM use the value of )Tj -/TT10 1 Tf -38.4833 0 TD -0 Tw -(FIXSPELLREL)Tj -/TT8 1 Tf -6.6011 0 TD -(,)Tj --45.0844 -1.2889 TD -0.0789 Tw -(which is initially 70. Note that by setting )Tj -/TT10 1 Tf -18.7586 0 TD -0 Tw -(FIXSPELLREL)Tj -/TT8 1 Tf -6.6011 0 TD -0.0789 Tw -[( to 100, only spelling corrections with "zero")]TJ --25.3596 -1.2889 TD -0 Tw -(mistakes, will be considered, e.g., transpositions, double characters, etc.)Tj -0 -2.8889 TD -0.2733 Tw -(The central function of the spelling corrector is )Tj -/TT10 1 Tf -23.0504 0 TD -0 Tw -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -0.2733 Tw -(. )Tj -/TT10 1 Tf -1.2967 0 TD -0 Tw -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -0.2733 Tw -[( takes as arguments: a word, a)]TJ --30.3481 -1.2889 TD -0.2689 Tw -(minimum relative agreement, a spelling list, and an optional functional argument, )Tj -/TT17 1 Tf -39.5061 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT17 1 Tf -0.7689 0 TD -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj -/TT17 1 Tf --45.0758 -1.2889 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -(, and )Tj -/TT17 1 Tf -2.4429 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( respectively.)Tj -/TT10 1 Tf --6.6436 -2.9556 TD -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -0.1033 Tw -[( proceeds down )]TJ -/TT17 1 Tf -7.6113 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1033 Tw -[( examining each word. Words not satisfying )]TJ -/TT17 1 Tf -20.507 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( \(if )]TJ -/TT17 1 Tf -1.6637 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( is non-)]TJ -/TT10 1 Tf -3.4645 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1033 Tw -(\), or)Tj --43.4481 -1.2889 TD -0.0944 Tw -(those obviously too long or too short to be sufficiently close to )Tj -/TT17 1 Tf -28.8033 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0944 Tw -[( are immediately rejected. For)]TJ --31.8037 -1.2889 TD -0 Tw -(example, if )Tj -/TT17 1 Tf -5.123 0 TD -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(70)Tj -/TT8 1 Tf -1.2002 0 TD -(, and )Tj -/TT17 1 Tf -2.4429 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -( is 5 characters long, words longer than 7 characters will be rejected.)Tj --14.667 -2.9556 TD -0.0467 Tw -(Special treatment is necessary for words shorter than )Tj -/TT17 1 Tf -24.0188 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0467 Tw -(, since doubled letters are not counted as)Tj --27.0193 -1.2889 TD -0 Tw -(disagreements. For example, )Tj -/TT10 1 Tf -12.9289 0 TD -(CONNSSS)Tj -/TT8 1 Tf -4.2007 0 TD -( and )Tj -/TT10 1 Tf -2.1949 0 TD -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -( have a relative agreement of 100. )Tj -/TT10 1 Tf -15.0163 0 TD -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -( handles this)Tj --39.7416 -1.2889 TD -0.0478 Tw -(by counting the number of doubled characters in )Tj -/TT17 1 Tf -22.2387 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -[( before it begins scanning )]TJ -/TT17 1 Tf -11.7374 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -(, and taking)Tj --39.9771 -1.2889 TD -0 Tw -(this into account when deciding whether to reject shorter words.)Tj -0 -2.8889 TD -(If )Tj -/TT17 1 Tf -0.981 0 TD -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -(, the current word on )Tj -/TT17 1 Tf -9.9306 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -(, is not rejected, )Tj -/TT10 1 Tf -7.3602 0 TD -0 Tw -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -[( computes the number of disagreements)]TJ --27.2732 -1.2889 TD -0 Tw -(between it and )Tj -/TT17 1 Tf -6.7925 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -( by calling a subfunction, )Tj -/TT10 1 Tf -11.3516 0 TD -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --23.5449 -2.9556 TD -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0167 Tw -[( operates by scanning both words from left to right one character at a time. )]TJ -/TT10 1 Tf -33.4727 0 TD -0 Tw -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0167 Tw -[( operates on the)]TJ --38.2734 -1.2889 TD -0.0578 Tw -(list of character codes for each word. This list is computed by )Tj -/TT10 1 Tf -27.9458 0 TD -0 Tw -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -0.0578 Tw -[( before calling )]TJ -/TT10 1 Tf -6.6636 0 TD -0 Tw -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0578 Tw -(. Characters)Tj --40.0102 -1.2889 TD -0.01 Tw -(are considered to agree if they are the same characters or appear on the same key \(i.e., a shift mistake\).)Tj -0 -1.2222 TD -0.1011 Tw -(The variable )Tj -/TT10 1 Tf -5.9503 0 TD -0 Tw -(SPELLCASEARRAY)Tj -/TT8 1 Tf -8.4014 0 TD -0.1011 Tw -[( is a )]TJ -/TT10 1 Tf -2.2682 0 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.1011 Tw -[( which is used to determine equivalence classes for)]TJ --22.0207 -1.2889 TD -0.0733 Tw -(this purpose. It is initialized to equivalence lowercase and upper case letters, as well as the standard)Tj -0 -1.2222 TD -0 Tw -(key transitions: for example, )Tj -/TT10 1 Tf -12.8013 0 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(!)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(3)Tj -/TT8 1 Tf -0.6001 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(#)Tj -/TT8 1 Tf -0.6001 0 TD -(, etc.)Tj --20.7681 -2.9556 TD -0.1078 Tw -(If the first character in )Tj -/TT17 1 Tf -10.5531 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( and )]TJ -/TT17 1 Tf -2.4084 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( do )]TJ -/TT13 1 Tf -1.8723 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1078 Tw -[( agree, )]TJ -/TT10 1 Tf -3.3747 0 TD -0 Tw -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( checks to see if either character is the)]TJ --27.9429 -1.2889 TD -0.4633 Tw -(same as one previously encountered, and not accounted-for at that time. \(In other words,)Tj -0 -1.2222 TD -0.2744 Tw -(transpositions are not handled by lookahead, but by )Tj -/TT13 1 Tf -25.4993 0 TD -0 Tw -(lookback)Tj -/TT8 1 Tf -3.3672 0 TD -0.2744 Tw -(.\) A displacement of two or fewer)Tj --28.8665 -1.2222 TD -0.1644 Tw -(positions is counted as a tranposition; a displacement by more than two positions is counted as a)Tj -T* -0.0878 Tw -(disagreement.In either case, both characters are now considered as accounted for and are discarded,)Tj -T* -0 Tw -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -(ing continues.)Tj --4.3433 -2.9556 TD -0.3889 Tw -(If the first character in )Tj -/TT17 1 Tf -11.9586 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.3889 Tw -[( and )]TJ -/TT17 1 Tf -2.9706 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.3889 Tw -[( do not agree, and neither agree with previously)]TJ --20.9302 -1.2889 TD -0.1411 Tw -(unaccounted-for characters, and )Tj -/TT17 1 Tf -14.9316 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1411 Tw -[( has more characters remaining than )]TJ -/TT17 1 Tf -17.1933 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6411 0 TD -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1411 Tw -[( removes)]TJ --41.1675 -1.2889 TD -0.0544 Tw -(and saves the first character of )Tj -/TT17 1 Tf -14.0112 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0544 Tw -(, and continues by comparing the rest of )Tj -/TT17 1 Tf -18.4526 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0544 Tw -[( with )]TJ -/TT17 1 Tf -2.6421 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0544 Tw -[( as)]TJ --44.1074 -1.2889 TD -0.0767 Tw -(described above. If )Tj -/TT17 1 Tf -8.8296 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -[( has the same or fewer characters remaining than )]TJ -/TT17 1 Tf -22.6177 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -(, the procedure is)Tj --37.4483 -1.2889 TD -0.0022 Tw -(the same except that the character is removed from )Tj -/TT17 1 Tf -22.8037 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0022 Tw -(. In this case, a special check is first made to)Tj --25.8042 -1.2889 TD -0.0144 Tw -(see if that character is equal to the )Tj -/TT13 1 Tf -15.328 0 TD -0 Tw -(previous)Tj -/TT8 1 Tf -3.4453 0 TD -0.0144 Tw -[( character in )]TJ -/TT17 1 Tf -5.7313 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0144 Tw -(, or to the )Tj -/TT13 1 Tf -4.508 0 TD -0 Tw -(next)Tj -/TT8 1 Tf -1.7783 0 TD -0.0144 Tw -[( character in )]TJ -/TT17 1 Tf -5.7313 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0144 Tw -(, i.e., a)Tj --42.5232 -1.2889 TD -0.2022 Tw -(double character typo, and if so, the character is considered accounted-for, and not counted as a)Tj -0 -1.2222 TD -0.2233 Tw -(disagreement. In this case, the "length" of )Tj -/TT17 1 Tf -20.0316 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.2233 Tw -[( is also decremented. Otherwise making )]TJ -/TT17 1 Tf -19.2975 0 TD -0 Tw -(XWORD)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -67 0 obj -<< -/Length 6979 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2522 Tw -(sufficiently long by adding double characters would make it be arbitrarily close to )Tj -/TT17 1 Tf -39.7906 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.2522 Tw -(, e.g.,)Tj -/TT10 1 Tf --42.7911 -1.2889 TD -0 Tw -(XXXXXX)Tj -/TT8 1 Tf -3.6006 0 TD -( would correct to )Tj -/TT10 1 Tf -7.7856 0 TD -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --12.5864 -2.9556 TD -(When )Tj -/TT10 1 Tf -2.9686 0 TD -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0756 Tw -[( has finished processing both )]TJ -/TT17 1 Tf -13.4754 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0756 Tw -[( and )]TJ -/TT17 1 Tf -2.344 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0756 Tw -[( in this fashion, the value of )]TJ -/TT10 1 Tf -12.9869 0 TD -0 Tw -(SKOR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0756 Tw -[( is the)]TJ --42.5767 -1.2889 TD -0.32 Tw -(number of unaccounted-for characters, plus the number of disagreements, plus the number of)Tj -0 -1.2222 TD -0 Tw -(tranpositions, with two qualifications: )Tj -1.9167 -2 TD -0.1467 Tw -[(1.)-666.7(If both )]TJ -/TT17 1 Tf -4.8872 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1467 Tw -[( and )]TJ -/TT17 1 Tf -2.4862 0 TD -0 Tw -(TWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1467 Tw -[( have a character unaccounted-for in the same position, the)]TJ --11.9578 -1.2889 TD -0.37 Tw -(two characters are counted only once, i.e., substitution errors count as only one)Tj -0 -1.2222 TD -0 Tw -(disagreement, not two)Tj --1.4167 -2 TD -0.0678 Tw -[(2.)-666.7(If there are no unaccounted-for characters and no disagreements, transpositions are not)]TJ -1.4167 -1.2222 TD -0 Tw -(counted. )Tj --3.3333 -2.8889 TD -0.2856 Tw -(This permits spelling correction on very short words, such as edit commands, e.g., )Tj -/TT10 1 Tf -40.2801 0 TD -0 Tw -(XRT->XTR)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --45.0809 -1.2889 TD -0.0067 Tw -(Transpositions are also not counted when )Tj -/TT10 1 Tf -18.7412 0 TD -0 Tw -(FASTYPEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.2567 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2567 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -(, for example, )Tj -/TT10 1 Tf -6.2929 0 TD -0 Tw -(IPULX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -[( and )]TJ -/TT10 1 Tf -2.2062 0 TD -0 Tw -(IPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -[( will be in)]TJ --40.9558 -1.2889 TD -0.0333 Tw -(80% agreement with )Tj -/TT10 1 Tf -9.4022 0 TD -0 Tw -(FASTYPEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0333 Tw -(, only 60% with )Tj -/TT10 1 Tf -7.2315 0 TD -0 Tw -(FASTYPEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0333 Tw -[(. The rationale behind this)]TJ --33.3696 -1.2889 TD -0.3333 Tw -(is that transpositions are much more common for fast typists, and should not be counted as)Tj -0 -1.2222 TD -0.1022 Tw -(disagreements, whereas more deliberate typists are not as likely to combine tranpositions and other)Tj -T* -0.0811 Tw -(mistakes in a single word, and therefore can use more conservative metric. )Tj -/TT10 1 Tf -34.5242 0 TD -0 Tw -(FASTYPEFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.0811 Tw -[( is initially)]TJ -/TT10 1 Tf --40.5252 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 316.8 Tm -(Spelling Corrector Functions and Variables)Tj -/TT10 1 Tf -9 0 0 9 150 296.8 Tm -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(ADDSPELL)Tj -/TT4 1 Tf -10 0 0 10 198.6 296.8 Tm -( )Tj -/TT17 1 Tf -9 0 0 9 201.3783 296.8 Tm -(X)Tj -/TT13 1 Tf -0.6001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(SPLST)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 249.0853 296.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 296.8 Tm -([Function])Tj --35.4033 -1.8444 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to one of the spelling lists as determined by the value of )Tj -/TT17 1 Tf -25.1392 0 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -(:)Tj -/TT10 1 Tf --23.2131 -2.0667 TD -(NIL)Tj -/TT8 1 Tf -3.1333 0 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -( and to )Tj -/TT10 1 Tf -3.3149 0 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -(. Used by)Tj -/TT10 1 Tf --19.3623 -1.2889 TD -(DEFINEQ)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --6.134 -2.0667 TD -(0)Tj -/TT8 1 Tf -1.9333 0 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -(. Used by )Tj -/TT10 1 Tf -4.6509 0 TD -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -( when loading)Tj -/TT10 1 Tf --17.0977 -1.2889 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -(s to property lists.)Tj -/TT10 1 Tf --4.3337 -2.0667 TD -(1)Tj -/TT8 1 Tf -1.9333 0 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(SPELLINGS1)Tj -/TT8 1 Tf -6.001 0 TD -( \(at end of permanent section\).)Tj --10.6465 -1.2889 TD -(Used by )Tj -/TT10 1 Tf -3.9009 0 TD -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --8.8347 -2.0667 TD -(2)Tj -/TT8 1 Tf -1.9333 0 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(SPELLINGS2)Tj -/TT8 1 Tf -6.001 0 TD -( \(at end of permanent section\).)Tj --10.6465 -1.2889 TD -(Used by )Tj -/TT10 1 Tf -3.9009 0 TD -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --8.8347 -2.0667 TD -(3)Tj -/TT8 1 Tf -1.9333 0 TD -(Adds )Tj -/TT17 1 Tf -2.6733 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(SPELLINGS3)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --25.4213 -2.0667 TD -[(a spelling list)-1333.9(If )]TJ -/TT17 1 Tf -8.101 0 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -( is a spelling list, )Tj -/TT17 1 Tf -7.562 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is added to it. In this case, )Tj -/TT17 1 Tf -12.1543 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is)Tj --24.8369 -1.2889 TD -(the \(optional\) length of the temporary section.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9199 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is already on the spelling list, and in its temporary)Tj --1.52 -1.2889 TD -(section, )Tj -/TT10 1 Tf -3.5918 0 TD -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -( moves )Tj -/TT17 1 Tf -3.3965 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( to the front of that section. )Tj -/TT10 1 Tf --23.7225 -2.0667 TD -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -( sets )Tj -/TT10 1 Tf -2.1528 0 TD -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -( to )Tj -/TT17 1 Tf -1.3721 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( when )Tj -/TT17 1 Tf -2.9771 0 TD -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(0)Tj -/TT8 1 Tf -0.6001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(3)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --25.7456 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9199 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is not a symbol, )Tj -/TT10 1 Tf -7.4219 0 TD -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -( takes no action.)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -70 0 obj -<< -/Length 11941 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-19)Tj -/TT8 1 Tf --37 60.6156 TD -0.1 Tw -(Note that the various systems calls to )Tj -/TT10 1 Tf -17.4148 0 TD -0 Tw -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1 Tw -(, e.g., from )Tj -/TT10 1 Tf -5.2419 0 TD -0 Tw -(DEFINE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6 0 TD -(EDITF)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6 0 TD -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -0.1 Tw -(, etc.,)Tj --37.659 -1.2889 TD -0.3178 Tw -(can all be suppressed by setting or binding )Tj -/TT10 1 Tf -21.7239 0 TD -0 Tw -(ADDSPELLFLG)Tj -/TT8 1 Tf -6.6011 0 TD -0.3178 Tw -[( to )]TJ -/TT10 1 Tf -2.0076 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3178 Tw -[( \(see the DWIM)]TJ --32.1329 -1.2889 TD -0 Tw -(Functions and Variables section above\).)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(MISSPELLED?)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(XWORD)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(REL)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(SPLST)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FLG)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(TAIL)Tj -/TT13 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 304.5202 524 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 524 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT17 1 Tf -0.9566 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2867 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2867 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0367 Tw -[( or )]TJ -/TT10 1 Tf -1.5142 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( \(\), )]TJ -/TT10 1 Tf -4.0479 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.0367 Tw -[( prints )]TJ -/TT10 1 Tf -3.1925 0 TD -0 Tw -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( followed by the value of )]TJ -/TT10 1 Tf -11.4641 0 TD -0 Tw -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -(,)Tj --39.7517 -1.2889 TD -0.0356 Tw -(and returns this as the respelling, without asking for approval. Otherwise, )Tj -/TT10 1 Tf -33.3979 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf --33.3979 -1.2889 TD -0.0233 Tw -(checks to see if )Tj -/TT17 1 Tf -6.9 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( is really misspelled, i.e., if )]TJ -/TT17 1 Tf -12.0345 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0233 Tw -[( applied to )]TJ -/TT17 1 Tf -5.0661 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( is true, or )]TJ -/TT17 1 Tf -4.8023 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( is)]TJ --39.0046 -1.2889 TD -0.4689 Tw -(already contained on )Tj -/TT17 1 Tf -10.9775 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.4689 Tw -(. In this case, )Tj -/TT10 1 Tf -7.7642 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.4689 Tw -[( simply returns )]TJ -/TT17 1 Tf -8.4067 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --39.7504 -1.2889 TD -(Otherwise )Tj -/TT10 1 Tf -5.1073 0 TD -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.2611 Tw -[( computes and returns )]TJ -/TT10 1 Tf -11.2471 0 TD -0 Tw -(\(FIXSPELL)Tj -/TT19 1 Tf -5.4009 0 TD -( )Tj -/TT17 1 Tf -0.5111 0 TD -(XWORD)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.5111 0 TD -(REL)Tj -/TT19 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.5111 0 TD -(SPLST)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.5111 0 TD -(FLG)Tj --38.2021 -1.4378 TD -(TAIL)Tj -/TT19 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 166.0561 448.06 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 102 425.12 Tm -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(FIXSPELL)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(XWORD)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(REL)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(SPLST)Tj -/TT13 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FLG)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(TAIL)Tj -/TT13 1 Tf -2.4004 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -/TT13 1 Tf -1.2002 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(TIEFLG)Tj -/TT13 1 Tf -3.6006 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(DONTMOVETOPFLG)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 400.8378 425.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 425.12 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0422 Tw -(The value of )Tj -/TT10 1 Tf -5.8674 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0422 Tw -[( is either the respelling of or )]TJ -/TT10 1 Tf -13.2011 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0422 Tw -[(. If for some reason itself is on ,)]TJ --25.6695 -1.2889 TD -0 Tw -(then )Tj -/TT10 1 Tf -2.2503 0 TD -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[( aborts and calls )]TJ -/TT10 1 Tf -7.5112 0 TD -0 Tw -(ERROR!)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[(. If there is a possibility that is spelled correctly,)]TJ -/TT10 1 Tf --18.1629 -1.2889 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.2367 Tw -[( should be used instead of )]TJ -/TT10 1 Tf -13.2174 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.2367 Tw -(. )Tj -/TT10 1 Tf -1.2233 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.2367 Tw -[( performs all of the)]TJ --30.6433 -1.2889 TD -0 Tw -(interactions described earlier, including requesting your approval if necessary.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9499 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.28 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.28 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[( or )]TJ -/TT10 1 Tf -1.5009 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( \(escape\), the respelling is the value of )]TJ -/TT10 1 Tf -17.2781 0 TD -0 Tw -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -0.03 Tw -(, and no approval is)Tj --31.0907 -1.2889 TD -0 Tw -(requested.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9477 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0278 Tw -[( contains lowercase characters, and the corresponding uppercase word is correct,)]TJ --3.9482 -1.2889 TD -0.2878 Tw -(i.e. on )Tj -/TT17 1 Tf -3.4735 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.2878 Tw -[( or satisfies )]TJ -/TT17 1 Tf -6.046 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.2878 Tw -(, the uppercase word is returned and no interaction is)Tj --13.7201 -1.2889 TD -0.1378 Tw -[(performed. If )]TJ -/TT10 1 Tf -6.8049 0 TD -0 Tw -(FIXSPELL.UPPERCASE.QUIET)Tj -/TT8 1 Tf -14.4023 0 TD -0.1378 Tw -[( is )]TJ -/TT10 1 Tf -1.4904 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1378 Tw -[( \(the default\), a warning )]TJ -/TT10 1 Tf -11.6254 0 TD -0 Tw -("=XX)Tj -/TT8 1 Tf -2.4004 0 TD -0.1378 Tw -(" is)Tj --38.5238 -1.2889 TD -0.0644 Tw -(printed when coercing from ")Tj -/TT10 1 Tf -13.2846 0 TD -0 Tw -(xx)Tj -/TT8 1 Tf -1.2002 0 TD -0.0644 Tw -(" to ")Tj -/TT10 1 Tf -2.2431 0 TD -0 Tw -(XX)Tj -/TT8 1 Tf -1.2002 0 TD -0.0644 Tw -[(". If )]TJ -/TT10 1 Tf -2.2343 0 TD -0 Tw -(FIXSPELL.UPPERCASE.QUIET)Tj -/TT8 1 Tf -14.4023 0 TD -0.0644 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3867 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7519 -1.2889 TD -(no warning is given. )Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9199 0 TD -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, defaults to the value of )Tj -/TT10 1 Tf -10.8931 0 TD -(FIXSPELLREL)Tj -/TT8 1 Tf -6.6011 0 TD -( \(initially 70\).)Tj --23.1147 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.971 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0511 Tw -(, the correction is handled in type-in mode, i.e., approval is never requested,)Tj --5.7739 -1.2889 TD -0 Tw -(and )Tj -/TT17 1 Tf -2.1784 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.2356 Tw -[( is not typed. If )]TJ -/TT17 1 Tf -8.0899 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.4856 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4856 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT17 1 Tf -0.7356 0 TD -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.2356 Tw -[( is typed \(before the )]TJ -/TT10 1 Tf -10.2212 0 TD -0 Tw -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.2356 Tw -(\) and approval is)Tj --31.7978 -1.2889 TD -0.0611 Tw -(requested if )Tj -/TT10 1 Tf -5.6022 0 TD -0 Tw -(APPROVEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.3111 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3111 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0611 Tw -[(. If )]TJ -/TT17 1 Tf -1.8533 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3111 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3111 0 TD -(NO-MESSAGE)Tj -/TT8 1 Tf -6.001 0 TD -0.0611 Tw -(, the correction is returned with no)Tj --24.3024 -1.2889 TD -0.0167 Tw -(further processing. In this case, a run-on correction will be returned as a dotted pair of the)Tj -0 -1.2222 TD -0.1089 Tw -(two parts of the word, and a synonym correction as a list of the form )Tj -/TT10 1 Tf -32.1856 0 TD -0 Tw -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(WORD1)Tj -/TT19 1 Tf -3.0005 0 TD -( )Tj -/TT17 1 Tf -0.3589 0 TD -(WORD2)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.7456 -1.2889 TD -(where )Tj -/TT17 1 Tf -3.0813 0 TD -(WORD1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0622 Tw -[( is \(the corrected version of\) )]TJ -/TT17 1 Tf -12.9207 0 TD -0 Tw -(XWORD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0622 Tw -(, and )Tj -/TT17 1 Tf -2.5673 0 TD -0 Tw -(WORD2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0622 Tw -[( is the synonym. The effect)]TJ --27.5707 -1.2889 TD -0 Tw -(of the function )Tj -/TT10 1 Tf -6.7231 0 TD -(CHOOZ)Tj -/TT8 1 Tf -3.0005 0 TD -( can be obtained by calling )Tj -/TT10 1 Tf -12.0107 0 TD -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -( with )Tj -/TT17 1 Tf -2.5332 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NO-MESSAGE)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --37.9697 -2.0667 TD -(If )Tj -/TT17 1 Tf -1.1489 0 TD -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2278 Tw -[( is not )]TJ -/TT10 1 Tf -3.6052 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2278 Tw -(, and the correction is successful,)Tj -/TT19 1 Tf -15.6108 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.4789 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.2278 Tw -[( of )]TJ -/TT17 1 Tf -1.8364 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2278 Tw -[( is replaced by the)]TJ --31.0815 -1.2889 TD -0 Tw -(respelling \(using /)Tj -/TT10 1 Tf -8.2842 0 TD -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -(\).)Tj -/TT10 1 Tf --11.8848 -2.0667 TD -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0644 Tw -[( will attempt to correct misspellings caused by running two words together, if)]TJ --4.8008 -1.2889 TD -0.01 Tw -(the global variable )Tj -/TT10 1 Tf -8.4787 0 TD -0 Tw -(RUNONFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.01 Tw -[( is non-)]TJ -/TT10 1 Tf -3.2778 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[( \(default is )]TJ -/TT10 1 Tf -4.9709 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[(\). In this case, approval is always)]TJ --25.1288 -1.2889 TD -0.0656 Tw -[(requested. When a run-on error is corrected, )]TJ -/TT10 1 Tf -20.6079 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( of )]TJ -/TT17 1 Tf -1.51 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( is replaced by the two words,)]TJ --26.3186 -1.2889 TD -0.04 Tw -(and the value of )Tj -/TT10 1 Tf -7.557 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.04 Tw -[( is the first one. For example, if )]TJ -/TT10 1 Tf -14.4581 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.04 Tw -[( is called to correct)]TJ --31.6167 -1.2889 TD -0.1222 Tw -(the edit command )Tj -/TT10 1 Tf -8.6591 0 TD -0.2944 Tw -(\(MOVE TO AFTERCOND 3 2\))Tj -/TT8 1 Tf -14.98 0 TD -0.1222 Tw -[( with )]TJ -/TT17 1 Tf -2.7776 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3722 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3722 0 TD -0.2944 Tw -(\(AFTERCOND 3 2\))Tj -/TT8 1 Tf -9.5904 0 TD -0 Tw -(,)Tj -/TT17 1 Tf --39.7521 -1.2889 TD -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -[( would be changed to )]TJ -/TT10 1 Tf -10.243 0 TD -0.2156 Tw -(\(AFTER COND 2 3\))Tj -/TT8 1 Tf -10.2482 0 TD -0.09 Tw -(, and )Tj -/TT10 1 Tf -2.6229 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.09 Tw -[( would return )]TJ -/TT10 1 Tf -6.685 0 TD -0 Tw -(AFTER)Tj -/TT8 1 Tf --37.0003 -1.2889 TD -0.0044 Tw -(\(subject to yourapproval where necessary\). If )Tj -/TT17 1 Tf -20.1985 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2544 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2544 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf -0.25 0 TD -0.01 Tw -[( FIXSPELL)]TJ -/TT8 1 Tf -5.4109 0 TD -0.0002 Tc -0.0042 Tw -( will also perform run-)Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R -/TT19 33 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -73 0 obj -<< -/Length 10383 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -0 -1 TD -(DWIM)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0911 Tw -(on corrections, returning a dotted pair of the two words in the event the correction is of)Tj -0 -1.2222 TD -0 Tw -(this type.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -1.0133 0 TD -(TIEFLG)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3433 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3433 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0933 Tw -[( and a tie occurs, i.e., more than one word on )]TJ -/TT17 1 Tf -21.1048 0 TD -0 Tw -(SPLST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0933 Tw -[( is found with the)]TJ --31.8062 -1.2889 TD -0.2478 Tw -(same degree of "closeness", )Tj -/TT10 1 Tf -13.2392 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.2478 Tw -[( returns )]TJ -/TT10 1 Tf -4.1997 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2478 Tw -[(, i.e., no correction. If )]TJ -/TT17 1 Tf -11.2523 0 TD -0 Tw -(TIEFLG)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.4978 0 TD -(=)Tj --39.3905 -1.2889 TD -(PICKONE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1233 Tw -[( and a tie occurs, the first word is taken as the correct spelling. If )]TJ -/TT17 1 Tf -31.2163 0 TD -0 Tw -(TIEFLG)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3733 0 TD -(=)Tj --39.3909 -1.2889 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -0.1222 Tw -(, the value of )Tj -/TT10 1 Tf -6.443 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1222 Tw -[( is a list of the respellings \(even if there is only one\), and)]TJ -/TT10 1 Tf --13.6442 -1.2889 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1267 Tw -[( will not perform any interaction with you, nor modify )]TJ -/TT17 1 Tf -25.691 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1267 Tw -(, the idea being)Tj --32.8922 -1.2889 TD -0.0789 Tw -[(that the calling program will handle those tasks. Similarly, if )]TJ -/TT17 1 Tf -28.0563 0 TD -0 Tw -(TIEFLG)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3289 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3289 0 TD -(EVERYTHING)Tj -/TT8 1 Tf -6.001 0 TD -0.0789 Tw -(, a)Tj --38.9157 -1.2889 TD -0.0733 Tw -(list of all candidates whose degree of closeness is above )Tj -/TT17 1 Tf -25.4867 0 TD -0 Tw -(REL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0733 Tw -[( will be returned, regardless)]TJ --27.287 -1.2889 TD -0 Tw -(of whether some are better than others. No interaction will be performed.)Tj -0 -2 TD -(If )Tj -/TT17 1 Tf -0.9933 0 TD -(DONTMOVETOPFLG)Tj -/TT8 1 Tf -8.4014 0 TD -( )Tj -/TT10 1 Tf -0.3233 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3233 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0733 Tw -[( and a correction occurs, it will )]TJ -/TT13 1 Tf -14.3336 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0733 Tw -[( be moved to the front of the)]TJ --26.9081 -1.2889 TD -0.0222 Tw -[(spelling list. Also, the spelling list will not be altered unless it contains the special marker)]TJ -0 -1.2222 TD -0.0267 Tw -(used to separate the temporary and perminant parts of the system spelling lists \(the value)Tj -T* -0 Tw -(of )Tj -/TT10 1 Tf -1.1289 0 TD -(SPELLSTR1)Tj -/TT8 1 Tf -5.4009 0 TD -(\).)Tj -/TT10 1 Tf --9.1965 -2.5489 TD -(\()Tj -/TT15 1 Tf -0.6001 0 TD -(FNCHECK)Tj -/TT13 1 Tf -4.1999 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(FN)Tj -/TT13 1 Tf -1.2002 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(NOERRORFLG)Tj -/TT13 1 Tf -6.001 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(SPELLFLG)Tj -/TT13 1 Tf -4.8008 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(PROPFLG)Tj -/TT13 1 Tf -4.2007 0 TD -( )Tj -/TT17 1 Tf -0.25 0 TD -(TAIL)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 377.2781 384.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 384.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0089 Tw -(The task of )Tj -/TT10 1 Tf -5.1356 0 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0089 Tw -[( is to check whether )]TJ -/TT17 1 Tf -9.0635 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0089 Tw -[( is the name of a function and if not, to correct)]TJ --19.5999 -1.2889 TD -0.0722 Tw -[(its spelling. If )]TJ -/TT17 1 Tf -6.765 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0722 Tw -[( is the name of a function or spelling correction is successful, )]TJ -/TT10 1 Tf -27.8354 0 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf --35.8006 -1.2889 TD -0.0556 Tw -(adds the \(corrected\) name of the function to )Tj -/TT10 1 Tf -20.0509 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0556 Tw -[( using )]TJ -/TT10 1 Tf -3.0672 0 TD -0 Tw -(ADDSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0556 Tw -(, and returns it)Tj --33.3197 -1.2889 TD -0 Tw -(as its value.)Tj -0 -2 TD -(Since )Tj -/TT10 1 Tf -2.6119 0 TD -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0411 Tw -[( is called by many low level functions such as )]TJ -/TT10 1 Tf -20.7554 0 TD -0 Tw -(ARGLIST)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5411 0 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -(, etc.,)Tj --37.7106 -1.2889 TD -0.2644 Tw -(spelling correction only takes place when )Tj -/TT10 1 Tf -20.1018 0 TD -0 Tw -(DWIMFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.5144 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.5144 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2644 Tw -(, so that these functions can)Tj --26.5316 -1.2889 TD -0 Tw -(operate in a small Interlisp system which does not contain )Tj -/TT10 1 Tf -25.9233 0 TD -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT17 1 Tf --28.3237 -2.0667 TD -(NOERRORFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.1044 Tw -[( informs )]TJ -/TT10 1 Tf -4.1625 0 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.1044 Tw -[( whether or not the calling function wants to handle the)]TJ --14.3642 -1.2889 TD -0.08 Tw -(unsuccessful case: if )Tj -/TT17 1 Tf -9.364 0 TD -0 Tw -(NOERRORFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.08 Tw -[( is )]TJ -/TT10 1 Tf -1.3748 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.58 0 TD -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.08 Tw -[( simply returns )]TJ -/TT10 1 Tf -7.24 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.08 Tw -(, otherwise it prints)Tj -/TT10 1 Tf --31.1609 -1.2889 TD -0 Tw -(fn NOT A FUNCTION)Tj -/TT8 1 Tf -10.2017 0 TD -( and generates a non-breaking error.)Tj --10.2017 -2.0667 TD -(If )Tj -/TT17 1 Tf -0.9488 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0289 Tw -[( does not have a definition, but does have an )]TJ -/TT10 1 Tf -20.2606 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( property, then spelling correction)]TJ --24.81 -1.2889 TD -0.0511 Tw -[(is not attempted. Instead, if )]TJ -/TT17 1 Tf -12.8897 0 TD -0 Tw -(PROPFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT17 1 Tf -0.5511 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0511 Tw -[( is considered to be the name of a function,)]TJ --20.6441 -1.2889 TD -0.0167 Tw -[(and is returned. If )]TJ -/TT17 1 Tf -8.5311 0 TD -0 Tw -(PROPFLG)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.2667 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2667 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT17 1 Tf -0.5167 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0167 Tw -[( is )]TJ -/TT13 1 Tf -1.2482 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0167 Tw -[( considered to be the name of a function, and)]TJ -/TT10 1 Tf --19.9635 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( is returned or an error generated, depending on the value of )Tj -/TT17 1 Tf -27.0991 0 TD -(NOERRORFLG)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --34.9004 -2.0667 TD -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0003 Tc -0.0019 Tw -( calls )Tj -/TT10 1 Tf -2.4542 0 TD -0 Tc -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.0001 Tc -0.0021 Tw -( to perform spelling correction, so that if )Tj -/TT17 1 Tf -18.0627 0 TD -0 Tc -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.2522 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2522 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0022 Tw -(, the value)Tj --35.4236 -1.2889 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.5045 0 TD -(LASTWORD)Tj -/TT8 1 Tf -4.8008 0 TD -0.3756 Tw -[( will be returned. )]TJ -/TT17 1 Tf -9.9872 0 TD -0 Tw -(SPELLFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.3756 Tw -[( corresponds to )]TJ -/TT10 1 Tf -8.195 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.3755 Tw -(s fourth)Tj --35.8893 -1.2889 TD -0 Tw -(argument, )Tj -/TT17 1 Tf -5.1076 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.2833 Tw -[(. If )]TJ -/TT17 1 Tf -2.5199 0 TD -0 Tw -(SPELLFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.5333 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.5333 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2833 Tw -(, approval will be asked if )Tj -/TT10 1 Tf -13.3821 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2833 Tw -[( was enabled in)]TJ -/TT10 1 Tf --32.2779 -1.2889 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1544 Tw -[( mode, i.e., if )]TJ -/TT10 1 Tf -6.5304 0 TD -0 Tw -(APPROVEFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.4044 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4044 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1544 Tw -(. )Tj -/TT17 1 Tf -1.0589 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1544 Tw -[( corresponds to the fifth argument to)]TJ -/TT10 1 Tf --22.8005 -1.2889 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --6.6011 -2.0667 TD -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0322 Tw -[( is currently used by )]TJ -/TT10 1 Tf -9.4233 0 TD -0 Tw -(ARGLIST)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5322 0 TD -(UNSAVEDEF)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5322 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.5322 0 TD -(BREAK0)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5322 0 TD -(BREAKIN)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj -/TT10 1 Tf --39.7568 -1.2889 TD -(ADVISE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -(, and )Tj -/TT10 1 Tf -2.4984 0 TD -0 Tw -(CALLS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0278 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8572 0 TD -0 Tw -(BREAK0)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( calls )]TJ -/TT10 1 Tf -2.5053 0 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0278 Tw -[( with )]TJ -/TT17 1 Tf -2.5888 0 TD -0 Tw -(NOERRORFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0278 Tw -[( since if)]TJ -/TT10 1 Tf --36.6087 -1.2889 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.2022 Tw -[( cannot produce a function, )]TJ -/TT10 1 Tf -13.3768 0 TD -0 Tw -(BREAK0)Tj -/TT8 1 Tf -3.6006 0 TD -0.2022 Tw -[( wants to define a dummy one. )]TJ -/TT10 1 Tf -15.8233 0 TD -0 Tw -(CALLS)Tj -/TT8 1 Tf --37.0014 -1.2889 TD -0.2611 Tw -(however calls )Tj -/TT10 1 Tf -6.8518 0 TD -0 Tw -(FNCHECK)Tj -/TT8 1 Tf -4.2007 0 TD -0.2611 Tw -[( with )]TJ -/TT17 1 Tf -3.0554 0 TD -0 Tw -(NOERRORFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.5111 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.5111 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2611 Tw -(, since it cannot operate without a)Tj --23.5315 -1.2889 TD -0 Tw -(function.)Tj -ET -endstream -endobj -74 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 19 0 R -/TT17 20 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -76 0 obj -<< -/Length 2284 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(19-21)Tj -/TT8 1 Tf --42.3333 60.6156 TD -0.1067 Tw -(Many other system functions call )Tj -/TT10 1 Tf -15.444 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.1067 Tw -[( or )]TJ -/TT10 1 Tf -1.6543 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1067 Tw -[( directly. For example, )]TJ -/TT10 1 Tf -10.9225 0 TD -0 Tw -(BREAK1)Tj -/TT8 1 Tf -3.6006 0 TD -0.1067 Tw -[( calls)]TJ -/TT10 1 Tf --43.0232 -1.2889 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0356 Tw -[( on unrecognized atomic inputs before attempting to evaluate them, using as a spelling list)]TJ --4.8008 -1.2889 TD -0.1233 Tw -[(a list of all break commands. Similarly, )]TJ -/TT10 1 Tf -18.6581 0 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -0.1233 Tw -[( calls )]TJ -/TT10 1 Tf -2.6964 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.1233 Tw -[( on atomic inputs using a list of all)]TJ -/TT10 1 Tf --29.1557 -1.2889 TD -0 Tw -(LISPX)Tj -/TT8 1 Tf -3.0005 0 TD -( commands. When )Tj -/TT10 1 Tf -8.7651 0 TD -(UNBREAK)Tj -/TT8 1 Tf -4.2007 0 TD -( is given )Tj --15.9663 -1.2889 TD -0.0222 Tw -(the name of a function that is not broken, it calls )Tj -/TT10 1 Tf -21.743 0 TD -0 Tw -(FIXSPELL)Tj -/TT8 1 Tf -4.8008 0 TD -0.0222 Tw -[( with two different spelling lists, first with)]TJ -/TT10 1 Tf --26.5438 -1.2889 TD -0 Tw -(BROKENFNS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0667 Tw -(, and if that fails, with )Tj -/TT10 1 Tf -10.3233 0 TD -0 Tw -(USERWORDS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0667 Tw -(. )Tj -/TT10 1 Tf -0.8833 0 TD -0 Tw -(MAKEFILE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0667 Tw -[( calls )]TJ -/TT10 1 Tf -2.583 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.0667 Tw -[( using )]TJ -/TT10 1 Tf -3.0894 0 TD -0 Tw -(FILELST)Tj -/TT8 1 Tf -4.2007 0 TD -0.0667 Tw -[( as a)]TJ --43.2834 -1.2889 TD -0.0111 Tw -[(spelling list. Finally, )]TJ -/TT10 1 Tf -9.459 0 TD -0 Tw -(LOAD)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5111 0 TD -(BCOMPL)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5111 0 TD -(BRECOMPILE)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5111 0 TD -(TCOMPL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0111 Tw -(, and )Tj -/TT10 1 Tf -2.4651 0 TD -0 Tw -(RECOMPILE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0111 Tw -[( all call )]TJ -/TT10 1 Tf -3.3912 0 TD -0 Tw -(MISSPELLED?)Tj -/TT8 1 Tf -6.6011 0 TD -0.0111 Tw -[( if)]TJ --44.4532 -1.2889 TD -0 Tw -(their input file\(s\) wont open.)Tj -ET -endstream -endobj -77 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -79 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -82 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -83 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -84 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBJMJH+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 85 0 R ->> -endobj -85 0 obj -<< -/Filter /FlateDecode -/Length 20105 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8Pbԃ4NˡfwfGf?%Z%%Rh -FnRKD>iRi nxj3>yomrB{E]X;ohQ`r Wq`]Y|7>43u42/|g2#* -#mʵ 10U'wmx c[ÐpLsV!x0aE(״X@X#J2.^ZQV "@u@U"t:ԟ8:_ۈz,^ypp.Zxpr;84ptB*~XH|p4W`V l̍?GX˸ 0`6' Y#2>[Z #`MG`>#`S [ X45P-$/Lȃ&߆mfn6<\́ˀW.1PITs,LgN -)8q]EApFX-]pl'G;; {I9DyC<hI HˋQw h4r{ 7@1YcjRC 滑!K`/R8τz a%h$X[u~(Ρla ;U@5\mS~$퓩Pʯ@pE -_ -\.KY߼ʟdnA$4jh"8'q^?zp.а hL p7:@)bd _Q6Y"h7 7 U>C S7)5#}'!-72Ion+Ѻ<2>u?ɴMw3])*%segn/n83[ \ܹ_8<t8x"b]SUAl)Cظe6.q+m\ecm\cZkml\ocڸXos6ny_pNN豟ㆪŢ^"j4aҟJ5 :/hĐL5FCjT5+SBHj΀ovU%p7L7_⍸/K*13ܐ.j4de-nx}UZUD -AZSk)% (4FFbRkIh*+߯tT8*ZP ~'FBPEAh4(q#iIvTTtG|4KH^@}Rژ =Ǒ&a\Xjz*Ju z@NsflH#qҠfFN4'X`/j4d6#A9ӔCr!c(NOa7E:D5\W*Vիrհ_p>&H#>op`"`b+3#~ۭY v,SVIv9=ڠ_crBFf\7qg̥f)M~؛Fi?, ="OEh"1KnKDDewdƯd4lo^-]f^&;z1oݶNfWZ}5oCknW_\;8rF9 |',-ue9ǩcԱeVOS#헚1RS×c]kO\9.RwCj˼a8Z5RKgR/RF*gX[Jvwŧݵqk KKWVyASnC~)!$ -LO睕[l) NyG~D.goOwf\$o};yR3;/brd&ww|xlFrk*1}iwp7ؘ٫v'YiC0wD[Gab.XQ.# %ҮIԺhZJPCHB(R6Cet(`" t:t[a=wI }u~ޏ;K]?;sު\$)3`JѢ*$q7.{='2#Bł܂WYG,ݭMf6 -KTѩ9`aZhK/,ٮق0R9u^Vc@"#92F1xQ&|w4xCG$8WJFhdqpXխL)_Ãi3\nSܙfJ0=^$ cUBFږ.vyNȧTM ԇLءVZ?~,nRCFŅYV8WnCG}~S@P}@-! -PI`:b|OZѹXnPɳT9T]٪4IFd]{fuKKj\=?p u˺Ogit7){r]X:gSݭjwU9Ҫu~);?SOryTYvAS%dtډy\/wo Cg,sJGp9 CbK徚=_oTC-[1O9ՐK -ϣvU-!cRYگ@w*@:Ki9TYl;tvmh? 7QI2Mtܱ9fK)Pp2ʡ|H1_/k驘d wka`Knr]%@Dg)E ֈ{#r[4˃o77N*)6H rmʛvH-u` GFw{QH;a1ѣQQg,IF2Cb)Ҍ~ [g[j*R.!%K?Y bTb$6Ȩ>\p0;amFXElN -+axLI0F>/gc02`4A+^ Spe8y)%dOj3d%yh$D^!-d'y#oϤ#Ӥ\ UJڨP7CQt}V%>GWhn[諴Eߣ]z~AAh?M03dc0eTVf0?{-`Kl5gdCCvfv]arn>OSOx?ŗov?;a~SG%~G?&j22LX'n*|?A!HPg0bZ@qpXQ3CQT Xa482RwZf8݊2 cLj"VG}X#& -ɚW2 Yt?X~' -oP%%i0HR+4b ݒ&c6S+Q'b]vdQEτ1,װc?`cEpՌިd3A> sШd -8eݎg3-G{})f2Ͷ L乑m;-ΡZRU_w3DKP)ji7Zraڭ-BesK-$IY8Dp]]i>s ȭU'npZK;~jkɒ^_RKD>4{GK{yѥhk꺺bR%8>:D/lI'F`|6q.眤<m:(5×Be+HI[uNPv#'Nr-dnV(q Nti4[`HAus{lP~i[Yݽ}ػ;na5G't%W߶߶lۺ[_~bYal `/Jpa",L -TZE״pv/]E%?VK(9$1.Hpݯ #lHleYD}!Ӭ&28|(W4<e.ąE>faru&g N8jv_b[LxOfY*!gEiPSzl L pkAE_  ,ώtnW>M ]QiYc*Z*n¼ҴۚEeyhrWMeuCmaŌ=R[,gv4ūh-˝~}tlt\nEb;aVd1tɮJX'lF<('7.&cj3BnTefUO(- -n392HIGD/ ڣWͥ4D"iWq_ZafUdŷ@y.%ؔ[Lf7qU'-!xTKkE,8O%3}堋_Ġ`=F2.]LedbY!:.I"[,W~ˤ=Y_@d|ZXY@Vo47 PK9tev|q+ Y4c4; Y2`YX gLqB%ASJ؊hݏ[Z,ZҖ%8 ̂jԍRK¸2ٸ瘱?%UJ9C':g*.?.ѳd],KY[T~.pIGC-A]4G|$RP~+'cN9jrD-cSN٘'xzɉjjxiG(5n=,^xlCd"=C5Z'ˈ[X9`)ːHs2Mrv%U>2S/A䢶5(tziStVRKAİXk== x^.wwR9sߚq?W?NhN-:zTDw!_hG,h)cxz}GGVWAhSdicEk%`еdA"mψԒn^1v缴/y]4|ˊ^ox6g@EV4 @3h UFF;b|thƖorz̲[Bn+/LkI̯/^Gދaa4"$wQ eIp>}$XhNqUblfqBҡ>r[m)1x| u(8GTA"r wj;-A^7-W^-)AyjŪfϽ^Ww[ =x -n:Y,Š ,}*:,aCpx>Mz<4Vc|肽 DE8 -'U8 _ 'x7`@ȋEu5/{h# Ao%tq)^b7f~ -wo^<'?opS*IYIVH|7Mr/q?~;jۅ2oEFE-D*~v`32JMS# lt! -$2jZLFcDg21iI;6bD^Ͻ,v={w}.*WTCP jP]V!5T;շwգjz^~^VTMZ46AM֦kOi3HxY#{ T8q1 :&VQM%VMQ -6aNlGh1ĎTj;@?):FZ[VicM^c9\Z-JQl0=|@'D1RP 7~O`n&a 諈 -H([A'N1BNqG,B@qVPGAë-uEei5pSfXǦ8!c8MQ k.|;$wFv.=g|_f4)^w$d-DB3Cِgt75uM!*y8 vХYcBF6$7׹Fkk)}⽰!H{\ 'd @ouv۳I ug"0aH\[}A*- 53d HƗh,JnZ}ė}6D;ELz3IM >Pd䍵݁޵=%r s@c/isąuH#5F#"9:ni"87Jkï.")]H&Hz5nO[xohp.Ԧs -]yd7veWakй6PIÍDvjBQ&KZlx"}{޾C/_g+3 -PKyr+$v<v޵c[ؙ*t:[vsݹPǞglO|@X Zu+fdwZWG<Wˌ8`1k2V5/ۗ|`NnoX󆥷[H|q8:\!K$-$.=+}]bL$нa_M\NjsOWLH"is27dep $_X^Qz x] 4V1c]j3/`K$Aa}gQ Pz$B0G!% : bTW^,µ`0p|:zssA̓)3vld'^`TVgN^t`wM3绺ϲNd.?`n9l*͞H'yӌ|ۗ3,۽z ΁\bG:'fnV!r1clC${8;gg -FMx!פȧFlۄ Ƕ!-L=wsQo,O"-~4$A۪Єump{oLg7I0G۸%W =To/0Džu Ố QM ȂȪrX(BfU" kx -&dX mWI)|_ M /*2YCjȫdyCz>9M>"g?ɿEFL -Qc7 d:N rZIUt nv#K?=M~z!"KP2]ɖ̬YR,CvVDF 9ZҡA9t)ǕS(+5dj5+s0'sxļƳ {l -KgY&b?bAfv<R(y K"wBIU]B̗z,[= +"v, 7ra%r( C$ {\ۄZ $| U-D8Edm+US6P,XgِHwXرE>HR5KUo Xjъa!Ue)4\Q.ʼ)x_m3,(.2_[nJTVʺv< }m{"ώۖѣfB~okh*H9?I4YwdKn _%oߘ_X6dj0dawZC'3RǩcY58vЎ]#{i8~vN~;"&dJS -_#|8{mv/6!F34QK@IH6$bM?2NA*#r4CMdZpv&dD;HE%;{ߟyB=OnX@o7ՠ/ŹB pdc"""Ҍ)eu9..3rwMgIEaXuP״yv%׿YC5sfh[vNK*Zn_a濱i|S 5z9 {nuw}C.,vC=Q7%mg@>64k&[UYHn>)[l:tρùUu; VV[J۪D'o<;0׎.lуaw?s-CWK7svT[<}MUHhϼ eivnC -[ӭh+or{~$_Vi5E\]4⨉6~o}oyi Zַݰ_={OxݵF9(;{n~ݮs튖n(-BMoiD5oNo>d - q}gHJ>cwI^qQd\(GPIE,1"vXNDUzBL$ƕљ2K^_w|-8'iTlvmfYȤDC Y#,})ȃjB(0|(E=Uzj1TMnA=X+NX kPO[`;ڠ~A8G9T]Eu[އ8H6U UE*TVu,&[n%#܅j=D&LZȃ!H7y%A{r>z$$&7y'͠~K/G}UH~Vi~+tD4B[GhғO5teTZ|T[X5e7zvk`k:\Ml3*&5jGՉ -c'X7;Z,JjXJ >(F+Jݍ Tqz㼱gM)]Ev[2\! -͝ϳEKi-%Ra+)c\ -[)؂Ue3y Pqif{JʺhG2T mSAO&)Qb3DAc.[C /+W &ǯYJPvҰ, I<E+Lxlca b `!iYl#BNbS,?O[A;y-o2g}LcA=KA<1&+cJՂl{4өxM)0(]'loFEӿ22 yc@:X'Avʹ[`v{^; j?8~x/!)<(Q'oLaOlq mEw`Ƙ{^PU"|rfF` 0g$ÍrK aW YBM,aamUmp 68-F{rnkc*5lK"<ߐt_ïp^6c,gxYsckf+YʴЧ܋qz GK} =5e1Yle1 yԹ,nzS]:XJ7-X,!z,bEٳGY%JrnX bټ0WwVaPUMd!Q}x2S+JXS^ip3hnc.٪VvYfֿɯ82nwڷ& Q"#%qTvCˆ< RIK_0|!_WH4$$^{J&m,g JyQk'm@H̃|;;:)p|lvdn|:9w--̲-M,#Yxt%Q9hhY0KYCZªp,]=.rџт Ư^Թ5ʳf!1fPUk|MϾysƵhCMw<x2ZpGpݲTicK<ʚşcМ}Û-?zqe %,fά:Y,MDVs<Е¡5眣;Έ[Lm*׹*8qWWo6=C&> À%3 Vmm0G[xKxD-p29ٜ79]Xv"=YEd1/bRѾ /A& " -=e:!"%58dj]dڹ5xc'sF-&օlRX%#f-0 %*lu1LMS,?uQżS`$BmU4(vx h)וֹ+܃LN,y6ia -fE9,pTw|GBw ǩ 6h95P" R_Y8NN!j;WV{uٍOC:dыZh+9-ZxfOxٳp{9̎->.~ 8+XXM Ż-&ʰBu'YZ jf ,Uho1+b2_hq줜:2DmuT7L~ -a/ބƐ5"#@"]hMx}yx*p;[ *5,"^"Y~-L44Y5x`jh10nZN׏dWRŚ^sˏ ˚2pbax[_OCT_f5 MT`uQ}1,P gѫ/lKw`b;ˉ6]-O+J0O_Ǣ:^ǯ/P݉,~I -Kk ׊fA2q"=.WGLGo8L>b~v6YA hYwRkᦊOYEAuAM퓅FWwyTAHe-X~06PBȳ!üll`j|JrCoiF5*vf[hvY[qtu?D3mRga>ڛ)k2G&c~ MGWwg mc=ۏHV +h#iۏhPhYeNdӡf&#d(^ 18RzH y~뿗Sx/}6+ŀ (B24Hܗ{*}edݣlءhtap͇fySVe24[lqFs=8> S"Xbh4-_flow)pm1,uh;65L>,EJ}}š{BK,v\Suc\, &!{QMl~(gq?Mnr+FW;M,OnN CCQ:4| I(`ZY^o[1Xqb`w ![fbe5ʈ2|Z9|Ir^ywKO^-PQg}¢(a,B5E۲b_+5 b]xh -k<410OkGqTԪ1&>cm|cE.N5csg柹ߢf'*`X_R2syl!gzmgmcv]ea,Cy"|gq7M|?s ~ߖ¥ޒ&Y8X*UHF-itD:/]l49KvSry^n' -S"ʏ\e2[,VV)*(;0ݫV('ʿKJTU5&^:Hf5@_OJLF™D^D%*-PBcU…^$L&0P#$*H{c=DVa(bU(P#tPb@K#&ga8C,& >a4EOA~T4TFnF`TQĬGl75CN"H F*4 WE%.`U QB}Aԉ8!ہ M\-vH׃ߠ6Oo,ԃ+ b/>,z,me~+ ;Az]۫{uVZZvݾVTցu'<7Wzֹ[;"G^!/гcc:KuxqI #K?_KsJw++ }Ҭ-yK[~m^ɲ̟,N6^幧Sge$jǎ --_+ jeu5 $7ovTӵQ0ҽ3O\,[|,:E~kD2gҙ]ӌ U7Ϛ ^{ZKCi%Sǻל̯~g'Q -Նɵ?ȯX<_ϵ^,-{wRq5ub VJ[|^wUZo!KݢyyGĥֶ4"s/- JB!^kίNlCܔ-:K4w@`3! JKˉW &dWqXqg튾֭ 4n_}tsrLӪڤ#qT-41VYu*Ϻr> 1tHk/㾜nX"+$w2amLTͣve\uX`ܗ;93,)Hƞ,~eap7ˢ3ϕ{3%pz `?|t (z(b!C$|j0)?l y01ߚ Tnx0 kPsކfbv8 0;C;t TxFD$ē$BOP2d;%c2L&Ed)%ee2TU, Md5Yy\OdKr|y%r kJg^85hf4a4i9it:c9c ]JUtEn>.%ӣ#z~F/ޠF3cɢX֏Ų8fa,='PQ3CЇʧ(0DD9eh-F%R=r}%L#6b򨣊Qqr[^A )8ꖇ LP˔.3YWF^]paW4 - Gu!]+WV/QVIAar dIB(q|~@U3hRgv,Mͨh>p+4 pXXI g+N8q.D( "Љ¬5pNpanbf@1(3@f;̛7־\xك/޾쁏6ظvPyk_MK31<<e#v -Pv5zP(0sMw! wk].vq`䦱n 97r@~6xƒk. .Ҍ~-%dKʳ/rb}B^B}*s~Rl jʍTMwn@,g?–\]W._} -G۝ۻPO}}Oq۽a}gt|iu/|u5&B< -%cF6IWVjDoPkjmFgir|?tMEi6,YYu}@֓)ӒU~x7fy/\m>_݇T:/[ӣaˇ,.і8OW0'KVgI\S븲s|?sȘۋq[զYi +CӞݧg6lYjّiN-y6'mNE%&95ȆQ 'JV+ Iu;XK}qq;W/kvKqwzG"ëEwGm(TR4!jh^yprKWDvlέk'4bĴhHr&m͞j?lKζ  \X{48Mq~?Cf ڵ:.uVĢ/ʮ3}yklI۬%㊴+N8TAZɆ,RdG&i +Z@4B(9YӋjI EGi;Ah}͚R x_ҸiBr뛵\GҥJ2,A!K*Hg`'o |v}]\9@M菤[,o7:x -~ l//#rek?Awe55Bn0ShBTr-X$x<VG*0X V!qUtؾTNɚKt.9He|uWP"3YWK}) a~IKI⭶I=zac-}lQsB'r^sDfHMX~>?O!~@o/F"'v]0?5i;Zo>Ms#4aJ5(];YUҕ -Ǩ.+̮xld{g YLO&jdbݖb>f.@ItZVL%A%2SxDhD"ZܝE -_:%;c-sh)42ͣ$<$'G~V? cK؄Fhg3p28 H"'".9r ƀXq0uG: -0ȡ`ٌ<=A#y y8N&?ȃAf!ɇm(9A/a''x<>ݠqt `ZN#L[Kd~ ٳ7~ 2{DencE[D54=-A PKL ]eE8HU-z0x}`"J㏡O|W!㹋D|Xg)>Oi:AٍMl&d4=_w#AMɲK F5 ~N> -endobj -87 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -88 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -89 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 79 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 0 0 0 0 0 0 0 556 333 0 0 0 0 0 -0 722 0 722 722 667 611 778 0 278 0 0 611 833 0 778 -667 0 722 667 611 722 667 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 80 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 87 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 0 944 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 81 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 371 0 0 840 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 606 0 606 0 -0 778 611 709 774 611 556 0 832 337 0 0 611 946 831 786 -604 786 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 82 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 600 600 600 0 600 0 600 600 600 0 600 600 600 600 -600 600 600 600 600 0 600 600 600 600 600 0 0 600 600 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 -0 0 0 0 0 600 600 0 600 600 0 0 0 0 600 600 -0 0 0 600 600 0 0 0 600 0 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 83 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBJMJH+Symbol -/Encoding /Identity-H -/DescendantFonts [ 90 0 R ] -/ToUnicode 91 0 R ->> -endobj -90 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBJMJH+Symbol -/FontDescriptor 84 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 0 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 86 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 35 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 600 0 0 0 600 600 -600 0 0 0 0 0 0 0 0 0 0 0 600 0 600 600 -600 600 600 600 600 600 600 0 600 600 600 600 600 600 0 600 -600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 87 0 R ->> -endobj -20 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 88 -/Widths [600 0 0 0 600 600 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 600 600 600 600 600 600 600 0 600 0 0 600 -600 600 600 600 0 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 88 0 R ->> -endobj -33 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 500 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 89 0 R ->> -endobj -91 0 obj -<< -/Filter /FlateDecode -/Length 226 ->> -stream -HTP=o [uCTXK~IsH .F~6?O}E;`Gƍ,g@*ph>L\3p7R>{| uRqApblҋYUǎ{BP czt&cL:!NBOi発.2~|fE{T.uǛ-V5nbc? m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -72 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 74 0 R -/Contents 73 0 R ->> -endobj -75 0 obj -<< -/Type /Page -/Parent 78 0 R -/Resources 77 0 R -/Contents 76 0 R ->> -endobj -92 0 obj -<< -/S /D ->> -endobj -93 0 obj -<< -/Nums [0 92 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 16 0 R 21 0 R 24 0 R 27 0 R 30 0 R 34 0 R 37 0 R 40 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [43 0 R 48 0 R 51 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R 72 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -78 0 obj -<< -/Type /Pages -/Kids [75 0 R] -/Count 1 -/Parent 46 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [12 0 R 47 0 R 78 0 R ] -/Count 21 -/MediaBox [0 0 612 792] ->> -endobj -94 0 obj -<< -/CreationDate (D:20210202102702-06'00') -/ModDate (D:20210202102702-06'00') -/Producer (Apple pstopdf) ->> -endobj -95 0 obj -<< -/Type /Catalog -/Pages 46 0 R -/PageLabels 93 0 R ->> -endobj -xref -0 96 -0000000000 65535 f -0000182074 00000 n -0000000016 00000 n -0000005286 00000 n -0000177932 00000 n -0000178143 00000 n -0000178579 00000 n -0000178891 00000 n -0000179442 00000 n -0000179971 00000 n -0000180325 00000 n -0000155606 00000 n -0000183903 00000 n -0000182155 00000 n -0000005452 00000 n -0000009949 00000 n -0000182239 00000 n -0000010105 00000 n -0000017657 00000 n -0000180725 00000 n -0000181061 00000 n -0000182323 00000 n -0000017838 00000 n -0000023959 00000 n -0000182407 00000 n -0000024115 00000 n -0000029206 00000 n -0000182491 00000 n -0000029362 00000 n -0000037370 00000 n -0000182575 00000 n -0000037537 00000 n -0000045387 00000 n -0000181365 00000 n -0000182659 00000 n -0000045557 00000 n -0000053338 00000 n -0000182743 00000 n -0000053493 00000 n -0000060396 00000 n -0000182827 00000 n -0000060565 00000 n -0000067291 00000 n -0000182911 00000 n -0000067446 00000 n -0000073432 00000 n -0000184252 00000 n -0000184040 00000 n -0000182995 00000 n -0000073615 00000 n -0000080263 00000 n -0000183079 00000 n -0000080431 00000 n -0000089188 00000 n -0000183163 00000 n -0000089369 00000 n -0000098238 00000 n -0000183247 00000 n -0000098419 00000 n -0000108240 00000 n -0000183331 00000 n -0000108397 00000 n -0000114063 00000 n -0000183415 00000 n -0000114244 00000 n -0000123005 00000 n -0000183499 00000 n -0000123151 00000 n -0000130183 00000 n -0000183583 00000 n -0000130364 00000 n -0000142359 00000 n -0000183667 00000 n -0000142542 00000 n -0000152979 00000 n -0000183751 00000 n -0000153149 00000 n -0000155486 00000 n -0000184178 00000 n -0000155747 00000 n -0000155944 00000 n -0000156150 00000 n -0000156345 00000 n -0000156545 00000 n -0000156736 00000 n -0000156926 00000 n -0000177121 00000 n -0000177324 00000 n -0000177526 00000 n -0000177727 00000 n -0000180113 00000 n -0000181775 00000 n -0000183835 00000 n -0000183863 00000 n -0000184351 00000 n -0000184474 00000 n -trailer -<< -/Size 96 -/Root 95 0 R -/Info 94 0 R -/ID [<83b3a4a4b1fb775d689223188b8063c6><83b3a4a4b1fb775d689223188b8063c6>] ->> -startxref -184544 -%%EOF diff --git a/docs/medley-irm/20-CLISP.pdf b/docs/medley-irm/20-CLISP.pdf deleted file mode 100644 index c6c4d2b0..00000000 --- a/docs/medley-irm/20-CLISP.pdf +++ /dev/null @@ -1,13584 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5349 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -[(20.)-109.9( CLISP)]TJ -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -510.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.0267 Tw -(The syntax of Lisp is very simple. It can be described concisely, but it makes Lisp difficult to read and)Tj -0 -1.2222 TD -0.0789 Tw -[(write without tools. Unlike many languages, there are no reserved words in Lisp such as )]TJ -/TT10 1 Tf -40.8936 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5789 0 TD -(THEN)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj -/TT10 1 Tf --45.0731 -1.2889 TD -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5956 0 TD -(DO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0956 Tw -(, etc., nor reserved characters like )Tj -/TT10 1 Tf -15.5279 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5956 0 TD -(-)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5956 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT11 1 Tf -0.5956 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0956 Tw -[(, etc. The only components of the language are)]TJ --23.6977 -1.2889 TD -0.16 Tw -[(atoms and delimiters. This eliminates the need for parsers and precedence rules, and makes Lisp)]TJ -0 -1.2222 TD -0.06 Tw -[(programs easy to mainpuilate. For example, a Lisp interpreter can be written in one or two pages of)]TJ -T* -0.0589 Tw -[(Lisp code. This makes Lisp the most suitable programming language for writing programs that deal)]TJ -T* -0 Tw -(with other programs as data.)Tj -0 -2.8889 TD -0.0711 Tw -(Human language is based on more complicated structures and relies more on special words to carry)Tj -0 -1.2222 TD -0 Tw -(the meaning. The definiton of the factorial function looks like this in Lisp:)Tj -/TT10 1 Tf -5.3333 -2.8222 TD -(\(COND \(\(ZEROP N\) 1\) \(T \(TIMES N \(FACTORIAL \(\(SUB1 N\)\)\)\)\)\))Tj -/TT8 1 Tf --5.3333 -2.9556 TD -0.0789 Tw -[(This definition is easy to read for a machine but difficult to read for a human. CLISP)-6.6( is designed to)]TJ -0 -1.2222 TD -0.1111 Tw -(make Interlisp programs easier to read and write. CLISP does this by translating various operators,)Tj -T* -0 Tw -(conditionals, and iterative statements to Interlisp. For example, factorial can be written in CLISP:)Tj -/TT10 1 Tf -5.3333 -2.8889 TD -(\(IF N)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(0 THEN 1 ELSE N*\(FACTORIAL N-1\)\))Tj -/TT8 1 Tf --9.4339 -2.9556 TD -0.0456 Tw -[(CLISP will translate this expression to the form in the example above. The translation will take place)]TJ -0 -1.2222 TD -0 Tw -(when the form is read so there are no performance penalties.)Tj -0 -2.8889 TD -0.0144 Tw -(You should view CLISP as a shothand for produceing Lisp programs. CLISP makes a program easy to)Tj -0 -1.2222 TD -0 Tw -(read and sometimes more compact.)Tj -0 -2.8889 TD -0.35 Tw -[(CLISP is implemented via the error correction machinery in Interlisp \(see Chapter 20\). Any)]TJ -0 -1.2222 TD -0.2855 Tw -[(expression that Interlisp thinks is well-formed will never be seen by CLISP This means that)]TJ -T* -0.2367 Tw -(interpreted programs that do not use CLISP constructs do not pay for its availability by slower)Tj -T* -0.26 Tw -[(execution time. In fact, the Interlisp interpreter does not know about CLISP at all. When the)]TJ -T* -0.0389 Tw -(interpreter finds an error it calls an error routine which in turn invokes the Do-What-I-Mean \(DWIM\))Tj -T* -0.2289 Tw -[(analyzer. The DWIM analyzer knows how to deal with CLISP expressions. If the expression in)]TJ -T* -0.2156 Tw -(question turns out to be a CLISP construct, the translated form is returned to the interpreter. In)Tj -T* -0.05 Tw -(addition, the original CLISP expression is modified so that it )Tj -/TT13 1 Tf -27.4502 0 TD -0 Tw -(becomes)Tj -/TT8 1 Tf -3.2593 0 TD -0.05 Tw -[( the correctly translated Interlisp)]TJ --30.7095 -1.2222 TD -0 Tw -(form. In this way, the analysis and translation are done only once.)Tj -0 -2.8889 TD -0.0233 Tw -[(Integrating CLISP into Medley makes possible Do-What-I-Mean features for CLISP constructs as well)]TJ -0 -1.2222 TD -0.0056 Tw -[(as for pure Lisp expressions. For example, if you have defined a function named )]TJ -/TT10 1 Tf -36.0452 0 TD -0 Tw -(GET-PARENT)Tj -/TT8 1 Tf -6.001 0 TD -0.0056 Tw -(, CLISP)Tj --42.0462 -1.2889 TD -0.1511 Tw -(would know not to attempt to interpret the form )Tj -/TT10 1 Tf -23.0709 0 TD -0 Tw -(\(GET-PARENT\))Tj -/TT8 1 Tf -7.2012 0 TD -0.1511 Tw -[( as an arithmetic infix operation.)]TJ --30.2721 -1.2889 TD -0.2111 Tw -[(\(Actually, CLISP would never get to see this form, since it does not contain any errors.\) If you)]TJ -0 -1.2222 TD -0.4911 Tw -(mistakenly write )Tj -/TT10 1 Tf -8.6956 0 TD -0 Tw -(\(GET-PRAENT\))Tj -/TT8 1 Tf -7.2012 0 TD -0.4911 Tw -(, CLISP would know you meant )Tj -/TT10 1 Tf -17.3602 0 TD -0 Tw -(\(GET-PARENT\))Tj -/TT8 1 Tf -7.2012 0 TD -0.4911 Tw -(, and not)Tj -/TT10 1 Tf --40.4582 -1.2889 TD -0.1711 Tw -(\(DIFFERENCE GET PRAENT\))Tj -/TT8 1 Tf -14.1445 0 TD -0.0711 Tw -(, by using the information that )Tj -/TT10 1 Tf -14.1386 0 TD -0 Tw -(PARENT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0711 Tw -[( is not the name of a variable,)]TJ --31.8836 -1.2889 TD -0.11 Tw -(and that )Tj -/TT10 1 Tf -4.1472 0 TD -0 Tw -(GET-PARENT)Tj -/TT8 1 Tf -6.001 0 TD -0.11 Tw -[( is the name of a user function whose spelling is "very close" to that of )]TJ -/TT10 1 Tf -32.7937 0 TD -0 Tw -(GET-)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -14 0 obj -<< -/Length 7344 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 126 569.54 Tm -(PRAENT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0533 Tw -[(. Similarly, by using information about the programs environment not readily available to a)]TJ --3.6006 -1.2889 TD -0 Tw -(preprocessor, CLISP can successfully resolve the following sorts of ambiguities:)Tj -1.9167 -2 TD -(1.)Tj -/TT10 1 Tf -2.0833 0 TD -0.1011 Tw -(\(LIST X*FACT N\))Tj -/TT8 1 Tf -9.2037 0 TD -0.0422 Tw -(, where )Tj -/TT10 1 Tf -3.6035 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0422 Tw -[( is the name of a variable, means)]TJ -/TT15 1 Tf -14.6623 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.2922 0 TD -0.1011 Tw -(\(LIST \(X*FACT\))Tj --30.162 -1.2889 TD -0 Tw -(N\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --3.2835 -2.0667 TD -(2.)Tj -/TT10 1 Tf -2.0833 0 TD -0.0856 Tw -(\(LIST X*FACT N\))Tj -/TT8 1 Tf -9.1726 0 TD -0.0356 Tw -(, where )Tj -/TT10 1 Tf -3.5902 0 TD -0 Tw -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0356 Tw -[( is )]TJ -/TT13 1 Tf -1.286 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0356 Tw -[( the name of a variable but instead is the name)]TJ --17.7821 -1.2889 TD -0 Tw -(of a function, means )Tj -/TT10 1 Tf -9.2036 0 TD -(\(LIST X*\(FACT N\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(, i.e., )Tj -/TT10 1 Tf -2.27 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -(s argument.)Tj --27.974 -2.0667 TD -(3.)Tj -/TT10 1 Tf -2.0833 0 TD -0.2189 Tw -(\(LIST X*FACT\(N\)\))Tj -/TT8 1 Tf -9.8205 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5911 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0911 Tw -[( the name of a function \(and not the name of a variable\),)]TJ --12.812 -1.2889 TD -0 Tw -(means )Tj -/TT10 1 Tf -3.1177 0 TD -(\(LIST X*\(FACT N\)\))Tj -/TT8 1 Tf -10.2017 0 TD -(.)Tj --15.4027 -2.0667 TD -[(4.)-1333.3(Cases 1, 2 and 3 with )]TJ -/TT10 1 Tf -11.5951 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -( misspelled!)Tj --15.9121 -2.9556 TD -0.0589 Tw -(The first expression is correct both from the standpoint of CLISP syntax and semantics so the change)Tj -0 -1.2222 TD -0.06 Tw -(would be made notification. In the other cases, you would be informed or consulted about what was)Tj -T* -0.0389 Tw -[(taking place. For example, suppose you write the expression )]TJ -/TT10 1 Tf -27.5935 0 TD -0.0933 Tw -(\(LIST X*FCCT N\).)Tj -/TT8 1 Tf -9.7882 0 TD -0.0389 Tw -[( Assume also that)]TJ --37.3817 -1.2889 TD -0 Tw -(there was both a function named )Tj -/TT10 1 Tf -14.7881 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -( and a variable named )Tj -/TT10 1 Tf -10.0718 0 TD -(FCT)Tj -/TT8 1 Tf -1.8003 0 TD -(. )Tj --27.1439 -2.0667 TD -0.0533 Tw -[(1.)-1333.3(You will first be asked if )]TJ -/TT10 1 Tf -13.4214 0 TD -0 Tw -(FCCT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[( is a misspelling of )]TJ -/TT10 1 Tf -8.7232 0 TD -0 Tw -(FCT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0533 Tw -[(. If you say )]TJ -/TT10 1 Tf -5.6216 0 TD -0 Tw -(YES)Tj -/TT8 1 Tf -1.8003 0 TD -0.0533 Tw -(, the expression)Tj --31.6839 -1.2889 TD -0.0556 Tw -(will be interpreted as )Tj -/TT10 1 Tf -9.8497 0 TD -0.1322 Tw -(\(LIST \(X*FCT\) N\))Tj -/TT8 1 Tf -9.866 0 TD -0.0555 Tw -[(. If you say )]TJ -/TT10 1 Tf -5.6328 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0556 Tw -(, you will be asked if )Tj -/TT10 1 Tf -9.7215 0 TD -0 Tw -(FCCT)Tj -/TT8 1 Tf --36.2701 -1.2889 TD -(was a misspelling of )Tj -/TT10 1 Tf -9.2495 0 TD -(FACT)Tj -/TT8 1 Tf -2.4004 0 TD -(, i.e., if you intended )Tj -/TT10 1 Tf -9.3101 0 TD -(X*FCCT N)Tj -/TT8 1 Tf -4.8008 0 TD -( to mean )Tj -/TT10 1 Tf -4.0659 0 TD -(X*\(FACT N\).)Tj -/TT8 1 Tf -6.6011 0 TD -( )Tj --38.5111 -2.0667 TD -0.0311 Tw -[(2.)-1333.3(If you say )]TJ -/TT10 1 Tf -6.7816 0 TD -0 Tw -(YES)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[( to this question, the indicated transformation will be performed. If you)]TJ --6.4986 -1.2889 TD -0 Tw -(say )Tj -/TT10 1 Tf -1.8189 0 TD -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0889 Tw -(, the system will ask if )Tj -/TT10 1 Tf -10.5734 0 TD -0 Tw -(X*FCCT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0889 Tw -[( should be treated as CLISP, since)]TJ -/TT10 1 Tf -15.4176 0 TD -0.2122 Tw -[( FCCT)]TJ -/TT8 1 Tf -3.2127 0 TD -0.0889 Tw -[( is not)]TJ --35.8233 -1.2889 TD -0 Tw -(the name of a \(bound\) variable. )Tj --2.0833 -2 TD -0.0956 Tw -[(3.)-1333.3( If you say )]TJ -/TT10 1 Tf -7.3205 0 TD -0 Tw -(YES)Tj -/TT8 1 Tf -1.8003 0 TD -0.0956 Tw -(, the expression will be transformed, if )Tj -/TT10 1 Tf -17.8798 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0956 Tw -(, it will be left alone, i.e., as)Tj -/TT10 1 Tf --26.1175 -1.2889 TD -0.01 Tw -(\(LIST X*FCCT N\))Tj -/TT8 1 Tf -9.0215 0 TD -0.0001 Tc -0.0043 Tw -(. Note that we have not even considered the case where )Tj -/TT10 1 Tf -25.0821 0 TD -0 Tc -0 Tw -(X*FCCT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0015 Tc -0.0029 Tw -( is)Tj --37.7042 -1.2889 TD -0 Tc -0.1967 Tw -(itself a misspelling of a variable name, e.g., a variable named )Tj -/TT10 1 Tf -29.2312 0 TD -0 Tw -(XFCT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1967 Tw -[( \(as with )]TJ -/TT10 1 Tf -4.63 0 TD -0 Tw -(GET-)Tj --36.2616 -1.2889 TD -(PRAENT\))Tj -/TT8 1 Tf -4.2007 0 TD -0.0544 Tw -[(. This sort of transformation will be considered after you said )]TJ -/TT10 1 Tf -28.1763 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0544 Tw -[( to )]TJ -/TT10 1 Tf -1.481 0 TD -0 Tw -(X*FCCT)Tj --35.0581 -1.2889 TD -(N -> X*\(FACT N\))Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj --13.0015 -2.9556 TD -0.0256 Tw -(The question of whether )Tj -/TT10 1 Tf -11.1432 0 TD -0 Tw -(X*FCCT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0256 Tw -[( should be treated as CLISP is important because Interlisp users may)]TJ --14.7438 -1.2889 TD -0.1522 Tw -[(have programs that employ identifiers containing CLISP operators. Thus, if CLISP encounters the)]TJ -0 -1.2222 TD -0 Tw -(expression )Tj -/TT10 1 Tf -5.0046 0 TD -(A/B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0178 Tw -[( in a context where either )]TJ -/TT10 1 Tf -11.5202 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( or )]TJ -/TT10 1 Tf -1.4765 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( are not the names of variables, it will ask you if )]TJ -/TT10 1 Tf -21.5566 0 TD -0 Tw -(A/B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0178 Tw -[( is)]TJ --44.3587 -1.2889 TD -0 Tw -(intended to be CLISP, in case you really do have a free variable named )Tj -/TT10 1 Tf -31.4356 0 TD -(A/B)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --29.9025 -2.0667 TD -0.3689 Tw -[(Note: )-282.3(Through the discussion above, we speak of CLISP or DWIM asking you.)]TJ -3.3333 -1.2222 TD -0.0111 Tw -(Actually, if you typed in the expression in question for immediate execution, you)Tj -T* -0.0056 Tw -(are simply informed of the transformation, on the grounds that you would prefer)Tj -T* -0.5333 Tw -(an occasional misinterpretation rather than being continuously bothered,)Tj -T* -0.1378 Tw -(especially since you can always retype what you intended if a mistake occurs,)Tj -T* -0.4333 Tw -(and ask the programmers assistant to )Tj -/TT10 1 Tf -19.6635 0 TD -0 Tw -(UNDO)Tj -/TT8 1 Tf -2.4004 0 TD -0.4333 Tw -[( the effects of the mistaken)]TJ --22.0639 -1.2889 TD -0.0944 Tw -[(operations if necessary. For transformations on expressions in your programs,)]TJ -0 -1.2222 TD -0.2056 Tw -(you can tell CLISP whether you wish to operate in )Tj -/TT10 1 Tf -24.5438 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.2056 Tw -[( or )]TJ -/TT10 1 Tf -1.852 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf --31.1967 -1.2889 TD -0.4133 Tw -[(mode. In the former case \(most typical\) you will be asked to approve)]TJ -0 -1.2222 TD -0.2822 Tw -(transformations, in the latter, CLISP will operate as it does on type-in, i.e.,)Tj -T* -0 Tw -(perform the transformation after informing you.)Tj -ET -endstream -endobj -15 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -18 0 obj -<< -/Length 7995 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0933 Tw -(CLISP can also handle parentheses errors caused by typing )Tj -/TT10 1 Tf -27.1945 0 TD -0 Tw -(8)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( or )]TJ -/TT10 1 Tf -1.6276 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( for )]TJ -/TT10 1 Tf -1.9606 0 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( or )]TJ -/TT10 1 Tf -1.6276 0 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -(. \(On most terminals, )Tj -/TT10 1 Tf -9.9241 0 TD -0 Tw -(8)Tj -/TT8 1 Tf --44.7348 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0095 0 TD -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( are the lowercase characters for )]TJ -/TT10 1 Tf -14.8155 0 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( and )]TJ -/TT10 1 Tf -2.3262 0 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -(, i.e., )Tj -/TT10 1 Tf -2.4034 0 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( and )]TJ -/TT10 1 Tf -2.3262 0 TD -0 Tw -(8)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( appear on the same key, as do )]TJ -/TT10 1 Tf -14.3322 0 TD -0 Tw -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( and )]TJ -/TT10 1 Tf -2.3262 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -(.\))Tj --44.7399 -1.2889 TD -0.1933 Tw -(For example, if you write )Tj -/TT10 1 Tf -12.3671 0 TD -0.4644 Tw -(N*8FACTORIAL N-1)Tj -/TT8 1 Tf -10.066 0 TD -0.1933 Tw -(, the parentheses error can be detected and fixed)Tj --22.4331 -1.2889 TD -0.0933 Tw -(before the infix operator )Tj -/TT10 1 Tf -11.347 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( is converted to the Interlisp function )]TJ -/TT10 1 Tf -17.2373 0 TD -0 Tw -(TIMES)Tj -/TT8 1 Tf -3.0005 0 TD -0.0933 Tw -(. CLISP is able to distinguish)Tj --32.1849 -1.2889 TD -0.0589 Tw -(this situation from cases like )Tj -/TT10 1 Tf -13.1011 0 TD -0 Tw -(N*8*X)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[( meaning )]TJ -/TT10 1 Tf -4.4908 0 TD -0.1411 Tw -(\(TIMES N 8 X\))Tj -/TT8 1 Tf -8.2246 0 TD -0.0589 Tw -(, or )Tj -/TT10 1 Tf -1.8087 0 TD -0 Tw -(N*8X)Tj -/TT8 1 Tf -2.4004 0 TD -0.0589 Tw -(, where )Tj -/TT10 1 Tf -3.6368 0 TD -0 Tw -(8X)Tj -/TT8 1 Tf -1.2002 0 TD -0.0589 Tw -[( is the name of a)]TJ --37.8631 -1.2889 TD -0.2011 Tw -(variable, again by using information about the programming environment. In fact, by integrating)Tj -0 -1.2222 TD -0.0411 Tw -(CLISP with DWIM, CLISP has been made sufficiently tolerant of errors that almost everything can be)Tj -T* -0 Tw -(misspelled! For example, CLISP can successfully translate the definition of )Tj -/TT10 1 Tf -33.0957 0 TD -(FACTORIAL)Tj -/TT8 1 Tf -5.4009 0 TD -(:)Tj -/TT10 1 Tf --33.1633 -2.0667 TD -(\(IFF N)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(0 THENN1 ESLE N*8FACTTORIALNN-1\))Tj -/TT8 1 Tf --10.034 -2.7333 TD -0.1256 Tw -(to the corresponding )Tj -/TT10 1 Tf -9.8376 0 TD -0 Tw -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -0.1256 Tw -(, while making five spelling corrections and fixing the parenthesis error.)Tj --12.238 -1.2889 TD -0.1222 Tw -(CLISP also contains a facility for converting from Interlisp back to CLISP, so that after running the)Tj -0 -1.2222 TD -0.08 Tw -(above incorrect definition of )Tj -/TT10 1 Tf -13.0759 0 TD -0 Tw -(FACTORIAL)Tj -/TT8 1 Tf -5.4009 0 TD -0.08 Tw -(, you could "clispify" the now correct version to obtain )Tj -/TT10 1 Tf -25.0529 0 TD -0 Tw -(\(IF)Tj --43.5297 -1.2889 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(0 THEN 1 ELSE N*\(FACTORIAL N-1\)\))Tj -/TT8 1 Tf -19.2031 0 TD -(.)Tj --20.9033 -2.9556 TD -0.07 Tw -[(This sort of robustness prevails throughout CLISP. For example, the iterative statement permits you)]TJ -0 -1.2222 TD -0 Tw -(to say things like:)Tj -/TT10 1 Tf -5.3333 -1.9333 TD -(\(FOR OLD X FROM M TO N DO \(PRINT X\) WHILE \(PRIMEP X\)\))Tj -/TT8 1 Tf --5.3333 -2.7333 TD -0.0378 Tw -(However, you can also write )Tj -/TT10 1 Tf -13.1357 0 TD -0.0911 Tw -(OLD \(X)Tj -/TT11 1 Tf -3.6917 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.0911 Tw -(M\), \(OLD X)Tj -/TT11 1 Tf -6.1832 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(M\))Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5378 0 TD -0.0911 Tw -(\(OLD \(X)Tj -/TT11 1 Tf -4.2918 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(M\)\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0378 Tw -(, permute the order of the)Tj --33.8011 -1.2889 TD -0.0356 Tw -(operators, e.g., )Tj -/TT10 1 Tf -6.8182 0 TD -0.0856 Tw -(\(DO PRINT X TO N FOR OLD X)Tj -/TT11 1 Tf -16.2014 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.0856 Tw -(M WHILE PRIMEP X\))Tj -/TT8 1 Tf -10.4583 0 TD -0.0356 Tw -(, omit either or both sets)Tj --34.4648 -1.2889 TD -0.0211 Tw -(of parentheses, misspell any or all of the operators )Tj -/TT10 1 Tf -22.6627 0 TD -0 Tw -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(OLD)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(DO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0211 Tw -(, or )Tj -/TT10 1 Tf -1.7331 0 TD -0 Tw -(WHILE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0211 Tw -(, or leave out the)Tj --37.8821 -1.2889 TD -0 Tw -(word )Tj -/TT10 1 Tf -2.6857 0 TD -(DO)Tj -/TT8 1 Tf -1.2002 0 TD -0.05 Tw -[( entirely! And, of course, you can also misspell )]TJ -/TT10 1 Tf -21.2928 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.55 0 TD -(PRIMEP)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.55 0 TD -(M)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( or )]TJ -/TT10 1 Tf -1.5409 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[(! In this example, the)]TJ --35.6209 -1.2889 TD -0.0711 Tw -(only thing you could not misspell is the first )Tj -/TT10 1 Tf -20.411 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -(, since it specifies the )Tj -/TT13 1 Tf -9.8453 0 TD -0 Tw -(name)Tj -/TT8 1 Tf -2.167 0 TD -0.0711 Tw -[( of the variable of iteration.)]TJ --33.0234 -1.2889 TD -0 Tw -(The other two instances of )Tj -/TT10 1 Tf -11.8887 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( could be misspelled.)Tj --12.4888 -2.9556 TD -0.1144 Tw -[(CLISP is well integrated into Medley. For example, the above iterative statement translates into an)]TJ -0 -1.2222 TD -0.1 Tw -(equivalent Interlisp form using )Tj -/TT10 1 Tf -14.4151 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6 0 TD -(GO)Tj -/TT8 1 Tf -1.2002 0 TD -0.1 Tw -[(, etc. When the interpreter subsequently encounters)]TJ --21.6161 -1.2889 TD -0.0722 Tw -[(this CLISP expression, it automatically obtains and evaluates the translation. Similarly, the compiler)]TJ -0 -1.2222 TD -0.54 Tw -[("knows" to compile the translated form. However, if you )]TJ -/TT10 1 Tf -30.9278 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.54 Tw -[( your program,)]TJ -/TT10 1 Tf --37.5289 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.2433 Tw -[( "knows" to print the original CLISP at the corresponding point in your function.)]TJ --6.6011 -1.2889 TD -0.2033 Tw -[(Similarly, when you edit your program, the editor keeps the translation invisible to you. If you)]TJ -0 -1.2222 TD -0.2644 Tw -(modify the CLISP, the translation is automatically discarded and recomputed the next time the)Tj -T* -0 Tw -(expression is evaluated.)Tj -0 -2.8889 TD -0.0956 Tw -[(In short, CLISP is not a language at all, but rather a system. It plays a role analagous to that of the)]TJ -0 -1.2222 TD -0.5444 Tw -[(programmers assistant \(Chapter 13\). Whereas the programmers assistant is an invisible)]TJ -T* -0.17 Tw -(intermediary agent between your console requests and the Interlisp executive, CLISP sits between)Tj -T* -0 Tw -(your programs and the Interlisp interpreter.)Tj -0 -2.8889 TD -0.0433 Tw -[(Only a small effort has been devoted to defining the core syntax of CLISP. Instead, most of the effort)]TJ -0 -1.2222 TD -0.0467 Tw -(has been concentrated on providing a facility which "makes sense" out of the input expressions using)Tj -T* -0.0533 Tw -[(context information as well as built-in and acquired information about user and system programs. It)]TJ -T* -(has been said that communication is based on the intention of the speaker to produce an effect in the)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -21 0 obj -<< -/Length 6694 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.3178 Tw -[(recipient. CLISP operates under the assumption that what you say is )]TJ -/TT13 1 Tf -34.6004 0 TD -0 Tw -(intended)Tj -/TT8 1 Tf -3.5015 0 TD -0.3178 Tw -[( to represent a)]TJ --38.1019 -1.2222 TD -0.0922 Tw -[(meaningful operation, and therefore tries very hard to make sense out of it. The motivation behind)]TJ -T* -0.0533 Tw -(CLISP is not to provide you with many different ways of saying the same thing, but to enable you to)Tj -T* -0.0044 Tw -(worry less about the )Tj -/TT13 1 Tf -9.2771 0 TD -0 Tw -(syntactic)Tj -/TT8 1 Tf -3.6475 0 TD -0.0001 Tc -0.0043 Tw -( aspects of your communication with the system. In other words, it gives)Tj --12.9245 -1.2222 TD -0 Tc -0.0744 Tw -(you a new degree of freedom by permitting you to concentrate more on the problem at hand, rather)Tj -T* -0 Tw -(than on translation into a formal and unambiguous language.)Tj -0 -2.8889 TD -0.0111 Tw -(DWIM and CLISP are invoked on iterative statements because )Tj -/TT10 1 Tf -27.9003 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0111 Tw -[( of the iterative statement is not the)]TJ --29.7006 -1.2889 TD -0.0222 Tw -[(name of a function, and hence generates an error. If you define a function by the same name as an i.s.)]TJ -0 -1.2222 TD -0.1967 Tw -(operator, e.g., )Tj -/TT10 1 Tf -6.7166 0 TD -0 Tw -(WHILE)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6967 0 TD -(TO)Tj -/TT8 1 Tf -1.2002 0 TD -0.1967 Tw -(, etc., the operator will no longer have the CLISP interpretation when it)Tj --11.6139 -1.2889 TD -0.0422 Tw -(appears as )Tj -/TT10 1 Tf -5.0083 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0422 Tw -[( of a form, although it will continue to be treated as an i.s. operator if it appears in the)]TJ --6.8086 -1.2889 TD -0.0656 Tw -[(interior of an i.s. To alert you, a warning message is printed, e.g., )]TJ -/TT10 1 Tf -30.0237 0 TD -0.1567 Tw -(\(WHILE DEFINED, THEREFORE)Tj --30.0237 -1.2889 TD -0 Tw -(DISABLED IN)Tj -/TT15 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(CLISP\))Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 388.2 Tm -(CLISP Interaction with User)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 385.49 m -558.01 385.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 363.54 Tm -0.2244 Tw -(Syntactically and semantically well formed CLISP transformations are always performed without)Tj -0 -1.2222 TD -0.0967 Tw -[(informing you. Other CLISP transformations described in the previous section, e.g., misspellings of)]TJ -T* -0.0656 Tw -(operands, infix operators, parentheses errors, unary minus - binary minus errors, all follow the same)Tj -T* -0.2922 Tw -[(protocol as other DWIM transformations \(Chapter 19\). That is, if DWIM has been enabled in)]TJ -/TT10 1 Tf -T* -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1578 Tw -[( mode, or the transformation is in an expression you typed in for immediate execution,)]TJ --4.8008 -1.2889 TD -0.0222 Tw -[(your approval is not requested, but you are informed. However, if the transformation involves a user)]TJ -0 -1.2222 TD -0.0633 Tw -(program, and DWIM was enabled in )Tj -/TT10 1 Tf -16.8815 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0633 Tw -[( mode, you will be asked to approve. If you say )]TJ -/TT10 1 Tf -22.2068 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -(,)Tj --45.0892 -1.2889 TD -0.1667 Tw -[(the transformation is not performed. Thus, in the previous section, phrases such as "one of these)]TJ -0 -1.2222 TD -0.1 Tw -(\(transformations\) succeeds" and "the transformation )Tj -/TT10 1 Tf -23.8272 0 TD -0.2389 Tw -(LAST-ELL ->)Tj -/TT8 1 Tf -6.84 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.35 0 TD -(LAST-EL)Tj -/TT8 1 Tf -4.2007 0 TD -0.1 Tw -[( would be found" etc.,)]TJ --35.2178 -1.2889 TD -0.41 Tw -(all mean if you are in )Tj -/TT10 1 Tf -12.0621 0 TD -0 Tw -(CAUTIOUS)Tj -/TT8 1 Tf -4.8008 0 TD -0.41 Tw -[( mode and the error is in a program, the corresponding)]TJ --16.8628 -1.2889 TD -0.0378 Tw -[(transformation will be performed only if you approve \(or defaults by not responding\). If you say )]TJ -/TT10 1 Tf -43.8825 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -(,)Tj --45.0827 -1.2889 TD -0.0233 Tw -[(the procedure followed is the same as though the transformation had not been found. For example, if)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -[( appears in the function )]TJ -/TT10 1 Tf -11.2395 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -(, and )Tj -/TT10 1 Tf -2.6518 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.1044 Tw -[( is not bound \(and no other transformations are found\) you)]TJ --18.092 -1.2889 TD -0.0756 Tw -(would be asked )Tj -/TT10 1 Tf -7.4635 0 TD -0.1811 Tw -[(A*B [IN FOO] TREAT AS CLISP)]TJ -/TT8 1 Tf -17.8894 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3256 0 TD -(?)Tj -/TT8 1 Tf -0.6001 0 TD -0.0756 Tw -[( \(The waiting time on such interactions is)]TJ --26.2785 -1.2889 TD -0 Tw -(three times as long as for simple corrections, i.e., )Tj -/TT10 1 Tf -21.6211 0 TD -(3*DWIMWAIT)Tj -/TT8 1 Tf -6.001 0 TD -(\).)Tj --27.6221 -2.9556 TD -0.1667 Tw -(In certain situations, DWIM asks for approval even if DWIM is enabled in )Tj -/TT10 1 Tf -35.0177 0 TD -0 Tw -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1667 Tw -[( mode. For)]TJ --39.8185 -1.2889 TD -0.1255 Tw -(example, you are always asked to approve a spelling correction that might also be interpreted as a)Tj -0 -1.2222 TD -0 Tw -(CLISP transformation, as in )Tj -/TT10 1 Tf -12.4614 0 TD -(LAST-ELL -> LAST-EL)Tj -/TT8 1 Tf -11.4019 0 TD -(.)Tj --23.8633 -2.9556 TD -0.0033 Tw -(If you approved, )Tj -/TT10 1 Tf -7.6829 0 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -( would be transformed to )Tj -/TT10 1 Tf -11.5294 0 TD -0 Tc -0.0078 Tw -(\(ITIMES A B\))Tj -/TT8 1 Tf -7.2167 0 TD -0.0033 Tw -(, which would then cause a )Tj -/TT10 1 Tf -12.3066 0 TD -0 Tw -(U.B.A.B.)Tj -/TT8 1 Tf --40.5359 -1.2889 TD -0.1467 Tw -(error in the event that the program was being run \(remember the entire discussion also applies to)Tj -0 -1.2222 TD -0 Tw -(DWIMifying\). If you said )Tj -/TT10 1 Tf -11.6997 0 TD -(NO,)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -( would be left alone.)Tj --15.5503 -2.9556 TD -0.2367 Tw -(If the value of )Tj -/TT10 1 Tf -7.3207 0 TD -0 Tw -(CLISPHELPFLG)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT10 1 Tf -0.4867 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4867 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2367 Tw -[( \(initally )]TJ -/TT10 1 Tf -4.4348 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2367 Tw -(\), you will not be asked to approve any CLISP)Tj --22.9304 -1.2889 TD -0.0489 Tw -[(transformation. Instead, in those situations where approval would be required, the effect is the same)]TJ -0 -1.2222 TD -0 Tw -(as though you had been asked and said )Tj -/TT10 1 Tf -17.6987 0 TD -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -24 0 obj -<< -/Length 8706 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT4 1 Tf --35.4 -4.38 TD -(CLISP Character Operators)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 543.54 Tm -0.0267 Tw -(CLISP recognizes a number of special characters operators, both prefix and infix, which are translated)Tj -0 -1.2222 TD -0.04 Tw -[(into common expressions. For example, the character )]TJ -/TT10 1 Tf -24.3073 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( is recognized to represent addition, so CLISP)]TJ --24.9074 -1.2889 TD -0 Tw -(translates the symbol )Tj -/TT10 1 Tf -9.6372 0 TD -(A+B)Tj -/TT8 1 Tf -1.8003 0 TD -( to the form )Tj -/TT10 1 Tf -5.416 0 TD -(\(IPLUS A B\))Tj -/TT8 1 Tf -6.602 0 TD -(. Note that CLISP is invoked, and this translation)Tj --23.4556 -1.2889 TD -0.0189 Tw -(is made, only if an error occurs, such as an unbound atom error or an undefined function error for the)Tj -0 -1.2222 TD -0.2556 Tw -(perfectly legitamate symbol )Tj -/TT10 1 Tf -13.3052 0 TD -0 Tw -(A+B)Tj -/TT8 1 Tf -1.8003 0 TD -0.2556 Tw -[(. Therefore you may choose not to use these facilities with no)]TJ --15.1055 -1.2889 TD -0 Tw -(penalty, similar to other CLISP facilities.)Tj -0 -2.8889 TD -0.0267 Tw -[(You have a lot of flexability in using CLISP character operators. A list can always be substituted for a)]TJ -0 -1.2222 TD -0.0555 Tw -[(symbol, and vice versa, without changing the interpretation of a phrase. For example, if the value of)]TJ -/TT10 1 Tf -T* -0.0778 Tw -(\(FOO X\))Tj -/TT8 1 Tf -4.2785 0 TD -0.0322 Tw -[( is )]TJ -/TT10 1 Tf -1.2793 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -(, and the value of )Tj -/TT10 1 Tf -8.0581 0 TD -0.0778 Tw -(\(FIE Y\))Tj -/TT8 1 Tf -4.2785 0 TD -0.0322 Tw -[( is )]TJ -/TT10 1 Tf -1.2793 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -(, then )Tj -/TT10 1 Tf -2.7837 0 TD -0.0778 Tw -(\(LIST \(FOO X\)+\(FIE Y\)\))Tj -/TT8 1 Tf -13.4355 0 TD -0.0322 Tw -[( has the same value)]TJ --36.5929 -1.2889 TD -0 Tw -(as )Tj -/TT10 1 Tf -1.2894 0 TD -0.2767 Tw -(\(LIST A+B\))Tj -/TT8 1 Tf -6.2776 0 TD -0.1156 Tw -[(. Note that the first expression is a list of )]TJ -/TT13 1 Tf -19.5065 0 TD -0 Tw -(four)Tj -/TT8 1 Tf -1.667 0 TD -0.1156 Tw -[( elements: the atom )]TJ -/TT10 1 Tf -9.2972 0 TD -0 Tw -("LIST")Tj -/TT8 1 Tf -3.6006 0 TD -0.1156 Tw -(, the list)Tj -/TT10 1 Tf --41.6383 -1.2889 TD -0.03 Tw -("\(FOO X\)")Tj -/TT8 1 Tf -5.4309 0 TD -0.0122 Tw -(, the atom ")Tj -/TT10 1 Tf -5.0499 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -(", and the list )Tj -/TT10 1 Tf -6.0821 0 TD -0.03 Tw -("\(FIE X\)")Tj -/TT8 1 Tf -5.4309 0 TD -0.0122 Tw -(, whereas the second expression, )Tj -/TT10 1 Tf -14.7135 0 TD -0.03 Tw -(\(LIST A+B\))Tj -/TT8 1 Tf -6.031 0 TD -0.0122 Tw -(, is a)Tj --43.3382 -1.2889 TD -0.0533 Tw -(list of only )Tj -/TT13 1 Tf -5.096 0 TD -0 Tw -(two)Tj -/TT8 1 Tf -1.499 0 TD -0.0533 Tw -[( elements: the symbol )]TJ -/TT10 1 Tf -10.0463 0 TD -0 Tw -("LIST")Tj -/TT8 1 Tf -3.6006 0 TD -0.0533 Tw -[( and the symbol )]TJ -/TT10 1 Tf -7.5463 0 TD -0 Tw -("A+B")Tj -/TT8 1 Tf -3.0005 0 TD -0.0533 Tw -[(. Since )]TJ -/TT10 1 Tf -3.4808 0 TD -0.1289 Tw -(\(LIST \(FOO X\)+\(FIE)Tj --34.2696 -1.2889 TD -0 Tw -(Y\)\))Tj -/TT8 1 Tf -1.8003 0 TD -0.2011 Tw -[( is indistinguishable from )]TJ -/TT10 1 Tf -12.3533 0 TD -0.4811 Tw -(\(LIST \(FOO X\) + \(FIE Y\)\))Tj -/TT8 1 Tf -16.8079 0 TD -0.2011 Tw -[( because spaces before or after)]TJ --30.9615 -1.2889 TD -0.0211 Tw -(parentheses have no effect on the Interlisp )Tj -/TT10 1 Tf -19.0579 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( program, to be consistent, extra spaces have no effect)]TJ --21.4583 -1.2889 TD -0.1244 Tw -[(on atomic operands either. In other words, CLISP will treat )]TJ -/TT10 1 Tf -28.0022 0 TD -0.2978 Tw -(\(LIST A+ B\))Tj -/TT8 1 Tf -7.1966 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.6244 0 TD -0.2978 Tw -(\(LIST A +B\))Tj -/TT8 1 Tf -7.1966 0 TD -0.1244 Tw -(, and)Tj -/TT10 1 Tf --43.0199 -1.2889 TD -0 Tw -(\(LIST A + B\))Tj -/TT8 1 Tf -7.2012 0 TD -( the same as )Tj -/TT10 1 Tf -5.5967 0 TD -(\(LIST A+B\))Tj -/TT8 1 Tf -6.001 0 TD -(. )Tj --15.4655 -2.0667 TD -0.1411 Tw -[(Note:)-901.2(CLISP does not use its own special )]TJ -/TT10 1 Tf -19.909 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.1411 Tw -[( program because this would require)]TJ --18.9761 -1.2889 TD -0.1733 Tw -(you to explicitly identify CLISP expressions, instead of being able to intermix)Tj -0 -1.2222 TD -0 Tw -(Interlisp and CLISP.)Tj -/TT17 1 Tf --4 -2.4822 TD -(+)Tj -/TT6 1 Tf -10 0 0 10 107.4 294 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 294 Tm -([CLISP Operator])Tj -/TT4 1 Tf -10 0 0 10 102 283.06 Tm -(-)Tj -/TT10 1 Tf -9 0 0 9 105.33 283.06 Tm -( )Tj -/TT6 1 Tf -10 0 0 10 110.7309 283.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 283.06 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(*)Tj -/TT6 1 Tf -10 0 0 10 107.4 272.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 272.12 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(/)Tj -/TT6 1 Tf -10 0 0 10 107.4 261.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 261.18 Tm -([CLISP Operator])Tj -/TT11 1 Tf -9.9 0 0 9 102 250.24 Tm -<0042>Tj -/TT6 1 Tf -10 0 0 10 107.43 250.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 250.24 Tm -([CLISP Operator])Tj --32.27 -1.7778 TD -0.0367 Tw -(CLISP recognizes )Tj -/TT10 1 Tf -8.0548 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5367 0 TD -(-)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5367 0 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf -0.25 0 TD -( )Tj -/TT8 1 Tf -0.6879 0 TD -0.0367 Tw -(/, and )Tj -/TT11 1 Tf -3.1222 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.0367 Tw -[( as the normal arithmetic infix operators. The )]TJ -/TT10 1 Tf -20.7538 0 TD -0 Tw -(-)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( is also)]TJ --36.9454 -1.2889 TD -0.4656 Tw -[(recognized as the prefix operator, unary minus. These are converted to )]TJ -/TT10 1 Tf -37.3523 0 TD -0 Tw -(PLUS)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj -/TT10 1 Tf --39.7527 -1.2889 TD -(DIFFERENCE)Tj -/TT8 1 Tf -6.001 0 TD -( \(or in the case of unary minus, )Tj -/TT10 1 Tf -13.9287 0 TD -(MINUS)Tj -/TT8 1 Tf -3.0005 0 TD -(\), )Tj -/TT10 1 Tf -0.833 0 TD -(TIMES)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(QUOTIENT)Tj -/TT8 1 Tf -4.8008 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(EXPT)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --36.9077 -2.0667 TD -0.3456 Tw -(Normally, CLISP uses the "generic" arithmetic functions )Tj -/TT10 1 Tf -27.4306 0 TD -0 Tw -(PLUS)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.8456 0 TD -(TIMES)Tj -/TT8 1 Tf -3.0005 0 TD -0.3456 Tw -[(, etc. CLISP)]TJ --33.677 -1.2889 TD -0.0467 Tw -(contains a facility for declaring which type of arithmetic is to be used, either by making a)Tj -0 -1.2222 TD -0 Tw -(global declaration, or by separate declarations about individual functions or variables.)Tj -0 -2 TD -0.0044 Tw -(The usual precedence rules apply \(although you can easily change them\), i.e., )Tj -/TT10 1 Tf -34.4894 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.0004 Tc -0.004 Tw -( has higher)Tj --35.0895 -1.2889 TD -0 Tc -0.1289 Tw -(precedence than )Tj -/TT10 1 Tf -7.7407 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.1289 Tw -[( so that )]TJ -/TT10 1 Tf -3.8408 0 TD -0 Tw -(A+B*C)Tj -/TT8 1 Tf -3.0005 0 TD -0.1289 Tw -[( is the same as )]TJ -/TT10 1 Tf -7.206 0 TD -0 Tw -(A+\(B*C\))Tj -/TT8 1 Tf -4.2007 0 TD -0.1289 Tw -(, and both )Tj -/TT10 1 Tf -5.0869 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.1289 Tw -[( and )]TJ -/TT10 1 Tf -2.4506 0 TD -0 Tw -(/)Tj -/TT8 1 Tf -0.6001 0 TD -0.1289 Tw -[( are lower)]TJ --35.3264 -1.2889 TD -0 Tw -(than )Tj -/TT11 1 Tf -2.3169 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.0767 Tw -[( so that )]TJ -/TT10 1 Tf -3.6841 0 TD -0 Tw -(2*X)Tj -/TT11 1 Tf -1.8003 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -(2)Tj -/TT8 1 Tf -0.6001 0 TD -0.0767 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.9449 0 TD -0 Tw -(2*\(X)Tj -/TT11 1 Tf -2.4004 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -(2\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0767 Tw -[(. Operators of the same precedence group)]TJ --20.7559 -1.2889 TD -0.2367 Tw -(from left to right, e.g., )Tj -/TT10 1 Tf -11.0769 0 TD -0 Tw -(A/B/C)Tj -/TT8 1 Tf -3.0005 0 TD -0.2367 Tw -[( is equivalent to )]TJ -/TT10 1 Tf -8.2099 0 TD -0 Tw -(\(A/B\)/C)Tj -/TT8 1 Tf -4.2007 0 TD -0.2367 Tw -[(. Minus is binary whenever)]TJ --26.4879 -1.2889 TD -0.0789 Tw -(possible, i.e., except when it is the first operator in a list, as in )Tj -/TT10 1 Tf -28.3339 0 TD -0 Tw -(\(-A\))Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -[( or )]TJ -/TT10 1 Tf -1.5987 0 TD -0 Tw -(\(-A\))Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -(, or when it)Tj --34.7334 -1.2889 TD -0.0744 Tw -(immediately follows another operator, as in )Tj -/TT10 1 Tf -20.0463 0 TD -0 Tw -(A*-B)Tj -/TT8 1 Tf -2.4004 0 TD -0.0744 Tw -[(. Note that grouping with parentheses)]TJ --22.4467 -1.2889 TD -0.0011 Tw -(can always be used to override the normal precedence grouping, or when you are not sure)Tj -0 -1.2222 TD -0.2122 Tw -[(how a particular expression will parse. The complete order of precedence for CLISP)]TJ -T* -0 Tw -(operators is given below.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT17 26 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -28 0 obj -<< -/Length 8080 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0944 Tw -(Note that )Tj -/TT10 1 Tf -4.6054 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0944 Tw -[( in front of a number will disappear when the number is read, e.g., )]TJ -/TT10 1 Tf -30.9545 0 TD -0.2278 Tw -(\(FOO X)Tj --36.16 -1.2889 TD -0 Tw -(+2\))Tj -/TT8 1 Tf -1.8003 0 TD -0.1056 Tw -[( is indistinguishable from )]TJ -/TT10 1 Tf -11.9711 0 TD -0.2544 Tw -(\(FOO X 2\))Tj -/TT8 1 Tf -5.9098 0 TD -0.1056 Tw -[(. This means that )]TJ -/TT10 1 Tf -8.5395 0 TD -0.2544 Tw -(\(FOO X +2\))Tj -/TT8 1 Tf -6.5099 0 TD -0.1056 Tw -[( will not be)]TJ --34.7305 -1.2889 TD -0.0267 Tw -(interpreted as CLISP, or be converted to )Tj -/TT10 1 Tf -18.1325 0 TD -0.0633 Tw -(\(FOO \(IPLUS X 2\)\))Tj -/TT8 1 Tf -10.3917 0 TD -0.0267 Tw -[(. Similarly, )]TJ -/TT10 1 Tf -5.3529 0 TD -0.0633 Tw -(\(FOO X -2\))Tj -/TT8 1 Tf --33.8771 -1.2889 TD -0.0456 Tw -(will not be interpreted the same as )Tj -/TT10 1 Tf -15.8233 0 TD -0.1078 Tw -(\(FOO X-2\))Tj -/TT8 1 Tf -5.5087 0 TD -0.0456 Tw -[(. To circumvent this, always type a space)]TJ --21.3319 -1.2889 TD -0.0822 Tw -(between the )Tj -/TT10 1 Tf -5.7841 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[( or )]TJ -/TT10 1 Tf -1.6054 0 TD -0 Tw -(-)Tj -/TT8 1 Tf -0.6001 0 TD -0.0822 Tw -[( and a number if an infix operator is intended, e.g., write )]TJ -/TT10 1 Tf -26.2181 0 TD -0.1967 Tw -(\(FOO X +)Tj --34.8077 -1.2889 TD -0 Tw -(2\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT17 1 Tf --3.8669 -2.5489 TD -(=)Tj -/TT6 1 Tf -10 0 0 10 155.4 488.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 488.6 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(GT)Tj -/TT6 1 Tf -10 0 0 10 160.8 477.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 477.66 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(LT)Tj -/TT6 1 Tf -10 0 0 10 160.8 466.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 466.72 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(GE)Tj -/TT6 1 Tf -10 0 0 10 160.8 455.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 455.78 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(LE)Tj -/TT6 1 Tf -10 0 0 10 160.8 444.84 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 444.84 Tm -([CLISP Operator])Tj --32.27 -1.8444 TD -0.27 Tw -(These are infix operators for "Equal", "Greater Than", "Less Than", "Greater Than or)Tj -0 -1.2222 TD -0 Tw -(Equal", and "Less Than or Equal".)Tj -/TT10 1 Tf -0 -2 TD -(GT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6144 0 TD -(LT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6144 0 TD -(GE)Tj -/TT8 1 Tf -1.2002 0 TD -0.1144 Tw -(, and )Tj -/TT10 1 Tf -2.6718 0 TD -0 Tw -(LE)Tj -/TT8 1 Tf -1.2002 0 TD -0.1144 Tw -[( are all affected by the same declarations as )]TJ -/TT10 1 Tf -20.3357 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.1144 Tw -[( and )]TJ -/TT10 1 Tf -2.4218 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.1144 Tw -(, with the initial)Tj --32.659 -1.2889 TD -0 Tw -(default to use )Tj -/TT10 1 Tf -6.271 0 TD -(GREATERP)Tj -/TT8 1 Tf -4.8008 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(LESSP)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --16.2651 -2.0667 TD -0.0211 Tw -(Note that only single character operators, e.g., )Tj -/TT10 1 Tf -20.7244 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT11 1 Tf -0.5211 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -(, etc., can appear in the )Tj -/TT13 1 Tf -10.488 0 TD -0 Tw -(interior)Tj -/TT8 1 Tf -3.0562 0 TD -0.0211 Tw -[( of an)]TJ --37.4978 -1.2889 TD -0.0111 Tw -[(atom. All other operators must be set off from identifiers with spaces. For example, )]TJ -/TT10 1 Tf -37.6011 0 TD -0 Tw -(XLTY)Tj -/TT8 1 Tf --37.6011 -1.2889 TD -0.1933 Tw -[(will not be recognized as CLISP. In some cases, DWIM will be able to diagnose this)]TJ -0 -1.2222 TD -0.0511 Tw -(situation as a run-on spelling error, in which case after the atom is split apart, CLISP will)Tj -T* -0 Tw -(be able to perform the indicated transformation.)Tj --5.3333 -2.8889 TD -0.0489 Tw -(A number of Lisp functions, such as )Tj -/TT10 1 Tf -16.5283 0 TD -0 Tw -(EQUAL)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5489 0 TD -(MEMBER)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5489 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5489 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.0489 Tw -(, etc., can also be treated as CLISP infix)Tj --27.7765 -1.2889 TD -0.0022 Tw -(operators. New infix operators can be easily added \(see the CLISP Internal Convetions section below\).)Tj -0 -1.2222 TD -0.0589 Tw -(Spelling correction on misspelled infix operators is peformed using )Tj -/TT10 1 Tf -30.468 0 TD -0 Tw -(CLISPINFIXSPLST)Tj -/TT8 1 Tf -9.0015 0 TD -0.0589 Tw -[( as a spelling)]TJ --39.4695 -1.2889 TD -0 Tw -(list.)Tj -/TT10 1 Tf -0 -2.8889 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -0.1022 Tw -[( is higher than )]TJ -/TT10 1 Tf -6.9992 0 TD -0 Tw -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -(, and both )Tj -/TT10 1 Tf -5.0069 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -0.1022 Tw -[( and )]TJ -/TT10 1 Tf -2.3973 0 TD -0 Tw -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.1022 Tw -[( are lower than the other infix operators, so )]TJ -/TT10 1 Tf -20.2393 0 TD -0.2455 Tw -(\(X OR Y)Tj --40.6437 -1.2889 TD -0.06 Tw -(AND Z\))Tj -/TT8 1 Tf -3.6606 0 TD -0.0256 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.6893 0 TD -0.06 Tw -(\(X OR \(Y AND Z\)\))Tj -/TT8 1 Tf -9.8416 0 TD -0.0256 Tw -(, and )Tj -/TT10 1 Tf -2.494 0 TD -0.06 Tw -(\(X AND Y EQUAL Z\))Tj -/TT8 1 Tf -10.4417 0 TD -0.0256 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.6893 0 TD -0.06 Tw -(\(X AND \(Y)Tj --39.8164 -1.2889 TD -0.3256 Tw -(EQUAL Z\)\))Tj -/TT8 1 Tf -5.7264 0 TD -0.1356 Tw -[(. All of the infix predicates have lower precedence than Interlisp forms, since it is far)]TJ --5.7264 -1.2889 TD -0.0456 Tw -(more common to apply a predicate to two forms, than to use a Boolean as an argument to a function.)Tj -0 -1.2222 TD -0 Tw -(Therefore, )Tj -/TT10 1 Tf -4.8274 0 TD -0.0633 Tw -(\(FOO X GT FIE Y\))Tj -/TT8 1 Tf -9.8549 0 TD -0.0267 Tw -[( is translated as )]TJ -/TT10 1 Tf -7.1794 0 TD -0.0633 Tw -(\(\(FOO X\) GT \(FIE Y\)\))Tj -/TT8 1 Tf -12.2553 0 TD -0.0267 Tw -(, rather than as )Tj -/TT10 1 Tf -6.948 0 TD -0.0633 Tw -(\(FOO \(X)Tj --41.065 -1.2889 TD -0 Tw -(GT \(FIE Y\)\)\))Tj -/TT8 1 Tf -7.2012 0 TD -(. However, you can easily change this.)Tj -/TT17 1 Tf --4.5345 -2.5489 TD -(:)Tj -/TT6 1 Tf -10 0 0 10 155.4 157.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 157.3 Tm -([CLISP Operator])Tj -/TT19 1 Tf --32.27 -1.8444 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(:)Tj -/TT19 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1133 Tw -[( extracts the )]TJ -/TT19 1 Tf -5.8874 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1133 Tw -(th element of the list )Tj -/TT19 1 Tf -9.8421 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1133 Tw -(. )Tj -/TT10 1 Tf -0.9767 0 TD -0 Tw -(FOO:3)Tj -/TT8 1 Tf -3.0005 0 TD -0.1133 Tw -[( specifies the third element of )]TJ -/TT10 1 Tf -13.9359 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1133 Tw -(, or)Tj -/TT10 1 Tf --38.4432 -1.2889 TD -0.06 Tw -(\(CADDR FOO\))Tj -/TT8 1 Tf -6.6611 0 TD -0.0244 Tw -[(. If )]TJ -/TT19 1 Tf -1.7433 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0244 Tw -[( is less than zero, this indicates elements counting from the end of the)]TJ --9.0044 -1.2889 TD -0.0378 Tw -(list; i.e. )Tj -/TT10 1 Tf -3.4276 0 TD -0 Tw -(FOO:-1)Tj -/TT8 1 Tf -3.6006 0 TD -0.0378 Tw -[( is the last element of )]TJ -/TT10 1 Tf -9.7677 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0378 Tw -(. )Tj -/TT10 1 Tf -0.8256 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.0378 Tw -[( operators can be nested, so )]TJ -/TT10 1 Tf -12.6173 0 TD -0 Tw -(FOO:1:2)Tj -/TT8 1 Tf -4.2007 0 TD -0.0378 Tw -[( means)]TJ --36.8398 -1.2889 TD -0 Tw -(the second element of the first element of )Tj -/TT10 1 Tf -18.4248 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(, or )Tj -/TT10 1 Tf -1.6909 0 TD -(\(CADAR FOO\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --28.5171 -2.0667 TD -0.15 Tw -(The : operator can also be used for extracting substructures of records \(see Chapter 8\).)Tj -0 -1.2222 TD -0.0367 Tw -(Record operations are implemented by replacing expressions of the form )Tj -/TT10 1 Tf -32.81 0 TD -0 Tw -(X:FOO)Tj -/TT8 1 Tf -3.0005 0 TD -0.0367 Tw -[( by \(fetch)]TJ -/TT10 1 Tf --35.8105 -1.2889 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( of )Tj -/TT10 1 Tf -1.3789 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\). Both lower- and uppercase are acceptable.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -32 0 obj -<< -/Length 8716 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT10 1 Tf -9 0 0 9 126 569.54 Tm -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.0744 Tw -[( is also used to indicate operations in the pattern match facility \(see Chapter 12\). )]TJ -/TT10 1 Tf -36.9963 0 TD -0 Tw -(X:\(&)Tj --37.5964 -1.2889 TD -(A -- B\))Tj -/TT8 1 Tf -5.4009 0 TD -( translates to \(match )Tj -/TT10 1 Tf -9.187 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( with )Tj -/TT10 1 Tf -2.5332 0 TD -(\(& A -- B\))Tj -/TT8 1 Tf -7.2012 0 TD -(\))Tj -/TT17 1 Tf --27.589 -2.5489 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 107.4 535 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 535 Tm -([CLISP Operator])Tj --32.27 -1.8445 TD -0.3289 Tw -(In combination with :, a period can be used to specify the "data path" for record)Tj -0 -1.2222 TD -0.0278 Tw -[(operations. For example, if )]TJ -/TT10 1 Tf -12.4489 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -[( is a field of the )]TJ -/TT10 1 Tf -7.1525 0 TD -0 Tw -(BAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -[( record, )]TJ -/TT10 1 Tf -3.6752 0 TD -0 Tw -(X:BAR.FOO)Tj -/TT8 1 Tf -5.4009 0 TD -0.0278 Tw -[( is translated into)]TJ --32.2781 -1.2889 TD -0.3067 Tw -(\(fetch \()Tj -/TT10 1 Tf -3.3867 0 TD -0.7356 Tw -(BAR FOO\))Tj -/TT8 1 Tf -5.5363 0 TD -0.3067 Tw -[( of )]TJ -/TT10 1 Tf -1.9922 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.3067 Tw -[(\). Subrecord fields can be specified with multiple periods:)]TJ -/TT10 1 Tf --11.5154 -1.2889 TD -0 Tw -(X:BAR.FOO.BAZ)Tj -/TT8 1 Tf -7.8013 0 TD -( translates into \(fetch )Tj -/TT10 1 Tf -9.4893 0 TD -(\(BAR FOO BAZ\))Tj -/TT8 1 Tf -7.8013 0 TD -( of )Tj -/TT10 1 Tf -1.3789 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\).)Tj --24.4041 -2.0667 TD -0.1533 Tw -[(Note: )153.3( )-247.9(If a record contains fields with periods in them, )]TJ -/TT10 1 Tf -25.8994 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1533 Tw -[( will not)]TJ --27.3668 -1.2889 TD -0.1389 Tw -(translate a record operation into a form using periods to specify the)Tj -0 -1.2222 TD -0.0733 Tw -[(data path. For example, )]TJ -/TT10 1 Tf -11.3091 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0733 Tw -[( will NOT translate )]TJ -/TT10 1 Tf -9.0536 0 TD -0.1744 Tw -(\(fetch A.B)Tj --25.1634 -1.2889 TD -0 Tw -(of X\))Tj -/TT8 1 Tf -3.0005 0 TD -( into )Tj -/TT10 1 Tf -2.2451 0 TD -(X:A.B)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 408.46 Tm -(::)Tj -/TT6 1 Tf -0.666 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 408.46 Tm -([CLISP Operator])Tj -/TT19 1 Tf --32.27 -1.7778 TD -(X)Tj -/TT17 1 Tf -0.6001 0 TD -(:)Tj -/TT19 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -(, returns the )Tj -/TT19 1 Tf -5.6113 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(th )Tj -/TT13 1 Tf -1.1649 0 TD -(tail)Tj -/TT8 1 Tf -1.3325 0 TD -0.0067 Tw -[( of the list )]TJ -/TT19 1 Tf -4.6248 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0067 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.7728 0 TD -0 Tw -(FOO::3)Tj -/TT8 1 Tf -3.6006 0 TD -0.0067 Tw -[( is )]TJ -/TT10 1 Tf -1.2282 0 TD -0.0144 Tw -(\(CDDDR FOO\))Tj -/TT8 1 Tf -6.6155 0 TD -0.0067 Tw -(, and )Tj -/TT10 1 Tf -2.4562 0 TD -0 Tw -(FOO::-)Tj --36.4072 -1.2889 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(\(LAST FOO\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT11 1 Tf --10.4826 -2.5489 TD -<0040>Tj -/TT6 1 Tf -10 0 0 10 110.8813 357.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 357.92 Tm -([CLISP Operator])Tj -/TT11 1 Tf --32.27 -1.8444 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0178 Tw -[( is used to indicate assignment. For example, )]TJ -/TT10 1 Tf -20.1627 0 TD -0 Tw -(X)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( translates to )]TJ -/TT10 1 Tf -5.9225 0 TD -0.0433 Tw -(\(SETQ X Y\))Tj -/TT8 1 Tf -6.0876 0 TD -0.0178 Tw -[(. If )]TJ -/TT10 1 Tf -1.7233 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( does)]TJ --37.67 -1.2889 TD -0.1411 Tw -(not have a value, and is not the name of one of the bound variables of the function in)Tj -0 -1.2222 TD -0.0856 Tw -[(which it appears, spelling correction is attempted. However, since this may simply be a)]TJ -T* -0.2544 Tw -(case of assigning an initial value to a new free variable, DWIM will always ask for)Tj -T* -0 Tw -(approval before making the correction.)Tj -0 -2 TD -0.1778 Tw -(In conjunction with )Tj -/TT17 1 Tf -9.4152 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -0.1778 Tw -[( and )]TJ -/TT17 1 Tf -2.5484 0 TD -0 Tw -(::)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT11 1 Tf -0.6778 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.1778 Tw -[( can also be used to perform a more general type of)]TJ --15.4285 -1.2889 TD -0.1544 Tw -[(assignment, involving structure modification. For example,)]TJ -/TT10 1 Tf -27.3773 0 TD -0.3722 Tw -[( X:2)]TJ -/TT11 1 Tf -2.7726 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1544 Tw -[( means "make the)]TJ --31.7369 -1.2889 TD -0.0233 Tw -(second element of )Tj -/TT10 1 Tf -8.3034 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT13 1 Tf -0.2733 0 TD -(be)Tj -/TT8 1 Tf -0.8521 0 TD -( )Tj -/TT10 1 Tf -0.2733 0 TD -(Y")Tj -/TT8 1 Tf -1.2002 0 TD -0.0233 Tw -(, in Interlisp terms )Tj -/TT10 1 Tf -8.4493 0 TD -0.0556 Tw -(\(RPLACA \(CDR X\) Y\))Tj -/TT8 1 Tf -10.9684 0 TD -0.0233 Tw -[(. Note that the )]TJ -/TT13 1 Tf -6.9204 0 TD -0 Tw -(value)Tj -/TT8 1 Tf --37.8405 -1.2889 TD -0.1589 Tw -(of this operation is the value of )Tj -/TT10 1 Tf -15.0492 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.1589 Tw -(, which is )Tj -/TT10 1 Tf -4.9244 0 TD -0.3822 Tw -(\(CDR X\))Tj -/TT8 1 Tf -4.5829 0 TD -0.1589 Tw -(, rather than )Tj -/TT10 1 Tf -6.1441 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1589 Tw -[(. Negative)]TJ --34.9014 -1.2889 TD -0.0889 Tw -(numbers can also be used, e.g.,)Tj -/TT10 1 Tf -14.0841 0 TD -0.2133 Tw -[( X:-2_Y)]TJ -/TT8 1 Tf -4.414 0 TD -0.0889 Tw -(, which translates to )Tj -/TT10 1 Tf -9.4576 0 TD -0.2133 Tw -(\(RPLACA \(NLEFT X 2\))Tj --27.9557 -1.2889 TD -0 Tw -(Y\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --1.2002 -2.0667 TD -0.1433 Tw -(You can indicate you want )Tj -/TT10 1 Tf -12.7797 0 TD -0 Tw -(/RPLACA)Tj -/TT8 1 Tf -4.2007 0 TD -0.1433 Tw -[( and )]TJ -/TT10 1 Tf -2.4795 0 TD -0 Tw -(/RPLACD)Tj -/TT8 1 Tf -4.2007 0 TD -0.1433 Tw -[( used \(undoable version of )]TJ -/TT10 1 Tf -12.7421 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf --36.4026 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0829 0 TD -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -0.14 Tw -(, see Chapter 13\), or )Tj -/TT10 1 Tf -9.698 0 TD -0 Tw -(FRPLACA)Tj -/TT8 1 Tf -4.2007 0 TD -0.14 Tw -[( and )]TJ -/TT10 1 Tf -2.4729 0 TD -0 Tw -(FRPLACD)Tj -/TT8 1 Tf -4.2007 0 TD -0.14 Tw -[( \(fast versions of )]TJ -/TT10 1 Tf -8.0605 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.14 Tw -[( and)]TJ -/TT10 1 Tf --37.9168 -1.2889 TD -0 Tw -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -0.1722 Tw -[(, see Chapter 3\), by means of CLISP declarations. The initial default is to use)]TJ -/TT10 1 Tf --3.6006 -1.2889 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT11 1 Tf --9.394 -2.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.2922 Tw -[( is also used to indicate assignment in record operations \()]TJ -/TT10 1 Tf -28.223 0 TD -0 Tw -(X:FOO)Tj -/TT11 1 Tf -3.0005 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.2922 Tw -[( translates to)]TJ -/TT10 1 Tf --33.7972 -1.2889 TD -0 Tw -(\(replace FOO of X with Y\))Tj -/TT8 1 Tf -15.0024 0 TD -(.\), and pattern match operations \(Chapter 12\).)Tj -/TT11 1 Tf --15.0024 -2.0667 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.2633 Tw -[( has different precedence on the left from on the right. On the left,)]TJ -/TT11 1 Tf -32.4521 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.2633 Tw -[( is a "tight")]TJ --34.4258 -1.2889 TD -0.05 Tw -(operator, i.e., high precedence, so that )Tj -/TT10 1 Tf -17.3161 0 TD -0 Tw -(A+B)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.8115 0 TD -0 Tw -(A+\(B)Tj -/TT11 1 Tf -2.4004 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(C\))Tj -/TT8 1 Tf -1.2002 0 TD -0.05 Tw -[(. On the right, )]TJ -/TT11 1 Tf -6.9058 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf --39.008 -1.2889 TD -(has broader scope so that )Tj -/TT10 1 Tf -11.4326 0 TD -(A)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(B+C)Tj -/TT8 1 Tf -1.8003 0 TD -( is the same as )Tj -/TT10 1 Tf -6.5615 0 TD -(A)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(B+C\))Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --25.9688 -2.0667 TD -0.2467 Tw -(On type-in, )Tj -/TT10 1 Tf -5.78 0 TD -0 Tw -($)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT19 1 Tf -0.9868 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2467 Tw -[( \(where )]TJ -/TT10 1 Tf -4.0954 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.2467 Tw -[( is the escape key\) is equivalent to set the "last thing)]TJ --14.4627 -1.2889 TD -0.0433 Tw -(mentioned", i.e., is equivalent to )Tj -/TT10 1 Tf -14.6498 0 TD -0.1056 Tw -(\(SET LASTWORD)Tj -/TT15 1 Tf -7.9068 0 TD -0 Tw -( )Tj -/TT19 1 Tf -0.2933 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -[( \(see Chapter 20\). For example,)]TJ -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -35 0 obj -<< -/Length 10617 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0067 Tw -(immediately after examining the value of )Tj -/TT10 1 Tf -18.5473 0 TD -0 Tw -(LONGVARIABLENAME)Tj -/TT8 1 Tf -9.6016 0 TD -0.0067 Tw -(, you could set it by typing)Tj -/TT10 1 Tf --28.1489 -1.4378 TD -0 Tw -($)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT6 1 Tf -10 0 0 10 188.2822 556.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 191.0605 556.6 Tm -(followed by a form.)Tj --1.8956 -2.0667 TD -0.16 Tw -(Note that an atom of the form )Tj -/TT10 1 Tf -14.5463 0 TD -0 Tw -(X)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.16 Tw -(, appearing at the top level of a )Tj -/TT10 1 Tf -15.2058 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.16 Tw -(, will not be)Tj --34.3395 -1.4378 TD -0.0933 Tw -(recognized as an assignment statement because it will be interpreted as a )Tj -/TT10 1 Tf -33.6073 0 TD -0 Tw -(PROG)Tj -/TT6 1 Tf -10 0 0 10 498.0693 525.0599 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 501.8876 525.0599 Tm -0.0933 Tw -(label by)Tj --36.432 -1.4378 TD -0.1344 Tw -(the Interlisp interpreter, and therefore will not cause an error, so )Tj -/TT10 1 Tf -30.1703 0 TD -0 Tw -(DWIM)Tj -/TT6 1 Tf -10 0 0 10 467.1362 512.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 471.4045 512.12 Tm -0.1344 Tw -(and CLISP will)Tj --33.0449 -1.4378 TD -0 Tw -(never get to see it. Instead, one must write )Tj -/TT10 1 Tf -19.1592 0 TD -(\(X)Tj -/TT11 1 Tf -1.2002 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y\))Tj -/TT6 1 Tf -10 0 0 10 376.9175 499.18 Tm -(.)Tj -/TT17 1 Tf -9 0 0 9 150 476.24 Tm -(<)Tj -/TT6 1 Tf -10 0 0 10 155.4009 476.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 476.24 Tm -([CLISP Operator])Tj -/TT17 1 Tf --34.9367 -1.2156 TD -(>)Tj -/TT6 1 Tf -10 0 0 10 155.4009 465.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 465.3 Tm -([CLISP Operator])Tj --32.27 -1.9933 TD -0.1167 Tw -[(Angle brackets are used in CLISP to indicate list construction. The appearance of a )]TJ -/TT6 1 Tf -10 0 0 10 521.6997 447.36 Tm -0 Tw -(")Tj -/TT10 1 Tf -9 0 0 9 525.2495 447.36 Tm -(<)Tj -/TT8 1 Tf -0.6001 0 TD -(")Tj --39.6278 -1.4378 TD -0.2589 Tw -(corresponds to a ")Tj -/TT10 1 Tf -8.7161 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -10 0 0 10 257.8459 434.42 Tm -(")Tj -/TT8 1 Tf -9 0 0 9 261.3958 434.42 Tm -0.2589 Tw -[( and indicates that a list is to be constructed containing all the)]TJ --9.7106 -1.4378 TD -0.0556 Tw -(elements up to the corresponding ")Tj -/TT10 1 Tf -15.7568 0 TD -0 Tw -(>)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -[(". For example,)]TJ -/TT6 1 Tf -10 0 0 10 384.5166 421.48 Tm -0 Tw -( )Tj -/TT10 1 Tf -9 0 0 9 387.9149 421.48 Tm -0.1333 Tw -(>)Tj -/TT6 1 Tf -10 0 0 10 438.9228 421.48 Tm -0 Tw -( )Tj -/TT8 1 Tf -9 0 0 9 442.3212 421.48 Tm -(translates)Tj -/TT6 1 Tf -10 0 0 10 480.5448 421.48 Tm -0.062 Tw -[( to)]TJ -/TT8 1 Tf -9 0 0 9 492.283 421.48 Tm -0 Tw -( )Tj -/TT10 1 Tf -0.3056 0 TD -0.1333 Tw -(\(LIST A)Tj --35.6703 -1.4378 TD -0.0889 Tw -(B \(LIST C\)\))Tj -/TT6 1 Tf -10 0 0 10 235.0097 408.54 Tm -0.041 Tw -(. )Tj -/TT10 1 Tf -9 0 0 9 244.1646 408.54 Tm -0 Tw -(!)Tj -/TT8 1 Tf -0.6001 0 TD -0.0367 Tw -[( can be used to indicate that the next expression is to be inserted in the)]TJ --8.3962 -1.2889 TD -0.04 Tw -(list as a )Tj -/TT13 1 Tf -3.6259 0 TD -0 Tw -(segment)Tj -/TT8 1 Tf -3.3345 0 TD -0.04 Tw -(, e.g., )Tj -/TT10 1 Tf -2.6152 0 TD -0.0967 Tw -()Tj -/TT8 1 Tf -5.6909 0 TD -0.04 Tw -[( translates to )]TJ -/TT10 1 Tf -5.9891 0 TD -0.0967 Tw -(\(CONS A)Tj -/TT15 1 Tf -4.2973 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.29 0 TD -0.0967 Tw -(\(CONS B C\)\))Tj -/TT8 1 Tf -6.7944 0 TD -0.04 Tw -[( and )]TJ -/TT10 1 Tf -2.2729 0 TD -0.0967 Tw -()Tj -/TT8 1 Tf -1.2002 0 TD -0.0067 Tw -[( to )]TJ -/TT10 1 Tf -1.3854 0 TD -0.0156 Tw -(\(APPEND A B \(LIST C\)\))Tj -/TT8 1 Tf -12.6643 0 TD -0.0067 Tw -(. )Tj -/TT10 1 Tf -0.7633 0 TD -0 Tw -(!! )Tj -/TT8 1 Tf -1.8159 0 TD -0.0067 Tw -(is used to indicate that the next expression is to be)Tj --17.8291 -1.2889 TD -(inserted as a segment, and furthermore, all list structure to its right in the angle brackets is)Tj -0 -1.2222 TD -0 Tw -(to be physically attached to it, e.g., )Tj -/TT10 1 Tf -15.4829 0 TD -()Tj -/TT8 1 Tf -4.7993 0 TD -( translates to )Tj -/TT10 1 Tf -5.8691 0 TD -(\(NCONC1 A B\))Tj -/TT8 1 Tf -7.202 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -()Tj -/TT8 1 Tf -1.8003 0 TD -0.0522 Tw -[( to )]TJ -/TT10 1 Tf -1.4765 0 TD -0.1244 Tw -(\(NCONC A \(APPEND B C\)\))Tj -/TT8 1 Tf -13.6999 0 TD -0.0522 Tw -[(. Not )]TJ -/TT10 1 Tf -2.8598 0 TD -0.1244 Tw -(\(NCONC \(APPEND A B\) C\))Tj -/TT8 1 Tf -13.6999 0 TD -0.0522 Tw -(, which would)Tj --33.5365 -1.2889 TD -0.0722 Tw -(have the same value, but would attach )Tj -/TT10 1 Tf -17.7878 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -[( to )]TJ -/TT10 1 Tf -1.5165 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -(, and not attach either to )Tj -/TT10 1 Tf -11.4328 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.4554 0 TD -0 Tw -(<)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5722 0 TD -(!)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf --39.7653 -1.2889 TD -(!!)Tj -/TT8 1 Tf -1.2002 0 TD -0.0622 Tw -(, and )Tj -/TT10 1 Tf -2.5673 0 TD -0 Tw -(>)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( need not be separate atoms, for example, )]TJ -/TT10 1 Tf -19.0407 0 TD -0.15 Tw -()Tj -/TT8 1 Tf -5.8509 0 TD -0.0622 Tw -[( may be written equally)]TJ --29.2592 -1.2889 TD -0.0333 Tw -(well as )Tj -/TT10 1 Tf -3.3855 0 TD -0.08 Tw -(< A B !C >)Tj -/TT8 1 Tf -6.321 0 TD -0.0333 Tw -[(. Also, arbitrary Interlisp or CLISP forms may be used within angle)]TJ --9.7065 -1.2889 TD -0.0511 Tw -[(brackets. For example, one can write )]TJ -/TT10 1 Tf -16.9891 0 TD -0 Tw -(Tj -/TT10 1 Tf -0.9868 0 TD -0.1222 Tw -(\(FIE X\) ! Y>)Tj -/TT8 1 Tf -7.5678 0 TD -0.0511 Tw -[( which translates to )]TJ -/TT10 1 Tf -9.0565 0 TD -0 Tw -(\(CONS)Tj --37.0007 -1.2889 TD -0.1911 Tw -(\(SETQ FOO \(FIE X\)\) Y\))Tj -/TT8 1 Tf -13.3665 0 TD -0.08 Tw -(. )Tj -/TT10 1 Tf -0.91 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.08 Tw -[( converts expressions in )]TJ -/TT10 1 Tf -11.1144 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.58 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.58 0 TD -(APPEND)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --39.7531 -1.2889 TD -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(NCONC1)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(/NCONC)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -(, and )Tj -/TT10 1 Tf -2.574 0 TD -0 Tw -(/NCONC1)Tj -/TT8 1 Tf -4.2007 0 TD -0.0656 Tw -[( into equivalent CLISP expressions using )]TJ -/TT10 1 Tf -18.7171 0 TD -0 Tw -(<)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(>)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(!)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.7559 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(!!)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --0.4764 -2.0667 TD -0.0678 Tw -[(Note: )-583.4(brackets differ from other CLISP operators. For example, )]TJ -/TT10 1 Tf -29.541 0 TD -0.1622 Tw -()Tj -/TT8 1 Tf --26.2077 -1.2889 TD -0.0578 Tw -(translates to )Tj -/TT10 1 Tf -5.7347 0 TD -0.1389 Tw -(\(LIST A B \(QUOTE C\)\))Tj -/TT8 1 Tf -12.5575 0 TD -0.0578 Tw -[( even though following )]TJ -/TT10 1 Tf -10.8014 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0578 Tw -(, all)Tj -/TT13 1 Tf --29.6937 -1.2889 TD -0 Tw -(operators)Tj -/TT8 1 Tf -3.7212 0 TD -0.0189 Tw -[( are ignored for the rest of the identifier. \(This is true only if a)]TJ --3.7212 -1.2222 TD -0.0756 Tw -(previous unmatched )Tj -/TT15 1 Tf -9.5647 0 TD -0 Tw -(<)Tj -/TT8 1 Tf -0.606 0 TD -0.0756 Tw -[( has been seen, e.g., )]TJ -/TT10 1 Tf -9.2259 0 TD -0.1811 Tw -(\(PRINT A>B\))Tj -/TT8 1 Tf -7.3823 0 TD -0.0756 Tw -[( will print)]TJ --26.7789 -1.2889 TD -0.0789 Tw -(the atom )Tj -/TT10 1 Tf -4.2999 0 TD -0 Tw -(A>B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0789 Tw -[(.\) Note however that )]TJ -/TT10 1 Tf -10.0238 0 TD -0.19 Tw -( D>)Tj -/TT8 1 Tf -7.9612 0 TD -0.0789 Tw -[( is equivalent to)]TJ -/TT10 1 Tf --24.0852 -1.2889 TD -0 Tw -(\(LIST A B \(QUOTE C>\) D\))Tj -/TT8 1 Tf -13.8022 0 TD -(.)Tj -/TT17 1 Tf --22.4689 -2.5489 TD -()Tj -/TT6 1 Tf -10 0 0 10 155.4009 171 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 464.43 171 Tm -([CLISP Operator])Tj --32.27 -1.8444 TD -0.0711 Tw -(CLISP recognizes )Tj -/TT10 1 Tf -8.1237 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( as a prefix operator. )]TJ -/TT10 1 Tf -10.0038 0 TD -0 Tw -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0711 Tw -[( means )]TJ -/TT10 1 Tf -3.5099 0 TD -0 Tw -(QUOTE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -[( when it is the first character in)]TJ --25.8381 -1.2889 TD -0.0689 Tw -[(an identifier, and is ignored when it is used in the interior of an identifier. Thus, )]TJ -/TT10 1 Tf -36.9509 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3189 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3189 0 TD -(Y)Tj -/TT8 1 Tf --38.7889 -1.2889 TD -(means )Tj -/TT10 1 Tf -3.1832 0 TD -0.1578 Tw -(\(EQ X \(QUOTE Y\)\))Tj -/TT8 1 Tf -10.0749 0 TD -0.0656 Tw -(, but )Tj -/TT10 1 Tf -2.3635 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3156 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3156 0 TD -(CANT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0656 Tw -[( means )]TJ -/TT10 1 Tf -3.4988 0 TD -0.1578 Tw -(\(EQ X CANT\))Tj -/TT8 1 Tf -7.5167 0 TD -0 Tw -(, )Tj -/TT13 1 Tf -0.5656 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( )Tj -/TT10 1 Tf -0.3156 0 TD -0.1578 Tw -(\(EQ X CAN\))Tj -/TT8 1 Tf --33.6831 -1.2889 TD -0.0678 Tw -(followed by )Tj -/TT10 1 Tf -5.6756 0 TD -0.1622 Tw -(\(QUOTE T\))Tj -/TT8 1 Tf -5.5631 0 TD -0.0678 Tw -[(. This enables users to have variable and function names with )]TJ -/TT15 1 Tf -28.4789 0 TD -0 Tw -()Tj -/TT8 1 Tf --39.7176 -1.2889 TD -(in them \(so long as the )Tj -/TT15 1 Tf -10.2319 0 TD -()Tj -/TT8 1 Tf -0.2778 0 TD -( is not the first character\).)Tj --10.5098 -2 TD -(Following )Tj -/TT10 1 Tf -5.0076 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -0.2644 Tw -(, all operators are ignored for the rest of the identifier, e.g., )Tj -/TT10 1 Tf -29.2158 0 TD -0 Tw -(*A)Tj -/TT8 1 Tf -1.8003 0 TD -0.2644 Tw -[( means)]TJ -/TT10 1 Tf --36.6238 -1.2889 TD -0.0922 Tw -(\(QUOTE *A\))Tj -/TT8 1 Tf -6.0932 0 TD -0.0389 Tw -(, and )Tj -/TT10 1 Tf -2.5206 0 TD -0 Tw -(X=Y)Tj -/TT8 1 Tf -2.4004 0 TD -0.0389 Tw -[( means )]TJ -/TT10 1 Tf -3.4455 0 TD -0.0922 Tw -(\(QUOTE X=Y\))Tj -/TT8 1 Tf -6.6933 0 TD -0.0389 Tw -(, not )Tj -/TT10 1 Tf -2.2819 0 TD -0.0922 Tw -(\(EQ \(QUOTE X\) Y\))Tj -/TT8 1 Tf -9.8782 0 TD -0.0389 Tw -[(. To write )]TJ -/TT10 1 Tf -4.8894 0 TD -0 Tw -(\(EQ)Tj --38.2025 -1.2889 TD -0.0511 Tw -(\(QUOTE X\) Y\))Tj -/TT8 1 Tf -7.3034 0 TD -0.0211 Tw -(, one writes )Tj -/TT10 1 Tf -5.4193 0 TD -0 Tw -(Y=X)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -(, or )Tj -/TT10 1 Tf -1.7331 0 TD -0.0511 Tw -(X =Y)Tj -/TT8 1 Tf -3.0516 0 TD -0.0211 Tw -[(. This is one place where an extra space does)]TJ --19.9078 -1.2889 TD -0 Tw -(make a difference.)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -38 0 obj -<< -/Length 6403 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0111 Tw -(On type-in, )Tj -/TT10 1 Tf -5.3088 0 TD -0 Tw -($)Tj -/TT8 1 Tf -1.2002 0 TD -0.0111 Tw -[( \(escape\) is equivalent to )]TJ -/TT10 1 Tf -11.1615 0 TD -0 Tw -(\(QUOTE)Tj -/TT15 1 Tf -3.6006 0 TD -( )Tj -/TT19 1 Tf -0.2611 0 TD -(VALUE-OF-LASTWORD)Tj -/TT10 1 Tf -10.2017 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( \(see Chapter 19\).)]TJ --32.334 -1.2889 TD -0.4122 Tw -(For example, after calling )Tj -/TT10 1 Tf -13.1333 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.4122 Tw -[( on )]TJ -/TT10 1 Tf -2.4524 0 TD -0 Tw -(LONGFUNCTION)Tj -/TT8 1 Tf -7.2012 0 TD -0.4122 Tw -(, you could move its)Tj --29.3879 -1.2889 TD -0 Tw -(definition to )Tj -/TT10 1 Tf -5.7041 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( by typing )Tj -/TT10 1 Tf -4.772 0 TD -(\(MOVD $ FOO\))Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj --20.6777 -2.0667 TD -0.3989 Tw -(Note that this is not )Tj -/TT10 1 Tf -10.9529 0 TD -0.9567 Tw -(\(MOVD $ FOO\))Tj -/TT8 1 Tf -9.7146 0 TD -0.3989 Tw -(, which would be equivalent to )Tj -/TT10 1 Tf -16.3416 0 TD -0 Tw -(\(MOVD)Tj --37.0091 -1.2889 TD -0.3456 Tw -(LONGFUNCTION FOO\))Tj -/TT8 1 Tf -11.1473 0 TD -0.1444 Tw -(, and would \(probably\) cause a )Tj -/TT10 1 Tf -14.8056 0 TD -0 Tw -(U.B.A.)Tj -/TT15 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3944 0 TD -(LONGFUNCTION)Tj -/TT8 1 Tf -7.2012 0 TD -0.1444 Tw -[( error,)]TJ --37.1491 -1.2889 TD -0 Tw -(nor )Tj -/TT10 1 Tf -1.8618 0 TD -0.2144 Tw -(MOVD\($ FOO\))Tj -/TT8 1 Tf -6.8155 0 TD -0.0889 Tw -(, which would actually move the definition of )Tj -/TT10 1 Tf -21.1608 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.0889 Tw -[( to )]TJ -/TT10 1 Tf -1.5498 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0889 Tw -(, since DWIM)Tj --33.7884 -1.2889 TD -0 Tw -(and the spelling corrector would never be invoked.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(~)Tj -/TT6 1 Tf -10 0 0 10 107.4009 470.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 416.43 470.6 Tm -([CLISP Operator])Tj --32.27 -1.8444 TD -0.2756 Tw -(CLISP recognizes )Tj -/TT10 1 Tf -8.5326 0 TD -0 Tw -(~)Tj -/TT8 1 Tf -0.6001 0 TD -0.2756 Tw -[( as a prefix operator meaning )]TJ -/TT10 1 Tf -14.8535 0 TD -0 Tw -(NOT)Tj -/TT8 1 Tf -1.8003 0 TD -0.2756 Tw -(. )Tj -/TT10 1 Tf -1.3011 0 TD -0 Tw -(~)Tj -/TT8 1 Tf -0.6001 0 TD -0.2756 Tw -[( can negate a form, as in)]TJ -/TT10 1 Tf --27.6877 -1.2889 TD -0.2 Tw -(~\(ASSOC X Y\))Tj -/TT8 1 Tf -7.6012 0 TD -0.0833 Tw -(, or )Tj -/TT10 1 Tf -1.8576 0 TD -0 Tw -(~X)Tj -/TT8 1 Tf -1.2002 0 TD -0.0833 Tw -(, or negate an infix operator, e.g., )Tj -/TT10 1 Tf -15.3651 0 TD -0.2 Tw -(\(A ~GT B\))Tj -/TT8 1 Tf -5.8009 0 TD -0.0833 Tw -[( is the same as )]TJ -/TT10 1 Tf -6.9782 0 TD -0 Tw -(\(A)Tj --38.8031 -1.2889 TD -(LEQ B\))Tj -/TT8 1 Tf -3.6006 0 TD -(. Note that )Tj -/TT10 1 Tf -4.9165 0 TD -(~A)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(= B)Tj -/TT8 1 Tf -1.8003 0 TD -( means )Tj -/TT10 1 Tf -3.3677 0 TD -(\(EQ \(NOT A\) B\))Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj --23.5366 -2.0667 TD -(When )Tj -/TT10 1 Tf -3.1208 0 TD -(~)Tj -/TT8 1 Tf -0.6001 0 TD -0.2278 Tw -[( negates an operator, e.g., )]TJ -/TT10 1 Tf -12.6404 0 TD -0 Tw -(~=)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.7278 0 TD -(~LT)Tj -/TT8 1 Tf -1.8003 0 TD -0.2278 Tw -(, the two operators are treated as a single)Tj --20.0896 -1.2889 TD -0.0133 Tw -(operator whose precedence is that of the second operator. When )Tj -/TT10 1 Tf -28.7608 0 TD -0 Tw -(~)Tj -/TT8 1 Tf -0.6001 0 TD -0.0133 Tw -[( negates a function, e.g.,)]TJ -/TT10 1 Tf --29.3609 -1.2889 TD -0 Tw -(\(~FOO X Y\))Tj -/TT8 1 Tf -6.001 0 TD -(, it negates the whole form, i.e., )Tj -/TT10 1 Tf -14.0093 0 TD -(\(~\(FOO X Y\)\))Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --32.5448 -2.9556 TD -(Order of Precedence of CLISP Operators:)Tj -/TT10 1 Tf -9.3333 -1.1556 TD -()Tj -0 -1.2222 TD -(:)Tj -/TT11 1 Tf -0 -1.4378 TD -<0040>Tj -/TT4 1 Tf -10 0 0 10 170.8813 328.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 173.6597 328.06 Tm -(\(left precedence\))Tj -/TT10 1 Tf --1.2955 -1.4378 TD -(-)Tj -/TT4 1 Tf -10 0 0 10 167.4009 315.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 170.1792 315.12 Tm -(\(unary\),)Tj -/TT4 1 Tf -10 0 0 10 202.1494 315.12 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 204.9277 315.12 Tm -(~)Tj -/TT11 1 Tf --4.7697 -1.2222 TD -<0042>Tj -/TT10 1 Tf -T* -(*, /)Tj -0 -1.4378 TD -(+, -)Tj -/TT4 1 Tf -10 0 0 10 183.6035 280.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 186.3818 280.18 Tm -(\(binary\))Tj -/TT11 1 Tf --2.7091 -1.4378 TD -<0040>Tj -/TT4 1 Tf -10 0 0 10 170.8813 267.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 173.6597 267.24 Tm -(\(right precedence\))Tj -/TT10 1 Tf --1.2955 -1.2222 TD -(=)Tj -/TT8 1 Tf --9.3333 -2.9556 TD -(Interlisp forms)Tj -/TT10 1 Tf -9.3333 -1.3711 TD -(LT, GT, EQUAL, MEMBER,)Tj -/TT4 1 Tf -10 0 0 10 280.8193 217.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 283.5976 217.3 Tm -(etc)Tj -/TT6 1 Tf -10 0 0 10 294.8388 217.3 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 162 206.3 Tm -(AND)Tj -0 -1.2222 TD -(OR)Tj -T* -(IF, THEN, ELSEIF, ELSE)Tj -/TT8 1 Tf -0 -1.2889 TD -(iterative statement operators)Tj -/TT4 1 Tf -10 0 0 10 54 120.36 Tm -(Declarations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 117.65 m -510.01 117.65 l -S -BT -/TT8 1 Tf -9 0 0 9 78 95.7 Tm -0.2078 Tw -(CLISP declarations are used to affect the choice of Interlisp function used as the translation of a)Tj -0 -1.2222 TD -0.0833 Tw -[(particular operator. For example, )]TJ -/TT10 1 Tf -15.547 0 TD -0 Tw -(A+B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0833 Tw -[( can be translated as either )]TJ -/TT10 1 Tf -12.4683 0 TD -0.2011 Tw -(\(PLUS A B\))Tj -/TT8 1 Tf -6.4032 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5833 0 TD -0.2011 Tw -(\(FPLUS A B\))Tj -/TT8 1 Tf -7.0033 0 TD -0.0833 Tw -(, or)Tj -/TT10 1 Tf --43.8054 -1.2889 TD -0.0956 Tw -(\(IPLUS A B\))Tj -/TT8 1 Tf -6.7922 0 TD -0.04 Tw -[(, depending on the declaration in effect. Similarly )]TJ -/TT10 1 Tf -22.672 0 TD -0 Tw -(X:1)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( can mean )]TJ -/TT10 1 Tf -4.8397 0 TD -0.0956 Tw -(\(RPLACA X Y\))Tj -/TT8 1 Tf -7.3923 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --45.0834 -1.2889 TD -0.0789 Tw -(\(FRPLACA X Y\))Tj -/TT8 1 Tf -7.959 0 TD -0.0333 Tw -(, or )Tj -/TT10 1 Tf -1.7576 0 TD -0.0789 Tw -(\(/RPLACA X Y\))Tj -/TT8 1 Tf -7.959 0 TD -0.0333 Tw -(, and )Tj -/TT10 1 Tf -2.5095 0 TD -0.0789 Tw -()Tj -/TT8 1 Tf -4.9586 0 TD -0.0333 Tw -[( either )]TJ -/TT10 1 Tf -3.1189 0 TD -0.0789 Tw -(\(NCONC1 A B\))Tj -/TT8 1 Tf -7.359 0 TD -0.0333 Tw -[( or )]TJ -/TT10 1 Tf -1.5076 0 TD -0.0789 Tw -(\(/NCONC1 A B\))Tj -/TT8 1 Tf -7.959 0 TD -0 Tw -(.)Tj --45.0883 -1.2889 TD -0.0378 Tw -(Note that the choice of function on all CLISP transformations are affected by the CLISP declaration in)Tj -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -41 0 obj -<< -/Length 7102 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.33 Tw -(effect, i.e., iterative statements, pattern matches, record operations, as well as infix and prefix)Tj -0 -1.2222 TD -0 Tw -(operators.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLISPDEC)Tj -/TT13 1 Tf -4.7999 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(DECLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 238.6561 536.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 536.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0856 Tw -(Puts into effect the declarations in )Tj -/TT19 1 Tf -15.7585 0 TD -0 Tw -(DECLST)Tj -/TT8 1 Tf -3.6006 0 TD -0.0856 Tw -(. )Tj -/TT10 1 Tf -0.9211 0 TD -0 Tw -(CLISPDEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.0856 Tw -[( performs spelling corrections on)]TJ --25.0809 -1.2889 TD -0 Tw -(words not recognized as declarations. )Tj -/TT10 1 Tf -16.959 0 TD -(CLISPDEC)Tj -/TT8 1 Tf -4.8008 0 TD -( is undoable.)Tj --21.7598 -2.0667 TD -0.0478 Tw -(You can makes \(changes\) a global declaration by calling )Tj -/TT10 1 Tf -25.3631 0 TD -0 Tw -(CLISPDEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.0478 Tw -[( with )]TJ -/TT19 1 Tf -2.6288 0 TD -0 Tw -(DECLST)Tj -/TT8 1 Tf -3.6006 0 TD -0.0478 Tw -[( a list of)]TJ --36.3932 -1.2889 TD -0.4289 Tw -(declarations, e.g., )Tj -/TT10 1 Tf -8.7816 0 TD -1.0289 Tw -(\(CLISPDEC \(FLOATING UNDOABLE\)\))Tj -/TT8 1 Tf -20.6608 0 TD -0.4289 Tw -[(. Changing a global)]TJ --29.4424 -1.2889 TD -0.0022 Tw -(declaration does not affect the speed of subsequent CLISP transformations, since all CLISP)Tj -0 -1.2222 TD -0.5567 Tw -(transformation are table driven \(i.e., property list\), and global declarations are)Tj -T* -0.1867 Tw -(accomplished by making the appropriate internal changes to CLISP at the time of the)Tj -T* -0.2067 Tw -(declaration. If a function employs )Tj -/TT13 1 Tf -16.1549 0 TD -0 Tw -(local)Tj -/TT8 1 Tf -1.8506 0 TD -0.2067 Tw -[( declarations \(described below\), there will be a)]TJ --18.0055 -1.2222 TD -0.3656 Tw -(slight loss in efficiency owing to the fact that for each CLISP transformation, the)Tj -T* -0 Tw -(declaration list must be searched for possibly relevant declarations.)Tj -0 -2 TD -0.1055 Tw -(Declarations are implemented in the order that they are given, so that later declarations)Tj -0 -1.2222 TD -0.38 Tw -[(override earlier ones. For example, the declaration )]TJ -/TT10 1 Tf -25.7597 0 TD -0 Tw -(FAST)Tj -/TT8 1 Tf -2.4004 0 TD -0.38 Tw -[( specifies that )]TJ -/TT10 1 Tf -7.39 0 TD -0 Tw -(FRPLACA)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj -/TT10 1 Tf --39.7508 -1.2889 TD -(FRPLACD)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5378 0 TD -(FMEMB)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -(, and )Tj -/TT10 1 Tf -2.5184 0 TD -0 Tw -(FLAST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -[( be used in place of )]TJ -/TT10 1 Tf -8.9425 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5378 0 TD -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5378 0 TD -(MEMB)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -(, and )Tj -/TT10 1 Tf -2.5184 0 TD -0 Tw -(LAST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -[(; the)]TJ --37.7963 -1.2889 TD -0 Tw -(declaration )Tj -/TT10 1 Tf -5.3837 0 TD -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.1689 Tw -[( specifies that )]TJ -/TT10 1 Tf -6.7567 0 TD -0 Tw -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.1689 Tw -[( be used. Therefore, the declarations )]TJ -/TT10 1 Tf -17.6578 0 TD -0 Tw -(\(FAST)Tj --36.9994 -1.2889 TD -(RPLACA RPLACD\))Tj -/TT8 1 Tf -8.4014 0 TD -( will cause )Tj -/TT10 1 Tf -4.9067 0 TD -(FMEMB)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(FLAST)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -( to be used.)Tj --29.9531 -2.0667 TD -(The initial global declaration is )Tj -/TT10 1 Tf -13.9131 0 TD -(MIXED)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(STANDARD)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj --23.9072 -2.0667 TD -0.0289 Tw -(The table below gives the declarations available in CLISP, and the Interlisp functions they)Tj -0 -1.2222 TD -0 Tw -(indicate:)Tj -8.6211 -2 TD -[(Declaration:)-1334.3(Interlisp Functions to be used:)]TJ -/TT10 1 Tf -2.3789 -2 TD -[(MIXED)-1332.8(PLUS,)]TJ -/TT8 1 Tf -7.3338 0 TD -( )Tj -/TT10 1 Tf -1.7333 0 TD -(MINUS,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -1.7333 0 TD -(DIFFERENCE,)Tj -/TT8 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -1.7333 0 TD -(TIMES,)Tj --18.4022 -1.2889 TD -(QUOTIENT,)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(LESSP,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(GREATERP)Tj --19.4759 -2.0667 TD -(INTEGER)Tj -/TT8 1 Tf -4.2007 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -[(FIXED)-1332.4(IPLUS,)]TJ -/TT8 1 Tf -7.9334 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(IMINUS,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(IDIFFERENCE,)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(ITIMES,)Tj --17.8024 -1.2889 TD -(IQUOTIENT,)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(ILESSP,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(IGREATERP)Tj --16.835 -2.0667 TD -[(FLOATING)-1332.6(FPLUS,)]TJ -/TT8 1 Tf -9.7339 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(FMINUS,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(FDIFFERENCE,)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT10 1 Tf -0.9333 0 TD -(FTIMES,)Tj --17.8024 -1.2889 TD -(FQUOTIENT,)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(LESSP,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FGREATERP)Tj --13.8349 -2.0667 TD -[(FAST)-1332.9(FRPLACA,)]TJ -/TT8 1 Tf -8.5341 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FRPLACD,)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FMEMB,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FLAST,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FASSOC)Tj --23.9361 -2.0667 TD -[(UNDOABLE)-1332.6(/RPLACA,)]TJ -/TT8 1 Tf -10.9341 0 TD -( )Tj -/TT10 1 Tf -1.1333 0 TD -(/RPLACD,)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -1.1333 0 TD -(/NCONC,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -1.1333 0 TD -(/NCONC1,)Tj --17.2023 -1.2889 TD -(/MAPCONC,)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(/MAPCON)Tj --11.7842 -2.0667 TD -[(STANDARD)-1332.6(RPLACA,)]TJ -/TT8 1 Tf -10.334 0 TD -( )Tj -/TT10 1 Tf -1 0 TD -(RPLACD,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -1 0 TD -(MEMB,)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -1 0 TD -(LAST,)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -1 0 TD -(ASSOC,)Tj --18.4024 -1.2889 TD -(NCONC,)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NCONC1,)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(MAPCONC,)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(MAPCON)Tj --22.6354 -2.0667 TD -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --6.2001 -1.2889 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(/RPLACA)Tj -/TT8 1 Tf -4.2007 0 TD -[(, etc.)-1332.5(corresponding function)]TJ --12.0018 -2.0667 TD -0.0056 Tw -(You can also make local declarations affecting a selected function or functions by inserting)Tj -0 -1.2222 TD -0.2689 Tw -(an expression of the form )Tj -/TT10 1 Tf -12.8361 0 TD -0.6444 Tw -(\(CLISP: .)Tj -/TT15 1 Tf -6.0453 0 TD -0 Tw -( )Tj -/TT19 1 Tf -0.5189 0 TD -(DECLARATIONS)Tj -/TT10 1 Tf -7.2012 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2689 Tw -[( immediately following the)]TJ -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -44 0 obj -<< -/Length 7705 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.16 Tw -(argument list, i.e., as )Tj -/TT10 1 Tf -9.9901 0 TD -0 Tw -(CADDR)Tj -/TT8 1 Tf -3.0005 0 TD -0.16 Tw -[( of the definition. Such local declarations take precedence)]TJ --12.9906 -1.2889 TD -0.1956 Tw -[(over global declarations. Declarations affecting selected variables can be indicated by)]TJ -0 -1.2222 TD -0.2856 Tw -(lists, where the first element is the name of a variable, and the rest of the list the)Tj -T* -0.2211 Tw -[(declarations for that variable. For example, )]TJ -/TT10 1 Tf -21.0151 0 TD -0.5289 Tw -(\(CLISP: FLOATING \(X INTEGER\)\))Tj -/TT8 1 Tf --21.0151 -1.2889 TD -0.0089 Tw -(specifies that in this function integer arithmetic be used for computations involving )Tj -/TT10 1 Tf -37.199 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0089 Tw -(, and)Tj --37.7991 -1.2889 TD -0.3744 Tw -(floating arithmetic for all other computations, where "involving" means where the)Tj -0 -1.2222 TD -0.35 Tw -[(variable itself is an operand. For example, with the declaration )]TJ -/TT10 1 Tf -31.9604 0 TD -0.84 Tw -(\(FLOATING \(X)Tj --31.9604 -1.2889 TD -0 Tw -(INTEGER\)\))Tj -/TT8 1 Tf -5.4009 0 TD -0.1556 Tw -[( in effect, )]TJ -/TT10 1 Tf -4.7338 0 TD -0.3733 Tw -(\(FOO X\)+\(FIE X\))Tj -/TT8 1 Tf -9.7481 0 TD -0.1556 Tw -[( would translate to )]TJ -/TT10 1 Tf -9.2023 0 TD -0 Tw -(FPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1556 Tw -(, i.e., use floating)Tj --32.0856 -1.2889 TD -0.1233 Tw -(arithmetic, even though )Tj -/TT10 1 Tf -11.1874 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -[( appears somewhere inside of the operands, whereas )]TJ -/TT10 1 Tf -24.6117 0 TD -0 Tw -(X+\(FIE)Tj --36.3992 -1.2889 TD -(X\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0389 Tw -[( would translate to )]TJ -/TT10 1 Tf -8.7356 0 TD -0 Tw -(IPLUS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0389 Tw -[(. If there are declarations involving )]TJ -/TT13 1 Tf -16.2351 0 TD -0 Tw -(both)Tj -/TT8 1 Tf -1.7397 0 TD -0.0389 Tw -[( operands, e.g., )]TJ -/TT10 1 Tf -7.0395 0 TD -0 Tw -(X+Y)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.751 -1.2889 TD -(with )Tj -/TT10 1 Tf -2.3376 0 TD -0.13 Tw -(\(X FLOATING\) \(Y INTEGER\))Tj -/TT8 1 Tf -14.7923 0 TD -0.0544 Tw -(, whichever appears first in the declaration list will)Tj --17.13 -1.2889 TD -0 Tw -(be used.)Tj -0 -2 TD -0.3111 Tw -(You can also make local record declarations by inserting a record declaration, e.g.,)Tj -/TT10 1 Tf -0 -1.2222 TD -0.0244 Tw -(\(RECORD --\))Tj -/TT8 1 Tf -6.6255 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.51 0 TD -0.0244 Tw -(\(ARRAYRECORD --\))Tj -/TT8 1 Tf -9.626 0 TD -0.01 Tw -[(, etc., in the local declaration list. In addition, a local)]TJ --16.7615 -1.2889 TD -0.0778 Tw -(declaration of the form )Tj -/TT10 1 Tf -10.6988 0 TD -0.1856 Tw -(\(RECORDS A B C\))Tj -/TT8 1 Tf -9.5581 0 TD -0.0778 Tw -[( is equivalent to having copies of the global)]TJ --20.2569 -1.2889 TD -0 Tw -(declarations )Tj -/TT10 1 Tf -5.6687 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -(, and )Tj -/TT10 1 Tf -2.5029 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.03 Tw -[( in the local declaration. Local record declarations override global)]TJ --10.5018 -1.2889 TD -0.0633 Tw -[(record declarations for the function in which they appear. Local declarations can also be)]TJ -0 -1.2222 TD -0.07 Tw -(used to override the global setting of certain DWIM/CLISP parameters effective only for)Tj -T* -0.1022 Tw -(transformations within that function, by including in the local declaration an expression)Tj -T* -0 Tw -(of the form )Tj -/TT10 1 Tf -5.1729 0 TD -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(VARIABLE)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, e.g., )Tj -/TT10 1 Tf -2.5352 0 TD -(\(PATVARDEFAULT)Tj -/TT8 1 Tf -8.4014 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(QUOTE\))Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --30.9116 -2.0667 TD -(The )Tj -/TT10 1 Tf -1.9405 0 TD -(CLISP:)Tj -/TT8 1 Tf -3.6006 0 TD -0.0167 Tw -[( expression is converted to a comment of a special form recognized by CLISP.)]TJ --5.5411 -1.2889 TD -0.41 Tw -(Whenever a CLISP transformation that is affected by declarations is about to be)Tj -0 -1.2222 TD -0.0789 Tw -(performed in a function, this comment will be searched for a relevant declaration, and if)Tj -T* -0.0667 Tw -[(one is found, the corresponding function will be used. Otherwise, if none are found, the)]TJ -T* -0 Tw -(global declaration\(s\) currently in effect will be used.)Tj -0 -2 TD -0.0767 Tw -(Local declarations are effective in the order that they are given, so that later declarations)Tj -0 -1.2222 TD -0.0978 Tw -(can be used to override earlier ones, e.g., )Tj -/TT10 1 Tf -18.9858 0 TD -0.2333 Tw -(\(CLISP: FAST RPLACA RPLACD\))Tj -/TT8 1 Tf -16.9026 0 TD -0.0978 Tw -[( specifies)]TJ --35.8885 -1.2889 TD -0 Tw -(that )Tj -/TT10 1 Tf -2.3522 0 TD -(FMEMB)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.8678 0 TD -(FLAST)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.8678 0 TD -(RPLACA)Tj -/TT8 1 Tf -3.6006 0 TD -0.3678 Tw -(, and )Tj -/TT10 1 Tf -3.1784 0 TD -0 Tw -(RPLACD)Tj -/TT8 1 Tf -3.6006 0 TD -0.3678 Tw -[( be used. An exception to this is that)]TJ --20.4683 -1.2889 TD -0.0689 Tw -(declarations for specific variables take precedence of general, function-wide declarations,)Tj -0 -1.2222 TD -0 Tw -(regardless of the order of appearance, as in )Tj -/TT10 1 Tf -19.2524 0 TD -(\(CLISP: \(X INTEGER\) FLOATING\))Tj -/TT8 1 Tf -17.4028 0 TD -(.)Tj -/TT10 1 Tf --36.6553 -2.0667 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2544 Tw -[( also checks the declarations in effect before selecting an infix operator to)]TJ --4.8008 -1.2889 TD -0.0922 Tw -(ensure that the corresponding CLISP construct would in fact translate back to this form.)Tj -0 -1.2222 TD -0.1211 Tw -(For example, if a )Tj -/TT10 1 Tf -8.1046 0 TD -0 Tw -(FLOATING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1211 Tw -[( declaration is in effect, )]TJ -/TT10 1 Tf -11.0523 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1211 Tw -[( will convert )]TJ -/TT10 1 Tf -6.1573 0 TD -0.2889 Tw -(\(FPLUS X)Tj --34.9157 -1.2889 TD -0 Tw -(Y\))Tj -/TT8 1 Tf -1.2002 0 TD -0.1378 Tw -[( to )]TJ -/TT10 1 Tf -1.6476 0 TD -0 Tw -(X+Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.1378 Tw -(, but leave )Tj -/TT10 1 Tf -5.2097 0 TD -0.33 Tw -(\(IPLUS X Y\))Tj -/TT8 1 Tf -7.2611 0 TD -0.1378 Tw -[( as is. If )]TJ -/TT10 1 Tf -4.4975 0 TD -0.33 Tw -(\(FPLUS X Y\))Tj -/TT8 1 Tf -7.2611 0 TD -0.1378 Tw -[( is )]TJ -/TT10 1 Tf -1.4904 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1378 Tw -(ed while a)Tj -/TT10 1 Tf --35.1686 -1.2889 TD -0 Tw -(FLOATING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1167 Tw -[( declaration is under effect, and then the declaration is changed to )]TJ -/TT10 1 Tf -30.7486 0 TD -0 Tw -(INTEGER)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj --39.7501 -1.2889 TD -(when )Tj -/TT10 1 Tf -2.7271 0 TD -(X+Y)Tj -/TT8 1 Tf -1.8003 0 TD -( is translated back to Interlisp, it will become )Tj -/TT10 1 Tf -20.0083 0 TD -(\(IPLUS X Y\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 101.6 Tm -(CLISP Operation)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 98.89 m -510.01 98.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 76.94 Tm -0.0311 Tw -[(CLISP is a part of the basic Medley system. Without any special preparations, you can include CLISP)]TJ -0 -1.2222 TD -0.0111 Tw -(constructs in programs, or type them in directly for evaluation \(in )Tj -/TT10 1 Tf -29.4113 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( or )]TJ -/TT10 1 Tf -1.4631 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -[( format\), then, when)]TJ --36.2753 -1.2889 TD -0.12 Tw -(the "error" occurrs, and DWIM is called, it will destructively transform the CLISP to the equivalent)Tj -0 -1.2222 TD -0.2078 Tw -[(Interlisp expression and evaluate the Interlisp expression. CLISP transformations, like all DWIM)]TJ -ET -endstream -endobj -45 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -49 0 obj -<< -/Length 6865 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1433 Tw -[(corrections, are undoable. User approval is not requested, and no message is printed. This entire)]TJ -0 -1.2222 TD -0 Tw -(discussion also applies to CLISP transformation initiated by calls to DWIM from )Tj -/TT10 1 Tf -35.7153 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --39.916 -2.9556 TD -0.0311 Tw -(However, if a CLISP construct contains an error, an appropriate diagnostic is generated, and the form)Tj -0 -1.2222 TD -0.0322 Tw -[(is left unchanged. For example, if you write )]TJ -/TT10 1 Tf -20.0234 0 TD -0.0778 Tw -(\(LIST X+Y*\))Tj -/TT8 1 Tf -6.6789 0 TD -0.0322 Tw -(, the error diagnostic )Tj -/TT10 1 Tf -9.5469 0 TD -0.0778 Tw -(MISSING OPERAND)Tj --36.2491 -1.2889 TD -0.2722 Tw -(AT X+Y* IN \(LIST X+Y*\))Tj -/TT8 1 Tf -14.291 0 TD -0.1133 Tw -[( would be generated. Similarly, if you write )]TJ -/TT10 1 Tf -20.7715 0 TD -0.2722 Tw -(\(LAST+EL X\))Tj -/TT8 1 Tf -6.8733 0 TD -0.1133 Tw -(, CLISP)Tj --41.9358 -1.2889 TD -0.1811 Tw -(knows that )Tj -/TT10 1 Tf -5.5385 0 TD -0.4344 Tw -(\(\(IPLUS LAST EL\) X\))Tj -/TT8 1 Tf -12.7052 0 TD -0.1811 Tw -[( is not a valid Interlisp expression, so the error diagnostic)]TJ -/TT10 1 Tf --18.2437 -1.2889 TD -0.1389 Tw -(MISSING OPERATOR IN \(LAST+EL X\))Tj -/TT8 1 Tf -19.1586 0 TD -0.0578 Tw -[( is generated. \(For example, you might have meant to say)]TJ -/TT10 1 Tf --19.1586 -1.2889 TD -0 Tw -(\(LAST+EL*X\))Tj -/TT8 1 Tf -6.6011 0 TD -(.\) If )Tj -/TT10 1 Tf -2.0029 0 TD -(LAST+EL)Tj -/TT8 1 Tf -4.2007 0 TD -( were the name of a defined function, CLISP would never see this form.)Tj --12.8047 -2.9556 TD -0.0622 Tw -(Since the bad CLISP transformation might not be CLISP at all, for example, it might be a misspelling)Tj -0 -1.2222 TD -0.3278 Tw -(of a user function or variable, DWIM holds all CLISP error messages until after trying other)Tj -T* -0.2056 Tw -[(corrections. If one of these succeeds, the CLISP message is discarded. Otherwise, if all fail, the)]TJ -T* -0.1367 Tw -[(message is printed \(but no change is made\). For example, suppose you type )]TJ -/TT10 1 Tf -36.6295 0 TD -0.3278 Tw -(\(R/PLACA X Y\))Tj -/TT8 1 Tf -8.4568 0 TD -0 Tw -(.)Tj --45.0864 -1.2889 TD -0.2467 Tw -(CLISP generates a diagnostic, since )Tj -/TT10 1 Tf -17.0297 0 TD -0.5922 Tw -(\(\(IQUOTIENT R PLACA\) X Y\))Tj -/TT8 1 Tf -17.3713 0 TD -0.2467 Tw -[( is obviously not right.)]TJ --34.4011 -1.2889 TD -0 Tw -(However, since )Tj -/TT10 1 Tf -7.0996 0 TD -(R/PLACA)Tj -/TT8 1 Tf -4.2007 0 TD -( spelling corrects to )Tj -/TT10 1 Tf -8.8398 0 TD -(/RPLACA)Tj -/TT8 1 Tf -4.2007 0 TD -(, this diagnostic is never printed.)Tj --21.0075 -2.0667 TD -0.0311 Tw -[(Note:)-901.2(CLISP error messages are not printed on type-in. For example, typing )]TJ -/TT10 1 Tf -34.9391 0 TD -0 Tw -(X+*Y)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[( will)]TJ --34.0061 -1.2889 TD -0 Tw -(just produce a )Tj -/TT10 1 Tf -6.5156 0 TD -(U.B.A. X+*Y)Tj -/TT8 1 Tf -6.6011 0 TD -( message.)Tj --19.7834 -2.9556 TD -0.0678 Tw -(If a CLISP infix construct is well formed from a syntactic standpoint, but one or both of its operands)Tj -0 -1.2222 TD -0.02 Tw -(are atomic and not bound, it is possible that either the operand is misspelled, e.g., you wrote )Tj -/TT10 1 Tf -41.383 0 TD -0 Tw -(X+YY)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -[( for)]TJ -/TT10 1 Tf --43.7834 -1.2889 TD -0 Tw -(X+Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.0144 Tw -(, or that a CLISP transformation operation was not intended at all, but that the entire expression is)Tj --1.8003 -1.2889 TD -0.0856 Tw -[(a misspelling. For the purpose of )]TJ -/TT10 1 Tf -15.6238 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0855 Tw -(ing, "not bound" means no top level value, not on list of)Tj --19.8245 -1.2889 TD -0.5133 Tw -(bound variables built up by )Tj -/TT10 1 Tf -15.0877 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.5133 Tw -[( during its analysis of the expression, and not on)]TJ -/TT10 1 Tf --19.2883 -1.2889 TD -0 Tw -(NOFIXVARSLST)Tj -/TT8 1 Tf -7.2012 0 TD -(, i.e., not previously seen.)Tj --7.2012 -2.9556 TD -0.1422 Tw -(For example, if you have a variable named )Tj -/TT10 1 Tf -20.2179 0 TD -0 Tw -(LAST-EL)Tj -/TT8 1 Tf -4.2007 0 TD -0.1422 Tw -(, and write)Tj -/TT10 1 Tf -5.0525 0 TD -0.34 Tw -[( \(LIST LAST-ELL\))]TJ -/TT8 1 Tf -10.2816 0 TD -0.1422 Tw -[(. Therefore,)]TJ --39.7526 -1.2889 TD -0.2233 Tw -[(CLISP computes, but does not actually perform, the indicated infix transformation. DWIM then)]TJ -0 -1.2222 TD -0.0722 Tw -(continues, and if it is able to make another correction, does so, and ignores the CLISP interpretation.)Tj -T* -0 Tw -(For example, with )Tj -/TT10 1 Tf -8.2793 0 TD -(LAST-ELL)Tj -/TT8 1 Tf -4.8008 0 TD -(, the transformation )Tj -/TT10 1 Tf -9.0161 0 TD -(LAST-ELL -> LAST-EL)Tj -/TT8 1 Tf -11.4019 0 TD -( would be found.)Tj --33.4981 -2.9556 TD -0.0967 Tw -(If no other transformation is found, and DWIM is about to interpret a construct as CLISP for which)Tj -0 -1.2222 TD -0.0933 Tw -(one of the operands is not bound, DWIM will ask you whether CLISP was intended, in this case by)Tj -T* -0 Tw -(printing )Tj -/TT10 1 Tf -3.8745 0 TD -(LAST-ELL TREAT AS CLISP ?)Tj -/TT8 1 Tf -15.0024 0 TD -(.)Tj --15.5436 -2.0667 TD -0.0444 Tw -[(Note: If more than one infix operator was involved in the CLISP construct, e.g., )]TJ -/TT10 1 Tf -36.0783 0 TD -0 Tw -(X+Y+Z)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj --35.7454 -1.2889 TD -0.5478 Tw -(or the operation was an assignment to a variable already noticed, or)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(TREATASCLISPFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.2656 Tw -[( is )]TJ -/TT10 1 Tf -1.746 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2656 Tw -[( \(initially )]TJ -/TT10 1 Tf -4.7836 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2656 Tw -(\), you will simply be informed of the)Tj --17.9314 -1.2889 TD -0.11 Tw -(correction, e.g., )Tj -/TT10 1 Tf -7.2029 0 TD -0.2644 Tw -(X+Y+Z TREATED AS CLISP)Tj -/TT8 1 Tf -13.9955 0 TD -0.11 Tw -[(. Otherwise, even if DWIM was)]TJ --21.1984 -1.2889 TD -0 Tw -(enabled in )Tj -/TT10 1 Tf -4.8682 0 TD -(TRUSTING)Tj -/TT8 1 Tf -4.8008 0 TD -( mode, you will be asked to approve the correction.)Tj --16.3356 -2.9556 TD -0.0378 Tw -[(The same sort of procedure is followed with 8 and 9 errors. For example, suppose you write )]TJ -/TT10 1 Tf -41.7215 0 TD -0 Tw -(FOO8*X)Tj -/TT8 1 Tf --41.7215 -1.2889 TD -(where )Tj -/TT10 1 Tf -3.0524 0 TD -(FOO8)Tj -/TT8 1 Tf -2.4004 0 TD -0.0333 Tw -[( is not bound. The CLISP transformation is noted, and DWIM proceeds. It next asks you)]TJ --5.4528 -1.2889 TD -0.1056 Tw -(to approve )Tj -/TT10 1 Tf -5.2702 0 TD -0.2522 Tw -(FOO8*X -> FOO \( *X)Tj -/TT8 1 Tf -11.8106 0 TD -0.1056 Tw -[(. For example, this would make sense if you have \(or plan to)]TJ --17.0808 -1.2889 TD -0.02 Tw -(define\) a function named )Tj -/TT10 1 Tf -11.4496 0 TD -0 Tw -(*X)Tj -/TT8 1 Tf -1.2002 0 TD -0.02 Tw -[(. If you refuses, you are asked whether )]TJ -/TT10 1 Tf -17.7679 0 TD -0 Tw -(FOO8*X)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[( is to be treated as CLISP.)]TJ -ET -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -52 0 obj -<< -/Length 7911 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.1378 Tw -(Similarly, if )Tj -/TT10 1 Tf -5.6725 0 TD -0 Tw -(FOO8)Tj -/TT8 1 Tf -2.4004 0 TD -0.1378 Tw -[( were the name of a variable, and you write )]TJ -/TT10 1 Tf -20.8221 0 TD -0 Tw -(FOOO8*X)Tj -/TT8 1 Tf -4.2007 0 TD -0.1378 Tw -(, you will first be asked to)Tj --33.0957 -1.2889 TD -0 Tw -(approve )Tj -/TT10 1 Tf -4.1237 0 TD -0.4467 Tw -(FOOO8*X -> FOOO \( XX)Tj -/TT8 1 Tf -13.7886 0 TD -0.1867 Tw -(, and if you refuse, then be offered the )Tj -/TT10 1 Tf -18.7293 0 TD -0.4467 Tw -(FOOO8 -> FOO8)Tj -/TT8 1 Tf --36.6416 -1.2889 TD -0.0222 Tw -[(correction. The 8-9 transformation is tried before spelling correction since it is empirically more likely)]TJ -0 -1.2222 TD -0.0033 Tw -(that an unbound atom or undefined function containing an 8 or a 9 is a parenthesis error, rather than a)Tj -T* -0 Tw -(spelling error.)Tj -0 -2.8889 TD -0.35 Tw -(CLISP also contains provision for correcting misspellings of infix operators \(other than single)Tj -0 -1.2222 TD -0 Tw -(characters\), )Tj -/TT10 1 Tf -5.3907 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0689 Tw -[( words, and i.s. operators. This is implemented in such a way that the user who does)]TJ --6.5909 -1.2889 TD -0.0511 Tw -[(not misspell them is not penalized. For example, if you write )]TJ -/TT10 1 Tf -27.9244 0 TD -0.1222 Tw -(IF N)Tj -/TT8 1 Tf -2.5226 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3011 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3011 0 TD -0.1222 Tw -(0 THEN 1 ELSSE N*\(FACT)Tj --31.6493 -1.2889 TD -0 Tw -(N-1\))Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -[( CLISP does )]TJ -/TT13 1 Tf -5.6852 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.03 Tw -[( operate by checking each word to see if it is a misspelling of )]TJ -/TT10 1 Tf -27.3819 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(THEN)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.53 0 TD -(ELSE)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -(, or)Tj -/TT10 1 Tf --43.8615 -1.2889 TD -0 Tw -(ELSEIF)Tj -/TT8 1 Tf -3.6006 0 TD -0.2233 Tw -(, since this would seriously degrade CLISPs performance on )Tj -/TT13 1 Tf -29.1291 0 TD -0 Tw -(all)Tj -/TT8 1 Tf -0.9995 0 TD -( )Tj -/TT10 1 Tf -0.4733 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.2233 Tw -[( statements. Instead,)]TJ --35.4028 -1.2889 TD -0.0333 Tw -(CLISP assumes that all of the )Tj -/TT10 1 Tf -13.3045 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0333 Tw -[( words are spelled correctly, and transforms the expression to )]TJ -/TT10 1 Tf -27.8153 0 TD -0 Tw -(\(COND)Tj --42.32 -1.2889 TD -0.0567 Tw -(\(\(ZEROP N\) 1 ELSSE N*\(FACT N-1\)\)\))Tj -/TT8 1 Tf -20.0866 0 TD -0.0233 Tw -[(. Later, after DWIM cannot find any other interpretation)]TJ --20.0866 -1.2889 TD -0 Tw -(for )Tj -/TT10 1 Tf -1.5828 0 TD -(ELSSE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -(, and using the fact that this atom originally appeared in an )Tj -/TT10 1 Tf -27.1285 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0589 Tw -[( statement, DWIM attempts)]TJ --32.912 -1.2889 TD -0.13 Tw -(spelling correction, using )Tj -/TT10 1 Tf -11.8089 0 TD -0.3111 Tw -(\(IF THEN ELSE ELSEIF\))Tj -/TT8 1 Tf -13.5354 0 TD -0.13 Tw -[( for a spelling list. When this is successful,)]TJ --25.3443 -1.2889 TD -0.0667 Tw -(DWIM "fails" all the way back to the original)Tj -/TT15 1 Tf -20.2951 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3167 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0667 Tw -[( statement, changes )]TJ -/TT10 1 Tf -9.0921 0 TD -0 Tw -(ELSSE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0667 Tw -[( to )]TJ -/TT10 1 Tf -1.5054 0 TD -0 Tw -(ELSE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0667 Tw -(, and starts over.)Tj --37.8103 -1.2889 TD -0 Tw -(Misspellings of )Tj -/TT10 1 Tf -6.9785 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(LT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(GT)Tj -/TT8 1 Tf -1.2002 0 TD -(, etc. are handled similarly.)Tj --13.8794 -2.9556 TD -0.14 Tw -[(CLISP also contains many Do-What-I-Mean features besides spelling corrections. For example, the)]TJ -0 -1.2222 TD -0 Tw -(form )Tj -/TT10 1 Tf -2.4523 0 TD -0.11 Tw -(\(LIST +X Y\))Tj -/TT8 1 Tf -6.8211 0 TD -0.0456 Tw -[( would generate a )]TJ -/TT10 1 Tf -8.3634 0 TD -0.11 Tw -(MISSING OPERATOR)Tj -/TT8 1 Tf -9.7116 0 TD -0.0456 Tw -[( error. However, )]TJ -/TT10 1 Tf -8.0221 0 TD -0.11 Tw -(\(LIST -X Y\))Tj -/TT8 1 Tf -6.8211 0 TD -0.0456 Tw -[( makes)]TJ --42.1915 -1.2889 TD -0.1978 Tw -[(sense, if the minus is unary, so DWIM offers this interpretation to you. Another common error,)]TJ -0 -1.2222 TD -0.0056 Tw -(especially for new users, is to write )Tj -/TT10 1 Tf -15.8006 0 TD -0.0122 Tw -(\(LIST X*FOO\(Y\)\))Tj -/TT8 1 Tf -9.0137 0 TD -0.0056 Tw -[( or )]TJ -/TT10 1 Tf -1.452 0 TD -0.0122 Tw -(\(LIST X*FOO Y\))Tj -/TT8 1 Tf -8.4258 0 TD -0.0056 Tw -(, where )Tj -/TT10 1 Tf -3.5302 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[( is the name)]TJ --40.0226 -1.2889 TD -0.0533 Tw -(of a function, instead of )Tj -/TT10 1 Tf -10.9444 0 TD -0.1267 Tw -(\(LIST X*\(FOO Y\)\))Tj -/TT8 1 Tf -9.8549 0 TD -0.0533 Tw -[(. Therefore, whenever an operand that is not bound is)]TJ --20.7993 -1.2889 TD -0 Tw -(also the name of a function \(or corrects to one\), the above interpretations are offered.)Tj -/TT4 1 Tf -10 0 0 10 54 257.2 Tm -(CLISP Translations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 254.49 m -510.01 254.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 232.54 Tm -0.1656 Tw -(The translation of CLISP character operators and the CLISP word )Tj -/TT10 1 Tf -30.7854 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.1656 Tw -[( are handled by )]TJ -/TT13 1 Tf -7.8014 0 TD -0 Tw -(replacing)Tj -/TT8 1 Tf -3.7412 0 TD -0.1656 Tw -[( the)]TJ --43.5282 -1.2889 TD -0.2 Tw -(CLISP expression with the corresponding Interlisp expression, and discarding the original CLISP.)Tj -0 -1.2222 TD -(This is done because \(1\) the CLISP expression is easily recomputable \(by )Tj -/TT10 1 Tf -34.5982 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2 Tw -(\) and \(2\) the)Tj --39.399 -1.2889 TD -0.2256 Tw -[(Interlisp expressions are simple and straightforward. Another reason for discarding the original)]TJ -0 -1.2222 TD -0.4622 Tw -(CLISP is that it may contain errors that were corrected in the course of translation \(e.g.,)Tj -/TT10 1 Tf -T* -0 Tw -(FOO)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.1122 Tw -(FOOO:1, N*8FOO X\))Tj -/TT8 1 Tf -10.4261 0 TD -0.0467 Tw -[(, etc.\). If the original CLISP were retained, either you would have to go)]TJ --13.2132 -1.2889 TD -0.13 Tw -(back and fix these errors by hand, thereby negating the advantage of having DWIM perform these)Tj -0 -1.2222 TD -0 Tw -(corrections, or else DWIM would have to keep correcting these errors over and over.)Tj -0 -2.8889 TD -0.0167 Tw -(Note that )Tj -/TT10 1 Tf -4.4498 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0167 Tw -[( is sufficiently fast that it is practical for you to configure your Interlisp system so)]TJ --9.2506 -1.2889 TD -0.01 Tw -(that all expressions are automatically )Tj -/TT10 1 Tf -16.7082 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.01 Tw -[(ed immediately before they are presented to you. For)]TJ --21.509 -1.2889 TD -0.1667 Tw -(example, you can define an edit macro to use in place of )Tj -/TT10 1 Tf -27.0063 0 TD -0 Tw -(P)Tj -/TT8 1 Tf -0.6001 0 TD -0.1667 Tw -[( which calls )]TJ -/TT10 1 Tf -5.9326 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1667 Tw -[( on the current)]TJ --38.3399 -1.2889 TD -0.1678 Tw -[(expression before printing it. Similarly, you can inform )]TJ -/TT10 1 Tf -26.3074 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.1678 Tw -[( to call )]TJ -/TT10 1 Tf -3.6513 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1678 Tw -[( on each)]TJ --41.3605 -1.2889 TD -0 Tw -(expression before printing it, etc.)Tj -0 -2.8889 TD -0.0811 Tw -(Where \(1\) or \(2\) are not the case, e.g., with iterative statements, pattern matches, record expressions,)Tj -0 -1.2222 TD -0.0244 Tw -(etc. the original CLISP )Tj -/TT13 1 Tf -10.2218 0 TD -0 Tw -(is)Tj -/TT8 1 Tf -0.667 0 TD -0.0244 Tw -[( retained \(or a slightly modified version thereof\), and the translation is stored)]TJ -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -55 0 obj -<< -/Length 7785 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0444 Tw -(elsewhere \(by the function )Tj -/TT10 1 Tf -12.1563 0 TD -0 Tw -(CLISPTRAN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0444 Tw -(, in the Miscellaneous Functions and Variables\), usually in the)Tj --17.5572 -1.2889 TD -0.0822 Tw -(hash array )Tj -/TT10 1 Tf -5.0985 0 TD -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -0.0822 Tw -[(. The interpreter automatically checks this array when given a form )]TJ -/TT10 1 Tf -31.221 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0822 Tw -[( of)]TJ --44.1208 -1.2889 TD -0.0767 Tw -[(which is not a function. Similarly, the compiler performs a )]TJ -/TT10 1 Tf -27.0977 0 TD -0 Tw -(GETHASH)Tj -/TT8 1 Tf -4.2007 0 TD -0.0767 Tw -[( when given a form it does not)]TJ --31.2984 -1.2889 TD -0.1289 Tw -[(recognize to see if it has a translation, which is then compiled instead of the form. Whenever you)]TJ -/TT13 1 Tf -0 -1.2222 TD -0 Tw -(change)Tj -/TT8 1 Tf -2.7964 0 TD -0.0078 Tw -[( a CLISP expresson by editing it, the editor automatically deletes its translation \(if one exists\), so)]TJ --2.7964 -1.2222 TD -0.1222 Tw -(that the next time it is evaluated or )Tj -/TT10 1 Tf -16.6086 0 TD -0 Tw -(DWIMIFI)Tj -/TT8 1 Tf -4.2007 0 TD -0.1222 Tw -(ed, the expression will be retranslated \(if the value of)Tj -/TT10 1 Tf --20.8093 -1.2889 TD -0 Tw -(CLISPRETRANFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.2489 Tw -[( is )]TJ -/TT10 1 Tf -1.7126 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.7489 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2489 Tw -[( will also \(re\)translate any expressions which have translations)]TJ --15.6637 -1.2889 TD -0.2311 Tw -[(stored remotely, see the CLISPIFY section\). The function )]TJ -/TT10 1 Tf -27.4862 0 TD -0 Tw -(PPT)Tj -/TT8 1 Tf -1.8003 0 TD -0.2311 Tw -[( and the edit commands )]TJ -/TT10 1 Tf -12.0647 0 TD -0 Tw -(PPT)Tj -/TT8 1 Tf -1.8003 0 TD -0.2311 Tw -[( and)]TJ -/TT10 1 Tf --43.1516 -1.2889 TD -0 Tw -(CLISP:)Tj -/TT8 1 Tf -3.6006 0 TD -0.2622 Tw -[( are available for examining translations \(see the Miscellaneous Functions and Variables)]TJ --3.6006 -1.2889 TD -0 Tw -(section\).)Tj -0 -2.8889 TD -0.0678 Tw -(You can also indicate that you want the original CLISP retained by embedding it in an expression of)Tj -0 -1.2222 TD -0.0311 Tw -(the form )Tj -/TT10 1 Tf -4.1062 0 TD -0.0744 Tw -(\(CLISP . )Tj -/TT19 1 Tf -5.5498 0 TD -0 Tw -(CLISP-EXPRESSION)Tj -/TT10 1 Tf -9.6016 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -(, e.g., )Tj -/TT10 1 Tf -2.5974 0 TD -0.0744 Tw -(\(CLISP X:5:3\))Tj -/TT8 1 Tf -7.8757 0 TD -0.0311 Tw -[( or )]TJ -/TT10 1 Tf -1.5031 0 TD -0.0744 Tw -(\(CLISP \))Tj -/TT8 1 Tf -11.7741 0 TD -0.0311 Tw -[(. In)]TJ --43.6079 -1.2889 TD -0.03 Tw -[(such cases, the translation will be stored remotely as described above. Furthermore, such expressions)]TJ -0 -1.2222 TD -0.2556 Tw -(will be treated as CLISP even if infix and prefix transformations have been disabled by setting)Tj -/TT10 1 Tf -T* -0 Tw -(CLISPFLG )Tj -/TT8 1 Tf -5.5387 0 TD -(to )Tj -/TT10 1 Tf -1.1798 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0578 Tw -[( \(see the Miscellaneous Functions and Variables section\). In other words, you can)]TJ --8.5188 -1.2889 TD -0.1711 Tw -(instruct the system to interpret as CLISP infix or prefix constructs only those expressions that are)Tj -0 -1.2222 TD -0.4633 Tw -[(specifically flagged as such. You can also include CLISP declarations by writing )]TJ -/TT10 1 Tf -41.7333 0 TD -0 Tw -(\(CLISP)Tj -/TT19 1 Tf --41.7333 -1.2889 TD -(DECLARATIONS)Tj -/TT10 1 Tf -7.2012 0 TD -0.15 Tw -[( . )]TJ -/TT19 1 Tf -2.1003 0 TD -0 Tw -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -(, e.g., )Tj -/TT10 1 Tf -2.6596 0 TD -0.15 Tw -(\(CLISP \(CLISP: FLOATING\) ...\))Tj -/TT8 1 Tf -17.8528 0 TD -0.0622 Tw -[(. These declarations will be)]TJ --32.8144 -1.2889 TD -0.1367 Tw -[(used in place of any CLISP declarations in the function definition. This feature provides a way of)]TJ -0 -1.2222 TD -0 Tw -(including CLISP declarations in macro definitions.)Tj -3.3333 -2 TD -0.2467 Tw -[(Note:)-901.2(CLISP translations can also be used to supply an interpretation for function)]TJ -3.3333 -1.2222 TD -0.1789 Tw -(objects, as well as forms, either for function objects that are used openly, i.e.,)Tj -T* -0.1067 Tw -(appearing as )Tj -/TT10 1 Tf -6.1425 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1067 Tw -[( of form, function objects that are explicitly )]TJ -/TT10 1 Tf -20.0467 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.1067 Tw -(ed, as with)Tj --30.99 -1.2889 TD -0.3489 Tw -(arguments to mapping functions, or function objects contained in function)Tj -0 -1.2222 TD -0.05 Tw -[(definition cells. In all cases, if )]TJ -/TT10 1 Tf -13.7563 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.05 Tw -[( of the object is not )]TJ -/TT10 1 Tf -8.8171 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -[( or )]TJ -/TT10 1 Tf -1.5409 0 TD -0 Tw -(NLAMBDA,)Tj -/TT8 1 Tf -4.8008 0 TD -0.05 Tw -[( the)]TJ --34.3159 -1.2889 TD -0 Tw -(interpreter and compiler will check )Tj -/TT10 1 Tf -15.833 0 TD -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 221.8 Tm -(DWIMIFY)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 219.09 m -558.01 219.09 l -S -BT -/TT10 1 Tf -9 0 0 9 126 197.14 Tm -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1456 Tw -[( is effectively a preprocessor for CLISP. )]TJ -/TT10 1 Tf -18.9935 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1455 Tw -[( operates by scanning an expression as)]TJ --27.3949 -1.2889 TD -0.1055 Tw -(though it were being interpreted, and for each form that would generate an error, calling DWIM to)Tj -0 -1.2222 TD -0.1922 Tw -("fix" it. )Tj -/TT10 1 Tf -4.0762 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1922 Tw -[( performs )]TJ -/TT13 1 Tf -4.9401 0 TD -0 Tw -(all)Tj -/TT8 1 Tf -0.9995 0 TD -0.1922 Tw -[( DWIM transformations, not just CLISP transformations, so it does)]TJ --14.2165 -1.2889 TD -0.1033 Tw -(spelling correction, fixes 8-9 errors, handles )Tj -/TT10 1 Tf -20.0614 0 TD -0 Tw -(F/L)Tj -/TT8 1 Tf -1.8003 0 TD -0.1033 Tw -[(, etc. Thus you will see the same messages, and be)]TJ --21.8617 -1.2889 TD -0.02 Tw -[(asked for approval in the same situations, as you would if the expression were actually run. If DWIM)]TJ -0 -1.2222 TD -0.1767 Tw -(is unable to make a correction, no message is printed, the form is left as it was, and the analysis)Tj -T* -0 Tw -(proceeds.)Tj -/TT10 1 Tf -0 -2.8889 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2678 Tw -[( knows exactly how the interpreter works. It knows the syntax of )]TJ -/TT10 1 Tf -32.6632 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(s, )Tj -/TT10 1 Tf -1.1916 0 TD -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -(s,)Tj -/TT10 1 Tf --44.6566 -1.2889 TD -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -0.2067 Tw -[( expressions, )]TJ -/TT10 1 Tf -6.324 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.2067 Tw -[(s, et al. It knows how variables are bound, and that the argument of)]TJ -/TT10 1 Tf --12.325 -1.2889 TD -0 Tw -(NLAMBDA)Tj -/TT8 1 Tf -4.2007 0 TD -0.0433 Tw -(s are not evaluated \(you can inform )Tj -/TT10 1 Tf -16.253 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0433 Tw -[( of a function or macros nonstandard binding)]TJ --24.6544 -1.2889 TD -0.1656 Tw -(or evaluation by giving it a suitable )Tj -/TT10 1 Tf -17.0681 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.1656 Tw -[( property, see below\). In the course of its analysis of a)]TJ --19.4685 -1.2889 TD -0.0378 Tw -(particular expression, )Tj -/TT10 1 Tf -9.9086 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0378 Tw -[( builds a list of the bound variables from the )]TJ -/TT10 1 Tf -20.1859 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -0.0378 Tw -[( expressions and)]TJ -/TT10 1 Tf --37.8957 -1.2889 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -[(s that it encounters. It uses this list for spelling corrections. )]TJ -/TT10 1 Tf -27.5904 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0767 Tw -[( also knows not to try to)]TJ -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -58 0 obj -<< -/Length 7877 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0133 Tw -("correct" variables that are on this list since they would be bound if the expression were actually being)Tj -0 -1.2222 TD -0.1544 Tw -[(run. However, note that )]TJ -/TT10 1 Tf -11.8997 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1544 Tw -[( cannot, a priori, know about variables that are used freely but)]TJ --16.1003 -1.2889 TD -0.3289 Tw -(would be bound in a higher function if the expression were evaluated in its normal context.)Tj -0 -1.2222 TD -0 Tw -(Therefore, )Tj -/TT10 1 Tf -4.8997 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0989 Tw -[( will try to "correct" these variables. Similarly, )]TJ -/TT10 1 Tf -21.5785 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0989 Tw -[( will attempt to correct)]TJ --34.8795 -1.2889 TD -0.0756 Tw -(forms for which )Tj -/TT10 1 Tf -7.5641 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0756 Tw -[( is undefined, even when the form is not in error from your standpoint, but the)]TJ --9.3644 -1.2889 TD -0 Tw -(corresponding function has simply not yet been defined.)Tj -3.3333 -2 TD -(Note: )Tj -/TT10 1 Tf -3.3333 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0522 Tw -[( rebinds )]TJ -/TT10 1 Tf -3.9394 0 TD -0 Tw -(FIXSPELLDEFAULT)Tj -/TT8 1 Tf -9.0015 0 TD -0.0522 Tw -[( to )]TJ -/TT10 1 Tf -1.4765 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0522 Tw -(, so that if you are not at the terminal)Tj --19.2182 -1.2889 TD -0 Tw -(when )Tj -/TT10 1 Tf -2.727 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ing \(or compiling\), spelling corrections will not be performed.)Tj -/TT10 1 Tf --13.5944 -2.9556 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1456 Tw -[( will also inform you when it encounters an expression with too )]TJ -/TT13 1 Tf -30.1734 0 TD -0 Tw -(many)Tj -/TT8 1 Tf -2.2778 0 TD -0.1456 Tw -[( arguments \(unless)]TJ -/TT10 1 Tf --36.6519 -1.2889 TD -0 Tw -(DWIMCHECK#ARGSFLG)Tj -/TT8 1 Tf -10.2017 0 TD -( )Tj -/TT10 1 Tf -0.3544 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3544 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -(\), because such an occurrence, although does not cause an error in the)Tj --13.3109 -1.2889 TD -0.1311 Tw -[(Interlisp interpreter, nevertheless is frequently symptomatic of a parenthesis error. For example, if)]TJ -0 -1.2222 TD -0 Tw -(you wrote )Tj -/TT10 1 Tf -4.7852 0 TD -(\(CONS \(QUOTE FOO X\)\))Tj -/TT8 1 Tf -12.002 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(\(CONS \(QUOTE FOO\) X\), DWIMIFY)Tj -/TT8 1 Tf -17.4028 0 TD -( will print:)Tj -/TT10 1 Tf --33.6984 -2 TD -(POSSIBLE PARENTHESIS ERROR IN)Tj -0 -1 TD -(\(QUOTE FOO X\))Tj -T* -(TOO MANY ARGUMENTS \(MORE THAN 1\))Tj --5.3333 -2.7333 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.7367 Tw -[( will also check to see if a )]TJ -/TT10 1 Tf -17.2439 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.7367 Tw -[( label contains a clisp character \(unless)]TJ -/TT10 1 Tf --23.845 -1.2889 TD -0 Tw -(DWIMCHECKPROGLABELSFLG)Tj -/TT8 1 Tf -13.2022 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0333 Tw -(, or the label is a member of )Tj -/TT10 1 Tf -12.7247 0 TD -0 Tw -(NOFIXVARSLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.0333 Tw -(\), and if so, will alert)Tj --36.0951 -1.2889 TD -0.0389 Tw -(you by printing the message )Tj -/TT10 1 Tf -13.0152 0 TD -0.0922 Tw -(SUSPICIOUS PROG LABEL)Tj -/TT8 1 Tf -12.7865 0 TD -0.0389 Tw -[(, followed by the label. The )]TJ -/TT10 1 Tf -12.7376 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0389 Tw -[( label will)]TJ -/TT13 1 Tf --40.9397 -1.2889 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -( be treated as CLISP.)Tj --1.333 -2.8889 TD -0.07 Tw -(Note that in most cases, an attempt to transform a form that is already as you intended will have no)Tj -0 -1.2222 TD -0.0411 Tw -[(effect \(because there will be nothing to which that form could reasonably be transformed\). However,)]TJ -T* -0.0244 Tw -(in order to avoid needless calls to DWIM or to avoid possible confusion, you can inform )Tj -/TT10 1 Tf -39.5176 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT13 1 Tf -0.2744 0 TD -(not)Tj -/TT8 1 Tf --43.9927 -1.2889 TD -0.0711 Tw -(to attempt corrections or transformations on certain functions or variables by adding them to the list)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NOFIXFNSLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.2411 Tw -[( or )]TJ -/TT10 1 Tf -1.9231 0 TD -0 Tw -(NOFIXVARSLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.2411 Tw -[( respectively. Note that you could achieve the same effect by)]TJ --15.7254 -1.2889 TD -0 Tw -(simply setting the corresponding variables, and giving the functions dummy definitions.)Tj -/TT10 1 Tf -0 -2.8889 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0067 Tw -[( will never attempt corrections on global variables, i.e., variables that are a member of the list)]TJ -/TT10 1 Tf --4.2007 -1.2889 TD -0 Tw -(GLOBALVARS)Tj -/TT8 1 Tf -6.001 0 TD -0.2544 Tw -(, or have the property )Tj -/TT10 1 Tf -11.1179 0 TD -0 Tw -(GLOBALVAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.2544 Tw -[( with value )]TJ -/TT10 1 Tf -5.9802 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2544 Tw -[(, on their property list. Similarly,)]TJ -/TT10 1 Tf --29.1001 -1.2889 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0944 Tw -[( will not attempt to correct variables declared to be )]TJ -/TT10 1 Tf -23.6598 0 TD -0 Tw -(SPECVARS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0944 Tw -[( in block declarations or via)]TJ -/TT10 1 Tf --32.6612 -1.2889 TD -0 Tw -(DECLARE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0233 Tw -[( expressions in the function body. You can also declare variables that are simply used freely)]TJ --4.2007 -1.2889 TD -0 Tw -(in a function by using the )Tj -/TT10 1 Tf -11.5327 0 TD -(USEDFREE)Tj -/TT8 1 Tf -4.8008 0 TD -( declaration.)Tj -/TT10 1 Tf --16.3335 -2.9556 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0744 Tw -[( and )]TJ -/TT10 1 Tf -2.3418 0 TD -0 Tw -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.0744 Tw -[( \(used to )]TJ -/TT10 1 Tf -4.2951 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0744 Tw -[( several functions\) maintain two internal lists of those)]TJ --21.0392 -1.2889 TD -0.37 Tw -[(functions and variables for which corrections were unsuccessfully attempted. These lists are)]TJ -0 -1.2222 TD -0.1644 Tw -(initialized to the values of )Tj -/TT10 1 Tf -12.5253 0 TD -0 Tw -(NOFIXFNSLST)Tj -/TT8 1 Tf -6.6011 0 TD -0.1644 Tw -[( and )]TJ -/TT10 1 Tf -2.5218 0 TD -0 Tw -(NOFIXVARSLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.1644 Tw -[(. Once an attempt is made to fix a)]TJ --28.8494 -1.2889 TD -0.3167 Tw -(particular function or variable, and the attempt fails, the function or variable is added to the)Tj -0 -1.2222 TD -0.0733 Tw -(corresponding list, so that on subsequent occurrences \(within this call to )Tj -/TT10 1 Tf -32.9502 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0733 Tw -[( or )]TJ -/TT10 1 Tf -1.5876 0 TD -0 Tw -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -(\),)Tj --44.7395 -1.2889 TD -0.0122 Tw -[(no attempt at correction is made. For example, if )]TJ -/TT10 1 Tf -22.0231 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[( calls )]TJ -/TT10 1 Tf -2.4742 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[( several times, and )]TJ -/TT10 1 Tf -8.5274 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.0122 Tw -[( is undefined at)]TJ --38.4255 -1.2889 TD -0.1222 Tw -(the time )Tj -/TT10 1 Tf -4.1107 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1222 Tw -[( is )]TJ -/TT10 1 Tf -1.4593 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ed, )Tj -/TT10 1 Tf -1.7121 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1222 Tw -[( will not bother with )]TJ -/TT10 1 Tf -9.9368 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.1222 Tw -[( after the first occurrence. In other)]TJ --29.2208 -1.2889 TD -0.1122 Tw -(words, once )Tj -/TT10 1 Tf -5.8348 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1122 Tw -[( "notices" a function or variable, it no longer attempts to correct it. )]TJ -/TT10 1 Tf -31.1048 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf --41.1403 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.334 0 TD -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.3911 Tw -[( also "notice" free variables that are set in the expression being processed.)]TJ -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -61 0 obj -<< -/Length 8294 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0867 Tw -(Moreover, once )Tj -/TT10 1 Tf -7.3247 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0867 Tw -[( "notices" such functions or variables, it subsequently treats them the same)]TJ --11.5254 -1.2889 TD -0 Tw -(as though they were actually defined or set.)Tj -0 -2.8889 TD -0.0567 Tw -(Note that these internal lists are local to each call to )Tj -/TT10 1 Tf -23.5027 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0567 Tw -[( and )]TJ -/TT10 1 Tf -2.3062 0 TD -0 Tw -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.0567 Tw -(, so that if a function)Tj --36.0106 -1.2889 TD -0 Tw -(containing )Tj -/TT10 1 Tf -5.0491 0 TD -(FOOO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -(, a misspelled call to )Tj -/TT10 1 Tf -9.6658 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0989 Tw -(, is )Tj -/TT10 1 Tf -1.6626 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0989 Tw -(ed before )Tj -/TT10 1 Tf -4.5728 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0989 Tw -[( is defined or mentioned, if the)]TJ --31.152 -1.2889 TD -0 Tw -(function is )Tj -/TT10 1 Tf -4.9219 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ed again after )Tj -/TT10 1 Tf -6.3022 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( has been defined, the correction will be made.)Tj --17.2251 -2.9556 TD -(You can undo selected transformations performed by )Tj -/TT10 1 Tf -23.8501 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(, as described in Chapter 13.)Tj -/TT10 1 Tf --25.3841 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DWIMIFY)Tj -/TT13 1 Tf -4.1999 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(X)Tj -/TT13 1 Tf -0.6001 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(QUIETFLG)Tj -/TT13 1 Tf -4.8008 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(L)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 259.3596 459.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 459.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2767 Tw -(Performs all DWIM and CLISP corrections and transformations on )Tj -/TT19 1 Tf -32.1609 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2767 Tw -[( that would be)]TJ --32.761 -1.2889 TD -0 Tw -(performed if )Tj -/TT19 1 Tf -5.8457 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( were run, and prints the result unless )Tj -/TT19 1 Tf -17.0371 0 TD -(QUIETFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --29.9839 -2.0667 TD -(If )Tj -/TT19 1 Tf -0.931 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( is an atom and )]TJ -/TT19 1 Tf -7.0502 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( is )]TJ -/TT10 1 Tf -1.2371 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT19 1 Tf -0.5111 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( is treated as the name of a function, and its entire definition)]TJ --13.33 -1.2889 TD -0 Tw -(is )Tj -/TT10 1 Tf -1.0326 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0678 Tw -[(ed. If )]TJ -/TT19 1 Tf -2.9631 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0678 Tw -[( is a list or )]TJ -/TT19 1 Tf -5.0767 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.0678 Tw -[( is not )]TJ -/TT10 1 Tf -3.1223 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT19 1 Tf -0.5678 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0678 Tw -[( is the expression to be )]TJ -/TT10 1 Tf -10.6498 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0678 Tw -[(ed. If )]TJ -/TT19 1 Tf -2.9631 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.0678 Tw -[( is)]TJ --38.9774 -1.2889 TD -0 Tw -(not )Tj -/TT10 1 Tf -1.7085 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0044 Tw -(, it is the edit push-down list leading to )Tj -/TT19 1 Tf -17.5962 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0044 Tw -(, and is used for determining context, i.e.,)Tj --21.7051 -1.2889 TD -0.1033 Tw -(what bound variables would be in effect when )Tj -/TT19 1 Tf -21.6231 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1033 Tw -[( was evaluated, whether )]TJ -/TT19 1 Tf -11.4524 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1033 Tw -[( is a form or)]TJ --34.2756 -1.2889 TD -0 Tw -(sequence of forms, e.g., a )Tj -/TT10 1 Tf -11.2944 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( clause, etc.)Tj --13.6948 -2.0667 TD -(If )Tj -/TT19 1 Tf -1.0521 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1322 Tw -[( is an iterative statement and )]TJ -/TT19 1 Tf -13.7606 0 TD -0 Tw -(L)Tj -/TT8 1 Tf -0.6001 0 TD -0.1322 Tw -[( is )]TJ -/TT10 1 Tf -1.4793 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6322 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1322 Tw -[( will also print the translation, i.e.,)]TJ --24.1254 -1.2889 TD -0 Tw -(what is stored in the hash array.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(DWIMIFYFNS)Tj -/TT15 1 Tf -5.9999 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(FN)Tj -1.2 -0.3333 TD -(1)Tj -/TT13 1 Tf -0.6 0.3333 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(...)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-14742.1([NLambda NoSpread Function])]TJ -/TT10 1 Tf --10.6834 -2.1778 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0511 Tw -[(s each of the functions given. If only one argument is given, it is evalued. If its)]TJ --4.2007 -1.2889 TD -0.0078 Tw -(value is a list, the functions on this list are )Tj -/TT10 1 Tf -18.7877 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0078 Tw -[(ed. If only one argument is given, it is)]TJ --22.9884 -1.2889 TD -0.0289 Tw -(atomic, its value is not a list, and it is the name of a known file, )Tj -/TT10 1 Tf -28.411 0 TD -0 Tw -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.0289 Tw -[( will operate)]TJ --34.4119 -1.2889 TD -0 Tw -(on )Tj -/TT10 1 Tf -1.4546 0 TD -(\(FILEFNSLST)Tj -/TT15 1 Tf -6.6011 0 TD -( )Tj -/TT19 1 Tf -0.3267 0 TD -(FN)Tj -1.1988 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0767 Tw -(, e.g. )Tj -/TT10 1 Tf -2.4385 0 TD -0.1844 Tw -(\(DWIMIFYFNS FOO.LSP\))Tj -/TT8 1 Tf -12.1864 0 TD -0.0767 Tw -[( will )]TJ -/TT10 1 Tf -2.3604 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0767 Tw -[( every function in)]TJ --31.9671 -1.6222 TD -0 Tw -(the file )Tj -/TT10 1 Tf -3.2812 0 TD -(FOO.LSP)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --7.4819 -2.0667 TD -0.2211 Tw -(Every 30 seconds, )Tj -/TT10 1 Tf -8.7786 0 TD -0 Tw -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -0.2211 Tw -[( prints the name of the function it is processing, a la)]TJ -/TT10 1 Tf --14.7795 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --6.6011 -2.0667 TD -(Value is a list of the functions )Tj -/TT10 1 Tf -13.2891 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(ed.)Tj -/TT17 1 Tf --20.1564 -2.4 TD -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9 0 TD -[( )-28767.8([Variable])]TJ --6.3333 -1.8444 TD -0.0656 Tw -(Controls how )Tj -/TT10 1 Tf -6.4119 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0656 Tw -[( treats the arguments in a "call" to a macro, i.e., where the )]TJ -/TT10 1 Tf -26.3947 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( of)]TJ --38.8076 -1.2889 TD -0.2411 Tw -[(the form is undefined, but has a macro definition. If )]TJ -/TT10 1 Tf -25.9896 0 TD -0 Tw -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.2411 Tw -[( is )]TJ -/TT10 1 Tf -1.6971 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2411 Tw -(, then)Tj --37.2883 -1.2889 TD -0.0533 Tw -(macros are treated as )Tj -/TT10 1 Tf -9.8188 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -0.0533 Tw -[( functions, i.e., the arguments are assumed to be evaluated,)]TJ --13.4194 -1.2889 TD -0.0344 Tw -(which means that )Tj -/TT10 1 Tf -8.1883 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0344 Tw -[( will descend into the argument list. If )]TJ -/TT10 1 Tf -17.6049 0 TD -0 Tw -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.0345 Tw -[( is)]TJ -/TT10 1 Tf --38.9954 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, macros are treated as )Tj -/TT10 1 Tf -10.1055 0 TD -(NLAMBDA)Tj -/TT8 1 Tf -4.2007 0 TD -( functions. )Tj -/TT10 1 Tf -5.1309 0 TD -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9.0015 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --38.3898 -2.4 TD -(INFO)Tj -/TT8 1 Tf -2.4 0 TD -( )Tj -32.7544 0 TD -([Property Name])Tj --32.4878 -1.8444 TD -0.1911 Tw -(Used to inform )Tj -/TT10 1 Tf -7.5167 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1911 Tw -[( of nonstandard behavior of particular forms with respect to)]TJ --11.7174 -1.2889 TD -0.0367 Tw -[(evaluation, binding of arguments, etc. The )]TJ -/TT10 1 Tf -19.4559 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -[( property of a symbol is a single atom or)]TJ --21.8563 -1.2889 TD -0 Tw -(list of atoms chosen from among the following:)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -64 0 obj -<< -/Length 6173 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT17 1 Tf -9 0 0 9 194.4 569.54 Tm -(EVAL)Tj -/TT8 1 Tf -3.7333 0 TD -(Informs )Tj -/TT10 1 Tf -3.9395 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.19 Tw -[( \(and CLISP and Masterscope\) that an)]TJ --8.1402 -1.2889 TD -0.0033 Tw -(nlambda function )Tj -/TT13 1 Tf -8.1336 0 TD -0 Tw -(does)Tj -/TT8 1 Tf -1.7222 0 TD -0.0002 Tc -0.0031 Tw -( evaluate its arguments. Can also be)Tj --9.8558 -1.2222 TD -0 Tc -0.3522 Tw -(placed on a macro name to override the behavior of)Tj -/TT10 1 Tf -T* -0 Tw -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9.0015 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT17 1 Tf --16.8352 -1.8444 TD -(NOEVAL)Tj -/TT8 1 Tf -4.9333 0 TD -(Informs )Tj -/TT10 1 Tf -3.8151 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0656 Tw -[( that a macro does )]TJ -/TT13 1 Tf -8.6393 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0656 Tw -[( evaluate all of its)]TJ --17.9881 -1.2889 TD -0 Tw -(arguments, even when )Tj -/TT10 1 Tf -10.3301 0 TD -(DWIMINMACROSFLG)Tj -/TT8 1 Tf -9.0015 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --25.3651 -1.8444 TD -(BINDS)Tj -/TT8 1 Tf -4.3333 0 TD -0.0556 Tw -(Placed on the )Tj -/TT10 1 Tf -6.3605 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0556 Tw -[( property of a function or the )]TJ -/TT10 1 Tf -13.4524 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0556 Tw -[( of a)]TJ --24.0136 -1.2889 TD -0.0589 Tw -(special form to inform )Tj -/TT10 1 Tf -10.3239 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0589 Tw -[( that the function or form)]TJ --14.5246 -1.2889 TD -0.0367 Tw -[(binds variables. In this case, )]TJ -/TT10 1 Tf -13.0677 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0367 Tw -[( assumes that )]TJ -/TT10 1 Tf -6.3307 0 TD -0 Tw -(CADR)Tj -/TT8 1 Tf --23.599 -1.2889 TD -0.0167 Tw -(of the form is the variable list, i.e., a list of symbols, or lists)Tj -0 -1.2222 TD -0.0078 Tw -(of the form )Tj -/TT10 1 Tf -5.1962 0 TD -0 Tw -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(VAL)Tj -/TT10 1 Tf -1.8003 0 TD -( )Tj -/TT19 1 Tf -0.619 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0078 Tw -(. )Tj -/TT10 1 Tf -0.7656 0 TD -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5078 0 TD -(NLAMBDA)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5078 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0078 Tw -(, and)Tj -/TT10 1 Tf --23.7989 -1.2889 TD -0 Tw -(RESETVARS)Tj -/TT8 1 Tf -5.4009 0 TD -( are handled in this fashion.)Tj -/TT17 1 Tf --10.3342 -1.8444 TD -(LABELS)Tj -/TT8 1 Tf -4.9333 0 TD -(Informs )Tj -/TT10 1 Tf -4.2017 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.4522 Tw -[( that the form interprets top-level)]TJ --9.0025 -1.2889 TD -0.0778 Tw -(symbols as labels, so that )Tj -/TT10 1 Tf -11.7317 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0778 Tw -[( will never introduce)]TJ --16.5324 -1.2889 TD -0.1811 Tw -(an atom \(by packing\) at the top level of the expression.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( is handled in this fashion.)Tj -/TT17 1 Tf --16.4004 -2.4 TD -(NOFIXFNSLST)Tj -/TT8 1 Tf -6.6011 0 TD --0.0001 Tc --0.001 Tw -[( )-31168.9([Variable])]TJ --3.9344 -1.8444 TD -0 Tc -0 Tw -(List of functions that )Tj -/TT10 1 Tf -9.396 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( will not try to correct.)Tj -/TT17 1 Tf --16.2633 -2.4 TD -(NOFIXVARSLST)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -(List of variables that )Tj -/TT10 1 Tf -9.2632 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( will not try to correct.)Tj -/TT17 1 Tf --16.1305 -2.4 TD -(NOSPELLFLG)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.0255 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6056 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1056 Tw -[( will not perform any spelling corrections. Initially )]TJ -/TT10 1 Tf -23.7332 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1056 Tw -(. )Tj -/TT10 1 Tf -0.9611 0 TD -0 Tw -(NOSPELLFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.1056 Tw -[( is)]TJ --38.9274 -1.2889 TD -0.3056 Tw -(reset to )Tj -/TT10 1 Tf -4.0862 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3056 Tw -[( when compiling functions whose definitions are obtained from a file, as)]TJ --4.6863 -1.2889 TD -0 Tw -(opposed to being in core.)Tj -/TT17 1 Tf --2.6667 -2.3333 TD -(CLISPHELPFLG)Tj -/TT8 1 Tf -7.2012 0 TD --0.0001 Tc --0.0011 Tw -[( )-30569([Variable])]TJ --4.5345 -1.8444 TD -0 Tc -0 Tw -(If )Tj -/TT10 1 Tf -0.9677 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5478 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0478 Tw -[( will not ask you for approval of any CLISP transformations. Instead, in)]TJ --7.5165 -1.2889 TD -0.0778 Tw -(those situations where approval would be required, the effect is the same as though you)Tj -0 -1.2222 TD -0 Tw -(had been asked and said )Tj -/TT10 1 Tf -11.1245 0 TD -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -(. Initially )Tj -/TT10 1 Tf -4.4653 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --20.0568 -2.4 TD -(DWIMIFYCOMPFLG)Tj -/TT8 1 Tf -8.4014 0 TD --0.0001 Tc --0.0013 Tw -[( )-29369.2([Variable])]TJ --5.7347 -1.8444 TD -0 Tc -0 Tw -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( is called before compiling an expression. Initially )Tj -/TT10 1 Tf -22.3848 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT17 1 Tf --33.0724 -2.4 TD -(DWIMCHECK#ARGSFLG)Tj -/TT8 1 Tf -10.2 0 TD -[( )-27567.8([Variable])]TJ --7.5333 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, causes )Tj -/TT10 1 Tf -3.6235 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( to check for too many arguments in a form. Initially )Tj -/TT10 1 Tf -23.583 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --36.194 -2.4 TD -(DWIMCHECKPROGLABELSFLG)Tj -/TT8 1 Tf -13.2 0 TD -[( )-24567.8([Variable])]TJ --10.5333 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9744 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0544 Tw -(, causes )Tj -/TT10 1 Tf -3.7324 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0544 Tw -[( to check whether a )]TJ -/TT10 1 Tf -9.0764 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0544 Tw -[( label contains a CLISP character. Initially)]TJ -/TT10 1 Tf --20.9844 -1.2889 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -67 0 obj -<< -/Length 8407 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 569.54 Tm -(DWIMESSGAG)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, suppresses all )Tj -/TT10 1 Tf -6.9355 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -( error messages. Initially )Tj -/TT10 1 Tf -11.3437 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT17 1 Tf --28.467 -2.4 TD -(CLISPRETRANFLG)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ --5.7333 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.0299 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.11 Tw -(, informs )Tj -/TT10 1 Tf -4.4236 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.11 Tw -[( to \(re\)translate all expressions which have remote translations in)]TJ --10.2543 -1.2889 TD -0 Tw -(the CLISP hash array. Initially )Tj -/TT10 1 Tf -13.8223 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 460.2 Tm -(CLISPIFY)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 457.49 m -558.01 457.49 l -S -BT -/TT10 1 Tf -9 0 0 9 126 435.54 Tm -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.01 Tw -[( converts Interlisp expressions to CLISP. Note that the expression given to )]TJ -/TT10 1 Tf -33.3209 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.01 Tw -[( need)]TJ -/TT13 1 Tf --42.9225 -1.2889 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1067 Tw -[( have originally been input as CLISP, i.e., )]TJ -/TT10 1 Tf -19.2547 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1067 Tw -[( can be used on functions that were written)]TJ --25.3885 -1.2889 TD -0.0311 Tw -(before CLISP was even implemented. )Tj -/TT10 1 Tf -17.275 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[( is cognizant of declaration rules as well as all of the)]TJ --22.0758 -1.2889 TD -0.0067 Tw -[(precedence rules. For example, )]TJ -/TT10 1 Tf -14.214 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0067 Tw -[( will convert )]TJ -/TT10 1 Tf -5.8139 0 TD -0.0156 Tw -(\(IPLUS A \(ITIMES B C\)\))Tj -/TT8 1 Tf -13.2644 0 TD -0.0067 Tw -[( into )]TJ -/TT10 1 Tf -2.2584 0 TD -0 Tw -(A+B*C)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -(, but)Tj -/TT10 1 Tf --43.352 -1.2889 TD -0.0811 Tw -(\(ITIMES A \(IPLUS B C\)\))Tj -/TT8 1 Tf -13.5266 0 TD -0.0333 Tw -[( into )]TJ -/TT10 1 Tf -2.3118 0 TD -0 Tw -(A*\(B+C\))Tj -/TT8 1 Tf -4.2007 0 TD -0.0333 Tw -(. )Tj -/TT10 1 Tf -0.8167 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0333 Tw -[( handles such cases by first )]TJ -/TT10 1 Tf -12.3704 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0333 Tw -(ing the)Tj --42.2276 -1.2889 TD -0.0278 Tw -(expression. )Tj -/TT10 1 Tf -5.5424 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0278 Tw -[( also knows how to handle expressions consisting of a mixture of Interlisp and)]TJ --10.3432 -1.2889 TD -0.2322 Tw -(CLISP, e.g., )Tj -/TT10 1 Tf -5.7852 0 TD -0.5567 Tw -(\(IPLUS A B*C\))Tj -/TT8 1 Tf -8.9146 0 TD -0.2322 Tw -[( is converted to )]TJ -/TT10 1 Tf -7.9426 0 TD -0 Tw -(A+B*C)Tj -/TT8 1 Tf -3.0005 0 TD -0.2322 Tw -(, but )Tj -/TT10 1 Tf -2.6969 0 TD -0.5567 Tw -(\(ITIMES A B+C\))Tj -/TT8 1 Tf -9.5147 0 TD -0.2322 Tw -[( to )]TJ -/TT10 1 Tf -1.8365 0 TD -0 Tw -(\(A*\(B+C\)\))Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --45.0919 -1.2889 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0022 Tw -( converts calls to the six basic mapping functions, )Tj -/TT10 1 Tf -22.0776 0 TD -0 Tw -(MAP)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5022 0 TD -(MAPC)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5022 0 TD -(MAPCAR)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5022 0 TD -(MAPLIST)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5022 0 TD -(MAPCONC)Tj -/TT8 1 Tf -4.2007 0 TD -(,)Tj --45.0899 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.994 0 TD -(MAPCON)Tj -/TT8 1 Tf -3.6006 0 TD -0.0511 Tw -[(, into equivalent iterative statements. It also converts certain easily recognizable internal)]TJ -/TT10 1 Tf --5.5946 -1.2889 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0589 Tw -[( loops to the corresponding iterative statements. )]TJ -/TT10 1 Tf -22.2411 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0589 Tw -[( can convert all iterative statements)]TJ --29.4423 -1.2889 TD -0.0178 Tw -(input in CLISP back to CLISP, regardless of how complicated the translation was, because the original)Tj -0 -1.2222 TD -0 Tw -(CLISP is saved.)Tj -/TT10 1 Tf -0 -2.8889 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2256 Tw -[( is not destructive to the original Interlisp expression, i.e., )]TJ -/TT10 1 Tf -27.8117 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2256 Tw -[( produces a new)]TJ --37.4133 -1.2889 TD -0.0244 Tw -[(expression without changing the original. The new expression may however contain some "pieces" of)]TJ -0 -1.2222 TD -0.1133 Tw -(the original, since )Tj -/TT10 1 Tf -8.3991 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1133 Tw -[( attempts to minimize the number of )]TJ -/TT10 1 Tf -17.2416 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1133 Tw -(es by not copying structure)Tj --32.8418 -1.2889 TD -0 Tw -(whenever possible.)Tj -/TT10 1 Tf -0 -2.8889 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1767 Tw -[( will not convert expressions appearing as arguments to )]TJ -/TT10 1 Tf -26.548 0 TD -0 Tw -(NLAMBDA)Tj -/TT8 1 Tf -4.2007 0 TD -0.1767 Tw -[( functions, except for)]TJ --35.5495 -1.2889 TD -0.0344 Tw -(those functions whose )Tj -/TT10 1 Tf -10.2059 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( property is or contains the atom )]TJ -/TT10 1 Tf -14.8832 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[(. )]TJ -/TT10 1 Tf -1.1033 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0344 Tw -[( also contains built in)]TJ --35.794 -1.2889 TD -0.0533 Tw -(information enabling it to process special forms such as )Tj -/TT10 1 Tf -25.228 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -0.0533 Tw -[(, etc. If the )]TJ -/TT10 1 Tf -5.3228 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[( property is)]TJ --40.1057 -1.2889 TD -0.0211 Tw -(or contains the atom )Tj -/TT10 1 Tf -9.3623 0 TD -0 Tw -(LABELS)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5211 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0211 Tw -[( will never create an atom \(by packing\) at the top level of the)]TJ --18.2848 -1.2889 TD -0 Tw -(expression. )Tj -/TT10 1 Tf -5.4868 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -( is handled in this fashion.)Tj --4.5539 -2.0667 TD -0.1356 Tw -[(Note: )-515.6(Disabling a CLISP operator with )]TJ -/TT10 1 Tf -18.6303 0 TD -0 Tw -(CLDISABLE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1356 Tw -[( \(see the Miscellaneous Functions)]TJ --20.6978 -1.2889 TD -0.6833 Tw -(and Variables section\) will also disable the corresponding )Tj -/TT10 1 Tf -31.1952 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf --31.1952 -1.2889 TD -0.0689 Tw -[(transformation. Thus, if )]TJ -/TT11 1 Tf -11.2502 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0689 Tw -[( is "turned off", )]TJ -/TT10 1 Tf -7.1906 0 TD -0 Tw -(A)Tj -/TT11 1 Tf -0.6001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0689 Tw -[( will not transform to )]TJ -/TT10 1 Tf -10.0114 0 TD -0.1656 Tw -(\(SETQ A)Tj --31.626 -1.2889 TD -0 Tw -(B\))Tj -/TT8 1 Tf -1.2002 0 TD -(, nor vice versa.)Tj -/TT10 1 Tf --5.2002 -2.4 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLISPIFY)Tj -/TT15 1 Tf -4.8008 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(X)Tj -/TT13 1 Tf -0.6001 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(EDITCHAIN)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25068([Function])]TJ --9.8353 -1.8444 TD -(Clispifies )Tj -/TT19 1 Tf -4.3993 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[(. If )]TJ -/TT19 1 Tf -1.7166 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( is an atom and )]TJ -/TT19 1 Tf -7.0724 0 TD -0 Tw -(EDITCHAIN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0156 Tw -[( is )]TJ -/TT10 1 Tf -1.246 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT19 1 Tf -0.5156 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( is treated as the name of a function,)]TJ --23.9513 -1.2889 TD -0.1944 Tw -(and its definition \(or )Tj -/TT10 1 Tf -10.1176 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1944 Tw -[( property\) is clispified. After )]TJ -/TT10 1 Tf -14.2306 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1944 Tw -[( has finished, )]TJ -/TT19 1 Tf -6.682 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1944 Tw -[( is)]TJ --38.8315 -1.2889 TD -0.0233 Tw -(redefined \(using )Tj -/TT10 1 Tf -7.5955 0 TD -0 Tw -(/PUTD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[(\) with its new CLISP definition. The value of )]TJ -/TT10 1 Tf -20.394 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0233 Tw -[( is )]TJ -/TT19 1 Tf -1.2615 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[(. If )]TJ -/TT19 1 Tf -1.7399 0 TD -0 Tw -(X)Tj -ET -endstream -endobj -68 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -70 0 obj -<< -/Length 8075 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-19)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0478 Tw -[(is atomic and not the name of a function, spelling correction is attempted. If this fails, an)]TJ -0 -1.2222 TD -0 Tw -(error is generated.)Tj -0 -2 TD -(If )Tj -/TT19 1 Tf -1.1388 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2189 Tw -[( is a list, or )]TJ -/TT19 1 Tf -6.0822 0 TD -0 Tw -(EDITCHAIN)Tj -/TT8 1 Tf -5.4009 0 TD -0.2189 Tw -[( is not )]TJ -/TT10 1 Tf -3.5756 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT19 1 Tf -0.7189 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2189 Tw -[( itself is the expression to be clispified. If)]TJ -/TT19 1 Tf --19.9169 -1.2889 TD -0 Tw -(EDITCHAIN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0322 Tw -[( is not )]TJ -/TT10 1 Tf -3.0156 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0322 Tw -(, it is the edit push-down list leading to )Tj -/TT19 1 Tf -17.8462 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -[( and is used to determine)]TJ --28.663 -1.2889 TD -0.0656 Tw -(context as with )Tj -/TT10 1 Tf -7.1229 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0656 Tw -[(, as well as to obtain the local declarations, if any. The value of)]TJ -/TT10 1 Tf --11.3236 -1.2889 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -( is the clispified version of )Tj -/TT19 1 Tf -11.8184 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --19.8859 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLISPIFYFNS)Tj -/TT10 1 Tf -6.6011 0 TD -( )Tj -/TT19 1 Tf -0.6001 0 TD -(FN)Tj -1.1987 -0.3333 TD -(1)Tj -/TT13 1 Tf -0.6 0.3333 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(...)Tj -/TT13 1 Tf -1.8003 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 230.7009 482.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 359.33 482.8 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -(Like )Tj -/TT10 1 Tf -2.187 0 TD -(DWIMIFYFNS)Tj -/TT8 1 Tf -6.001 0 TD -( except calls )Tj -/TT10 1 Tf -5.5449 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT17 1 Tf --30.2428 -2.5489 TD -(CL:FLG)Tj -/TT6 1 Tf -10 0 0 10 134.4 440.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 440.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -(Affects )Tj -/TT10 1 Tf -3.4189 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0522 Tw -(s handling of forms beginning with )Tj -/TT10 1 Tf -16.4754 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5522 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5522 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(CDDDDR)Tj -/TT8 1 Tf -3.6006 0 TD -0.0522 Tw -(, as well as)Tj --35.1033 -1.2889 TD -0.0856 Tw -[(pattern match and record expressions. If )]TJ -/TT10 1 Tf -18.9478 0 TD -0 Tw -(CL:FLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.0856 Tw -[( is )]TJ -/TT10 1 Tf -1.3883 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0856 Tw -(, these are not transformed into)Tj --25.737 -1.2889 TD -0.3967 Tw -(the equivalent )Tj -/TT15 1 Tf -7.3568 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.25 0 TD -0.3967 Tw -[( expressions. This will prevent )]TJ -/TT10 1 Tf -16.3346 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.3967 Tw -[( from constructing any)]TJ --28.7422 -1.2889 TD -0.0044 Tw -(expression employing a )Tj -/TT15 1 Tf -10.7853 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.25 0 TD -0.0002 Tc -0.0042 Tw -( infix operator, e.g., )Tj -/TT10 1 Tf -8.8542 0 TD -0 Tc -0.0111 Tw -(\(CADR X\))Tj -/TT8 1 Tf -4.8119 0 TD -0.0002 Tc -0.0042 Tw -( will not be transformed to )Tj -/TT10 1 Tf -12.0657 0 TD -0 Tc -0 Tw -(X:2)Tj -/TT8 1 Tf -1.8003 0 TD -0.0009 Tc -0.0035 Tw -(. If)Tj -/TT10 1 Tf --38.5674 -1.2889 TD -0 Tc -0 Tw -(CL:FLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.0533 Tw -[( is )]TJ -/TT10 1 Tf -1.3215 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0533 Tw -[( will convert to )]TJ -/TT15 1 Tf -7.1294 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.25 0 TD -0.0533 Tw -[( notation only when the argument is atomic or a)]TJ --18.2557 -1.2889 TD -0.0144 Tw -[(simple list \(a function name and one atomic argument\). If )]TJ -/TT10 1 Tf -26.0603 0 TD -0 Tw -(CL:FLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.0144 Tw -[( is )]TJ -/TT10 1 Tf -1.2437 0 TD -0 Tw -(ALL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5144 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0144 Tw -[( will)]TJ --38.0201 -1.2889 TD -0 Tw -(convert to )Tj -/TT15 1 Tf -4.709 0 TD -(:)Tj -/TT8 1 Tf -0.25 0 TD -( expressions whenever possible.)Tj -/TT10 1 Tf --4.959 -2 TD -(CL:FLG)Tj -/TT8 1 Tf -3.6006 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --11.7516 -2.5489 TD -(CLREMPARSFLG)Tj -/TT6 1 Tf -10 0 0 10 166.8105 313.12 Tm --0.0009 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 313.12 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.2078 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.7877 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2889 Tw -[( will remove parentheses in certain cases from simple forms, where)]TJ --7.3963 -1.2889 TD -0.06 Tw -[("simple" means a function name and one or two atomic arguments. For example, )]TJ -/TT10 1 Tf -37.0002 0 TD -0 Tw -(\(COND)Tj --37.0002 -1.2889 TD -0.6522 Tw -(\(\(ATOM X\) --\)\))Tj -/TT8 1 Tf -9.7058 0 TD -0.2722 Tw -[( will )]TJ -/TT10 1 Tf -2.7515 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.2722 Tw -[( to )]TJ -/TT10 1 Tf -1.9165 0 TD -0.6522 Tw -(\(IF ATOM X THEN --\))Tj -/TT8 1 Tf -14.0107 0 TD -0.2722 Tw -[(. However, if)]TJ -/TT10 1 Tf --33.1853 -1.2889 TD -0 Tw -(CLREMPARSFLG)Tj -/TT8 1 Tf -7.2012 0 TD -0.1644 Tw -[( is set to )]TJ -/TT10 1 Tf -4.4737 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6644 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1644 Tw -[( will produce )]TJ -/TT10 1 Tf -6.6291 0 TD -0.3956 Tw -(\(IF \(ATOM X\) THEN --\))Tj -/TT8 1 Tf -14.1843 0 TD -0 Tw -(.)Tj --39.7537 -1.2889 TD -(Regardless of the flag setting, the expression can be input in either form.)Tj -/TT10 1 Tf -0 -2 TD -(CLREMPARSFLG)Tj -/TT8 1 Tf -7.2012 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT17 1 Tf --16.5524 -2.5489 TD -(CLISPIFYPACKFLG)Tj -/TT6 1 Tf -10 0 0 10 183.0132 209.18 Tm --0.0012 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 209.18 Tm -0 Tc -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(CLISPIFYPACKFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.2311 Tw -[( affects the treatment of infix operators with atomic operands. If)]TJ -/TT10 1 Tf --9.0015 -1.2889 TD -0 Tw -(CLISPIFYPACKFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.1422 Tw -[( is )]TJ -/TT10 1 Tf -1.4993 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6422 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1422 Tw -[( will pack these into single atoms, e.g., )]TJ -/TT10 1 Tf -18.318 0 TD -0.3411 Tw -(\(IPLUS A)Tj --34.8618 -1.2889 TD -0.0111 Tw -(\(ITIMES B C\)\))Tj -/TT8 1 Tf -7.8235 0 TD -0.0005 Tc -0.0039 Tw -( becomes )Tj -/TT10 1 Tf -4.3165 0 TD -0 Tc -0 Tw -(A+B*C)Tj -/TT8 1 Tf -3.0005 0 TD -0.0007 Tc -0.0037 Tw -(. If )Tj -/TT10 1 Tf -1.6833 0 TD -0 Tc -0 Tw -(CLISPIFYPACKFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.0011 Tc -0.0033 Tw -( is )Tj -/TT10 1 Tf -1.2237 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0044 Tw -(, no packing is done, e.g.,)Tj --28.8492 -1.2889 TD -0 Tw -(the above becomes )Tj -/TT10 1 Tf -8.5879 0 TD -(A + B * C)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --13.9888 -2.0667 TD -(CLISPIFYPACKFLG)Tj -/TT8 1 Tf -9.0015 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --17.1525 -2.5489 TD -(CLISPIFYUSERFN)Tj -/TT6 1 Tf -10 0 0 10 177.6 116.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 116.24 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -0.9599 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -(, causes the function )Tj -/TT10 1 Tf -9.3778 0 TD -0 Tw -(CLISPIFYUSERFN)Tj -/TT8 1 Tf -8.4014 0 TD -0.04 Tw -(, which should be a function of one argument,)Tj --19.3392 -1.2889 TD -0.1711 Tw -(to be called on each form \(list\) not otherwise recognized by )Tj -/TT10 1 Tf -28.2421 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1711 Tw -[(. If a non-)]TJ -/TT10 1 Tf -5.1473 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf --38.1902 -1.2889 TD -(value is returned, it is treated as the clispified form. Initially )Tj -/TT10 1 Tf -26.96 0 TD -(NIL)Tj -/TT8 1 Tf --26.96 -2.0667 TD -(Note that )Tj -/TT10 1 Tf -4.4165 0 TD -(CLISPIFYUSERFN)Tj -/TT8 1 Tf -8.4014 0 TD -( must be both set and defined to use this feature.)Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -73 0 obj -<< -/Length 7105 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT17 1 Tf -9 0 0 9 150 568.2 Tm -(FUNNYATOMLST)Tj -/TT6 1 Tf -10 0 0 10 214.8 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0056 Tw -(Suppose you have variables named )Tj -/TT10 1 Tf -15.9404 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5056 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -(, and )Tj -/TT10 1 Tf -2.454 0 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[(. If )]TJ -/TT10 1 Tf -1.6866 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0056 Tw -[( were to convert )]TJ -/TT10 1 Tf -7.4182 0 TD -0 Tw -(\(ITIMES)Tj --35.806 -1.2889 TD -0.0233 Tw -(A B\))Tj -/TT8 1 Tf -2.4237 0 TD -0.01 Tw -[( to )]TJ -/TT10 1 Tf -1.3921 0 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.51 0 TD -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[( would not translate back correctly to )]TJ -/TT10 1 Tf -16.7834 0 TD -0.0233 Tw -(\(ITIMES A B\))Tj -/TT8 1 Tf -7.2478 0 TD -0.01 Tw -(, since it would be)Tj --31.9576 -1.2889 TD -0.0078 Tw -[(the name of a variable, and therefore would not cause an error. You can prevent this from)]TJ -0 -1.2222 TD -0.1767 Tw -(happening by adding )Tj -/TT10 1 Tf -10.3147 0 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.1767 Tw -[( to the list )]TJ -/TT10 1 Tf -5.298 0 TD -0 Tw -(FUNNYATOMLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.1767 Tw -[(. Then, )]TJ -/TT10 1 Tf -4.0359 0 TD -0.4233 Tw -(\(ITIMES A B\))Tj -/TT8 1 Tf -8.0478 0 TD -0.1767 Tw -[( would)]TJ -/TT10 1 Tf --36.6978 -1.2889 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -( to )Tj -/TT10 1 Tf -1.3721 0 TD -(A * B)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --9.1733 -2.0667 TD -0.1389 Tw -(Note that )Tj -/TT10 1 Tf -4.6943 0 TD -0 Tw -(A*B)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -(s appearance on )Tj -/TT10 1 Tf -8.0773 0 TD -0 Tw -(FUNNYATOMLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.1389 Tw -[( would )]TJ -/TT13 1 Tf -3.6625 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1389 Tw -[( enable DWIM and CLISP to)]TJ --26.7686 -1.2889 TD -0 Tw -(decode )Tj -/TT10 1 Tf -3.455 0 TD -(A*B+C)Tj -/TT8 1 Tf -3.0005 0 TD -0.0356 Tw -[( as )]TJ -/TT10 1 Tf -1.4949 0 TD -0.0844 Tw -(\(IPLUS A*B C\))Tj -/TT8 1 Tf -7.9702 0 TD -0 Tw -(; )Tj -/TT10 1 Tf -0.5356 0 TD -(FUNNYATOMLST)Tj -/TT8 1 Tf -7.2012 0 TD -0.0356 Tw -[( is used only by )]TJ -/TT10 1 Tf -7.3438 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0355 Tw -[(. Thus, if)]TJ --35.8019 -1.2889 TD -0.0333 Tw -(an identifier contains a CLISP character, it should always be separated \(with spaces\) from)Tj -0 -1.2222 TD -0.0767 Tw -[(other operators. For example, if )]TJ -/TT10 1 Tf -14.8702 0 TD -0 Tw -(X*)Tj -/TT8 1 Tf -1.2002 0 TD -0.0767 Tw -[( is a variable, you should write)]TJ -/TT15 1 Tf -14.086 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.3267 0 TD -0.1844 Tw -(\(SETQ X*)Tj -/TT15 1 Tf -4.9852 0 TD -0 Tw -( )Tj -/TT19 1 Tf -0.3267 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0767 Tw -[( in)]TJ --38.7954 -1.2889 TD -0.2078 Tw -(CLISP as )Tj -/TT10 1 Tf -4.625 0 TD -0 Tw -(X*)Tj -/TT15 1 Tf -1.2002 0 TD -( )Tj -/TT11 1 Tf -0.4578 0 TD -<0040>Tj -/TT19 1 Tf -0.9868 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2078 Tw -(, not )Tj -/TT10 1 Tf -2.6197 0 TD -0 Tw -(X*)Tj -/TT11 1 Tf -1.2002 0 TD -<0040>Tj -/TT19 1 Tf -0.9868 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2078 Tw -[(. In general, it is best to avoid use of identifiers)]TJ --16.8773 -1.2889 TD -0 Tw -(containing CLISP character operators as much as possible.)Tj -/TT4 1 Tf -10 0 0 10 102 387.46 Tm -(Miscellaneous Functions and Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 384.75 m -558.01 384.75 l -S -BT -/TT17 1 Tf -9 0 0 9 150 366.46 Tm -(CLISPFLG)Tj -/TT6 1 Tf -10 0 0 10 193.2 366.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 366.46 Tm -([Variable])Tj --35.6011 -1.8445 TD -(If )Tj -/TT10 1 Tf -0.961 0 TD -(CLISPFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.2911 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2911 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -(, disables all CLISP infix or prefix transformations \(but does not affect)Tj -/TT10 1 Tf --8.7444 -1.2889 TD -0 Tw -(IF/THEN/ELSE)Tj -/TT8 1 Tf -7.2012 0 TD -( statements, or iterative statements\).)Tj --7.2012 -2.0667 TD -(If )Tj -/TT10 1 Tf -0.9921 0 TD -(CLISPFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.3222 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3222 0 TD -(TYPE-IN)Tj -/TT8 1 Tf -4.2007 0 TD -0.0722 Tw -(, CLISP transformations are performed only on expressions that)Tj --11.2382 -1.2889 TD -0 Tw -(are typed in for evaluation, i.e., not on user programs.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -0.9199 0 TD -(CLISPFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, CLISP transformations are performed on all expressions.)Tj --7.4209 -2.0667 TD -0.0789 Tw -(The initial value for )Tj -/TT10 1 Tf -9.2736 0 TD -0 Tw -(CLISPFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0789 Tw -[( is )]TJ -/TT10 1 Tf -1.3726 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -(. )Tj -/TT10 1 Tf -0.9078 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0789 Tw -(ing anything will cause )Tj -/TT10 1 Tf -10.8771 0 TD -0 Tw -(CLISPFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0789 Tw -[( to be)]TJ --37.4335 -1.2889 TD -0 Tw -(set to )Tj -/TT10 1 Tf -2.6011 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --5.8678 -2.5489 TD -(CLISPCHARS)Tj -/TT6 1 Tf -10 0 0 10 204.0088 236.92 Tm --0.0007 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 236.92 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.0278 Tw -[(A list of the operators that can appear in the interior of an atom. Currently )]TJ -/TT10 1 Tf -33.7364 0 TD -0.0656 Tw -(\(+ - * / )Tj -/TT11 1 Tf -5.6631 0 TD -0 Tw -<0042>Tj -/TT10 1 Tf --39.3995 -1.2889 TD -(~ = )Tj -/TT11 1 Tf -3.6006 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( : < > +- ~= @ !\))Tj -/TT8 1 Tf -10.2017 0 TD -(.)Tj -/TT17 1 Tf --17.4557 -2.5489 TD -(CLISPCHARRAY)Tj -/TT6 1 Tf -10 0 0 10 214.8 185.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 185.78 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2211 Tw -(A bit table of the characters on )Tj -/TT10 1 Tf -15.2782 0 TD -0 Tw -(CLISPCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.2211 Tw -[( used for calls to )]TJ -/TT10 1 Tf -8.568 0 TD -0 Tw -(STRPOSL)Tj -/TT8 1 Tf -4.2007 0 TD -0.2211 Tw -[( \(Chapter 4\).)]TJ -/TT10 1 Tf --34.0479 -1.2889 TD -0 Tw -(CLISPCHARRAY)Tj -/TT8 1 Tf -7.2012 0 TD -0.1033 Tw -[( is initialized by performing )]TJ -/TT10 1 Tf -13.105 0 TD -0.2478 Tw -(\(SETQ CLISPCHARRAY \(MAKEBITTABLE)Tj --20.3062 -1.2889 TD -0 Tw -(CLISPCHARS\)\))Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT17 1 Tf --9.8678 -2.5489 TD -(CLISPINFIXSPLST)Tj -/TT10 1 Tf -9.0015 0 TD -( )Tj -/TT6 1 Tf -10 0 0 10 236.414 123.04 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 123.04 Tm -([Variable])Tj --35.6011 -1.8444 TD -(A list of infix operators used for spelling correction.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(CLISPARRAY)Tj -/TT6 1 Tf -10 0 0 10 204.0088 84.1 Tm -[( )-28219.5([Variable])]TJ -/TT8 1 Tf -9 0 0 9 174 67.5 Tm -0.0633 Tw -(Hash array used for storing CLISP translations. )Tj -/TT10 1 Tf -21.9242 0 TD -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -0.0633 Tw -[( is checked by )]TJ -/TT10 1 Tf -6.6723 0 TD -0 Tw -(FAULTEVAL)Tj -/TT8 1 Tf --34.5974 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(FAULTAPPLY)Tj -/TT8 1 Tf -6.001 0 TD -( on erroneous forms before calling DWIM, and by the compiler.)Tj -ET -endstream -endobj -74 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -76 0 obj -<< -/Length 6765 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-21)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLEARCLISPARRAY)Tj -/TT10 1 Tf -8.9999 0 TD -( )Tj -/TT19 1 Tf -0.6001 0 TD -(NAME)Tj -/TT13 1 Tf -2.4004 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(--)Tj -/TT10 1 Tf -1.2002 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 239.2579 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0678 Tw -(Macro and CLISP expansions are cached in )Tj -/TT10 1 Tf -19.785 0 TD -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -0.0678 Tw -(, the systems CLISP hash array.)Tj --25.786 -1.2889 TD -0.0344 Tw -(When anything changes that would invalidate an expansion, it needs to be removed from)Tj -0 -1.2222 TD -0.25 Tw -(the cache. )Tj -/TT10 1 Tf -5.0859 0 TD -0 Tw -(CLEARCLISPARRAY)Tj -/TT8 1 Tf -9.0015 0 TD -0.25 Tw -[( does this for you. The system does this automatically)]TJ --14.0874 -1.2889 TD -0.1178 Tw -[(whenever you define redefine a CLISP or macro form. If you have changed something)]TJ -0 -1.2222 TD -0.0078 Tw -(that a CLISP word or a macro depends on the system will not be able to detect this, so you)Tj -T* -0.0411 Tw -(will have to invalidate the cahce by calling )Tj -/TT10 1 Tf -19.3704 0 TD -0 Tw -(CLEARCLISPARRAY.)Tj -/TT8 1 Tf -9.6016 0 TD -0.0411 Tw -[( You can clear the whole)]TJ --28.972 -1.2889 TD -0 Tw -(cache by calling )Tj -/TT10 1 Tf -7.2632 0 TD -(\(CLRHASH CLISPARRAY\).)Tj --9.9298 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLISPTRAN)Tj -/TT10 1 Tf -5.3999 0 TD -( )Tj -/TT19 1 Tf -0.6001 0 TD -(X)Tj -/TT13 1 Tf -0.6001 0 TD -( )Tj -/TT19 1 Tf -0.25 0 TD -(TRAN)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 201.457 460.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 460.86 Tm -([Function])Tj --35.4033 -1.8444 TD -(Gives )Tj -/TT19 1 Tf -3.1975 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.4256 Tw -[( the translation )]TJ -/TT19 1 Tf -8.1771 0 TD -0 Tw -(TRAN)Tj -/TT8 1 Tf -2.4004 0 TD -0.4256 Tw -[( by storing \(key )]TJ -/TT19 1 Tf -8.856 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.4256 Tw -(, value )Tj -/TT19 1 Tf -4.0391 0 TD -0 Tw -(TRAN)Tj -/TT8 1 Tf -2.4004 0 TD -0.4256 Tw -(\) in the hash array)Tj -/TT10 1 Tf --30.2707 -1.2889 TD -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -0.0756 Tw -(. )Tj -/TT10 1 Tf -0.9011 0 TD -0 Tw -(CLISPTRAN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0756 Tw -[( is called for all CLISP translations, via a non-linked, external)]TJ --12.303 -1.2889 TD -0 Tw -(function call, so it can be advised.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLISPDEC)Tj -/TT4 1 Tf -10 0 0 10 150.6 398.72 Tm -( )Tj -/TT19 1 Tf -9 0 0 9 153.3783 398.72 Tm -(DECLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 191.1844 398.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 398.72 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0856 Tw -(Puts into effect the declarations in )Tj -/TT19 1 Tf -15.7585 0 TD -0 Tw -(DECLST)Tj -/TT8 1 Tf -3.6006 0 TD -0.0856 Tw -(. )Tj -/TT10 1 Tf -0.9211 0 TD -0 Tw -(CLISPDEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.0856 Tw -[( performs spelling corrections on)]TJ --25.0809 -1.2889 TD -0 Tw -(words not recognized as declarations. )Tj -/TT10 1 Tf -17.209 0 TD -(CLISPDEC)Tj -/TT8 1 Tf -4.8008 0 TD -( is undoable.)Tj -/TT10 1 Tf --24.6764 -2.5489 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(CLDISABLE)Tj -/TT10 1 Tf -5.3999 0 TD -( )Tj -/TT19 1 Tf -0.6001 0 TD -(OP)Tj -/TT10 1 Tf -1.2002 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 183.0044 347.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 347.58 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0156 Tw -(Disables the CLISP operator )Tj -/TT19 1 Tf -12.759 0 TD -0 Tw -(OP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0156 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8083 0 TD -0.0367 Tw -(\(CLDISABLE -\))Tj -/TT8 1 Tf -8.438 0 TD -0.0156 Tw -[( makes )]TJ -/TT10 1 Tf -3.3729 0 TD -0 Tw -(-)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( be just another)]TJ --33.1786 -1.2889 TD -0.1556 Tw -(character. )Tj -/TT10 1 Tf -5.1261 0 TD -0 Tw -(CLDISABLE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1556 Tw -[( can be used on all CLISP operators, e.g., infix operators, prefix)]TJ --10.5269 -1.2889 TD -0 Tw -(operators, iterative statement operators, etc. )Tj -/TT10 1 Tf -19.9004 0 TD -(CLDISABLE)Tj -/TT8 1 Tf -5.4009 0 TD -( is undoable.)Tj --22.6346 -2.0667 TD -0.03 Tw -[(Note:)-901.2(Simply removing a character operator from )]TJ -/TT10 1 Tf -22.967 0 TD -0 Tw -(CLISPCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.03 Tw -[( will prevent)]TJ --25.6346 -1.2889 TD -0.0133 Tw -(it from being treated as a CLISP operator when it appears as part of an)Tj -0 -1.2222 TD -0.24 Tw -(atom, but it will continue to be an operator when it appears as a)Tj -T* -0 Tw -(separate atom, e.g. \()Tj -/TT10 1 Tf -8.8272 0 TD -(FOO + X)Tj -/TT8 1 Tf -4.2007 0 TD -(\) vs )Tj -/TT10 1 Tf -1.8218 0 TD -(FOO+X)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT17 1 Tf --26.5168 -2.5489 TD -(CLISPIFTRANFLG)Tj -/TT6 1 Tf -10 0 0 10 177.6 232.64 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 232.64 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1111 Tw -(Affects handling of translations of )Tj -/TT10 1 Tf -15.8622 0 TD -0 Tw -(IF-THEN-ELSE)Tj -/TT8 1 Tf -7.2012 0 TD -0.1111 Tw -[( statements \(see Chapter 9\). If )]TJ -/TT10 1 Tf -14.3369 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1111 Tw -(, the)Tj --38.0003 -1.2889 TD -0.3633 Tw -[(translations are stored elsewhere, and the \(modified\) CLISP retained. If )]TJ -/TT10 1 Tf -35.9395 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3633 Tw -(, the)Tj --37.7398 -1.2889 TD -0 Tw -(corresponding )Tj -/TT10 1 Tf -6.7017 0 TD -(COND)Tj -/TT8 1 Tf -2.4004 0 TD -( expression replaces the CLISP. Initially )Tj -/TT10 1 Tf -17.9878 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT17 1 Tf --30.3566 -2.5489 TD -(CLISPIFYPRETTYFLG)Tj -/TT6 1 Tf -10 0 0 10 193.8 169.9 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 169.9 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.3522 Tw -(If non-)Tj -/TT10 1 Tf -3.3151 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3522 Tw -(, causes )Tj -/TT10 1 Tf -4.328 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.3522 Tw -[( \(and therefore )]TJ -/TT10 1 Tf -7.8467 0 TD -0 Tw -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -0.3522 Tw -[( and )]TJ -/TT10 1 Tf -2.8973 0 TD -0 Tw -(MAKEFILE)Tj -/TT8 1 Tf -4.8008 0 TD -0.3522 Tw -(\) to )Tj -/TT10 1 Tf -2.4095 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf --35.199 -1.2889 TD -0.6856 Tw -(selected function definitions before printing them according to the following)Tj -0 -1.2222 TD -0 Tw -(interpretations of )Tj -/TT10 1 Tf -7.9224 0 TD -(CLISPIFYPRETTYFLG)Tj -/TT8 1 Tf -10.2017 0 TD -(:)Tj -/TT17 1 Tf --6.5907 -2.0667 TD -(ALL)Tj -/TT8 1 Tf -3.1333 0 TD -(Clispify all functions.)Tj -/TT17 1 Tf --6.3744 -2.0667 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( or )Tj -/TT17 1 Tf -1.4409 0 TD -(EXPRS)Tj -/TT8 1 Tf -4.3334 0 TD -(Clispify all functions currently defined as )Tj -/TT10 1 Tf -18.5898 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -(s.)Tj -/TT17 1 Tf --26.5236 -2.0667 TD -(CHANGES)Tj -/TT8 1 Tf -5.5333 0 TD -0.49 Tw -(Clispify all functions marked as having been)Tj -0 -1.2889 TD -0 Tw -(changed.)Tj --3.4156 -2 TD -[(a list)-1333.5(Clispify all functions in that list.)]TJ -ET -endstream -endobj -77 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -80 0 obj -<< -/Length 7431 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(CLISPIFYPRETTYFLG)Tj -/TT8 1 Tf -10.2017 0 TD -0.2122 Tw -[( is \(temporarily\) reset to )]TJ -/TT10 1 Tf -11.9303 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2122 Tw -[( when )]TJ -/TT15 1 Tf -3.4015 0 TD -0 Tw -( )Tj -/TT10 1 Tf -0.4622 0 TD -(MAKEFILE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2122 Tw -[( is called with the)]TJ --31.3965 -1.2889 TD -0 Tw -(option )Tj -/TT10 1 Tf -3.2688 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.1267 Tw -(, and reset to )Tj -/TT10 1 Tf -6.4246 0 TD -0 Tw -(CHANGES)Tj -/TT8 1 Tf -4.2007 0 TD -0.1267 Tw -[( when the file being dumped has the property)]TJ -/TT10 1 Tf --18.6949 -1.2889 TD -0 Tw -(FILETYPE)Tj -/TT8 1 Tf -4.8008 0 TD -( value )Tj -/TT10 1 Tf -2.938 0 TD -(CLISP)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT15 1 Tf -0.25 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(CLISPIFYPRETTYFLG)Tj -/TT8 1 Tf -10.2017 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --25.4588 -2.0667 TD -[(Note: )-401.2(If )]TJ -/TT10 1 Tf -4.5699 0 TD -(CLISPIFYPRETTYFLG)Tj -/TT8 1 Tf -10.2017 0 TD -0.3167 Tw -[( is non-)]TJ -/TT10 1 Tf -3.8911 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3167 Tw -(, and the only transformation)Tj --17.1297 -1.2889 TD -0.1533 Tw -(performed by )Tj -/TT10 1 Tf -6.6377 0 TD -0 Tw -(DWIM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1533 Tw -[( are well formed )]TJ -/TT10 1 Tf -8.129 0 TD -0 Tw -(CLISP)Tj -/TT8 1 Tf -3.0005 0 TD -0.1533 Tw -[( transformations, i.e., no)]TJ --20.1676 -1.2889 TD -0.0456 Tw -(spelling corrections, the function will )Tj -/TT13 1 Tf -16.9158 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0456 Tw -[( be marked as changed, since)]TJ --18.2488 -1.2222 TD -0.1333 Tw -(it would only have to be re-clispified and re-prettyprinted when the)Tj -T* -0 Tw -(file was written out.)Tj -/TT10 1 Tf --8.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(PPT)Tj -/TT4 1 Tf -10 0 0 10 171.6035 460.2 Tm -( )Tj -/TT19 1 Tf -9 0 0 9 174.3818 460.2 Tm -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 185.1836 460.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 407.33 460.2 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.0833 Tw -[(Both a function and an edit macro for prettyprinting translations. It performs a )]TJ -/TT10 1 Tf -36.4259 0 TD -0 Tw -(PP)Tj -/TT8 1 Tf -1.2002 0 TD -0.0833 Tw -[( after)]TJ --37.6261 -1.2889 TD -0.3011 Tw -(first resetting )Tj -/TT10 1 Tf -6.7297 0 TD -0 Tw -(PRETTYTRANFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.3011 Tw -[( to )]TJ -/TT10 1 Tf -1.9743 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3011 Tw -(, thereby causing any translations to be printed)Tj --17.1053 -1.2889 TD -0 Tw -(instead of the corresponding CLISP.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(CLISP:)Tj -/TT6 1 Tf -10 0 0 10 182.4 398.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 398.06 Tm -([Editor Command])Tj --31.5889 -1.8444 TD -0.5278 Tw -(Edit macro that obtains the translation of the correct expression, if any, from)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CLISPARRAY)Tj -/TT8 1 Tf -6.001 0 TD -(, and calls )Tj -/TT10 1 Tf -4.6426 0 TD -(EDITE)Tj -/TT8 1 Tf -3.0005 0 TD -( on it.)Tj -/TT17 1 Tf --16.3107 -2.5489 TD -(CL)Tj -/TT6 1 Tf -10 0 0 10 160.8 347.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 347.52 Tm -([Editor Command])Tj --31.5889 -1.8444 TD -0.0833 Tw -[(Edit macro. Replaces current expression with )]TJ -/TT10 1 Tf -21.0697 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0833 Tw -[(ed current expression. Current)]TJ --25.8704 -1.2889 TD -0 Tw -(expression can be an element or tail.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(DW)Tj -/TT6 1 Tf -10 0 0 10 160.8 296.98 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 458.3 296.98 Tm -([Editor Command])Tj --31.5889 -1.8444 TD -(Edit macro. )Tj -/TT10 1 Tf -5.6064 0 TD -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -(s current expression, which can be an element \(atom or list\) or tail.)Tj --9.8071 -2.0667 TD -(Both )Tj -/TT10 1 Tf -2.4249 0 TD -(CL)Tj -/TT8 1 Tf -1.2002 0 TD -0.11 Tw -[( and )]TJ -/TT10 1 Tf -2.4129 0 TD -0 Tw -(DW)Tj -/TT8 1 Tf -1.2002 0 TD -0.11 Tw -[( can be called when the current expression is either an element or a tail)]TJ --7.2382 -1.2889 TD -0.0233 Tw -[(and will work properly. Both consult the declarations in the function being edited, if any,)]TJ -0 -1.2222 TD -0 Tw -(and both are undoable.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT17 1 Tf -0.6001 0 TD -(LOWERCASE)Tj -/TT4 1 Tf -10 0 0 10 204 216.84 Tm -( )Tj -/TT19 1 Tf -9 0 0 9 206.7783 216.84 Tm -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 228.3818 216.84 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 216.84 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT19 1 Tf -0.9344 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.2644 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2644 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5144 0 TD -(LOWERCASE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0144 Tw -[( makes the necessary internal modifications so that )]TJ -/TT10 1 Tf -22.8451 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0144 Tw -[( will)]TJ --38.0249 -1.2889 TD -0.0656 Tw -(use lower case versions of )Tj -/TT10 1 Tf -12.0597 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(THEN)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(ELSE)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5656 0 TD -(ELSEIF)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[(, and all i.s. operators. This)]TJ --27.4895 -1.2889 TD -0.0833 Tw -[(produces more readable output. Note that you can always type in )]TJ -/TT13 1 Tf -30.5566 0 TD -0 Tw -(either)Tj -/TT8 1 Tf -2.2783 0 TD -0.0833 Tw -[( upper or lower)]TJ --32.835 -1.2222 TD -0.0356 Tw -(case \(or a combination\), regardless of the action of )Tj -/TT10 1 Tf -22.7053 0 TD -0 Tw -(LOWERCASE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0356 Tw -[(. If )]TJ -/TT19 1 Tf -1.7766 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.2856 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2856 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5356 0 TD -(CLISPIFY)Tj -/TT8 1 Tf --35.1901 -1.2889 TD -0.1422 Tw -(will use uppercase versions of )Tj -/TT10 1 Tf -14.2844 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6422 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.1422 Tw -[(, et al. The value of )]TJ -/TT10 1 Tf -9.8325 0 TD -0 Tw -(LOWERCASE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1422 Tw -[( is its previous)]TJ --33.1604 -1.2889 TD -0 Tw -("setting". )Tj -/TT10 1 Tf -4.4766 0 TD -(LOWERCASE)Tj -/TT8 1 Tf -5.4009 0 TD -( is undoable. The initial setting for )Tj -/TT10 1 Tf -15.6343 0 TD -(LOWERCASE)Tj -/TT8 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 99.9 Tm -(CLISP Internal Conventions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 97.19 m -558.01 97.19 l -S -BT -/TT8 1 Tf -9 0 0 9 126 75.24 Tm -0.28 Tw -(CLISP is almost entirely table driven by the property lists of the corresponding infix or prefix)Tj -0 -1.2222 TD -0.0289 Tw -[(operators. For example, much of the information used for translating the )]TJ -/TT10 1 Tf -32.9087 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -[( infix operator is stored on)]TJ --33.5088 -1.2889 TD -0.0856 Tw -(the property list of the symbol ")Tj -/TT10 1 Tf -14.5221 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0856 Tw -[(". Thus it is relatively easy to add new infix or prefix operators or)]TJ --15.1222 -1.2889 TD -0.1722 Tw -[(change old ones, simply by adding or changing selected property values. \(There )]TJ -/TT13 1 Tf -38.1256 0 TD -0 Tw -(is)Tj -/TT8 1 Tf -0.667 0 TD -0.1722 Tw -[( some built in)]TJ -ET -endstream -endobj -81 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -83 0 obj -<< -/Length 9158 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-23)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(CLISP)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0433 Tw -(information for handling minus, )Tj -/TT10 1 Tf -14.75 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5433 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -(, and )Tj -/TT10 1 Tf -2.5295 0 TD -0 Tw -(~)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -(, i.e., you could not yourself add such "special" operators,)Tj --19.6232 -1.2889 TD -0 Tw -(although you can disable or redefine them.\))Tj -0 -2.8889 TD -0.0622 Tw -(Global declarations operate by changing the )Tj -/TT10 1 Tf -20.1224 0 TD -0 Tw -(LISPFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0622 Tw -[( and )]TJ -/TT10 1 Tf -2.3173 0 TD -0 Tw -(CLISPINFIX)Tj -/TT8 1 Tf -6.001 0 TD -0.0622 Tw -[( properties of the appropriate)]TJ --32.0412 -1.2889 TD -0 Tw -(operators.)Tj -/TT17 1 Tf -2.6667 -2.4822 TD -(CLISPTYPE)Tj -/TT6 1 Tf -10 0 0 10 150.6 498 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 418.39 498 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0211 Tw -(The property value of the property )Tj -/TT10 1 Tf -15.8034 0 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0211 Tw -[( is the precedence number of the operator:)]TJ --21.2043 -1.2889 TD -0.2344 Tw -[(higher values have higher precedence, i.e., are tighter. Note that the actual value is)]TJ -0 -1.2222 TD -0.0222 Tw -[(unimportant, only the value relative to other operators. For example, )]TJ -/TT10 1 Tf -31.1644 0 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0222 Tw -[( for )]TJ -/TT15 1 Tf -1.8184 0 TD -0 Tw -(:)Tj -/TT8 1 Tf -0.25 0 TD -(, )Tj -/TT11 1 Tf -0.5222 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(,)Tj --39.7589 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0929 0 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.15 Tw -[( are 14, 6, and 4 respectively. Operators with the same precedence group left to)]TJ --2.693 -1.2889 TD -0 Tw -(right, e.g., )Tj -/TT10 1 Tf -4.6855 0 TD -(/)Tj -/TT8 1 Tf -0.6001 0 TD -( also has precedence 4, so )Tj -/TT10 1 Tf -11.479 0 TD -(A/B*C)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(\(A/B\)*C)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --25.1807 -2.0667 TD -0.28 Tw -(An operator can have a different left and right precedence by making the value of)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0622 Tw -[( be a dotted pair of two numbers, e.g., )]TJ -/TT10 1 Tf -17.5673 0 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0622 Tw -[( of )]TJ -/TT11 1 Tf -1.5034 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0622 Tw -[( is )]TJ -/TT10 1 Tf -1.6515 0 TD -0.1489 Tw -(\(8 . -12\))Tj -/TT8 1 Tf -5.6987 0 TD -0.0622 Tw -[(. In)]TJ --38.2094 -1.2889 TD -(this case, )Tj -/TT10 1 Tf -4.3442 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( is the left precedence, and )]TJ -/TT10 1 Tf -12.3401 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( the right, i.e., )]TJ -/TT10 1 Tf -6.5565 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( is used when comparing)]TJ --28.6417 -1.2889 TD -0.0256 Tw -(with operators on the )Tj -/TT13 1 Tf -9.8625 0 TD -0 Tw -(left)Tj -/TT8 1 Tf -1.2778 0 TD -0.0256 Tw -(, and )Tj -/TT10 1 Tf -2.494 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( with operators on the )]TJ -/TT13 1 Tf -10.138 0 TD -0 Tw -(right)Tj -/TT8 1 Tf -2 0 TD -0.0256 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8483 0 TD -0 Tw -(A*B)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(C+D)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( is)]TJ --39.0083 -1.2889 TD -0.0433 Tw -(parsed as )Tj -/TT10 1 Tf -4.5203 0 TD -0 Tw -(A*\(B)Tj -/TT11 1 Tf -2.4004 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(C+D\)\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0433 Tw -[( because the left precedence of )]TJ -/TT11 1 Tf -13.9299 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0433 Tw -[( is 8, which is higher than that)]TJ --26.4248 -1.2889 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.1734 0 TD -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.0444 Tw -[(, which is 4. The right precedence of )]TJ -/TT11 1 Tf -16.7936 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -0.0444 Tw -[( is -12, which is lower than that of )]TJ -/TT10 1 Tf -15.544 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.0444 Tw -(, which is)Tj --35.698 -1.2889 TD -0 Tw -(2.)Tj -0 -2 TD -0.3311 Tw -(If the )Tj -/TT10 1 Tf -3.2193 0 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.3311 Tw -[( property for any operator is removed, the corresponding CLISP)]TJ --8.6202 -1.2889 TD -0 Tw -(transformation is disabled, as well as the inverse )Tj -/TT10 1 Tf -21.6982 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -( transformation.)Tj -/TT17 1 Tf --29.1657 -2.5489 TD -(UNARYOP)Tj -/TT6 1 Tf -10 0 0 10 139.8 295.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 418.39 295.46 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0611 Tw -(The value of property )Tj -/TT10 1 Tf -10.1346 0 TD -0 Tw -(UNARYOP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0611 Tw -[( must be )]TJ -/TT10 1 Tf -4.2014 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0611 Tw -[( for unary operators or brackets. The operand)]TJ --19.1368 -1.2889 TD -0 Tw -(is always on the right, i.e., unary operators or brackets are always prefix operators.)Tj -/TT17 1 Tf --2.6667 -2.4822 TD -(BROADSCOPE)Tj -/TT6 1 Tf -10 0 0 10 156 244.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 418.39 244.92 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.2856 Tw -(The value of property )Tj -/TT10 1 Tf -11.0324 0 TD -0 Tw -(BROADSCOPE)Tj -/TT8 1 Tf -6.001 0 TD -0.2856 Tw -[( is )]TJ -/TT10 1 Tf -1.786 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2856 Tw -[( if the operator has lower precedence than)]TJ --19.4194 -1.2889 TD -0.0056 Tw -(Interlisp forms, e.g., )Tj -/TT10 1 Tf -9.1085 0 TD -0 Tw -(LT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5056 0 TD -(EQUAL)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5056 0 TD -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -0.0056 Tw -[(, etc. For example, )]TJ -/TT10 1 Tf -8.5229 0 TD -0.0133 Tw -(\(FOO X AND Y\))Tj -/TT8 1 Tf -7.8413 0 TD -0.0056 Tw -[( parses as )]TJ -/TT10 1 Tf -4.5133 0 TD -0 Tw -(\(\(FOO)Tj --36.998 -1.2889 TD -0.1744 Tw -(X\) AND Y\))Tj -/TT8 1 Tf -5.7498 0 TD -0.0722 Tw -[(. If the )]TJ -/TT10 1 Tf -3.596 0 TD -0 Tw -(BROADSCOPE)Tj -/TT8 1 Tf -6.001 0 TD -0.0722 Tw -[( property were removed from the property list of )]TJ -/TT10 1 Tf -22.5982 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj -/TT10 1 Tf --39.7453 -1.2889 TD -(\(FOO X AND Y\))Tj -/TT8 1 Tf -7.8013 0 TD -( would parse as )Tj -/TT10 1 Tf -7.2075 0 TD -(\(FOO \(X AND Y\)\))Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj -/TT17 1 Tf --26.6769 -2.5489 TD -(LISPFN)Tj -/TT6 1 Tf -10 0 0 10 134.4 170.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 418.39 170.58 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0511 Tw -(The value of the property )Tj -/TT10 1 Tf -11.7829 0 TD -0 Tw -(LISPFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0511 Tw -[( is the name of the function to which the infix operator)]TJ --15.3835 -1.2889 TD -0.0122 Tw -[(translates. For example, the value of )]TJ -/TT10 1 Tf -16.5328 0 TD -0 Tw -(LISPFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0122 Tw -[( for )]TJ -/TT11 1 Tf -1.7984 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.0122 Tw -[( is )]TJ -/TT10 1 Tf -1.2393 0 TD -0 Tw -(EXPT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -(, for )Tj -/TT10 1 Tf -2.0484 0 TD -0.0289 Tw -( QUOTE)Tj -/TT8 1 Tf -4.2296 0 TD -0.0122 Tw -[(, etc. If the value)]TJ --32.4524 -1.2889 TD -0.0644 Tw -(of the property )Tj -/TT10 1 Tf -7.1089 0 TD -0 Tw -(LISPFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -[( is )]TJ -/TT10 1 Tf -1.3437 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0644 Tw -(, the infix operator itself is also the function, e.g., )Tj -/TT10 1 Tf -22.3319 0 TD -0 Tw -(AND)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5644 0 TD -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -(,)Tj -/TT10 1 Tf --39.7504 -1.2889 TD -(EQUAL)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT17 1 Tf --5.6672 -2.5489 TD -(SETFN)Tj -/TT6 1 Tf -10 0 0 10 129 96.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 418.39 96.24 Tm -([Property Name])Tj --32.4878 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.0244 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -[( has a )]TJ -/TT10 1 Tf -3.0692 0 TD -0 Tw -(SETFN)Tj -/TT8 1 Tf -3.0005 0 TD -0.1044 Tw -[( property )]TJ -/TT10 1 Tf -4.6083 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -(, then )Tj -/TT10 1 Tf -2.9281 0 TD -0.25 Tw -(\(FOO --\))Tj -/TT11 1 Tf -5.0508 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1044 Tw -[( translates to )]TJ -/TT10 1 Tf -6.1825 0 TD -0.25 Tw -(\(FIE -- X\))Tj -/TT8 1 Tf -6.501 0 TD -0.1044 Tw -[(. For)]TJ --37.5522 -1.2889 TD -0.0267 Tw -(example, if you make )Tj -/TT10 1 Tf -9.8528 0 TD -0 Tw -(ELT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0267 Tw -[( be an infix operator, e.g. )]TJ -/TT10 1 Tf -11.3607 0 TD -0 Tw -(#)Tj -/TT8 1 Tf -0.6001 0 TD -0.0267 Tw -(, by putting appropriate )Tj -/TT10 1 Tf -10.987 0 TD -0 Tw -(CLISPTYPE)Tj -/TT8 1 Tf --34.6009 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9829 0 TD -(LISPFN)Tj -/TT8 1 Tf -3.6006 0 TD -0.04 Tw -[( properties on the property list of )]TJ -/TT10 1 Tf -15.1926 0 TD -0 Tw -(#)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( then you can also make )]TJ -/TT10 1 Tf -11.1189 0 TD -0 Tw -(#)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( followed by )]TJ -/TT11 1 Tf -5.91 0 TD -0 Tw -<0040>Tj -/TT8 1 Tf --39.0052 -1.2889 TD -0.0111 Tw -(translate to )Tj -/TT10 1 Tf -5.2175 0 TD -0 Tw -(SETA)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -(, e.g., )Tj -/TT10 1 Tf -2.5574 0 TD -0 Tw -(X#N)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[( to )]TJ -/TT10 1 Tf -1.3943 0 TD -0.0278 Tw -(\(SETA X N Y\))Tj -/TT8 1 Tf -7.2845 0 TD -0.0111 Tw -(, by putting )Tj -/TT10 1 Tf -5.4283 0 TD -0 Tw -(SETA)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( on the property list of)]TJ -ET -endstream -endobj -84 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT13 10 0 R -/TT15 16 0 R -/TT17 26 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -86 0 obj -<< -/Length 4402 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(20-24)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(ELT)Tj -/TT8 1 Tf -1.8003 0 TD -0.0178 Tw -[( under the property )]TJ -/TT10 1 Tf -9.0277 0 TD -0 Tw -(SETFN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0178 Tw -[(. Putting the list )]TJ -/TT10 1 Tf -7.5967 0 TD -0 Tw -(\(ELT\))Tj -/TT8 1 Tf -3.0005 0 TD -0.0178 Tw -[( on the property list of )]TJ -/TT10 1 Tf -10.2322 0 TD -0 Tw -(SETA)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( under)]TJ --37.0582 -1.2889 TD -0 Tw -(property )Tj -/TT10 1 Tf -4.1494 0 TD -(SETFN)Tj -/TT8 1 Tf -3.0005 0 TD -( will enable )Tj -/TT10 1 Tf -5.3413 0 TD -(SETA)Tj -/TT8 1 Tf -2.4004 0 TD -( forms to )Tj -/TT10 1 Tf -4.2026 0 TD -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -( back to )Tj -/TT10 1 Tf -3.6753 0 TD -(ELT)Tj -/TT8 1 Tf -1.8003 0 TD -(s.)Tj -/TT17 1 Tf --32.0373 -2.5489 TD -(CLISPINFIX)Tj -/TT6 1 Tf -10 0 0 10 204 535 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 466.39 535 Tm -([Property Name])Tj --32.4878 -1.8445 TD -0.0256 Tw -(The value of this property is the CLISP infix to be used in )Tj -/TT10 1 Tf -25.8903 0 TD -0 Tw -(CLISPIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0256 Tw -[(ing. This property is)]TJ --30.6911 -1.2889 TD -0.2567 Tw -(stored on the property list of the corresponding Interlisp function, e.g., the value of)Tj -0 -1.2222 TD -0 Tw -(property )Tj -/TT10 1 Tf -4.1494 0 TD -(CLISPINFIX)Tj -/TT8 1 Tf -6.001 0 TD -( for )Tj -/TT10 1 Tf -1.7739 0 TD -(EXPT)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT11 1 Tf -1.2148 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -(,)Tj -/TT8 1 Tf -0.6001 0 TD -( for )Tj -/TT10 1 Tf -1.7739 0 TD -(QUOTE)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -( etc.)Tj -/TT17 1 Tf --25.9987 -2.5489 TD -(CLISPWORD)Tj -/TT6 1 Tf -10 0 0 10 198.6 472.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 466.39 472.86 Tm -([Property Name])Tj --32.4878 -1.8444 TD -0.0144 Tw -(Appears on the property list of clisp operators which can appear as )Tj -/TT10 1 Tf -30.0981 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0144 Tw -[( of a form, such as)]TJ -/TT10 1 Tf --31.8984 -1.2889 TD -0 Tw -(FETCH)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5644 0 TD -(REPLACE)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5644 0 TD -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.0644 Tw -[(, iterative statement operators, etc. Value of property is of the form)]TJ -/TT10 1 Tf --9.5303 -1.2889 TD -0 Tw -(\()Tj -/TT19 1 Tf -0.6001 0 TD -(KEYWORD)Tj -/TT10 1 Tf -4.2007 0 TD -0.0389 Tw -[( . )]TJ -/TT19 1 Tf -1.8781 0 TD -0 Tw -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0167 Tw -(, where )Tj -/TT19 1 Tf -3.5524 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0167 Tw -[( is the lowercase version of the operator, and )]TJ -/TT19 1 Tf -20.1725 0 TD -0 Tw -(KEYWORD)Tj -/TT8 1 Tf --35.8046 -1.2889 TD -(is its type, e.g. )Tj -/TT10 1 Tf -6.5034 0 TD -(FORWORD)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(IFWORD)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(RECORDWORD)Tj -/TT8 1 Tf -6.001 0 TD -(, etc.)Tj -/TT19 1 Tf --21.3057 -2.0667 TD -(KEYWORD)Tj -/TT8 1 Tf -4.2007 0 TD -0.0844 Tw -[( can also be the name of a function. When the atom appears as )]TJ -/TT10 1 Tf -29.2115 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0844 Tw -[( of a form,)]TJ --35.2125 -1.2889 TD -0.0811 Tw -[(the function is applied to the form and the result taken as the correct form. In this case,)]TJ -0 -1.2222 TD -0.1756 Tw -(the function should either physically change the form, or call )Tj -/TT10 1 Tf -28.8986 0 TD -0 Tw -(CLISPTRAN)Tj -/TT8 1 Tf -5.4009 0 TD -0.1756 Tw -[( to store the)]TJ --34.2995 -1.2889 TD -0 Tw -(translation.)Tj -0 -2 TD -0.1111 Tw -(As an example, to make )Tj -/TT10 1 Tf -11.3783 0 TD -0 Tw -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1111 Tw -[( be an infix character operator meaning )]TJ -/TT10 1 Tf -18.3813 0 TD -0 Tw -(OR)Tj -/TT8 1 Tf -1.2002 0 TD -0.1111 Tw -(, you could do the)Tj --31.5599 -1.2889 TD -0 Tw -(following:)Tj -/TT11 1 Tf -8 -1.7111 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(PUTPROP & CLISPTYPE \(GETPROP OR CLISPTYPE\)\))Tj -/TT11 1 Tf --0.9868 -1 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(PUTPROP & LISPFN OR\))Tj -/TT11 1 Tf --0.9868 -1 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(PUTPROP & BROADSCOPE T\))Tj -/TT11 1 Tf --0.9868 -1 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(PUTPROP OR CLISPINFIX &\))Tj -/TT11 1 Tf --0.9868 -1 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ CLISPCHARS \(CONS & CLISPCHARS\)\))Tj -/TT11 1 Tf --0.9868 -1 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ CLISPCHARRAY \(MAKEBITTABLE CLISPCHARS\)\))Tj -ET -endstream -endobj -87 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT11 9 0 R -/TT17 26 0 R -/TT19 30 0 R ->> -/ExtGState << -/GS1 11 0 R ->> ->> -endobj -11 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -88 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -89 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBKBNA+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 94 0 R ->> -endobj -94 0 obj -<< -/Filter /FlateDecode -/Length 20104 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8JE`BBiԃ4NˡfwfGf?%Z%%Rh -FnRKD>iRi nxj3>yomrBwE]X;ohQ`r Wq`]Y|7>4;u42/|g2#* -#mʵ 10U'wmx c[ÐpLsV!x0aE(״X@X#J2.^ZQV "@u@U"ݛԡiR~Fcʃvp֒5-Wz%TB2'yR7|za#dn%&98XM`yjj(#LG XFRj0^8X[\TUFN*>GjO> - -܎8 W$ -ڼͫ9NA8_ >KB#&2ZxH|B{"0 Fτ -X1 -'qt/Av a+f!n} bqcQE Y#[;00ucjqcL><'7Ż 7)﹬Oa5cL>v0YY<}Ҳ>qL*JOAYF>C) Y`L>I$|o.;ѕR2=owL=s$@_Lgg>&uZ}4 !~XΦkeyǃkϘdh l\dcOٸڸƥ6.q+l\i*kl\mXkl\gzl| 6zql|99~"NzAфI*i0輄mC0Xg QլL !-џ;Z+*aoĕ }YRt=VᏙtQ!.oq[]`"Ur_Kq-a0mF72 -^HB3ոV[~tmQUтj(;4j|5H/VW<|EGIKSC?z,Sݤ]Eh UrL=<7b͟RSAU>_@gw3cE5[d5v̦V>Ex{QsO!&3 ?ʙ3 {Eqz5/y%ZѿT^k5AQӅ- hG]Qn-Vjpc M1i Y;LT! 6[@d:V(QoH؀=HDPaYB4F0zM׏;c.5 ?Mio0JM!gID ^,ByI^r[XZ$%.3%3~%[e~lj4b4ыlU7p7ۭy{Zsovd҆iא+7JnN-\[S-_]:"r rrK)!Uezx8הּbk.H\p/ww;r%rw8{{½3fyḳž]|˵0'\V7EN[u\c] / r7w`])|_*o=|Y7lvpbKr檉]Oez5Zl;sSvxe{=rޱp zccg6kBX{bfa߀1k':P_6Mgsώ&e Bv8Np-vH§ֵ@CRrDB 5I*kU NG 0-d+hԡۚ cﹳMRDHHh<~Y1ޙVuF%YM1UTt׈%A;\tD?>϶)/\B$w:2fQtnm4QF_N=ý  ՂF^*|g!5v,,8!21ϑ5dTă_2c5SgA="ɕ-~W7: F&\w8nVgHd7_HAr4#T|G"*n2JֶusBG>>إjO>eRsgq{ -6*.dIu'>m j ETBHkN3ʒ eؑ}mD[ćvٍJ m*MI7;$\J0ϾحːQ4U;dD:LzYLOD cܽT)C5܈C2}x޵F3ur !8 {3c y|[yK%Z"hvym炡EȸF;դ 'x܁v7 -{z\OIc]zt vc@֬AFj3xbep}>.Hnz~ϼ=-顯;n 5t/{cRiP -$sK2@Xv|@r Xc>= 茳'scAg݆#cWӫ-ոgz=Vm9߳kYY_'uź v>c, EYt_^YUۇ{O8 H\`2BsjY [r.":(uM-ɵF,)ۢ^|ݸ䎨vR!PNAJmth3o;T @hKmdHen?2ۃBځ77!:c FEH2AF;MfI2dxއn p.7ĉ8$L!/ s|RC!+KD#! -i!;dy$&]&DPB-F4 }ΦS紊.9@tB_mw-3 GiY&{l,Ȧ"6l[ʞgY={6&{b4 -|8w |2)?_|#̷=|cB|1} ~; nZm fI#KJfo+=N-%ڋ60RzoL9].W̹CY]rsF,ᒮWlLGbN}klZrԢ~QIe[ 2/ehHT6gyvsx*(ѝt mZrJPbWodWu敦m&\.j,ˣFK$۰,Zum*j+ =@-f42f9+)^Es/KWuq'h_dYmB2sKug<j -?Z#bZ[9sQ%jrYFUdMK!^Dig,1򑩞z &AKPtеZ"EZ+YE1u}̓泍xXVl z+Ƴـ=k.*ZiGc2U7!Sk@#4D}{cEm=lOt|w_a}1dZ,Mb~}?,^ ?ߧ`!3:=, OO5#ǺG+ԍ?&翠t ڧg[7KZWnKI{^צG9 -і[N~Pi )o)~ -oN%` SK_,V4{]B Zb衅GUgGww+Xɪe)MXf_+PxcE-#iZ 4t@!/Q8i,\?7h*E^(C }} FChA'/o z.&؎K+7/'S a<4~GWuHJD^U1ROH i'ϐ9@FHLS-[$rd"n-k=}!n{)KUuϽᄋwp.}, -6*m!R!V2LDmZY` Q@%PJgL5#:IHkLڱc'zec޾swG/vPuZVKԅbJ QuuکU?TOK:Јj$ͧ $m6]{J=hE<@ ̇HRā؈N1jRU,m"JU pb8@ v|!vT 8ǀPرqMё5:Т DزJ[k"SҪh Vj%bۇ/<( 0OݘJ8D(u3QP$[E_EQD -E2:qjvO-8bR%8 -^m,,O4:6űf^_eǁlH[s-$S7sH<8[46y7|O9#!k) "̆<9]߯h -Tɓ.#ʀ7!q0R]#_K yH@س,(g8!3g^z̵sޞMl<WxI C"kRm4Ġ`&[d@6Fc(PrsKt$&K7!ޑ,bSMjb*y V"#o4G]A.[H:3xQM'.@GZp7qK%űQZ~uoIin\D2D׫tk/x{C;up-6%-ޖP C$KT/ -[SεIMZOn,$SP2YҲd3|J?+X1 P]zeӐ_$ClWy^ٲε:? -:sWkYG>|u2'ssCΙePoHtE;ɛfK?ؾak?pub0ί>׹>1cuS_ -@ggC"+Ƒ>;cP4j &E>5dC&,f8 myf#;}dyIm!)pV&l<8`M m|c*8H1$8-<(w$tM{<.$q߅djd@@VB2xaeȭ^_+PQx 6!No#: 'O2O -nn!^2LDErqC%HyTRC^%ȼm${[OCi9KIM.5bR&ӉtNgH^7Jkh t mEf^Gizt)]'JdfʕJe%4*MZK9BvF@6\Q!SƐY9ų$e~6M`cSX:2Y <6 e.(呸BσYB_L7} `coXqqcAe + 3/E`f0M2$QO?&lO'c_Ҷh%&*|?.Ѷ E6,rX$kǰ_gưb:φmPzvYEgI׏5o.i;Y31ުȺGrkI٪-eС{Tέ;YĶVV%=y!vpa43'ޞn^aH -m%ml* -EB{h(;HL{u۝W:P WݚnE]}㜈s%ഊH{.2wlPwGMy{|KO]ζ] p{_;}4E 8Us=v=~vΞkWtCijb}sGL uOys^w}!S];C -UK" LG)$> -M*&Ofٴ$v&Ҭbh&14u]ZBͽ#h9Ibߞk{vd56#G|2NF&$ZZ0VZaOI@PKB1̆9C)2Snp  -X wjXz> x 8 -ϡ:*pBM>$!\Dɥf*"WO#d1&Buu+.W&4fBDGɓ( *ߓc$$#3yA=h\z9Bz%55ԤH-t]I&JD$=JG8,]ֺ̦Pm]ZĪY-}ճX[֡溏mbQy5 W;NT`]l{=abϰg>G.PRwRRE gFG 5*^Qndդ#=mNqz-ےHU(n| w/^Jk,h -۟^I mR@܊Oܨ4摒L3hL7*՝cKMS0SRE;xeh *x2IČo!z ZE;p)0}ml^_b`U5q ~$%(6>~P6Z4T -ėE Ldq$hH⹐/]a#`P, X#h Ib?p MՈbyؒ zةP oy?84ud `\ -,ԏ1XSdۣ1-H5NKlmHG:pw8e{S7/i, Y¯8mh7SޣqfP $Q;t{ Ix@:Ic G,NbxNhc, -3"ЬjƾFu/<iS,3x6#t]9#hnӿ^2%.X  r-Xhe1 dmjw(O0el1R0s[eVSa[b~u.$uDAc=;{_3[V4 >-^,hXe1XdareYUè>B), 7t4k HqðyLqk"R-2-9 ­˻tYH~86u`qiuZ@!bp5f "@| (_,,blͭ/`cvˆAKi-Q*x% ˗ˡT2QTGSUl,>"mRHgQKZ }pZtۈS 7\c[AL ,b$8p^@20œ?Yv&YG,8Xkɭ}.b(`0vk7RImb 1c,b͞="(Uҗs#ł5mXSԵEo ;8n" cA|8>Z^P]ǔJfAuS%sV}2M~qfwN׾='56N)+BF N$^=;m,By@ !륾V2if}8cPC*E7|\;iBb~7ՉOKf# ϝwS%kogm`nbɢţ(ACϢYȂ/nOVt;g}Iukoώ<|d080~y,,|Vݔ7[&,ć$N7#Zkzksm7ElrãrK=rN^EV4t-h-Tl-9u%Գ(O@E-d1sf-ԁbi&.b? i?u qFbJ-`l[VέU&z[׶=7qnHu-Y2o[~>@Ÿ)i-_&V·SE6-5Ⱎ,Y[8KU/gSi=CߗR0cs5+/{ap=hb# BP.L:XX6Y-Yh1P3>\}L}udڰ,v-:Yp& еp$bPw,XL&p}[3q[[!£܎۴.thR -TX<Ȉu0lP\-4Pd]v -l[u] u/Z'"nEU:\q#Z9/[dzJpBR_:x -x.YHb/ZP闤LkX鱅xEFxJ,xU!;3*Dl7y.d[|*Iqx5k=΀Y(Q6Paah:Gf1`,޷.#jCDSlLG+N,pE0w~o]\` -pbqP̳M S0.5AdQǀ<E\_8N]xA}$ΩYzq -urYvHW9mWsn8x& ^zDc_5̩_h%‹-0{Z㯥̞ۋM̩8evlq[ip^oZ,ޥh1Q;ɂQ3,7Xhd0bF۴P~q^q+W~?DԌc'є!j姺ydTGgFW x&,6Ua8 FYB o#VyScXPaU X#ha)"SCY@1vw v-~$ÿ*O?[~<(XXĵ Ɠx"u@6kNx]pm5xhd1j>^}fX[YN,,o}:^Q!}?:>~}NgKU\XKV7 mH]ߐiv :2e:Ǟ?2`%g}H fsٸ -Z@sͺ%՝XE 7U. |j3h>Ȫ. -;ETwl.h,4seE:(lł X-@!!ojB}Π` ecx'UkSR-ݔ|K3jT)̷0B ]˲ު-3sĨ&Amc>7t<[ެMY<>z585k[n:;mhT~DʶYAM~D"]Fb(w" 6 6%G"%mՓG]Xr~I};y^,lEFʖF,سP+/s' -`mG Ccn>4C̛B*̖b+6YnAz}}D ,lr6+`{KkVAd!ԭCyag],R"H ,u-(h-Xf"da/0 ݋~wmbS^G%>ip^,4ߴinr]gZtwZ18kM8OB,ֲ"~ xނu+16>ƲȾ2-{w-PF1qKWӸ{]R~j8<vE1.di)ږ#Z̮IBDGPXiTL1x"]>V14k#+sYp;37̽w]O7t?=I?WiD†,6c Y=[ֳMl;kc *kgH{뼙o~_.4*=%ITBZ$5JoI#ye YC"(ˋrG>!S T P~*S\eJyW@فi^rD9U>W\R:UQ5}U A`5CTG( z-x:??`Ub0$"*QhJ+Ee*."`"F0I$@UF$J {G*~FcGX!D0a? J g0>G @ed9,R~R 䥡<wXh~0r3<"f=bSP-|¥p|Gb0RaFC.(w#ZBЧ@N< oojCA|bc,^9 v}maѓmMgn?]/[YpT ^;tJк U+>vTl\iU+ˮޮY_hX>& %mybc)^%zȕ9ΔWf\J߸yd_3ZZJ+<޽}`~<;;ύZW6\LA~u]Ue'Ʋbinٻ:Urۭ҂_x Y>̫8".OD{oYߐW}D Zs~ubf4䦼lnY騸#_{n X -NT%WZ]NXjXh4!bEò;kWmVncqu˧?϶<fV&kjČibSy֕oЌCX{t{nYq&WLo| odj++ypDEdLq%%N'Fw7d)+0. 3- ]q~?e/;lȿ{ᣓhE E qj<$SkA0O0 dHȃqdxǥr Plx^*{643a8y8pڡ3"%q$$}N$I.K&Id2)"H))#/٤,,$dw 7di"Z7";^r'3 /i'_SB%<©F0SL4Nx]NL|kRk,rQ?Fwa.yS3z^Wmh' 0昡,H~,1 gIq6=2B>T>E)$$)Ch1*1!,.aYGU=xU@k X* -|IWҵJ^ -ӕs}O$KbbD)|+6E8Gr>eIhjFE^J.ǒTOJ8{?ThS%)qfSXGAv8#dO~?_3lJṴH16BhH`-ԪDռn6R>Սӯ()Nti\w%.0%pu!BYLG@NfslvWŢ9mX˅gsO J<^o@O-hȒr]K0$X,8OXdXŕ* OI[:>Q+2{~~(k mO9n-P)g@1P&߉ZK3z:chA)l G%;oF\Y:T q m!ePBbI }p<7[;r; 7vcYk? ȵǻ|n_c~www~ lpf k/A%x_W 䅾zjtWr`3_PWntoBwsb9˿8r|r/,bݏ^W?2丼=ޅ'4}J;n:M_ {={KK{in뮓1Q@,1S4:'ȶlMztWv0l'z*XSkE7:H{s}+*b5QBp;6!Kdlqu)eCeLjX<cF.EBUp+k9{,GXGL`Kӭ4;5_X9rg;Sb$E:LnWZ{rO=L2cט&q6w0rZMQ,؟I¢Uou=w}. -u8)g+q'D(Vrܶ5דVKcXr}DJdĵzFr*)JV*Sjm-y -;UHB :|-a8μ7鎂&WNgDd⥉Ѥ S*L#;m[A:bЙbN([Ϗ_Ywpw~Eueq~V -DzZ@L+4hH `PG$ ( :Dq_&Rаb2Q#*&.h\b 6s.bU2_o;{=<0`0vz~ U[ǖ|R)Za~on>2LauR-5iv[Y1mB5FikO/^^%5ԖmSTxn6\]g -Jxݹr0;gf\1!2o<|ⰱnFFZb鵛nطfEo xڥtCi'kr2fŝW|4#sxjm9-{F_uw.XvӮ% -.,;<U+㢂Ttв#s5rn];3 FHήS/7A4okq+m~\yk!i%_W䁦Н⋛f$}qkSs.mU.?xAB7 UVr"{d\($n|q2X$WIO(¦q)/yB'94](gH:n(:xQ':@kiw`t5D14Ƒ>|AD_0Lc~ -ɝorɡ]))d%YR2CT%6'1#l=lrށ|nI Y!oux~ ^ ~~ ^'[D>;yTF9,X̯ O'/1@>0X+ -:HQ<\{-ʩܑ2*嫻ƺR\Kh ZHޓ -'퇅bEB\ K{m=)zC,FB}~FBNXχ&_ EN'42mG\23?5iZo-7>s4ua-J(];YeXӏQ'\W?ؖ@\d;80e2e|Q#b5pIJK2i[UP"3pNL*ZOPk~GvV:4u#Sc-S:rh)42ͦdl$'G~2V?cK뒰I4mtp8N']x8Ac`48+5`8| F#گH7y= r8h0C ĭesBA?4L/2 "KNL;^&=G2y4=!;' vљEBFM¢(dXA Mg@{RS_WpF(AbK%?gL}5?;)⧚-IҨE+oSĮ$vc5;}4G;ռXPQءZۑ[qҲ;q]=]9iysuOt2ugrdًo~zqsޜt}/'k^pe?' d9qHV ,?RDt1iAz B:NćQ֜ࣛ$X7]ؤajHvJMkj^! 5j\.~z}Rm7O%9EkSr^PXE֨U$;>9`QKjµT;8660qmMmM&(iB<}Y*h~zUIn&N6\yÆVQZ#ɵv4j2\6Zm]Va0P݂ܴXhlM,HUWX'Tq - RF1iD˄ٙSaSDڞ5Wcle,g5,g m6MjҬ_H>K#N`!8|/Hei -6~ޯ),OPيc"$޲{e gS#,g϶Ukr -endstream -endobj -95 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -96 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -97 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -98 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 88 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -556 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0 -0 0 0 722 722 0 611 0 0 278 0 0 611 833 0 778 -667 0 0 667 611 722 667 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 0 0 611 278 0 0 278 0 611 611 -611 0 389 556 333 611 556 778 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 89 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [278 0 355 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 667 0 0 0 0 278 0 278 0 0 -0 556 556 0 0 556 0 0 0 222 0 0 222 0 0 556 -0 0 333 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 90 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 278 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 0 500 0 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 91 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 600 600 600 0 600 0 600 600 600 600 600 600 600 600 -600 600 600 600 0 600 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 -0 600 0 600 0 600 600 0 600 600 0 0 600 0 0 600 -600 0 600 0 600 0 0 600 0 0 0 0 0 0 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 92 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBKBNA+Symbol -/Encoding /Identity-H -/DescendantFonts [ 99 0 R ] -/ToUnicode 100 0 R ->> -endobj -99 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBKBNA+Symbol -/FontDescriptor 93 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 722 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 95 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 250 0 606 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 96 0 R ->> -endobj -26 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 35 -/LastChar 146 -/Widths [600 0 0 0 0 0 0 600 600 0 0 600 600 0 0 0 -0 0 0 0 0 0 0 600 0 600 600 600 0 0 600 600 -600 600 600 600 600 600 600 0 600 600 600 600 600 600 0 600 -600 600 600 600 600 600 600 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 600 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 600 -] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 97 0 R ->> -endobj -30 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 89 -/Widths [600 600 0 0 600 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 600 600 600 600 600 600 600 600 600 0 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 98 0 R ->> -endobj -100 0 obj -<< -/Filter /FlateDecode -/Length 226 ->> -stream -HTP=o [uCTXK~IsH .F~6?O}E;`Gƍ,g@*ph>L\3p7R>{| uRqApblҋYUǎ{BP czt&cL:!NBOi発.2~|fE{T.uǛ-V5nbc? m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -13 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 15 0 R -/Contents 14 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 12 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -43 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 45 0 R -/Contents 44 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -66 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 68 0 R -/Contents 67 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -72 0 obj -<< -/Type /Page -/Parent 47 0 R -/Resources 74 0 R -/Contents 73 0 R ->> -endobj -75 0 obj -<< -/Type /Page -/Parent 78 0 R -/Resources 77 0 R -/Contents 76 0 R ->> -endobj -79 0 obj -<< -/Type /Page -/Parent 78 0 R -/Resources 81 0 R -/Contents 80 0 R ->> -endobj -82 0 obj -<< -/Type /Page -/Parent 78 0 R -/Resources 84 0 R -/Contents 83 0 R ->> -endobj -85 0 obj -<< -/Type /Page -/Parent 78 0 R -/Resources 87 0 R -/Contents 86 0 R ->> -endobj -101 0 obj -<< -/S /D ->> -endobj -102 0 obj -<< -/Nums [0 101 0 R ] ->> -endobj -12 0 obj -<< -/Type /Pages -/Kids [1 0 R 13 0 R 17 0 R 20 0 R 23 0 R 27 0 R 31 0 R 34 0 R 37 0 R 40 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [43 0 R 48 0 R 51 0 R 54 0 R 57 0 R 60 0 R 63 0 R 66 0 R 69 0 R 72 0 R] -/Count 10 -/Parent 46 0 R ->> -endobj -78 0 obj -<< -/Type /Pages -/Kids [75 0 R 79 0 R 82 0 R 85 0 R] -/Count 4 -/Parent 46 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [12 0 R 47 0 R 78 0 R ] -/Count 24 -/MediaBox [0 0 612 792] ->> -endobj -103 0 obj -<< -/CreationDate (D:20210202102703-06'00') -/ModDate (D:20210202102703-06'00') -/Producer (Apple pstopdf) ->> -endobj -104 0 obj -<< -/Type /Catalog -/Pages 46 0 R -/PageLabels 102 0 R ->> -endobj -xref -0 105 -0000000000 65535 f -0000213160 00000 n -0000000016 00000 n -0000005417 00000 n -0000208810 00000 n -0000209021 00000 n -0000209443 00000 n -0000209838 00000 n -0000210381 00000 n -0000210916 00000 n -0000211271 00000 n -0000186485 00000 n -0000215244 00000 n -0000213241 00000 n -0000005583 00000 n -0000012980 00000 n -0000211669 00000 n -0000213325 00000 n -0000013137 00000 n -0000021185 00000 n -0000213409 00000 n -0000021341 00000 n -0000028088 00000 n -0000213493 00000 n -0000028256 00000 n -0000037015 00000 n -0000212081 00000 n -0000213577 00000 n -0000037195 00000 n -0000045328 00000 n -0000212546 00000 n -0000213661 00000 n -0000045510 00000 n -0000054279 00000 n -0000213745 00000 n -0000054485 00000 n -0000065156 00000 n -0000213829 00000 n -0000065338 00000 n -0000071794 00000 n -0000213913 00000 n -0000071987 00000 n -0000079142 00000 n -0000213997 00000 n -0000079325 00000 n -0000087083 00000 n -0000215614 00000 n -0000215381 00000 n -0000214081 00000 n -0000087251 00000 n -0000094169 00000 n -0000214165 00000 n -0000094300 00000 n -0000102264 00000 n -0000214249 00000 n -0000102444 00000 n -0000110282 00000 n -0000214333 00000 n -0000110450 00000 n -0000118380 00000 n -0000214417 00000 n -0000118524 00000 n -0000126871 00000 n -0000214501 00000 n -0000127054 00000 n -0000133280 00000 n -0000214585 00000 n -0000133450 00000 n -0000141910 00000 n -0000214669 00000 n -0000142116 00000 n -0000150244 00000 n -0000214753 00000 n -0000150427 00000 n -0000157585 00000 n -0000214837 00000 n -0000157791 00000 n -0000164609 00000 n -0000215519 00000 n -0000214921 00000 n -0000164790 00000 n -0000172274 00000 n -0000215005 00000 n -0000172468 00000 n -0000181679 00000 n -0000215089 00000 n -0000181861 00000 n -0000186316 00000 n -0000186626 00000 n -0000186823 00000 n -0000187029 00000 n -0000187224 00000 n -0000187424 00000 n -0000187615 00000 n -0000187805 00000 n -0000207999 00000 n -0000208202 00000 n -0000208407 00000 n -0000208609 00000 n -0000211059 00000 n -0000212860 00000 n -0000215173 00000 n -0000215202 00000 n -0000215713 00000 n -0000215837 00000 n -trailer -<< -/Size 105 -/Root 104 0 R -/Info 103 0 R -/ID [<26bafc0e6a81375a6e1e26aee7e2035a><26bafc0e6a81375a6e1e26aee7e2035a>] ->> -startxref -215909 -%%EOF diff --git a/docs/medley-irm/21-PERFORMANCE.pdf b/docs/medley-irm/21-PERFORMANCE.pdf deleted file mode 100644 index 6fb8a8e8..00000000 --- a/docs/medley-irm/21-PERFORMANCE.pdf +++ /dev/null @@ -1,4698 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4446 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-1)Tj -/TT4 1 Tf -10 0 0 10 54 559.2 Tm -[(21. )-76.4(PERFORMANCE ISSUES)]TJ -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 550.2 m -510.01 550.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 549.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 525.54 Tm -0.1322 Tw -(This chapter describes a number of areas that often contribute to performance problems in Medley)Tj -0 -1.2222 TD -0.1789 Tw -[(programs. Many performance problems can be improved by optimizing the use of storage, since)]TJ -T* -0.1078 Tw -[(allocating and reclaiming large amounts of storage is expensive. Another tactic that can sometimes)]TJ -T* -0.1767 Tw -(yield performance improvements is to change the use of variable bindings on the stack to reduce)Tj -T* -0.1333 Tw -[(variable lookup time. There are a number of tools that can be used to determine which parts of a)]TJ -T* -0 Tw -(computation cause performance bottlenecks.)Tj -/TT4 1 Tf -10 0 0 10 54 428.2 Tm -(Storage Allocation and Garbage Collection)Tj -ET -1 w -54.01 425.49 m -510.01 425.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 403.54 Tm -0.0122 Tw -(As an Medley application program runs, it creates data structures \(allocated out of free storage space\),)Tj -T* -0.0544 Tw -[(manipulates them, and then discards them. If there were no way to reclaim this space, over time the)]TJ -T* -0.0422 Tw -[(Medley memory would fill up, and the computation would come to a halt. Actually, long before this)]TJ -T* -0.2122 Tw -(could happen the system would probably become intolerably slow, due to data fragmentation,)Tj -T* -0.1478 Tw -(which occurs when the data currently in use are spread over many virtual memory pages, so that)Tj -T* -0.0078 Tw -[(most of the computer time must be spent swapping disk pages into physical memory. The problem of)]TJ -T* -0.0022 Tw -(fragmentation will occur in any situation where the virtual memory is significantly larger than the real)Tj -T* -0.31 Tw -(physical memory. To reduce swapping, you want to keep the "working set" \(the set of pages)Tj -T* -0 Tw -(containing actively referenced data\) as small as possible.)Tj -0 -2.8889 TD -0.1344 Tw -(You can write programs that dont generate much garbage data, or which recycle data, but such)Tj -0 -1.2222 TD -0.0533 Tw -[(programs tend to be complex and hard to debug. Spending effort writing such programs defeats the)]TJ -T* -0.1878 Tw -[(whole point of using a system with automatic storage allocation. An important part of any Lisp)]TJ -T* -0 Tw -(implementation is the garbage collector that finds discarded data and reclaims its space.)Tj -0 -2.8889 TD -0.0555 Tw -[(There are several well-known approaches to garbage collection. One method is the traditional mark-)]TJ -0 -1.2222 TD -0.28 Tw -(and-sweep, which identifies garbage data by marking all accessible data structures, and then)Tj -T* -0.2067 Tw -(sweeping through the data spaces to find all unmarked objects \(i.e., not referenced by any other)Tj -T* -0.21 Tw -[(object\). This method is guaranteed to reclaim all garbage, but it takes time proportional to the)]TJ -T* -0.0378 Tw -[(number of allocated objects, which may be very large. Also, the time that a mark-and-sweep garbage)]TJ -T* -0.0367 Tw -(collection takes is independent of the amount of garbage collected; it is possible to sweep through the)Tj -T* -0 Tw -(whole virtual memory, and only recover a small amount of garbage.)Tj -0 -2.8889 TD -0.1589 Tw -(For interactive applications, it is not acceptable to have long interruptions in a computation for to)Tj -0 -1.2222 TD -0.1156 Tw -[(garbage collect. Medley solves this problem by using a reference-counting garbage collector. With)]TJ -T* -0.02 Tw -[(this scheme, there is a table containing counts of how many times each object is referenced. This table)]TJ -T* -0.1733 Tw -(is updated as pointers are created and discarded, incurring a small overhead distributed over the)Tj -T* -0.0144 Tw -[(computation as a whole. \(Note: References from the stack are not counted, but are handled separately)]TJ -T* -0.0656 Tw -[(at "sweep" time; thus the vast majority of data manipulations do not cause updates to this table.\) At)]TJ -T* -0.0578 Tw -(opportune moments, the garbage collector scans this table, and reclaims all objects that are no longer)Tj -T* -0.0411 Tw -[(accessible \(have a reference count of zero\). The pause while objects are reclaimed is only the time for)]TJ -T* -0.0022 Tw -(scanning the reference count tables \(small\) plus time proportional to the amount of garbage that has to)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 4308 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0856 Tw -[(be collected \(typically less than a second\). Opportune times occur when a certain number of cells)]TJ -0 -1.2222 TD -0.04 Tw -(have been allocated or when the system has been waiting for you to type something for long enough.)Tj -T* -0.0355 Tw -[(The frequency of garbage collection is controlled by the functions and variables described below. For)]TJ -T* -0.1711 Tw -(the best system performance, it is desirable to adjust these parameters for frequent, short garbage)Tj -T* -0.1289 Tw -(collections, which will not interrupt interactive applications for very long, and which will have the)Tj -T* -0 Tw -(added benefit of reducing data fragmentation, keeping the working set small.)Tj -0 -2.8889 TD -0.0822 Tw -(One problem with the Medley garbage collector is that not all garbage is guaranteed to be collected.)Tj -0 -1.2222 TD -0.1067 Tw -(Circular data structures, which point to themselves directly or indirectly, are never reclaimed, since)Tj -T* -0.0178 Tw -[(their reference counts are always at least one. With time, this unreclaimable garbage may increase the)]TJ -T* -0.07 Tw -[(working set to unacceptable levels. Some users have worked with the same Medley virtual memory)]TJ -T* -0.04 Tw -(for a very long time, but it is a good idea to occasionally save all of your functions in files, reinitialize)Tj -T* -0.1989 Tw -[(Medley, and rebuild your system. Many users end their working day by issuing a command to)]TJ -T* -0.0344 Tw -[(rebuild their system and then leaving the machine to perform this task in their absence. If the system)]TJ -T* -0.2655 Tw -(seems to be spending too much time swapping \(an indication of fragmented working set\), this)Tj -T* -0 Tw -(procedure is definitely recommended.)Tj -0 -2.8889 TD -0.1933 Tw -(Another limitation of the reference-counting garbage collector is that the table in which reference)Tj -0 -1.2222 TD -0.11 Tw -[(counts are maintained is of fixed size. For typical Lisp objects that are pointed to from exactly one)]TJ -T* -0.1878 Tw -(place \(e.g., the individual conses in a list\), no burden is placed on this table, since objects whose)Tj -T* -0.0511 Tw -[(reference count is 1 are not explicitly represented in the table. However, large, "rich" data structures,)]TJ -T* -0.0667 Tw -(with many interconnections, backward links, cross references, etc, can contribute many entries to the)Tj -T* -0.0389 Tw -[(reference count table. For example, if you created a data structure that functioned as a doubly-linked)]TJ -T* -0 Tw -(list, such a structure would contribute an entry \(reference count 2\) for each element.)Tj -0 -2.8889 TD -0.2455 Tw -(When the reference count table fills up, the garbage collector can no longer maintain consistent)Tj -0 -1.2222 TD -0.0567 Tw -[(reference counts, so it stops doing so altogether. At this point, a window appears on the screen with)]TJ -T* -0 Tw -(the following message, and the debugger is entered:)Tj -/TT10 1 Tf -5.3333 -1.9333 TD -(Internal garbage collector tables have overflowed, due)Tj -0 -1.2222 TD -(to too many pointers with reference count greater than 1.)Tj -T* -(*** The garbage collector is now disabled. ***)Tj -T* -(Save your work and reload as soon as possible.)Tj -/TT8 1 Tf --5.3333 -2.9556 TD -0.2 Tw -[([This message is slightly misleading, in that it should say "count not equal to 1". In the current)]TJ -0 -1.2222 TD -0.1878 Tw -(implementation, the garbage collection of a large pointer array whose elements are not otherwise)Tj -T* -0.0833 Tw -(pointed to can place a special burden on the table, as each elements reference count simultaneously)Tj -T* -0.0433 Tw -(drops to zero and is thus added to the reference count table for the short period before the element is)Tj -T* -0 Tw -(itself reclaimed.])Tj -0 -2.8889 TD -0.0511 Tw -(If you exit the debugger window \(e.g., with the RETURN command\), your computation can proceed;)Tj -0 -1.2222 TD -0.2444 Tw -[(however, the garbage collector is no longer operating. Thus, your virtual memory will become)]TJ -T* -0.1122 Tw -(cluttered with objects no longer accessible, and if you continue for long enough in the same virtual)Tj -T* -0 Tw -(memory image you will eventually fill up the virtual memory backing store and grind to a halt.)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -15 0 obj -<< -/Length 6554 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PERFORMANCE ISSUES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(Garbage collection in Medley is controlled by the following functions and variables:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RECLAIM)Tj -/TT10 1 Tf -4.1999 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 150.6009 547.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 547.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Initiates a garbage collection. Returns 0.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RECLAIMMIN)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 174.4517 508.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 508.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1222 Tw -[(Sets the frequency of garbage collection. Interlisp keeps track of the number of cells of)]TJ -0 -1.2222 TD -0.0944 Tw -(any type that have been allocated; when it reaches a given number, a garbage collection)Tj -T* -0 Tw -(occurs. If )Tj -/TT14 1 Tf -4.5254 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, this number is set to )Tj -/TT14 1 Tf -9.6841 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. Returns the current setting of the number.)Tj -/TT12 1 Tf --23.1344 -2.5489 TD -(RECLAIMWAIT)Tj -/TT6 1 Tf -10 0 0 10 161.4 446.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 446.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2567 Tw -(Medley will invoke a )Tj -/TT10 1 Tf -10.6146 0 TD -0 Tw -(RECLAIM)Tj -/TT8 1 Tf -4.2007 0 TD -0.2567 Tw -[( if the system is idle and waiting for your input for)]TJ -/TT10 1 Tf --14.8152 -1.2889 TD -0 Tw -(RECLAIMWAIT)Tj -/TT8 1 Tf -6.6011 0 TD -( seconds \(currently set for 4 seconds\).)Tj -/TT10 1 Tf --9.2677 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GCGAG)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MESSAGE)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 179.857 395.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 395.58 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1444 Tw -[(Sets the behavior that occurs while a garbage collection is taking place. If )]TJ -/TT14 1 Tf -34.6819 0 TD -0 Tw -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1444 Tw -[( is)]TJ --38.8826 -1.2889 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2056 Tw -(, the cursor is complemented during a )Tj -/TT10 1 Tf -18.4892 0 TD -0 Tw -(RECLAIM)Tj -/TT8 1 Tf -4.2007 0 TD -0.2056 Tw -(; if )Tj -/TT14 1 Tf -1.7851 0 TD -0 Tw -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.4556 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4556 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2056 Tw -(, nothing)Tj --35.8305 -1.2889 TD -0 Tw -(happens. The value of )Tj -/TT10 1 Tf -10.2598 0 TD -(GCGAG)Tj -/TT8 1 Tf -3.0005 0 TD -( is its previous setting.)Tj -/TT10 1 Tf --15.9269 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GCTRP)Tj -/TT10 1 Tf -2.9999 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 139.8009 332.84 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 332.84 Tm -([Function])Tj --35.4033 -1.8444 TD -0.4822 Tw -(Returns the number of cells until the next garbage collection, according to the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RECLAIMMIN)Tj -/TT8 1 Tf -6.001 0 TD -( number.)Tj --11.3343 -2.9556 TD -0.09 Tw -(The amount of storage allocated to different data types, how much of that storage is in use, and the)Tj -0 -1.2222 TD -0 Tw -(amount of data fragmentation can be determined using the following function:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(STORAGE)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TYPES)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PAGETHRESHOLD)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 252.3167 245.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 245.3 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(STORAGE)Tj -/TT8 1 Tf -4.2007 0 TD -( prints out a summary, for each data type, of the amount of space allocated to the)Tj --4.2007 -1.2889 TD -0.0167 Tw -[(data type, and how much of that space is currently in use. If )]TJ -/TT14 1 Tf -27.1952 0 TD -0 Tw -(TYPES)Tj -/TT8 1 Tf -3.0005 0 TD -0.0167 Tw -[( is non-)]TJ -/TT10 1 Tf -3.2911 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5167 0 TD -(STORAGE)Tj -/TT8 1 Tf --35.8038 -1.2889 TD -0.1167 Tw -(only lists statistics for the specified types. )Tj -/TT14 1 Tf -19.6902 0 TD -0 Tw -(TYPES)Tj -/TT8 1 Tf -3.0005 0 TD -0.1167 Tw -[( can be a symbol or a list of types. If)]TJ -/TT14 1 Tf --22.6907 -1.2889 TD -0 Tw -(PAGETHRESHOLD)Tj -/TT8 1 Tf -7.8013 0 TD -0.0078 Tw -[( is non-)]TJ -/TT10 1 Tf -3.2734 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0078 Tw -(, then )Tj -/TT10 1 Tf -2.7348 0 TD -0 Tw -(STORAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0078 Tw -[( only lists statistics for types that have at least)]TJ -/TT14 1 Tf --19.8104 -1.2889 TD -0 Tw -(PAGETHRESHOLD)Tj -/TT8 1 Tf -7.8013 0 TD -( pages allocated to them.)Tj -/TT10 1 Tf --7.8013 -2.0667 TD -(STORAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2911 Tw -[( prints out a table with the column headings )]TJ -/TT10 1 Tf -22.4076 0 TD -0.6978 Tw -(Type, Assigned, Free)Tj --26.6083 -1.2889 TD -0.0622 Tw -(Items, In use,)Tj -/TT8 1 Tf -8.5258 0 TD -0.0256 Tw -[( and )]TJ -/TT10 1 Tf -2.244 0 TD -0.0622 Tw -[(Total alloc. Type)]TJ -/TT8 1 Tf -10.9884 0 TD -0.0256 Tw -[( is the name of the data type. )]TJ -/TT10 1 Tf -13.4414 0 TD -0 Tw -(Assigned)Tj -/TT8 1 Tf --35.1996 -1.2889 TD -0.2433 Tw -[(is how much of your virtual memory is set aside for items of this type. Currently,)]TJ -0 -1.2222 TD -0.0456 Tw -[(memory is allocated in quanta of two pages \(1024 bytes\). The numbers under )]TJ -/TT10 1 Tf -35.1886 0 TD -0 Tw -(Assigned)Tj -/TT8 1 Tf --35.1886 -1.2889 TD -0.1067 Tw -(show the number of pages and the total number of items that fit on those pages. )Tj -/TT10 1 Tf -37.5961 0 TD -0 Tw -(Free)Tj --37.5961 -1.2889 TD -(Items)Tj -/TT8 1 Tf -3.0005 0 TD -0.0533 Tw -[( shows how many items are available to be allocated \(using the )]TJ -/TT10 1 Tf -28.7479 0 TD -0 Tw -(create)Tj -/TT8 1 Tf -3.6006 0 TD -0.0533 Tw -[( construct,)]TJ --35.349 -1.2889 TD -0.1 Tw -(Chapter 8\); these constitute the "free list" for that data type. )Tj -/TT10 1 Tf -27.8177 0 TD -0.24 Tw -(In use)Tj -/TT8 1 Tf -3.8406 0 TD -0.1 Tw -[( shows how many)]TJ --31.6583 -1.2889 TD -0.0256 Tw -(items of this type are currently in use, i.e., have pointers to them and hence have not been)Tj -0 -1.2222 TD -0.0133 Tw -[(garbage collected. If this number is higher than your program seems to warrant, you may)]TJ -T* -0.0333 Tw -[(want to look for storage leaks. The sum of )]TJ -/TT10 1 Tf -19.349 0 TD -0.08 Tw -(Free Items)Tj -/TT8 1 Tf -6.081 0 TD -0.0333 Tw -[( and )]TJ -/TT10 1 Tf -2.2595 0 TD -0.08 Tw -(In use)Tj -/TT8 1 Tf -3.6806 0 TD -0.0333 Tw -[( is always the same)]TJ -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT16 19 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -21 0 obj -<< -/Length 5247 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0311 Tw -(as the total )Tj -/TT10 1 Tf -5.1436 0 TD -0 Tw -(Assigned)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[( items. )]TJ -/TT10 1 Tf -3.4962 0 TD -0.0756 Tw -(Total alloc)Tj -/TT8 1 Tf -6.6766 0 TD -0.0311 Tw -[( is the total number of items of this type that)]TJ --20.1172 -1.2889 TD -0 Tw -(have ever been allocated \(see )Tj -/TT10 1 Tf -13.0898 0 TD -(BOXCOUNT)Tj -/TT8 1 Tf -4.8008 0 TD -(, in the Performance Measuring section below\).)Tj --15.224 -2.0667 TD -0.2189 Tw -[(Note: )-432.3(The information about the number of items of type )]TJ -/TT10 1 Tf -28.0358 0 TD -0 Tw -(LISTP)Tj -/TT8 1 Tf -3.0005 0 TD -0.2189 Tw -[( is only)]TJ --27.7029 -1.2889 TD -0.2811 Tw -(approximate, because list cells are allocated in a special way that)Tj -0 -1.2222 TD -0 Tw -(precludes easy computation of the number of items per page.)Tj --3.3333 -2 TD -0.2233 Tw -[(Note: )223.3( )-177.9(When a data type is redeclared, the data type name is reassigned.)]TJ -3.3333 -1.2222 TD -0.3022 Tw -(Pages which were assigned to instances of the old data type are)Tj -T* -0 Tw -(labeled )Tj -/TT10 1 Tf -3.4541 0 TD -(**DEALLOC**)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --16.0552 -2.0667 TD -0.17 Tw -(At the end of the table printout, )Tj -/TT10 1 Tf -15.439 0 TD -0 Tw -(STORAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.17 Tw -[( prints a "Data Spaces Summary" listing the)]TJ --19.6397 -1.2889 TD -0.0711 Tw -(number of pages allocated to the major data areas in the virtual address space: the space)Tj -0 -1.2222 TD -0.1033 Tw -(for fixed-length items \(including datatypes\), the space for variable-length items, and the)Tj -T* -0.0356 Tw -[(space for symbols. Variable-length data types such as arrays have fixed-length "headers,")]TJ -T* -0.0956 Tw -[(which is why they also appear in the printout of fixed-length data types. Thus, the line)]TJ -T* -0.1256 Tw -(printed for the )Tj -/TT10 1 Tf -7.073 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[( data type says how many bitmaps have been allocated, but the)]TJ --10.6735 -1.2889 TD -0.1856 Tw -("assigned pages" column counts only the headers, not the space used by the variable-)Tj -0 -1.2222 TD -0.1055 Tw -[(length part of the bitmap. This summary also lists "Remaining Pages" in relation to the)]TJ -T* -0.1378 Tw -(largest possible virtual memory, not the size of the virtual memory backing file in use.)Tj -T* -0.0644 Tw -(This file may fill up, causing a )Tj -/TT10 1 Tf -14.0038 0 TD -0.1556 Tw -(STORAGE FULL)Tj -/TT8 1 Tf -7.3567 0 TD -0.0644 Tw -[( error, long before the "Remaining Pages")]TJ --21.3606 -1.2889 TD -0 Tw -(numbers reach zero.)Tj -/TT10 1 Tf -0 -2 TD -(STORAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.07 Tw -[( also prints out information about the sizes of the entries on the variable-length)]TJ --4.2007 -1.2889 TD -0.4689 Tw -[(data free list. The block sizes are broken down by the value of the variable)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(STORAGE.ARRAYSIZES)Tj -/TT8 1 Tf -10.8018 0 TD -0.1011 Tw -(, initially )Tj -/TT10 1 Tf -4.3717 0 TD -0.2422 Tw -(\(4 16 64 256 1024 4096 16384 NIL\))Tj -/TT8 1 Tf -21.4988 0 TD -0.1011 Tw -(, which)Tj --36.6722 -1.2889 TD -0 Tw -(yields a printout of the form:)Tj -/TT10 1 Tf -6 -1.9333 TD -(variable-datum free list: )Tj -0 -1 TD -(le 4 26 items; 104 cells.)Tj -T* -(le 16 72 items; 783 cells.)Tj -T* -(le 64 36 items; 964 cells.)Tj -T* -(le 256 28 items; 3155 cells.)Tj -T* -(le 1024 3 items; 1175 cells.)Tj -T* -(le 4096 5 items; 8303 cells.)Tj -T* -(le 16384 3 items; 17067 cells.)Tj -T* -(others 1 items; 17559 cells.)Tj -/TT8 1 Tf --6 -1.8444 TD -0.3611 Tw -(This information can be useful in determining if the variable-length data space is)Tj -0 -1.2222 TD -0.0656 Tw -[(fragmented. If most of the free space is composed of small items, then the allocator may)]TJ -T* -0.04 Tw -[(not be able to find room for large items, and will extend the variable datum space. If this)]TJ -T* -0.1122 Tw -(is extended too much, this could cause an )Tj -/TT10 1 Tf -19.5247 0 TD -0.2689 Tw -(ARRAYS FULL)Tj -/TT8 1 Tf -6.87 0 TD -0.1122 Tw -[( error, even if there is a lot of)]TJ --26.3947 -1.2889 TD -0 Tw -(space left in little chunks.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(STORAGE.LEFT)Tj -/TT10 1 Tf -7.1999 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 225.6009 121.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 121.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0656 Tw -(Provides a programmatic way of determining how much storage is left in the major data)Tj -0 -1.2222 TD -0.2433 Tw -[(areas in the virtual address space. Returns a list of the form )]TJ -/TT10 1 Tf -29.8157 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(MDSFREE)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -1.1834 0 TD -(MDSFRAC)Tj --35.7999 -1.2889 TD -(8MBFRAC)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ATOMFREE)Tj -/TT10 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ATOMFRAC)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, where the elements are interpreted as follows:)Tj -/TT18 1 Tf --8.4692 -2.0667 TD -(MDSFREE)Tj -/TT8 1 Tf -5.5333 0 TD -0.1544 Tw -(The number of free pages left in the main data space)Tj -0 -1.2889 TD -0.1644 Tw -(\(which includes both fixed-length and variable-length)Tj -0 -1.2222 TD -0 Tw -(data types\).)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -25 0 obj -<< -/Length 5197 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PERFORMANCE ISSUES)Tj -/TT18 1 Tf -9 0 0 9 190.2 569.54 Tm -(MDSFRAC)Tj -/TT8 1 Tf -5.5333 0 TD -0.0122 Tw -(The fraction of the total possible main data space that is)Tj -0 -1.2889 TD -0 Tw -(free.)Tj -/TT18 1 Tf --5.5333 -2 TD -(8MBFRAC)Tj -/TT8 1 Tf -5.5333 0 TD -0.1789 Tw -(The fraction of the total main data space that is free,)Tj -0 -1.2889 TD -0 Tw -(relative to eight megabytes.)Tj -0 -2 TD -0.2567 Tw -(This number is useful when using Medley on some)Tj -0 -1.2222 TD -0.0289 Tw -(early computers where the hardware limits the address)Tj -T* -1.2044 Tw -[(space to eight megabytes. The function)]TJ -/TT10 1 Tf -T* -0 Tw -(32MBADDRESSABLE)Tj -/TT8 1 Tf -9.0015 0 TD -0.2567 Tw -[( returns non-)]TJ -/TT10 1 Tf -6.2604 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2567 Tw -[( if the currently)]TJ --17.0622 -1.2889 TD -0.1689 Tw -(running Medley system can use the full 32 megabyte)Tj -0 -1.2222 TD -0 Tw -(address space.)Tj -/TT18 1 Tf --6.1333 -2 TD -(ATOMFREE)Tj -/TT8 1 Tf -6.1333 0 TD -(The number of free pages left in the symbol space.)Tj -/TT18 1 Tf --6.1333 -2.0667 TD -(ATOMFRAC)Tj -/TT8 1 Tf -6.1333 0 TD -(The fraction of the total symbol space that is free.)Tj --14.6667 -2.0667 TD -0.0811 Tw -[(Note:)-901.2(Another important space resource is the amount of the virtual memory backing)]TJ -3.3333 -1.2222 TD -0.2133 Tw -(file in use \(see )Tj -/TT10 1 Tf -7.3411 0 TD -0 Tw -(VMEMSIZE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2133 Tw -[(, Chapter 12\). The system will crash if the virtual)]TJ --12.1419 -1.2889 TD -0 Tw -(memory file is full, even if the address space is not exhausted.)Tj -/TT4 1 Tf -10 0 0 10 54 334.6 Tm -(Variable Bindings)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 331.89 m -510.01 331.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 309.94 Tm -0.0989 Tw -[(Different implementations of Lisp use different methods of accessing free variables. The binding of)]TJ -0 -1.2222 TD -0.1789 Tw -(variables occurs when a function or a )Tj -/TT10 1 Tf -17.9807 0 TD -0 Tw -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1789 Tw -[( is entered. For example, if the function )]TJ -/TT10 1 Tf -19.3903 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1789 Tw -[( has the)]TJ --41.5717 -1.2889 TD -0 Tw -(definition )Tj -/TT10 1 Tf -4.662 0 TD -0.1911 Tw -(\(LAMBDA \(A B\))Tj -/TT20 1 Tf -8.1835 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.33 0 TD -(BODY)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -(, the variables )Tj -/TT10 1 Tf -6.6253 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -[( and )]TJ -/TT10 1 Tf -2.3529 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -[( are bound so that any reference to )]TJ -/TT10 1 Tf -16.1883 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -[( or )]TJ -/TT10 1 Tf -1.6009 0 TD -0 Tw -(B)Tj -/TT8 1 Tf --44.7437 -1.2889 TD -(from )Tj -/TT14 1 Tf -2.4679 0 TD -(BODY)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -[( or any function called from )]TJ -/TT14 1 Tf -12.9253 0 TD -0 Tw -(BODY)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -[( will refer to the arguments to the function )]TJ -/TT10 1 Tf -19.5617 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -[( and not)]TJ --41.5559 -1.2889 TD -0.1333 Tw -(to the value of )Tj -/TT10 1 Tf -7.1095 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.1333 Tw -[( or )]TJ -/TT10 1 Tf -1.7076 0 TD -0 Tw -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.1333 Tw -[( from a higher level function. All variable names \(symbols\) have a top level)]TJ --10.0173 -1.2889 TD -0.0189 Tw -[(value cell which is used if the variable has not been bound in any function. In discussions of variable)]TJ -0 -1.2222 TD -0.1911 Tw -(access, it is useful to distinguish between three types of variable access: local, special and global.)Tj -T* -0.0733 Tw -(Local variable access is the use of a variable that is bound within the function from which it is used.)Tj -T* -0.1622 Tw -[(Special variable access is the use of a variable that is bound by another function. Global variable)]TJ -T* -0.1789 Tw -[(access is the use of a variable that has not been bound in any function. We will often refer to a)]TJ -T* -0.0278 Tw -[(variable all of whose accesses are local as a "local variable." Similarly, a variable all of whose accesses)]TJ -T* -0 Tw -(are global we call a "global variable.")Tj -0 -2.8889 TD -0.1167 Tw -(In a deep bound system, a variable is bound by saving on the stack the variables name together)Tj -0 -1.2222 TD -0.0911 Tw -[(with a value cell which contains that variables new value. When a variable is accessed, its value is)]TJ -T* -0.05 Tw -(found by searching the stack for the most recent binding \(occurrence\) and retrieving the value stored)Tj -T* -0 Tw -(there. If the variable is not found on the stack, the variables top level value cell is used.)Tj -0 -2.8889 TD -0.0967 Tw -(In a shallow bound system, a variable is bound by saving on the stack the variable name and the)Tj -0 -1.2222 TD -0.0522 Tw -[(variables old value and putting the new value in the variables top level value cell. When a variable)]TJ -T* -0 Tw -(is accessed, its value is always found in its top level value cell.)Tj -0 -2.8889 TD -(The deep binding scheme has one disadvantage: the amount of cpu time required to fetch the value of)Tj -0 -1.2222 TD -(a variable depends on the stack distance between its use and its binding. The compiler can determine)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT14 18 0 R -/TT18 23 0 R -/TT20 27 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -29 0 obj -<< -/Length 5118 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(local variable accesses and compiles them as fetches directly from the stack. Thus this computation)Tj -0 -1.2222 TD -(cost only arises in the use of variable not bound in the local frame \("free" variables\). The process of)Tj -T* -(finding the value of a free variable is called free variable lookup.)Tj -0 -2.8889 TD -0.0022 Tw -(In a shallow bound system, the amount of cpu time required to fetch the value of a variable is constant)Tj -0 -1.2222 TD -0.0044 Tw -(regardless of whether the variable is local, special or global. The disadvantages of this scheme are that)Tj -T* -0.0767 Tw -(the actual binding of a variable takes longer \(thus slowing down function call\), the cells that contain)Tj -T* -0.0089 Tw -(the current in use values are spread throughout the space of all symbol value cells \(thus increasing the)Tj -T* -0.2378 Tw -(working set size of functions\) and context switching between processes requires unwinding and)Tj -T* -0 Tw -(rewinding the stack \(thus effectively prohibiting the use of context switching for many applications\).)Tj -0 -2.8889 TD -0.2644 Tw -(Medley uses deep binding, because of the working set considerations and the speed of context)Tj -0 -1.2222 TD -0.0544 Tw -[(switching. The free variable lookup routine is microcoded, thus greatly reducing the search time. In)]TJ -T* -0.0989 Tw -(benchmarks, the largest percentage of free variable lookup time was 20 percent of the total ellapsed)Tj -T* -0 Tw -(time; the normal time was between 5 and 10 percent.)Tj -0 -2.8889 TD -0.2122 Tw -(Because of the deep binding, you can sometimes significantly improve performance by declaring)Tj -0 -1.2222 TD -0.0067 Tw -[(global variables. If a variable is declared global, the compiler will compile an access to that variable as)]TJ -T* -0.0978 Tw -[(a retrieval of its top level value, completely bypassing a stack search. This should be done only for)]TJ -T* -0 Tw -(variables that are never bound in functions, such as global databases and flags.)Tj -0 -2.8889 TD -0.0511 Tw -(Global variable declarations should be done using the )Tj -/TT10 1 Tf -24.466 0 TD -0 Tw -(GLOBALVARS)Tj -/TT8 1 Tf -6.001 0 TD -0.0511 Tw -[( file manager command \(Chapter)]TJ --30.467 -1.2889 TD -0 Tw -(17\). Its form is )Tj -/TT10 1 Tf -6.7915 0 TD -(\(GLOBALVARS)Tj -/TT20 1 Tf -6.6011 0 TD -( )Tj -/TT14 1 Tf -0.5 0 TD -(VAR)Tj -1.8008 -0.3333 TD -(1)Tj -/TT20 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT20 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAR)Tj -1.7997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --21.5934 -3.2889 TD -0.0722 Tw -[(Another way of improving performance is to declare variables as local within a function. Normally,)]TJ -0 -1.2222 TD -0.0311 Tw -(all variables bound within a function have their names put on the stack, and these names are scanned)Tj -T* -0.0422 Tw -[(during free variable lookup. If a variable is declared to be local within a function, its name is not put)]TJ -T* -0.2278 Tw -(on the stack, so it is not scanned during free variable lookup, which may increase the speed of)Tj -T* -0.0433 Tw -[(lookups. The compiler can also make some other optimizations if a variable is known to be local to a)]TJ -T* -0 Tw -(function.)Tj -0 -2.8889 TD -0.0422 Tw -(A variable may be declared as local within a function by including the form )Tj -/TT10 1 Tf -34.2371 0 TD -0 Tw -(\(DECLARE)Tj -/TT20 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.2922 0 TD -(\(LOCALVARS)Tj -/TT14 1 Tf --39.3301 -1.2889 TD -(VAR)Tj -1.8 -0.3333 TD -(1)Tj -/TT20 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.4956 0 TD -(...)Tj -/TT20 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.4956 0 TD -(VAR)Tj -1.7997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.2456 Tw -[( following the argument list in the definition of the function. Local variable)]TJ --8.7913 -1.6222 TD -0.1011 Tw -[(declarations only effect the compilation of a function. Interpreted functions put all of their variable)]TJ -0 -1.2222 TD -0 Tw -(names on the stack, regardless of any declarations.)Tj -/TT4 1 Tf -10 0 0 10 102 120.8 Tm -(Performance Measuring)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 118.09 m -558.01 118.09 l -S -BT -/TT8 1 Tf -9 0 0 9 126 96.14 Tm -0.0544 Tw -(This section describes functions that gather and display statistics about a computation, such as as the)Tj -T* -0.0533 Tw -(elapsed time, and the number of data objects of different types allocated. )Tj -/TT10 1 Tf -33.2861 0 TD -0 Tw -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0533 Tw -[( and )]TJ -/TT10 1 Tf -2.2995 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[( gather)]TJ --42.1867 -1.2889 TD -0.0556 Tw -(statistics on the evaluation of a specified form. )Tj -/TT10 1 Tf -21.4624 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0556 Tw -[( gathers statistics on individual functions)]TJ --26.8633 -1.2889 TD -0.03 Tw -[(called during a computation. These functions can be used to determine which parts of a computation)]TJ -0 -1.2222 TD -0 Tw -(are consuming the most resources \(time, storage, etc.\), and could most profitably be improved.)Tj -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT14 18 0 R -/TT20 27 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -32 0 obj -<< -/Length 8695 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PERFORMANCE ISSUES)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TIMEALL)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMEFORM)Tj -/TT16 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NUMBEROFTIMES)Tj -/TT16 1 Tf -7.8013 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMEWHAT)Tj -/TT16 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(INTERPFLG)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 364.8343 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 401.97 568.2 Tm -([NLambda Function])Tj --30.6633 -1.8444 TD -0.1756 Tw -(Evaluates the form )Tj -/TT14 1 Tf -9.1194 0 TD -0 Tw -(TIMEFORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.1756 Tw -[( and prints statistics on time spent in various categories)]TJ --13.9202 -1.2889 TD -0 Tw -(\(elapsed, keyboard wait, swapping time, gc\) and data type allocation.)Tj -0 -2 TD -0.4011 Tw -(For more accurate measurement on small computations, )Tj -/TT14 1 Tf -27.9196 0 TD -0 Tw -(NUMBEROFTIMES)Tj -/TT8 1 Tf -7.8013 0 TD -0.4011 Tw -[( may be)]TJ --35.7209 -1.2889 TD -0.0644 Tw -(specified \(its default is 1\) to cause )Tj -/TT14 1 Tf -15.5405 0 TD -0 Tw -(TIMEFORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0644 Tw -[( to be executed )]TJ -/TT14 1 Tf -7.0991 0 TD -0 Tw -(NUMBEROFTIMES)Tj -/TT8 1 Tf -7.8013 0 TD -0.0644 Tw -[( times. To)]TJ --35.2416 -1.2889 TD -0.0822 Tw -(improve the accuracy of timing open-coded operations in this case, )Tj -/TT10 1 Tf -30.6772 0 TD -0 Tw -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0822 Tw -[( compiles a)]TJ --34.8779 -1.2889 TD -0.0767 Tw -(form to execute )Tj -/TT14 1 Tf -7.335 0 TD -0 Tw -(TIMEFORM)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.3267 0 TD -(NUMBEROFTIMES)Tj -/TT8 1 Tf -7.8013 0 TD -0.0767 Tw -[( times \(unless )]TJ -/TT14 1 Tf -6.5186 0 TD -0 Tw -(INTERPFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0767 Tw -[( is non-)]TJ -/TT10 1 Tf -3.4111 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0767 Tw -(\), and)Tj --37.3946 -1.2889 TD -0 Tw -(then times the execution of the compiled form.)Tj -2.6667 -2 TD -[(Note:)-901.2(If )]TJ -/TT10 1 Tf -4.3799 0 TD -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -0.1267 Tw -[( is called with )]TJ -/TT14 1 Tf -6.8704 0 TD -0 Tw -(NUMBEROFTIMES)Tj -/TT8 1 Tf -7.8013 0 TD -0.1267 Tw -[( > 1, the dummy form is)]TJ --19.919 -1.2889 TD -0.1533 Tw -[(compiled with compiler optimizations on. This means that it is not)]TJ -0 -1.2222 TD -0.5244 Tw -(meaningful to use )Tj -/TT10 1 Tf -9.8014 0 TD -0 Tw -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -0.5244 Tw -[( with very simple forms that are)]TJ --14.002 -1.2889 TD -0.0278 Tw -[(optimized out by the compiler. For example, )]TJ -/TT10 1 Tf -20.3975 0 TD -0.0678 Tw -(\(TIMEALL \(IPLUS 2)Tj --20.3975 -1.2889 TD -0.3933 Tw -(3\) 1000\))Tj -/TT8 1 Tf -5.1941 0 TD -0.1644 Tw -[( will time a compiled function which simply returns the)]TJ --5.1941 -1.2889 TD -0 Tw -(number 5, since )Tj -/TT10 1 Tf -7.2148 0 TD -(\(IPLUS 2 3\))Tj -/TT8 1 Tf -6.6011 0 TD -( is optimized to the integer 5.)Tj -/TT14 1 Tf --19.8159 -2.0667 TD -(TIMEWHAT)Tj -/TT8 1 Tf -4.8008 0 TD -0.28 Tw -[( restricts the statistics to specific categories. It can be an atom or list of)]TJ --4.8008 -1.2889 TD -0.0356 Tw -(datatypes to monitor, and/or the atom )Tj -/TT10 1 Tf -17.6093 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0356 Tw -[( to monitor time spent. Note that ordinarily,)]TJ -/TT10 1 Tf --20.0097 -1.2889 TD -0 Tw -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -( monitors all time and datatype usage, so this argument is rarely needed. )Tj -/TT10 1 Tf --4.2007 -2.0667 TD -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -( returns the value of the last evaluation of )Tj -/TT14 1 Tf -18.6484 0 TD -(TIMEFORM)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT10 1 Tf --30.3166 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TIME)Tj -/TT4 1 Tf -10 0 0 10 129 316.86 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.7783 316.86 Tm -(TIMEX)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMEN)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMETYP)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 233.4941 316.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 401.97 316.86 Tm -([NLambda Function])Tj -/TT10 1 Tf --30.6633 -1.8444 TD -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.1122 Tw -[( evaluates the form )]TJ -/TT14 1 Tf -9.1598 0 TD -0 Tw -(TIMEX)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -(, and prints out the number of )Tj -/TT10 1 Tf -14.3339 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.1122 Tw -[( cells allocated and)]TJ --31.295 -1.2889 TD -0.1989 Tw -[(computation time. Garbage collection time is subtracted out. This function has been)]TJ -0 -1.2222 TD -0 Tw -(largely replaced by )Tj -/TT10 1 Tf -8.7275 0 TD -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --12.9282 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9644 0 TD -(TIMEN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0444 Tw -[( is greater than 1, )]TJ -/TT14 1 Tf -8.0577 0 TD -0 Tw -(TIMEX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0444 Tw -[( is executed )]TJ -/TT14 1 Tf -5.5352 0 TD -0 Tw -(TIMEN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0444 Tw -[( times, and )]TJ -/TT10 1 Tf -5.229 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( prints out \(number)]TJ --31.1881 -1.2889 TD -0.0267 Tw -(of conses\)/)Tj -/TT14 1 Tf -4.993 0 TD -0 Tw -(TIMEN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0267 Tw -(, and \(computation time\)/)Tj -/TT14 1 Tf -11.6718 0 TD -0 Tw -(TIMEN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0267 Tw -[(. If )]TJ -/TT14 1 Tf -1.7499 0 TD -0 Tw -(TIMEN)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2767 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2767 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0267 Tw -[(, it defaults to 1. This)]TJ --30.3699 -1.2889 TD -0 Tw -(is useful for more accurate measurement on small computations.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9644 0 TD -(TIMETYP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0444 Tw -[( is 0, )]TJ -/TT10 1 Tf -2.3482 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( measures and prints total )]TJ -/TT16 1 Tf -11.96 0 TD -0 Tw -(real)Tj -/TT8 1 Tf -1.5 0 TD -0.0444 Tw -[( time as well as computation time. If)]TJ -/TT14 1 Tf --23.3736 -1.2889 TD -0 Tw -(TIMETYP)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.3311 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3311 0 TD -(3)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5811 0 TD -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0811 Tw -[( measures and prints garbage collection time as well as computation)]TJ --9.0446 -1.2889 TD -0 Tw -(time. If )Tj -/TT14 1 Tf -3.6489 0 TD -(TIMETYP)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -( measures and prints the number of pagefaults.)Tj -/TT10 1 Tf --12.4502 -2.0667 TD -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -( returns the value of the last evaluation of )Tj -/TT14 1 Tf -18.6484 0 TD -(TIMEX)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --26.716 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BOXCOUNT)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TYPE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 187.5052 153.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 153.12 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0478 Tw -(Returns the number of data objects of type )Tj -/TT14 1 Tf -19.4047 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -[( allocated since this Interlisp system was)]TJ --21.8051 -1.2889 TD -0.0656 Tw -(created. )Tj -/TT14 1 Tf -4.115 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( can be any data type name \(see )]TJ -/TT10 1 Tf -14.7788 0 TD -0 Tw -(TYPENAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.0656 Tw -[(, Chapter 8\). If )]TJ -/TT14 1 Tf -7.173 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( is )]TJ -/TT10 1 Tf -1.346 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -(, it)Tj --38.8146 -1.2889 TD -0 Tw -(defaults to )Tj -/TT10 1 Tf -4.939 0 TD -(FIXP)Tj -/TT8 1 Tf -2.4004 0 TD -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the corresponding counter is reset to )Tj -/TT14 1 Tf -16.9038 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --34.8381 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(CONSCOUNT)Tj -/TT16 1 Tf -5.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 174.4526 90.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 90.38 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0344 Tw -(Returns the number of )Tj -/TT10 1 Tf -10.3761 0 TD -0 Tw -(CONS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( cells allocated since this Interlisp system was created. If )]TJ -/TT14 1 Tf -25.6177 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0344 Tw -[( is)]TJ --38.9942 -1.2889 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, resets the counter to )Tj -/TT14 1 Tf -9.6611 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(. Equivalent to )Tj -/TT10 1 Tf -6.9302 0 TD -(\(BOXCOUNT LISTP)Tj -/TT20 1 Tf -9.6016 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT16 19 0 R -/TT20 27 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -35 0 obj -<< -/Length 5211 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PAGEFAULTS)Tj -/TT10 1 Tf -5.9999 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 220.2017 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the number of page faults since this Interlisp system was created.)Tj -/TT4 1 Tf -10 0 0 10 102 509.26 Tm -(BREAKDOWN)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 506.55 m -558.01 506.55 l -S -BT -/TT10 1 Tf -9 0 0 9 126 484.6 Tm -(TIMEALL)Tj -/TT8 1 Tf -4.2007 0 TD -0.4189 Tw -[( collects statistics for whole computations. )]TJ -/TT10 1 Tf -22.0304 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.4189 Tw -[( is available to analyze the)]TJ --31.6319 -1.2889 TD -0 Tw -(breakdown of computation time \(or any other measureable quantity\) function by function.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BREAKDOWN)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FN)Tj -1.2 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FN)Tj -1.1997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 264.7509 450.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 407.33 450.66 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.0333 Tw -(You call )Tj -/TT10 1 Tf -3.9085 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0333 Tw -[( giving it a list of function names \(unevaluated\). These functions are)]TJ --9.3093 -1.2889 TD -0 Tw -(modified so that they keep track of various statistics.)Tj -0 -2 TD -0.2578 Tw -(To remove functions from those being monitored, simply )Tj -/TT10 1 Tf -27.6281 0 TD -0 Tw -(UNBREAK)Tj -/TT8 1 Tf -4.2007 0 TD -0.2578 Tw -[( \(Chapter 15\) the)]TJ --31.8288 -1.2889 TD -0.4578 Tw -[(functions, thereby restoring them to their original state. To add functions, call)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.08 Tw -[( on the new functions. This will not reset the counters for any functions not)]TJ --5.4009 -1.2889 TD -0.1722 Tw -[(on the new list. However )]TJ -/TT10 1 Tf -12.6554 0 TD -0 Tw -(\(BREAKDOWN\))Tj -/TT8 1 Tf -6.6011 0 TD -0.1722 Tw -[( will zero the counters of all functions being)]TJ --19.2565 -1.2889 TD -0 Tw -(monitored.)Tj -0 -2 TD -0.1411 Tw -(The procedure used for measuring is such that if one function calls other and both are)Tj -0 -1.2222 TD -0.03 Tw -("broken down", then the time \(or whatever quantity is being measured\) spent in the inner)Tj -T* -0 Tw -(function is )Tj -/TT16 1 Tf -4.9219 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( charged to the outer function as well. )Tj -/TT10 1 Tf --6.2549 -2 TD -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.16 Tw -[( will )]TJ -/TT16 1 Tf -2.527 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.16 Tw -[( give accurate results if a function being measured is not returned)]TJ --9.2609 -1.2889 TD -0.0511 Tw -(from normally, e.g., a lower )Tj -/TT10 1 Tf -12.7863 0 TD -0 Tw -(RETFROM)Tj -/TT8 1 Tf -4.2007 0 TD -0.0511 Tw -[( \(or )]TJ -/TT10 1 Tf -1.8761 0 TD -0 Tw -(ERROR)Tj -/TT8 1 Tf -3.0005 0 TD -0.0511 Tw -[(\) bypasses it. In this case, all of the time)]TJ --21.8636 -1.2889 TD -0.1067 Tw -(\(or whatever quantity is being measured\) between the time that function is entered and)Tj -0 -1.2222 TD -0 Tw -(the time the next function being measured is entered will be charged to the first function.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BRKDWNRESULTS)Tj -/TT16 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RETURNVALUESFLG)Tj -/TT10 1 Tf -9.0015 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 314.264 241.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 241.12 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(BRKDWNRESULTS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1133 Tw -[( prints the analysis of the statistics requested as well as the number of)]TJ --7.8013 -1.2889 TD -0.1589 Tw -[(calls to each function. If )]TJ -/TT14 1 Tf -11.9069 0 TD -0 Tw -(RETURNVALUESFLG)Tj -/TT8 1 Tf -9.0015 0 TD -0.1589 Tw -[( is non-)]TJ -/TT10 1 Tf -3.5756 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6589 0 TD -(BRKDWNRESULTS)Tj -/TT8 1 Tf -7.8013 0 TD -0.1589 Tw -[( will not to)]TJ --34.7445 -1.2889 TD -0.1678 Tw -(print the results, but instead return them in the form of a list of elements of the form)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FNNAME)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(#CALLS)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --12.6021 -2.0667 TD -(Example:)Tj -/TT21 1 Tf -6 -1.9333 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(BREAKDOWN SUPERPRINT SUBPRINT COMMENT1\))Tj --0.9868 -1 TD -(\(SUPERPRINT SUBPRINT COMMENT1\))Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(PRETTYDEF \(SUPERPRINT\) FOO\))Tj --0.9868 -1 TD -(FOO.;3)Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS\))Tj --0.9868 -1 TD -(FUNCTIONS TIME #CALLS PER CALL %)Tj -T* -(SUPERPRINT 8.261 365 0.023 20)Tj -T* -(SUBPRINT 31.910 141 0.226 76)Tj -T* -(COMMENT1 1.612 8 0.201 4)Tj -T* -(TOTAL 41.783 514 0.081)Tj -T* -(NIL)Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS T\))Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT16 19 0 R -/TT21 37 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -39 0 obj -<< -/Length 6134 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PERFORMANCE ISSUES)Tj -/TT10 1 Tf -9 0 0 9 180 570.14 Tm -(\(\(SUPERPRINT 365 8261\) \(SUBPRINT 141 31910\))Tj -0 -1 TD -(\(COMMENT1 8 1612\)\))Tj --11.3333 -2.8822 TD -(BREAKDOWN)Tj -/TT6 1 Tf -10 0 0 10 126.6079 535.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 129.3862 535.2 Tm -(can be used to measure other statistics, by setting the following variables:)Tj -/TT12 1 Tf --3.0429 -2.5489 TD -(BRKDWNTYPE)Tj -/TT6 1 Tf -10 0 0 10 156 512.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 512.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.03 Tw -(To use )Tj -/TT10 1 Tf -3.2246 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.03 Tw -[( to measure other statistics, before calling )]TJ -/TT10 1 Tf -18.689 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.03 Tw -(, set the variable)Tj -/TT10 1 Tf --32.7153 -1.2889 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.3267 Tw -[( to the quantity of interest, e.g., )]TJ -/TT10 1 Tf -16.2569 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.8267 0 TD -(CONSES)Tj -/TT8 1 Tf -3.6006 0 TD -0.3267 Tw -(, etc, or a list of such)Tj --29.0855 -1.2889 TD -0.2633 Tw -[(quantities. Whenever )]TJ -/TT10 1 Tf -10.7334 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.2633 Tw -[( is called with )]TJ -/TT10 1 Tf -7.4171 0 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.2633 Tw -[( not )]TJ -/TT10 1 Tf -2.4808 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.7633 0 TD -(BREAKDOWN)Tj -/TT8 1 Tf --34.5967 -1.2889 TD -0.1367 Tw -[(performs the necessary changes to its internal state to conform to the new analysis. In)]TJ -0 -1.2222 TD -0.1822 Tw -(particular, if this is the first time an analysis is being run with a particular statistic, a)Tj -T* -0.1422 Tw -[(measuring function will be defined, and the compiler will be called to compile it. The)]TJ -T* -0.1644 Tw -[(functions being broken down will be redefined to call this measuring function. When)]TJ -/TT10 1 Tf -T* -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0611 Tw -[( is through initializing, it sets )]TJ -/TT10 1 Tf -13.4843 0 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.0611 Tw -[( back to )]TJ -/TT10 1 Tf -3.8586 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -[(. Subsequent calls to)]TJ -/TT10 1 Tf --30.5451 -1.2889 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.2067 Tw -[( will measure the new statistic until )]TJ -/TT10 1 Tf -17.3939 0 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.2067 Tw -[( is again set and a new)]TJ -/TT10 1 Tf --28.7958 -1.2889 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -( performed.)Tj -/TT12 1 Tf --8.0675 -2.5489 TD -(BRKDWNTYPES)Tj -/TT6 1 Tf -10 0 0 10 161.4 370.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 370.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2144 Tw -(The list )Tj -/TT10 1 Tf -3.9347 0 TD -0 Tw -(BRKDWNTYPES)Tj -/TT8 1 Tf -6.6011 0 TD -0.2144 Tw -[( contains the information used to analyze new statistics. Each)]TJ --10.5358 -1.2889 TD -0.0344 Tw -(entry on )Tj -/TT10 1 Tf -4.0352 0 TD -0 Tw -(BRKDWNTYPES)Tj -/TT8 1 Tf -6.6011 0 TD -0.0344 Tw -[( should be of the form )]TJ -/TT10 1 Tf -10.2184 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.6812 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.6812 0 TD -(FUNCTION)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0344 Tw -(, where )Tj -/TT14 1 Tf -3.5879 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( is)]TJ --39.0072 -1.2889 TD -0.22 Tw -(a statistic name \(as would appear in )Tj -/TT10 1 Tf -17.6767 0 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -(\), )Tj -/TT14 1 Tf -1.053 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.22 Tw -[( computes the statistic, and)]TJ -/TT14 1 Tf --27.1311 -1.2889 TD -0 Tw -(FUNCTION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0967 Tw -[( \(optional\) converts the value of form to some more interesting quantity. For)]TJ --4.8008 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.3824 0 TD -0.3211 Tw -(\(TIME \(CLOCK 2\) \(LAMBDA \(X\) \(FQUOTIENT X 1000\)\)\))Tj -/TT8 1 Tf -31.0525 0 TD -0.1333 Tw -[( measures)]TJ --35.4348 -1.2889 TD -0.6822 Tw -(computation time and reports the result in seconds instead of milliseconds.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(BRKDWNTYPES)Tj -/TT8 1 Tf -6.6011 0 TD -0.16 Tw -[( currently contains entries for )]TJ -/TT10 1 Tf -14.0661 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.66 0 TD -(CONSES)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.66 0 TD -(PAGEFAULTS)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.66 0 TD -(BOXES)Tj -/TT8 1 Tf -3.0005 0 TD -0.16 Tw -(, and)Tj -/TT10 1 Tf --37.6496 -1.2889 TD -0 Tw -(FBOXES)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --3.6006 -2.0667 TD -(Example:)Tj -/TT21 1 Tf -6 -1.9333 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(SETQ BRKDWNTYPE \(TIME CONSES\)\))Tj --0.9868 -1 TD -(\(TIME CONSES\))Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(BREAKDOWN MATCH CONSTRUCT\))Tj --0.9868 -1 TD -(\(MATCH CONSTRUCT\))Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(FLIP \(A B C D E F G H C Z\) \(.. $1 .. #2 ..\))Tj --0.9868 -1 TD -(\(.. #3 ..\)\))Tj -T* -(\(A B D E F G H Z\))Tj -/TT21 1 Tf -T* -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS\))Tj --0.9868 -1 TD -(FUNCTIONS TIME #CALLS PER CALL %)Tj -T* -(MATCH 0.036 1 0.036 54)Tj -T* -(CONSTRUCT 0.031 1 0.031 46)Tj -T* -(TOTAL 0.067 2 0.033 )Tj -T* -(FUNCTIONS CONSES #CALLS PER CALL %)Tj -T* -(MATCH 32 1 32.000 40)Tj -T* -(CONSTRUCT 49 1 49.000 60)Tj -T* -(TOTAL 81 2 40.500 )Tj -T* -(NIL)Tj -/TT8 1 Tf --6 -1.8444 TD -0.09 Tw -(Occasionally, a function being analyzed is sufficiently fast that the overhead involved in)Tj -0 -1.2222 TD -0.0478 Tw -[(measuring it obscures the actual time spent in the function. If you were using )]TJ -/TT10 1 Tf -35.3422 0 TD -0 Tw -(TIME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0478 Tw -(, you)Tj --37.7425 -1.2889 TD -0.0233 Tw -(would specify a value for )Tj -/TT14 1 Tf -11.5913 0 TD -0 Tw -(TIMEN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0233 Tw -[( greater than 1 to give greater accuracy. A similar option)]TJ --14.5918 -1.2889 TD -0.1533 Tw -(is available for )Tj -/TT10 1 Tf -7.169 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.1533 Tw -[(. You can specify that a function\(s\) be executed a multiple)]TJ -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT21 37 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -42 0 obj -<< -/Length 6780 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.1133 Tw -(number of times for each measurement, and the average value reported, by including a)Tj -0 -1.2222 TD -0.0178 Tw -(number in the list of functions given to )Tj -/TT10 1 Tf -17.5846 0 TD -0 Tw -(BREAKDOWN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0178 Tw -[(. For example, )]TJ -/TT10 1 Tf -6.8172 0 TD -0 Tw -(BREAKDOWN\(EDITCOM)Tj --29.8027 -1.2889 TD -0.32 Tw -(EDIT4F 10 EDIT4E EQP\))Tj -/TT8 1 Tf -13.5621 0 TD -0.1333 Tw -[( means normal breakdown for )]TJ -/TT10 1 Tf -14.3112 0 TD -0 Tw -(EDITCOM)Tj -/TT8 1 Tf -4.2007 0 TD -0.1333 Tw -[( and )]TJ -/TT10 1 Tf -2.4595 0 TD -0 Tw -(EDIT4F)Tj -/TT8 1 Tf -3.6006 0 TD -0.1333 Tw -[( but)]TJ --38.1341 -1.2889 TD -0.0289 Tw -(executes \(the body of\) )Tj -/TT10 1 Tf -10.0638 0 TD -0 Tw -(EDIT4E)Tj -/TT8 1 Tf -3.6006 0 TD -0.0289 Tw -[( and )]TJ -/TT10 1 Tf -2.2506 0 TD -0 Tw -(EQP)Tj -/TT8 1 Tf -1.8003 0 TD -0.0289 Tw -[( 10 times each time they are called. Of course, the)]TJ --17.7153 -1.2889 TD -0.12 Tw -(functions so measured must not cause any harmful side effects, since they are executed)Tj -0 -1.2222 TD -0.0867 Tw -[(more than once for each call. The printout from )]TJ -/TT10 1 Tf -22.2661 0 TD -0 Tw -(BRKDWNRESULTS)Tj -/TT8 1 Tf -7.8013 0 TD -0.0867 Tw -[( will look the same as)]TJ --30.0674 -1.2889 TD -0.2122 Tw -(though each function were run only once, except that the measurement will be more)Tj -0 -1.2222 TD -0 Tw -(accurate.)Tj -0 -2 TD -0.3067 Tw -(Another way of obtaining more accurate measurement is to expand the call to the)Tj -0 -1.2222 TD -0.1344 Tw -[(measuring function in-line. If the value of )]TJ -/TT10 1 Tf -19.9686 0 TD -0 Tw -(BRKDWNCOMPFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.1344 Tw -[( is non-)]TJ -/TT10 1 Tf -3.5267 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1344 Tw -[( \(initially )]TJ -/TT10 1 Tf -4.5213 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(\),)Tj --39.4185 -1.2889 TD -0.2367 Tw -(then whenever a function is broken-down, it will be redefined to call the measuring)Tj -0 -1.2222 TD -0.3022 Tw -[(function, and then recompiled. The measuring function is expanded in-line via an)]TJ -T* -0.0133 Tw -[(appropriate macro. In addition, whenever )]TJ -/TT10 1 Tf -19.1547 0 TD -0 Tw -(BRKDWNTYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( is reset, the compiler is called for)]TJ -/TT16 1 Tf --25.1557 -1.2889 TD -0 Tw -(all)Tj -/TT8 1 Tf -0.9995 0 TD -0.0578 Tw -[( functions for which )]TJ -/TT10 1 Tf -9.3688 0 TD -0 Tw -(BRKDWNCOMPFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.0578 Tw -[( was set at the time they were originally broken-)]TJ --18.1696 -1.2889 TD -0.0056 Tw -(down, i.e. the setting of the flag at the time a function is broken-down determines whether)Tj -0 -1.2222 TD -0 Tw -(the call to the measuring code is compiled in-line.)Tj -/TT4 1 Tf -10 0 0 10 102 351 Tm -(GAINSPACE)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 348.29 m -558.01 348.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 326.34 Tm -0.03 Tw -(If you have large programs and databases, you may sometimes find yourself in a situation where you)Tj -T* -0.0867 Tw -(need to obtain more space, and are willing to pay the price of eliminating some or all of the context)Tj -T* -0.0233 Tw -(information that the various user-assistance facilities such as the programmers assistant, file package,)Tj -T* -0.02 Tw -[(CLISP, etc., have accumulated during the course of his session. The function )]TJ -/TT10 1 Tf -34.3962 0 TD -0 Tw -(GAINSPACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.02 Tw -[( provides an)]TJ --39.7971 -1.2889 TD -0 Tw -(easy way to selectively throw away accumulated data:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GAINSPACE)Tj -/TT10 1 Tf -5.3999 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 214.8017 259.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 259.4 Tm -([Function])Tj --35.4033 -1.8444 TD -0.17 Tw -(Prints a list of deletable objects, allowing you to specify at each point what should be)Tj -0 -1.2222 TD -0 Tw -(discarded and what should be retained. For example:)Tj -/TT21 1 Tf -6 -1.9333 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(GAINSPACE\))Tj --0.9868 -1 TD -(purge history lists ? Yes)Tj -T* -(purge everything, or just the properties, e.g.,)Tj -T* -(SIDE, LISPXPRINT, etc. ?)Tj -T* -(just the properties)Tj -T* -(discard definitions on property lists ? Yes)Tj -T* -(discard old values of variables ? Yes)Tj -T* -(erase properties ? No)Tj -T* -(erase CLISP translations? Yes)Tj --11.3333 -2.7333 TD -(GAINSPACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1533 Tw -[( is driven by the list )]TJ -/TT10 1 Tf -9.8863 0 TD -0 Tw -(GAINSPACEFORMS)Tj -/TT8 1 Tf -8.4014 0 TD -0.1533 Tw -[(. Each element on )]TJ -/TT10 1 Tf -9.0504 0 TD -0 Tw -(GAINSPACEFORMS)Tj -/TT8 1 Tf -8.4014 0 TD -0.1533 Tw -[( is of the)]TJ --41.1403 -1.2889 TD -0 Tw -(form )Tj -/TT10 1 Tf -2.7267 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRECHECK)Tj -/TT10 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -1.369 0 TD -(MESSAGE)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -1.369 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -1.369 0 TD -(KEYLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.32 Tw -[(. If )]TJ -/TT14 1 Tf -2.6299 0 TD -0 Tw -(PRECHECK)Tj -/TT8 1 Tf -4.8008 0 TD -0.32 Tw -(, when evaluated, returns )Tj -/TT10 1 Tf -12.8152 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj -/TT10 1 Tf --45.0825 -1.2889 TD -(GAINSPACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0633 Tw -[( skips to the next entry. For example, you will not be asked whether or not to purge the)]TJ --5.4009 -1.2889 TD -0.0001 Tc -0.0043 Tw -(history list if it is not enabled. Otherwise, )Tj -/TT10 1 Tf -18.7436 0 TD -0 Tc -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0001 Tc -0.0043 Tw -( \(Chapter 26\) is called with the indicated )Tj -/TT14 1 Tf -18.1796 0 TD -0 Tc -0 Tw -(MESSAGE)Tj -/TT8 1 Tf --41.1239 -1.2889 TD -0.0422 Tw -(and the \(optional\) )Tj -/TT14 1 Tf -8.3059 0 TD -0 Tw -(KEYLST)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[(. If you respond )]TJ -/TT10 1 Tf -7.7238 0 TD -0 Tw -(No)Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -(, i.e., )Tj -/TT10 1 Tf -2.3545 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0422 Tw -[( returns )]TJ -/TT10 1 Tf -3.7885 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5422 0 TD -(GAINSPACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0422 Tw -[( skips to the next)]TJ --37.7174 -1.2889 TD -0.0322 Tw -[(entry. Otherwise, )]TJ -/TT14 1 Tf -8.2812 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0322 Tw -[( is evaluated with the variable )]TJ -/TT10 1 Tf -13.7568 0 TD -0 Tw -(RESPONSE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0322 Tw -[( bound to the value of )]TJ -/TT10 1 Tf -10.1645 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0322 Tw -[(. In)]TJ --43.6044 -1.2889 TD -0.2022 Tw -(the above example, the )Tj -/TT14 1 Tf -11.2254 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2022 Tw -[( for the ")]TJ -/TT10 1 Tf -4.3889 0 TD -0.4856 Tw -(purge history lists)Tj -/TT8 1 Tf -12.373 0 TD -0.2022 Tw -(" question calls )Tj -/TT10 1 Tf -7.4885 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.2022 Tw -[( to ask)]TJ -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT12 17 0 R -/TT14 18 0 R -/TT16 19 0 R -/TT21 37 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -45 0 obj -<< -/Length 6322 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PERFORMANCE ISSUES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(")Tj -/TT10 1 Tf -0.3711 0 TD -0.7689 Tw -(purge everything, ...)Tj -/TT8 1 Tf -14.1398 0 TD -0.3211 Tw -(" only if you had responded )Tj -/TT10 1 Tf -14.5224 0 TD -0 Tw -(Yes)Tj -/TT8 1 Tf -1.8003 0 TD -0.3211 Tw -[(. If you had responded with)]TJ -/TT10 1 Tf --30.8336 -1.2889 TD -0 Tw -(Everything)Tj -/TT8 1 Tf -6.001 0 TD -(, the second question would not have been asked.)Tj --6.001 -2.9556 TD -0.0044 Tw -(The ")Tj -/TT10 1 Tf -2.2994 0 TD -0.01 Tw -(erase properties)Tj -/TT8 1 Tf -9.6116 0 TD -0.0044 Tw -(" question is driven by a list )Tj -/TT10 1 Tf -12.5423 0 TD -0 Tw -(SMASHPROPSMENU)Tj -/TT8 1 Tf -8.4014 0 TD -0.0001 Tc -0.0043 Tw -(. Each element on this list is)Tj --32.8546 -1.2889 TD -0 Tc -0.13 Tw -(of the form )Tj -/TT10 1 Tf -5.5629 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(MESSAGE)Tj -/TT10 1 Tf -4.2007 0 TD -0.3133 Tw -[( . )]TJ -/TT14 1 Tf -2.427 0 TD -0 Tw -(PROPS)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.13 Tw -[(. You are prompted with )]TJ -/TT14 1 Tf -12.195 0 TD -0 Tw -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.13 Tw -[( \(by )]TJ -/TT10 1 Tf -2.2024 0 TD -0 Tw -(ASKUSER)Tj -/TT8 1 Tf -4.2007 0 TD -0.13 Tw -(\), and if your)Tj --39.19 -1.2889 TD -0.24 Tw -(response is )Tj -/TT10 1 Tf -5.6245 0 TD -0 Tw -(Yes)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT14 1 Tf -0.74 0 TD -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -0.24 Tw -[( is added to the list )]TJ -/TT10 1 Tf -10.0577 0 TD -0 Tw -(SMASHPROPS)Tj -/TT8 1 Tf -6.001 0 TD -0.24 Tw -[(. The ")]TJ -/TT10 1 Tf -3.7649 0 TD -0.5744 Tw -(discard definitions on)Tj --30.9889 -1.2889 TD -0.7244 Tw -(property lists)Tj -/TT8 1 Tf -9.1258 0 TD -0.3022 Tw -(" and ")Tj -/TT10 1 Tf -3.5395 0 TD -0.7244 Tw -(discard old values of variables)Tj -/TT8 1 Tf -21.5008 0 TD -0.3022 Tw -(" questions also add to)Tj -/TT10 1 Tf --34.1661 -1.2889 TD -0 Tw -(SMASHPROPS)Tj -/TT8 1 Tf -6.001 0 TD -0.1567 Tw -[(. You will not be prompted for any entry on )]TJ -/TT10 1 Tf -21.5529 0 TD -0 Tw -(SMASHPROPSMENU)Tj -/TT8 1 Tf -8.4014 0 TD -0.1567 Tw -[( for which all of the)]TJ --35.9553 -1.2889 TD -0.13 Tw -(corresponding properties are already on )Tj -/TT10 1 Tf -18.7228 0 TD -0 Tw -(SMASHPROPS)Tj -/TT8 1 Tf -6.001 0 TD -0.13 Tw -(. )Tj -/TT10 1 Tf -1.01 0 TD -0 Tw -(SMASHPROPS)Tj -/TT8 1 Tf -6.001 0 TD -0.13 Tw -[( is initially set to the value of)]TJ -/TT10 1 Tf --31.7347 -1.2889 TD -0 Tw -(SMASHPROPSLST)Tj -/TT8 1 Tf -7.8013 0 TD -0.11 Tw -[(. This permits you to specify in advance those properties which you always want)]TJ --7.8013 -1.2889 TD -0.48 Tw -[(discarded, and not be asked about them subsequently. After finishing all the entries on)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(GAINSPACEFORMS)Tj -/TT8 1 Tf -8.4014 0 TD -(, )Tj -/TT10 1 Tf -0.5411 0 TD -(GAINSPACE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -[( checks to see if the value of )]TJ -/TT10 1 Tf -12.8396 0 TD -0 Tw -(SMASHPROPS)Tj -/TT8 1 Tf -6.001 0 TD -0.0411 Tw -[( is non-)]TJ -/TT10 1 Tf -3.34 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -(, and if so, does)Tj --38.3243 -1.2889 TD -0 Tw -(a )Tj -/TT10 1 Tf -0.75 0 TD -(MAPATOMS)Tj -/TT8 1 Tf -4.8008 0 TD -(, i.e., looks at every atom in the system, and erases the indicated properties.)Tj --5.5508 -2.9556 TD -0.0844 Tw -(You can change or add new entries to )Tj -/TT10 1 Tf -17.5662 0 TD -0 Tw -(GAINSPACEFORMS)Tj -/TT8 1 Tf -8.4014 0 TD -0.0844 Tw -[( or )]TJ -/TT10 1 Tf -1.6098 0 TD -0 Tw -(SMASHPROPSMENU)Tj -/TT8 1 Tf -8.4014 0 TD -0.0844 Tw -(, so that )Tj -/TT10 1 Tf -3.9574 0 TD -0 Tw -(GAINSPACE)Tj -/TT8 1 Tf --39.9362 -1.2889 TD -(can also be used to purge structures that your programs have accumulated.)Tj -/TT4 1 Tf -10 0 0 10 54 347 Tm -(Using Data Types Instead of Records)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 344.29 m -510.01 344.29 l -S -BT -/TT8 1 Tf -9 0 0 9 78 322.34 Tm -0.0322 Tw -(If a program uses large numbers of large data structures, there are several advantages to representing)Tj -0 -1.2222 TD -0.1644 Tw -[(them as user data types rather than as list structures. The primary advantage is increased speed:)]TJ -T* -0.0978 Tw -(accessing and setting the fields of a data type can be significantly faster than walking through a list)Tj -T* -0 Tw -(with repeated )Tj -/TT10 1 Tf -6.4033 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -(s and )Tj -/TT10 1 Tf -2.6167 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -(s. Also, )Tj --12.6206 -2.9556 TD -0.1889 Tw -[(Compiled code for referencing data types is usually smaller. Finally, by reducing the number of)]TJ -0 -1.2222 TD -0 Tw -(objects created \(one object against many list cells\), this can reduce the expense of garbage collection.)Tj -0 -2.8889 TD -0.0922 Tw -(User data types are declared by using the )Tj -/TT10 1 Tf -19.2729 0 TD -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0922 Tw -[( record type \(Chapter 8\). If a list structure has)]TJ --24.0737 -1.2889 TD -0.01 Tw -(been defined using the )Tj -/TT10 1 Tf -10.3623 0 TD -0 Tw -(RECORD)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -[( record type \(Chapter 8\), and all accessing operations are written using)]TJ --13.9629 -1.2889 TD -0.4467 Tw -(the record packages )Tj -/TT10 1 Tf -10.6847 0 TD -0 Tw -(fetch)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.9467 0 TD -(replace)Tj -/TT8 1 Tf -4.2007 0 TD -0.4467 Tw -(, and )Tj -/TT10 1 Tf -3.3362 0 TD -0 Tw -(create)Tj -/TT8 1 Tf -3.6006 0 TD -0.4467 Tw -[( operations, changing from )]TJ -/TT10 1 Tf -13.9766 0 TD -0 Tw -(RECORD)Tj -/TT8 1 Tf -3.6006 0 TD -0.4467 Tw -(s to)Tj -/TT10 1 Tf --43.3466 -1.2889 TD -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2856 Tw -(s only requires editing the record declaration \(using )Tj -/TT10 1 Tf -25.4563 0 TD -0 Tw -(EDITREC)Tj -/TT8 1 Tf -4.2007 0 TD -0.2856 Tw -(, Chapter 8\) to replace)Tj --34.4578 -1.2889 TD -0 Tw -(declaration type )Tj -/TT10 1 Tf -7.4272 0 TD -(RECORD)Tj -/TT8 1 Tf -3.6006 0 TD -( by )Tj -/TT10 1 Tf -1.6094 0 TD -(DATATYPE)Tj -/TT8 1 Tf -4.8008 0 TD -(, and recompiling.)Tj --14.1047 -2.0667 TD -0.2767 Tw -[(Note:)-901.2(There are some minor disadvantages: First, there is an upper limit on the)]TJ -3.3333 -1.2222 TD -0.0844 Tw -[(number of data types that can exist. Also, space for data types is allocated two)]TJ -T* -0.1222 Tw -[(pages at a time. Each data type which has any instances allocated has at least)]TJ -T* -0.0578 Tw -(two pages assigned to it, which may be wasteful of space if there are only a few)Tj -T* -0.4156 Tw -[(examples of a given data type. These problems should not effect most)]TJ -T* -0 Tw -(applications programs.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R -/TT14 18 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -50 0 obj -<< -/Length 2706 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(21-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Using Fast and Destructive Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -0.2022 Tw -(Among the functions used for manipulating objects of various data types, there are a number of)Tj -0 -1.2222 TD -0.0511 Tw -[(functions which have "fast" and "destructive" versions. You should be aware of what these functions)]TJ -T* -0 Tw -(do, and when they should be used.)Tj -0 -2.8889 TD -0.1522 Tw -[(Fast functions: By convention, a function named by prefixing an existing function name with )]TJ -/TT10 1 Tf -44.7272 0 TD -0 Tw -(F)Tj -/TT8 1 Tf --44.7272 -1.2889 TD -0.0544 Tw -[(indicates that the new function is a "fast" version of the old. These usually have the same definitions)]TJ -0 -1.2222 TD -0 Tw -(as the slower versions, but they compile open and run without any "safety" error checks. For example,)Tj -/TT10 1 Tf -T* -(FNTH)Tj -/TT8 1 Tf -2.4004 0 TD -0.0389 Tw -[( runs faster than )]TJ -/TT10 1 Tf -7.6067 0 TD -0 Tw -(NTH)Tj -/TT8 1 Tf -1.8003 0 TD -0.0389 Tw -(, however, it does not make as many checks \(for lists ending with anything)Tj --11.8074 -1.2889 TD -0 Tw -(but )Tj -/TT10 1 Tf -1.8224 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[(, etc\). If these functions are given arguments that are not in the form that they expect, their)]TJ --3.6227 -1.2889 TD -0.03 Tw -[(behavior is unpredictable; they may run forever, or cause a system error. In general, you should only)]TJ -0 -1.2222 TD -0 Tw -(use "fast" functions in code that has already been completely debugged, to speed it up.)Tj -0 -2.8889 TD -(Destructive functions: By convention, a function named by prefixing an existing function with )Tj -/TT10 1 Tf -43.0498 0 TD -(D)Tj -/TT8 1 Tf --43.0498 -1.2889 TD -(indicates the new function is a "destructive" version of the old one, which does not make any new)Tj -0 -1.2222 TD -(structure but cannibalizes its argument\(s\). For example, )Tj -/TT10 1 Tf -25.1157 0 TD -(REMOVE)Tj -/TT8 1 Tf -3.6006 0 TD -( returns a copy of a list with a)Tj --28.7163 -1.2889 TD -(particular element removed, but )Tj -/TT10 1 Tf -14.5552 0 TD -(DREMOVE)Tj -/TT8 1 Tf -4.2007 0 TD -( actually changes the list structure of the list.)Tj --18.7559 -1.2889 TD -(\(Unfortunately, not all destructive functions follow this naming convention: the destructive version of)Tj -/TT10 1 Tf -0 -1.2222 TD -(APPEND)Tj -/TT8 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -(.\) You should be careful when using destructive functions that they do not)Tj --7.8159 -1.2889 TD -(inadvertantly change data structures.)Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 13 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -52 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -53 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -54 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -55 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -56 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -57 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -58 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -59 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -60 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262243 -/FontBBox [-56 -250 868 801] -/FontName /Courier-BoldOblique -/ItalicAngle -15 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -61 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -62 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBKKJM+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 63 0 R ->> -endobj -63 0 obj -<< -/Filter /FlateDecode -/Length 20018 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"T0`I1pbAPo#̒ (+14)M))4|-*PRi nxj3{ߛ{o oN~{;p>{ - -Lx+ -7s/&F`=c`,#Ch/C>bq(^i筭oA}(*Bj v(o S%x|&g#y/ Bԇሙ\.D.#aWC:Pi2p8~驈G7q s#TI|EB.n*:}!94~1_+J/Xb](8d5sqƕ)$>^M8ւW`Z Eא(3f9O0,CxMЊXs ]p5ۇ#B0 -p0JQ8n|Dzn!yfBl]@lfc% x Ge-M88~ln:Hp Nhae0ypa7"Hj =i \N7~{|`b.god5,@g ,B4fiG6.6.6.e6.q+m\ecOڸ56>e6u6>k:m\o 6蜜c? UEG$Dh¤?4jt^B6!] j,sQԨjV4!-_8Z¿T0|7J")+pcѐj&VCW<+nLR\KI0hŤe1L5UVf_1٨h[=qAU -N'4ۄ:_ ߋ55:_h4@Q8GҒlˬT7irl0&wHU 1zt3C'nSꆩ+PFӶٝFfAVY6OD^177niH4'oFrZrZ7\OA7E&D4LW*vի2հ!_p[>&H#>oD|&(aW0fF3[|ڑt[&Th~% cr̝fqomYr"ݥh=)YJx=> @24#}Bg{ǝ1)ŏzS7<Ҕ? ="OEh9ыnODD%we/g4Lo^-[f^&;z1omyϮ~+e}Лk~ԛ&N\^rcMt_ yKe%|)cNrؾ:uoc5PlԸ=5^E#5xjRw}S㩑=GRRj]\.I-| ԫ -κqP+5RS.5)vwk~&\9+s\۸F.ٍY{v !MevxY)Ŷl]e핋bpv{W 7YD=aGfw \=eUy_;YYZ! p +/^rKgM=TN CmNVwYdA] ʌOfOz)-nqو9( ;YX|i'.O_x$ Ni6 yqs`7DslnMfV ][`Hw/&3?sώ&eٹ+2|q0Z2 -*:Ok 54$j e:TFת*`@[Z &@W*ШC5&sgWyy~9AoUg]$)3`J+j8q{DٽM c\ben/TIrG#c&K~3KTѩ9`aZhK9@ ٮ91R9w^Vc@"#92Z1JxQ*|z;uFR#Rp\ *| x`ku88lխL)_#Ci3\nSܙf -0=Y$ cUBFږ[<7|3C]\&P+_;۳pQq!cU/NeG>ml_+REdqP)B%EX,9s)R}N_#ؕ6y -B= -b+[v3kόQ\Q?ci TA{mkN0[E:cnӧǿNS39nN!{Wլ#Z Y9rQK3e$Ke4QBFMArVy2:k;tR1J܌[<$ֺT۽Rpnيy|2Ĺ5-]j.s{o * z~UtT5 T -Ւxr>N3 V?|N%ANcG xrmO$>.ndTgx;6=7kvH `}[  !niz2"`|y|cܽT)C5܈É82F`Fd.IDC;XqA7f@ *5̣ؗK:iy(΅a#qvI_32NIƆ22NM4[b*z:8#qu}CcJ1&حuf}pdԬ|#'6yZv 9Ɠ$A]XuΉq> Rx8=j׉]|<<{P%$ :V}%/k!K]Tg)cE Ve{ݣ2[,Co77N*)6H rmvH-u` GFw{QH;a1ѣQQg,IF2b)Ҍ~ [g[*eR.a%[?Y jTb$6Ĩ=\p0;amFDEm+N -+a$xLI0A>?g0&hVhޅ,p BO~HG9d>&ϒe0y M?.r|LN^r\"W(jNKt }>LUZFgyi3ZI܃<]I_utB_mw-3 GiY{l,Ȧ"6ٓl[^`Y={6&{b4 -|w |2Kci?_|#̷=|ch&)ÔIx⦒n™d pf3EBʌBJoJxd Hݡ?j%VVt+ZH&{DD±6cGLx5eѯ%Yt?X~' -oP%%ih&ÊQl$)nI1)؈Ds|؁ ;EgOkرyrűDjFol2l 9hqrtndzۖܣ=3nxsI ƿ^wWRf[̅Z&wp-BZurEI ֯%[(PQK4-y0!ܥ,eA讴RQ#925rk)-)ɺz$Ҏ_5Z?t0㱒H~l7=ZRmWWBܳ_*z>_B{rV2_M\wk}9'wϹ E1 -A%m -cVF݈(I&$[ʦccS5lZ+&MV$R=FP;!_Vi{"xw>~}νdX aշ-o춮֗w,1K c2 1[c؋7\ز-6ֿE53=dsKyQĢՒ*JI R0\okzÁ3-.[cYQ_z4 N.= XvBO2 R#pVf:\\'B/Z1ۭ]&[,SlPX/ s~پs"2~ @Ԣk'd}aJvҝ:Paիk]6W C^f9է3ٛ,/8ΔOa(+aYfQ: IwQ|sF΂%:m!I7p2i~s9. Q|(wBFy $8Y'T]7ꓥEA0*}ǎ[5)XU:mKln0KYVʎ6{c]qj %/i^쵁Q|czr`=ݥꊔ36f!tR|~fc:;wc7?XcӒ#?H*Zy(CF er #$BL,NƁJ11*Be,1_D2XmTbbC V|#VT8W X96c#!kE eTk\Q0GVy 1S3a>JFqtDR&y [7mp.#u ^X 8䞅fC%I9?8?c?[kwʧC}]y;vHŒq_nAE[l HߦW@o*Jn^sēwvDRyLzJ") \!JC-+ ƛN_YKXWr}@ZRIiАV%&Dr|2YUfiZAUҝ|ϓw5ȿg{y٪l$z, YU3V-MjPozGC5;f>c׬s/ak8aq+??ꆧR5vj/UIOu_Z(Dbty2mxƎ/k*յ9SWt==Ů.w9+-sf#+3M<+NnXmbku۷gfhW#|ڼyyPH&r$=idwz7:?qX<v7JFWaL{+DN$X@R_͐T^\606x_*]nAE$8oAH3+=S|^"a$u @$w!&!Y 3UX(AfUbOgիKx  ofdX1p ->/$.&ddZ$\Y@~BKJ֒::"J6#o?wI9F> g_yOor|IneI]<4NSh6)xZI - 4L7ҭ vAGzg9O/A:$QdwIR䓞<ʑUJrdguRDjI1w!K:)AvN@6(]n SƐٙ%f^6MbcX&f9,Y2؁􍸔Dσ YB_L7}"acoqhDŽ@|#Wf^BKX*a*C$ē)~M\ -YqV-7Gf}M_EҾ\{UMl;UO8;2_xlF>ķ:; 濐5ޕ<Y7 dkn ݩ_n_6b40DawjcOJ! 3RۙS38vΘ4aVu Hlg׌LxEzcq(V4~ާG~GQq^pmBf#iHl02Ih-QH 5` LK`нÄHGZi=XN/o{g:}~o^vÂ&}˸v~})mmڜ5W*" ."_r[r+wt_v%glXk']sE엊.A8TVԿm]Rcy0/i0)9 -{ff}'kxf; xt~eGIq?ڝ󶹧m<u}%s'ymwΪUGokYL$=ruB+1M|qmO -f^Aű42ᐹ!Gq>n|{|n~EGIjm޾׏5+~c&bUEU;skH٪-eWʭ;QžVJ{ásH=hfNpίޛ.:Ny@[+J'!R* 'BٹG&){*t)lD讟+ɗ4"sCN OxpDa[OM?A˷:{^CzYvw$tqGԯ䅩n]e0#ȷ>S&C;wvEzŏRH}TM#i IT_MY'4Lb\)if(CBͽ#`9Ibߞk{vWd56#G|2NF$Z1V]>'(ʁ<*b SQMMRSefA5snS?E#6Oa;/`#pGMuUTg}HCdkQUM@]UDnBe5F,RMj Ճd YOH3i!Pa${Hy%A{r>z$$&7EyW(5A4^H z :5ish~.t]C4B[GhГO5?efcQk]騶`լcalk`+*\5l*&5jCՁ -aSB-,{ -%5x|,%EP{j{PH^8BA]Aq3&"-QYpJQ襴ϒv镔F .ʭlJC)i>4v/>t}2Xݙ<D4 3A=&e]#* Wɠ'I(1 }UM!]Ѧ+VUg jKRb e}EC%p;wI|iXHG$ *&< ł01O4ފ,6YXɍGT)' PlYϿ@ż7I>OSL|A ƥ oB!%_jA=ӌPTFAq# wS;u#y_ -P E Z &ڍva2;=j@uC7&PyMw mEw`Ɛ{^T"|r" #W `@/7_/,x^{,d Y4 胙AUK…M0h1R0r[eV/Sa[b~u$uDAb=;{_3[4>-^ ,hXe1XdateYUè> Ba`C }QrGKyϸaؼT5eag{rdnY朅{`N5Eh"yF\tZP'd=CȦ-lgl6@hasD6r]fZU™J@,B tKe*ѣca8PE&Xp}EB֘ ?-]@-F|[jawim#DL5DsmW. 3G]U5zHps6;dٹ$fe&z Dbv;,; ,.:4H^0u.˅yPwBK&2TE 5y {")iҘ'zBFYo;oelKۏBXeK-x_`(A|N`q˔ȦJfAuS%sV}2ˋſɯ82nwڷ3G.>D0GJJny@(( `DeNCr]!Q#UkABK}dRpƠ*U8nfwk'm@H̃|;;ƑfC Yp*ӕѪ׵3ɴȚ[Уxd% 4ZEMZUMÚ{)nj8K猿˳,_=.J흹/hƆKËW,LϘWʑf!K 6!pYzk1m7E|l2;ǥzr4`j)VYd5-(]?)Kny7[F v^] Df)(멢.-fϮ>ZTkG "(y|ZlXvc蔎Y٥ض2Yk-Lz[߶q壻.>g: Zl1h߱XF s P]HxJIն4Es^Ev) I{2/bŔ}Q\tZ1l[z¤! -i("!u8J:,xa3r :;2n:(-\iqD^xc^ы,rmj:r]CTsQYg=Z8.pp0I m0PlaBdA 5}X ᢦ]!sd̳]4݆Եk [Zm=¾Zh MyF=N#|S[!•ЕYLYqF,B:љSHjI=J ͩ[haۺ؂w-vm3rLuicrC8^Pz-pF/: -xw-e:]NK ׀8DG lhI RPBBfO+o}۳p -;I 6=Pu8^b0^\@c')# u!bR pk֒s!>i@-.FE>bfC+ZuZ|`],(#8^ >vYN/2ZHiIZ XyaZ`0~(8BĪs_Z1N=l⠴ Jܭ [QNB*-({֩="E߻՞CtšTz@Zㅭ}cNF=(nd*x=a-~^9dbN)#O`Π}7c +гHKqba9B@3ZB5-&XV qofNSS 6[+Ov00tVWxԍ&,5F5aYW(p "k-i -Iw NZ~ XO߅mg%Ф9vim# -Bз7J4÷<<y sX>?_K=4-x7B0F%?"E[*Y'[)gʗ)pZU~JyQq<.,b< Qh[\kE0 օ(jyhSk=`L7Hצh㨨UcL|&NJw~G8x;̽w7wnI9J;g֛%6egl.[jmbY]`WX; zxȟi|'LfQ~RS$4L#KS -i(N$}(Ke.9MΒd%\^$.[= ”#%WR(U;Lk*#I/ҩ2UUIjPj:LE*9#.U H83(ڃD2QY]@ ҃j$$Yz4ҞX$Q dhE:<+j0W(1 ~K]#Lhga8B(%‡_@ TF Ad:b . !H#7c0(b#6!'5CN"}H F*8 g>D$ap 0⬅(!u@~PGub $p;pĺ%yPP zx\$i?QߵW]=Ly宩ƅgN zPZ5goskI|nĺBbr-;1e-/sKsޙx\Mթn[Rvy^g^q-$}z%˂$мEmȵך55$7fsMG<s-g0b|gt$R\iv9caф(52]ѻYݺ/n`_<~|aZUt$e3*NYWnVgwA3jbe\q]_Kdř\1M6~5̾myԮ 4uq}"EdLq%%N'z -LK^wEG+o3S~8}=;F$D=[ CZ+ =~O C|̷&N^2̼fkbV[ Vvn8ag<\uhψhқđxDRI:LLb'd4G&L%Bf -2jԒ%5ߐ&k1@| {Ar|BN0/D|M fML1t:fR;ͣc1gt":N30w,0K2ѳ Gt݅az~DOEz^_ޢ4ccp3#YX,,%'Yʺgw$)0L$%QNJDQ1h7bAd}d]RLuA  `ݕOp+4 pXXI gR+ -R,X jjx3y5o۫ צMq'*Jqӱ,pZ|6Wj5~BeAetЉFa֑s89}{fwZ,Zof\h~w7=&8sx -V ]^pl>py]z1`ۺ t؂?YRxʓ`Kls#R#5u61vK'jeWxߵRv Y|Crca"ȵ4#p _k#?\~N5mwuBPKoQKB!Q-foSoߤ$ש#?{RG6qX!9 }~#y?n@pFx{yx/Ňz̿Q:;E5*G~\2C{H7bA<"iڔzSw? -=R>_ۇר]=BlE _+=>It!$!/qk+ -o(cZ|IjkWrfZr\@@ } ^?"G)wr|~@^Xu?zvHD"O\-|q~O'侺v4~=.k4}B}k/\2_Z=`mV g2xo!Pp.is5$ Mҁu(90qb0:L-Z6pQsȉ#ei\3 ͩ =;;VɠGHB3>"^`94wt; Zm=jq3z$Go6$Ac0eƅڱ Y .vVY'G4EZ :_Yl>PKG5a5ɅR &+qϵ C>k$9Dk,Zwx6 Ap> ܀LXP}^-V-O- j(T@gQGcȈ@ -2썐lD|VtZs^Cki~+-ED5lqrM A%1@䲀? t Yjk]i0OW3'HWS:[+_ǁd}:BI;Uӕ•d4/56Ev;>4UC_Q4@-Ą9DKb!I:3+Ь ]Xs*?7YF- j4|j[yn'[#N-\PCzJan8T]` 7s5}Q$Cː zlc/Iccfv֯m)T}SuFٞʚgq114&]"XH iC"&fA:nYV:xÈad -5Zfܚ 24jS$ʒIc sU0plHݗd{3y᯿yoOG|Wgݝ;ُ/+\U"BP hH"FTԊRh Q$&*h1h -AMjw|W4 /;Ltw~߹~ZPlʹ C_ZLv_Gҥ)qn<~.=U'?ܙ]eg13):wbжxMKBY+k5m9=zfݸZeƐumQ%{n7b@ky^N͝%;'ۿ¢iG|صbv`i Z,>v$}{cީ5W4oνwJ,NK+˻>pV:;7NehĩY-UϏy)[ve-ʝtbaő3̱ǧ0zheu*Sy%û ~soٱziK8/qWBŷejn.ײ[vmR|h鈡B.rY>]tQa]W:w9Uqde­:VMaY즣l2$$}yLy1bꤔJ[?'lьڪt'/Ӭ8イZHNd$%gJWH/8%F-TJS)Ʀqϔy"h'l7 -yJCfIECOEim޴2(F>8hh3hS1FrGg*$YHÐ%d $A1 |>{]=x;>9oBA鏤 Y _W%"- ~ ~~ w?vr `YI[lӐO jd~ la| < -!<ցty\=9k /42P59ܑcK5U -ɺ*|W0槴dޓ*~'v?}*0r=-th/-Љia)=S?B!~'z/^ BN'42mGmdb~k"mYcD/17B\7p-\j2BbXW+L0 -Y.흥2d -b>(Qu[ْK>5%s*Xdb _EBʁ/`6o,>lbfVO5F՟ K&9b3[EX؄FtIg4p*8L'ȽqNN? xȯ8p,^FeDt4(Fb6  FȵesB!0 y(841 ȁ`y ->TAA?rb$//x`2O/R;f9s*~ +7U=l.F!\N.Ghz@-ڃv˜j>]eEH-Z0} -k5ড়~4$IcKYAʏ~n%v%Sռ"Op;Zɋ%.;Tz;shz-' ;Ӈ7W_xɋ~[՟eov|ȇIW%}9iy[~TY<'`r"`C9d8 pjM">b|HPg;hESz3_BZaNė竛R-]ؤJRKv*67@3g]zg}dGw%5Yr {/$JV+$;<>`VJJEi/;_2vwtw.FcPGǻIKNjRQe%mOJI}UmG-9j> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 722 0 833 722 778 -667 0 722 667 611 722 667 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 0 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 0 0 556 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 53 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 54 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 148 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 0 0 606 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 55 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 600 600 600 0 0 600 600 600 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 56 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 46 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 600 600 600 600 600 600 600 0 600 0 600 600 600 -600 600 600 0 600 600 600 600 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 57 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 35 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 600 0 0 600 0 -0 0 0 0 0 600 0 0 0 0 0 0 0 0 600 600 -600 600 600 600 600 600 600 0 600 600 600 600 600 600 0 600 -600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 58 0 R ->> -endobj -19 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 116 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 0 0 389 0 0 0 0 0 0 278 0 556 444 -0 0 389 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 59 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 56 -/LastChar 84 -/Widths [600 0 0 0 0 0 0 0 0 600 600 600 600 600 600 0 -0 0 0 0 0 600 0 600 0 0 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-BoldOblique -/FontDescriptor 60 0 R ->> -endobj -27 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 61 0 R ->> -endobj -37 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBKKJM+Symbol -/Encoding /Identity-H -/DescendantFonts [ 64 0 R ] -/ToUnicode 65 0 R ->> -endobj -64 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBKKJM+Symbol -/FontDescriptor 62 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -65 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'48omN&nN- Z<zT'WvȞ gF%o(hp8yy1LkD[_E64"JUs$~n2,m]=F/r݈]H ߉!Gu3j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -66 0 obj -<< -/S /D ->> -endobj -67 0 obj -<< -/Nums [0 66 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 14 0 R 20 0 R 24 0 R 28 0 R 31 0 R 34 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [44 0 R 49 0 R] -/Count 2 -/Parent 47 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [9 0 R 48 0 R ] -/Count 12 -/MediaBox [0 0 612 792] ->> -endobj -68 0 obj -<< -/CreationDate (D:20210202102705-06'00') -/ModDate (D:20210202102705-06'00') -/Producer (Apple pstopdf) ->> -endobj -69 0 obj -<< -/Type /Catalog -/Pages 47 0 R -/PageLabels 67 0 R ->> -endobj -xref -0 70 -0000000000 65535 f -0000095980 00000 n -0000000016 00000 n -0000004514 00000 n -0000091814 00000 n -0000092025 00000 n -0000092521 00000 n -0000092827 00000 n -0000069366 00000 n -0000097043 00000 n -0000096060 00000 n -0000004642 00000 n -0000009003 00000 n -0000093380 00000 n -0000096143 00000 n -0000009134 00000 n -0000015741 00000 n -0000093924 00000 n -0000094223 00000 n -0000094558 00000 n -0000096226 00000 n -0000015911 00000 n -0000021211 00000 n -0000094918 00000 n -0000096309 00000 n -0000021381 00000 n -0000026631 00000 n -0000095173 00000 n -0000096392 00000 n -0000026812 00000 n -0000031983 00000 n -0000096475 00000 n -0000032151 00000 n -0000040899 00000 n -0000096558 00000 n -0000041093 00000 n -0000046357 00000 n -0000095343 00000 n -0000096641 00000 n -0000046551 00000 n -0000052738 00000 n -0000096724 00000 n -0000052908 00000 n -0000059741 00000 n -0000096807 00000 n -0000059935 00000 n -0000066310 00000 n -0000097260 00000 n -0000097179 00000 n -0000096891 00000 n -0000066465 00000 n -0000069224 00000 n -0000069506 00000 n -0000069703 00000 n -0000069909 00000 n -0000070104 00000 n -0000070304 00000 n -0000070495 00000 n -0000070697 00000 n -0000070898 00000 n -0000071101 00000 n -0000071311 00000 n -0000071516 00000 n -0000071706 00000 n -0000095486 00000 n -0000095689 00000 n -0000096975 00000 n -0000097003 00000 n -0000097351 00000 n -0000097474 00000 n -trailer -<< -/Size 70 -/Root 69 0 R -/Info 68 0 R -/ID [<1b34198b4310462266403840db83d26f><1b34198b4310462266403840db83d26f>] ->> -startxref -97544 -%%EOF diff --git a/docs/medley-irm/22-PERFORMANCE.pdf b/docs/medley-irm/22-PERFORMANCE.pdf deleted file mode 100644 index a93f0001..00000000 --- a/docs/medley-irm/22-PERFORMANCE.pdf +++ /dev/null @@ -1,4150 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 3358 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-1)Tj -/TT4 1 Tf -18 0 0 18 54 543.97 Tm -[(22. )-54.1(PERFORMANCE ISSUES)]TJ -ET -0 G -0 J 0 j 6 w 10 M []0 d -1 i -54.01 535.2 m -534.01 535.2 l -S -BT -/TT6 1 Tf -10 0 0 10 533.9999 532.2 Tm -( )Tj -/F1 1 Tf --40.8 -3.994 TD -(This chapter describes a number of areas that often contribute to performance problems)Tj -0 -1.2 TD -(in Interlisp-D programs. Many performance problems can be improved by optimizing)Tj -T* -(the use of storage, since allocating and reclaiming large amounts of storage is)Tj -T* -(expensive. Another tactic that can sometimes yield performance improvements is to)Tj -T* -(change the use of variable bindings on the stack to reduce variable lookup time. There)Tj -T* -(are a number of tools that can be used to determine which parts of a computation cause)Tj -T* -(performance bottlenecks.)Tj -/TT4 1 Tf -14 0 0 14 54 375.08 Tm -(Storage Allocation and Garbage Collection)Tj -ET -1 w -54.01 371.49 m -534.01 371.49 l -S -BT -/F1 1 Tf -10 0 0 10 126 353.26 Tm -(As an Interlisp-D applications program runs, it creates data structures \(allocated out of)Tj -T* -(free storage space\), manipulates them, and then discards them. If there were no way of)Tj -T* -(reclaiming this space, over time the Interlisp-D memory \(both the physical memory in)Tj -T* -(the machine and the virtual memory stored on the disk\) would fill up, and the)Tj -T* -(computation would come to a halt. Actually, long before this could happen the system)Tj -T* -(would probably become intolerably slow, due to "data fragmentation," which occurs)Tj -T* -(when the data currently in use are spread over many virtual memory pages, so that)Tj -T* -(most of the computer time must be spent swapping disk pages into physical memory.)Tj -T* -(The problem of fragmentation will occur in any situation where the virtual memory is)Tj -T* -(significantly larger than the real physical memory. To reduce swapping, it is desirable)Tj -T* -(to keep the "working set" \(the set of pages containing actively referenced data\) as small)Tj -T* -(as possible.)Tj -0 -1.9 TD -(It is possible to write programs that dont generate much "garbage" data, or which)Tj -0 -1.2 TD -(recycle data, but such programs tend to be overly complicated and difficult to debug.)Tj -T* -(Spending effort writing such programs defeats the whole point of using a system with)Tj -T* -(automatic storage allocation. An important part of any Lisp implementation is the)Tj -T* -("garbage collector" which identifies discarded data and reclaims its space. There are)Tj -T* -(several well-known approaches to garbage collection. One method is the traditional)Tj -T* -(mark-and-sweep garbage collection algorithm, which identifies "garbage" data by)Tj -T* -(marking all accessible data structures, and then sweeping through the data spaces to)Tj -T* -(find all unmarked objects \(i.e., not referenced by any other object\). Although this)Tj -T* -(method is guaranteed to reclaim all garbage, it takes time proportional to the number of)Tj -T* -(allocated objects, which may be very large. \(Some allocated objects will have been)Tj -T* -(marked during the "mark" phase, and the remainder will be collected during the)Tj -T* -("sweep" phase; so all will have to be touched in some way.\) Also, the time that a mark-)Tj -T* -(and-sweep garbage collection takes is independent of the amount of garbage collected; it)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -11 0 obj -<< -/Length 3823 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-2)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(is possible to sweep through the whole virtual memory, and only recover a small)Tj -0 -1.2 TD -(amount of garbage.)Tj -0 -1.9 TD -(For interactive applications, it is not acceptable to have long interruptions in a)Tj -0 -1.2 TD -(computation for the purpose of garbage collection. Interlisp-D solves this problem by)Tj -T* -(using a reference-counting garbage collector. With this scheme, there is a table)Tj -T* -(containing counts of how many times each object is referenced. This table is)Tj -T* -(incrementally updated as pointers are created and discarded, incurring a small)Tj -T* -(overhead distributed over the computation as a whole. \(Note: References from the stack)Tj -T* -(are not counted, but are handled separately at "sweep" time; thus the vast majority of)Tj -T* -(data manipulations do not cause updates to this table.\) At opportune moments, the)Tj -T* -(garbage collector scans this table, and reclaims all objects that are no longer accessible)Tj -T* -(\(have a reference count of zero\). The pause while objects are reclaimed is only the time)Tj -T* -(for scanning the reference count tables \(small\) plus time proportional to the amount of)Tj -T* -(garbage that has to be collected \(typically less than a second\). "Opportune" times occur)Tj -T* -(when a certain number of cells have been allocated or when the system has been)Tj -T* -(waiting for the user to type something for long enough. The frequency of garbage)Tj -T* -(collection is controlled by the functions and variables described below. For the best)Tj -T* -(system performance, it is desirable to adjust these parameters for frequent, short)Tj -T* -(garbage collections, which will not interrupt interactive applications for very long, and)Tj -T* -(which will have the added benefit of reducing data fragmentation, keeping the working)Tj -T* -(set small.)Tj -0 -1.9 TD -(One problem with the Interlisp-D garbage collector is that not all garbage is guaranteed)Tj -0 -1.2 TD -(to be collected. Circular data structures, which point to themselves directly or)Tj -T* -(indirectly, are never reclaimed, since their reference counts are always at least one.)Tj -T* -(With time, this unreclaimable garbage may increase the working set to unacceptable)Tj -T* -(levels. Some users have worked with the same Interlisp-D virtual memory for a very)Tj -T* -(long time, but it is a good idea to occasionally save all of your functions in files,)Tj -T* -(reinitialize Interlisp-D, and rebuild your system. Many users end their working day by)Tj -T* -(issuing a command to rebuild their system and then leaving the machine to perform)Tj -T* -(this task in their absence. If the system seems to be spending too much time swapping)Tj -T* -(\(an indication of fragmented working set\), this procedure is definitely recommended.)Tj -0 -1.9 TD -(Garbage collection in Interlisp-D is controlled by the following functions and variables:)Tj -/TT8 1 Tf -0 -2.206 TD --0.0001 Tc -(\(RECLAIM\))Tj -/TT6 1 Tf -5.4001 0 TD -0 Tc -( )Tj -/F1 1 Tf -30.5859 0 TD -([Function])Tj --32.386 -1.823 TD -(Initiates a garbage collection. Returns 0.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(RECLAIMMIN)Tj -/F1 1 Tf -6.6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(N)Tj -/TT8 1 Tf -0.815 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -27.6929 0 TD -([Function])Tj --32.386 -1.823 TD -(Sets the frequency of garbage collection. Interlisp keeps track of the number of)Tj -0 -1.2 TD -(cells of any type that have been allocated; when it reaches a given number, a)Tj -T* -(garbage collection occurs. If )Tj -/F2 1 Tf -13.333 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, this number is set to )Tj -/F2 1 Tf -10.354 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -(. Returns the)Tj --30.5063 -1.323 TD -(current setting of the number.)Tj -ET -endstream -endobj -12 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -16 0 obj -<< -/Length 2839 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-3)Tj -/TT8 1 Tf -10 0 0 10 126 568.2 Tm -(RECLAIMWAIT)Tj -/TT6 1 Tf -6.6 0 TD -( )Tj -/F1 1 Tf -29.57 0 TD -([Variable])Tj --32.57 -1.823 TD -(Interlisp-D will invoke a )Tj -/TT8 1 Tf -11.576 0 TD -(RECLAIM)Tj -/F1 1 Tf -4.2007 0 TD -( if the system is idle and waiting for your)Tj --15.7767 -1.323 TD -(input for )Tj -/TT8 1 Tf -4.333 0 TD -(RECLAIMWAIT)Tj -/F1 1 Tf -6.6011 0 TD -( seconds \(currently set for 4 seconds\).)Tj -/TT8 1 Tf --14.5341 -2.329 TD -(\(GCGAG)Tj -/F1 1 Tf -3.6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(MESSAGE)Tj -/TT8 1 Tf -5.204 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -26.3039 0 TD -([Function])Tj --32.386 -1.823 TD -(Sets the behavior that occurs while a garbage collection is taking place. If)Tj -/F2 1 Tf -0 -1.2 TD -(MESSAGE)Tj -/F1 1 Tf -5.204 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, the cursor is complemented during a )Tj -/TT8 1 Tf -17.741 0 TD -(RECLAIM)Tj -/F1 1 Tf -4.2007 0 TD -(; if)Tj -/F2 1 Tf --32.335 -1.323 TD -(MESSAGE)Tj -/F1 1 Tf -5.204 0 TD -(=)Tj -/TT8 1 Tf -0.606 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, nothing happens. The value of )Tj -/TT8 1 Tf -15.095 0 TD -(GCGAG)Tj -/F1 1 Tf -3.0005 0 TD -( is its previous setting.)Tj -/TT8 1 Tf --29.3058 -2.329 TD --0.0001 Tc -(\(GCTRP\))Tj -/TT6 1 Tf -4.2001 0 TD -0 Tc -( )Tj -/F1 1 Tf -31.7859 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the number of cells until the next garbage collection, according to the)Tj -/TT8 1 Tf -0 -1.2 TD -(RECLAIMMIN)Tj -/F1 1 Tf -6.001 0 TD -( number.)Tj --9.601 -2.323 TD -(The amount of storage allocated to different data types, how much of that storage is in)Tj -0 -1.2 TD -(use, and the amount of data fragmentation can be determined using the following)Tj -T* -(function:)Tj -/TT8 1 Tf -0 -2.206 TD -(\(STORAGE)Tj -/F1 1 Tf -4.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(TYPES PAGETHRESHOLD)Tj -/TT8 1 Tf -13.279 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -17.0289 0 TD -([Function])Tj -/TT8 1 Tf --32.386 -1.823 TD -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( prints out a summary, for each data type, of the amount of space)Tj --4.2007 -1.323 TD -(allocated to the data type, and how much of that space is currently in use. If)Tj -/F2 1 Tf -0 -1.2 TD -(TYPES)Tj -/F1 1 Tf -3.426 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( only lists statistics for the specified types. )Tj -/F2 1 Tf -20.132 0 TD -(TYPES)Tj -/F1 1 Tf --33.504 -1.323 TD -(can be a litatom or a list of types. If )Tj -/F2 1 Tf -16.93 0 TD -(PAGETHRESHOLD)Tj -/F1 1 Tf -9.575 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, then)Tj -/TT8 1 Tf --31.6943 -1.323 TD -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( only lists statistics for types that have at least )Tj -/F2 1 Tf -21.931 0 TD -(PAGETHRESHOLD)Tj -/F1 1 Tf --26.1317 -1.323 TD -(pages allocated to them.)Tj -ET -endstream -endobj -17 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -19 0 obj -<< -/Length 4687 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-4)Tj -/TT8 1 Tf -10 0 0 10 210 568.26 Tm -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( prints out a table with the column headings )Tj -/F3 1 Tf -20.8 0 TD -(Type)Tj -/F1 1 Tf -2.574 0 TD -(, )Tj -/F3 1 Tf -0.556 0 TD -(Assigned)Tj -/F1 1 Tf -4.666 0 TD -(, )Tj -/F3 1 Tf -0.556 0 TD -(Free)Tj --33.3527 -1.323 TD -(Items)Tj -/F1 1 Tf -2.907 0 TD -(, )Tj -/F3 1 Tf -0.556 0 TD -(In use)Tj -/F1 1 Tf -3.175 0 TD -(, and )Tj -/F3 1 Tf -2.575 0 TD -(Total alloc)Tj -/F1 1 Tf -5.491 0 TD -(. )Tj -/F3 1 Tf -0.834 0 TD -(Type)Tj -/F1 1 Tf -2.574 0 TD -( is the name of the data type. )Tj -/F3 1 Tf -14.022 0 TD -(Assigned)Tj -/F1 1 Tf --32.134 -1.2 TD -(is how much of your virtual memory is set aside for items of this type.)Tj -T* -(Currently, memory is allocated in quanta of two pages \(1024 bytes\). The)Tj -T* -(numbers under )Tj -/F3 1 Tf -7.37 0 TD -(Assigned)Tj -/F1 1 Tf -4.666 0 TD -( show the number of pages and the total number of)Tj --12.036 -1.2 TD -(items that fit on those pages. )Tj -/F3 1 Tf -13.966 0 TD -(Free Items)Tj -/F1 1 Tf -5.583 0 TD -( shows how many items are available)Tj --19.549 -1.2 TD -(to be allocated \(using the )Tj -/F3 1 Tf -11.854 0 TD -(create)Tj -/F1 1 Tf -3.26 0 TD -( construct, Chapter 8\); these constitute the)Tj --15.114 -1.2 TD -("free list" for that data type. )Tj -/F3 1 Tf -13.558 0 TD -(In use)Tj -/F1 1 Tf -3.175 0 TD -( shows how many items of this type are)Tj --16.733 -1.2 TD -(currently in use, i.e., have pointers to them and hence have not been garbage)Tj -T* -(collected. If this number is higher than your program seems to warrant, you)Tj -T* -(may want to look for storage leaks. The sum of )Tj -/F3 1 Tf -22.116 0 TD -(Free Items)Tj -/F1 1 Tf -5.583 0 TD -( and )Tj -/F3 1 Tf -2.297 0 TD -(In use)Tj -/F1 1 Tf -3.175 0 TD -( is)Tj --33.171 -1.2 TD -(always the same as the total )Tj -/F3 1 Tf -13.449 0 TD -(Assigned)Tj -/F1 1 Tf -4.666 0 TD -( items. )Tj -/F3 1 Tf -3.668 0 TD -(Total alloc)Tj -/F1 1 Tf -5.491 0 TD -( is the total number)Tj --27.274 -1.2 TD -(of items of this type that have ever been allocated \(see )Tj -/TT8 1 Tf -25.3 0 TD -(BOXCOUNT)Tj -/F1 1 Tf -4.8008 0 TD -(, in the)Tj --30.1008 -1.323 TD -(Performance Measuring section below\).)Tj -0 -1.9 TD -[(Note: )-840(The information about the number of items of type )]TJ -/TT8 1 Tf -27.288 0 TD -(LISTP)Tj -/F1 1 Tf -3.0005 0 TD -( is only)Tj --26.6885 -1.323 TD -(approximate, because list cells are allocated in a special way that)Tj -0 -1.2 TD -(precludes easy computation of the number of items per page.)Tj --3.6 -1.9 TD -[(Note: )-562(When a data type is redeclared, the data type name is reassigned.)]TJ -3.6 -1.2 TD -(Pages which were assigned to instances of the old data type are labeled)Tj -/F3 1 Tf -T* -(**DEALLOC**)Tj -/F1 1 Tf -7.406 0 TD -(.)Tj --11.006 -1.9 TD -(At the end of the table printout, )Tj -/TT8 1 Tf -15.002 0 TD -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( prints a "Data Spaces Summary")Tj --19.2027 -1.323 TD -(listing the number of pages allocated to the major data areas in the virtual)Tj -0 -1.2 TD -(address space: the space for fixed-length items \(including datatypes\), the space)Tj -T* -(for variable-length items, and the space for litatoms. Variable-length data types)Tj -T* -(such as arrays have fixed-length "headers," which is why they also appear in the)Tj -T* -(printout of fixed-length data types. Thus, the line printed for the )Tj -/TT8 1 Tf -30.428 0 TD -(BITMAP)Tj -/F1 1 Tf -3.6006 0 TD -( data)Tj --34.0286 -1.323 TD -(type says how many bitmaps have been allocated, but the "assigned pages")Tj -0 -1.2 TD -(column counts only the headers, not the space used by the variable-length part)Tj -T* -(of the bitmap. This summary also lists "Remaining Pages" in relation to the)Tj -T* -(largest possible virtual memory, not the size of the virtual memory backing file)Tj -T* -(in use. This file may fill up, causing a )Tj -/TT10 1 Tf -17.893 0 TD -(STORAGE FULL)Tj -/F1 1 Tf -7.2012 0 TD -( error, long before the)Tj --25.0942 -1.323 TD -("Remaining Pages" numbers reach zero.)Tj -/TT8 1 Tf -0 -1.9 TD -(STORAGE)Tj -/F1 1 Tf -4.2007 0 TD -( also prints out information about the sizes of the entries on the)Tj --4.2007 -1.323 TD -(variable-length data free list. The block sizes are broken down by the value of)Tj -0 -1.2 TD -(the variable )Tj -/TT8 1 Tf -5.835 0 TD -(STORAGE.ARRAYSIZES)Tj -/F1 1 Tf -10.8018 0 TD -(, initially )Tj -/TT8 1 Tf -4.502 0 TD -(\(4 16 64 256 1024 4096)Tj --21.1388 -1.323 TD -(16384 NIL\))Tj -/F1 1 Tf -6.001 0 TD -(, which yields a printout of the form:)Tj -/TT10 1 Tf --2.401 -1.7 TD -(variable-datum free list: )Tj -0 -1 TD -(le 4 26 items; 104 cells.)Tj -T* -(le 16 72 items; 783 cells.)Tj -T* -(le 64 36 items; 964 cells.)Tj -T* -(le 256 28 items; 3155 cells.)Tj -T* -(le 1024 3 items; 1175 cells.)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 21 0 R -/TT2 5 0 R -/TT8 14 0 R -/TT10 22 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -24 0 obj -<< -/Length 743 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-5)Tj -/TT10 1 Tf -10 0 0 10 198 569.49 Tm -(le 4096 5 items; 8303 cells.)Tj -0 -1 TD -(le 16384 3 items; 17067 cells.)Tj -T* -(others 1 items; 17559 cells.)Tj -/F1 1 Tf --3.6 -1.823 TD -(This information can be useful in determining if the variable-length data space)Tj -0 -1.2 TD -(is fragmented. If most of the free space is composed of small items, then the)Tj -T* -(allocator may not be able to find room for large items, and will extend the)Tj -T* -(variable datum space. If this is extended too much, this could cause an )Tj -/TT8 1 Tf -33.171 0 TD -(ARRAYS)Tj --33.171 -1.323 TD -(FULL)Tj -/F1 1 Tf -2.4004 0 TD -( error, even if there is a lot of space left in little chunks.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT8 14 0 R -/TT10 22 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -27 0 obj -<< -/Length 4483 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-6)Tj -/TT8 1 Tf -10 0 0 10 174 568.2 Tm --0.0001 Tc -(\(STORAGE.LEFT\))Tj -/TT6 1 Tf -8.4001 0 TD -0 Tc -( )Tj -/F1 1 Tf -27.5859 0 TD -([Function])Tj --32.386 -1.823 TD -(Provides a programmatic way of determining how much storage is left in the)Tj -0 -1.2 TD -(major data areas in the virtual address space. Returns a list of the form)Tj -/TT8 1 Tf -T* -(\()Tj -/F2 1 Tf -0.6001 0 TD -(MDSFREE)Tj -/F3 1 Tf -5.241 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(MDSFRAC)Tj -/F3 1 Tf -5.223 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(8MBFRAC)Tj -/F3 1 Tf -5.056 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(ATOMFREE)Tj -/F3 1 Tf -5.963 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(ATOMFRAC)Tj -/TT8 1 Tf -5.945 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(, where the)Tj --29.7762 -1.323 TD -(elements are interpreted as follows:)Tj -/F2 1 Tf -1.359 -1.9 TD -(MDSFREE)Tj -/F1 1 Tf -7.041 0 TD -(The number of free pages left in the main data space \(which)Tj -0 -1.2 TD -(includes both fixed-length and variable-length data types\).)Tj -/F2 1 Tf --7.023 -1.9 TD -(MDSFRAC)Tj -/F1 1 Tf -7.023 0 TD -(The fraction of the total possible main data space that is free.)Tj -/F2 1 Tf --6.856 -1.9 TD -(8MBFRAC)Tj -/F1 1 Tf -6.856 0 TD -(The fraction of the total main data space that is free, relative)Tj -0 -1.2 TD -(to eight megabytes.)Tj -0 -1.9 TD -(This number is useful when using Interlisp-D on some early)Tj -0 -1.2 TD -(computers where the hardware limits the address space to)Tj -T* -(eight megabytes. The function )Tj -/TT8 1 Tf -14.539 0 TD -(32MBADDRESSABLE)Tj -/F1 1 Tf -9.0015 0 TD -( returns)Tj --23.5405 -1.323 TD -(non-)Tj -/TT8 1 Tf -2.055 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( if the currently running Interlisp-D system can use)Tj --3.8553 -1.323 TD -(the full 32 megabyte address space.)Tj -/F2 1 Tf --7.763 -1.9 TD -(ATOMFREE)Tj -/F1 1 Tf -7.763 0 TD -(The number of free pages left in the litatom space.)Tj -/F2 1 Tf --7.745 -1.9 TD -(ATOMFRAC)Tj -/F1 1 Tf -7.745 0 TD -(The fraction of the total litatom space that is free.)Tj --12 -2.2 TD -(Note: Another important space resource is the amount of the virtual memory backing)Tj -0 -1.2 TD -(file in use \(see )Tj -/TT8 1 Tf -6.871 0 TD -(VMEMSIZE)Tj -/F1 1 Tf -4.8008 0 TD -(, Chapter 12\). The system will crash if the virtual memory file)Tj --11.6718 -1.323 TD -(is full, even if the address space is not exhausted.)Tj -/TT4 1 Tf -14 0 0 14 102 231.87 Tm -(Variable Bindings)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 228.28 m -582.01 228.28 l -S -BT -/F1 1 Tf -10 0 0 10 174 210.05 Tm -(Different implementations of lisp use different methods of accessing free variables. The)Tj -0 -1.2 TD -(binding of variables occurs when a function or a )Tj -/TT8 1 Tf -22.372 0 TD -(PROG)Tj -/F1 1 Tf -2.4004 0 TD -( is entered. For example, if the)Tj --24.7724 -1.323 TD -(function )Tj -/TT8 1 Tf -4.092 0 TD -(FOO)Tj -/F1 1 Tf -1.8003 0 TD -( has the definition )Tj -/TT8 1 Tf -8.705 0 TD -(\(LAMBDA \(A B\))Tj -/F3 1 Tf -7.8013 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(BODY)Tj -/TT8 1 Tf -2.963 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(, the variables )Tj -/TT8 1 Tf -6.854 0 TD -(A)Tj -/F1 1 Tf -0.6001 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(B)Tj -/F1 1 Tf -0.6001 0 TD -( are)Tj --36.5999 -1.323 TD -(bound so that any reference to )Tj -/TT8 1 Tf -14.297 0 TD -(A)Tj -/F1 1 Tf -0.6001 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(B)Tj -/F1 1 Tf -0.6001 0 TD -( from )Tj -/F2 1 Tf -2.722 0 TD -(BODY)Tj -/F1 1 Tf -2.963 0 TD -( or any function called from )Tj -/F2 1 Tf -13 0 TD -(BODY)Tj -/F1 1 Tf -2.963 0 TD -( will)Tj --38.6452 -1.323 TD -(refer to the arguments to the function )Tj -/TT8 1 Tf -17.759 0 TD -(FOO)Tj -/F1 1 Tf -1.8003 0 TD -( and not to the value of )Tj -/TT8 1 Tf -10.928 0 TD -(A)Tj -/F1 1 Tf -0.6001 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(B)Tj -/F1 1 Tf -0.6001 0 TD -( from a higher)Tj --33.1875 -1.323 TD -(level function. All variable names \(litatoms\) have a top level value cell which is used if)Tj -0 -1.2 TD -(the variable has not been bound in any function. In discussions of variable access, it is)Tj -T* -(useful to distinquish between three types of variable access: local, special and global.)Tj -T* -(Local variable access is the use of a variable that is bound within the function from)Tj -T* -(which it is used. Special variable access is the use of a variable that is bound by)Tj -T* -(another function. Global variable access is the use of a variable that has not been)Tj -T* -(bound in any function. We will often refer to a variable all of whose accesses are local)Tj -T* -(as a "local variable." Similarly, a variable all of whose accesses are global we call a)Tj -T* -("global variable.")Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -30 0 obj -<< -/Length 852 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-7)Tj -/F1 1 Tf -10 0 0 10 126 568.26 Tm -(In a "deep" bound system, a variable is bound by saving on the stack the variables)Tj -0 -1.2 TD -(name together with a value cell which contains that variables new value. When a)Tj -T* -(variable is accessed, its value is found by searching the stack for the most recent)Tj -T* -(binding \(occurrence\) and retrieving the value stored there. If the variable is not found)Tj -T* -(on the stack, the variables top level value cell is used.)Tj -0 -1.9 TD -(In a "shallow" bound system, a variable is bound by saving on the stack the variable)Tj -0 -1.2 TD -(name and the variables old value and putting the new value in the variables top level)Tj -T* -(value cell. When a variable is accessed, its value is always found in its top level value)Tj -T* -(cell.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -33 0 obj -<< -/Length 3887 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-8)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(The deep binding scheme has one disadvantage: the amount of cpu time required to)Tj -0 -1.2 TD -(fetch the value of a variable depends on the stack distance between its use and its)Tj -T* -(binding. The compiler can determine local variable accesses and compiles them as)Tj -T* -(fetches directly from the stack. Thus this computation cost only arises in the use of)Tj -T* -(variable not bound in the local frame \("free" variables\). The process of finding the value)Tj -T* -(of a free variable is called free variable lookup.)Tj -0 -1.9 TD -(In a shallow bound system, the amount of cpu time required to fetch the value of a)Tj -0 -1.2 TD -(variable is constant regardless of whether the variable is local, special or global. The)Tj -T* -(disadvantages of this scheme are that the actual binding of a variable takes longer)Tj -T* -(\(thus slowing down function call\), the cells that contain the current in use values are)Tj -T* -(spread throughout the space of all litatom value cells \(thus increasing the working set)Tj -T* -(size of functions\) and context switching between processes requires unwinding and)Tj -T* -(rewinding the stack \(thus effectively prohibiting the use of context switching for many)Tj -T* -(applications\).)Tj -0 -1.9 TD -(Interlisp-D uses deep binding, because of the working set considerations and the speed)Tj -0 -1.2 TD -(of context switching. The free variable lookup routine is microcoded, thus greatly)Tj -T* -(reducing the search time. In benchmarks, the largest percentage of free variable lookup)Tj -T* -(time was 20 percent of the total ellapsed time; the normal time was between 5 and 10)Tj -T* -(percent.)Tj -0 -1.9 TD -(One consequence of Interlisp-Ds deep binding scheme is that users may significantly)Tj -0 -1.2 TD -(improve performance by declaring global variables in certain situations. If a variable is)Tj -T* -(declared global, the compiler will compile an access to that variable as a retrieval of its)Tj -T* -(top level value, completely bypassing a stack search. This should be done only for)Tj -T* -(variables that are never bound in functions, such as global databases and flags.)Tj -0 -1.9 TD -(Global variable declarations should be done using the )Tj -/TT8 1 Tf -25.042 0 TD -(GLOBALVARS)Tj -/F1 1 Tf -6.001 0 TD -( file package)Tj --31.043 -1.323 TD -(command \(Chapter 17\). Its form is )Tj -/TT8 1 Tf -16.464 0 TD -(\(GLOBALVARS)Tj -/F3 1 Tf -6.6011 0 TD -( )Tj -/F2 1 Tf -0.574 0 TD -(VAR)Tj -2.1479 -0.3 TD -(1)Tj -/F3 1 Tf -0.556 0.3 TD -( ... )Tj -/F2 1 Tf -1.408 0 TD -(VAR)Tj -2.149 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(.)Tj --31.3151 -2.2 TD -(Another way of improving performance is to declare variables as local within a function.)Tj -0 -1.2 TD -(Normally, all variables bound within a function have their names put on the stack, and)Tj -T* -(these names are scanned during free variable lookup. If a variable is declared to be)Tj -T* -(local within a function, its name is not put on the stack, so it is not scanned during free)Tj -T* -(variable lookup, which may increase the speed of lookups. The compiler can also make)Tj -T* -(some other optimizations if a variable is known to be local to a function.)Tj -0 -1.9 TD -(A variable may be declared as local within a function by including the form )Tj -/TT8 1 Tf -34.968 0 TD -(\(DECLARE)Tj --34.968 -1.323 TD -(\(LOCALVARS)Tj -/F3 1 Tf -6.001 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(VAR)Tj -2.148 -0.3 TD -(1)Tj -/F3 1 Tf -0.556 0.3 TD -( ... )Tj -/F2 1 Tf -1.408 0 TD -(VAR)Tj -2.149 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\)\))Tj -/F1 1 Tf -1.2002 0 TD -( following the argument list in the definition of the)Tj --14.5642 -1.5 TD -(function. Local variable declarations only effect the compilation of a function.)Tj -0 -1.2 TD -(Interpreted functions put all of their variable names on the stack, regardless of any)Tj -T* -(declarations.)Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -36 0 obj -<< -/Length 4990 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-9)Tj -/TT4 1 Tf -14 0 0 14 54 565.08 Tm -(Performance Measuring)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 561.49 m -534.01 561.49 l -S -BT -/F1 1 Tf -10 0 0 10 126 543.26 Tm -(This section describes functions that gather and display statistics about a computation,)Tj -0 -1.2 TD -(such as as the elapsed time, and the number of data objects of different types allocated.)Tj -/TT8 1 Tf -T* -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( gather statistics on the evaluation of a specified form. )Tj -/TT8 1 Tf -25.633 0 TD -(BREAKDOWN)Tj -/F1 1 Tf --34.5311 -1.323 TD -(gathers statistics on individual functions called during a computation. These functions)Tj -0 -1.2 TD -(can be used to determine which parts of a computation are consuming the most)Tj -T* -(resources \(time, storage, etc.\), and could most profitably be improved.)Tj -/TT8 1 Tf -0 -2.206 TD -(\(TIMEALL)Tj -/F1 1 Tf -4.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(TIMEFORM NUMBEROFTIMES TIMEWHAT INTERPFLG )Tj -/TT8 1 Tf -29.684 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf --33.5621 -1.123 TD -([NLambda Function])Tj -1.8 -1.7 TD -(Evaluates the form )Tj -/F2 1 Tf -9.149 0 TD -(TIMEFORM)Tj -/F1 1 Tf -5.888 0 TD -( and prints statistics on time spent in various)Tj --15.037 -1.2 TD -(categories \(elapsed, keyboard wait, swapping time, gc\) and data type allocation.)Tj -0 -1.9 TD -(For more accurate measurement on small computations, )Tj -/F2 1 Tf -26.354 0 TD -(NUMBEROFTIMES)Tj -/F1 1 Tf --26.354 -1.2 TD -(may be specified \(its default is 1\) to cause )Tj -/F2 1 Tf -19.466 0 TD -(TIMEFORM)Tj -/F1 1 Tf -5.888 0 TD -( to be executed)Tj -/F2 1 Tf --25.354 -1.2 TD -(NUMBEROFTIMES)Tj -/F1 1 Tf -9.629 0 TD -( times. To improve the accuracy of timing open-coded)Tj --9.629 -1.2 TD -(operations in this case, )Tj -/TT8 1 Tf -10.909 0 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( compiles a form to execute )Tj -/F2 1 Tf -12.76 0 TD -(TIMEFORM)Tj --27.8697 -1.323 TD -(NUMBEROFTIMES)Tj -/F1 1 Tf -9.629 0 TD -( times \(unless )Tj -/F2 1 Tf -6.686 0 TD -(INTERPFLG)Tj -/F1 1 Tf -6.149 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(\), and then times)Tj --27.6533 -1.323 TD -(the execution of the compiled form.)Tj -0 -1.9 TD -[(Note: )-562(If )]TJ -/TT8 1 Tf -4.618 0 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( is called with )Tj -/F2 1 Tf -6.687 0 TD -(NUMBEROFTIMES)Tj -/F1 1 Tf -9.629 0 TD -(>1, the dummy form is)Tj --21.5347 -1.323 TD -(compiled with compiler optimizations on. This means that it is not)Tj -0 -1.2 TD -(meaningful to use )Tj -/TT8 1 Tf -8.575 0 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( with very simple forms that are optimized)Tj --12.7757 -1.323 TD -(out by the compiler. For example, )Tj -/TT8 1 Tf -16.058 0 TD -(\(TIMEALL \(IPLUS 2 3\) 1000\))Tj -/F1 1 Tf --16.058 -1.323 TD -(will time a compiled function which simply returns the number 5, since)Tj -/TT8 1 Tf -0 -1.2 TD -(\(IPLUS 2 3\))Tj -/F1 1 Tf -6.6011 0 TD -( is optimized to the integer 5.)Tj -/F2 1 Tf --10.2011 -2.023 TD -(TIMEWHAT)Tj -/F1 1 Tf -5.906 0 TD -( restricts the statistics to specific categories. It can be an atom or)Tj --5.906 -1.2 TD -(list of datatypes to monitor, and/or the atom )Tj -/TT8 1 Tf -20.689 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( to monitor time spent. Note)Tj --23.0894 -1.323 TD -(that ordinarily, )Tj -/TT8 1 Tf -7.39 0 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( monitors all time and datatype usage, so this)Tj --11.5907 -1.323 TD -(argument is rarely needed. )Tj -/TT8 1 Tf -0 -1.9 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( returns the value of the last evaluation of )Tj -/F2 1 Tf -19.762 0 TD -(TIMEFORM)Tj -/F1 1 Tf -5.888 0 TD -(.)Tj -/TT8 1 Tf --33.4507 -2.329 TD -(\(TIME)Tj -/TT4 1 Tf -3 0 TD -( )Tj -/F2 1 Tf -0.2778 0 TD -(TIMEX TIMEN TIMETYP)Tj -/TT8 1 Tf -12.386 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -14.8311 0 TD -([NLambda Function])Tj -/TT8 1 Tf --27.495 -1.823 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( evaluates the form )Tj -/F2 1 Tf -9.205 0 TD -(TIMEX)Tj -/F1 1 Tf -3.462 0 TD -(, and prints out the number of )Tj -/TT8 1 Tf -14.205 0 TD -(CONS)Tj -/F1 1 Tf -2.4004 0 TD -( cells)Tj --31.6728 -1.323 TD -(allocated and computation time. Garbage collection time is subtracted out.)Tj -0 -1.2 TD -(This function has been largely replaced by )Tj -/TT8 1 Tf -19.817 0 TD -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -(.)Tj --24.0177 -2.023 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -( is greater than 1, )Tj -/F2 1 Tf -8.539 0 TD -(TIMEX)Tj -/F1 1 Tf -3.462 0 TD -( is executed )Tj -/F2 1 Tf -5.667 0 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -( times, and )Tj -/TT8 1 Tf -5.409 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( prints)Tj --33.6414 -1.323 TD -(out \(number of conses\)/)Tj -/F2 1 Tf -10.703 0 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -(, and \(computation time\)/)Tj -/F2 1 Tf -11.668 0 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -(. If)Tj -/F2 1 Tf --29.517 -1.2 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -(=)Tj -/TT8 1 Tf -0.606 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, it defaults to 1. This is useful for more accurate measurement on)Tj --5.9793 -1.323 TD -(small computations.)Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -39 0 obj -<< -/Length 4831 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-10)Tj -/F1 1 Tf -10 0 0 10 210 568.26 Tm -(If )Tj -/F2 1 Tf -1.018 0 TD -(TIMETYP)Tj -/F1 1 Tf -4.795 0 TD -( is 0, )Tj -/TT8 1 Tf -2.446 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( measures and prints total )Tj -/F2 1 Tf -12.502 0 TD -(real)Tj -/F1 1 Tf -1.795 0 TD -( time as well as)Tj --24.9564 -1.323 TD -(computation time. If )Tj -/F2 1 Tf -10.001 0 TD -(TIMETYP)Tj -/F1 1 Tf -4.795 0 TD -( = 3, )Tj -/TT8 1 Tf -2.274 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( measures and prints garbage)Tj --19.4704 -1.323 TD -(collection time as well as computation time. If )Tj -/F2 1 Tf -21.763 0 TD -(TIMETYP)Tj -/F1 1 Tf -4.795 0 TD -(=)Tj -/TT8 1 Tf -0.606 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( measures)Tj --30.7205 -1.323 TD -(and prints the number of pagefaults.)Tj -/TT8 1 Tf -0 -1.9 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -( returns the value of the last evaluation of )Tj -/F2 1 Tf -19.762 0 TD -(TIMEX)Tj -/F1 1 Tf -3.462 0 TD -(.)Tj -/TT8 1 Tf --29.2244 -2.329 TD -(\(BOXCOUNT)Tj -/F1 1 Tf -5.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(TYPE N)Tj -/TT8 1 Tf -3.852 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -25.8559 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the number of data objects of type )Tj -/F2 1 Tf -19.964 0 TD -(TYPE)Tj -/F1 1 Tf -2.759 0 TD -( allocated since this Interlisp)Tj --22.723 -1.2 TD -(system was created. )Tj -/F2 1 Tf -9.835 0 TD -(TYPE)Tj -/F1 1 Tf -2.759 0 TD -( can be any data type name \(see )Tj -/TT8 1 Tf -15.022 0 TD -(TYPENAME)Tj -/F1 1 Tf -4.8008 0 TD -(, Chapter)Tj --32.4168 -1.323 TD -(8\). If )Tj -/F2 1 Tf -2.741 0 TD -(TYPE)Tj -/F1 1 Tf -2.759 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, it defaults to )Tj -/TT8 1 Tf -6.724 0 TD -(FIXP)Tj -/F1 1 Tf -2.4004 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, the corresponding)Tj --25.615 -1.323 TD -(counter is reset to )Tj -/F2 1 Tf -8.574 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -(.)Tj -/TT8 1 Tf --12.989 -2.206 TD -(\(CONSCOUNT)Tj -/F2 1 Tf -6 0 TD -( N)Tj -/TT8 1 Tf -1.093 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -27.6928 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the number of )Tj -/TT8 1 Tf -10.796 0 TD -(CONS)Tj -/F1 1 Tf -2.4004 0 TD -( cells allocated since this Interlisp system was)Tj --13.1964 -1.323 TD -(created. If )Tj -/F2 1 Tf -5.259 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, resets the counter to )Tj -/F2 1 Tf -10.315 0 TD -(N)Tj -/F1 1 Tf -0.815 0 TD -(. Equivalent to )Tj -/TT8 1 Tf -7.391 0 TD -(\(BOXCOUNT)Tj --29.7843 -1.323 TD -(LISTP)Tj -/F3 1 Tf -3.6006 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(N)Tj -/TT8 1 Tf -0.815 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --8.9027 -2.329 TD --0.0001 Tc -(\(PAGEFAULTS\) )Tj -/TT6 1 Tf -7.8002 0 TD -0 Tc -( )Tj -/F1 1 Tf -28.1858 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the number of page faults since this Interlisp system was created.)Tj -/TT4 1 Tf -14 0 0 14 102 276.14 Tm -(BREAKDOWN)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 272.55 m -582.01 272.55 l -S -BT -/TT8 1 Tf -10 0 0 10 174 254.32 Tm -(TIMEALL)Tj -/F1 1 Tf -4.2007 0 TD -( collects statistics for whole computations. )Tj -/TT8 1 Tf -20.002 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( is available to analyze)Tj --29.6036 -1.323 TD -(the breakdown of computation time \(or any other measureable quantity\) function by)Tj -0 -1.2 TD -(function.)Tj -/TT8 1 Tf -0 -2.206 TD -(\(BREAKDOWN)Tj -/F1 1 Tf -6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(FN)Tj -1.482 -0.3 TD -(1)Tj -0.556 0.3 TD -( ... FN)Tj -2.872 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -13.6209 0 TD -([NLambda NoSpread Function])Tj --22.624 -2 TD -(The user calls )Tj -/TT8 1 Tf -6.723 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( giving it a list of function names \(unevaluated\).)Tj --12.1239 -1.323 TD -(These functions are modified so that they keep track of various statistics.)Tj -0 -1.9 TD -(To remove functions from those being monitored, simply )Tj -/TT8 1 Tf -26.279 0 TD -(UNBREAK)Tj -/F1 1 Tf -4.2007 0 TD -( \(Chapter 15\))Tj --30.4797 -1.323 TD -(the functions, thereby restoring them to their original state. To add functions,)Tj -0 -1.2 TD -(call )Tj -/TT8 1 Tf -1.908 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( on the new functions. This will not reset the counters for any)Tj --7.3089 -1.323 TD -(functions not on the new list. However )Tj -/TT8 1 Tf -18.353 0 TD -(\(BREAKDOWN\))Tj -/F1 1 Tf -6.6011 0 TD -( will zero the counters of)Tj --24.9541 -1.323 TD -(all functions being monitored.)Tj -0 -1.9 TD -(The procedure used for measuring is such that if one function calls other and)Tj -0 -1.2 TD -(both are "broken down", then the time \(or whatever quantity is being measured\))Tj -T* -(spent in the inner function is )Tj -/F2 1 Tf -13.704 0 TD -(not)Tj -/F1 1 Tf -1.463 0 TD -( charged to the outer function as well. )Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -42 0 obj -<< -/Length 4472 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-11)Tj -/TT8 1 Tf -10 0 0 10 162 568.26 Tm -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( will )Tj -/F2 1 Tf -2.279 0 TD -(not)Tj -/F1 1 Tf -1.463 0 TD -( give accurate results if a function being measured is not)Tj --9.1429 -1.323 TD -(returned from normally, e.g., a lower )Tj -/TT8 1 Tf -17.316 0 TD -(RETFROM)Tj -/F1 1 Tf -4.2007 0 TD -( \(or )Tj -/TT8 1 Tf -1.833 0 TD -(ERROR)Tj -/F1 1 Tf -3.0005 0 TD -(\) bypasses it. In this)Tj --26.3502 -1.323 TD -(case, all of the time \(or whatever quantity is being measured\) between the time)Tj -0 -1.2 TD -(that function is entered and the time the next function being measured is)Tj -T* -(entered will be charged to the first function.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(BRKDWNRESULTS)Tj -/F2 1 Tf -8.4 0 TD -( RETURNVALUESFLG)Tj -/TT8 1 Tf -11.188 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -15.7979 0 TD -([Function])Tj -/TT8 1 Tf --32.386 -1.823 TD -(BRKDWNRESULTS)Tj -/F1 1 Tf -7.8013 0 TD -( prints the analysis of the statistics requested as well as the)Tj --7.8013 -1.323 TD -(number of calls to each function. If )Tj -/F2 1 Tf -16.593 0 TD -(RETURNVALUESFLG)Tj -/F1 1 Tf -10.91 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(,)Tj -/TT8 1 Tf --32.6923 -1.323 TD -(BRKDWNRESULTS)Tj -/F1 1 Tf -7.8013 0 TD -( will not to print the results, but instead return them in the)Tj --7.8013 -1.323 TD -(form of a list of elements of the form )Tj -/TT8 1 Tf -17.038 0 TD -(\()Tj -/F2 1 Tf -0.6001 0 TD -(FNNAME)Tj -/F3 1 Tf -4.667 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(#CALLS)Tj -/F3 1 Tf -3.983 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(VALUE)Tj -/TT8 1 Tf -3.612 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(.)Tj --31.0742 -2.023 TD -(Example:)Tj -/TT11 1 Tf -3.6 -1.9 TD -<0040>Tj -/F1 1 Tf -0.9868 0 TD -( )Tj -/TT8 1 Tf -0.278 0 TD -(\(BREAKDOWN SUPERPRINT SUBPRINT COMMENT1\))Tj --1.2648 -1 TD -(\(SUPERPRINT SUBPRINT COMMENT1\))Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(PRETTYDEF \(SUPERPRINT\) FOO\))Tj --0.9868 -1 TD -(FOO.;3)Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS\))Tj --0.9868 -1 TD -(FUNCTIONS TIME #CALLS PER CALL %)Tj -T* -(SUPERPRINT 8.261 365 0.023 20)Tj -T* -(SUBPRINT 31.910 141 0.226 76)Tj -T* -(COMMENT1 1.612 8 0.201 4)Tj -T* -(TOTAL 41.783 514 0.081)Tj -T* -(NIL)Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS T\))Tj --0.9868 -1 TD -(\(\(SUPERPRINT 365 8261\) \(SUBPRINT 141 31910\) \(COMMENT1 8)Tj -T* -(1612\)\))Tj --7.2 -2.129 TD -(BREAKDOWN)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/F1 1 Tf -0.2778 0 TD -(can be used to measure other statistics, by setting the following variables:)Tj -/TT8 1 Tf --5.6787 -2.329 TD -(BRKDWNTYPE)Tj -/TT6 1 Tf -6 0 TD -( )Tj -/F1 1 Tf -30.17 0 TD -([Variable])Tj --32.57 -1.823 TD -(To use )Tj -/TT8 1 Tf -3.297 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( to measure other statistics, before calling )Tj -/TT8 1 Tf -19.632 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -(, set)Tj --33.7308 -1.323 TD -(the variable )Tj -/TT8 1 Tf -5.835 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf -6.001 0 TD -( to the quantity of interest, e.g., )Tj -/TT8 1 Tf -14.892 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(CONSES)Tj -/F1 1 Tf -3.6006 0 TD -(, etc, or)Tj --33.285 -1.323 TD -(a list of such quantities. Whenever )Tj -/TT8 1 Tf -16.613 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( is called with )Tj -/TT8 1 Tf -6.687 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf -6.001 0 TD -( not)Tj -/TT8 1 Tf --34.7019 -1.323 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( performs the necessary changes to its internal state to conform)Tj --7.7572 -1.323 TD -(to the new analysis. In particular, if this is the first time an analysis is being)Tj -0 -1.2 TD -(run with a particular statistic, a measuring function will be defined, and the)Tj -T* -(compiler will be called to compile it. The functions being broken down will be)Tj -T* -(redefined to call this measuring function. When )Tj -/TT8 1 Tf -22.593 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( is through)Tj --27.9939 -1.323 TD -(initializing, it sets )Tj -/TT8 1 Tf -8.706 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf -6.001 0 TD -( back to )Tj -/TT8 1 Tf -3.872 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(. Subsequent calls to )Tj -/TT8 1 Tf -10.077 0 TD -(BREAKDOWN)Tj -/F1 1 Tf --30.4563 -1.323 TD -(will measure the new statistic until )Tj -/TT8 1 Tf -16.707 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf -6.001 0 TD -( is again set and a new)Tj -/TT8 1 Tf --22.708 -1.323 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -( performed.)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 14 0 R -/TT11 44 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -48 0 obj -<< -/Length 4829 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-12)Tj -/TT8 1 Tf -10 0 0 10 174 568.2 Tm -(BRKDWNTYPES)Tj -/TT6 1 Tf -6.6 0 TD -( )Tj -/F1 1 Tf -29.57 0 TD -([Variable])Tj --32.57 -1.823 TD -(The list )Tj -/TT8 1 Tf -3.816 0 TD -(BRKDWNTYPES)Tj -/F1 1 Tf -6.6011 0 TD -( contains the information used to analyze new statistics.)Tj --10.4171 -1.323 TD -(Each entry on )Tj -/TT8 1 Tf -6.759 0 TD -(BRKDWNTYPES)Tj -/F1 1 Tf -6.6011 0 TD -( should be of the form )Tj -/F3 1 Tf -10.297 0 TD -(\()Tj -/F2 1 Tf -0.389 0 TD -(TYPE)Tj -/F3 1 Tf -2.759 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FORM)Tj -/F3 1 Tf -3.13 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FUNCTION)Tj -/F3 1 Tf -5.704 0 TD -(\))Tj -/F1 1 Tf -0.389 0 TD -(,)Tj --36.6021 -1.323 TD -(where )Tj -/F2 1 Tf -3.111 0 TD -(TYPE)Tj -/F1 1 Tf -2.759 0 TD -( is a statistic name \(as would appear in )Tj -/TT8 1 Tf -18.375 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf -6.001 0 TD -(\), )Tj -/F2 1 Tf -0.889 0 TD -(FORM)Tj -/F1 1 Tf --31.135 -1.323 TD -(computes the statistic, and )Tj -/F2 1 Tf -12.724 0 TD -(FUNCTION)Tj -/F1 1 Tf -5.704 0 TD -( \(optional\) converts the value of form to)Tj --18.428 -1.2 TD -(some more interesting quantity. For example, )Tj -/TT8 1 Tf -21.707 0 TD -(\(TIME \(CLOCK 2\) \(LAMBDA)Tj --21.707 -1.323 TD -(\(X\) \(FQUOTIENT X 1000\)\)\))Tj -/F1 1 Tf -14.4023 0 TD -( measures computation time and reports the)Tj --14.4023 -1.323 TD -(result in seconds instead of milliseconds. )Tj -/TT8 1 Tf -19.372 0 TD -(BRKDWNTYPES)Tj -/F1 1 Tf -6.6011 0 TD -( currently contains)Tj --25.9731 -1.323 TD -(entries for )Tj -/TT8 1 Tf -5.055 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(CONSES)Tj -/F1 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(PAGEFAULTS)Tj -/F1 1 Tf -6.001 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(BOXES)Tj -/F1 1 Tf -3.0005 0 TD -(, and )Tj -/TT8 1 Tf -2.575 0 TD -(FBOXES)Tj -/F1 1 Tf -3.6006 0 TD -(.)Tj --27.901 -2.023 TD -(Example:)Tj -/TT11 1 Tf -3.6 -1.9 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(SETQ BRKDWNTYPE \(TIME CONSES\)\))Tj --0.9868 -1 TD -(\(TIME CONSES\))Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(BREAKDOWN MATCH CONSTRUCT\))Tj --0.9868 -1 TD -(\(MATCH CONSTRUCT\))Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(FLIP \(A B C D E F G H C Z\) \(.. $1 .. #2 ..\) \(.. #3)Tj --0.9868 -1 TD -(..\)\))Tj -T* -(\(A B D E F G H Z\))Tj -/TT11 1 Tf -0 -1.123 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(BRKDWNRESULTS\))Tj --0.9868 -1 TD -(FUNCTIONS TIME #CALLS PER CALL %)Tj -T* -(MATCH 0.036 1 0.036 54)Tj -T* -(CONSTRUCT 0.031 1 0.031 46)Tj -T* -(TOTAL 0.067 2 0.033 )Tj -T* -(FUNCTIONS CONSES #CALLS PER CALL %)Tj -T* -(MATCH 32 1 32.000 40)Tj -T* -(CONSTRUCT 49 1 49.000 60)Tj -T* -(TOTAL 81 2 40.500 )Tj -T* -(NIL)Tj -/F1 1 Tf --3.6 -1.823 TD -(Occasionally, a function being analyzed is sufficiently fast that the overhead)Tj -0 -1.2 TD -(involved in measuring it obscures the actual time spent in the function. If you)Tj -T* -(were using )Tj -/TT8 1 Tf -5.315 0 TD -(TIME)Tj -/F1 1 Tf -2.4004 0 TD -(, you would specify a value for )Tj -/F2 1 Tf -14.168 0 TD -(TIMEN)Tj -/F1 1 Tf -3.573 0 TD -( greater than 1 to give)Tj --25.4564 -1.323 TD -(greater accuracy. A similar option is available for )Tj -/TT8 1 Tf -23.355 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -(. You can specify)Tj --28.7559 -1.323 TD -(that a function\(s\) be executed a multiple number of times for each)Tj -0 -1.2 TD -(measurement, and the average value reported, by including a number in the list)Tj -T* -(of functions given to )Tj -/TT8 1 Tf -9.611 0 TD -(BREAKDOWN)Tj -/F1 1 Tf -5.4009 0 TD -(. For example, )Tj -/TT8 1 Tf -7.15 0 TD -(BREAKDOWN\(EDITCOM EDIT4F)Tj --22.1619 -1.323 TD -(10 EDIT4E EQP\))Tj -/F1 1 Tf -8.4014 0 TD -( means normal breakdown for )Tj -/TT8 1 Tf -14.113 0 TD -(EDITCOM)Tj -/F1 1 Tf -4.2007 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(EDIT4F)Tj -/F1 1 Tf -3.6006 0 TD -( but)Tj --32.6126 -1.323 TD -(executes \(the body of\) )Tj -/TT8 1 Tf -10.222 0 TD -(EDIT4E)Tj -/F1 1 Tf -3.6006 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(EQP)Tj -/F1 1 Tf -1.8003 0 TD -( 10 times each time they are called. Of)Tj --17.9199 -1.323 TD -(course, the functions so measured must not cause any harmful side effects, since)Tj -0 -1.2 TD -(they are executed more than once for each call. The printout from)Tj -/TT8 1 Tf -T* -(BRKDWNRESULTS)Tj -/F1 1 Tf -7.8013 0 TD -( will look the same as though each function were run only once,)Tj --7.8013 -1.323 TD -(except that the measurement will be more accurate.)Tj -0 -1.9 TD -(Another way of obtaining more accurate measurement is to expand the call to)Tj -0 -1.2 TD -(the measuring function in-line. If the value of )Tj -/TT8 1 Tf -21.612 0 TD -(BRKDWNCOMPFLG)Tj -/F1 1 Tf -7.8013 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf --32.8023 -1.323 TD -(\(initially )Tj -/TT8 1 Tf -4.279 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(\), then whenever a function is broken-down, it will be redefined to)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 14 0 R -/TT11 44 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -51 0 obj -<< -/Length 5031 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-13)Tj -/F1 1 Tf -10 0 0 10 162 568.26 Tm -(call the measuring function, and then recompiled. The measuring function is)Tj -0 -1.2 TD -(expanded in-line via an appropriate macro. In addition, whenever )Tj -/TT8 1 Tf -30.929 0 TD -(BRKDWNTYPE)Tj -/F1 1 Tf --30.929 -1.323 TD -(is reset, the compiler is called for )Tj -/F2 1 Tf -15.538 0 TD -(all)Tj -/F1 1 Tf -1.24 0 TD -( functions for which )Tj -/TT8 1 Tf -9.425 0 TD -(BRKDWNCOMPFLG)Tj -/F1 1 Tf -7.8013 0 TD -( was)Tj --34.0043 -1.323 TD -(set at the time they were originally broken-down, i.e. the setting of the flag at)Tj -0 -1.2 TD -(the time a function is broken-down determines whether the call to the)Tj -T* -(measuring code is compiled in-line.)Tj -/TT4 1 Tf -14 0 0 14 54 460.62 Tm -(GAINSPACE)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 457.03 m -534.01 457.03 l -S -BT -/F1 1 Tf -10 0 0 10 126 438.8 Tm -(If you have large programs and databases, you may sometimes find yourself in a)Tj -T* -(situation where you need to obtain more space, and are willing to pay the price of)Tj -T* -(eliminating some or all of the context information that the various user-assistance)Tj -T* -(facilities such as the programmers assistant, file package, CLISP, etc., have)Tj -T* -(accumulated during the course of his session. The function )Tj -/TT8 1 Tf -27.63 0 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( provides an)Tj --33.0309 -1.323 TD -(easy way to selectively throw away accumulated data:)Tj -/TT8 1 Tf -0 -2.206 TD --0.0001 Tc -(\(GAINSPACE\) )Tj -/TT6 1 Tf -7.2002 0 TD -0 Tc -( )Tj -/F1 1 Tf -28.7858 0 TD -([Function])Tj --32.386 -1.823 TD -(Prints a list of deletable objects, allowing you to specify at each point what)Tj -0 -1.2 TD -(should be discarded and what should be retained. For example:)Tj -/TT11 1 Tf -3.6 -1.9 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -(\(GAINSPACE\))Tj --0.9868 -1 TD -(purge history lists ? Yes)Tj -T* -(purge everything, or just the properties, e.g., SIDE,)Tj -T* -(LISPXPRINT, etc. ?)Tj -T* -(just the properties)Tj -T* -(discard definitions on property lists ? Yes)Tj -T* -(discard old values of variables ? Yes)Tj -T* -(erase properties ? No)Tj -T* -(erase CLISP translations? Yes)Tj --7.2 -2.123 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( is driven by the list )Tj -/TT8 1 Tf -9.502 0 TD -(GAINSPACEFORMS)Tj -/F1 1 Tf -8.4014 0 TD -(. Each element on )Tj -/TT8 1 Tf -8.816 0 TD -(GAINSPACEFORMS)Tj -/F1 1 Tf --32.1202 -1.323 TD -(is of the form )Tj -/TT8 1 Tf -6.389 0 TD -(\()Tj -/F2 1 Tf -0.6001 0 TD -(PRECHECK)Tj -/F3 1 Tf -5.87 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(MESSAGE)Tj -/F3 1 Tf -5.204 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FORM)Tj -/F3 1 Tf -3.13 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(KEYLST)Tj -/TT8 1 Tf -4.167 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(PRECHECK)Tj -/F1 1 Tf -5.87 0 TD -(, when)Tj --34.5432 -1.323 TD -(evaluated, returns )Tj -/TT8 1 Tf -8.834 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( skips to the next entry. For example, you will not)Tj --16.5912 -1.323 TD -(be asked whether or not to purge the history list if it is not enabled. Otherwise,)Tj -/TT8 1 Tf -0 -1.2 TD -(ASKUSER)Tj -/F1 1 Tf -4.2007 0 TD -( \(Chapter 26\) is called with the indicated )Tj -/F2 1 Tf -19.151 0 TD -(MESSAGE)Tj -/F1 1 Tf -5.204 0 TD -( and the \(optional\))Tj -/F2 1 Tf --28.5557 -1.323 TD -(KEYLST)Tj -/F1 1 Tf -4.167 0 TD -(. If you respond )Tj -/TT10 1 Tf -7.722 0 TD -(No)Tj -/F1 1 Tf -1.2002 0 TD -(, i.e., )Tj -/TT8 1 Tf -2.483 0 TD -(ASKUSER)Tj -/F1 1 Tf -4.2007 0 TD -( returns )Tj -/TT8 1 Tf -4.018 0 TD -(N)Tj -/F1 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( skips to the next)Tj --30.3479 -1.323 TD -(entry. Otherwise, )Tj -/F2 1 Tf -8.649 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( is evaluated with the variable )Tj -/TT8 1 Tf -14.356 0 TD -(RESPONSE)Tj -/F1 1 Tf -4.8008 0 TD -( bound to the value)Tj --30.9358 -1.323 TD -(of )Tj -/TT8 1 Tf -1.111 0 TD -(ASKUSER)Tj -/F1 1 Tf -4.2007 0 TD -(. In the above example, the )Tj -/F2 1 Tf -13.04 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( for the ")Tj -/TT10 1 Tf -4 0 TD -(purge history lists)Tj -/F1 1 Tf -11.4019 0 TD -(")Tj --36.8835 -1.323 TD -(question calls )Tj -/TT8 1 Tf -6.594 0 TD -(ASKUSER)Tj -/F1 1 Tf -4.2007 0 TD -( to ask ")Tj -/TT10 1 Tf -3.724 0 TD -(purge everything, ...)Tj -/F1 1 Tf -12.602 0 TD -(" only if you had responded)Tj -/TT10 1 Tf --27.1207 -1.323 TD -(Yes)Tj -/F1 1 Tf -1.8003 0 TD -(. If you had responded with )Tj -/TT10 1 Tf -13.186 0 TD -(Everything)Tj -/F1 1 Tf -6.001 0 TD -(, the second question would not have been)Tj --20.9873 -1.323 TD -(asked.)Tj -0 -1.9 TD -(The ")Tj -/TT10 1 Tf -2.445 0 TD -(erase properties)Tj -/F1 1 Tf -9.6016 0 TD -(" question is driven by a list )Tj -/TT8 1 Tf -13.17 0 TD -(SMASHPROPSMENU)Tj -/F1 1 Tf -8.4014 0 TD -(. Each element)Tj --33.6179 -1.323 TD -(on this list is of the form )Tj -/TT8 1 Tf -11.594 0 TD -(\()Tj -/F2 1 Tf -0.6001 0 TD -(MESSAGE)Tj -/F3 1 Tf -5.204 0 TD -( )Tj -/TT8 1 Tf -0.287 0 TD -(.)Tj -/F3 1 Tf -0.6001 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(PROPS)Tj -/TT8 1 Tf -3.52 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(. You are prompted with )Tj -/F2 1 Tf -11.798 0 TD -(MESSAGE)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 14 0 R -/TT10 22 0 R -/TT11 44 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -54 0 obj -<< -/Length 2848 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-14)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(\(by )Tj -/TT8 1 Tf -1.704 0 TD -(ASKUSER)Tj -/F1 1 Tf -4.2007 0 TD -(\), and if your response is )Tj -/TT10 1 Tf -11.593 0 TD -(Ye)Tj -/F3 1 Tf -1.2002 0 TD -(s)Tj -/F1 1 Tf -0.5 0 TD -(, )Tj -/F2 1 Tf -0.556 0 TD -(PROPS)Tj -/F1 1 Tf -3.52 0 TD -( is added to the list )Tj -/TT8 1 Tf -9.095 0 TD -(SMASHPROPS)Tj -/F1 1 Tf -6.001 0 TD -(.)Tj --38.3699 -1.323 TD -(The ")Tj -/TT10 1 Tf -2.445 0 TD -(discard definitions on property lists)Tj -/F1 1 Tf -22.2036 0 TD -(" and ")Tj -/TT10 1 Tf -3.075 0 TD -(discard old values of)Tj --27.7236 -1.323 TD -(variables)Tj -/F1 1 Tf -5.4009 0 TD -(" questions also add to )Tj -/TT8 1 Tf -10.614 0 TD -(SMASHPROPS)Tj -/F1 1 Tf -6.001 0 TD -(. You will not be prompted for any entry)Tj --22.0159 -1.323 TD -(on )Tj -/TT8 1 Tf -1.389 0 TD -(SMASHPROPSMENU)Tj -/F1 1 Tf -8.4014 0 TD -( for which all of the corresponding properties are already on)Tj -/TT8 1 Tf --9.7904 -1.323 TD -(SMASHPROPS)Tj -/F1 1 Tf -6.001 0 TD -(. )Tj -/TT8 1 Tf -0.834 0 TD -(SMASHPROPS)Tj -/F1 1 Tf -6.001 0 TD -( is initially set to the value of )Tj -/TT8 1 Tf -13.763 0 TD -(SMASHPROPSLST)Tj -/F1 1 Tf -7.8013 0 TD -(. This)Tj --34.4002 -1.323 TD -(permits you to specify in advance those properties which you always want discarded,)Tj -0 -1.2 TD -(and not be asked about them subsequently. After finishing all the entries on)Tj -/TT8 1 Tf -T* -(GAINSPACEFORMS)Tj -/F1 1 Tf -8.4014 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( checks to see if the value of )Tj -/TT8 1 Tf -13.131 0 TD -(SMASHPROPS)Tj -/F1 1 Tf -6.001 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(,)Tj --38.6795 -1.323 TD -(and if so, does a )Tj -/TT8 1 Tf -7.613 0 TD -(MAPATOMS)Tj -/F1 1 Tf -4.8008 0 TD -(, i.e., looks at every atom in the system, and erases the)Tj --12.4138 -1.323 TD -(indicated properties.)Tj -0 -1.9 TD -(You can change or add new entries to )Tj -/TT8 1 Tf -17.557 0 TD -(GAINSPACEFORMS)Tj -/F1 1 Tf -8.4014 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(SMASHPROPSMENU)Tj -/F1 1 Tf -8.4014 0 TD -(, so that)Tj -/TT8 1 Tf --35.8597 -1.323 TD -(GAINSPACE)Tj -/F1 1 Tf -5.4009 0 TD -( can also be used to purge structures that your programs have accumulated.)Tj -/TT4 1 Tf -14 0 0 14 102 373.01 Tm -(Using Data Types Instead of Records)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 369.42 m -582.01 369.42 l -S -BT -/F1 1 Tf -10 0 0 10 174 351.19 Tm -(If a program uses large numbers of large data structures, there are several advantages)Tj -0 -1.2 TD -(to representing them as user data types rather than as list structures. The primary)Tj -T* -(advantage is increased speed: accessing and setting the fields of a data type can be)Tj -T* -(significantly faster than walking through a list with repeated )Tj -/TT8 1 Tf -28.671 0 TD -(CAR)Tj -/F1 1 Tf -1.8003 0 TD -(s and )Tj -/TT8 1 Tf -2.76 0 TD -(CDR)Tj -/F1 1 Tf -1.8003 0 TD -(s. Also, )Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 13 0 R -/F3 21 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT8 14 0 R -/TT10 22 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -57 0 obj -<< -/Length 3827 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-15)Tj -/F1 1 Tf -10 0 0 10 126 568.26 Tm -(compiled code for referencing data types is usually smaller. Finally, by reducing the)Tj -0 -1.2 TD -(number of objects created \(one object against many list cells\), this can reduce the)Tj -T* -(expense of garbage collection.)Tj -0 -1.9 TD -(User data types are declared by using the )Tj -/TT8 1 Tf -19.521 0 TD -(DATATYPE)Tj -/F1 1 Tf -4.8008 0 TD -( record type \(Chapter 8\). If a list)Tj --24.3218 -1.323 TD -(structure has been defined using the )Tj -/TT8 1 Tf -17.204 0 TD -(RECORD)Tj -/F1 1 Tf -3.6006 0 TD -( record type \(Chapter 8\), and all accessing)Tj --20.8046 -1.323 TD -(operations are written using the record packages )Tj -/TT10 1 Tf -23.094 0 TD -(fetch)Tj -/F1 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.556 0 TD -(replace)Tj -/F1 1 Tf -4.2007 0 TD -(, and )Tj -/TT10 1 Tf -2.575 0 TD -(create)Tj -/F1 1 Tf --33.4262 -1.323 TD -(operations, changing from )Tj -/TT8 1 Tf -12.352 0 TD -(RECORD)Tj -/F1 1 Tf -3.6006 0 TD -(s to )Tj -/TT8 1 Tf -1.908 0 TD -(DATATYPE)Tj -/F1 1 Tf -4.8008 0 TD -(s only requires editing the record)Tj --22.6614 -1.323 TD -(declaration \(using )Tj -/TT8 1 Tf -8.63 0 TD -(EDITREC)Tj -/F1 1 Tf -4.2007 0 TD -(, Chapter 8\) to replace declaration type )Tj -/TT8 1 Tf -18.335 0 TD -(RECORD)Tj -/F1 1 Tf -3.6006 0 TD -( by)Tj -/TT8 1 Tf --34.7663 -1.323 TD -(DATATYPE)Tj -/F1 1 Tf -4.8008 0 TD -(, and recompiling.)Tj --4.8008 -2.023 TD -(Note: There are some minor disadvantages with allocating new data types: First, there)Tj -0 -1.2 TD -(is an upper limit on the number of data types which can exist. Also, space for data)Tj -T* -(types is allocated a page at a time, so each data type has at least one page assigned to)Tj -T* -(it, which may be wasteful of space if there are only a few examples of a given data type.)Tj -T* -(These problems should not effect most applications programs.)Tj -/TT4 1 Tf -14 0 0 14 54 345.7 Tm -(Using Incomplete File Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 342.11 m -534.01 342.11 l -S -BT -/F1 1 Tf -10 0 0 10 126 323.88 Tm -(Currently, Interlisp allows you to specify an open file by giving the file name. If the file)Tj -T* -(name is incomplete \(it doesnt have the device/host, directory, name, extension, and)Tj -T* -(version number all supplied\), the system converts it to a complete file name, by)Tj -T* -(supplying defaults and searching through directories \(which may be on remote file)Tj -T* -(servers\), and then searches the open streams for one corresponding to that file name.)Tj -T* -(This file name-completion process happens whenever any I/O function is given an)Tj -T* -(incomplete file name, which can cause a serious performance problem if I/O operations)Tj -T* -(are done repeatedly. In general, it is much faster to convert an incomplete file name to)Tj -T* -(a stream once, and use the stream from then on. For example, suppose a file is opened)Tj -T* -(with)Tj -/TT8 1 Tf -2.093 0 TD -( \(SETQ STRM \(OPENSTREAM MYNAME INPUT\)\))Tj -/F1 1 Tf -24.0039 0 TD -(. After doing this, )Tj -/TT8 1 Tf -8.649 0 TD -(\(READC)Tj --34.7459 -1.323 TD -(MYNAME\))Tj -/F1 1 Tf -4.8008 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(\(READC STRM\))Tj -/F1 1 Tf -7.2012 0 TD -( would both work, but )Tj -/TT8 1 Tf -10.373 0 TD -(\(READC MYNAME\))Tj -/F1 1 Tf -9.0015 0 TD -( would take)Tj --33.6734 -1.323 TD -(longer \(sometimes orders of magnitude longer\). This could seriously effect the)Tj -0 -1.2 TD -(performance if a program which is doing many I/O operations.)Tj -0 -1.9 TD -(At some point in the future, when multiple streams are supported to a single file, the)Tj -0 -1.2 TD -(feature of mapping file names to streams will be removed. This is yet another reason)Tj -T* -(why programs should use streams as handles to open files, instead of file names.)Tj -0 -1.9 TD -(For more information on efficiency considerations when using files, see Chapter 24.)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT8 14 0 R -/TT10 22 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -60 0 obj -<< -/Length 1556 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-16)Tj -/TT4 1 Tf -14 0 0 14 102 565.08 Tm -(Using "Fast" and "Destructive" Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 561.49 m -582.01 561.49 l -S -BT -/F1 1 Tf -10 0 0 10 174 543.26 Tm -(Among the functions used for manipulating objects of various data types, there are a)Tj -0 -1.2 TD -(number of functions which have "fast" and "destructive" versions. You should be aware)Tj -T* -(of what these functions do, and when they should be used.)Tj -0 -1.9 TD -("Fast" functions: By convention, a function named by prefixing an existing function)Tj -0 -1.2 TD -(name with )Tj -/TT8 1 Tf -5.205 0 TD -(F)Tj -/F1 1 Tf -0.6001 0 TD -( indicates that the new function is a "fast" version of the old. These usually)Tj --5.8051 -1.323 TD -(have the same definitions as the slower versions, but they compile open and run)Tj -0 -1.2 TD -(without any "safety" error checks. For example, )Tj -/TT8 1 Tf -22.502 0 TD -(FNTH)Tj -/F1 1 Tf -2.4004 0 TD -( runs faster than )Tj -/TT8 1 Tf -8.093 0 TD -(NTH)Tj -/F1 1 Tf -1.8003 0 TD -(, however, it)Tj --34.7957 -1.323 TD -(does not make as many checks \(for lists ending with anything but )Tj -/TT8 1 Tf -30.597 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, etc\). If these)Tj --32.3973 -1.323 TD -(functions are given arguments that are not in the form that they expect, their behavior)Tj -0 -1.2 TD -(is unpredictable; they may run forever, or cause a system error. In general, you should)Tj -T* -(only use "fast" functions in code that has already been completely debugged, to speed it)Tj -T* -(up.)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -63 0 obj -<< -/Length 1076 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-17)Tj -/F1 1 Tf -10 0 0 10 126 568.26 Tm -("Destructive" functions: By convention, a function named by prefixing an existing)Tj -0 -1.2 TD -(function with )Tj -/TT8 1 Tf -6.463 0 TD -(D)Tj -/F1 1 Tf -0.6001 0 TD -( indicates the new function is a "destructive" version of the old one,)Tj --7.0631 -1.323 TD -(which does not make any new structure but cannibalizes its argument\(s\). For example,)Tj -/TT8 1 Tf -0 -1.2 TD -(REMOVE)Tj -/F1 1 Tf -3.6006 0 TD -( returns a copy of a list with a particular element removed, but )Tj -/TT8 1 Tf -29.337 0 TD -(DREMOVE)Tj -/F1 1 Tf --32.9376 -1.323 TD -(actually changes the list structure of the list. \(Unfortunately, not all destructive)Tj -0 -1.2 TD -(functions follow this naming convention: the destructive version of )Tj -/TT8 1 Tf -30.982 0 TD -(APPEND)Tj -/F1 1 Tf -3.6006 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NCONC)Tj -/F1 1 Tf -3.0005 0 TD -(.\))Tj --38.9171 -1.323 TD -(You should be careful when using destructive functions that they do not inadvertantly)Tj -0 -1.2 TD -(change data structures.)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT8 14 0 R ->> -/ExtGState << -/GS1 8 0 R ->> ->> -endobj -8 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -65 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -66 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -67 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -68 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -69 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -70 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBKMPH+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 71 0 R ->> -endobj -71 0 obj -<< -/Filter /FlateDecode -/Length 20019 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"T0`IiAPo#̒ (+iDkiJ54Z -$!HG@TJA(17; ϼwf~}oル7@69!?pfarZVX`~W'# M@ưXFbX|$@ŒP,rߛ؊PUj`PJĎM-A>&>YEC3]RG $ʇw\bekph%Jo|AFP\U"tz^n.;:_ - -uq=80g8@mʿg-Y<8 -qU -qx:WA?'s? 8f5$&8a,&Lh9p43d% Q:6C5F\hp4Cx\3LRԪ%i7k$^Y8 -|:"9s).^Q@ &qS9Nα0 ;` 4@q*0S0r~X ~n9d9B%%!CARij@Omp'70NNGJ^gW}o@ 8jؿ-#В<ދY_ {)(,G Zm&*0^A8⼇#,ùqGr\|ƣ8?Id*+Qr;Ffl\—dkr&6g9"<t/ M -h!"yN2N a|#{݋naDtzJLQE8t}E0A,lvy 3ĭo2A,n, h!+c9`qnL~W-S^4s"@6S;F#UrĤ^ &Τi215ɣ}=&!-7RIG6h]_ ~1 ɴI/ft 'nSSO4 _!37: Z}4|/f/r\+46;HX~$}RY)Dcf~`bl\bRh2m\n -Wڸ6kl\k6>cc?qXgs66l|z'⌸j託MF O(F1+SE&ѐU͊!t5sg@K7?_/F\ W$EcnL552鲚fU<>*%ʣ[ -)h #@1nٵU$4SkWLg6*6OmP-B Mv!.P"m Ճ.P4 ?x8Α$;Di*2kM)[$~/]RU)Ck̄Lp0FkI,[{]BHlj0>wvo-lpW{;Yb;=ޕqyupQOXj]B&k=aahOgYU:NVoqu,<8\,Jҙ{K(0S榁gP@AۀS]zD,YsWAorm2cgX^Jv[mcxg6b齊N*_=#5dcsZs:i8Cv]-= Pa@?[Cu8vU|-m${c?ԗ lǟŹgBV8Np-vH§ֵ@CRr DB 5I*kU NG 0-d+hԡۚ ﹳMRDHHh<~ٜ3.\0YXJwX e^& LH}2*$u֑1b{wkY n%i0˰Z[-d4 ~RlB;~/1 sۃ^@F%HV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W wϽc.NFurwUL4mX&Trp#<񷛢,CH4);c4i疮RdעYi3?O[Wݖ-WVLAZu͖ùo6_uʻ% th奕r:}s<3"kE7}U }iʮ쳡kڧix.QwsWt~谵i^VFؼ?b鳉s]/G]?ސ5?YuiO8yZ㉲K7 Gt}7e6:{݊hOio<ŷƗC+oɟиOzyjLpa*[GWLoY> qB:=^zeВyS;"N3<]`(MhuFֻ[-Q|8Ga -۳.>}ޠ⢦ ˫?{U{|Ie5O߸4Həb52ǟ NɅS# iЬʼ@a4|Ƀt6+=!劢 Cr6Mo@Gj4N4u4 UInP)93w+%YIÐ%d $A |>{]{ vm|rނ|nIoLA^V*x'~^~ ~^wivqKdYIMmsς ic~Oc|<-Q<VUtbx\U=F_hd -rdK%!͖ -*Ow,23u/h9njyOC()z(XK sB'rEf>hN1mF2?=B[{49ўȴ v!L6i+fpZ_ s=x'˴e -`]ƚ2*ǖJpm!˔˞E\r'–Xr-ٴ{U"3qNXdЈh5 .%('~T&43Ř"sO\a5{r)42-4XORm̺T~*&42N28 g3`8@OC s*xp -'c&Aƀ`482t 4"#!Gf0 yk0 G&-0 /N@e@/al}ɉ9<>eC?}$7{A3rܳ<~/Jn: =-t}ȅfsA4 -Y:VPuBt9BjA5T*(E2@l)в'Yͭg7?%!I@JE~t -+XNyJ^,qءۑ[vk9iὸ;4Ń<\L,^Z^,{M@NZ޾z.Izo`͋T8CXƉ8YD!,0;Xz?!ECqQM!-| iyb8_YsndݢLR&uWZS)4%ҝo8Yl;듔ԕ.{v]n8>P=tII+{AUZ Y9{RR(BxAmjj7]L@Ic1zc}x5A)?ٺÚ??NO$B$=޶#ޜzd5K"=#+86Y16Y6Yr L|kv8na7h&l|;{KK'̲?Ԙ8 l`ǽM?)lgVeD'ժw[=^ 0S -endstream -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 146 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 481 333 606 333 606 606 -0 606 204 556 389 1000 500 500 333 1000 630 259 1000 606 611 606 -606 204 204 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 72 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 151 -/Widths [278 333 400 556 556 833 852 278 333 333 500 606 278 333 278 606 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -747 704 722 722 778 722 667 778 833 407 611 741 667 944 815 778 -667 778 741 667 685 815 704 926 704 685 667 333 606 333 606 500 -333 574 556 444 611 444 333 537 611 333 315 556 333 889 611 500 -574 556 444 444 352 611 519 778 500 500 463 333 606 333 606 606 -0 606 204 556 389 1000 500 500 333 1000 667 333 981 606 667 606 -606 204 204 389 389 606 500 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 73 0 R ->> -endobj -21 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [287 296 333 574 574 833 852 241 389 389 500 606 278 333 278 278 -574 574 574 574 574 574 574 574 574 574 278 278 606 606 606 500 -747 759 778 778 833 759 722 833 870 444 648 815 722 981 833 833 -759 833 815 667 722 833 759 981 722 722 667 389 606 389 606 500 -333 611 648 556 667 574 389 611 685 370 352 667 352 963 685 611 -667 648 519 500 426 685 611 889 611 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 74 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 65 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 474 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 0 278 0 722 0 833 722 778 -667 0 722 667 611 722 667 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 0 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 0 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 66 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 67 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 0 600 600 600 0 0 600 600 0 0 600 0 600 0 -600 600 600 600 600 600 600 600 600 600 0 600 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 0 600 0 600 600 -600 0 600 600 600 600 600 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 68 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 -0 600 0 0 0 600 600 600 0 0 0 0 600 0 600 600 -0 0 600 600 600 600 0 0 0 600 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 69 0 R ->> -endobj -44 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBKMPH+Symbol -/Encoding /Identity-H -/DescendantFonts [ 75 0 R ] -/ToUnicode 76 0 R ->> -endobj -75 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBKMPH+Symbol -/FontDescriptor 70 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -76 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'8omN&nN- Z<Z?+;dOcgF%o(hp8yy1LkD^E64"JUs$~n2,J?F/r݈]H ߉!Gsj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -10 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 12 0 R -/Contents 11 0 R ->> -endobj -15 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 17 0 R -/Contents 16 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 9 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -77 0 obj -<< -/S /D ->> -endobj -78 0 obj -<< -/Nums [0 77 0 R ] ->> -endobj -9 0 obj -<< -/Type /Pages -/Kids [1 0 R 10 0 R 15 0 R 18 0 R 23 0 R 26 0 R 29 0 R 32 0 R 35 0 R 38 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [41 0 R 47 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R] -/Count 7 -/Parent 45 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [9 0 R 46 0 R ] -/Count 17 -/MediaBox [0 0 612 792] ->> -endobj -79 0 obj -<< -/CreationDate (D:20210202102705-06'00') -/ModDate (D:20210202102705-06'00') -/Producer (Apple pstopdf) ->> -endobj -80 0 obj -<< -/Type /Catalog -/Pages 45 0 R -/PageLabels 78 0 R ->> -endobj -xref -0 81 -0000000000 65535 f -0000087841 00000 n -0000000016 00000 n -0000003426 00000 n -0000083576 00000 n -0000085415 00000 n -0000085626 00000 n -0000086062 00000 n -0000061516 00000 n -0000089324 00000 n -0000087921 00000 n -0000003553 00000 n -0000007429 00000 n -0000084216 00000 n -0000086227 00000 n -0000088004 00000 n -0000007569 00000 n -0000010461 00000 n -0000088087 00000 n -0000010601 00000 n -0000015341 00000 n -0000084878 00000 n -0000086757 00000 n -0000088170 00000 n -0000015483 00000 n -0000016278 00000 n -0000088253 00000 n -0000016409 00000 n -0000020945 00000 n -0000088336 00000 n -0000021107 00000 n -0000022011 00000 n -0000088419 00000 n -0000022117 00000 n -0000026057 00000 n -0000088502 00000 n -0000026197 00000 n -0000031240 00000 n -0000088585 00000 n -0000031391 00000 n -0000036275 00000 n -0000088668 00000 n -0000036437 00000 n -0000040962 00000 n -0000087204 00000 n -0000089576 00000 n -0000089460 00000 n -0000088752 00000 n -0000041126 00000 n -0000046008 00000 n -0000088836 00000 n -0000046172 00000 n -0000051256 00000 n -0000088920 00000 n -0000051444 00000 n -0000054345 00000 n -0000089004 00000 n -0000054509 00000 n -0000058389 00000 n -0000089088 00000 n -0000058531 00000 n -0000060140 00000 n -0000089172 00000 n -0000060269 00000 n -0000061398 00000 n -0000061656 00000 n -0000061853 00000 n -0000062059 00000 n -0000062254 00000 n -0000062445 00000 n -0000062647 00000 n -0000062837 00000 n -0000082946 00000 n -0000083154 00000 n -0000083364 00000 n -0000087347 00000 n -0000087550 00000 n -0000089256 00000 n -0000089284 00000 n -0000089667 00000 n -0000089790 00000 n -trailer -<< -/Size 81 -/Root 80 0 R -/Info 79 0 R -/ID [<818b9db9d7448f19dd30a29f215353b1><818b9db9d7448f19dd30a29f215353b1>] ->> -startxref -89860 -%%EOF diff --git a/docs/medley-irm/22-PROCESSES.pdf b/docs/medley-irm/22-PROCESSES.pdf deleted file mode 100644 index b5229104..00000000 --- a/docs/medley-irm/22-PROCESSES.pdf +++ /dev/null @@ -1,6969 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5846 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -[(22. )-76.4(PROCESSES)]TJ -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -510.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.0144 Tw -(The Medley Process mechanism provides an environment in which multiple Lisp processes can run in)Tj -0 -1.2222 TD -0.1833 Tw -[(parallel. Each executes in its own stack space, but all share a global address space. The current)]TJ -T* -0.2244 Tw -(process implementation is cooperative; i.e., process switches happen voluntarily, either when the)Tj -T* -0.2289 Tw -[(process in control has nothing to do or when it is in a convenient place to pause. There is no)]TJ -T* -0.0922 Tw -(preemption or guaranteed service, so you cannot run something demanding \(e.g., Chat\) at the same)Tj -T* -0.0633 Tw -[(time as something that runs for long periods without yielding control. Keyboard input and network)]TJ -T* -0.1244 Tw -(operations block with great frequency, so processes currently work best for highly interactive tasks)Tj -T* -0 Tw -(\(editing, making remote files\).)Tj -0 -2.8889 TD -0.1389 Tw -(In Medley, the process mechanism is already turned on, and is expected to stay on during normal)Tj -0 -1.2222 TD -0.15 Tw -[(operations, as some system facilities \(in particular, most network operations\) require it. However,)]TJ -T* -0 Tw -(under exceptional conditions, the following function can be used to turn the world off and on:)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESSWORLD)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT8 1 Tf -28.2197 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0333 Tw -(Starts up the process world, or if )Tj -/TT14 1 Tf -14.8749 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2833 0 TD -(OFF)Tj -/TT8 1 Tf -1.8003 0 TD -0.0333 Tw -[(, kills all processes and turns it off. Normally)]TJ --19.6423 -1.2889 TD -0.0544 Tw -[(does not return. The environment starts out with two processes: a top-level )]TJ -/TT10 1 Tf -34.3714 0 TD -0 Tw -(EVALQT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0544 Tw -[( \(the)]TJ --37.9719 -1.2889 TD -0.3256 Tw -(initial "tty" process\) and the "background" process, which runs the window mouse)Tj -0 -1.2222 TD -0 Tw -(handler and other system background tasks.)Tj -/TT10 1 Tf -0 -2 TD -(PROCESSWORLD)Tj -/TT8 1 Tf -7.2012 0 TD -0.1456 Tw -[( is intended to be called at the top level of Interlisp, not from within a)]TJ --7.2012 -1.2889 TD -0.0422 Tw -[(program. It does not toggle some sort of switch; rather, it constructs some new processes)]TJ -0 -1.2222 TD -0.1367 Tw -(in a new part of the stack, leaving any callers of )Tj -/TT10 1 Tf -22.7148 0 TD -0 Tw -(PROCESSWORLD)Tj -/TT8 1 Tf -7.2012 0 TD -0.1367 Tw -[( in a now inaccessible)]TJ --29.9159 -1.2889 TD -0.3756 Tw -[(part of the stack. Calling )]TJ -/TT10 1 Tf -13.5619 0 TD -0.9022 Tw -(\(PROCESSWORLD OFF\))Tj -/TT8 1 Tf -12.3041 0 TD -0.3756 Tw -[( is the only way the call to)]TJ -/TT10 1 Tf --25.866 -1.2889 TD -0 Tw -(PROCESSWORLD)Tj -/TT8 1 Tf -7.2012 0 TD -( ever returns.)Tj -/TT10 1 Tf --9.8678 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(HARDRESET)Tj -/TT10 1 Tf -5.3999 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 166.8017 251 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 251 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0667 Tw -[(Resets the whole world, and rebuilds the stack from scratch. This is "harder" than doing)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -0.23 Tw -[( to every process, because it also resets system internal processes \(such as the)]TJ --3.0005 -1.2889 TD -0 Tw -(keyboard handler\).)Tj -/TT10 1 Tf -0 -2 TD -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.0422 Tw -[( automatically turns the process world on \(or resets it if it was on\), unless the)]TJ --5.4009 -1.2889 TD -0 Tw -(variable )Tj -/TT10 1 Tf -3.8242 0 TD -(AUTOPROCESSFLG)Tj -/TT8 1 Tf -8.4014 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 139.26 Tm -(Creating and Destroying Processes)Tj -ET -1 w -54.01 136.55 m -510.01 136.55 l -S -BT -/TT10 1 Tf -9 0 0 9 102 118.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ADD.PROCESS)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -2.3996 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VALUE)Tj -3 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.3333 TD -(N)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VALUE)Tj -3 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 347.7017 118.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 401.99 118.26 Tm -([NoSpread Function])Tj --30.6656 -2.1778 TD -0.1644 Tw -(Creates a new process evaluating )Tj -/TT14 1 Tf -15.7851 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1644 Tw -[(, and returns its process handle. The processs)]TJ --18.1855 -1.2889 TD -0.2422 Tw -(stack environment is the top level, i.e., the new process does not have access to the)Tj -0 -1.2222 TD -0.0678 Tw -(environment in which )Tj -/TT10 1 Tf -10.2693 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0678 Tw -[( was called; all such information must be passed as)]TJ --16.8703 -1.2889 TD -0.2211 Tw -(arguments in )Tj -/TT14 1 Tf -6.5633 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2211 Tw -[(. The process runs until )]TJ -/TT14 1 Tf -12.1602 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.2211 Tw -[( returns or the process is explicitly)]TJ --23.5243 -1.2889 TD -0.2778 Tw -[(deleted. An untrapped error within the process also deletes the process \(unless its)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RESTARTABLE)Tj -/TT8 1 Tf -6.6011 0 TD -( property is )Tj -/TT10 1 Tf -5.3643 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(\), in which case a message is printed to that effect.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 5463 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.6933 Tw -[(The remaining arguments are alternately property names and values. Any)]TJ -0 -1.2222 TD -0.1333 Tw -(property/value pairs acceptable to )Tj -/TT10 1 Tf -16.1769 0 TD -0 Tw -(PROCESSPROP)Tj -/TT8 1 Tf -6.6011 0 TD -0.1333 Tw -[( may be given, but the following two)]TJ --22.778 -1.2889 TD -0 Tw -(are directly relevant to )Tj -/TT10 1 Tf -10.2563 0 TD -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -(:)Tj -/TT12 1 Tf --9.2574 -2.0667 TD -(NAME)Tj -/TT8 1 Tf -3.7333 0 TD -0.0267 Tw -(Value can be a symbol or a string; if not given, the process)Tj -0 -1.2889 TD -0.2567 Tw -(name is taken from )Tj -/TT10 1 Tf -9.7855 0 TD -0 Tw -(\(CAR)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.5067 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2567 Tw -(. )Tj -/TT10 1 Tf -1.2633 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.2567 Tw -[( may)]TJ --23.5574 -1.2889 TD -0.0944 Tw -(pack the name with a number to make it unique. Process)Tj -0 -1.2222 TD -0.0256 Tw -[(names are treated as case-insensitive strings. This name is)]TJ -T* -0.2289 Tw -(solely for the convenience of manipulating processes at)Tj -T* -0.28 Tw -(Lisp type-in; e.g., the name can be given as the )Tj -/TT14 1 Tf -23.6037 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf --23.6037 -1.2889 TD -0.5222 Tw -(argument to most process functions, and the name)Tj -0 -1.2222 TD -0.4111 Tw -[(appears in menus of processes. However, programs)]TJ -T* -0.2322 Tw -(should normally only deal in process handles, both for)Tj -T* -0.0344 Tw -(efficiency and to avoid the confusion that can result if two)Tj -T* -0 Tw -(processes have the same defining form.)Tj -/TT12 1 Tf --5.5333 -2 TD -(SUSPEND)Tj -/TT8 1 Tf -5.5333 0 TD -0.2167 Tw -(If the value is non-)Tj -/TT10 1 Tf -9.1196 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2167 Tw -(, the new process is created but)Tj --10.9199 -1.2889 TD -0.27 Tw -(then immediately suspended; i.e., the process does not)Tj -0 -1.2222 TD -0 Tw -(actually run until woken by a )Tj -/TT10 1 Tf -13.291 0 TD -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -( \(below\).)Tj -/TT10 1 Tf --34.4922 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESSPROP)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEWVALUE)Tj -/TT10 1 Tf -4.8008 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 318.7658 353 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 449.99 353 Tm -([NoSpread Function])Tj --30.6656 -1.8444 TD -0.0278 Tw -(Used to get or set the values of certain properties of process )Tj -/TT14 1 Tf -26.9017 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0278 Tw -(, in a manner analogous)Tj --29.3021 -1.2889 TD -0 Tw -(to )Tj -/TT10 1 Tf -1.1643 0 TD -(WINDOWPROP)Tj -/TT8 1 Tf -6.001 0 TD -0.0422 Tw -[(. If )]TJ -/TT14 1 Tf -1.7966 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0422 Tw -[( is supplied \(including if it is )]TJ -/TT10 1 Tf -13.2013 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0422 Tw -(\), property )Tj -/TT14 1 Tf -5.0669 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0422 Tw -[( is given)]TJ --36.2315 -1.2889 TD -0.1056 Tw -[(that value. In all cases, returns the old value of the property. The following properties)]TJ -0 -1.2222 TD -0 Tw -(have special meaning for processes; all others are uninterpreted:)Tj -/TT12 1 Tf -7.6 -2 TD -(NAME)Tj -/TT8 1 Tf -3.7333 0 TD -0.1189 Tw -(Value is a symbol used for identifying the process to the)Tj -0 -1.2889 TD -0 Tw -(user.)Tj -/TT12 1 Tf --3.7333 -2 TD -(FORM)Tj -/TT8 1 Tf -3.7333 0 TD -(Value is the Lisp form used to start the process \(readonly\).)Tj -/TT12 1 Tf --7.9333 -2.0667 TD -(RESTARTABLE)Tj -/TT8 1 Tf -7.9333 0 TD -0.2089 Tw -(Value is a flag indicating the disposition of the process)Tj -0 -1.2889 TD -0 Tw -(following errors or hard resets:)Tj -/TT10 1 Tf -0 -2 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0444 Tw -[( or )]TJ -/TT10 1 Tf -1.5298 0 TD -0 Tw -(NO)Tj -/TT8 1 Tf -1.2002 0 TD -0.0444 Tw -[( \(the default\): If an untrapped error \(or Control-)]TJ --4.5303 -1.2889 TD -0.0467 Tw -(E or Control-D\) causes its form to be exited, the process is)Tj -0 -1.2222 TD -0.1433 Tw -[(deleted. The process is also deleted if a )]TJ -/TT10 1 Tf -18.9277 0 TD -0 Tw -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.1433 Tw -[( \(or)]TJ --24.3286 -1.2889 TD -0.1556 Tw -(Control-D from )Tj -/TT10 1 Tf -7.4698 0 TD -0 Tw -(RAID)Tj -/TT8 1 Tf -2.4004 0 TD -0.1556 Tw -(\) occurs, causing the entire Process)Tj --9.8702 -1.2889 TD -0 Tw -(world to be reinitialized.)Tj -/TT10 1 Tf -0 -2 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0778 Tw -[( or )]TJ -/TT10 1 Tf -1.5965 0 TD -0 Tw -(YES)Tj -/TT8 1 Tf -1.8003 0 TD -0.0778 Tw -(: The process is automatically restarted on errors)Tj --3.9969 -1.2889 TD -0 Tw -(or )Tj -/TT10 1 Tf -1.302 0 TD -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.1111 Tw -[(. This is the normal setting for persistent)]TJ --6.7029 -1.2889 TD -0.1567 Tw -("background" processes, such as the mouse process, that)Tj -0 -1.2222 TD -0 Tw -(can safely restart themselves on errors.)Tj -/TT10 1 Tf -0 -2 TD -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.2067 Tw -(: The process is deleted as usual if an error)Tj --5.4009 -1.2889 TD -0.3633 Tw -(causes its form to be exited, but it )Tj -/TT16 1 Tf -17.934 0 TD -0 Tw -(is)Tj -/TT8 1 Tf -0.667 0 TD -0.3633 Tw -[( restarted on a)]TJ -/TT10 1 Tf --18.601 -1.2222 TD -0 Tw -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.46 Tw -[(. This setting is preferred for persistent)]TJ --5.4009 -1.2889 TD -0.0833 Tw -(processes for which an error is an unusual condition, one)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -19 0 obj -<< -/Length 4518 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 228 569.54 Tm -0.08 Tw -(that might repeat itself if the process were simply blindly)Tj -0 -1.2222 TD -0 Tw -(restarted.)Tj -/TT12 1 Tf --7.9333 -2 TD -(RESTARTFORM)Tj -/TT8 1 Tf -7.9333 0 TD -0.0311 Tw -(If the value is non)Tj -/TT18 1 Tf -8.0444 0 TD -0 Tw -(-)Tj -/TT10 1 Tf -0.333 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -(, it is the form used if the process is)Tj --10.1777 -1.2889 TD -0.1044 Tw -(restarted \(instead of the value of the )Tj -/TT10 1 Tf -16.9323 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1044 Tw -[( property\). Of)]TJ --19.3327 -1.2889 TD -0.8489 Tw -(course, the process must also have a non-)Tj -/TT10 1 Tf -24.1981 0 TD -0 Tw -(NIL)Tj --24.1981 -1.2889 TD -(RESTARTABLE)Tj -/TT8 1 Tf -6.6011 0 TD -( prop for this to have any effect.)Tj -/TT12 1 Tf --13.9344 -2.0667 TD -(BEFOREEXIT)Tj -/TT8 1 Tf -7.3333 0 TD -0.1133 Tw -(If the value is the atom )Tj -/TT10 1 Tf -11.0321 0 TD -0 Tw -(DONT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1133 Tw -(, it will not be interrupted)Tj --14.0325 -1.2889 TD -0.1033 Tw -(by a )Tj -/TT10 1 Tf -2.316 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[(. If )]TJ -/TT10 1 Tf -1.9799 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[( is attempted before the process)]TJ --11.4971 -1.2889 TD -0.2789 Tw -(finishes, a message will appear saying that Interlisp is)Tj -0 -1.2222 TD -0.06 Tw -[(waiting for the process to finish. If you want the )]TJ -/TT10 1 Tf -22.3934 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf --22.3934 -1.2889 TD -0.2856 Tw -(to proceed without waiting, you must use the process)Tj -0 -1.2222 TD -0.0833 Tw -(status window \(from the background menu\) to delete the)Tj -T* -0 Tw -(process.)Tj -/TT12 1 Tf --6.7333 -2 TD -(AFTEREXIT)Tj -/TT8 1 Tf -6.7333 0 TD -0.0978 Tw -(Value indicates the disposition of the process following a)Tj -0 -1.2889 TD -0.3289 Tw -(resumption of Lisp after some exit \()Tj -/TT10 1 Tf -17.7189 0 TD -0 Tw -(LOGOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.8289 0 TD -(SYSOUT)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --25.749 -1.2889 TD -(MAKESYS)Tj -/TT8 1 Tf -4.2007 0 TD -(\). Possible values are:)Tj -/TT10 1 Tf --4.2007 -2.0667 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -(: Delete the process.)Tj -/TT10 1 Tf --3.6006 -2.0667 TD -(SUSPEND)Tj -/TT8 1 Tf -4.2007 0 TD -0.0456 Tw -[(: Suspend the process; i.e., do not let it run until)]TJ --4.2007 -1.2889 TD -0 Tw -(it is explicitly woken.)Tj -0 -2 TD -0.0667 Tw -[(An event: Cause the process to be suspended waiting for)]TJ -0 -1.2222 TD -0 Tw -(the event \(See the Events section below\).)Tj -/TT12 1 Tf --6.1333 -2 TD -(INFOHOOK)Tj -/TT8 1 Tf -6.1333 0 TD -0.1533 Tw -(Value is a function or form used to provide information)Tj -0 -1.2889 TD -0.0244 Tw -(about the process, in conjunction with the )Tj -/TT10 1 Tf -18.8723 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0244 Tw -[( command)]TJ --21.2727 -1.2889 TD -0.3744 Tw -(in the process status window \(see the Process Status)Tj -0 -1.2222 TD -0 Tw -(Window section below\).)Tj -/TT12 1 Tf --4.9333 -2 TD -(WINDOW)Tj -/TT8 1 Tf -4.9333 0 TD -0.4467 Tw -(Value is a window associated with the process, the)Tj -0 -1.2889 TD -0.09 Tw -[(processs "main" window. Used to switch the tty process)]TJ -0 -1.2222 TD -0.2189 Tw -(to this process when you click in this window \(see the)Tj -T* -0 Tw -(Switching the TTY Process section below\).)Tj -0 -2 TD -0.0333 Tw -(Setting the )Tj -/TT10 1 Tf -5.0393 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0333 Tw -[( property does not set the primary I/O)]TJ --8.6399 -1.2889 TD -0.4378 Tw -(stream \()Tj -/TT10 1 Tf -4.0276 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.4378 Tw -(\) or the terminal I/O stream \()Tj -/TT10 1 Tf -15.6037 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.4378 Tw -(\) to the)Tj --22.0317 -1.2889 TD -0.0222 Tw -[(window. When a process is created, I/O operations to the)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.27 Tw -[( or )]TJ -/TT10 1 Tf -1.9809 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.27 Tw -[( stream will cause a new window to appear.)]TJ -/TT10 1 Tf --4.3813 -1.2889 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.1333 Tw -[( \(see Chapter 26\) should be used to)]TJ --9.6016 -1.2889 TD -0.3033 Tw -(set the terminal I/O stream of a process to a specific)Tj -0 -1.2222 TD -0 Tw -(window.)Tj -/TT12 1 Tf --7.3333 -2 TD -(TTYENTRYFN)Tj -/TT8 1 Tf -7.3333 0 TD -0.0433 Tw -(Value is a function that is applied to the process when the)Tj -0 -1.2889 TD -0.0278 Tw -(process is made the tty process \(see the Switching the TTY)Tj -0 -1.2222 TD -0 Tw -(Process section below\).)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -22 0 obj -<< -/Length 7135 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 215.4 569.54 Tm -(TTYEXITFN)Tj -/TT8 1 Tf -6.7333 0 TD -0.0433 Tw -(Value is a function that is applied to the process when the)Tj -0 -1.2889 TD -0.07 Tw -(process ceases to be the tty process \(see the Switching the)Tj -0 -1.2222 TD -0 Tw -(TTY Process section below\).)Tj -/TT10 1 Tf --14 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(THIS.PROCESS)Tj -/TT10 1 Tf -7.1999 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 225.6009 524.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 524.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0256 Tw -(Returns the handle of the currently running process, or )Tj -/TT10 1 Tf -24.8213 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0256 Tw -[( if the Process world is turned)]TJ --26.6216 -1.2889 TD -0 Tw -(off.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(DEL.PROCESS)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 249.4553 474.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 474.06 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0411 Tw -(Deletes process )Tj -/TT14 1 Tf -7.1467 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -(. )Tj -/TT14 1 Tf -0.8322 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( may be a process handle \(returned by )]TJ -/TT10 1 Tf -17.47 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0411 Tw -(\), or its)Tj --36.8508 -1.2889 TD -0 Tw -(name. If )Tj -/TT14 1 Tf -4.1138 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -( is the currently running process, )Tj -/TT10 1 Tf -14.8272 0 TD -(DEL.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -( does not return!)Tj -/TT10 1 Tf --30.6091 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.RETURN)Tj -/TT8 1 Tf -8.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 271.0562 422.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 422.92 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2422 Tw -(Terminates the currently running process, causing it to "return" )Tj -/TT14 1 Tf -30.4256 0 TD -0 Tw -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -0.2422 Tw -[(. There is an)]TJ --33.4261 -1.2889 TD -0 Tw -(implicit )Tj -/TT10 1 Tf -3.8113 0 TD -(PROCESS.RETURN)Tj -/TT8 1 Tf -8.4014 0 TD -0.1433 Tw -[( around the )]TJ -/TT14 1 Tf -5.804 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1433 Tw -[( argument given to )]TJ -/TT10 1 Tf -9.2428 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.1433 Tw -(, so that)Tj --36.2609 -1.2889 TD -0.2233 Tw -(normally a process can finish by simply returning; )Tj -/TT10 1 Tf -24.2867 0 TD -0 Tw -(PROCESS.RETURN)Tj -/TT8 1 Tf -8.4014 0 TD -0.2233 Tw -[( is supplied for)]TJ --32.688 -1.2889 TD -0 Tw -(earlier termination.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.RESULT)Tj -/TT8 1 Tf -8.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROCESS)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WAITFORRESULT)Tj -/TT10 1 Tf -7.8013 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 354.3193 349.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 349.18 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0244 0 TD -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1044 Tw -[( has terminated, returns the value, if any, that it returned. This is either the)]TJ --5.225 -1.2889 TD -0 Tw -(value of a )Tj -/TT10 1 Tf -4.5669 0 TD -(PROCESS.RETURN)Tj -/TT8 1 Tf -8.4014 0 TD -( or the value returned from the form given to )Tj -/TT10 1 Tf -20.1821 0 TD -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --39.7515 -1.2889 TD -0.6256 Tw -(If the process was aborted, the value is )Tj -/TT10 1 Tf -22.3321 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.6256 Tw -[(. If )]TJ -/TT14 1 Tf -3.5466 0 TD -0 Tw -(WAITFORRESULT)Tj -/TT8 1 Tf -7.8013 0 TD -0.6256 Tw -[( is true,)]TJ -/TT10 1 Tf --35.4802 -1.2889 TD -0 Tw -(PROCESS.RESULT)Tj -/TT8 1 Tf -8.4014 0 TD -0.0944 Tw -[( blocks until )]TJ -/TT14 1 Tf -5.9406 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0944 Tw -[( finishes, if necessary; otherwise, it returns )]TJ -/TT10 1 Tf -19.6509 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf --38.1935 -1.2889 TD -0.1744 Tw -(immediately if )Tj -/TT14 1 Tf -7.0628 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1744 Tw -[( is still running. )]TJ -/TT14 1 Tf -8.3014 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1744 Tw -[( must be the actual process handle)]TJ --23.7655 -1.2889 TD -0.0422 Tw -(returned from )Tj -/TT10 1 Tf -6.6113 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0422 Tw -(, not a process name, as the association between handle and)Tj --13.2124 -1.2889 TD -0.0578 Tw -(name disappears when the process finishes \(and the process handle itself is then garbage)Tj -0 -1.2222 TD -0 Tw -(collected if no one else has a pointer to it\).)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.FINISHEDP)Tj -/TT8 1 Tf -10.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROCESS)Tj -/TT10 1 Tf -4.2007 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 298.0579 229.64 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 229.64 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0767 Tw -(True if )Tj -/TT14 1 Tf -3.3672 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0767 Tw -[( has terminated. The value returned is an indication of how it finished:)]TJ -/TT10 1 Tf --7.5679 -1.2889 TD -0 Tw -(NORMAL)Tj -/TT8 1 Tf -3.6006 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(ERROR)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --10.7087 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESSP)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 233.2552 178.5 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 178.5 Tm -([Function])Tj --35.4033 -1.8444 TD -(True if )Tj -/TT14 1 Tf -3.2139 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -( is the handle of an active process, i.e., one that has not yet finished.)Tj -/TT10 1 Tf --8.2809 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RELPROCESSP)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROCHANDLE)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 276.4597 138.96 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 138.96 Tm -([Function])Tj --35.4033 -1.8444 TD -0.03 Tw -(True if )Tj -/TT14 1 Tf -3.2739 0 TD -0 Tw -(PROCHANDLE)Tj -/TT8 1 Tf -6.001 0 TD -0.03 Tw -[( is the handle of a deleted process. This is analogous to )]TJ -/TT10 1 Tf -25.0487 0 TD -0 Tw -(RELSTKP)Tj -/TT8 1 Tf -4.2007 0 TD -0.03 Tw -[(. It)]TJ --38.5242 -1.2889 TD -0.7656 Tw -(differs from )Tj -/TT10 1 Tf -7.0536 0 TD -0 Tw -(PROCESS.FINISHEDP)Tj -/TT8 1 Tf -10.2017 0 TD -0.7656 Tw -[( in that it never causes an error, while)]TJ -/TT10 1 Tf --17.2552 -1.2889 TD -0 Tw -(PROCESS.FINISHEDP)Tj -/TT8 1 Tf -10.2017 0 TD -( can cause an error if its )Tj -/TT14 1 Tf -10.6826 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -( argument is not a process at all.)Tj -/TT10 1 Tf --25.9513 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RESTART.PROCESS)Tj -/TT8 1 Tf -8.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 271.0553 76.22 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 76.22 Tm -([Function])Tj --35.4033 -1.8444 TD -(Unwinds )Tj -/TT14 1 Tf -4.8249 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.4733 Tw -[( to its top level and reevaluates its form. This is effectively a)]TJ -/TT10 1 Tf --7.2253 -1.2889 TD -0 Tw -(DEL.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -( followed by the original )Tj -/TT10 1 Tf -11.1294 0 TD -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -25 0 obj -<< -/Length 6428 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MAP.PROCESSES)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MAPFN)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 212.2552 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2256 Tw -(Maps over all processes, calling )Tj -/TT14 1 Tf -15.3358 0 TD -0 Tw -(MAPFN)Tj -/TT8 1 Tf -3.0005 0 TD -0.2256 Tw -[( with three arguments: the process handle, its)]TJ --18.3363 -1.2889 TD -0 Tw -(name, and its form.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FIND.PROCESS)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ERRORFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 252.3123 517.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 517.66 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.941 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( is a process handle or the name of a process, returns the process handle for it, else)]TJ -/TT10 1 Tf --3.3414 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1911 Tw -[(. If )]TJ -/TT14 1 Tf -2.2433 0 TD -0 Tw -(ERRORFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.1911 Tw -[( is )]TJ -/TT10 1 Tf -1.5971 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1911 Tw -(, generates an error if )Tj -/TT14 1 Tf -10.5918 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.1911 Tw -[( is not, and does not name, a live)]TJ --24.0337 -1.2889 TD -0 Tw -(process.)Tj -/TT4 1 Tf -10 0 0 10 54 435.52 Tm -(Process Control Constructs)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 432.81 m -510.01 432.81 l -S -BT -/TT10 1 Tf -9 0 0 9 102 414.52 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(BLOCK)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MSECSWAIT)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMER)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 225.314 414.52 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 414.52 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0222 Tw -[(Yields control to the next waiting process, assuming any is ready to run. If )]TJ -/TT14 1 Tf -33.6102 0 TD -0 Tw -(MSECSWAIT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0222 Tw -[( is)]TJ --39.0111 -1.2889 TD -0.2033 Tw -(specified, it is a number of milliseconds to wait before returning, or )Tj -/TT10 1 Tf -32.4136 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2033 Tw -(, meaning wait)Tj --33.0137 -1.2889 TD -0.03 Tw -[(forever \(until explicitly woken\). Alternatively, )]TJ -/TT14 1 Tf -21.074 0 TD -0 Tw -(TIMER)Tj -/TT8 1 Tf -3.0005 0 TD -0.03 Tw -[( can be given as a millisecond timer)]TJ --24.0745 -1.2889 TD -0.11 Tw -(\(as returned by )Tj -/TT10 1 Tf -7.3163 0 TD -0 Tw -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -0.11 Tw -[(, Chapter 12\) of an absolute time at which to wake up. In)]TJ --13.3173 -1.2889 TD -0.1 Tw -(any of those cases, the process enters the )Tj -/TT16 1 Tf -18.9665 0 TD -0 Tw -(waiting)Tj -/TT8 1 Tf -3.1108 0 TD -0.1 Tw -[( state until the time limit is up. )]TJ -/TT10 1 Tf -14.9156 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf --36.993 -1.2889 TD -0.0433 Tw -(with no arguments leaves the process in the )Tj -/TT16 1 Tf -19.9536 0 TD -0 Tw -(runnable)Tj -/TT8 1 Tf -3.6313 0 TD -0.0433 Tw -[( state, i.e., it returns as soon as every)]TJ --23.5849 -1.2222 TD -0 Tw -(other runnable process of the same priority has had a chance.)Tj -/TT10 1 Tf -0 -2 TD -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( can be aborted by interrupts such as Control-D, Control-E, or Control-B. )]TJ -/TT10 1 Tf -33.9983 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf --36.9988 -1.2889 TD -0.1356 Tw -(will return before its timeout is completed, if the process is woken by )Tj -/TT10 1 Tf -32.5493 0 TD -0 Tw -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -(,)Tj -/TT10 1 Tf --39.7505 -1.2889 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -(, or )Tj -/TT10 1 Tf -1.6909 0 TD -(PROCESS.APPLY)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --19.36 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(DISMISS)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MSECSWAIT)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMER)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NOBLOCK)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 270.7693 264.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 264.78 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(DISMISS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1556 Tw -[( is used to dismiss the current process for a given period of time. Similar to)]TJ -/TT10 1 Tf --4.2007 -1.2889 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -(, except that:)Tj -0.9995 -2.0667 TD -()Tj -/TT10 1 Tf -1.3333 0 TD -(DISMISS)Tj -/TT8 1 Tf -4.2007 0 TD -0.3522 Tw -[( is guaranteed not to return until the specified time has)]TJ --4.2007 -1.2889 TD -0 Tw -(elapsed )Tj --1.3333 -2 TD -()Tj -/TT14 1 Tf -1.3333 0 TD -(MSECSWAIT)Tj -/TT8 1 Tf -5.4009 0 TD -( cannot be )Tj -/TT10 1 Tf -4.7622 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( to wait forever)Tj --12.0965 -2.0667 TD -[()-727.4(If )]TJ -/TT14 1 Tf -2.2577 0 TD -(NOBLOCK)Tj -/TT8 1 Tf -4.2007 0 TD -0.0011 Tc -0.0033 Tw -( is )Tj -/TT10 1 Tf -1.2237 0 TD -0 Tc -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5044 0 TD -(DISMISS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0001 Tc -0.0043 Tw -( will not allow other processes to run, but will)Tj --11.654 -1.2889 TD -0 Tc -0 Tw -(busy-wait until the amount of time given has elapsed.)Tj -/TT10 1 Tf --8 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(STATUS)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 236.1096 135.84 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 135.84 Tm -([Function])Tj --35.4033 -1.8444 TD -0.17 Tw -(Explicitly wakes process )Tj -/TT14 1 Tf -11.5837 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.17 Tw -(, i.e., makes it )Tj -/TT16 1 Tf -6.909 0 TD -0 Tw -(runnable)Tj -/TT8 1 Tf -3.6313 0 TD -0.17 Tw -(, and causes its call to )Tj -/TT10 1 Tf -10.7754 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.17 Tw -[( \(or)]TJ --38.3003 -1.2889 TD -0.0911 Tw -(other waiting function\) to return )Tj -/TT14 1 Tf -15.1064 0 TD -0 Tw -(STATUS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0911 Tw -[(. This is one simple way to notify a process of)]TJ --18.707 -1.2889 TD -0.0544 Tw -(some happening; however, note that if )Tj -/TT10 1 Tf -17.604 0 TD -0 Tw -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -0.0544 Tw -[( is applied to a process more than)]TJ --24.8052 -1.2889 TD -0 Tw -(once before the process actually gets its turn to run, it sees only the latest )Tj -/TT14 1 Tf -32.3628 0 TD -(STATUS)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -28 0 obj -<< -/Length 5861 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SUSPEND.PROCESS)Tj -/TT8 1 Tf -8.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 265.6544 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.4189 Tw -(Blocks process )Tj -/TT14 1 Tf -7.5219 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.4189 Tw -[( indefinitely, i.e., )]TJ -/TT14 1 Tf -8.889 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.4189 Tw -[( will not run until it is woken by a)]TJ -/TT10 1 Tf --21.2116 -1.2889 TD -0 Tw -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --12.5345 -2.9556 TD -0.0478 Tw -[(The following three functions allow access to the stack context of some other process. They require a)]TJ -0 -1.2222 TD -0.1367 Tw -(little bit of care, and are computationally non-trivial, but they do provide a more powerful way of)Tj -T* -0 Tw -(manipulating another process than )Tj -/TT10 1 Tf -15.7192 0 TD -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -( allows.)Tj -/TT10 1 Tf --20.2537 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.EVALV)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 278.7079 468.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 468.46 Tm -([Function])Tj --35.4033 -1.8444 TD -(Performs )Tj -/TT10 1 Tf -4.3086 0 TD -(\(EVALV)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAR)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( in the stack context of )Tj -/TT14 1 Tf -10.1084 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --25.735 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WAITFORRESULT)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 345.7693 428.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 428.92 Tm -([Function])Tj --35.4033 -1.8444 TD -(Evaluates )Tj -/TT14 1 Tf -4.5999 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( in the stack context of )]TJ -/TT14 1 Tf -10.4151 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[(. If )]TJ -/TT14 1 Tf -1.8233 0 TD -0 Tw -(WAITFORRESULT)Tj -/TT8 1 Tf -7.8013 0 TD -0.0511 Tw -[( is true, blocks until the)]TJ --29.4403 -1.2889 TD -0.1978 Tw -(evaluation returns a result, else allows the current process to run in parallel with the)Tj -0 -1.2222 TD -0.2433 Tw -[(evaluation. Any errors that occur will be in the context of )]TJ -/TT14 1 Tf -28.6666 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.2433 Tw -[(, so be careful. In)]TJ --31.067 -1.2889 TD -0 Tw -(particular, note that)Tj -/TT10 1 Tf -8 -1.9333 TD -(\(PROCESS.EVAL )Tj -/TT14 1 Tf -8.4014 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -( \(NLSETQ \(FOO\)\)\))Tj -/TT8 1 Tf --18.8018 -2.7333 TD -(and)Tj -/TT10 1 Tf -8 -1.9333 TD -(\(NLSETQ \(PROCESS.EVAL )Tj -/TT14 1 Tf -13.2021 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -( \(FOO\)\)\))Tj -/TT8 1 Tf --23.6025 -2.0667 TD -0.0078 Tw -(behave quite differently if )Tj -/TT10 1 Tf -11.7489 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0078 Tw -[( causes an error. And it is quite permissible to intentionally)]TJ --13.5492 -1.2889 TD -0 Tw -(cause an error in proc by performing)Tj -/TT10 1 Tf -8 -2 TD -(\(PROCESS.EVAL )Tj -/TT14 1 Tf -8.4014 0 TD -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(ERROR!\)\))Tj -/TT8 1 Tf --19.0518 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0255 0 TD -(WAITFORRESULT)Tj -/TT8 1 Tf -7.8013 0 TD -0.1056 Tw -[( is true and the computation in the other process aborts or the other)]TJ --8.8267 -1.2889 TD -0 Tw -(process is killed )Tj -/TT10 1 Tf -7.2964 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(:ABORTED)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj --23.0024 -2.0667 TD -(After )Tj -/TT14 1 Tf -2.6688 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( is evaluated in )]TJ -/TT14 1 Tf -7.373 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -(, the process )Tj -/TT14 1 Tf -6.023 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.1078 Tw -[( is woken up, even if it was running)]TJ -/TT10 1 Tf --23.266 -1.2889 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.2933 Tw -[( or )]TJ -/TT10 1 Tf -2.0276 0 TD -0 Tw -(AWAIT.EVENT)Tj -/TT8 1 Tf -6.6011 0 TD -0.2933 Tw -[(. This is necessary because an event of interest may have)]TJ --11.6291 -1.2889 TD -0 Tw -(occurred while the process was evaluating )Tj -/TT14 1 Tf -19.0444 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --24.1115 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.APPLY)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FN)Tj -/TT16 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ARGS)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WAITFORRESULT)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 364.2211 175.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 175.58 Tm -([Function])Tj --35.4033 -1.8444 TD -(Performs )Tj -/TT10 1 Tf -4.4541 0 TD -(\(APPLY)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.3956 0 TD -(FN)Tj -/TT18 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.3956 0 TD -(ARGS)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1456 Tw -[( in the stack context of )]TJ -/TT14 1 Tf -10.9817 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.1456 Tw -[(. Note the same warnings as)]TJ --26.4287 -1.2889 TD -0 Tw -(with )Tj -/TT10 1 Tf -2.2832 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 104.44 Tm -(Events)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 101.73 m -558.01 101.73 l -S -BT -/TT8 1 Tf -9 0 0 9 126 79.78 Tm -0.0444 Tw -(An "event" is a synchronizing primitive used to coordinate related processes, typically producers and)Tj -0 -1.2222 TD -0 Tw -(consumers. Consumer processes can "wait" on events, and producers "notify" events.)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -31 0 obj -<< -/Length 5706 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT10 1 Tf -9 0 0 9 102 569.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(CREATE.EVENT)Tj -/TT10 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT8 1 Tf -27.2695 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0367 Tw -(Returns an instance of the )Tj -/TT10 1 Tf -11.8865 0 TD -0 Tw -(EVENT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0367 Tw -[( datatype, to be used as the event argument to functions)]TJ --14.8869 -1.2889 TD -0 Tw -(listed below. )Tj -/TT14 1 Tf -6.125 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( is arbitrary, and is used for debugging or status information.)Tj -/TT10 1 Tf --11.1921 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(AWAIT.EVENT)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(EVENT)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMEOUT)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMERP)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT8 1 Tf -18.9681 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.2889 Tw -(Suspends the current process until )Tj -/TT14 1 Tf -16.9601 0 TD -0 Tw -(EVENT)Tj -/TT8 1 Tf -3.0005 0 TD -0.2889 Tw -[( is notified, or until a timeout occurs. If)]TJ -/TT14 1 Tf --19.9606 -1.2889 TD -0 Tw -(TIMEOUT)Tj -/TT8 1 Tf -4.2007 0 TD -0.3778 Tw -[( is )]TJ -/TT10 1 Tf -1.9704 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3778 Tw -[(, there is no timeout. Otherwise, timeout is either a number of)]TJ --7.9714 -1.2889 TD -0.1256 Tw -(milliseconds to wait, or, if )Tj -/TT14 1 Tf -12.3221 0 TD -0 Tw -(TIMERP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[( is )]TJ -/TT10 1 Tf -1.466 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1256 Tw -(, a millisecond timer set to expire at the desired)Tj --17.9888 -1.2889 TD -0 Tw -(time using )Tj -/TT10 1 Tf -4.9351 0 TD -(SETUPTIMER)Tj -/TT8 1 Tf -6.001 0 TD -( \(see Chapter 12\).)Tj -/TT10 1 Tf --13.6027 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(NOTIFY.EVENT)Tj -/TT10 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(EVENT)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ONCEONLY)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 255.4632 445.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 445.4 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0911 Tw -(If there are processes waiting for )Tj -/TT14 1 Tf -15.2215 0 TD -0 Tw -(EVENT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0911 Tw -[( to occur, causes those processes to be placed in)]TJ --18.222 -1.2889 TD -0.0267 Tw -(the running state, with )Tj -/TT14 1 Tf -10.4236 0 TD -0 Tw -(EVENT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0267 Tw -[( returned as the value from )]TJ -/TT10 1 Tf -12.4359 0 TD -0 Tw -(AWAIT.EVENT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0267 Tw -[(. If )]TJ -/TT14 1 Tf -1.7499 0 TD -0 Tw -(ONCEONLY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0267 Tw -[( is)]TJ --39.0117 -1.2889 TD -0.1733 Tw -(true, only runs the first process waiting for the event \(this should only be done if the)Tj -0 -1.2222 TD -0.0333 Tw -(programmer knows that there can only be one process capable of responding to the event)Tj -T* -0 Tw -(at once\).)Tj --5.3333 -2.8889 TD -0.0233 Tw -[(The meaning of an event is up to the programmer. In general, however, the notification of an event is)]TJ -0 -1.2222 TD -0.0533 Tw -(merely a hint that something of interest to the waiting process has happened; the process should still)Tj -T* -0.0111 Tw -[(verify that the conceptual event actually occurred. That is, )]TJ -/TT16 1 Tf -26.2625 0 TD -(the process should be written so that it operates)Tj --26.2625 -1.2222 TD -0.1811 Tw -(correctly even if woken up before the timeout and in the absence of the notified event.)Tj -/TT8 1 Tf -36.7006 0 TD -[( In particular, the)]TJ --36.7006 -1.2222 TD -0.1278 Tw -(completion of )Tj -/TT10 1 Tf -6.6232 0 TD -0 Tw -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -0.1278 Tw -[( and related operations in effect wakes up the process in which they)]TJ --13.8244 -1.2889 TD -0.0144 Tw -(were performed, since there is no secure way of knowing whether the event of interest occurred while)Tj -0 -1.2222 TD -0 Tw -(the process was busy performing the )Tj -/TT10 1 Tf -16.542 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --23.7432 -2.9556 TD -0.04 Tw -[(There is currently one class of system-defined events, used with the network code. Each Pup and NS)]TJ -0 -1.2222 TD -0.0911 Tw -(socket has associated with it an event that is notified when a packet arrives on the socket; the event)Tj -T* -0 Tw -(can be obtained by calling )Tj -/TT10 1 Tf -11.7607 0 TD -(PUPSOCKETEVENT)Tj -/TT8 1 Tf -8.4014 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NSOCKETEVENT)Tj -/TT8 1 Tf -7.2012 0 TD -(, respectively \(see Chapter 30\).)Tj -/TT4 1 Tf -10 0 0 10 54 199.46 Tm -(Monitors)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 196.75 m -510.01 196.75 l -S -BT -/TT8 1 Tf -9 0 0 9 78 174.8 Tm -0.1856 Tw -(It is often the case that cooperating processes perform operations on shared structures, and some)Tj -0 -1.2222 TD -0.0689 Tw -(mechanism is needed to prevent more than one process from altering the structure at the same time.)Tj -T* -0.1611 Tw -(Some languages have a construct called a monitor, a collection of functions that access a common)Tj -T* -0.0578 Tw -(structure with mutual exclusion provided and enforced by the compiler via the use of monitor locks.)Tj -T* -0.1056 Tw -(Medley has taken this implementation notion as the basis for a mutual exclusion capability suitable)Tj -T* -0 Tw -(for a dynamically-scoped environment.)Tj -0 -2.8889 TD -0.0644 Tw -(A monitorlock is an object created by you and associated with \(e.g., stored in\) some shared structure)Tj -0 -1.2222 TD -0.0244 Tw -[(that is to be protected from simultaneous access. To access the structure, a program waits for the lock)]TJ -T* -0.2389 Tw -[(to be free, then takes ownership of the lock, accesses the structure, then releases the lock. The)]TJ -T* -0 Tw -(functions and macros below are used:)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -34 0 obj -<< -/Length 8065 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(CREATE.MONITORLOCK)Tj -/TT8 1 Tf -10.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 287.2552 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1378 Tw -(Returns an instance of the )Tj -/TT10 1 Tf -12.392 0 TD -0 Tw -(MONITORLOCK)Tj -/TT8 1 Tf -6.6011 0 TD -0.1378 Tw -[( datatype, to be used as the lock argument to)]TJ --18.9931 -1.2889 TD -0 Tw -(functions listed below. )Tj -/TT14 1 Tf -10.5059 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( is arbitrary, and is used for debugging or status information.)Tj -/TT10 1 Tf --15.5729 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(WITH.MONITOR)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(LOCK)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3996 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT8 1 Tf -20.1689 0 TD -([Macro])Tj --36.5022 -2.1778 TD -(Evaluates )Tj -/TT14 1 Tf -4.6288 0 TD -(FORM)Tj -2.4001 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.33 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.33 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.08 Tw -[( while owning )]TJ -/TT14 1 Tf -6.8582 0 TD -0 Tw -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tw -(, and returns the value of )Tj -/TT14 1 Tf -11.8311 0 TD -0 Tw -(FORM)Tj -2.4015 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.08 Tw -[(. This)]TJ --37.18 -1.6222 TD -0.1078 Tw -(construct is implemented so that the lock is released even if the form is exited via error)Tj -0 -1.2222 TD -0 Tw -(\(currently implemented with )Tj -/TT10 1 Tf -13.0923 0 TD -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -(\).)Tj --17.8931 -2.0667 TD -0.0889 Tw -(Ownership of a lock is dynamically scoped: if the current process already owns the lock)Tj -0 -1.2222 TD -0.1044 Tw -(\(e.g., if the caller was itself inside a )Tj -/TT10 1 Tf -16.4444 0 TD -0 Tw -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.1044 Tw -[( for this lock\), )]TJ -/TT10 1 Tf -6.7347 0 TD -0 Tw -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.1044 Tw -[( does)]TJ --37.5815 -1.2889 TD -0 Tw -(not wait for the lock to be free before evaluating )Tj -/TT14 1 Tf -21.4722 0 TD -(FORM)Tj -2.3978 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(. )Tj -/TT10 1 Tf --32.4367 -2.8822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(WITH.FAST.MONITOR)Tj -/TT8 1 Tf -10.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(LOCK)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3996 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 358.8017 406.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 502.52 406.06 Tm -([Macro])Tj --36.5022 -2.1778 TD -(Like )Tj -/TT10 1 Tf -2.4037 0 TD -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.2167 Tw -(, but implemented without the )Tj -/TT10 1 Tf -14.8661 0 TD -0 Tw -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -0.2167 Tw -[(. User interrupts \(e.g.,)]TJ --29.2717 -1.2889 TD -0 Tw -(Control-E\) are inhibited during the evaluation of )Tj -/TT14 1 Tf -21.7896 0 TD -(FORM)Tj -2.4004 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(. )Tj --30.09 -2.4 TD -0.1544 Tw -(Programming restriction: the evaluation of )Tj -/TT14 1 Tf -19.9114 0 TD -0 Tw -(FORM)Tj -2.4008 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.4044 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.4044 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1544 Tw -[( must not error \(the lock)]TJ --28.5211 -1.6222 TD -0.0578 Tw -[(would not be released\). This construct is mainly useful when the forms perform a small,)]TJ -0 -1.2222 TD -0 Tw -(safe computation that never errors and need never be interrupted.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(MONITOR.AWAIT.EVENT)Tj -/TT8 1 Tf -11.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RELEASELOCK)Tj -/TT16 1 Tf -6.6011 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(EVENT)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMEOUT)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TIMERP)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 429.0263 305.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 305.32 Tm -([Function])Tj --35.4033 -1.8444 TD -0.3722 Tw -[(For use in blocking inside a monitor. Performs )]TJ -/TT10 1 Tf -24.3505 0 TD -0 Tw -(\(AWAIT.EVENT)Tj -/TT18 1 Tf -7.2012 0 TD -( )Tj -/TT14 1 Tf -0.6222 0 TD -(EVENT)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.6222 0 TD -(TIMEOUT)Tj --35.7966 -1.2889 TD -(TIMERP)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1233 Tw -(, but releases )Tj -/TT14 1 Tf -6.3231 0 TD -0 Tw -(RELEASELOCK)Tj -/TT8 1 Tf -6.6011 0 TD -0.1233 Tw -[( first, and reobtains the lock \(possibly waiting\) on)]TJ --17.1249 -1.2889 TD -0 Tw -(wakeup.)Tj -0 -2 TD -0.1156 Tw -(Typical use for )Tj -/TT10 1 Tf -7.1723 0 TD -0 Tw -(MONITOR.AWAIT.EVENT)Tj -/TT8 1 Tf -11.4019 0 TD -0.1156 Tw -[(: A function wants to perform some operation)]TJ --18.5742 -1.2889 TD -0 Tw -(on )Tj -/TT14 1 Tf -1.3935 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0156 Tw -[(, but only if it is in a certain state. It has to obtain the lock on the structure to make)]TJ --3.1938 -1.2889 TD -0.0544 Tw -(sure that the state of the structure does not change between the time it tests the state and)Tj -0 -1.2222 TD -0.1856 Tw -[(performs the operation. If the state turns out to be bad, it then waits for some other)]TJ -T* -0.02 Tw -(process to make the state good, meanwhile releasing the lock so that the other process can)Tj -T* -0 Tw -(alter the structure.)Tj -/TT10 1 Tf -8.6667 -1.7778 TD -(\(WITH.MONITOR)Tj -/TT18 1 Tf -7.8013 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FOO-LOCK)Tj -/TT18 1 Tf --8.0513 -1.0667 TD -( )Tj -/TT10 1 Tf -0.75 0 TD -(\(until)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CONDITION-OF-FOO)Tj -/TT18 1 Tf --4.6006 -1.0667 TD -( )Tj -/TT10 1 Tf -1 0 TD -(do \(MONITOR.AWAIT.EVENT)Tj -/TT18 1 Tf -13.8022 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FOO-LOCK)Tj -/TT18 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(EVENT-FOO-)Tj --20.103 -1 TD -(CHANGED)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(TIMEOUT)Tj -/TT10 1 Tf -4.2007 0 TD -(\)\))Tj -/TT18 1 Tf --9.0015 -1.0667 TD -( )Tj -/TT14 1 Tf -1.75 0 TD -(OPERATE-ON-FOO)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT8 1 Tf --18.818 -1.8444 TD -0.0578 Tw -(It is sometimes convenient for a process to have )Tj -/TT10 1 Tf -21.8428 0 TD -0 Tw -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.0578 Tw -[( at its top level and then)]TJ --29.0439 -1.2889 TD -0.2689 Tw -(do all its interesting waiting using )Tj -/TT10 1 Tf -16.961 0 TD -0 Tw -(MONITOR.AWAIT.EVENT)Tj -/TT8 1 Tf -11.4019 0 TD -0.2689 Tw -[(. Not only is this often)]TJ --28.3628 -1.2889 TD -0.0556 Tw -(cleaner, but in the present implementation in cases where the lock is frequently accessed,)Tj -0 -1.2222 TD -0 Tw -(it saves the )Tj -/TT10 1 Tf -5.146 0 TD -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -( overhead of )Tj -/TT10 1 Tf -5.7856 0 TD -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj --22.9336 -2.0667 TD -0.3489 Tw -[(Programming restriction: There must not be an )]TJ -/TT10 1 Tf -24.0831 0 TD -0 Tw -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -0.3489 Tw -[( between the enclosing)]TJ -/TT10 1 Tf --28.8839 -1.2889 TD -0 Tw -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.0567 Tw -[( and the call to )]TJ -/TT10 1 Tf -7.0114 0 TD -0 Tw -(MONITOR.AWAIT.EVENT)Tj -/TT8 1 Tf -11.4019 0 TD -0.0567 Tw -[( such that the )]TJ -/TT10 1 Tf -6.401 0 TD -0 Tw -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -0.0567 Tw -[( would)]TJ --36.8162 -1.2889 TD -0.2167 Tw -(catch an )Tj -/TT10 1 Tf -4.3113 0 TD -0 Tw -(ERROR!)Tj -/TT8 1 Tf -3.6006 0 TD -0.2167 Tw -[( and continue inside the monitor, for the lock would not have been)]TJ -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -37 0 obj -<< -/Length 5703 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2067 Tw -[(reobtained. \(The reason for this restriction is that, although )]TJ -/TT10 1 Tf -28.593 0 TD -0 Tw -(MONITOR.AWAIT.EVENT)Tj -/TT8 1 Tf --28.593 -1.2889 TD -0.0456 Tw -(wont itself error, you could have caused an error with an interrupt, or a )Tj -/TT10 1 Tf -32.7906 0 TD -0 Tw -(PROCESS.EVAL)Tj -/TT8 1 Tf --32.7906 -1.2889 TD -(in the context of the waiting process that produced an error.\))Tj --5.3333 -2.8889 TD -0.03 Tw -[(On rare occasions it may be useful to manipulate monitor locks directly. The following two functions)]TJ -0 -1.2222 TD -0 Tw -(are used in the implementation of )Tj -/TT10 1 Tf -15.1899 0 TD -(WITH.MONITOR)Tj -/TT8 1 Tf -7.2012 0 TD -(:)Tj -/TT10 1 Tf --19.7245 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(OBTAIN.MONITORLOCK)Tj -/TT8 1 Tf -10.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(LOCK)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DONTWAIT)Tj -/TT16 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(UNWINDSAVE)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 335.5702 486.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 486.4 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0344 Tw -(Takes possession of )Tj -/TT14 1 Tf -9.0443 0 TD -0 Tw -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -(, waiting if necessary until it is free, unless )Tj -/TT14 1 Tf -19.2612 0 TD -0 Tw -(DONTWAIT)Tj -/TT8 1 Tf -4.8008 0 TD -0.0344 Tw -[( is true, in)]TJ --35.5066 -1.2889 TD -0.0133 Tw -(which case it returns )Tj -/TT10 1 Tf -9.4542 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0133 Tw -[( immediately. If )]TJ -/TT14 1 Tf -7.5631 0 TD -0 Tw -(UNWINDSAVE)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( is true, performs a )]TJ -/TT10 1 Tf -8.6404 0 TD -0 Tw -(RESETSAVE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0133 Tw -[( to)]TJ --38.8599 -1.2889 TD -0.0178 Tw -(be unwound when the enclosing )Tj -/TT10 1 Tf -14.791 0 TD -0 Tw -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -0.0178 Tw -[( exits. Returns )]TJ -/TT14 1 Tf -6.8343 0 TD -0 Tw -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( if )]TJ -/TT14 1 Tf -1.1596 0 TD -0 Tw -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( was successfully)]TJ --32.3865 -1.2889 TD -0 Tw -(obtained, )Tj -/TT10 1 Tf -4.3882 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( if the current process already owned )Tj -/TT14 1 Tf -16.6816 0 TD -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --26.737 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(RELEASE.MONITORLOCK)Tj -/TT8 1 Tf -11.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(LOCK)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(EVENIFNOTMINE)Tj -/TT10 1 Tf -7.8013 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 317.1167 412.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 412.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Releases )Tj -/TT14 1 Tf -4.0081 0 TD -(LOCK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[( if it is owned by the current process, and wakes up the next process, if any,)]TJ --6.4085 -1.2889 TD -0 Tw -(waiting to obtain the lock.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9721 0 TD -(EVENIFNOTMINE)Tj -/TT8 1 Tf -7.8013 0 TD -0.0522 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3623 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0522 Tw -(, the lock is released even if it is not owned by the current)Tj --13.936 -1.2889 TD -0 Tw -(process.)Tj --5.3333 -2.8889 TD -(When a process is deleted, any locks it owns are released.)Tj -/TT4 1 Tf -10 0 0 10 54 285.92 Tm -(Global Resources)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 283.21 m -510.01 283.21 l -S -BT -/TT8 1 Tf -9 0 0 9 78 261.26 Tm -0.0367 Tw -(The biggest source of problems in the multi-processing environment is the matter of global resources.)Tj -0 -1.2222 TD -0.02 Tw -(Two processes cannot both use the same global resource if there can be a process switch in the middle)Tj -T* -0.0878 Tw -(of their use \(currently this means calls to )Tj -/TT10 1 Tf -18.877 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0878 Tw -(, but ultimately with a preemptive scheduler means)Tj --21.8775 -1.2889 TD -0.0189 Tw -[(anytime\). Thus, user code should be wary of its own use of global variables, if it ever makes sense for)]TJ -0 -1.2222 TD -0.0967 Tw -[(the code to be run in more than one process at a time. "State" variables private to a process should)]TJ -T* -0.1589 Tw -(generally be bound in that process; structures that are shared among processes \(or resources used)Tj -T* -0.1689 Tw -(privately but expensive to duplicate per process\) should be protected with monitor locks or some)Tj -T* -0 Tw -(other form of synchronization.)Tj -0 -2.8889 TD -0.0633 Tw -(Aside from user code, however, there are many )Tj -/TT16 1 Tf -21.7625 0 TD -0 Tw -(system)Tj -/TT8 1 Tf -2.7783 0 TD -0.0633 Tw -[( global variables and resources. Most of these)]TJ --24.5408 -1.2222 TD -0.0611 Tw -(arise historically from the single-process Interlisp-10 environment, and will eventually be changed in)Tj -T* -0.3389 Tw -[(Medley to behave appropriately in a multi-processing environment. Some have already been)]TJ -T* -0.0078 Tw -[(changed, and are described below. Two other resources not generally thought of as global variables)]TJ -T* -0 Tw -(the keyboard and the mouseare particularly idosyncratic, and are discussed in the next section.)Tj -ET -78 94.1 405.99 -6.44 re -f -BT -9 0 0 9 78 76.66 Tm -0.0944 Tw -[( are allocated per process in Medley: primary input and output \(the streams affected by )]TJ -/TT10 1 Tf -40.2887 0 TD -0 Tw -(INPUT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0944 Tw -[( and)]TJ -/TT10 1 Tf --43.2892 -1.2889 TD -0 Tw -(OUTPUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -(\), terminal input and output \(the streams designated by the name )Tj -/TT10 1 Tf -30.0607 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0844 Tw -(\), the primary read table)Tj --34.2614 -1.2889 TD -0.0244 Tw -[(and primary terminal table, and dribble files. Thus, each process can print to its own primary output,)]TJ -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -40 0 obj -<< -/Length 5874 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2778 Tw -(print to the terminal, read from a different primary input, all without interfering with another)Tj -0 -1.2222 TD -0 Tw -(processs reading and printing.)Tj -0 -2.8889 TD -0.0578 Tw -(Each process begins life with its primary and terminal input/output streams set to a dummy stream.)Tj -0 -1.2222 TD -0.0167 Tw -(If the process attempts input or output using any of those dummy streams, e.g., by calling )Tj -/TT10 1 Tf -40.2471 0 TD -0.0389 Tw -(\(READ T\))Tj -/TT8 1 Tf -4.8397 0 TD -0 Tw -(,)Tj --45.0868 -1.2889 TD -(or )Tj -/TT10 1 Tf -1.2687 0 TD -0.1878 Tw -(\(PRINT & T\))Tj -/TT8 1 Tf -6.9766 0 TD -0.0778 Tw -(, a tty window is automatically created for the process, and that window becomes)Tj --8.2453 -1.2889 TD -0.1922 Tw -[(the primary input/output and terminal input/output for the process. The default tty window is)]TJ -0 -1.2222 TD -0 Tw -(created at or near the region specified in the variable )Tj -/TT10 1 Tf -23.4805 0 TD -(DEFAULTTTYREGION)Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj --33.082 -2.9556 TD -0.1278 Tw -(A process can, of course, call )Tj -/TT10 1 Tf -13.6783 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.1278 Tw -[( explicitly to give itself a tty window of its own)]TJ --23.2799 -1.2889 TD -0.7789 Tw -[(choosing, in which case the automatic mechanism never comes into play. Calling)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.0678 Tw -[( when a process has no tty window not only sets the terminal streams, but also)]TJ --9.6016 -1.2889 TD -0.1644 Tw -(sets the primary input and output streams to be that window, assuming they were still set to the)Tj -0 -1.2222 TD -0 Tw -(dummy streams.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(HASTTYWINDOWP)Tj -/TT16 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROCESS)Tj -/TT10 1 Tf -4.2007 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 276.4579 393.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 393.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7459 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0189 Tw -[( if the process )]TJ -/TT14 1 Tf -6.3993 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0189 Tw -[( has a tty window; )]TJ -/TT10 1 Tf -8.5066 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -[( otherwise. If )]TJ -/TT14 1 Tf -6.3514 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0189 Tw -[( is )]TJ -/TT10 1 Tf -1.2526 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -(, it)Tj --38.8579 -1.2889 TD -0 Tw -(defaults to the current process.)Tj --5.3333 -2.8889 TD -0.07 Tw -(Other system resources that are typically changed by )Tj -/TT10 1 Tf -24.2368 0 TD -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.57 0 TD -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -0.07 Tw -(, or )Tj -/TT10 1 Tf -1.8309 0 TD -0 Tw -(RESETVARS)Tj -/TT8 1 Tf -5.4009 0 TD -0.07 Tw -[( are all)]TJ --42.2402 -1.2889 TD -0.2489 Tw -[(global entities. In the multiprocessing environment, these constructs are suspect, as there is no)]TJ -0 -1.2222 TD -0.1144 Tw -[(provision for "undoing" them when a process switch occurs. For example, in the current release of)]TJ -T* -0.1356 Tw -(Medley, it is not possible to set the print radix to 8 inside only one process, as the print radix is a)Tj -T* -0 Tw -(global entity. )Tj -0 -2.8889 TD -0.0156 Tw -(Note that )Tj -/TT10 1 Tf -4.4476 0 TD -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -0.0156 Tw -[( and similar expressions are perfectly valid in the process world, and even quite)]TJ --9.8485 -1.2889 TD -0.1244 Tw -[(useful, when they manipulate things strictly within one process. The process world is arranged so)]TJ -0 -1.2222 TD -0.0833 Tw -(that deleting a process also unwinds any )Tj -/TT10 1 Tf -18.8211 0 TD -0 Tw -(RESETxxx)Tj -/TT8 1 Tf -4.8008 0 TD -0.0833 Tw -[( expressions that were performed in the process)]TJ --23.6219 -1.2889 TD -0.2278 Tw -(and are still waiting to be unwound, exactly as if a Control-D had reset the process to the top.)Tj -0 -1.2222 TD -0.1456 Tw -(Additionally, there is an implicit )Tj -/TT10 1 Tf -15.3777 0 TD -0 Tw -(RESETLST)Tj -/TT8 1 Tf -4.8008 0 TD -0.1456 Tw -[( at the top of each process, so that )]TJ -/TT10 1 Tf -16.3969 0 TD -0 Tw -(RESETSAVE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1456 Tw -[( can be)]TJ --41.9763 -1.2889 TD -0.0478 Tw -[(used as a way of providing "cleanup" functions for when a process is deleted. For these, the value of)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RESETSTATE)Tj -/TT8 1 Tf -6.001 0 TD -0.0656 Tw -[( \(see Chapter 14\) is )]TJ -/TT10 1 Tf -8.9328 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -[( if the process finished normally, )]TJ -/TT10 1 Tf -15.1038 0 TD -0 Tw -(ERROR)Tj -/TT8 1 Tf -3.0005 0 TD -0.0656 Tw -[( if it was aborted by an)]TJ --34.8383 -1.2889 TD -0 Tw -(error, )Tj -/TT10 1 Tf -2.8366 0 TD -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -0.1267 Tw -[( if the process was explicitly deleted, and )]TJ -/TT10 1 Tf -19.4001 0 TD -0 Tw -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -0.1267 Tw -[( if the process is being restarted)]TJ --30.638 -1.2889 TD -0 Tw -(after a )Tj -/TT10 1 Tf -3.0332 0 TD -(HARDRESET)Tj -/TT8 1 Tf -5.4009 0 TD -( or a )Tj -/TT10 1 Tf -2.1909 0 TD -(RESTART.PROCESS)Tj -/TT8 1 Tf -9.0015 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 134.46 Tm -(Typein and the TTY Process)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 131.75 m -558.01 131.75 l -S -BT -/TT8 1 Tf -9 0 0 9 126 109.8 Tm -0.0456 Tw -(There is one global resource, the keyboard, that is particularly problematic to share among processes.)Tj -0 -1.2222 TD -0.0711 Tw -(Consider, for example, having two processes both performing )Tj -/TT10 1 Tf -28.1944 0 TD -0.1711 Tw -(\(READ T\))Tj -/TT8 1 Tf -4.9719 0 TD -0.0711 Tw -[(. Since the keyboard input)]TJ --33.1663 -1.2889 TD -0.03 Tw -(routines block while there is no input, both processes would spend most of their time blocking, and it)Tj -0 -1.2222 TD -0 Tw -(would simply be a matter of chance which process received each character of type-in.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -43 0 obj -<< -/Length 4586 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0656 Tw -(To resolve such dilemmas, the system designates a distinguished process, termed the )Tj -/TT16 1 Tf -38.6324 0 TD -(tty process)Tj -/TT8 1 Tf -4.3893 0 TD -(, that)Tj --43.0217 -1.2222 TD -0.0589 Tw -[(is assumed to be the process that is involved in terminal interaction. Any type-in from the keyboard)]TJ -T* -0.0533 Tw -[(goes to that process. If a process other than the tty process requests keyboard input, it blocks until it)]TJ -T* -0.1778 Tw -[(becomes the tty process. When the tty process is switched \(in any of the ways described further)]TJ -T* -0.1278 Tw -(below\), any typeahead that occurred before the switch is saved and associated with the current tty)Tj -T* -0.0278 Tw -[(process. Thus, it is always the case that keystrokes are sent to the process that is the tty process at the)]TJ -T* -0 Tw -(time of the keystrokes, regardless of when that process actually gets around to reading them.)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(BACKGROUNDFNS)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.2711 Tw -[(A list of functions to call "in the background". The system runs a process \(called)]TJ -0 -1.2222 TD -0.4978 Tw -("BACKGROUND"\) whose sole task is to call each of the functions on the list)Tj -T* -0.0122 Tw -[(BACKGROUNDFNS repeatedly. Each element is the name of a function of no arguments.)]TJ -T* -0.0022 Tw -(This is a good place to put cheap background tasks that only do something once in a while)Tj -T* -0.0222 Tw -[(and hence do not want to spend their own separate process on it. However, note that it is)]TJ -T* -0.1867 Tw -(considered good citizenship for a background function with a time-consuming task to)Tj -T* -0 Tw -(spawn a separate process to do it, so that the other background functions are not delayed.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(TTYBACKGROUNDFNS)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.8444 TD -0.0444 Tw -(This list is like BACKGROUNDFNS, but the functions are only called while in a tty input)Tj -0 -1.2222 TD -0.0889 Tw -[(wait. That is, they always run in the tty process, and only when the user is not actively)]TJ -T* -0.0644 Tw -[(typing. For example, the flashing caret is implemented by a function on this list. Again,)]TJ -T* -0.2044 Tw -(functions on this list should spend very little time \(much less than a second\), or else)Tj -T* -0 Tw -(spawn a separate process.)Tj --5.3333 -2.8889 TD -0.3211 Tw -(It is less immediately obvious how to handle keyboard interrupt characters, as their action is)Tj -0 -1.2222 TD -0.1811 Tw -[(asynchronous and not always tied to type-in. Interrupt handling is described in the Handling of)]TJ -T* -0 Tw -(Interrupts section below.)Tj -/TT4 1 Tf -10 0 0 10 78 217 Tm -(Switching the TTY Process)Tj -/TT8 1 Tf -9 0 0 9 78 193.34 Tm -(Any process can make itself be the tty process by calling )Tj -/TT10 1 Tf -25.0713 0 TD -(TTY.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --29.0057 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TTY.PROCESS)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 196.0544 170.4 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 170.4 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0189 Tw -[(Returns the handle of the current tty process. In addition, if )]TJ -/TT14 1 Tf -26.9479 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( is non-)]TJ -/TT10 1 Tf -3.2956 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -(, makes it be)Tj --34.4441 -1.2889 TD -0.0256 Tw -[(the tty process. The special case of )]TJ -/TT14 1 Tf -15.7919 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2756 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2756 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0256 Tw -[( is interpreted to mean the executive process;)]TJ --19.9435 -1.2889 TD -0 Tw -(this is sometimes useful when a process wants to explicitly give up being the tty process.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TTY.PROCESSP)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROC)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 201.4544 108.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 108.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.4756 Tw -(True if )Tj -/TT14 1 Tf -4.165 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.4756 Tw -[( is the tty process; )]TJ -/TT14 1 Tf -10.5008 0 TD -0 Tw -(PROC)Tj -/TT8 1 Tf -2.4004 0 TD -0.4756 Tw -[( defaults to the running process. Thus,)]TJ -/TT10 1 Tf --19.4666 -1.2889 TD -0 Tw -(\(TTY.PROCESSP\))Tj -/TT8 1 Tf -8.4014 0 TD -( is true if the caller is the tty process.)Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -48 0 obj -<< -/Length 6899 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MSECS)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEEDWINDOW)Tj -/TT10 1 Tf -6.001 0 TD -(\) )Tj -/TT8 1 Tf -20.7685 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.1033 Tw -(Efficiently waits until )Tj -/TT10 1 Tf -10.0654 0 TD -0 Tw -(\(TTY.PROCESSP\))Tj -/TT8 1 Tf -8.4014 0 TD -0.1033 Tw -[( is true. )]TJ -/TT10 1 Tf -4.1814 0 TD -0 Tw -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.2012 0 TD -0.1033 Tw -[( is called internally by)]TJ --29.8493 -1.2889 TD -0.0022 Tw -(the system functions that read from the terminal; user code thus need only call it in special)Tj -0 -1.2222 TD -0 Tw -(cases.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.1655 0 TD -(MSECS)Tj -/TT8 1 Tf -3.0005 0 TD -0.2456 Tw -[( is non-)]TJ -/TT10 1 Tf -3.7489 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2456 Tw -[(, it is the number of milliseconds to wait before timing out. If)]TJ -/TT10 1 Tf --9.7152 -1.2889 TD -0 Tw -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.2012 0 TD -0.1244 Tw -[( times out before )]TJ -/TT10 1 Tf -8.1609 0 TD -0 Tw -(\(TTY.PROCESSP\))Tj -/TT8 1 Tf -8.4014 0 TD -0.1244 Tw -[( is true, it returns )]TJ -/TT10 1 Tf -8.4616 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1244 Tw -(, otherwise it)Tj --34.0253 -1.2889 TD -0 Tw -(returns )Tj -/TT10 1 Tf -3.4541 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(MSECS)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.2012 0 TD -( will not time out.)Tj --19.4409 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.961 0 TD -(NEEDWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0411 Tw -[( is non-)]TJ -/TT10 1 Tf -3.34 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5411 0 TD -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.2012 0 TD -0.0411 Tw -[( opens a )]TJ -/TT10 1 Tf -4.0052 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[( window for the current process)]TJ --25.6501 -1.2889 TD -0 Tw -(if one isnt already open.)Tj -/TT10 1 Tf -0 -2 TD -(WAIT.FOR.TTY)Tj -/TT8 1 Tf -7.2012 0 TD -0.21 Tw -[( spawns a new mouse process if called under the mouse process \(see)]TJ -/TT10 1 Tf --7.2012 -1.2889 TD -0 Tw -(SPAWN.MOUSE)Tj -/TT8 1 Tf -6.6011 0 TD -(, in the Keeping the Mouse Alive section below\).)Tj --11.9344 -2.9556 TD -0.0789 Tw -(In some cases, such as in functions invoked as a result of mouse action or a users typed-in call, it is)Tj -0 -1.2222 TD -0.0533 Tw -(reasonable for the function to invoke )Tj -/TT10 1 Tf -16.8283 0 TD -0 Tw -(TTY.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0533 Tw -[( itself so that it can take subsequent user type in.)]TJ --23.4294 -1.2889 TD -0.1256 Tw -(In other cases, however, this is too undisciplined; it is desirable to let you designate which process)Tj -0 -1.2222 TD -0 Tw -(type-in should be directed to. This is most conveniently done by mouse action.)Tj -0 -2.8889 TD -0.0189 Tw -[(The system supports the model that "to type to a process, you click in its window." To cooperate with)]TJ -0 -1.2222 TD -0.2478 Tw -(this model, any process desiring keyboard input should put its process handle as the )Tj -/TT10 1 Tf -41.1271 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf --41.1271 -1.2889 TD -0.0511 Tw -[(property of its window\(s\). To handle the common case, the function )]TJ -/TT10 1 Tf -31.4364 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.0511 Tw -[( does this)]TJ --41.038 -1.2889 TD -0.2022 Tw -[(automatically when the ttydisplaystream is switched to a new window. A process can own any)]TJ -0 -1.2222 TD -0 Tw -(number of windows; clicking in any of those windows gives the process the tty.)Tj -0 -2.8889 TD -0.21 Tw -[(This mechanism suffices for most casual process writers. For example, if a process wants all its)]TJ -0 -1.2222 TD -0.0678 Tw -(input/output interaction to occur in a particular window that it has created, it should just make that)Tj -T* -0.0022 Tw -(window be its tty window by calling )Tj -/TT10 1 Tf -16.5073 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.0001 Tc -0.0021 Tw -(. Thereafter, it can )Tj -/TT10 1 Tf -8.4852 0 TD -0 Tc -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0006 Tc -0.0016 Tw -( or )Tj -/TT10 1 Tf -1.4454 0 TD -0 Tc -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0003 Tc -0.0019 Tw -( to/from)Tj --41.4403 -1.2889 TD -0 Tc -0 Tw -(the )Tj -/TT10 1 Tf -1.7217 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0844 Tw -[( stream; if the process is not the tty process at the time that it calls )]TJ -/TT10 1 Tf -30.5025 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -(, it will block until the)Tj --35.2246 -1.2889 TD -0 Tw -(user clicks in the window.)Tj -0 -2.8889 TD -0.4711 Tw -(For those needing tighter control over the tty, the default behavior can be overridden or)Tj -0 -1.2222 TD -0 Tw -(supplemented. The remainder of this section describes the mechanisms involved.)Tj -0 -2.8889 TD -0.0578 Tw -(There is a window property )Tj -/TT10 1 Tf -12.8988 0 TD -0 Tw -(WINDOWENTRYFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0578 Tw -[( that controls whether and how to switch the tty to the)]TJ --20.7 -1.2889 TD -0.27 Tw -[(process owning a window. The mouse handler, before invoking any normal )]TJ -/TT10 1 Tf -37.2791 0 TD -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -(,)Tj --45.0803 -1.2889 TD -0.0589 Tw -(specifically notices the case of a button going down in a window that belongs to a process \(i.e., has a)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.2911 Tw -[( window property\) that is not the tty process. In this case, it invokes the windows)]TJ -/TT10 1 Tf --4.2007 -1.2889 TD -0 Tw -(WINDOWENTRYFN)Tj -/TT8 1 Tf -7.8013 0 TD -( of one argument )Tj -/TT10 1 Tf -7.8101 0 TD -(\(WINDOW\))Tj -/TT8 1 Tf -4.8008 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(WINDOWENTRYFN)Tj -/TT8 1 Tf -7.8013 0 TD -( defaults to )Tj -/TT10 1 Tf -5.189 0 TD -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9.6016 0 TD -(:)Tj -/TT10 1 Tf --41.0872 -2.5489 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 287.257 95 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 95 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.1055 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1856 Tw -[( has a )]TJ -/TT10 1 Tf -3.3125 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1856 Tw -[( property, performs )]TJ -/TT10 1 Tf -9.5117 0 TD -0 Tw -(\(TTY.PROCESS)Tj -/TT18 1 Tf -7.2012 0 TD -( )Tj -/TT10 1 Tf -0.4356 0 TD -(\(WINDOWPROP)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT14 1 Tf -0.4356 0 TD -(WINDOW)Tj -/TT18 1 Tf --36.4044 -1.2889 TD -()Tj -/TT10 1 Tf -0.2778 0 TD -(PROCESS\)\))Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -[( and then invokes )]TJ -/TT14 1 Tf -8.2694 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(s )Tj -/TT10 1 Tf -0.9928 0 TD -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0411 Tw -[( function \(or )]TJ -/TT10 1 Tf -5.8543 0 TD -0 Tw -(RIGHTBUTTONFN)Tj -/TT8 1 Tf --32.1971 -1.2889 TD -(if the right button is down\).)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -51 0 obj -<< -/Length 6062 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0222 Tw -(There are some cases where clicking in a window does not always imply that the user wants to talk to)Tj -0 -1.2222 TD -0.1378 Tw -[(that window. For example, clicking in a text editor window with a shift key held down means to)]TJ -T* -0.0033 Tw -("shift-select" some piece of text into the input buffer of the )Tj -/TT16 1 Tf -25.9107 0 TD -0 Tw -(current)Tj -/TT8 1 Tf -3.02 0 TD -0.0002 Tc -0.0031 Tw -( tty process. The editor supports this)Tj --28.9307 -1.2222 TD -0 Tc -0.0144 Tw -(by supplying a )Tj -/TT10 1 Tf -6.9081 0 TD -0 Tw -(WINDOWENTRYFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0144 Tw -[( that performs )]TJ -/TT10 1 Tf -6.5834 0 TD -0 Tw -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9.6016 0 TD -0.0144 Tw -[( if no shift key is down, but goes)]TJ --30.8943 -1.2889 TD -0.1667 Tw -(into its shift-select mode, without changing the tty process, if a shift key is down. The shift-select)Tj -0 -1.2222 TD -0.0922 Tw -(mode performs a )Tj -/TT10 1 Tf -8.1009 0 TD -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -4.8008 0 TD -0.0922 Tw -[( of the selected text when the shift key is let up, the )]TJ -/TT10 1 Tf -23.9591 0 TD -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -4.8008 0 TD -0.0922 Tw -[( feeding)]TJ --41.6616 -1.2889 TD -0 Tw -(input to the current tty process.)Tj -0 -2.8889 TD -0.1778 Tw -(Sometimes a process wants to be notified when it becomes the tty process, or stops being the tty)Tj -0 -1.2222 TD -0.2344 Tw -[(process. To support this, there are two process properties, )]TJ -/TT10 1 Tf -28.3757 0 TD -0 Tw -(TTYEXITFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.2344 Tw -[( and )]TJ -/TT10 1 Tf -2.6618 0 TD -0 Tw -(TTYENTRYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.2344 Tw -[(. The)]TJ --42.4393 -1.2889 TD -0.0033 Tw -(actions taken by )Tj -/TT10 1 Tf -7.4255 0 TD -0 Tw -(TTY.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0033 Tw -( when it switches the tty to a new process are as follows: the former tty)Tj --14.0266 -1.2889 TD -0 Tw -(processs )Tj -/TT10 1 Tf -4.3442 0 TD -(TTYEXITFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.08 Tw -[( is called with two arguments )]TJ -/TT10 1 Tf -13.7979 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(OLDTTYPROCESS)Tj -/TT10 1 Tf -7.8013 0 TD -( )Tj -/TT14 1 Tf -0.7923 0 TD -(NEWTTYPROCESS)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -(; the new)Tj --41.138 -1.2889 TD -0.2833 Tw -(process is made the tty process; finally, the new tty processs )Tj -/TT10 1 Tf -30.124 0 TD -0 Tw -(TTYENTRYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.2833 Tw -[( is called with two)]TJ --36.125 -1.2889 TD -0 Tw -(arguments )Tj -/TT10 1 Tf -4.9992 0 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(NEWTTYPROCESS)Tj -/TT10 1 Tf -7.8013 0 TD -( )Tj -/TT14 1 Tf -0.6023 0 TD -(OLDTTYPROCESS)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0001 Tc -0.001 Tw -(. Normally the )Tj -/TT10 1 Tf -6.9346 0 TD -0 Tc -0 Tw -(TTYENTRYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0002 Tc -0.0009 Tw -( and )Tj -/TT10 1 Tf -2.1951 0 TD -0 Tc -0 Tw -(TTYEXITFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0002 Tc -0.0009 Tw -( need)Tj --42.9358 -1.2889 TD -0 Tc -0.0044 Tw -(only their first argument, but the other process involved in the switch is supplied for completeness. In)Tj -0 -1.2222 TD -0.0144 Tw -(the present system, most processes want to interpret the keyboard in the same way, so it is considered)Tj -T* -0.0878 Tw -(the responsibility of any process that changes the keyboard interpretation to restore it to the normal)Tj -T* -0 Tw -(state by its )Tj -/TT10 1 Tf -4.9556 0 TD -(TTYEXITFN)Tj -/TT8 1 Tf -5.4009 0 TD -(. )Tj --10.3564 -2.9556 TD -0.2067 Tw -(A window is "owned" by the last process that anyone gave as the windows )Tj -/TT10 1 Tf -36.5179 0 TD -0 Tw -(PROCESS)Tj -/TT8 1 Tf -4.2007 0 TD -0.2067 Tw -[( property.)]TJ --40.7185 -1.2889 TD -0.1556 Tw -(Ordinarily there is no conflict here, as processes tend to own disjoint sets of windows \(though, of)Tj -0 -1.2222 TD -0.0478 Tw -[(course, cooperating processes can certainly try to confuse each other\). The only likely problem arises)]TJ -T* -0.1089 Tw -(with that most global of windows, )Tj -/TT10 1 Tf -16.0874 0 TD -0 Tw -(PROMPTWINDOW)Tj -/TT8 1 Tf -7.2012 0 TD -0.1089 Tw -[(. Programs should not be tempted to read from)]TJ -/TT10 1 Tf --23.2886 -1.2889 TD -0 Tw -(PROMPTWINDOW)Tj -/TT8 1 Tf -7.2012 0 TD -0.0078 Tw -[(. This is not usually necessary anyway, as the first attempt to read from )]TJ -/TT10 1 Tf -32.0595 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0078 Tw -[( in a process)]TJ --39.8608 -1.2889 TD -0.0344 Tw -(that has not set its )Tj -/TT10 1 Tf -8.3866 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.0344 Tw -[( to its own window causes a tty window to be created for the)]TJ --17.9881 -1.2889 TD -0 Tw -(process \(see the Global Resources section above\). )Tj -/TT4 1 Tf -10 0 0 10 78 252 Tm -(Handling of Interrupts)Tj -/TT8 1 Tf -9 0 0 9 78 228.34 Tm -0.2211 Tw -(At the time that a keyboard interrupt character \(see Chapter 29\) is struck, any process could be)Tj -0 -1.2222 TD -0.0056 Tw -[(running, and some decision must be made as to which process to actually interrupt. To the extent that)]TJ -T* -0.0833 Tw -(keyboard interrupts are related to type-in, most interrupts are taken in the tty process; however, the)Tj -T* -0 Tw -(following are handled specially:)Tj -/TT12 1 Tf -9.2456 -2 TD -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -( \(initially Control-D\))Tj -/TT12 1 Tf --2.8372 -1.0667 TD -(ERROR)Tj -/TT8 1 Tf -3.0005 0 TD -0.4144 Tw -[( )414.4(\(initially )414.4(Control-E\))-1333(These interrupts are taken in the mouse)]TJ -10.2573 -1.2889 TD -0.1311 Tw -(process, if the mouse is not in its idle state;)Tj -0 -1.2222 TD -0.1578 Tw -(otherwise they are taken in the tty process.)Tj -T* -0.1767 Tw -(Thus, Control-E can be used to abort some)Tj -T* -0.17 Tw -(mouse-invoked window action, such as the)Tj -T* -0.2678 Tw -[(Shape command. As a consequence, note)]TJ -T* -0.4456 Tw -(that if the mouse invokes some lengthy)Tj -T* -0.5444 Tw -(computation that the user thinks of as)Tj -T* -0.1467 Tw -("background", Control-E still aborts it, even)Tj -T* -0.2978 Tw -(though that may not have been what the)Tj -T* -0.1578 Tw -[(user intended. Such lengthy computations,)]TJ -T* -0.4667 Tw -(for various reasons, should generally be)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -54 0 obj -<< -/Length 4189 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 330 569.54 Tm -0.2056 Tw -(performed by spawning a separate process)Tj -0 -1.2222 TD -[(to perform them.)-731.6(The )]TJ -/TT10 1 Tf -10.6627 0 TD -0 Tw -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -0.0722 Tw -[( interrupt in a)]TJ --13.6632 -1.2889 TD -0.9667 Tw -(process other than the executive is)Tj -0 -1.2222 TD -0.2033 Tw -(interpreted exactly as if an error unwound)Tj -T* -0.0256 Tw -(the process to its top level: if the process was)Tj -T* -0 Tw -(designated )Tj -/TT10 1 Tf -5.12 0 TD -(RESTARTABLE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0111 Tw -[( = )]TJ -/TT10 1 Tf -1.1282 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -(, it is restarted;)Tj --13.4494 -1.2889 TD -0 Tw -(otherwise it is killed.)Tj -/TT12 1 Tf --12.81 -2 TD -(HELP)Tj -/TT8 1 Tf -2.4004 0 TD -0.01 Tw -[( )10(\(initially )10(Control-G\))-1332.9(A menu of processes is presented to the user,)]TJ -10.4096 -1.2889 TD -0.5656 Tw -(who is asked to select which one the)Tj -0 -1.2222 TD -0.2189 Tw -[(interrupt should occur in. The current tty)]TJ -T* -0.1033 Tw -(process appears with a * next to its name at)Tj -T* -0.0133 Tw -[(the top of the menu. The menu also includes)]TJ -T* -0.1389 Tw -(an entry "[Spawn Mouse]", for the common)Tj -T* -0.1 Tw -(case of needing a mouse because the mouse)Tj -T* -0.8289 Tw -(process is currently tied up running)Tj -T* -0 Tw -(someones )Tj -/TT10 1 Tf -5.2446 0 TD -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.3544 Tw -(; selecting this)Tj --13.0459 -1.2889 TD -0.1189 Tw -(entry spawns a new mouse process, and no)Tj -0 -1.2222 TD -0 Tw -(break occurs.)Tj -/TT12 1 Tf --13.2578 -2 TD -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -[( \(initially Control-B\))-1333(Performs )-243.3(the )]TJ -/TT10 1 Tf -16.6898 0 TD -(HELP)Tj -/TT8 1 Tf -2.4004 0 TD -0.2433 Tw -[( interrupt in the mouse)]TJ --8.8329 -1.2889 TD -0.1311 Tw -(process, if the mouse is not in its idle state;)Tj -0 -1.2222 TD -0 Tw -(otherwise it is performed in the tty process.)Tj -/TT12 1 Tf --13.1189 -2 TD -(RUBOUT)Tj -/TT8 1 Tf -3.6006 0 TD -( \(initially )Tj -/TT10 1 Tf -4.2524 0 TD -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.76 Tw -[(\))-1332.3(This interrupt clears typeahead in )]TJ -/TT16 1 Tf -20.6635 0 TD -0 Tw -(all)Tj -/TT8 1 Tf --18.9982 -1.2889 TD -(processes.)Tj -/TT12 1 Tf --13.3333 -2 TD -(RAID)Tj -/TT10 1 Tf -2.4004 0 TD -(, )Tj -/TT12 1 Tf -1.2002 0 TD -(STACK)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(OVERFLOW)Tj --2.4012 -1.2889 TD -(STORAGE)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FULL)Tj -/TT8 1 Tf -3.7325 0 TD -0.2356 Tw -(These interrupts always occur in whatever)Tj -0 -1.2889 TD -0.0011 Tw -(process was running at the time the interrupt)Tj -0 -1.2222 TD -0.1489 Tw -[(struck. In the cases of )]TJ -/TT10 1 Tf -11.2458 0 TD -0.3556 Tw -(STACK OVERFLOW)Tj -/TT8 1 Tf --11.2458 -1.2889 TD -0 Tw -(and )Tj -/TT10 1 Tf -2.2129 0 TD -0.6467 Tw -(STORAGE FULL)Tj -/TT8 1 Tf -7.8478 0 TD -0.27 Tw -(, this means that the)Tj --10.0607 -1.2889 TD -0.4522 Tw -(interrupt is more likely to strike in the)Tj -0 -1.2222 TD -0.6211 Tw -(offending process \(especially if it is a)Tj -T* -0.4833 Tw -("runaway" process that is not blocking\).)Tj -T* -0.1756 Tw -(Note, however, that this process is still not)Tj -T* -0.2167 Tw -(necessarily the guilty party; it could be an)Tj -T* -0.0178 Tw -(innocent bystander that just happened to use)Tj -T* -0.5856 Tw -(up the last of a resource prodigiously)Tj -T* -0 Tw -(consumed by some other process. )Tj -/TT4 1 Tf -10 0 0 10 102 108.2 Tm -(Keeping the Mouse Alive)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 105.49 m -558.01 105.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 83.54 Tm -0.2478 Tw -(Since the window mouse handler runs in its own process, it is not available while a windows)Tj -/TT10 1 Tf -T* -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.2944 Tw -[( function \(or any of the other window functions invoked by mouse action\) is)]TJ --7.8013 -1.2889 TD -0.0533 Tw -[(running. This leads to two sorts of problems: \(1\) a long computation underneath a )]TJ -/TT10 1 Tf -37.5275 0 TD -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf --37.5275 -1.2889 TD -0.1978 Tw -(deprives the user of the mouse for other purposes, and \(2\) code that runs as a )Tj -/TT10 1 Tf -37.5233 0 TD -0 Tw -(BUTTONEVENTFN)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -57 0 obj -<< -/Length 3769 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0289 Tw -(cannot rely on other )Tj -/TT10 1 Tf -9.2728 0 TD -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0289 Tw -(s running, which means that there some pieces of code that run)Tj --17.0741 -1.2889 TD -0.1189 Tw -[(differently from normal when run under the mouse process. These problems are addressed by the)]TJ -0 -1.2222 TD -0 Tw -(following functions:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SPAWN.MOUSE)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -()Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 183.0026 524.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 524.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0278 Tw -(Spawns another mouse process, allowing the mouse to run even if it is currently "tied up")Tj -0 -1.2222 TD -0.0789 Tw -[(under the current mouse process. This function is intended mainly to be typed in at the)]TJ -T* -0 Tw -(Lisp executive when you notice the mouse is busy.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ALLOW.BUTTON.EVENTS)Tj -/TT10 1 Tf -11.3999 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 220.8017 463.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 463.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2622 Tw -(Performs a )Tj -/TT10 1 Tf -5.583 0 TD -0 Tw -(\(SPAWN.MOUSE\))Tj -/TT8 1 Tf -7.8013 0 TD -0.2622 Tw -[( only when called underneath the mouse process. This)]TJ --13.3843 -1.2889 TD -0.1878 Tw -(should be called \(once, on entry\) by any function that relies on )Tj -/TT10 1 Tf -30.0668 0 TD -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.1878 Tw -(s for)Tj --37.8681 -1.2889 TD -0.0867 Tw -(completion, if there is any possibility that the function will itself be invoked by a mouse)Tj -0 -1.2222 TD -0 Tw -(function.)Tj --5.3333 -2.8889 TD -0.0744 Tw -(It never hurts, at least logically, to call )Tj -/TT10 1 Tf -17.599 0 TD -0 Tw -(SPAWN.MOUSE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0744 Tw -[( or )]TJ -/TT10 1 Tf -1.5898 0 TD -0 Tw -(ALLOW.BUTTON.EVENTS)Tj -/TT8 1 Tf -11.4019 0 TD -0.0744 Tw -[( needlessly, as the)]TJ --37.1917 -1.2889 TD -0.1078 Tw -(mouse process arranges to quietly kill itself if it returns from the users )Tj -/TT10 1 Tf -32.8728 0 TD -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.1078 Tw -[( and finds)]TJ --40.6741 -1.2889 TD -0.0311 Tw -[(that another mouse process has sprung up in the meantime. \(There is, of course, some computational)]TJ -0 -1.2222 TD -0 Tw -(expense.\))Tj -/TT4 1 Tf -10 0 0 10 54 310.32 Tm -(Process Status Window)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 307.61 m -510.01 307.61 l -S -BT -/TT8 1 Tf -9 0 0 9 78 285.66 Tm -0.0667 Tw -(The background menu command )Tj -/TT10 1 Tf -15.2818 0 TD -0 Tw -(PSW)Tj -/TT8 1 Tf -1.8003 0 TD -0.0667 Tw -[( \(see Chapter 27\) and the function )]TJ -/TT10 1 Tf -15.6439 0 TD -0 Tw -(PROCESS.STATUS.WINDOW)Tj -/TT8 1 Tf --32.726 -1.2889 TD -0.2122 Tw -(\(below\) create a "Process Status Window", that allows you to examine and manipulate all of the)Tj -0 -1.2222 TD -0 Tw -(existing processes:)Tj -/TT6 1 Tf -10 0 0 10 126 110.51 Tm -( )Tj -ET -q -151.5 0 0 -138 170.49 248.51 cm -/Im1 Do -Q -BT -/TT8 1 Tf -9 0 0 9 78 84.85 Tm -0.0422 Tw -[(The window consists of two menus. The top menu lists all the processes at the moment. Commands)]TJ -T* -0.1267 Tw -(in the bottom menu operate on the process selected in the top menu \()Tj -/TT10 1 Tf -32.1838 0 TD -0 Tw -(EXEC)Tj -/TT8 1 Tf -2.4004 0 TD -0.1267 Tw -[( in the example above\).)]TJ --34.5842 -1.2889 TD -0 Tw -(The commands are:)Tj -/TT12 1 Tf -7.3667 -2 TD -(BT)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(BTV)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(BTV*)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT12 1 Tf -0.5 0 TD -(BTV!)Tj -/TT8 1 Tf -3.7325 0 TD -(Displays a backtrace of the selected process.)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R ->> -/XObject << -/Im1 59 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -61 0 obj -<< -/Length 4874 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 254.4 569.54 Tm -(WHO?)Tj -/TT8 1 Tf -3.7333 0 TD -0.1989 Tw -(Changes the selection to the tty process, i.e., the one)Tj -0 -1.2889 TD -0 Tw -(currently in control of the keyboard.)Tj -/TT12 1 Tf --4.12 -2 TD -(KBD)Tj -/TT19 1 Tf -9.9 0 0 9 267.1226 539.9399 Tm -<0040>Tj -/TT8 1 Tf -9 0 0 9 288 539.9399 Tm -0.0944 Tw -(Associates the keyboard with the selected process; i.e.,)Tj -0 -1.2889 TD -0 Tw -(makes the selected process be the tty process.)Tj -/TT12 1 Tf --3.7333 -2 TD -(INFO)Tj -/TT8 1 Tf -3.7333 0 TD -0.0344 Tw -(If the selected process has an )Tj -/TT10 1 Tf -13.1969 0 TD -0 Tw -(INFOHOOK)Tj -/TT8 1 Tf -4.8008 0 TD -0.0344 Tw -[( property, calls)]TJ --17.9977 -1.2889 TD -0.0844 Tw -[(it. The hook may be a function, which is then applied)]TJ -0 -1.2222 TD -0.05 Tw -(to two arguments, the process and the button \()Tj -/TT10 1 Tf -21.0255 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.05 Tw -[( or)]TJ -/TT10 1 Tf --23.4259 -1.2889 TD -0 Tw -(MIDDLE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2811 Tw -(\) used to invoke )Tj -/TT10 1 Tf -8.4653 0 TD -0 Tw -(INFO)Tj -/TT8 1 Tf -2.4004 0 TD -0.2811 Tw -(, or a form, which is)Tj --14.4662 -1.2889 TD -0 Tw -(simply )Tj -/TT10 1 Tf -3.4415 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1456 Tw -[(ed. The )]TJ -/TT10 1 Tf -4.4782 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.1456 Tw -[( or )]TJ -/TT10 1 Tf -1.732 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1456 Tw -[( happens in the)]TJ --17.4529 -1.2889 TD -0.0544 Tw -(context of the selected process, using )Tj -/TT10 1 Tf -16.8633 0 TD -0 Tw -(PROCESS.APPLY)Tj -/TT8 1 Tf --16.8633 -1.2889 TD -(or )Tj -/TT10 1 Tf -1.372 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -0.1811 Tw -[(. The )]TJ -/TT10 1 Tf -3.2172 0 TD -0 Tw -(INFOHOOK)Tj -/TT8 1 Tf -4.8008 0 TD -0.1811 Tw -[( process property)]TJ --16.5911 -1.2889 TD -0.1489 Tw -(can be set using )Tj -/TT10 1 Tf -7.8387 0 TD -0 Tw -(PROCESSPROP)Tj -/TT8 1 Tf -6.6011 0 TD -0.1489 Tw -[( \(see the Creating and)]TJ --14.4398 -1.2889 TD -0 Tw -(Destroying Processes section above\).)Tj -/TT12 1 Tf --4.3333 -2 TD -(BREAK)Tj -/TT8 1 Tf -4.3333 0 TD -0.0833 Tw -[(Enter a break under the selected process. This has the)]TJ -0 -1.2889 TD -0.4633 Tw -(side effect of waking the process with the value)Tj -0 -1.2222 TD -0 Tw -(returned from the break.)Tj -/TT12 1 Tf --3.7333 -2 TD -(KILL)Tj -/TT8 1 Tf -3.7333 0 TD -(Deletes the selected process.)Tj -/TT12 1 Tf --5.5333 -2.0667 TD -(RESTART)Tj -/TT8 1 Tf -5.5333 0 TD -(Restarts the selected process.)Tj -/TT12 1 Tf --3.7333 -2.0667 TD -(WAKE)Tj -/TT8 1 Tf -3.7333 0 TD -0.2344 Tw -[(Wakes the selected process. Prompts for a value to)]TJ -0 -1.2889 TD -0 Tw -(wake it with \(see )Tj -/TT10 1 Tf -7.7344 0 TD -(WAKE.PROCESS)Tj -/TT8 1 Tf -7.2012 0 TD -(\).)Tj -/TT12 1 Tf --20.4689 -2.0667 TD -(SUSPEND)Tj -/TT8 1 Tf -5.5333 0 TD -0.2078 Tw -(Suspends the selected process; i.e., causes it to block)Tj -0 -1.2889 TD -0 Tw -(indefinitely \(until explicitly woken\).)Tj -/TT10 1 Tf --15.3333 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PROCESS.STATUS.WINDOW)Tj -/TT8 1 Tf -12.5999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WHERE)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 308.8561 258.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 258.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.3867 Tw -(Puts up a process status window that provides several debugging commands for)Tj -0 -1.2222 TD -1.3811 Tw -[(manipulating running processes. If the window is already up,)]TJ -/TT10 1 Tf -T* -0 Tw -(PROCESS.STATUS.WINDOW)Tj -/TT8 1 Tf -12.6021 0 TD -0.0733 Tw -[( refreshes it. If )]TJ -/TT14 1 Tf -7.1435 0 TD -0 Tw -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0733 Tw -[( is a position, the window is placed in)]TJ --22.7461 -1.2889 TD -0 Tw -(that position; otherwise, you are prompted for a position.)Tj -0 -2 TD -0.0355 Tw -(Currently, the process status window runs under the mouse process, like other menus, so)Tj -0 -1.2222 TD -0.4933 Tw -(if the mouse is unavailable \(e.g., a mouse function is performing an extensive)Tj -T* -0.3544 Tw -(computation\), you may be unable to use the process status window \(you can try)Tj -/TT10 1 Tf -T* -0 Tw -(SPAWN.MOUSE)Tj -/TT8 1 Tf -6.6011 0 TD -(, of course\).)Tj -/TT4 1 Tf -10 0 0 10 102 114.06 Tm -(Non-Process Compatibility)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 111.35 m -558.01 111.35 l -S -BT -/TT8 1 Tf -9 0 0 9 126 89.4 Tm -0.0667 Tw -(This section describes some considerations for authors of programs that ran in the old single-process)Tj -0 -1.2222 TD -0.0989 Tw -(Medley environment, and now want to make sure they run properly in the multi-processing world.)Tj -T* -0.1344 Tw -[(The biggest problem to watch out for is code that runs underneath the mouse handler. Writers of)]TJ -T* -0.12 Tw -(mouse handler functions should remember that in the process world the mouse handler runs in its)Tj -T* -0.13 Tw -(own process, and hence \(a\) you cannot depend on finding information on the stack \(stash it in the)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT19 63 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -65 0 obj -<< -/Length 3337 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(22-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(PROCESSES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0556 Tw -(window instead\), and \(b\) while your function is running, the mouse is not available \(if you have any)Tj -0 -1.2222 TD -0.0422 Tw -(non-trivial computation to do, spawn a process to do it, notify one of your existing processes to do it,)Tj -T* -0 Tw -(or use )Tj -/TT10 1 Tf -2.9468 0 TD -(PROCESS.EVAL)Tj -/TT8 1 Tf -7.2012 0 TD -( to run it under some other process\).)Tj --10.148 -2.9556 TD -0.2144 Tw -(The following functions are meaningful even if the process world is not on: )Tj -/TT10 1 Tf -36.239 0 TD -0 Tw -(BLOCK)Tj -/TT8 1 Tf -3.0005 0 TD -0.2144 Tw -[( \(invokes the)]TJ --39.2394 -1.2889 TD -0.1956 Tw -(system background routine, which includes handling the mouse\); )Tj -/TT10 1 Tf -30.832 0 TD -0 Tw -(TTY.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.6956 0 TD -(THIS.PROCESS)Tj -/TT8 1 Tf --38.1287 -1.2889 TD -0.2011 Tw -(\(both return )Tj -/TT10 1 Tf -6.0228 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2011 Tw -(\); and )Tj -/TT10 1 Tf -3.1781 0 TD -0 Tw -(TTY.PROCESSP)Tj -/TT8 1 Tf -7.2012 0 TD -0.2011 Tw -[( \(returns )]TJ -/TT10 1 Tf -4.4393 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2011 Tw -[(, i.e., anyone is allowed to take tty input\). In)]TJ --23.2418 -1.2889 TD -0 Tw -(addition, the following two functions exist in both worlds:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(EVAL.AS.PROCESS)Tj -/TT16 1 Tf -8.9999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 223.0553 463.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 463.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0067 Tw -(Same as )Tj -/TT10 1 Tf -3.8239 0 TD -0 Tw -(\(ADD.PROCESS)Tj -/TT18 1 Tf -7.2012 0 TD -( )Tj -/TT14 1 Tf -0.2567 0 TD -(FORM)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2567 0 TD -0.0167 Tw -(RESTARTABLE NO\))Tj -/TT8 1 Tf -10.2183 0 TD -0.0067 Tw -(, when processes are running, )Tj -/TT10 1 Tf -13.4411 0 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf --37.5982 -1.2889 TD -0.0489 Tw -[(when not. This is highly recommended for mouse functions that perform any non-trivial)]TJ -0 -1.2222 TD -0 Tw -(activity.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(EVAL.IN.TTY.PROCESS)Tj -/TT8 1 Tf -11.3999 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FORM)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WAITFORRESULT)Tj -/TT10 1 Tf -7.8013 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 317.1167 402.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 402.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1478 Tw -(Same as )Tj -/TT10 1 Tf -4.1061 0 TD -0.3556 Tw -(\(PROCESS.EVAL \(TTY.PROCESS\))Tj -/TT18 1 Tf -16.5582 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.3978 0 TD -(FORM)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.3978 0 TD -(WAITFORRESULT)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1478 Tw -(, when processes)Tj --32.2616 -1.2889 TD -0 Tw -(are running, )Tj -/TT10 1 Tf -5.7153 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -( when not.)Tj --13.4491 -2.9556 TD -0.1567 Tw -(Most of the process functions that do not take a process argument can be called even if processes)Tj -0 -1.2222 TD -0.0078 Tw -(arent running. )Tj -/TT10 1 Tf -7.1747 0 TD -0 Tw -(ADD.PROCESS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0078 Tw -[( creates, but does not run, a new process \(it runs when )]TJ -/TT10 1 Tf -24.3551 0 TD -0 Tw -(PROCESSWORLD)Tj -/TT8 1 Tf --38.1308 -1.2889 TD -(is called\).)Tj -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -59 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 202 -/Height 184 -/BitsPerComponent 1 -/ImageMask true -/Length 4785 ->> -stream -??????0?7?7?7oo{?7}﷿}7?7}w}?7}r}?7}?7}}?7}}}緻?7}}}o{?7?7?7?7?7o?}?7o7{?7߯nw?7߯mw/?7wWmw_?7wkwo?7Wgww?7o`ǎ a??????????۸<}݃w??7n~{ٿw??7n~{ٿo??~}տ_??z|Շ??yn~{Ϳw??n~{Ϳw??> -endobj -67 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -68 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -69 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -70 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -71 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBLCBG+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 77 0 R ->> -endobj -77 0 obj -<< -/Filter /FlateDecode -/Length 20020 -/Length1 39356 ->> -stream -HW}tovgvfwv9pA%S8-r}`flJJb)ՔҔRj)Bȇآ"-P)@z&@?ޙ߻fG3 ;wТ@3{8^nb(h -3 2*/|wr*e{Vԇ2"V˝놡0U'vmxn aq,B}uJ8rK&qU> ( Z@(ɸxTz <7BMėD*ƨ}|:@\wuۯ`ꈗz,^q`.Zxpr;8p?tB&~O~x{A+t_6p"kHM p&2XM snH6@= r6luD 6qs1R\LqTW`*?vh,7U$a8` r 6rKJCtg5GOmp70NGJ^gW}o@ 8j4ؿ-#ђ<ލY_ {)(,G Zm&*0^x꼋#,ùrGr\|ƣ8?Id+Qr;Ff(l\—d$kr&6g9*<t/ M -A"yN2^ a|#Eptl:= a%&hH" >wI"b _^6Yi 3Bfo>u'i/ ~_^LVimw"xLHR 6Vٸƥ6e6V۸6qm)ظƧm|Zd:l\omy7/:$OqCb/ 50O%PbHWLT!5 BHj΀orU%p7L7_捸H13ܘjj4de5nx|UJGAZSk)% f$4FFbRݲkIh*~+߯lTm8ڠ*ZP ~'FBP]EA]h4(q#iIvTT Ge4SH^H|R֘ =Ǚf!hDvL{*AƒX|9ND7ݶ,9Qdb i,_r %jq{/>RF fls=o~ΘG͔⇽)M~ԛFiJrD"4yǜ%e"K \";2W2mW7ʖH3I/F67pٕ2־a^B7I+!Wn\S#z"mRYw |)_ʘӺ:oNXu <5FOOjJ =:}_xjb1񌔔Z]BHlj0>wvo-lpW{G;Yb;=ޕqyuQOXj]B&k=aaXOgYU:NVoqu,<8\,Jҙ{K(0S榁gP@AS]zD,YsWAorm2cgX^Jv[mcxg6b齊O*\=ˣ5d"csZs:m8Cv]-= Pa`s[Cu8vU|-m${&`?ԗ lǟŹgBV8Np-vH§ֵ@CRr DB 5I*kU NG 0-d+hԡۚ ﹳMRDHHh<~ٜ3.\0YXJwX e^& LH}2*$u֑1b{wkY n%i0˰Z[-d4 ~RlB;~/1 sۃ^@F%HV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W w7gF4ƞ~J@ӟ^GPŸoՒ]?:S"WRdI < YR@@>_]C'x?Nlo&tD*~e5*x ^/߃߁myk+Cs4s_B%JjlМ| -lOP ȍ`xc'cQ0huA4sB#S5U=[\TQ%`aG}d~FKH6V{RDGOC9ZFGnL ȉZ[)ZXރ:n#.whXD{B#vF&&2[>Ms#4haע5,*)u%k. -G[4ֽS,S>{Z'%nK0<_[`ɣzbU^:a#B#UԢYR31޸&kfPShdGXy#V?[4uiX4MhdJEp8NSDp -Xd $0| cR! -ƀ/`8t4/"# &0  y {0 GF-(0 GϱN#gCϒ/bzs3xˤ~0H&Of䁠wwr]@g+ugȑ{T[{Soѣhu,貇/Ԃv-hj(U&Q;dPRe O'6[_~GCHM~t -+XNyJ^,qءېSv;k9i}+4ōܜL,Z^A,{I`NZ޾z.IzÚg98p<qĉ8$Ya8UKowCh'-8G/b֛s"8_?'ٲQڅMf$dR(iDS[s;t)GOVRw}ղQcuwz^!WdRAiSvjTQ&B+#]nw{wd4H`WY2<ڭH0X՞?_ -S,[-){2n^D"Lk8h˩WV&Qi7󽲂dšc,a,O̴ |E?ߠ(39<=:,/_/X0\Sc4mM]BH6(X|ryxM2?yMz5* -endstream -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 67 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 0 778 722 278 0 722 0 833 722 778 -667 0 722 667 611 0 0 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 68 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 69 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 278 371 0 0 0 0 0 333 333 389 0 250 333 250 606 -500 500 500 500 500 0 500 500 500 500 250 250 0 606 0 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 0 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 606 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 70 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 0 0 0 0 600 0 600 600 0 0 600 0 600 0 -0 0 0 0 0 0 0 0 0 0 600 0 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 600 0 0 0 0 600 0 0 600 0 600 600 -0 0 0 0 600 600 0 0 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 71 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 33 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 600 0 0 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 72 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 151 -/Widths [600 600 0 0 600 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 600 600 600 600 600 600 600 600 600 0 600 600 -600 600 600 600 0 600 600 600 600 600 600 0 600 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 73 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 722 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 74 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 75 0 R ->> -endobj -63 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBLCBG+Symbol -/Encoding /Identity-H -/DescendantFonts [ 78 0 R ] -/ToUnicode 79 0 R ->> -endobj -78 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBLCBG+Symbol -/FontDescriptor 76 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -79 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPn0 [dld `xI} v+)}$Nс$x᎔!A~7-FYl88Lܺ5Q.SıCU yI)/]W'[dGCOB9_"(k y~CC% k_lA4 TJU$ivYT-g^izj$[pZq`j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -80 0 obj -<< -/S /D ->> -endobj -81 0 obj -<< -/Nums [0 80 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R 39 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [42 0 R 47 0 R 50 0 R 53 0 R 56 0 R 60 0 R 64 0 R] -/Count 7 -/Parent 45 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [13 0 R 46 0 R ] -/Count 17 -/MediaBox [0 0 612 792] ->> -endobj -82 0 obj -<< -/CreationDate (D:20210202102706-06'00') -/ModDate (D:20210202102706-06'00') -/Producer (Apple pstopdf) ->> -endobj -83 0 obj -<< -/Type /Catalog -/Pages 45 0 R -/PageLabels 81 0 R ->> -endobj -xref -0 84 -0000000000 65535 f -0000129679 00000 n -0000000016 00000 n -0000005914 00000 n -0000125454 00000 n -0000125665 00000 n -0000126101 00000 n -0000126407 00000 n -0000126973 00000 n -0000127454 00000 n -0000127789 00000 n -0000128230 00000 n -0000103213 00000 n -0000131172 00000 n -0000129760 00000 n -0000006093 00000 n -0000011609 00000 n -0000128632 00000 n -0000129844 00000 n -0000011791 00000 n -0000016362 00000 n -0000129928 00000 n -0000016518 00000 n -0000023706 00000 n -0000130012 00000 n -0000023875 00000 n -0000030356 00000 n -0000130096 00000 n -0000030536 00000 n -0000036450 00000 n -0000130180 00000 n -0000036643 00000 n -0000042402 00000 n -0000130264 00000 n -0000042582 00000 n -0000050700 00000 n -0000130348 00000 n -0000050882 00000 n -0000056638 00000 n -0000130432 00000 n -0000056818 00000 n -0000062745 00000 n -0000130516 00000 n -0000062925 00000 n -0000067564 00000 n -0000131425 00000 n -0000131309 00000 n -0000130600 00000 n -0000067744 00000 n -0000074696 00000 n -0000130684 00000 n -0000074878 00000 n -0000080993 00000 n -0000130768 00000 n -0000081173 00000 n -0000085415 00000 n -0000130852 00000 n -0000085582 00000 n -0000089404 00000 n -0000098285 00000 n -0000130936 00000 n -0000089606 00000 n -0000094533 00000 n -0000129042 00000 n -0000131020 00000 n -0000094713 00000 n -0000098103 00000 n -0000103354 00000 n -0000103551 00000 n -0000103757 00000 n -0000103952 00000 n -0000104152 00000 n -0000104343 00000 n -0000104545 00000 n -0000104746 00000 n -0000104949 00000 n -0000105154 00000 n -0000105344 00000 n -0000129185 00000 n -0000129388 00000 n -0000131104 00000 n -0000131132 00000 n -0000131517 00000 n -0000131640 00000 n -trailer -<< -/Size 84 -/Root 83 0 R -/Info 82 0 R -/ID [] ->> -startxref -131710 -%%EOF diff --git a/docs/medley-irm/23-PROCESSES.pdf b/docs/medley-irm/23-PROCESSES.pdf deleted file mode 100644 index bfa11f89..00000000 --- a/docs/medley-irm/23-PROCESSES.pdf +++ /dev/null @@ -1,5570 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 3469 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-1)Tj -/TT4 1 Tf -18 0 0 18 54 543.97 Tm -[(23. )-54.1(PROCESSES)]TJ -ET -0 G -0 J 0 j 6 w 10 M []0 d -1 i -54.01 535.2 m -534.01 535.2 l -S -BT -/TT6 1 Tf -10 0 0 10 533.9999 532.2 Tm -( )Tj -/F1 1 Tf --40.8 -3.994 TD -(The Interlisp-D Process mechanism provides an environment in which multiple Lisp)Tj -0 -1.2 TD -(processes can run in parallel. Each executes in its own stack space, but all share a)Tj -T* -(global address space. The current process implementation is cooperative; i.e., process)Tj -T* -(switches happen voluntarily, either when the process in control has nothing to do or)Tj -T* -(when it is in a convenient place to pause. There is no preemption or guaranteed service,)Tj -T* -(so you cannot run something demanding \(e.g., Chat\) at the same time as something)Tj -T* -(that runs for long periods without yielding control. Keyboard input and network)Tj -T* -(operations block with great frequency, so processes currently work best for highly)Tj -T* -(interactive tasks \(editing, making remote files\).)Tj -0 -1.9 TD -(In Interlisp-D, the process mechanism is already turned on, and is expected to stay on)Tj -0 -1.2 TD -(during normal operations, as some system facilities \(in particular, most network)Tj -T* -(operations\) require it. However, under exceptional conditions, the following function)Tj -T* -(can be used to turn the world off and on:)Tj -/TT8 1 Tf -0 -2.2 TD -(\(PROCESSWORLD)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(FLG)Tj -/TT8 1 Tf -2.112 0 TD -(\) )Tj -/F1 1 Tf -25.796 0 TD -([Function])Tj --32.386 -1.823 TD -(Starts up the process world, or if )Tj -/F2 1 Tf -15.371 0 TD -(FLG)Tj -/F1 1 Tf -2.112 0 TD -( = )Tj -/TT8 1 Tf -1.162 0 TD -(OFF)Tj -/F1 1 Tf -1.8003 0 TD -(, kills all processes and turns it off.)Tj --20.4453 -1.323 TD -(Normally does not return. The environment starts out with two processes: a)Tj -0 -1.2 TD -(top-level )Tj -/TT8 1 Tf -4.241 0 TD -(EVALQT)Tj -/F1 1 Tf -3.6006 0 TD -( \(the initial "tty" process\) and the "background" process, which)Tj --7.8416 -1.323 TD -(runs the window mouse handler and other system background tasks.)Tj -/TT8 1 Tf -0 -1.9 TD -(PROCESSWORLD)Tj -/F1 1 Tf -7.2012 0 TD -( is intended to be called at the top level of Interlisp, not from)Tj --7.2012 -1.323 TD -(within a program. It does not toggle some sort of switch; rather, it constructs)Tj -0 -1.2 TD -(some new processes in a new part of the stack, leaving any callers of)Tj -/TT8 1 Tf -T* -(PROCESSWORLD)Tj -/F1 1 Tf -7.2012 0 TD -( in a now inaccessible part of the stack. Calling)Tj -/TT8 1 Tf --7.2012 -1.323 TD -(\(PROCESSWORLD OFF\))Tj -/F1 1 Tf -11.4019 0 TD -( is the only way the call to )Tj -/TT8 1 Tf -12.355 0 TD -(PROCESSWORLD)Tj -/F1 1 Tf -7.2012 0 TD -( ever)Tj --30.958 -1.323 TD -(returns.)Tj -/TT8 1 Tf --3.6 -2.206 TD --0.0001 Tc -(\(HARDRESET\) )Tj -/TT6 1 Tf -7.2002 0 TD -0 Tc -( )Tj -/F1 1 Tf -28.7858 0 TD -([Function])Tj --32.386 -1.823 TD -(Resets the whole world, and rebuilds the stack from scratch. This is "harder")Tj -0 -1.2 TD -(than doing )Tj -/TT8 1 Tf -5.26 0 TD -(RESET)Tj -/F1 1 Tf -3.0005 0 TD -( to every process, because it also resets system internal)Tj --8.2605 -1.323 TD -(processes \(such as the keyboard handler\).)Tj -/TT8 1 Tf -0 -1.9 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -( automatically turns the process world on \(or resets it if it was on\),)Tj --5.4009 -1.323 TD -(unless the variable )Tj -/TT8 1 Tf -9.076 0 TD -(AUTOPROCESSFLG)Tj -/F1 1 Tf -8.4014 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 4452 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-2)Tj -/TT4 1 Tf -14 0 0 14 102 565.08 Tm -(Creating and Destroying Processes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 561.49 m -582.01 561.49 l -S -BT -/TT8 1 Tf -10 0 0 10 174 543.2 Tm -(\(ADD.PROCESS)Tj -/F1 1 Tf -7.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(FORM PROP)Tj -6.261 -0.3 TD -(1)Tj -0.556 0.3 TD -( VALUE)Tj -3.89 -0.3 TD -(1)Tj -0.556 0.3 TD -( ... PROP)Tj -4.243 -0.3 TD -(N)Tj -0.815 0.3 TD -( VALUE)Tj -3.89 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -1.4108 0 TD -([NoSpread Function])Tj --27.515 -2 TD -(Creates a new process evaluating )Tj -/F2 1 Tf -15.724 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -(, and returns its process handle. The)Tj --18.854 -1.2 TD -(processs stack environment is the top level, i.e., the new process does not have)Tj -T* -(access to the environment in which )Tj -/TT8 1 Tf -16.519 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( was called; all such)Tj --23.1201 -1.323 TD -(information must be passed as arguments in )Tj -/F2 1 Tf -20.892 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -(. The process runs until)Tj -/F2 1 Tf --24.022 -1.2 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( returns or the process is explicitly deleted. An untrapped error within)Tj --3.13 -1.2 TD -(the process also deletes the process \(unless its )Tj -/TT8 1 Tf -21.538 0 TD -(RESTARTABLE)Tj -/F1 1 Tf -6.6011 0 TD -( property is )Tj -/TT8 1 Tf -5.574 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(\), in)Tj --34.3132 -1.323 TD -(which case a message is printed to that effect.)Tj -0 -1.9 TD -(The remaining arguments are alternately property names and values. Any)Tj -0 -1.2 TD -(property/value pairs acceptable to )Tj -/TT8 1 Tf -15.946 0 TD -(PROCESSPROP)Tj -/F1 1 Tf -6.6011 0 TD -( may be given, but the)Tj --22.5471 -1.323 TD -(following two are directly relevant to )Tj -/TT8 1 Tf -17.298 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(:)Tj -/TT8 1 Tf --20.8991 -2.023 TD -(NAME)Tj -/F1 1 Tf -4.2 0 TD -(Value should be a litatom; if not given, the process name is)Tj -0 -1.323 TD -(taken from )Tj -/TT8 1 Tf -5.371 0 TD -(\(CAR)Tj -/F3 1 Tf -2.4004 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FORM)Tj -/TT8 1 Tf -3.13 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(. )Tj -/TT8 1 Tf -0.834 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( may pack the name)Tj --19.2236 -1.323 TD -(with a number to make it unique. This name is solely for the)Tj -0 -1.2 TD -(convenience of manipulating processes at Lisp typein; e.g., the)Tj -T* -(name can be given as the )Tj -/F2 1 Tf -11.91 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( argument to most process)Tj --14.818 -1.2 TD -(functions, and the name appears in menus of processes.)Tj -T* -(However, programs should normally only deal in process)Tj -T* -(handles, both for efficiency and to avoid the confusion that can)Tj -T* -(result if two processes have the same defining form.)Tj -/TT8 1 Tf --6 -1.9 TD -(SUSPEND)Tj -/F1 1 Tf -6 0 TD -(If the value is non-)Tj -/TT8 1 Tf -8.704 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, the new process is created but then)Tj --10.5043 -1.323 TD -(immediately suspended; i.e., the process does not actually run)Tj -0 -1.2 TD -(until woken by a )Tj -/TT8 1 Tf -7.984 0 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -( \(below\).)Tj -/TT8 1 Tf --25.9852 -2.329 TD -(\(PROCESSPROP)Tj -/F1 1 Tf -7.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC PROP NEWVALUE)Tj -/TT8 1 Tf -12.392 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -10.0448 0 TD -([NoSpread Function])Tj --27.515 -1.823 TD -(Used to get or set the values of certain properties of process )Tj -/F2 1 Tf -27.797 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(, in a manner)Tj --30.705 -1.2 TD -(analogous to )Tj -/TT8 1 Tf -6.094 0 TD -(WINDOWPROP)Tj -/F1 1 Tf -6.001 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(NEWVALUE)Tj -/F1 1 Tf -6.075 0 TD -( is supplied \(including if it is )Tj -/TT8 1 Tf -13.446 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(\),)Tj --35.2683 -1.323 TD -(property )Tj -/F2 1 Tf -4.24 0 TD -(PROP)Tj -/F1 1 Tf -2.853 0 TD -( is given that value. In all cases, returns the old value of the)Tj --7.093 -1.2 TD -(property. The following properties have special meaning for processes; all)Tj -T* -(others are uninterpreted:)Tj -/TT8 1 Tf -5.4 -1.9 TD -(NAME)Tj -/F1 1 Tf -4.2 0 TD -(Value is a litatom used for identifying the process to the)Tj -0 -1.323 TD -(user.)Tj -/TT8 1 Tf --4.2 -1.9 TD -(FORM)Tj -/F1 1 Tf -4.2 0 TD -(Value is the Lisp form used to start the process \(readonly\).)Tj -/TT8 1 Tf --8.4 -2.023 TD -(RESTARTABLE)Tj -/F1 1 Tf -8.4 0 TD -(Value is a flag indicating the disposition of the process)Tj -0 -1.323 TD -(following errors or hard resets:)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -17 0 obj -<< -/Length 3938 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-3)Tj -/TT8 1 Tf -10 0 0 10 258 568.26 Tm -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(NO)Tj -/F1 1 Tf -1.2002 0 TD -( \(the default\): If an untrapped error \(or Control-E)Tj --4.5005 -1.323 TD -(or Control-D\) causes its form to be exited, the process is)Tj -0 -1.2 TD -(deleted. The process is also deleted if a )Tj -/TT8 1 Tf -18.466 0 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -( \(or)Tj --23.8669 -1.323 TD -(Control-D from )Tj -/TT8 1 Tf -7.314 0 TD -(RAID)Tj -/F1 1 Tf -2.4004 0 TD -(\) occurs, causing the entire Process)Tj --9.7144 -1.323 TD -(world to be reinitialized.)Tj -/TT8 1 Tf -0 -1.9 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(YES)Tj -/F1 1 Tf -1.8003 0 TD -(: The process is automatically restarted on errors)Tj --3.9004 -1.323 TD -(or )Tj -/TT8 1 Tf -1.222 0 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -(. This is the normal setting for persistent)Tj --6.6229 -1.323 TD -("background" processes, such as the mouse process, that)Tj -0 -1.2 TD -(can safely restart themselves on errors.)Tj -/TT8 1 Tf -0 -1.9 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -(: The process is deleted as usual if an error)Tj --5.4009 -1.323 TD -(causes its form to be exited, but it )Tj -/F2 1 Tf -15.892 0 TD -(is)Tj -/F1 1 Tf -0.777 0 TD -( restarted on a)Tj -/TT8 1 Tf --16.669 -1.2 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -(. This setting is preferred for persistent)Tj --5.4009 -1.323 TD -(processes for which an error is an unusual condition, one)Tj -0 -1.2 TD -(that might repeat itself if the process were simply blindly)Tj -T* -(restarted.)Tj -/TT8 1 Tf --8.4 -1.9 TD -(RESTARTFORM)Tj -/F1 1 Tf -8.4 0 TD -(If the value is non)Tj -/F3 1 Tf -8.371 0 TD -(-)Tj -/TT8 1 Tf -0.333 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, it is the form used if the process is)Tj --10.5043 -1.323 TD -(restarted \(instead of the value of the )Tj -/TT8 1 Tf -17.131 0 TD -(FORM)Tj -/F1 1 Tf -2.4004 0 TD -( property\). Of)Tj --19.5314 -1.323 TD -(course, the process must also have a non-)Tj -/TT8 1 Tf -19.075 0 TD -(NIL)Tj --19.075 -1.323 TD -(RESTARTABLE)Tj -/F1 1 Tf -6.6011 0 TD -( prop for this to have any effect.)Tj -/TT8 1 Tf --14.4011 -2.023 TD -(BEFOREEXIT)Tj -/F1 1 Tf -7.8 0 TD -(If the value is the atom )Tj -/TT8 1 Tf -11.039 0 TD -(DONT)Tj -/F1 1 Tf -3.0005 0 TD -(, it will not be interrupted by)Tj --14.0395 -1.323 TD -(a )Tj -/TT8 1 Tf -0.834 0 TD -(LOGOUT)Tj -/F1 1 Tf -3.6006 0 TD -(. If )Tj -/TT8 1 Tf -1.852 0 TD -(LOGOUT)Tj -/F1 1 Tf -3.6006 0 TD -( is attempted before the process)Tj --9.8872 -1.323 TD -(finishes, a message will appear saying that Interlisp is)Tj -0 -1.2 TD -(waiting for the process to finish. If you want the )Tj -/TT8 1 Tf -22.761 0 TD -(LOGOUT)Tj -/F1 1 Tf -3.6006 0 TD -( to)Tj --26.3616 -1.323 TD -(proceed without waiting, you must use the process status)Tj -0 -1.2 TD -(window \(from the background menu\) to delete the process.)Tj -/TT8 1 Tf --7.2 -1.9 TD -(AFTEREXIT)Tj -/F1 1 Tf -7.2 0 TD -(Value indicates the disposition of the process following a)Tj -0 -1.323 TD -(resumption of Lisp after some exit \()Tj -/TT8 1 Tf -16.464 0 TD -(LOGOUT)Tj -/F1 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(SYSOUT)Tj -/F1 1 Tf -3.6006 0 TD -(,)Tj -/TT8 1 Tf --24.2212 -1.323 TD -(MAKESYS)Tj -/F1 1 Tf -4.2007 0 TD -(\). Possible values are:)Tj -/TT8 1 Tf --4.2007 -2.023 TD -(DELETE)Tj -/F1 1 Tf -3.6006 0 TD -(: Delete the process.)Tj -/TT8 1 Tf --3.6006 -2.023 TD -(SUSPEND)Tj -/F1 1 Tf -4.2007 0 TD -(: Suspend the process; i.e., do not let it run until)Tj --4.2007 -1.323 TD -(it is explicitly woken.)Tj -0 -1.9 TD -(An event: Cause the process to be suspended waiting for)Tj -0 -1.2 TD -(the event \(See the Events section below\).)Tj -/TT8 1 Tf --6.6 -1.9 TD -(INFOHOOK)Tj -/F1 1 Tf -6.6 0 TD -(Value is a function or form used to provide information)Tj -0 -1.323 TD -(about the process, in conjunction with the )Tj -/TT8 1 Tf -19.575 0 TD -(INFO)Tj -/F1 1 Tf -2.4004 0 TD -( command)Tj --21.9754 -1.323 TD -(in the process status window \(see the Process Status)Tj -0 -1.2 TD -(Window section below\).)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -20 0 obj -<< -/Length 4601 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-4)Tj -/TT8 1 Tf -10 0 0 10 252 568.26 Tm -(WINDOW)Tj -/F1 1 Tf -5.4 0 TD -(Value is a window associated with the process, the)Tj -0 -1.323 TD -(processs "main" window. Used to switch the tty process to)Tj -0 -1.2 TD -(this process when you click in this window \(see the)Tj -T* -(Switching the TTY Process section below\).)Tj -0 -1.9 TD -(Setting the )Tj -/TT8 1 Tf -5.427 0 TD -(WINDOW)Tj -/F1 1 Tf -3.6006 0 TD -( property does not set the primary I/O)Tj --9.0276 -1.323 TD -(stream \()Tj -/TT8 1 Tf -3.852 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(\) or the terminal I/O stream \()Tj -/TT8 1 Tf -13.501 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(\) to the window.)Tj --19.7534 -1.323 TD -(When a process is created, I/O operations to the )Tj -/TT8 1 Tf -22.316 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(T)Tj -/F1 1 Tf --25.6163 -1.323 TD -(stream will cause a new window to appear.)Tj -/TT8 1 Tf -0 -1.2 TD -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -( \(see Chapter 28\) should be used to set)Tj --9.6016 -1.323 TD -(the terminal i/o stream of a process to a specific window.)Tj -/TT8 1 Tf --7.8 -1.9 TD -(TTYENTRYFN)Tj -/F1 1 Tf -7.8 0 TD -(Value is a function that is applied to the process when the)Tj -0 -1.323 TD -(process is made the tty process \(see the Switching the TTY)Tj -0 -1.2 TD -(Process section below\).)Tj -/TT8 1 Tf --7.2 -1.9 TD -(TTYEXITFN)Tj -/F1 1 Tf -7.2 0 TD -(Value is a function that is applied to the process when the)Tj -0 -1.323 TD -(process ceases to be the tty process \(see the Switching the)Tj -0 -1.2 TD -(TTY Process section below\).)Tj -/TT8 1 Tf --13.2 -2.206 TD --0.0001 Tc -(\(THIS.PROCESS\))Tj -/TT6 1 Tf -8.4001 0 TD -0 Tc -( )Tj -/F1 1 Tf -27.5859 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the handle of the currently running process, or )Tj -/TT8 1 Tf -25.887 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( if the Process world)Tj --27.6873 -1.323 TD -(is turned off.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(DEL.PROCESS)Tj -/F1 1 Tf -7.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC )Tj -/TT8 1 Tf -4.186 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -23.1218 0 TD -([Function])Tj --32.386 -1.823 TD -(Deletes process )Tj -/F2 1 Tf -7.389 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(. )Tj -/F2 1 Tf -0.834 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( may be a process handle \(returned by)Tj -/TT8 1 Tf --14.039 -1.2 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(\), or its name. If )Tj -/F2 1 Tf -7.964 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is the currently running process,)Tj -/TT8 1 Tf --17.4731 -1.323 TD -(DEL.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( does not return!)Tj -/TT8 1 Tf --10.2011 -2.329 TD -(\(PROCESS.RETURN)Tj -/F1 1 Tf -9 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(VALUE)Tj -/TT8 1 Tf -3.612 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -21.8958 0 TD -([Function])Tj --32.386 -1.823 TD -(Terminates the currently running process, causing it to "return" )Tj -/F2 1 Tf -29.944 0 TD -(VALUE)Tj -/F1 1 Tf -3.612 0 TD -(. There)Tj --33.556 -1.2 TD -(is an implicit )Tj -/TT8 1 Tf -6.335 0 TD -(PROCESS.RETURN)Tj -/F1 1 Tf -8.4014 0 TD -( around the )Tj -/F2 1 Tf -5.63 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( argument given to)Tj -/TT8 1 Tf --23.4964 -1.323 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(, so that normally a process can finish by simply returning;)Tj -/TT8 1 Tf --6.6011 -1.323 TD -(PROCESS.RETURN)Tj -/F1 1 Tf -8.4014 0 TD -( is supplied for earlier termination.)Tj -/TT8 1 Tf --12.0014 -2.329 TD -(\(PROCESS.RESULT)Tj -/F1 1 Tf -9 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROCESS WAITFORRESULT)Tj -/TT8 1 Tf -14.447 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -11.0608 0 TD -([Function])Tj --32.386 -1.823 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( has terminated, returns the value, if any, that it returned. This is)Tj --5.982 -1.2 TD -(either the value of a )Tj -/TT8 1 Tf -9.557 0 TD -(PROCESS.RETURN)Tj -/F1 1 Tf -8.4014 0 TD -( or the value returned from the form)Tj --17.9584 -1.323 TD -(given to )Tj -/TT8 1 Tf -3.945 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(. If the process was aborted, the value is )Tj -/TT8 1 Tf -19.077 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(. If)Tj -/F2 1 Tf --31.4234 -1.323 TD -(WAITFORRESULT)Tj -/F1 1 Tf -9.205 0 TD -( is true, )Tj -/TT8 1 Tf -3.834 0 TD -(PROCESS.RESULT)Tj -/F1 1 Tf -8.4014 0 TD -( blocks until )Tj -/F2 1 Tf -5.946 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( finishes,)Tj --32.3504 -1.323 TD -(if necessary; otherwise, it returns )Tj -/TT8 1 Tf -15.778 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( immediately if )Tj -/F2 1 Tf -7.261 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( is still)Tj --29.8033 -1.323 TD -(running. )Tj -/F2 1 Tf -4.574 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( must be the actual process handle returned from)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -23 0 obj -<< -/Length 4611 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-5)Tj -/TT8 1 Tf -10 0 0 10 162 568.26 Tm -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(, not a process name, as the association between handle and name)Tj --6.6011 -1.323 TD -(disappears when the process finishes \(and the process handle itself is then)Tj -0 -1.2 TD -(garbage collected if no one else has a pointer to it\).)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(PROCESS.FINISHEDP)Tj -/F1 1 Tf -10.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROCESS)Tj -/TT8 1 Tf -4.964 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -18.7438 0 TD -([Function])Tj --32.386 -1.823 TD -(True if )Tj -/F2 1 Tf -3.426 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( has terminated. The value returned is an indication of how it)Tj --8.39 -1.2 TD -(finished: )Tj -/TT8 1 Tf -4.278 0 TD -(NORMAL)Tj -/F1 1 Tf -3.6006 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(ERROR)Tj -/F1 1 Tf -3.0005 0 TD -(.)Tj -/TT8 1 Tf --15.9791 -2.329 TD -(\(PROCESSP)Tj -/F1 1 Tf -5.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -26.1998 0 TD -([Function])Tj --32.386 -1.823 TD -(True if )Tj -/F2 1 Tf -3.426 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is the handle of an active process, i.e., one that has not yet)Tj --6.334 -1.2 TD -(finished.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(RELPROCESSP)Tj -/F1 1 Tf -7.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROCHANDLE)Tj -/TT8 1 Tf -7.427 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -20.4809 0 TD -([Function])Tj --32.386 -1.823 TD -(True if )Tj -/F2 1 Tf -3.426 0 TD -(PROCHANDLE)Tj -/F1 1 Tf -7.427 0 TD -( is the handle of a deleted process. This is analogous to)Tj -/TT8 1 Tf --10.853 -1.2 TD -(RELSTKP)Tj -/F1 1 Tf -4.2007 0 TD -(. It differs from )Tj -/TT8 1 Tf -7.592 0 TD -(PROCESS.FINISHEDP)Tj -/F1 1 Tf -10.2017 0 TD -( in that it never causes an error,)Tj --21.9943 -1.323 TD -(while )Tj -/TT8 1 Tf -2.797 0 TD -(PROCESS.FINISHEDP)Tj -/F1 1 Tf -10.2017 0 TD -( can cause an error if its )Tj -/F2 1 Tf -11.445 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( argument is not a)Tj --27.3517 -1.323 TD -(process at all.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(RESTART.PROCESS)Tj -/F1 1 Tf -9.6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -21.9998 0 TD -([Function])Tj --32.386 -1.823 TD -(Unwinds )Tj -/F2 1 Tf -4.445 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( to its top level and reevaluates its form. This is effectively a)Tj -/TT8 1 Tf --7.353 -1.2 TD -(DEL.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( followed by the original )Tj -/TT8 1 Tf -11.391 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(.)Tj -/TT8 1 Tf --28.1931 -2.329 TD -(\(MAP.PROCESSES)Tj -/F1 1 Tf -8.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(MAPFN)Tj -/TT8 1 Tf -3.797 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -22.9109 0 TD -([Function])Tj --32.386 -1.823 TD -(Maps over all processes, calling )Tj -/F2 1 Tf -14.816 0 TD -(MAPFN)Tj -/F1 1 Tf -3.797 0 TD -( with three arguments: the process)Tj --18.613 -1.2 TD -(handle, its name, and its form.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(FIND.PROCESS)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC ERRORFLG)Tj -/TT8 1 Tf -9.021 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -17.6868 0 TD -([Function])Tj --32.386 -1.823 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is a process handle or the name of a process, returns the process)Tj --3.926 -1.2 TD -(handle for it, else )Tj -/TT8 1 Tf -8.316 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(ERRORFLG)Tj -/F1 1 Tf -5.835 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, generates an error if )Tj -/F2 1 Tf -10.315 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is not,)Tj --32.9604 -1.323 TD -(and does not name, a live process.)Tj -/TT4 1 Tf -14 0 0 14 54 141.96 Tm -(Process Control Constructs)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 138.37 m -534.01 138.37 l -S -BT -/TT8 1 Tf -10 0 0 10 126 120.08 Tm -(\(BLOCK)Tj -/F1 1 Tf -3.6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(MSECSWAIT TIMER)Tj -/TT8 1 Tf -10.221 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -20.6868 0 TD -([Function])Tj --32.386 -1.823 TD -(Yields control to the next waiting process, assuming any is ready to run. If)Tj -/F2 1 Tf -0 -1.2 TD -(MSECSWAIT)Tj -/F1 1 Tf -6.444 0 TD -( is specified, it is a number of milliseconds to wait before)Tj --6.444 -1.2 TD -(returning, or )Tj -/TT8 1 Tf -6.24 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, meaning wait forever \(until explicitly woken\). Alternatively,)Tj -/F2 1 Tf --6.8401 -1.323 TD -(TIMER)Tj -/F1 1 Tf -3.499 0 TD -( can be given as a millisecond timer \(as returned by )Tj -/TT8 1 Tf -24.096 0 TD -(SETUPTIMER)Tj -/F1 1 Tf -6.001 0 TD -(,)Tj --33.596 -1.323 TD -(Chapter 12\) of an absolute time at which to wake up. In any of those cases, the)Tj -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -26 0 obj -<< -/Length 5191 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-6)Tj -/F1 1 Tf -10 0 0 10 210 568.26 Tm -(process enters the )Tj -/F2 1 Tf -8.629 0 TD -(waiting)Tj -/F1 1 Tf -3.518 0 TD -( state until the time limit is up. )Tj -/TT8 1 Tf -15.097 0 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -( with no)Tj --30.2445 -1.323 TD -(arguments leaves the process in the )Tj -/F2 1 Tf -16.853 0 TD -(runnable)Tj -/F1 1 Tf -4.184 0 TD -( state, i.e., it returns as soon as)Tj --21.037 -1.2 TD -(every other runnable process of the same priority has had a chance.)Tj -/TT8 1 Tf -0 -1.9 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -( can be aborted by interrupts such as Control-D, Control-E, or Control-B.)Tj -/TT8 1 Tf --3.0005 -1.323 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -( will return before its timeout is completed, if the process is woken by)Tj -/TT8 1 Tf --3.0005 -1.323 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -(, or )Tj -/TT8 1 Tf -1.778 0 TD -(PROCESS.APPLY)Tj -/F1 1 Tf -7.8013 0 TD -(.)Tj -/TT8 1 Tf --28.1376 -2.329 TD -(\(DISMISS)Tj -/F1 1 Tf -4.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(MSECSWAIT TIMER NOBLOCK)Tj -/TT8 1 Tf -15.722 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -14.5859 0 TD -([Function])Tj -/TT8 1 Tf --32.386 -1.823 TD -(DISMISS)Tj -/F1 1 Tf -4.2007 0 TD -( is used to dismiss the current process for a given period of time.)Tj --4.2007 -1.323 TD -(Similar to )Tj -/TT8 1 Tf -4.909 0 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -(, except that:)Tj --7.9095 -2.023 TD -()Tj -/TT8 1 Tf -1.2 0 TD -(DISMISS)Tj -/F1 1 Tf -4.2007 0 TD -( is guaranteed not to return until the specified time has elapsed )Tj --5.4007 -2.023 TD -()Tj -/F2 1 Tf -1.2 0 TD -(MSECSWAIT)Tj -/F1 1 Tf -6.444 0 TD -( cannot be )Tj -/TT8 1 Tf -5.001 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( to wait forever)Tj --13.2451 -2.023 TD -[()-594(If )]TJ -/F2 1 Tf -2.218 0 TD -(NOBLOCK)Tj -/F1 1 Tf -5.223 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(DISMISS)Tj -/F1 1 Tf -4.2007 0 TD -( will not allow other processes to run, but will)Tj --12.9318 -1.323 TD -(busy-wait until the amount of time given has elapsed.)Tj -/TT8 1 Tf --4.8 -2.206 TD -(\(WAKE.PROCESS)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC STATUS)Tj -/TT8 1 Tf -7.409 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -19.8989 0 TD -([Function])Tj --32.386 -1.823 TD -(Explicitly wakes process )Tj -/F2 1 Tf -11.575 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(, i.e., makes it )Tj -/F2 1 Tf -6.744 0 TD -(runnable)Tj -/F1 1 Tf -4.184 0 TD -(, and causes its call to)Tj -/TT8 1 Tf --25.411 -1.2 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -( \(or other waiting function\) to return )Tj -/F2 1 Tf -17.203 0 TD -(STATUS)Tj -/F1 1 Tf -4.223 0 TD -(. This is one simple way to)Tj --24.4265 -1.323 TD -(notify a process of some happening; however, note that if )Tj -/TT8 1 Tf -26.502 0 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -( is)Tj --33.7032 -1.323 TD -(applied to a process more than once before the process actually gets its turn to)Tj -0 -1.2 TD -(run, it sees only the latest )Tj -/F2 1 Tf -12.317 0 TD -(STATUS)Tj -/F1 1 Tf -4.223 0 TD -(.)Tj -/TT8 1 Tf --20.14 -2.206 TD -(\(SUSPEND.PROCESS)Tj -/F1 1 Tf -9.6 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -22.5999 0 TD -([Function])Tj --32.386 -1.823 TD -(Blocks process )Tj -/F2 1 Tf -6.981 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( indefinitely, i.e., )Tj -/F2 1 Tf -8.076 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( will not run until it is woken by a)Tj -/TT8 1 Tf --20.873 -1.2 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -(.)Tj --10.8012 -2.323 TD -(The following three functions allow access to the stack context of some other process.)Tj -0 -1.2 TD -(They require a little bit of care, and are computationally non-trivial, but they do provide)Tj -T* -(a more powerful way of manipulating another process than )Tj -/TT8 1 Tf -27.595 0 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -( allows.)Tj -/TT8 1 Tf --34.7962 -2.329 TD -(\(PROCESS.EVALV)Tj -/F1 1 Tf -8.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC VAR)Tj -/TT8 1 Tf -5.335 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -20.7728 0 TD -([Function])Tj --32.386 -1.823 TD -(Performs )Tj -/TT8 1 Tf -4.518 0 TD -(\(EVALV)Tj -/F3 1 Tf -3.6006 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(VAR)Tj -/TT8 1 Tf -2.149 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -( in the stack context of )Tj -/F2 1 Tf -10.742 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(.)Tj -/TT8 1 Tf --28.4047 -2.329 TD -(\(PROCESS.EVAL)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC FORM WAITFORRESULT)Tj -/TT8 1 Tf -15.799 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -11.5089 0 TD -([Function])Tj --32.386 -1.823 TD -(Evaluates )Tj -/F2 1 Tf -4.927 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( in the stack context of )Tj -/F2 1 Tf -10.742 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(WAITFORRESULT)Tj -/F1 1 Tf -9.205 0 TD -( is true,)Tj --32.764 -1.2 TD -(blocks until the evaluation returns a result, else allows the current process to)Tj -T* -(run in parallel with the evaluation. Any errors that occur will be in the context)Tj -T* -(of )Tj -/F2 1 Tf -1.111 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(, so be careful. In particular, note that)Tj -/TT8 1 Tf --0.419 -1.9 TD -(\(PROCESS.EVAL )Tj -/F2 1 Tf -8.4014 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -( \(NLSETQ \(FOO\)\)\))Tj -ET -endstream -endobj -27 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -29 0 obj -<< -/Length 4724 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-7)Tj -/F1 1 Tf -10 0 0 10 162 568.26 Tm -(and)Tj -/TT8 1 Tf -3.6 -1.9 TD -(\(NLSETQ \(PROCESS.EVAL )Tj -/F2 1 Tf -13.2021 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -( \(FOO\)\)\))Tj -/F1 1 Tf --19.7101 -1.823 TD -(behave quite differently if )Tj -/TT8 1 Tf -12.242 0 TD -(FOO)Tj -/F1 1 Tf -1.8003 0 TD -( causes an error. And it is quite permissible to)Tj --14.0423 -1.323 TD -(intentionally cause an error in proc by performing)Tj -/TT8 1 Tf -3.6 -1.9 TD -(\(PROCESS.EVAL )Tj -/F2 1 Tf -8.4014 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( )Tj -/TT8 1 Tf -0.278 0 TD -(\(ERROR!\)\))Tj -/F1 1 Tf --15.1874 -1.823 TD -(If errors are possible and )Tj -/F2 1 Tf -11.852 0 TD -(WAITFORRESULT)Tj -/F1 1 Tf -9.205 0 TD -( is true, the caller should almost)Tj --21.057 -1.2 TD -(certainly make sure that )Tj -/F2 1 Tf -11.724 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( traps the errors; otherwise the caller could end)Tj --14.854 -1.2 TD -(up waiting forever if )Tj -/F2 1 Tf -9.704 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( unwinds back into the pre-existing stack context of)Tj -/F2 1 Tf --12.834 -1.2 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(.)Tj --2.908 -1.9 TD -(After )Tj -/F2 1 Tf -2.666 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -( is evaluated in )Tj -/F2 1 Tf -7.354 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(, the process )Tj -/F2 1 Tf -6 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is woken up, even if it)Tj --24.966 -1.2 TD -(was running )Tj -/TT8 1 Tf -6.093 0 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(AWAIT.EVENT)Tj -/F1 1 Tf -6.6011 0 TD -(. This is necessary because an event of)Tj --17.1946 -1.323 TD -(interest may have occurred while the process was evaluating )Tj -/F2 1 Tf -28.391 0 TD -(FORM)Tj -/F1 1 Tf -3.13 0 TD -(.)Tj -/TT8 1 Tf --35.121 -2.206 TD -(\(PROCESS.APPLY)Tj -/F1 1 Tf -8.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC FN ARGS WAITFORRESULT)Tj -/TT8 1 Tf -17.319 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -9.3889 0 TD -([Function])Tj --32.386 -1.823 TD -(Performs )Tj -/TT8 1 Tf -4.518 0 TD -(\(APPLY)Tj -/F3 1 Tf -3.6006 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FN)Tj -/F3 1 Tf -1.482 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(ARGS)Tj -/TT8 1 Tf -2.89 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -( in the stack context of )Tj -/F2 1 Tf -10.742 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -(. Note the same)Tj --27.3147 -1.323 TD -(warnings as with )Tj -/TT8 1 Tf -8.261 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -(.)Tj -/TT4 1 Tf -14 0 0 14 54 300.41 Tm -(Events)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 296.82 m -534.01 296.82 l -S -BT -/F1 1 Tf -10 0 0 10 126 278.59 Tm -(An "event" is a synchronizing primitive used to coordinate related processes, typically)Tj -0 -1.2 TD -(producers and consumers. Consumer processes can "wait" on events, and producers)Tj -T* -("notify" events.)Tj -/TT8 1 Tf -0 -2.2 TD --0.0001 Tc -(\(CREATE.EVENT )Tj -/F2 1 Tf -8.4001 0 TD -0 Tc -(NAME)Tj -/TT8 1 Tf -3.185 0 TD -(\) )Tj -/F1 1 Tf -24.4009 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns an instance of the )Tj -/TT8 1 Tf -12.519 0 TD -(EVENT)Tj -/F1 1 Tf -3.0005 0 TD -( datatype, to be used as the event argument to)Tj --15.5195 -1.323 TD -(functions listed below. )Tj -/F2 1 Tf -10.872 0 TD -(NAME)Tj -/F1 1 Tf -3.185 0 TD -( is arbitrary, and is used for debugging or status)Tj --14.057 -1.2 TD -(information.)Tj -/TT8 1 Tf --3.6 -2.2 TD --0.0001 Tc -(\(AWAIT.EVENT )Tj -/F2 1 Tf -7.8001 0 TD -0 Tc -(EVENT TIMEOUT TIMERP)Tj -/TT8 1 Tf -13.406 0 TD -(\) )Tj -/F1 1 Tf -14.7799 0 TD -([Function])Tj --32.386 -1.823 TD -(Suspends the current process until )Tj -/F2 1 Tf -16.388 0 TD -(EVENT)Tj -/F1 1 Tf -3.648 0 TD -( is notified, or until a timeout occurs.)Tj --20.036 -1.2 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(TIMEOUT)Tj -/F1 1 Tf -5.036 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, there is no timeout. Otherwise, timeout is either a number)Tj --9.1883 -1.323 TD -(of milliseconds to wait, or, if )Tj -/F2 1 Tf -13.28 0 TD -(TIMERP)Tj -/F1 1 Tf -4.166 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, a millisecond timer set to expire at)Tj --19.3801 -1.323 TD -(the desired time using )Tj -/TT8 1 Tf -10.612 0 TD -(SETUPTIMER)Tj -/F1 1 Tf -6.001 0 TD -( \(see Chapter 12\).)Tj -/TT8 1 Tf --20.213 -2.329 TD --0.0001 Tc -(\(NOTIFY.EVENT )Tj -/F2 1 Tf -8.4001 0 TD -0 Tc -(EVENT ONCEONLY)Tj -/TT8 1 Tf -9.908 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -17.0778 0 TD -([Function])Tj --32.386 -1.823 TD -(If there are processes waiting for )Tj -/F2 1 Tf -15.481 0 TD -(EVENT)Tj -/F1 1 Tf -3.648 0 TD -( to occur, causes those processes to be)Tj --19.129 -1.2 TD -(placed in the running state, with )Tj -/F2 1 Tf -15.465 0 TD -(EVENT)Tj -/F1 1 Tf -3.648 0 TD -( returned as the value from)Tj -/TT8 1 Tf --19.113 -1.2 TD -(AWAIT.EVENT)Tj -/F1 1 Tf -6.6011 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(ONCEONLY)Tj -/F1 1 Tf -5.982 0 TD -( is true, only runs the first process waiting for)Tj -ET -endstream -endobj -30 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -32 0 obj -<< -/Length 4117 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-8)Tj -/F1 1 Tf -10 0 0 10 210 568.26 Tm -(the event \(this should only be done if the programmer knows that there can only)Tj -0 -1.2 TD -(be one process capable of responding to the event at once\).)Tj --3.6 -2.2 TD -(The meaning of an event is up to the programmer. In general, however, the notification)Tj -0 -1.2 TD -(of an event is merely a hint that something of interest to the waiting process has)Tj -T* -(happened; the process should still verify that the conceptual event actually occurred.)Tj -T* -(That is, )Tj -/F2 1 Tf -3.835 0 TD -(the process should be written so that it operates correctly even if woken up before)Tj --3.835 -1.2 TD -(the timeout and in the absence of the notified event.)Tj -/F1 1 Tf -23.459 0 TD -( In particular, the completion of)Tj -/TT8 1 Tf --23.459 -1.2 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -( and related operations in effect wakes up the process in which they)Tj --7.2012 -1.323 TD -(were performed, since there is no secure way of knowing whether the event of interest)Tj -0 -1.2 TD -(occurred while the process was busy performing the )Tj -/TT8 1 Tf -24.203 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -(.)Tj --31.4042 -2.023 TD -(There is currently one class of system-defined events, used with the network code.)Tj -0 -1.2 TD -(Each Pup and NS socket has associated with it an event that is notified when a packet)Tj -T* -(arrives on the socket; the event can be obtained by calling )Tj -/TT8 1 Tf -26.986 0 TD -(PUPSOCKETEVENT)Tj -/F1 1 Tf -8.4014 0 TD -( or)Tj -/TT8 1 Tf --35.3874 -1.323 TD -(NSOCKETEVENT)Tj -/F1 1 Tf -7.2012 0 TD -(, respectively \(see Chapter 32\).)Tj -/TT4 1 Tf -14 0 0 14 102 345.16 Tm -(Monitors)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 341.57 m -582.01 341.57 l -S -BT -/F1 1 Tf -10 0 0 10 174 323.34 Tm -(It is often the case that cooperating processes perform operations on shared structures,)Tj -0 -1.2 TD -(and some mechanism is needed to prevent more than one process from altering the)Tj -T* -(structure at the same time. Some languages have a construct called a monitor, a)Tj -T* -(collection of functions that access a common structure with mutual exclusion provided)Tj -T* -(and enforced by the compiler via the use of monitor locks. Interlisp-D has taken this)Tj -T* -(implementation notion as the basis for a mutual exclusion capability suitable for a)Tj -T* -(dynamically-scoped environment.)Tj -0 -1.9 TD -(A monitorlock is an object created by you and associated with \(e.g., stored in\) some)Tj -0 -1.2 TD -(shared structure that is to be protected from simultaneous access. To access the)Tj -T* -(structure, a program waits for the lock to be free, then takes ownership of the lock,)Tj -T* -(accesses the structure, then releases the lock. The functions and macros below are)Tj -T* -(used:)Tj -/TT8 1 Tf -0 -2.206 TD -(\(CREATE.MONITORLOCK)Tj -/F1 1 Tf -11.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(NAME )Tj -/TT8 1 Tf -4.463 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -18.6448 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns an instance of the )Tj -/TT8 1 Tf -12.519 0 TD -(MONITORLOCK)Tj -/F1 1 Tf -6.6011 0 TD -( datatype, to be used as the lock)Tj --19.1201 -1.323 TD -(argument to functions listed below. )Tj -/F2 1 Tf -16.854 0 TD -(NAME)Tj -/F1 1 Tf -3.185 0 TD -( is arbitrary, and is used for)Tj --20.039 -1.2 TD -(debugging or status information.)Tj -/TT8 1 Tf --3.6 -2.2 TD -(\(WITH.MONITOR)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(LOCK FORM)Tj -6.316 -0.3 TD -(1)Tj -0.556 0.3 TD -( ... FORM)Tj -4.52 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\) )Tj -/F1 1 Tf -16.961 0 TD -([Macro])Tj --33.646 -2 TD -(Evaluates )Tj -/F2 1 Tf -4.927 0 TD -(FORM)Tj -3.13 -0.3 TD -(1)Tj -/F1 1 Tf -0.556 0.3 TD -( ... )Tj -/F2 1 Tf -1.39 0 TD -(FORM)Tj -3.13 -0.3 TD -(N)Tj -/F1 1 Tf -0.815 0.3 TD -( while owning )Tj -/F2 1 Tf -6.705 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -(, and returns the value of)Tj -/F2 1 Tf --23.561 -1.5 TD -(FORM)Tj -3.13 -0.3 TD -(N)Tj -/F1 1 Tf -0.815 0.3 TD -(. This construct is implemented so that the lock is released even if the)Tj --3.945 -1.5 TD -(form is exited via error \(currently implemented with )Tj -/TT8 1 Tf -24.5 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -(\).)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -35 0 obj -<< -/Length 5378 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-9)Tj -/F1 1 Tf -10 0 0 10 162 568.26 Tm -(Ownership of a lock is dynamically scoped: if the current process already owns)Tj -0 -1.2 TD -(the lock \(e.g., if the caller was itself inside a )Tj -/TT8 1 Tf -20.504 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -( for this lock\),)Tj -/TT8 1 Tf --27.7052 -1.323 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -( does not wait for the lock to be free before evaluating )Tj -/F2 1 Tf -25.022 0 TD -(FORM)Tj -3.1288 -0.3 TD -(1)Tj -/F1 1 Tf -0.556 0.3 TD -( ...)Tj -/F2 1 Tf --35.908 -1.5 TD -(FORM)Tj -3.13 -0.3 TD -(N)Tj -/F1 1 Tf -0.815 0.3 TD -(. )Tj -/TT8 1 Tf --7.545 -2.506 TD -(\(WITH.FAST.MONITOR)Tj -/F1 1 Tf -10.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(LOCK FORM)Tj -6.316 -0.3 TD -(1)Tj -0.556 0.3 TD -( ... FORM)Tj -4.52 -0.3 TD -(N)Tj -/TT8 1 Tf -0.815 0.3 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -12.7608 0 TD -([Macro])Tj --33.646 -2 TD -(Like )Tj -/TT8 1 Tf -2.353 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -(, but implemented without the )Tj -/TT8 1 Tf -14.373 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -(. User interrupts)Tj --28.728 -1.323 TD -(\(e.g., Control-E\) are inhibited during the evaluation of )Tj -/F2 1 Tf -25.298 0 TD -(FORM)Tj -3.13 -0.3 TD -(1)Tj -/F1 1 Tf -0.556 0.3 TD -( ... )Tj -/F2 1 Tf -1.39 0 TD -(FORM)Tj -3.13 -0.3 TD -(N)Tj -/F1 1 Tf -0.815 0.3 TD -(. )Tj --34.319 -2.2 TD -(Programming restriction: the evaluation of )Tj -/F2 1 Tf -20.094 0 TD -(FORM)Tj -3.13 -0.3 TD -(1)Tj -/F1 1 Tf -0.556 0.3 TD -( ... )Tj -/F2 1 Tf -1.39 0 TD -(FORM)Tj -3.13 -0.3 TD -(N)Tj -/F1 1 Tf -0.815 0.3 TD -( must not error)Tj --29.115 -1.5 TD -(\(the lock would not be released\). This construct is mainly useful when the forms)Tj -0 -1.2 TD -(perform a small, safe computation that never errors and need never be)Tj -T* -(interrupted.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(MONITOR.AWAIT.EVENT)Tj -/F1 1 Tf -12 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(RELEASELOCK EVENT TIMEOUT TIMERP)Tj -/TT8 1 Tf -21.537 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -1.5709 0 TD -([Function])Tj --32.386 -1.823 TD -(For use in blocking inside a monitor. Performs )Tj -/TT8 1 Tf -21.984 0 TD -(\(AWAIT.EVENT)Tj -/F3 1 Tf -7.2012 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(EVENT)Tj --29.4722 -1.323 TD -(TIMEOUT)Tj -/F3 1 Tf -5.036 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(TIMERP)Tj -/TT8 1 Tf -4.166 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(, but releases )Tj -/F2 1 Tf -6.409 0 TD -(RELEASELOCK)Tj -/F1 1 Tf -7.853 0 TD -( first, and reobtains the)Tj --24.3511 -1.323 TD -(lock \(possibly waiting\) on wakeup.)Tj -0 -1.9 TD -(Typical use for )Tj -/TT8 1 Tf -7.093 0 TD -(MONITOR.AWAIT.EVENT)Tj -/F1 1 Tf -11.4019 0 TD -(: A function wants to perform some)Tj --18.4949 -1.323 TD -(operation on )Tj -/F2 1 Tf -6.056 0 TD -(FOO)Tj -/F1 1 Tf -2.223 0 TD -(, but only if it is in a certain state. It has to obtain the lock on)Tj --8.279 -1.2 TD -(the structure to make sure that the state of the structure does not change)Tj -T* -(between the time it tests the state and performs the operation. If the state)Tj -T* -(turns out to be bad, it then waits for some other process to make the state good,)Tj -T* -(meanwhile releasing the lock so that the other process can alter the structure.)Tj -/TT8 1 Tf -9.6 -1.7 TD -(\(WITH.MONITOR)Tj -/F3 1 Tf -7.8013 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FOO-LOCK)Tj -/F3 1 Tf --8.0883 -1.123 TD -( )Tj -/TT8 1 Tf -0.861 0 TD -(\(until)Tj -/F3 1 Tf -3.6006 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(CONDITION-OF-FOO)Tj -/F3 1 Tf --4.7486 -1.123 TD -( )Tj -/TT8 1 Tf -1.148 0 TD -(do \(MONITOR.AWAIT.EVENT)Tj -/F3 1 Tf -13.8022 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FOO-LOCK)Tj -/F3 1 Tf -5.464 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(EVENT-FOO-)Tj --20.9882 -1.123 TD -(CHANGED)Tj -/F3 1 Tf -5.352 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(TIMEOUT)Tj -/TT8 1 Tf -5.036 0 TD -(\)\))Tj -/F3 1 Tf --10.675 -1.123 TD -( )Tj -/F2 1 Tf -2.009 0 TD -(OPERATE-ON-FOO)Tj -/TT8 1 Tf -9.501 0 TD -(\))Tj -/F1 1 Tf --21.11 -1.823 TD -(It is sometimes convenient for a process to have )Tj -/TT8 1 Tf -22.316 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -( at its top level)Tj --29.5172 -1.323 TD -(and then do all its interesting waiting using )Tj -/TT8 1 Tf -20.615 0 TD -(MONITOR.AWAIT.EVENT)Tj -/F1 1 Tf -11.4019 0 TD -(. Not only)Tj --32.0169 -1.323 TD -(is this often cleaner, but in the present implementation in cases where the lock)Tj -0 -1.2 TD -(is frequently accessed, it saves the )Tj -/TT8 1 Tf -16.187 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -( overhead of )Tj -/TT8 1 Tf -5.889 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -(.)Tj --34.078 -2.023 TD -(Programming restriction: There must not be an )Tj -/TT8 1 Tf -22.502 0 TD -(ERRORSET)Tj -/F1 1 Tf -4.8008 0 TD -( between the)Tj --27.3028 -1.323 TD -(enclosing )Tj -/TT8 1 Tf -4.574 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -( and the call to )Tj -/TT8 1 Tf -7.15 0 TD -(MONITOR.AWAIT.EVENT)Tj -/F1 1 Tf -11.4019 0 TD -( such that the)Tj -/TT8 1 Tf --30.327 -1.323 TD -(ERRORSET)Tj -/F1 1 Tf -4.8008 0 TD -( would catch an )Tj -/TT8 1 Tf -7.501 0 TD -(ERROR!)Tj -/F1 1 Tf -3.6006 0 TD -( and continue inside the monitor, for the lock)Tj --15.9024 -1.323 TD -(would not have been reobtained. \(The reason for this restriction is that,)Tj -0 -1.2 TD -(although )Tj -/TT8 1 Tf -4.408 0 TD -(MONITOR.AWAIT.EVENT)Tj -/F1 1 Tf -11.4019 0 TD -( wont itself error, you could have caused an)Tj --15.8099 -1.323 TD -(error with an interrupt, or a )Tj -/TT8 1 Tf -13.315 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -( in the context of the waiting)Tj --20.5162 -1.323 TD -(process that produced an error.\))Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -38 0 obj -<< -/Length 320 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-10)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(On rare occasions it may be useful to manipulate monitor locks directly. The following)Tj -0 -1.2 TD -(two functions are used in the implementation of )Tj -/TT8 1 Tf -22.428 0 TD -(WITH.MONITOR)Tj -/F1 1 Tf -7.2012 0 TD -(:)Tj -ET -endstream -endobj -39 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -41 0 obj -<< -/Length 4303 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-11)Tj -/TT8 1 Tf -10 0 0 10 126 568.2 Tm -(\(OBTAIN.MONITORLOCK)Tj -/F1 1 Tf -11.4 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(LOCK DONTWAIT UNWINDSAVE)Tj -/TT8 1 Tf -16.595 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -7.1129 0 TD -([Function])Tj --32.386 -1.823 TD -(Takes possession of )Tj -/F2 1 Tf -9.298 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -(, waiting if necessary until it is free, unless)Tj -/F2 1 Tf --12.206 -1.2 TD -(DONTWAIT)Tj -/F1 1 Tf -5.778 0 TD -( is true, in which case it returns )Tj -/TT8 1 Tf -15.038 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( immediately. If)Tj -/F2 1 Tf --22.6163 -1.323 TD -(UNWINDSAVE)Tj -/F1 1 Tf -7.353 0 TD -( is true, performs a )Tj -/TT8 1 Tf -9.093 0 TD -(RESETSAVE)Tj -/F1 1 Tf -5.4009 0 TD -( to be unwound when the)Tj --21.8469 -1.323 TD -(enclosing )Tj -/TT8 1 Tf -4.574 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -( exits. Returns )Tj -/F2 1 Tf -7.334 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -( if )Tj -/F2 1 Tf -1.204 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -( was successfully obtained, )Tj -/TT8 1 Tf -12.687 0 TD -(T)Tj -/F1 1 Tf --36.4158 -1.323 TD -(if the current process already owned )Tj -/F2 1 Tf -17.092 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -(.)Tj -/TT8 1 Tf --23.6 -2.206 TD -(\(RELEASE.MONITORLOCK)Tj -/F1 1 Tf -12 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(LOCK EVENIFNOTMINE)Tj -/TT8 1 Tf -12.389 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -10.1188 0 TD -([Function])Tj --32.386 -1.823 TD -(Releases )Tj -/F2 1 Tf -4.297 0 TD -(LOCK)Tj -/F1 1 Tf -2.908 0 TD -( if it is owned by the current process, and wakes up the next)Tj --7.205 -1.2 TD -(process, if any, waiting to obtain the lock.)Tj -0 -1.9 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(EVENIFNOTMINE)Tj -/F1 1 Tf -9.203 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, the lock is released even if it is not owned by)Tj --15.4103 -1.323 TD -(the current process.)Tj --3.6 -2.2 TD -(When a process is deleted, any locks it owns are released.)Tj -/TT4 1 Tf -14 0 0 14 54 346.58 Tm -(Global Resources)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 342.99 m -534.01 342.99 l -S -BT -/F1 1 Tf -10 0 0 10 126 324.76 Tm -(The biggest source of problems in the multi-processing environment is the matter of)Tj -0 -1.2 TD -(global resources. Two processes cannot both use the same global resource if there can)Tj -T* -(be a process switch in the middle of their use \(currently this means calls to )Tj -/TT8 1 Tf -34.836 0 TD -(BLOCK)Tj -/F1 1 Tf -3.0005 0 TD -(, but)Tj --37.8365 -1.323 TD -(ultimately with a preemptive scheduler means anytime\). Thus, user code should be)Tj -0 -1.2 TD -(wary of its own use of global variables, if it ever makes sense for the code to be run in)Tj -T* -(more than one process at a time. "State" variables private to a process should generally)Tj -T* -(be bound in that process; structures that are shared among processes \(or resources used)Tj -T* -(privately but expensive to duplicate per process\) should be protected with monitor locks)Tj -T* -(or some other form of synchronization.)Tj -0 -1.9 TD -(Aside from user code, however, there are many )Tj -/F2 1 Tf -21.963 0 TD -(system)Tj -/F1 1 Tf -3.073 0 TD -( global variables and resources.)Tj --25.036 -1.2 TD -(Most of these arise historically from the single-process Interlisp-10 environment, and)Tj -T* -(will eventually be changed in Interlisp-D to behave appropriately in a multi-processing)Tj -T* -(environment. Some have already been changed, and are described below. Two other)Tj -T* -(resources not generally thought of as global variablesthe keyboard and the mouse)Tj -T* -(are particularly idosyncratic, and are discussed in the next section.)Tj -0 -1.9 TD -(The following resources, which are global in Interlisp-10, are allocated per process in)Tj -0 -1.2 TD -(Interlisp-D: primary input and output \(the streams affected by )Tj -/F3 1 Tf -29.242 0 TD -(INPUT)Tj -/F1 1 Tf -3.591 0 TD -( and )Tj -/F3 1 Tf -2.297 0 TD -(OUTPUT)Tj -/F1 1 Tf -4.702 0 TD -(\),)Tj --39.832 -1.2 TD -(terminal input and output \(the streams designated by the name )Tj -/F3 1 Tf -29.819 0 TD -(T)Tj -/F1 1 Tf -0.722 0 TD -(\), the primary read)Tj --30.541 -1.2 TD -(table and primary terminal table, and dribble files. Thus, each process can print to its)Tj -T* -(own primary output, print to the terminal, read from a different primary input, all)Tj -T* -(without interfering with another processs reading and printing.)Tj -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -46 0 obj -<< -/Length 4845 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-12)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(Each process begins life with its primary and terminal input/output streams set to a)Tj -0 -1.2 TD -(dummy stream. If the process attempts input or output using any of those dummy)Tj -T* -(streams, e.g., by calling )Tj -/TT8 1 Tf -11.151 0 TD -(\(READ T\))Tj -/F1 1 Tf -4.8008 0 TD -(, or )Tj -/TT8 1 Tf -1.778 0 TD -(\(PRINT & T\))Tj -/F1 1 Tf -6.6011 0 TD -(, a tty window is automatically)Tj --24.3309 -1.323 TD -(created for the process, and that window becomes the primary input/output and)Tj -0 -1.2 TD -(terminal input/output for the process. The default tty window is created at or near the)Tj -T* -(region specified in the variable )Tj -/TT8 1 Tf -14.52 0 TD -(DEFAULTTTYREGION)Tj -/F1 1 Tf -9.6016 0 TD -(.)Tj --24.1216 -2.023 TD -(A process can, of course, call )Tj -/TT8 1 Tf -13.37 0 TD -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -( explicitly to give itself a tty window of)Tj --22.9716 -1.323 TD -(its own choosing, in which case the automatic mechanism never comes into play.)Tj -0 -1.2 TD -(Calling )Tj -/TT8 1 Tf -3.649 0 TD -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -( when a process has no tty window not only sets the)Tj --13.2506 -1.323 TD -(terminal streams, but also sets the primary input and output streams to be that)Tj -0 -1.2 TD -(window, assuming they were still set to the dummy streams.)Tj -/TT8 1 Tf -0 -2.206 TD -(\(HASTTYWINDOWP)Tj -/F2 1 Tf -8.4 0 TD -( PROCESS)Tj -/TT8 1 Tf -5.242 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -21.1438 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns )Tj -/TT8 1 Tf -4.018 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( if the process )Tj -/F2 1 Tf -6.648 0 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( has a tty window; )Tj -/TT8 1 Tf -8.725 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( otherwise. If)Tj -/F2 1 Tf --26.7554 -1.323 TD -(PROCESS)Tj -/F1 1 Tf -4.964 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, it defaults to the current process.)Tj --11.6983 -2.323 TD -(Other system resources that are typically changed by )Tj -/TT8 1 Tf -24.909 0 TD -(RESETFORM)Tj -/F1 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -(, or)Tj -/TT8 1 Tf --35.6667 -1.323 TD -(RESETVARS)Tj -/F1 1 Tf -5.4009 0 TD -( are all global entities. In the multiprocessing environment, these)Tj --5.4009 -1.323 TD -(constructs are suspect, as there is no provision for "undoing" them when a process)Tj -0 -1.2 TD -(switch occurs. For example, in the current release of Interlisp-D, it is not possible to set)Tj -T* -(the print radix to 8 inside only one process, as the print radix is a global entity. )Tj -0 -1.9 TD -(Note that )Tj -/TT8 1 Tf -4.705 0 TD -(RESETFORM)Tj -/F1 1 Tf -5.4009 0 TD -( and similar expressions are perfectly valid in the process world,)Tj --10.1059 -1.323 TD -(and even quite useful, when they manipulate things strictly within one process. The)Tj -0 -1.2 TD -(process world is arranged so that deleting a process also unwinds any )Tj -/TT8 1 Tf -32.429 0 TD -(RESETxxx)Tj -/F1 1 Tf --32.429 -1.323 TD -(expressions that were performed in the process and are still waiting to be unwound,)Tj -0 -1.2 TD -(exactly as if a Control-D had reset the process to the top. Additionally, there is an)Tj -T* -(implicit )Tj -/TT8 1 Tf -3.834 0 TD -(RESETLST)Tj -/F1 1 Tf -4.8008 0 TD -( at the top of each process, so that )Tj -/TT8 1 Tf -15.928 0 TD -(RESETSAVE)Tj -/F1 1 Tf -5.4009 0 TD -( can be used as a way)Tj --29.9637 -1.323 TD -(of providing "cleanup" functions for when a process is deleted. For these, the value of)Tj -/TT8 1 Tf -0 -1.2 TD -(RESETSTATE)Tj -/F1 1 Tf -6.001 0 TD -( \(see Chapter 14\) is )Tj -/TT8 1 Tf -9.205 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -( if the process finished normally, )Tj -/TT8 1 Tf -15.371 0 TD -(ERROR)Tj -/F1 1 Tf -3.0005 0 TD -( if it was)Tj --35.3778 -1.323 TD -(aborted by an error, )Tj -/TT8 1 Tf -9.501 0 TD -(RESET)Tj -/F1 1 Tf -3.0005 0 TD -( if the process was explicitly deleted, and )Tj -/TT8 1 Tf -19.169 0 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -( if the)Tj --37.0714 -1.323 TD -(process is being restarted after a )Tj -/TT8 1 Tf -15.39 0 TD -(HARDRESET)Tj -/F1 1 Tf -5.4009 0 TD -( or a )Tj -/TT8 1 Tf -2.334 0 TD -(RESTART.PROCESS)Tj -/F1 1 Tf -9.0015 0 TD -(.)Tj -/TT4 1 Tf -14 0 0 14 102 129.57 Tm -(Typein and the TTY Process)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 125.98 m -582.01 125.98 l -S -BT -/F1 1 Tf -10 0 0 10 174 107.75 Tm -(There is one global resource, the keyboard, that is particularly problematic to share)Tj -0 -1.2 TD -(among processes. Consider, for example, having two processes both performing )Tj -/TT8 1 Tf -37.001 0 TD -(\(READ)Tj --37.001 -1.323 TD -(T\))Tj -/F1 1 Tf -1.2002 0 TD -(. Since the keyboard input routines block while there is no input, both processes)Tj --1.2002 -1.323 TD -(would spend most of their time blocking, and it would simply be a matter of chance)Tj -0 -1.2 TD -(which process received each character of typein.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -49 0 obj -<< -/Length 4520 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-13)Tj -/F1 1 Tf -10 0 0 10 126 568.26 Tm -(To resolve such dilemmas, the system designates a distinguished process, termed the)Tj -/F2 1 Tf -0 -1.2 TD -(tty process)Tj -/F1 1 Tf -4.776 0 TD -(, that is assumed to be the process that is involved in terminal interaction.)Tj --4.776 -1.2 TD -(Any typein from the keyboard goes to that process. If a process other than the tty)Tj -T* -(process requests keyboard input, it blocks until it becomes the tty process. When the)Tj -T* -(tty process is switched \(in any of the ways described further below\), any typeahead that)Tj -T* -(occurred before the switch is saved and associated with the current tty process. Thus, it)Tj -T* -(is always the case that keystrokes are sent to the process that is the tty process at the)Tj -T* -(time of the keystrokes, regardless of when that process actually gets around to reading)Tj -T* -(them.)Tj -0 -1.9 TD -(It is less immediately obvious how to handle keyboard interrupt characters, as their)Tj -0 -1.2 TD -(action is asynchronous and not always tied to typein. Interrupt handling is described in)Tj -T* -(the Handling of Interrupts section below.)Tj -/TT4 1 Tf -12 0 0 12 90 398.64 Tm -(Switching the TTY Process)Tj -/F1 1 Tf -10 0 0 10 126 378.26 Tm -(Any process can make itself be the tty process by calling )Tj -/TT8 1 Tf -26.225 0 TD -(TTY.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(.)Tj -/TT8 1 Tf --32.8261 -2.329 TD -(\(TTY.PROCESS)Tj -/F1 1 Tf -7.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -24.9999 0 TD -([Function])Tj --32.386 -1.823 TD -(Returns the handle of the current tty process. In addition, if )Tj -/F2 1 Tf -28.278 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(,)Tj --36.3753 -1.323 TD -(makes it be the tty process. The special case of )Tj -/F2 1 Tf -22.041 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( = )Tj -/TT8 1 Tf -1.162 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( is interpreted to)Tj --26.7111 -1.323 TD -(mean the executive process; this is sometimes useful when a process wants to)Tj -0 -1.2 TD -(explicitly give up being the tty process.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(TTY.PROCESSP)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(PROC)Tj -/TT8 1 Tf -2.908 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -24.3999 0 TD -([Function])Tj --32.386 -1.823 TD -(True if )Tj -/F2 1 Tf -3.426 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( is the tty process; )Tj -/F2 1 Tf -8.649 0 TD -(PROC)Tj -/F1 1 Tf -2.908 0 TD -( defaults to the running process. Thus,)Tj -/TT8 1 Tf --17.891 -1.2 TD -(\(TTY.PROCESSP\))Tj -/F1 1 Tf -8.4014 0 TD -( is true if the caller is the tty process.)Tj -/TT8 1 Tf --12.0014 -2.323 TD -(\(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.8 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(MSECS NEEDWINDOW)Tj -/TT8 1 Tf -11.667 0 TD -(\) )Tj -/F1 1 Tf -16.241 0 TD -([Function])Tj --32.386 -1.823 TD -(Efficiently waits until )Tj -/TT8 1 Tf -10.39 0 TD -(\(TTY.PROCESSP\))Tj -/F1 1 Tf -8.4014 0 TD -( is true. )Tj -/TT8 1 Tf -4.112 0 TD -(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.2012 0 TD -( is called)Tj --30.1045 -1.323 TD -(internally by the system functions that read from the terminal; user code thus)Tj -0 -1.2 TD -(need only call it in special cases.)Tj -0 -1.9 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(MSECS)Tj -/F1 1 Tf -3.722 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, it is the number of milliseconds to wait before timing out.)Tj --9.9293 -1.323 TD -(If )Tj -/TT8 1 Tf -1.018 0 TD -(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.2012 0 TD -( times out before )Tj -/TT8 1 Tf -8.001 0 TD -(\(TTY.PROCESSP\))Tj -/F1 1 Tf -8.4014 0 TD -( is true, it returns )Tj -/TT8 1 Tf -8.556 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(,)Tj --34.9778 -1.323 TD -(otherwise it returns )Tj -/TT8 1 Tf -9.5 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(. If )Tj -/F2 1 Tf -1.852 0 TD -(MSECS)Tj -/F1 1 Tf -3.722 0 TD -( is )Tj -/TT8 1 Tf -1.334 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.2012 0 TD -( will not time out.)Tj --26.5656 -2.023 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(NEEDWINDOW)Tj -/F1 1 Tf -7.667 0 TD -( is non-)Tj -/TT8 1 Tf -3.389 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.2012 0 TD -( opens a TTY window for the)Tj --21.6315 -1.323 TD -(current process if one isnt already open.)Tj -/TT8 1 Tf -0 -1.9 TD -(WAIT.FOR.TTY)Tj -/F1 1 Tf -7.2012 0 TD -( spawns a new mouse process if called under the mouse process)Tj --7.2012 -1.323 TD -(\(see )Tj -/TT8 1 Tf -2.074 0 TD -(SPAWN.MOUSE)Tj -/F1 1 Tf -6.6011 0 TD -(, in the Keeping the Mouse Alive section below\).)Tj -ET -endstream -endobj -50 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -52 0 obj -<< -/Length 5073 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-14)Tj -/F1 1 Tf -10 0 0 10 174 568.26 Tm -(In some cases, such as in functions invoked as a result of mouse action or a users typed-)Tj -0 -1.2 TD -(in call, it is reasonable for the function to invoke )Tj -/TT8 1 Tf -22.633 0 TD -(TTY.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( itself so that it can take)Tj --29.2341 -1.323 TD -(subsequent user type in. In other cases, however, this is too undisciplined; it is)Tj -0 -1.2 TD -(desirable to let the user designate which process typein should be directed to. This is)Tj -T* -(most conveniently done by mouse action.)Tj -0 -1.9 TD -(The system supports the model that "to type to a process, you click in its window." To)Tj -0 -1.2 TD -(cooperate with this model, any process desiring keyboard input should put its process)Tj -T* -(handle as the )Tj -/TT8 1 Tf -6.52 0 TD -(PROCESS)Tj -/F1 1 Tf -4.2007 0 TD -( property of its window\(s\). To handle the common case, the)Tj --10.7207 -1.323 TD -(function )Tj -/TT8 1 Tf -4.092 0 TD -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -( does this automatically when the ttydisplaystream is)Tj --13.6936 -1.323 TD -(switched to a new window. A process can own any number of windows; clicking in any)Tj -0 -1.2 TD -(of those windows gives the process the tty.)Tj -0 -1.9 TD -(This mechanism suffices for most casual process writers. For example, if a process)Tj -0 -1.2 TD -(wants all its input/output interaction to occur in a particular window that it has)Tj -T* -(created, it should just make that window be its tty window by calling)Tj -/TT8 1 Tf -T* -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -(. Thereafter, it can )Tj -/TT8 1 Tf -9.205 0 TD -(PRINT)Tj -/F1 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(READ)Tj -/F1 1 Tf -2.4004 0 TD -( to/from the )Tj -/TT8 1 Tf -5.667 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( stream; if the)Tj --31.9745 -1.323 TD -(process is not the tty process at the time that it calls )Tj -/TT8 1 Tf -24.485 0 TD -(READ)Tj -/F1 1 Tf -2.4004 0 TD -(, it will block until the user)Tj --26.8854 -1.323 TD -(clicks in the window.)Tj -0 -1.9 TD -(For those needing tighter control over the tty, the default behavior can be overridden or)Tj -0 -1.2 TD -(supplemented. The remainder of this section describes the mechanisms involved.)Tj -0 -1.9 TD -(There is a window property )Tj -/TT8 1 Tf -12.964 0 TD -(WINDOWENTRYFN)Tj -/F1 1 Tf -7.8013 0 TD -( that controls whether and how to switch)Tj --20.7653 -1.323 TD -(the tty to the process owning a window. The mouse handler, before invoking any)Tj -0 -1.2 TD -(normal )Tj -/TT8 1 Tf -3.593 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -(, specifically notices the case of a button going down in a)Tj --11.3943 -1.323 TD -(window that belongs to a process \(i.e., has a )Tj -/TT8 1 Tf -20.486 0 TD -(PROCESS)Tj -/F1 1 Tf -4.2007 0 TD -( window property\) that is not the)Tj --24.6867 -1.323 TD -(tty process. In this case, it invokes the windows )Tj -/TT8 1 Tf -22.744 0 TD -(WINDOWENTRYFN)Tj -/F1 1 Tf -7.8013 0 TD -( of one argument)Tj --30.5453 -1.323 TD -(\()Tj -/F2 1 Tf -0.333 0 TD -(WINDOW)Tj -/F1 1 Tf -4.63 0 TD -(\). )Tj -/TT8 1 Tf -1.167 0 TD -(WINDOWENTRYFN)Tj -/F1 1 Tf -7.8013 0 TD -( defaults to )Tj -/TT8 1 Tf -5.464 0 TD -(GIVE.TTY.PROCESS)Tj -/F1 1 Tf -9.6016 0 TD -(:)Tj -/TT8 1 Tf --28.9968 -2.329 TD -(\(GIVE.TTY.PROCESS)Tj -/F1 1 Tf -10.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(WINDOW)Tj -/TT8 1 Tf -4.63 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -19.6778 0 TD -([Function])Tj --32.386 -1.823 TD -(If )Tj -/F2 1 Tf -1.018 0 TD -(WINDOW)Tj -/F1 1 Tf -4.63 0 TD -( has a )Tj -/TT8 1 Tf -3.02 0 TD -(PROCESS)Tj -/F1 1 Tf -4.2007 0 TD -( property, performs )Tj -/TT8 1 Tf -9.221 0 TD -(\(TTY.PROCESS)Tj -/F3 1 Tf -7.2012 0 TD -( )Tj -/TT8 1 Tf -0.287 0 TD -(\(WINDOWPROP)Tj -/F2 1 Tf --29.5779 -1.323 TD -(WINDOW)Tj -/F3 1 Tf -4.63 0 TD -( )Tj -/TT8 1 Tf -0.528 0 TD -(PROCESS\)\))Tj -/F1 1 Tf -5.4009 0 TD -( and then invokes )Tj -/F2 1 Tf -8.483 0 TD -(WINDOW)Tj -/F1 1 Tf -4.63 0 TD -(s )Tj -/TT8 1 Tf -0.945 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -( function)Tj --32.4181 -1.323 TD -(\(or )Tj -/TT8 1 Tf -1.555 0 TD -(RIGHTBUTTONFN)Tj -/F1 1 Tf -7.8013 0 TD -( if the right button is down\).)Tj --12.9563 -2.323 TD -(There are some cases where clicking in a window does not always imply that the user)Tj -0 -1.2 TD -(wants to talk to that window. For example, clicking in a text editor window with a shift)Tj -T* -(key held down means to "shift-select" some piece of text into the input buffer of the)Tj -/F2 1 Tf -T* -(current)Tj -/F1 1 Tf -3.35 0 TD -( tty process. The editor supports this by supplying a )Tj -/TT8 1 Tf -24.521 0 TD -(WINDOWENTRYFN)Tj -/F1 1 Tf -7.8013 0 TD -( that)Tj --35.6723 -1.323 TD -(performs )Tj -/TT8 1 Tf -4.425 0 TD -(GIVE.TTY.PROCESS)Tj -/F1 1 Tf -9.6016 0 TD -( if no shift key is down, but goes into its shift-select mode,)Tj --14.0266 -1.323 TD -(without changing the tty process, if a shift key is down. The shift-select mode performs)Tj -0 -1.2 TD -(a )Tj -/TT8 1 Tf -0.834 0 TD -(BKSYSBUF)Tj -/F1 1 Tf -4.8008 0 TD -( of the selected text when the shift key is let up, the )Tj -/TT8 1 Tf -24.133 0 TD -(BKSYSBUF)Tj -/F1 1 Tf -4.8008 0 TD -( feeding)Tj --34.5686 -1.323 TD -(input to the current tty process.)Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -55 0 obj -<< -/Length 4320 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-15)Tj -/F1 1 Tf -10 0 0 10 126 568.26 Tm -(Sometimes a process wants to be notified when it becomes the tty process, or stops)Tj -0 -1.2 TD -(being the tty process. To support this, there are two process properties, )Tj -/TT8 1 Tf -33.372 0 TD -(TTYEXITFN)Tj -/F1 1 Tf -5.4009 0 TD -( and)Tj -/TT8 1 Tf --38.7729 -1.323 TD -(TTYENTRYFN)Tj -/F1 1 Tf -6.001 0 TD -(. The actions taken by )Tj -/TT8 1 Tf -10.744 0 TD -(TTY.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( when it switches the tty to a new)Tj --23.3461 -1.323 TD -(process are as follows: the former tty processs )Tj -/TT8 1 Tf -21.593 0 TD -(TTYEXITFN)Tj -/F1 1 Tf -5.4009 0 TD -( is called with two arguments)Tj --26.9939 -1.323 TD -(\()Tj -/F2 1 Tf -0.333 0 TD -(OLDTTYPROCESS)Tj -/F1 1 Tf -9.242 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(NEWTTYPROCESS)Tj -/F1 1 Tf -9.482 0 TD -(\); the new process is made the tty process;)Tj --19.335 -1.2 TD -(finally, the new tty processs )Tj -/TT8 1 Tf -13.409 0 TD -(TTYENTRYFN)Tj -/F1 1 Tf -6.001 0 TD -( is called with two arguments)Tj --19.41 -1.323 TD -(\()Tj -/F2 1 Tf -0.333 0 TD -(NEWTTYPROCESS)Tj -/F1 1 Tf -9.482 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(OLDTTYPROCESS)Tj -/F1 1 Tf -9.242 0 TD -(\). Normally the )Tj -/TT8 1 Tf -7.594 0 TD -(TTYENTRYFN)Tj -/F1 1 Tf -6.001 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(TTYEXITFN)Tj -/F1 1 Tf --35.227 -1.323 TD -(need only their first argument, but the other process involved in the switch is supplied)Tj -0 -1.2 TD -(for completeness. In the present system, most processes want to interpret the keyboard)Tj -T* -(in the same way, so it is considered the responsibility of any process that changes the)Tj -T* -(keyboard interpretation to restore it to the normal state by its )Tj -/TT8 1 Tf -28.949 0 TD -(TTYEXITFN)Tj -/F1 1 Tf -5.4009 0 TD -(. )Tj --34.3499 -2.023 TD -(A window is "owned" by the last process that anyone gave as the windows )Tj -/TT8 1 Tf -34.525 0 TD -(PROCESS)Tj -/F1 1 Tf --34.525 -1.323 TD -(property. Ordinarily there is no conflict here, as processes tend to own disjoint sets of)Tj -0 -1.2 TD -(windows \(though, of course, cooperating processes can certainly try to confuse each)Tj -T* -(other\). The only likely problem arises with that most global of windows,)Tj -/TT8 1 Tf -T* -(PROMPTWINDOW)Tj -/F1 1 Tf -7.2012 0 TD -(. Programs should not be tempted to read from )Tj -/TT8 1 Tf -22.132 0 TD -(PROMPTWINDOW)Tj -/F1 1 Tf -7.2012 0 TD -(. This is)Tj --36.5343 -1.323 TD -(not usually necessary anyway, as the first attempt to read from )Tj -/TT8 1 Tf -29.615 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -( in a process that has)Tj --30.2151 -1.323 TD -(not set its )Tj -/TT8 1 Tf -4.853 0 TD -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -9.6016 0 TD -( to its own window causes a tty window to be created for)Tj --14.4546 -1.323 TD -(the process \(see the Global Resources section above\). )Tj -/TT4 1 Tf -12 0 0 12 90 302.34 Tm -(Handling of Interrupts)Tj -/F1 1 Tf -10 0 0 10 126 281.96 Tm -(At the time that a keyboard interrupt character \(see Chapter 30\) is struck, any process)Tj -0 -1.2 TD -(could be running, and some decision must be made as to which process to actually)Tj -T* -(interrupt. To the extent that keyboard interrupts are related to typein, most interrupts)Tj -T* -(are taken in the tty process; however, the following are handled specially:)Tj -/TT8 1 Tf -2.518 -1.9 TD -(RESET)Tj -/F1 1 Tf -3.0005 0 TD -( \(initially Control-D\))Tj -/TT8 1 Tf --2.9445 -1.323 TD -(ERROR)Tj -/F1 1 Tf -3.0005 0 TD -[( \(initially Control-E\))-1799.5(These interrupts are taken in the mouse process, if)]TJ -11.2255 -1.323 TD -(the mouse is not in its idle state; otherwise they are)Tj -0 -1.2 TD -(taken in the tty process. Thus, Control-E can be)Tj -T* -(used to abort some mouse-invoked window action,)Tj -T* -(such as the Shape command. As a consequence,)Tj -T* -(note that if the mouse invokes some lengthy)Tj -T* -(computation that the user thinks of as)Tj -T* -("background", Control-E still aborts it, even though)Tj -T* -(that may not have been what the user intended.)Tj -T* -(Such lengthy computations, for various reasons,)Tj -T* -(should generally be performed by spawning a)Tj -T* -[(separate process to perform them.)-1678(The )]TJ -/TT8 1 Tf -19.456 0 TD -(RESET)Tj -/F1 1 Tf --19.456 -1.323 TD -(interrupt in a process other than the executive is)Tj -0 -1.2 TD -(interpreted exactly as if an error unwound the)Tj -T* -(process to its top level: if the process was)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -58 0 obj -<< -/Length 3426 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-16)Tj -/F1 1 Tf -10 0 0 10 342 568.26 Tm -(designated )Tj -/TT8 1 Tf -5.297 0 TD -(RESTARTABLE)Tj -/F1 1 Tf -6.6011 0 TD -( = )Tj -/TT8 1 Tf -1.162 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, it is restarted;)Tj --13.6602 -1.323 TD -(otherwise it is killed.)Tj -/TT8 1 Tf --13.682 -1.9 TD -(HELP)Tj -/F1 1 Tf -2.4004 0 TD -[( \(initially Control-G\))-1799.6(A menu of processes is presented to the user, who is)]TJ -11.2816 -1.323 TD -(asked to select which one the interrupt should)Tj -0 -1.2 TD -(occur in. The current tty process appears with a *)Tj -T* -(next to its name at the top of the menu. The menu)Tj -T* -(also includes an entry "[Spawn Mouse]", for the)Tj -T* -(common case of needing a mouse because the)Tj -T* -(mouse process is currently tied up running)Tj -T* -(someones )Tj -/TT8 1 Tf -4.908 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -(; selecting this entry)Tj --12.7093 -1.323 TD -(spawns a new mouse process, and no break occurs.)Tj -/TT8 1 Tf --14.226 -1.9 TD -(BREAK)Tj -/F1 1 Tf -3.0005 0 TD -[( \(initially Control-B\))-1799.5(Performs the )]TJ -/TT8 1 Tf -17.5215 0 TD -(HELP)Tj -/F1 1 Tf -2.4004 0 TD -( interrupt in the mouse process,)Tj --8.6964 -1.323 TD -(if the mouse is not in its idle state; otherwise it is)Tj -0 -1.2 TD -(performed in the tty process.)Tj -/TT8 1 Tf --13.89 -1.9 TD -(RUBOUT)Tj -/F1 1 Tf -3.6006 0 TD -( \(initially )Tj -/TT8 1 Tf -4.557 0 TD -(DELETE)Tj -/F1 1 Tf -3.6006 0 TD -[(\))-1798.8(This interrupt clears typeahead in )]TJ -/F2 1 Tf -18.2998 0 TD -(all)Tj -/F1 1 Tf -1.24 0 TD -( processes.)Tj -/TT8 1 Tf --31.208 -2.023 TD -(RAID, STACK OVERFLOW)Tj -4.8 -1.123 TD -(STORAGE FULL)Tj -/F1 1 Tf -9 0 TD -(These interrupts always occur in whatever process)Tj -0 -1.323 TD -(was running at the time the interrupt struck. In)Tj -0 -1.2 TD -(the cases of )Tj -/TT8 1 Tf -5.593 0 TD -(STACK OVERFLOW)Tj -/F1 1 Tf -8.4014 0 TD -( and )Tj -/TT8 1 Tf -2.297 0 TD -(STORAGE FULL)Tj -/F1 1 Tf -7.2012 0 TD -(,)Tj --23.4925 -1.323 TD -(this means that the interrupt is more likely to)Tj -0 -1.2 TD -(strike in the offending process \(especially if it is a)Tj -T* -("runaway" process that is not blocking\). Note,)Tj -T* -(however, that this process is still not necessarily)Tj -T* -(the guilty party; it could be an innocent bystander)Tj -T* -(that just happened to use up the last of a resource)Tj -T* -(prodigiously consumed by some other process. )Tj -/TT4 1 Tf -14 0 0 14 102 187.24 Tm -(Keeping the Mouse Alive)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 183.65 m -582.01 183.65 l -S -BT -/F1 1 Tf -10 0 0 10 174 165.42 Tm -(Since the window mouse handler runs in its own process, it is not available while a)Tj -T* -(windows )Tj -/TT8 1 Tf -4.501 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -( function \(or any of the other window functions invoked by)Tj --12.3023 -1.323 TD -(mouse action\) is running. This leads to two sorts of problems: \(1\) a long computation)Tj -0 -1.2 TD -(underneath a )Tj -/TT8 1 Tf -6.519 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -( deprives the user of the mouse for other purposes, and)Tj --14.3203 -1.323 TD -(\(2\) code that runs as a )Tj -/TT8 1 Tf -10.557 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -( cannot rely on other )Tj -/TT8 1 Tf -9.852 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -(s running,)Tj --36.0115 -1.323 TD -(which means that there some pieces of code that run differently from normal when run)Tj -0 -1.2 TD -(under the mouse process. These problems are addressed by the following functions:)Tj -ET -endstream -endobj -59 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -61 0 obj -<< -/Length 2504 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-17)Tj -/TT8 1 Tf -10 0 0 10 126 568.2 Tm --0.0001 Tc -(\(SPAWN.MOUSE )Tj -/TT10 1 Tf -7.8001 0 TD -0 Tc -()Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -26.9857 0 TD -([Function])Tj --32.386 -1.823 TD -(Spawns another mouse process, allowing the mouse to run even if it is currently)Tj -0 -1.2 TD -("tied up" under the current mouse process. This function is intended mainly to)Tj -T* -(be typed in at the Lisp executive when the user notices the mouse is busy.)Tj -/TT8 1 Tf --3.6 -2.206 TD --0.0001 Tc -(\(ALLOW.BUTTON.EVENTS\) )Tj -/TT6 1 Tf -13.2002 0 TD -0 Tc -( )Tj -/F1 1 Tf -22.7858 0 TD -([Function])Tj --32.386 -1.823 TD -(Performs a )Tj -/TT8 1 Tf -5.352 0 TD -(\(SPAWN.MOUSE\))Tj -/F1 1 Tf -7.8013 0 TD -( only when called underneath the mouse process.)Tj --13.1533 -1.323 TD -(This should be called \(once, on entry\) by any function that relies on)Tj -/TT8 1 Tf -0 -1.2 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -(s for completion, if there is any possibility that the function)Tj --7.8013 -1.323 TD -(will itself be invoked by a mouse function.)Tj --3.6 -2.2 TD -(It never hurts, at least logically, to call )Tj -/TT8 1 Tf -18.207 0 TD -(SPAWN.MOUSE)Tj -/F1 1 Tf -6.6011 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(ALLOW.BUTTON.EVENTS)Tj -/F1 1 Tf --26.3081 -1.323 TD -(needlessly, as the mouse process arranges to quietly kill itself if it returns from the)Tj -0 -1.2 TD -(users )Tj -/TT8 1 Tf -2.963 0 TD -(BUTTONEVENTFN)Tj -/F1 1 Tf -7.8013 0 TD -( and finds that another mouse process has sprung up in the)Tj --10.7643 -1.323 TD -(meantime. \(There is, of course, some computational expense.\))Tj -/TT4 1 Tf -14 0 0 14 54 341.58 Tm -(Process Status Window)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 337.99 m -534.01 337.99 l -S -BT -/F1 1 Tf -10 0 0 10 126 319.76 Tm -(The background menu command )Tj -/TT8 1 Tf -15.39 0 TD -(PSW)Tj -/F1 1 Tf -1.8003 0 TD -( \(see Chapter 28\) and the function)Tj -/TT8 1 Tf --17.1903 -1.323 TD -(PROCESS.STATUS.WINDOW)Tj -/F1 1 Tf -12.602 0 TD -( \(below\) create a "Process Status Window", that allows the)Tj --12.602 -1.323 TD -(user to examine and manipulate all of the existing processes:)Tj -ET -q -202 0 0 -184 229.01 279.03 cm -/Im1 Do -Q -BT -10 0 0 10 126 75.3 Tm -(The window consists of two menus. The top menu lists all the processes at the moment.)Tj -0 -1.2 TD -(Commands in the bottom menu operate on the process selected in the top menu \()Tj -/TT8 1 Tf -37.336 0 TD -(EXEC)Tj -/F1 1 Tf --37.336 -1.323 TD -(in the example above\). The commands are:)Tj -ET -endstream -endobj -62 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 63 0 R ->> -/XObject << -/Im1 64 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -66 0 obj -<< -/Length 3335 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-18)Tj -/TT8 1 Tf -10 0 0 10 181.32 568.26 Tm -(BT)Tj -/F1 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(BTV)Tj -/F1 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(BTV*)Tj -/F1 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(BTV!)Tj -/F1 1 Tf -4.1991 0 TD -(Displays a backtrace of the selected process.)Tj -/TT8 1 Tf --4.2 -2.023 TD -(WHO?)Tj -/F1 1 Tf -4.2 0 TD -(Changes the selection to the tty process, i.e., the one currently)Tj -0 -1.323 TD -(in control of the keyboard.)Tj -/TT8 1 Tf --4.587 -1.9 TD -(KBD)Tj -/TT11 1 Tf -1.8003 0 TD -<0040>Tj -/F1 1 Tf -2.7867 0 TD -(Associates the keyboard with the selected process; i.e., makes)Tj -0 -1.323 TD -(the selected process be the tty process.)Tj -/TT8 1 Tf --4.2 -1.9 TD -(INFO)Tj -/F1 1 Tf -4.2 0 TD -(If the selected process has an )Tj -/TT8 1 Tf -13.778 0 TD -(INFOHOOK)Tj -/F1 1 Tf -4.8008 0 TD -( property, calls it.)Tj --18.5788 -1.323 TD -(The hook may be a function, which is then applied to two)Tj -0 -1.2 TD -(arguments, the process and the button \()Tj -/TT8 1 Tf -18.464 0 TD -(LEFT)Tj -/F1 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(MIDDLE)Tj -/F1 1 Tf -3.6006 0 TD -(\) used)Tj --25.965 -1.323 TD -(to invoke )Tj -/TT8 1 Tf -4.501 0 TD -(INFO)Tj -/F1 1 Tf -2.4004 0 TD -(, or a form, which is simply )Tj -/TT8 1 Tf -12.798 0 TD -(EVAL)Tj -/F1 1 Tf -2.4004 0 TD -(ed. The)Tj -/TT8 1 Tf --22.0998 -1.323 TD -(APPLY)Tj -/F1 1 Tf -3.0005 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(EVAL)Tj -/F1 1 Tf -2.4004 0 TD -( happens in the context of the selected process,)Tj --6.9009 -1.323 TD -(using )Tj -/TT8 1 Tf -2.815 0 TD -(PROCESS.APPLY)Tj -/F1 1 Tf -7.8013 0 TD -( or )Tj -/TT8 1 Tf -1.5 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -(. The )Tj -/TT8 1 Tf -2.89 0 TD -(INFOHOOK)Tj -/F1 1 Tf --22.2074 -1.323 TD -(process property can be set using )Tj -/TT8 1 Tf -15.574 0 TD -(PROCESSPROP)Tj -/F1 1 Tf -6.6011 0 TD -( \(see the)Tj --22.1751 -1.323 TD -(Creating and Destroying Processes section above\).)Tj -/TT8 1 Tf --4.8 -1.9 TD -(BREAK)Tj -/F1 1 Tf -4.8 0 TD -(Enter a break under the selected process. This has the side)Tj -0 -1.323 TD -(effect of waking the process with the value returned from the)Tj -0 -1.2 TD -(break.)Tj -/TT8 1 Tf --4.2 -1.9 TD -(KILL)Tj -/F1 1 Tf -4.2 0 TD -(Deletes the selected process.)Tj -/TT8 1 Tf --6 -2.023 TD -(RESTART)Tj -/F1 1 Tf -6 0 TD -(Restarts the selected process.)Tj -/TT8 1 Tf --4.2 -2.023 TD -(WAKE)Tj -/F1 1 Tf -4.2 0 TD -(Wakes the selected process. Prompts for a value to wake it)Tj -0 -1.323 TD -(with \(see )Tj -/TT8 1 Tf -4.445 0 TD -(WAKE.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -(\).)Tj -/TT8 1 Tf --17.6462 -2.023 TD -(SUSPEND)Tj -/F1 1 Tf -6 0 TD -(Suspends the selected process; i.e., causes it to block)Tj -0 -1.323 TD -(indefinitely \(until explicitly woken\).)Tj -/TT8 1 Tf --12 -2.206 TD -(\(PROCESS.STATUS.WINDOW)Tj -/F1 1 Tf -13.2 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(WHERE)Tj -/TT8 1 Tf -3.944 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -17.3638 0 TD -([Function])Tj --32.386 -1.823 TD -(Puts up a process status window that provides several debugging commands for)Tj -0 -1.2 TD -(manipulating running processes. If the window is already up,)Tj -/TT8 1 Tf -T* -(PROCESS.STATUS.WINDOW)Tj -/F1 1 Tf -12.602 0 TD -( refreshes it. If )Tj -/F2 1 Tf -7.37 0 TD -(WHERE)Tj -/F1 1 Tf -3.944 0 TD -( is a position, the window is)Tj --23.9161 -1.323 TD -(placed in that position; otherwise, the user is prompted for a position.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT11 68 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -70 0 obj -<< -/Length 3812 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-19)Tj -/F1 1 Tf -10 0 0 10 162 568.26 Tm -(Currently, the process status window runs under the mouse process, like other)Tj -0 -1.2 TD -(menus, so if the mouse is unavailable \(e.g., a mouse function is performing an)Tj -T* -(extensive computation\), you may be unable to use the process status window)Tj -T* -(\(you can try )Tj -/TT8 1 Tf -5.796 0 TD -(SPAWN.MOUSE)Tj -/F1 1 Tf -6.6011 0 TD -(, of course\).)Tj -/TT4 1 Tf -14 0 0 14 54 485.85 Tm -(Non-Process Compatibility)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 482.26 m -534.01 482.26 l -S -BT -/F1 1 Tf -10 0 0 10 126 464.03 Tm -(This section describes some considerations for authors of programs that ran in the old)Tj -0 -1.2 TD -(single-process Interlisp-D environment, and now want to make sure they run properly)Tj -T* -(in the Multi-processing world. The biggest problem to watch out for is code that runs)Tj -T* -(underneath the mouse handler. Writers of mouse handler functions should remember)Tj -T* -(that in the process world the mouse handler runs in its own process, and hence \(a\) you)Tj -T* -(cannot depend on finding information on the stack \(stash it in the window instead\), and)Tj -T* -(\(b\) while your function is running, the mouse is not available \(if you have any non-)Tj -T* -(trivial computation to do, spawn a process to do it, notify one of your existing processes)Tj -T* -(to do it, or use )Tj -/TT8 1 Tf -6.853 0 TD -(PROCESS.EVAL)Tj -/F1 1 Tf -7.2012 0 TD -( to run it under some other process\).)Tj --14.0542 -2.023 TD -(The following functions are meaningful even if the process world is not on: )Tj -/TT8 1 Tf -34.613 0 TD -(BLOCK)Tj -/F1 1 Tf --34.613 -1.323 TD -(\(invokes the system background routine, which includes handling the mouse\);)Tj -/TT8 1 Tf -0 -1.2 TD -(TTY.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -(, )Tj -/TT8 1 Tf -0.556 0 TD -(THIS.PROCESS)Tj -/F1 1 Tf -7.2012 0 TD -( \(both return )Tj -/TT8 1 Tf -6.222 0 TD -(NIL)Tj -/F1 1 Tf -1.8003 0 TD -(\); and )Tj -/TT8 1 Tf -2.908 0 TD -(TTY.PROCESSP)Tj -/F1 1 Tf -7.2012 0 TD -( \(returns )Tj -/TT8 1 Tf -4.351 0 TD -(T)Tj -/F1 1 Tf -0.6001 0 TD -(, i.e.,)Tj --37.4408 -1.323 TD -(anyone is allowed to take tty input\). In addition, the following two functions exist in)Tj -0 -1.2 TD -(both worlds:)Tj -/TT8 1 Tf -0 -2.206 TD -(\(EVAL.AS.PROCESS)Tj -/F2 1 Tf -9.6 0 TD -( FORM)Tj -/TT8 1 Tf -3.408 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -21.7778 0 TD -([Function])Tj --32.386 -1.823 TD -(Same as )Tj -/TT8 1 Tf -4.15 0 TD -(\(ADD.PROCESS)Tj -/F3 1 Tf -7.2012 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FORM)Tj -/F3 1 Tf -3.13 0 TD -( )Tj -/TT8 1 Tf -0.287 0 TD -(RESTARTABLE NO\))Tj -/F1 1 Tf -10.2017 0 TD -(, when processes are)Tj --25.2568 -1.323 TD -(running, )Tj -/TT8 1 Tf -4.296 0 TD -(EVAL)Tj -/F1 1 Tf -2.4004 0 TD -( when not. This is highly recommended for mouse functions that)Tj --6.6964 -1.323 TD -(perform any non-trivial activity.)Tj -/TT8 1 Tf --3.6 -2.206 TD -(\(EVAL.IN.TTY.PROCESS)Tj -/F1 1 Tf -12 0 TD -( )Tj -/F2 1 Tf -0.278 0 TD -(FORM WAITFORRESULT)Tj -/TT8 1 Tf -12.613 0 TD -(\) )Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/F1 1 Tf -9.8948 0 TD -([Function])Tj --32.386 -1.823 TD -(Same as )Tj -/TT8 1 Tf -4.15 0 TD -(\(PROCESS.EVAL \(TTY.PROCESS\))Tj -/F3 1 Tf -16.2026 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(FORM)Tj -/F3 1 Tf -3.13 0 TD -( )Tj -/F2 1 Tf -0.287 0 TD -(WAITFORRESULT)Tj -/TT8 1 Tf -9.205 0 TD -(\))Tj -/F1 1 Tf -0.6001 0 TD -(, when)Tj --33.8617 -1.323 TD -(processes are running, )Tj -/TT8 1 Tf -10.703 0 TD -(EVAL)Tj -/F1 1 Tf -2.4004 0 TD -( when not.)Tj --16.7034 -2.323 TD -(Most of the process functions that do not take a process argument can be called even if)Tj -0 -1.2 TD -(processes arent running. )Tj -/TT8 1 Tf -12.185 0 TD -(ADD.PROCESS)Tj -/F1 1 Tf -6.6011 0 TD -( creates, but does not run, a new process \(it)Tj --18.7861 -1.323 TD -(runs when )Tj -/TT8 1 Tf -5.185 0 TD -(PROCESSWORLD)Tj -/F1 1 Tf -7.2012 0 TD -( is called\).)Tj -ET -endstream -endobj -71 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 15 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -64 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 202 -/Height 184 -/BitsPerComponent 1 -/ImageMask true -/Length 4785 ->> -stream -??????0?7?7?7oo{?7}﷿}7?7}w}?7}r}?7}?7}}?7}}}緻?7}}}o{?7?7?7?7?7o?}?7o7{?7߯nw?7߯mw/?7wWmw_?7wkwo?7Wgww?7o`ǎ a??????????۸<}݃w??7n~{ٿw??7n~{ٿo??~}տ_??z|Շ??yn~{Ϳw??n~{Ϳw??> -endobj -72 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -73 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -74 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -75 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -76 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -77 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBLEPK+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 78 0 R ->> -endobj -78 0 obj -<< -/Filter /FlateDecode -/Length 20020 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($CkE`KR8-r}`flh@ _4H#ZKS))T)Bȇآ"-P)@z&@?ޙ{f3 -uТoEfdq -P w,ed( ^GT, "- ౭eZEH; EMaOXRc X041%p>0L⪜5-P;6=Qq5_JN*uPiRnVU#^xŁjp֒5Wz4|2 R<^rG7_@1H!7/P.AOrn̂f ITy.~z-8zLfw'LLKcp&&DzL𣔎ј'3zLR'I7}123O_zI̼2ɾXIWw.c|=w>~0{13ZqމE2՚s J!34CXeR#6ql\mcOڸƵ6>e6cu6>kzbcٸm|9%~*ΌzQфI&i0肄mC0X QլhBZLWp+*%aoĕ }YRt=VƔѐ+%&ݖx|u?+nL7R\KI0hIuˮb$j\~b:QѶyhhA5Oh5 Auok+uhQ8G!RMS1 =Y nN"a{MJZc&ngi'ĖxʩJu z@iNqlH#q fFOt'ؚ`7j4d7#GVe제VduӨybhF"JPņzuZ: VӇiD[->0oE; -̈bqk2ւO;ho-Bk,Ye˗4KOxӲeɌ"Kv[Ded3^(Q]oH}HD`B4f0g{M!~w|j?Mio0JS3$/t,ByI^r[XV,%.Ӓi_o^-[f^&;z1omyOo~+e}Л:fk7M .]v rc55 |',-u9˩|Kuƪkq7zj}R˪FwwzkjX0ƒ5Ȃ,-;>i/RA#9enx6 [ 8Uݥg]?LĒ776*w6:*36>~IRZm;sNUovhU<)_ ɟοp'Qd[Ӛѕ}Hs/ڵn9n8 -*؜٭ݚ>;̬2 AdVey}q.IYsvn`EkU/FKFA]'um3\P@ lRZUCQ hK+D4Ju&{l>>=w[.j RJF, z܅墋^&LȤben'TJrg۬#E&K~3 -KTѩ9`aZhK?ٮ91R9s^Vc@"#82F1JxQ&|v4BGX5PJ3&hdqpXխL)_Ci3\nWܙfJ0=Y$ cUBFڞvy^y3CݪkB\&UP+;^,7wg`BO^P}#?)Q X>PKI`M:cbBO\,^7}`Wv(Y* *ɮlUZ: Ʈ$Cl=3:R@FqEP5gF'Qls8^Keske]į35:{ܛ=5.]]VjoU튁9Ҫu~)'?SOtUYvAS$dtىy\/l[ Sg,JGpyCbK`P -lTC[1O9ՐK- -cvU-!cY:`?w*@:Ki94ԫ$:˲}Ln''"Anq#d7:Cty oC¥j,=?0i2ʡBH1_/k驘bwy&!qnġD ~7^p$EX<1A=d_S{4D1Q#LUI7$ I z*( - }k.5ǽ]-U:[w0ng^Ş'ʖΝc5t/{RP -${ԶK@Xv|Dr XNc>= 茳'cAg݆#cW3-ոgVo9:лkIc(= CuW}WV\מ@ L4@FZ}6Ö亮K-Qƺ\[#wuhjd7nn.$#껝4 ( 6:4ʷ@*ozڅS ]ԁ62,2UAF!@NwK0FFE"W$# H3$nF2m?'KiCld-Run0Nk0:tsmƵa;)`0&x|ʞ \x -bxkVW ڠ>xއ p.7ĉ8L! s|RC%+D#!*i%;dy$&&}DPB-F4h}Φg.yHF[=M?g3,=6Mel 'V*keM;>d'ia6)d>|)Fo{>.?? ?x_y<'6c>o Udi}l߱clͷ -vq=G[̒4G,XWzZCK{m`'j>ߘ;r~5\2sOw)"猄YH%]/٘N|شEd^ʐlHf|UP;ڴ*&5ҥ.hjv-+ML\YG?H.aY*/k{hTV7VF{ZhC-erfWJS^xвϹWGF7iH0o.Y-J陾3dUNCgЙJ/ey¦m˃xr2n16#48FK_6`VĎ:2PK6,$dD2K`=ze\JA-f|ɚh0XV<,]*hZc6Oܥ_r&De1#{imcEGAɺdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\*~[S1?ףꧾqܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17 f<6cY1fjhH2VQOhX,OtW"A_4Y.WYqKA\\\ 5s_>7)K_E{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@֟V:hgĤ-љLkg@[c21v?^DQ;=?|ߏ]adUNuyʋ er #$BL,NƁJ11*Be,1_D2XmTbbC V|#VT8W X96c#!kE eTk\Q0GVy 1S3a>JFqtD ]-kw$4hH[uV"9>a*47JCo.") I_gE^pwi.JC% `_ԒT T/@$KWϻ̺*S֝8XHd'ϧeu27;r~V*kX P Ir#֮;lP}Q.cH3vP3ի DT>cm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /}<$A*פM̩ 07JuP?ǻ[% tJcIݓBB:]HIȨ@LdU<JYcS,Gn:ހ[V :(>>/+Ed7;D2V. 5@* -!Iȼ";=CYWr\&_Ġ@<qR2:MMg -^Vjki Ӎt+mCf~zYzӋtI]"l)O0rfRYfhmRLtHNJg JפԀ1dkffcvd,Md4ɲYe?d~Vf>v =(y0!K0#wB =B$z,[= 3"Po -̋窼33& ?plO'c_6o -L~\JEۼ7aDl~~rFl ? ?+4Ia_aAP3Z>"Le@Dx2ׯiK!2ns*Ɨh[o(˳Hזr;uIgGf mQ3AyxGV44]~ƻҢ'= aPn ] ;SC}M\+ Ӧ׌X Nz^I)AqFj`;srjG8>7@t7V<팽)Ho,Ŋ|_Lp&h;‘&t *#DIq0Z F 5i s0H#-8Emo\ZLۿ}hhAaAeT?V6 mmCUH3Ƅ\:m5%yEÉ{A]ӂSn2VrkHEІ \K*o_]RsED0'5{Ԝ=e33}/<3GphAeGIq?ڝy'm< u%symw궙UokفL$-ߞ@GPm>hO -f^ű4<ᐹ>GvϞ>nBJ DuoukKpIoUQdS5;lՖnh{V(XrtCmaO+Z%=yЎ~vxa4_3'ޓ.:Nq@X[[+J!R* mCٹ&ݩ[=SoO~\vk D "^tϕq]q\3\d5>IY(lַ3-Ά-mq_y܃}UB9z{Nwtq-Ϝ-]PZYXߜ]* ?2|k+]d}vgNB|ⶒȮB/3SQ - BɓYbD6킡<5꫉4&I+3ehUw|,8'iTlvmʬfYD3'3sGXSR9RP S`Pz l;a܅z2X+QO= `#B;v^8%TG\Eu -ۨއ8H6UDUEFTV3ȭ&[,%zz#$&o7y(͠~KC}UHo~VҹEK%>>B4B[hcO ?efcQk]ngլga^Vըf&~ W*Nfϲ. E/+A|QBW#x51uycDcܻ^d:B(F;g=݋*yGZ?ڥWRB2+c7* y(L&ڽ|4ͫ`ugq71uюd4\§& -LR$1$gV\A@v9Lp_D?WXUM&/I _7 /Ұ, I<U3Lxlca b `!iYl#BbS,?OE;y-o2g}LcA=KA<1&*CJՂl{0Sx)0(]GlGFEӿ22 yc@:'AvMcv{^i?8~.7&PyIs mEw`Ɛ{k^Q孢"|r< #W `@/7_/,x^x,d Y4 YAUKEI0h1R0q[eV/Sa[b~u:$s:(۠Їud}=񯙭xRdNK,r/ 4,20dpɲF}OaT!?ߒa`} }UQrGKyϸaؼT5eag{JdnY朅{`N5Eh"5yF\tZP'd=Ci-lgl6oGhas6Hr˗`mvˆAsnn-Q*x- v Tź2QTGPUl,>"OoR_Ρ #T; " n"YׁҶ\+Lę5#X.H*=$d`9l2q="Xpd1'Н[c\A$/:FW'G8sAmeJdcQC͠ẩd>ZeY"(ÿɯ82nwڷ3G.>D0GJJny@(( `DeNCr]!Q# UK}dRpƠ*U8nfwk'm@H̃|;;Fۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]zZ`0~(8BĪs_Z1N=l⠴ Jܭ [QNB*-({֩="E߻՞CtšTz@Zㅭ}cNF=(nd*x=a-~^9dbN)#O`Π}7c +гHKqba9B@3ZB5-&XV qofNSS 6[+Ov00tVWxԍ&,5F5aYW(p "k-i -Iw NZ~ XO߅mg%Ф9vim# -Bз7J4÷<<y sX>?_‹[=4-x7B0F%?"2yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450kGqTԪ1&>cm|cE;?#j<;;?Nӓszv0 7Kd)lb\ճl=Ķ61vO/_|_工pIVi4F*H"QIP:"\6 r%;KrH~]^/{? M)J?GJ2YyYQ+wU+GYs_%SeU[/YT3LuTruG#\pf&QQJEKdYA-(WUpA 1 H"I -h=ItA:uVy4WOaPb@7FB!=DpQ>J0"u# >2A\C`PFnF`TQĬGlCIo ]Ojp)D"Tp8D} I%$*`Y QBa:>@Hvu{gK|>D7 s -`6Hxr=tM6u2{U =p燢=kuVZZvݾVTցu'<ֱ7Wz9[;"G_!/гcc:JuxqI #K?%Ż ~b|iVȴ^9Sgf$jǎ --c_+ jeu[5 G%7飯k#`Fۥ{[sGfXXt:@G-~^te3啻:7?s"_֣ܵJ&/w}9{_;_3Ns# k_]WUoى,ky0şkX[΄j@Nw W/BE7nyyGĥֶ4"s/- JB!^kίNlCܔ%;ey [`xI*Rr"UB Q/jeYwuW_>x0ô6H\c-Ug,'MUcʳܬ|f ˸.fs.Ȋ3 .8cLmk}ۀ'U]W]!hrwD88ɢnKJO$M77vG){u½8Wfx%pZ zwI+>> (z(b!C$ܵV{ @6 <oM*7ey͂`TA-,k%p1yg5Ѥ7#$t2 %Nrh2L IJJIy"d>fmd!%Kj !+HYMb0A8&a^x\%7H;*N4>b2MtͤvGbEt*Fg`XNaXCet]g6 s(ы2F7h;E;i0 egF(֋a,YX:qJM%.`fѤ\6ΩvYRݚQ|Wh@䱒'$Ǔ>Hy6:DɱQ8މUB1s~P# ;'j?؟؂6ժUr}!VXjՆ#|gKj\WMƁOTx]O;cYlػk!pݏׅʂt¬#5psGjqGjlSc햎OʮLk7z-)-* (vr1wD;kiFbC 8XOG~ -99ỳ5_p'[g`7JX#,*ػ.M6 umgPaeAq)$mzo%iѴMoNsi4i~ܤxAqT'YEeaADtXpayA\a޹ b9P]|H=8|N%jS_=`vJ݇D߿SBʿL@2PRWzA_yJe{W!KP:_z{QS|Bq7(=*g$d&~:ۥ73R׈w˯SYb;TBpظVzH>O~ݽ#6 %zǕP*o{|]PRya/!G?9.oOwp1nO'侶vոaʳW|_dz6[x Nc܈SqVcZ\#dӌX}I3S7~"GgrG3L<㍱G -Иt Gb"郴!VIXjbUnQ˲*kF cS27mXAU+ f^Yìzcc'ZU9MJs/?x~ӝgl??:{6>k~~/+‚ٮ,j1V$*EK"Q|g4QAӈ(FԤi|`|w{gt&t:?;s{O ^=;a ߗtHX?%6:3Ϧ{D;;,[>f?&M4l״$dnUfK[XӖg&L"o)>_X` -I;sIf dow^ -SSsyn}w/;F~gZ5u?hZ`tá֯O>Mޘw2|M}Dϛsݒ7c/6շͮSD:~2eV櫕c^4^܁mGkr$_Xq87.3ԃF2_We=dx_yai;V/mI7v+T|Wf|)Zv+׵M-1~HKӥQS.kO]xD/qXbוΝ}fU{3YpkPΨUX5P3R^t22MoL)7E\R1{`ZYigF6)#Q[[neGoA%B"RJ&L`*P)MMsACȟHg׸SSHZ(}P/Oh7dA4ƙyFBӞ^GPoΆɩ٦ȓTd%YR2C%Z`7/|w;mvM|rހ|IoLC -^/;`;-x 5xޥYȹe%BnShNA> 6ǩ%&<~QxzXZə-5\[?UHU᣾1?%$mvT;QSP>QoG{iNDO{--|B,A2p71+`~y;{)4%Jhr=i;m#3C^>@m b&z zֿkXWNiú\5}ewiV2p},!T)@'Ζ|X-y{U"3sGNXdЈh5 .('~T4|sO\ga5zr)42ͥL\X22mĺ ~&42N8S)`28@OF s$p"L'`Cƃq`,8vG:Wѐ@3ٌ<5#@זy y8 -Y'S00 }-rء HL?2}$/@3rܳ~/Jy:s=-t}ȍnsC4 -Y:VPuAt9CjA't5T*(E2@l)вSXǭg?4!I[Z,e~27uKJby;6_Gh'vK\**vEsղ݉ZNvx/.뉫/' o~l"/7-/7k>/<'-o_=m=KsR` T8Yʉ8ĂYDa,G0;Xz?!E4CqQM -| iyb8_ևYsnInTvazF:*I-9J"N7nw лSԝ%{w_n8?3O=,Iɒk{!UZ I) 'GRR(JxIwa&ndru3%M@XJW<2>ޭH2Zվ?^Ҭ[i{n~T"Lꓨm8hͩGV%Q/=lšo,i,k֌9?|=?Olߠ9(38<=:,M//X0F\Sc4Mi.%W,9> -endobj -80 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -81 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 151 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 481 333 606 333 606 606 -0 606 204 556 389 1000 500 500 333 1000 630 259 1000 606 611 606 -606 204 204 389 389 606 556 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 79 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 151 -/Widths [278 333 400 556 556 833 852 278 333 333 500 606 278 333 278 606 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -747 704 722 722 778 722 667 778 833 407 611 741 667 944 815 778 -667 778 741 667 685 815 704 926 704 685 667 333 606 333 606 500 -333 574 556 444 611 444 333 537 611 333 315 556 333 889 611 500 -574 556 444 444 352 611 519 778 500 500 463 333 606 333 606 606 -0 606 204 556 389 1000 500 500 333 1000 667 333 981 606 667 606 -606 204 204 389 389 606 500 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 80 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 146 -/Widths [287 296 333 574 574 833 852 241 389 389 500 606 278 333 278 278 -574 574 574 574 574 574 574 574 574 574 278 278 606 606 606 500 -747 759 778 778 833 759 722 833 870 444 648 815 722 981 833 833 -759 833 815 667 722 833 759 981 722 722 667 389 606 389 606 500 -333 611 648 556 667 574 389 611 685 370 352 667 352 963 685 611 -667 648 519 500 426 685 611 889 611 611 537 389 606 389 606 606 -0 606 241 574 481 1000 500 500 333 1000 667 333 1000 606 667 606 -606 241 241 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 81 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 72 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 0 778 722 278 0 722 0 833 722 778 -667 0 722 667 611 0 0 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 73 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 74 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 0 0 0 0 600 0 600 600 600 0 600 0 600 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 600 0 0 0 0 600 0 0 600 0 600 600 -0 0 0 0 600 600 0 0 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 75 0 R ->> -endobj -63 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 151 -/LastChar 151 -/Widths [600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 76 0 R ->> -endobj -68 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBLEPK+Symbol -/Encoding /Identity-H -/DescendantFonts [ 82 0 R ] -/ToUnicode 83 0 R ->> -endobj -82 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBLEPK+Symbol -/FontDescriptor 77 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -83 0 obj -<< -/Filter /FlateDecode -/Length 218 ->> -stream -HTPN0 91$nAK8D {.qK$Dn:IJ{lyi[ acᆣ'8omN&nN- Z<Z?+;dOcgF%o(hp8yy1LkD^E64"JUs$~n2,J?F/r݈]H ߉!Gsj -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -25 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 27 0 R -/Contents 26 0 R ->> -endobj -28 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 30 0 R -/Contents 29 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -37 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 39 0 R -/Contents 38 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -48 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 50 0 R -/Contents 49 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -57 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 59 0 R -/Contents 58 0 R ->> -endobj -60 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 62 0 R -/Contents 61 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -69 0 obj -<< -/Type /Page -/Parent 44 0 R -/Resources 71 0 R -/Contents 70 0 R ->> -endobj -84 0 obj -<< -/S /D ->> -endobj -85 0 obj -<< -/Nums [0 84 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 16 0 R 19 0 R 22 0 R 25 0 R 28 0 R 31 0 R 34 0 R 37 0 R] -/Count 10 -/Parent 43 0 R ->> -endobj -44 0 obj -<< -/Type /Pages -/Kids [40 0 R 45 0 R 48 0 R 51 0 R 54 0 R 57 0 R 60 0 R 65 0 R 69 0 R] -/Count 9 -/Parent 43 0 R ->> -endobj -43 0 obj -<< -/Type /Pages -/Kids [11 0 R 44 0 R ] -/Count 19 -/MediaBox [0 0 612 792] ->> -endobj -86 0 obj -<< -/CreationDate (D:20210202102707-06'00') -/ModDate (D:20210202102707-06'00') -/Producer (Apple pstopdf) ->> -endobj -87 0 obj -<< -/Type /Catalog -/Pages 43 0 R -/PageLabels 85 0 R ->> -endobj -xref -0 88 -0000000000 65535 f -0000111874 00000 n -0000000016 00000 n -0000003537 00000 n -0000107806 00000 n -0000108467 00000 n -0000109768 00000 n -0000109979 00000 n -0000110417 00000 n -0000110582 00000 n -0000085745 00000 n -0000113535 00000 n -0000111955 00000 n -0000003686 00000 n -0000008191 00000 n -0000109128 00000 n -0000112039 00000 n -0000008352 00000 n -0000012343 00000 n -0000112123 00000 n -0000012482 00000 n -0000017136 00000 n -0000112207 00000 n -0000017275 00000 n -0000021939 00000 n -0000112291 00000 n -0000022089 00000 n -0000027333 00000 n -0000112375 00000 n -0000027483 00000 n -0000032260 00000 n -0000112459 00000 n -0000032421 00000 n -0000036591 00000 n -0000112543 00000 n -0000036741 00000 n -0000042172 00000 n -0000112627 00000 n -0000042322 00000 n -0000042694 00000 n -0000112711 00000 n -0000042812 00000 n -0000047168 00000 n -0000113802 00000 n -0000113672 00000 n -0000112795 00000 n -0000047329 00000 n -0000052227 00000 n -0000112879 00000 n -0000052377 00000 n -0000056950 00000 n -0000112963 00000 n -0000057100 00000 n -0000062226 00000 n -0000113047 00000 n -0000062376 00000 n -0000066749 00000 n -0000113131 00000 n -0000066888 00000 n -0000070367 00000 n -0000113215 00000 n -0000070506 00000 n -0000073063 00000 n -0000111063 00000 n -0000080817 00000 n -0000113299 00000 n -0000073251 00000 n -0000076639 00000 n -0000111237 00000 n -0000113383 00000 n -0000076791 00000 n -0000080656 00000 n -0000085886 00000 n -0000086083 00000 n -0000086289 00000 n -0000086484 00000 n -0000086675 00000 n -0000086876 00000 n -0000087066 00000 n -0000107176 00000 n -0000107384 00000 n -0000107594 00000 n -0000111380 00000 n -0000111583 00000 n -0000113467 00000 n -0000113495 00000 n -0000113894 00000 n -0000114017 00000 n -trailer -<< -/Size 88 -/Root 87 0 R -/Info 86 0 R -/ID [<6854026c824afb4fabf3c5f86b373879><6854026c824afb4fabf3c5f86b373879>] ->> -startxref -114087 -%%EOF diff --git a/docs/medley-irm/23-SSTREAMS.pdf b/docs/medley-irm/23-SSTREAMS.pdf deleted file mode 100644 index 6956962b..00000000 --- a/docs/medley-irm/23-SSTREAMS.pdf +++ /dev/null @@ -1,10232 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5746 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(23. STREAMS AND FILES)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 564.99 m -510.01 564.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 542.54 Tm -0.1556 Tw -[(A stream is an object that provides an interface to a physical or logical device. The stream object)]TJ -0 -1.2222 TD -0.1244 Tw -[(contains local data and methods that operate on the stream object. Medleys general-purpose I/O)]TJ -T* -0.0222 Tw -[(functions take a stream as one of their arguments. Not every device is capable of implementing every)]TJ -T* -0.0456 Tw -[(I/O operation, while some devices offer special functions for that device alone. Such restrictions and)]TJ -T* -0.0211 Tw -(extensions are noted in the documentation of each device. The majority of the streams used in Medley)Tj -T* -0 Tw -(fall into two categories: file streams and image streams.)Tj -0 -2 TD -0.0622 Tw -(A file is a sequence of data stored on some device that allows the data to be retrieved at a later time.)Tj -0 -1.2222 TD -0.06 Tw -[(Files are identified by a name specifying their storage devices. Input or output to a file is performed)]TJ -T* -0.2722 Tw -(through a stream to the file, using )Tj -/TT8 1 Tf -17.1121 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.2722 Tw -[( \(below\). In addition, there are functions that)]TJ --23.1131 -1.2889 TD -0 Tw -(manipulate the files themselves, rather than their data content.)Tj -0 -2 TD -0.0778 Tw -[(An image stream is an output stream to a display device, such as the display screen or a printer. In)]TJ -0 -1.2222 TD -0.2967 Tw -(addition to the standard output operations, an image stream implements a variety of graphics)Tj -T* -0.2222 Tw -[(operations, such as drawing lines and displaying characters in multiple fonts. Unlike a file, the)]TJ -T* -0 Tw -("content" of an image stream cannot be retrieved. Image streams are described in Chapter 26.)Tj -0 -2 TD -0.0933 Tw -(This chapter describes operations specific to file devices: how to name files, how to open streams to)Tj -0 -1.2222 TD -0 Tw -(files, and how to manipulate files on their devices.)Tj -/TT4 1 Tf -10 0 0 10 54 328.6 Tm -(Opening and Closing File Streams)Tj -ET -1 w -54.01 325.89 m -510.01 325.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 311.94 Tm -(To perform input from or output to a file, you must create a stream to the file, using )Tj -/TT8 1 Tf -37.2432 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(:)Tj -/TT8 1 Tf --40.5775 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OPENSTREAM)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT14 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RECOG)Tj -/TT14 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PARAMETERS )Tj -/TT8 1 Tf -7.2012 0 TD -(\) )Tj -/TT16 1 Tf -10 0 0 10 330.1764 289 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 289 Tm -([Function])Tj --35.4033 -1.8444 TD -0.02 Tw -(Opens and returns a stream for the file specified by )Tj -/TT12 1 Tf -23.0931 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -(, a file name. )Tj -/TT12 1 Tf -6.1879 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -[( can be either)]TJ --34.0817 -1.2889 TD -0.0467 Tw -[(a string or a symbol. The syntax and manipulation of file names is described at length in)]TJ -0 -1.2222 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.7072 0 TD -(FILENAMES)Tj -/TT6 1 Tf -5.4009 0 TD -0.07 Tw -[( section below. Incomplete file names are interpreted with respect to the)]TJ --7.1081 -1.2889 TD -0 Tw -(connected directory \(below\).)Tj -/TT12 1 Tf -0 -2 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.2422 Tw -[( specifies the recognition mode of )]TJ -/TT12 1 Tf -16.5417 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2422 Tw -[( \(below\). If )]TJ -/TT12 1 Tf -6.2579 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.4922 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.4922 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2422 Tw -(, it defaults)Tj --34.5859 -1.2889 TD -0 Tw -(according to the value of )Tj -/TT12 1 Tf -11.1948 0 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT12 1 Tf --14.7954 -2.0667 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( specifies the "access rights" to be used when opening the file. Possible values are:)Tj -/TT8 1 Tf --2.6006 -2.2156 TD -(INPUT)Tj -/TT6 1 Tf -4.3333 0 TD -0.0656 Tw -[(Only input operations are permitted on the already existing file. Starts)]TJ -0 -1.2889 TD -0 Tw -(reading at the beginning of the file. )Tj -/TT12 1 Tf -16.0103 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( defaults to )Tj -/TT8 1 Tf -5.189 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --30.9333 -2.2156 TD -(OUTPUT)Tj -/TT6 1 Tf -4.9333 0 TD -0.0344 Tw -[(Only output operations are permitted on the initially empty file. Starts)]TJ -0 -1.2889 TD -0.0122 Tw -[(writing at the beginning of the file. While the file is open, other users or)]TJ -0 -1.2222 TD -0.0667 Tw -(processes are unable to open the file for either input or output. )Tj -/TT12 1 Tf -29.0014 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf --29.0014 -1.2889 TD -(defaults to )Tj -/TT8 1 Tf -4.939 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --10.4726 -2.2156 TD -(BOTH)Tj -/TT6 1 Tf -3.7333 0 TD -0.27 Tw -[(Both input and output operations are permitted on the file. Starts)]TJ -0 -1.2889 TD -0.2778 Tw -(reading or writing at the beginning of the file. )Tj -/TT12 1 Tf -23.5043 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.2778 Tw -[( defaults to)]TJ -/TT8 1 Tf --26.5048 -1.2889 TD -0 Tw -(OLD/NEW)Tj -/TT6 1 Tf -4.2007 0 TD -0.1756 Tw -(. )Tj -/TT12 1 Tf -1.1011 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.4256 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.4256 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -0.1756 Tw -[( implies random access \(Chapter 25\), and)]TJ --12.754 -1.4378 TD -0 Tw -(may not be possible for files on some devices)Tj -/TT16 1 Tf -10 0 0 10 352.9014 48.24 Tm -(.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 7184 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 85.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-2)Tj -/TT6 1 Tf -1.1667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 177.6 568.2 Tm -(APPEND)Tj -/TT6 1 Tf -4.9333 0 TD -0.2633 Tw -[(Only sequential output operations are permitted on the file. Starts)]TJ -0 -1.2889 TD -0.0956 Tw -(writing at the end of the file. )Tj -/TT12 1 Tf -13.8352 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.0956 Tw -[( defaults to )]TJ -/TT8 1 Tf -5.4756 0 TD -0 Tw -(OLD/NEW)Tj -/TT6 1 Tf -4.2007 0 TD -0.0956 Tw -(. )Tj -/TT12 1 Tf -0.9411 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.3456 0 TD -(=)Tj --31.3993 -1.2889 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -( may not be allowed for files on some devices.)Tj --6.2673 -2.0667 TD -(Note:)Tj -/TT12 1 Tf -3.3333 0 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.3 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.05 Tw -[( implies that you intend to write a new or different)]TJ --8.4013 -1.2889 TD -0.0267 Tw -(file, even if a version number was specified and the corresponding file)Tj -0 -1.2222 TD -0.0022 Tw -(already exists. Any previous contents of the file are discarded, and the)Tj -T* -0.0256 Tw -(file is empty immediately after the )Tj -/TT8 1 Tf -15.6177 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0256 Tw -[(. If you want to write)]TJ --21.6187 -1.2889 TD -0.1233 Tw -(on an already existing file while preserving the old contents, the file)Tj -0 -1.2222 TD -0 Tw -(must be opened for access )Tj -/TT8 1 Tf -11.8042 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT12 1 Tf --25.2461 -2.0667 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.1278 Tw -[( is a list of pairs )]TJ -/TT8 1 Tf -7.9034 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ATTRIB)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.9068 0 TD -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1278 Tw -(, where )Tj -/TT12 1 Tf -3.7746 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.1278 Tw -[( is a file attribute \(see)]TJ -/TT8 1 Tf --29.9876 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0078 Tw -[( below\). A non-list )]TJ -/TT12 1 Tf -8.7279 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( in )]TJ -/TT12 1 Tf -1.3886 0 TD -0 Tw -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.0078 Tw -[( is treated as the pair )]TJ -/TT8 1 Tf -9.4759 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ATTRIB)Tj -/TT8 1 Tf --36.3951 -1.2889 TD -(T\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0489 Tw -[(. Generally speaking, attributes that belong to the permanent file \(e.g., )]TJ -/TT8 1 Tf -31.9763 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0489 Tw -(\) can only)Tj --35.5769 -1.2889 TD -0.0756 Tw -(be set when creating a new file, while attributes that belong only to a particular opening)Tj -0 -1.2222 TD -0.1056 Tw -(of a file \(e.g., )Tj -/TT8 1 Tf -6.3133 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.1056 Tw -(\) can be set on any call to )Tj -/TT8 1 Tf -12.1286 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1056 Tw -[(. Not all devices)]TJ --32.2442 -1.2889 TD -0 Tw -(honor all attributes; those not recognized by a particular device are simply ignored.)Tj -0 -2 TD -0.2267 Tw -(In addition to the attributes permitted by )Tj -/TT8 1 Tf -19.9968 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2267 Tw -(, the following attributes are)Tj --26.5979 -1.2889 TD -0 Tw -(accepted by )Tj -/TT8 1 Tf -5.4932 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -( as values of )Tj -/TT12 1 Tf -5.6646 0 TD -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -( in its )Tj -/TT12 1 Tf -2.6641 0 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -( argument:)Tj -/TT8 1 Tf --35.6243 -2.0667 TD -(DONT.CHANGE.DATE)Tj -/TT6 1 Tf -11.5333 0 TD -(If )Tj -/TT12 1 Tf -0.9299 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.01 Tw -[( is non-)]TJ -/TT8 1 Tf -3.2778 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.01 Tw -(, the files creation date is not changed when the file)Tj --9.0085 -1.2889 TD -0.0289 Tw -[(is opened. This option is meaningful only for old files opened for )]TJ -/TT8 1 Tf -29.5914 0 TD -0 Tw -(BOTH)Tj -/TT6 1 Tf --29.5914 -1.2889 TD -0.0511 Tw -[(access. You should use this only for specialized applications where the)]TJ -0 -1.2222 TD -0.0267 Tw -(caller does not want the file system to believe the files content has been)Tj -T* -0 Tw -(changed.)Tj -/TT8 1 Tf --7.3333 -2.1489 TD -(SEQUENTIAL)Tj -/TT6 1 Tf -7.3333 0 TD -(If )Tj -/TT12 1 Tf -1.3044 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.3844 Tw -[( is non-)]TJ -/TT8 1 Tf -4.0267 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3844 Tw -(, this opening of the file need support only)Tj --10.1318 -1.2889 TD -0.0478 Tw -(sequential access; i.e., the caller intends never to use )Tj -/TT8 1 Tf -23.6595 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.0478 Tw -[(. For)]TJ --29.6605 -1.2889 TD -0.26 Tw -(some devices, sequential access to files is much more efficient than)Tj -0 -1.2222 TD -0.02 Tw -[(random access. Note that the device may choose to ignore this attribute)]TJ -T* -0.1533 Tw -[(and still open the file in a manner that permits random access. Also)]TJ -T* -0 Tw -(note that this attribute does not make sense with )Tj -/TT12 1 Tf -21.6929 0 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --34.1273 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.0966 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[( is not recognized by the file system, )]TJ -/TT8 1 Tf -17.6975 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1767 Tw -[( causes the error )]TJ -/TT8 1 Tf -8.1774 0 TD -0 Tw -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.4267 0 TD -(NOT)Tj --38.1999 -1.2889 TD -(FOUND)Tj -/TT6 1 Tf -3.0005 0 TD -0.0289 Tw -[(. Ordinarily, this error is intercepted via an entry on )]TJ -/TT8 1 Tf -23.7314 0 TD -0 Tw -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.0289 Tw -[( \(Chapter 24\),)]TJ --33.933 -1.2889 TD -0.41 Tw -(which causes )Tj -/TT8 1 Tf -6.9264 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.41 Tw -[( \(see the Searching File Directories below\) to be called.)]TJ -/TT8 1 Tf --12.3273 -1.2889 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0089 Tw -[( searches alternate directories and possibly attempts spelling correction on the)]TJ --5.4009 -1.2889 TD -0.0644 Tw -[(file name. Only if )]TJ -/TT8 1 Tf -8.4995 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0644 Tw -[( is unsuccessful will the )]TJ -/TT8 1 Tf -11.0346 0 TD -0.1544 Tw -(FILE NOT FOUND)Tj -/TT6 1 Tf -8.7103 0 TD -0.0644 Tw -[( error actually)]TJ --33.6452 -1.2889 TD -0 Tw -(occur.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.1099 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.19 Tw -[( exists but cannot be opened, )]TJ -/TT8 1 Tf -14.1424 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.19 Tw -[( causes one of several other errors:)]TJ -/TT8 1 Tf --23.6537 -1.2889 TD -0.2289 Tw -(FILE WONT OPEN)Tj -/TT6 1 Tf -9.4592 0 TD -0.0956 Tw -[( if the file is already opened for conflicting access by someone else;)]TJ -/TT8 1 Tf --9.4592 -1.2889 TD -0.3033 Tw -(PROTECTION VIOLATION)Tj -/TT6 1 Tf -12.3053 0 TD -0.1267 Tw -[( if the file is protected against the operation; )]TJ -/TT8 1 Tf -20.7997 0 TD -0.3033 Tw -(FILE SYSTEM)Tj --33.105 -1.2889 TD -0 Tw -(RESOURCES EXCEEDED)Tj -/TT6 1 Tf -10.8018 0 TD -( if there is no more room in the file system.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -19 0 obj -<< -/Length 6362 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-3)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT8 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.2493 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 169.0544 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes )Tj -/TT12 1 Tf -3.1559 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( and returns its full file name. Generates an error, )]TJ -/TT8 1 Tf -22.6299 0 TD -0.0811 Tw -(FILE NOT OPEN)Tj -/TT6 1 Tf -7.9635 0 TD -0.0333 Tw -(, if )Tj -/TT12 1 Tf -1.4407 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf --37.5903 -1.2889 TD -0.2289 Tw -[(does not designate an open stream. After closing a stream, no further input/output)]TJ -0 -1.2222 TD -0 Tw -(operations are permitted on it.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.1199 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2 Tw -[( is )]TJ -/TT8 1 Tf -1.6148 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2 Tw -(, it is defaulted to the primary input stream if that is not the terminal)Tj --6.9354 -1.2889 TD -0.2189 Tw -[(stream, or else the primary output stream if that is not the terminal stream. If both)]TJ -0 -1.2222 TD -0.0078 Tw -(primary input and output streams are the terminal input/output streams, )Tj -/TT8 1 Tf -32.9347 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( returns)]TJ -/TT8 1 Tf --36.5353 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1878 Tw -[(. If )]TJ -/TT8 1 Tf -2.2333 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1878 Tw -[( closes either the primary input stream or the primary output stream)]TJ --7.6341 -1.2889 TD -0.0289 Tw -(\(either explicitly or in the )Tj -/TT12 1 Tf -11.5673 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.2789 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.2789 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -[( case\), it resets the primary stream for that direction)]TJ --16.9259 -1.2889 TD -0.0711 Tw -[(to be the corresponding terminal stream. See Chapter 25 for information on the primary)]TJ -0 -1.2222 TD -0 Tw -(input/output streams.)Tj -/TT8 1 Tf -0 -2 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0001 Tc -0.0043 Tw -( \(below\) allows you to "advise" )Tj -/TT8 1 Tf -13.9705 0 TD -0 Tc -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0001 Tc -0.0043 Tw -( to perform various operations when a)Tj --22.972 -1.2889 TD -0 Tc -0 Tw -(file is closed.)Tj -0 -2 TD -0.2222 Tw -(Because of buffering, the contents of a file open for output are not guaranteed to be)Tj -0 -1.2222 TD -0.1678 Tw -(written to the actual physical file device until )Tj -/TT8 1 Tf -21.5439 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1678 Tw -[( is called. Buffered data can be)]TJ --25.1445 -1.2889 TD -0.06 Tw -(forced out to a file without closing the file by using the function )Tj -/TT8 1 Tf -29.1618 0 TD -0 Tw -(FORCEOUTPUT)Tj -/TT6 1 Tf -6.6011 0 TD -0.06 Tw -[( \(Chapter)]TJ --35.7629 -1.2889 TD -0 Tw -(25\).)Tj -0 -2 TD -0.0467 Tw -[(Some network file devices perform their transactions in the background. As a result, it is)]TJ -0 -1.2222 TD -0.1122 Tw -(possible for a file to be closed by )Tj -/TT8 1 Tf -15.4827 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1122 Tw -[( and yet not be "fully" closed for a small time)]TJ --19.0833 -1.2889 TD -0.0656 Tw -[(period afterward. During this time the file appears to be busy and cannot be opened for)]TJ -0 -1.2222 TD -0 Tw -(conflicting access by others.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CLOSEF?)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 177.6053 286.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 286.86 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes )Tj -/TT12 1 Tf -3.2992 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[( if it is open, returning the value of )]TJ -/TT8 1 Tf -17.1676 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1767 Tw -(; otherwise does nothing and)Tj --26.4678 -1.2889 TD -0 Tw -(returns )Tj -/TT8 1 Tf -3.4541 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --10.5877 -2.0667 TD -0.0144 Tw -(In the present implementation of Medley, all open streams to files are kept in a registry of "open files".)Tj -0 -1.2222 TD -0.2211 Tw -(This registry does not include nameless streams, such as string streams \(below\), display streams)Tj -T* -0.0067 Tw -(\(Chapter 28\), and the terminal input and output streams; nor streams explicitly hidden from you, such)Tj -T* -0.0855 Tw -[(as dribble streams \(Chapter 30\). This registry may not persist in future implementations of Medley,)]TJ -T* -0 Tw -(but at the present time it is accessible by the following two functions:)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OPENP)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -(\) )Tj -/TT16 1 Tf -10 0 0 10 206.8614 173.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 173.72 Tm -([Function])Tj -/TT12 1 Tf --35.4033 -1.8444 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( is an access mode for a stream opening \(see )Tj -/TT8 1 Tf -19.6626 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(\), or )Tj -/TT8 1 Tf -2.0239 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( for any access.)Tj --33.0884 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.031 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1111 Tw -[( is a stream, returns its full name if it is open for the specified access, otherwise)]TJ -/TT8 1 Tf --3.4314 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --1.8003 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.2066 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[( is a file name \(a symbol\), )]TJ -/TT12 1 Tf -13.4783 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[( is processed according to the rules of file)]TJ --19.4857 -1.2889 TD -0.0389 Tw -[(recognition \(below\). If a stream open to a file by that name is registered and open for the)]TJ -0 -1.2222 TD -0.0256 Tw -[(specified access, then the files full name is returned. If the file name is not recognized, or)]TJ -T* -0 Tw -(no stream is open to the file with the specified access, )Tj -/TT8 1 Tf -23.7983 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( is returned.)Tj --25.5986 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.0066 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( is )]TJ -/TT8 1 Tf -1.3882 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -(, returns a list of the full names of all registered streams that are open for)Tj --6.5955 -1.2889 TD -0 Tw -(the specified access.)Tj -ET -endstream -endobj -20 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -22 0 obj -<< -/Length 5822 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 85.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-4)Tj -/TT6 1 Tf -1.1667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CLOSEALL)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(ALLFLG)Tj -/TT8 1 Tf -3.6006 0 TD -(\) )Tj -/TT16 1 Tf -10 0 0 10 247.2079 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes all streams in the value of \()Tj -/TT8 1 Tf -15.0454 0 TD -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -(\). Returns a list of the files closed.)Tj -/TT8 1 Tf --18.0459 -2.0667 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0078 Tw -[( \(below\) allows certain files to be "protected" from )]TJ -/TT8 1 Tf -22.4201 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0078 Tw -[(. If )]TJ -/TT12 1 Tf -1.6933 0 TD -0 Tw -(ALLFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( is )]TJ -/TT8 1 Tf -1.2304 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj --39.7461 -1.2889 TD -(all files, including those protected by )Tj -/TT8 1 Tf -16.5742 0 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -(, are closed.)Tj -/TT4 1 Tf -10 0 0 10 102 493.46 Tm -(File Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 490.75 m -558.01 490.75 l -S -BT -/TT6 1 Tf -9 0 0 9 126 476.8 Tm -0.1222 Tw -(A file name in Medley is a string or symbol whose characters specify a "path" to the actual file: on)Tj -0 -1.2222 TD -0.1589 Tw -[(what host or device the file resides, in which directory, and so forth. Because Medley supports a)]TJ -T* -0.0189 Tw -[(variety of non-local file devices, parts of the path could be device-dependent. However, it is desirable)]TJ -T* -0.2044 Tw -[(for programs to be able to manipulate file names in a device-independent manner. To this end,)]TJ -T* -0.0244 Tw -(Medley specifies a uniform file name syntax over all devices; the functions that perform the actual file)Tj -T* -0.2622 Tw -(manipulation for a particular device are responsible for any translation to that devices naming)Tj -T* -0 Tw -(conventions.)Tj -0 -2 TD -0.0211 Tw -(A file name is composed of a collection of )Tj -/TT14 1 Tf -18.8013 0 TD -0 Tw -(fields)Tj -/TT6 1 Tf -2.1118 0 TD -0.0211 Tw -[(, some of which have specific meanings. The functions)]TJ --20.9131 -1.2222 TD -0.1333 Tw -(described below refer to each field by a )Tj -/TT14 1 Tf -18.6287 0 TD -(field name)Tj -/TT6 1 Tf -4.273 0 TD -(, a literal atom from among the following: )Tj -/TT8 1 Tf -19.7757 0 TD -0 Tw -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj -/TT8 1 Tf --45.0777 -1.2889 TD -(DEVICE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.7167 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.7167 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.7167 0 TD -(EXTENSION)Tj -/TT6 1 Tf -5.4009 0 TD -0.2167 Tw -(, and )Tj -/TT8 1 Tf -2.8762 0 TD -0 Tw -(VERSION)Tj -/TT6 1 Tf -4.2007 0 TD -0.2167 Tw -[(. The standard syntax for a file name is)]TJ -/TT8 1 Tf --26.0296 -1.2889 TD -0 Tw -({HOST}DEVICE:NAME.EXTENSION;VERSION)Tj -/TT6 1 Tf -27.6045 0 TD -0.0122 Tw -[(. Some hosts file systems do not use all)]TJ --27.6045 -1.2889 TD -0 Tw -(of those fields in their file names.)Tj -/TT8 1 Tf -6.9333 -2.1489 TD -(HOST)Tj -/TT6 1 Tf -3.7333 0 TD -0.0133 Tw -[(Specifies the host whose file system contains the file. In the case of local)]TJ -0 -1.2889 TD -0 Tw -(file devices, the "host" is the name of the device, e.g., )Tj -/TT8 1 Tf -23.4097 0 TD -(DSK)Tj -/TT6 1 Tf -1.8003 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(FLOPPY)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT8 1 Tf --35.1848 -2.2156 TD -(DEVICE)Tj -/TT6 1 Tf -4.9333 0 TD -0.2711 Tw -(Specifies, for those hosts that divide their file systems name space)Tj -0 -1.2889 TD -0.3044 Tw -(among mutiple physical devices, the device or logical structure on)Tj -0 -1.2222 TD -0.2556 Tw -[(which the file resides. This should not be confused with Medleys)]TJ -T* -0.2011 Tw -(abstract "file device", which denotes either a host or a local physical)Tj -T* -0 Tw -(device and is specified by the )Tj -/TT8 1 Tf -13.2256 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -( field.)Tj -/TT8 1 Tf --22.3593 -2.2156 TD -(DIRECTORY)Tj -/TT6 1 Tf -6.7333 0 TD -0.1978 Tw -[(Specifies the "directory" containing the file. A directory usually is a)]TJ -0 -1.2889 TD -0.0167 Tw -(grouping of a possibly large set of loosely related files, e.g., the personal)Tj -0 -1.2222 TD -0.1778 Tw -[(files of a particular user, or the files belonging to some project. The)]TJ -/TT8 1 Tf -T* -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.1389 Tw -[( field usually consists of a principal directory and zero or)]TJ --5.4009 -1.2889 TD -0.0044 Tw -(more subdirectories that together describe a path through a file systems)Tj -0 -1.2222 TD -0.4211 Tw -[(hierarchy. Each subdirectory name is set off from the previous)]TJ -T* -1.3856 Tw -(directory or subdirectory by the character ")Tj -/TT8 1 Tf -27.3529 0 TD -0 Tw -(>)Tj -/TT6 1 Tf -0.6001 0 TD -1.3856 Tw -("; e.g.,)Tj --27.953 -1.2889 TD -0 Tw -(")Tj -/TT8 1 Tf -0.3711 0 TD -(LISP>LIBRARY>NEW)Tj -/TT6 1 Tf -9.6016 0 TD -(".)Tj -/TT8 1 Tf --13.706 -2.2156 TD -(NAME)Tj -/TT6 1 Tf -3.7333 0 TD -0.0567 Tw -(This field carries no specific meaning, but generally names a set of files)Tj -0 -1.2889 TD -0 Tw -(thought of as being different renditions of the "same" abstract file.)Tj -/TT8 1 Tf --6.7333 -2.1489 TD -(EXTENSION)Tj -/TT6 1 Tf -6.7333 0 TD -0.1211 Tw -(This field also carries no specific meaning, but generally distinguishes)Tj -0 -1.2889 TD -0.0789 Tw -[(the form of files having the same name. Most files systems have some)]TJ -0 -1.2222 TD -0.1722 Tw -("conventional" extensions that denote something about the content of)Tj -T* -0.1156 Tw -[(the file. For example, in Medley, the extension )]TJ -/TT8 1 Tf -21.9145 0 TD -0 Tw -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6156 0 TD -(LCOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.1156 Tw -[( or )]TJ -/TT8 1 Tf -1.672 0 TD -0 Tw -(DFASL)Tj -/TT6 1 Tf --29.0029 -1.2889 TD -(denotes files containing compiled function definitions.)Tj -ET -endstream -endobj -23 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -25 0 obj -<< -/Length 5641 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-5)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT8 1 Tf -9 0 0 9 124.2 568.2 Tm -(VERSION)Tj -/TT6 1 Tf -5.5333 0 TD -0.0889 Tw -(A number used to distinguish the versions or "generations" of the files)Tj -0 -1.2889 TD -0.4256 Tw -[(having a common name and extension. The version number is)]TJ -0 -1.2222 TD -0 Tw -(incremented each time a new file by the same name is created.)Tj --10.6667 -2 TD -0.17 Tw -(Most functions that take as input "a directory" accept either a directory name \(the contents of the)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0389 Tw -[( field of a file name\) or a "full" directory specificationa file name fragment consisting of)]TJ --5.4009 -1.2889 TD -0.09 Tw -(only the fields )Tj -/TT8 1 Tf -6.811 0 TD -0 Tw -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.59 0 TD -(DEVICE)Tj -/TT6 1 Tf -3.6006 0 TD -0.09 Tw -(, and )Tj -/TT8 1 Tf -2.6229 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.09 Tw -[(. In particular, the "connected directory" \(see below\))]TJ --21.4257 -1.2889 TD -0 Tw -(consists, in general, of all three fields.)Tj -0 -2 TD -0.1122 Tw -(For convenience in dealing with certain operating systems, Medley also recognizes [] and \(\) as host)Tj -0 -1.2222 TD -0.0411 Tw -(delimiters \(synonymous with {}\), and / as a directory delimiter \(synonymous with < at the beginning)Tj -T* -0.0289 Tw -(of a directory specification and )Tj -/TT18 1 Tf -14.061 0 TD -0 Tw -(>)Tj -/TT6 1 Tf -0.606 0 TD -0.0289 Tw -[( to terminate directory or subdirectory specification\). For example, a)]TJ --14.6669 -1.2222 TD -0.1556 Tw -(file on a Unix file server )Tj -/TT8 1 Tf -11.7532 0 TD -0 Tw -(UNX)Tj -/TT6 1 Tf -1.8003 0 TD -0.1556 Tw -[( with the name)]TJ -/TT8 1 Tf -7.0809 0 TD -0.3733 Tw -[( /usr/foo/bar/stuff.tedit)]TJ -/TT6 1 Tf -15.3758 0 TD -0.1556 Tw -(, whose )Tj -/TT8 1 Tf -3.9259 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf --39.936 -1.2889 TD -0.5089 Tw -(field is thus )Tj -/TT8 1 Tf -6.9315 0 TD -0 Tw -(usr/foo/bar)Tj -/TT6 1 Tf -6.6011 0 TD -0.5089 Tw -(, could be specified as )Tj -/TT8 1 Tf -12.4478 0 TD -0 Tw -({UNX}/usr/foo/bar/stuff.tedit)Tj -/TT6 1 Tf -17.4028 0 TD -0.5089 Tw -(, or)Tj -/TT8 1 Tf --43.3831 -1.2889 TD -0 Tw -(\(UNX\)stuff.tedit)Tj -/TT6 1 Tf -17.4028 0 TD -0.0189 Tw -[(, or several other variations. Note that when using )]TJ -/TT8 1 Tf -22.8603 0 TD -0 Tw -([])Tj -/TT6 1 Tf -1.2002 0 TD -0.0189 Tw -[( or )]TJ -/TT8 1 Tf -1.4787 0 TD -0 Tw -(\(\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0189 Tw -[( as)]TJ --44.1422 -1.2889 TD -0.1356 Tw -(host delimiters, they usually must be escaped with the readers escape character if the file name is)Tj -0 -1.2222 TD -0 Tw -(expressed as a symbol rather than a string.)Tj -0 -2 TD -0.3333 Tw -[(Different hosts have different requirements for vaild characters in file names. In Medley, all)]TJ -0 -1.2222 TD -0.0578 Tw -[(characters are valid. However, in order to be able to parse a file name into its component fields, it is)]TJ -T* -0.0922 Tw -(necessary that those characters that are conventionally used as file name delimiters be quoted when)Tj -T* -0.0756 Tw -[(they appear inside of fields where there could be ambiguity. The file name quoting character is " ")]TJ -T* -0.0489 Tw -[(\(single quote\). Thus, the following characters must be quoted when not used as delimeters: >, :, ;, /,)]TJ -T* -0.2167 Tw -[(and itself. The character . \(period\) need only be quoted if it is to be considered a part of the)]TJ -/TT8 1 Tf -T* -0 Tw -(EXTENSION)Tj -/TT6 1 Tf -5.4009 0 TD -0.0456 Tw -[( field. The characters }, ], and \) need only be quoted in a file name when the host field of)]TJ --5.4009 -1.2889 TD -0.0522 Tw -[(the name is introduced by {, [, and \(, respectively. The characters {, [, \(, and < need only be quoted if)]TJ -0 -1.2222 TD -0.0355 Tw -(they appear as the first character of a file name fragment, where they would otherwise be assumed to)Tj -T* -0 Tw -(introduce the )Tj -/TT8 1 Tf -6.1641 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -( fields.)Tj --15.4063 -2.0667 TD -0.04 Tw -[(The following functions are the standard way to manipulate file names in Medley. Their operation is)]TJ -0 -1.2222 TD -0 Tw -(purely syntacticthey perform no file system operations themselves.)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(UNPACKFILENAME.STRING)Tj -/TT4 1 Tf -10 0 0 10 220.8 227.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 223.5783 227.06 Tm -(FILENAME)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 272.1862 227.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 227.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Parses )Tj -/TT12 1 Tf -3.189 0 TD -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1133 Tw -(, returning a list in property list format of alternating field names and)Tj --7.9898 -1.2889 TD -0.0378 Tw -[(field contents. The field contents are returned as strings. If it is a stream, its full name is)]TJ -0 -1.2222 TD -0 Tw -(used.)Tj -0 -2 TD -0.2633 Tw -(Only those fields actually present in )Tj -/TT12 1 Tf -17.7514 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.2633 Tw -[( are returned. A field is considered)]TJ --22.5522 -1.2889 TD -0.1322 Tw -[(present if its delimiting punctuation is present, even if the field itself is empty. Empty)]TJ -0 -1.2222 TD -0 Tw -(fields are denoted by "" \(the empty string\).)Tj -0 -2 TD -(Examples:)Tj -/TT8 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME.STRING "FOO.BAR"\) =>)Tj -0 -1 TD -( \(NAME "FOO" EXTENSION "BAR"\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING "FOO.;2"\) =>)Tj -0 -1 TD -( \(NAME "FOO" EXTENSION "" VERSION "2"\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING "FOO;"\) =>)Tj -0 -1 TD -( \(NAME "FOO" VERSION ""\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -28 0 obj -<< -/Length 5483 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 85.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-6)Tj -/TT6 1 Tf -1.1667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 570.14 Tm -( "{ERIS}CURRENT>IMTRAN.DCOM;21"\))Tj -0 -1 TD -( => \(HOST "ERIS" DIRECTORY "LISP>CURRENT")Tj -T* -( NAME "IMTRAN" EXTENSION "DCOM")Tj -T* -( VERSION "21"\))Tj --8 -2.3267 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(UNPACKFILENAME)Tj -/TT6 1 Tf -8.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 260.2544 522.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 522.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0978 Tw -(Old version of )Tj -/TT8 1 Tf -6.892 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.0978 Tw -[( that returns the field values as atoms, rather)]TJ --19.494 -1.2889 TD -0.2744 Tw -(than as strings. )Tj -/TT8 1 Tf -8.2599 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.2744 Tw -[( is now considered the "correct" way of)]TJ --20.8619 -1.2889 TD -0.0044 Tw -(unpacking file names, because it does not lose information when the contents of a field are)Tj -0 -1.2222 TD -0 Tw -(numeric. For example, )Tj -/TT8 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME STUFF.TXT\) =>)Tj -0 -1 TD -( \(NAME STUFF EXTENSION TXT\))Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(but)Tj -/TT8 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME STUFF.029\) =>)Tj -0 -1 TD -( \(NAME STUFF EXTENSION 29\))Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(Explicitly omitted fields are denoted by the atom )Tj -/TT8 1 Tf -21.8682 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, rather than the empty string.)Tj --21.0018 -2.0667 TD -[(Note:)-901.2(Both )]TJ -/TT8 1 Tf -5.9738 0 TD -(UNPACKFILENAME)Tj -/TT6 1 Tf -8.4014 0 TD -0.3256 Tw -[( and )]TJ -/TT8 1 Tf -2.844 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.3256 Tw -[( leave the)]TJ --26.4879 -1.2889 TD -0.0167 Tw -(trailing colon on the device field, so that the Tenex device )Tj -/TT8 1 Tf -25.842 0 TD -0 Tw -(NIL:)Tj -/TT6 1 Tf -2.4004 0 TD -0.0167 Tw -[( can be)]TJ --28.2424 -1.2889 TD -0.9367 Tw -[(distinguished from the absence of a device. Although)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.2411 Tw -[( is capable of making the distinction, it)]TJ --12.6021 -1.2889 TD -0 Tw -(retains this behavior for backward compatibility. Thus,)Tj -/TT8 1 Tf --0.6667 -1.7111 TD -(\(UNPACKFILENAME.STRING {TOAST}DSK:FOO\) =>)Tj -0 -1 TD -( \(HOST "TOAST" DEVICE "DSK:" NAME "FOO"\))Tj --8 -2.3267 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FILENAMEFIELD)Tj -/TT4 1 Tf -10 0 0 10 225.6 279.66 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 228.3783 279.66 Tm -(FILENAME)Tj -/TT14 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FIELDNAME)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 327.8441 279.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 279.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0233 Tw -(Returns, as an atom, the contents of the )Tj -/TT12 1 Tf -17.7868 0 TD -0 Tw -(FIELDNAME)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( field of )]TJ -/TT12 1 Tf -3.7038 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[(. If )]TJ -/TT12 1 Tf -1.7399 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[( is a)]TJ --38.2329 -1.2889 TD -0 Tw -(stream, its full name is used.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FIELD)Tj -3 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(...)Tj -/TT14 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FIELD)Tj -2.9997 -0.3333 TD -(N)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 452.8509 229.12 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 490.61 229.12 Tm -([NoSpread)Tj --37.1789 -1.4 TD -(Function])Tj -2 -1.7778 TD -0.1855 Tw -(Takes a sequence of alternating field names and field contents \(atoms or strings\), and)Tj -0 -1.2222 TD -0 Tw -(returns the corresponding file name, as a string.)Tj -0 -2 TD -(If )Tj -/TT8 1 Tf -1.2166 0 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.2967 Tw -[( is given a single argument, it is interpreted as a list of)]TJ --12.6184 -1.2889 TD -0.5633 Tw -[(alternating field names and field contents. Thus )]TJ -/TT8 1 Tf -26.0863 0 TD -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.5633 Tw -[( and)]TJ -/TT8 1 Tf --37.4881 -1.2889 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -( operate as inverses.)Tj --12.6021 -2.0667 TD -(If the same field name is given twice, the )Tj -/TT14 1 Tf -18.2407 0 TD -(first)Tj -/TT6 1 Tf -1.667 0 TD -( occurrence is used.)Tj --19.9077 -2 TD -0.2189 Tw -(The contents of the field name )Tj -/TT8 1 Tf -14.911 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.2189 Tw -[( may be either a directory name or a full)]TJ --20.3119 -1.2889 TD -0 Tw -(directory specification as described above.)Tj -/TT8 1 Tf -0 -2 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.19 Tw -[( also accepts the "field name" )]TJ -/TT8 1 Tf -14.1966 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.19 Tw -[( to mean that its contents)]TJ --27.9989 -1.2889 TD -0.0289 Tw -[(should itself be unpacked and spliced into the argument list at that point. This feature, in)]TJ -0 -1.2222 TD -0.0389 Tw -(conjunction with the rule that fields early in the argument list override later duplicates, is)Tj -T* -0.0244 Tw -[(useful for altering existing file names. For example, to provide a default field, place )]TJ -/TT8 1 Tf -37.5898 0 TD -0 Tw -(BODY)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -31 0 obj -<< -/Length 3505 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-7)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0544 Tw -[(first in the argument list, then the default fields. To override a field, place the new fields)]TJ -0 -1.2222 TD -0 Tw -(first and )Tj -/TT8 1 Tf -3.9619 0 TD -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -( last.)Tj --6.3623 -2.0667 TD -(If the value of the )Tj -/TT8 1 Tf -8.0112 0 TD -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -( field is a stream, its full name is used.)Tj --10.4116 -2.0667 TD -(Examples:)Tj -/TT8 1 Tf -5.3333 -1.7111 TD -(\(PACKFILENAME.STRING DIRECTORY "LISP")Tj -0 -1 TD -( NAME "NET"\))Tj -T* -( => "NET")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING NAME "NET")Tj -0 -1 TD -( DIRECTORY "{DSK}"\))Tj -T* -( => "{DSK}NET")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING DIRECTORY "{DSK}")Tj -0 -1 TD -( BODY "{TOAST}BAR"\))Tj -T* -( => "{DSK}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING DIRECTORY "FRED")Tj -0 -1 TD -( BODY "{TOAST}BAR"\))Tj -T* -( => "{TOAST}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR")Tj -0 -1 TD -( DIRECTORY "FRED"\))Tj -T* -( => "{TOAST}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING VERSION NIL)Tj -0 -1 TD -( BODY "{TOAST}BAR.DCOM;2"\))Tj -T* -( => "{TOAST}BAR.DCOM")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR.DCOM")Tj -0 -1 TD -( VERSION 1\))Tj -T* -( => "{TOAST}BAR.DCOM;1")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR.DCOM;")Tj -0 -1 TD -( VERSION 1\))Tj -T* -( => "{TOAST}BAR.DCOM;")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "BAR.;1")Tj -0 -1 TD -( EXTENSION "DCOM"\))Tj -T* -( => "BAR.;1")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "BAR;1")Tj -0 -1 TD -( EXTENSION "DCOM"\))Tj -T* -( => "BAR.DCOM;1")Tj -/TT6 1 Tf --5.3333 -1.8444 TD -0.13 Tw -(In the last two examples, note that in one case the extension is explicitly present in the)Tj -0 -1.2222 TD -0.0189 Tw -(body \(as indicated by the preceding period\), while in the other there is no indication of an)Tj -T* -0 Tw -(extension, so the default is used.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(PACKFILENAME)Tj -/TT6 1 Tf -7.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FIELD)Tj -3 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(...)Tj -/TT14 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FIELD)Tj -2.9997 -0.3333 TD -(N)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 367.0508 139 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 401.99 139 Tm -([NoSpread Function])Tj --30.6656 -2.1778 TD -0.1278 Tw -(The same as )Tj -/TT8 1 Tf -6.0166 0 TD -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.1278 Tw -(, except that it returns the file name as a symbol,)Tj --17.4185 -1.2889 TD -0 Tw -(instead of a string.)Tj -/TT4 1 Tf -10 0 0 10 54 80.46 Tm -(Incomplete File Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 77.75 m -510.01 77.75 l -S -BT -/TT6 1 Tf -9 0 0 9 78 63.8 Tm -0.0022 Tw -(In general, it is not necessary to pass a complete file name \(one containing all the fields listed above\) to)Tj -0 -1.2222 TD -0.0933 Tw -[(functions that take a file name as an argument. Interlisp supplies suitable defaults for certain fields)]TJ -T* -0 Tw -(\(below\). Functions that return names of actual files, however, always return the full file name.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -34 0 obj -<< -/Length 5612 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 85.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-8)Tj -/TT6 1 Tf -1.1667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1167 Tw -(If the version field is omitted from a file name, Interlisp performs version recognition, as described)Tj -0 -1.2222 TD -0 Tw -(below.)Tj -0 -2 TD -0.1433 Tw -(If the host, device and/or directory field are omitted from a file name, Interlisp uses the currently)Tj -0 -1.2222 TD -0.0733 Tw -[(connected directory. You can change the currently connected directory by by calling )]TJ -/TT8 1 Tf -38.6418 0 TD -0 Tw -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0733 Tw -[( \(below\))]TJ --41.6423 -1.2889 TD -0 Tw -(or using the programmers assistant command )Tj -/TT8 1 Tf -20.8638 0 TD -(CONN)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --23.2642 -2.0667 TD -0.0011 Tw -(Defaults are added to the partially specified name "left to right" until a host, device or directory field is)Tj -0 -1.2222 TD -0 Tw -(encountered. Thus, if the connected directory is )Tj -/TT8 1 Tf -21.5093 0 TD -({TWENTY}PS:)Tj -/TT6 1 Tf -10.2017 0 TD -(, then)Tj -/TT8 1 Tf --21.0443 -1.8444 TD -(BAR.DCOM )Tj -/TT6 1 Tf -5.4009 0 TD -(means)Tj -/TT8 1 Tf --5.4009 -1 TD -( {TWENTY}PS:BAR.DCOM)Tj -0 -1.6222 TD -(BAR.DCOM )Tj -/TT6 1 Tf -10.8018 0 TD -(means)Tj -/TT8 1 Tf --10.8018 -1 TD -( {TWENTY}PS:BAR.DCOM)Tj -0 -1.6222 TD -(MTA0:BAR.DCOM )Tj -/TT6 1 Tf -13.8022 0 TD -(means)Tj -/TT8 1 Tf --13.8022 -1 TD -( {TWENTY}MTA0:BAR.DCOM)Tj -0 -1.6222 TD -({THIRTY}BAR.DCOM )Tj -/TT6 1 Tf -15.6025 0 TD -(means)Tj -/TT8 1 Tf --15.6025 -1 TD -( {THIRTY}BAR.DCOM)Tj -/TT6 1 Tf --10.6667 -1.8444 TD -0.0111 Tw -(In addition, if the partially specified name contains a subdirectory, but no principal directory, then the)Tj -0 -1.2222 TD -0 Tw -(subdirectory is appended to the connected directory. For example,)Tj -/TT8 1 Tf -10.6667 -1.7778 TD -(ISO>BAR.DCOM )Tj -/TT6 1 Tf -7.8013 0 TD -(means)Tj -/TT8 1 Tf --7.8013 -1 TD -( {TWENTY}PS:ISO>BAR.DCOM)Tj -/TT6 1 Tf --10.6667 -1.8444 TD -0.0633 Tw -(Or, if the connected directory is the Unix directory )Tj -/TT8 1 Tf -23.11 0 TD -0 Tw -({UNX}/usr/fred/)Tj -/TT6 1 Tf -9.0015 0 TD -0.0633 Tw -(, then )Tj -/TT8 1 Tf -2.8459 0 TD -0 Tw -(iso/bar.dcom)Tj -/TT6 1 Tf -7.2012 0 TD -0.0633 Tw -[( means)]TJ -/TT8 1 Tf --42.1586 -1.2889 TD -0 Tw -({UNX}/usr/fred/iso/bar.dcom)Tj -/TT6 1 Tf -16.2026 0 TD -(, but )Tj -/TT8 1 Tf -2.2324 0 TD -(/other/bar.dcom)Tj -/TT6 1 Tf -9.0015 0 TD -( means )Tj -/TT8 1 Tf -3.3677 0 TD -({UNX}/other/bar.dcom)Tj -/TT6 1 Tf -12.002 0 TD -(.)Tj -/TT8 1 Tf --40.1395 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(CNDIR)Tj -/TT4 1 Tf -10 0 0 10 182.4 288.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 185.1783 288.2 Tm -(HOST/DIR)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 233.7862 288.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 288.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2333 Tw -(Connects to the directory )Tj -/TT12 1 Tf -12.3274 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.2333 Tw -(, which can either be a directory name or a full)Tj --17.1282 -1.2889 TD -0.1244 Tw -[(directory specification including host and/or device. If the specification includes just a)]TJ -0 -1.2222 TD -0.3733 Tw -(host, and the host supports directories, the directory is defaulted to the value of)Tj -/TT8 1 Tf -T* -0 Tw -(\(USERNAME\))Tj -/TT6 1 Tf -6.001 0 TD -0.0567 Tw -(; if the host is omitted, connection is made to another directory on the same)Tj --6.001 -1.2889 TD -0 Tw -(host as before. If )Tj -/TT12 1 Tf -7.7568 0 TD -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, connects to the value of )Tj -/TT8 1 Tf -11.1528 0 TD -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT8 1 Tf --34.5269 -2.0667 TD -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.2122 Tw -[( returns the full name of the now-connected directory. Causes an error, )]TJ -/TT8 1 Tf -34.5895 0 TD -0 Tw -(Non-)Tj --37.5899 -1.2889 TD -(existent directory)Tj -/TT6 1 Tf -10.8018 0 TD -(, if )Tj -/TT12 1 Tf -1.374 0 TD -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -( is not a valid directory.)Tj --16.9766 -2.0667 TD -0.0878 Tw -(Note that )Tj -/TT8 1 Tf -4.5921 0 TD -0 Tw -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0878 Tw -[( does not necessarily require or provide any directory access privileges.)]TJ --7.5925 -1.2889 TD -0 Tw -(Access privileges are checked when a file is opened.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(CONN)Tj -/TT6 1 Tf -2.4 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(HOST/DIR)Tj -/TT16 1 Tf -10 0 0 10 217.057 143.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 440.09 143.66 Tm -([Prog. Asst. Command])Tj --29.5656 -1.8444 TD -0.0111 Tw -(Command form of )Tj -/TT8 1 Tf -8.5324 0 TD -0 Tw -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0111 Tw -[( for use at the executive. Connects to )]TJ -/TT12 1 Tf -16.7392 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0111 Tw -(, or to the value)Tj --33.0728 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.2467 0 TD -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.1178 Tw -[( if )]TJ -/TT12 1 Tf -1.3596 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.1178 Tw -[( is omitted. This command is undoable. Undoing it)]TJ --15.2083 -1.2889 TD -0 Tw -(causes the system to connect to the previously connected directory.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(LOGINHOST/DIR)Tj -/TT16 1 Tf -10 0 0 10 220.2 81.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 81.52 Tm -([Variable])Tj -/TT8 1 Tf --35.6011 -1.8444 TD -(CONN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1067 Tw -[( with no argument connects to the value of the variable )]TJ -/TT8 1 Tf -25.7729 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.1067 Tw -(, initially)Tj -/TT8 1 Tf --35.9746 -1.2889 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -(, but usually reset in your greeting file \(Chapter 12\).)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -37 0 obj -<< -/Length 6989 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-9)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT8 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DIRECTORYNAME)Tj -/TT4 1 Tf -10 0 0 10 177.6 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 180.3783 568.2 Tm -(DIRNAME)Tj -/TT14 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STRPTR)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 258.2406 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.0766 0 TD -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.1567 Tw -[( is )]TJ -/TT8 1 Tf -1.5282 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1567 Tw -[(, returns the full specification of the currently connected directory. If)]TJ -/TT12 1 Tf --7.4055 -1.2889 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( is )]TJ -/TT8 1 Tf -1.2637 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0244 Tw -(, returns the value of )Tj -/TT8 1 Tf -9.5304 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0244 Tw -[(. For any other value of )]TJ -/TT12 1 Tf -10.9514 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj --39.7485 -1.2889 TD -0.0467 Tw -(returns a full directory specification if )Tj -/TT12 1 Tf -17.2209 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( designates an existing directory \(satisfies)]TJ -/TT8 1 Tf --21.4216 -1.2889 TD -0 Tw -(DIRECTORYNAMEP)Tj -/TT6 1 Tf -8.4014 0 TD -(\), otherwise )Tj -/TT8 1 Tf -5.439 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --15.6406 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(STRPTR)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, the value is returned as an atom, otherwise it is returned as a string.)Tj -/TT8 1 Tf --9.0021 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DIRECTORYNAMEP)Tj -/TT18 1 Tf -8.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DIRNAME)Tj -/TT14 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(HOSTNAME)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 273.9141 475.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 475.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.9726 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2456 Tw -[( if )]TJ -/TT12 1 Tf -1.6151 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.2456 Tw -[( is a valid directory on host )]TJ -/TT12 1 Tf -13.9904 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.2456 Tw -(, or on the host of the)Tj --29.1797 -1.2889 TD -0.13 Tw -(currently connected directory if )Tj -/TT12 1 Tf -14.751 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.13 Tw -[( is )]TJ -/TT8 1 Tf -1.4748 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.13 Tw -(. )Tj -/TT12 1 Tf -1.01 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.13 Tw -[( may be either a directory)]TJ --28.0376 -1.2889 TD -0 Tw -(name or a full directory specification containing host and/or device.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -0.9666 0 TD -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( includes subdirectories, this function may or may not pass judgment on their)]TJ --5.1673 -1.2889 TD -0.0056 Tw -[(validity. Some hosts support "true" subdirectories, distinct entities manipulable by the file)]TJ -0 -1.2222 TD -0 Tw -(system, while others only provide them as a syntactic convenience.)Tj -/TT8 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(HOSTNAMEP)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 188.4052 372.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 372.52 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT8 1 Tf -3.9882 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2611 Tw -[( if )]TJ -/TT12 1 Tf -1.6462 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.2611 Tw -[( is recognized as a valid host or file device name at the moment)]TJ -/TT8 1 Tf --8.6349 -1.2889 TD -0 Tw -(HOSTNAMEP)Tj -/TT6 1 Tf -5.4009 0 TD -( is called.)Tj -/TT4 1 Tf -10 0 0 10 54 316.38 Tm -(Version Recognition)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 313.67 m -510.01 313.67 l -S -BT -/TT6 1 Tf -9 0 0 9 78 299.72 Tm -0.0144 Tw -[(Most of the file devices in Interlisp support file version numbers. That is, you can have several files of)]TJ -0 -1.2222 TD -0.2344 Tw -(the exact same name, differing only in their )Tj -/TT8 1 Tf -21.2999 0 TD -0 Tw -(VERSION)Tj -/TT6 1 Tf -4.2007 0 TD -0.2344 Tw -[( field, which is incremented for each new)]TJ --25.5006 -1.2889 TD -0.1444 Tw -[("version" of the file that is created. When the filesystem encounters a file name without a version)]TJ -0 -1.2222 TD -0 Tw -(number, it must figure out which version was intended. This process is known as )Tj -/TT14 1 Tf -36.4248 0 TD -(version recognition)Tj -/TT6 1 Tf -7.7695 0 TD -(.)Tj --44.1943 -2 TD -(When )Tj -/TT8 1 Tf -2.8975 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.0043 Tw -( opens a file for input and no version number is given, the highest existing version)Tj --8.8985 -1.2889 TD -0 Tc -0.0855 Tw -[(number is used. Similarly, when a file is opened for output and no version number is given, a new)]TJ -0 -1.2222 TD -0.1022 Tw -(file is created with a version number one higher than the highest one currently in use with that file)Tj -T* -0.0189 Tw -[(name. You can change he version number defaulting for )]TJ -/TT8 1 Tf -25.5517 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0189 Tw -[( by specifying a different value)]TJ --31.5527 -1.2889 TD -0 Tw -(for its )Tj -/TT12 1 Tf -2.8149 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( argument \(see )Tj -/TT8 1 Tf -6.7891 0 TD -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -( below\).)Tj --17.4053 -2.0667 TD -0.1411 Tw -(Other functions that accept file names as arguments generally perform default version recognition,)Tj -0 -1.2222 TD -0.06 Tw -(which is newest version for existing files, or a new version if using the file name to create a new file.)Tj -T* -0 Tw -(The one exception is )Tj -/TT8 1 Tf -9.2598 0 TD -(DELFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(, which uses the oldest existing version of the file.)Tj --13.4605 -2.0667 TD -0.0078 Tw -(The functions below can be used to perform version recognition without actually calling )Tj -/TT8 1 Tf -39.3321 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf --39.3321 -1.2889 TD -0.0589 Tw -[(to open the file. Note that these functions only tell the truth at the moment they are called, and thus)]TJ -0 -1.2222 TD -0.0144 Tw -(cannot be used to anticipate the name of the file opened by a comparable )Tj -/TT8 1 Tf -32.6339 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0144 Tw -[(. They are best)]TJ --38.6348 -1.2889 TD -0 Tw -(used as helpful hints.)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FULLNAME)Tj -/TT6 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT14 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RECOG)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 192.9061 87.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 87.18 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT12 1 Tf -0.9533 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is an open stream, simply returns the full file name of the stream. Otherwise, if )]TJ -/TT12 1 Tf -36.0647 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is a)]TJ --38.2182 -1.2889 TD -0 Tw -(file name given as a string or symbol, performs version recognition, as follows:)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -40 0 obj -<< -/Length 8165 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-10)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(If )Tj -/TT12 1 Tf -0.9399 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( is recognized in the recognition mode specified by )]TJ -/TT12 1 Tf -22.9066 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.02 Tw -[( as an abbreviation for some)]TJ --27.4471 -1.2889 TD -0 Tw -(file, returns the files full name, otherwise )Tj -/TT8 1 Tf -18.6489 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. )Tj -/TT12 1 Tf -0.75 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( is one of the following:)Tj -/TT8 1 Tf --21.9997 -2.0667 TD -(OLD)Tj -/TT6 1 Tf -3.1333 0 TD -0.1111 Tw -[(Chooses the newest existing version of the file. Returns )]TJ -/TT8 1 Tf -25.9661 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1111 Tw -[( if no file)]TJ --27.7664 -1.2889 TD -0 Tw -(named )Tj -/TT12 1 Tf -3.3047 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( exists.)Tj -/TT8 1 Tf --8.8381 -2.0667 TD -(OLDEST)Tj -/TT6 1 Tf -4.9333 0 TD -0.1456 Tw -[(Chooses the oldest existing version of the file. Returns )]TJ -/TT8 1 Tf -25.8633 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1456 Tw -[( if no file)]TJ --27.6636 -1.2889 TD -0 Tw -(named )Tj -/TT12 1 Tf -3.3047 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( exists.)Tj -/TT8 1 Tf --7.0381 -2.0667 TD -(NEW)Tj -/TT6 1 Tf -3.1333 0 TD -0.1256 Tw -[(Chooses a new version of the file. If versions of )]TJ -/TT12 1 Tf -22.6819 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.1256 Tw -[( already exist, then)]TJ --23.282 -1.2889 TD -0.2567 Tw -(chooses a version number one higher than highest existing version;)Tj -0 -1.2222 TD -0.0667 Tw -[(otherwise chooses version 1. For some file systems, )]TJ -/TT8 1 Tf -23.6703 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0667 Tw -[( returns)]TJ -/TT8 1 Tf --28.4711 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0989 Tw -[( if you do not have the access rights necessary to create a new file)]TJ --1.8003 -1.2889 TD -0 Tw -(named )Tj -/TT12 1 Tf -3.3047 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --9.4381 -2.0667 TD -(OLD/NEW)Tj -/TT6 1 Tf -5.5333 0 TD -(Tries )Tj -/TT8 1 Tf -2.5594 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1078 Tw -(, then )Tj -/TT8 1 Tf -2.9348 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.1078 Tw -[(. Choose the newest existing version of the file, if)]TJ --9.0948 -1.2889 TD -0.0467 Tw -[(any; otherwise chooses version 1. This usually only makes sense if you)]TJ -0 -1.2222 TD -0 Tw -(intend to open )Tj -/TT12 1 Tf -6.7012 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( for access )Tj -/TT8 1 Tf -4.7383 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT12 1 Tf --14.4399 -2.0667 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.3067 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3067 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[( defaults to )]TJ -/TT8 1 Tf -5.359 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[(. For all other values of )]TJ -/TT12 1 Tf -11.0446 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -(, generates)Tj --27.2186 -1.2889 TD -0 Tw -(an error )Tj -/TT8 1 Tf -3.792 0 TD -(ILLEGAL ARG)Tj -/TT6 1 Tf -6.6011 0 TD -(. )Tj --10.3931 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9655 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0456 Tw -[( already contains a version number, the )]TJ -/TT12 1 Tf -18.0098 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.0456 Tw -[( argument will never)]TJ --22.5759 -1.2889 TD -0.1989 Tw -[(change it. In particular, )]TJ -/TT12 1 Tf -11.7698 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.4489 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.4489 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.1989 Tw -[( does not require that the file)]TJ --18.0685 -1.2889 TD -0.1967 Tw -[(actually be new. For example, )]TJ -/TT8 1 Tf -14.8646 0 TD -0.4733 Tw -(\(FULLNAME FOO.;2 NEW\))Tj -/TT6 1 Tf -14.7489 0 TD -0.1967 Tw -[( may)]TJ --29.6135 -1.2889 TD -0 Tw -(return )Tj -/TT8 1 Tf -3.1958 0 TD -({ERIS}FOO.;2)Tj -/TT6 1 Tf -10.8018 0 TD -0.1656 Tw -[( if that file already exists, even though)]TJ -/TT8 1 Tf --13.9976 -1.2889 TD -0.0544 Tw -(\(FULLNAME FOO NEW\))Tj -/TT6 1 Tf -12.1108 0 TD -0.0222 Tw -[( would default the version to a new number,)]TJ --12.1108 -1.2889 TD -0 Tw -(perhaps returning )Tj -/TT8 1 Tf -8.2915 0 TD -({ERIS}FOO.;5)Tj -/TT6 1 Tf -10.8018 0 TD -(. )Tj -/TT8 1 Tf --27.0933 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(INFILEP)Tj -/TT6 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 222.4544 262.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 262.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0044 Tw -(Equivalent to )Tj -/TT8 1 Tf -6.1891 0 TD -0 Tw -(\(FULLNAME)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.2544 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -0.0044 Tc -( )Tj -/TT8 1 Tf -0.5323 0 TD -0 Tc -(OLD\))Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0043 Tw -(. Returns the full file name of the newest version of)Tj -/TT12 1 Tf --17.1774 -1.2889 TD -0 Tc -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( is the name of an existing file that can be opened for input, )Tj -/TT8 1 Tf -26.3838 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT8 1 Tf --36.7756 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OUTFILEP)Tj -/TT4 1 Tf -10 0 0 10 198.6 211.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 201.3783 211.06 Tm -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 228.3827 211.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 211.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Equivalent to )Tj -/TT8 1 Tf -6.1802 0 TD -(\(FULLNAME)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(NEW\))Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --22.8153 -2.0667 TD -0.0456 Tw -(Note that )Tj -/TT8 1 Tf -4.5076 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5456 0 TD -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0456 Tw -[( and )]TJ -/TT8 1 Tf -2.284 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0456 Tw -[( do not open any files; they are pure predicates. They)]TJ --21.1394 -1.2889 TD -0.1478 Tw -[(are also only hints, as they do not imply that the caller has access rights to the file. For example,)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0222 Tw -[( might return non-)]TJ -/TT8 1 Tf -8.2781 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0222 Tw -(, but )Tj -/TT8 1 Tf -2.2769 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0222 Tw -[( might fail for the same file because you dont have)]TJ --22.5569 -1.2889 TD -0.0078 Tw -[(read access to it, or the file is open for output by another user. Similarly, )]TJ -/TT8 1 Tf -32.4306 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0078 Tw -[( could return non-)]TJ -/TT8 1 Tf --37.2314 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, but )Tj -/TT8 1 Tf -2.2324 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -( could fail with a )Tj -/TT8 1 Tf -7.6929 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(SYSTEM RESOURCES EXCEEDED)Tj -/TT6 1 Tf -15.0024 0 TD -( error.)Tj --35.3794 -2.0667 TD -0.1778 Tw -(Note also that in a shared file system, such as a remote file server, intervening file operations by)Tj -0 -1.2222 TD -0.1 Tw -[(another user could contradict the information returned by recognition. For example, a file that was)]TJ -/TT8 1 Tf -T* -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0356 Tw -[( might be deleted, or between an )]TJ -/TT8 1 Tf -14.9506 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0356 Tw -[( and the subsequent )]TJ -/TT8 1 Tf -9.2555 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0356 Tw -(, another user)Tj --39.2085 -1.2889 TD -0.1378 Tw -(might create a new version or delete the highest version, causing )Tj -/TT8 1 Tf -30.3686 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1378 Tw -[( to open a different)]TJ --36.3696 -1.2889 TD -0.0533 Tw -(version of the file than the one returned by )Tj -/TT8 1 Tf -19.6358 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0533 Tw -[(. In addition, some file servers do not support)]TJ --24.4365 -1.2889 TD -0.0811 Tw -[(recognition of files in output context. Thus, the "truth" about a file can only be obtained by actually)]TJ -0 -1.2222 TD -0.0644 Tw -(opening the file; creators of files should rely on the name of the stream opened by )Tj -/TT8 1 Tf -37.3221 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0644 Tw -(, not)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6405 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-11)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.1967 Tw -[(the value returned from these recognition functions. In particular, programmers are discouraged)]TJ -0 -1.2222 TD -0 Tw -(from using )Tj -/TT8 1 Tf -5.1128 0 TD -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(\(FULLNAME)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NAME)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(NEW\))Tj -/TT6 1 Tf -3.0005 0 TD -(. )Tj -/TT4 1 Tf -10 0 0 10 54 530.6 Tm -(Using File Names Instead of Streams)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 527.89 m -510.01 527.89 l -S -BT -/TT6 1 Tf -9 0 0 9 78 513.94 Tm -0.1633 Tw -(In earlier implementations of Interlisp, from the days of Interlisp-10 onward, the "handle" used to)Tj -0 -1.2222 TD -0.0522 Tw -[(refer to an open file was not a stream, but rather the files full name, represented as a symbol. When)]TJ -T* -0.0589 Tw -(the file name was passed to any I/O function, it was mapped to a stream by looking it up in a list of)Tj -T* -0.0644 Tw -[(open files. This scheme was sometimes convenient for typing in file commands at the executive, but)]TJ -T* -0.1022 Tw -[(was poor for serious programming in two ways. First, mapping from file name to stream on every)]TJ -T* -0.01 Tw -(input/output operation is inefficient. Second, and more importantly, using the file name as the handle)Tj -T* -0.0589 Tw -(on an open stream means that it is not possible to have more than one stream open on a given file at)Tj -T* -0 Tw -(once.)Tj -0 -2 TD -0.0133 Tw -(As of this writing, Medley is in a transition period, where it still supports the use of symbol file names)Tj -0 -1.2222 TD -0.0922 Tw -[(as synonymous with open streams, but this use is not recommended. The remainder of this section)]TJ -T* -0.1733 Tw -(discusses this usage of file names for the benefit of those reading older programs and wishing to)Tj -T* -0 Tw -(convert them to work properly when this compatibility feature is removed.)Tj -/TT4 1 Tf -10 0 0 10 78 366.6 Tm -(File Name Efficiency Considerations)Tj -/TT6 1 Tf -9 0 0 9 78 350.94 Tm -0.0756 Tw -(It is possible for a program to be seriously inefficient using a file name as a stream if the program is)Tj -T* -0.0267 Tw -(not using the name returned by )Tj -/TT8 1 Tf -14.3807 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0267 Tw -[( \(below\). Any time that an input/output function is called)]TJ --19.1815 -1.2889 TD -0.1144 Tw -(with a file name other than the full file name, Interlisp must perform recognition on the partial file)Tj -0 -1.2222 TD -0.0411 Tw -[(name to determine which open file is intended. Thus if repeated operations are to be performed, it is)]TJ -T* -0 Tw -(considerably more efficient to use the full file name returned from )Tj -/TT8 1 Tf -29.4307 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --34.2315 -2.0667 TD -0.0167 Tw -(There is a more subtle problem with partial file names, in that recognition is performed on your entire)Tj -0 -1.2222 TD -0.1578 Tw -[(directory, not just the open files. It is possible for a file name that previously denoted one file to)]TJ -T* -0.2444 Tw -[(suddenly denote a different file. For example, suppose a program performs )]TJ -/TT8 1 Tf -36.6916 0 TD -0.5867 Tw -(\(INFILE FOO\))Tj -/TT6 1 Tf -8.3879 0 TD -0 Tw -(,)Tj --45.0796 -1.2889 TD -(opening )Tj -/TT8 1 Tf -3.9472 0 TD -(FOO.;1)Tj -/TT6 1 Tf -3.6006 0 TD -0.06 Tw -(, and reads several expressions from )Tj -/TT8 1 Tf -16.6618 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.06 Tw -[(. Then you interrupt the program, create a)]TJ -/TT8 1 Tf --26.0098 -1.2889 TD -0 Tw -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[( and resume the program \(or a user at another workstation creates a )]TJ -/TT8 1 Tf -30.9318 0 TD -0 Tw -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[(\). Now a call to)]TJ -/TT8 1 Tf --38.133 -1.2889 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( giving it )]TJ -/TT8 1 Tf -4.3085 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( as its )]TJ -/TT12 1 Tf -2.8148 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0333 Tw -[( argument will generate a )]TJ -/TT8 1 Tf -11.7443 0 TD -0.0811 Tw -(FILE NOT OPEN)Tj -/TT6 1 Tf -7.9635 0 TD -0.0333 Tw -[( error, because )]TJ -/TT8 1 Tf -6.7919 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( will be)]TJ --42.0244 -1.2889 TD -0 Tw -(recognized as )Tj -/TT8 1 Tf -6.3066 0 TD -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 199.4 Tm -(Obsolete File Opening Functions)Tj -/TT6 1 Tf -9 0 0 9 78 183.74 Tm -(The following functions are now obsolete, but are provided for backwards compatibility:)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT14 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RECOG)Tj -/TT14 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PARAMETERS)Tj -/TT8 1 Tf -6.001 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 300.0228 161.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 161.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT12 1 Tf -3.131 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -[( with access rights as specified by )]TJ -/TT12 1 Tf -15.1198 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0089 Tw -(, and recognition mode )Tj -/TT12 1 Tf -10.5351 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -(, and)Tj --37.7873 -1.2889 TD -0.07 Tw -[(returns the full name of the resulting stream. Equivalent to )]TJ -/TT8 1 Tf -27.2236 0 TD -0.1689 Tw -(\(FULLNAME \(OPENSTREAM)Tj -/TT12 1 Tf --27.2236 -1.2889 TD -0 Tw -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RECOG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PARAMETERS)Tj -/TT8 1 Tf -6.001 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --19.6193 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(INFILE)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 169.0544 98.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 98.66 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT12 1 Tf -3.2698 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -[( for input, and sets it as the primary input stream. Equivalent to )]TJ -/TT8 1 Tf -30.7315 0 TD -0 Tw -(\(INPUT)Tj --36.4017 -1.2889 TD -(\(OPENSTREAM)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(INPUT OLD\)\))Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -48 0 obj -<< -/Length 6637 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-12)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OUTFILE)Tj -/TT6 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 222.4544 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT12 1 Tf -3.1498 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( for output, and sets it as the primary output stream. Equivalent to )]TJ -/TT8 1 Tf -30.2556 0 TD -0 Tw -(\(OUTPUT)Tj --35.8058 -1.2889 TD -(\(OPENSTREAM)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(OUTPUT NEW\)\))Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT8 1 Tf --20.5695 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(IOFILE)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 217.0544 517.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 517.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT12 1 Tf -3.1754 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0533 Tw -[( for both input and output. Equivalent to )]TJ -/TT8 1 Tf -19.043 0 TD -0 Tw -(\(OPENFILE)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.3033 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.3033 0 TD -0.1278 Tw -(BOTH OLD\))Tj -/TT6 1 Tf -6.7289 0 TD -0 Tw -(.)Tj --39.7556 -1.2889 TD -(Does not affect the primary input or output stream.)Tj -/TT4 1 Tf -10 0 0 10 126 469.52 Tm -(Converting Old Programs)Tj -/TT6 1 Tf -9 0 0 9 126 453.86 Tm -0.1678 Tw -(At some point in the future, the Medley file system will change so that each call to )Tj -/TT8 1 Tf -39.3254 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf --39.3254 -1.2889 TD -0.0211 Tw -[(returns a distinct stream, even if a stream is already open to the specified file. This change is required)]TJ -0 -1.2222 TD -0 Tw -(in order to deal with files in a multiprocessing environment.)Tj -0 -2 TD -(This change will produce the following incompatibilities:)Tj -1.9167 -2 TD -0.2233 Tw -[(1.)-1333.3(The functions )]TJ -/TT8 1 Tf -8.8347 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT8 1 Tf -0.7233 0 TD -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -0.2233 Tw -(, and )Tj -/TT8 1 Tf -2.8895 0 TD -0 Tw -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2233 Tw -[( will return a stream, not a full file)]TJ --21.7661 -1.2889 TD -0.0867 Tw -[(name. To make this less confusing in interactive situations, streams will have a print)]TJ -0 -1.2222 TD -0 Tw -(format that reveals the underlying files actual name.)Tj --2.0833 -2 TD -0.1456 Tw -[(2.)-1333.3(Passing anything other than the object returned from )]TJ -/TT8 1 Tf -26.9187 0 TD -0 Tw -(OPENFILE )Tj -/TT6 1 Tf -5.7509 0 TD -0.1456 Tw -(to I/O operations)Tj --30.5862 -1.2889 TD -0.0756 Tw -[(will cause problems. Passing the files name will be significantly slower than passing)]TJ -0 -1.2222 TD -0.0033 Tw -(the stream \(even when passing the "full" file name\), and in the case where there is more)Tj -T* -0 Tw -(than one stream open on the file it might even act on the wrong one.)Tj --2.0833 -2 TD -(3.)Tj -/TT8 1 Tf -2.0833 0 TD -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -0.2756 Tw -[( will return )]TJ -/TT8 1 Tf -6.064 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2756 Tw -[( when passed the name of a file rather than the value of)]TJ -/TT8 1 Tf --10.8648 -1.2889 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj --16.2427 -2.0667 TD -0.0078 Tw -(You should consider the following advice when writing new programs and editing existing programs,)Tj -0 -1.2222 TD -0 Tw -(so your programs will behave properly when the change occurs:)Tj -0 -2 TD -0.3089 Tw -(Because of the efficiency and ambiguity considerations described earlier, users have long been)Tj -0 -1.2222 TD -0.1144 Tw -(encouraged to use only full file names as )Tj -/TT12 1 Tf -19.167 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1144 Tw -[( arguments to I/O operations. The "proper" way to)]TJ --21.5674 -1.2889 TD -0.0433 Tw -(have done this was to bind a variable to the value returned from )Tj -/TT8 1 Tf -29.2455 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0433 Tw -[( and pass that variable to)]TJ --34.0462 -1.2889 TD -0.09 Tw -[(all I/O operations; such code will continue to work. A less proper way to obtain the full file name,)]TJ -0 -1.2222 TD -0.1522 Tw -(but one which has to date not incurred any obvious penalty, is that which binds a variable to the)Tj -T* -0.0244 Tw -(result of an )Tj -/TT8 1 Tf -5.3023 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( and passes that to )]TJ -/TT8 1 Tf -8.5231 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0244 Tw -[( and all I/O operations. This has worked because)]TJ -/TT8 1 Tf --22.8269 -1.2889 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.1622 Tw -[( and )]TJ -/TT8 1 Tf -2.5173 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1622 Tw -[( both return a full file name, an invalid assumption in this future world.)]TJ --11.5188 -1.4378 TD -0 Tw -(Such code should be changed to pass around the value of the )Tj -/TT8 1 Tf -27.2251 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(, not the )Tj -/TT8 1 Tf -3.8413 0 TD -(INFILEP)Tj -/TT16 1 Tf -10 0 0 10 486.6108 163.12 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 126 144.52 Tm -0.1822 Tw -(Code that calls )Tj -/TT8 1 Tf -7.3255 0 TD -0 Tw -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1822 Tw -[( to test whether a possibly incomplete file name is already open should be)]TJ --10.326 -1.2889 TD -0 Tw -(recoded to pass to )Tj -/TT8 1 Tf -8.2573 0 TD -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -( only the value returned from )Tj -/TT8 1 Tf -13.3272 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj --36.8276 -2.0667 TD -0.29 Tw -(Code that uses ordinary string functions to manipulate file names, and in particular the value)Tj -0 -1.2222 TD -0.1611 Tw -(returned from )Tj -/TT8 1 Tf -6.8491 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1611 Tw -(, should be changed to use the the functions )Tj -/TT8 1 Tf -21.076 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf --32.7258 -1.2889 TD -(and )Tj -/TT8 1 Tf -2.2506 0 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.3078 Tw -[(. Those functions work both on file names \(strings\) and streams)]TJ --13.6525 -1.2889 TD -0 Tw -(\(coercing the stream to the name of its file\).)Tj -0 -2 TD -0.0822 Tw -(Code that tests the value of )Tj -/TT8 1 Tf -12.7555 0 TD -0 Tw -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0822 Tw -[( for equality to some known file name or )]TJ -/TT8 1 Tf -18.9529 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( should be examined)]TJ --35.9091 -1.2889 TD -0 Tw -(carefully and, if possible, recoded.)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -51 0 obj -<< -/Length 7006 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-13)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0589 Tw -(To see more directly the effects of passing around streams instead of file names, replace your calls to)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0689 Tw -[( with calls to )]TJ -/TT8 1 Tf -6.1305 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -(. )Tj -/TT8 1 Tf -0.8878 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -[( is called in exactly the same way, but returns a)]TJ -/TT8 1 Tf --23.8211 -1.2889 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1922 Tw -[(. Streams can be passed to )]TJ -/TT8 1 Tf -13.346 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.6922 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6922 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1922 Tw -(, etc just as the files full name can be)Tj --27.3325 -1.2889 TD -0.2211 Tw -[(currently, but using them is more efficient. The function )]TJ -/TT8 1 Tf -27.4474 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.2211 Tw -(, when applied to a stream,)Tj --32.2482 -1.2889 TD -0 Tw -(returns its full file name.)Tj -/TT4 1 Tf -10 0 0 10 54 496.4 Tm -(Using Files with Processes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 493.69 m -510.01 493.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 479.74 Tm -0.2856 Tw -(Because Medley does not yet support multiple streams per file, problems can arise if different)Tj -0 -1.2222 TD -0.3089 Tw -[(processes attempt to access the same file. You have to be careful not to have two processes)]TJ -T* -0.1267 Tw -(manipulating the same file at the same time, since the two processes will be sharing a single input)Tj -T* -0.0267 Tw -[(stream and file pointer. For example, you cant have one process )]TJ -/TT8 1 Tf -29.2604 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0267 Tw -[( a file while another process)]TJ --32.861 -1.2889 TD -0 Tw -(is running )Tj -/TT8 1 Tf -4.8062 0 TD -(LISTFILES)Tj -/TT6 1 Tf -5.4009 0 TD -( on it.)Tj -/TT4 1 Tf -10 0 0 10 54 407.2 Tm -(File Attributes)Tj -ET -54.01 404.49 m -510.01 404.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 390.54 Tm -0.0967 Tw -[(Any file has a number of "file attributes", such as the read date, protection, and bytesize. The exact)]TJ -0 -1.2222 TD -0.2022 Tw -[(attributes that a file can have is dependent on the file device. The functions )]TJ -/TT8 1 Tf -36.5846 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2022 Tw -[( and)]TJ -/TT8 1 Tf --43.1857 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -( allow you to access file attributes:)Tj -/TT8 1 Tf --3.9344 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(GETFILEINFO)Tj -/TT6 1 Tf -6.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ATTRIB)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 230.7097 345 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 345 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the current setting of the )Tj -/TT12 1 Tf -14.8389 0 TD -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -( attribute of )Tj -/TT12 1 Tf -5.4287 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --28.9352 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(SETFILEINFO)Tj -/TT6 1 Tf -6.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ATTRIB)Tj -/TT14 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 259.9641 305.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 305.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1011 Tw -(Sets the attribute )Tj -/TT12 1 Tf -7.9943 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.1011 Tw -[( of )]TJ -/TT12 1 Tf -1.5811 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -[( to be )]TJ -/TT12 1 Tf -2.9576 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1011 Tw -(. )Tj -/TT8 1 Tf -0.9522 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1011 Tw -[( returns )]TJ -/TT8 1 Tf -3.9063 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( if it is able to)]TJ --33.5942 -1.2889 TD -0.0611 Tw -(change the attribute )Tj -/TT12 1 Tf -9.2634 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -(, and )Tj -/TT8 1 Tf -2.5651 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -[( if unsuccessful, either because the file device does)]TJ --17.2294 -1.2889 TD -0.2511 Tw -(not recognize )Tj -/TT12 1 Tf -6.7283 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.2511 Tw -[( or because the file device does not permit the attribute to be)]TJ --10.3289 -1.2889 TD -0 Tw -(modified.)Tj --5.3333 -2 TD -(The )Tj -/TT12 1 Tf -2.076 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1522 Tw -[( argument to )]TJ -/TT8 1 Tf -6.403 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1522 Tw -[( and )]TJ -/TT8 1 Tf -2.4973 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1522 Tw -[( can be an open stream \(or an argument)]TJ --26.5789 -1.2889 TD -0.0844 Tw -(designating an open stream, see Chapter 25\), or the name of a closed file. )Tj -/TT8 1 Tf -33.9083 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0844 Tw -[( in general)]TJ --40.5093 -1.2889 TD -0 Tw -(requires write access to the file.)Tj -0 -2 TD -0.1733 Tw -(The attributes recognized by )Tj -/TT8 1 Tf -13.583 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1733 Tw -[( and )]TJ -/TT8 1 Tf -2.5395 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1733 Tw -[( fall into two categories: )]TJ -/TT14 1 Tf -11.6728 0 TD -0 Tw -(permanent)Tj -/TT6 1 Tf --40.9975 -1.2889 TD -0.1089 Tw -(attributes, which are properties of the file, and )Tj -/TT14 1 Tf -21.5918 0 TD -0 Tw -(temporary)Tj -/TT6 1 Tf -4.166 0 TD -0.1089 Tw -[( attributes, which are properties only of an)]TJ --25.7578 -1.2222 TD -0.0356 Tw -[(open stream to the file. The temporary attributes are only recognized when )]TJ -/TT12 1 Tf -34.118 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( designates an open)]TJ --36.5184 -1.2889 TD -0.1044 Tw -[(stream; the permanent attributes are usually equally accessible for open and closed files. However,)]TJ -0 -1.2222 TD -0.2256 Tw -(some devices are willing to change the value of certain attributes of an open stream only when)Tj -T* -0.43 Tw -(specified in the )Tj -/TT8 1 Tf -8.2529 0 TD -0 Tw -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.43 Tw -[( argument to )]TJ -/TT8 1 Tf -7.2363 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.43 Tw -[( \(see above\), not on a later call to)]TJ -/TT8 1 Tf --27.4911 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --6.6011 -2.0667 TD -(The following are permanent attributes of a file:)Tj -/TT8 1 Tf -4.5333 -2 TD -(BYTESIZE)Tj -/TT6 1 Tf -6.1333 0 TD -(The byte size of the file. Medley currently only supports byte size 8.)Tj -/TT8 1 Tf --4.9333 -2.0667 TD -(LENGTH)Tj -/TT6 1 Tf -4.9333 0 TD -0.0911 Tw -[(The number of bytes in the file. Alternatively, the byte position of the)]TJ -0 -1.2889 TD -0.1611 Tw -[(end-of-file. Like )]TJ -/TT8 1 Tf -8.0312 0 TD -0 Tw -(\(GETEOFPTR)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.4111 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1611 Tw -(, but )Tj -/TT12 1 Tf -2.5546 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1611 Tw -[( does not have to be)]TJ --22.3988 -1.2889 TD -0 Tw -(open.)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6127 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-14)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 188.4 569.54 Tm -(SIZE)Tj -/TT6 1 Tf -3.7333 0 TD -(The size of )Tj -/TT12 1 Tf -4.9966 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( in pages.)Tj -/TT8 1 Tf --15.9303 -2.0667 TD -(CREATIONDATE)Tj -/TT6 1 Tf -8.5333 0 TD -0.1011 Tw -(The date and time, as a string, that the content of )Tj -/TT12 1 Tf -22.9076 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -[( was "created".)]TJ --25.308 -1.2889 TD -0.0722 Tw -(The creation date changes whenever the content of the file is modified,)Tj -0 -1.2222 TD -0.1144 Tw -(but remains unchanged when a file is transported, unmodified, across)Tj -T* -0.2278 Tw -[(file systems. Specifically, )]TJ -/TT8 1 Tf -12.3667 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2278 Tw -[( and )]TJ -/TT8 1 Tf -2.6484 0 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.2278 Tw -[( \(see below\))]TJ --25.8169 -1.2889 TD -0.1956 Tw -[(preserve the files creation date. Note that this is different from the)]TJ -0 -1.2222 TD -0.4178 Tw -(concept of "creation date" used by some operating systems \(e.g.,)Tj -T* -0 Tw -(Tops20\).)Tj -/TT8 1 Tf --6.7333 -2 TD -(WRITEDATE)Tj -/TT6 1 Tf -6.7333 0 TD -0.0378 Tw -(The date and time, as a string, that the content of )Tj -/TT12 1 Tf -22.211 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0378 Tw -[( was last written)]TJ --24.6114 -1.2889 TD -0.1678 Tw -[(to this particular file system. When a file is copied, its creation date)]TJ -0 -1.2222 TD -0.0622 Tw -(does not change, but its write date becomes the time at which the copy)Tj -T* -0 Tw -(is made.)Tj -/TT8 1 Tf --6.1333 -2 TD -(READDATE)Tj -/TT6 1 Tf -6.1333 0 TD -0.0678 Tw -(The date and time, as a string, that )Tj -/TT12 1 Tf -16.0364 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0678 Tw -[( was last read, or )]TJ -/TT8 1 Tf -8.0635 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0678 Tw -[( if it has)]TJ --28.3005 -1.2889 TD -0 Tw -(never been read.)Tj -/TT8 1 Tf --9.1333 -2 TD -(ICREATIONDATE)Tj -1.8 -1.2889 TD -(IWRITEDATE)Tj -0.6 -1.2889 TD -(IREADDATE)Tj -/TT6 1 Tf -6.7333 0 TD -(The )Tj -/TT8 1 Tf -2.3872 0 TD -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT8 1 Tf -0.9633 0 TD -(WRITEDATE)Tj -/TT6 1 Tf -5.4009 0 TD -0.4633 Tw -[( and )]TJ -/TT8 1 Tf -3.1195 0 TD -0 Tw -(READDATE)Tj -/TT6 1 Tf -4.8008 0 TD -0.4633 Tw -(, respectively, in)Tj --23.8729 -1.2889 TD -0.0722 Tw -(integer form, as )Tj -/TT8 1 Tf -7.4056 0 TD -0 Tw -(IDATE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0722 Tw -[( \(Chapter 12\) would return. This form is useful)]TJ --10.4061 -1.2889 TD -0 Tw -(for comparing dates.)Tj -/TT8 1 Tf --4.9333 -2 TD -(AUTHOR)Tj -/TT6 1 Tf -4.9333 0 TD -(The name of the user who last wrote the file.)Tj -/TT8 1 Tf --3.7333 -2.0667 TD -(TYPE)Tj -/TT6 1 Tf -3.7333 0 TD -0.0478 Tw -(The "type" of the file, some indication of the nature of the files content.)Tj -0 -1.2889 TD -0.1333 Tw -[(The "types" of files allowed depends on the file device. Most devices)]TJ -0 -1.2222 TD -0.0078 Tw -(recognize the symbol )Tj -/TT8 1 Tf -9.6854 0 TD -0 Tw -(TEXT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( to mean that the file contains just characters,)]TJ --12.0858 -1.2889 TD -0 Tw -(or )Tj -/TT8 1 Tf -1.1909 0 TD -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -( to mean that the file contains arbitrary data.)Tj --4.7915 -2.0667 TD -0.3278 Tw -(Some devices support a wider range of file types that distinguish)Tj -0 -1.2222 TD -0.2656 Tw -(among the various sorts of files one might create whose content is)Tj -T* -0.2467 Tw -[("binary". All devices interpret any value of )]TJ -/TT8 1 Tf -21.3249 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2467 Tw -[( that they do not)]TJ --23.7253 -1.2889 TD -0.2767 Tw -(support to be )Tj -/TT8 1 Tf -6.9804 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.2767 Tw -[(. Thus, )]TJ -/TT8 1 Tf -4.3017 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2767 Tw -[( may return the more)]TJ --21.4837 -1.2889 TD -0.1489 Tw -(general value )Tj -/TT8 1 Tf -6.518 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.1489 Tw -[( instead of the original type that was passed to)]TJ -/TT8 1 Tf --10.1186 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.8178 Tw -[( or )]TJ -/TT8 1 Tf -3.0765 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.8178 Tw -[(. Similarly, )]TJ -/TT8 1 Tf -7.7263 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.8178 Tw -(, while)Tj --28.2056 -1.2889 TD -0.0589 Tw -(attempting to preserve the )Tj -/TT8 1 Tf -12.1823 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0589 Tw -[( of the file it is copying, may turn, say,)]TJ --14.5827 -1.2889 TD -0 Tw -(an )Tj -/TT8 1 Tf -1.332 0 TD -(INTERPRESS)Tj -/TT6 1 Tf -6.001 0 TD -( file into a mere )Tj -/TT8 1 Tf -7.125 0 TD -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -( file.)Tj --18.0586 -2.0667 TD -0.1 Tw -(The way in which some file devices \(e.g., Xerox file servers\) support a)Tj -0 -1.2222 TD -0.0289 Tw -(wide range of file types is by representing the type as an integer, whose)Tj -T* -0.1244 Tw -[(interpretation is known by the client. The variable )]TJ -/TT8 1 Tf -23.7123 0 TD -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.1244 Tw -[( is)]TJ --30.9135 -1.2889 TD -0.0889 Tw -[(used to associate symbolic types with numbers for these devices. This)]TJ -0 -1.2222 TD -0.0367 Tw -(list initially contains some of the well-known assignments of type name)Tj -T* -0.0978 Tw -(to number; you can add additional elements to handle any private file)Tj -T* -0.1322 Tw -[(types. For example, suppose there existed an NS file type )]TJ -/TT8 1 Tf -27.1961 0 TD -0 Tw -(MAZEFILE)Tj -/TT6 1 Tf --27.1961 -1.2889 TD -0.2767 Tw -[(with numeric value 5678. You could add the element )]TJ -/TT8 1 Tf -26.6031 0 TD -0 Tw -(\(MAZEFILE)Tj --26.6031 -1.2889 TD -(5678\))Tj -/TT6 1 Tf -3.0005 0 TD -0.1533 Tw -[( to )]TJ -/TT8 1 Tf -1.6787 0 TD -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.1533 Tw -[( and then use )]TJ -/TT8 1 Tf -6.7813 0 TD -0 Tw -(MAZEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1533 Tw -[( as a value for the)]TJ -/TT8 1 Tf --23.4625 -1.2889 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( attribute to )]TJ -/TT8 1 Tf -5.5052 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0278 Tw -[( or )]TJ -/TT8 1 Tf -1.4965 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0278 Tw -[(. Other devices are, of)]TJ -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -57 0 obj -<< -/Length 5909 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-15)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.0067 Tw -(course, free to store )Tj -/TT8 1 Tf -8.8953 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0067 Tw -[( attributes in whatever manner they wish, be it)]TJ --11.2957 -1.2889 TD -0.0678 Tw -(numeric or symbolic. )Tj -/TT8 1 Tf -10.1266 0 TD -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.0678 Tw -[( is merely considered the official)]TJ --17.3277 -1.2889 TD -0 Tw -(registry for Xerox file types.)Tj -0 -2 TD -0.0144 Tw -(For most file devices, the )Tj -/TT8 1 Tf -11.3217 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0144 Tw -[( of a newly created file, if not specified in)]TJ --13.7221 -1.2889 TD -0 Tw -(the )Tj -/TT12 1 Tf -1.835 0 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.1978 Tw -[( argument to )]TJ -/TT8 1 Tf -6.5396 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1978 Tw -(, defaults to the value of)Tj -/TT8 1 Tf --20.3766 -1.2889 TD -0 Tw -(DEFAULTFILETYPE)Tj -/TT6 1 Tf -9.0015 0 TD -(, initially )Tj -/TT8 1 Tf -4.1694 0 TD -(TEXT)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --15.5713 -2.0667 TD -0.1878 Tw -(The following are currently recognized as temporary attributes of an)Tj -0 -1.2222 TD -0 Tw -(open stream:)Tj -/TT8 1 Tf --4.9333 -2 TD -(ACCESS)Tj -/TT6 1 Tf -4.9333 0 TD -0.3367 Tw -(The current access rights of the stream \(see the beginning of this)Tj -0 -1.2889 TD -0.0911 Tw -[(chapter\). Can be one of )]TJ -/TT8 1 Tf -11.2659 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5911 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0911 Tw -(; or )Tj -/TT8 1 Tf -1.8731 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0911 Tw -[( if the)]TJ --29.3147 -1.2889 TD -0 Tw -(stream is not open.)Tj -/TT8 1 Tf --9.1333 -2 TD -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -9.1333 0 TD -0.0089 Tw -(The action to be taken when a stream is at "end of file" and an attempt is)Tj -0 -1.2889 TD -0.0933 Tw -[(made to take input from it. The value of this attribute is a function of)]TJ -0 -1.2222 TD -0.0333 Tw -[(one argument, the stream. The function can examine the stream and its)]TJ -T* -0.1733 Tw -[(calling context and take any action it wishes. If the function returns)]TJ -T* -0.0544 Tw -(normally, its should return either )Tj -/TT8 1 Tf -15.2463 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0544 Tw -(, meaning to try the input operation)Tj --15.8464 -1.2889 TD -0.11 Tw -(again, or the byte that )Tj -/TT8 1 Tf -10.4562 0 TD -0 Tw -(BIN)Tj -/TT6 1 Tf -1.8003 0 TD -0.11 Tw -[( would have returned had there been more)]TJ --12.2565 -1.2889 TD -0.2711 Tw -[(bytes to read. Ordinarily, one should not let the )]TJ -/TT8 1 Tf -24.2057 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf --24.2057 -1.2889 TD -0.0111 Tw -(function return unless one is only performing binary input from the file,)Tj -0 -1.2222 TD -0.0089 Tw -(since there is no way in general of knowing in what state the reader was)Tj -T* -0.1344 Tw -(at the time the end of file occurred, and hence how it will interpret a)Tj -T* -0 Tw -(single byte returned to it.)Tj -0 -2 TD -0.0656 Tw -(The default )Tj -/TT8 1 Tf -5.448 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.0656 Tw -[( is a system function that causes the error)]TJ -/TT8 1 Tf --13.2493 -1.2889 TD -0.0356 Tw -(END OF FILE)Tj -/TT6 1 Tf -6.6722 0 TD -0.0144 Tw -[(. The behavior of that error can be further modified for a)]TJ --6.6722 -1.2889 TD -0 Tw -(particular stream by using the )Tj -/TT8 1 Tf -13.5557 0 TD -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -( option of )Tj -/TT8 1 Tf -4.521 0 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -( \(see below\).)Tj -/TT8 1 Tf --28.4112 -2.0667 TD -(EOL)Tj -/TT6 1 Tf -3.1333 0 TD -0.03 Tw -[(The end-of-line convention for the stream. This can be )]TJ -/TT8 1 Tf -24.6623 0 TD -0 Tw -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.53 0 TD -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -0.03 Tw -(, or )Tj -/TT8 1 Tf -1.7509 0 TD -0 Tw -(CRLF)Tj -/TT6 1 Tf -2.4004 0 TD -(,)Tj --31.744 -1.2889 TD -0.3056 Tw -(indicating with what byte or sequence of bytes the "End Of Line")Tj -0 -1.2222 TD -0.0144 Tw -[(character is represented on the stream. On input, that sequence of bytes)]TJ -T* -0.0222 Tw -(on the stream is read as )Tj -/TT8 1 Tf -10.7788 0 TD -0.0522 Tw -(\(CHARCODE EOL\))Tj -/TT6 1 Tf -8.4536 0 TD -0.0222 Tw -[( by )]TJ -/TT8 1 Tf -1.6538 0 TD -0 Tw -(READCCODE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0222 Tw -[( or the string)]TJ --26.2871 -1.2889 TD -0.0067 Tw -[(reader. On output, )]TJ -/TT8 1 Tf -8.7591 0 TD -0 Tw -(\(TERPRI\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0067 Tw -[( and )]TJ -/TT8 1 Tf -2.2062 0 TD -0.0167 Tw -(\(PRINTCCODE \(CHARCODE EOL\)\))Tj -/TT6 1 Tf --15.7661 -1.2889 TD -0 Tw -(cause that sequence of bytes to be placed on the stream.)Tj -0 -2 TD -0.2022 Tw -[(The end of line convention is usually not apparent to you. The file)]TJ -0 -1.2222 TD -0.0978 Tw -(system is usually aware of the convention used by a particular remote)Tj -T* -0.1256 Tw -[(operating system, and sets this attribute accordingly. If you believe a)]TJ -T* -0.0989 Tw -(file actually is stored with a different convention than the default, it is)Tj -T* -0.1011 Tw -(possible to modify the default behavior by including the )Tj -/TT8 1 Tf -26.0497 0 TD -0 Tw -(EOL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1011 Tw -[( attribute)]TJ --27.8499 -1.2889 TD -0 Tw -(in the )Tj -/TT12 1 Tf -2.7603 0 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -( argument to )Tj -/TT8 1 Tf -5.9463 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf --26.2418 -2.0667 TD -(BUFFERS)Tj -/TT6 1 Tf -5.5333 0 TD -0.01 Tw -(Value is the number of 512-byte buffers that the stream maintains at one)Tj -0 -1.2889 TD -0.2767 Tw -[(time. This attribute is only used by certain random-access devices)]TJ -0 -1.2222 TD -0 Tw -(\(currently, the local disk, floppy, and Leaf servers\); all others ignore it.)Tj -0 -2 TD -0.3711 Tw -(Streams open to files generally maintain some portion of the file)Tj -0 -1.2222 TD -0.2678 Tw -(buffered in memory, so that each call to an I/O function does not)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -60 0 obj -<< -/Length 6906 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-16)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 222 569.54 Tm -0.0778 Tw -[(require accessing the actual file on disk or a file server. For files being)]TJ -0 -1.2222 TD -0.2167 Tw -(read or written sequentially, not much buffer space is needed, since)Tj -T* -0.02 Tw -[(once a byte is read or written, it will never need to be seen again. In the)]TJ -T* -0.1322 Tw -(case of random access streams, buffering is more complicated, since a)Tj -T* -0.0256 Tw -(program may jump around in the file, using )Tj -/TT8 1 Tf -19.9374 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.0256 Tw -[( \(Chapter 25\).)]TJ --25.9383 -1.2889 TD -0.0989 Tw -(In this case, the more buffer space the stream has, the more likely it is)Tj -0 -1.2222 TD -0.19 Tw -(that after a )Tj -/TT8 1 Tf -5.5876 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.19 Tw -[( to a place in the file that has already been)]TJ --11.5886 -1.2889 TD -0.0667 Tw -(accessed, the stream still has that part of the file buffered and need not)Tj -0 -1.2222 TD -0.1067 Tw -[(go out to the device again. This benefit must, of course, be traded off)]TJ -T* -0 Tw -(against the amount of memory consumed by the buffers.)Tj --10.6667 -2 TD -0.3922 Tw -(NS servers implement the following additional attributes for )Tj -/TT8 1 Tf -30.1729 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.3922 Tw -[( \(neither of these)]TJ --36.774 -1.2889 TD -0 Tw -(attributes are settable with )Tj -/TT8 1 Tf -12.0093 0 TD -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -(\):)Tj -/TT8 1 Tf --12.877 -2.0667 TD -(READER)Tj -/TT6 1 Tf -4.9333 0 TD -(The name of the user who last read the file.)Tj -/TT8 1 Tf --7.3333 -2.0667 TD -(PROTECTION)Tj -/TT6 1 Tf -7.3333 0 TD -0.01 Tw -(A list specifying the access rights to the file. Each element of the list is of)Tj -0 -1.2889 TD -0.0144 Tw -(the form \(name nametype . rights\). Name is the name of a user or group)Tj -0 -1.2222 TD -0.1733 Tw -(or a name pattern. Rights is one or more of the symbols )Tj -/TT8 1 Tf -26.7797 0 TD -0.4167 Tw -(ALL READ)Tj --26.7797 -1.2889 TD -0.1133 Tw -(WRITE DELETE CREATE)Tj -/TT6 1 Tf -11.6285 0 TD -0.0467 Tw -[( or )]TJ -/TT8 1 Tf -1.5343 0 TD -0 Tw -(MODIFY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0467 Tw -(. For servers running services 10.0)Tj --16.7634 -1.2889 TD -(or later, nametype is the symbol "--". , In earlyer releases it is one of the)Tj -0 -1.2222 TD -0 Tw -(symbols )Tj -/TT8 1 Tf -3.9268 0 TD -(INDIVIDUAL)Tj -/TT6 1 Tf -6.001 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(GROUP)Tj -/TT4 1 Tf -10 0 0 10 102 317.8 Tm -(Closing and Reopening Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 315.09 m -558.01 315.09 l -S -BT -/TT6 1 Tf -9 0 0 9 126 301.14 Tm -0.0889 Tw -(The function )Tj -/TT8 1 Tf -6.0586 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0889 Tw -[( permits you to associate certain operations with open streams that govern)]TJ --11.4595 -1.2889 TD -0.1611 Tw -[(how and when the stream will be closed. You can specify that certain functions will be executed)]TJ -0 -1.2222 TD -0 Tw -(before )Tj -/TT8 1 Tf -3.1107 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( closes the stream and/or after )]TJ -/TT8 1 Tf -14.2277 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( closes the stream. You can make a particular)]TJ --24.5396 -1.2889 TD -0 Tw -(stream be invisible to )Tj -/TT8 1 Tf -9.6782 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -(, so that it will remain open across user invocations of )Tj -/TT8 1 Tf -23.9751 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --40.5882 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(WHENCLOSE)Tj -/TT4 1 Tf -10 0 0 10 204 244 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 206.7783 244 Tm -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PROP)Tj -2.3998 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(...)Tj -/TT14 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.3333 TD -(N)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 358.4308 244 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 244 Tm -([NoSpread Function])Tj -/TT12 1 Tf --30.6656 -2.1778 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1722 Tw -[( must designate an open stream other than )]TJ -/TT8 1 Tf -20.4769 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1722 Tc -( \()Tj -/TT8 1 Tf -0.7552 0 TD -0 Tc -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -[( defaults to the primary input)]TJ --26.0329 -1.2889 TD -0.2844 Tw -(stream, if other than )Tj -/TT8 1 Tf -10.337 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2844 Tw -(, or primary output stream if other than )Tj -/TT8 1 Tf -20.0422 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2844 Tw -[(\). The remaining)]TJ --31.5793 -1.2889 TD -0.1211 Tw -(arguments specify properties to be associated with the full name of )Tj -/TT12 1 Tf -31.2053 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1211 Tw -(. )Tj -/TT8 1 Tf -0.9922 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf --34.5979 -1.2889 TD -(returns the full name of )Tj -/TT12 1 Tf -10.6821 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( as its value.)Tj -/TT8 1 Tf --13.0825 -2.0667 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -( recognizes the following property names:)Tj -/TT8 1 Tf --5.0009 -2.0667 TD -(BEFORE)Tj -/TT12 1 Tf -4.9333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( is a function that )]TJ -/TT8 1 Tf -8.3396 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0867 Tw -[( will apply to the stream just before it is)]TJ --13.7405 -1.2889 TD -0.0433 Tw -[(closed. This might be used, for example, to copy information about the)]TJ -0 -1.2222 TD -0 Tw -(file from an in-core data structure to the file just before it is closed.)Tj -/TT8 1 Tf --4.3333 -2 TD -(AFTER)Tj -/TT12 1 Tf -4.3333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1411 Tw -[( is a function that )]TJ -/TT8 1 Tf -8.6118 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1411 Tw -[( will apply to the stream just after it is)]TJ --14.0127 -1.2889 TD -0.0578 Tw -[(closed. This capability permits in-core data structures that know about)]TJ -0 -1.2222 TD -0 Tw -(the stream to be cleaned up when the stream is closed. )Tj -/TT8 1 Tf --6.1333 -2 TD -(CLOSEALL)Tj -/TT12 1 Tf -6.1333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0002 Tc -0.002 Tw -( is either )Tj -/TT8 1 Tf -4.0238 0 TD -0 Tc -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.0006 Tc -0.0016 Tw -( or )Tj -/TT8 1 Tf -1.4454 0 TD -0 Tc -0 Tw -(NO )Tj -/TT6 1 Tf -1.8047 0 TD -0.0022 Tw -(and determines whether )Tj -/TT12 1 Tf -11.0755 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -( will be closed by)Tj -/TT8 1 Tf --24.3504 -1.2889 TD -0 Tc -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0722 Tc -( \()Tj -/TT8 1 Tf -0.6552 0 TD -0 Tc -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -(\) or whether )Tj -/TT8 1 Tf -5.9178 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0722 Tw -[( will ignore it \()]TJ -/TT8 1 Tf -6.7952 0 TD -0 Tw -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0722 Tw -(\). )Tj -/TT8 1 Tf -1.2275 0 TD -0 Tw -(CLOSEALL)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -63 0 obj -<< -/Length 5826 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-17)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(uses )Tj -/TT8 1 Tf -2.1841 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0044 Tw -(, so that any )Tj -/TT8 1 Tf -5.6101 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0043 Tw -( functions will be executed if the stream)Tj --14.3953 -1.2889 TD -0 Tc -0 Tw -(is in fact closed. Files are initialized with )Tj -/TT8 1 Tf -18.3867 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -( set to )Tj -/TT8 1 Tf -2.8511 0 TD -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --30.9722 -2.0667 TD -(EOF)Tj -/TT12 1 Tf -3.1333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0567 Tw -[( is a function that will be applied to the stream when an end-of-file)]TJ --1.8003 -1.2889 TD -0.0111 Tw -(error occurs, and the )Tj -/TT8 1 Tf -9.44 0 TD -0 Tw -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.0111 Tw -[( entry for that error, if any, returns)]TJ -/TT8 1 Tf --16.6411 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[(. The function can examine the context of the error, and can decide)]TJ --1.8003 -1.2889 TD -0.0722 Tw -(whether to close the stream, )Tj -/TT8 1 Tf -12.9881 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.0722 Tw -[( some function, or perform some)]TJ --17.1887 -1.2889 TD -0.0767 Tw -(other computation. If the function supplied returns normally \(i.e., does)Tj -0 -1.2222 TD -0 Tw -(not )Tj -/TT8 1 Tf -2.0619 0 TD -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.3578 Tw -[( some function\), the normal error machinery will be)]TJ --6.2626 -1.2889 TD -0 Tw -(invoked.)Tj -0 -2 TD -0.4167 Tw -(The default )Tj -/TT8 1 Tf -6.1502 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.4167 Tw -[( behavior, unless overridden by this )]TJ -/TT8 1 Tf -18.6499 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf --26.6004 -1.2889 TD -(option, is to call the value of )Tj -/TT8 1 Tf -12.709 0 TD -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9.0015 0 TD -( \(below\).)Tj --21.7105 -2.0667 TD -0.1533 Tw -(For some applications, the )Tj -/TT8 1 Tf -12.4761 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.1533 Tw -[( attribute \(see above\) is a)]TJ --20.2774 -1.2889 TD -0.8767 Tw -[(more useful way to intercept the end-of-file error. The)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.0489 Tw -[( attribute comes into effect before the error machinery)]TJ --7.8013 -1.2889 TD -0 Tw -(is ever activated.)Tj -0 -2 TD -(Multiple )Tj -/TT8 1 Tf -4.2337 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.1556 Tw -[( and )]TJ -/TT8 1 Tf -2.504 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1556 Tw -[( functions may be associated with a file;)]TJ --13.3387 -1.2889 TD -0.4311 Tw -(they are executed in sequence with the most recently associated)Tj -0 -1.2222 TD -0.0922 Tw -[(function executed first. The )]TJ -/TT8 1 Tf -13.048 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0922 Tw -[( and )]TJ -/TT8 1 Tf -2.3773 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -[( values, however, will)]TJ --22.0264 -1.2889 TD -0.2156 Tw -(override earlier values, so only the last value specified will have an)Tj -0 -1.2222 TD -0 Tw -(effect.)Tj -/TT10 1 Tf --8 -2.3333 TD -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9 0 TD -[( )-28767.8([Variable])]TJ --6.3333 -1.8444 TD -0.0767 Tw -(Value is the name of a function that is called by default when an end of file error occurs)Tj -0 -1.2222 TD -0.0589 Tw -(and no )Tj -/TT8 1 Tf -3.4386 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0589 Tw -[( option has been specified for the stream by )]TJ -/TT8 1 Tf -20.0012 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0589 Tw -[(. The initial value of)]TJ -/TT8 1 Tf --30.6409 -1.2889 TD -0 Tw -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9.0015 0 TD -0.2011 Tw -[( is )]TJ -/TT8 1 Tf -1.6171 0 TD -0 Tw -(NILL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2011 Tw -(, meaning take no special action \(go ahead and cause the)Tj --13.0189 -1.2889 TD -0.1344 Tw -[(error\). Setting it to )]TJ -/TT8 1 Tf -9.2899 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1344 Tw -[( would cause the stream to be closed before the rest of the)]TJ --12.8905 -1.2889 TD -0 Tw -(error machinery is invoked.)Tj -/TT4 1 Tf -10 0 0 10 54 214 Tm -(I/O Operations to and from Strings)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 211.29 m -510.01 211.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 197.34 Tm -(It is possible to treat a string as if it were the contents of a file by using the following function:)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(OPENSTRINGSTREAM)Tj -/TT6 1 Tf -9.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STR)Tj -/TT14 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 252.3088 175 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 175 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0267 Tw -(Returns a stream that can be used to access the characters of the string )Tj -/TT12 1 Tf -31.5691 0 TD -0 Tw -(STR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -(. )Tj -/TT12 1 Tf -0.8033 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0267 Tw -[( may)]TJ --37.7734 -1.2889 TD -0.0644 Tw -(be either )Tj -/TT8 1 Tf -4.2134 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5644 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0644 Tw -(, or )Tj -/TT8 1 Tf -1.8198 0 TD -0 Tw -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(; )Tj -/TT8 1 Tf -0.5644 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0644 Tw -[( defaults to )]TJ -/TT8 1 Tf -5.3823 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0644 Tw -[(. The stream returned may be)]TJ --26.3466 -1.2889 TD -0.1122 Tw -(used exactly like a file opened with the same access, except that output operations may)Tj -0 -1.2222 TD -0.0944 Tw -[(not extend past the end of the original string. Also, string streams do not appear in the)]TJ -T* -0 Tw -(value of )Tj -/TT8 1 Tf -3.8169 0 TD -(\(OPENP\))Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --8.0176 -2.0667 TD -(For example, after performing)Tj -/TT8 1 Tf -0 -2.8222 TD -(\(SETQ STRM \(OPENSTRINGSTREAM "THIS 2 \(IS A LIST\)"\)\))Tj -/TT6 1 Tf -0 -2.0667 TD -(the following succession of reads could occur:)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -66 0 obj -<< -/Length 6670 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-18)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 570.14 Tm -(\(READ STRM\) => THIS)Tj -0 -1 TD -( \(RATOM STRM\) => 2)Tj -T* -( \(READ STRM\) => \(IS A LIST\))Tj -T* -( \(EOFP STRM\) => T)Tj -/TT6 1 Tf --10.6667 -1.8444 TD -0.0933 Tw -(Compatibility Note: In Interlisp-10 it was possible to take input from a string simply by passing the)Tj -0 -1.2222 TD -0.0033 Tw -(string as the )Tj -/TT12 1 Tf -5.6453 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( argument to an input function. In order to maintain compatibility with this feature,)Tj --8.0456 -1.2889 TD -0 Tc -0.3789 Tw -[(Medley provides the same capability. This not terribly clean feature persists in the present)]TJ -0 -1.2222 TD -0.0711 Tw -[(implementation to give users time to convert old code. This means that strings are )]TJ -/TT14 1 Tf -37.8137 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0711 Tw -[( equivalent to)]TJ --39.1467 -1.2222 TD -0.0989 Tw -[(symbols when specifying a file name as a stream argument. In a future release, the old Interlisp-10)]TJ -T* -0.1878 Tw -(string-reading feature will be decommissioned, and )Tj -/TT8 1 Tf -24.238 0 TD -0 Tw -(OPENSTRINGSTREAM)Tj -/TT6 1 Tf -9.6016 0 TD -0.1878 Tw -[( will be the only way to)]TJ --33.8396 -1.2889 TD -0 Tw -(perform I/O on a string.)Tj -/TT4 1 Tf -10 0 0 10 102 432 Tm -(Temporary Files and the CORE Device)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 429.29 m -558.01 429.29 l -S -BT -/TT6 1 Tf -9 0 0 9 126 415.34 Tm -0.0689 Tw -(Many operating systems have a notion of "scratch file", a file typically used as temporary storage for)Tj -0 -1.2222 TD -0.0433 Tw -[(data most naturally maintained in the form of a file, rather than some other data structure. A scratch)]TJ -T* -0.0011 Tw -(file can be used as a normal file in most respects, but is automatically deleted from the file system after)Tj -T* -0.0167 Tw -[(its useful life is up, e.g., when the job terminates, or you log out. In normal operation, you need never)]TJ -T* -0 Tw -(explicitly delete such files, since they are guaranteed to disappear soon.)Tj -0 -2 TD -0.1522 Tw -[(A similar functionality is provided in Medley by core-resident files. Core-resident files are on the)]TJ -0 -1.2222 TD -0 Tw -(device )Tj -/TT8 1 Tf -3.2731 0 TD -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1544 Tw -[(. The directory structure for this device and all files on it are represented completely)]TJ --5.6735 -1.2889 TD -0.0611 Tw -[(within your virtual memory. These files are treated as ordinary files by all file operations; their only)]TJ -0 -1.2222 TD -0 Tw -(distinguishing feature is that all trace of them disappears when the Medley image is abandoned.)Tj -0 -2 TD -0.4222 Tw -(Core files are opened and closed by name the same as any other file, e.g., )Tj -/TT8 1 Tf -38.7347 0 TD -0 Tw -(\(OPENSTREAM)Tj --38.7347 -1.2889 TD -0.3544 Tw -({CORE}FIE.DCOM OUTPUT\))Tj -/TT6 1 Tf -17.7573 0 TD -0.1478 Tw -[(. Directory names are completely optional, so files can also)]TJ --17.7573 -1.2889 TD -0.0111 Tw -(have names of the form )Tj -/TT8 1 Tf -10.7221 0 TD -0 Tw -({CORE}NAME.EXT)Tj -/TT6 1 Tf -8.4014 0 TD -0.0111 Tw -[(. Core files can be enumerated by )]TJ -/TT8 1 Tf -15.2901 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -[( \(see below\).)]TJ --39.8144 -1.2889 TD -0.0944 Tw -(While open, they are registered in \()Tj -/TT8 1 Tf -16.1262 0 TD -0 Tw -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -0.0944 Tw -[(\). They do consume virtual memory space, which is only)]TJ --19.1267 -1.2889 TD -0.0356 Tw -[(reclaimed when the file is deleted. Some caution should thus be used when creating large )]TJ -/TT8 1 Tf -40.5772 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( files.)]TJ --42.9776 -1.2889 TD -0.0067 Tw -(Since the virtual memory of an Medley workstation usually persists far longer than the typical process)Tj -0 -1.2222 TD -0 Tw -(on a mainframe computer, it is still important to delete )Tj -/TT8 1 Tf -24.4429 0 TD -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -( files after they are no longer in use.)Tj --26.8433 -2.0667 TD -0.1089 Tw -(For many applications, the name of the scratch file is irrelevant, and there is no need for anyone to)Tj -0 -1.2222 TD -0.04 Tw -[(have access to the file independent of the program that created it. For such applications, )]TJ -/TT8 1 Tf -39.931 0 TD -0 Tw -(NODIRCORE)Tj -/TT6 1 Tf --39.931 -1.2889 TD -0.11 Tw -[(files are preferable. Files created on the device lisp )]TJ -/TT8 1 Tf -23.8129 0 TD -0 Tw -(NODIRCORE)Tj -/TT6 1 Tf -5.4009 0 TD -0.11 Tw -[( are core-resident files that have no)]TJ --29.2138 -1.2889 TD -0.0467 Tw -[(name and are registered in no directory. These files "disappear", and the resources they consume are)]TJ -0 -1.2222 TD -0.0089 Tw -[(reclaimed, when all pointers to the file are dropped. Hence, such files need never be explicitly deleted)]TJ -T* -0.2211 Tw -[(or, for that matter, closed. The "name" of such a file is simply the stream object returned from)]TJ -/TT8 1 Tf -T* -0.2922 Tw -(\(OPENSTREAM {NODIRCORE} OUTPUT\))Tj -/TT6 1 Tf -20.3877 0 TD -0.1222 Tw -(, and it is this stream object that must be passed to all)Tj --20.3877 -1.4378 TD -0 Tw -(input/output operations, including )Tj -/TT8 1 Tf -15.9556 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -( and any calls to )Tj -/TT8 1 Tf -7.4028 0 TD -(OPENSTREAM)Tj -/TT16 1 Tf -10 0 0 10 422.6396 134 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 425.418 134 Tm -(to reopen the file. )Tj -/TT8 1 Tf --30.602 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(COREDEVICE)Tj -/TT4 1 Tf -10 0 0 10 209.4 111.06 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 212.1783 111.06 Tm -(NAME)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NODIRFLG)Tj -/TT8 1 Tf -4.8008 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 284.6397 111.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 111.06 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1 Tw -(Creates a new device for core-resident files and assigns )Tj -/TT12 1 Tf -25.4947 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1 Tw -[( as its device name. Thus,)]TJ --27.8951 -1.2889 TD -0.2389 Tw -(after performing )Tj -/TT8 1 Tf -8.072 0 TD -0.5733 Tw -(\(COREDEVICE FOO\))Tj -/TT6 1 Tf -10.775 0 TD -0.2389 Tw -(, one can execute )Tj -/TT8 1 Tf -8.6645 0 TD -0 Tw -(\(OPENSTREAM)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT8 1 Tf -0.4889 0 TD -({FOO}BAR)Tj --34.6015 -1.2889 TD -(OUTPUT\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0089 Tw -[( to open a file on that device. Medley is initialized with the single core-resident)]TJ --4.8008 -1.2889 TD -0.1789 Tw -(device named )Tj -/TT8 1 Tf -6.7811 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1789 Tw -(, but )Tj -/TT8 1 Tf -2.5902 0 TD -0 Tw -(COREDEVICE)Tj -/TT6 1 Tf -6.001 0 TD -0.1789 Tw -[( may be used to create any number of logically)]TJ --17.7727 -1.2889 TD -0 Tw -(distinct core devices.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -69 0 obj -<< -/Length 6582 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-19)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(NODIRFLG)Tj -/TT6 1 Tf -4.8008 0 TD -( is non-)Tj -/TT8 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, a core device that acts like )Tj -/TT8 1 Tf -12.2778 0 TD -({NODIRCORE})Tj -/TT6 1 Tf -6.6011 0 TD -( is created.)Tj --29.6577 -2.0667 TD -0.2155 Tw -(Compatibility note: In Interlisp-10, it was possible to create scratch files by using file)Tj -0 -1.2222 TD -0.1011 Tw -[(names with suffixes ;S or ;T. In Medley, these suffixes in file names are simply ignored)]TJ -T* -0.4444 Tw -[(when output is directed to a particular host or device. However, the function)]TJ -/TT8 1 Tf -T* -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.0511 Tw -[( is defined to default the device name to )]TJ -/TT8 1 Tf -18.3975 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0511 Tw -[( if the file has the)]TJ -/TT8 1 Tf --32.1997 -1.2889 TD -0 Tw -(TEMPORARY)Tj -/TT6 1 Tf -5.4009 0 TD -( attribute and no explicit host is provided.)Tj -/TT4 1 Tf -10 0 0 10 54 478.4 Tm -(NULL Device)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 475.69 m -510.01 475.69 l -S -BT -/TT6 1 Tf -9 0 0 9 78 461.74 Tm -(The )Tj -/TT8 1 Tf -2.1127 0 TD -(NULL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1889 Tw -[( device provides a source of content-free "files". )]TJ -/TT8 1 Tf -23.1141 0 TD -0.4522 Tw -(\(OPENSTREAM {NULL} OUTPUT\))Tj -/TT6 1 Tf --27.6272 -1.2889 TD -0.1478 Tw -(creates a stream that discards all output directed at it. )Tj -/TT8 1 Tf -25.7794 0 TD -0 Tw -(\(OPENSTREAM)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT8 1 Tf -0.3978 0 TD -({NULL})Tj -/TT18 1 Tf -4.2007 0 TD -0.1478 Tc -( )Tj -/TT8 1 Tf -0.6756 0 TD -0 Tc -(INPUT)Tj -/TT18 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.333 0 TD -0.1478 Tw -[( creates a)]TJ --40.988 -1.2889 TD -0 Tw -(stream that is perpetually at end-of-file \(i.e., has no input\). )Tj -/TT4 1 Tf -10 0 0 10 54 411.2 Tm -(Deleting, Copying, and Renaming Files)Tj -ET -54.01 408.49 m -510.01 408.49 l -S -BT -/TT8 1 Tf -9 0 0 9 102 390.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DELFILE)Tj -/TT6 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 174.4544 390.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 390.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Deletes )Tj -/TT12 1 Tf -3.6608 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1589 Tw -[( if possible. The file must be closed. Returns the full name of the file if)]TJ --6.0612 -1.2889 TD -0.1244 Tw -(deleted, else )Tj -/TT8 1 Tf -5.9476 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1244 Tw -[(. Recognition mode for )]TJ -/TT12 1 Tf -11.2257 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( is )]TJ -/TT8 1 Tf -1.4637 0 TD -0 Tw -(OLDEST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1244 Tw -(, i.e., if )Tj -/TT12 1 Tf -3.5174 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( does not have a)]TJ --32.3561 -1.2889 TD -0 Tw -(version number specified, then )Tj -/TT8 1 Tf -13.9487 0 TD -(DELFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( deletes the oldest version of the file.)Tj -/TT8 1 Tf --20.8161 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(COPYFILE)Tj -/TT6 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FROMFILE)Tj -/TT14 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TOFILE)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 236.1132 327.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 327.46 Tm -([Function])Tj --35.4033 -1.8444 TD -(Copies )Tj -/TT12 1 Tf -3.4009 0 TD -(FROMFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1011 Tw -[( to a new file named )]TJ -/TT12 1 Tf -9.8225 0 TD -0 Tw -(TOFILE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1011 Tw -[(. The source and destination may be on)]TJ --21.6248 -1.2889 TD -0.3544 Tw -(any combination of hosts/devices. )Tj -/TT8 1 Tf -17.5335 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3544 Tw -[( attempts to preserve the )]TJ -/TT8 1 Tf -12.9636 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3544 Tw -[( and)]TJ -/TT8 1 Tf --37.6983 -1.2889 TD -0 Tw -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -0.18 Tw -[( where possible. If the original files file type is unknown, )]TJ -/TT8 1 Tf -27.9994 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf --35.2005 -1.2889 TD -0.0789 Tw -(attempts to infer the type \(file type is )Tj -/TT8 1 Tf -17.2024 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0789 Tw -[( if any of its 8-bit bytes have their high bit)]TJ --20.803 -1.2889 TD -0 Tw -(on\).)Tj -/TT8 1 Tf -0 -2 TD -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3522 Tw -[( uses )]TJ -/TT8 1 Tf -3.1341 0 TD -0 Tw -(COPYCHARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.3522 Tw -[( \(Chapter 25\) if the source and destination hosts have)]TJ --13.3358 -1.2889 TD -0.02 Tw -[(different EOL conventions. Thus, it is possible for the source and destination files to be of)]TJ -0 -1.2222 TD -0 Tw -(different lengths.)Tj --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(RENAMEFILE)Tj -/TT6 1 Tf -6.0003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(OLDFILE)Tj -/TT14 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 242.1094 201.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 201.52 Tm -([Function])Tj --35.4033 -1.8444 TD -(Renames )Tj -/TT12 1 Tf -4.2958 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( to be )]TJ -/TT12 1 Tf -2.7476 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[(. Causes an error, )]TJ -/TT8 1 Tf -8.3362 0 TD -0.0756 Tw -(FILE NOT FOUND)Tj -/TT6 1 Tf -8.5525 0 TD -0.0311 Tw -[( if )]TJ -/TT12 1 Tf -1.1862 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -[( does not)]TJ --35.9201 -1.2889 TD -0.0233 Tw -[(exist. Returns the full name of the new file, if successful, else )]TJ -/TT8 1 Tf -27.486 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0233 Tw -[( if the rename cannot be)]TJ --29.2862 -1.2889 TD -0 Tw -(performed.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.1133 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1933 Tw -[( and )]TJ -/TT12 1 Tf -2.5795 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1933 Tw -[( are on the same host/device, and the device implements a)]TJ --12.0942 -1.2889 TD -0.0133 Tw -(renaming primitive, )Tj -/TT8 1 Tf -9.1668 0 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0133 Tw -[( can be very fast. However, if the device does not know)]TJ --15.1678 -1.2889 TD -0.2544 Tw -(how to rename files in place, or if )Tj -/TT12 1 Tf -17.0082 0 TD -0 Tw -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2544 Tw -[( and )]TJ -/TT12 1 Tf -2.7018 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2544 Tw -[( are on different devices,)]TJ -/TT8 1 Tf --28.1113 -1.2889 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -( works by copying )Tj -/TT12 1 Tf -8.4404 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( to )Tj -/TT12 1 Tf -1.3721 0 TD -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( and then deleting )Tj -/TT12 1 Tf -8.2773 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -72 0 obj -<< -/Length 7274 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-20)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.375 -4.38 TD -(Searching File Directories)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -558.01 565.49 l -S -BT -/TT10 1 Tf -9 0 0 9 150 547.2 Tm -(DIRECTORIES)Tj -/TT16 1 Tf -10 0 0 10 209.4 547.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 547.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1455 Tw -(Global variable containing the list of directories searched \(in order\) by SPELLFILE and)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(FINDFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1189 Tw -[( \(below\) when not given an explicit )]TJ -/TT12 1 Tf -16.677 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1189 Tw -[( argument. In this list, the atom)]TJ -/TT8 1 Tf --25.0783 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[( stands for the login directory \(the value of )]TJ -/TT8 1 Tf -19.534 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0456 Tw -(\), and the atom )Tj -/TT8 1 Tf -7.1002 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0456 Tw -[( stands)]TJ --36.8359 -1.2889 TD -0.5178 Tw -[(for the currently connected directory. Other elements should be )]TJ -/TT14 1 Tf -33.7959 0 TD -0 Tw -(full)Tj -/TT6 1 Tf -1.3896 0 TD -0.5178 Tw -[( directory)]TJ --35.1856 -1.2222 TD -0 Tw -(specifications, e.g., )Tj -/TT8 1 Tf -8.5107 0 TD -({TWENTY}PS:)Tj -/TT6 1 Tf -13.2022 0 TD -(, not merely )Tj -/TT8 1 Tf -5.5371 0 TD -(LISPUSERS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --35.3176 -2.5489 TD -(LISPUSERSDIRECTORIES)Tj -/TT16 1 Tf -10 0 0 10 258 462.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 462.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0856 Tw -[(Global variable containing a list of directories to search for "library" package files. Used)]TJ -0 -1.2222 TD -0 Tw -(by the )Tj -/TT8 1 Tf -2.9966 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( file package command \(Chapter 17\).)Tj -/TT8 1 Tf --8.6637 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NOPRINTFLG)Tj -/TT14 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NSFLG)Tj -/TT14 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DIRLST)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 353.4229 411.92 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 411.92 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0633 Tw -(Searches for the file name )Tj -/TT14 1 Tf -11.8933 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.0562 0 TD -0.0633 Tw -(, possibly performing spelling correction \(see Chapter 20\).)Tj --13.9495 -1.2222 TD -0 Tw -(Returns the corrected file name, if any, otherwise )Tj -/TT8 1 Tf -21.939 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --23.7393 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9877 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0678 Tw -[( has a directory field, )]TJ -/TT8 1 Tf -9.8926 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0678 Tw -[( attempts spelling correction against the files in)]TJ --18.6816 -1.2889 TD -0.0344 Tw -[(that particular directory. Otherwise, )]TJ -/TT8 1 Tf -16.642 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0344 Tw -[( searches for the file on the directory list)]TJ -/TT12 1 Tf --22.0428 -1.2889 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( before attempting any spelling correction.)Tj --3.6006 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9355 0 TD -(NOPRINTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0156 Tw -[( is )]TJ -/TT8 1 Tf -1.246 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5156 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0156 Tw -[( asks you to confirm any spelling correction done, and)]TJ --15.8991 -1.2889 TD -0.13 Tw -[(prints out any files found, even if spelling correction is not done. If )]TJ -/TT12 1 Tf -31.7936 0 TD -0 Tw -(NOPRINTFLG)Tj -/TT6 1 Tf -6.001 0 TD -( )Tj -/TT8 1 Tf -0.38 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.38 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj -/TT8 1 Tf --39.7548 -1.2889 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -( does not do any printing, nor ask for approval.)Tj --5.4009 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.021 0 TD -(NSFLG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.3511 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3511 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( \(or )]TJ -/TT8 1 Tf -1.9761 0 TD -0 Tw -(NOSPELLFLG)Tj -/TT6 1 Tf -6.001 0 TD -( )Tj -/TT8 1 Tf -0.3511 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3511 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -(, see Chapter 20\), no spelling correction is attempted,)Tj --15.8035 -1.2889 TD -0 Tw -(though searching through )Tj -/TT12 1 Tf -11.7886 0 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( still occurs.)Tj -/TT12 1 Tf --15.3892 -2.0667 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.21 Tw -[( is the list of directories searched if )]TJ -/TT12 1 Tf -17.2113 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.21 Tw -[( does not have a directory field. If)]TJ -/TT12 1 Tf --23.2122 -1.2889 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the value of the variable )Tj -/TT8 1 Tf -11.4155 0 TD -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -( is used.)Tj --21.9657 -2.0667 TD -[(Note:)-901.2(If )]TJ -/TT12 1 Tf -4.331 0 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0778 Tw -[( is )]TJ -/TT8 1 Tf -1.3704 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -(, and )Tj -/TT12 1 Tf -2.5984 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -[( is not found by searching the directories)]TJ --12.7678 -1.2889 TD -0 Tw -(on )Tj -/TT8 1 Tf -1.6824 0 TD -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -0.3044 Tw -(, but the root name of )Tj -/TT12 1 Tf -11.582 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3044 Tw -[( has a )]TJ -/TT8 1 Tf -3.6692 0 TD -0 Tw -(FILEDATES)Tj -/TT6 1 Tf --25.9351 -1.2889 TD -0.2211 Tw -(property \(Chapter 17\) indicating that a file by that name has been)Tj -0 -1.2222 TD -(loaded, then the directory indicated in the )Tj -/TT8 1 Tf -20.3798 0 TD -0 Tw -(FILEDATES)Tj -/TT6 1 Tf -5.4009 0 TD -0.2211 Tw -[( property is)]TJ --25.7807 -1.2889 TD -0.1533 Tw -[(searched, too. This additional search is not done if )]TJ -/TT12 1 Tf -24.1578 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1533 Tw -[( is non-)]TJ -/TT8 1 Tf --27.7584 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT8 1 Tf --7.8003 -2.0667 TD -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.1989 Tw -[( \(Chapter 14\) initially contains the entry )]TJ -/TT8 1 Tf -19.2404 0 TD -0.4789 Tw -(\(\(23 \(SPELLFILE \(CADR)Tj --26.4415 -1.2889 TD -0.0556 Tw -(ERRORMESS\) NIL NOFILESPELLFLG\)\)\))Tj -/TT6 1 Tf -19.3142 0 TD -0.0233 Tw -(, which causes )Tj -/TT8 1 Tf -6.6764 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( to be called in case)]TJ --31.3916 -1.2889 TD -0.1233 Tw -(of a )Tj -/TT8 1 Tf -2.1256 0 TD -0.2956 Tw -(FILE NOT FOUND)Tj -/TT6 1 Tf -8.9925 0 TD -0.1233 Tw -[( error. If the variable )]TJ -/TT8 1 Tf -10.3313 0 TD -0 Tw -(NOFILESPELLFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.1233 Tw -[( is )]TJ -/TT8 1 Tf -1.4615 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1233 Tw -[( \(its initial value\),)]TJ --31.9123 -1.2889 TD -0.0711 Tw -(then spelling correction is not done on the file name, but )Tj -/TT8 1 Tf -25.9365 0 TD -0 Tw -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -0.0711 Tw -[( is still searched.)]TJ --32.5376 -1.2889 TD -0 Tw -(If )Tj -/TT8 1 Tf -0.9621 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0422 Tw -[( is successful, the operation will be reexecuted with the new \(corrected\) file)]TJ --6.363 -1.2889 TD -0 Tw -(name.)Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -75 0 obj -<< -/Length 8288 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-21)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT8 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FINDFILE)Tj -/TT6 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT14 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NSFLG)Tj -/TT14 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DIRLST)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 243.764 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Uses )Tj -/TT8 1 Tf -2.4623 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1078 Tw -[( to search for a file named )]TJ -/TT12 1 Tf -12.4229 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1078 Tw -[(. If it finds one, returns its full name,)]TJ --22.6864 -1.2889 TD -0.0256 Tw -[(with no user interaction. Specifically, it calls )]TJ -/TT8 1 Tf -20.1415 0 TD -0 Tw -(\(SPELLFILE)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.2756 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.2756 0 TD -(T)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.2756 0 TD -(NSFLG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.2756 0 TD -(DIRLST)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0256 Tw -(, after)Tj --37.4463 -1.2889 TD -0.0556 Tw -[(first performing two simple checks: If )]TJ -/TT12 1 Tf -17.4924 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0556 Tw -[( has an explicit directory, it checks to see if a)]TJ --19.8928 -1.2889 TD -0.04 Tw -[(file so named exists, and if so returns that file. If )]TJ -/TT12 1 Tf -22.1475 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.04 Tw -[( is )]TJ -/TT8 1 Tf -1.2948 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -(, it looks for )Tj -/TT12 1 Tf -5.6639 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.04 Tw -[( on the)]TJ --36.9075 -1.2889 TD -0 Tw -(connected directory before calling )Tj -/TT8 1 Tf -15.2759 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 477.26 Tm -(Listing File Directories)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 474.55 m -510.01 474.55 l -S -BT -/TT6 1 Tf -9 0 0 9 78 460.6 Tm -0.1033 Tw -(The function )Tj -/TT8 1 Tf -6.0875 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.1033 Tw -[( allows you to conveniently specify and/or program a variety of directory)]TJ --11.4884 -1.2889 TD -0 Tw -(operations:)Tj -/TT8 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILES)Tj -/TT14 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(COMMANDS)Tj -/TT14 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DEFAULTEXT)Tj -/TT14 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DEFAULTVERS)Tj -/TT8 1 Tf -6.6011 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 354.0308 426.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 426.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1611 Tw -(Returns, lists, or performs arbitrary operations on all files specified by the "file group")Tj -/TT12 1 Tf -0 -1.2222 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.01 Tw -[(. A file group has the form of a regular file name, except that the character )]TJ -/TT8 1 Tf -33.3106 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.01 Tw -[( can be)]TJ --36.9112 -1.2889 TD -0.1 Tw -[(used to match any number of characters, including zero, in the file name. For example,)]TJ -0 -1.2222 TD -0.04 Tw -(the file group )Tj -/TT8 1 Tf -6.3524 0 TD -0 Tw -(A*B)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -[( matches all file names beginning with the character )]TJ -/TT8 1 Tf -23.5495 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( and ending with)]TJ --32.3023 -1.2889 TD -0 Tw -(the character )Tj -/TT8 1 Tf -5.9521 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(. The file group )Tj -/TT8 1 Tf -7.269 0 TD -(*.DCOM)Tj -/TT6 1 Tf -3.6006 0 TD -( matches all files with an extension of )Tj -/TT8 1 Tf -16.7568 0 TD -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --36.5791 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9866 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0667 Tw -[( does not contain an explicit extension, it is defaulted to )]TJ -/TT12 1 Tf -25.5014 0 TD -0 Tw -(DEFAULTEXT)Tj -/TT6 1 Tf -6.001 0 TD -0.0667 Tw -(; if )Tj -/TT12 1 Tf -1.5074 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf --36.9968 -1.2889 TD -0.0867 Tw -(does not contain an explicit version, it is defaulted to )Tj -/TT12 1 Tf -24.4414 0 TD -0 Tw -(DEFAULTVERS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0867 Tw -(. )Tj -/TT12 1 Tf -0.9233 0 TD -0 Tw -(DEFAULTEXT)Tj -/TT6 1 Tf -6.001 0 TD -0.0867 Tw -[( and)]TJ -/TT12 1 Tf --37.9668 -1.2889 TD -0 Tw -(DEFAULTVERS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0511 Tw -[( themselves default to )]TJ -/TT8 1 Tf -10.1512 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tw -[(. If the period or semicolon preceding the omitted)]TJ --17.3524 -1.2889 TD -0.0178 Tw -(extension or version, respectively, is present, the field is explicitly empty and no default is)Tj -0 -1.2222 TD -0.1078 Tw -[(used. All other unspecified fields default to )]TJ -/TT8 1 Tf -20.4985 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1078 Tw -[(. Null version is interpreted as "highest".)]TJ --21.0985 -1.2889 TD -0 Tw -(Thus )Tj -/TT12 1 Tf -2.5239 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.3022 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.3022 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -[( or )]TJ -/TT8 1 Tf -1.5454 0 TD -0 Tw -(*.*)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( or )]TJ -/TT8 1 Tf -1.5454 0 TD -0 Tw -(*.*;*)Tj -/TT6 1 Tf -3.0005 0 TD -0.0522 Tw -[( enumerates all files on the connected directory; )]TJ -/TT12 1 Tf -21.7684 0 TD -0 Tw -(FILES)Tj -/TT8 1 Tf --36.9889 -1.2889 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6356 0 TD -(*)Tj -/TT18 1 Tf -0.6001 0 TD -(.)Tj -/TT6 1 Tf -0.25 0 TD -0.3856 Tw -[( or )]TJ -/TT8 1 Tf -2.212 0 TD -0 Tw -(*.;*)Tj -/TT6 1 Tf -2.4004 0 TD -0.3856 Tw -[( enumerates all versions of files with null extension; )]TJ -/TT12 1 Tf -26.6297 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.6356 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -0.6356 0 TD -(*.;)Tj -/TT6 1 Tf --38.1995 -1.2889 TD -0.3678 Tw -(enumerates the highest version of files with null extension; and )Tj -/TT12 1 Tf -31.9019 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.6178 0 TD -0.8822 Tw -(= *.*;)Tj -/TT6 1 Tf --35.5202 -1.2889 TD -0 Tw -(enumerates the highest version of all files. If )Tj -/TT12 1 Tf -20.0078 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, it defaults to )Tj -/TT8 1 Tf -6.3062 0 TD -(*.*)Tj -/TT18 1 Tf -1.8003 0 TD -(;)Tj -/TT8 1 Tf -0.25 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --32.3133 -2.0667 TD -0.0344 Tw -[(Note:)-901.2(Some hosts/devices are not capable of supporting "highest version" in)]TJ -3.3333 -1.2222 TD -0 Tw -(enumeration. Such hosts instead enumerate )Tj -/TT14 1 Tf -19.8106 0 TD -(all)Tj -/TT6 1 Tf -0.9995 0 TD -( versions.)Tj --26.8101 -2 TD -0.1467 Tw -(For each file that matches the file group )Tj -/TT12 1 Tf -18.9238 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.1467 Tw -(, the "file commands" in )Tj -/TT12 1 Tf -11.5019 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1467 Tw -[( are)]TJ --38.227 -1.2889 TD -0.1156 Tw -[(executed in order. Some of the file commands allow aborting the command processing)]TJ -0 -1.2222 TD -0.0644 Tw -[(for a given file, effectively filtering the list of files. The interpretation of the different file)]TJ -T* -0.1722 Tw -[(commands is described below. If )]TJ -/TT12 1 Tf -16.0299 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1722 Tw -[( is )]TJ -/TT8 1 Tf -1.5593 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -(, it defaults to )Tj -/TT8 1 Tf -6.995 0 TD -0 Tw -(\(COLLECT\))Tj -/TT6 1 Tf -5.4009 0 TD -0.1722 Tw -(, which)Tj --36.5862 -1.2889 TD -0 Tw -(collects the matching file names in a list and returns it as the value of )Tj -/TT8 1 Tf -30.6548 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --41.389 -2.0667 TD -(The "file commands" in )Tj -/TT12 1 Tf -10.5552 0 TD -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -( are interpreted as follows:)Tj -/TT8 1 Tf --6.6226 -2.2156 TD -(P)Tj -/TT6 1 Tf -1.9333 0 TD -0.0867 Tw -[(Prints the files name. For readability, )]TJ -/TT8 1 Tf -17.696 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0867 Tw -[( strips the directory)]TJ --23.0969 -1.2889 TD -0.2467 Tw -(from the name, printing it once as a header in front of each set of)Tj -0 -1.2222 TD -0 Tw -(consecutive files on the same directory.)Tj -/TT8 1 Tf --2.5333 -2.1489 TD -(PP)Tj -/TT6 1 Tf -2.5333 0 TD -(Prints the files name without a version number.)Tj --4.6578 -2.0667 TD -[(a string)-1333.6(Prints the string.)]TJ -/TT8 1 Tf --8.0756 -1.9333 TD -(READDATE, WRITEDATE)Tj -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -79 0 obj -<< -/Length 5686 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 81 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-22)Tj -/TT6 1 Tf -1.6667 65.3333 TD -( )Tj -/TT16 1 Tf -10 0 0 10 98.25 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 112.8 570.14 Tm -(CREATIONDATE, SIZE)Tj -1.2 -1.4378 TD -(LENGTH, BYTESIZE)Tj --1.2 -1.4378 TD -(PROTECTION, AUTHOR)Tj -8.4 -1.4378 TD -(TYPE)Tj -/TT6 1 Tf -3.7333 0 TD -0.3478 Tw -(Prints the appropriate information returned by )Tj -/TT8 1 Tf -23.0857 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.3478 Tw -[( \(see)]TJ --29.6868 -1.2889 TD -0 Tw -(above\).)Tj -/TT8 1 Tf --5.5333 -2 TD -(COLLECT)Tj -/TT6 1 Tf -5.5333 0 TD -0.1578 Tw -(Adds the full name of this file to an accumulating list, which will be)Tj -0 -1.2889 TD -0 Tw -(returned as the value of )Tj -/TT8 1 Tf -10.748 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --22.8823 -2.0667 TD -(COUNTSIZE)Tj -/TT6 1 Tf -6.7333 0 TD -0.3322 Tw -(Adds the size of this file to an accumulating sum, which will be)Tj -0 -1.2889 TD -0 Tw -(returned as the value of )Tj -/TT8 1 Tf -10.748 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf --21.0823 -2.0667 TD -(DELETE)Tj -/TT6 1 Tf -4.9333 0 TD -(Deletes the file.)Tj -/TT8 1 Tf --4.9333 -2.0667 TD -(DELVER)Tj -/TT6 1 Tf -4.9333 0 TD -(If this file is not the highest version of files by its name, delete it.)Tj -/TT8 1 Tf --4.3333 -2.0667 TD -(PAUSE)Tj -/TT6 1 Tf -4.3333 0 TD -0.1411 Tw -(Waits until you type any character before proceeding with the rest of)Tj -0 -1.2889 TD -0 Tw -(the commands \(good for display if you want to ponder\).)Tj --5.3333 -2 TD -0.0844 Tw -[(The following commands are predicates to filter the list. If the predicate is not satisfied,)]TJ -0 -1.2222 TD -0.0189 Tw -(then processing for this file is aborted and no further commands \(such as those above\) are)Tj -T* -0 Tw -(executed for this file.)Tj -2.6667 -2 TD -0.1156 Tw -[(Note:)-901.2(if the )]TJ -/TT8 1 Tf -6.0757 0 TD -0 Tw -(P)Tj -/TT6 1 Tf -0.6001 0 TD -0.1156 Tw -[( and )]TJ -/TT8 1 Tf -2.424 0 TD -0 Tw -(PP)Tj -/TT6 1 Tf -1.2002 0 TD -0.1156 Tw -[( commands appear in )]TJ -/TT12 1 Tf -10.2835 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1156 Tw -[( ahead of any of the)]TJ --22.0509 -1.2889 TD -0.1744 Tw -(filtering commands below except )Tj -/TT8 1 Tf -15.6626 0 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1744 Tw -(, they are postponed until)Tj --19.2632 -1.2889 TD -0.2022 Tw -[(after the filters. Thus, assuming the caller has placed the attribute)]TJ -0 -1.2222 TD -0.1933 Tw -(options after the filters as well, no printing occurs for a file that is)Tj -T* -0.0656 Tw -[(filtered out. This is principally so that functions like )]TJ -/TT8 1 Tf -24.0057 0 TD -0 Tw -(DIR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -[( \(below\) can)]TJ --25.8059 -1.2889 TD -0.4433 Tw -(both request printing and pass arbitrary commands through to)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(, and have the printing happen in the appropriate place.)Tj -/TT8 1 Tf --13.6509 -2.0667 TD -(PROMPT)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(MESS)Tj -/TT6 1 Tf -3.7327 0 TD -0.0056 Tw -(Prompts with the yes/no question )Tj -/TT12 1 Tf -15.4809 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -(; if user responds with )Tj -/TT8 1 Tf -10.1474 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -(o, abort)Tj --28.6288 -1.2889 TD -0 Tw -(command processing for this file.)Tj -/TT8 1 Tf --7.5833 -2 TD -(OLDERTHAN)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9325 0 TD -0.0056 Tw -(Continue command processing if the file hasnt been referenced \(read or)Tj -0 -1.2889 TD -0.1033 Tw -(written\) in )Tj -/TT12 1 Tf -5.1461 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1033 Tw -[( days. )]TJ -/TT12 1 Tf -3.4008 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1033 Tw -[( can also be a string naming an explicit date and)]TJ --9.7471 -1.2889 TD -0 Tw -(time since which the file must not have been referenced.)Tj -/TT8 1 Tf --7.5833 -2 TD -(NEWERTHAN)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9325 0 TD -0.1656 Tw -(Continue command processing if the file has been written within the)Tj -0 -1.2889 TD -0 Tw -(last )Tj -/TT12 1 Tf -1.9388 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1478 Tw -[( days. )]TJ -/TT12 1 Tf -3.5342 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.1478 Tw -[( can also be a string naming an explicit date and time.)]TJ --6.6731 -1.2889 TD -0.2744 Tw -(Note that this is not quite the complement of )Tj -/TT8 1 Tf -22.4676 0 TD -0 Tw -(OLDERTHAN)Tj -/TT6 1 Tf -5.4009 0 TD -0.2744 Tw -(, since it)Tj --27.8684 -1.2889 TD -0 Tw -(ignores the read date.)Tj -/TT8 1 Tf --5.1833 -2 TD -(BY)Tj -/TT18 1 Tf -1.2002 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(USER)Tj -/TT6 1 Tf -3.7331 0 TD -0.0933 Tw -(Continue command processing if the file was last written by the given)Tj -0 -1.2889 TD -0 Tw -(user, i.e., its )Tj -/TT8 1 Tf -5.4619 0 TD -(AUTHOR)Tj -/TT6 1 Tf -3.6006 0 TD -( attribute matches \(case insensitively\) )Tj -/TT12 1 Tf -16.7813 0 TD -(USER)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --31.0275 -2.0667 TD -(@)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -1.3331 Tc -(XX)Tj -/TT6 1 Tf -2.5333 0 TD -0 Tc -0.2467 Tw -[( is either a function of one argument \()]TJ -/TT12 1 Tf -18.5905 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.2467 Tw -(\), or an arbitrary)Tj --23.9914 -1.2889 TD -0.0711 Tw -(expression which uses the variable )Tj -/TT8 1 Tf -15.9664 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0711 Tw -[( freely. If )]TJ -/TT12 1 Tf -4.7376 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[( returns )]TJ -/TT8 1 Tf -3.8463 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(,)Tj --31.7515 -1.2889 TD -(abort command processing for this file.)Tj --5.3333 -2 TD -0.0522 Tw -(The following two commands apply not to any particular file, but globally to the manner)Tj -0 -1.2222 TD -0 Tw -(in which directory information is printed.)Tj -ET -endstream -endobj -80 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT12 9 0 R -/TT16 11 0 R -/TT18 17 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -82 0 obj -<< -/Length 4111 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-23)Tj -/TT16 1 Tf -10 0 0 10 384 612 Tm -(STREAMS & FILES)Tj -/TT8 1 Tf -9 0 0 9 121.95 569.54 Tm -(OUT)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT6 1 Tf -3.733 0 TD -(Directs output to )Tj -/TT12 1 Tf -7.7603 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT8 1 Tf --16.544 -2.0667 TD -(COLUMNS)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9326 0 TD -(Attempts to format output in )Tj -/TT12 1 Tf -13.1265 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -( columns \(rather than just 1\).)Tj -/TT8 1 Tf --24.3932 -2.0667 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.3867 Tw -[( uses the variable )]TJ -/TT8 1 Tf -9.4378 0 TD -0 Tw -(DIRCOMMANDS)Tj -/TT6 1 Tf -6.6011 0 TD -0.3867 Tw -[( as a spelling list to correct spelling and define)]TJ --21.4397 -1.2889 TD -0 Tw -(abbreviations and synonyms \(see Chapter 20\). Currently the following abbreviations are recognized:)Tj -/TT8 1 Tf -16.1333 -1.7111 TD -[(AU)-1333.1(=> AUTHOR)]TJ -0.6 -1.5556 TD -[(-)-1333.2(=> PAUSE)]TJ --4.2 -1.5556 TD -[(COLLECT?)-1332.6(=> PROMPT " ? " COLLECT)]TJ -3.6 -1.5556 TD -(DA)Tj --1.2 -1 TD -[(DATE)-1332.9(=> CREATIONDATE)]TJ -1.2 -1.5556 TD -[(TI)-1333.1(=> WRITEDATE)]TJ --0.6 -1.5556 TD -[(DEL)-1333(=> DELETE)]TJ --0.6 -1.5556 TD -(DEL?)Tj --1.8 -1 TD -[(DELETE?)-1332.6(=> PROMPT " delete? " DELETE)]TJ -2.4 -1.5556 TD -[(OLD)-1333(=> OLDERTHAN 90)]TJ -0.6 -1.5556 TD -[(PR)-1333.1(=> PROTECTION)]TJ -T* -[(SI)-1333.1(=> SIZE)]TJ --3 -1 TD -[(VERBOSE)-1332.6(=> AUTHOR CREATIONDATE SIZE)]TJ -9.5333 -1 TD -(READDATE WRITEDATE)Tj --20 -2.3267 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(FILDIR)Tj -/TT6 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 196.0588 322.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 322.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(Obsolete synonym of )Tj -/TT8 1 Tf -9.6421 0 TD -(\(DIRECTORY)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT8 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --24.5607 -2.5489 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(DIR)Tj -/TT6 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT14 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(COM)Tj -1.7991 -0.3333 TD -(1)Tj -/TT14 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(...)Tj -/TT14 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 246.0009 282.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 282.86 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.4911 Tw -(Convenient form of )Tj -/TT8 1 Tf -10.4001 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.4911 Tw -[( for use in type-in at the executive. Performs)]TJ -/TT8 1 Tf --15.801 -1.2889 TD -0 Tw -(\(DIRECTORY )Tj -/TT12 1 Tf -7.2012 0 TD -(FILEGROUP)Tj -/TT8 1 Tf -5.4009 0 TD -( \(P)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(COM)Tj -1.7976 -0.3333 TD -(1)Tj -/TT18 1 Tf -0.6 0.3333 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(...)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT8 1 Tf --26.2169 -2.8822 TD -(\()Tj -/TT10 1 Tf -0.6001 0 TD -(NDIR)Tj -/TT4 1 Tf -10 0 0 10 129 225.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 131.7783 225.72 Tm -(FILEGROUP)Tj -/TT20 1 Tf -10 0 0 10 180.3862 225.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 183.1645 225.72 Tm -(COM)Tj -1.7995 -0.3333 TD -(1)Tj -/TT20 1 Tf -10 0 0 10 204.76 225.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 207.5383 225.72 Tm -(...)Tj -/TT20 1 Tf -10 0 0 10 223.7409 225.72 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 226.5193 225.72 Tm -(COM)Tj -1.8001 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/TT16 1 Tf -10 0 0 10 253.5209 225.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 225.72 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.0967 Tw -(Version of )Tj -/TT8 1 Tf -5.0112 0 TD -0 Tw -(DIR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0967 Tw -[( that lists the file names in a multi-column format. Also, by default only)]TJ --6.8115 -1.2889 TD -0 Tw -(lists the most recent version of files \(unless )Tj -/TT12 1 Tf -19.1411 0 TD -(FILEGROUP)Tj -/TT6 1 Tf -5.4009 0 TD -( contains an explicit version\).)Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 10 0 R -/TT16 11 0 R -/TT18 17 0 R -/TT20 84 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -12 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -85 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -86 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -87 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -88 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -89 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -90 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -91 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -92 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -93 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -94 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 85 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 278 278 -0 0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 611 0 0 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 86 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 606 0 606 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 333 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 87 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 0 0 0 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 0 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 0 600 600 0 0 600 600 600 600 -0 0 600 600 600 600 0 0 600 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 88 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 46 -/LastChar 89 -/Widths [600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 0 600 0 600 600 600 600 600 600 600 0 600 600 600 -600 600 600 0 600 600 600 600 600 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 89 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 600 -0 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 600 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 90 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 611 556 0 0 333 0 0 556 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 444 0 407 500 389 278 500 0 278 0 0 278 778 556 444 -500 0 389 389 333 556 500 0 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 91 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 667 0 0 0 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 92 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 333 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 250 0 0 606 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 93 0 R ->> -endobj -84 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 94 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -18 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 20 0 R -/Contents 19 0 R ->> -endobj -21 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 23 0 R -/Contents 22 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -78 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 80 0 R -/Contents 79 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -95 0 obj -<< -/S /D ->> -endobj -96 0 obj -<< -/Nums [0 95 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 18 0 R 21 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R 39 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [42 0 R 47 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -77 0 obj -<< -/Type /Pages -/Kids [74 0 R 78 0 R 81 0 R] -/Count 3 -/Parent 45 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [13 0 R 46 0 R 77 0 R ] -/Count 23 -/MediaBox [0 0 612 792] ->> -endobj -97 0 obj -<< -/CreationDate (D:20210202102708-06'00') -/ModDate (D:20210202102708-06'00') -/Producer (Apple pstopdf) ->> -endobj -98 0 obj -<< -/Type /Catalog -/Pages 45 0 R -/PageLabels 96 0 R ->> -endobj -xref -0 99 -0000000000 65535 f -0000155243 00000 n -0000000016 00000 n -0000005814 00000 n -0000151417 00000 n -0000151628 00000 n -0000152066 00000 n -0000152632 00000 n -0000153175 00000 n -0000153477 00000 n -0000153944 00000 n -0000154344 00000 n -0000149271 00000 n -0000157240 00000 n -0000155324 00000 n -0000005993 00000 n -0000013230 00000 n -0000154653 00000 n -0000155408 00000 n -0000013387 00000 n -0000019802 00000 n -0000155492 00000 n -0000019971 00000 n -0000025846 00000 n -0000155576 00000 n -0000026026 00000 n -0000031720 00000 n -0000155660 00000 n -0000031900 00000 n -0000037436 00000 n -0000155744 00000 n -0000037616 00000 n -0000041174 00000 n -0000155828 00000 n -0000041354 00000 n -0000047019 00000 n -0000155912 00000 n -0000047186 00000 n -0000054228 00000 n -0000155996 00000 n -0000054421 00000 n -0000062639 00000 n -0000156080 00000 n -0000062819 00000 n -0000069277 00000 n -0000157603 00000 n -0000157377 00000 n -0000156164 00000 n -0000069470 00000 n -0000076160 00000 n -0000156248 00000 n -0000076340 00000 n -0000083399 00000 n -0000156332 00000 n -0000083592 00000 n -0000089772 00000 n -0000156416 00000 n -0000089916 00000 n -0000095878 00000 n -0000156500 00000 n -0000096022 00000 n -0000102981 00000 n -0000156584 00000 n -0000103161 00000 n -0000109040 00000 n -0000156668 00000 n -0000109220 00000 n -0000115943 00000 n -0000156752 00000 n -0000116136 00000 n -0000122771 00000 n -0000156836 00000 n -0000122964 00000 n -0000130291 00000 n -0000156920 00000 n -0000130471 00000 n -0000138812 00000 n -0000157515 00000 n -0000157004 00000 n -0000139005 00000 n -0000144744 00000 n -0000157088 00000 n -0000144901 00000 n -0000149065 00000 n -0000155069 00000 n -0000149412 00000 n -0000149609 00000 n -0000149815 00000 n -0000150015 00000 n -0000150206 00000 n -0000150408 00000 n -0000150609 00000 n -0000150812 00000 n -0000151007 00000 n -0000151212 00000 n -0000157172 00000 n -0000157200 00000 n -0000157702 00000 n -0000157825 00000 n -trailer -<< -/Size 99 -/Root 98 0 R -/Info 97 0 R -/ID [<31e1339fdc5fb6293bd87cad5dc1a556><31e1339fdc5fb6293bd87cad5dc1a556>] ->> -startxref -157895 -%%EOF diff --git a/docs/medley-irm/23-STREAMS.pdf b/docs/medley-irm/23-STREAMS.pdf deleted file mode 100644 index e82807b1..00000000 --- a/docs/medley-irm/23-STREAMS.pdf +++ /dev/null @@ -1,14529 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4718 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(23. STREAMS AND FILES)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 564.99 m -510.01 564.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 542.54 Tm -0.1122 Tw -(Medley can perform input/output operations on a large variety of physical devices, including local)Tj -0 -1.2222 TD -0.1333 Tw -(disk drives, floppy disk drives, the keyboard and display screen, and remote file server computers)Tj -T* -0.0744 Tw -[(accessed over a network. While the low-level details of how all these devices perform input/output)]TJ -T* -0.0244 Tw -(vary considerably, the Interlisp-D language provides the programmer a small, common set of abstract)Tj -T* -0.3156 Tw -(operations whose use is largely independent of the physical input/output medium involved)Tj -T* -0.1222 Tw -(operations such as )Tj -/TT8 1 Tf -8.7832 0 TD -0 Tw -(read)Tj -/TT6 1 Tf -1.7222 0 TD -(, )Tj -/TT8 1 Tf -0.6222 0 TD -(print)Tj -/TT6 1 Tf -2.0562 0 TD -(, )Tj -/TT8 1 Tf -0.6222 0 TD -0.1222 Tw -(change font)Tj -/TT6 1 Tf -4.7795 0 TD -(, or )Tj -/TT8 1 Tf -1.9354 0 TD -(go to a new line)Tj -/TT6 1 Tf -6.8219 0 TD -[(. By merely changing the targeted I/O)]TJ --27.3426 -1.2222 TD -0 Tw -(device, a single program can be used to produce output on the display, a file, or a printer.)Tj -0 -2.8889 TD -0.0222 Tw -(The underlying data abstraction that permits this flexibility is the )Tj -/TT8 1 Tf -29.2437 0 TD -0 Tw -(stream)Tj -/TT6 1 Tf -2.7222 0 TD -0.0222 Tw -[(. A stream is a data object \(an)]TJ --31.9659 -1.2222 TD -0.1767 Tw -(instance of the data type )Tj -/TT10 1 Tf -11.9268 0 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1767 Tw -(\) that encapsulates all of the information about an input/output)Tj --15.5274 -1.2889 TD -0.0133 Tw -[(connection to a particular I/O device. Each of Medleys general-purpose I/O functions takes a stream)]TJ -0 -1.2222 TD -0.1 Tw -[(as one of its arguments. The general-purpose function then performs action specific to the streams)]TJ -T* -0.07 Tw -[(device to carry out the requested operation. Not every device is capable of implementing every I/O)]TJ -T* -0.2389 Tw -(operation, while some devices offer additional functionality by way of special functions for that)Tj -T* -0 Tw -(device alone. Such restrictions and extensions are noted in the documentation of each device.)Tj -0 -2.8889 TD -0.0278 Tw -(The vast majority of the streams commonly used in Medley fall into two interesting categories: the )Tj -/TT8 1 Tf -44.1178 0 TD -0 Tw -(file)Tj --44.1178 -1.2222 TD -(stream)Tj -/TT6 1 Tf -2.7222 0 TD -( and the )Tj -/TT8 1 Tf -3.8301 0 TD -(image stream)Tj -/TT6 1 Tf -5.3608 0 TD -(.)Tj --11.9131 -2.8889 TD -0.0211 Tw -(A file is an ordered collection of data, usually a sequence of characters or bytes, stored on a file device)Tj -0 -1.2222 TD -0.0489 Tw -[(in a manner that allows the data to be retrieved at a later time. Floppy disks, hard disks, and remote)]TJ -T* -0.1689 Tw -[(file servers are among the devices used to store files. Files are identified by a "file name", which)]TJ -T* -0.0156 Tw -[(specifies the device on which the file resides and a name unique to a specific file on that device. Input)]TJ -T* -0.0689 Tw -(or output to a file is performed by obtaining a stream to the file, using )Tj -/TT10 1 Tf -32.1354 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -[( \(see below\). In)]TJ --38.1364 -1.2889 TD -0 Tw -(addition, there are functions that manipulate the files themselves, rather than their data content.)Tj -0 -2.8889 TD -0.0778 Tw -[(An image stream is an output stream to a display device, such as the display screen or a printer. In)]TJ -0 -1.2222 TD -0.1144 Tw -(addition to the standard output operations, such as print, an image stream implements a variety of)Tj -T* -0.0611 Tw -[(graphics operations, such as drawing lines and displaying characters in multiple fonts. Unlike a file,)]TJ -T* -0 Tw -(the "content" of an image stream cannot be retrieved. Image streams are described in Chapter 26.)Tj -0 -2.8889 TD -0.0933 Tw -(The creation of other kinds of streams, such as network byte-stream connections, is described in the)Tj -0 -1.2222 TD -0.2589 Tw -[(chapters peculiar to those kinds of streams. The operations common to streams in general are)]TJ -T* -0.0522 Tw -[(described in Chapter 24. This chapter describes operations specific to file devices: how to name files,)]TJ -T* -0 Tw -(how to open streams to files, and how to manipulate files on their devices.)Tj -/TT4 1 Tf -10 0 0 10 54 105 Tm -(Opening and Closing File Streams)Tj -ET -1 w -54.01 102.29 m -510.01 102.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 80.34 Tm -0.0822 Tw -(In order to perform input from or output to a file, it is necessary to create a stream to the file, using)Tj -/TT10 1 Tf -T* -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(:)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -12 0 obj -<< -/Length 7279 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-2)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm --0.0001 Tc -(\(OPENSTREAM )Tj -/TT14 1 Tf -7.2001 0 TD -0 Tc -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RECOG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PARAMETERS )Tj -/TT10 1 Tf -7.2012 0 TD -(\) )Tj -/TT12 1 Tf -10 0 0 10 378.1764 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.02 Tw -(Opens and returns a stream for the file specified by )Tj -/TT14 1 Tf -23.0931 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -(, a file name. )Tj -/TT14 1 Tf -6.1879 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -[( can be either)]TJ --34.0817 -1.2889 TD -0.0467 Tw -[(a string or a symbol. The syntax and manipulation of file names is described at length in)]TJ -0 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.7072 0 TD -(FILENAMES)Tj -/TT6 1 Tf -5.4009 0 TD -0.07 Tw -[( section below. Incomplete file names are interpreted with respect to the)]TJ --7.1081 -1.2889 TD -0 Tw -(connected directory \(below\).)Tj -/TT14 1 Tf -0 -2 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.2211 Tw -[( specifies the recognition mode of )]TJ -/TT14 1 Tf -16.415 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2211 Tw -(, as described in a later section of this)Tj --21.8159 -1.2889 TD -0 Tw -(chapter. If )Tj -/TT14 1 Tf -4.9971 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, it defaults according to the value of )Tj -/TT14 1 Tf -16.3789 0 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT14 1 Tf --30.8774 -2.0667 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.3333 Tw -[( specifies the "access rights" to be used when opening the file, one of the)]TJ --3.6006 -1.2889 TD -0 Tw -(following:)Tj -/TT10 1 Tf -5 -2.1489 TD -(INPUT)Tj -/TT6 1 Tf -4.3333 0 TD -0.0644 Tw -[(Only input operations are permitted on the file. The file must)]TJ -0 -1.2889 TD -0.3378 Tw -[(already exist. Starts reading at the beginning of the file.)]TJ -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( defaults to )Tj -/TT10 1 Tf -5.189 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --14.9231 -2.2156 TD -(OUTPUT)Tj -/TT6 1 Tf -4.9333 0 TD -0.38 Tw -[(Only output operations are permitted on the file. Starts)]TJ -0 -1.2889 TD -0.1667 Tw -(writing at the beginning of the file, which is initially empty.)Tj -0 -1.2222 TD -0.1444 Tw -(While the file is open, other users or processes are unable to)Tj -T* -0 Tw -(open the file for either input or output. )Tj -/TT14 1 Tf -17.665 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( defaults to )Tj -/TT10 1 Tf -5.189 0 TD -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --31.3881 -2.2156 TD -(BOTH)Tj -/TT6 1 Tf -3.7333 0 TD -0.2189 Tw -(Both input and output operations are permitted on the file.)Tj -0 -1.2889 TD -0.1389 Tw -(Starts reading or writing at the beginning of the file. )Tj -/TT14 1 Tf -25.0004 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf --25.0004 -1.2889 TD -0.4667 Tw -(defaults to )Tj -/TT10 1 Tf -5.8723 0 TD -0 Tw -(OLD/NEW)Tj -/TT6 1 Tf -4.2007 0 TD -0.4667 Tw -(. )Tj -/TT14 1 Tf -1.6833 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.7167 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.7167 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -0.4667 Tw -[( implies random)]TJ --19.7907 -1.2889 TD -0.2211 Tw -(accessibility \(Chapter 25\), and thus may not be possible for)Tj -0 -1.3711 TD -0 Tw -(files on some devices)Tj -/TT12 1 Tf -10 0 0 10 341.8784 295.04 Tm -(.)Tj -/TT10 1 Tf -9 0 0 9 213.6 275.7 Tm -(APPEND)Tj -/TT6 1 Tf -4.9333 0 TD -0.2033 Tw -(Only sequential output operations are permitted on the file.)Tj -0 -1.2889 TD -0.4067 Tw -(Starts writing at the )Tj -/TT8 1 Tf -10.6115 0 TD -0 Tw -(end)Tj -/TT6 1 Tf -1.4453 0 TD -0.4067 Tw -[( of the file. )]TJ -/TT14 1 Tf -7.1935 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.4067 Tw -[( defaults to)]TJ -/TT10 1 Tf --22.2508 -1.2889 TD -0 Tw -(OLD/NEW)Tj -/TT6 1 Tf -4.2007 0 TD -0.0733 Tw -(. )Tj -/TT14 1 Tf -0.8967 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.3233 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3233 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0733 Tw -[( may not be allowed for files on)]TJ --13.5453 -1.2889 TD -0 Tw -(some devices.)Tj --6.6667 -2 TD -(Note:)Tj -/TT14 1 Tf -3.3333 0 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.2722 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2722 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0222 Tw -[( implies that one intends to write a new or different)]TJ --8.3457 -1.2889 TD -0.0267 Tw -(file, even if a version number was specified and the corresponding file)Tj -0 -1.2222 TD -0.1289 Tw -[(already exists. Thus any previous contents of the file are discarded,)]TJ -T* -0.2533 Tw -(and the file is empty immediately after the )Tj -/TT10 1 Tf -21.0711 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.2533 Tw -[(. If it is)]TJ --27.0721 -1.2889 TD -0.1467 Tw -(desired to write on an already existing file while preserving the old)Tj -0 -1.2222 TD -0 Tw -(contents, the file must be opened for access )Tj -/TT10 1 Tf -19.2944 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT14 1 Tf --32.7363 -2.0667 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.0522 Tw -[( is a list of pairs )]TJ -/TT10 1 Tf -7.4501 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(ATTRIB)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.7268 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -(, where )Tj -/TT14 1 Tf -3.6235 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[( is any file attribute that)]TJ --29.2031 -1.2889 TD -0.2422 Tw -(the file system is willing to allow you to set \(see )Tj -/TT10 1 Tf -23.9935 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2422 Tw -[( below\). A non-list)]TJ -/TT14 1 Tf --30.5946 -1.2889 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.3644 Tw -[( in )]TJ -/TT14 1 Tf -2.1019 0 TD -0 Tw -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.3644 Tw -[( is treated as the pair )]TJ -/TT10 1 Tf -11.6159 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(ATTRIB)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.6144 0 TD -(T\))Tj -/TT6 1 Tf -1.2002 0 TD -0.3644 Tw -[(. Generally speaking,)]TJ --29.3347 -1.2889 TD -0.11 Tw -(attributes that belong to the permanent file \(e.g., )Tj -/TT10 1 Tf -22.444 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.11 Tw -(\) can only be set when creating a)Tj --24.8444 -1.2889 TD -0.3789 Tw -(new file, while attributes that belong only to a particular opening of a file \(e.g.,)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.24 Tw -(\) can be set on any call to )Tj -/TT10 1 Tf -13.2042 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.24 Tw -[(. Not all devices honor all)]TJ --27.0064 -1.2889 TD -0 Tw -(attributes; those not recognized by a particular device are simply ignored.)Tj -0 -2 TD -0.3456 Tw -(In addition to the attributes permitted by )Tj -/TT10 1 Tf -20.829 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.3456 Tw -(, the following tokens are)Tj --27.4301 -1.2889 TD -0 Tw -(accepted by )Tj -/TT10 1 Tf -5.4932 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -( as values of )Tj -/TT14 1 Tf -5.6646 0 TD -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -( in its )Tj -/TT14 1 Tf -2.6641 0 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -( argument:)Tj -ET -endstream -endobj -13 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -18 0 obj -<< -/Length 6375 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-3)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT10 1 Tf -9 0 0 9 172.2 569.54 Tm -(DONT.CHANGE.DATE)Tj -/TT6 1 Tf -11.5333 0 TD -(If )Tj -/TT14 1 Tf -1.0833 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1633 Tw -[( is non-)]TJ -/TT10 1 Tf -3.5845 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1633 Tw -(, the files creation date is not)Tj --9.4685 -1.2889 TD -0.2544 Tw -[(changed when the file is opened. This option is)]TJ -0 -1.2222 TD -0.4189 Tw -(meaningful only for old files being opened for)Tj -T* -0 Tw -(access )Tj -/TT10 1 Tf -3.5388 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -0.5744 Tw -[(. This should be used only for)]TJ --5.9392 -1.2889 TD -0.0522 Tw -(specialized applications in which the caller does not)Tj -0 -1.2222 TD -0.0767 Tw -(want the file system to believe the files content has)Tj -T* -0 Tw -(been changed.)Tj -/TT10 1 Tf --7.3333 -2.1489 TD -(SEQUENTIAL)Tj -/TT6 1 Tf -7.3333 0 TD -(If )Tj -/TT14 1 Tf -1.0899 0 TD -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.17 Tw -[( is non-)]TJ -/TT10 1 Tf -3.5978 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.17 Tw -(, this opening of the file need)Tj --9.4885 -1.2889 TD -0 Tw -(support only sequential access; i.e., the caller intends)Tj -0 -1.2222 TD -0.44 Tw -(never to use )Tj -/TT10 1 Tf -6.9479 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.44 Tw -[(. For some devices,)]TJ --12.9489 -1.2889 TD -0.0389 Tw -(sequential access to files is much more efficient than)Tj -0 -1.2222 TD -0.0667 Tw -[(random access. Note that the device may choose to)]TJ -T* -0.3478 Tw -(ignore this attribute and still open the file in a)Tj -T* -0.0733 Tw -[(manner that permits random access. Also note that)]TJ -T* -0.17 Tw -(this attribute does not make sense with )Tj -/TT14 1 Tf -18.7154 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.42 0 TD -(=)Tj --22.736 -1.2889 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --19.0671 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0966 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[( is not recognized by the file system, )]TJ -/TT10 1 Tf -17.6975 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1767 Tw -[( causes the error )]TJ -/TT10 1 Tf -8.1774 0 TD -0 Tw -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.4267 0 TD -(NOT)Tj --38.1999 -1.2889 TD -(FOUND)Tj -/TT6 1 Tf -3.0005 0 TD -0.0289 Tw -[(. Ordinarily, this error is intercepted via an entry on )]TJ -/TT10 1 Tf -23.7314 0 TD -0 Tw -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.0289 Tw -[( \(Chapter 24\),)]TJ --33.933 -1.2889 TD -0.0511 Tw -(which causes )Tj -/TT10 1 Tf -6.2087 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0511 Tw -[( \(see the Searching File Directories section of this chapter\) to be)]TJ --11.6095 -1.2889 TD -0.4922 Tw -(called. )Tj -/TT10 1 Tf -4.3502 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.4922 Tw -[( searches alternate directories and possibly attempts spelling)]TJ --9.751 -1.2889 TD -0.2067 Tw -[(correction on the file name. Only if )]TJ -/TT10 1 Tf -17.5435 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2067 Tw -[( is unsuccessful will the )]TJ -/TT10 1 Tf -11.7457 0 TD -0.4978 Tw -(FILE NOT)Tj --34.6901 -1.2889 TD -0 Tw -(FOUND)Tj -/TT6 1 Tf -3.0005 0 TD -( error actually occur.)Tj --3.0005 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.1099 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.19 Tw -[( exists but cannot be opened, )]TJ -/TT10 1 Tf -14.1424 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.19 Tw -[( causes one of several other errors:)]TJ -/TT10 1 Tf --23.6537 -1.2889 TD -0.2289 Tw -(FILE WONT OPEN)Tj -/TT6 1 Tf -9.4592 0 TD -0.0956 Tw -[( if the file is already opened for conflicting access by someone else;)]TJ -/TT10 1 Tf --9.4592 -1.2889 TD -0.3033 Tw -(PROTECTION VIOLATION)Tj -/TT6 1 Tf -12.3053 0 TD -0.1267 Tw -[( if the file is protected against the operation; )]TJ -/TT10 1 Tf -20.7997 0 TD -0.3033 Tw -(FILE SYSTEM)Tj --33.105 -1.2889 TD -0 Tw -(RESOURCES EXCEEDED)Tj -/TT6 1 Tf -10.8018 0 TD -( if there is no more room in the file system.)Tj -/TT10 1 Tf --13.4684 -2.5489 TD -(\(CLOSEF)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.2493 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 169.0544 240.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 240.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes )Tj -/TT14 1 Tf -3.1426 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.02 Tw -[(, and returns its full file name. Generates an error, )]TJ -/TT10 1 Tf -22.7332 0 TD -0.0489 Tw -(FILE NOT OPEN)Tj -/TT6 1 Tf -7.899 0 TD -0.02 Tw -(, if )Tj -/TT14 1 Tf -1.414 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf --37.5892 -1.2889 TD -0.2289 Tw -[(does not designate an open stream. After closing a stream, no further input/output)]TJ -0 -1.2222 TD -0 Tw -(operations are permitted on it.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.1199 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2 Tw -[( is )]TJ -/TT10 1 Tf -1.6148 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2 Tw -(, it is defaulted to the primary input stream if that is not the terminal)Tj --6.9354 -1.2889 TD -0.2189 Tw -[(stream, or else the primary output stream if that is not the terminal stream. If both)]TJ -0 -1.2222 TD -0.0078 Tw -(primary input and output streams are the terminal input/output streams, )Tj -/TT10 1 Tf -32.9347 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( returns)]TJ -/TT10 1 Tf --36.5353 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1878 Tw -[(. If )]TJ -/TT10 1 Tf -2.2333 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1878 Tw -[( closes either the primary input stream or the primary output stream)]TJ --7.6341 -1.2889 TD -0.0289 Tw -(\(either explicitly or in the )Tj -/TT14 1 Tf -11.5673 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2789 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2789 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -[( case\), it resets the primary stream for that direction)]TJ --16.9259 -1.2889 TD -0.0711 Tw -[(to be the corresponding terminal stream. See Chapter 25 for information on the primary)]TJ -0 -1.2222 TD -0 Tw -(input/output streams.)Tj -/TT10 1 Tf -0 -2 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1733 Tw -[( \(see below\) allows you to "advise" )]TJ -/TT10 1 Tf -16.789 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1733 Tw -[( to perform various operations)]TJ --25.7905 -1.2889 TD -0 Tw -(when a file is closed.)Tj -0 -2 TD -0.2222 Tw -(Because of buffering, the contents of a file open for output are not guaranteed to be)Tj -0 -1.2222 TD -0.1678 Tw -(written to the actual physical file device until )Tj -/TT10 1 Tf -21.5439 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1678 Tw -[( is called. Buffered data can be)]TJ -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -21 0 obj -<< -/Length 5653 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-4)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.06 Tw -(forced out to a file without closing the file by using the function )Tj -/TT10 1 Tf -29.1618 0 TD -0 Tw -(FORCEOUTPUT)Tj -/TT6 1 Tf -6.6011 0 TD -0.06 Tw -[( \(Chapter)]TJ --35.7629 -1.2889 TD -0 Tw -(25\).)Tj -0 -2 TD -0.0467 Tw -[(Some network file devices perform their transactions in the background. As a result, it is)]TJ -0 -1.2222 TD -0.1422 Tw -(possible for a file to be closed by )Tj -/TT10 1 Tf -15.7227 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1422 Tw -[( and yet not be "fully" closed for some small)]TJ --19.3233 -1.2889 TD -0.0811 Tw -(period of time afterward, during which time the file appears to still be busy, and cannot)Tj -0 -1.2222 TD -0 Tw -(be opened for conflicting access by other users.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD --0.0001 Tc -(\(CLOSEF? )Tj -/TT14 1 Tf -5.4001 0 TD -0 Tc -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 225.6053 484 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 484 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes )Tj -/TT14 1 Tf -3.2992 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -[( if it is open, returning the value of )]TJ -/TT10 1 Tf -17.1676 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1767 Tw -(; otherwise does nothing and)Tj --26.4678 -1.2889 TD -0 Tw -(returns )Tj -/TT10 1 Tf -3.4541 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --10.5877 -2.9556 TD -0.15 Tw -(In the present implementation of Medley, all streams to files are kept, while open, in a registry of)Tj -0 -1.2222 TD -0.1789 Tw -[("open files". This registry does not include nameless streams, such as string streams \(see below\),)]TJ -T* -0.2478 Tw -(display streams \(Chapter 28\), and the terminal input and output streams; nor streams explicitly)Tj -T* -0.2311 Tw -[(hidden from you, such as dribble streams \(Chapter 30\). This registry may not persist in future)]TJ -T* -0 Tw -(implementations of Medley, but at the present time it is accessible by the following two functions:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD --0.0001 Tc -(\(OPENP )Tj -/TT14 1 Tf -4.2001 0 TD -0 Tc -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT12 1 Tf -10 0 0 10 254.8614 362.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 362.86 Tm -([Function])Tj -/TT14 1 Tf --35.4033 -1.8444 TD -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.2811 Tw -[( is an access mode for a stream opening \(one of )]TJ -/TT10 1 Tf -24.1088 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.7811 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7811 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -0.2811 Tw -(, or)Tj -/TT10 1 Tf --38.2731 -1.2889 TD -0 Tw -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -(\), or )Tj -/TT10 1 Tf -2.0239 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, meaning any access.)Tj --7.4248 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( is a stream, returns its full name if it is open for the specified access, else )Tj -/TT10 1 Tf -32.3437 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --37.4644 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.2066 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[( is a file name \(a symbol\), )]TJ -/TT14 1 Tf -13.4783 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2867 Tw -[( is processed according to the rules of file)]TJ --19.4857 -1.2889 TD -0.0389 Tw -[(recognition \(see below\). If a stream open to a file by that name is registered and open for)]TJ -0 -1.2222 TD -0.3356 Tw -[(the specified access, then the files full name is returned. If the file name is not)]TJ -T* -0 Tw -(recognized, or no stream is open to the file with the specified access, )Tj -/TT10 1 Tf -30.3721 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( is returned.)Tj --32.1724 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0066 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0867 Tw -[( is )]TJ -/TT10 1 Tf -1.3882 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -(, returns a list of the full names of all registered streams that are open for)Tj --6.5954 -1.2889 TD -0 Tw -(the specified access.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD --0.0001 Tc -(\(CLOSEALL )Tj -/TT14 1 Tf -6.0001 0 TD -0 Tc -(ALLFLG)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT12 1 Tf -10 0 0 10 247.2079 211.32 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 211.32 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes all streams in the value of )Tj -/TT10 1 Tf -14.7124 0 TD -(\(OPENP\))Tj -/TT6 1 Tf -4.2007 0 TD -(. Returns a list of the files closed.)Tj -/TT10 1 Tf --18.9131 -2.0667 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0422 Tw -[( \(see below\) allows certain files to be "protected" from )]TJ -/TT10 1 Tf -24.4042 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0422 Tw -[(. If )]TJ -/TT14 1 Tf -1.7966 0 TD -0 Tw -(ALLFLG)Tj -/TT6 1 Tf --36.4024 -1.4378 TD -(is )Tj -/TT10 1 Tf -0.9648 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, all files, including those protected by )Tj -/TT10 1 Tf -17.0742 0 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -(, are closed)Tj -/TT12 1 Tf -10 0 0 10 434.6265 163.18 Tm -(.)Tj -/TT4 1 Tf --33.2626 -4.294 TD -(File Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 117.53 m -558.01 117.53 l -S -BT -/TT6 1 Tf -9 0 0 9 126 95.58 Tm -0.1222 Tw -(A file name in Medley is a string or symbol whose characters specify a "path" to the actual file: on)Tj -0 -1.2222 TD -0.1589 Tw -[(what host or device the file resides, in which directory, and so forth. Because Medley supports a)]TJ -T* -0.1455 Tw -[(variety of non-local file devices, parts of the path could be very device-dependent. However, it is)]TJ -T* -0.0722 Tw -[(desirable for programs to be able to manipulate file names in a device-independent manner. To this)]TJ -T* -0.1844 Tw -(end, Medley specifies a uniform file name syntax over all devices; the functions that perform the)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -24 0 obj -<< -/Length 4844 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-5)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.1778 Tw -(actual file manipulation for a particular device are responsible for any translation to that devices)Tj -0 -1.2222 TD -0 Tw -(naming conventions.)Tj -0 -2.8889 TD -0.0311 Tw -(A file name is composed of a collection of )Tj -/TT8 1 Tf -18.8913 0 TD -0 Tw -(fields)Tj -/TT6 1 Tf -2.1118 0 TD -0.0311 Tw -(, some of which have specific semantic interpretations.)Tj --21.0031 -1.2222 TD -0.2133 Tw -(The functions described below refer to each field by a )Tj -/TT8 1 Tf -26 0 TD -(field name)Tj -/TT6 1 Tf -4.353 0 TD -(, a literal atom from among the)Tj --30.353 -1.2222 TD -0 Tw -(following: )Tj -/TT10 1 Tf -4.8234 0 TD -0.1289 Tw -(HOST, DEVICE)Tj -/TT6 1 Tf -7.3301 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5533 0 TD -(EXTENSION)Tj -/TT6 1 Tf -5.4009 0 TD -0.0533 Tw -(, and )Tj -/TT10 1 Tf -2.5495 0 TD -0 Tw -(VERSION)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[(. The standard syntax for)]TJ --33.7658 -1.2889 TD -2.8722 Tw -(a file name that contains all of those fields is)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -({HOST}DEVICE:NAME.EXTENSION;VERSION)Tj -/TT6 1 Tf -27.6045 0 TD -0.0122 Tw -[(. Some hosts file systems do not use all)]TJ --27.6045 -1.2889 TD -0 Tw -(of those fields in their file names.)Tj -/TT10 1 Tf -12.9333 -2.1489 TD -(HOST)Tj -/TT6 1 Tf -3.7333 0 TD -0.1367 Tw -[(Specifies the host whose file system contains the file. In)]TJ -0 -1.2889 TD -0.0878 Tw -(the case of local file devices, the "host" is the name of the)Tj -0 -1.2222 TD -0 Tw -(device, e.g., )Tj -/TT10 1 Tf -5.4038 0 TD -(DSK)Tj -/TT6 1 Tf -1.8003 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(FLOPPY)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --17.1789 -2.2156 TD -(DEVICE)Tj -/TT6 1 Tf -4.9333 0 TD -0.2633 Tw -(Specifies, for those hosts that divide their file systems)Tj -0 -1.2889 TD -0.0167 Tw -(name space among mutiple physical devices, the device or)Tj -0 -1.2222 TD -[(logical structure on which the file resides. This should not)]TJ -T* -0.2344 Tw -(be confused with Medleys abstract "file device", which)Tj -T* -0.2644 Tw -(denotes either a host or a local physical device and is)Tj -T* -0 Tw -(specified by the )Tj -/TT10 1 Tf -7.1992 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -( field.)Tj -/TT10 1 Tf --16.3329 -2.2155 TD -(DIRECTORY)Tj -/TT6 1 Tf -6.7333 0 TD -0.1756 Tw -[(Specifies the "directory" containing the file. A directory)]TJ -0 -1.2889 TD -0.2356 Tw -(usually is a grouping of a possibly large set of loosely)Tj -0 -1.2222 TD -0.0722 Tw -(related files, e.g., the personal files of a particular user, or)Tj -T* -0.0611 Tw -[(the files belonging to some project. The )]TJ -/TT10 1 Tf -18.2828 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0611 Tw -[( field)]TJ --23.6837 -1.2889 TD -0.0822 Tw -(usually consists of a principal directory and zero or more)Tj -0 -1.2222 TD -0.0811 Tw -(subdirectories that together describe a path through a file)Tj -T* -0.2956 Tw -[(systems hierarchy. Each subdirectory name is set off)]TJ -T* -0.5278 Tw -(from the previous directory or subdirectory by the)Tj -T* -0 Tw -(character ")Tj -/TT10 1 Tf -4.686 0 TD -(>)Tj -/TT6 1 Tf -0.6001 0 TD -("; e.g., ")Tj -/TT10 1 Tf -3.2773 0 TD -(LISP>LIBRARY>NEW)Tj -/TT6 1 Tf -9.6016 0 TD -(".)Tj -/TT10 1 Tf --21.8984 -2.2156 TD -(NAME)Tj -/TT6 1 Tf -3.7333 0 TD -0.0144 Tw -(This field carries no specific meaning, but generally names)Tj -0 -1.2889 TD -0.0378 Tw -(a set of files thought of as being different renditions of the)Tj -0 -1.2222 TD -0 Tw -("same" abstract file.)Tj -/TT10 1 Tf --6.7333 -2.1489 TD -(EXTENSION)Tj -/TT6 1 Tf -6.7333 0 TD -0.1522 Tw -(This field also carries no specific meaning, but generally)Tj -0 -1.2889 TD -0.3033 Tw -(distinguishes the form of files having the same name.)Tj -0 -1.2222 TD -0.2233 Tw -(Most files systems have some "conventional" extensions)Tj -T* -0.1467 Tw -[(that denote something about the content of the file. For)]TJ -T* -0.5344 Tw -(example, in Medley, the extension )Tj -/TT10 1 Tf -18.0184 0 TD -0 Tw -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -0.5344 Tw -[( standardly)]TJ --20.4188 -1.2889 TD -0 Tw -(denotes a file containing compiled function definitions.)Tj -/TT10 1 Tf --5.5333 -2.1489 TD -(VERSION)Tj -/TT6 1 Tf -5.5333 0 TD -0.8533 Tw -(A number used to distinguish the versions or)Tj -0 -1.2889 TD -0.3022 Tw -("generations" of the files having a common name and)Tj -0 -1.2222 TD -0.0078 Tw -[(extension. The version number is incremented each time a)]TJ -T* -0 Tw -(new file by the same name is created.)Tj --16.6667 -2.8889 TD -0.17 Tw -(Most functions that take as input "a directory" accept either a directory name \(the contents of the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0389 Tw -[( field of a file name\) or a "full" directory specificationa file name fragment consisting of)]TJ -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -27 0 obj -<< -/Length 7006 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-6)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.09 Tw -(only the fields )Tj -/TT10 1 Tf -6.811 0 TD -0 Tw -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.59 0 TD -(DEVICE)Tj -/TT6 1 Tf -3.6006 0 TD -0.09 Tw -(, and )Tj -/TT10 1 Tf -2.6229 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.09 Tw -[(. In particular, the "connected directory" \(see below\))]TJ --21.4257 -1.2889 TD -0 Tw -(consists, in general, of all three fields.)Tj -0 -2.8889 TD -0.0411 Tw -(For convenience in dealing with certain operating systems, Medley also recognizes )Tj -/TT10 1 Tf -37.2657 0 TD -0 Tw -([])Tj -/TT6 1 Tf -1.2002 0 TD -0.0411 Tw -[( and )]TJ -/TT10 1 Tf -2.2751 0 TD -0 Tw -(\(\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0411 Tw -[( as host)]TJ --41.9412 -1.2889 TD -0.0067 Tw -(delimiters \(synonymous with )Tj -/TT10 1 Tf -13.3076 0 TD -0 Tw -({})Tj -/TT6 1 Tf -1.2002 0 TD -0.0067 Tw -(\), and )Tj -/TT10 1 Tf -2.7892 0 TD -0 Tw -(/)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( as a directory delimiter \(synonymous with )]TJ -/TT10 1 Tf -19.3772 0 TD -0 Tw -(<)Tj -/TT6 1 Tf -0.6001 0 TD -0.0067 Tw -[( at the beginning)]TJ --37.8744 -1.2889 TD -0.0289 Tw -(of a directory specification and )Tj -/TT18 1 Tf -14.061 0 TD -0 Tw -(>)Tj -/TT6 1 Tf -0.6001 0 TD -0.0289 Tw -[( to terminate directory or subdirectory specification\). For example, a)]TJ --14.661 -1.2889 TD -0.1556 Tw -(file on a Unix file server )Tj -/TT10 1 Tf -11.7532 0 TD -0 Tw -(UNX)Tj -/TT6 1 Tf -1.8003 0 TD -0.1556 Tw -[( with the name)]TJ -/TT10 1 Tf -7.0809 0 TD -0.3733 Tw -[( /usr/foo/bar/stuff.tedit)]TJ -/TT6 1 Tf -15.3758 0 TD -0.1556 Tw -(, whose )Tj -/TT10 1 Tf -3.9259 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf --39.936 -1.2889 TD -0.5089 Tw -(field is thus )Tj -/TT10 1 Tf -6.9315 0 TD -0 Tw -(usr/foo/bar)Tj -/TT6 1 Tf -6.6011 0 TD -0.5089 Tw -(, could be specified as )Tj -/TT10 1 Tf -12.4478 0 TD -0 Tw -({UNX}/usr/foo/bar/stuff.tedit)Tj -/TT6 1 Tf -17.4028 0 TD -0.5089 Tw -(, or)Tj -/TT10 1 Tf --43.3831 -1.2889 TD -0 Tw -(\(UNX\)stuff.tedit)Tj -/TT6 1 Tf -17.4028 0 TD -0.0189 Tw -[(, or several other variations. Note that when using )]TJ -/TT10 1 Tf -22.8603 0 TD -0 Tw -([])Tj -/TT6 1 Tf -1.2002 0 TD -0.0189 Tw -[( or )]TJ -/TT10 1 Tf -1.4787 0 TD -0 Tw -(\(\))Tj -/TT6 1 Tf -1.2002 0 TD -0.0189 Tw -[( as)]TJ --44.1422 -1.2889 TD -0.0778 Tw -(host delimiters, they usually must be escaped with the readers )Tj -/TT10 1 Tf -28.8735 0 TD -0 Tw -(%)Tj -/TT6 1 Tf -0.6001 0 TD -0.0778 Tw -[( escape character if the file name is)]TJ --29.4736 -1.2889 TD -0 Tw -(expressed as a symbol rather than a string.)Tj -0 -2.8889 TD -0.05 Tw -[(Different hosts have different requirements regarding which characters are valid in file names. From)]TJ -0 -1.2222 TD -0.0978 Tw -[(Medleys point of view, any characters are valid. However, in order to be able to parse a file name)]TJ -T* -0.0067 Tw -(into its component fields, it is necessary that those characters that are conventionally used as file name)Tj -T* -0.0056 Tw -[(delimiters be quoted when they appear inside of fields where there could be ambiguity. The file name)]TJ -T* -0.0389 Tw -(quoting character is ")Tj -/TT10 1 Tf -9.4819 0 TD -0 Tw -()Tj -/TT6 1 Tf -0.6001 0 TD -0.0389 Tw -[(" \(single quote\). Thus, the following characters must be quoted when not used)]TJ --10.082 -1.2889 TD -0.1744 Tw -(as delimeters: )Tj -/TT10 1 Tf -6.6804 0 TD -0 Tw -(:)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6744 0 TD -(>)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6744 0 TD -(;)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6744 0 TD -(/)Tj -/TT6 1 Tf -0.6001 0 TD -0.1744 Tw -(, and )Tj -/TT10 1 Tf -2.7918 0 TD -0 Tw -()Tj -/TT6 1 Tf -0.6001 0 TD -0.1744 Tw -[( itself. The character )]TJ -/TT10 1 Tf -10.255 0 TD -0 Tw -(.)Tj -/TT6 1 Tf -0.6001 0 TD -0.1744 Tw -[( \(period\) need only be quoted if it is to be)]TJ --25.3511 -1.2889 TD -0.1011 Tw -(considered a part of the )Tj -/TT10 1 Tf -11.2053 0 TD -0 Tw -(EXTENSION)Tj -/TT6 1 Tf -5.4009 0 TD -0.1011 Tw -[( field. The characters )]TJ -/TT10 1 Tf -10.173 0 TD -0 Tw -(})Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6011 0 TD -(])Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -(, and )Tj -/TT10 1 Tf -2.6451 0 TD -0 Tw -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( need only be quoted in a file)]TJ --31.8257 -1.2889 TD -0.0511 Tw -(name when the host field of the name is introduced by )Tj -/TT10 1 Tf -24.925 0 TD -0 Tw -({)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5511 0 TD -([)Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tw -(, and )Tj -/TT10 1 Tf -2.5451 0 TD -0 Tw -(\()Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tw -[(, respectively. The characters )]TJ -/TT10 1 Tf -13.4982 0 TD -0 Tw -({)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5511 0 TD -([)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf --45.0711 -1.2889 TD -(\()Tj -/TT6 1 Tf -0.6001 0 TD -0.0444 Tw -(, and )Tj -/TT10 1 Tf -2.5318 0 TD -0 Tw -(<)Tj -/TT6 1 Tf -0.6001 0 TD -0.0444 Tw -[( need only be quoted if they appear as the first character of a file name fragment, where they)]TJ --3.732 -1.2889 TD -0 Tw -(would otherwise be assumed to introduce the )Tj -/TT10 1 Tf -20.4824 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -( fields.)Tj --29.7246 -2.9556 TD -0.0167 Tw -[(The following functions are the standard way to manipulate file names in Interlisp. Their operation is)]TJ -0 -1.2222 TD -0 Tw -(purely syntacticthey perform no file system operations themselves.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(UNPACKFILENAME.STRING)Tj -/TT4 1 Tf -10 0 0 10 268.8 262.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 271.5783 262.8 Tm -(FILENAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 320.1862 262.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 262.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2867 Tw -(Parses , returning a list in property list format of alternating field names and field)Tj -0 -1.2222 TD -0 Tw -(contents. The field contents are returned as strings. If is a stream, its full name is used.)Tj -0 -2 TD -0.1578 Tw -[(Only those fields actually present in are returned. A field is considered present if its)]TJ -0 -1.2222 TD -0.0367 Tw -(delimiting punctuation \(in the case of )Tj -/TT10 1 Tf -17.0442 0 TD -0 Tw -(EXTENSION)Tj -/TT6 1 Tf -5.4009 0 TD -0.0367 Tw -[( and )]TJ -/TT10 1 Tf -2.2662 0 TD -0 Tw -(VERSION)Tj -/TT6 1 Tf -4.2007 0 TD -0.0367 Tw -(, the preceding period or)Tj --28.912 -1.2889 TD -0.2133 Tw -[(semicolon, respectively\) is present, even if the field itself is empty. Empty fields are)]TJ -0 -1.2222 TD -0 Tw -(denoted by )Tj -/TT10 1 Tf -5.2432 0 TD -("")Tj -/TT6 1 Tf -1.2002 0 TD -( \(the empty string\).)Tj --6.4434 -2.0667 TD -(Examples:)Tj -/TT10 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME.STRING "FOO.BAR"\) =>)Tj -0 -1 TD -( \(NAME "FOO" EXTENSION "BAR"\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING "FOO.;2"\) =>)Tj -0 -1 TD -( \(NAME "FOO" EXTENSION "" VERSION "2"\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING "FOO;"\) =>)Tj -0 -1 TD -( \(NAME "FOO" VERSION ""\))Tj -0 -1.5556 TD -(\(UNPACKFILENAME.STRING)Tj -0 -1 TD -( "{ERIS}CURRENT>IMTRAN.DCOM;21"\))Tj -T* -( => \(HOST "ERIS" DIRECTORY "LISP>CURRENT")Tj -T* -( NAME "IMTRAN" EXTENSION "DCOM")Tj -T* -( VERSION "21"\))Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT18 29 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -31 0 obj -<< -/Length 5555 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-7)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\(UNPACKFILENAME)Tj -/TT6 1 Tf -9 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 212.2544 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0978 Tw -(Old version of )Tj -/TT10 1 Tf -6.892 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.0978 Tw -[( that returns the field values as atoms, rather)]TJ --19.494 -1.2889 TD -0.2744 Tw -(than as strings. )Tj -/TT10 1 Tf -8.2599 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.2744 Tw -[( is now considered the "correct" way of)]TJ --20.8619 -1.2889 TD -0.0044 Tw -(unpacking file names, because it does not lose information when the contents of a field are)Tj -0 -1.2222 TD -0 Tw -(numeric. For example, )Tj -/TT10 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME STUFF.TXT\) =>)Tj -0 -1 TD -( \(NAME STUFF EXTENSION TXT\))Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(but)Tj -/TT10 1 Tf -5.3333 -1.7111 TD -(\(UNPACKFILENAME STUFF.029\) =>)Tj -0 -1 TD -( \(NAME STUFF EXTENSION 29\))Tj -/TT6 1 Tf --5.3333 -1.8444 TD -(Explicitly omitted fields are denoted by the atom )Tj -/TT10 1 Tf -21.8682 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, rather than the empty string.)Tj --21.0018 -2.0667 TD -[(Note:)-901.2(Both )]TJ -/TT10 1 Tf -5.9738 0 TD -(UNPACKFILENAME)Tj -/TT6 1 Tf -8.4014 0 TD -0.3256 Tw -[( and )]TJ -/TT10 1 Tf -2.844 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.3256 Tw -[( leave the)]TJ --26.4879 -1.2889 TD -0.0167 Tw -(trailing colon on the device field, so that the Tenex device )Tj -/TT10 1 Tf -25.842 0 TD -0 Tw -(NIL:)Tj -/TT6 1 Tf -2.4004 0 TD -0.0167 Tw -[( can be)]TJ --28.2424 -1.2889 TD -0.9367 Tw -[(distinguished from the absence of a device. Although)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -0.2411 Tw -[( is capable of making the distinction, it)]TJ --12.6021 -1.2889 TD -0 Tw -(retains this behavior for backward compatibility. Thus,)Tj -/TT10 1 Tf --2 -1.7111 TD -(\(UNPACKFILENAME.STRING {TOAST}DSK:FOO\) =>)Tj -0 -1.2222 TD -( \(HOST "TOAST" DEVICE "DSK:" NAME "FOO"\))Tj --6.6667 -2.5489 TD -(\(FILENAMEFIELD)Tj -/TT4 1 Tf -10 0 0 10 177.6 321.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.3783 321.66 Tm -(FILENAME)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FIELDNAME)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 279.8441 321.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 321.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0233 Tw -(Returns, as an atom, the contents of the )Tj -/TT14 1 Tf -17.7868 0 TD -0 Tw -(FIELDNAME)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( field of )]TJ -/TT14 1 Tf -3.7038 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[(. If )]TJ -/TT14 1 Tf -1.7399 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -[( is a)]TJ --38.2329 -1.2889 TD -0 Tw -(stream, its full name is used.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(PACKFILENAME.STRING)Tj -/TT6 1 Tf -12 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FIELD)Tj -3 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FIELD)Tj -2.9997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 404.8509 271.12 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 442.61 271.12 Tm -([NoSpread)Tj --37.1789 -1.4 TD -(Function])Tj -2 -1.7778 TD -0.1856 Tw -(Takes a sequence of alternating field names and field contents \(atoms or strings\), and)Tj -0 -1.2222 TD -0 Tw -(returns the corresponding file name, as a string.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -1.2166 0 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.2967 Tw -[( is given a single argument, it is interpreted as a list of)]TJ --12.6184 -1.2889 TD -0.5633 Tw -[(alternating field names and field contents. Thus )]TJ -/TT10 1 Tf -26.0863 0 TD -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.5633 Tw -[( and)]TJ -/TT10 1 Tf --37.4881 -1.2889 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf -12.6021 0 TD -( operate as inverses.)Tj --12.6021 -2.0667 TD -(If the same field name is given twice, the )Tj -/TT8 1 Tf -18.2407 0 TD -(first)Tj -/TT6 1 Tf -1.667 0 TD -( occurrence is used.)Tj --19.9077 -2 TD -0.2189 Tw -(The contents of the field name )Tj -/TT10 1 Tf -14.911 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.2189 Tw -[( may be either a directory name or a full)]TJ --20.3119 -1.2889 TD -0 Tw -(directory specification as described above.)Tj -/TT10 1 Tf -0 -2 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.19 Tw -[( also accepts the "field name" )]TJ -/TT10 1 Tf -14.1966 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -0.19 Tw -[( to mean that its contents)]TJ --27.9989 -1.2889 TD -0.0289 Tw -[(should itself be unpacked and spliced into the argument list at that point. This feature, in)]TJ -0 -1.2222 TD -0.0389 Tw -(conjunction with the rule that fields early in the argument list override later duplicates, is)Tj -T* -0.0244 Tw -[(useful for altering existing file names. For example, to provide a default field, place )]TJ -/TT10 1 Tf -37.5898 0 TD -0 Tw -(BODY)Tj -/TT6 1 Tf --37.5898 -1.2889 TD -0.0544 Tw -[(first in the argument list, then the default fields. To override a field, place the new fields)]TJ -0 -1.2222 TD -0 Tw -(first and )Tj -/TT10 1 Tf -3.9619 0 TD -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -( last.)Tj --6.3623 -2.0667 TD -(If the value of the )Tj -/TT10 1 Tf -8.0112 0 TD -(BODY)Tj -/TT6 1 Tf -2.4004 0 TD -( field is a stream, its full name is used.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -34 0 obj -<< -/Length 3151 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-8)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -(Examples:)Tj -/TT10 1 Tf -5.3333 -1.7111 TD -(\(PACKFILENAME.STRING DIRECTORY "LISP")Tj -0 -1 TD -( NAME "NET"\))Tj -T* -( => "NET")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING NAME "NET")Tj -0 -1 TD -( DIRECTORY "{DSK}"\))Tj -T* -( => "{DSK}NET")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING DIRECTORY "{DSK}")Tj -0 -1 TD -( BODY "{TOAST}BAR"\))Tj -T* -( => "{DSK}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING DIRECTORY "FRED")Tj -0 -1 TD -( BODY "{TOAST}BAR"\))Tj -T* -( => "{TOAST}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR")Tj -0 -1 TD -( DIRECTORY "FRED"\))Tj -T* -( => "{TOAST}BAR")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING VERSION NIL)Tj -0 -1 TD -( BODY "{TOAST}BAR.DCOM;2"\))Tj -T* -( => "{TOAST}BAR.DCOM")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR.DCOM")Tj -0 -1 TD -( VERSION 1\))Tj -T* -( => "{TOAST}BAR.DCOM;1")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "{TOAST}BAR.DCOM;")Tj -0 -1 TD -( VERSION 1\))Tj -T* -( => "{TOAST}BAR.DCOM;")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "BAR.;1")Tj -0 -1 TD -( EXTENSION "DCOM"\))Tj -T* -( => "BAR.;1")Tj -0 -1.5556 TD -(\(PACKFILENAME.STRING BODY "BAR;1")Tj -0 -1 TD -( EXTENSION "DCOM"\))Tj -T* -( => "BAR.DCOM;1")Tj -/TT6 1 Tf --5.3333 -1.8444 TD -0.13 Tw -(In the last two examples, note that in one case the extension is explicitly present in the)Tj -0 -1.2222 TD -0.0189 Tw -(body \(as indicated by the preceding period\), while in the other there is no indication of an)Tj -T* -0 Tw -(extension, so the default is used.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(PACKFILENAME)Tj -/TT6 1 Tf -7.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FIELD)Tj -3 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FIELD)Tj -2.9997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(CONTENTS)Tj -4.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 415.0508 187.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 449.99 187.2 Tm -([NoSpread Function])Tj --30.6656 -2.1778 TD -0.1278 Tw -(The same as )Tj -/TT10 1 Tf -6.0166 0 TD -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.1278 Tw -(, except that it returns the file name as a symbol,)Tj --17.4185 -1.2889 TD -0 Tw -(instead of a string.)Tj -/TT4 1 Tf -10 0 0 10 102 113.66 Tm -(Incomplete File Names)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 110.95 m -558.01 110.95 l -S -BT -/TT6 1 Tf -9 0 0 9 126 89 Tm -0.0022 Tw -(In general, it is not necessary to pass a complete file name \(one containing all the fields listed above\) to)Tj -0 -1.2222 TD -0.0878 Tw -[(functions that take a file name as argument. Interlisp supplies suitable defaults for certain fields, as)]TJ -T* -0.2689 Tw -[(described below. Functions that return names of actual files, however, always return the fully)]TJ -T* -0 Tw -(specified name.)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -37 0 obj -<< -/Length 5076 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-9)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.1167 Tw -(If the version field is omitted from a file name, Interlisp performs version recognition, as described)Tj -0 -1.2222 TD -0 Tw -(below.)Tj -0 -2.8889 TD -0.1133 Tw -(If the host, device and/or directory field are omitted from a file name, Interlisp defaults them with)Tj -0 -1.2222 TD -0.2456 Tw -[(respect to the currently connected directory. The connected directory is changed by calling the)]TJ -T* -0 Tw -(function )Tj -/TT10 1 Tf -3.957 0 TD -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -( or using the programmers assistant command )Tj -/TT10 1 Tf -21.1138 0 TD -(CONN)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --30.4717 -2.9556 TD -0.0011 Tw -(Defaults are added to the partially specified name "left to right" until a host, device or directory field is)Tj -0 -1.2222 TD -0 Tw -(encountered. Thus, if the connected directory is )Tj -/TT10 1 Tf -21.5093 0 TD -({TWENTY}PS:)Tj -/TT6 1 Tf -10.2017 0 TD -(, then)Tj -/TT10 1 Tf --21.0443 -1.8444 TD -(BAR.DCOM )Tj -/TT6 1 Tf -5.4009 0 TD -(means)Tj -/TT10 1 Tf --5.4009 -1 TD -( {TWENTY}PS:BAR.DCOM)Tj -0 -1.6222 TD -(BAR.DCOM )Tj -/TT6 1 Tf -10.8018 0 TD -(means)Tj -/TT10 1 Tf --10.8018 -1 TD -( {TWENTY}PS:BAR.DCOM)Tj -0 -1.6222 TD -(MTA0:BAR.DCOM )Tj -/TT6 1 Tf -13.8022 0 TD -(means)Tj -/TT10 1 Tf --13.8022 -1 TD -( {TWENTY}MTA0:BAR.DCOM)Tj -0 -1.6222 TD -({THIRTY}BAR.DCOM )Tj -/TT6 1 Tf -15.6025 0 TD -(means)Tj -/TT10 1 Tf --15.6025 -1 TD -( {THIRTY}BAR.DCOM)Tj -/TT6 1 Tf --10.6667 -2.7333 TD -0.0111 Tw -(In addition, if the partially specified name contains a subdirectory, but no principal directory, then the)Tj -0 -1.2222 TD -0 Tw -(subdirectory is appended to the connected directory. For example,)Tj -/TT10 1 Tf -10.6667 -1.7778 TD -(ISO>BAR.DCOM )Tj -/TT6 1 Tf -7.8013 0 TD -(means)Tj -/TT10 1 Tf --7.8013 -1 TD -( {TWENTY}PS:ISO>BAR.DCOM)Tj -/TT6 1 Tf --10.6667 -2.7333 TD -0.0633 Tw -(Or, if the connected directory is the Unix directory )Tj -/TT10 1 Tf -23.11 0 TD -0 Tw -({UNX}/usr/fred/)Tj -/TT6 1 Tf -9.0015 0 TD -0.0633 Tw -(, then )Tj -/TT10 1 Tf -2.8459 0 TD -0 Tw -(iso/bar.dcom)Tj -/TT6 1 Tf -7.2012 0 TD -0.0633 Tw -[( means)]TJ -/TT10 1 Tf --42.1586 -1.2889 TD -0 Tw -({UNX}/usr/fred/iso/bar.dcom)Tj -/TT6 1 Tf -16.2026 0 TD -(, but )Tj -/TT10 1 Tf -2.2324 0 TD -(/other/bar.dcom)Tj -/TT6 1 Tf -9.0015 0 TD -( means )Tj -/TT10 1 Tf -3.3677 0 TD -({UNX}/other/bar.dcom)Tj -/TT6 1 Tf -12.002 0 TD -(.)Tj -/TT10 1 Tf --40.1395 -2.5489 TD -(\(CNDIR)Tj -/TT4 1 Tf -10 0 0 10 134.4 256.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.1783 256.8 Tm -(HOST/DIR)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 185.7862 256.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 256.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2333 Tw -(Connects to the directory )Tj -/TT14 1 Tf -12.3274 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.2333 Tw -(, which can either be a directory name or a full)Tj --17.1282 -1.2889 TD -0.1244 Tw -[(directory specification including host and/or device. If the specification includes just a)]TJ -0 -1.2222 TD -0.3733 Tw -(host, and the host supports directories, the directory is defaulted to the value of)Tj -/TT10 1 Tf -T* -0 Tw -(\(USERNAME\))Tj -/TT6 1 Tf -6.001 0 TD -0.0567 Tw -(; if the host is omitted, connection is made to another directory on the same)Tj --6.001 -1.2889 TD -0 Tw -(host as before. If )Tj -/TT14 1 Tf -7.7568 0 TD -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, connects to the value of )Tj -/TT10 1 Tf -11.1528 0 TD -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --34.5269 -2.0667 TD -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.2122 Tw -[( returns the full name of the now-connected directory. Causes an error, )]TJ -/TT10 1 Tf -34.5895 0 TD -0 Tw -(Non-)Tj --37.5899 -1.2889 TD -(existent directory)Tj -/TT6 1 Tf -10.8018 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -( is not recognized as a valid directory.)Tj --16.9766 -2.0667 TD -0.0878 Tw -(Note that )Tj -/TT10 1 Tf -4.5921 0 TD -0 Tw -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0878 Tw -[( does not necessarily require or provide any directory access privileges.)]TJ --7.5925 -1.2889 TD -0 Tw -(Access privileges are checked when a file is opened.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(CONN)Tj -/TT6 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOST/DIR)Tj -/TT12 1 Tf -10 0 0 10 169.057 112.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 392.09 112.26 Tm -([Prog. Asst. Command])Tj --29.5656 -1.8444 TD -0.0356 Tw -(Convenient command form of )Tj -/TT10 1 Tf -13.7672 0 TD -0 Tw -(CNDIR)Tj -/TT6 1 Tf -3.0005 0 TD -0.0356 Tw -[( for use at the executive. Connects to )]TJ -/TT14 1 Tf -16.9592 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0356 Tw -(, or)Tj --38.5277 -1.2889 TD -0.0989 Tw -(to the value of )Tj -/TT10 1 Tf -6.9717 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0989 Tw -[( if )]TJ -/TT14 1 Tf -1.3218 0 TD -0 Tw -(HOST/DIR)Tj -/TT6 1 Tf -4.8008 0 TD -0.0989 Tw -[( is omitted. This command is undoable)]TJ --20.8956 -1.2889 TD -0 Tw -(undoing it causes the system to connect to the previously connected directory.)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6212 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-10)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(LOGINHOST/DIR)Tj -/TT12 1 Tf -10 0 0 10 220.2 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 568.2 Tm -([Variable])Tj -/TT10 1 Tf --35.6011 -1.8444 TD -(CONN)Tj -/TT6 1 Tf -2.4004 0 TD -0.1067 Tw -[( with no argument connects to the value of the variable )]TJ -/TT10 1 Tf -25.7729 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.1067 Tw -(, initially)Tj -/TT10 1 Tf --35.9746 -1.2889 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -(, but usually reset in your greeting file \(Chapter 12\).)Tj -/TT10 1 Tf --5.6672 -2.5489 TD -(\(DIRECTORYNAME)Tj -/TT4 1 Tf -10 0 0 10 225.6 517.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.3783 517.06 Tm -(DIRNAME)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(STRPTR)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 306.2406 517.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 517.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.0766 0 TD -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.1567 Tw -[( is T, returns the full specification of the currently connected directory. If)]TJ -/TT14 1 Tf --5.2773 -1.2889 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.83 Tw -[( is )]TJ -/TT10 1 Tf -2.8748 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.83 Tw -(, returns the "login" directory specification \(the value of)Tj -/TT10 1 Tf --8.8758 -1.2889 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0478 Tw -[(\). For any other value of )]TJ -/TT14 1 Tf -11.4477 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0478 Tw -(, returns a full directory specification)Tj --23.4497 -1.2889 TD -0 Tw -(if )Tj -/TT14 1 Tf -0.874 0 TD -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -( designates an existing directory \(satisfies )Tj -/TT10 1 Tf -18.5869 0 TD -(DIRECTORYNAMEP)Tj -/TT6 1 Tf -8.4014 0 TD -(\), otherwise )Tj -/TT10 1 Tf -5.439 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --39.3022 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(STRPTR)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, the value is returned as an atom, otherwise it is returned as a string.)Tj -/TT10 1 Tf --9.0021 -2.5489 TD -(\(DIRECTORYNAMEP)Tj -/TT16 1 Tf -9 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRNAME)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOSTNAME)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 321.9141 424.12 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 424.12 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7515 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0244 Tw -[( if )]TJ -/TT14 1 Tf -1.1729 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( is recognized as a valid directory on host )]TJ -/TT14 1 Tf -18.7981 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0244 Tw -(, or on the host)Tj --33.3241 -1.2889 TD -0.23 Tw -(of the currently connected directory if )Tj -/TT14 1 Tf -18.3771 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.23 Tw -[( is )]TJ -/TT10 1 Tf -1.6748 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.23 Tw -(. )Tj -/TT14 1 Tf -1.21 0 TD -0 Tw -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.23 Tw -[( may be either a)]TJ --32.0637 -1.2889 TD -0 Tw -(directory name or a full directory specification containing host and/or device as well.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9666 0 TD -(DIRNAME)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( includes subdirectories, this function may or may not pass judgment on their)]TJ --5.1673 -1.2889 TD -0.0056 Tw -[(validity. Some hosts support "true" subdirectories, distinct entities manipulable by the file)]TJ -0 -1.2222 TD -0 Tw -(system, while others only provide them as a syntactic convenience.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD --0.0001 Tc -(\(HOSTNAMEP )Tj -/TT14 1 Tf -6.6001 0 TD -0 Tc -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 236.4053 321.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 321.38 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.9882 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2611 Tw -[( if )]TJ -/TT14 1 Tf -1.6462 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.2611 Tw -[( is recognized as a valid host or file device name at the moment)]TJ -/TT10 1 Tf --8.6349 -1.2889 TD -0 Tw -(HOSTNAMEP)Tj -/TT6 1 Tf -5.4009 0 TD -( is called.)Tj -/TT4 1 Tf -10 0 0 10 102 250.24 Tm -(Version Recognition)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 247.53 m -558.01 247.53 l -S -BT -/TT6 1 Tf -9 0 0 9 126 225.58 Tm -0.02 Tw -[(Most of the file devices in Interlisp support file version numbers. That is, it is possible to have several)]TJ -0 -1.2222 TD -0.0189 Tw -(files of the exact same name, differing only in their )Tj -/TT10 1 Tf -22.81 0 TD -0 Tw -(VERSION)Tj -/TT6 1 Tf -4.2007 0 TD -0.0189 Tw -[( field, which is incremented for each new)]TJ --27.0107 -1.2889 TD -0.0244 Tw -[("version" of the file that is created. When a file name lacking a version number is presented to the file)]TJ -0 -1.2222 TD -0.1611 Tw -[(system, it is necessary to determine which version number is intended. This process is known as)]TJ -/TT8 1 Tf -T* -0 Tw -(version recognition)Tj -/TT6 1 Tf -7.7695 0 TD -(.)Tj --7.7695 -2.8889 TD -(When )Tj -/TT10 1 Tf -2.8975 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.0043 Tw -( opens a file for input and no version number is given, the highest existing version)Tj --8.8985 -1.2889 TD -0 Tc -0.0856 Tw -[(number is used. Similarly, when a file is opened for output and no version number is given, a new)]TJ -0 -1.2222 TD -0.1022 Tw -(file is created with a version number one higher than the highest one currently in use with that file)Tj -T* -0.1811 Tw -[(name. The version number defaulting for )]TJ -/TT10 1 Tf -20.0085 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1811 Tw -[( can be changed by specifying a different)]TJ --26.0095 -1.2889 TD -0 Tw -(value for its )Tj -/TT14 1 Tf -5.5029 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( argument, as described under )Tj -/TT10 1 Tf -13.7046 0 TD -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -(, below.)Tj --27.0088 -2.9556 TD -0.0044 Tw -(Other functions that accept file names as arguments generally perform the default version recognition,)Tj -0 -1.2222 TD -0.06 Tw -(which is newest version for existing files, or a new version if using the file name to create a new file.)Tj -T* -0 Tw -(The one exception is )Tj -/TT10 1 Tf -9.2598 0 TD -(DELFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(, which defaults to the oldest existing version of the file.)Tj -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6248 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-11)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0078 Tw -(The functions below can be used to perform version recognition without actually calling )Tj -/TT10 1 Tf -39.3321 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf --39.3321 -1.2889 TD -0.14 Tw -[(to open the file. Note that these functions only tell the truth about the moment at which they are)]TJ -0 -1.2222 TD -0.07 Tw -(called, and thus cannot in general be used to anticipate the name of the file opened by a comparable)Tj -/TT10 1 Tf -T* -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(. They are sometimes, however, helpful hints.)Tj -/TT10 1 Tf --3.3343 -2.5489 TD -(\(FULLNAME)Tj -/TT6 1 Tf -5.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RECOG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 192.9061 513 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 513 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9533 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is an open stream, simply returns the full file name of the stream. Otherwise, if )]TJ -/TT14 1 Tf -36.0647 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -[( is a)]TJ --38.2182 -1.2889 TD -0 Tw -(file name given as a string or symbol, performs version recognition, as follows:)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9399 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.02 Tw -[( is recognized in the recognition mode specified by )]TJ -/TT14 1 Tf -22.9066 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.02 Tw -[( as an abbreviation for some)]TJ --27.4471 -1.2889 TD -0 Tw -(file, returns the files full name, otherwise )Tj -/TT10 1 Tf -18.6489 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(. )Tj -/TT14 1 Tf -0.75 0 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( is one of the following:)Tj -/TT10 1 Tf --15.9997 -2.0667 TD -(OLD)Tj -/TT6 1 Tf -3.1333 0 TD -0.0189 Tw -[(Choose the newest existing version of the file. Return )]TJ -/TT10 1 Tf -24.1962 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf --24.1962 -1.2889 TD -(if no file named )Tj -/TT14 1 Tf -7.2007 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( exists.)Tj -/TT10 1 Tf --12.7341 -2.0667 TD -(OLDEST)Tj -/TT6 1 Tf -4.9333 0 TD -0.0644 Tw -[(Choose the oldest existing version of the file. Return )]TJ -/TT10 1 Tf -24.2045 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf --24.2045 -1.2889 TD -(if no file named )Tj -/TT14 1 Tf -7.2007 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -( exists.)Tj -/TT10 1 Tf --10.9341 -2.0667 TD -(NEW)Tj -/TT6 1 Tf -3.1333 0 TD -0.0167 Tw -[(Choose a new \(not yet existing\) version of the file. That is,)]TJ -0 -1.2889 TD -0.3944 Tw -(if versions of )Tj -/TT14 1 Tf -7.1418 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.3944 Tw -[( already exist, then choose a version)]TJ --7.7419 -1.2889 TD -0.3378 Tw -(number one higher than highest existing version; else)Tj -0 -1.2222 TD -0.3944 Tw -[(choose version 1. For some file systems, )]TJ -/TT10 1 Tf -21.1961 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf --21.1961 -1.2889 TD -(returns )Tj -/TT10 1 Tf -3.5008 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0467 Tw -[( if you do not have the access rights necessary)]TJ --5.3011 -1.2889 TD -0 Tw -(for creating a new file named )Tj -/TT14 1 Tf -13.1909 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --19.3244 -2.0667 TD -(OLD/NEW)Tj -/TT6 1 Tf -5.5333 0 TD -(Try )Tj -/TT10 1 Tf -2.0017 0 TD -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.1878 Tw -(, then )Tj -/TT10 1 Tf -3.0948 0 TD -0 Tw -(NEW)Tj -/TT6 1 Tf -1.8003 0 TD -0.1878 Tw -[(. That is, choose the newest existing)]TJ --8.6971 -1.2889 TD -0.2644 Tw -[(version of the file, if any; else choose version 1. This)]TJ -0 -1.2222 TD -0.1344 Tw -(usually only makes sense if you are intending to open )Tj -/TT14 1 Tf -25.4006 0 TD -0 Tw -(X)Tj -/TT6 1 Tf --25.4006 -1.2889 TD -(for access )Tj -/TT10 1 Tf -4.4883 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT14 1 Tf --6.8887 -2.0667 TD -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.4967 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4967 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2467 Tw -[( defaults to )]TJ -/TT10 1 Tf -5.929 0 TD -0 Tw -(OLD)Tj -/TT6 1 Tf -1.8003 0 TD -0.2467 Tw -[(. For all other values of)]TJ -/TT14 1 Tf --14.1235 -1.2889 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -(, generates an error )Tj -/TT10 1 Tf -8.7622 0 TD -(ILLEGAL ARG)Tj -/TT6 1 Tf -6.6011 0 TD -(. )Tj --18.3638 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.3933 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.4733 Tw -[( already contains a version number, the )]TJ -/TT14 1 Tf -21.0043 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf --22.9976 -1.2889 TD -0.0001 Tc -0.0043 Tw -(argument will never change it. In particular, )Tj -/TT14 1 Tf -20.0922 0 TD -0 Tc -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.2544 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2544 0 TD -(NEW)Tj -/TT6 1 Tf --24.2017 -1.2889 TD -0.4078 Tw -[(does not require that the file actually be new. For)]TJ -0 -1.2222 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.599 0 TD -0.84 Tw -(\(FULLNAME FOO.;2 NEW\))Tj -/TT6 1 Tf -15.4822 0 TD -0.35 Tw -[( may return)]TJ -/TT10 1 Tf --20.0813 -1.2889 TD -0 Tw -({ERIS}FOO.;2)Tj -/TT6 1 Tf -10.8018 0 TD -0.3 Tw -[( if that file already exists, even)]TJ --10.8018 -1.2889 TD -0 Tw -(though )Tj -/TT10 1 Tf -3.7164 0 TD -0.6522 Tw -(\(FULLNAME FOO NEW\))Tj -/TT6 1 Tf -13.3064 0 TD -0.2711 Tw -[( would default the)]TJ --17.0228 -1.2889 TD -1.0689 Tw -(version to a new number, perhaps returning)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -({ERIS}FOO.;5)Tj -/TT6 1 Tf -10.8018 0 TD -(. )Tj -/TT10 1 Tf --24.8018 -2.5489 TD -(\(INFILEP)Tj -/TT6 1 Tf -4.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 174.4544 114.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 114.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1011 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.3824 0 TD -0 Tw -(\(FULLNAME)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.3511 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -0.1011 Tc -( )Tj -/TT10 1 Tf -0.6289 0 TD -0 Tc -(OLD\))Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -[(. That is, returns the full file name of the newest)]TJ --17.5641 -1.2889 TD -0.0278 Tw -(version of )Tj -/TT14 1 Tf -4.7162 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( if )]TJ -/TT14 1 Tf -1.1796 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( is recognized as specifying the name of an existing file that could)]TJ --10.6966 -1.2889 TD -0 Tw -(potentially be opened for input, )Tj -/TT10 1 Tf -14.2969 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( otherwise.)Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -48 0 obj -<< -/Length 6167 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-12)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\(OUTFILEP)Tj -/TT4 1 Tf -10 0 0 10 198.6 568.2 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.3783 568.2 Tm -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 228.3827 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Equivalent to )Tj -/TT10 1 Tf -6.1802 0 TD -(\(FULLNAME)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NEW\))Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj --22.8153 -2.9556 TD -0.1278 Tw -(Note that )Tj -/TT10 1 Tf -4.6721 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.6278 0 TD -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.1278 Tw -[( and )]TJ -/TT10 1 Tf -2.4484 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1278 Tw -[( do not open any files; they are pure predicates. In)]TJ --21.5505 -1.2889 TD -0.0133 Tw -(general they are also only hints, as they do not necessarily imply that the caller has access rights to the)Tj -0 -1.2222 TD -0.19 Tw -[(file. For example, )]TJ -/TT10 1 Tf -8.9001 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.19 Tw -[( might return non-)]TJ -/TT10 1 Tf -8.7814 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.19 Tw -(, but )Tj -/TT10 1 Tf -2.6124 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.19 Tw -[( might fail for the same file)]TJ --32.2959 -1.2889 TD -0.12 Tw -(because the file is read-protected against you, or the file happens to be open for output by another)Tj -0 -1.2222 TD -0.0133 Tw -[(user at the time. Similarly, )]TJ -/TT10 1 Tf -12.1962 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0133 Tw -[( could return non-)]TJ -/TT10 1 Tf -8.1079 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0133 Tw -(, but )Tj -/TT10 1 Tf -2.2591 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0133 Tw -[( could fail with a )]TJ -/TT10 1 Tf -7.7595 0 TD -0 Tw -(FILE)Tj --42.9248 -1.2889 TD -(SYSTEM RESOURCES EXCEEDED)Tj -/TT6 1 Tf -15.0024 0 TD -( error.)Tj --15.0024 -3.1045 TD -0.1711 Tw -(Note also that in a shared file system, such as a remote file server, intervening file)Tj -/TT12 1 Tf -10 0 0 10 473.2318 440.26 Tm -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 477.9201 440.26 Tm -0.1711 Tw -(operations by)Tj --39.1022 -1.2222 TD -0.1 Tw -[(another user could contradict the information returned by recognition. For example, a file that was)]TJ -/TT10 1 Tf -T* -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0356 Tw -[( might be deleted, or between an )]TJ -/TT10 1 Tf -14.9506 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.0356 Tw -[( and the subsequent )]TJ -/TT10 1 Tf -9.2555 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0356 Tw -(, another user)Tj --39.2085 -1.2889 TD -0.1378 Tw -(might create a new version or delete the highest version, causing )Tj -/TT10 1 Tf -30.3686 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1378 Tw -[( to open a different)]TJ --36.3696 -1.2889 TD -0.1422 Tw -(version of the file than the one returned by )Tj -/TT10 1 Tf -20.4358 0 TD -0 Tw -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -0.1422 Tw -[(. In addition, some file servers do not well)]TJ --25.2365 -1.2889 TD -0.1144 Tw -[(support recognition of files in output context. Thus, in general, the "truth" about a file can only be)]TJ -0 -1.2222 TD -0.0022 Tw -(obtained by actually opening the file; creators of files should rely on the name of the stream opened by)Tj -/TT10 1 Tf -T* -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0744 Tw -[(, not the value returned from these recognition functions. In particular, for the reasons)]TJ --6.001 -1.2889 TD -0 Tw -(described earlier, programmers are discouraged from using )Tj -/TT10 1 Tf -26.6196 0 TD -(OUTFILEP)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(\(FULLNAME)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NEW\))Tj -/TT6 1 Tf -3.0005 0 TD -(. )Tj -/TT4 1 Tf -10 0 0 10 102 306.92 Tm -(Using File Names Instead of Streams)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 304.21 m -558.01 304.21 l -S -BT -/TT6 1 Tf -9 0 0 9 126 282.26 Tm -0.1633 Tw -(In earlier implementations of Interlisp, from the days of Interlisp-10 onward, the "handle" used to)Tj -0 -1.2222 TD -0.0522 Tw -[(refer to an open file was not a stream, but rather the files full name, represented as a symbol. When)]TJ -T* -0.0589 Tw -(the file name was passed to any I/O function, it was mapped to a stream by looking it up in a list of)Tj -T* -0.0644 Tw -[(open files. This scheme was sometimes convenient for typing in file commands at the executive, but)]TJ -T* -0.1411 Tw -[(was very poor for serious programming in two major ways. First, the mapping from file name to)]TJ -T* -0.1211 Tw -(stream on every input/output operation is inefficient. Second, and more importantly, using the file)Tj -T* -0.1289 Tw -(name as the handle on an open stream means that it is not possible to have more than one stream)Tj -T* -0 Tw -(open on a given file at once.)Tj -0 -2.8889 TD -0.0133 Tw -(As of this writing, Medley is in a transition period, where it still supports the use of symbol file names)Tj -0 -1.2222 TD -0.0922 Tw -[(as synonymous with open streams, but this use is not recommended. The remainder of this section)]TJ -T* -0.1733 Tw -(discusses this usage of file names for the benefit of those reading older programs and wishing to)Tj -T* -0 Tw -(convert them as necessary to work properly when this compatibility feature is removed.)Tj -/TT4 1 Tf -10 0 0 10 126 118.92 Tm -(File Name Efficiency Considerations)Tj -/TT6 1 Tf -9 0 0 9 126 95.26 Tm -0.0755 Tw -(It is possible for a program to be seriously inefficient using a file name as a stream if the program is)Tj -T* -0.3611 Tw -(not using the files full name, the name returned by )Tj -/TT10 1 Tf -26.5266 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3611 Tw -[( \(below\). Any time that an)]TJ --31.3274 -1.2889 TD -0.0622 Tw -(input/output function is called with a file name other than the full file name, Interlisp must perform)Tj -0 -1.2222 TD -0.2344 Tw -[(recognition on the partial file name in order to determine which open file is intended. Thus if)]TJ -T* -0.1578 Tw -(repeated operations are to be performed, it is considerably more efficient to use the full file name)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -51 0 obj -<< -/Length 6401 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-13)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0356 Tw -(returned from )Tj -/TT10 1 Tf -6.598 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0355 Tw -[( than to repeatedly use the possibly incomplete name that was used to open)]TJ --11.3988 -1.2889 TD -0 Tw -(the file.)Tj -0 -2.8889 TD -0.0167 Tw -(There is a more subtle problem with partial file names, in that recognition is performed on your entire)Tj -0 -1.2222 TD -0.18 Tw -[(directory, not just the open files. It is possible for a file name that was previously recognized to)]TJ -T* -0.2622 Tw -[(denote one file to suddenly denote a different file. For example, suppose a program performs)]TJ -/TT10 1 Tf -T* -0.0922 Tw -(\(INFILE FOO\))Tj -/TT6 1 Tf -7.8935 0 TD -0.0389 Tw -(, opening )Tj -/TT10 1 Tf -4.465 0 TD -0 Tw -(FOO.;1)Tj -/TT6 1 Tf -3.6006 0 TD -0.0389 Tw -(, and reads several expressions from )Tj -/TT10 1 Tf -16.5351 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0389 Tw -[(. Then you interrupt the)]TJ --34.2944 -1.2889 TD -0.2489 Tw -(program, create a )Tj -/TT10 1 Tf -8.7457 0 TD -0 Tw -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -0.2489 Tw -[( and resume the program \(or a user at another workstation creates a)]TJ -/TT10 1 Tf --12.3463 -1.2889 TD -0 Tw -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[(\). Now a call to )]TJ -/TT10 1 Tf -7.6452 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0756 Tw -[( giving it )]TJ -/TT10 1 Tf -4.4352 0 TD -0 Tw -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -0.0756 Tw -[( as its )]TJ -/TT14 1 Tf -2.9415 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0756 Tw -[( argument will generate a )]TJ -/TT10 1 Tf -11.9554 0 TD -0.1811 Tw -(FILE NOT OPEN)Tj -/TT6 1 Tf --37.179 -1.2889 TD -0 Tw -(error, because )Tj -/TT10 1 Tf -6.4419 0 TD -(FOO)Tj -/TT6 1 Tf -1.8003 0 TD -( will be recognized as )Tj -/TT10 1 Tf -9.7959 0 TD -(FOO.;2)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 436.2 Tm -(Obsolete File Opening Functions)Tj -/TT6 1 Tf -9 0 0 9 78 412.54 Tm -(The following functions are now considered obsolete, but are provided for backwards compatibility:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(OPENFILE)Tj -/TT6 1 Tf -5.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RECOG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PARAMETERS)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 300.0228 390.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 390.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT14 1 Tf -3.131 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -[( with access rights as specified by )]TJ -/TT14 1 Tf -15.1198 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0089 Tw -(, and recognition mode )Tj -/TT14 1 Tf -10.5351 0 TD -0 Tw -(RECOG)Tj -/TT6 1 Tf -3.0005 0 TD -0.0089 Tw -(, and)Tj --37.7873 -1.2889 TD -0.07 Tw -[(returns the full name of the resulting stream. Equivalent to )]TJ -/TT10 1 Tf -27.2236 0 TD -0.1689 Tw -(\(FULLNAME \(OPENSTREAM)Tj -/TT14 1 Tf --27.2236 -1.2889 TD -0 Tw -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(RECOG)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PARAMETERS)Tj -/TT10 1 Tf -6.001 0 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --19.6193 -2.5489 TD -(\(INFILE)Tj -/TT6 1 Tf -4.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 169.0544 327.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 327.46 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT14 1 Tf -3.2698 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -[( for input, and sets it as the primary input stream. Equivalent to )]TJ -/TT10 1 Tf -30.7315 0 TD -0 Tw -(\(INPUT)Tj --36.4017 -1.2889 TD -(\(OPENSTREAM)Tj -/TT16 1 Tf -6.6011 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(INPUT OLD\)\))Tj --12.1681 -2.5489 TD -(\(OUTFILE)Tj -/TT6 1 Tf -4.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 174.4544 276.32 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 276.32 Tm -([Function])Tj --35.4033 -1.8444 TD -(Opens )Tj -/TT14 1 Tf -3.1498 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( for output, and sets it as the primary output stream. Equivalent to )]TJ -/TT10 1 Tf -30.2556 0 TD -0 Tw -(\(OUTPUT)Tj --35.8058 -1.2889 TD -(\(OPENSTREAM)Tj -/TT16 1 Tf -6.6011 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(OUTPUT NEW\)\))Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --20.5695 -2.5489 TD -(\(IOFILE)Tj -/TT6 1 Tf -4.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 169.0544 225.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 225.18 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0933 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.3668 0 TD -0 Tw -(\(OPENFILE)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.3433 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3433 0 TD -0.2256 Tw -(BOTH OLD\))Tj -/TT6 1 Tf -6.8266 0 TD -0.0933 Tw -(; opens )Tj -/TT14 1 Tf -3.5685 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0933 Tw -[( for both input and output.)]TJ --27.6503 -1.2889 TD -0 Tw -(Does not affect the primary input or output stream.)Tj -/TT4 1 Tf -10 0 0 10 78 169.64 Tm -(Converting Old Programs)Tj -/TT6 1 Tf -9 0 0 9 78 145.98 Tm -0.1678 Tw -(At some point in the future, the Medley file system will change so that each call to )Tj -/TT10 1 Tf -39.3254 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf --39.3254 -1.2889 TD -0.0211 Tw -[(returns a distinct stream, even if a stream is already open to the specified file. This change is required)]TJ -0 -1.2222 TD -0 Tw -(in order to deal rationally with files in a multiprocessing environment.)Tj -0 -2.8889 TD -(This change will of necessity produce the following incompatibilities:)Tj -1.9167 -2 TD -0.1778 Tw -[(1.)-1333.3(The functions )]TJ -/TT10 1 Tf -8.7436 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.6778 0 TD -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -0.1778 Tw -(, and )Tj -/TT10 1 Tf -2.7984 0 TD -0 Tw -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1778 Tw -[( will return a )]TJ -/TT10 1 Tf -6.6984 0 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1778 Tw -(, not a full file)Tj --31.8373 -1.2889 TD -0.0444 Tw -[(name. To make this less confusing in interactive situations, )]TJ -/TT10 1 Tf -26.9308 0 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0444 Tw -(s will have a print)Tj --30.5314 -1.2889 TD -0 Tw -(format that reveals the underlying files actual name,)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6059 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-14)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 143.25 569.54 Tm -0.2244 Tw -[(2.)-1333.3(A greater penalty will ensue for passing as the )]TJ -/TT14 1 Tf -24.8338 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.2244 Tw -[( argument to I/O operations)]TJ --25.1509 -1.2889 TD -0.0811 Tw -(anything other than the object returned from )Tj -/TT10 1 Tf -20.6078 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0811 Tw -[(. Passing the files name will)]TJ --25.4086 -1.2889 TD -0.2578 Tw -(be significantly slower than passing the stream \(even when passing the "full" file)Tj -0 -1.2222 TD -0.0922 Tw -(name\), and in the case where there is more than one stream open on the file it might)Tj -T* -0 Tw -(even act on the wrong one.)Tj --2.0833 -2 TD -(3.)Tj -/TT10 1 Tf -2.0833 0 TD -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -0.0578 Tw -[( will return )]TJ -/TT10 1 Tf -5.4106 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0578 Tw -[( when passed the name of a file rather than a stream \(the value)]TJ --10.2114 -1.2889 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.1289 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(\).)Tj --17.3716 -2.9556 TD -0.3511 Tw -(Users should consider the following advice when writing new programs and editing existing)Tj -0 -1.2222 TD -0 Tw -(programs, in order that they will continue to operate well when this change is made:)Tj -0 -2.8889 TD -0.3089 Tw -(Because of the efficiency and ambiguity considerations described earlier, users have long been)Tj -0 -1.2222 TD -0.1344 Tw -(encouraged to use only full file names as )Tj -/TT8 1 Tf -19.327 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.0562 0 TD -0.1344 Tw -[( arguments to I/O operations. The "proper" way to)]TJ --21.3832 -1.2222 TD -0.0433 Tw -(have done this was to bind a variable to the value returned from )Tj -/TT10 1 Tf -29.2455 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0433 Tw -[( and pass that variable to)]TJ --34.0462 -1.2889 TD -0.09 Tw -[(all I/O operations; such code will continue to work. A less proper way to obtain the full file name,)]TJ -0 -1.2222 TD -0.1522 Tw -(but one which has to date not incurred any obvious penalty, is that which binds a variable to the)Tj -T* -0.0244 Tw -(result of an )Tj -/TT10 1 Tf -5.3023 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.0244 Tw -[( and passes that to )]TJ -/TT10 1 Tf -8.5231 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0244 Tw -[( and all I/O operations. This has worked because)]TJ -/TT10 1 Tf --22.8269 -1.2889 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.1622 Tw -[( and )]TJ -/TT10 1 Tf -2.5173 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1622 Tw -[( both return a full file name, an invalid assumption in this future world.)]TJ --11.5188 -1.4378 TD -0 Tw -(Such code should be changed to pass around the value of the )Tj -/TT10 1 Tf -27.2251 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(, not the )Tj -/TT10 1 Tf -3.8413 0 TD -(INFILEP)Tj -/TT12 1 Tf -10 0 0 10 486.6108 351 Tm -(.)Tj -/TT6 1 Tf -9 0 0 9 126 324.4 Tm -0.1822 Tw -(Code that calls )Tj -/TT10 1 Tf -7.3255 0 TD -0 Tw -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1822 Tw -[( to test whether a possibly incomplete file name is already open should be)]TJ --10.326 -1.2889 TD -0 Tw -(recoded to pass to )Tj -/TT10 1 Tf -8.2573 0 TD -(OPENP)Tj -/TT6 1 Tf -3.0005 0 TD -( only the value returned from )Tj -/TT10 1 Tf -13.3272 0 TD -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj --36.8276 -2.9556 TD -0.29 Tw -(Code that uses ordinary string functions to manipulate file names, and in particular the value)Tj -0 -1.2222 TD -0.1611 Tw -(returned from )Tj -/TT10 1 Tf -6.8491 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1611 Tw -(, should be changed to use the the functions )Tj -/TT10 1 Tf -21.076 0 TD -0 Tw -(UNPACKFILENAME.STRING)Tj -/TT6 1 Tf --32.7258 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.2506 0 TD -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.3078 Tw -[(. Those functions work both on file names \(strings\) and streams)]TJ --13.6525 -1.2889 TD -0 Tw -(\(coercing the stream to the name of its file\).)Tj -0 -2.8889 TD -0.0822 Tw -(Code that tests the value of )Tj -/TT10 1 Tf -12.7555 0 TD -0 Tw -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0822 Tw -[( for equality to some known file name or )]TJ -/TT10 1 Tf -18.9529 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -[( should be examined)]TJ --35.9091 -1.2889 TD -0 Tw -(carefully and, if possible, recoded.)Tj -0 -2.8889 TD -0.0233 Tw -(To see more directly the effects of passing around )Tj -/TT10 1 Tf -22.3951 0 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.0233 Tw -(s instead of file names, replace your calls to)Tj -/TT10 1 Tf --25.9956 -1.2889 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0689 Tw -[( with calls to )]TJ -/TT10 1 Tf -6.1305 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -(. )Tj -/TT10 1 Tf -0.8878 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.0689 Tw -[( is called in exactly the same way, but returns a)]TJ -/TT10 1 Tf --23.8211 -1.2889 TD -0 Tw -(STREAM)Tj -/TT6 1 Tf -3.6006 0 TD -0.1922 Tw -[(. Streams can be passed to )]TJ -/TT10 1 Tf -13.346 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6922 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6922 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1922 Tw -(, etc just as the files full name can be)Tj --27.3325 -1.2889 TD -0.2211 Tw -[(currently, but using them is more efficient. The function )]TJ -/TT10 1 Tf -27.4474 0 TD -0 Tw -(FULLNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.2211 Tw -(, when applied to a stream,)Tj --32.2482 -1.2889 TD -0 Tw -(returns its full file name.)Tj -/TT4 1 Tf -10 0 0 10 102 99.66 Tm -(Using Files with Processes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 96.95 m -558.01 96.95 l -S -BT -/TT6 1 Tf -9 0 0 9 126 75 Tm -0.2855 Tw -(Because Medley does not yet support multiple streams per file, problems can arise if different)Tj -0 -1.2222 TD -0.3089 Tw -[(processes attempt to access the same file. You have to be careful not to have two processes)]TJ -T* -0.1267 Tw -(manipulating the same file at the same time, since the two processes will be sharing a single input)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -57 0 obj -<< -/Length 6016 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-15)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0056 Tw -[(stream and file pointer. For example, it will not work to have one process )]TJ -/TT10 1 Tf -32.9202 0 TD -0 Tw -(TCOMPL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0056 Tw -[( a file while another)]TJ --36.5208 -1.2889 TD -0 Tw -(process is running )Tj -/TT10 1 Tf -8.3687 0 TD -(LISTFILES)Tj -/TT6 1 Tf -5.4009 0 TD -( on it.)Tj -/TT4 1 Tf -10 0 0 10 54 515 Tm -(File Attributes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 512.29 m -510.01 512.29 l -S -BT -/TT6 1 Tf -9 0 0 9 78 490.34 Tm -0.0967 Tw -[(Any file has a number of "file attributes", such as the read date, protection, and bytesize. The exact)]TJ -0 -1.2222 TD -0.2022 Tw -[(attributes that a file can have is dependent on the file device. The functions )]TJ -/TT10 1 Tf -36.5846 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2022 Tw -[( and)]TJ -/TT10 1 Tf --43.1857 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -( allow you to conveniently access file attributes:)Tj -/TT10 1 Tf --3.9344 -2.5489 TD -(\(GETFILEINFO)Tj -/TT6 1 Tf -7.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ATTRIB)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 230.7097 444.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 444.8 Tm -([Function])Tj --35.4033 -1.8445 TD -(Returns the current setting of the )Tj -/TT14 1 Tf -14.8389 0 TD -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -( attribute of )Tj -/TT14 1 Tf -5.4287 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --28.9352 -2.5489 TD -(\(SETFILEINFO)Tj -/TT6 1 Tf -7.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ATTRIB)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VALUE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 259.9641 405.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 405.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1011 Tw -(Sets the attribute )Tj -/TT14 1 Tf -7.9943 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.1011 Tw -[( of )]TJ -/TT14 1 Tf -1.5811 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1011 Tw -[( to be )]TJ -/TT14 1 Tf -2.9576 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1011 Tw -(. )Tj -/TT10 1 Tf -0.9522 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1011 Tw -[( returns )]TJ -/TT10 1 Tf -3.9063 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( if it is able to)]TJ --33.5942 -1.2889 TD -0.0611 Tw -(change the attribute )Tj -/TT14 1 Tf -9.2634 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -(, and )Tj -/TT10 1 Tf -2.5651 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0611 Tw -[( if unsuccessful, either because the file device does)]TJ --17.2294 -1.2889 TD -0.2511 Tw -(not recognize )Tj -/TT14 1 Tf -6.7283 0 TD -0 Tw -(ATTRIB)Tj -/TT6 1 Tf -3.6006 0 TD -0.2511 Tw -[( or because the file device does not permit the attribute to be)]TJ --10.3289 -1.2889 TD -0 Tw -(modified.)Tj --5.3333 -2.8889 TD -(The )Tj -/TT14 1 Tf -2.076 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1522 Tw -[( argument to )]TJ -/TT10 1 Tf -6.403 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1522 Tw -[( and )]TJ -/TT10 1 Tf -2.4973 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1522 Tw -[( can be an open stream \(or an argument)]TJ --26.5789 -1.2889 TD -0.0844 Tw -(designating an open stream, see Chapter 25\), or the name of a closed file. )Tj -/TT10 1 Tf -33.9083 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0844 Tw -[( in general)]TJ --40.5093 -1.2889 TD -0 Tw -(requires write access to the file.)Tj -0 -2.8889 TD -0.1733 Tw -(The attributes recognized by )Tj -/TT10 1 Tf -13.583 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1733 Tw -[( and )]TJ -/TT10 1 Tf -2.5395 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1733 Tw -[( fall into two categories: )]TJ -/TT8 1 Tf -11.6728 0 TD -0 Tw -(permanent)Tj -/TT6 1 Tf --40.9975 -1.2889 TD -0.1089 Tw -(attributes, which are properties of the file, and )Tj -/TT8 1 Tf -21.5918 0 TD -0 Tw -(temporary)Tj -/TT6 1 Tf -4.166 0 TD -0.1089 Tw -[( attributes, which are properties only of an)]TJ --25.7578 -1.2222 TD -0.0356 Tw -[(open stream to the file. The temporary attributes are only recognized when )]TJ -/TT14 1 Tf -34.118 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( designates an open)]TJ --36.5184 -1.2889 TD -0.1044 Tw -[(stream; the permanent attributes are usually equally accessible for open and closed files. However,)]TJ -0 -1.2222 TD -0.2256 Tw -(some devices are willing to change the value of certain attributes of an open stream only when)Tj -T* -0.43 Tw -(specified in the )Tj -/TT14 1 Tf -8.2529 0 TD -0 Tw -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.43 Tw -[( argument to )]TJ -/TT10 1 Tf -7.2363 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.43 Tw -[( \(see above\), not on a later call to)]TJ -/TT10 1 Tf --27.4911 -1.2889 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --6.6011 -2.9556 TD -(The following are currently recognized as permanent attributes of a file:)Tj -/TT10 1 Tf -13.2 -2 TD -(BYTESIZE)Tj -/TT6 1 Tf -6.1333 0 TD -0.2756 Tw -[(The byte size of the file. Medley currently only)]TJ -0 -1.2889 TD -0 Tw -(supports byte size 8.)Tj -/TT10 1 Tf --4.9333 -2 TD -(LENGTH)Tj -/TT6 1 Tf -4.9333 0 TD -0.1444 Tw -[(The number of bytes in the file. Alternatively, the)]TJ -0 -1.2889 TD -0.1422 Tw -[(byte position of the end-of-file. Like )]TJ -/TT10 1 Tf -17.331 0 TD -0 Tw -(\(GETEOFPTR)Tj -/TT14 1 Tf --17.331 -1.2889 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(, but )Tj -/TT14 1 Tf -2.2324 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( does not have to be open.)Tj -/TT10 1 Tf --11.3666 -2.0667 TD -(SIZE)Tj -/TT6 1 Tf -3.7333 0 TD -(The size of )Tj -/TT14 1 Tf -4.9966 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( in pages.)Tj -/TT10 1 Tf --15.9303 -2.0667 TD -(CREATIONDATE)Tj -/TT6 1 Tf -8.5333 0 TD -0.1789 Tw -(The date and time, as a string, that the content of)Tj -/TT14 1 Tf -0 -1.2889 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3533 Tw -[( was "created". The creation date changes)]TJ --2.4004 -1.2889 TD -0.2644 Tw -(whenever the content of the file is modified, but)Tj -0 -1.2222 TD -0.4689 Tw -(remains unchanged when a file is transported,)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -60 0 obj -<< -/Length 4826 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-16)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 300 569.54 Tm -0.6822 Tw -[(unmodified, across file systems. Specifically,)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1278 Tw -[( and )]TJ -/TT10 1 Tf -2.4484 0 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1278 Tw -[( \(see below\) preserve)]TJ --13.2502 -1.2889 TD -0.1989 Tw -[(the files creation date. Note that this is different)]TJ -0 -1.2222 TD -0.2133 Tw -(from the concept of "creation date" used by some)Tj -T* -0 Tw -(operating systems \(e.g., Tops20\).)Tj -/TT10 1 Tf --6.7333 -2 TD -(WRITEDATE)Tj -/TT6 1 Tf -6.7333 0 TD -0.1789 Tw -(The date and time, as a string, that the content of)Tj -/TT14 1 Tf -0 -1.2889 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1022 Tw -[( was last written to this particular file system.)]TJ --2.4004 -1.2889 TD -0.2856 Tw -(When a file is copied, its creation date does not)Tj -0 -1.2222 TD -0.0211 Tw -(change, but its write date becomes the time at which)Tj -T* -0 Tw -(the copy is made.)Tj -/TT10 1 Tf --6.1333 -2 TD -(READDATE)Tj -/TT6 1 Tf -6.1333 0 TD -0.1633 Tw -(The date and time, as a string, that )Tj -/TT14 1 Tf -16.8008 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1633 Tw -[( was last)]TJ --19.2012 -1.2889 TD -0 Tw -(read, or )Tj -/TT10 1 Tf -3.6758 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if it has never been read.)Tj -/TT10 1 Tf --14.6094 -2.0667 TD -(ICREATIONDATE)Tj -1.8 -1.0667 TD -(IWRITEDATE)Tj -0.6 -1.0667 TD -(IREADDATE)Tj -/TT6 1 Tf -6.7333 0 TD -(The )Tj -/TT10 1 Tf -2.1905 0 TD -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -(, )Tj -/TT10 1 Tf -0.7667 0 TD -(WRITEDATE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2667 Tw -[( and )]TJ -/TT10 1 Tf -2.7262 0 TD -0 Tw -(READDATE)Tj -/TT6 1 Tf -4.8008 0 TD -(,)Tj --23.0862 -1.2889 TD -0.0611 Tw -(respectively, in integer form, as )Tj -/TT10 1 Tf -14.4476 0 TD -0 Tw -(IDATE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0611 Tw -[( \(Chapter 12\))]TJ --17.4481 -1.2889 TD -0.2278 Tw -[(would return. This form is useful for comparing)]TJ -0 -1.2222 TD -0 Tw -(dates.)Tj -/TT10 1 Tf --4.9333 -2 TD -(AUTHOR)Tj -/TT6 1 Tf -4.9333 0 TD -(The name of the user who last wrote the file.)Tj -/TT10 1 Tf --3.7333 -2.0667 TD -(TYPE)Tj -/TT6 1 Tf -3.7333 0 TD -0.0944 Tw -(The "type" of the file, some indication of the nature)Tj -0 -1.2889 TD -0.2367 Tw -[(of the files content. The "types" of files allowed)]TJ -0 -1.2222 TD -0.0889 Tw -[(depends on the file device. Most devices recognize)]TJ -T* -0.1033 Tw -(the symbol )Tj -/TT10 1 Tf -5.3468 0 TD -0 Tw -(TEXT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1033 Tw -[( to mean that the file contains just)]TJ --7.7472 -1.2889 TD -0.0656 Tw -(characters, or )Tj -/TT10 1 Tf -6.3108 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0656 Tw -[( to mean that the file contains)]TJ --9.9114 -1.2889 TD -0 Tw -(arbitrary data.)Tj -0 -2 TD -0.2289 Tw -(Some devices support a wider range of file types)Tj -0 -1.2222 TD -0.0522 Tw -(that distinguish among the various sorts of files one)Tj -T* -0.0856 Tw -[(might create whose content is "binary". All devices)]TJ -T* -0.0078 Tw -(interpret any value of )Tj -/TT10 1 Tf -9.8607 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0078 Tw -[( that they do not support)]TJ --12.2611 -1.2889 TD -0.05 Tw -(to be )Tj -/TT10 1 Tf -2.5043 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.05 Tw -[(. Thus, )]TJ -/TT10 1 Tf -3.6217 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.05 Tw -[( may return the)]TJ --16.3276 -1.2889 TD -0.1467 Tw -(more general value )Tj -/TT10 1 Tf -9.2129 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.1467 Tw -[( instead of the original)]TJ --12.8135 -1.2889 TD -0.8211 Tw -(type that was passed to )Tj -/TT10 1 Tf -14.7208 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.8211 Tw -[( or)]TJ -/TT10 1 Tf --21.3219 -1.2889 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -1.07 Tw -[(. Similarly, )]TJ -/TT10 1 Tf -8.483 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -1.07 Tw -(, while)Tj --19.2847 -1.2889 TD -0.3056 Tw -(attempting to preserve the )Tj -/TT10 1 Tf -13.169 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3056 Tw -[( of the file it is)]TJ --15.5694 -1.2889 TD -0.12 Tw -(copying, may turn, say, an )Tj -/TT10 1 Tf -12.5834 0 TD -0 Tw -(INTERPRESS)Tj -/TT6 1 Tf -6.001 0 TD -0.12 Tw -[( file into a)]TJ --18.5844 -1.2889 TD -0 Tw -(mere )Tj -/TT10 1 Tf -2.4858 0 TD -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -( file.)Tj --6.0864 -2.0667 TD -0.0867 Tw -(The way in which some file devices \(e.g., Xerox file)Tj -0 -1.2222 TD -0.2644 Tw -(servers\) support a wide range of file types is by)Tj -T* -0.7778 Tw -(representing the type as an integer, whose)Tj -T* -0.1233 Tw -[(interpretation is known by the client. The variable)]TJ -/TT10 1 Tf -T* -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.1033 Tw -[( is used to associate symbolic types)]TJ --7.2012 -1.2889 TD -0.2011 Tw -[(with numbers for these devices. This list initially)]TJ -0 -1.2222 TD -0.31 Tw -(contains some of the well-known assignments of)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -63 0 obj -<< -/Length 5305 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-17)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 252 569.54 Tm -0.4367 Tw -(type name to number; you can add additional)Tj -0 -1.2222 TD -0.3944 Tw -[(elements to handle any private file types. For)]TJ -T* -0.3889 Tw -(example, suppose there existed an NS file type)Tj -/TT10 1 Tf -T* -0 Tw -(MAZEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[( with numeric value 5678. You could add)]TJ --4.8008 -1.2889 TD -0.0556 Tw -(the element )Tj -/TT10 1 Tf -5.5174 0 TD -0.1333 Tw -(\(MAZEFILE 5678\))Tj -/TT6 1 Tf -9.1348 0 TD -0.0556 Tw -[( to )]TJ -/TT10 1 Tf -1.4832 0 TD -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf --16.1353 -1.2889 TD -0.2433 Tw -(and then use )Tj -/TT10 1 Tf -6.648 0 TD -0 Tw -(MAZEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2433 Tw -[( as a value for the )]TJ -/TT10 1 Tf -9.4829 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf --20.9317 -1.2889 TD -0.1344 Tw -(attribute to )Tj -/TT10 1 Tf -5.4408 0 TD -0 Tw -(SETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.1344 Tw -[( or )]TJ -/TT10 1 Tf -1.7098 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1344 Tw -[(. Other)]TJ --19.7526 -1.2889 TD -0.13 Tw -(devices are, of course, free to store )Tj -/TT10 1 Tf -16.3241 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.13 Tw -[( attributes)]TJ --18.7245 -1.2889 TD -0.2856 Tw -(in whatever manner they wish, be it numeric or)Tj -0 -1.2222 TD -0.0578 Tw -(symbolic. )Tj -/TT10 1 Tf -4.8533 0 TD -0 Tw -(FILING.TYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.0578 Tw -[( is merely considered the)]TJ --12.0545 -1.2889 TD -0 Tw -(official registry for Xerox file types.)Tj -0 -2 TD -0.1478 Tw -(For most file devices, the )Tj -/TT10 1 Tf -11.9884 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -[( of a newly created)]TJ --14.3888 -1.2889 TD -0.0256 Tw -(file, if not specified in the )Tj -/TT14 1 Tf -11.5884 0 TD -0 Tw -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -0.0256 Tw -[( argument to)]TJ -/TT10 1 Tf --17.5894 -1.2889 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -1.3378 Tw -(, defaults to the value of)Tj -/TT10 1 Tf --6.001 -1.2889 TD -0 Tw -(DEFAULTFILETYPE)Tj -/TT6 1 Tf -9.0015 0 TD -(, initially )Tj -/TT10 1 Tf -4.1694 0 TD -(TEXT)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --15.5713 -2.0667 TD -0.9767 Tw -(The following are currently recognized as)Tj -0 -1.2222 TD -0 Tw -(temporary attributes of an open stream:)Tj -/TT10 1 Tf --4.9333 -2 TD -(ACCESS)Tj -/TT6 1 Tf -4.9333 0 TD -0.3456 Tw -(The current access rights of the stream \(see the)Tj -0 -1.2889 TD -0.1822 Tw -[(beginning of this chapter\). Can be one of )]TJ -/TT10 1 Tf -20.0838 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj -/TT10 1 Tf --23.0843 -1.2889 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5889 0 TD -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5889 0 TD -(APPEND)Tj -/TT6 1 Tf -3.6006 0 TD -0.0889 Tw -(; or )Tj -/TT10 1 Tf -1.8687 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0889 Tw -[( if the stream is not)]TJ --14.4483 -1.2889 TD -0 Tw -(open.)Tj -/TT10 1 Tf --9.1333 -2 TD -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -9.1333 0 TD -0.13 Tw -(The action to be taken when a stream is at "end of)Tj -0 -1.2889 TD -0.15 Tw -(file" and an attempt is made to take input from it.)Tj -0 -1.2222 TD -0.3622 Tw -(The value of this attribute is a function of one)Tj -T* -0.0111 Tw -[(argument, the stream. The function can examine the)]TJ -T* -0.0744 Tw -(stream and its calling context and take any action it)Tj -T* -0.0856 Tw -[(wishes. If the function returns normally, its should)]TJ -T* -0.1344 Tw -(return either )Tj -/TT10 1 Tf -6.1014 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1344 Tw -(, meaning to try the input operation)Tj --6.7015 -1.2889 TD -0.0056 Tw -(again, or the byte that )Tj -/TT10 1 Tf -9.934 0 TD -0 Tw -(BIN)Tj -/TT6 1 Tf -1.8003 0 TD -0.0056 Tw -[( would have returned had)]TJ --11.7343 -1.2889 TD -0.3344 Tw -[(there been more bytes to read. Ordinarily, one)]TJ -0 -1.2222 TD -0.0922 Tw -(should not let the )Tj -/TT10 1 Tf -8.363 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.0922 Tw -[( function return)]TJ --16.1643 -1.2889 TD -0.0433 Tw -(unless one is only performing binary input from the)Tj -0 -1.2222 TD -0.1122 Tw -(file, since there is no way in general of knowing in)Tj -T* -0.0689 Tw -(what state the reader was at the time the end of file)Tj -T* -0.2022 Tw -(occurred, and hence how it will interpret a single)Tj -T* -0 Tw -(byte returned to it.)Tj -0 -2 TD -0.2 Tw -(The default )Tj -/TT10 1 Tf -5.7169 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.2 Tw -[( is a system function)]TJ --13.5182 -1.2889 TD -0.08 Tw -(that causes the error )Tj -/TT10 1 Tf -9.5251 0 TD -0.1911 Tw -(END OF FILE)Tj -/TT6 1 Tf -6.9833 0 TD -0.08 Tw -[(. The behavior)]TJ --16.5084 -1.2889 TD -0.0467 Tw -(of that error can be further modified for a particular)Tj -0 -1.2222 TD -0.0856 Tw -(stream by using the )Tj -/TT10 1 Tf -9.3017 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0856 Tw -[( option of )]TJ -/TT10 1 Tf -4.7777 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0856 Tw -[( \(see)]TJ --21.2805 -1.2889 TD -0 Tw -(below\).)Tj -/TT10 1 Tf --3.1333 -2 TD -(EOL)Tj -/TT6 1 Tf -3.1333 0 TD -0.0622 Tw -[(The end-of-line convention for the stream. This can)]TJ -0 -1.2889 TD -0 Tw -(be )Tj -/TT10 1 Tf -1.5 0 TD -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.7178 0 TD -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -0.2178 Tw -(, or )Tj -/TT10 1 Tf -2.1265 0 TD -0 Tw -(CRLF)Tj -/TT6 1 Tf -2.4004 0 TD -0.2178 Tw -(, indicating with what byte or)Tj --9.145 -1.2889 TD -0.2833 Tw -(sequence of bytes the "End Of Line" character is)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -66 0 obj -<< -/Length 4207 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-18)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 300 569.54 Tm -0.0633 Tw -[(represented on the stream. On input, that sequence)]TJ -0 -1.2222 TD -0.0544 Tw -(of bytes on the stream is read as )Tj -/TT10 1 Tf -14.7984 0 TD -0.1311 Tw -(\(CHARCODE EOL\))Tj -/TT6 1 Tf --14.7984 -1.2889 TD -0 Tw -(by )Tj -/TT10 1 Tf -1.6327 0 TD -(READCCODE)Tj -/TT6 1 Tf -5.4009 0 TD -0.2733 Tw -[( or the string reader. On output,)]TJ -/TT10 1 Tf --7.0336 -1.2889 TD -0 Tw -(\(TERPRI\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0211 Tw -[( and )]TJ -/TT10 1 Tf -2.2351 0 TD -0.0489 Tw -(\(PRINTCCODE \(CHARCODE EOL\)\))Tj -/TT6 1 Tf --7.0359 -1.2889 TD -0.2544 Tw -(cause that sequence of bytes to be placed on the)Tj -0 -1.2222 TD -0 Tw -(stream.)Tj -0 -2 TD -0.1378 Tw -(The end of line convention is usually not apparent)Tj -0 -1.2222 TD -0.2889 Tw -[(to you. The file system is usually aware of the)]TJ -T* -0.2389 Tw -(convention used by a particular remote operating)Tj -T* -0.1722 Tw -[(system, and sets this attribute accordingly. If you)]TJ -T* -0.3667 Tw -(believe a file actually is stored with a different)Tj -T* -0.0733 Tw -(convention than the default, it is possible to modify)Tj -T* -0.1133 Tw -(the default behavior by including the )Tj -/TT10 1 Tf -17.369 0 TD -0 Tw -(EOL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1133 Tw -[( attribute)]TJ --19.1693 -1.2889 TD -0 Tw -(in the )Tj -/TT14 1 Tf -2.7603 0 TD -(PARAMETERS)Tj -/TT6 1 Tf -6.001 0 TD -( argument to )Tj -/TT10 1 Tf -5.9463 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --26.2418 -2.0667 TD -(BUFFERS)Tj -/TT6 1 Tf -5.5333 0 TD -0.2833 Tw -(Value is the number of 512-byte buffers that the)Tj -0 -1.2889 TD -0.07 Tw -[(stream maintains at one time. This attribute is only)]TJ -0 -1.2222 TD -0.2644 Tw -(used by certain random-access devices \(currently,)Tj -T* -0.1711 Tw -(the local disk, floppy, and Leaf servers\); all others)Tj -T* -0 Tw -(ignore it.)Tj -0 -2 TD -0.4978 Tw -(Streams open to files generally maintain some)Tj -0 -1.2222 TD -0.0856 Tw -(portion of the file buffered in memory, so that each)Tj -T* -0.1944 Tw -(call to an I/O function does not require accessing)Tj -T* -0.0233 Tw -[(the actual file on disk or a file server. For files being)]TJ -T* -0.0967 Tw -(read or written sequentially, not much buffer space)Tj -T* -0.0222 Tw -(is needed, since once a byte is read or written, it will)Tj -T* -0.0756 Tw -[(never need to be seen again. In the case of random)]TJ -T* -0.0667 Tw -(access streams, buffering is more complicated, since)Tj -T* -0.3867 Tw -(a program may jump around in the file, using)Tj -/TT10 1 Tf -T* -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.1867 Tw -[( \(Chapter 25\). In this case, the more)]TJ --6.001 -1.2889 TD -0.0322 Tw -(buffer space the stream has, the more likely it is that)Tj -0 -1.2222 TD -0.1722 Tw -(after a )Tj -/TT10 1 Tf -3.3776 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.1722 Tw -[( to a place in the file that has)]TJ --9.3786 -1.2889 TD -0.0967 Tw -(already been accessed, the stream still has that part)Tj -0 -1.2222 TD -0.0122 Tw -(of the file buffered and need not go out to the device)Tj -T* -0.1978 Tw -[(again. This benefit must, of course, be traded off)]TJ -T* -0.27 Tw -(against the amount of memory consumed by the)Tj -T* -0 Tw -(buffers.)Tj -/TT4 1 Tf -10 0 0 10 102 116.4 Tm -(Closing and Reopening Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 113.69 m -558.01 113.69 l -S -BT -/TT6 1 Tf -9 0 0 9 126 91.74 Tm -0.0889 Tw -(The function )Tj -/TT10 1 Tf -6.0586 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0889 Tw -[( permits you to associate certain operations with open streams that govern)]TJ --11.4595 -1.2889 TD -0.1611 Tw -[(how and when the stream will be closed. You can specify that certain functions will be executed)]TJ -0 -1.2222 TD -0 Tw -(before )Tj -/TT10 1 Tf -3.1107 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( closes the stream and/or after )]TJ -/TT10 1 Tf -14.2277 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( closes the stream. You can make a particular)]TJ --24.5396 -1.2889 TD -0 Tw -(stream be invisible to )Tj -/TT10 1 Tf -9.6782 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -(, so that it will remain open across user invocations of )Tj -/TT10 1 Tf -23.9751 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -69 0 obj -<< -/Length 6161 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-19)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\(WHENCLOSE)Tj -/TT4 1 Tf -10 0 0 10 156 568.2 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 158.7783 568.2 Tm -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -2.3998 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PROP)Tj -2.3997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VAL)Tj -1.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 310.4308 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 401.99 568.2 Tm -([NoSpread Function])Tj -/TT14 1 Tf --30.6656 -2.1778 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1722 Tw -[( must designate an open stream other than )]TJ -/TT10 1 Tf -20.4769 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1722 Tc -( \()Tj -/TT10 1 Tf -0.7552 0 TD -0 Tc -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -[( defaults to the primary input)]TJ --26.0329 -1.2889 TD -0.2844 Tw -(stream, if other than )Tj -/TT10 1 Tf -10.337 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2844 Tw -(, or primary output stream if other than )Tj -/TT10 1 Tf -20.0422 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2844 Tw -[(\). The remaining)]TJ --31.5793 -1.2889 TD -0.1211 Tw -(arguments specify properties to be associated with the full name of )Tj -/TT14 1 Tf -31.2053 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1211 Tw -(. )Tj -/TT10 1 Tf -0.9922 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf --34.5979 -1.2889 TD -(returns the full name of )Tj -/TT14 1 Tf -10.6821 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -( as its value.)Tj -/TT10 1 Tf --13.0825 -2.0667 TD -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -( recognizes the following property names:)Tj -/TT10 1 Tf -3.6658 -2.0667 TD -(BEFORE)Tj -/TT14 1 Tf -4.9333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2789 Tw -[( is a function that )]TJ -/TT10 1 Tf -9.3007 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.2789 Tw -[( will apply to the)]TJ --14.7016 -1.2889 TD -0.1122 Tw -[(stream just before it is closed. This might be used,)]TJ -0 -1.2222 TD -0.0378 Tw -(for example, to copy information about the file from)Tj -T* -0.1389 Tw -(an in-core data structure to the file just before it is)Tj -T* -0 Tw -(closed.)Tj -/TT10 1 Tf --4.3333 -2 TD -(AFTER)Tj -/TT14 1 Tf -4.3333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2789 Tw -[( is a function that )]TJ -/TT10 1 Tf -9.3007 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.2789 Tw -[( will apply to the)]TJ --14.7016 -1.2889 TD -0.0456 Tw -[(stream just after it is closed. This capability permits)]TJ -0 -1.2222 TD -0.14 Tw -(in-core data structures that know about the stream)Tj -T* -0 Tw -(to be cleaned up when the stream is closed. )Tj -/TT10 1 Tf --6.1333 -2 TD -(CLOSEALL)Tj -/TT14 1 Tf -6.1333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1756 Tw -[( is either )]TJ -/TT10 1 Tf -4.5438 0 TD -0 Tw -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.1756 Tw -[( or )]TJ -/TT10 1 Tf -1.792 0 TD -0 Tw -(NO )Tj -/TT6 1 Tf -2.2225 0 TD -0.1756 Tw -(and determines whether)Tj -/TT14 1 Tf --12.1589 -1.2889 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.05 Tw -[( will be closed by )]TJ -/TT10 1 Tf -8.1431 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.05 Tc -( \()Tj -/TT10 1 Tf -0.633 0 TD -0 Tc -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -0.05 Tw -(\) or whether)Tj -/TT10 1 Tf --17.7775 -1.2889 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.3944 Tw -[( will ignore it \()]TJ -/TT10 1 Tf -8.0841 0 TD -0 Tw -(NO)Tj -/TT6 1 Tf -1.2002 0 TD -0.3944 Tw -(\). )Tj -/TT10 1 Tf -1.8719 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.3944 Tw -[( uses)]TJ -/TT10 1 Tf --20.7578 -1.2889 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.5033 Tw -(, so that any )Tj -/TT10 1 Tf -7.6056 0 TD -0 Tw -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.5033 Tw -[( functions will be)]TJ --14.2067 -1.2889 TD -0.2222 Tw -[(executed if the stream is in fact closed. Files are)]TJ -0 -1.2222 TD -0 Tw -(initialized with )Tj -/TT10 1 Tf -6.9863 0 TD -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -( set to )Tj -/TT10 1 Tf -2.8511 0 TD -(YES)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --19.5718 -2.0667 TD -(EOF)Tj -/TT14 1 Tf -3.1333 0 TD -(VAL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1 Tw -[( is a function that will be applied to the stream)]TJ --1.8003 -1.2889 TD -0.8767 Tw -(when an end-of-file error occurs, and the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.1222 Tw -[( entry for that error, if any, returns)]TJ -/TT10 1 Tf --7.2012 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1689 Tw -[(. The function can examine the context of the)]TJ --1.8003 -1.2889 TD -0.17 Tw -(error, and can decide whether to close the stream,)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.3511 Tw -[( some function, or perform some other)]TJ --4.2007 -1.2889 TD -0.6622 Tw -(computation. If the function supplied returns)Tj -0 -1.2222 TD -0.2667 Tw -(normally \(i.e., does not )Tj -/TT10 1 Tf -11.4773 0 TD -0 Tw -(RETFROM)Tj -/TT6 1 Tf -4.2007 0 TD -0.2667 Tw -[( some function\),)]TJ --15.678 -1.2889 TD -0 Tw -(the normal error machinery will be invoked.)Tj -0 -2 TD -0.0444 Tw -(The default )Tj -/TT10 1 Tf -5.4058 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0444 Tw -[( behavior, unless overridden by this)]TJ -/TT10 1 Tf --7.2061 -1.2889 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.7467 Tw -[( option, is to call the value of)]TJ -/TT10 1 Tf --5.4009 -1.2889 TD -0 Tw -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9.0015 0 TD -( \(below\).)Tj --9.0015 -2.0667 TD -0.9178 Tw -(For some applications, the )Tj -/TT10 1 Tf -15.5339 0 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf --15.5339 -1.2889 TD -0.4789 Tw -(attribute \(see above\) is a more useful way to)Tj -0 -1.2222 TD -1.6056 Tw -[(intercept the end-of-file error. The)]TJ -/TT10 1 Tf -T* -0 Tw -(ENDOFSTREAMOP)Tj -/TT6 1 Tf -7.8013 0 TD -0.1567 Tw -[( attribute comes into effect before)]TJ --7.8013 -1.2889 TD -0 Tw -(the error machinery is ever activated.)Tj -0 -2 TD -(Multiple )Tj -/TT10 1 Tf -4.5126 0 TD -(AFTER)Tj -/TT6 1 Tf -3.0005 0 TD -0.4344 Tw -[( and )]TJ -/TT10 1 Tf -3.0618 0 TD -0 Tw -(BEFORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.4344 Tw -[( functions may be)]TJ --14.1754 -1.2889 TD -0.0544 Tw -(associated with a file; they are executed in sequence)Tj -0 -1.2222 TD -0.0822 Tw -(with the most recently associated function executed)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -72 0 obj -<< -/Length 5460 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-20)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 300 569.54 Tm -0.05 Tw -[(first. The )]TJ -/TT10 1 Tf -4.5929 0 TD -0 Tw -(CLOSEALL)Tj -/TT6 1 Tf -4.8008 0 TD -0.05 Tw -[( and )]TJ -/TT10 1 Tf -2.2929 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.05 Tw -[( values, however, will)]TJ --13.4868 -1.2889 TD -0.51 Tw -(override earlier values, so only the last value)Tj -0 -1.2222 TD -0 Tw -(specified will have an effect.)Tj -/TT10 1 Tf --16.6667 -2.3333 TD -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9 0 TD -[( )-28767.8([Variable])]TJ --6.3333 -1.8444 TD -0.0767 Tw -(Value is the name of a function that is called by default when an end of file error occurs)Tj -0 -1.2222 TD -0.0589 Tw -(and no )Tj -/TT10 1 Tf -3.4386 0 TD -0 Tw -(EOF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0589 Tw -[( option has been specified for the stream by )]TJ -/TT10 1 Tf -20.0012 0 TD -0 Tw -(WHENCLOSE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0589 Tw -[(. The initial value of)]TJ -/TT10 1 Tf --30.6409 -1.2889 TD -0 Tw -(DEFAULTEOFCLOSE)Tj -/TT6 1 Tf -9.0015 0 TD -0.2011 Tw -[( is )]TJ -/TT10 1 Tf -1.6171 0 TD -0 Tw -(NILL)Tj -/TT6 1 Tf -2.4004 0 TD -0.2011 Tw -(, meaning take no special action \(go ahead and cause the)Tj --13.0189 -1.2889 TD -0.1344 Tw -[(error\). Setting it to )]TJ -/TT10 1 Tf -9.2899 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.1344 Tw -[( would cause the stream to be closed before the rest of the)]TJ --12.8905 -1.2889 TD -0 Tw -(error machinery is invoked.)Tj -/TT4 1 Tf -10 0 0 10 102 421.2 Tm -(Local Hard Disk Device)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 418.49 m -558.01 418.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 396.54 Tm -0.0844 Tw -[(Warning: This section describes the Medley functions that control the local hard disk drive available on some)]TJ -0 -1.2222 TD -0.0867 Tw -[(computers. All of these functions may not work on all computers running Medley. For more information on)]TJ -T* -0 Tw -(using the local hard disk facilities, see the users guide for your computer.)Tj -/TT6 1 Tf -0 -2.8889 TD -0.0078 Tw -(This section describes the local file system currently supported on the Xerox 1108 and 1186 computers.)Tj -0 -1.2222 TD -0.1278 Tw -[(The Xerox 1132 supports a simpler local file system. The functions below are no-ops on the Xerox)]TJ -T* -0.0167 Tw -(1132, except for )Tj -/TT10 1 Tf -7.1691 0 TD -0 Tw -(DISKPARTITION)Tj -/TT6 1 Tf -7.8013 0 TD -0.0167 Tw -[( \(which returns a disk partition number\), and )]TJ -/TT10 1 Tf -20.4146 0 TD -0 Tw -(DISKFREEPAGES)Tj -/TT6 1 Tf -7.8013 0 TD -0.0167 Tw -[(. On)]TJ --43.1863 -1.2889 TD -0.2622 Tw -(the Xerox 1132, different numbered partitions are referenced by using devices such as )Tj -/TT10 1 Tf -41.4797 0 TD -0 Tw -({DSK1})Tj -/TT6 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --45.0803 -1.2889 TD -({DSK2})Tj -/TT6 1 Tf -3.6006 0 TD -0.0178 Tw -(, etc. )Tj -/TT10 1 Tf -2.5524 0 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -[( always refers to the disk partition that Interlisp is running on. The 1132 local file)]TJ --9.1534 -1.2889 TD -0 Tw -(system does not support the use of directories.)Tj -0 -2.8889 TD -0.0678 Tw -(The hard disk used with the Xerox 1108 or 1186 may be partitioned into a number of named "logical)Tj -0 -1.2222 TD -0.0355 Tw -[(volumes." Logical volumes may be used to hold the Interlisp virtual memory file \(see Chapter 12\), or)]TJ -T* -0.1022 Tw -[(Interlisp files. For information on intializing and partitioning the hard disk, see the users guide for)]TJ -T* -0.05 Tw -[(your computer. In order to store Interlisp files on a logical volume, it is necessary to create a lisp file)]TJ -T* -0 Tw -(directory on that volume \(see )Tj -/TT10 1 Tf -13.2368 0 TD -(CREATEDSKDIRECTORY)Tj -/TT6 1 Tf -10.8018 0 TD -(, below\). )Tj --24.0386 -2.9556 TD -0.0033 Tw -(So long as there exists a logical volume with a Lisp directory on it, files on this volume can be accessed)Tj -0 -1.2222 TD -0.0333 Tw -(by using the file device called )Tj -/TT10 1 Tf -13.5311 0 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -0.0333 Tw -[(. Medley can be used to read, write, and otherwise interact with)]TJ --16.5315 -1.2889 TD -0.0344 Tw -[(files on local disk disks through standard Interlisp input/output functions. All I/O functions such as)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(LOAD)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -(, etc., work with files on the local disk.)Tj --27.7041 -2.9556 TD -0.0056 Tw -(If you do not have a logical volume with a Lisp directory on it, Interlisp emulates the )Tj -/TT10 1 Tf -37.8381 0 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -0.0056 Tw -[( device by)]TJ --40.8386 -1.2889 TD -0.0378 Tw -[(a core device, a file device whose backing store is entirely within the Lisp virtual memory. However,)]TJ -0 -1.2222 TD -0.1078 Tw -(this is not recommended because the core device only provides limited scratch space, and since the)Tj -T* -0.1656 Tw -(core device is contained in virtual memory, it \(and the files stored on it\) will be erased when the)Tj -T* -0 Tw -(virtual memory file is reloaded.)Tj -0 -2.8889 TD -0.0989 Tw -(Each logical volume with a Lisp directory on it serves as a directory of the device )Tj -/TT10 1 Tf -37.6198 0 TD -0 Tw -({DSK})Tj -/TT6 1 Tf -3.0005 0 TD -0.0989 Tw -[(. Files are)]TJ --40.6203 -1.2889 TD -0 Tw -(referred to by forms such as)Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -75 0 obj -<< -/Length 5879 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-21)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT10 1 Tf -9 0 0 9 144 570.14 Tm -({DSK}<)Tj -/TT14 1 Tf -3.6006 0 TD -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(>)Tj -/TT14 1 Tf -0.6001 0 TD -(FILENAME)Tj -/TT6 1 Tf --17.535 -2.9556 TD -1.4367 Tw -(Thus, the file )Tj -/TT10 1 Tf -10.3129 0 TD -0 Tw -(INIT.LISP)Tj -/TT6 1 Tf -5.4009 0 TD -1.4367 Tw -[( on the volume )]TJ -/TT10 1 Tf -12.6285 0 TD -0 Tw -(LISPFILES)Tj -/TT6 1 Tf -5.4009 0 TD -1.4367 Tw -[( would be called)]TJ -/TT10 1 Tf --33.7432 -1.2889 TD -0 Tw -({DSK}INIT.LISP)Tj -/TT6 1 Tf -15.0024 0 TD -(. )Tj --15.0024 -2.9556 TD -0.1078 Tw -(Subdirectories within a logical volume are supported, using the > character in file names to delimit)Tj -0 -1.2222 TD -0.5833 Tw -[(subdirectory names. For example, the file name )]TJ -/TT10 1 Tf -26.1286 0 TD -0 Tw -({DSK}DOC>DESIGN.TEDIT)Tj -/TT6 1 Tf --26.1286 -1.2889 TD -(designates the file names )Tj -/TT10 1 Tf -11.3208 0 TD -(DESIGN.TEDIT)Tj -/TT6 1 Tf -7.2012 0 TD -( on the subdirectory )Tj -/TT10 1 Tf -9.1382 0 TD -(DOC)Tj -/TT6 1 Tf -1.8003 0 TD -( on the logical volume )Tj -/TT10 1 Tf -10.0508 0 TD -(LISPFILES)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --44.9121 -2.9556 TD -0.03 Tw -(If a logical volume name is not specified, it defaults in an unusual but simple way: the logical volume)Tj -0 -1.2222 TD -0.1278 Tw -(defaults to the next logical volume that has a lisp file directory on it including or after the volume)Tj -T* -0.24 Tw -[(containing the currently running virtual memory. For example, if the local disk has the logical)]TJ -T* -0 Tw -(volumes )Tj -/TT10 1 Tf -4.1305 0 TD -(LISP)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.59 0 TD -(TEMP)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -(, and )Tj -/TT10 1 Tf -2.6229 0 TD -0 Tw -(LISPFILES)Tj -/TT6 1 Tf -5.4009 0 TD -0.09 Tw -(, the )Tj -/TT10 1 Tf -2.3172 0 TD -0 Tw -(LISP)Tj -/TT6 1 Tf -2.4004 0 TD -0.09 Tw -[( volume contains the running virtual memory, and)]TJ --22.2627 -1.2889 TD -0.27 Tw -(only the )Tj -/TT10 1 Tf -4.4023 0 TD -0 Tw -(LISP)Tj -/TT6 1 Tf -2.4004 0 TD -0.27 Tw -[( volume has a Lisp file directory on it, then )]TJ -/TT10 1 Tf -21.9007 0 TD -0 Tw -({DSK}INIT.LISP)Tj -/TT6 1 Tf -8.4014 0 TD -0.27 Tw -[( refers to the file)]TJ -/TT10 1 Tf --37.1048 -1.2889 TD -0 Tw -({DSK}INIT.LISP)Tj -/TT6 1 Tf -15.0024 0 TD -0.0633 Tw -[(. All the functions below default logical volume names in a similar)]TJ --15.0024 -1.2889 TD -0.1967 Tw -(way, except for those such as )Tj -/TT10 1 Tf -14.2728 0 TD -0 Tw -(CREATEDSKDIRECTORY)Tj -/TT6 1 Tf -10.8018 0 TD -0.1967 Tw -[(. To determine the current default lisp file)]TJ --25.0745 -1.2889 TD -0 Tw -(directory, evaluate )Tj -/TT10 1 Tf -8.5361 0 TD -(\(DIRECTORYNAME {DSK}\))Tj -/TT6 1 Tf -13.2022 0 TD -(.)Tj -/TT10 1 Tf --19.0716 -2.5489 TD -(\(CREATEDSKDIRECTORY)Tj -/TT4 1 Tf -10 0 0 10 204.6 353.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.3783 353.8 Tm -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 266.788 353.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 353.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0478 Tw -(Creates a Lisp file directory on the logical volume )Tj -/TT14 1 Tf -22.6566 0 TD -0 Tw -(VOLUMENAME)Tj -/TT6 1 Tf -6.001 0 TD -0.0478 Tw -(, and returns the name of)Tj --28.6575 -1.2889 TD -0.0778 Tw -[(the directory created. It is only necessary to create a Lisp file directory the first time the)]TJ -0 -1.2222 TD -0.0622 Tw -[(logical volume is used. After that, the system automatically recognizes and opens access)]TJ -T* -0 Tw -(to the logical volumes that have Lisp file directories on them.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(PURGEDSKDIRECTORY)Tj -/TT4 1 Tf -10 0 0 10 199.2 281.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 201.9783 281.26 Tm -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 261.388 281.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 281.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Erases all Lisp files on the volume )Tj -/TT14 1 Tf -15.291 0 TD -(VOLUMENAME)Tj -/TT6 1 Tf -6.001 0 TD -(, and deletes the Lisp file directory.)Tj -/TT10 1 Tf --23.9587 -2.5489 TD -(\(LISPDIRECTORYP)Tj -/TT4 1 Tf -10 0 0 10 183 241.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.7783 241.72 Tm -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 245.188 241.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 241.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7271 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if the logical volume )Tj -/TT8 1 Tf -9.5469 0 TD -(VOLUMENAME)Tj -/TT6 1 Tf -7.4434 0 TD -( has a lisp file directory on it.)Tj -/TT10 1 Tf --23.9841 -2.5489 TD --0.0001 Tc -(\(VOLUMES\) )Tj -/TT12 1 Tf -10 0 0 10 156.0017 202.18 Tm -0 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 202.18 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1056 Tw -(Returns a list of the names of all of the logical volumes on the local hard disk \(whether)Tj -0 -1.2222 TD -0 Tw -(they have lisp file directories or not\).)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(VOLUMESIZE)Tj -/TT6 1 Tf -6.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 223.0596 152.24 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 152.24 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the total size of the logical volume )Tj -/TT14 1 Tf -19.0991 0 TD -(VOLUMENAME)Tj -/TT6 1 Tf -6.001 0 TD -( in disk pages.)Tj -/TT10 1 Tf --27.7668 -2.5489 TD -(\(DISKFREEPAGES)Tj -/TT4 1 Tf -10 0 0 10 177.6 112.7 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.3783 112.7 Tm -(VOLUMENAME)Tj -/TT10 1 Tf -6.001 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 239.788 112.7 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 112.7 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the total number of free disk pages left on the logical volume )Tj -/TT14 1 Tf -30.8355 0 TD -(VOLUMENAME)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --39.5031 -2.4 TD --0.0001 Tc -0.0001 Tw -(\(DISKPARTITION\) )Tj -/TT6 1 Tf -38.07 0 TD -0 Tc -0 Tw -([Function])Tj --35.4033 -1.8444 TD -0.0189 Tw -(Returns the name of the logical volume containing the virtual memory file that Interlisp is)Tj -0 -1.2222 TD -0 Tw -(currently running in \(see Chapter 12\).)Tj -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -79 0 obj -<< -/Length 5917 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-22)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\(DSKDISPLAY)Tj -/TT6 1 Tf -6.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEWSTATE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 260.2579 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1556 Tw -(Controls a display window that displays information about the logical volumes on the)Tj -0 -1.2222 TD -0.1878 Tw -(local hard disk \(logical volume names, sizes, free pages, etc.\). )Tj -/TT10 1 Tf -29.5392 0 TD -0 Tw -(DSKDISPLAY)Tj -/TT6 1 Tf -6.001 0 TD -0.1878 Tw -[( opens or)]TJ --35.5402 -1.2889 TD -0.1867 Tw -(closes this display window depending on the value of )Tj -/TT14 1 Tf -25.7562 0 TD -0 Tw -(NEWSTATE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1867 Tw -[( \(one of )]TJ -/TT10 1 Tf -4.1288 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6867 0 TD -(OFF)Tj -/TT6 1 Tf -1.8003 0 TD -0.1867 Tw -(, or)Tj -/TT10 1 Tf --38.373 -1.2889 TD -0 Tw -(CLOSED)Tj -/TT6 1 Tf -3.6006 0 TD -(\), and returns the previous state of the display window.)Tj --3.6006 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.2033 0 TD -(NEWSTATE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2833 Tw -[( is )]TJ -/TT10 1 Tf -1.7815 0 TD -0 Tw -(ON)Tj -/TT6 1 Tf -1.2002 0 TD -0.2833 Tw -(, the display window is opened, and it is automatically updated)Tj --8.9857 -1.2889 TD -0.19 Tw -[(whenever the file system state changes \(this can slow file operations significantly\). If)]TJ -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(NEWSTATE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0722 Tw -[( is )]TJ -/TT10 1 Tf -1.3593 0 TD -0 Tw -(OFF)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[(, the display window is opened, but it is not automatically updated. If)]TJ -/TT14 1 Tf --7.9604 -1.2889 TD -0 Tw -(NEWSTATE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0711 Tw -[( is )]TJ -/TT10 1 Tf -1.3571 0 TD -0 Tw -(CLOSED)Tj -/TT6 1 Tf -3.6006 0 TD -0.0711 Tw -[(, the display window is closed. The display mode is initially set to)]TJ -/TT10 1 Tf --9.7584 -1.2889 TD -0 Tw -(CLOSED)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --3.6006 -2.0667 TD -0.0889 Tw -(Once the display window is open, you can update it or change its state with the mouse.)Tj -0 -1.2222 TD -0.0833 Tw -(Left-buttoning the display window updates it, and middle-buttoning the window brings)Tj -T* -0 Tw -(up a menu that allows you to change the display state.)Tj -2.6667 -2 TD -(Note:)Tj -/TT10 1 Tf -3.3333 0 TD -(DSKDISPLAY)Tj -/TT6 1 Tf -6.001 0 TD -0.0844 Tw -[( uses the value of the variable )]TJ -/TT10 1 Tf -13.9363 0 TD -0 Tw -(DSKDISPLAY.POSITION)Tj -/TT6 1 Tf --19.9373 -1.2889 TD -0.1622 Tw -(for the position of the lower-left corner of the disk display window)Tj -0 -1.2222 TD -0.3211 Tw -[(when it is opened. This variable is changed if the disk display)]TJ -T* -0 Tw -(window is moved.)Tj -/TT10 1 Tf --8.6667 -2.4822 TD -(\(SCAVENGEDSKDIRECTORY)Tj -/TT6 1 Tf -12.6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(VOLUMENAME)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SILENT)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 359.7149 338.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 338.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2067 Tw -(Rebuilds the lisp file directory for the logical volume )Tj -/TT14 1 Tf -25.4079 0 TD -0 Tw -(VOLUMENAME)Tj -/TT6 1 Tf -6.001 0 TD -0.2067 Tw -[(. This may repair)]TJ --31.4088 -1.2889 TD -0.0256 Tw -(damage in the unlikely event of file system failure, signified by symptoms such as infinite)Tj -0 -1.2222 TD -0.1111 Tw -[(looping or other strange behavior while the system is doing a directory search. Calling)]TJ -/TT10 1 Tf -T* -0 Tw -(SCAVENGEDSKDIRECTORY)Tj -/TT6 1 Tf -12.002 0 TD -( will not harm an intact volume.)Tj --12.002 -2.0667 TD -(Normally, )Tj -/TT10 1 Tf -4.8019 0 TD -(SCAVENGEDSKDIRECTORY)Tj -/TT6 1 Tf -12.002 0 TD -0.0089 Tw -[( prints out messages as it scavenges the directory. If)]TJ -/TT14 1 Tf --16.8038 -1.2889 TD -0 Tw -(SILENT)Tj -/TT6 1 Tf -3.6006 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, these messages are not printed.)Tj --5.992 -2.0667 TD -0.0911 Tw -[(Note:)-901.2(Some low-level disk failures may cause ")]TJ -/TT10 1 Tf -21.879 0 TD -0.2189 Tw -(HARD DISK ERROR)Tj -/TT6 1 Tf -9.4392 0 TD -0.0911 Tw -(" errors)Tj --27.9849 -1.2889 TD -0.2367 Tw -[(to occur. To fix such a failure, it may be necessary to log out of)]TJ -0 -1.2222 TD -0.2022 Tw -(Interlisp, scavenge the logical volume in question using Pilot tools,)Tj -T* -(and then call )Tj -/TT10 1 Tf -6.5447 0 TD -0 Tw -(SCAVENGEDSKDIRECTORY)Tj -/TT6 1 Tf -12.002 0 TD -0.2022 Tw -[( from within Interlisp. See)]TJ --18.5466 -1.2889 TD -0 Tw -(the users guide for your computer for more information. )Tj -/TT4 1 Tf -10 0 0 10 102 151.92 Tm -(Floppy Disk Device)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 149.21 m -558.01 149.21 l -S -BT -/TT8 1 Tf -9 0 0 9 126 127.26 Tm -0.1789 Tw -[(Warning: This section describes the Medley functions that control the floppy disk drive available on some)]TJ -0 -1.2222 TD -0.0867 Tw -[(computers. All of these functions may not work on all computers running Medley. For more information on)]TJ -T* -0 Tw -(using the floppy disk facilities, see the users guide for your computer.)Tj -/TT6 1 Tf -0 -2.8889 TD -0.0656 Tw -(The floppy disk drive is accessed through the device )Tj -/TT10 1 Tf -24.0299 0 TD -0 Tw -({FLOPPY})Tj -/TT6 1 Tf -4.8008 0 TD -0.0656 Tw -[(. Medley can be used to read, write,)]TJ --28.8307 -1.2889 TD -0.0889 Tw -(and otherwise interact with files on floppy disks through standard Interlisp input/output functions.)Tj -0 -1.2222 TD -0.1133 Tw -(All I/O functions such as )Tj -/TT10 1 Tf -12.013 0 TD -0 Tw -(LOAD)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6133 0 TD -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.6133 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6133 0 TD -(PRINT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6133 0 TD -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.6133 0 TD -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1133 Tw -(, etc., work)Tj --40.2837 -1.2889 TD -0 Tw -(with files on floppies.)Tj -ET -endstream -endobj -80 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -82 0 obj -<< -/Length 4142 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-23)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0578 Tw -[(Note that floppy disks are a removable storage medium. Therefore, it is only meaningful to perform)]TJ -0 -1.2222 TD -0.0355 Tw -[(I/O operations to the floppy disk drive, rather than to a given floppy disk. In this section, the phrase)]TJ -T* -0 Tw -("the floppy" is used to mean "the floppy that is currently in the floppy disk drive.")Tj -0 -2.8889 TD -0.2144 Tw -(For example, the following sequence could be used to open a file )Tj -/TT10 1 Tf -31.3941 0 TD -0 Tw -(XXX.TXT)Tj -/TT6 1 Tf -4.2007 0 TD -0.2144 Tw -[( on the floppy, print)]TJ --35.5948 -1.2889 TD -0 Tw -("Hello" on it, and close it:)Tj -/TT10 1 Tf -7.3333 -2.8222 TD -(\(SETQ XXX \(OPENSTREAM {FLOPPY}XXX.TXT OUTPUT NEW\))Tj -2 -1.2222 TD -(\(PRINT "Hello" XXX\))Tj -T* -(\(CLOSEF XXX\))Tj --6.6667 -2.5489 TD -(\(FLOPPY.MODE)Tj -/TT6 1 Tf -7.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MODE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 196.0544 439.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 439.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.19 Tw -(Medley can currently read and write files on floppies stored in a number of different)Tj -0 -1.2222 TD -0.2067 Tw -[(formats. At any point, the floppy is considered to be in one of four "modes," which)]TJ -T* -0.1456 Tw -(determines how it reads and writes files on the floppy. )Tj -/TT10 1 Tf -26.2408 0 TD -0 Tw -(FLOPPY.MODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1456 Tw -[( sets the floppy)]TJ --32.8418 -1.2889 TD -0.0667 Tw -(mode to the value of )Tj -/TT14 1 Tf -9.6781 0 TD -0 Tw -(MODE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0667 Tw -(, one of )Tj -/TT10 1 Tf -3.6858 0 TD -0 Tw -(PILOT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5667 0 TD -(HUGEPILOT)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5667 0 TD -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0667 Tw -(, or )Tj -/TT10 1 Tf -1.8242 0 TD -0 Tw -(CPM)Tj -/TT6 1 Tf -1.8003 0 TD -0.0667 Tw -(, and returns the)Tj --32.5241 -1.2889 TD -0 Tw -(previous floppy mode. The floppy modes are interpreted as follows:)Tj -/TT10 1 Tf -9.6667 -2.1489 TD -(PILOT)Tj -/TT6 1 Tf -4.3333 0 TD -0.1911 Tw -(This is the normal floppy mode, using floppies in)Tj -0 -1.2889 TD -0.0778 Tw -[(the Xerox Pilot floppy disk format. This file format)]TJ -0 -1.2222 TD -0.3033 Tw -(allows all of the normal Medley I/O operations.)Tj -T* -0.1144 Tw -(This format also supports file names with arbitrary)Tj -T* -0.1222 Tw -[(levels of subdirectories. For example, it is possible)]TJ -T* -3.4722 Tw -(to create a file named)Tj -/TT10 1 Tf -T* -0 Tw -({FLOPPY}Project>FOO.TXT)Tj -/TT6 1 Tf -17.4028 0 TD -(. )Tj -/TT10 1 Tf --24.1362 -2.0667 TD -(HUGEPILOT)Tj -/TT6 1 Tf -6.7333 0 TD -0.2644 Tw -(This floppy mode is used to access files that are)Tj -0 -1.2889 TD -0.4289 Tw -(larger than a single floppy, stored on multiple)Tj -0 -1.2222 TD -0.3 Tw -[(floppies. There are some restrictions with using)]TJ -T* -0.6967 Tw -[("huge" files. Some I/O operations are not)]TJ -T* -0.3822 Tw -[(meaningful for "huge" files. When a stream is)]TJ -T* -0.2711 Tw -(created for output in this mode, the )Tj -/TT10 1 Tf -17.8128 0 TD -0 Tw -(LENGTH)Tj -/TT6 1 Tf -3.6006 0 TD -0.2711 Tw -[( file)]TJ --21.4134 -1.2889 TD -0.0989 Tw -(attribute must be specified when the file is opened,)Tj -0 -1.2222 TD -0.3511 Tw -(so that it is known how many floppies will be)Tj -T* -0.1056 Tw -[(needed. When an output file is created, the floppy)]TJ -T* -0.9789 Tw -(\(or floppies\) are automatically erased and)Tj -T* -0 Tw -(reformatted \(after confirmation from you\).)Tj -/TT10 1 Tf -0 -2 TD -(HUGEPILOT)Tj -/TT6 1 Tf -5.4009 0 TD -0.06 Tw -[( mode is primarily useful for saving big)]TJ --5.4009 -1.2889 TD -0.5122 Tw -[(files to and from floppies. For example, the)]TJ -0 -1.2222 TD -0.8389 Tw -(following could be used to copy the file)Tj -/TT10 1 Tf -T* -0 Tw -({ERIS}Bigfile.txt )Tj -/TT6 1 Tf -14.6335 0 TD -0.0967 Tw -(onto the huge Pilot)Tj --14.6335 -1.2889 TD -0 Tw -(file )Tj -/TT10 1 Tf -1.644 0 TD -({FLOPPY}BigFile.save)Tj -/TT6 1 Tf -12.002 0 TD -(:)Tj -/TT10 1 Tf --11.646 -2 TD -(\(FLOPPY.MODE HUGEPILOT\))Tj --2 -2 TD -2.9333 Tw -(\(COPYFILE {ERIS}Bigfile.txt)Tj -0 -1.2222 TD -0 Tw -({FLOPPY}BigFile.save\))Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -85 0 obj -<< -/Length 3985 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-24)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 300 569.54 Tm -(and the following would restore the file:)Tj -/TT10 1 Tf -0 -1.9333 TD -(\(FLOPPY.MODE HUGEPILOT\))Tj -0 -2 TD -4.7333 Tw -(\(COPYFILE {FLOPPY}BigFile.save)Tj -0 -1.2222 TD -0 Tw -({ERIS}Bigfile.txt\))Tj -/TT6 1 Tf -0 -2.0667 TD -0.6811 Tw -(During each copying operation, you will be)Tj -0 -1.2222 TD -1.0733 Tw -(prompted to insert "the next floppy" if)Tj -/TT10 1 Tf -T* -0 Tw -({ERIS}Bigfile.txt )Tj -/TT6 1 Tf -16.2612 0 TD -0.7744 Tw -(takes multiple)Tj --16.2612 -1.2889 TD -0 Tw -(floppies.)Tj -/TT10 1 Tf --4.9333 -2 TD -(SYSOUT)Tj -/TT6 1 Tf -4.9333 0 TD -0.0589 Tw -(Similar to )Tj -/TT10 1 Tf -4.6656 0 TD -0 Tw -(HUGEPILOT)Tj -/TT6 1 Tf -5.4009 0 TD -0.0589 Tw -[( mode, )]TJ -/TT10 1 Tf -3.3863 0 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -[( mode is used)]TJ --17.0534 -1.2889 TD -0.3344 Tw -(for storing sysout files \(Chapter 12\) on multiple)Tj -0 -1.2222 TD -0.3689 Tw -[(floppy disks. You are prompted to insert new)]TJ -T* -0 Tw -(floppies as they are needed.)Tj -0 -2 TD -0.3044 Tw -(This mode is set automatically when )Tj -/TT10 1 Tf -18.2329 0 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.3044 Tw -[( or)]TJ -/TT10 1 Tf --21.8335 -1.2889 TD -0 Tw -(MAKESYS)Tj -/TT6 1 Tf -4.2007 0 TD -0.2122 Tw -[( is done to the floppy device: )]TJ -/TT10 1 Tf -14.9366 0 TD -0 Tw -(\(SYSOUT)Tj --19.1372 -1.2889 TD -({FLOPPY}\))Tj -/TT6 1 Tf -6.001 0 TD -0.1289 Tw -[( or )]TJ -/TT10 1 Tf -1.6987 0 TD -0.31 Tw -(\(MAKESYS {FLOPPY}\))Tj -/TT6 1 Tf -11.7119 0 TD -0.1289 Tw -[(. Notice)]TJ --19.4115 -1.2889 TD -0.1767 Tw -(that the file name does not need to be specifed in)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2856 Tw -[( mode; unlike )]TJ -/TT10 1 Tf -7.1775 0 TD -0 Tw -(HUGEPILOT)Tj -/TT6 1 Tf -5.4009 0 TD -0.2856 Tw -[( mode, the file)]TJ --16.1789 -1.2889 TD -0 Tw -(name )Tj -/TT10 1 Tf -2.6938 0 TD -(Lisp.sysout)Tj -/TT6 1 Tf -6.6011 0 TD -( is always used.)Tj --9.2949 -2.0667 TD -0.1456 Tw -[(Note: The procedure for loading sysout files from)]TJ -0 -1.2222 TD -0.1467 Tw -(floppies depends on the particular computer being)Tj -T* -0.1044 Tw -[(used. For information on loading sysout files from)]TJ -T* -0 Tw -(floppies, see the users guide for your computer.)Tj -0 -2 TD -0.3656 Tw -(Explicitly setting the mode to )Tj -/TT10 1 Tf -15.0583 0 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.3656 Tw -[( is useful)]TJ --18.6588 -1.2889 TD -0.0722 Tw -[(when copying a sysout file to or from floppies. For)]TJ -0 -1.2222 TD -0.3244 Tw -(example, the following can be used to copy the)Tj -T* -0.8367 Tw -(sysout file )Tj -/TT10 1 Tf -6.4463 0 TD -0 Tw -({ERIS}Lisp.sysout)Tj -/TT6 1 Tf -13.8023 0 TD -0.8367 Tw -[( onto)]TJ --20.2485 -1.2889 TD -0.0456 Tw -(floppies \(it is important to set the floppy mode back)Tj -0 -1.2222 TD -0 Tw -(when done\):)Tj -/TT10 1 Tf -0 -1.9333 TD -(\(FLOPPY.MODE SYSOUT\))Tj -0 -1.2222 TD -2.9333 Tw -(\(COPYFILE {ERIS}Lisp.sysout)Tj -T* -0 Tw -({FLOPPY}\))Tj -T* -(\(FLOPPY.MODE PILOT\))Tj --3.1333 -2.0667 TD -(CPM)Tj -/TT6 1 Tf -3.1333 0 TD -0.5167 Tw -(Medley supports the single-density single-sided)Tj -0 -1.2889 TD -0.3411 Tw -(\(SDSS\) CPM floppy format \(a standard used by)Tj -0 -1.2222 TD -0.4689 Tw -[(many computers\). CPM-formatted floppies are)]TJ -T* -0.1889 Tw -(totally different than Pilot floppies, so you should)Tj -T* -0 Tw -(call )Tj -/TT10 1 Tf -2.0637 0 TD -(FLOPPY.MODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.2878 Tw -[( to switch to )]TJ -/TT10 1 Tf -6.7961 0 TD -0 Tw -(CPM)Tj -/TT6 1 Tf -1.8003 0 TD -0.2878 Tw -[( mode when)]TJ --17.2612 -1.2889 TD -0.1722 Tw -[(planning to use CPM floppies. After switching to)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CPM)Tj -/TT6 1 Tf -1.8003 0 TD -0.1489 Tw -[( mode, )]TJ -/TT10 1 Tf -3.5663 0 TD -0 Tw -(FLOPPY.FORMAT)Tj -/TT6 1 Tf -7.8013 0 TD -0.1489 Tw -[( can be used to create)]TJ --13.1679 -1.2889 TD -1.5056 Tw -(CPM-formatted floppies, and the usual)Tj -0 -1.2222 TD -0.3656 Tw -(input/output operations work with CPM floppy)Tj -T* -0 Tw -(files.)Tj -ET -endstream -endobj -86 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -88 0 obj -<< -/Length 5630 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-25)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 252 569.54 Tm -0.1689 Tw -[(Note: There are a few limitations on CPM floppy)]TJ -0 -1.2222 TD -0.0444 Tw -[(format files: \(1\) CPM file names are limited to eight)]TJ -T* -0.3733 Tw -(or fewer characters, with extensions of three or)Tj -T* -0.2933 Tw -[(fewer characters; \(2\) CPM floppies do not have)]TJ -T* -0.2244 Tw -(directories or version numbers; and \(3\) CPM files)Tj -T* -0.0633 Tw -(are padded out with blanks to make the file lengths)Tj -T* -0 Tw -(multiples of 128.)Tj -/TT10 1 Tf --16.6667 -2.4822 TD -(\(FLOPPY.FORMAT)Tj -/TT4 1 Tf -10 0 0 10 177.6 481.2 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 180.3783 481.2 Tm -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(AUTOCONFIRMFLG)Tj -/TT8 1 Tf -8.4014 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(SLOWFLG)Tj -/TT10 1 Tf -4.2007 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 325.3011 481.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 481.2 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(FLOPPY.FORMAT)Tj -/TT6 1 Tf -7.8013 0 TD -0.0433 Tw -[( erases and initializes the track information on a floppy disk. This must)]TJ --7.8013 -1.2889 TD -[(be done when new floppy disks are to be used for the first time. This can also be used to)]TJ -0 -1.2222 TD -0 Tw -(erase the information on used floppy disks.)Tj -/TT14 1 Tf -0 -2 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0389 Tw -[( should be a string that is used as the name of the floppy \(106 characters max\). This)]TJ --2.4004 -1.2889 TD -0 Tw -(name can be read and set using )Tj -/TT10 1 Tf -14.1147 0 TD -(FLOPPY.NAME)Tj -/TT6 1 Tf -6.6011 0 TD -( \(below\).)Tj --20.7158 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.091 0 TD -(AUTOCONFIRMFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.1711 Tw -[( is )]TJ -/TT10 1 Tf -1.5571 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1711 Tw -(, you will be prompted to confirm erasing the floppy, if it)Tj --12.8498 -1.2889 TD -0.0422 Tw -[(appears to contain valid information. If )]TJ -/TT14 1 Tf -18.1413 0 TD -0 Tw -(AUTOCONFIRMFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.0422 Tw -[( is )]TJ -/TT10 1 Tf -1.2993 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0422 Tw -(, you are not prompted to)Tj --28.442 -1.2889 TD -0 Tw -(confirm.)Tj -0 -2 TD -(If )Tj -/TT8 1 Tf -0.9488 0 TD -(SLOWFLG)Tj -/TT6 1 Tf -4.6685 0 TD -0.0289 Tw -[( is )]TJ -/TT10 1 Tf -1.2726 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -(, only the Pilot records needed to give your floppy an empty directory)Tj --8.6902 -1.2889 TD -0.0722 Tw -[(are written. If )]TJ -/TT14 1 Tf -6.8162 0 TD -0 Tw -(SLOWFLG)Tj -/TT6 1 Tf -4.2007 0 TD -0.0722 Tw -[( is )]TJ -/TT10 1 Tf -1.3593 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5722 0 TD -(FLOPPY.FORMAT)Tj -/TT6 1 Tf -7.8013 0 TD -0.0722 Tw -[( will completely erase the floppy, writing)]TJ --21.3498 -1.2889 TD -0.2178 Tw -(track information and critical Pilot records on it. )Tj -/TT14 1 Tf -23.7276 0 TD -0 Tw -(SLOWFLG)Tj -/TT6 1 Tf -4.2007 0 TD -0.2178 Tw -[( should be set to )]TJ -/TT10 1 Tf -8.5288 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.2178 Tw -[( when)]TJ --37.0572 -1.2889 TD -0 Tw -(formatting a brand-new floppy.)Tj -2.6667 -2 TD -0.0344 Tw -[(Note:)-901.2(Formatting a floppy is a very compute-intensive operation for the I/O)]TJ -3.3333 -1.2222 TD -0.2033 Tw -[(hardware. Therefore, the cursor may stop tracking the mouse and)]TJ -T* -0.0511 Tw -[(keystrokes may be lost while formatting a floppy. This behavior goes)]TJ -T* -0 Tw -(away when the formatting is finished.)Tj --6 -2 TD -0.1022 Tw -[(Warning: The floppy mode set by )]TJ -/TT10 1 Tf -16.0808 0 TD -0 Tw -(FLOPPY.MODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1022 Tw -[( \(above\) affects how )]TJ -/TT10 1 Tf -9.5188 0 TD -0 Tw -(FLOPPY.FORMAT)Tj -/TT6 1 Tf --32.2006 -1.2889 TD -0.0267 Tw -[(formats the floppy. If the floppy is going to be used in Pilot mode, it should be formatted)]TJ -0 -1.2222 TD -0 Tw -(under )Tj -/TT10 1 Tf -3.1344 0 TD -0.5156 Tw -(\(FLOPPY.MODE PILOT\))Tj -/TT6 1 Tf -12.5175 0 TD -0.2144 Tw -[(. If it is to be used as a CMP floppy, it should be)]TJ --15.6519 -1.2889 TD -0 Tw -(formatted under )Tj -/TT10 1 Tf -7.5688 0 TD -(\(FLOPPY.MODE CPM\))Tj -/TT6 1 Tf -10.8018 0 TD -(. The two types of formatting are incompatible.)Tj -/TT10 1 Tf --21.0373 -2.5489 TD -(\(FLOPPY.NAME)Tj -/TT4 1 Tf -10 0 0 10 166.8 191.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 169.5783 191.66 Tm -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 196.5827 191.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 191.66 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9788 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0589 Tw -[( is NIL, returns the name stored on the floppy disk. If )]TJ -/TT14 1 Tf -24.8202 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.0589 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3756 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0589 Tw -(, then the)Tj --35.7757 -1.2889 TD -0 Tw -(name of the floppy disk is set to )Tj -/TT14 1 Tf -14.3359 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --19.403 -2.5489 TD --0.0001 Tc -(\(FLOPPY.FREE.PAGES\))Tj -/TT6 1 Tf -11.4001 0 TD -0 Tc -( )Tj -/TT12 1 Tf -10 0 0 10 206.8509 140.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 140.52 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the number of unallocated free pages on the floppy disk in the floppy disk drive.)Tj -2.6667 -2 TD -0.2256 Tw -[(Note:)-901.2(Pilot floppy files are represented by contiguous pages on a floppy)]TJ -3.3333 -1.2222 TD -0.13 Tw -[(disk. If you are creating and deleting a lot of files on a floppy, it is)]TJ -T* -0 Tw -(advisable to keep such a floppy less than 75 percent full.)Tj -/TT10 1 Tf --8.6667 -2.3333 TD --0.0001 Tc -0.0001 Tw -(\(FLOPPY.CAN.READP\) )Tj -/TT6 1 Tf -38.07 0 TD -0 Tc -0 Tw -([Function])Tj --35.4033 -1.8444 TD -(Returns non-NIL if there is a floppy in the floppy drive.)Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -91 0 obj -<< -/Length 5212 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-26)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 198 569.54 Tm -(Note:)Tj -/TT10 1 Tf -3.3333 0 TD -(FLOPPY.CAN.READP)Tj -/TT6 1 Tf -9.6016 0 TD -0.2467 Tw -[( does not provide any debouncing \(protection)]TJ --9.6016 -1.2889 TD -0.0178 Tw -[(against not fully closing the floppy drive door\). It may be more useful)]TJ -0 -1.2222 TD -0 Tw -(to use )Tj -/TT10 1 Tf -2.8779 0 TD -(FLOPPY.WAIT.FOR.FLOPPY)Tj -/TT6 1 Tf -13.2022 0 TD -( \(below\).)Tj -/TT10 1 Tf --24.7467 -2.4 TD --0.0001 Tc -0.0001 Tw -(\(FLOPPY.CAN.WRITEP\) )Tj -/TT6 1 Tf -38.07 0 TD -0 Tc -0 Tw -([Function])Tj --35.4033 -1.8444 TD -0.0333 Tw -(Returns non-NIL if there is a floppy in the floppy drive and the floppy drive can write on)Tj -0 -1.2222 TD -0 Tw -(this floppy.)Tj -0 -2 TD -0.0211 Tw -(It is not possible to write on a floppy disk if the "write-protect notch" on the floppy disk is)Tj -0 -1.2222 TD -0 Tw -(punched out.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(FLOPPY.WAIT.FOR.FLOPPY)Tj -/TT6 1 Tf -13.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEWFLG)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 314.2561 446.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 446.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(NEWFLG)Tj -/TT6 1 Tf -3.6006 0 TD -( is NIL, waits until a floppy is in the floppy drive before returning.)Tj --4.5205 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9477 0 TD -(NEWFLG)Tj -/TT6 1 Tf -3.6006 0 TD -0.0278 Tw -[( is T, waits until the existing floppy in the floppy drive, if any, is removed, then)]TJ --4.5483 -1.2889 TD -0 Tw -(waits for a floppy to be inserted into the drive before returning.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD --0.0001 Tc -0.0001 Tw -(\(FLOPPY.SCAVENGE\) )Tj -/TT6 1 Tf -38.07 0 TD -0 Tc -0 Tw -([Function])Tj --35.4033 -1.8444 TD -0.0711 Tw -(Attempts to repair a floppy whose critical records have become confused \(causing errors)Tj -0 -1.2222 TD -0.0667 Tw -[(when file operations are attempted\). May also retrieve accidently-deleted files, provided)]TJ -T* -0 Tw -(they havent been overwritten by new files. )Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(FLOPPY.TO.FILE)Tj -/TT6 1 Tf -9 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TOFILE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 271.0562 317.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 317.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0789 Tw -(Copies the entire contents of the floppy to the "floppy image" file )Tj -/TT14 1 Tf -29.872 0 TD -0 Tw -(TOFILE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0789 Tw -(, which can be)Tj --33.4725 -1.2889 TD -0.0711 Tw -[(on a file server, local disk, etc. This can be used to create a centralized copy of a floppy,)]TJ -0 -1.2222 TD -0 Tw -(that different users can copy to their own floppy disks \(using )Tj -/TT10 1 Tf -27.2412 0 TD -(FLOPPY.FROM.FILE)Tj -/TT6 1 Tf -9.6016 0 TD -(\).)Tj --34.1761 -2.0667 TD -0.2067 Tw -[(Note:)-901.2(A floppy image file for an 8-inch floppy is about 2500 pages long,)]TJ -3.3333 -1.2222 TD -0 Tw -(regardless of the number of pages in use on the floppy.)Tj -/TT10 1 Tf --8.6667 -2.4822 TD -(\(FLOPPY.FROM.FILE)Tj -/TT6 1 Tf -10.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FROMFILE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 292.6579 226.52 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 226.52 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2922 Tw -(Copies the "floppy image" file )Tj -/TT14 1 Tf -14.9216 0 TD -0 Tw -(FROMFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2922 Tw -[( to the floppy. )]TJ -/TT14 1 Tf -8.1486 0 TD -0 Tw -(FROMFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2922 Tw -[( must be a file)]TJ --32.6717 -1.2889 TD -0 Tw -(produced by )Tj -/TT10 1 Tf -5.8989 0 TD -(FLOPPY.TO.FILE)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf --16.967 -2.5489 TD -(\(FLOPPY.ARCHIVE)Tj -/TT6 1 Tf -9 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 289.5088 175.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 175.38 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(FLOPPY.ARCHIVE)Tj -/TT6 1 Tf -8.4014 0 TD -0.0822 Tw -[( formats a floppy inserted into the floppy drive, giving the floppy the)]TJ --8.4014 -1.2889 TD -0 Tw -(name )Tj -/TT14 1 Tf -2.7172 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(#1)Tj -/TT6 1 Tf -1.2002 0 TD -0.0233 Tw -(. )Tj -/TT10 1 Tf -0.7967 0 TD -0 Tw -(FLOPPY.ARCHIVE)Tj -/TT6 1 Tf -8.4014 0 TD -0.0233 Tw -[( then copies each file in )]TJ -/TT14 1 Tf -10.6659 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0233 Tw -[( to the freshly formatted)]TJ --29.1822 -1.2889 TD -0.2444 Tw -[(floppy. If the first floppy fills up, )]TJ -/TT10 1 Tf -16.9722 0 TD -0 Tw -(FLOPPY.ARCHIVE)Tj -/TT6 1 Tf -8.4014 0 TD -0.2444 Tw -[( uses multiple floppies \(named)]TJ -/TT14 1 Tf --25.3735 -1.2889 TD -0 Tw -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(#2)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(#3)Tj -/TT6 1 Tf -1.2002 0 TD -(, etc.\), each time prompting you to insert a new floppy.)Tj --7.7012 -2.0667 TD -0.0322 Tw -(The function )Tj -/TT10 1 Tf -5.9453 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0322 Tw -[( \(see below\) is convenient for generating a list of files to archive.)]TJ --11.3462 -1.2889 TD -0 Tw -(For example,)Tj -/TT10 1 Tf -5.3333 -1.9333 TD -(\(FLOPPY.ARCHIVE)Tj -0 -1 TD -( \(DIRECTORY {ERIS}Project>*\))Tj -T* -( Project\))Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -94 0 obj -<< -/Length 4944 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-27)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.3256 Tw -(will archive all files on the directory )Tj -/TT10 1 Tf -18.4498 0 TD -0 Tw -({ERIS}Project>)Tj -/TT6 1 Tf -12.002 0 TD -0.3256 Tw -[( to floppies \(named)]TJ -/TT10 1 Tf --30.4517 -1.2889 TD -0 Tw -(Project#1)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(Project#2)Tj -/TT6 1 Tf -5.4009 0 TD -(, etc.\).)Tj -/TT10 1 Tf --13.9684 -2.5489 TD -(\(FLOPPY.UNARCHIVE)Tj -/TT6 1 Tf -10.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOST/DIRECTORY)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 277.0632 535 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 535 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8445 TD -(FLOPPY.UNARCHIVE)Tj -/TT6 1 Tf -9.6016 0 TD -0.7244 Tw -[( copies all files on the current floppy to the directory)]TJ -/TT14 1 Tf --9.6016 -1.2889 TD -0 Tw -(HOST/DIRECTORY)Tj -/TT6 1 Tf -8.4014 0 TD -0.1333 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.2794 0 TD -0.32 Tw -(\(FLOPPY.UNARCHIVE {ERIS}Project>\))Tj -/TT6 1 Tf --15.6808 -1.2889 TD -0.1233 Tw -(will copy each file on the current floppy to the directory )Tj -/TT10 1 Tf -26.3293 0 TD -0 Tw -({ERIS}Project>)Tj -/TT6 1 Tf -12.002 0 TD -0.1233 Tw -[(. If)]TJ --38.3313 -1.2889 TD -0.16 Tw -(there is more than one floppy to restore from archive, )Tj -/TT10 1 Tf -25.4828 0 TD -0 Tw -(FLOPPY.UNARCHIVE)Tj -/TT6 1 Tf -9.6016 0 TD -0.16 Tw -[( should be)]TJ --35.0844 -1.2889 TD -0 Tw -(called on each floppy disk.)Tj -/TT4 1 Tf -10 0 0 10 54 429.66 Tm -(I/O Operations to and from Strings)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 426.95 m -510.01 426.95 l -S -BT -/TT6 1 Tf -9 0 0 9 78 405 Tm -(It is possible to treat a string as if it were the contents of a file by using the following function:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(OPENSTRINGSTREAM)Tj -/TT6 1 Tf -10.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 252.3088 382.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 382.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0267 Tw -(Returns a stream that can be used to access the characters of the string )Tj -/TT14 1 Tf -31.5691 0 TD -0 Tw -(STR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0267 Tw -(. )Tj -/TT14 1 Tf -0.8033 0 TD -0 Tw -(ACCESS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0267 Tw -[( may)]TJ --37.7734 -1.2889 TD -0.0644 Tw -(be either )Tj -/TT10 1 Tf -4.2134 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5644 0 TD -(OUTPUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0644 Tw -(, or )Tj -/TT10 1 Tf -1.8198 0 TD -0 Tw -(BOTH)Tj -/TT6 1 Tf -2.4004 0 TD -(; )Tj -/TT10 1 Tf -0.5644 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0644 Tw -[( defaults to )]TJ -/TT10 1 Tf -5.3823 0 TD -0 Tw -(INPUT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0644 Tw -[(. The stream returned may be)]TJ --26.3466 -1.2889 TD -0.1122 Tw -(used exactly like a file opened with the same access, except that output operations may)Tj -0 -1.2222 TD -0.0944 Tw -[(not extend past the end of the original string. Also, string streams do not appear in the)]TJ -T* -0 Tw -(value of )Tj -/TT10 1 Tf -3.8169 0 TD -(\(OPENP\))Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --8.0176 -2.0667 TD -(For example, after performing)Tj -/TT10 1 Tf -0 -2.8222 TD -(\(SETQ STRM \(OPENSTRINGSTREAM "THIS 2 \(IS A LIST\)"\)\))Tj -/TT12 1 Tf -10 0 0 10 126 256.92 Tm -(the following succession of reads could occur:)Tj -/TT10 1 Tf -9 0 0 9 174 239.86 Tm -(\(READ STRM\) => THIS)Tj -0 -1 TD -( \(RATOM STRM\) => 2)Tj -T* -( \(READ STRM\) => \(IS A LIST\))Tj -T* -( \(EOFP STRM\) => T)Tj -/TT6 1 Tf --10.6667 -2.7333 TD -0.0933 Tw -(Compatibility Note: In Interlisp-10 it was possible to take input from a string simply by passing the)Tj -0 -1.2222 TD -0.0033 Tw -(string as the )Tj -/TT14 1 Tf -5.6453 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( argument to an input function. In order to maintain compatibility with this feature,)Tj --8.0456 -1.2889 TD -0 Tc -0.3789 Tw -[(Medley provides the same capability. This not terribly clean feature persists in the present)]TJ -0 -1.2222 TD -0.0711 Tw -[(implementation to give users time to convert old code. This means that strings are )]TJ -/TT8 1 Tf -37.8137 0 TD -0 Tw -(not)Tj -/TT6 1 Tf -1.333 0 TD -0.0711 Tw -[( equivalent to)]TJ --39.1468 -1.2222 TD -0.0989 Tw -[(symbols when specifying a file name as a stream argument. In a future release, the old Interlisp-10)]TJ -T* -0.1878 Tw -(string-reading feature will be decommissioned, and )Tj -/TT10 1 Tf -24.238 0 TD -0 Tw -(OPENSTRINGSTREAM)Tj -/TT6 1 Tf -9.6016 0 TD -0.1878 Tw -[( will be the only way to)]TJ --33.8396 -1.2889 TD -0 Tw -(perform I/O on a string.)Tj -/TT4 1 Tf -10 0 0 10 54 78.72 Tm -(Temporary Files and the CORE Device)Tj -ET -54.01 76.01 m -510.01 76.01 l -S -BT -/TT6 1 Tf -9 0 0 9 78 54.06 Tm -0.0689 Tw -(Many operating systems have a notion of "scratch file", a file typically used as temporary storage for)Tj -0 -1.2222 TD -0.0433 Tw -[(data most naturally maintained in the form of a file, rather than some other data structure. A scratch)]TJ -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -97 0 obj -<< -/Length 6189 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-28)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0011 Tw -(file can be used as a normal file in most respects, but is automatically deleted from the file system after)Tj -0 -1.2222 TD -0.0167 Tw -[(its useful life is up, e.g., when the job terminates, or you log out. In normal operation, you need never)]TJ -T* -0 Tw -(explicitly delete such files, since they are guaranteed to disappear soon.)Tj -0 -2.8889 TD -0.1522 Tw -[(A similar functionality is provided in Medley by core-resident files. Core-resident files are on the)]TJ -0 -1.2222 TD -0 Tw -(device )Tj -/TT10 1 Tf -3.2731 0 TD -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1544 Tw -[(. The directory structure for this device and all files on it are represented completely)]TJ --5.6735 -1.2889 TD -0.0611 Tw -[(within your virtual memory. These files are treated as ordinary files by all file operations; their only)]TJ -0 -1.2222 TD -0 Tw -(distinguishing feature is that all trace of them disappears when the virtual memory is abandoned.)Tj -0 -2.8889 TD -0.4222 Tw -(Core files are opened and closed by name the same as any other file, e.g., )Tj -/TT10 1 Tf -38.7347 0 TD -0 Tw -(\(OPENSTREAM)Tj --38.7347 -1.2889 TD -0.3544 Tw -({CORE}FIE.DCOM OUTPUT\))Tj -/TT6 1 Tf -17.7573 0 TD -0.1478 Tw -[(. Directory names are completely optional, so files can also)]TJ --17.7573 -1.2889 TD -0.0111 Tw -(have names of the form )Tj -/TT10 1 Tf -10.7221 0 TD -0 Tw -({CORE}NAME.EXT)Tj -/TT6 1 Tf -8.4014 0 TD -0.0111 Tw -[(. Core files can be enumerated by )]TJ -/TT10 1 Tf -15.2901 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -[( \(see below\).)]TJ --39.8144 -1.2889 TD -0.0611 Tw -(While open, they are registered in )Tj -/TT10 1 Tf -15.5932 0 TD -0 Tw -(\(OPENP\))Tj -/TT6 1 Tf -4.2007 0 TD -0.0611 Tw -[(. They do consume virtual memory space, which is only)]TJ --19.7939 -1.2889 TD -0.0356 Tw -[(reclaimed when the file is deleted. Some caution should thus be used when creating large )]TJ -/TT10 1 Tf -40.5772 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0356 Tw -[( files.)]TJ --42.9776 -1.2889 TD -0.0067 Tw -(Since the virtual memory of an Medley workstation usually persists far longer than the typical process)Tj -0 -1.2222 TD -0 Tw -(on a mainframe computer, it is still important to delete )Tj -/TT10 1 Tf -24.4429 0 TD -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -( files after they are no longer in use.)Tj --26.8433 -2.9556 TD -0.1089 Tw -(For many applications, the name of the scratch file is irrelevant, and there is no need for anyone to)Tj -0 -1.2222 TD -0.04 Tw -[(have access to the file independent of the program that created it. For such applications, )]TJ -/TT10 1 Tf -39.931 0 TD -0 Tw -(NODIRCORE)Tj -/TT6 1 Tf --39.931 -1.2889 TD -0.11 Tw -[(files are preferable. Files created on the device lisp )]TJ -/TT10 1 Tf -23.8129 0 TD -0 Tw -(NODIRCORE)Tj -/TT6 1 Tf -5.4009 0 TD -0.11 Tw -[( are core-resident files that have no)]TJ --29.2138 -1.2889 TD -0.0467 Tw -[(name and are registered in no directory. These files "disappear", and the resources they consume are)]TJ -0 -1.2222 TD -0.0089 Tw -[(reclaimed, when all pointers to the file are dropped. Hence, such files need never be explicitly deleted)]TJ -T* -0.2211 Tw -[(or, for that matter, closed. The "name" of such a file is simply the stream object returned from)]TJ -/TT10 1 Tf -T* -0.2922 Tw -(\(OPENSTREAM {NODIRCORE} OUTPUT\))Tj -/TT6 1 Tf -20.3877 0 TD -0.1222 Tw -(, and it is this stream object that must be passed to all)Tj --20.3877 -1.4378 TD -0 Tw -(input/output operations, including )Tj -/TT10 1 Tf -15.9556 0 TD -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -( and any )Tj -/TT12 1 Tf -10 0 0 10 338.7349 286.2 Tm -(calls to )Tj -/TT10 1 Tf -9 0 0 9 372.6362 286.2 Tm -(OPENSTREAM)Tj -/TT12 1 Tf -10 0 0 10 426.645 286.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 429.4233 286.2 Tm -(to reopen the file. )Tj -/TT10 1 Tf --31.047 -2.5489 TD -(\(COREDEVICE)Tj -/TT4 1 Tf -10 0 0 10 209.4 263.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.1783 263.26 Tm -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NODIRFLG)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 284.6397 263.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 263.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1 Tw -(Creates a new device for core-resident files and assigns )Tj -/TT14 1 Tf -25.4947 0 TD -0 Tw -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -0.1 Tw -[( as its device name. Thus,)]TJ --27.8951 -1.2889 TD -0.2389 Tw -(after performing )Tj -/TT10 1 Tf -8.072 0 TD -0.5733 Tw -(\(COREDEVICE FOO\))Tj -/TT6 1 Tf -10.775 0 TD -0.2389 Tw -(, one can execute )Tj -/TT10 1 Tf -8.6645 0 TD -0 Tw -(\(OPENSTREAM)Tj -/TT16 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -0.4889 0 TD -({FOO}BAR)Tj --34.6015 -1.2889 TD -(OUTPUT\))Tj -/TT6 1 Tf -4.8008 0 TD -0.0089 Tw -[( to open a file on that device. Medley is initialized with the single core-resident)]TJ --4.8008 -1.2889 TD -0.1789 Tw -(device named )Tj -/TT10 1 Tf -6.7811 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1789 Tw -(, but )Tj -/TT10 1 Tf -2.5902 0 TD -0 Tw -(COREDEVICE)Tj -/TT6 1 Tf -6.001 0 TD -0.1789 Tw -[( may be used to create any number of logically)]TJ --17.7727 -1.2889 TD -0 Tw -(distinct core devices.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(NODIRFLG)Tj -/TT6 1 Tf -4.8008 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, a core device that acts like )Tj -/TT10 1 Tf -12.2778 0 TD -({NODIRCORE})Tj -/TT6 1 Tf -6.6011 0 TD -( is created.)Tj --29.6577 -2.0667 TD -0.2155 Tw -(Compatibility note: In Interlisp-10, it was possible to create scratch files by using file)Tj -0 -1.2222 TD -0.0533 Tw -(names with suffixes )Tj -/TT10 1 Tf -9.2137 0 TD -0 Tw -(;S)Tj -/TT6 1 Tf -1.2002 0 TD -0.0533 Tw -[( or )]TJ -/TT10 1 Tf -1.5476 0 TD -0 Tw -(;T)Tj -/TT6 1 Tf -1.2002 0 TD -0.0533 Tw -[(. In Medley, these suffixes in file names are simply ignored)]TJ --13.1617 -1.2889 TD -0.4444 Tw -[(when output is directed to a particular host or device. However, the function)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(PACKFILENAME.STRING)Tj -/TT6 1 Tf -11.4019 0 TD -0.0511 Tw -[( is defined to default the device name to )]TJ -/TT10 1 Tf -18.3975 0 TD -0 Tw -(CORE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0511 Tw -[( if the file has the)]TJ -/TT10 1 Tf --32.1997 -1.2889 TD -0 Tw -(TEMPORARY)Tj -/TT6 1 Tf -5.4009 0 TD -( attribute and no explicit host is provided.)Tj -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -100 0 obj -<< -/Length 6945 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-29)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT4 1 Tf --35.4 -4.38 TD -(NULL Device)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 543.54 Tm -(The )Tj -/TT10 1 Tf -2.0749 0 TD -(NULL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1511 Tw -[( device provides a source of content-free "files". )]TJ -/TT10 1 Tf -22.373 0 TD -0.3611 Tw -[( \(OPENSTREAM {NULL} OUTPUT\))]TJ -/TT6 1 Tf --26.8483 -1.2889 TD -0.1478 Tw -(creates a stream that discards all output directed at it. )Tj -/TT10 1 Tf -25.7794 0 TD -0 Tw -(\(OPENSTREAM)Tj -/TT16 1 Tf -6.6011 0 TD -( )Tj -/TT10 1 Tf -0.3978 0 TD -({NULL})Tj -/TT16 1 Tf -4.2007 0 TD -0.1478 Tc -( )Tj -/TT10 1 Tf -0.6756 0 TD -0 Tc -(INPUT)Tj -/TT16 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -0.333 0 TD -0.1478 Tw -[( creates a)]TJ --40.988 -1.2889 TD -0 Tw -(stream that is perpetually at end-of-file \(i.e., has no input\). )Tj -/TT4 1 Tf -10 0 0 10 54 478 Tm -(Deleting, Copying, and Renaming Files)Tj -ET -54.01 475.29 m -510.01 475.29 l -S -BT -/TT10 1 Tf -9 0 0 9 102 457 Tm -(\(DELFILE)Tj -/TT6 1 Tf -4.8 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 174.4544 457 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 457 Tm -([Function])Tj --35.4033 -1.8444 TD -(Deletes )Tj -/TT14 1 Tf -3.6608 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1589 Tw -[( if possible. The file must be closed. Returns the full name of the file if)]TJ --6.0612 -1.2889 TD -0.1244 Tw -(deleted, else )Tj -/TT10 1 Tf -5.9476 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1244 Tw -[(. Recognition mode for )]TJ -/TT14 1 Tf -11.2257 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( is )]TJ -/TT10 1 Tf -1.4637 0 TD -0 Tw -(OLDEST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1244 Tw -(, i.e., if )Tj -/TT14 1 Tf -3.5174 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1244 Tw -[( does not have a)]TJ --32.3561 -1.2889 TD -0 Tw -(version number specified, then )Tj -/TT10 1 Tf -13.9487 0 TD -(DELFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( deletes the oldest version of the file.)Tj -/TT10 1 Tf --20.8161 -2.5489 TD -(\(COPYFILE)Tj -/TT6 1 Tf -5.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FROMFILE)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(TOFILE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 236.1132 394.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 394.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Copies )Tj -/TT14 1 Tf -3.4009 0 TD -(FROMFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1011 Tw -[( to a new file named )]TJ -/TT14 1 Tf -9.8225 0 TD -0 Tw -(TOFILE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1011 Tw -[(. The source and destination may be on)]TJ --21.6248 -1.2889 TD -0.3544 Tw -(any combination of hosts/devices. )Tj -/TT10 1 Tf -17.5335 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3544 Tw -[( attempts to preserve the )]TJ -/TT10 1 Tf -12.9636 0 TD -0 Tw -(TYPE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3544 Tw -[( and)]TJ -/TT10 1 Tf --37.6983 -1.2889 TD -0 Tw -(CREATIONDATE)Tj -/TT6 1 Tf -7.2012 0 TD -0.18 Tw -[( where possible. If the original files file type is unknown, )]TJ -/TT10 1 Tf -27.9994 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf --35.2005 -1.2889 TD -0.0789 Tw -(attempts to infer the type \(file type is )Tj -/TT10 1 Tf -17.2024 0 TD -0 Tw -(BINARY)Tj -/TT6 1 Tf -3.6006 0 TD -0.0789 Tw -[( if any of its 8-bit bytes have their high bit)]TJ --20.803 -1.2889 TD -0 Tw -(on\).)Tj -/TT10 1 Tf -0 -2 TD -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.3522 Tw -[( uses )]TJ -/TT10 1 Tf -3.1341 0 TD -0 Tw -(COPYCHARS)Tj -/TT6 1 Tf -5.4009 0 TD -0.3522 Tw -[( \(Chapter 25\) if the source and destination hosts have)]TJ --13.3358 -1.2889 TD -0 Tw -(different )Tj -/TT10 1 Tf -4.1124 0 TD -(EOL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0333 Tw -[( conventions. Thus, it is possible for the source and destination files to be of)]TJ --5.9127 -1.2889 TD -0 Tw -(different lengths.)Tj --2.6667 -2.4822 TD -(\()Tj -/TT10 1 Tf -0.333 0 TD -(RENAMEFILE)Tj -/TT6 1 Tf -6.0003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(OLDFILE)Tj -/TT8 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 242.1094 267.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 267.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Renames )Tj -/TT14 1 Tf -4.2958 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( to be )]TJ -/TT14 1 Tf -2.7476 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[(. Causes an error, )]TJ -/TT10 1 Tf -8.3362 0 TD -0.0756 Tw -(FILE NOT FOUND)Tj -/TT6 1 Tf -8.5525 0 TD -0.0311 Tw -[( if )]TJ -/TT14 1 Tf -1.1862 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -[( does not)]TJ --35.9201 -1.2889 TD -0.0244 Tw -[(exist. Returns the full name of the new file, if successful, else NIL if the rename cannot be)]TJ -0 -1.2222 TD -0 Tw -(performed.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.1133 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1933 Tw -[( and )]TJ -/TT14 1 Tf -2.5795 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.1933 Tw -[( are on the same host/device, and the device implements a)]TJ --12.0942 -1.2889 TD -0.0133 Tw -(renaming primitive, )Tj -/TT10 1 Tf -9.1668 0 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0133 Tw -[( can be very fast. However, if the device does not know)]TJ --15.1678 -1.2889 TD -0.2544 Tw -(how to rename files in place, or if )Tj -/TT14 1 Tf -17.0082 0 TD -0 Tw -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2544 Tw -[( and )]TJ -/TT14 1 Tf -2.7018 0 TD -0 Tw -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -0.2544 Tw -[( are on different devices,)]TJ -/TT10 1 Tf --28.1113 -1.2889 TD -0 Tw -(RENAMEFILE)Tj -/TT6 1 Tf -6.001 0 TD -( works by copying )Tj -/TT14 1 Tf -8.4404 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( to )Tj -/TT14 1 Tf -1.3721 0 TD -(NEWFILE)Tj -/TT6 1 Tf -4.2007 0 TD -( and then deleting )Tj -/TT14 1 Tf -8.2773 0 TD -(OLDFILE)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 132.78 Tm -(Searching File Directories)Tj -ET -54.01 130.07 m -510.01 130.07 l -S -BT -/TT10 1 Tf -9 0 0 9 102 111.78 Tm -(DIRECTORIES)Tj -/TT12 1 Tf -10 0 0 10 161.4 111.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 111.78 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1178 Tw -(Global variable containing the list of directories searched \(in order\) by )Tj -/TT10 1 Tf -32.5309 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1178 Tw -[( and)]TJ -/TT10 1 Tf --37.9318 -1.2889 TD -0 Tw -(FINDFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1189 Tw -[( \(below\) when not given an explicit )]TJ -/TT14 1 Tf -16.6769 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1189 Tw -[( argument. In this list, the atom)]TJ -/TT10 1 Tf --25.0783 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[( stands for the login directory \(the value of )]TJ -/TT10 1 Tf -19.534 0 TD -0 Tw -(LOGINHOST/DIR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0456 Tw -(\), and the atom )Tj -/TT10 1 Tf -7.1002 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0456 Tw -[( stands)]TJ --36.8359 -1.2889 TD -0.5178 Tw -[(for the currently connected directory. Other elements should be )]TJ -/TT8 1 Tf -33.7959 0 TD -0 Tw -(full)Tj -/TT6 1 Tf -1.3896 0 TD -0.5178 Tw -[( directory)]TJ --35.1856 -1.2222 TD -0 Tw -(specifications, e.g., )Tj -/TT10 1 Tf -8.5107 0 TD -({TWENTY}PS:)Tj -/TT6 1 Tf -13.2022 0 TD -(, not merely )Tj -/TT10 1 Tf -5.5371 0 TD -(LISPUSERS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -103 0 obj -<< -/Length 7739 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-30)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(LISPUSERSDIRECTORIES)Tj -/TT12 1 Tf -10 0 0 10 258 568.2 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0856 Tw -[(Global variable containing a list of directories to search for "library" package files. Used)]TJ -0 -1.2222 TD -0 Tw -(by the )Tj -/TT10 1 Tf -2.9966 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( file package command \(Chapter 17\).)Tj -/TT10 1 Tf --8.6637 -2.5489 TD -(\(SPELLFILE)Tj -/TT6 1 Tf -6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NOPRINTFLG)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NSFLG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 353.4229 517.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 517.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0633 Tw -(Searches for the file name )Tj -/TT8 1 Tf -11.8933 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.0562 0 TD -0.0633 Tw -(, possibly performing spelling correction \(see Chapter 20\).)Tj --13.9495 -1.2222 TD -0 Tw -(Returns the corrected file name, if any, otherwise )Tj -/TT10 1 Tf -21.939 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --23.7393 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9877 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0678 Tw -[( has a directory field, )]TJ -/TT10 1 Tf -9.8926 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0678 Tw -[( attempts spelling correction against the files in)]TJ --18.6816 -1.2889 TD -0.0344 Tw -[(that particular directory. Otherwise, )]TJ -/TT10 1 Tf -16.642 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0344 Tw -[( searches for the file on the directory list)]TJ -/TT14 1 Tf --22.0428 -1.2889 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( before attempting any spelling correction.)Tj --3.6006 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9355 0 TD -(NOPRINTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0156 Tw -[( is )]TJ -/TT10 1 Tf -1.246 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5156 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0156 Tw -[( asks you to confirm any spelling correction done, and)]TJ --15.8991 -1.2889 TD -0.13 Tw -[(prints out any files found, even if spelling correction is not done. If )]TJ -/TT14 1 Tf -31.7936 0 TD -0 Tw -(NOPRINTFLG)Tj -/TT6 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.38 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.38 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj -/TT10 1 Tf --39.7548 -1.2889 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -( does not do any printing, nor ask for approval.)Tj --5.4009 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.021 0 TD -(NSFLG)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3511 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3511 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -[( \(or )]TJ -/TT10 1 Tf -1.9761 0 TD -0 Tw -(NOSPELLFLG)Tj -/TT6 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.3511 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3511 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1011 Tw -(, see Chapter 20\), no spelling correction is attempted,)Tj --15.8035 -1.2889 TD -0 Tw -(though searching through )Tj -/TT14 1 Tf -11.7886 0 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( still occurs.)Tj -/TT14 1 Tf --15.3892 -2.0667 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.21 Tw -[( is the list of directories searched if )]TJ -/TT14 1 Tf -17.2113 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.21 Tw -[( does not have a directory field. If)]TJ -/TT14 1 Tf --23.2122 -1.2889 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the value of the variable )Tj -/TT10 1 Tf -11.4155 0 TD -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -( is used.)Tj --21.9657 -2.0667 TD -[(Note:)-901.2(If )]TJ -/TT14 1 Tf -4.331 0 TD -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0778 Tw -[( is )]TJ -/TT10 1 Tf -1.3704 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -(, and )Tj -/TT14 1 Tf -2.5984 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0778 Tw -[( is not found by searching the directories)]TJ --12.7678 -1.2889 TD -0 Tw -(on )Tj -/TT10 1 Tf -1.6824 0 TD -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -0.3044 Tw -(, but the root name of )Tj -/TT14 1 Tf -11.582 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.3044 Tw -[( has a )]TJ -/TT10 1 Tf -3.6692 0 TD -0 Tw -(FILEDATES)Tj -/TT6 1 Tf --25.9351 -1.2889 TD -0.2211 Tw -(property \(Chapter 17\) indicating that a file by that name has been)Tj -0 -1.3711 TD -0.2089 Tw -(loaded, then the directory)Tj -/TT12 1 Tf -10 0 0 10 336.5731 291.92 Tm -0 Tw -( )Tj -/TT6 1 Tf -9 0 0 9 341.6714 291.92 Tm -0.2089 Tw -(indicated in the )Tj -/TT10 1 Tf -7.7717 0 TD -0 Tw -(FILEDATES)Tj -/TT6 1 Tf -5.4009 0 TD -0.2089 Tw -[( property is)]TJ --25.8027 -1.2889 TD -0.1533 Tw -[(searched, too. This additional search is not done if )]TJ -/TT14 1 Tf -24.1578 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1533 Tw -[( is non-)]TJ -/TT10 1 Tf --27.7584 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --7.8003 -2.0667 TD -(ERRORTYPELST)Tj -/TT6 1 Tf -7.2012 0 TD -0.1989 Tw -[( \(Chapter 14\) initially contains the entry )]TJ -/TT10 1 Tf -19.2404 0 TD -0.4789 Tw -(\(\(23 \(SPELLFILE \(CADR)Tj --26.4415 -1.2889 TD -0.0556 Tw -(ERRORMESS\) NIL NOFILESPELLFLG\)\)\))Tj -/TT6 1 Tf -19.3142 0 TD -0.0233 Tw -(, which causes )Tj -/TT10 1 Tf -6.6764 0 TD -0 Tw -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -[( to be called in case)]TJ --31.3916 -1.2889 TD -0.1233 Tw -(of a )Tj -/TT10 1 Tf -2.1256 0 TD -0.2956 Tw -(FILE NOT FOUND)Tj -/TT6 1 Tf -8.9925 0 TD -0.1233 Tw -[( error. If the variable )]TJ -/TT10 1 Tf -10.3313 0 TD -0 Tw -(NOFILESPELLFLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.1233 Tw -[( is )]TJ -/TT10 1 Tf -1.4615 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1233 Tw -[( \(its initial value\),)]TJ --31.9123 -1.2889 TD -0.0711 Tw -(then spelling correction is not done on the file name, but )Tj -/TT10 1 Tf -25.9365 0 TD -0 Tw -(DIRECTORIES)Tj -/TT6 1 Tf -6.6011 0 TD -0.0711 Tw -[( is still searched.)]TJ --32.5376 -1.2889 TD -0 Tw -(If )Tj -/TT10 1 Tf -0.9621 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.0422 Tw -[( is successful, the operation will be reexecuted with the new \(corrected\) file)]TJ --6.363 -1.2889 TD -0 Tw -(name.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(FINDFILE)Tj -/TT6 1 Tf -5.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NSFLG)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 291.764 169.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 169.78 Tm -([Function])Tj --35.4033 -1.8444 TD -(Uses )Tj -/TT10 1 Tf -2.4623 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -0.1078 Tw -[( to search for a file named )]TJ -/TT14 1 Tf -12.4229 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1078 Tw -[(. If it finds one, returns its full name,)]TJ --22.6864 -1.2889 TD -0.0256 Tw -[(with no user interaction. Specifically, it calls )]TJ -/TT10 1 Tf -20.1415 0 TD -0 Tw -(\(SPELLFILE)Tj -/TT16 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.2756 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.2756 0 TD -(T)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.2756 0 TD -(NSFLG)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.2756 0 TD -(DIRLST)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0256 Tw -(, after)Tj --37.4463 -1.2889 TD -0.0556 Tw -[(first performing two simple checks: If )]TJ -/TT14 1 Tf -17.4924 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0556 Tw -[( has an explicit directory, it checks to see if a)]TJ --19.8928 -1.2889 TD -0.04 Tw -[(file so named exists, and if so returns that file. If )]TJ -/TT14 1 Tf -22.1475 0 TD -0 Tw -(DIRLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.04 Tw -[( is )]TJ -/TT10 1 Tf -1.2948 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -(, it looks for )Tj -/TT14 1 Tf -5.6639 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.04 Tw -[( on the)]TJ --36.9075 -1.2889 TD -0 Tw -(connected directory before calling )Tj -/TT10 1 Tf -15.2759 0 TD -(SPELLFILE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -106 0 obj -<< -/Length 6817 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-31)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT4 1 Tf --35.4 -4.38 TD -(Listing File Directories)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -510.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 543.54 Tm -0.1033 Tw -(The function )Tj -/TT10 1 Tf -6.0875 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.1033 Tw -[( allows you to conveniently specify and/or program a variety of directory)]TJ --11.4884 -1.2889 TD -0 Tw -(operations:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(DIRECTORY)Tj -/TT6 1 Tf -6 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COMMANDS)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DEFAULTEXT)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DEFAULTVERS)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 354.0308 509.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 509.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1611 Tw -(Returns, lists, or performs arbitrary operations on all files specified by the "file group")Tj -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.01 Tw -[(. A file group has the form of a regular file name, except that the character )]TJ -/TT10 1 Tf -33.3106 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.01 Tw -[( can be)]TJ --36.9112 -1.2889 TD -0.1 Tw -[(used to match any number of characters, including zero, in the file name. For example,)]TJ -0 -1.2222 TD -0.04 Tw -(the file group )Tj -/TT10 1 Tf -6.3524 0 TD -0 Tw -(A*B)Tj -/TT6 1 Tf -1.8003 0 TD -0.04 Tw -[( matches all file names beginning with the character )]TJ -/TT10 1 Tf -23.5495 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( and ending with)]TJ --32.3023 -1.2889 TD -0 Tw -(the character )Tj -/TT10 1 Tf -5.9521 0 TD -(B)Tj -/TT6 1 Tf -0.6001 0 TD -(. The file group )Tj -/TT10 1 Tf -7.269 0 TD -(*.DCOM)Tj -/TT6 1 Tf -3.6006 0 TD -( matches all files with an extension of )Tj -/TT10 1 Tf -16.7568 0 TD -(DCOM)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --36.5791 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9866 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.0667 Tw -[( does not contain an explicit extension, it is defaulted to )]TJ -/TT14 1 Tf -25.5014 0 TD -0 Tw -(DEFAULTEXT)Tj -/TT6 1 Tf -6.001 0 TD -0.0667 Tw -(; if )Tj -/TT14 1 Tf -1.5074 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf --36.9968 -1.2889 TD -0.0867 Tw -(does not contain an explicit version, it is defaulted to )Tj -/TT14 1 Tf -24.4414 0 TD -0 Tw -(DEFAULTVERS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0867 Tw -(. )Tj -/TT14 1 Tf -0.9233 0 TD -0 Tw -(DEFAULTEXT)Tj -/TT6 1 Tf -6.001 0 TD -0.0867 Tw -[( and)]TJ -/TT14 1 Tf --37.9668 -1.2889 TD -0 Tw -(DEFAULTVERS)Tj -/TT6 1 Tf -6.6011 0 TD -0.0511 Tw -[( themselves default to )]TJ -/TT10 1 Tf -10.1512 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0511 Tw -[(. If the period or semicolon preceding the omitted)]TJ --17.3524 -1.2889 TD -0.0178 Tw -(extension or version, respectively, is present, the field is explicitly empty and no default is)Tj -0 -1.2222 TD -0.1078 Tw -[(used. All other unspecified fields default to )]TJ -/TT10 1 Tf -20.4985 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1078 Tw -[(. Null version is interpreted as "highest".)]TJ --21.0985 -1.2889 TD -0 Tw -(Thus )Tj -/TT14 1 Tf -2.5239 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3022 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0522 Tw -[( or )]TJ -/TT10 1 Tf -1.5454 0 TD -0 Tw -(*.*)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( or )]TJ -/TT10 1 Tf -1.5454 0 TD -0 Tw -(*.*;*)Tj -/TT6 1 Tf -3.0005 0 TD -0.0522 Tw -[( enumerates all files on the connected directory; )]TJ -/TT14 1 Tf -21.7684 0 TD -0 Tw -(FILES)Tj -/TT10 1 Tf --36.9889 -1.2889 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.6356 0 TD -(*)Tj -/TT16 1 Tf -0.6001 0 TD -(.)Tj -/TT6 1 Tf -0.25 0 TD -0.3856 Tw -[( or )]TJ -/TT10 1 Tf -2.212 0 TD -0 Tw -(*.;*)Tj -/TT6 1 Tf -2.4004 0 TD -0.3856 Tw -[( enumerates all versions of files with null extension; )]TJ -/TT14 1 Tf -26.6297 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.6356 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.6356 0 TD -(*.;)Tj -/TT6 1 Tf --38.1995 -1.2889 TD -0.3678 Tw -(enumerates the highest version of files with null extension; and )Tj -/TT14 1 Tf -31.9019 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.6178 0 TD -0.8822 Tw -(= *.*;)Tj -/TT6 1 Tf --35.5202 -1.2889 TD -0 Tw -(enumerates the highest version of all files. If )Tj -/TT14 1 Tf -20.0078 0 TD -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, it defaults to )Tj -/TT10 1 Tf -6.3062 0 TD -(*.*)Tj -/TT16 1 Tf -1.8003 0 TD -(;)Tj -/TT10 1 Tf -0.25 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --32.3133 -2.0667 TD -0.0344 Tw -[(Note:)-901.2(Some hosts/devices are not capable of supporting "highest version" in)]TJ -3.3333 -1.2222 TD -0 Tw -(enumeration. Such hosts instead enumerate )Tj -/TT8 1 Tf -19.8106 0 TD -(all)Tj -/TT6 1 Tf -0.9995 0 TD -( versions.)Tj --26.8101 -2 TD -0.1467 Tw -(For each file that matches the file group )Tj -/TT14 1 Tf -18.9238 0 TD -0 Tw -(FILES)Tj -/TT6 1 Tf -3.0005 0 TD -0.1467 Tw -(, the "file commands" in )Tj -/TT14 1 Tf -11.5019 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1467 Tw -[( are)]TJ --38.227 -1.2889 TD -0.1156 Tw -[(executed in order. Some of the file commands allow aborting the command processing)]TJ -0 -1.2222 TD -0.0644 Tw -[(for a given file, effectively filtering the list of files. The interpretation of the different file)]TJ -T* -0.1722 Tw -[(commands is described below. If )]TJ -/TT14 1 Tf -16.0299 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1722 Tw -[( is )]TJ -/TT10 1 Tf -1.5593 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1722 Tw -(, it defaults to )Tj -/TT10 1 Tf -6.995 0 TD -0 Tw -(\(COLLECT\))Tj -/TT6 1 Tf -5.4009 0 TD -0.1722 Tw -(, which)Tj --36.5862 -1.2889 TD -0 Tw -(collects the matching file names in a list and returns it as the value of )Tj -/TT10 1 Tf -30.6548 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --41.389 -2.9556 TD -(The "file commands" in )Tj -/TT14 1 Tf -10.5552 0 TD -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -( are interpreted as follows:)Tj -/TT10 1 Tf -1.3774 -2.2156 TD -(P)Tj -/TT6 1 Tf -1.9333 0 TD -0.2156 Tw -[(Prints the files name. For readability, )]TJ -/TT10 1 Tf -18.5982 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf --18.5982 -1.2889 TD -0.0444 Tw -(strips the directory from the name, printing it once as)Tj -0 -1.2222 TD -0.0122 Tw -(a header in front of each set of consecutive files on the)Tj -T* -0 Tw -(same directory.)Tj -/TT10 1 Tf --2.5333 -2.1489 TD -(PP)Tj -/TT6 1 Tf -2.5333 0 TD -(Prints the files name without a version number.)Tj --4.6578 -2.0667 TD -[(a string)-1333.6(Prints the string.)]TJ -/TT10 1 Tf --8.0756 -1.9333 TD -(READDATE, WRITEDATE)Tj -0.6 -1 TD -(CREATIONDATE, SIZE)Tj -1.2 -1.2156 TD -(LENGTH, BYTESIZE)Tj --1.2 -1.2156 TD -(PROTECTION, AUTHOR)Tj -8.4 -1.2156 TD -(TYPE)Tj -/TT6 1 Tf -3.7333 0 TD -0.65 Tw -(Prints the appropriate information returned by)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf -6.6011 0 TD -( \(see above\).)Tj -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -110 0 obj -<< -/Length 5340 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-32)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 244.2 569.54 Tm -(COLLECT)Tj -/TT6 1 Tf -5.5333 0 TD -0.0267 Tw -(Adds the full name of this file to an accumulating list,)Tj -0 -1.2889 TD -0 Tw -(which will be returned as the value of )Tj -/TT10 1 Tf -16.9702 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --29.1044 -2.0667 TD -(COUNTSIZE)Tj -/TT6 1 Tf -6.7333 0 TD -0.2456 Tw -(Adds the size of this file to an accumulating sum,)Tj -0 -1.2889 TD -0 Tw -(which will be returned as the value of )Tj -/TT10 1 Tf -16.9702 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --27.3044 -2.0667 TD -(DELETE)Tj -/TT6 1 Tf -4.9333 0 TD -(Deletes the file.)Tj -/TT10 1 Tf --4.9333 -2.0667 TD -(DELVER)Tj -/TT6 1 Tf -4.9333 0 TD -0.24 Tw -(If this file is not the highest version of files by its)Tj -0 -1.2889 TD -0 Tw -(name, delete it.)Tj -/TT10 1 Tf --4.3333 -2 TD -(PAUSE)Tj -/TT6 1 Tf -4.3333 0 TD -0.0678 Tw -(Waits until you type any character before proceeding)Tj -0 -1.2889 TD -0.2 Tw -(with the rest of the commands \(good for display if)Tj -0 -1.2222 TD -0 Tw -(you want to ponder\).)Tj --13.3333 -2 TD -0.0844 Tw -[(The following commands are predicates to filter the list. If the predicate is not satisfied,)]TJ -0 -1.2222 TD -0.0189 Tw -(then processing for this file is aborted and no further commands \(such as those above\) are)Tj -T* -0 Tw -(executed for this file.)Tj -2.6667 -2 TD -0.1156 Tw -[(Note:)-901.2(if the )]TJ -/TT10 1 Tf -6.0757 0 TD -0 Tw -(P)Tj -/TT6 1 Tf -0.6001 0 TD -0.1156 Tw -[( and )]TJ -/TT10 1 Tf -2.424 0 TD -0 Tw -(PP)Tj -/TT6 1 Tf -1.2002 0 TD -0.1156 Tw -[( commands appear in )]TJ -/TT14 1 Tf -10.2835 0 TD -0 Tw -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1156 Tw -[( ahead of any of the)]TJ --22.0509 -1.2889 TD -0.1744 Tw -(filtering commands below except )Tj -/TT10 1 Tf -15.6626 0 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1744 Tw -(, they are postponed until)Tj --19.2632 -1.2889 TD -0.2022 Tw -[(after the filters. Thus, assuming the caller has placed the attribute)]TJ -0 -1.2222 TD -0.1933 Tw -(options after the filters as well, no printing occurs for a file that is)Tj -T* -0.0656 Tw -[(filtered out. This is principally so that functions like )]TJ -/TT10 1 Tf -24.0057 0 TD -0 Tw -(DIR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -[( \(below\) can)]TJ --25.8059 -1.2889 TD -0.4433 Tw -(both request printing and pass arbitrary commands through to)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -(, and have the printing happen in the appropriate place.)Tj -/TT10 1 Tf --5.6509 -2.0667 TD -(PROMPT)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MESS)Tj -/TT6 1 Tf -3.7327 0 TD -0.41 Tw -(Prompts with the yes/no question )Tj -/TT14 1 Tf -17.5031 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.41 Tw -(; if user)Tj --19.9035 -1.2889 TD -0.05 Tw -(responds with )Tj -/TT10 1 Tf -6.6947 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -(o, abort command processing for this)Tj --7.2948 -1.2889 TD -0 Tw -(file.)Tj -/TT10 1 Tf --7.5833 -2 TD -(OLDERTHAN)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9324 0 TD -0.1067 Tw -(Continue command processing if the file hasnt been)Tj -0 -1.2889 TD -0.0222 Tw -(referenced \(read or written\) in )Tj -/TT14 1 Tf -13.7351 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0222 Tw -[( days. )]TJ -/TT14 1 Tf -3.1575 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0222 Tw -[( can also be a)]TJ --18.0928 -1.2889 TD -0.1456 Tw -(string naming an explicit date and time since which)Tj -0 -1.2222 TD -0 Tw -(the file must not have been referenced.)Tj -/TT10 1 Tf --7.5833 -2 TD -(NEWERTHAN)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9324 0 TD -0.2767 Tw -(Continue command processing if the file has been)Tj -0 -1.2889 TD -0.0833 Tw -(written within the last )Tj -/TT14 1 Tf -10.4012 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -[( days. )]TJ -/TT14 1 Tf -3.3408 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -[( can also be a string)]TJ --14.9422 -1.2889 TD -0.1689 Tw -[(naming an explicit date and time. Note that this is)]TJ -0 -1.2222 TD -0.3244 Tw -(not quite the complement of )Tj -/TT10 1 Tf -14.3654 0 TD -0 Tw -(OLDERTHAN)Tj -/TT6 1 Tf -5.4009 0 TD -0.3244 Tw -(, since it)Tj --19.7663 -1.2889 TD -0 Tw -(ignores the read date.)Tj -/TT10 1 Tf --5.1833 -2 TD -(BY)Tj -/TT16 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(USER)Tj -/TT6 1 Tf -3.7331 0 TD -0.3189 Tw -(Continue command processing if the file was last)Tj -0 -1.2889 TD -0.2111 Tw -(written by the given user, i.e., its )Tj -/TT10 1 Tf -16.1428 0 TD -0 Tw -(AUTHOR)Tj -/TT6 1 Tf -3.6006 0 TD -0.2111 Tw -[( attribute)]TJ --19.7434 -1.2889 TD -0 Tw -(matches \(case insensitively\) )Tj -/TT14 1 Tf -12.4814 0 TD -(USER)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --17.6652 -2.0667 TD -(@)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -1.3331 Tc -(XX)Tj -/TT6 1 Tf -2.5333 0 TD -0 Tc -0.0233 Tw -[( is either a function of one argument \()]TJ -/TT14 1 Tf -16.8039 0 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0233 Tw -(\), or)Tj --22.2047 -1.2889 TD -0.5233 Tw -(an arbitrary expression which uses the variable)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FILENAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.14 Tw -[( freely. If )]TJ -/TT14 1 Tf -5.0131 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.14 Tw -[( returns )]TJ -/TT10 1 Tf -3.9841 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.14 Tw -(, abort command)Tj --16.1984 -1.2889 TD -0 Tw -(processing for this file.)Tj -ET -endstream -endobj -111 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -113 0 obj -<< -/Length 4691 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-33)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0522 Tw -(The following two commands apply not to any particular file, but globally to the manner)Tj -0 -1.2222 TD -0 Tw -(in which directory information is printed.)Tj -/TT10 1 Tf -7.55 -2 TD -(OUT)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILE)Tj -/TT6 1 Tf -3.733 0 TD -(Directs output to )Tj -/TT14 1 Tf -7.7603 0 TD -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --16.544 -2.0667 TD -(COLUMNS)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(N)Tj -/TT6 1 Tf -1.9326 0 TD -0.0933 Tw -(Attempts to format output in )Tj -/TT14 1 Tf -13.5931 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0933 Tw -[( columns \(rather than)]TJ --14.1932 -1.2889 TD -0 Tw -(just 1\).)Tj -/TT10 1 Tf --18.6667 -2.8889 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.3867 Tw -[( uses the variable )]TJ -/TT10 1 Tf -9.4378 0 TD -0 Tw -(DIRCOMMANDS)Tj -/TT6 1 Tf -6.6011 0 TD -0.3867 Tw -[( as a spelling list to correct spelling and define)]TJ --21.4397 -1.2889 TD -0 Tw -(abbreviations and synonyms \(see Chapter 20\). Currently the following abbreviations are recognized:)Tj -/TT10 1 Tf -16.1333 -1.7111 TD -[(AU)-1333.1(=> AUTHOR)]TJ -0.6 -1.5556 TD -[(-)-1333.2(=> PAUSE)]TJ --4.2 -1.5556 TD -[(COLLECT?)-1332.6(=> PROMPT " ? " COLLECT)]TJ -3.6 -1.5556 TD -(DA)Tj --1.2 -1.5556 TD -[(DATE)-1332.9(=> CREATIONDATE)]TJ -1.2 -1.5556 TD -[(TI)-1333.1(=> WRITEDATE)]TJ --0.6 -1.5556 TD -[(DEL)-1333(=> DELETE)]TJ --0.6 -1.5556 TD -(DEL?)Tj --1.8 -1.5556 TD -[(DELETE?)-1332.6(=> PROMPT " delete? " DELETE)]TJ -2.4 -1.5556 TD -[(OLD)-1333(=> OLDERTHAN 90)]TJ -0.6 -1.5556 TD -[(PR)-1333.1(=> PROTECTION)]TJ -T* -[(SI)-1333.1(=> SIZE)]TJ --3 -1.5556 TD -[(VERBOSE)-1332.6(=> AUTHOR CREATIONDATE SIZE )]TJ -5.5333 -1 TD -(READDATE WRITEDATE)Tj --16 -2.3267 TD -(\(FILDIR)Tj -/TT6 1 Tf -4.2 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 196.0588 259.4 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 259.4 Tm -([Function])Tj --35.4033 -1.8444 TD -(Obsolete synonym of )Tj -/TT10 1 Tf -9.6421 0 TD -(\(DIRECTORY)Tj -/TT16 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --24.5607 -2.5489 TD -(\(DIR)Tj -/TT6 1 Tf -2.4 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FILEGROUP)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -1.7991 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 246.0009 219.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 219.86 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.4911 Tw -(Convenient form of )Tj -/TT10 1 Tf -10.4001 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.4911 Tw -[( for use in type-in at the executive. Performs)]TJ -/TT10 1 Tf --15.801 -1.2889 TD -0 Tw -(\(DIRECTORY )Tj -/TT14 1 Tf -7.2012 0 TD -(FILEGROUP)Tj -/TT10 1 Tf -5.4009 0 TD -( \(P)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -1.7976 -0.3333 TD -(1)Tj -/TT16 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(COM)Tj -1.7997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\)\))Tj -/TT6 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --26.2169 -2.8822 TD -(\(NDIR)Tj -/TT4 1 Tf -10 0 0 10 129 162.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 131.7783 162.72 Tm -(FILEGROUP)Tj -/TT20 1 Tf -10 0 0 10 180.3862 162.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 183.1645 162.72 Tm -(COM)Tj -1.7995 -0.3333 TD -(1)Tj -/TT20 1 Tf -10 0 0 10 204.76 162.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.5383 162.72 Tm -(...)Tj -/TT20 1 Tf -10 0 0 10 223.7409 162.72 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 226.5193 162.72 Tm -(COM)Tj -1.8001 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 253.5209 162.72 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 162.72 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.0967 Tw -(Version of )Tj -/TT10 1 Tf -5.0112 0 TD -0 Tw -(DIR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0967 Tw -[( that lists the file names in a multi-column format. Also, by default only)]TJ --6.8115 -1.2889 TD -0 Tw -(lists the most recent version of files \(unless )Tj -/TT14 1 Tf -19.1411 0 TD -(FILEGROUP)Tj -/TT6 1 Tf -5.4009 0 TD -( contains an explicit version\).)Tj -/TT4 1 Tf -10 0 0 10 54 88.58 Tm -(File Servers)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 85.87 m -510.01 85.87 l -S -BT -/TT6 1 Tf -9 0 0 9 78 63.92 Tm -0.0044 Tw -(A file server is a shared resource on a local communications network which provides large amounts of)Tj -0 -1.2222 TD -0.0467 Tw -[(file storage. Different file servers honor a variety of access protocols. Medley supports the following)]TJ -ET -endstream -endobj -114 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT20 115 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -117 0 obj -<< -/Length 5538 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-34)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.08 Tw -[(protocols: PUP-FTP, PUP-Leaf, and NS Filing. In addition, there are library packages available that)]TJ -0 -1.2222 TD -0 Tw -(support other communications protocols, such as TCP/IP and RS232.)Tj -0 -2.8889 TD -0.1889 Tw -(With the exception of the RS232-based protocols, which exist only for file transfer, these network)Tj -0 -1.2222 TD -0.0133 Tw -(protocols are integrated into the Medley file system to allow files on a file server to be treated in much)Tj -T* -0.2611 Tw -[(the same way files are accessed on local devices, such as the disk. Thus, it is possible to call)]TJ -/TT10 1 Tf -T* -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.05 Tw -[( on the file )]TJ -/TT10 1 Tf -5.1092 0 TD -0 Tw -({ERIS}FOO.DCOM;3)Tj -/TT6 1 Tf -13.2021 0 TD -0.05 Tw -[( and read from it or write to it just as if the file)]TJ --24.3123 -1.2889 TD -0.1989 Tw -(had been on the local disk )Tj -/TT10 1 Tf -12.9482 0 TD -0 Tw -(\({DSK}FOO.DCOM;3\))Tj -/TT6 1 Tf -13.8022 0 TD -0.1989 Tw -(, rather than on a remote server named)Tj --26.7505 -1.2889 TD -0.0967 Tw -[(ERIS. However, the protocols vary in how much control they give the workstation over file system)]TJ -0 -1.2222 TD -0 Tw -(operations. Hence, some restrictions apply, as described in the following sections.)Tj -/TT4 1 Tf -10 0 0 10 126 438 Tm -(PUP File Server Protocols)Tj -/TT6 1 Tf -9 0 0 9 126 414.34 Tm -0.1878 Tw -[(There are two file server protocols in the family of PUP protocols: Leaf and FTP. Some servers)]TJ -T* -0.2311 Tw -[(support both, while others support only one of them. Medley uses whichever protocol is more)]TJ -T* -0 Tw -(appropriate for the requested operation.)Tj -0 -2.8889 TD -0.0978 Tw -(Leaf is a random access protocol, so files opened using these protocols are )Tj -/TT10 1 Tf -34.1588 0 TD -0 Tw -(RANDACCESSP)Tj -/TT6 1 Tf -6.6011 0 TD -0.0978 Tw -(, and thus)Tj --40.7599 -1.2889 TD -0.4156 Tw -[(most normal I/O operations can be performed. However, Leaf does not support directory)]TJ -0 -1.2222 TD -0.0333 Tw -[(enumeration. Hence, )]TJ -/TT10 1 Tf -9.8319 0 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( cannot be used on a Leaf file server unless the server also supports)]TJ --15.2328 -1.2889 TD -0.03 Tw -[(FTP. In addition, Leaf does not supply easy access to a files attributes. )]TJ -/TT10 1 Tf -32.2771 0 TD -0 Tw -(INFILEP)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -[( and )]TJ -/TT10 1 Tf -2.2529 0 TD -0 Tw -(GETFILEINFO)Tj -/TT6 1 Tf --38.7307 -1.2889 TD -0.0522 Tw -(have to open the file for input in order to obtain their information, and hence the files read date will)Tj -0 -1.2222 TD -0 Tw -(change, even though the semantics of these functions do not imply it.)Tj -0 -2.8889 TD -0.4144 Tw -[(FTP is a file transfer protocol that only permits sequential access to files. However, most)]TJ -0 -1.2222 TD -0.1367 Tw -[(implementations of it are considerably more efficient than Leaf. Medley uses FTP in preference to)]TJ -T* -0.1089 Tw -(Leaf whenever the call to )Tj -/TT10 1 Tf -11.8975 0 TD -0 Tw -(OPENSTREAM)Tj -/TT6 1 Tf -6.001 0 TD -0.1089 Tw -[( requests sequential access only. In particular, the functions)]TJ -/TT10 1 Tf --17.8985 -1.2889 TD -0 Tw -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1389 Tw -[( and )]TJ -/TT10 1 Tf -2.4706 0 TD -0 Tw -(COPYFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1389 Tw -[( open their files for sequential access. If a file server supports FTP but for)]TJ --10.872 -1.2889 TD -0.0822 Tw -(some reason it is undesirable for Lisp to use it, one can set the internal variable \\)Tj -/TT10 1 Tf -36.9342 0 TD -0 Tw -(FTPAVAILABLE)Tj -/TT6 1 Tf -7.2012 0 TD -0.0822 Tw -[( to)]TJ -/TT10 1 Tf --44.1354 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --1.8003 -2.9556 TD -0.0144 Tw -[(The system normally maintains a Leaf connection to a host in the background. This connection can be)]TJ -0 -1.2222 TD -0.0133 Tw -(broken by calling )Tj -/TT10 1 Tf -7.9658 0 TD -0 Tw -(\(BREAKCONNECTION)Tj -/TT6 1 Tf -9.6016 0 TD -( )Tj -/TT14 1 Tf -0.2633 0 TD -(HOST)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.0133 Tw -[(. Any subsequent reference to files on that host will re-)]TJ --20.8312 -1.2889 TD -0.0222 Tw -[(establish the connection. The principal use for this function arises when you interrupt a file operation)]TJ -0 -1.2222 TD -0.0733 Tw -(in such a way that the file server thinks the file is open but Lisp thinks it is closed \(or not yet open\).)Tj -T* -0 Tw -(As a result, the next time Lisp tries to open the file, it gets a file busy error.)Tj -/TT4 1 Tf -10 0 0 10 126 128.2 Tm -(Xerox NS File Server Protocols)Tj -/TT6 1 Tf -9 0 0 9 126 104.54 Tm -0.2422 Tw -(Interlisp supports file access to Xerox 803x file servers, using the Filing Protocol built on Xerox)Tj -T* -0.0622 Tw -[(Network Systems protocols. Medley determines that a host is an NS File Server by the presense of a)]TJ -T* -0.4244 Tw -(colon in its name, e.g., )Tj -/TT10 1 Tf -12.174 0 TD -0 Tw -({PHYLEX:})Tj -/TT6 1 Tf -5.4009 0 TD -0.4244 Tw -[(. The general format of NS fileserver device names is)]TJ -/TT10 1 Tf --17.5749 -1.2889 TD -0 Tw -({)Tj -/TT14 1 Tf -0.6001 0 TD -(SERVERNAME:DOMAIN:ORGANIZATION)Tj -/TT10 1 Tf -18.0029 0 TD -(})Tj -/TT6 1 Tf -0.6001 0 TD -0.2489 Tw -[(; the device specification for an 8000-series product in)]TJ --19.2031 -1.2889 TD -0.1389 Tw -[(general includes the ClearingHouse domain and organization. If domain and organization are not)]TJ -0 -1.2222 TD -0.02 Tw -(supplied directly, then they are obtained from the defaults, which themselves are found by consulting)Tj -ET -endstream -endobj -118 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -120 0 obj -<< -/Length 5359 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-35)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0411 Tw -[(the nearest ClearingHouse if you have not defined them in an init file. However, note that the server)]TJ -0 -1.2222 TD -0.1022 Tw -(name must still have a colon in it to distinguish it from other types of host names \(e.g., PUP server)Tj -T* -0 Tw -(names\).)Tj -0 -2.8889 TD -0.1022 Tw -[(NS file servers in general permit arbitrary characters in file names. You should be cognizant of file)]TJ -0 -1.2222 TD -0.2056 Tw -(name quoting conventions, and the fact that any file name presented as a symbol needs to have)Tj -T* -0.0855 Tw -[(characters of significance to the reader, such as space, escaped with a %. Of course, one can always)]TJ -T* -0 Tw -(present the file name as a string, in which case only the quoting conventions are important.)Tj -0 -2.8889 TD -0.1078 Tw -(NS file servers support a true hierarchical file system, where subdirectories are just another kind of)Tj -0 -1.2222 TD -0.19 Tw -[(file, which needs to be explicitly created. In Interlisp, subdirectories are created automatically as)]TJ -T* -0.0956 Tw -[(needed: A call to )]TJ -/TT10 1 Tf -8.3943 0 TD -0 Tw -(OPENFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0956 Tw -[( to create a file in a non-existent subdirectory automatically creates the)]TJ --13.1951 -1.2889 TD -0.0178 Tw -(subdirectory. )Tj -/TT10 1 Tf -6.4086 0 TD -0 Tw -(CONN)Tj -/TT6 1 Tf -2.4004 0 TD -0.0178 Tw -[( to a non-existent subdirectory asks you whether to create the directory. For those)]TJ --8.809 -1.2889 TD -0.0344 Tw -(using Star software, a directory corresponds to a "File Drawer," while a subdirectory corresponds to a)Tj -0 -1.2222 TD -0 Tw -("File Folder.")Tj -0 -2.8889 TD -0.16 Tw -[(Because of their hierarchical structure, NS directories can be enumeerated to arbitrary levels. The)]TJ -0 -1.2222 TD -0.36 Tw -(default is to enumerate all the files \(the leaves of the tree\), omitting the subdirectory nodes)Tj -T* -0 Tw -(themselves. This default can be changed by the following variable:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(FILING.ENUMERATION.DEPTH)Tj -/TT12 1 Tf -10 0 0 10 231.6211 336 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 336 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0078 Tw -(This variable is either a number, specifying the number of levels deep to enumeerate, or )Tj -/TT10 1 Tf -39.1479 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj --39.748 -1.2889 TD -0.1078 Tw -[(meaning enumerate to all levels. In the former case, when the enumeration reaches the)]TJ -0 -1.2222 TD -0.0844 Tw -(specified depth, only the subdirectory name rooted at that level is listed, and none of its)Tj -T* -0.0744 Tw -[(descendants is listed. When )]TJ -/TT10 1 Tf -13.1134 0 TD -0 Tw -(FILING.ENUMERATION.DEPTH)Tj -/TT6 1 Tf -14.4023 0 TD -0.0744 Tw -[( is )]TJ -/TT10 1 Tf -1.3637 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0744 Tw -(, all files are listed, and)Tj --29.4796 -1.2889 TD -0 Tw -(no subdirectory names are listed. )Tj -/TT10 1 Tf -15.1646 0 TD -(FILING.ENUMERATION.DEPTH)Tj -/TT6 1 Tf -14.4023 0 TD -( is initially )Tj -/TT10 1 Tf -4.8843 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --35.0513 -2.0667 TD -0.0011 Tw -(Independent of )Tj -/TT10 1 Tf -7.3012 0 TD -0 Tw -(FILING.ENUMERATION.DEPTH)Tj -/TT6 1 Tf -14.4023 0 TD -0.0011 Tw -(, a request to enumerate the top-level of a)Tj --21.7035 -1.2889 TD -0.1567 Tw -[(file servers hierarchy lists only the top level, i.e., assumes a depth of 1. For example,)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\(DIRECTORY {PHYLEX:}\))Tj -/TT6 1 Tf -13.2021 0 TD -( lists exactly the top-level directories of the server )Tj -/TT10 1 Tf -22.1001 0 TD -(PHYLEX:)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --44.8363 -2.9556 TD -0.25 Tw -[(NS file servers do not currently support random access. Therefore, )]TJ -/TT10 1 Tf -32.6206 0 TD -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.25 Tw -[( of an NS file)]TJ --38.6216 -1.2889 TD -0.0222 Tw -[(generally causes an error. However, )]TJ -/TT10 1 Tf -16.5581 0 TD -0 Tw -(GETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.0222 Tw -[( returns the correct character position for open files)]TJ --22.5591 -1.2889 TD -0.0001 Tc -0.0032 Tw -(on NS file servers. In addition, )Tj -/TT10 1 Tf -13.9887 0 TD -0 Tc -0 Tw -(SETFILEPTR)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.0032 Tw -( works in the special case where the file is open for input,)Tj --19.9896 -1.2889 TD -0 Tc -0.1089 Tw -[(and the file pointer is being set forward. In this case, the intervening charactgers are automatically)]TJ -0 -1.2222 TD -0 Tw -(read.)Tj -0 -2.8889 TD -0.0044 Tw -(Even while Interlisp has no file open on an NS Server, the system maintains a "session" with the server)Tj -0 -1.2222 TD -0.0744 Tw -[(for a while in order to improve the speed of subsequent requests to the server. While this session is)]TJ -T* -0.0078 Tw -(open, it is possible for some nodes of the servers file system to appear "busy" or inaccessible to certain)Tj -T* -0.1278 Tw -[(clients on other workstations \(such as Star\). If this happens, the following function can be used to)]TJ -T* -0 Tw -(terminate any open sessions immediately.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(BREAK.NSFILING.CONNECTION )Tj -/TT14 1 Tf -16.2026 0 TD -(HOST)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 274.8281 68.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 68.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Closes any open connections to NS file server )Tj -/TT14 1 Tf -20.3232 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -121 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -123 0 obj -<< -/Length 4548 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-36)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Operating System Designations)Tj -/TT6 1 Tf -9 0 0 9 126 544.54 Tm -0.0656 Tw -[(Some of the network server protocols are implemented on more than one kind of foreign host. Such)]TJ -0 -1.2222 TD -0.04 Tw -[(hosts vary in their conventions for logging in, naming files, representing end-of-line, etc. In order for)]TJ -T* -0.5222 Tw -(Interlisp to communicate gracefully with all these hosts, it is necessary that the variable)Tj -/TT10 1 Tf -T* -0 Tw -(NETWORKOSTYPES)Tj -/TT6 1 Tf -8.4014 0 TD -0.2522 Tw -[( be set correctly.The following functions are now considered obsolete, but are)]TJ --8.4014 -1.2889 TD -0 Tw -(provided for backwards compatibility:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(NETWORKOSTYPES)Tj -/TT12 1 Tf -10 0 0 10 225.6123 477.6 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 477.6 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0056 Tw -[(An association-list that associates a host name with its operating system type. Elements in)]TJ -0 -1.2222 TD -0.16 Tw -(this list are of the form )Tj -/TT10 1 Tf -11.212 0 TD -0 Tw -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(HOSTNAME)Tj -/TT8 1 Tf -4.8008 0 TD -0.16 Tw -[( . )]TJ -/TT14 1 Tf -1.07 0 TD -0 Tw -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -0.16 Tw -[(. For example, )]TJ -/TT10 1 Tf -7.3861 0 TD -0 Tw -(\(MAXC2)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.41 0 TD -0.3833 Tw -(. TENEX\))Tj -/TT6 1 Tf -5.1841 0 TD -0.16 Tw -[(. The)]TJ --37.2641 -1.2889 TD -0.1289 Tw -(operating system types currently known to Lisp are TENEX, TOPS20, UNIX, and VMS.)Tj -0 -1.2222 TD -0.2867 Tw -(The host names in this list should be the "canonical" host name, represented as an)Tj -T* -0.0078 Tw -[(uppercase atom. For PUP and NS hosts, the function )]TJ -/TT10 1 Tf -23.7863 0 TD -0 Tw -(CANONICAL.HOSTNAME)Tj -/TT6 1 Tf -10.8018 0 TD -0.0078 Tw -[( \(below\) can)]TJ --34.588 -1.2889 TD -0 Tw -(be used to determine which of several aliases of a server is the canonical name.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\(CANONICAL.HOSTNAME)Tj -/TT12 1 Tf -10 0 0 10 252.6167 382.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 255.395 382.46 Tm -(HOSTNAME)Tj -/TT12 1 Tf -10 0 0 10 298.602 382.46 Tm -(\) )Tj -/TT6 1 Tf -9 0 0 9 492.6299 382.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1778 Tw -(Returns the "canonical" name of the server )Tj -/TT14 1 Tf -20.2274 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1778 Tw -(, or )Tj -/TT10 1 Tf -2.0465 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1778 Tw -[( if )]TJ -/TT14 1 Tf -1.4796 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1778 Tw -[( is not the)]TJ --35.1553 -1.2889 TD -0 Tw -(name of a server.)Tj -/TT4 1 Tf -10 0 0 10 126 326.92 Tm -(Logging In)Tj -/TT6 1 Tf -9 0 0 9 126 303.26 Tm -0.1967 Tw -[(Most file servers require a user name and password for access. Medley maintains an ephemeral)]TJ -0 -1.2222 TD -0.0622 Tw -[(database of user names and passwords for each host accessed recently. The database vanishes when)]TJ -/TT10 1 Tf -T* -0 Tw -(LOGOUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6167 0 TD -(SAVEVM)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6167 0 TD -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1167 Tw -(, or )Tj -/TT10 1 Tf -1.9243 0 TD -0 Tw -(MAKESYS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1167 Tw -[( is executed, so that the passwords remain secure from any)]TJ --18.16 -1.2889 TD -0.0722 Tw -[(subsequent user of the same virtual memory image. Medley also maintains a notion of the "default")]TJ -0 -1.2222 TD -0 Tw -(user name and password, which are generally those with which you initially log in.)Tj -0 -2.8889 TD -0.0033 Tw -(When a file server for which the system does not yet have an entry in its password database requests a)Tj -0 -1.2222 TD -0.03 Tw -[(name and password, the system first tries the default user name and password. If the file server does)]TJ -T* -0.04 Tw -(not recognize that name/password, the system prompts you for a name and password to use for that)Tj -T* -0 Tw -(host. It suggests a default name:)Tj -/TT10 1 Tf -9.3333 -2.8889 TD -({ERIS} Login: Green)Tj -/TT6 1 Tf --9.3333 -2.9556 TD -0.0167 Tw -(which you can accept by pressing [Return}, or replace the name by typing a new name or backspacing)Tj -0 -1.2222 TD -0 Tw -(over it. Following the name, you are prompted for a password:)Tj -/TT10 1 Tf -9.3333 -2.8889 TD -({ERIS} Login: Verdi \(password\))Tj -/TT6 1 Tf --9.3333 -2.9556 TD -0.1767 Tw -[(which is not echoed, terminated by another [Return]. This information is stored in the password)]TJ -0 -1.2222 TD -0 Tw -(database so that you are prompted only once, until the database is again cleared.)Tj -ET -endstream -endobj -124 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -126 0 obj -<< -/Length 6551 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-37)Tj -/TT12 1 Tf -10 0 0 10 408 612 Tm -(STREAMS & FILES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.17 Tw -(Medley also prompts for password information when a protection violation occurs on accessing a)Tj -0 -1.2222 TD -0.0544 Tw -[(directory on certain kinds of servers that support password-protected directories. Some such servers)]TJ -T* -0.0889 Tw -(allow one to protect a file in a way that is inaccessible to even its owner until the files protection is)Tj -T* -0.1267 Tw -[(changed. In such cases, no password would help, and the system causes the normal )]TJ -/TT10 1 Tf -39.3258 0 TD -0 Tw -(PROTECTION)Tj --39.3258 -1.2889 TD -(VIOLATION)Tj -/TT6 1 Tf -5.4009 0 TD -( error.)Tj --5.4009 -2.9555 TD -0.2556 Tw -(You can abort a password interaction by typing the )Tj -/TT10 1 Tf -25.218 0 TD -0 Tw -(ERROR)Tj -/TT6 1 Tf -3.0005 0 TD -0.2556 Tw -[( interrupt, initially Cosntrol-E. This)]TJ --28.2185 -1.2889 TD -0.06 Tw -(generally either causes a )Tj -/TT10 1 Tf -11.2952 0 TD -0.1456 Tw -(PROTECTION VIOLATION)Tj -/TT6 1 Tf -12.1475 0 TD -0.06 Tw -[( error, if the password was requested in order to)]TJ --23.4427 -1.2889 TD -0.0411 Tw -(gain access to a protected file on an otherwise accessible server; or to act as though the server did not)Tj -0 -1.2222 TD -0 Tw -(exist, in the case where the password was needed to gain any access to the server.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\(LOGIN)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOSTNAME)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRECTORY)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(MSG)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 273.0264 441.8 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 441.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2556 Tw -(Forces Medley to ask for your name and password to be used when accessing host)Tj -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[(. Any previous login information for )]TJ -/TT14 1 Tf -16.7203 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[( is overridden. If )]TJ -/TT14 1 Tf -7.8995 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.0122 Tw -[( is)]TJ -/TT10 1 Tf --39.0222 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.19 Tw -(, it overrides login information for all hosts and resets the default user name and)Tj --1.8003 -1.2889 TD -0.1178 Tw -[(password to be those typed in by you. The special value )]TJ -/TT14 1 Tf -26.6614 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -0.3678 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3678 0 TD -(NS::)Tj -/TT6 1 Tf -2.4004 0 TD -0.1178 Tw -[( is used to)]TJ --35.1982 -1.2889 TD -0 Tw -(obtain the default user name and password for all logins for NS Servers.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.2121 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.2922 Tw -[( is the atom )]TJ -/TT10 1 Tf -6.5258 0 TD -0 Tw -(QUIET)Tj -/TT6 1 Tf -3.0005 0 TD -0.2922 Tw -(, only prompts you if there is no cached information for)Tj -/TT14 1 Tf --12.5387 -1.2889 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --4.8008 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0355 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.1156 Tw -[( is specified, it is the name of a directory on )]TJ -/TT14 1 Tf -20.6515 0 TD -0 Tw -(HOSTNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1156 Tw -[(. In this case, the)]TJ --31.8886 -1.2889 TD -0.1189 Tw -[(information requested is the "connect" password for that directory. Connect passwords)]TJ -0 -1.2222 TD -0 Tw -(for any number of different directories on a host can be maintained.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9977 0 TD -(MSG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -[( is non-)]TJ -/TT10 1 Tf -3.4134 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -(, it is a message \(a string\) to be printed before the name and password)Tj --8.0117 -1.2889 TD -0 Tw -(information is requested.)Tj -/TT10 1 Tf -0 -2 TD -(LOGIN)Tj -/TT6 1 Tf -3.0005 0 TD -( returns the user name with which you completed the login.)Tj -/TT10 1 Tf --5.6672 -2.5489 TD -(\(SETPASSWORD)Tj -/TT6 1 Tf -7.2012 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(USER)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PASSWORD)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRECTORY)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 316.2334 238.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 238.06 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2444 Tw -(Sets the values in the internal password database exactly as if the strings )Tj -/TT14 1 Tf -35.4102 0 TD -0 Tw -(USER)Tj -/TT6 1 Tf -2.4004 0 TD -0.2444 Tw -[( and)]TJ -/TT14 1 Tf --37.8106 -1.2889 TD -0 Tw -(PASSWORD)Tj -/TT6 1 Tf -4.8008 0 TD -( were typed in via )Tj -/TT10 1 Tf -8.2393 0 TD -(\(LOGIN)Tj -/TT6 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(HOST)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(DIRECTORY)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --30.259 -2.5489 TD -(\(SETUSERNAME)Tj -/TT6 1 Tf -7.2012 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(NAME)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 196.0649 186.92 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 186.92 Tm -([Function])Tj --35.4033 -1.8444 TD -(Sets the default uer name to )Tj -/TT14 1 Tf -12.5771 0 TD -(NAME)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --17.6442 -2.5489 TD -(\(USERNAME)Tj -/TT6 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(STRPTR)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(PRESERVECASE)Tj -/TT10 1 Tf -7.2012 0 TD -(\))Tj -/TT12 1 Tf -10 0 0 10 276.1772 147.38 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 147.38 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT14 1 Tf -1.1699 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.5 0 TD -(=)Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.25 Tw -[(, returns the default user name. This is the only value of )]TJ -/TT14 1 Tf -28.3828 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.25 Tw -[( that is)]TJ --36.5537 -1.2889 TD -0 Tw -(meaningful in Medley.)Tj -/TT10 1 Tf -0 -2 TD -(USERNAME)Tj -/TT6 1 Tf -4.8008 0 TD -0.1567 Tw -[( returns the value as a string, unless )]TJ -/TT14 1 Tf -17.3334 0 TD -0 Tw -(STRPTR)Tj -/TT6 1 Tf -3.6006 0 TD -0.1567 Tw -[( is )]TJ -/TT10 1 Tf -1.5282 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1567 Tw -(, in which case )Tj -/TT10 1 Tf -7.3293 0 TD -0 Tw -(USERNAME)Tj -/TT6 1 Tf --35.1924 -1.2889 TD -0.0422 Tw -[(returns the value as an atom. The name is returned in uppercase, unless )]TJ -/TT14 1 Tf -32.7854 0 TD -0 Tw -(PRESERVECASE)Tj -/TT6 1 Tf --32.7854 -1.2889 TD -(is true.)Tj -ET -endstream -endobj -127 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 14 0 R -/TT14 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -129 0 obj -<< -/Length 3105 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(23-38)Tj -/TT12 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Abnormal Conditions)Tj -/TT6 1 Tf -9 0 0 9 126 544.54 Tm -0.0344 Tw -(If Medley tries to access a file and does not get a response from the file server in a areasonable period)Tj -0 -1.2222 TD -0.0811 Tw -[(of time, it prints a message that the file server is not responding, and keeps trying. If the file server)]TJ -T* -0.1244 Tw -[(has actually crashed, this may continue indefinitely. A Control-E or similar interrupt aborts out of)]TJ -T* -0 Tw -(this state.)Tj -0 -2.8889 TD -0.0156 Tw -(If the file server crashes but is restarted before you attempt to do anything, file operations will usually)Tj -0 -1.2222 TD -0.1033 Tw -(proceed normally, except for a brief pause while Medley tries to re-establish any connections it had)Tj -T* -0.1267 Tw -[(open before the crash. However, this is not always possible. For example, when a file is open for)]TJ -T* -0 Tw -(sequential output and the server crashes, there is no way to recover the output already written, since it)Tj -T* -(vanished with the crash. In such cases, the system will cause an error such as )Tj -/TT10 1 Tf -34.4453 0 TD -(Connection Lost)Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT10 1 Tf --43.4468 -2.9556 TD -(LOGOUT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2189 Tw -[( closes any file server connections that are currently open. On return, it attempts to re-)]TJ --3.6006 -1.2889 TD -0.0211 Tw -[(establish connections for any files that were open before logging out. If a file has disappeared or been)]TJ -0 -1.2222 TD -0.1633 Tw -[(modified, Medley reports this fact. Files that were open for sequential access generally cannot be)]TJ -T* -0 Tw -(reopened after )Tj -/TT10 1 Tf -6.7051 0 TD -(LOGOUT)Tj -/TT6 1 Tf -3.6006 0 TD -(.)Tj --10.3057 -2.9556 TD -0.2867 Tw -(Interlisp supports simultaneous access to the same server from different processes and permits)Tj -0 -1.2222 TD -0.1989 Tw -(overlapping of Lisp computation with file server operations, allowing for improved performance.)Tj -T* -0.0144 Tw -(However, as a corollary of this, a file is not closed the instant that )Tj -/TT10 1 Tf -29.232 0 TD -0 Tw -(CLOSEF)Tj -/TT6 1 Tf -3.6006 0 TD -0.0144 Tw -[( returns; Interlisp closes the)]TJ --32.8326 -1.2889 TD -0.2178 Tw -[(file "in the bckground". It is therefore very important that you exit Interlisp via)]TJ -/TT10 1 Tf -38.0128 0 TD -0.5211 Tw -[( \(LOGOUT\))]TJ -/TT6 1 Tf -5.922 0 TD -0.2178 Tw -[( or)]TJ -/TT10 1 Tf --43.9347 -1.2889 TD -0 Tw -(\(LOGOUT T\))Tj -/TT6 1 Tf -6.001 0 TD -(, rather than boot the machine.)Tj --6.001 -2.9556 TD -0.0778 Tw -(On rare occasions, the Ethernet may appear completely unresponsive, due to Interlisp having gotten)Tj -0 -1.2222 TD -0.1111 Tw -[(into a bad state. Type )]TJ -/TT10 1 Tf -10.63 0 TD -0 Tw -(\(RESTART.ETHER\))Tj -/TT6 1 Tf -9.0015 0 TD -0.1111 Tw -[( to reinitialize Lisps Ethernet driver\(s\), just as when the)]TJ --19.6315 -1.2889 TD -0 Tw -(Lisp system is started up following a )Tj -/TT10 1 Tf -16.5186 0 TD -(LOGOUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(SYSOUT)Tj -/TT6 1 Tf -3.6006 0 TD -(, etc.)Tj -ET -endstream -endobj -130 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT10 8 0 R -/TT12 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -9 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -131 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -132 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -133 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -134 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -135 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -136 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -137 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -138 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -139 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -140 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 131 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 278 278 -0 0 556 556 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 0 722 722 667 611 0 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 0 667 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 132 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 0 371 0 0 840 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 0 0 606 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 133 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 250 0 250 0 -0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 -0 722 0 0 0 611 556 722 0 333 0 0 556 944 778 778 -0 0 0 556 611 778 722 944 0 0 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 0 444 278 778 556 444 -500 0 389 389 333 556 500 722 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 134 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 600 0 0 600 600 600 0 600 600 600 600 -600 600 600 600 0 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 135 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [278 0 0 0 0 0 667 0 0 333 0 0 0 333 278 0 -0 0 0 0 0 0 0 0 0 0 278 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 0 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 0 500 556 556 278 556 556 222 0 0 222 0 556 556 -0 0 333 500 278 556 0 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 136 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 600 -0 600 0 0 0 0 0 0 0 0 600 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 137 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 0 0 0 0 0 0 0 333 0 0 0 0 250 0 -0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 138 0 R ->> -endobj -29 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 62 -/LastChar 62 -/Widths [600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 139 0 R ->> -endobj -115 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 140 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -11 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 13 0 R -/Contents 12 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -78 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 80 0 R -/Contents 79 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -84 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 86 0 R -/Contents 85 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -109 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 111 0 R -/Contents 110 0 R ->> -endobj -112 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 114 0 R -/Contents 113 0 R ->> -endobj -116 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 118 0 R -/Contents 117 0 R ->> -endobj -119 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 121 0 R -/Contents 120 0 R ->> -endobj -122 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 124 0 R -/Contents 123 0 R ->> -endobj -125 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 127 0 R -/Contents 126 0 R ->> -endobj -128 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 130 0 R -/Contents 129 0 R ->> -endobj -141 0 obj -<< -/S /D ->> -endobj -142 0 obj -<< -/Nums [0 141 0 R ] ->> -endobj -10 0 obj -<< -/Type /Pages -/Kids [1 0 R 11 0 R 17 0 R 20 0 R 23 0 R 26 0 R 30 0 R 33 0 R 36 0 R 39 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [42 0 R 47 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -77 0 obj -<< -/Type /Pages -/Kids [74 0 R 78 0 R 81 0 R 84 0 R 87 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -108 0 obj -<< -/Type /Pages -/Kids [105 0 R 109 0 R 112 0 R 116 0 R 119 0 R 122 0 R 125 0 R 128 0 R] -/Count 8 -/Parent 45 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [10 0 R 46 0 R 77 0 R 108 0 R ] -/Count 38 -/MediaBox [0 0 612 792] ->> -endobj -143 0 obj -<< -/CreationDate (D:20210202102710-06'00') -/ModDate (D:20210202102710-06'00') -/Producer (Apple pstopdf) ->> -endobj -144 0 obj -<< -/Type /Catalog -/Pages 45 0 R -/PageLabels 142 0 R ->> -endobj -xref -0 145 -0000000000 65535 f -0000225489 00000 n -0000000016 00000 n -0000004786 00000 n -0000221618 00000 n -0000221830 00000 n -0000222277 00000 n -0000222844 00000 n -0000223278 00000 n -0000219463 00000 n -0000228786 00000 n -0000225570 00000 n -0000004926 00000 n -0000012258 00000 n -0000223836 00000 n -0000224253 00000 n -0000224728 00000 n -0000225654 00000 n -0000012427 00000 n -0000018855 00000 n -0000225738 00000 n -0000019013 00000 n -0000024719 00000 n -0000225822 00000 n -0000024886 00000 n -0000029783 00000 n -0000225906 00000 n -0000029926 00000 n -0000036985 00000 n -0000225143 00000 n -0000225990 00000 n -0000037154 00000 n -0000042762 00000 n -0000226074 00000 n -0000042929 00000 n -0000046133 00000 n -0000226158 00000 n -0000046300 00000 n -0000051429 00000 n -0000226242 00000 n -0000051585 00000 n -0000057850 00000 n -0000226326 00000 n -0000058030 00000 n -0000064331 00000 n -0000229332 00000 n -0000228923 00000 n -0000226410 00000 n -0000064500 00000 n -0000070720 00000 n -0000226494 00000 n -0000070889 00000 n -0000077343 00000 n -0000226578 00000 n -0000077523 00000 n -0000083635 00000 n -0000226662 00000 n -0000083802 00000 n -0000089871 00000 n -0000226746 00000 n -0000090038 00000 n -0000094917 00000 n -0000226830 00000 n -0000095062 00000 n -0000100420 00000 n -0000226914 00000 n -0000100565 00000 n -0000104825 00000 n -0000226998 00000 n -0000104981 00000 n -0000111195 00000 n -0000227082 00000 n -0000111362 00000 n -0000116875 00000 n -0000227166 00000 n -0000117029 00000 n -0000122961 00000 n -0000229061 00000 n -0000227250 00000 n -0000123128 00000 n -0000129098 00000 n -0000227334 00000 n -0000129265 00000 n -0000133460 00000 n -0000227418 00000 n -0000133605 00000 n -0000137643 00000 n -0000227502 00000 n -0000137775 00000 n -0000143458 00000 n -0000227586 00000 n -0000143625 00000 n -0000148890 00000 n -0000227670 00000 n -0000149046 00000 n -0000154043 00000 n -0000227754 00000 n -0000154210 00000 n -0000160452 00000 n -0000227838 00000 n -0000160632 00000 n -0000167631 00000 n -0000227924 00000 n -0000167812 00000 n -0000175605 00000 n -0000228011 00000 n -0000175775 00000 n -0000182646 00000 n -0000229200 00000 n -0000228099 00000 n -0000182827 00000 n -0000188221 00000 n -0000228187 00000 n -0000188380 00000 n -0000193125 00000 n -0000225313 00000 n -0000228275 00000 n -0000193320 00000 n -0000198912 00000 n -0000228363 00000 n -0000199069 00000 n -0000204482 00000 n -0000228451 00000 n -0000204628 00000 n -0000209230 00000 n -0000228539 00000 n -0000209398 00000 n -0000216003 00000 n -0000228627 00000 n -0000216160 00000 n -0000219319 00000 n -0000219603 00000 n -0000219801 00000 n -0000220008 00000 n -0000220209 00000 n -0000220413 00000 n -0000220605 00000 n -0000220801 00000 n -0000221003 00000 n -0000221209 00000 n -0000221412 00000 n -0000228715 00000 n -0000228744 00000 n -0000229439 00000 n -0000229563 00000 n -trailer -<< -/Size 145 -/Root 144 0 R -/Info 143 0 R -/ID [<835ce4cd2a632e392baecfd39996735d><835ce4cd2a632e392baecfd39996735d>] ->> -startxref -229635 -%%EOF diff --git a/docs/medley-irm/24-IO.pdf b/docs/medley-irm/24-IO.pdf deleted file mode 100644 index aed620de..00000000 --- a/docs/medley-irm/24-IO.pdf +++ /dev/null @@ -1,19565 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4812 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-1)Tj -/TT4 1 Tf -10 0 0 10 54 558.2 Tm -( 24. INPUT/OUTPUT FUNCTIONS)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 549.2 m -510.01 549.2 l -S -BT -/TT6 1 Tf -10 0 0 10 509.9999 548.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 524.54 Tm -0.2489 Tw -(This chapter describes the standard I/O functions used for reading and printing characters and)Tj -0 -1.2222 TD -0.1433 Tw -[(Interlisp expressions on files and other streams. First, the primitive input functions are presented,)]TJ -T* -0.0644 Tw -(then the output functions, then functions for random-access operations \(such as searching a file for a)Tj -T* -0.1256 Tw -[(given stream, or changing the "next-character" pointer to a position in a file\). Next, the )]TJ -/TT10 1 Tf -40.5426 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf --40.5426 -1.2889 TD -0.38 Tw -(statement is documented \(see below\), which provides an easy way to write complex output)Tj -0 -1.2222 TD -0 Tw -(operations. Finally, read tables, used to parse characters as Interlisp expressions, are documented.)Tj -/TT4 1 Tf -10 0 0 10 54 426.6 Tm -(Specifying Streams for Input/Output Functions)Tj -ET -1 w -54.01 423.89 m -510.01 423.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 401.94 Tm -0.3033 Tw -(Most of the input/output functions in Interlisp-D have an argument named )Tj -/TT12 1 Tf -37.033 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.3033 Tw -[( or )]TJ -/TT12 1 Tf -2.0476 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj --45.0815 -1.2889 TD -0.07 Tw -(specifying on which open stream the functions action should occur \(the name )Tj -/TT12 1 Tf -35.61 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( is used in older)]TJ --38.0104 -1.2889 TD -0.1589 Tw -(functions that predate the concept of stream; the two should, however, be treated synonymously\).)Tj -0 -1.2222 TD -0 Tw -(The value of this argument should be one of the following:)Tj -5.5756 -2 TD -0.0467 Tw -[(a )46.7(stream)-1334.3(An object of type )]TJ -/TT10 1 Tf -13.061 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -(, as returned by )Tj -/TT10 1 Tf -7.34 0 TD -0 Tw -(OPENSTREAM)Tj -/TT8 1 Tf -6.001 0 TD -0.0467 Tw -[( \(Chapter 23\) or)]TJ --24.9114 -1.2889 TD -0.39 Tw -(other stream-producing functions, is always the most precise and)Tj -0 -1.2222 TD -0 Tw -(efficient way to designate a stream argument.)Tj -/TT10 1 Tf --1.9333 -2 TD -(T)Tj -/TT8 1 Tf -1.9333 0 TD -0.2167 Tw -(The litatom )Tj -/TT10 1 Tf -5.7702 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2167 Tw -[( designates the terminal input or output stream of the)]TJ --6.3703 -1.2889 TD -0.2611 Tw -(currently running process, controlling input from the keyboard and)Tj -0 -1.2222 TD -0.1067 Tw -[(output to the display screen. For functions where the direction \(input)]TJ -T* -0.1844 Tw -(or output\) is ambiguous, )Tj -/TT10 1 Tf -11.9409 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1844 Tw -[( is taken to designate the terminal output)]TJ --12.541 -1.2889 TD -0 Tw -(stream. The )Tj -/TT10 1 Tf -5.6807 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( streams are always open; they cannot be closed.)Tj --6.2808 -2.0667 TD -0.1678 Tw -(The terminal output stream can be set to a given window or display)Tj -0 -1.2222 TD -0.0267 Tw -(stream by using )Tj -/TT10 1 Tf -7.4023 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9.6016 0 TD -0.0267 Tw -[( \(Chapter 28\). The terminal input)]TJ --17.0038 -1.2889 TD -0.0833 Tw -[(stream cannot be changed. For more information on terminal I/O, see)]TJ -0 -1.2222 TD -0 Tw -(Chapter 30.)Tj -/TT10 1 Tf --3.1333 -2 TD -(NIL)Tj -/TT8 1 Tf -3.1333 0 TD -(The litatom )Tj -/TT10 1 Tf -5.3369 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( designates the "primary" input or output stream. These)Tj --7.1372 -1.2889 TD -0.0367 Tw -(streams are initially the same as the terminal input/output streams, but)Tj -0 -1.2222 TD -0 Tw -(they can be changed by using the functions )Tj -/TT10 1 Tf -19.3389 0 TD -(INPUT)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(OUTPUT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --28.1328 -2.0667 TD -0.1022 Tw -(For functions where the direction \(input or output\) is ambiguous, e.g.,)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(GETFILEPTR)Tj -/TT8 1 Tf -6.001 0 TD -0.1856 Tw -(, the argument )Tj -/TT10 1 Tf -7.2681 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1856 Tw -[( is taken to mean the primary input)]TJ --15.0694 -1.2889 TD -0.0878 Tw -(stream, if that stream is not identical to the terminal input stream, else)Tj -0 -1.2222 TD -0 Tw -(the primary output stream. )Tj --5.7822 -2 TD -[(a window)-1334.5(Uses the display stream of the window . Valid for output only.)]TJ --0.39 -2 TD -0.0322 Tw -[(a )32.2(file )32.2(name)-1334.3(As of this writing, the name of an open file \(as a litatom\) can be used as)]TJ -6.1722 -1.2222 TD -0.2889 Tw -[(a stream argument. However, there are inefficiencies and possible)]TJ -T* -0.1611 Tw -[(future incompatibilities associated with doing so. See Chapter 24 for)]TJ -T* -0 Tw -(details.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 6201 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETSTREAM)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ACCESS)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 273.3105 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0233 Tw -(Coerces the argument )Tj -/TT12 1 Tf -10.007 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( to a stream by the above rules. If )]TJ -/TT12 1 Tf -15.3637 0 TD -0 Tw -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -[( is )]TJ -/TT10 1 Tf -1.2615 0 TD -0 Tw -(INPUT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5233 0 TD -(OUTPUT)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --39.7576 -1.2889 TD -(or )Tj -/TT10 1 Tf -1.5898 0 TD -(BOTH)Tj -/TT8 1 Tf -2.4004 0 TD -0.3989 Tw -(, produces the stream designated by )Tj -/TT12 1 Tf -18.6082 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3989 Tw -[( that is open for )]TJ -/TT12 1 Tf -9.1756 0 TD -0 Tw -(ACCESS)Tj -/TT8 1 Tf -3.6006 0 TD -0.3989 Tw -[(. If)]TJ -/TT12 1 Tf --37.775 -1.2889 TD -0 Tw -(ACCESS)Tj -/TT10 1 Tf -3.6006 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0978 Tw -(, returns a stream for )Tj -/TT12 1 Tf -9.9738 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0978 Tw -[( open for any kind of input/output \(see the list)]TJ --18.3751 -1.2889 TD -0.0078 Tw -[(above for the ambiguous cases\). If )]TJ -/TT12 1 Tf -15.5911 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0078 Tw -[( does not designate a stream open in the specified)]TJ --17.9915 -1.2889 TD -0 Tw -(mode, causes an error, )Tj -/TT10 1 Tf -10.1841 0 TD -(FILE NOT OPEN)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --20.652 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(STREAMP)Tj -/TT10 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT8 1 Tf -32.0698 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a )Tj -/TT10 1 Tf -1.9648 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(, otherwise )Tj -/TT10 1 Tf -5.106 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 424.06 Tm -(Input Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 421.35 m -558.01 421.35 l -S -BT -/TT8 1 Tf -9 0 0 9 126 399.4 Tm -0.0133 Tw -(While the functions described below can take input from any stream, some special actions occur when)Tj -0 -1.2222 TD -0.0633 Tw -(the input is from the terminal \(the )Tj -/TT10 1 Tf -16.0233 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0633 Tw -[( input stream, see above\). When reading from the terminal, the)]TJ --16.6234 -1.2889 TD -0.0444 Tw -(input is buffered a line at a time, unless buffering has been inhibited by )Tj -/TT10 1 Tf -32.3678 0 TD -0 Tw -(CONTROL)Tj -/TT8 1 Tf -4.2007 0 TD -0.0444 Tw -[( \(Chapter 30\) or the)]TJ --36.5685 -1.2889 TD -0.04 Tw -(input is being read by )Tj -/TT10 1 Tf -10.1238 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.04 Tw -[( or )]TJ -/TT10 1 Tf -1.5209 0 TD -0 Tw -(PEEKC)Tj -/TT8 1 Tf -3.0005 0 TD -0.04 Tw -[(. Using specified editing characters, you can erase a character)]TJ --17.6457 -1.2889 TD -0.17 Tw -[(at a time, a word at a time, or the whole line. The keys that perform these editing functions are)]TJ -0 -1.2222 TD -0.1833 Tw -(assignable via )Tj -/TT10 1 Tf -6.8227 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.1833 Tw -(, with the initial settings chosen to be those most natural for the given)Tj --12.2236 -1.2889 TD -0.0133 Tw -[(operating system. In Interlisp-D, the initial settings are as follows: characters are deleted one at a time)]TJ -0 -1.2222 TD -0 Tw -(by Backspace; words are erased by control-W; the whole line is erased by Control-Q.)Tj -0 -2.8889 TD -0.0544 Tw -(On the Interlisp-D display, deleting a character or a line causes the characters to be physically erased)Tj -0 -1.2222 TD -0.1922 Tw -[(from the screen. In Interlisp-10, the deleting action can be modified for various types of display)]TJ -T* -0 Tw -(terminals by using )Tj -/TT10 1 Tf -8.4863 0 TD -(DELETECONTROL)Tj -/TT8 1 Tf -7.8013 0 TD -( \(Chapter 30\).)Tj --16.2876 -2.9556 TD -0.1178 Tw -(Unless otherwise indicated, when the end of file is encountered while reading from a file, all input)Tj -0 -1.2222 TD -0.2244 Tw -(functions generate an error, )Tj -/TT10 1 Tf -13.367 0 TD -0.5389 Tw -(END OF FILE)Tj -/TT8 1 Tf -7.6789 0 TD -0.2244 Tw -[(. Note that this does not close the input file. The)]TJ -/TT10 1 Tf --21.0459 -1.2889 TD -0 Tw -(ENDOFSTREAMOP)Tj -/TT8 1 Tf -7.8013 0 TD -( stream attribute \(Chapter 24\) is useful for changing the behavior at end of file.)Tj --7.8013 -2.9556 TD -0.1489 Tw -(Most input functions have a )Tj -/TT12 1 Tf -13.3963 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.1489 Tw -[( argument, which specifies the read table to be used for input.)]TJ --16.3968 -1.2889 TD -0 Tw -(Unless otherwise specified, if )Tj -/TT12 1 Tf -13.1602 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the primary read table is used.)Tj --19.1758 -2.9556 TD -(If the )Tj -/TT12 1 Tf -2.5571 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( or )Tj -/TT12 1 Tf -1.4409 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( argument to an input function is )Tj -/TT10 1 Tf -14.8535 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the primary input stream is used.)Tj -/TT10 1 Tf --23.9862 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(INPUT)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 217.0553 135.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 135.06 Tm -([Function])Tj --35.4033 -1.8444 TD -(Sets )Tj -/TT12 1 Tf -2.0406 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -[( as the primary input stream; returns the old primary input stream. )]TJ -/TT12 1 Tf -30.6393 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -[( must)]TJ --37.4806 -1.2889 TD -0 Tw -(be open for input.)Tj -/TT10 1 Tf -0 -2 TD -(\(INPUT\))Tj -/TT8 1 Tf -4.2007 0 TD -( returns the current primary input stream, which is not changed.)Tj --4.2007 -2.0667 TD -(Note: If the primary input stream is set to a file, the files full name, rather than the stream)Tj -0 -1.2222 TD -(itself, is returned. See discussion in Chapter 24.)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -18 0 obj -<< -/Length 7998 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READ)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 211.3623 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2678 Tw -(Reads one expression from )Tj -/TT12 1 Tf -13.2532 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2678 Tw -[(. Atoms are delimited by the break and separator)]TJ --15.6536 -1.2889 TD -0.0378 Tw -(characters as defined in )Tj -/TT12 1 Tf -10.8225 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -[(. To include a break or separator character in an atom, the)]TJ --13.823 -1.2889 TD -0.1289 Tw -(character must be preceded by the character )Tj -/TT10 1 Tf -20.6454 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.1289 Tw -(, e.g., )Tj -/TT10 1 Tf -2.7929 0 TD -0 Tw -(AB%\(C)Tj -/TT8 1 Tf -3.0005 0 TD -0.1289 Tw -[( is the atom )]TJ -/TT10 1 Tf -5.8725 0 TD -0 Tw -(AB\(C)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6289 0 TD -(%%)Tj -/TT8 1 Tf -1.2002 0 TD -0.1289 Tw -[( is the)]TJ --37.1409 -1.2889 TD -0 Tw -(atom )Tj -/TT10 1 Tf -2.5149 0 TD -(%)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.51 0 TD -(%)Tj -/TT16 1 Tf -0.6001 0 TD -(control-K)Tj -/TT8 1 Tf -3.8511 0 TD -0.01 Tw -[( is the atom Control-K. For input from the terminal, an atom containing)]TJ --8.0762 -1.2889 TD -0.3178 Tw -(an interrupt character can be input by typing instead the corresponding alphabetic)Tj -0 -1.2222 TD -0 Tw -(character preceded by Control-V, e.g., )Tj -/TT10 1 Tf -17.0083 0 TD -(^VD)Tj -/TT8 1 Tf -1.8003 0 TD -( for Control-D.)Tj --18.8086 -2.0667 TD -0.0633 Tw -[(Strings are delimited by double quotes. To input a string containing a double quote or a)]TJ -0 -1.2222 TD -0.1 Tw -(%, precede it by %, e.g., )Tj -/TT10 1 Tf -11.2792 0 TD -0 Tw -("AB%"C")Tj -/TT8 1 Tf -4.2007 0 TD -0.1 Tw -[( is the string )]TJ -/TT10 1 Tf -6.0763 0 TD -0 Tw -(AB"C)Tj -/TT8 1 Tf -2.4004 0 TD -0.1 Tw -[(. Note that % can always be typed)]TJ --23.9565 -1.2889 TD -0 Tw -(even if next character is not "special", e.g., )Tj -/TT10 1 Tf -18.6733 0 TD -(%A%B%C)Tj -/TT8 1 Tf -3.6006 0 TD -( is read as )Tj -/TT10 1 Tf -4.6235 0 TD -(ABC)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --28.6978 -2.0667 TD -0.2056 Tw -(If an atom is interpretable as a number, )Tj -/TT10 1 Tf -19.2328 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.2056 Tw -[( creates a number, e.g., )]TJ -/TT10 1 Tf -11.3549 0 TD -0 Tw -(1E3)Tj -/TT8 1 Tf -1.8003 0 TD -0.2056 Tw -[( reads as a)]TJ --34.7884 -1.2889 TD -0.0678 Tw -(floating point number, )Tj -/TT10 1 Tf -10.4699 0 TD -0 Tw -(1D3)Tj -/TT8 1 Tf -1.8003 0 TD -0.0678 Tw -[( as a literal atom, )]TJ -/TT10 1 Tf -8.0908 0 TD -0 Tw -(1.0)Tj -/TT8 1 Tf -1.8003 0 TD -0.0678 Tw -[( as a number, )]TJ -/TT10 1 Tf -6.4401 0 TD -0 Tw -(1,0)Tj -/TT8 1 Tf -1.8003 0 TD -0.0678 Tw -[( as a literal atom, etc.)]TJ --30.4017 -1.2889 TD -0.0689 Tw -(An integer can be input in a non-decimal radix by using syntax such as )Tj -/TT10 1 Tf -32.568 0 TD -0 Tw -(123Q)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -(, |)Tj -/TT10 1 Tf -1.1748 0 TD -0 Tw -(b10101)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --39.7438 -1.2889 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(5r1234)Tj -/TT8 1 Tf -3.6006 0 TD -( \(see Chapter 7\). The function )Tj -/TT10 1 Tf -13.521 0 TD -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -(, sets the radix used to print integers.)Tj --20.728 -2.0667 TD -0.2022 Tw -(When reading from the terminal, all input is line-buffered to enable the action of the)Tj -0 -1.2222 TD -0.2678 Tw -(backspacing control characters, unless inhibited by )Tj -/TT10 1 Tf -24.345 0 TD -0 Tw -(CONTROL)Tj -/TT8 1 Tf -4.2007 0 TD -0.2678 Tw -[( \(Chapter 30\). Thus no)]TJ --28.5456 -1.2889 TD -0.06 Tw -(characters are actually seen by the program until a carriage-return \(actually the character)Tj -0 -1.2222 TD -0.0333 Tw -(with terminal syntax class )Tj -/TT10 1 Tf -11.9004 0 TD -0 Tw -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0333 Tw -[(, see Chapter 30\), is typed. However, for reading by )]TJ -/TT10 1 Tf -23.6391 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj --39.7402 -1.2889 TD -0.2033 Tw -(when a matching right parenthesis is encountered, the effect is the same as though a)Tj -0 -1.2222 TD -0.0722 Tw -[(carriage-return were typed, i.e., the characters are transmitted. To indicate this, Interlisp)]TJ -T* -0.0656 Tw -[(also prints a carriage-return line-feed on the terminal. The line buffer is also transmitted)]TJ -T* -0 Tw -(to )Tj -/TT10 1 Tf -1.1221 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -( whenever an )Tj -/TT10 1 Tf -6.2271 0 TD -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -( read macro character is typed \(see below\).)Tj -/TT12 1 Tf --15.1504 -2.0667 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -0.0111 Tw -[( suppresses the carriage-return normally typed by )]TJ -/TT10 1 Tf -22.4684 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( following a matching right)]TJ --27.8693 -1.2889 TD -0.0178 Tw -[(parenthesis. \(However, the characters are still given to )]TJ -/TT10 1 Tf -24.6742 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -(; i.e., you do not have to type)Tj --27.0746 -1.2889 TD -0 Tw -(the carriage-return.\))Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 192.9141 238.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 238.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0022 Tw -(Reads in one atom from )Tj -/TT12 1 Tf -10.8344 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -(. Separation of atoms is defined by )Tj -/TT12 1 Tf -15.7805 0 TD -0 Tc -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0022 Tw -(. )Tj -/TT10 1 Tf -0.7544 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.0001 Tc -0.0021 Tw -( is also defined)Tj --33.3703 -1.2889 TD -0 Tc -0 Tw -(for )Tj -/TT10 1 Tf -1.5961 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0722 Tw -(, and the remarks concerning line-buffering and editing control characters also)Tj --4.5966 -1.2889 TD -0 Tw -(apply.)Tj -0 -2 TD -0.1989 Tw -(If the characters comprising the atom would normally be interpreted as a number by)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -(, that number is returned by )Tj -/TT10 1 Tf -13.7205 0 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1744 Tw -[(. Note however that )]TJ -/TT10 1 Tf -10.1686 0 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1744 Tw -[( takes no special)]TJ --32.2905 -1.2889 TD -0 Tw -(action for )Tj -/TT10 1 Tf -4.4629 0 TD -(")Tj -/TT8 1 Tf -0.6001 0 TD -( whether or not it is a break character, i.e., )Tj -/TT10 1 Tf -18.7227 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -( never makes a string.)Tj -/TT10 1 Tf --29.4528 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RSTRING)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 203.7088 135.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 135.32 Tm -([Function])Tj --35.4033 -1.8444 TD -0.3367 Tw -(Reads characters from )Tj -/TT12 1 Tf -11.0871 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3367 Tw -[( up to, but not including, the next break or separator)]TJ --13.4875 -1.2889 TD -0.0267 Tw -[(character, and returns them as a string. Backspace, Control-W, Control-Q, Control-V, and)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -( have the same effect as with )Tj -/TT10 1 Tf -12.8999 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --21.2337 -2.9556 TD -0.0711 Tw -(Note that the break or separator character that terminates a call to )Tj -/TT10 1 Tf -30.1297 0 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -[( or )]TJ -/TT10 1 Tf -1.5831 0 TD -0 Tw -(RSTRING)Tj -/TT8 1 Tf -4.2007 0 TD -0.0711 Tw -[( is )]TJ -/TT16 1 Tf -1.3571 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0711 Tw -[( read by)]TJ --41.6041 -1.2889 TD -0.0356 Tw -(that call, but remains in the buffer to become the first character seen by the next reading function that)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -21 0 obj -<< -/Length 7998 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.18 Tw -[(is called. If that function is )]TJ -/TT10 1 Tf -13.4167 0 TD -0 Tw -(RSTRING)Tj -/TT8 1 Tf -4.2007 0 TD -0.18 Tw -[(, it will return the null string. This is a common source of)]TJ --17.6174 -1.2889 TD -0 Tw -(program bugs.)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RATOMS)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(A)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -[(\) )-23915.4([Function])]TJ -/TT8 1 Tf --8.2843 -1.8444 TD -(Calls )Tj -/TT10 1 Tf -2.6171 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.1522 Tw -[( repeatedly until the atom )]TJ -/TT12 1 Tf -12.4637 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.1522 Tw -[( is read. Returns a list of the atoms read, not)]TJ --18.6814 -1.2889 TD -0 Tw -(including )Tj -/TT12 1 Tf -4.501 0 TD -(A)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --7.7677 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RATEST)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 217.0544 485.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 485.8 Tm -([Function])Tj --35.4033 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.071 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.4011 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.4011 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6511 0 TD -(RATEST)Tj -/TT8 1 Tf -3.6006 0 TD -0.1511 Tw -[( returns )]TJ -/TT10 1 Tf -4.0063 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1511 Tw -[( if a separator was encountered immediately prior to the)]TJ --13.7319 -1.2889 TD -0 Tw -(atom returned by the last )Tj -/TT10 1 Tf -11.4126 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj --20.5547 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9233 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.2533 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.2533 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5033 0 TD -(RATEST)Tj -/TT8 1 Tf -3.6006 0 TD -0.0004 Tc -0.0029 Tw -( returns )Tj -/TT10 1 Tf -3.7108 0 TD -0 Tc -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0002 Tc -0.0031 Tw -( if last atom read by )Tj -/TT10 1 Tf -9.0342 0 TD -0 Tc -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0008 Tc -0.0025 Tw -( or )Tj -/TT10 1 Tf -1.4476 0 TD -0 Tc -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( was a break character,)Tj -/TT10 1 Tf --29.928 -1.2889 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj --1.8003 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9699 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT10 1 Tf -0.3 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3 0 TD -(1)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.55 0 TD -(RATEST)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -[( returns )]TJ -/TT10 1 Tf -3.8041 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( if last atom read \(by )]TJ -/TT10 1 Tf -9.6472 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.05 Tw -[( or )]TJ -/TT10 1 Tf -1.5409 0 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.05 Tw -(\) contained a )Tj -/TT10 1 Tf -6.0938 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( used to)]TJ --36.4081 -1.2889 TD -0 Tw -(quote the next character \(as in )Tj -/TT10 1 Tf -13.4995 0 TD -(%[)Tj -/TT8 1 Tf -1.2002 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(%A%B%C)Tj -/TT8 1 Tf -3.6006 0 TD -(\), )Tj -/TT10 1 Tf -0.833 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --25.0412 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READC)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.5994 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 249.4597 374.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 374.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1022 Tw -(Reads and returns the next character, including )Tj -/TT10 1 Tf -21.9006 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.6022 0 TD -(")Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -(, etc, i.e., is not affected by break or)Tj --23.703 -1.2889 TD -0.0222 Tw -[(separator characters. The action of )]TJ -/TT10 1 Tf -15.7798 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0222 Tw -[( is subject to line-buffering, i.e., )]TJ -/TT10 1 Tf -14.1548 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0222 Tw -[( does not)]TJ --35.9356 -1.2889 TD -0.0144 Tw -[(return a value until the line has been terminated even if a character has been typed. Thus,)]TJ -0 -1.2222 TD -0.0989 Tw -(the editing control characters have their usual effect. )Tj -/TT12 1 Tf -24.5463 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0989 Tw -[( does not directly affect the)]TJ --27.5467 -1.2889 TD -0.1278 Tw -(value returned, but is used as usual in line-buffering, e.g., determining when input has)Tj -0 -1.2222 TD -0.2678 Tw -[(been terminated. If )]TJ -/TT10 1 Tf -9.9564 0 TD -0.6422 Tw -(\(CONTROL T\))Tj -/TT8 1 Tf -7.2433 0 TD -0.2678 Tw -[( has been executed \(Chapter 30\), defeating line-)]TJ --17.1997 -1.2889 TD -0.2044 Tw -(buffering, the )Tj -/TT12 1 Tf -6.6716 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.2044 Tw -[( argument is irrelevant, and )]TJ -/TT10 1 Tf -13.5574 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.2044 Tw -[( returns a value as soon as a)]TJ --26.2299 -1.2889 TD -(character is typed \(even if the character typed is one of the editing characters, which)Tj -0 -1.2222 TD -0 Tw -(ordinarily would never be seen in the input buffer\).)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PEEKC)Tj -/TT10 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.5994 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 220.2053 244.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 244.32 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0433 Tw -[(Returns the next character, but does not actually read it and remove it from the buffer. If)]TJ -0 -1.2222 TD -0.0311 Tw -(reading from the terminal, the character is echoed as soon as )Tj -/TT10 1 Tf -27.3002 0 TD -0 Tw -(PEEKC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0311 Tw -[( reads it, even though)]TJ --30.3007 -1.2889 TD -0 Tw -(it is then "put back" into the system buffer, where Backspace, Control-W, etc. could change)Tj -0 -1.2222 TD -0.07 Tw -[(it. Thus it is possible for the value returned by )]TJ -/TT10 1 Tf -21.6284 0 TD -0 Tw -(PEEKC)Tj -/TT8 1 Tf -3.0005 0 TD -0.07 Tw -[( to "disagree" in the first character)]TJ --24.6289 -1.2889 TD -0 Tw -(with a subsequent )Tj -/TT10 1 Tf -8.3164 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --13.3835 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(LASTC)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 217.0553 159.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 159.58 Tm -([Function])Tj --35.4033 -1.8444 TD -0.04 Tw -(Returns the last character read from )Tj -/TT12 1 Tf -16.3518 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(. )Tj -/TT10 1 Tf -0.54 0 TD -0.0956 Tw -[( LASTC)]TJ -/TT8 1 Tf -4.3918 0 TD -0.04 Tw -[( can return an incorrect result when)]TJ --23.684 -1.2889 TD -0 Tw -(called immediatley following a )Tj -/TT10 1 Tf -13.9756 0 TD -(PEEKC)Tj -/TT8 1 Tf -3.0005 0 TD -( on a file that contains run-coded NS characters.)Tj -/TT10 1 Tf --19.6427 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READCCODE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 262.5088 108.44 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 108.44 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1611 Tw -(Returns the next character )Tj -/TT16 1 Tf -12.477 0 TD -0 Tw -(code)Tj -/TT8 1 Tf -1.7402 0 TD -0.1611 Tw -[( from )]TJ -/TT12 1 Tf -2.979 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1611 Tw -(; thus, this operation is equivalent to, but)Tj --20.7967 -1.2889 TD -0 Tw -(more efficient than, )Tj -/TT10 1 Tf -8.8511 0 TD -(\(CHCON1 \(READC)Tj -/TT18 1 Tf -8.4014 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -25 0 obj -<< -/Length 7797 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PEEKCCODE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 190.6552 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0589 Tw -(Returns, without consuming, the next character )Tj -/TT16 1 Tf -21.6048 0 TD -0 Tw -(code)Tj -/TT8 1 Tf -1.7402 0 TD -0.0589 Tw -[( from )]TJ -/TT12 1 Tf -2.7745 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0589 Tw -(; thus, this operation is)Tj --29.7201 -1.2889 TD -0 Tw -(equivalent to, but more efficient than, )Tj -/TT10 1 Tf -16.8818 0 TD -(\(CHCON1 \(PEEKC)Tj -/TT18 1 Tf -8.4014 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --31.8005 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(BIN)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 163.6561 517.06 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 517.06 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2278 Tw -(Returns the next byte from )Tj -/TT12 1 Tf -13.2278 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2278 Tw -[(. This operation is useful for reading streams of)]TJ --16.8283 -1.2889 TD -0 Tw -(binary, rather than character, data.)Tj -0 -2.3333 TD -(Note: )Tj -/TT10 1 Tf -4 0 TD -(BIN)Tj -/TT8 1 Tf -1.8003 0 TD -( is similar to )Tj -/TT10 1 Tf -5.6616 0 TD -(READCCODE)Tj -/TT8 1 Tf -5.4009 0 TD -(, except that )Tj -/TT10 1 Tf -5.5796 0 TD -(BIN)Tj -/TT8 1 Tf -1.8003 0 TD -( always reads a single byte,)Tj --20.2427 -1.2889 TD -(whereas )Tj -/TT10 1 Tf -3.9429 0 TD -(READCCODE)Tj -/TT8 1 Tf -5.4009 0 TD -( reads a "character" that can consist of more than one byte,)Tj --9.3437 -1.2889 TD -(depending on the character and its encoding.)Tj -/TT10 1 Tf --9.3333 -2.8889 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5244 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5244 0 TD -(RATOMS)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5244 0 TD -(PEEKC)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5244 0 TD -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0244 Tw -[( all wait for input if there is none. The only way to test whether)]TJ --17.1002 -1.2889 TD -0 Tw -(or not there is input is to use )Tj -/TT10 1 Tf -12.8672 0 TD -(READP)Tj -/TT8 1 Tf -3.0005 0 TD -(:)Tj -/TT10 1 Tf --13.201 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READP)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 182.107 384.12 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 384.12 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.7815 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0544 Tw -[( if there is anything in the input buffer of )]TJ -/TT12 1 Tf -18.8589 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5544 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0544 Tw -[( otherwise. This operation)]TJ --27.9956 -1.2889 TD -0.0122 Tw -(is only interesting for streams whose source of data is dynamic, e.g., the terminal or a byte)Tj -0 -1.2222 TD -0.0478 Tw -(stream over a network; for other streams, such as to files, )Tj -/TT10 1 Tf -25.9347 0 TD -0 Tw -(\(READP)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.2978 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0478 Tw -[( is equivalent to)]TJ -/TT10 1 Tf --32.8336 -1.2889 TD -0 Tw -(\(NOT \(EOFP)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --9.8516 -2.0667 TD -0.0844 Tw -(Note that because of line-buffering, )Tj -/TT10 1 Tf -16.3011 0 TD -0 Tw -(READP)Tj -/TT8 1 Tf -3.0005 0 TD -0.0844 Tw -[( may return )]TJ -/TT10 1 Tf -5.7226 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0844 Tw -(, indicating there is input in the)Tj --25.6243 -1.2889 TD -0 Tw -(buffer, but )Tj -/TT10 1 Tf -4.9287 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -( may still have to wait.)Tj --7.3291 -2.0667 TD -0.1522 Tw -(Frequently, the terminals input buffer contains a single )Tj -/TT10 1 Tf -26.0488 0 TD -0 Tw -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1522 Tw -[( character left over from a)]TJ --27.8491 -1.2889 TD -0.1367 Tw -[(previous input. For most applications, this situation wants to be treated as though the)]TJ -0 -1.2222 TD -0.1167 Tw -(buffer were empty, and so )Tj -/TT10 1 Tf -12.4744 0 TD -0 Tw -(READP)Tj -/TT8 1 Tf -3.0005 0 TD -0.1167 Tw -[( returns )]TJ -/TT10 1 Tf -3.9374 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1167 Tw -[( in this case. However, if )]TJ -/TT12 1 Tf -12.1633 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6167 0 TD -(READP)Tj -/TT8 1 Tf --36.9932 -1.2889 TD -(returns )Tj -/TT10 1 Tf -3.6441 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.19 Tw -[( if there is )]TJ -/TT16 1 Tf -5.3601 0 TD -0 Tw -(any)Tj -/TT8 1 Tf -1.5 0 TD -0.19 Tw -[( character in the input buffer, including a single )]TJ -/TT10 1 Tf -23.0088 0 TD -0 Tw -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -0.19 Tw -(. )Tj -/TT12 1 Tf -1.13 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.19 Tw -[( is)]TJ --38.8437 -1.2889 TD -0 Tw -(ignored for streams other than the terminal.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(EOFP)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 163.6553 216.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 216.38 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0544 Tw -(Returns true if )Tj -/TT12 1 Tf -6.8176 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0544 Tw -[( is at "end of file", i.e., the next call to an input function would cause)]TJ --9.218 -1.2889 TD -0 Tw -(an )Tj -/TT10 1 Tf -1.4443 0 TD -0.2689 Tw -(END OF FILE)Tj -/TT8 1 Tf -7.1389 0 TD -0.1122 Tw -[( error; )]TJ -/TT10 1 Tf -3.1844 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1122 Tw -[( otherwise. For randomly accessible files, this can also be)]TJ --13.5678 -1.2889 TD -0.0244 Tw -(thought of as the file pointer pointing beyond the last byte of the file. )Tj -/TT12 1 Tf -31.2978 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0244 Tw -[( must be open)]TJ --33.6982 -1.2889 TD -0 Tw -(for \(at least\) input, or an error is generated, )Tj -/TT10 1 Tf -19.2944 0 TD -(FILE NOT OPEN)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj --27.0957 -2.0667 TD -0.0411 Tw -(Note that )Tj -/TT10 1 Tf -4.4987 0 TD -0 Tw -(EOFP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( can return )]TJ -/TT10 1 Tf -5.1795 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[( and yet the next call to )]TJ -/TT10 1 Tf -10.7805 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( might still cause an )]TJ -/TT10 1 Tf -9.2485 0 TD -0.0978 Tw -(END OF)Tj --36.3083 -1.2889 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3211 Tw -[( error, because the only characters remaining in the input were separators or)]TJ --2.4004 -1.2889 TD -0.0956 Tw -[(otherwise constituted an incomplete expression. The function )]TJ -/TT10 1 Tf -28.45 0 TD -0 Tw -(SKIPSEPRS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0956 Tw -[( is sometimes)]TJ --33.8509 -1.2889 TD -0.06 Tw -(more useful as a way of detecting end of file when it is known that all the expressions in)Tj -0 -1.2222 TD -0 Tw -(the file are well formed.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(WAITFORINPUT)Tj -/TT10 1 Tf -7.2012 0 TD -( )Tj -/TT12 1 Tf -0.5987 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 204.6044 78.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 78.24 Tm -([Function])Tj --35.4033 -1.8444 TD -(Waits until input is available from )Tj -/TT12 1 Tf -15.3794 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( or from the terminal, i.e. from )Tj -/TT10 1 Tf -13.6587 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf -0.75 0 TD -(WAITFORINPUT)Tj -/TT8 1 Tf --32.7886 -1.2889 TD -0.0933 Tw -(is functionally equivalent to )Tj -/TT10 1 Tf -12.9817 0 TD -0.2244 Tw -(\(until \(OR \(READP T\) \(READP FILE\)\) do NIL\))Tj -/TT8 1 Tf -26.7752 0 TD -0 Tw -(,)Tj -ET -endstream -endobj -26 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -28 0 obj -<< -/Length 7645 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0211 Tw -[(except that it does not use up machine cycles while waiting. Returns the device for which)]TJ -0 -1.2222 TD -0 Tw -(input is now available, i.e. )Tj -/TT12 1 Tf -11.8203 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT12 1 Tf --16.2617 -2.0667 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2022 Tw -[( can also be an integer, in which case )]TJ -/TT10 1 Tf -18.2819 0 TD -0 Tw -(WAITFORINPUT)Tj -/TT8 1 Tf -7.2012 0 TD -0.2022 Tw -[( waits until there is input)]TJ --27.8835 -1.2889 TD -0.0222 Tw -(available from the terminal, or until )Tj -/TT12 1 Tf -16.1787 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0222 Tw -[( milliseconds have elapsed. Value is )]TJ -/TT10 1 Tf -16.2603 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0222 Tw -[( if input is)]TJ --35.4395 -1.2889 TD -0 Tw -(now available, )Tj -/TT10 1 Tf -6.6821 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( in the case that )Tj -/TT10 1 Tf -7.0913 0 TD -(WAITFORINPUT)Tj -/TT8 1 Tf -7.2012 0 TD -( timed out.)Tj -/TT10 1 Tf --25.4416 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SKREAD)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(REREADSTRING)Tj -/TT16 1 Tf -7.2012 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 313.3693 493.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 493.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.15 Tw -("Skip Read". )Tj -/TT10 1 Tf -6.4231 0 TD -0 Tw -(SKREAD)Tj -/TT8 1 Tf -3.6006 0 TD -0.15 Tw -[( consumes characters from )]TJ -/TT12 1 Tf -12.6298 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.15 Tw -[( as if one call to )]TJ -/TT10 1 Tf -7.9527 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.15 Tw -[( had been)]TJ --35.407 -1.2889 TD -0.1067 Tw -(performed, without paying the storage and compute cost to really read in the structure.)Tj -/TT12 1 Tf -0 -1.2222 TD -0 Tw -(REREADSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.0367 Tw -[( is for the case where the caller has already performed some )]TJ -/TT10 1 Tf -27.1099 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0367 Tw -(s and)Tj -/TT10 1 Tf --37.3116 -1.2889 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0856 Tw -[(s before deciding to skip this expression. In this case, )]TJ -/TT12 1 Tf -25.0354 0 TD -0 Tw -(REREADSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.0856 Tw -[( should be)]TJ --35.237 -1.2889 TD -0.12 Tw -(the material already read \(as a string\), and )Tj -/TT10 1 Tf -19.9361 0 TD -0 Tw -(SKREAD)Tj -/TT8 1 Tf -3.6006 0 TD -0.12 Tw -[( operates as though it had seen that)]TJ --23.5367 -1.2889 TD -0 Tw -(material first, thus setting up its parenthesis count, double-quote count, etc.)Tj -0 -2 TD -0.0822 Tw -(The read table )Tj -/TT12 1 Tf -6.8048 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0822 Tw -[( is used for reading from )]TJ -/TT12 1 Tf -11.6696 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[(. If )]TJ -/TT12 1 Tf -1.9166 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0822 Tw -[( is )]TJ -/TT10 1 Tf -1.3793 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0822 Tw -(, it defaults to the)Tj --31.9719 -1.2889 TD -0.0078 Tw -(value of )Tj -/TT10 1 Tf -3.8324 0 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0078 Tw -(. )Tj -/TT10 1 Tf -0.7656 0 TD -0 Tw -(SKREAD)Tj -/TT8 1 Tf -3.6006 0 TD -0.0078 Tw -[( may have difficulties if unusual read macros are defined in)]TJ -/TT12 1 Tf --13.5995 -1.2889 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.32 Tw -(. )Tj -/TT10 1 Tf -1.39 0 TD -0 Tw -(SKREAD)Tj -/TT8 1 Tf -3.6006 0 TD -0.32 Tw -[( does not recognize read macro characters in )]TJ -/TT12 1 Tf -22.4599 0 TD -0 Tw -(REREADSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.32 Tw -(, nor)Tj -/TT10 1 Tf --37.6522 -1.2889 TD -0 Tw -(SPLICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[( or )]TJ -/TT10 1 Tf -1.572 0 TD -0 Tw -(INFIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0656 Tw -[( read macros. This is only a problem if the read macros are defined to)]TJ --8.1731 -1.2889 TD -0.1689 Tw -(parse subsequent input in the stream that does not follow the normal parenthesis and)Tj -0 -1.2222 TD -0 Tw -(string-quote conventions. )Tj -/TT10 1 Tf -0 -2 TD -(SKREAD)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[( returns )]TJ -/TT10 1 Tf -3.7885 0 TD -0 Tw -(%\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -[( if the read terminated on an unbalanced closing parenthesis; )]TJ -/TT10 1 Tf -27.6122 0 TD -0 Tw -(%])Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -[( if the)]TJ --37.4017 -1.2889 TD -0.0744 Tw -(read terminated on an unbalanced )Tj -/TT10 1 Tf -15.8341 0 TD -0 Tw -(%])Tj -/TT8 1 Tf -1.2002 0 TD -0.0744 Tw -(, i.e., one which also would have closed any extant)Tj --17.0343 -1.2889 TD -0 Tw -(open left parentheses; otherwise )Tj -/TT10 1 Tf -14.5142 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --18.9811 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SKIPSEPRS)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 262.5088 280.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 280.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0511 Tw -(Consumes characters from )Tj -/TT12 1 Tf -12.1983 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( until it encounters a non-separator character \(as defined)]TJ --14.5986 -1.2889 TD -0 Tw -(by )Tj -/TT12 1 Tf -1.3883 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0289 Tw -(\). )Tj -/TT10 1 Tf -1.1408 0 TD -0 Tw -(SKIPSEPRS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0289 Tw -[( returns, but does not consume, the terminating character, so that)]TJ --10.9304 -1.2889 TD -0.0744 Tw -(the next call to )Tj -/TT10 1 Tf -6.9863 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0744 Tw -[( would return the same character. If no non-separator character is)]TJ --9.9867 -1.2889 TD -0.0633 Tw -(found before the end of file is reached, )Tj -/TT10 1 Tf -17.7533 0 TD -0 Tw -(SKIPSEPRS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0633 Tw -[( returns )]TJ -/TT10 1 Tf -3.8308 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( and leaves the stream at)]TJ --28.7852 -1.2889 TD -0.2122 Tw -[(end of file. This function is useful for skipping over "white space" when scanning a)]TJ -0 -1.2222 TD -0.0022 Tw -(stream character by character, or for detecting end of file when reading expressions from a)Tj -T* -0 Tw -(stream with no pre-arranged terminating expression. )Tj -/TT4 1 Tf -10 0 0 10 102 152.92 Tm -(Output Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 150.21 m -558.01 150.21 l -S -BT -/TT8 1 Tf -9 0 0 9 126 128.26 Tm -0.1256 Tw -(Unless otherwise specified by )Tj -/TT10 1 Tf -13.8977 0 TD -0 Tw -(DEFPRINT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1256 Tw -[(, pointers other than lists, strings, atoms, or numbers, are)]TJ --18.6985 -1.2889 TD -0.1167 Tw -(printed in the form )Tj -/TT10 1 Tf -9.1688 0 TD -0 Tw -({)Tj -/TT12 1 Tf -0.6001 0 TD -(DATATYPE)Tj -/TT10 1 Tf -4.8008 0 TD -(})Tj -/TT8 1 Tf -0.6001 0 TD -0.1167 Tw -[( followed by the octal representation of the address of the pointer)]TJ --15.1698 -1.2889 TD -0.25 Tw -[(\(regardless of radix\). For example, an array pointer might print as )]TJ -/TT10 1 Tf -32.5635 0 TD -0 Tw -({ARRAYP}#43,2760)Tj -/TT8 1 Tf -9.6016 0 TD -0.25 Tw -[(. This)]TJ --42.165 -1.2889 TD -0.2144 Tw -(printed representation is for compactness of display on your terminal, and will )Tj -/TT16 1 Tf -37.6827 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.2144 Tw -[( read back in)]TJ --39.0157 -1.2222 TD -0 Tw -(correctly; if the form above is read, it will produce the litatom )Tj -/TT10 1 Tf -27.4399 0 TD -({ARRAYP}#43,2760)Tj -/TT8 1 Tf -9.6016 0 TD -(.)Tj --31.7082 -2.0667 TD -[(Note: )-1317.9(The term "end-of-line" appearing in the description of an output function means)]TJ -4 -1.2222 TD -(the character or characters used to terminate a line in the file system being used)Tj -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -31 0 obj -<< -/Length 7231 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -(by the given implementation of Interlisp. For example, in Interlisp-D end-of-line)Tj -0 -1.2222 TD -(is indicated by the character carriage-return.)Tj --9.3333 -2.8889 TD -0.0867 Tw -(Some of the functions described below have a )Tj -/TT12 1 Tf -21.1386 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0867 Tw -[( argument, which specifies the read table to be)]TJ --24.1391 -1.2889 TD -0 Tw -(used for output. If )Tj -/TT12 1 Tf -8.5659 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the primary read table is used.)Tj --14.5815 -2.9556 TD -0.0678 Tw -(Most of the functions described below have an argument )Tj -/TT12 1 Tf -26.0206 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0678 Tw -(, which specifies the stream on which)Tj --28.421 -1.2889 TD -0 Tw -(the operation is to take place. If )Tj -/TT12 1 Tf -14.3364 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the primary output stream is used .)Tj -/TT10 1 Tf --17.0853 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(OUTPUT)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 174.4552 459.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 459.8 Tm -([Function])Tj --35.4033 -1.8444 TD -(Sets )Tj -/TT12 1 Tf -2.1339 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.13 Tw -[( as the primary output stream; returns the old primary output stream. )]TJ -/TT12 1 Tf -33.0567 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf --37.591 -1.2889 TD -(must be open for output.)Tj -/TT10 1 Tf -0 -2 TD -(\(OUTPUT\))Tj -/TT8 1 Tf -4.8008 0 TD -( returns the current primary output stream, which is not changed.)Tj --0.8008 -2.0667 TD -[(Note: )-1317.9(If the primary output stream is set to a file, the files full name, rather)]TJ -4 -1.2222 TD -(than the stream itself, is returned. See the discussion in Chapter 24.)Tj -/TT10 1 Tf --10.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRIN1)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 176.7061 361.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 361.66 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.8721 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( on )Tj -/TT12 1 Tf -1.6279 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --10.1672 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRIN2)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT8 1 Tf -27.719 0 TD -([Function])Tj --35.4033 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.9287 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0567 Tw -[( on )]TJ -/TT12 1 Tf -1.7413 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( with )]TJ -/TT10 1 Tf -2.6465 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.0567 Tw -(s and )Tj -/TT10 1 Tf -3.0079 0 TD -0 Tw -(")Tj -/TT8 1 Tf -0.6001 0 TD -0.0567 Tw -(s inserted where required for it to read back in properly)Tj --14.5251 -1.2889 TD -0 Tw -(by )Tj -/TT10 1 Tf -1.3594 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(, using )Tj -/TT12 1 Tf -3.2061 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --15.2996 -2.9556 TD -(Both )Tj -/TT10 1 Tf -2.5549 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.24 Tw -[( and )]TJ -/TT10 1 Tf -2.6729 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.24 Tw -[( print any kind of Lisp expression, including lists, atoms, numbers, and)]TJ --11.2288 -1.2889 TD -0.2444 Tw -(strings. )Tj -/TT10 1 Tf -4.2369 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.2444 Tw -[( is generally used for printing expressions where human readability, rather than)]TJ --7.2374 -1.2889 TD -0.1578 Tw -(machine readability, is important, e.g., when printing text rather than program fragments. )Tj -/TT10 1 Tf -42.326 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf --42.326 -1.2889 TD -0.1256 Tw -(does not print double quotes around strings, or )Tj -/TT10 1 Tf -22.1602 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.1256 Tw -[( in front of special characters. )]TJ -/TT10 1 Tf -14.3315 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.1256 Tw -[( is used for)]TJ --40.0923 -1.2889 TD -0.1278 Tw -(printing Interlisp expressions which can then be read back into Interlisp with )Tj -/TT10 1 Tf -35.8473 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.1278 Tw -(; i.e., break and)Tj --38.2477 -1.2889 TD -0.04 Tw -(separator characters in atoms will be preceded by )Tj -/TT10 1 Tf -22.4738 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[(s. For example, the atom ")]TJ -/TT10 1 Tf -12.2009 0 TD -0 Tw -(\(\))Tj -/TT8 1 Tf -1.2002 0 TD -0.04 Tw -(" is printed as )Tj -/TT10 1 Tf -6.4549 0 TD -0 Tw -(%\(%\))Tj -/TT8 1 Tf --42.93 -1.2889 TD -(by )Tj -/TT10 1 Tf -1.4183 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[(. If the integer output radix \(as set by )]TJ -/TT10 1 Tf -17.418 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -(\) is not 10, )Tj -/TT10 1 Tf -4.9875 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[( prints the integer using the)]TJ --32.8252 -1.2889 TD -0.0644 Tw -(input syntax for non-decimal integers \(see Chapter 7\) but )Tj -/TT10 1 Tf -26.1078 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0644 Tw -[( does not \(but both print the integer)]TJ --29.1083 -1.2889 TD -0 Tw -(in the output radix\).)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRIN3)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 176.7061 152.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 152.18 Tm -([Function])Tj -/TT10 1 Tf --38.07 -1.2156 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRIN4)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 205.9605 141.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 141.24 Tm -([Function])Tj -/TT10 1 Tf --35.4033 -1.8444 TD -(PRIN3)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( and )]TJ -/TT10 1 Tf -2.2173 0 TD -0 Tw -(PRIN4)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( are the same as )]TJ -/TT10 1 Tf -7.2818 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( and )]TJ -/TT10 1 Tf -2.2173 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( respectively, except that they do not)]TJ --23.7184 -1.2889 TD -0.1311 Tw -[(increment the horizontal position counter nor perform any linelength checks. They are)]TJ -0 -1.2222 TD -0 Tw -(useful primarily for printing control characters.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINT)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 200.5596 79.7 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 79.7 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints the expression )Tj -/TT12 1 Tf -9.4961 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( using )Tj -/TT10 1 Tf -2.9561 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( followed by an end-of-line. Returns )Tj -/TT12 1 Tf -16.459 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -34 0 obj -<< -/Length 7491 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINTCCODE)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CHARCODE)Tj -/TT16 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 284.1114 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0822 Tw -(Outputs a single character whose code is )Tj -/TT12 1 Tf -18.8422 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0822 Tw -[( to )]TJ -/TT12 1 Tf -1.5365 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0822 Tw -[(. This is similar to )]TJ -/TT10 1 Tf -8.8146 0 TD -0 Tw -(\(PRIN1)Tj --36.3945 -1.2889 TD -(\(CHARACTER)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.6144 0 TD -(CHARCODE)Tj -/TT10 1 Tf -4.8008 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -0.3644 Tw -(, except that numeric characters are guaranteed to print)Tj --12.6164 -1.2889 TD -0.0889 Tw -("correctly"; e.g., )Tj -/TT10 1 Tf -7.3311 0 TD -0.2133 Tw -(\(PRINTCCODE \(CHARCODE 9\)\))Tj -/TT8 1 Tf -15.4291 0 TD -0.0889 Tw -[( always prints ")]TJ -/TT10 1 Tf -7.1119 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0889 Tw -(", independent of the)Tj --30.4722 -1.2889 TD -0 Tw -(setting of )Tj -/TT10 1 Tf -4.3633 0 TD -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --7.3638 -2.0667 TD -(PRINTCCODE)Tj -/TT8 1 Tf -6.001 0 TD -0.0611 Tw -[( may actually print more than one byte on )]TJ -/TT12 1 Tf -19.3879 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0611 Tw -(, due to character encoding)Tj --27.7893 -1.2889 TD -0.1944 Tw -(and end of line conventions; thus, no assumptions should be made about the relative)Tj -0 -1.2222 TD -0 Tw -(motion of the file pointer \(see )Tj -/TT10 1 Tf -13.269 0 TD -(GETFILEPTR)Tj -/TT8 1 Tf -6.001 0 TD -(\) during this operation.)Tj -/TT10 1 Tf --21.9367 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(BOUT)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(BYTE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 240.9097 452.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 452.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1578 Tw -(Outputs a single 8-bit byte to )Tj -/TT12 1 Tf -14.0292 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1578 Tw -[(. This is similar to )]TJ -/TT10 1 Tf -9.268 0 TD -0 Tw -(PRINTCCODE)Tj -/TT8 1 Tf -6.001 0 TD -0.1578 Tw -(, but for binary)Tj --32.8987 -1.2889 TD -0.0411 Tw -(streams the character position in )Tj -/TT12 1 Tf -14.8183 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[( is not updated \(as with )]TJ -/TT10 1 Tf -10.9366 0 TD -0 Tw -(PRIN3)Tj -/TT8 1 Tf -3.0005 0 TD -0.0411 Tw -(\), and end of line)Tj --32.356 -1.2889 TD -0 Tw -(conventions are ignored. )Tj -4 -2.3333 TD -(Note: )Tj -/TT10 1 Tf -4 0 TD -(BOUT)Tj -/TT8 1 Tf -2.4004 0 TD -( is similar to )Tj -/TT10 1 Tf -5.6616 0 TD -(PRINTCCODE)Tj -/TT8 1 Tf -6.001 0 TD -(, except that )Tj -/TT10 1 Tf -5.5796 0 TD -(BOUT)Tj -/TT8 1 Tf -2.4004 0 TD -( always writes a)Tj --22.043 -1.2889 TD -(single byte, whereas )Tj -/TT10 1 Tf -9.2305 0 TD -(PRINTCCODE)Tj -/TT8 1 Tf -6.001 0 TD -( writes a "character" that can consist)Tj --15.2314 -1.2889 TD -(of more than one byte, depending on the character and its encoding.)Tj -/TT10 1 Tf --10.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SPACES)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 224.7053 346.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 346.32 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.8721 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( spaces. Returns )Tj -/TT10 1 Tf -7.5986 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --15.5378 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(TERPRI)Tj -/TT10 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.5993 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 225.6053 306.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 306.78 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints an end-of-line character. Returns )Tj -/TT10 1 Tf -17.856 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --22.3229 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FRESHLINE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT10 1 Tf -3.6006 0 TD -(\) )Tj -/TT8 1 Tf -28.2194 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0844 Tw -(Equivalent to )Tj -/TT10 1 Tf -6.3491 0 TD -0 Tw -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -(, except it does nothing if it is already at the beginning of the line.)Tj --9.9497 -1.2889 TD -0 Tw -(Returns )Tj -/TT10 1 Tf -3.7271 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( if it prints an end-of-line, )Tj -/TT10 1 Tf -11.5522 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT10 1 Tf --20.3464 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(TAB)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(MINSPACES)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 275.5658 216.1 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 216.1 Tm -([Function])Tj --35.4033 -1.8444 TD -0.08 Tw -(Prints the appropriate number of spaces to move to position )Tj -/TT12 1 Tf -27.614 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.08 Tw -(. )Tj -/TT12 1 Tf -0.91 0 TD -0 Tw -(MINSPACES)Tj -/TT8 1 Tf -5.4009 0 TD -0.08 Tw -[( indicates)]TJ --35.7251 -1.2889 TD -0.2722 Tw -(how many spaces must be printed \(if )Tj -/TT10 1 Tf -18.5203 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2722 Tw -[(, 1 is used\). If the current position plus)]TJ -/TT16 1 Tf --20.3206 -1.2889 TD -0 Tw -(MINSPACES)Tj -/TT8 1 Tf -5.7778 0 TD -0.2633 Tw -[( is greater than )]TJ -/TT12 1 Tf -7.8888 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.7633 0 TD -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.2633 Tw -[( does a )]TJ -/TT10 1 Tf -4.0996 0 TD -0 Tw -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -0.2633 Tw -[( and then )]TJ -/TT10 1 Tf -5.2021 0 TD -0 Tw -(\(SPACES)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.5133 0 TD -(POS)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.2633 Tw -[(. If)]TJ -/TT12 1 Tf --38.0472 -1.2889 TD -0 Tw -(MINSPACES)Tj -/TT8 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, and the current position is greater than )Tj -/TT12 1 Tf -17.9966 0 TD -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -(, then )Tj -/TT10 1 Tf -2.7192 0 TD -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -( does nothing.)Tj --31.5322 -2.4 TD -[(Note: )-1067.9(A sequence of )]TJ -/TT10 1 Tf -10.4565 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(SPACES)Tj -/TT8 1 Tf -3.6006 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -( expressions can often be)Tj --23.1016 -1.2889 TD -(more conveniently coded with a single )Tj -/TT10 1 Tf -17.3726 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( statement.)Tj -/TT10 1 Tf --28.84 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SHOWPRIN2)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 275.5605 108.56 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 108.56 Tm -([Function])Tj --35.4033 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.187 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( except if )Tj -/TT10 1 Tf -4.2192 0 TD -(SYSPRETTYFLG=T)Tj -/TT8 1 Tf -8.4014 0 TD -(, prettyprints )Tj -/TT12 1 Tf -6.0527 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( instead. Returns )Tj -/TT12 1 Tf -7.9399 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -37 0 obj -<< -/Length 7597 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SHOWPRINT)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 227.5605 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.3226 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1356 Tw -[( except if )]TJ -/TT10 1 Tf -4.6259 0 TD -0 Tw -(SYSPRETTYFLG=T)Tj -/TT8 1 Tf -8.4014 0 TD -0.1356 Tw -(, prettyprints )Tj -/TT12 1 Tf -6.3238 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1356 Tw -[( instead, followed by an end-of-)]TJ --25.2743 -1.2889 TD -0 Tw -(line. Returns )Tj -/TT12 1 Tf -6.1201 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --12.0535 -2.9556 TD -(SHOWPRINT )Tj -/TT8 1 Tf -6.2632 0 TD -(and )Tj -/TT10 1 Tf -2.0518 0 TD -(SHOWPRIN2)Tj -/TT8 1 Tf -5.4009 0 TD -0.1089 Tw -[( are used by the programmers assistant \(Chapter 13\) for printing the)]TJ --13.7158 -1.2889 TD -0.1533 Tw -(values of expressions and for printing the history list, by various commands of the break package)Tj -0 -1.2222 TD -0.1744 Tw -(\(Chapter 14\), e.g. )Tj -/TT10 1 Tf -8.3168 0 TD -0 Tw -(?=)Tj -/TT8 1 Tf -1.2002 0 TD -0.1744 Tw -[( and )]TJ -/TT10 1 Tf -2.5418 0 TD -0 Tw -(BT)Tj -/TT8 1 Tf -1.2002 0 TD -0.1744 Tw -[( commands, and various other system packages. The idea is that by)]TJ --13.2589 -1.2889 TD -0.3433 Tw -(simply settting or binding )Tj -/TT10 1 Tf -13.137 0 TD -0 Tw -(SYSPRETTYFLG)Tj -/TT8 1 Tf -7.2012 0 TD -0.3433 Tw -[( to )]TJ -/TT10 1 Tf -2.0587 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.3433 Tw -[( \(initially )]TJ -/TT10 1 Tf -4.9391 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3433 Tw -(\), you instruct the system when)Tj --29.7364 -1.2889 TD -0 Tw -(interacting with you to )Tj -/TT10 1 Tf -10.3828 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.6011 0 TD -( expressions \(Chapter 26\) instead of printing them.)Tj -/TT10 1 Tf --14.3172 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINTBELLS)Tj -/TT4 1 Tf -10 0 0 10 161.4 444.66 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 164.1783 444.66 Tm -(\))Tj -/TT6 1 Tf -10 0 0 10 169.5792 444.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 444.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0533 Tw -[(Used by DWIM \(Chapter 19\) to print a sequence of bells to alert you to stop typing. Can)]TJ -0 -1.2222 TD -0.2111 Tw -(be advised or redefined for special applications, e.g., to flash the screen on a display)Tj -T* -0 Tw -(terminal.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FORCEOUTPUT)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(WAITFORFINISH)Tj -/TT10 1 Tf -7.8013 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 279.3176 383.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 383.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Forces any buffered output data in )Tj -/TT12 1 Tf -15.5835 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( to be transmitted.)Tj --19.1841 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(WAITFORFINISH)Tj -/TT8 1 Tf -7.8013 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, this doesnt return until the data has been forced out.)Tj -/TT10 1 Tf --16.446 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(POSITION)Tj -/TT4 1 Tf -10 0 0 10 150.6 325.58 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 153.3783 325.58 Tm -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 188.0336 325.58 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 325.58 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0856 Tw -[(Returns the column number at which the next character will be read or printed. After a)]TJ -0 -1.2222 TD -0 Tw -(end of line, the column number is 0. If )Tj -/TT12 1 Tf -17.3096 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -( is non-)Tj -/TT10 1 Tf -3.2578 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT16 1 Tf -0.5 0 TD -(resets)Tj -/TT8 1 Tf -2.2788 0 TD -( the column number to be )Tj -/TT12 1 Tf -11.6353 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --37.9819 -2.0667 TD -0.3267 Tw -(Note that resetting )Tj -/TT10 1 Tf -9.5049 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.3267 Tw -[( only changes Lisps belief about the current column)]TJ --14.3057 -1.2889 TD -0.01 Tw -[(number; it does not cause any horizontal motion. Also note that )]TJ -/TT10 1 Tf -28.7728 0 TD -0 Tw -(\(POSITION)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.26 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.01 Tw -[( is )]TJ -/TT16 1 Tf -1.2348 0 TD -0 Tw -(not)Tj -/TT8 1 Tf --38.669 -1.2889 TD -(the same as )Tj -/TT10 1 Tf -5.3467 0 TD -(\(GETFILEPTR)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( which gives the position in the )Tj -/TT16 1 Tf -14.0522 0 TD -(file)Tj -/TT8 1 Tf -1.2227 0 TD -(, not on the )Tj -/TT16 1 Tf -5.2192 0 TD -(line)Tj -/TT8 1 Tf -1.501 0 TD -(.)Tj -/TT10 1 Tf --39.86 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(LINELENGTH)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 198.3053 233.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 233.24 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0433 Tw -(Sets the length of the print line for the output file )Tj -/TT12 1 Tf -22.3492 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0433 Tw -[( to )]TJ -/TT12 1 Tf -1.4587 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -(; returns the former setting of)Tj --26.8085 -1.2889 TD -0.0356 Tw -(the line length. )Tj -/TT12 1 Tf -7.2389 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0356 Tw -[( defaults to the primary output stream. )]TJ -/TT10 1 Tf -17.9939 0 TD -0.0844 Tw -(\(LINELENGTH NIL)Tj -/TT18 1 Tf -9.0859 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.2856 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf --39.4051 -1.2889 TD -0.0133 Tw -(returns the current setting for )Tj -/TT12 1 Tf -13.3904 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[(. When a file is first opened, its line length is set to the)]TJ --15.7908 -1.2889 TD -0 Tw -(value of the variable )Tj -/TT10 1 Tf -9.2783 0 TD -(FILELINELENGTH)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj --17.6797 -2.0667 TD -0.0056 Tw -(Whenever printing an atom or string would increase a files position )Tj -/TT16 1 Tf -30.5299 0 TD -0 Tw -(beyond)Tj -/TT8 1 Tf -2.8521 0 TD -0.0056 Tw -[( the line length)]TJ --33.3819 -1.2222 TD -0.1233 Tw -[(of the file, an end of line is automatically inserted first. This action can be defeated by)]TJ -T* -0 Tw -(using )Tj -/TT10 1 Tf -2.7061 0 TD -(PRIN3)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(PRIN4)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --13.5666 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETLINELENGTH)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 190.6517 118.3 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 118.3 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2789 Tw -(Sets the line length for the terminal by doing )Tj -/TT10 1 Tf -22.4641 0 TD -0 Tw -(\(LINELENGTH)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.5289 0 TD -(N)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.5289 0 TD -(T\))Tj -/TT8 1 Tf -1.2002 0 TD -0.2789 Tw -[(. If )]TJ -/TT12 1 Tf -2.5066 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.2789 Tw -[( is )]TJ -/TT10 1 Tf -1.7726 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2789 Tw -(, it)Tj --38.6029 -1.2889 TD -0 Tw -(determines )Tj -/TT12 1 Tf -5.7932 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.5944 Tw -[( by consulting the operating systems belief about the terminals)]TJ --6.3933 -1.2889 TD -0 Tw -(characteristics. In Interlisp-D, this is a no-op.)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6898 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(PRINTLEVEL)Tj -/TT8 1 Tf -9 0 0 9 126 544.54 Tm -0.3789 Tw -(When using Interlisp one often has to handle large, complicated lists, which are difficult to)Tj -0 -1.2222 TD -0.0278 Tw -(understand when printed out. )Tj -/TT10 1 Tf -13.989 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -0.0278 Tw -[( allows you to specify in how much detail lists should be)]TJ --19.99 -1.2889 TD -0 Tw -(printed. The print functions )Tj -/TT10 1 Tf -12.7852 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( are all affected by level parameters set by:)Tj -/TT10 1 Tf --22.0628 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINTLEVEL)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARVAL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CDRVAL)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 284.1114 499 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 499 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0456 Tw -(Sets the )Tj -/TT10 1 Tf -3.7322 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[( print level to )]TJ -/TT12 1 Tf -6.3546 0 TD -0 Tw -(CARVAL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -(, and the )Tj -/TT10 1 Tf -4.2167 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[( print level to )]TJ -/TT12 1 Tf -6.3546 0 TD -0 Tw -(CDRVAL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[(. Returns a list cell)]TJ --31.4599 -1.2889 TD -0 Tw -(whose )Tj -/TT10 1 Tf -3.1281 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0133 Tw -[( and )]TJ -/TT10 1 Tf -2.2195 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0133 Tw -[( are the old settings. )]TJ -/TT10 1 Tf -9.4472 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -0.0133 Tw -[( is initialized with the value )]TJ -/TT10 1 Tf -12.6064 0 TD -0 Tw -(\(1000)Tj --37.0027 -1.2889 TD -(. -1\))Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --3.0005 -2.0667 TD -0.0911 Tw -(In order that )Tj -/TT10 1 Tf -6.1024 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -0.0911 Tw -[( can be used with )]TJ -/TT10 1 Tf -8.4136 0 TD -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -0.0911 Tw -[( or )]TJ -/TT10 1 Tf -1.6231 0 TD -0 Tw -(RESETSAVE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0911 Tw -(, if )Tj -/TT12 1 Tf -1.5562 0 TD -0 Tw -(CARVAL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0911 Tw -[( is a)]TJ --38.0987 -1.2889 TD -0 Tw -(list cell it is equivalent to )Tj -/TT10 1 Tf -11.2173 0 TD -(\(PRINTLEVEL \(CAR)Tj -/TT18 1 Tf -9.6016 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARVAL)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(\(CDR)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARVAL)Tj -/TT10 1 Tf -3.6006 0 TD -(\)\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT10 1 Tf --32.9707 -2.0667 TD -(\(PRINTLEVEL)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT18 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NIL\))Tj -/TT8 1 Tf -2.4004 0 TD -( changes the )Tj -/TT10 1 Tf -5.7041 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel without affecting the )Tj -/TT10 1 Tf -14.29 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel.)Tj -/TT10 1 Tf --33.6963 -1.2889 TD -(\(PRINTLEVEL NIL)Tj -/TT18 1 Tf -9.0015 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( changes the )Tj -/TT10 1 Tf -5.7041 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel with affecting the )Tj -/TT10 1 Tf -12.8149 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel.)Tj -/TT10 1 Tf --32.5713 -1.2889 TD -(\(PRINTLEVEL\))Tj -/TT8 1 Tf -7.2012 0 TD -( gives the current setting without changing either.)Tj --3.2012 -2.4 TD -[(Note: )-1317.9(Control-P \(Chapter 30\) can be used to change the )]TJ -/TT10 1 Tf -25.9175 0 TD -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -( setting)Tj --27.9185 -1.2889 TD -(dynamically, even while Interlisp is printing.)Tj --8 -2 TD -(The )Tj -/TT10 1 Tf -2.0516 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1278 Tw -[( printlevel specifies how "deep" to print a list. Specifically, it is the number of)]TJ --3.8519 -1.2889 TD -0.0511 Tw -[(unpaired left parentheses which will be printed. Below that level, all lists will be printed)]TJ -0 -1.2222 TD -0 Tw -(as )Tj -/TT10 1 Tf -1.3127 0 TD -(&)Tj -/TT8 1 Tf -0.6001 0 TD -0.1389 Tw -[(. If the )]TJ -/TT10 1 Tf -3.8627 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1389 Tw -[( printlevel is )]TJ -/TT16 1 Tf -6.1818 0 TD -0 Tw -(negative)Tj -/TT8 1 Tf -3.3892 0 TD -0.1389 Tw -(, the action is similar except that an end-of-line is)Tj --17.1468 -1.2889 TD -0.3122 Tw -(inserted after each right parentheses that would be immediately followed by a left)Tj -0 -1.2222 TD -0 Tw -(parenthesis.)Tj -0 -2 TD -(The )Tj -/TT10 1 Tf -2.0394 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1156 Tw -[( printlevel specifies how "long" to print a list. It is the number of top level list)]TJ --3.8397 -1.2889 TD -0.14 Tw -(elements that will be printed before the printing is terminated with )Tj -/TT18 1 Tf -31.4087 0 TD -0 Tw -(--)Tj -/TT8 1 Tf -0.666 0 TD -0.14 Tw -[(. For example, if)]TJ -/TT12 1 Tf --32.0747 -1.2222 TD -0 Tw -(CDRVAL)Tj -/TT10 1 Tf -3.6006 0 TD -(=2)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.6244 0 TD -0.2989 Tw -(\(A B C D E\))Tj -/TT8 1 Tf -7.7966 0 TD -0.1244 Tw -[( will print as )]TJ -/TT10 1 Tf -6.324 0 TD -0.2989 Tw -(\(A B --\))Tj -/TT8 1 Tf -5.3986 0 TD -0.1244 Tw -[(. For sublists, the number of list)]TJ --24.9444 -1.2889 TD -0.04 Tw -(elements printed is also affected by the depth of printing in the )Tj -/TT10 1 Tf -28.5479 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.04 Tw -[( direction: Whenever)]TJ --30.3482 -1.2889 TD -0 Tw -(the )Tj -/TT16 1 Tf -1.6594 0 TD -(sum)Tj -/TT8 1 Tf -1.7231 0 TD -0.0222 Tw -[( of the depth of the sublist \(i.e. the number of unmatched left parentheses\) and the)]TJ --3.3826 -1.2222 TD -0.3144 Tw -(number of elements is greater than the )Tj -/TT10 1 Tf -19.4907 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.3144 Tw -[( printlevel, )]TJ -/TT18 1 Tf -5.6792 0 TD -0 Tw -(--)Tj -/TT8 1 Tf -0.666 0 TD -0.3144 Tw -[( is printed. This gives a)]TJ --27.6362 -1.2889 TD -0 Tw -("triangular" effect in that less is printed the farther one goes in either )Tj -/TT10 1 Tf -30.4854 0 TD -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( direction.)Tj --35.5269 -1.2889 TD -(If the )Tj -/TT10 1 Tf -2.5571 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel is negative, then it is the same as if the )Tj -/TT10 1 Tf -21.9526 0 TD -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -( printlevel were infinite.)Tj --28.1104 -2.0667 TD -(Examples:)Tj -12.7722 -2.1489 TD -(After:)Tj -/TT10 1 Tf -4.5611 0 TD -(\(A \(B C \(D \(E F\) G\) H\) K L\))Tj -/TT8 1 Tf -16.2026 0 TD -( prints as:)Tj -/TT10 1 Tf --28.4026 -2 TD -[(\(PRINTLEVEL 3 -1\))-1998.3(\(A \(B C \(D & G\) H\) K L\))]TJ -T* -[(\(PRINTLEVEL 2 -1\))-1998.3(\(A \(B C & H\) K L\))]TJ -T* -[(\(PRINTLEVEL 1 -1\))-1998.3(\(A & K L\))]TJ -T* -[(\(PRINTLEVEL 0 -1\))-1998.3(&)]TJ --1.2 -2 TD -[(\(PRINTLEVEL 1000 2\))-1998.1(\(A \(B --\) --\))]TJ -T* -[(\(PRINTLEVEL 1000 3\))-1998.1(\(A \(B C --\) K --\))]TJ -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -43 0 obj -<< -/Length 8122 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 177.6 570.14 Tm -[(\(PRINTLEVEL 1 3\))-1998.4(\(A & K --\))]TJ -/TT14 1 Tf --8.4 -2.5489 TD -(PLVLFILEFLG)Tj -/TT6 1 Tf -10 0 0 10 161.4097 547.2 Tm --0.0008 Tc -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 547.2 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -(Normally, )Tj -/TT10 1 Tf -4.9796 0 TD -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -0.1867 Tw -[( only affects terminal output. Output to all other files acts as)]TJ --10.9806 -1.2889 TD -0.1756 Tw -[(though the print level is infinite. However, if )]TJ -/TT10 1 Tf -21.8569 0 TD -0 Tw -(PLVLFILEFLG)Tj -/TT8 1 Tf -6.6011 0 TD -0.1756 Tw -[( is )]TJ -/TT10 1 Tf -1.566 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1756 Tw -[( \(initially )]TJ -/TT10 1 Tf -4.6035 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1756 Tw -(\), then)Tj -/TT10 1 Tf --37.0278 -1.2889 TD -0 Tw -(PRINTLEVEL)Tj -/TT8 1 Tf -6.001 0 TD -( affects output to files as well.)Tj --11.3343 -2.9556 TD -0.1622 Tw -(The following three functions are useful for printing isolated expressions at a specified print level)Tj -0 -1.2222 TD -0 Tw -(without going to the overhead of resetting the global print level.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(LVLPRINT)Tj -/TT4 1 Tf -10 0 0 10 150.6079 447.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 153.38 447.46 Tm -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CDRLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TAIL)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 281.1993 447.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 447.46 Tm -([Function])Tj --35.4033 -1.8444 TD -(Performs )Tj -/TT10 1 Tf -4.3708 0 TD -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0622 Tw -[( of )]TJ -/TT12 1 Tf -1.5034 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( to )]TJ -/TT12 1 Tf -1.4965 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0622 Tw -(, using as )Tj -/TT10 1 Tf -4.5665 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( and )]TJ -/TT10 1 Tf -2.3173 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -[( print levels the values )]TJ -/TT12 1 Tf -10.5343 0 TD -0 Tw -(CARLVL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0622 Tw -[( and)]TJ -/TT12 1 Tf --37.991 -1.2889 TD -0 Tw -(CDRLVL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0233 Tw -[(, respectively. Uses the )]TJ -/TT10 1 Tf -10.6884 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( read table. If )]TJ -/TT12 1 Tf -6.4209 0 TD -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( is specified, and )]TJ -/TT12 1 Tf -7.7037 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -[( is a tail of it, then)]TJ --32.0142 -1.2889 TD -0 Tw -(begins its printing with )Tj -/TT10 1 Tf -10.584 0 TD -("...")Tj -/TT8 1 Tf -3.0005 0 TD -(, rather than on open parenthesis.)Tj -/TT10 1 Tf --16.2511 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(LVLPRIN2)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CDRLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TAIL)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 280.6693 384.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 384.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(LVLPRIN2)Tj -/TT8 1 Tf -4.8008 0 TD -(, but performs a )Tj -/TT10 1 Tf -7.2881 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf --22.3039 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(LVLPRIN1)Tj -/TT4 1 Tf -10 0 0 10 150.6 345.18 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 153.3783 345.18 Tm -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CARLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CDRLVL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TAIL)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 281.1976 345.18 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 345.18 Tm -([Function])Tj --35.4033 -1.8444 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(LVLPRIN1)Tj -/TT8 1 Tf -4.8008 0 TD -(, but performs a )Tj -/TT10 1 Tf -7.2881 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 298.64 Tm -(Printing Numbers)Tj -/TT8 1 Tf -9 0 0 9 78 274.98 Tm -0.1244 Tw -(How the ordinary printing functions \()Tj -/TT10 1 Tf -17.4357 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6244 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.1244 Tw -(, etc.\) print numbers can be affected in several)Tj --24.0611 -1.2889 TD -0.0244 Tw -(ways. )Tj -/TT10 1 Tf -3.1129 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0244 Tw -[( influences the printing of integers, and )]TJ -/TT10 1 Tf -17.7946 0 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0244 Tw -[( influences the printing of floating point)]TJ --27.5086 -1.2889 TD -0.1711 Tw -[(numbers. The setting of the variable )]TJ -/TT10 1 Tf -17.6153 0 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.1711 Tw -[( determines how the symbol-manipulation functions)]TJ --21.2158 -1.2889 TD -0.2244 Tw -[(handle numbers. The )]TJ -/TT10 1 Tf -10.7855 0 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.2244 Tw -[( package permits greater controls on the printed appearance of)]TJ --15.5863 -1.2889 TD -0 Tw -(numbers, allowing such things as left-justification, suppression of trailing decimals, etc.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RADIX)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 152.8526 206.24 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 206.24 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0722 Tw -(Resets the output radix for integers to the absolute value of )Tj -/TT12 1 Tf -27.1543 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -[(. The value of )]TJ -/TT10 1 Tf -6.8518 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0722 Tw -[( is its)]TJ --37.6067 -1.2889 TD -0.2144 Tw -(previous setting. )Tj -/TT10 1 Tf -8.5315 0 TD -0 Tw -(\(RADIX\))Tj -/TT8 1 Tf -4.2007 0 TD -0.2144 Tw -[( gives the current setting without changing it. The initial)]TJ --12.7322 -1.2889 TD -0 Tw -(setting is 10.)Tj -0 -2 TD -0.2022 Tw -(Note that )Tj -/TT10 1 Tf -4.8209 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.2022 Tw -[( affects output )]TJ -/TT16 1 Tf -7.2009 0 TD -0 Tw -(only)Tj -/TT8 1 Tf -1.7778 0 TD -0.2022 Tw -[(. There is no input radix; on input, numbers are)]TJ --16.8002 -1.2889 TD -0.0355 Tw -(interpreted as decimal unless they are entered in a non-decimal radix with syntax such as)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(123Q)Tj -/TT8 1 Tf -2.4004 0 TD -0.3033 Tw -(, |)Tj -/TT10 1 Tf -1.4093 0 TD -0 Tw -(b10101)Tj -/TT8 1 Tf -3.6006 0 TD -0.3033 Tw -(, |)Tj -/TT10 1 Tf -1.4093 0 TD -0 Tw -(5r1234)Tj -/TT8 1 Tf -3.6006 0 TD -0.3033 Tw -[( \(see Chapter 7\). )]TJ -/TT10 1 Tf -9.1568 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.3033 Tw -[( does not affect the behavior of)]TJ -/TT10 1 Tf --24.5774 -1.2889 TD -0 Tw -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -(, etc., unless the value of )Tj -/TT10 1 Tf -11.0659 0 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -[( \(below\) is )]TJ -/TT10 1 Tf -4.864 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.01 Tw -[(. For example, if )]TJ -/TT10 1 Tf -7.6701 0 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -[( is )]TJ -/TT10 1 Tf -1.2348 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[( and)]TJ --38.037 -1.2889 TD -0 Tw -(the radix is set to 8 with )Tj -/TT10 1 Tf -10.7993 0 TD -(\(RADIX 8\))Tj -/TT8 1 Tf -5.4009 0 TD -(, the value of )Tj -/TT10 1 Tf -5.9541 0 TD -(\(UNPACK 9\))Tj -/TT8 1 Tf -6.001 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(\(9\))Tj -/TT8 1 Tf -1.8003 0 TD -(, not )Tj -/TT10 1 Tf -2.2041 0 TD -(\(1 1\))Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --36.375 -2.0667 TD -(Using )Tj -/TT10 1 Tf -3.2364 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.3556 Tw -[( \(below\) or the )]TJ -/TT10 1 Tf -8.1195 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.3556 Tw -[( command )]TJ -/TT10 1 Tf -5.6594 0 TD -0 Tw -(.I)Tj -/TT8 1 Tf -1.2002 0 TD -0.3556 Tw -[( \(below\) is often a more)]TJ --27.817 -1.2889 TD -0.1867 Tw -(convenient and appropriate way to print a single number in a specified radix than to)Tj -0 -1.2222 TD -0 Tw -(globally change )Tj -/TT10 1 Tf -7.2275 0 TD -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -48 0 obj -<< -/Length 6751 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FLTFMT)Tj -/TT4 1 Tf -10 0 0 10 187.8 568.2 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 190.5783 568.2 Tm -(FORMAT)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 228.3845 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1578 Tw -(Resets the output format for floating point numbers to the )Tj -/TT10 1 Tf -27.4767 0 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1578 Tw -[( format )]TJ -/TT12 1 Tf -3.7985 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1578 Tw -[( \(see)]TJ -/TT10 1 Tf --37.8762 -1.2889 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.1467 Tw -[( below for a description of )]TJ -/TT10 1 Tf -12.7257 0 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1467 Tw -[( formats\). )]TJ -/TT12 1 Tf -5.1797 0 TD -0 Tw -(FORMAT)Tj -/TT10 1 Tf -3.6006 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -0.1467 Tw -[( specifies the default)]TJ --30.5075 -1.2889 TD -0.0155 Tw -("free" formatting: some number of significant digits \(a function of the implementation\) are)Tj -0 -1.2222 TD -0.46 Tw -(printed, with trailing zeros suppressed; numbers with sufficiently large or small)Tj -T* -0 Tw -(exponents are instead printed in exponent notation.)Tj -/TT10 1 Tf -0 -2 TD -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3489 Tw -[( returns its current setting. )]TJ -/TT10 1 Tf -14.2969 0 TD -0 Tw -(\(FLTFMT\))Tj -/TT8 1 Tf -4.8008 0 TD -0.3489 Tw -[( returns the current setting without)]TJ --22.6983 -1.2889 TD -0 Tw -(changing it. The initial setting is )Tj -/TT10 1 Tf -14.6558 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --15.2559 -2.0667 TD -0.0922 Tw -[(Note: In Interlisp-D, )]TJ -/TT10 1 Tf -10.1452 0 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0922 Tw -[( ignores the )]TJ -/TT12 1 Tf -5.6868 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.0922 Tw -[( and )]TJ -/TT12 1 Tf -2.3773 0 TD -0 Tw -(PAD)Tj -/TT8 1 Tf -1.8003 0 TD -0.0922 Tw -[( fields of the format \(they are)]TJ --26.6107 -1.2889 TD -0 Tw -(implemented only by )Tj -/TT10 1 Tf -9.7393 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -(\).)Tj --19.8734 -2.9556 TD -0.1756 Tw -(Whether print name manipulation functions \()Tj -/TT10 1 Tf -21.0702 0 TD -0 Tw -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6756 0 TD -(NCHARS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1756 Tw -(, etc.\) use the values of )Tj -/TT10 1 Tf -11.2692 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.1756 Tw -[( and)]TJ -/TT10 1 Tf --43.2165 -1.2889 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -( is determined by the variable )Tj -/TT10 1 Tf -13.4214 0 TD -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -(:)Tj -/TT14 1 Tf --17.9559 -2.5489 TD -(PRXFLG)Tj -/TT6 1 Tf -10 0 0 10 182.4 385.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 385.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.1866 0 TD -(PRXFLG=NIL)Tj -/TT8 1 Tf -6.001 0 TD -0.2667 Tw -[( \(the initial setting\), then the ")]TJ -/TT10 1 Tf -14.6874 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.2667 Tw -(" name used by )Tj -/TT10 1 Tf -8.1077 0 TD -0 Tw -(PACK)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.7667 0 TD -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --39.7508 -1.2889 TD -(MKSTRING)Tj -/TT8 1 Tf -4.8008 0 TD -0.1367 Tw -(, etc., is computed using base 10 for integers and the system default floating)Tj --4.8008 -1.2889 TD -0.3233 Tw -(format for floating point numbers, independent of the current setting of )Tj -/TT10 1 Tf -35.4805 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.3233 Tw -[( or)]TJ -/TT10 1 Tf --38.481 -1.2889 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3333 Tw -[(. If )]TJ -/TT10 1 Tf -2.6699 0 TD -0 Tw -(PRXFLG=T)Tj -/TT8 1 Tf -4.8008 0 TD -0.3333 Tw -(, then )Tj -/TT10 1 Tf -3.3859 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.3333 Tw -[( and )]TJ -/TT10 1 Tf -2.8595 0 TD -0 Tw -(FLTFMT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3333 Tw -[( do dictate the ")]TJ -/TT10 1 Tf -8.2254 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.3333 Tw -(" name of)Tj --35.1437 -1.2889 TD -0 Tw -(numbers. Note that in this case, )Tj -/TT10 1 Tf -14.4282 0 TD -(PACK)Tj -/TT8 1 Tf -2.4004 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(UNPACK)Tj -/TT8 1 Tf -3.6006 0 TD -( are )Tj -/TT16 1 Tf -1.874 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( inverses.)Tj --25.8291 -2.0667 TD -(Examples with)Tj -/TT10 1 Tf -6.5879 0 TD -( \(RADIX 8\), \(FLTFMT \(FLOAT 4 2\)\))Tj -/TT8 1 Tf -19.8032 0 TD -(:)Tj --18.3911 -2.0667 TD -(With )Tj -/TT10 1 Tf -2.4492 0 TD -(PRXFLG=NIL,)Tj -0.2174 -1.7778 TD -(\(UNPACK 13\) => \(1 3\))Tj -0 -1 TD -(\(PACK \(A 9\)\) => A9)Tj -T* -(\(UNPACK 1.2345\) => \(1 %. 2 3 4 5\))Tj -/TT8 1 Tf --2.6667 -1.8444 TD -(With )Tj -/TT10 1 Tf -2.4492 0 TD -(PRXFLG=T,)Tj -0.2174 -1.7778 TD -(\(UNPACK 13\) => \(1 5\))Tj -0 -1 TD -(\(PACK \(A 9\)\) => A11)Tj -T* -(\(UNPACK 1.2345\) => \(1 %. 2 3\))Tj -/TT8 1 Tf --10.6667 -1.8444 TD -0.21 Tw -(Note that )Tj -/TT10 1 Tf -4.8365 0 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[( does not effect the radix of ")]TJ -/TT10 1 Tf -14.0779 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.21 Tw -(" names, so with )Tj -/TT10 1 Tf -8.3317 0 TD -0.5044 Tw -(\(RADIX 8\))Tj -/TT8 1 Tf -5.9053 0 TD -0 Tw -(,)Tj -/TT10 1 Tf --39.7525 -1.2889 TD -0.1244 Tw -(\(NCHARS 9 T\))Tj -/TT8 1 Tf -7.4501 0 TD -0.0522 Tw -(, which uses )Tj -/TT10 1 Tf -5.8193 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0522 Tw -[( names, would return 3, \(since 9 would print as 11Q\))]TJ --16.2698 -1.2889 TD -0 Tw -(for either setting of )Tj -/TT10 1 Tf -8.6895 0 TD -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --12.29 -2.0667 TD -0.0001 Tc -0.0043 Tw -(Warning: Some system functions will not work correctly if )Tj -/TT10 1 Tf -26.3482 0 TD -0 Tc -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.0006 Tc -0.0038 Tw -( is not )Tj -/TT10 1 Tf -2.9323 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0003 Tc -0.0041 Tw -(. Therefore,)Tj --34.6813 -1.2889 TD -0 Tc -0.1533 Tw -(resetting the global value of )Tj -/TT10 1 Tf -13.3165 0 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -0.1533 Tw -[( is not recommended. It is much better to rebind)]TJ -/TT10 1 Tf --16.9171 -1.2889 TD -0 Tw -(PRXFLG)Tj -/TT8 1 Tf -3.6006 0 TD -( as a )Tj -/TT10 1 Tf -2.1738 0 TD -(SPECVAR)Tj -/TT8 1 Tf -4.2007 0 TD -( for that part of a program where it needs to be non-)Tj -/TT10 1 Tf -22.9937 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --40.1024 -2.9556 TD -0.0311 Tw -(The basic function for printing numbers under format control is )Tj -/TT10 1 Tf -28.7188 0 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[(. Its utility is considerably)]TJ --33.5196 -1.2889 TD -0.2578 Tw -(enhanced when used in conjunction with the )Tj -/TT10 1 Tf -21.8801 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.2578 Tw -[( package, which implements a compact)]TJ --26.6809 -1.2889 TD -0.13 Tw -(language for specifying complicated sequences of elementary printing operations, and makes fancy)Tj -0 -1.2222 TD -0 Tw -(output formats easy to design and simple to program.)Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -51 0 obj -<< -/Length 8586 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINTNUM)Tj -/TT4 1 Tf -10 0 0 10 150.6079 568.2 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 156.1645 568.2 Tm -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(FILE\))Tj -/TT6 1 Tf -10 0 0 10 252.4795 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.9298 0 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0578 Tw -[( on )]TJ -/TT12 1 Tf -1.7435 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0578 Tw -[( according to the format )]TJ -/TT12 1 Tf -11.1497 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0578 Tw -(. )Tj -/TT12 1 Tf -0.8656 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0578 Tw -[( is a list structure with)]TJ --29.8908 -1.2889 TD -0 Tw -(one of the forms described below.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -0.921 0 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0011 Tw -( is a list of the form )Tj -/TT10 1 Tf -8.7275 0 TD -0 Tw -(\(FIX)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.2511 0 TD -(WIDTH)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.2511 0 TD -(RADIX)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.2511 0 TD -(PAD0)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.2511 0 TD -(LEFTFLUSH)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0011 Tw -(, this specifies a )Tj -/TT10 1 Tf -7.1431 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf --38.1994 -1.2889 TD -0.1833 Tw -(format. )Tj -/TT12 1 Tf -4.0996 0 TD -0 Tw -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1833 Tw -[( is rounded to the nearest integer, and then printed in a field )]TJ -/TT12 1 Tf -29.3028 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf --37.0029 -1.2889 TD -0.1067 Tw -(characters long with radix set to )Tj -/TT12 1 Tf -15.0511 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.1067 Tw -[( \(or 10 if )]TJ -/TT12 1 Tf -4.3246 0 TD -0 Tw -(RADIX)Tj -/TT10 1 Tf -3.0005 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -(; note that the setting from)Tj --27.7771 -1.2889 TD -0.0278 Tw -(the function )Tj -/TT10 1 Tf -5.6498 0 TD -0 Tw -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.0278 Tw -[( is )]TJ -/TT16 1 Tf -1.2704 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0278 Tw -[( used as the default\). If )]TJ -/TT12 1 Tf -10.7682 0 TD -0 Tw -(PAD0)Tj -/TT8 1 Tf -2.4004 0 TD -0.0278 Tw -[( and )]TJ -/TT12 1 Tf -2.2484 0 TD -0 Tw -(LEFTFLUSH)Tj -/TT8 1 Tf -5.4009 0 TD -0.0278 Tw -[( are both )]TJ -/TT10 1 Tf -4.2147 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -(, the)Tj --38.0865 -1.2889 TD -0.0578 Tw -(number is right-justified in the field, and the padding characters to the left of the leading)Tj -0 -1.2222 TD -0.0789 Tw -[(digit are spaces. If )]TJ -/TT12 1 Tf -8.8852 0 TD -0 Tw -(PAD0)Tj -/TT8 1 Tf -2.4004 0 TD -0.0789 Tw -[( is )]TJ -/TT10 1 Tf -1.3726 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -(, the character ")Tj -/TT10 1 Tf -7.0599 0 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.0789 Tw -[(" is used for padding. If )]TJ -/TT12 1 Tf -11.4507 0 TD -0 Tw -(LEFTFLUSH)Tj -/TT8 1 Tf -5.4009 0 TD -0.0789 Tw -[( is )]TJ -/TT10 1 Tf -1.3726 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --39.7425 -1.2889 TD -0.3122 Tw -(then the number is left-justified in the field, with trailing spaces to fill out )Tj -/TT12 1 Tf -36.9971 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf --36.9971 -1.2889 TD -(characters.)Tj -0 -2 TD -0.0978 Tw -(The following examples illustrate the effects of the )Tj -/TT10 1 Tf -23.2964 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0978 Tw -[( format options on the number 9)]TJ --25.0967 -1.2889 TD -0 Tw -(\(the vertical bars indicate the field width\):)Tj -/TT12 1 Tf -14.15 -1.9267 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -(:)Tj -/TT10 1 Tf -2.2494 0 TD -(\(PRINTNUM)Tj -/TT4 1 Tf -10 0 0 10 354.6079 394.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 357.3862 394.46 Tm -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(9\))Tj -/TT6 1 Tf -10 0 0 10 402.8432 394.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 405.6216 394.46 Tm -(prints:)Tj -/TT10 1 Tf --17.2691 -1.7711 TD -(\(FIX 2\))Tj -/TT8 1 Tf -6.2 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 9)Tj -/TT8 1 Tf -1.2002 0 TD -(|)Tj -/TT10 1 Tf --11.6062 -1.6222 TD -(\(FIX 2 NIL T\))Tj -/TT8 1 Tf -9.8 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(09)Tj -/TT8 1 Tf -1.2002 0 TD -(|)Tj -/TT10 1 Tf --11.0062 -1.6222 TD -(\(FIX 12 8 T\))Tj -/TT8 1 Tf -9.2 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(000000000011)Tj -/TT8 1 Tf -7.2012 0 TD -(|)Tj -/TT10 1 Tf --20.0071 -1.6222 TD -(\(FIX 5 NIL NIL T\))Tj -/TT8 1 Tf -12.2 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(9 )Tj -/TT8 1 Tf -3.0005 0 TD -(|)Tj --23.6064 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.0899 0 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.17 Tw -[( is a list of the form )]TJ -/TT10 1 Tf -9.9097 0 TD -0 Tw -(\(FLOAT)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.42 0 TD -(WIDTH)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.42 0 TD -(DECPART)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.42 0 TD -(EXPPART)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.42 0 TD -(PAD0)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.42 0 TD -(ROUND)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.17 Tw -(, this)Tj --37.7037 -1.2889 TD -0.2233 Tw -(specifies a )Tj -/TT10 1 Tf -5.2123 0 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -0.2233 Tw -[( format. )]TJ -/TT12 1 Tf -4.6529 0 TD -0 Tw -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.2233 Tw -[( is printed as a decimal number in a field )]TJ -/TT12 1 Tf -20.5287 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf --36.995 -1.2889 TD -0.0311 Tw -(characters wide, with )Tj -/TT12 1 Tf -9.8301 0 TD -0 Tw -(DECPART)Tj -/TT8 1 Tf -4.2007 0 TD -0.0311 Tw -[( digits to the right of the decimal point. If )]TJ -/TT12 1 Tf -19.0317 0 TD -0 Tw -(EXPPART)Tj -/TT8 1 Tf -4.2007 0 TD -0.0311 Tw -[( is not)]TJ -/TT10 1 Tf --37.2632 -1.2889 TD -0 Tw -(0)Tj -/TT8 1 Tf -0.6001 0 TD -0.1944 Tw -[( \(or )]TJ -/TT10 1 Tf -2.1628 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1944 Tw -(\), the number is printed in exponent notation, with the exponent occupying)Tj -/TT12 1 Tf --4.5632 -1.2889 TD -0 Tw -(EXPPART)Tj -/TT8 1 Tf -4.2007 0 TD -0.2478 Tw -[( characters in the field. )]TJ -/TT12 1 Tf -11.9906 0 TD -0 Tw -(EXPPART)Tj -/TT8 1 Tf -4.2007 0 TD -0.2478 Tw -[( should allow for the character )]TJ -/TT10 1 Tf -15.2313 0 TD -0 Tw -(E)Tj -/TT8 1 Tf -0.6001 0 TD -0.2478 Tw -[( and an)]TJ --36.2233 -1.2889 TD -0.05 Tw -[(optional sign to be printed before the exponent digits. As with )]TJ -/TT10 1 Tf -29.1932 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.05 Tw -[( format, padding on)]TJ --30.9935 -1.2889 TD -0.0122 Tw -(the left is with spaces, unless )Tj -/TT12 1 Tf -13.0621 0 TD -0 Tw -(PAD0)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[( is )]TJ -/TT10 1 Tf -1.2393 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[(. If )]TJ -/TT12 1 Tf -1.7066 0 TD -0 Tw -(ROUND)Tj -/TT8 1 Tf -3.0005 0 TD -0.0122 Tw -[( is given, it indicates the digit position at)]TJ --22.009 -1.2889 TD -0 Tw -(which rounding is to take place, counting from the leading digit of the number.)Tj -0 -2 TD -0.1067 Tw -(Interlisp-D interprets )Tj -/TT12 1 Tf -9.8447 0 TD -0 Tw -(WIDTH)Tj -/TT10 1 Tf -3.0005 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1067 Tw -[( to mean no padding, i.e., to use however much space)]TJ --15.2456 -1.2889 TD -0.2311 Tw -(the number needs, and interprets )Tj -/TT12 1 Tf -16.1038 0 TD -0 Tw -(DECPART)Tj -/TT10 1 Tf -4.2007 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2311 Tw -[( to mean as many decimal places as)]TJ --22.7049 -1.2889 TD -0 Tw -(needed.)Tj -0 -2 TD -0.0711 Tw -(The following examples illustrate the effects of the )Tj -/TT10 1 Tf -23.083 0 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -[( format options on the number)]TJ --26.0835 -1.2889 TD -0 Tw -(27.689 \(the vertical bars indicate the field width\):)Tj -/TT12 1 Tf -14.15 -1.9267 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -(:)Tj -/TT10 1 Tf -2.2494 0 TD -(\(PRINTNUM)Tj -/TT8 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(27.689\))Tj -/TT8 1 Tf -4.2007 0 TD -( prints:)Tj -/TT10 1 Tf --22.3021 -1.6222 TD -(\(FLOAT 7 2\))Tj -/TT8 1 Tf -8.6 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 27.69)Tj -/TT8 1 Tf -4.2007 0 TD -(|)Tj -/TT10 1 Tf --17.0066 -1.6222 TD -(\(FLOAT 7 2 NIL 0\))Tj -/TT8 1 Tf -12.2 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(0027.69)Tj -/TT8 1 Tf -4.2007 0 TD -(|)Tj -/TT10 1 Tf --14.6066 -1.6222 TD -(\(FLOAT 7 2 2\))Tj -/TT8 1 Tf -9.8 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 2.77E1)Tj -/TT8 1 Tf -4.2007 0 TD -(|)Tj -/TT10 1 Tf --15.2066 -1.6222 TD -(\(FLOAT 11 2 4\))Tj -/TT8 1 Tf -10.4 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 2.77E+01)Tj -/TT8 1 Tf -6.6011 0 TD -(|)Tj -/TT10 1 Tf --21.807 -1.6222 TD -(\(FLOAT 7 2 NIL NIL 1\))Tj -/TT8 1 Tf -14.6 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 30.00)Tj -/TT8 1 Tf -4.2007 0 TD -(|)Tj -/TT10 1 Tf --19.4066 -1.6222 TD -(\(FLOAT 7 2 NIL NIL 2\))Tj -/TT8 1 Tf -14.6 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -( 28.00)Tj -/TT8 1 Tf -4.2007 0 TD -(|)Tj -ET -endstream -endobj -52 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -54 0 obj -<< -/Length 7477 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT14 1 Tf -9 0 0 9 150 568.2 Tm -(NILNUMPRINTFLG)Tj -/TT6 1 Tf -10 0 0 10 225.6 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 494.41 568.2 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT10 1 Tf -1.0621 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -(s )Tj -/TT12 1 Tf -1.0939 0 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1422 Tw -[( argument is not a number and not )]TJ -/TT10 1 Tf -16.773 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1422 Tw -(, a )Tj -/TT10 1 Tf -1.5344 0 TD -0.34 Tw -(NON-NUMERIC ARG)Tj -/TT8 1 Tf --30.6652 -1.2889 TD -0.1544 Tw -[(error is generated. If )]TJ -/TT12 1 Tf -10.2742 0 TD -0 Tw -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1544 Tw -[( is )]TJ -/TT10 1 Tf -1.5237 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1544 Tw -(, the effect depends on the setting of the variable)Tj -/TT10 1 Tf --17.1988 -1.2889 TD -0 Tw -(NILNUMPRINTFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.1156 Tw -[(. If )]TJ -/TT10 1 Tf -2.0166 0 TD -0 Tw -(NILNUMPRINTFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.1156 Tw -[( is )]TJ -/TT10 1 Tf -1.446 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1156 Tw -[(, then the error occurs as usual. If it is)]TJ --22.0656 -1.2889 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2678 Tw -(, then no error occurs, and the value of )Tj -/TT10 1 Tf -19.7196 0 TD -0 Tw -(NILNUMPRINTFLG)Tj -/TT8 1 Tf -8.4014 0 TD -0.2678 Tw -[( is printed right-)]TJ --31.9642 -1.2889 TD -0.0411 Tw -(justified in the field described by )Tj -/TT12 1 Tf -14.9996 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[(. This option facilitates the printing of numbers)]TJ --18.6002 -1.2889 TD -0 Tw -(in aggregates with missing values coded as )Tj -/TT10 1 Tf -19.3545 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 463.66 Tm -(User Defined Printing)Tj -/TT8 1 Tf -9 0 0 9 126 440 Tm -0.1744 Tw -(Initially, Interlisp only knows how to print in an interesting way objects of type litatom, number,)Tj -0 -1.2222 TD -0.0233 Tw -[(string, list and stackp. All other types of objects are printed in the form )]TJ -/TT10 1 Tf -32.0854 0 TD -0 Tw -({datatype})Tj -/TT8 1 Tf -6.001 0 TD -0.0233 Tw -[( followed by the)]TJ --38.0863 -1.2889 TD -0.0611 Tw -(octal representation of the address of the pointer, a format that cannot be read back in to produce an)Tj -0 -1.2222 TD -0.0733 Tw -[(equivalent object. When defining user data types \(using the )]TJ -/TT10 1 Tf -27.5102 0 TD -0 Tw -(DATATYPE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0733 Tw -[( record type, Chapter 8\), it is)]TJ --32.311 -1.2889 TD -0.1833 Tw -(often desirable to specify as well how objects of that type should be printed, so as to make their)Tj -0 -1.2222 TD -0.1778 Tw -[(contents readable, or at least more informative to the viewer. The function )]TJ -/TT10 1 Tf -35.5421 0 TD -0 Tw -(DEFPRINT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1778 Tw -[( is used to)]TJ --40.3429 -1.2889 TD -0 Tw -(specify the printing format of a data type.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(DEFPRINT)Tj -/TT18 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TYPE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 240.9061 349.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 349.86 Tm -([Function])Tj -/TT12 1 Tf --35.4033 -1.8444 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1489 Tw -[( is a type name. Whenever a printing function \()]TJ -/TT10 1 Tf -22.5856 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6489 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.1489 Tw -(, etc.\) or a)Tj --35.2852 -1.2889 TD -0.3289 Tw -(function requiring a print name \()Tj -/TT10 1 Tf -16.226 0 TD -0 Tw -(CHCON)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.8289 0 TD -(NCHARS)Tj -/TT8 1 Tf -3.6006 0 TD -0.3289 Tw -(, etc.\) encounters an object of the)Tj --23.656 -1.2889 TD -0.0889 Tw -(indicated type, )Tj -/TT12 1 Tf -7.0249 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0889 Tw -[( is called with two arguments: the item to be printed and the name of)]TJ --8.2251 -1.2889 TD -0.1044 Tw -[(the stream, if any, to which the object is to be printed. The second argument is )]TJ -/TT10 1 Tf -36.7087 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1044 Tw -[( on)]TJ --38.509 -1.2889 TD -0 Tw -(calls that request the print name of an object without actually printing it.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -0.9366 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0167 Tw -[( returns a list of the form )]TJ -/TT10 1 Tf -11.3257 0 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(ITEM1)Tj -/TT10 1 Tf -3.0005 0 TD -0.0411 Tw -[( . )]TJ -/TT12 1 Tf -1.8825 0 TD -0 Tw -(ITEM2)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT12 1 Tf -0.5167 0 TD -(ITEM1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0167 Tw -[( is printed using )]TJ -/TT10 1 Tf -7.5227 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0167 Tw -[( \(unless)]TJ --36.5865 -1.2889 TD -0.2022 Tw -(it is )Tj -/TT10 1 Tf -2.2365 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2022 Tw -(\), and then )Tj -/TT12 1 Tf -5.6018 0 TD -0 Tw -(ITEM2)Tj -/TT8 1 Tf -3.0005 0 TD -0.2022 Tw -[( is printed using )]TJ -/TT10 1 Tf -8.2649 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.2022 Tw -[( \(unless it is )]TJ -/TT10 1 Tf -6.2767 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2022 Tw -[(\). No spaces are)]TJ --31.9814 -1.2889 TD -0 Tw -(printed between the two items. Typically, )Tj -/TT12 1 Tf -18.9067 0 TD -(ITEM1)Tj -/TT8 1 Tf -3.0005 0 TD -( is a read macro character.)Tj --21.9072 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9199 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( returns )Tj -/TT10 1 Tf -3.7041 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the datum is printed in the system default manner.)Tj --7.6245 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9577 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0378 Tw -[( returns )]TJ -/TT10 1 Tf -3.7797 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0378 Tw -(, nothing further is printed; )Tj -/TT12 1 Tf -12.5175 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0378 Tw -[( is assumed to have printed the object to the)]TJ --20.2553 -1.2889 TD -0.0855 Tw -[(stream itself. Note that this case if permitted only when the second argument passed to)]TJ -/TT12 1 Tf -0 -1.2222 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0004 Tc -0.0029 Tw -( is non-)Tj -/TT10 1 Tf -3.2645 0 TD -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0033 Tw -(; otherwise, there is no destination for )Tj -/TT12 1 Tf -16.9652 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.0001 Tc -0.0032 Tw -( to do its printing, so it must return)Tj --24.4304 -1.2889 TD -0 Tc -0 Tw -(as in one of the other two cases.)Tj -/TT4 1 Tf -10 0 0 10 126 144.92 Tm -(Printing Unusual Data Structures)Tj -/TT10 1 Tf -9 0 0 9 126 121.26 Tm -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2056 Tw -[( \(for "Horrible Print"\) and )]TJ -/TT10 1 Tf -12.6332 0 TD -0 Tw -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -0.2056 Tw -[( provide a mechanism for printing and reading back in)]TJ --19.2343 -1.2889 TD -(general data structures that cannot normally be dumped and loaded easily, such as \(possibly re-)Tj -0 -1.2222 TD -0.0522 Tw -(entrant or circular\) structures containing user datatypes, arrays, hash tables, as well as list structures.)Tj -/TT10 1 Tf -T* -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0333 Tw -[( will correctly print and read back in any structure containing any or all of the above, chasing)]TJ --3.6006 -1.2889 TD -0.0922 Tw -(all pointers down to the level of literal atoms, numbers or strings. )Tj -/TT10 1 Tf -30.6007 0 TD -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0922 Tw -[( currently cannot handle)]TJ --34.2013 -1.2889 TD -0 Tw -(compiled code arrays, stack positions, or arbitrary unboxed numbers.)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -57 0 obj -<< -/Length 7547 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 78 569.54 Tm -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2544 Tw -[( operates by simulating the Interlisp )]TJ -/TT10 1 Tf -17.7464 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.2544 Tw -[( routine for normal list structures. When it)]TJ --24.3475 -1.2889 TD -0.1533 Tw -(encounters a user datatype \(see Chapter 8\), or an array or hash array, it prints the data contained)Tj -0 -1.2222 TD -0.2767 Tw -[(therein, surrounded by special characters defined as read macro characters. While chasing the)]TJ -T* -0.1922 Tw -(pointers of a structure, it also keeps a hash table of those items it encounters, and if any item is)Tj -T* -0.1256 Tw -(encountered a second time, another read macro character is inserted before the first occurrence \(by)Tj -T* -0.1733 Tw -(resetting the file pointer with )Tj -/TT10 1 Tf -14.0097 0 TD -0 Tw -(SETFILEPTR)Tj -/TT8 1 Tf -6.001 0 TD -0.1733 Tw -(\) and all subsequent occurrences are printed as a back)Tj --20.0107 -1.2889 TD -0.1211 Tw -[(reference using an appropriate macro character. Thus the inverse function, )]TJ -/TT10 1 Tf -34.7839 0 TD -0 Tw -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1211 Tw -[( merely calls the)]TJ --37.7844 -1.2889 TD -0 Tw -(Interlisp )Tj -/TT10 1 Tf -3.9761 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -( routine with the appropriate read table.)Tj -/TT10 1 Tf --3.7098 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(EXPR)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(UNCIRCULAR)Tj -/TT16 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DATATYPESEEN)Tj -/TT10 1 Tf -7.2012 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 316.2272 467.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 467.8 Tm -([Function])Tj --35.4033 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -3.0565 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1844 Tw -[( on )]TJ -/TT12 1 Tf -1.9968 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1844 Tw -[(. If )]TJ -/TT12 1 Tf -2.2233 0 TD -0 Tw -(UNCIRCULAR)Tj -/TT8 1 Tf -6.001 0 TD -0.1844 Tw -[( is non-)]TJ -/TT10 1 Tf -3.6267 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6844 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1844 Tw -[( does no checking for any)]TJ --27.7904 -1.2889 TD -0.13 Tw -(circularities in )Tj -/TT12 1 Tf -6.8069 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.13 Tw -[( \(but is still useful for dumping arbitrary structures of arrays, hash)]TJ --9.2073 -1.2889 TD -0.4767 Tw -[(arrays, lists, user data types, etc., that do not contain circularities\). Specifying)]TJ -/TT12 1 Tf -0 -1.2222 TD -0 Tw -(UNCIRCULAR)Tj -/TT8 1 Tf -6.001 0 TD -( as non-)Tj -/TT10 1 Tf -3.4668 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( results in a large speed and internal-storage advantage.)Tj --11.2681 -2.0667 TD -0.2511 Tw -(Normally, when )Tj -/TT10 1 Tf -8.0222 0 TD -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2511 Tw -[( encounters a user data type for the first time, it outputs a)]TJ --11.6228 -1.2889 TD -0.04 Tw -[(summary of the data types declaration. When this is read in, the data type is redeclared.)]TJ -0 -1.2222 TD -0 Tw -(If )Tj -/TT12 1 Tf -0.9677 0 TD -(DATATYPESEEN)Tj -/TT8 1 Tf -7.2012 0 TD -0.0478 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3534 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5478 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0478 Tw -[( assumes that the same data type declarations will)]TJ --17.4709 -1.2889 TD -0 Tw -(be in force at read time as were at )Tj -/TT10 1 Tf -15.0791 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -( time, and not output declarations.)Tj -/TT10 1 Tf --18.6797 -2.0667 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2578 Tw -[( is intended primarily for output to random access files, since the algorithm)]TJ --3.6006 -1.2889 TD -0.0933 Tw -[(depends on being able to reset the file pointer. If )]TJ -/TT12 1 Tf -22.8724 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0933 Tw -[( is not a random access file \(and)]TJ -/TT12 1 Tf --25.2728 -1.2889 TD -0 Tw -(UNCIRCULAR)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.3156 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -/TT10 1 Tf -0.3156 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -(\), a temporary file, )Tj -/TT10 1 Tf -8.6704 0 TD -0 Tw -(HPRINT.SCRATCH)Tj -/TT8 1 Tf -8.4014 0 TD -0.0656 Tw -(, is opened, )Tj -/TT12 1 Tf -5.4594 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( is )]TJ -/TT10 1 Tf -1.346 0 TD -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -(ed)Tj --38.9106 -1.2889 TD -(on it, and then that file is copied to the final output file and the temporary file is deleted.)Tj -0 -2 TD -0.4689 Tw -(You can not use )Tj -/TT10 1 Tf -9.1773 0 TD -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.4689 Tw -[( to save things that contains pointers to raw storage.)]TJ --12.7779 -1.2889 TD -0.4211 Tw -(Fontdescriptors contain pointers to raw storage and windows contain pointers to)Tj -0 -1.2222 TD -0 Tw -(fontdescriptors. Netiher can therefor be saved with )Tj -/TT10 1 Tf -22.811 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf --29.0783 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(HREAD)Tj -/TT8 1 Tf -2.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 163.6544 247.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 247.26 Tm -([Function])Tj --35.4033 -1.8444 TD -(Reads and returns an )Tj -/TT10 1 Tf -9.6606 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -(-ed expression from )Tj -/TT12 1 Tf -9.0664 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --27.3947 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(HCOPYALL)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 163.6517 207.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 207.72 Tm -([Function])Tj --35.4033 -1.8444 TD -(Copies data structure )Tj -/TT12 1 Tf -9.7319 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT12 1 Tf -0.75 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( may contain circular pointers as well as arbitrary structures.)Tj --11.6821 -2.0667 TD -(Note: )Tj -/TT10 1 Tf -2.8288 0 TD -(HORRIBLEVARS)Tj -/TT8 1 Tf -7.2012 0 TD -0.1467 Tw -[( and )]TJ -/TT10 1 Tf -2.4862 0 TD -0 Tw -(UGLYVARS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1467 Tw -[( \(Chapter 17\) are two file package commands for)]TJ --17.317 -1.2889 TD -0.4455 Tw -[(dumping and reloading circular and re-entrant data structures. They provide a)]TJ -0 -1.2222 TD -0 Tw -(convenient interface to )Tj -/TT10 1 Tf -10.3271 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -(. )Tj --19.1211 -2.0667 TD -(When )Tj -/TT10 1 Tf -3.1553 0 TD -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2622 Tw -[( is dumping a data structure that contains an instance of an Interlisp)]TJ --6.7559 -1.2889 TD -0.2233 Tw -[(datatype, the datatype declaration is also printed onto the file. Reading such a data)]TJ -0 -1.2222 TD -0.0633 Tw -(structure with )Tj -/TT10 1 Tf -6.655 0 TD -0 Tw -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -[( can cause problems if it redefines a system datatype. Redefining a)]TJ --9.6555 -1.2889 TD -0.3955 Tw -[(system datatype will almost definitely cause serious errors. The Interlisp system)]TJ -0 -1.2222 TD -0.0556 Tw -(datatypes do not change very often, but there is always a possibility when loading in old)Tj -T* -0 Tw -(files created under an old Interlisp release.)Tj -0 -2 TD -0.0778 Tw -(To prevent accidental system crashes, )Tj -/TT10 1 Tf -17.282 0 TD -0 Tw -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -0.0778 Tw -[( will )]TJ -/TT16 1 Tf -2.3626 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0778 Tw -[( redefine datatypes. Instead, it will)]TJ --23.978 -1.2889 TD -0.3522 Tw -(cause an error ")Tj -/TT10 1 Tf -7.9195 0 TD -0.8467 Tw -(attempt to read DATATYPE with different field)Tj -ET -endstream -endobj -58 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -60 0 obj -<< -/Length 6433 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -0.6389 Tw -(specification than currently defined)Tj -/TT8 1 Tf -23.5202 0 TD -0.2656 Tw -[(". Continuing from this error will)]TJ --23.5202 -1.2889 TD -0 Tw -(redefine the datatype.)Tj -/TT4 1 Tf -10 0 0 10 102 515.6 Tm -(Random Access File Operations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 512.89 m -558.01 512.89 l -S -BT -/TT8 1 Tf -9 0 0 9 126 490.94 Tm -0.0956 Tw -(For most applications, files are read starting at their beginning and proceeding sequentially, i.e., the)Tj -0 -1.2222 TD -0.2244 Tw -[(next character read is the one immediately following the last character read. Similarly, files are)]TJ -T* -0.0111 Tw -[(written sequentially. However, for files on some devices, it is also possible to read/write characters at)]TJ -T* -0.2011 Tw -[(arbitrary positions in a file, essentially treating the file as a large block of auxiliary storage. For)]TJ -T* -0.14 Tw -(example, one application might involve writing an expression at the )Tj -/TT16 1 Tf -31.7438 0 TD -0 Tw -(beginning)Tj -/TT8 1 Tf -4.0762 0 TD -0.14 Tw -[( of the file, and then)]TJ --35.8199 -1.2222 TD -0.0322 Tw -(reading an expression from a specified point in its )Tj -/TT16 1 Tf -22.6425 0 TD -0 Tw -(middle)Tj -/TT8 1 Tf -2.7227 0 TD -0.0322 Tw -[(. This particular example requires the file be)]TJ --25.3652 -1.2222 TD -0.0344 Tw -(open for )Tj -/TT16 1 Tf -4.0508 0 TD -0 Tw -(both)Tj -/TT8 1 Tf -1.7397 0 TD -0.0344 Tw -[( input and output. However, random file input or output can also be performed on files)]TJ --5.7906 -1.2222 TD -0 Tw -(that have been opened for only input or only output.)Tj -0 -2.8889 TD -0.0378 Tw -(Associated with each file is a "file pointer" that points to the location where the next character is to be)Tj -0 -1.2222 TD -0.0044 Tw -(read from or written to. The file position of a byte is the number of bytes that precede it in the file, i.e.,)Tj -T* -0.0667 Tw -[(0 is the position of the beginning of the file. The file pointer to a file is automatically advanced after)]TJ -T* -0.0978 Tw -[(each input or output operation. This section describes functions which can be used to )]TJ -/TT16 1 Tf -39.599 0 TD -0 Tw -(reposition)Tj -/TT8 1 Tf -4 0 TD -0.0978 Tw -[( the)]TJ --43.599 -1.2222 TD -0.0867 Tw -[(file pointer on those files that can be randomly accessed. A file used in this fashion is much like an)]TJ -T* -0.0667 Tw -(array in that it has a certain number of addressable locations that characters can be put into or taken)Tj -T* -0.0744 Tw -[(from. However, unlike arrays, files can be enlarged. For example, if the file pointer is positioned at)]TJ -T* -0.03 Tw -[(the end of a file and anything is written, the file "grows." It is also possible to position the file pointer)]TJ -/TT16 1 Tf -T* -0 Tw -(beyond)Tj -/TT8 1 Tf -2.8521 0 TD -0.0011 Tw -( the end of file and then to write. \(If the program attempts to )Tj -/TT16 1 Tf -27.2115 0 TD -0 Tw -(read)Tj -/TT8 1 Tf -1.7222 0 TD -0.0011 Tw -( beyond the end of file, an )Tj -/TT10 1 Tf -11.749 0 TD -0 Tw -(END)Tj --43.5347 -1.2889 TD -0.2389 Tw -(OF FILE)Tj -/TT8 1 Tf -4.4396 0 TD -0.1 Tw -[( error occurs.\) In this case, the file is enlarged, and a "hole" is created, which can later be)]TJ --4.4396 -1.2889 TD -0.0389 Tw -[(written into. Note that this enlargement only takes place at the )]TJ -/TT16 1 Tf -28.5756 0 TD -0 Tw -(end)Tj -/TT8 1 Tf -1.4453 0 TD -0.0389 Tw -[( of a file; it is not possible to make)]TJ --30.0209 -1.2222 TD -0.2067 Tw -[(more room in the middle of a file. In other words, if expression )]TJ -/TT10 1 Tf -31.1819 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.2067 Tw -[( begins at position 1000, and)]TJ --31.782 -1.2889 TD -0 Tw -(expression )Tj -/TT10 1 Tf -5.1735 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.1867 Tw -[( at 1100, and the program attempts to overwrite )]TJ -/TT10 1 Tf -23.0096 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.1867 Tw -[( with expression )]TJ -/TT10 1 Tf -8.08 0 TD -0 Tw -(C)Tj -/TT8 1 Tf -0.6001 0 TD -0.1867 Tw -(, whose printed)Tj --38.0634 -1.2889 TD -0 Tw -(representation is 200 bytes long, part of )Tj -/TT10 1 Tf -17.6348 0 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -( will be altered.)Tj --18.2349 -2.9556 TD -0.0344 Tw -[(Warning: File positions are always in terms of bytes, not characters. You should thus be very careful)]TJ -0 -1.2222 TD -0.0389 Tw -[(about computing the space needed for an expression. In particular, NS characters may take multiple)]TJ -T* -0.0678 Tw -[(bytes \(see below\). Also, the end-of-line character \(see Chapter 24\) may be represented by a different)]TJ -T* -0.0089 Tw -[(number of characters in different implementations. Output functions may also introduce end-of-lines)]TJ -T* -0.1022 Tw -(as a result of )Tj -/TT10 1 Tf -6.2297 0 TD -0 Tw -(LINELENGTH)Tj -/TT8 1 Tf -6.001 0 TD -0.1022 Tw -[( considerations. Therefore )]TJ -/TT10 1 Tf -12.4001 0 TD -0 Tw -(NCHARS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1022 Tw -[( \(see Chapter 2\) does )]TJ -/TT16 1 Tf -9.9608 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1022 Tw -[( specify how)]TJ --39.5252 -1.2889 TD -0 Tw -(many bytes an expression takes to print, even ignoring line length considerations.)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETFILEPTR)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 238.6544 138 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 138 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0178 Tw -(Returns the current position of the file pointer for )Tj -/TT12 1 Tf -22.2596 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -(, i.e., the byte address at which the)Tj --24.66 -1.2889 TD -0 Tw -(next input/output operation will commence.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETFILEPTR)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ADR)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 257.107 87.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 87.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0411 Tw -(Sets the file pointer for )Tj -/TT12 1 Tf -10.4849 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( to the position )]TJ -/TT12 1 Tf -7.0307 0 TD -0 Tw -(ADR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -(; returns )Tj -/TT12 1 Tf -4.0363 0 TD -0 Tw -(ADR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[(. The special value )]TJ -/TT12 1 Tf -8.8472 0 TD -0 Tw -(ADR)Tj -/TT10 1 Tf -1.8003 0 TD -(=-1)Tj -/TT8 1 Tf --38.2003 -1.2889 TD -(is interpreted to mean the address of the end of file.)Tj -ET -endstream -endobj -61 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -63 0 obj -<< -/Length 8986 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -[(Note: )-1317.9(If a file is opened for output only, the end of file is initially zero, even if)]TJ -4 -1.2222 TD -(an old file by the same name had existed \(see )Tj -/TT10 1 Tf -20.1836 0 TD -(OPENSTREAM)Tj -/TT8 1 Tf -6.001 0 TD -(, Chapter)Tj --26.1846 -1.2889 TD -(24\). If a file is opened for both input and output, the initial file pointer)Tj -0 -1.2222 TD -(is the beginning of the file, but )Tj -/TT10 1 Tf -13.7173 0 TD -(\(SETFILEPTR)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(-1\))Tj -/TT8 1 Tf -1.8003 0 TD -( sets it to the)Tj --25.019 -1.2889 TD -(end of the file. If the file had been opened in append mode by)Tj -/TT10 1 Tf -0 -1.2222 TD -(\(OPENSTREAM)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(APPEND\))Tj -/TT8 1 Tf -4.8008 0 TD -(, the file pointer right after opening)Tj --14.3022 -1.2889 TD -(would be set to the end of the existing file, in which case a )Tj -/TT10 1 Tf -25.9053 0 TD -(SETFILEPTR)Tj -/TT8 1 Tf --25.9053 -1.2889 TD -(to position the file at the end would be unnecessary.)Tj -/TT10 1 Tf --10.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETEOFPTR)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 185.2544 467.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 467.8 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0267 Tw -[(Returns the byte address of the end of file, i.e., the number of bytes in the file. Equivalent)]TJ -0 -1.2222 TD -0.0689 Tw -(to performing )Tj -/TT10 1 Tf -6.5709 0 TD -0 Tw -(\(SETFILEPTR)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.3189 0 TD -(FILE)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.3189 0 TD -(-1\))Tj -/TT8 1 Tf -1.8003 0 TD -0.0689 Tw -[( and returning )]TJ -/TT10 1 Tf -6.859 0 TD -0 Tw -(\(GETFILEPTR)Tj -/TT18 1 Tf -6.6011 0 TD -( )Tj -/TT12 1 Tf -0.3189 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0689 Tw -[( except that)]TJ --34.7899 -1.2889 TD -0 Tw -(it does not change the current file pointer.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RANDACCESSP)Tj -/TT18 1 Tf -6.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27119.5([Function])]TJ --7.7838 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7993 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0722 Tw -[( if )]TJ -/TT12 1 Tf -1.2685 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0722 Tw -[( is randomly accessible, )]TJ -/TT10 1 Tf -10.9461 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0722 Tw -[( otherwise. The file )]TJ -/TT10 1 Tf -9.2849 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0722 Tw -[( is not randomly)]TJ --32.5 -1.2889 TD -0.0622 Tw -(accessible, nor are certain network file connections in Interlisp-D. )Tj -/TT12 1 Tf -29.9289 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0622 Tw -[( must be open or)]TJ --32.3293 -1.2889 TD -0 Tw -(an error is generated, )Tj -/TT10 1 Tf -9.6641 0 TD -(FILE NOT OPEN)Tj -/TT8 1 Tf -7.8013 0 TD -(.)Tj -/TT10 1 Tf --20.132 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(COPYBYTES)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(SRCFIL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DSTFIL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(START)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(END)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 278.4185 344.86 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 344.86 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1256 Tw -(Copies bytes from )Tj -/TT12 1 Tf -8.6716 0 TD -0 Tw -(SRCFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[( to )]TJ -/TT12 1 Tf -1.6232 0 TD -0 Tw -(DSTFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -(, starting from position )Tj -/TT12 1 Tf -10.9163 0 TD -0 Tw -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.1256 Tw -[( and up to but not)]TJ --31.4127 -1.2889 TD -0 Tw -(including position )Tj -/TT12 1 Tf -8.3579 0 TD -(END)Tj -/TT8 1 Tf -1.8003 0 TD -(. Both )Tj -/TT12 1 Tf -3.0649 0 TD -(SRCFIL)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT12 1 Tf -2.1929 0 TD -(DSTFIL)Tj -/TT8 1 Tf -3.6006 0 TD -( must be open. Returns )Tj -/TT10 1 Tf -10.7031 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --33.9204 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.0021 0 TD -(END)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT12 1 Tf -0.5822 0 TD -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.0822 Tw -[( is interpreted as the number of bytes to copy \(starting at the current)]TJ --8.7855 -1.2889 TD -0 Tw -(position\). If )Tj -/TT12 1 Tf -5.6099 0 TD -(START)Tj -/TT8 1 Tf -3.0005 0 TD -( is also )Tj -/TT10 1 Tf -3.2256 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, bytes are copied until the end of the file is reached.)Tj --13.6362 -2.0667 TD -0.0044 Tw -(Warning: )Tj -/TT10 1 Tf -4.6651 0 TD -0 Tw -(COPYBYTES)Tj -/TT8 1 Tf -5.4009 0 TD -0.0001 Tc -0.0043 Tw -( does not take any account of multi-byte NS characters \(see Chapter)Tj --10.066 -1.2889 TD -0 Tc -0.0011 Tw -(2\). )Tj -/TT10 1 Tf -1.5852 0 TD -0 Tw -(COPYCHARS)Tj -/TT8 1 Tf -5.4009 0 TD -0.0011 Tw -( \(below\) should be used whenever copying information that might include)Tj --6.9861 -1.2889 TD -0 Tw -(NS characters.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(COPYCHARS)Tj -/TT4 1 Tf -10 0 0 10 156 222.32 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 158.7783 222.32 Tm -(SRCFIL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DSTFIL)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(START)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(END)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 278.9468 222.32 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 222.32 Tm -([Function])Tj --35.4033 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.3448 0 TD -(COPYBYTES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1578 Tw -[( except that it copies NS characters \(see Chapter 2\), and performs the)]TJ --7.7457 -1.2889 TD -0.0278 Tw -(proper conversion if the end-of-line conventions of )Tj -/TT12 1 Tf -22.9317 0 TD -0 Tw -(SRCFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( and )]TJ -/TT12 1 Tf -2.2484 0 TD -0 Tw -(DSTFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( are not the same)]TJ --32.3813 -1.2889 TD -0.12 Tw -(\(see Chapter 24\). )Tj -/TT12 1 Tf -8.3701 0 TD -0 Tw -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.12 Tw -[( and )]TJ -/TT12 1 Tf -2.4329 0 TD -0 Tw -(END)Tj -/TT8 1 Tf -1.8003 0 TD -0.12 Tw -[( are interpreted the same as with )]TJ -/TT10 1 Tf -15.5583 0 TD -0 Tw -(COPYBYTES)Tj -/TT8 1 Tf -5.4009 0 TD -0.12 Tw -(, i.e., as)Tj --36.5629 -1.2889 TD -0.1678 Tw -(byte \(not character\) specifications in )Tj -/TT12 1 Tf -17.0371 0 TD -0 Tw -(SRCFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -[(. The number of bytes actually output to)]TJ -/TT12 1 Tf --20.6377 -1.2889 TD -0 Tw -(DSTFIL)Tj -/TT8 1 Tf -3.6006 0 TD -0.1478 Tw -[( might be more or less than the number of bytes specified by )]TJ -/TT12 1 Tf -28.8547 0 TD -0 Tw -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.1478 Tw -[( and )]TJ -/TT12 1 Tf -2.4884 0 TD -0 Tw -(END)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7445 -1.2889 TD -0.1678 Tw -[(depending on what the end-of-line conventions are. In the case where the end-of-line)]TJ -0 -1.2222 TD -0 Tw -(conventions happen to be the same, )Tj -/TT10 1 Tf -16.0391 0 TD -(COPYCHARS)Tj -/TT8 1 Tf -5.4009 0 TD -( simply calls )Tj -/TT10 1 Tf -5.7456 0 TD -(COPYBYTES)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --35.2531 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FILEPOS)Tj -/TT18 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STR )Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(START)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(END)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(SKIP)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TAIL)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CASEARRAY)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 344.5799 113.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 113.78 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0844 Tw -(Analogous to )Tj -/TT10 1 Tf -6.3666 0 TD -0 Tw -(STRPOS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -[( \(see Chapter 4\), but searches a file rather than a string. )]TJ -/TT10 1 Tf -25.8326 0 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf --35.7999 -1.2889 TD -(searches )Tj -/TT12 1 Tf -4.0721 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0956 Tw -[( for the string )]TJ -/TT12 1 Tf -6.6176 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0956 Tw -(. Search begins at )Tj -/TT12 1 Tf -8.2685 0 TD -0 Tw -(START)Tj -/TT8 1 Tf -3.0005 0 TD -0.0956 Tw -[( \(or the current position of the)]TJ --26.1593 -1.2889 TD -0.0878 Tw -(file pointer, if )Tj -/TT12 1 Tf -6.5016 0 TD -0 Tw -(START)Tj -/TT10 1 Tf -3.0005 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -(\), and goes to )Tj -/TT12 1 Tf -6.5039 0 TD -0 Tw -(END)Tj -/TT8 1 Tf -1.8003 0 TD -0.0878 Tw -[( \(or the end of )]TJ -/TT12 1 Tf -6.9008 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -(, if )Tj -/TT12 1 Tf -1.5496 0 TD -0 Tw -(END)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0878 Tw -[(\). Returns)]TJ --35.2582 -1.2889 TD -0 Tw -(the address of the start of the match, or )Tj -/TT10 1 Tf -17.5098 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( if not found.)Tj -ET -endstream -endobj -64 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -66 0 obj -<< -/Length 6718 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -(SKIP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0043 Tw -( can be used to specify a character which matches any character in the file. If )Tj -/TT12 1 Tf -34.2133 0 TD -0 Tc -0 Tw -(TAIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0015 Tc -0.0029 Tw -( is)Tj -/TT10 1 Tf --39.014 -1.2889 TD -0 Tc -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1944 Tw -(, and the search is successful, the value is the address of the first character )Tj -/TT16 1 Tf -35.7243 0 TD -0 Tw -(after)Tj -/TT8 1 Tf -1.833 0 TD -0.1944 Tw -[( the)]TJ --38.1574 -1.2889 TD -0.3011 Tw -(sequence of characters corresponding to )Tj -/TT12 1 Tf -19.4968 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.3011 Tw -(, instead of the starting address of the)Tj --21.2971 -1.2889 TD -0.0256 Tw -[(sequence. In either case, the file is left so that the next i/o operation begins at the address)]TJ -0 -1.2222 TD -0 Tw -(returned as the value of )Tj -/TT10 1 Tf -10.748 0 TD -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT12 1 Tf --14.9487 -2.0667 TD -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.27 Tw -[( should be a "case array" that specifies that certain characters should be)]TJ --5.4009 -1.2889 TD -0.5133 Tw -[(transformed to other characters before matching. Case arrays are returned by)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.2233 Tw -[( or )]TJ -/TT10 1 Tf -1.8876 0 TD -0 Tw -(SEPRCASE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2233 Tw -[( below. )]TJ -/TT12 1 Tf -4.3731 0 TD -0 Tw -(CASEARRAY)Tj -/TT10 1 Tf -5.4009 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2233 Tw -[( means no transformation will be)]TJ --24.2636 -1.2889 TD -0 Tw -(performed.)Tj -0 -2 TD -0.0511 Tw -(A case array is an implementation-dependent object that is logically an array of character)Tj -0 -1.2222 TD -0.0156 Tw -(codes with one entry for each possible character. )Tj -/TT10 1 Tf -22.0746 0 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0156 Tw -[( maps each character in the file)]TJ --26.2753 -1.2889 TD -0 Tw -("through" )Tj -/TT12 1 Tf -4.867 0 TD -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.2844 Tw -[( in the sense that each character code is transformed into the)]TJ --10.2678 -1.2889 TD -0.0767 Tw -(corresponding character code from )Tj -/TT12 1 Tf -16.0596 0 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.0767 Tw -[( before matching. Thus if two characters)]TJ --21.4605 -1.2889 TD -0.1233 Tw -(map into the same value, they are treated as equivalent by )Tj -/TT10 1 Tf -27.3396 0 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1233 Tw -(. )Tj -/TT10 1 Tf -0.9967 0 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.1233 Tw -[( and)]TJ -/TT10 1 Tf --37.9378 -1.2889 TD -0 Tw -(SETCASEARRAY)Tj -/TT8 1 Tf -7.2012 0 TD -( provide an implementation-independent interface to case arrays. )Tj --7.2012 -2.0667 TD -0.1022 Tw -(For example, to search without regard to upper and lower case differences, )Tj -/TT12 1 Tf -34.5983 0 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf --34.5983 -1.2889 TD -0.2144 Tw -(would be a case array where all characters map to themselves, except for lower case)Tj -0 -1.2222 TD -0.0367 Tw -[(characters, whose corresponding elements would be the upper case characters. To search)]TJ -T* -0.1133 Tw -(for a delimited atom, one could use " )Tj -/TT12 1 Tf -17.4257 0 TD -0 Tw -(ATOM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1133 Tw -[( " as the pattern, and specify a case array in)]TJ --19.8261 -1.2889 TD -0 Tw -(which all of the break and separator characters mapped into the same code as space.)Tj --5.3333 -2.8889 TD -0.3167 Tw -(For applications calling for extensive file searches, the function )Tj -/TT10 1 Tf -30.829 0 TD -0 Tw -(FFILEPOS)Tj -/TT8 1 Tf -4.8008 0 TD -0.3167 Tw -[( is often faster than)]TJ -/TT10 1 Tf --35.6298 -1.2889 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT10 1 Tf --1.534 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FFILEPOS)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PATTERN)Tj -/TT16 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(START)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(END)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(SKIP)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TAIL)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CASEARRAY)Tj -/TT10 1 Tf -5.4009 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 414.1825 271.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 271.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.2237 0 TD -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0367 Tw -(, except much faster in most applications. )Tj -/TT10 1 Tf -19.056 0 TD -0 Tw -(FFILEPOS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0367 Tw -[( is an implementation)]TJ --30.2812 -1.2889 TD -0.2511 Tw -[(of the Boyer-Moore fast string searching algorithm. This algorithm preprocesses the)]TJ -0 -1.2222 TD -0.1689 Tw -(string being searched for and then scans through the file in steps usually equal to the)Tj -T* -0.0001 Tc -0.0021 Tw -(length of the string. Thus, )Tj -/TT10 1 Tf -11.8918 0 TD -0 Tc -0 Tw -(FFILEPOS)Tj -/TT8 1 Tf -4.8008 0 TD -0.0022 Tw -( speeds up roughly in proportion to the length of the)Tj --16.6925 -1.2889 TD -0.0933 Tw -(string, e.g., a string of length 10 will be found twice as fast as a string of length 5 in the)Tj -0 -1.2222 TD -0 Tw -(same position.)Tj -0 -2 TD -0.0089 Tw -(Because of certain fixed overheads, it is generally better to use )Tj -/TT10 1 Tf -27.7418 0 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0089 Tw -[( for short searches)]TJ --31.9425 -1.2889 TD -0 Tw -(or short strings.)Tj -/TT10 1 Tf --2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(CASEARRAY)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(OLDARRAY)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 254.8579 146.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 146.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0722 Tw -(Creates and returns a new case array, with all elements set to themselves, to indicate the)Tj -0 -1.2222 TD -0 Tw -(identity mapping. If )Tj -/TT12 1 Tf -9.3965 0 TD -(OLDARRAY)Tj -/TT8 1 Tf -4.8008 0 TD -( is given, it is reused.)Tj -/TT10 1 Tf --16.8639 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETCASEARRAY)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CASEARRAY)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FROMCODE)Tj -/TT16 1 Tf -4.8008 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TOCODE)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 356.5711 95.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 95.92 Tm -([Function])Tj --35.4033 -1.8444 TD -0.2656 Tw -(Modifies the case array )Tj -/TT12 1 Tf -11.5627 0 TD -0 Tw -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -0.2656 Tw -[( so that character code )]TJ -/TT12 1 Tf -11.4264 0 TD -0 Tw -(FROMCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2656 Tw -[( is mapped to)]TJ --33.1908 -1.2889 TD -0 Tw -(character code )Tj -/TT12 1 Tf -6.6445 0 TD -(TOCODE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -ET -endstream -endobj -67 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -69 0 obj -<< -/Length 5709 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-19)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 102 568.2 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETCASEARRAY)Tj -/TT8 1 Tf -7.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CASEARRAY)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FROMCODE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 273.9158 568.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns the character code that )Tj -/TT12 1 Tf -13.9932 0 TD -(FROMCODE)Tj -/TT8 1 Tf -4.8008 0 TD -( is mapped to in )Tj -/TT12 1 Tf -7.3848 0 TD -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --34.2463 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SEPRCASE)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CLFLG)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 185.2552 528.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 528.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1044 Tw -(Returns a new case array suitable for use by )Tj -/TT10 1 Tf -20.6114 0 TD -0 Tw -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1044 Tw -[( or )]TJ -/TT10 1 Tf -1.6498 0 TD -0 Tw -(FFILEPOS)Tj -/TT8 1 Tf -4.8008 0 TD -0.1044 Tw -[( in which all of the)]TJ --31.2627 -1.2889 TD -0.0967 Tw -(break/separators of )Tj -/TT10 1 Tf -9.2514 0 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.0967 Tw -[( are mapped into character code zero. If )]TJ -/TT12 1 Tf -18.8983 0 TD -0 Tw -(CLFLG)Tj -/TT8 1 Tf -3.0005 0 TD -0.0967 Tw -[( is non-)]TJ -/TT10 1 Tf --36.5511 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[(, then all CLISP characters are mapped into this character as well. This is useful for)]TJ --1.8003 -1.2889 TD -0.02 Tw -[(finding a delimited atom in a file. For example, if )]TJ -/TT12 1 Tf -22.3699 0 TD -0 Tw -(PATTERN)Tj -/TT8 1 Tf -4.2007 0 TD -0.02 Tw -[( is )]TJ -/TT10 1 Tf -1.2548 0 TD -0.0478 Tw -(" FOO ")Tj -/TT8 1 Tf -4.2962 0 TD -0.02 Tw -(, and )Tj -/TT10 1 Tf -2.4829 0 TD -0 Tw -(\(SEPRCASE)Tj --34.6045 -1.2889 TD -(T\))Tj -/TT8 1 Tf -1.2002 0 TD -( is used for )Tj -/TT12 1 Tf -5.1055 0 TD -(CASEARRAY)Tj -/TT8 1 Tf -5.4009 0 TD -(, then )Tj -/TT10 1 Tf -2.7192 0 TD -(FILEPOS)Tj -/TT8 1 Tf -4.2007 0 TD -( will find )Tj -/TT10 1 Tf -4.2739 0 TD -("\(FOO_")Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj -/TT14 1 Tf --29.7677 -2.5489 TD -(UPPERCASEARRAY)Tj -/TT6 1 Tf -10 0 0 10 177.6 442.72 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 446.41 442.72 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.5144 Tw -(Value is a case array in which every lowercase character is mapped into the)Tj -0 -1.2222 TD -0 Tw -(corresponding uppercase character. Useful for searching text files.)Tj -/TT4 1 Tf -10 0 0 10 54 372.78 Tm -(Input/Output Operations with Characters and Bytes)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 370.07 m -510.01 370.07 l -S -BT -/TT8 1 Tf -9 0 0 9 78 348.12 Tm -0.08 Tw -[(Interlisp-D supports the 16-bit NS character set \(see Chapter 2\). All of the standard string and print)]TJ -T* -0.0844 Tw -[(name functions accept litatoms and strings containing NS characters. In almost all cases, a program)]TJ -T* -0.0833 Tw -[(does not have to distinguish between NS characters or 8-bit characters. The exception to this rule is)]TJ -T* -0 Tw -(the handling of input/output operations.)Tj -0 -2.8889 TD -0.0322 Tw -[(Interlisp-D uses two ways of writing 16-bit NS characters on files. One way is to write the full 16-bits)]TJ -0 -1.2222 TD -0.1267 Tw -[(\(two bytes\) every time a character is output. The other way is to use "run-encoding." Each 16 NS)]TJ -T* -0.1778 Tw -(character can be decoded into a character set \(an integer from 0 to 254 inclusive\) and a character)Tj -T* -0.1378 Tw -[(number \(also an integer from 0 to 254 inclusive\). In run-encoding, the byte 255 \(illegal as either a)]TJ -T* -0.09 Tw -(character set number or a character number\) is used to signal a change to a given character set, and)Tj -T* -0.2133 Tw -(the following bytes are all assumed to come from the same character set \(until the next change-)Tj -T* -0.0444 Tw -[(character set sequence\). Run-encoding can reduce the number of bytes required to encode a string of)]TJ -T* -0.0767 Tw -(NS characters, as long as there are long sequences of characters from the same character set \(usually)Tj -T* -0 Tw -(the case\).)Tj -/TT16 1 Tf -0 -2.8889 TD -0.1167 Tw -(Note that characters are not the same as bytes.)Tj -/TT8 1 Tf -19.5134 0 TD -[( A single character can take anywhere from one to four)]TJ --19.5134 -1.2222 TD -0.15 Tw -(bytes bytes, depending on whether it is in the same character set as the preceeding character, and)Tj -T* -0.0389 Tw -[(whether run-encoding is enabled. Programs which assume that characters are equal to bytes must be)]TJ -T* -0 Tw -(changed to work with NS characters.)Tj -0 -2.8889 TD -0.04 Tw -(The functions )Tj -/TT10 1 Tf -6.3847 0 TD -0 Tw -(BIN)Tj -/TT8 1 Tf -1.8003 0 TD -0.04 Tw -[( and )]TJ -/TT10 1 Tf -2.2729 0 TD -0 Tw -(BOUT)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -[( \(see above\) should only be used to read and write single eight-bit bytes.)]TJ --12.8582 -1.2889 TD -0.1811 Tw -(The functions )Tj -/TT10 1 Tf -6.6669 0 TD -0 Tw -(READCCODE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1811 Tw -[( and )]TJ -/TT10 1 Tf -2.5551 0 TD -0 Tw -(PRINTCCODE)Tj -/TT8 1 Tf -6.001 0 TD -0.1811 Tw -[( \(see above\) should be used to read and write single)]TJ --20.6239 -1.2889 TD -0.1222 Tw -(character codes, interpreting run-encoded NS characters. )Tj -/TT10 1 Tf -26.4869 0 TD -0 Tw -(COPYBYTES)Tj -/TT8 1 Tf -5.4009 0 TD -0.1222 Tw -[( should only be used to copy)]TJ --31.8878 -1.2889 TD -0.1767 Tw -(blocks of 8-bit data; )Tj -/TT10 1 Tf -9.59 0 TD -0 Tw -(COPYCHARS)Tj -/TT8 1 Tf -5.4009 0 TD -0.1767 Tw -[( should be used to copy characters. Most I/O functions \()]TJ -/TT10 1 Tf -27.0913 0 TD -0 Tw -(READC)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj -/TT10 1 Tf --45.0826 -1.2889 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, etc.\) read or write 16-bit NS characters.)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -72 0 obj -<< -/Length 6401 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0522 Tw -(The use of NS characters has serious consequences for any program that uses file pointers to access a)Tj -0 -1.2222 TD -0.1022 Tw -[(file in a random access manner. At any point when a file is being read or written, it has a "current)]TJ -T* -0.12 Tw -[(character set." If the file pointer is changed with )]TJ -/TT10 1 Tf -22.7884 0 TD -0 Tw -(SETFILEPTR)Tj -/TT8 1 Tf -6.001 0 TD -0.12 Tw -[( to a part of the file with a different)]TJ --28.7894 -1.2889 TD -0.0389 Tw -[(character set, any characters read or written may have the wrong character set. The current character)]TJ -0 -1.2222 TD -0 Tw -(set can be accessed with the following function:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(CHARSET)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CHARACTERSET)Tj -/TT10 1 Tf -7.2012 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 300.3167 502.6 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 502.6 Tm -([Function])Tj --35.4033 -1.8444 TD -0.12 Tw -(Returns the current character set of the stream )Tj -/TT12 1 Tf -21.6153 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.12 Tw -[(. If )]TJ -/TT12 1 Tf -2.0299 0 TD -0 Tw -(CHARACTERSET)Tj -/TT8 1 Tf -7.2012 0 TD -0.12 Tw -[( is non-)]TJ -/TT10 1 Tf -3.4978 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7451 -1.2889 TD -0.0867 Tw -(the current character set for )Tj -/TT12 1 Tf -12.8625 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0867 Tw -[( is set. Note that for output streams this may cause)]TJ --16.4631 -1.2889 TD -0 Tw -(bytes to be written to the stream.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.021 0 TD -(CHARACTERSET)Tj -/TT8 1 Tf -7.2012 0 TD -0.1011 Tw -[( is )]TJ -/TT10 1 Tf -1.4171 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1011 Tw -(, run encoding for )Tj -/TT12 1 Tf -8.5993 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( is disabled: both the character set and)]TJ --22.4392 -1.2889 TD -0.1622 Tw -(the character number \(two bytes total\) will be written to the stream for each character)Tj -0 -1.2222 TD -0 Tw -(printed. )Tj -/TT4 1 Tf -10 0 0 10 102 379.86 Tm -(PRINTOUT)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 377.15 m -558.01 377.15 l -S -BT -/TT8 1 Tf -9 0 0 9 126 355.2 Tm -0.0944 Tw -[(Interlisp provides many facilities for controlling the format of printed output. By executing various)]TJ -T* -0.0122 Tw -(sequences of )Tj -/TT10 1 Tf -5.877 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(SPACES)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5122 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0122 Tw -(, and )Tj -/TT10 1 Tf -2.4673 0 TD -0 Tw -(PRINTDEF)Tj -/TT8 1 Tf -4.8008 0 TD -0.0122 Tw -(, almost any effect can)Tj --35.5094 -1.2889 TD -0.1789 Tw -(be achieved. )Tj -/TT10 1 Tf -6.5196 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1789 Tw -[( implements a compact language for specifying complicated sequences of)]TJ --11.3204 -1.2889 TD -[(these elementary printing functions. It makes fancy output formats easy to design and simple to)]TJ -0 -1.2222 TD -0 Tw -(program.)Tj -/TT10 1 Tf -0 -2.8889 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.11 Tw -[( is a CLISP word \(like )]TJ -/TT10 1 Tf -10.4964 0 TD -0 Tw -(FOR)Tj -/TT8 1 Tf -1.8003 0 TD -0.11 Tw -[( and )]TJ -/TT10 1 Tf -2.4129 0 TD -0 Tw -(IF)Tj -/TT8 1 Tf -1.2002 0 TD -0.11 Tw -(\) for interpreting a special printing language in which)Tj --20.7106 -1.2889 TD -0.1967 Tw -[(you can describe the kinds of printing desired. The description is translated by )]TJ -/TT10 1 Tf -37.976 0 TD -0 Tw -(DWIMIFY)Tj -/TT8 1 Tf -4.2007 0 TD -0.1967 Tw -[( to the)]TJ --42.1767 -1.2889 TD -0.17 Tw -(appropriate sequence of )Tj -/TT10 1 Tf -11.4241 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.67 0 TD -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.17 Tw -(, etc., before it is evaluated or compiled. )Tj -/TT10 1 Tf -19.5866 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.17 Tw -[( printing)]TJ --41.2823 -1.2889 TD -0 Tw -(descriptions have the following general form:)Tj -/TT10 1 Tf -9.3333 -2.8889 TD -(\(PRINTOUT)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(STREAM)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PRINTCOM)Tj -4.7985 -0.3333 TD -(1)Tj -/TT18 1 Tf -0.6 0.3333 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(...)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PRINTCOM)Tj -4.7997 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -(\))Tj -/TT12 1 Tf --31.9333 -3.2889 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0433 Tw -[( is evaluated to obtain the stream to which the output from this specification is directed. The)]TJ -/TT10 1 Tf --3.6006 -1.2889 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1722 Tw -[( commands are strung together, one after the other without punctuation, after )]TJ -/TT12 1 Tf -36.6897 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --45.0911 -1.2889 TD -0.0744 Tw -(Some commands occupy a single position in this list, but many commands expect to find arguments)Tj -0 -1.2222 TD -0.0089 Tw -[(following the command name in the list. The commands fall into several logical groups: one set deals)]TJ -T* -0.4322 Tw -(with horizontal and vertical spacing, another group provides controls for certain formatting)Tj -T* -0.2244 Tw -(capabilities \(font changes and subscripting\), while a third set is concerned with various ways of)Tj -T* -0.0211 Tw -[(actually printing items. Finally, there is a command that permits escaping to a simple Lisp evaluation)]TJ -T* -0.18 Tw -(in the middle of a )Tj -/TT10 1 Tf -8.9547 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.18 Tw -[( form. The various commands are described below. The following)]TJ --13.7555 -1.2889 TD -0 Tw -(examples give a general flavor of how )Tj -/TT10 1 Tf -17.0669 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( is used:)Tj -/TT18 1 Tf --21.8677 -2.9556 TD -0.0611 Tw -(Example 1)Tj -/TT8 1 Tf -4.755 0 TD -[(: Suppose you want to print out on the terminal the values of three variables, )]TJ -/TT10 1 Tf -35.3957 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5611 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0611 Tw -(, and )Tj -/TT10 1 Tf -2.5651 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -(,)Tj --45.0772 -1.2889 TD -(separated by spaces and followed by a carriage return. This could be done by:)Tj -ET -endstream -endobj -73 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -75 0 obj -<< -/Length 4399 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-21)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 126 570.14 Tm -(\(PRIN1 X T\))Tj -4 -1.2222 TD -(\(SPACES 1 T\))Tj -T* -(\(PRIN1 Y T\))Tj -T* -(\(SPACES 1 T\))Tj -T* -(\(PRIN1 Z T\))Tj -T* -(\(TERPRI T\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -(or by the more concise )Tj -/TT10 1 Tf -10.1997 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( form:)Tj -/TT10 1 Tf --9.6672 -2.8889 TD -(\(PRINTOUT T X , Y , Z T\))Tj -/TT8 1 Tf --5.3333 -2.9556 TD -0.0178 Tw -(Here the first )Tj -/TT10 1 Tf -6.1446 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( specifies output to the terminal, the commas cause single spaces to be printed, and the)]TJ --6.7447 -1.2889 TD -0 Tw -(final )Tj -/TT10 1 Tf -2.3248 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0778 Tw -[( specifies a )]TJ -/TT10 1 Tf -5.249 0 TD -0 Tw -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -0.0778 Tw -[(. The variable names are not recognized as special )]TJ -/TT10 1 Tf -23.3081 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.0778 Tw -[( commands,)]TJ --39.8833 -1.2889 TD -0 Tw -(so they are printed using )Tj -/TT10 1 Tf -11.2783 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -( by default.)Tj -/TT18 1 Tf --14.2788 -2.9556 TD -0.0667 Tw -(Example 2)Tj -/TT8 1 Tf -4.7605 0 TD -[(: Suppose the values of )]TJ -/TT10 1 Tf -11.0567 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( and )]TJ -/TT10 1 Tf -2.3262 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( are to be pretty-printed lined up at position 10, preceded)]TJ --19.3437 -1.2889 TD -0 Tw -(by identifying strings. If the output is to go to the primary output stream, you could write either:)Tj -/TT10 1 Tf -5.3333 -2.8222 TD -(\(PRIN1 "X ="\))Tj -4 -1.2222 TD -(\(PRINTDEF X 10 T\))Tj -T* -(\(TERPRI \))Tj -T* -(\(PRIN1 "Y ="\))Tj -T* -(\(PRINTDEF Y 10 T\))Tj -T* -(\(TERPRI\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -(or the equivalent:)Tj -/TT10 1 Tf -5.3333 -2.8222 TD -(\(PRINTOUT NIL "X =" 10 .PPV X T)Tj -4 -1.2222 TD -( "Y =" 10 .PPV Y T\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -0.0678 Tw -(Since strings are not recognized as special commands, )Tj -/TT10 1 Tf -24.6477 0 TD -0.1622 Tw -("X =")Tj -/TT8 1 Tf -3.1627 0 TD -0.0678 Tw -[( is also printed with )]TJ -/TT10 1 Tf -9.3828 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0678 Tw -[( by default.)]TJ --40.1937 -1.2889 TD -0.0578 Tw -(The positive integer means )Tj -/TT10 1 Tf -12.404 0 TD -0 Tw -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.0578 Tw -[( to position 10, where the )]TJ -/TT10 1 Tf -11.7319 0 TD -0 Tw -(.PPV)Tj -/TT8 1 Tf -2.4004 0 TD -0.0578 Tw -[( command causes the value of )]TJ -/TT10 1 Tf -13.8725 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0578 Tw -[( to be)]TJ --42.8092 -1.2889 TD -0.0533 Tw -[(prettyprinted as a variable. By convention, special atoms used as )]TJ -/TT10 1 Tf -29.6624 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.0533 Tw -[( commands are prefixed)]TJ --34.4631 -1.2889 TD -0 Tw -(with a period. The )Tj -/TT10 1 Tf -8.6299 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( causes a carriage return, so the )Tj -/TT10 1 Tf -14.0708 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( information is printed on the next line.)Tj -/TT18 1 Tf --23.9009 -2.9556 TD -0.1644 Tw -(Example 3)Tj -/TT8 1 Tf -4.8583 0 TD -[(. As a final example, suppose that the value of )]TJ -/TT10 1 Tf -22.6229 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1644 Tw -[( is an integer and the value of )]TJ -/TT10 1 Tf -14.6178 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1644 Tw -[( is a)]TJ --43.2991 -1.2889 TD -0.0622 Tw -(floating-point number. )Tj -/TT10 1 Tf -10.7863 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0622 Tw -[( is to be printed right-flushed in a field of width 5 beginning at position 15,)]TJ --11.3864 -1.2889 TD -0 Tw -(and )Tj -/TT10 1 Tf -1.9718 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -[( is to be printed in a field of width 10 also starting at position 15 with 2 places to the right of the)]TJ --2.5719 -1.2889 TD -0.1 Tw -[(decimal point. Furthermore, suppose that the variable names are to appear in the font class named)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(BOLDFONT)Tj -/TT8 1 Tf -4.8008 0 TD -0.12 Tw -[( and the values in font class )]TJ -/TT10 1 Tf -13.2746 0 TD -0 Tw -(SMALLFONT)Tj -/TT8 1 Tf -5.4009 0 TD -0.12 Tw -[(. The program in ordinary Interlisp that would)]TJ --23.4762 -1.2889 TD -0 Tw -(accomplish these effects is too complicated to include here. With )Tj -/TT10 1 Tf -28.9688 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -(, one could write:)Tj -/TT10 1 Tf --28.4362 -2.8889 TD -(\(PRINTOUT NIL)Tj -4 -1.2222 TD -( .FONT BOLDFONT "X =" 15)Tj -ET -endstream -endobj -76 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -79 0 obj -<< -/Length 6911 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 210 570.14 Tm -( .FONT SMALLFONT .I5 X T)Tj -0 -1.2222 TD -( .FONT BOLDFONT "Y =" 15)Tj -T* -( .FONT SMALLFONT .F10.2 Y T)Tj -T* -( .FONT BOLDFONT\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -(The )Tj -/TT10 1 Tf -1.9294 0 TD -(.FONT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[( commands do whatever is necessary to change the font on a multi-font output device. The)]TJ -/TT10 1 Tf --4.9299 -1.2889 TD -0 Tw -(.I5)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( command sets up a )]TJ -/TT10 1 Tf -9.3718 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf -1.8003 0 TD -0.0633 Tw -[( format for a call to the function )]TJ -/TT10 1 Tf -14.7557 0 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0633 Tw -[( \(see above\) to print )]TJ -/TT10 1 Tf -9.325 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0633 Tw -[( in the)]TJ --42.454 -1.2889 TD -0 Tw -(desired format. The )Tj -/TT10 1 Tf -9.1963 0 TD -(.F10.2)Tj -/TT8 1 Tf -3.6006 0 TD -( specifies a )Tj -/TT10 1 Tf -5.0156 0 TD -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -( format for )Tj -/TT10 1 Tf -5.0068 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 457.4 Tm -(Horizontal Spacing Commands)Tj -/TT8 1 Tf -9 0 0 9 126 433.74 Tm -0.2256 Tw -(The horizontal spacing commands provide convenient ways of calling )Tj -/TT10 1 Tf -33.2947 0 TD -0 Tw -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.2256 Tw -[( and )]TJ -/TT10 1 Tf -2.644 0 TD -0 Tw -(SPACES)Tj -/TT8 1 Tf -3.6006 0 TD -0.2256 Tw -[(. In the)]TJ --41.3395 -1.2889 TD -0.0978 Tw -(following descriptions, )Tj -/TT16 1 Tf -10.6291 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.0978 Tw -[( stands for a literal positive integer \()]TJ -/TT16 1 Tf -16.6127 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0978 Tw -[( for a variable or expression whose)]TJ --29.3527 -1.2222 TD -0 Tw -(value is an integer\).)Tj -/TT14 1 Tf -2.6667 -2.4822 TD -(N)Tj -/TT4 1 Tf -10 0 0 10 155.4009 388.8 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 158.1792 388.8 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(N)Tj -/TT4 1 Tf -10 0 0 10 168.9809 388.8 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 171.7593 388.8 Tm -(a number\) )Tj -/TT6 1 Tf -10 0 0 10 225.7681 388.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 388.8 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -0.0811 Tw -[(Used for absolute spacing. It results in a )]TJ -/TT10 1 Tf -18.8936 0 TD -0 Tw -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.0811 Tw -[( to position )]TJ -/TT16 1 Tf -5.4723 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.0811 Tw -[( \(literally, a )]TJ -/TT10 1 Tf -5.4968 0 TD -0 Tw -(\(TAB)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.3311 0 TD -(N)Tj -/TT10 1 Tf -0.6001 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0811 Tw -[(\). If the)]TJ --36.3725 -1.2889 TD -0.1078 Tw -(line is currently at position )Tj -/TT16 1 Tf -12.6512 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.1078 Tw -[( or beyond, the file will be positioned at position )]TJ -/TT12 1 Tf -22.7462 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.1078 Tw -[( on the)]TJ --36.7754 -1.2889 TD -0 Tw -(next line.)Tj -/TT14 1 Tf --2.6667 -2.4822 TD -(.TAB)Tj -/TT18 1 Tf -2.4 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT6 1 Tf -10 0 0 10 190.0526 326.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 326.66 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -(Specifies )Tj -/TT10 1 Tf -4.12 0 TD -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -( to position \(the value of\) )Tj -/TT12 1 Tf -11.3691 0 TD -0 Tc -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0032 Tw -(. This is one of several commands whose effect)Tj --19.0897 -1.2889 TD -0 Tc -0.0067 Tw -[(could be achieved by simply escaping to Lisp, and executing the corresponding form. It is)]TJ -0 -1.2222 TD -0.2244 Tw -(provided as a separate command so that the )Tj -/TT10 1 Tf -21.5617 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.2244 Tw -[( form is more concise and is)]TJ --26.3625 -1.2889 TD -0.2167 Tw -[(prettyprinted more compactly. Note that )]TJ -/TT10 1 Tf -19.8288 0 TD -0 Tw -(.TAB)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT16 1 Tf -0.4667 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.2167 Tw -[( and )]TJ -/TT16 1 Tf -2.6262 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.2167 Tw -(, where )Tj -/TT16 1 Tf -3.9524 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.7778 0 TD -0.2167 Tw -[( is an integer, are)]TJ --31.6079 -1.2889 TD -0 Tw -(equivalent.)Tj -/TT14 1 Tf --2.6667 -2.4822 TD -(.TAB0)Tj -/TT18 1 Tf -3 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT6 1 Tf -10 0 0 10 195.4526 241.92 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 241.92 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.5903 0 TD -(.TAB)Tj -/TT8 1 Tf -2.4004 0 TD -0.4033 Tw -[( except that it can result in zero spaces \(i.e. the call to )]TJ -/TT10 1 Tf -28.7868 0 TD -0 Tw -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.4033 Tw -[( specifies)]TJ -/TT12 1 Tf --35.5778 -1.2889 TD -0 Tw -(MINSPACES)Tj -/TT10 1 Tf -5.4009 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -(0\).)Tj -/TT14 1 Tf --8.6676 -2.5489 TD -(-N)Tj -/TT4 1 Tf -10 0 0 10 160.8017 190.78 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 163.5801 190.78 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(N)Tj -/TT4 1 Tf -10 0 0 10 174.3818 190.78 Tm -( )Tj -/TT10 1 Tf -9 0 0 9 177.1601 190.78 Tm -(a number\))Tj -/TT6 1 Tf -10 0 0 10 225.7681 190.78 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 190.78 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -0.34 Tw -[(Negative integers indicate relative \(as opposed to absolute\) spacing. Translates as)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(\(SPACES)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -0.25 0 TD -(|)Tj -/TT12 1 Tf -0.606 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(|)Tj -/TT10 1 Tf -0.606 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 150 140.24 Tm -(,)Tj -/TT6 1 Tf -0.278 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 140.24 Tm -([PRINTOUT Command])Tj -/TT4 1 Tf -10 0 0 10 150 129.9 Tm -(,,)Tj -/TT6 1 Tf -0.556 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 129.9 Tm -([PRINTOUT Command])Tj -/TT4 1 Tf -10 0 0 10 150 119.56 Tm -(,,,)Tj -/TT6 1 Tf -0.834 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 119.56 Tm -([PRINTOUT Command])Tj --29.1389 -1.7778 TD -0.1444 Tw -(\(1, 2 or 3 commas\) Provides a short-hand way of specifying 1, 2 or 3 spaces, i.e., these)Tj -0 -1.2222 TD -0 Tw -(commands are equivalent to )Tj -/TT10 1 Tf -12.7944 0 TD -(-1)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(-2)Tj -/TT8 1 Tf -1.2002 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(-3)Tj -/TT8 1 Tf -1.2002 0 TD -(, respectively.)Tj -/TT14 1 Tf --22.0046 -2.4 TD -(.SP)Tj -/TT18 1 Tf -1.8 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(DISTANCE)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-24454.8([PRINTOUT Command])]TJ --4.1841 -1.8444 TD -0.0833 Tw -(Translates as )Tj -/TT10 1 Tf -6.1242 0 TD -0 Tw -(\(SPACES)Tj -/TT18 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.3333 0 TD -(DISTANCE)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[(. Note that )]TJ -/TT10 1 Tf -5.4998 0 TD -0 Tw -(.SP)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.3333 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( and )]TJ -/TT10 1 Tf -2.3595 0 TD -0 Tw -(-)Tj -/TT12 1 Tf -0.6001 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -(, where )Tj -/TT12 1 Tf -3.6857 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0833 Tw -[( is an integer, are)]TJ --32.1382 -1.2889 TD -0 Tw -(equivalent.)Tj -ET -endstream -endobj -80 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -82 0 obj -<< -/Length 4359 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-23)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT4 1 Tf --33 -4.38 TD -(Vertical Spacing Commands)Tj -/TT8 1 Tf -9 0 0 9 78 544.54 Tm -(Vertical spacing is obtained by calling )Tj -/TT10 1 Tf -17.0137 0 TD -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -( or printing form-feeds. The relevant commands are:)Tj -/TT14 1 Tf --17.9476 -2.4 TD -(T)Tj -/TT8 1 Tf -0.6 0 TD -[( )-30705.6([PRINTOUT Command])]TJ -2.0667 -1.8444 TD -0.1333 Tw -(Translates as )Tj -/TT10 1 Tf -6.2242 0 TD -0 Tw -(\(TERPRI\))Tj -/TT8 1 Tf -4.8008 0 TD -0.1333 Tw -[(, i.e., move to position 0 \(the first column\) of the next line. To)]TJ --11.025 -1.2889 TD -0 Tw -(print the letter )Tj -/TT10 1 Tf -6.6289 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, use the string )Tj -/TT10 1 Tf -6.7173 0 TD -("T")Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT14 1 Tf --18.4133 -2.4 TD -(.SKIP)Tj -/TT18 1 Tf -3 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LINES)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-25055.1([PRINTOUT Command])]TJ --3.5838 -1.8444 TD -0.3211 Tw -(Equivalent to a sequence of )Tj -/TT12 1 Tf -13.9644 0 TD -0 Tw -(LINES)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT10 1 Tf -0.5711 0 TD -(\(TERPRI\))Tj -/TT8 1 Tf -4.8008 0 TD -0.3211 Tw -[(s. The )]TJ -/TT10 1 Tf -4.3388 0 TD -0 Tw -(.SKIP)Tj -/TT8 1 Tf -3.0005 0 TD -0.3211 Tw -[( command allows for)]TJ --29.6761 -1.2889 TD -0 Tw -(skipping large constant distances and for computing the distance to be skipped.)Tj -/TT14 1 Tf --2.6667 -2.3333 TD -(.PAGE)Tj -/TT8 1 Tf -3 0 TD -[( )-28305.6([PRINTOUT Command])]TJ --0.3333 -1.8444 TD -0.12 Tw -[(Puts a form-feed \(Control-L\) out on the file. Care is taken to make sure that Interlisps)]TJ -0 -1.2222 TD -0 Tw -(view of the current line position is correctly updated.)Tj -/TT4 1 Tf -10 0 0 10 78 367 Tm -(Special Formatting Controls)Tj -/TT8 1 Tf -9 0 0 9 78 343.34 Tm -0.0367 Tw -(There are a small number of commands for invoking some of the formatting capabilities of multi-font)Tj -T* -0 Tw -(output devices. The available commands are:)Tj -/TT14 1 Tf -2.6667 -2.3333 TD -(.FONT)Tj -/TT18 1 Tf -3 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FONTSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-23254.8([PRINTOUT Command])]TJ --5.3841 -1.8444 TD -0.0622 Tw -(Changes printing to the font )Tj -/TT12 1 Tf -13.064 0 TD -0 Tw -(FONTSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.0622 Tw -(, which can be a font descriptor, a "font list" such)Tj --17.8648 -1.2889 TD -0 Tw -(as )Tj -/TT10 1 Tf -1.2416 0 TD -0.1622 Tw -(\(MODERN 10\))Tj -/TT8 1 Tf -7.3634 0 TD -0.0678 Tw -(, an image stream \(coerced to its current font\), or a windows \(coerced)Tj --8.605 -1.2889 TD -0.0156 Tw -[(to the current font of its display stream\). The )]TJ -/TT10 1 Tf -20.3836 0 TD -0 Tw -(DSPFONT)Tj -/TT8 1 Tf -4.2007 0 TD -0.0156 Tw -[( is changed permanently. See fonts)]TJ --24.5843 -1.2889 TD -0 Tw -(\(Chapter 27\) for more information.)Tj -/TT12 1 Tf -0 -2 TD -(FONTSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.0433 Tw -[( may also be a positive integer )]TJ -/TT12 1 Tf -13.9166 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0433 Tw -(, which is taken as an abbreviated reference to)Tj --19.3175 -1.2889 TD -0 Tw -(the font class named )Tj -/TT10 1 Tf -9.3115 0 TD -(FONT)Tj -/TT16 1 Tf -2.4004 0 TD -(N)Tj -/TT8 1 Tf -0.7778 0 TD -( \(e.g. 1 =>)Tj -/TT10 1 Tf -4.3301 0 TD -( FONT1)Tj -/TT8 1 Tf -3.6006 0 TD -(\).)Tj -/TT14 1 Tf --23.0871 -2.4 TD -(.SUP)Tj -/TT8 1 Tf -2.4 0 TD -[( )-28905.6([PRINTOUT Command])]TJ -0.2667 -1.8444 TD -0.2222 Tw -[(Specifies superscripting. All subsequent characters are printed above the base of the)]TJ -0 -1.2222 TD -0 Tw -(current line. Note that this is absolute, not relative: a )Tj -/TT10 1 Tf -23.874 0 TD -(.SUP)Tj -/TT8 1 Tf -2.4004 0 TD -( following a )Tj -/TT10 1 Tf -5.52 0 TD -(.SUP)Tj -/TT8 1 Tf -2.4004 0 TD -( is a no-op.)Tj -/TT14 1 Tf --36.8615 -2.4 TD -(.SUB)Tj -/TT8 1 Tf -2.4 0 TD -[( )-28905.6([PRINTOUT Command])]TJ -0.2667 -1.8444 TD -0.0333 Tw -[(Specifies subscripting. Subsequent printing is below the base of the current line. As with)]TJ -0 -1.2222 TD -0 Tw -(superscripting, the effect is absolute.)Tj -/TT14 1 Tf --2.6667 -2.3333 TD -(.BASE)Tj -/TT8 1 Tf -3 0 TD -[( )-28305.6([PRINTOUT Command])]TJ --0.3333 -1.8444 TD -0.0511 Tw -[(Moves printing back to the base of the current line. Un-does a previous )]TJ -/TT10 1 Tf -32.6077 0 TD -0 Tw -(.SUP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( or )]TJ -/TT10 1 Tf -1.5431 0 TD -0 Tw -(.SUB)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -(; a)Tj --38.9516 -1.2889 TD -0 Tw -(no-op, if printing is currently at the base.)Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -85 0 obj -<< -/Length 5843 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-24)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Printing Specifications)Tj -/TT8 1 Tf -9 0 0 9 126 544.54 Tm -0.09 Tw -(The value of any expression in a )Tj -/TT10 1 Tf -15.1188 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.09 Tw -[( form that is not recognized as a command itself or as a)]TJ --19.9196 -1.2889 TD -(command argument is printed using )Tj -/TT10 1 Tf -16.9285 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.09 Tw -[( by default. For example, title strings can be printed by)]TJ --19.929 -1.2889 TD -0.04 Tw -(simply including the string as a separate )Tj -/TT10 1 Tf -18.4162 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.04 Tw -[( command, and the values of variables and forms)]TJ --23.217 -1.2889 TD -0.2133 Tw -[(can be printed in much the same way. Note that a literal integer, say 51, cannot be printed by)]TJ -0 -1.2222 TD -0.0622 Tw -(including it as a command, since it would be interpreted as a )Tj -/TT10 1 Tf -27.879 0 TD -0 Tw -(TAB)Tj -/TT8 1 Tf -1.8003 0 TD -0.0622 Tw -(; the desired effect can be obtained)Tj --29.6793 -1.2889 TD -0 Tw -(by using instead the string specification "51", or the form )Tj -/TT10 1 Tf -25.2686 0 TD -(\(QUOTE 51\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --31.2695 -2.9556 TD -(For those instances when )Tj -/TT10 1 Tf -11.3889 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -( is not appropriate, e.g., )Tj -/TT10 1 Tf -10.694 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( is required, or a list structures must be)Tj --28.0838 -1.2889 TD -(prettyprinted, the following commands are available: )Tj -/TT14 1 Tf -2.6667 -2.3333 TD -(.P2)Tj -/TT18 1 Tf -1.8 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-26255.1([PRINTOUT Command])]TJ --2.3838 -1.8444 TD -(Causes )Tj -/TT12 1 Tf -3.3887 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -( to be printed using )Tj -/TT10 1 Tf -8.8955 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -(; translates as )Tj -/TT10 1 Tf -6.1709 0 TD -(\(PRIN2)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT14 1 Tf --34.5739 -2.4 TD -(.PPF)Tj -/TT18 1 Tf -2.4 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-25655.1([PRINTOUT Command])]TJ --2.9838 -1.8444 TD -(Causes )Tj -/TT12 1 Tf -3.4342 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -0.0456 Tw -[( to be prettyprinted at the current line position via )]TJ -/TT10 1 Tf -22.8721 0 TD -0 Tw -(PRINTDEF)Tj -/TT8 1 Tf -4.8008 0 TD -0.0456 Tw -[( \(see Chapter)]TJ --34.1076 -1.2889 TD -0.1489 Tw -[(26\). The call to )]TJ -/TT10 1 Tf -7.6492 0 TD -0 Tw -(PRINTDEF)Tj -/TT8 1 Tf -4.8008 0 TD -0.1489 Tw -[( specifies that )]TJ -/TT12 1 Tf -6.6967 0 TD -0 Tw -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -0.1489 Tw -[( is to be printed as if it were part of a)]TJ --22.1472 -1.2889 TD -0 Tw -(function definition. That is, )Tj -/TT10 1 Tf -12.5249 0 TD -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, etc., receive special treatment.)Tj -/TT14 1 Tf --22.2926 -2.4 TD -(.PPV)Tj -/TT18 1 Tf -2.4 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-25655.1([PRINTOUT Command])]TJ --2.9838 -1.8444 TD -(Prettyprints )Tj -/TT12 1 Tf -5.5557 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -( as a variable; no special interpretation is given to )Tj -/TT10 1 Tf -22.0855 0 TD -(SELECTQ)Tj -/TT8 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(PROG)Tj -/TT8 1 Tf -2.4004 0 TD -(, etc.)Tj -/TT14 1 Tf --40.4093 -2.4 TD -(.PPFTL)Tj -/TT18 1 Tf -3.6 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-24455.1([PRINTOUT Command])]TJ --4.1838 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.5626 0 TD -(.PPF)Tj -/TT8 1 Tf -2.4004 0 TD -0.3756 Tw -(, but prettyprints )Tj -/TT12 1 Tf -8.9118 0 TD -0 Tw -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -0.3756 Tw -[( as a )]TJ -/TT16 1 Tf -3.3005 0 TD -0 Tw -(tail)Tj -/TT8 1 Tf -1.3325 0 TD -0.3756 Tw -(, that is, without the initial and final)Tj --21.5083 -1.2889 TD -0.0422 Tw -[(parentheses if it is a list. Useful for prettyprinting sub-lists of a list whose other elements)]TJ -0 -1.2222 TD -0 Tw -(are formatted with other commands.)Tj -/TT14 1 Tf --2.6667 -2.3333 TD -(.PPVTL)Tj -/TT18 1 Tf -3.6 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-24455.1([PRINTOUT Command])]TJ --4.1838 -1.8444 TD -(Like )Tj -/TT10 1 Tf -2.187 0 TD -(.PPV)Tj -/TT8 1 Tf -2.4004 0 TD -(, but prettyprints )Tj -/TT12 1 Tf -7.7852 0 TD -(THING)Tj -/TT8 1 Tf -3.0005 0 TD -( as a tail.)Tj -/TT4 1 Tf -10 0 0 10 126 183.4 Tm -(Paragraph Format)Tj -/TT8 1 Tf -9 0 0 9 126 159.74 Tm -0.1 Tw -(Interlisps prettyprint routines are designed to display the structure of expressions, but they are not)Tj -0 -1.2222 TD -0.1311 Tw -[(really suitable for formatting unstructured text. If a list is to be printed as a textual paragraph, its)]TJ -T* -0.0833 Tw -(internal structure is less important than controlling its left and right margins, and the indentation of)Tj -T* -0 Tw -(its first line. The )Tj -/TT10 1 Tf -7.627 0 TD -(.PARA)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(.PARA2)Tj -/TT8 1 Tf -3.6006 0 TD -( commands allow these parameters to be conveniently specified. )Tj -/TT14 1 Tf --13.7542 -2.4 TD -(.PARA)Tj -/TT18 1 Tf -3 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-19154.2([PRINTOUT Command])]TJ --9.4847 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.8776 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0056 Tw -[( in paragraph format, using )]TJ -/TT10 1 Tf -12.4702 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[(. Translates as )]TJ -/TT10 1 Tf -6.7297 0 TD -0 Tw -(\(PRINTPARA)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.2556 0 TD -(LMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.2556 0 TD -(RMARG)Tj --36.991 -1.2889 TD -(LIST)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( \(see below\).)Tj -ET -endstream -endobj -86 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -88 0 obj -<< -/Length 5427 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-25)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0833 Tw -(Example: )Tj -/TT10 1 Tf -4.7975 0 TD -0.2 Tw -(\(PRINTOUT T 10 .PARA 5 -5 LST\))Tj -/TT8 1 Tf -19.2029 0 TD -0.0833 Tw -[( will print the elements of )]TJ -/TT10 1 Tf -12.1113 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.0833 Tw -[( as a)]TJ --37.9121 -1.2889 TD -0.2244 Tw -(paragraph with left margin at 5, right margin at )Tj -/TT10 1 Tf -23.3296 0 TD -0 Tw -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -0.2244 Tw -(-5, and the first line)Tj --30.5307 -1.2889 TD -0 Tw -(indented to 10. )Tj -/TT14 1 Tf --2.6667 -2.3333 TD -(.PARA2)Tj -/TT18 1 Tf -3.6 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-18554.2([PRINTOUT Command])]TJ --10.0847 -1.8444 TD -0.1656 Tw -(Print as paragraph using )Tj -/TT10 1 Tf -11.8707 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.1656 Tw -[( instead of )]TJ -/TT10 1 Tf -5.3385 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.1656 Tw -[(. Translates as )]TJ -/TT10 1 Tf -7.3697 0 TD -0 Tw -(\(PRINTPARA)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.4156 0 TD -(LMARG)Tj --36.9964 -1.2889 TD -(RMARG)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LIST)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T\))Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 467.2 Tm -(Right-Flushing)Tj -/TT8 1 Tf -9 0 0 9 78 443.54 Tm -0.1567 Tw -(Two commands are provided for printing simple expressions flushed-right against a specified line)Tj -0 -1.2222 TD -0.0022 Tw -(position, using the function )Tj -/TT10 1 Tf -12.4161 0 TD -0 Tw -(FLUSHRIGHT)Tj -/TT8 1 Tf -6.001 0 TD -0.0001 Tc -0.0021 Tw -( \(see below\). They take into account the current position, the)Tj --18.4171 -1.2889 TD -0 Tc -0.0033 Tw -(number of characters in the print-name of the expression, and the position the expression is to be flush)Tj -0 -1.2222 TD -0.05 Tw -[(against, and then print the appropriate number of spaces to achieve the desired effect. Note that this)]TJ -T* -0.0889 Tw -[(might entail going to a new line before printing. Note also that right-flushing of expressions longer)]TJ -T* -0 Tw -(than a line \(e.g. a large list\) makes little sense, and the appearance of the output is not guaranteed.)Tj -/TT14 1 Tf -2.6667 -2.3333 TD -(.FR)Tj -/TT18 1 Tf -1.8 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-24804.9([PRINTOUT Command])]TJ --3.834 -1.8444 TD -0.07 Tw -(Flush-right using )Tj -/TT10 1 Tf -8.0355 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.07 Tw -[(. The value of )]TJ -/TT12 1 Tf -6.8407 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.07 Tw -[( determines the position that the right end of)]TJ -/TT12 1 Tf --19.677 -1.2889 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.2056 Tw -[( will line up at. As with the horizontal spacing commands, a negative position)]TJ --2.4004 -1.2889 TD -0.0456 Tw -(number means |)Tj -/TT12 1 Tf -7.5599 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -(| columns from the current position, a positive number specifies the)Tj --9.3602 -1.2889 TD -0.6322 Tw -(position absolutely. )Tj -/TT12 1 Tf -11.0729 0 TD -0 Tw -(POS)Tj -/TT10 1 Tf -1.8003 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.6322 Tw -[(0 specifies the right-margin, i.e. is interpreted as)]TJ -/TT10 1 Tf --13.4733 -1.2889 TD -0 Tw -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -(.)Tj -/TT14 1 Tf --9.8678 -2.4 TD -(.FR2)Tj -/TT18 1 Tf -2.4 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-24204.9([PRINTOUT Command])]TJ --4.434 -1.8444 TD -(Flush-right using )Tj -/TT10 1 Tf -7.8955 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 235.8 Tm -(Centering)Tj -/TT8 1 Tf -9 0 0 9 78 212.14 Tm -0.0833 Tw -(Commands for centering simple expressions between the current line position and another specified)Tj -0 -1.2222 TD -0 Tw -(position are also available. As with right flushing, centering of large expressions is not guaranteed.)Tj -/TT14 1 Tf -2.6667 -2.3333 TD -(.CENTER)Tj -/TT18 1 Tf -4.2 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-22404.9([PRINTOUT Command])]TJ --6.234 -1.8444 TD -(Centers )Tj -/TT12 1 Tf -3.6907 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0467 Tw -[( between the current line position and the position specified by the value of)]TJ -/TT12 1 Tf --6.0911 -1.2889 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0856 Tw -[(. A positive )]TJ -/TT12 1 Tf -5.893 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0856 Tw -[( is an absolute position number, a negative )]TJ -/TT12 1 Tf -19.8339 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0856 Tw -[( specifies a position)]TJ --31.1277 -1.2889 TD -0 Tw -(relative to the current position, and 0 indicates the right-margin. Uses )Tj -/TT10 1 Tf -31.2393 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -( for printing.)Tj -/TT14 1 Tf --36.9064 -2.4 TD -(.CENTER2)Tj -/TT18 1 Tf -4.8 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT18 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -[( )-21804.9([PRINTOUT Command])]TJ --6.834 -1.8444 TD -(Centers using )Tj -/TT10 1 Tf -6.3501 0 TD -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -( instead of )Tj -/TT10 1 Tf -4.8418 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -ET -endstream -endobj -89 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -91 0 obj -<< -/Length 7385 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-26)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Numbering)Tj -/TT8 1 Tf -9 0 0 9 126 544.54 Tm -0.2111 Tw -(The following commands provide FORTRAN-like formatting capabilities for integer and floating-)Tj -0 -1.2222 TD -0.0778 Tw -[(point numbers. Each command specifies a printing format and a number to be printed. The format)]TJ -T* -0 Tw -(specification translates into a format-list for the function )Tj -/TT10 1 Tf -25.0601 0 TD -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -/TT14 1 Tf --27.1942 -2.4 TD -(.I)Tj -/TT12 1 Tf -1.2 0 TD -(FORMAT)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -[( )-22654.4([PRINTOUT Command])]TJ --5.9845 -1.8444 TD -0.2189 Tw -[(Specifies integer printing. Translates as a call to the function )]TJ -/TT10 1 Tf -29.4571 0 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.2189 Tw -[( with a )]TJ -/TT10 1 Tf -3.9399 0 TD -0 Tw -(FIX)Tj -/TT8 1 Tf --38.1978 -1.2889 TD -0.2578 Tw -(format-list constructed from )Tj -/TT12 1 Tf -13.5077 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.2578 Tw -[(. The atomic format is broken apart at internal)]TJ --17.1083 -1.2889 TD -0.0689 Tw -[(periods to form the format-list. For example, )]TJ -/TT10 1 Tf -20.7078 0 TD -0 Tw -(.I5.8.T)Tj -/TT8 1 Tf -4.2007 0 TD -0.0689 Tw -[( yields the format-list )]TJ -/TT10 1 Tf -9.9626 0 TD -0.1644 Tw -(\(FIX 5 8)Tj --34.8711 -1.2889 TD -0 Tw -(T\))Tj -/TT8 1 Tf -1.2002 0 TD -0.3978 Tw -(, and the command sequence )Tj -/TT10 1 Tf -15.067 0 TD -0.9544 Tw -(\(PRINTOUT T .I5.8.T FOO\))Tj -/TT8 1 Tf -17.2657 0 TD -0.3978 Tw -[( translates as)]TJ -/TT10 1 Tf --33.5329 -1.2889 TD -0.34 Tw -(\(PRINTNUM \(FIX 5 8 T\) FOO\))Tj -/TT8 1 Tf -17.9026 0 TD -0.1422 Tw -[(. This expression causes the value of )]TJ -/TT10 1 Tf -17.6119 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.1422 Tw -[( to be)]TJ --37.3148 -1.2889 TD -0.0278 Tw -(printed in radix 8 right-flushed in a field of width 5, with 0s used for padding on the left.)Tj -0 -1.2222 TD -0 Tw -(Internal )Tj -/TT10 1 Tf -3.7911 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -(s in the format specification may be omitted, e.g., the commands )Tj -/TT10 1 Tf -29.5119 0 TD -0 Tw -(.I5)Tj -/TT18 1 Tf -1.8003 0 TD -(..)Tj -/TT10 1 Tf -0.5 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -[( and)]TJ -/TT10 1 Tf --38.0037 -1.2889 TD -0 Tw -(.I5.NIL.T)Tj -/TT8 1 Tf -5.4009 0 TD -( are equivalent.)Tj --5.4009 -2.0667 TD -0.03 Tw -(The format specification )Tj -/TT10 1 Tf -11.0485 0 TD -0 Tw -(.I1)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[( is often useful for forcing a number to be printed in radix 10)]TJ --12.8488 -1.2889 TD -0 Tw -(\(but not otherwise specially formatted\), independent of the current setting of )Tj -/TT10 1 Tf -34.2109 0 TD -(RADIX)Tj -/TT8 1 Tf -3.0005 0 TD -(. )Tj -/TT14 1 Tf --39.8781 -2.4 TD -(.F)Tj -/TT10 1 Tf -1.2 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FORMAT)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NUMBER)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT8 1 Tf -22.5543 0 TD -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -0.0144 Tw -[(Specifies floating-number printing. Like the )]TJ -/TT10 1 Tf -19.9055 0 TD -0 Tw -(.I)Tj -/TT8 1 Tf -1.2002 0 TD -0.0144 Tw -[( format command, except translates with a)]TJ -/TT10 1 Tf --21.1057 -1.2889 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -( format-list.)Tj -/TT14 1 Tf --5.6672 -2.5489 TD -(.N)Tj -/TT16 1 Tf -1.2 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FORMAT)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(NUMBER)Tj -/TT6 1 Tf -10 0 0 10 230.1105 300.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 300.8 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -(The )Tj -/TT10 1 Tf -2.0272 0 TD -(.I)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( and )]TJ -/TT10 1 Tf -2.3995 0 TD -0 Tw -(.F)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( commands specify calls to )]TJ -/TT10 1 Tf -12.5884 0 TD -0 Tw -(PRINTNUM)Tj -/TT8 1 Tf -4.8008 0 TD -0.1033 Tw -[( with quoted format specifications.)]TJ --24.2163 -1.2889 TD -0 Tw -(The )Tj -/TT10 1 Tf -1.9261 0 TD -(.N)Tj -/TT8 1 Tf -1.2002 0 TD -0.0001 Tc -0.0021 Tw -( command translates as )Tj -/TT10 1 Tf -10.628 0 TD -0 Tc -0 Tw -(\(PRINTNUM)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.2522 0 TD -(FORMAT)Tj -/TT18 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.2522 0 TD -(NUMBER)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0022 Tw -(, i.e., it permits the format to)Tj --27.4609 -1.2889 TD -0.0178 Tw -[(be the value of some expression. Note that, unlike the )]TJ -/TT10 1 Tf -24.3562 0 TD -0 Tw -(.I)Tj -/TT8 1 Tf -1.2002 0 TD -0.0178 Tw -[( and )]TJ -/TT10 1 Tf -2.2284 0 TD -0 Tw -(.F)Tj -/TT8 1 Tf -1.2002 0 TD -0.0178 Tw -[( commands, )]TJ -/TT12 1 Tf -5.6576 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0178 Tw -[( is a)]TJ --38.2432 -1.2889 TD -0 Tw -(separate element in the command list, not part of an atom beginning with )Tj -/TT10 1 Tf -32.7617 0 TD -(.N)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 219.46 Tm -(Escaping to Lisp)Tj -/TT8 1 Tf -9 0 0 9 126 195.8 Tm -0.1611 Tw -(There are many reasons for taking control away from )Tj -/TT10 1 Tf -25.2547 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1611 Tw -[( in the middle of a long printing)]TJ --30.0555 -1.2889 TD -0.2844 Tw -[(expression. Common situations involve temporary changes to system printing parameters \(e.g.)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(LINELENGTH)Tj -/TT8 1 Tf -6.001 0 TD -0.09 Tw -(\), conditional printing \(e.g. print )Tj -/TT10 1 Tf -14.9808 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( only if )]TJ -/TT10 1 Tf -3.6191 0 TD -0 Tw -(FIE)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -[( is )]TJ -/TT10 1 Tf -1.3948 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.09 Tw -(\), or lower-level iterative printing)Tj --30.1964 -1.2889 TD -0 Tw -(within a higher-level print specification.)Tj -/TT14 1 Tf -2.6667 -2.4822 TD -(#)Tj -/TT4 1 Tf -10 0 0 10 155.4 139.26 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 158.1783 139.26 Tm -(FORM)Tj -/TT6 1 Tf -10 0 0 10 179.7818 139.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 436.25 139.26 Tm -([PRINTOUT Command])Tj --29.1389 -1.8444 TD -0.0944 Tw -(The escape command. )Tj -/TT12 1 Tf -10.6766 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0944 Tw -[( is an arbitrary Lisp expression that is evaluated within the)]TJ --13.077 -1.2889 TD -0.0278 Tw -(context established by the )Tj -/TT10 1 Tf -11.7869 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.0278 Tw -[( form, i.e., )]TJ -/TT12 1 Tf -4.7601 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0278 Tw -[( can assume that the primary output)]TJ --23.7482 -1.2889 TD -0.12 Tw -(stream has been set to be the )Tj -/TT12 1 Tf -13.7165 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.12 Tw -[( argument to )]TJ -/TT10 1 Tf -6.3063 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.12 Tw -[(. Note that nothing is done)]TJ --27.2239 -1.2889 TD -0.0233 Tw -(with the )Tj -/TT16 1 Tf -3.9671 0 TD -0 Tw -(value)Tj -/TT8 1 Tf -2.167 0 TD -0.0233 Tw -[( of )]TJ -/TT12 1 Tf -1.4256 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -(; any printing desired is accomplished by )Tj -/TT12 1 Tf -18.635 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0233 Tw -[( itself, and the value)]TJ --30.9954 -1.2889 TD -0 Tw -(is discarded.)Tj -0 -2.3333 TD -[(Note:)-1567.9( Although )]TJ -/TT10 1 Tf -8.7642 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( logically encloses its translation in a )Tj -/TT10 1 Tf -16.3618 0 TD -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -( \(Chapter)Tj --31.3276 -1.2889 TD -(14\) to change the primary output file to the )Tj -/TT12 1 Tf -19.2651 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( argument \(if non-)Tj -/TT10 1 Tf -8.0742 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(\), in most)Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -94 0 obj -<< -/Length 5787 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-27)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 162 569.54 Tm -(cases it can actually pass )Tj -/TT12 1 Tf -11.1235 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( \(or a locally bound variable if )Tj -/TT12 1 Tf -13.5361 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( is a non-)Tj --29.4605 -1.2889 TD -(trivial expression\) to each printing function. Thus, the )Tj -/TT10 1 Tf -24.2964 0 TD -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -( is only)Tj --29.6973 -1.2889 TD -(generated when the )Tj -/TT10 1 Tf -9.0215 0 TD -(#)Tj -/TT8 1 Tf -0.6001 0 TD -( command is used, or user-defined commands \(below\) are)Tj --9.6216 -1.2889 TD -(used. If many such occur in repeated )Tj -/TT10 1 Tf -16.7852 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( forms, it may be more efficient)Tj --21.5859 -1.2889 TD -(to embed them all in a single )Tj -/TT10 1 Tf -12.9751 0 TD -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -( which changes the primary output file,)Tj --18.376 -1.2889 TD -(and then specify )Tj -/TT12 1 Tf -7.54 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -( in the )Tj -/TT10 1 Tf -3.0103 0 TD -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -( expressions themselves. )Tj -/TT4 1 Tf -10 0 0 10 78 481.6 Tm -(User-Defined Commands)Tj -/TT8 1 Tf -9 0 0 9 78 457.94 Tm -0.1444 Tw -(The collection of commands and options outlined above is aimed at fulfilling all common printing)Tj -0 -1.2222 TD -0.0167 Tw -[(needs. However, certain applications might have other, more specialized printing idioms, so a facility)]TJ -T* -0.0389 Tw -[(is provided whereby you can define new commands. This is done by adding entries to the global list)]TJ -/TT10 1 Tf -T* -0 Tw -(PRINTOUTMACROS)Tj -/TT8 1 Tf -8.4014 0 TD -( to define how the new commands are to be translated. )Tj -/TT14 1 Tf --5.7347 -2.4 TD -(PRINTOUTMACROS)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ -/TT10 1 Tf --5.7333 -1.8444 TD -(PRINTOUTMACROS)Tj -/TT8 1 Tf -8.4014 0 TD -0.2233 Tw -[( is an association-list whose elements are of the form)]TJ -/TT18 1 Tf -25.1999 0 TD -0.2233 Tc -0 Tw -( \()Tj -/TT12 1 Tf -0.8063 0 TD -0 Tc -(COMM)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -1.1368 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --39.7451 -1.2889 TD -(Whenever )Tj -/TT12 1 Tf -4.901 0 TD -(COMM)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -[( appears in command position in the sequence of )]TJ -/TT10 1 Tf -22.6772 0 TD -0 Tw -(PRINTOUT)Tj -/TT8 1 Tf -4.8008 0 TD -0.09 Tw -[( commands)]TJ --34.7794 -1.2889 TD -0.0233 Tw -(\(as opposed to an argument position of another command\), )Tj -/TT16 1 Tf -26.73 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.334 0 TD -0.0233 Tw -[( is applied to the tail of the)]TJ --28.064 -1.2222 TD -0 Tw -(command-list \(including the command\).)Tj -0 -2 TD -0.1322 Tw -(After inspecting as much of the tail as necessary, the function must return a list whose)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[( is the translation of the user-defined command and its arguments, and whose )]TJ -/TT10 1 Tf -35.3743 0 TD -0 Tw -(CDR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0489 Tw -[( is)]TJ --38.9749 -1.2889 TD -0 Tw -(the list of commands still remaining to be translated in the normal way.)Tj -0 -2 TD -0.1878 Tw -(For example, suppose you want to define a command ")Tj -/TT10 1 Tf -26.0274 0 TD -0 Tw -(?)Tj -/TT8 1 Tf -0.6001 0 TD -0.1878 Tw -(", which will cause its single)Tj --26.6275 -1.2889 TD -0.0311 Tw -(argument to be printed with )Tj -/TT10 1 Tf -12.9524 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0311 Tw -[( only if it is not )]TJ -/TT10 1 Tf -7.0719 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[(. This can be done by entering )]TJ -/TT10 1 Tf -13.9842 0 TD -0 Tw -(\(?)Tj --38.8094 -1.2889 TD -(?TRAN\))Tj -/TT8 1 Tf -3.6006 0 TD -( on )Tj -/TT10 1 Tf -1.6279 0 TD -(PRINTOUTMACROS)Tj -/TT8 1 Tf -8.4014 0 TD -(, and defining the function )Tj -/TT10 1 Tf -12.0122 0 TD -(?TRAN)Tj -/TT8 1 Tf -3.0005 0 TD -( as follows:)Tj -/TT10 1 Tf --20.6426 -2 TD -(\(DEFINEQ \(?TRAN \(COMS\))Tj -0 -1.2222 TD -( \(CONS)Tj -T* -( \(SUBST \(CADR COMS\) ARG)Tj -T* -( \(PROG \(\(TEMP ARG\)\))Tj -T* -( \(COND \(TEMP \(PRIN1 TEMP\)\)\)\)\))Tj -T* -( \(CDDR COMS\)\)])Tj -/TT8 1 Tf --8 -2.0667 TD -0.0478 Tw -(Note that )Tj -/TT10 1 Tf -4.5121 0 TD -0 Tw -(?TRAN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -[( does not do any printing itself; it returns a form which, when evaluated)]TJ --7.5125 -1.2889 TD -0.0111 Tw -[(in the proper context, will perform the desired action. This form should direct all printing)]TJ -0 -1.2222 TD -0 Tw -(to the primary output file.)Tj -/TT4 1 Tf -10 0 0 10 78 127.2 Tm -(Special Printing Functions)Tj -/TT8 1 Tf -9 0 0 9 78 103.54 Tm -0.0944 Tw -(The paragraph printing commands are translated into calls on the function )Tj -/TT10 1 Tf -34.3148 0 TD -0 Tw -(PRINTPARA)Tj -/TT8 1 Tf -5.4009 0 TD -0.0944 Tw -(, which may)Tj --39.7156 -1.2889 TD -0 Tw -(also be called directly:)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(PRINTPARA)Tj -/TT18 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LMARG)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RMARG)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LIST)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(P2FLAG)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(PARENFLAG)Tj -/TT16 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-9666.7([Function])]TJ --25.2367 -1.8444 TD -(Prints )Tj -/TT12 1 Tf -2.8821 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -0.01 Tw -[( on )]TJ -/TT12 1 Tf -1.6479 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.01 Tw -[( in line-filled paragraph format with its first element beginning at the)]TJ --9.3308 -1.2889 TD -0.0267 Tw -(current line position and ending at or before )Tj -/TT12 1 Tf -20.0336 0 TD -0 Tw -(RMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.0267 Tw -(, and with subsequent lines appearing)Tj -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -97 0 obj -<< -/Length 8591 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-28)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(between )Tj -/TT12 1 Tf -4.3135 0 TD -(LMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.3311 Tw -[( and )]TJ -/TT12 1 Tf -2.8551 0 TD -0 Tw -(RMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.3311 Tw -[(. If )]TJ -/TT12 1 Tf -2.6633 0 TD -0 Tw -(P2FLAG)Tj -/TT8 1 Tf -3.6006 0 TD -0.3311 Tw -[( is non-)]TJ -/TT10 1 Tf -3.92 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3311 Tw -(, prints elements using )Tj -/TT10 1 Tf -11.5925 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj --39.7468 -1.2889 TD -(otherwise )Tj -/TT10 1 Tf -4.6348 0 TD -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0289 Tw -[(. If )]TJ -/TT12 1 Tf -1.7566 0 TD -0 Tw -(PARENFLAG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0289 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3156 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0289 Tw -(, then parentheses will be printed around the)Tj --19.9087 -1.2889 TD -0 Tw -(elements of )Tj -/TT12 1 Tf -5.3218 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --7.7222 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.1255 0 TD -(LMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.2056 Tw -[( is zero or positive, it is interpreted as an absolute column position. If it is)]TJ --4.126 -1.2889 TD -0.0744 Tw -(negative, then the left margin will be at |)Tj -/TT12 1 Tf -18.7879 0 TD -0 Tw -(LMARG)Tj -/TT8 1 Tf -3.0005 0 TD -(|+)Tj -/TT10 1 Tf -1.2119 0 TD -(\(POSITION\))Tj -/TT8 1 Tf -6.001 0 TD -0.0744 Tw -[(. If )]TJ -/TT12 1 Tf -1.8933 0 TD -0 Tw -(LMARG)Tj -/TT10 1 Tf -3.0005 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0744 Tw -(, the left)Tj --36.2955 -1.2889 TD -0 Tw -(margin will be at )Tj -/TT10 1 Tf -7.7725 0 TD -(\(POSITION\))Tj -/TT8 1 Tf -6.001 0 TD -(, and the paragraph will appear in block format.)Tj --13.7734 -2.0667 TD -(If )Tj -/TT12 1 Tf -0.9477 0 TD -(RMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.0278 Tw -[( is positive, it also is an absolute column position \(which may be greater than the)]TJ --3.9482 -1.2889 TD -0 Tw -(current )Tj -/TT10 1 Tf -3.5652 0 TD -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -0.0911 Tw -[(\). Otherwise, it is interpreted as relative to )]TJ -/TT10 1 Tf -19.9177 0 TD -0 Tw -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -0.0911 Tw -(, i.e.,)Tj --37.8852 -1.2889 TD -0.4833 Tw -(the right margin will be at )Tj -/TT10 1 Tf -14.7101 0 TD -0 Tw -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -(+|)Tj -/TT12 1 Tf -1.2119 0 TD -(RMARG)Tj -/TT8 1 Tf -3.0005 0 TD -0.4833 Tw -[(|. Example: )]TJ -/TT10 1 Tf -7.9202 0 TD -1.16 Tw -(\(TAB 10\))Tj --34.0438 -1.2889 TD -0.2222 Tw -(\(PRINTPARA 5 -5 LST T\))Tj -/TT8 1 Tf -14.091 0 TD -0.0922 Tw -[( will )]TJ -/TT10 1 Tf -2.3915 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.0922 Tw -[( the elements of )]TJ -/TT10 1 Tf -7.5779 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.0922 Tw -[( in a paragraph with the)]TJ --28.8612 -1.2889 TD -0.1322 Tw -(first line beginning at column 10, subsequent lines beginning at column 5, and all lines)Tj -0 -1.2222 TD -0 Tw -(ending at or before )Tj -/TT10 1 Tf -8.6533 0 TD -(\(LINELENGTH\)-5)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj --17.0547 -2.0667 TD -0.1567 Tw -(The current )Tj -/TT10 1 Tf -5.7113 0 TD -0 Tw -(\(LINELENGTH\))Tj -/TT8 1 Tf -7.2012 0 TD -0.1567 Tw -[( is unaffected by )]TJ -/TT10 1 Tf -8.1408 0 TD -0 Tw -(PRINTPARA)Tj -/TT8 1 Tf -5.4009 0 TD -0.1567 Tw -(, and upon completion, )Tj -/TT12 1 Tf -11.1403 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf --37.5945 -1.2889 TD -0.4144 Tw -(will be positioned immediately after the last character of the last item of )Tj -/TT12 1 Tf -37.3551 0 TD -0 Tw -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --39.7555 -1.2889 TD -(PRINTPARA)Tj -/TT8 1 Tf -5.4009 0 TD -( is a no-op if )Tj -/TT12 1 Tf -5.6968 0 TD -(LIST)Tj -/TT8 1 Tf -2.4004 0 TD -( is not a list. )Tj --18.8314 -2.9556 TD -(The right-flushing and centering commands translate as calls to the function )Tj -/TT10 1 Tf -33.9316 0 TD -(FLUSHRIGHT)Tj -/TT8 1 Tf -6.001 0 TD -(:)Tj -/TT10 1 Tf --37.266 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(FLUSHRIGHT)Tj -/TT18 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(POS)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(MIN)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(P2FLAG)Tj -/TT16 1 Tf -3.6006 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CENTERFLAG)Tj -/TT16 1 Tf -6.001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-12667.3([Function])]TJ --22.2361 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.1377 0 TD -(CENTERFLAG)Tj -/TT10 1 Tf -6.001 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.2178 Tw -(, prints )Tj -/TT12 1 Tf -3.8047 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2178 Tw -[( right-flushed against position )]TJ -/TT12 1 Tf -14.4634 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.2178 Tw -[( on )]TJ -/TT12 1 Tf -2.0635 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2178 Tw -(; otherwise,)Tj --34.6714 -1.2889 TD -0 Tw -(centers )Tj -/TT12 1 Tf -3.51 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1311 Tw -[( between the current line position and )]TJ -/TT12 1 Tf -17.9544 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.1311 Tw -[(. Makes sure that it spaces over at)]TJ --23.8648 -1.2889 TD -0 Tw -(least )Tj -/TT12 1 Tf -2.3545 0 TD -(MIN)Tj -/TT8 1 Tf -1.8003 0 TD -0.0844 Tw -[( spaces before printing by doing a )]TJ -/TT10 1 Tf -15.8177 0 TD -0 Tw -(TERPRI)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -[( if necessary; )]TJ -/TT12 1 Tf -6.1601 0 TD -0 Tw -(MIN)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -[( is equivalent)]TJ --33.9338 -1.2889 TD -0 Tw -(to )Tj -/TT12 1 Tf -1.2087 0 TD -(MIN)Tj -/TT10 1 Tf -1.8003 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0867 Tw -[(1. A positive )]TJ -/TT12 1 Tf -6.7341 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0867 Tw -[( indicates an absolute position, while a negative )]TJ -/TT12 1 Tf -22.0576 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0867 Tw -[( signifies)]TJ --36.0014 -1.2889 TD -0.0356 Tw -(the position which is |)Tj -/TT12 1 Tf -10.1901 0 TD -0 Tw -(POS)Tj -/TT8 1 Tf -1.8003 0 TD -0.0356 Tw -(| to the right of the current line position. )Tj -/TT12 1 Tf -18.8614 0 TD -0 Tw -(POS)Tj -/TT10 1 Tf -1.8003 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0356 Tw -(0 is interpreted)Tj --33.2522 -1.2889 TD -0 Tw -(as )Tj -/TT10 1 Tf -1.1738 0 TD -(\(LINELENGTH)Tj -/TT8 1 Tf -6.6011 0 TD -(\), the right margin.)Tj -/TT4 1 Tf -10 0 0 10 102 221 Tm -(READFILE and WRITEFILE)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 218.29 m -558.01 218.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 196.34 Tm -0.0544 Tw -(For those applications where you simply want to simply read all of the expressions on a file, and not)Tj -0 -1.2222 TD -0 Tw -(evaluate them, the function READFILE is available:)Tj -/TT10 1 Tf -2.6667 -2.4822 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READFILE)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(ENDTOKEN)Tj -/TT10 1 Tf -4.8008 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 302.5658 163 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 449.99 163 Tm -([NoSpread Function])Tj --30.6656 -1.8444 TD -0.2378 Tw -(Reads successive expressions from file using )Tj -/TT10 1 Tf -21.352 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.2378 Tw -[( \(with read table )]TJ -/TT12 1 Tf -8.4516 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.2378 Tw -(\) until the)Tj --35.2044 -1.2889 TD -0.14 Tw -(single litatom )Tj -/TT12 1 Tf -6.5661 0 TD -0 Tw -(ENDTOKEN)Tj -/TT8 1 Tf -4.8008 0 TD -0.14 Tw -[( is read, or an end of file encountered. Returns a list of these)]TJ --11.3669 -1.2889 TD -0 Tw -(expressions.)Tj -0 -2 TD -(If )Tj -/TT12 1 Tf -1.1221 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.2022 Tw -[( is not specified, it defaults to )]TJ -/TT10 1 Tf -14.5933 0 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.2022 Tw -[(. If )]TJ -/TT12 1 Tf -2.2766 0 TD -0 Tw -(ENDTOKEN)Tj -/TT8 1 Tf -4.8008 0 TD -0.2022 Tw -[( is not specified, it)]TJ --31.1942 -1.2889 TD -0 Tw -(defaults to the litatom )Tj -/TT10 1 Tf -9.9893 0 TD -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --15.0563 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(WRITEFILE)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(X)Tj -/TT16 1 Tf -0.6001 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 240.9053 70.66 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 70.66 Tm -([Function])Tj --35.4033 -1.8444 TD -0.17 Tw -(Writes a date expression onto )Tj -/TT12 1 Tf -14.1679 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.17 Tw -(, followed by successive expressions from )Tj -/TT12 1 Tf -19.7036 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.17 Tw -(, using)Tj -/TT10 1 Tf --36.872 -1.2889 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.13 Tw -[( as a read table. If )]TJ -/TT12 1 Tf -9.138 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.13 Tw -[( is atomic, its value is used. If )]TJ -/TT12 1 Tf -14.6051 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.13 Tw -[( is not open, it is)]TJ -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -100 0 obj -<< -/Length 6303 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-29)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0056 Tw -[(opened. If )]TJ -/TT12 1 Tf -4.9844 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0056 Tw -[( is a list, )]TJ -/TT10 1 Tf -3.8191 0 TD -0 Tw -(\(CAR)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.2556 0 TD -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0056 Tw -[( is used and the file is left opened. Otherwise, when)]TJ -/TT16 1 Tf --16.8604 -1.2889 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.7222 0 TD -( is finished, the litatom )Tj -/TT10 1 Tf -10.3579 0 TD -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -( is printed on )Tj -/TT12 1 Tf -6.1279 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( and it is closed. Returns )Tj -/TT12 1 Tf -11.2964 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf --38.3722 -2.5489 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(ENDFILE)Tj -/TT4 1 Tf -10 0 0 10 145.2 535 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 147.9783 535 Tm -(FILE)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 174.9827 535 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 535 Tm -([Function])Tj --35.4033 -1.8445 TD -(Prints )Tj -/TT10 1 Tf -2.8721 0 TD -(STOP)Tj -/TT8 1 Tf -2.4004 0 TD -( on )Tj -/TT12 1 Tf -1.6279 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( and closes it.)Tj -/TT4 1 Tf -10 0 0 10 54 475.46 Tm -(Read Tables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 472.75 m -510.01 472.75 l -S -BT -/TT8 1 Tf -9 0 0 9 78 450.8 Tm -0.0278 Tw -[(Many Interlisp input functions treat certain characters in special ways. For example, )]TJ -/TT10 1 Tf -37.9505 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0278 Tw -[( recognizes)]TJ --40.3509 -1.2889 TD -0.1589 Tw -(that the right and left parenthesis characters are used to specify list structures, and that the quote)Tj -0 -1.2222 TD -0.0789 Tw -[(character is used to delimit text strings. The Interlisp input and \(to a certain extent\) output routines)]TJ -T* -0.2622 Tw -[(are table driven by read tables. Read tables are objects that specify the syntactic properties of)]TJ -T* -0.03 Tw -[(characters for input routines. Since the input routines parse character sequences into objects, the read)]TJ -T* -0 Tw -(table in use determines which sequences are recognized as literal atoms, strings, list structures, etc.)Tj -0 -2.8889 TD -0.0567 Tw -(Most Interlisp input functions take an optional read table argument, which specifies the read table to)Tj -0 -1.2222 TD -0.03 Tw -[(use when reading an expression. If )]TJ -/TT10 1 Tf -16.0957 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.03 Tw -[( is given as the read table, the "primary read table" is used. If)]TJ -/TT10 1 Tf --17.896 -1.2889 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0556 Tw -[( is specified, the system terminal read table is used. Some functions will also accept the atom )]TJ -/TT10 1 Tf -42.3267 0 TD -0 Tw -(ORIG)Tj -/TT8 1 Tf --42.9268 -1.2889 TD -(\()Tj -/TT16 1 Tf -0.333 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0356 Tw -[( the )]TJ -/TT16 1 Tf -1.9583 0 TD -0 Tw -(value)Tj -/TT8 1 Tf -2.167 0 TD -0.0356 Tw -[( of )]TJ -/TT10 1 Tf -1.45 0 TD -0 Tw -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0355 Tw -[(\) as indicating the "original" system read table. Some output functions also take)]TJ --9.6417 -1.2889 TD -0.04 Tw -[(a read table argument. For example, )]TJ -/TT10 1 Tf -16.7346 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.04 Tw -[( prints an expression so that it would be read in correctly)]TJ --19.7351 -1.2889 TD -0 Tw -(using a given read table.)Tj -0 -2.8889 TD -0.01 Tw -(The Interlisp-D system uses the following read tables: )Tj -/TT10 1 Tf -24.3337 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.01 Tw -[( for input/output from terminals, the value of)]TJ -/TT10 1 Tf --24.9338 -1.2889 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.1044 Tw -[( for input/output from files, the value of )]TJ -/TT10 1 Tf -19.0528 0 TD -0 Tw -(EDITRDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.1044 Tw -[( for input from terminals while in)]TJ --29.8546 -1.2889 TD -0.13 Tw -(the tty-based editor, the value of )Tj -/TT10 1 Tf -15.3777 0 TD -0 Tw -(DEDITRDTBL)Tj -/TT8 1 Tf -6.001 0 TD -0.13 Tw -[( for input from terminals while in the display-based)]TJ --21.3786 -1.2889 TD -0.05 Tw -(editor, and the value of )Tj -/TT10 1 Tf -10.7949 0 TD -0 Tw -(CODERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.05 Tw -[( for input/output from compiled files. These five read tables are)]TJ --16.1958 -1.2889 TD -0.11 Tw -(initially copies of the )Tj -/TT10 1 Tf -9.9102 0 TD -0 Tw -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -0.11 Tw -[( read table, with changes made to some of them to provide read macros)]TJ --12.3106 -1.2889 TD -0.03 Tw -[(that are specific to terminal input or file input. Using the functions described below, you may further)]TJ -0 -1.2222 TD -0.1378 Tw -[(change, reset, or copy these tables. However, in the case of )]TJ -/TT10 1 Tf -27.9663 0 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.1378 Tw -[( and )]TJ -/TT10 1 Tf -2.4684 0 TD -0 Tw -(CODERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.1378 Tw -(, you are)Tj --41.2365 -1.2889 TD -0.05 Tw -(cautioned that changing these tables may prevent the system from being able to read files made with)Tj -0 -1.2222 TD -0.0178 Tw -(the original tables, or prevent users possessing only the standard tables from reading files made using)Tj -T* -0 Tw -(the modified tables.)Tj -0 -2.8889 TD -0.1778 Tw -(You can also create new read tables, and either explicitly pass them to input/output functions as)Tj -0 -1.2222 TD -0.1867 Tw -(arguments, or install them as the primary read table, via )Tj -/TT10 1 Tf -26.9531 0 TD -0 Tw -(SETREADTABLE)Tj -/TT8 1 Tf -7.2012 0 TD -0.1867 Tw -(, and then not specify a)Tj -/TT16 1 Tf --34.1543 -1.2889 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.2227 0 TD -( argument, i.e., use )Tj -/TT10 1 Tf -8.6001 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 104.66 Tm -(Read Table Functions)Tj -/TT10 1 Tf -9 0 0 9 102 86 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READTABLEP)Tj -/TT18 1 Tf -5.9999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27119.4([Function])]TJ --7.7839 -1.8444 TD -(Returns )Tj -/TT12 1 Tf -3.7271 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -( if )Tj -/TT12 1 Tf -1.124 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -( is a real read table \()Tj -/TT16 1 Tf -8.8472 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -(\), otherwise )Tj -/TT10 1 Tf -5.439 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -103 0 obj -<< -/Length 7700 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-30)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETREADTABLE)Tj -/TT18 1 Tf -7.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25919.4([Function])]TJ --8.9839 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.0188 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[(, returns the primary read table. If )]TJ -/TT12 1 Tf -16.3077 0 TD -0 Tw -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -0.0989 Tw -(, returns the system terminal)Tj --26.9281 -1.2889 TD -0.0089 Tw -[(read table. If )]TJ -/TT12 1 Tf -6.0898 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0089 Tw -[( is a real read table, returns )]TJ -/TT12 1 Tf -12.2805 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0089 Tw -(. Otherwise, generates an )Tj -/TT10 1 Tf -11.434 0 TD -0 Tw -(ILLEGAL)Tj --35.8052 -1.2889 TD -(READTABLE)Tj -/TT8 1 Tf -5.4009 0 TD -( error.)Tj -/TT10 1 Tf --8.0675 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETREADTABLE)Tj -/TT18 1 Tf -7.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23869.1([Function])]TJ --11.0342 -1.8444 TD -0.0344 Tw -(Sets the primary read table to )Tj -/TT12 1 Tf -13.4752 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0344 Tw -[(. If )]TJ -/TT12 1 Tf -1.7733 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5344 0 TD -(SETREADTABLE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0344 Tw -[( sets the system terminal)]TJ --28.9851 -1.2889 TD -0.0256 Tw -(read table, )Tj -/TT10 1 Tf -4.9354 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0256 Tw -[(. Note that you can reset the other system read tables with )]TJ -/TT10 1 Tf -26.4812 0 TD -0 Tw -(SETQ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -(, e.g., )Tj -/TT10 1 Tf -2.5863 0 TD -0 Tw -(\(SETQ)Tj --37.0033 -1.2889 TD -(FILERDTBL \(GETREADTABLE\)\))Tj -/TT8 1 Tf -15.0024 0 TD -(.)Tj --15.0024 -2.0667 TD -0.1456 Tw -(Generates an )Tj -/TT10 1 Tf -6.3004 0 TD -0.35 Tw -(ILLEGAL READTABLE)Tj -/TT8 1 Tf -10.5517 0 TD -0.1456 Tw -[( error if )]TJ -/TT12 1 Tf -4.0207 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.1456 Tw -[( is not )]TJ -/TT10 1 Tf -3.3556 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6456 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1456 Tw -(, or a real read table.)Tj --30.2747 -1.2889 TD -0.0844 Tw -(Returns the previous setting of the primary read table, so )Tj -/TT10 1 Tf -26.3381 0 TD -0 Tw -(SETREADTABLE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0844 Tw -[( is suitable for)]TJ --33.5393 -1.2889 TD -0 Tw -(use with )Tj -/TT10 1 Tf -4.0391 0 TD -(RESETFORM)Tj -/TT8 1 Tf -5.4009 0 TD -( \(Chapter 14\).)Tj -/TT10 1 Tf --12.1066 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(COPYREADTABLE)Tj -/TT18 1 Tf -7.7999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25319.4([Function])]TJ --9.5839 -1.8444 TD -0.0456 Tw -(Returns a copy of )Tj -/TT12 1 Tf -8.1852 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0456 Tw -(. )Tj -/TT12 1 Tf -0.8411 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0456 Tw -[( can be a real read table, )]TJ -/TT10 1 Tf -11.1763 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5456 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0456 Tw -(, or )Tj -/TT10 1 Tf -1.782 0 TD -0 Tw -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0456 Tw -[( \(in which case)]TJ -/TT10 1 Tf --33.3319 -1.2889 TD -0 Tw -(COPYREADTABLE)Tj -/TT8 1 Tf -7.8013 0 TD -0.6244 Tw -[( returns a copy of the )]TJ -/TT16 1 Tf -13.3639 0 TD -0 Tw -(original)Tj -/TT8 1 Tf -3.1665 0 TD -0.6244 Tw -[( system read table\), otherwise)]TJ -/TT10 1 Tf --24.3316 -1.2889 TD -0 Tw -(COPYREADTABLE)Tj -/TT8 1 Tf -7.8013 0 TD -( generates an )Tj -/TT10 1 Tf -6.0522 0 TD -(ILLEGAL READTABLE)Tj -/TT8 1 Tf -10.2017 0 TD -( error.)Tj --24.0552 -2.0667 TD -(Note that )Tj -/TT10 1 Tf -4.4165 0 TD -(COPYREADTABLE)Tj -/TT8 1 Tf -7.8013 0 TD -( is the only function that )Tj -/TT16 1 Tf -11.0186 0 TD -(creates)Tj -/TT8 1 Tf -2.7407 0 TD -( a read table.)Tj -/TT10 1 Tf --28.6437 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(RESETREADTABLE)Tj -/TT18 1 Tf -8.3999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FROM)Tj -/TT10 1 Tf -2.4004 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22069([Function])]TJ --12.8343 -1.8444 TD -0.0511 Tw -(Copies \(smashes\) )Tj -/TT12 1 Tf -8.0334 0 TD -0 Tw -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( into )]TJ -/TT12 1 Tf -2.3473 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0511 Tw -(. )Tj -/TT12 1 Tf -0.8522 0 TD -0 Tw -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0511 Tw -[( and )]TJ -/TT12 1 Tf -2.2951 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0511 Tw -[( can be )]TJ -/TT10 1 Tf -3.4614 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5511 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0511 Tw -(, or a real read table.)Tj --30.7427 -1.2889 TD -0 Tw -(In addition, )Tj -/TT12 1 Tf -5.4268 0 TD -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -( can be )Tj -/TT10 1 Tf -3.3081 0 TD -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -(, meaning use the systems original read table.)Tj -/TT4 1 Tf -10 0 0 10 126 266.8 Tm -(Syntax Classes)Tj -/TT8 1 Tf -9 0 0 9 126 243.14 Tm -0.0033 Tw -(A read table is an object that contains information about the "syntax class" of each character. There are)Tj -0 -1.2222 TD -0.8556 Tw -(nine basic syntax classes: )Tj -/TT10 1 Tf -15.8134 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -1.3556 0 TD -(RIGHTPAREN)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -1.3556 0 TD -(LEFTBRACKET)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -1.3556 0 TD -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -(,)Tj -/TT10 1 Tf --45.0842 -1.2889 TD -(STRINGDELIM)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -0.8278 0 TD -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.8283 0 TD -(BREAKCHAR)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.828 0 TD -(SEPRCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.3278 Tw -(, and )Tj -/TT10 1 Tf -3.1003 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -0.3278 Tw -(, each associated with a primitive)Tj --28.9883 -1.2889 TD -0.2433 Tw -[(syntactic property. In addition, there is an unlimited assortment of user-defined syntax classes,)]TJ -0 -1.2222 TD -0 Tw -(known as "read macros". The basic syntax classes are interpreted as follows:)Tj -/TT10 1 Tf -3.9333 -2 TD -(LEFTPAREN)Tj -/TT8 1 Tf -6.7333 0 TD -(\(normally left parenthesis\) Begins list structure.)Tj -/TT10 1 Tf --7.3333 -2.0667 TD -(RIGHTPAREN)Tj -/TT8 1 Tf -7.3333 0 TD -(\(normally right parenthesis\) Ends list structure.)Tj -/TT10 1 Tf --7.9333 -2.0667 TD -(LEFTBRACKET)Tj -/TT8 1 Tf -7.9333 0 TD -0.1378 Tw -[(\(normally left bracket\) Begins list structure. Also matches )]TJ -/TT10 1 Tf -27.4667 0 TD -0 Tw -(RIGHTBRACKET)Tj -/TT8 1 Tf --27.4667 -1.2889 TD -(characters.)Tj -/TT10 1 Tf --8.5333 -2 TD -(RIGHTBRACKET)Tj -/TT8 1 Tf -8.5333 0 TD -0.0344 Tw -[(\(normally left bracket\) Ends list structure. Can close an arbitrary numbers of)]TJ -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -( lists, back to the last )Tj -/TT10 1 Tf -9.3594 0 TD -(LEFTBRACKET)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --29.2947 -2.0667 TD -(STRINGDELIM)Tj -/TT8 1 Tf -7.9333 0 TD -0.0856 Tw -[(\(normally double quote\) Begins and ends text strings. Within the string, all)]TJ -0 -1.2889 TD -0.0167 Tw -(characters except for the one\(s\) with class )Tj -/TT10 1 Tf -18.6743 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0167 Tw -[( are treated as ordinary, i.e.,)]TJ --22.2749 -1.2889 TD -0.2489 Tw -(interpreted as if they were of syntax class )Tj -/TT10 1 Tf -20.4994 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -0.2489 Tw -[(. To include the string)]TJ --23.4999 -1.2889 TD -0 Tw -(delimiter inside a string, prefix it with the )Tj -/TT10 1 Tf -18.7007 0 TD -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -( character.)Tj -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -106 0 obj -<< -/Length 6516 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-31)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 129.6 569.54 Tm -(ESCAPE)Tj -/TT8 1 Tf -4.9333 0 TD -0.3956 Tw -[(\(normally percent sign\) Inhibits any special interpretation of the next)]TJ -0 -1.2889 TD -0.4478 Tw -(character, i.e., the next character is interpreted to be of class )Tj -/TT10 1 Tf -31.4109 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -(,)Tj --34.4114 -1.2889 TD -(independent of its normal syntax class.)Tj -/TT10 1 Tf --6.7333 -2 TD -(BREAKCHAR)Tj -/TT8 1 Tf -6.7333 0 TD -0.0889 Tw -[(\(None initially\) Is a break character, i.e., delimits atoms, but is otherwise an)]TJ -0 -1.2889 TD -0 Tw -(ordinary character.)Tj -/TT10 1 Tf --6.1333 -2 TD -(SEPRCHAR)Tj -/TT8 1 Tf -6.1333 0 TD -(\(space, carriage return, etc.\) Delimits atoms, and is otherwise ignored.)Tj -/TT10 1 Tf --4.3333 -2.0667 TD -(OTHER)Tj -/TT8 1 Tf -4.3333 0 TD -(Characters that are not otherwise special belong to the class )Tj -/TT10 1 Tf -26.5513 0 TD -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --40.2184 -2.9556 TD -0.6022 Tw -(Characters of syntax class )Tj -/TT10 1 Tf -14.0285 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -1.1022 0 TD -(RIGHTPAREN)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -1.1022 0 TD -(LEFTBRACKET)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT10 1 Tf -1.1022 0 TD -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -0.6022 Tw -(, and)Tj -/TT10 1 Tf --42.5393 -1.2889 TD -0 Tw -(STRINGDELIM)Tj -/TT8 1 Tf -6.6011 0 TD -0.0578 Tw -[( are all )]TJ -/TT16 1 Tf -3.3794 0 TD -0 Tw -(break)Tj -/TT8 1 Tf -2.1289 0 TD -0.0578 Tw -[( characters. That is, in addition to their interpretation as delimiting list or)]TJ --12.1094 -1.2889 TD -0.11 Tw -[(string structures, they also terminate the reading of an atom. Characters of class )]TJ -/TT10 1 Tf -37.2309 0 TD -0 Tw -(BREAKCHAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.11 Tw -[( serve)]TJ -/TT16 1 Tf --42.6318 -1.2889 TD -0 Tw -(only)Tj -/TT8 1 Tf -1.7778 0 TD -0.1044 Tw -[( to terminate atoms, with no other special meaning. In addition, if a break character is the first)]TJ --1.7778 -1.2222 TD -0.0033 Tw -(non-separator encountered by )Tj -/TT10 1 Tf -13.6042 0 TD -0 Tw -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -0.0033 Tw -(, it is read as a one-character atom. In order for a break character)Tj --16.6047 -1.2889 TD -0 Tw -(to be included in an atom, it must be preceded by the )Tj -/TT10 1 Tf -23.7563 0 TD -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -( character.)Tj --27.3569 -2.9556 TD -0.0033 Tw -(Characters of class )Tj -/TT10 1 Tf -8.4753 0 TD -0 Tw -(SEPRCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.0033 Tw -( also terminate atoms, but are otherwise completely ignored; they can be)Tj --13.2761 -1.2889 TD -0.2033 Tw -[(thought of as logically spaces. As with break characters, they must be preceded by the )]TJ -/TT10 1 Tf -41.7289 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf --41.7289 -1.2889 TD -(character in order to appear in an atom.)Tj -0 -2.8889 TD -0.5033 Tw -(For example, if )Tj -/TT10 1 Tf -8.3801 0 TD -0 Tw -($)Tj -/TT8 1 Tf -0.6001 0 TD -0.5033 Tw -[( were a break character and )]TJ -/TT10 1 Tf -15.4482 0 TD -0 Tw -(*)Tj -/TT8 1 Tf -0.6001 0 TD -0.5033 Tw -[( a separator character, the input stream)]TJ -/TT10 1 Tf --25.0285 -1.2889 TD -0 Tw -(ABC**DEF$GH*$$)Tj -/TT8 1 Tf -8.4014 0 TD -( would be read by six calls to )Tj -/TT10 1 Tf -13.064 0 TD -(RATOM)Tj -/TT8 1 Tf -3.0005 0 TD -( returning respectively )Tj -/TT10 1 Tf -10.2896 0 TD -(ABC)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(DEF)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(GH)Tj -/TT8 1 Tf -1.2002 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --43.8565 -2.9556 TD -0.1778 Tw -(Although normally there is only one character in a read table having each of the list- and string-)Tj -0 -1.2222 TD -0.0222 Tw -(delimiting syntax classes \(such as )Tj -/TT10 1 Tf -15.1614 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0222 Tw -(\), it is perfectly acceptable for any character to have any)Tj --20.5623 -1.2889 TD -0 Tw -(syntax class, and for more than one to have the same class. )Tj -0 -2.8889 TD -0.1289 Tw -[(Note that a "syntax class" is an abstraction: there is no object referencing a collection of characters)]TJ -0 -1.2222 TD -0.0767 Tw -(called a )Tj -/TT16 1 Tf -3.7691 0 TD -(syntax class)Tj -/TT8 1 Tf -4.9561 0 TD -[(. Instead, a read table provides the )]TJ -/TT16 1 Tf -16.3052 0 TD -0 Tw -(association)Tj -/TT8 1 Tf -4.4058 0 TD -0.0767 Tw -[( between a character and its syntax)]TJ --29.4361 -1.2222 TD -0 Tw -(class, and the input/output routines enforce the abstraction by using read tables to drive the parsing.)Tj -0 -2.8889 TD -0.0422 Tw -[(The functions below are used to obtain and set the syntax class of a character in a read table. )]TJ -/TT12 1 Tf -42.3027 0 TD -0 Tw -(CH)Tj -/TT8 1 Tf -1.2002 0 TD -0.0422 Tw -[( can)]TJ --43.5029 -1.2889 TD -0.0211 Tw -[(either be a character code \(a integer\), or a character \(a single-character atom\). Single-digit integers are)]TJ -0 -1.2222 TD -0.0767 Tw -[(interpreted as character codes, rather than as characters. For example, 1 indicates Control-A, and 49)]TJ -T* -0 Tw -(indicates the )Tj -/TT16 1 Tf -5.835 0 TD -(character)Tj -/TT8 1 Tf -3.7026 0 TD -( 1. Note that )Tj -/TT12 1 Tf -5.9165 0 TD -(CH)Tj -/TT8 1 Tf -1.2002 0 TD -( can be a full sixteen-bit NS character \(see Chapter 2\).)Tj --11.321 -2.0667 TD -0.1511 Tw -[(Note: )-1166.8(Terminal tables, described in Chapter 30, also associate characters with syntax)]TJ -4 -1.2222 TD -0.0967 Tw -[(classes, and they can also be manipulated with the functions below. The set of)]TJ -T* -0.1633 Tw -(read table and terminal table syntax classes are disjoint, so there is never any)Tj -T* -0 Tw -(ambiguity about which type of table is being referred to.)Tj -/TT10 1 Tf --6.6667 -2.3333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETSYNTAX)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CH)Tj -/TT16 1 Tf -1.2002 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TABLE)Tj -/TT18 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.333 0 TD -[( )-26535.3([Function])]TJ --8.368 -1.8444 TD -0.1578 Tw -(Returns the syntax class of )Tj -/TT12 1 Tf -12.7689 0 TD -0 Tw -(CH)Tj -/TT8 1 Tf -1.2002 0 TD -0.1578 Tw -(, a character or a character code, with respect to )Tj -/TT12 1 Tf -22.7814 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT12 1 Tf --39.7509 -1.2889 TD -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -( can be )Tj -/TT10 1 Tf -3.3081 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -(, or a real read table or terminal table.)Tj -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -110 0 obj -<< -/Length 9670 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-32)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 174 569.54 Tm -(CH)Tj -/TT8 1 Tf -1.2002 0 TD -0.1578 Tw -[( can also be a syntax class, in which case )]TJ -/TT10 1 Tf -19.5861 0 TD -0 Tw -(GETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.1578 Tw -[( returns a list of the character)]TJ --26.1872 -1.2889 TD -0 Tw -(codes in )Tj -/TT12 1 Tf -3.8765 0 TD -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -( that have that syntax class.)Tj -/TT10 1 Tf --9.5436 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETSYNTAX)Tj -/TT18 1 Tf -5.4009 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CHAR)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CLASS)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TABLE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21817.6([Function])]TJ --13.0858 -1.8444 TD -0.1722 Tw -(Sets the syntax class of )Tj -/TT12 1 Tf -11.1179 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1722 Tw -(, a character or character code, in )Tj -/TT12 1 Tf -15.979 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1722 Tw -(. )Tj -/TT12 1 Tf -1.0944 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1722 Tw -[( can be)]TJ --36.5928 -1.2889 TD -0 Tw -(either )Tj -/TT10 1 Tf -2.9734 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6711 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1711 Tw -(, or a real read table or terminal table. )Tj -/TT10 1 Tf -18.7887 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.1711 Tw -[( returns the previous)]TJ --30.2345 -1.2889 TD -0 Tw -(syntax class of )Tj -/TT12 1 Tf -6.6157 0 TD -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -(. )Tj -/TT12 1 Tf -0.75 0 TD -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -( can be any one of the following:)Tj --8.7666 -2.0667 TD -[()-727.4(The name of one of the basic syntax classes.)]TJ -0 -2 TD -[()-727.4(A)0( list, which is interpreted as a read macro \(see below\).)]TJ -T* -()Tj -/TT10 1 Tf -1.3333 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5178 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT10 1 Tf -0.5178 0 TD -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -(, or a real read table or terminal table, which means to give )Tj -/TT12 1 Tf -26.4225 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf --32.2589 -1.2889 TD -0.3478 Tw -(the syntax class it has in the table indicated by )Tj -/TT12 1 Tf -24.1287 0 TD -0 Tw -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -0.3478 Tw -[(. For example,)]TJ -/TT10 1 Tf --27.1291 -1.2889 TD -0.44 Tw -(\(SETSYNTAX %\( ORIG)Tj -/TT18 1 Tf -12.882 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.4333 0 TD -(TABLE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.1833 Tw -[( gives the left parenthesis character in)]TJ -/TT12 1 Tf --16.9159 -1.2889 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -( the same syntax class that it has in the original system read table.)Tj --4.3338 -2.0667 TD -0.1689 Tw -[()-838.5(A)0( character code or character, which means to give )]TJ -/TT12 1 Tf -25.7564 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1689 Tw -[( the same syntax)]TJ --26.8235 -1.2889 TD -0.07 Tw -(class as the character )Tj -/TT12 1 Tf -9.7385 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.07 Tw -[( in )]TJ -/TT12 1 Tf -1.5131 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.07 Tw -[(. For example,)]TJ -/TT10 1 Tf -6.7061 0 TD -0.1678 Tw -[( \(SETSYNTAX { %[)]TJ -/TT12 1 Tf --23.3585 -1.2889 TD -0 Tw -(TABLE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -( gives the left brace character the same syntax class as the left bracket.)Tj -/TT10 1 Tf --11.6006 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SYNTAXP)Tj -/TT18 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CODE)Tj -/TT16 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(CLASS)Tj -/TT16 1 Tf -3.0005 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(TABLE)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23018.5([Function])]TJ -/TT12 1 Tf --11.8848 -1.8444 TD -(CODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( is a character code; )]TJ -/TT12 1 Tf -8.9149 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -[( is )]TJ -/TT10 1 Tf -1.2371 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5111 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0111 Tw -[(, or a real read table or terminal table. Returns )]TJ -/TT10 1 Tf -20.9269 0 TD -0 Tw -(T)Tj -/TT8 1 Tf --39.3913 -1.2889 TD -(if )Tj -/TT12 1 Tf -0.874 0 TD -(CODE)Tj -/TT8 1 Tf -2.4004 0 TD -( has the syntax class )Tj -/TT12 1 Tf -9.1299 0 TD -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -( in )Tj -/TT12 1 Tf -1.373 0 TD -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -(; )Tj -/TT10 1 Tf -0.5 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT12 1 Tf --22.0786 -2.0667 TD -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -[( can also be a read macro type \()]TJ -/TT10 1 Tf -14.48 0 TD -0 Tw -(MACRO)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.5767 0 TD -(SPLICE)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf -0.25 0 TD -0.1844 Tw -[( INFIX)]TJ -/TT8 1 Tf -3.785 0 TD -0.0767 Tw -(\), or a read macro option)Tj -/TT10 1 Tf --28.6933 -1.2889 TD -0 Tw -(\(FIRST)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5667 0 TD -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0667 Tw -(, etc.\), in which case )Tj -/TT10 1 Tf -9.368 0 TD -0 Tw -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0667 Tw -[( returns )]TJ -/TT10 1 Tf -3.8374 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0667 Tw -[( if the syntax class is a read)]TJ --27.5744 -1.2889 TD -0 Tw -(macro with the specified property.)Tj -/TT10 1 Tf -0 -2 TD -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -( will )Tj -/TT16 1 Tf -2.207 0 TD -(not)Tj -/TT8 1 Tf -1.333 0 TD -( accept a character as an argument, only a character )Tj -/TT16 1 Tf -22.979 0 TD -(code)Tj -/TT8 1 Tf -1.7402 0 TD -(.)Tj --32.46 -2.0667 TD -0.07 Tw -(For convenience in use with )Tj -/TT10 1 Tf -12.9818 0 TD -0 Tw -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -0.07 Tw -(, the atom )Tj -/TT10 1 Tf -4.8521 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.07 Tw -[( may be used to refer to )]TJ -/TT16 1 Tf -11.1531 0 TD -0 Tw -(all)Tj -/TT8 1 Tf -0.9995 0 TD -0.07 Tw -[( break)]TJ --37.1877 -1.2889 TD -0.7267 Tw -(characters, i.e., it is the union of )Tj -/TT10 1 Tf -19.2976 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -1.2267 0 TD -(RIGHTPAREN)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -1.2267 0 TD -(LEFTBRACKET)Tj -/TT8 1 Tf -6.6011 0 TD -(,)Tj -/TT10 1 Tf --39.7539 -1.2889 TD -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -(, )Tj -/TT10 1 Tf -0.6356 0 TD -(STRINGDELIM)Tj -/TT8 1 Tf -6.6011 0 TD -0.1356 Tw -(, and )Tj -/TT10 1 Tf -2.714 0 TD -0 Tw -(BREAKCHAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1356 Tw -[(. For purely symmetrical reasons, the)]TJ --22.5527 -1.2889 TD -0 Tw -(atom )Tj -/TT10 1 Tf -2.6638 0 TD -(SEPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1589 Tw -[( corresponds to all separator characters. However, since the only separator)]TJ --5.0642 -1.2889 TD -0 Tw -(characters are those that also appear in )Tj -/TT10 1 Tf -17.4141 0 TD -(SEPRCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(SEPR)Tj -/TT8 1 Tf -2.4004 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(SEPRCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -( are equivalent.)Tj --32.1089 -2.0667 TD -0.0344 Tw -(Note that )Tj -/TT10 1 Tf -4.4854 0 TD -0 Tw -(GETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0344 Tw -[( never returns )]TJ -/TT10 1 Tf -6.5574 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0344 Tw -[( or )]TJ -/TT10 1 Tf -1.5098 0 TD -0 Tw -(SEPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0344 Tw -[( as a value although )]TJ -/TT10 1 Tf -9.2704 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0344 Tw -[( and)]TJ -/TT10 1 Tf --38.0256 -1.2889 TD -0 Tw -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0002 Tc -0.0042 Tw -( accept them as arguments. Instead, )Tj -/TT10 1 Tf -16.2757 0 TD -0 Tc -0 Tw -(GETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0001 Tc -0.0043 Tw -( returns one of the disjoint basic)Tj --25.8773 -1.2889 TD -0 Tc -0.0411 Tw -(syntax classes that comprise )Tj -/TT10 1 Tf -12.851 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0411 Tw -(. )Tj -/TT10 1 Tf -0.8322 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.0411 Tw -[( as an argument to )]TJ -/TT10 1 Tf -8.6577 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -[( is interpreted)]TJ --33.7428 -1.2889 TD -0.01 Tw -(to mean )Tj -/TT10 1 Tf -3.8359 0 TD -0 Tw -(BREAKCHAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.01 Tw -[( if the character is not already of one of the )]TJ -/TT10 1 Tf -19.1891 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.01 Tw -[( classes. Thus, if )]TJ -/TT10 1 Tf -7.3711 0 TD -0 Tw -(%\()Tj -/TT8 1 Tf --38.7974 -1.2889 TD -0.0644 Tw -(is of class )Tj -/TT10 1 Tf -4.6196 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0644 Tw -(, then )Tj -/TT10 1 Tf -2.8481 0 TD -0.1544 Tw -(\(SETSYNTAX %\( BREAK\))Tj -/TT8 1 Tf -13.511 0 TD -0.0644 Tw -[( doesnt do anything, since )]TJ -/TT10 1 Tf -12.4199 0 TD -0 Tw -(%\()Tj -/TT8 1 Tf --38.7995 -1.2889 TD -0.1044 Tw -(is already a break character, but )Tj -/TT10 1 Tf -14.9543 0 TD -0.2511 Tw -(\(SETSYNTAX %\( BREAKCHAR\))Tj -/TT8 1 Tf -16.1048 0 TD -0.1044 Tw -[( means make )]TJ -/TT10 1 Tf -6.349 0 TD -0 Tw -(%\()Tj -/TT8 1 Tf -1.2002 0 TD -0.1044 Tw -[( be)]TJ -/TT16 1 Tf --38.6082 -1.2889 TD -0 Tw -(just)Tj -/TT8 1 Tf -1.5562 0 TD -0.0456 Tw -[( a break character, and therefore disables the )]TJ -/TT10 1 Tf -20.3298 0 TD -0 Tw -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0456 Tw -[( function of )]TJ -/TT10 1 Tf -5.4726 0 TD -0 Tw -(%\()Tj -/TT8 1 Tf -1.2002 0 TD -0.0456 Tw -[(. Similarly, if)]TJ --33.9596 -1.2889 TD -0.0122 Tw -(one of the format characters is disabled completely, e.g., by )Tj -/TT10 1 Tf -26.4821 0 TD -0.03 Tw -(\(SETSYNTAX %\( OTHER\))Tj -/TT8 1 Tf -13.2621 0 TD -0 Tw -(,)Tj --39.7442 -1.2889 TD -(then )Tj -/TT10 1 Tf -2.2415 0 TD -0.0544 Tw -(\(SETSYNTAX %\( BREAK\))Tj -/TT8 1 Tf -13.311 0 TD -0.0222 Tw -[( would make )]TJ -/TT10 1 Tf -6.1194 0 TD -0 Tw -(%\()Tj -/TT8 1 Tf -1.2002 0 TD -0.0222 Tw -[( be )]TJ -/TT16 1 Tf -1.5767 0 TD -0 Tw -(only)Tj -/TT8 1 Tf -1.7778 0 TD -0.0222 Tw -[( a break character; it would )]TJ -/TT16 1 Tf -12.4336 0 TD -0 Tw -(not)Tj -/TT8 1 Tf --38.6602 -1.2889 TD -(restore )Tj -/TT10 1 Tf -3.2939 0 TD -(%\()Tj -/TT8 1 Tf -1.2002 0 TD -( as )Tj -/TT10 1 Tf -1.4238 0 TD -(LEFTPAREN)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -ET -endstream -endobj -111 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -113 0 obj -<< -/Length 7866 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-33)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0656 Tw -(The following functions provide a way of collectively accessing and setting the separator)Tj -0 -1.2222 TD -0 Tw -(and break characters in a read table:)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETSEPR)Tj -/TT18 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-28919.4([Function])]TJ --5.9839 -1.8444 TD -0.0467 Tw -(Returns a list of separator character codes in )Tj -/TT12 1 Tf -20.1687 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0467 Tw -[(. Equivalent to )]TJ -/TT10 1 Tf -7.1168 0 TD -0.1122 Tw -(\(GETSYNTAX SEPR)Tj -/TT12 1 Tf --30.2861 -1.2889 TD -0 Tw -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -/TT10 1 Tf --6.2673 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(GETBRK)Tj -/TT18 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29519.4([Function])]TJ --5.3839 -1.8444 TD -0.1622 Tw -(Returns a list of break character codes in )Tj -/TT12 1 Tf -19.4106 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.1622 Tw -[(. Equivalent to )]TJ -/TT10 1 Tf -7.5791 0 TD -0 Tw -(\(GETSYNTAX)Tj -/TT18 1 Tf -6.001 0 TD -( )Tj -/TT10 1 Tf -0.4122 0 TD -(BREAK)Tj -/TT12 1 Tf --36.4033 -1.2889 TD -(RDTBL)Tj -/TT18 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.333 0 TD -(.)Tj -/TT10 1 Tf --6.0002 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETSEPR)Tj -/TT18 1 Tf -4.1999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LST)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24818.8([Function])]TJ --10.0845 -1.8444 TD -0.0111 Tw -(Sets or removes the separator characters for )Tj -/TT12 1 Tf -19.609 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -(. )Tj -/TT12 1 Tf -0.7722 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.0111 Tw -[( is a list of charactors or character)]TJ --25.182 -1.2889 TD -0.0044 Tw -(codes. )Tj -/TT12 1 Tf -3.2623 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0002 Tc -0.0042 Tw -( determines the action of )Tj -/TT10 1 Tf -11.176 0 TD -0 Tc -0 Tw -(SETSEPR)Tj -/TT8 1 Tf -4.2007 0 TD -0.0005 Tc -0.0039 Tw -( as follows: If )Tj -/TT12 1 Tf -6.3806 0 TD -0 Tc -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0044 Tw -(, makes )Tj -/TT12 1 Tf -3.6007 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0009 Tc -0.0035 Tw -( have)Tj --37.6218 -1.2889 TD -0 Tc -0.25 Tw -(exactly the elements of )Tj -/TT12 1 Tf -11.3213 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.25 Tw -[( as separators, discarding from )]TJ -/TT12 1 Tf -15.125 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.25 Tw -[( any old separator)]TJ --31.2471 -1.2889 TD -0.02 Tw -(characters not in )Tj -/TT12 1 Tf -7.6259 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.02 Tw -[(. If )]TJ -/TT12 1 Tf -1.7299 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.02 Tw -(0, removes from )Tj -/TT12 1 Tf -7.4872 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.02 Tw -[( as separator characters all elements)]TJ --24.0443 -1.2889 TD -0 Tw -(of )Tj -/TT12 1 Tf -1.1522 0 TD -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[(. This provides an ")]TJ -/TT10 1 Tf -8.8911 0 TD -0 Tw -(UNSETSEPR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0233 Tw -[(". If )]TJ -/TT12 1 Tf -2.111 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -0.0233 Tw -(1, makes each of the characters in )Tj -/TT12 1 Tf -15.1379 0 TD -0 Tw -(LST)Tj -/TT8 1 Tf -1.8003 0 TD -0.0233 Tw -[( be)]TJ --38.6941 -1.2889 TD -0 Tw -(a separator in )Tj -/TT12 1 Tf -6.2891 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj --9.2896 -2.0667 TD -(If )Tj -/TT12 1 Tf -1.1255 0 TD -(LST)Tj -/TT10 1 Tf -1.8003 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -0.2056 Tw -(, the separator characters are reset to be those in the systems read table for)Tj --4.126 -1.2889 TD -0.0833 Tw -(terminals, regardless of the value of )Tj -/TT12 1 Tf -16.5576 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0833 Tw -(, i.e., )Tj -/TT10 1 Tf -2.4367 0 TD -0.2011 Tw -(\(SETSEPR T\))Tj -/TT8 1 Tf -6.8022 0 TD -0.0833 Tw -[( is equivalent to )]TJ -/TT10 1 Tf -7.5965 0 TD -0 Tw -(\(SETSEPR)Tj --35.1933 -1.2889 TD -0.4556 Tw -(\(GETSEPR T\)\))Tj -/TT8 1 Tf -7.6567 0 TD -0.19 Tw -[(. If )]TJ -/TT12 1 Tf -2.2399 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.19 Tw -[( is )]TJ -/TT10 1 Tf -1.5948 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.19 Tw -(, then the characters are reset to those in the original)Tj --15.0921 -1.2889 TD -0 Tw -(system table.)Tj -0 -2 TD -(Returns )Tj -/TT10 1 Tf -3.7271 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --8.194 -2.4 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(SETBRK)Tj -/TT18 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(LST)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25418.8([Function])]TJ --9.4845 -1.8444 TD -(Sets the break characters for )Tj -/TT12 1 Tf -12.6372 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -(. Similar to )Tj -/TT10 1 Tf -5.2979 0 TD -(SETSEPR)Tj -/TT8 1 Tf -4.2007 0 TD -(.)Tj --25.1362 -2.0667 TD -0.2244 Tw -(As with )Tj -/TT10 1 Tf -4.1838 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.2244 Tw -[( to the )]TJ -/TT10 1 Tf -3.6826 0 TD -0 Tw -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.2244 Tw -[( class, if any of the list- or string-delimiting break)]TJ --16.2677 -1.2889 TD -0.31 Tw -(characters are disabled by an appropriate )Tj -/TT10 1 Tf -20.4093 0 TD -0 Tw -(SETBRK)Tj -/TT8 1 Tf -3.6006 0 TD -0.31 Tw -[( \(or by making it be a separator)]TJ --24.0099 -1.2889 TD -0.0644 Tw -(character\), its special action for )Tj -/TT10 1 Tf -14.2539 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0644 Tw -[( will )]TJ -/TT16 1 Tf -2.3359 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0644 Tw -[( be restored by simply making it be a break)]TJ --20.3232 -1.2889 TD -0.2122 Tw -(character again with )Tj -/TT10 1 Tf -9.914 0 TD -0 Tw -(SETBRK)Tj -/TT8 1 Tf -3.6006 0 TD -0.2122 Tw -[(. However, making these characters be break characters)]TJ --13.5146 -1.2889 TD -0 Tw -(when they already )Tj -/TT16 1 Tf -8.5024 0 TD -(are)Tj -/TT8 1 Tf -1.2222 0 TD -( will have no effect.)Tj --9.7246 -2 TD -0.08 Tw -(The action of the )Tj -/TT10 1 Tf -7.9489 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( character \(normally )]TJ -/TT10 1 Tf -9.4319 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.08 Tw -(\) is not affected by )Tj -/TT10 1 Tf -8.7662 0 TD -0 Tw -(SETSEPR)Tj -/TT8 1 Tf -4.2007 0 TD -0.08 Tw -[( or )]TJ -/TT10 1 Tf -1.6009 0 TD -0 Tw -(SETBRK)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --39.7499 -1.2889 TD -0.1444 Tw -(It can be disabled by setting its syntax to the class )Tj -/TT10 1 Tf -23.7007 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -0.1444 Tw -(, and other characters can be)Tj --26.7012 -1.2889 TD -0.2844 Tw -(used for escape on input by assigning them the class )Tj -/TT10 1 Tf -26.2483 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2844 Tw -[(. As of this writing,)]TJ --29.8488 -1.2889 TD -0.1289 Tw -(however, there is no way to change the output escape character; it is "hardwired" as )Tj -/TT10 1 Tf -39.1526 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --39.7527 -1.2889 TD -0.1067 Tw -(That is, on output, characters of special syntax that need to be preceded by the )Tj -/TT10 1 Tf -36.4057 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf --36.4057 -1.2889 TD -0.0978 Tw -(character will always be preceded by )Tj -/TT10 1 Tf -17.2039 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -(, independent of the syntax of )Tj -/TT10 1 Tf -14.009 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.0978 Tw -[( or which, if any)]TJ --32.4131 -1.2889 TD -0 Tw -(characters, have syntax )Tj -/TT10 1 Tf -10.519 0 TD -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --14.1196 -2.0667 TD -0.1278 Tw -(The following function can be used for defeating the action of the )Tj -/TT10 1 Tf -30.6325 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1278 Tw -[( character or)]TJ --34.233 -1.2889 TD -0 Tw -(characters:)Tj -ET -endstream -endobj -114 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -116 0 obj -<< -/Length 6166 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-34)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(ESCAPE)Tj -/TT18 1 Tf -3.5999 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(FLG)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27469.1([Function])]TJ --7.4342 -1.8444 TD -(If )Tj -/TT12 1 Tf -1.0255 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1056 Tw -(, makes characters of class )Tj -/TT10 1 Tf -12.3198 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1056 Tw -[( behave like characters of class )]TJ -/TT10 1 Tf -14.3589 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -0.1056 Tw -[( on)]TJ --38.5059 -1.2889 TD -0 Tw -(input. Normal setting is )Tj -/TT10 1 Tf -11.0483 0 TD -(\(ESCAPE T\))Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT18 1 Tf -0.25 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -( returns the previous setting.)Tj -/TT4 1 Tf -10 0 0 10 126 511.4 Tm -(Read Macros)Tj -/TT8 1 Tf -9 0 0 9 126 487.74 Tm -0.1489 Tw -[(This is a description of the OLD-INTERLISP-T read macros. Read macros are user-defined syntax)]TJ -0 -1.2222 TD -0.1122 Tw -[(classes that can cause complex operations when certain characters are read. Read macro characters)]TJ -T* -0 Tw -(are defined by specifying as a syntax class an expression of the form:)Tj -/TT10 1 Tf -9.3333 -2.8222 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TYPE)Tj -/TT10 1 Tf -2.4004 0 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(OPTION)Tj -3.5994 -0.3333 TD -(1)Tj -/TT10 1 Tf -0.6 0.3333 TD -( ... )Tj -/TT12 1 Tf -3.0005 0 TD -(OPTION)Tj -3.5995 -0.3333 TD -(N)Tj -/TT10 1 Tf -0.6 0.3333 TD -( )Tj -/TT12 1 Tf -0.6001 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT8 1 Tf --26.1336 -3.0667 TD -(where )Tj -/TT12 1 Tf -3.209 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.19 Tw -[( is one of )]TJ -/TT10 1 Tf -4.9607 0 TD -0 Tw -(MACRO)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.69 0 TD -(SPLICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.19 Tw -(, or )Tj -/TT10 1 Tf -2.0709 0 TD -0 Tw -(INFIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.19 Tw -(, and )Tj -/TT12 1 Tf -2.8229 0 TD -0 Tw -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -0.19 Tw -[( is the name of a function or a lambda)]TJ --26.9557 -1.2889 TD -0.0111 Tw -[(expression. Whenever )]TJ -/TT10 1 Tf -10.3312 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( encounters a read macro character, it calls the associated function, giving)]TJ --12.7316 -1.2889 TD -0.0189 Tw -(it as arguments the input stream and read table being used for that call to )Tj -/TT10 1 Tf -32.9313 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[(. The interpretation of)]TJ --35.3317 -1.2889 TD -0 Tw -(the value returned depends on the type of read macro:)Tj -/TT10 1 Tf -6.3333 -2 TD -(MACRO)Tj -/TT8 1 Tf -4.3333 0 TD -0.0167 Tw -[(This is the simplest type of read macro. The result returned from the macro is)]TJ -0 -1.2889 TD -0.2344 Tw -(treated as the expression to be read, instead of the read macro character.)Tj -0 -1.2222 TD -0.24 Tw -[(Often the macro reads more input itself. For example, in order to cause)]TJ -/TT18 1 Tf -T* -0 Tw -(~)Tj -/TT10 1 Tf -0.606 0 TD -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -( to be read as )Tj -/TT10 1 Tf -6.063 0 TD -(\(NOT)Tj -/TT18 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -0.25 0 TD -(EXPR\))Tj -/TT8 1 Tf -3.0005 0 TD -(, one could define )Tj -/TT18 1 Tf -8.1265 0 TD -(~)Tj -/TT8 1 Tf -0.606 0 TD -( as the read macro:)Tj -/TT10 1 Tf --14.1193 -1.7778 TD -([MACRO \(LAMBDA \(FL RDTBL\))Tj -0 -1 TD -( \(LIST NOT \(READ FL RDTBL])Tj --14.2667 -1.8444 TD -(SPLICE)Tj -/TT8 1 Tf -4.9333 0 TD -0.2189 Tw -(The result \(which should be a list or )Tj -/TT10 1 Tf -17.8707 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2189 Tw -(\) is spliced into the input using)Tj -/TT10 1 Tf --19.671 -1.2889 TD -0 Tw -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -(. For example, if )Tj -/TT10 1 Tf -7.6201 0 TD -($)Tj -/TT8 1 Tf -0.6001 0 TD -( is defined by the read macro:)Tj -/TT10 1 Tf --1.8874 -2 TD -(\(SPLICE \(LAMBDA NIL \(APPEND FOO\)\)\))Tj -/TT8 1 Tf --9.3333 -2.0667 TD -0.0511 Tw -(and the value of )Tj -/TT10 1 Tf -7.6014 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0511 Tw -[( is )]TJ -/TT10 1 Tf -1.3171 0 TD -0.1211 Tw -(\(A B C\))Tj -/TT8 1 Tf -4.4429 0 TD -0.0511 Tw -(, then when you input )Tj -/TT10 1 Tf -10.3102 0 TD -0.1211 Tw -(\(X $ Y\))Tj -/TT8 1 Tf -4.4429 0 TD -0.0511 Tw -(, the result)Tj --29.9148 -1.2889 TD -0 Tw -(will be )Tj -/TT10 1 Tf -3.2393 0 TD -(\(X A B C Y\))Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --14.1737 -2.0667 TD -(INFIX)Tj -/TT8 1 Tf -4.3333 0 TD -0.1878 Tw -(The associated function is called with a third argument, which is a list, in)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(TCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.1222 Tw -[( format \(Chapter 3\), of what has been read at the current level of list)]TJ --3.0005 -1.2889 TD -0.0433 Tw -[(nesting. The functions value is taken as a new )]TJ -/TT10 1 Tf -21.4211 0 TD -0 Tw -(TCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -[( list which replaces the)]TJ --24.4216 -1.2889 TD -0.2278 Tw -[(old one. For example, the infix operator )]TJ -/TT10 1 Tf -19.8115 0 TD -0 Tw -(+)Tj -/TT8 1 Tf -0.6001 0 TD -0.2278 Tw -[( could be defined by the read)]TJ --20.4116 -1.2889 TD -0 Tw -(macro:)Tj -/TT10 1 Tf -9.3333 -1.7111 TD -(\(INFIX \(LAMBDA \(FL RDTBL Z\))Tj -0 -1 TD -( \(RPLACA \(CDR Z\))Tj -T* -( \(LIST \(QUOTE IPLUS\))Tj -T* -( \(CADR Z\))Tj -T* -( \(READ FL RDTBL\)\)\))Tj -T* -( Z\)\))Tj -/TT8 1 Tf --9.3333 -1.8444 TD -0.2867 Tw -(If an )Tj -/TT10 1 Tf -2.8253 0 TD -0 Tw -(INFIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.2867 Tw -[( read macro character is encountered )]TJ -/TT16 1 Tf -18.2781 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.2867 Tw -[( in a list, the third)]TJ --25.4369 -1.2889 TD -0.1344 Tw -(argument to its associated function is )Tj -/TT10 1 Tf -17.5103 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1344 Tw -[(. If the function returns )]TJ -/TT10 1 Tf -11.5249 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1344 Tw -(, the)Tj --32.6358 -1.2889 TD -0.0001 Tc -0.0043 Tw -(read macro character is essentially ignored and reading continues. Otherwise,)Tj -0 -1.2222 TD -0 Tc -0.0156 Tw -(if the function returns a )Tj -/TT10 1 Tf -10.7501 0 TD -0 Tw -(TCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0156 Tw -[( list of one element, that element is the value of)]TJ -ET -endstream -endobj -117 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -119 0 obj -<< -/Length 6534 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-35)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(the )Tj -/TT10 1 Tf -1.7361 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[(. If it returns a )]TJ -/TT10 1 Tf -7.3345 0 TD -0 Tw -(TCONC)Tj -/TT8 1 Tf -3.0005 0 TD -0.0989 Tw -[( list of more than one element, the list is the)]TJ --14.4715 -1.2889 TD -0 Tw -(value of the )Tj -/TT10 1 Tf -5.4541 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --18.5212 -2.9556 TD -0.1133 Tw -(The specification for a read macro character can be augmented to specify various options )Tj -/TT12 1 Tf -41.1204 0 TD -0 Tw -(OPTION)Tj -3.6074 -0.3333 TD -(1)Tj -/TT10 1 Tf --44.7278 -1.2889 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.3356 0 TD -(OPTION)Tj -3.5997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0856 Tw -(, e.g., )Tj -/TT10 1 Tf -2.7063 0 TD -0.2044 Tw -(\(MACRO FIRST IMMEDIATE)Tj -/TT18 1 Tf -13.611 0 TD -0 Tw -( )Tj -/TT12 1 Tf -0.3356 0 TD -(FN)Tj -/TT10 1 Tf -1.2002 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -0.0856 Tw -[(. The following three disjoint options specify)]TJ --24.7887 -1.6222 TD -0 Tw -(when the read macro character is to be effective:)Tj -/TT10 1 Tf -5.7333 -2 TD -(ALWAYS)Tj -/TT8 1 Tf -4.9333 0 TD -0.2867 Tw -[(The default. The read macro character is always effective \(except when)]TJ -0 -1.2889 TD -0.2533 Tw -(preceded by the )Tj -/TT10 1 Tf -8.1052 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.2533 Tw -[( character\), and is a break character, i.e., a member of)]TJ -/TT10 1 Tf --8.7053 -1.2889 TD -0 Tw -(\(GETSYNTAX BREAK)Tj -/TT18 1 Tf -10.2017 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -(. )Tj -/TT10 1 Tf --18.3856 -2.0667 TD -(FIRST)Tj -/TT8 1 Tf -4.3333 0 TD -0.0544 Tw -(The character is interpreted as a read macro character )Tj -/TT16 1 Tf -24.3992 0 TD -0 Tw -(only)Tj -/TT8 1 Tf -1.7778 0 TD -0.0544 Tw -[( when it is the first)]TJ --26.177 -1.2889 TD -0.08 Tw -(character seen after a break or separator character; in all other situations, the)Tj -0 -1.2222 TD -0.0633 Tw -(character is treated as having class )Tj -/TT10 1 Tf -15.8585 0 TD -0 Tw -(OTHER)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -[(. The read macro character is )]TJ -/TT16 1 Tf -13.6494 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0633 Tc -( a)Tj --33.8414 -1.2889 TD -0 Tc -0.2033 Tw -[(break character. For example, the quote character is a )]TJ -/TT10 1 Tf -26.0089 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -0.2033 Tw -[( read macro)]TJ --29.0094 -1.2889 TD -0.0433 Tw -(character, so that )Tj -/TT10 1 Tf -7.899 0 TD -0 Tw -(DONT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -[( is read as the single atom )]TJ -/TT10 1 Tf -11.942 0 TD -0 Tw -(DONT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -(, rather than as )Tj -/TT10 1 Tf -7.0146 0 TD -0 Tw -(DON)Tj -/TT8 1 Tf --32.8567 -1.2889 TD -(followed by )Tj -/TT10 1 Tf -5.54 0 TD -(\(QUOTE T\))Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --15.2743 -2.0667 TD -(ALONE)Tj -/TT8 1 Tf -4.3333 0 TD -0.0389 Tw -(The read macro character is )Tj -/TT16 1 Tf -12.6505 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.0389 Tw -[( a break character, and is interpreted as a read)]TJ --13.9835 -1.2889 TD -0.0589 Tw -(macro character only when the character would have been read as a separate)Tj -0 -1.2222 TD -0.04 Tw -(atom if it were not a read macro character, i.e., when its immediate neighbors)Tj -T* -0 Tw -(are both break or separator characters.)Tj --10.4444 -2.8889 TD -0.0056 Tw -(Making a )Tj -/TT10 1 Tf -4.4423 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[( or )]TJ -/TT10 1 Tf -1.452 0 TD -0 Tw -(ALONE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[( read macro character be a break character \(with )]TJ -/TT10 1 Tf -21.5642 0 TD -0 Tw -(SETBRK)Tj -/TT8 1 Tf -3.6006 0 TD -0.0056 Tw -(\) disables the read)Tj --37.2822 -1.2889 TD -0.1733 Tw -(macro interpretation, i.e., converts it to syntax class )Tj -/TT10 1 Tf -24.2807 0 TD -0 Tw -(BREAKCHAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1733 Tw -[(. Making an )]TJ -/TT10 1 Tf -6.4565 0 TD -0 Tw -(ALWAYS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1733 Tw -[( read macro)]TJ --39.7387 -1.2889 TD -0 Tw -(character be a break character is a no-op.)Tj -0.2222 -2.8889 TD -0.0311 Tw -(The following two disjoint options control whether the read macro character is to be protected by the)Tj -/TT10 1 Tf --0.2222 -1.2222 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf -3.6006 0 TD -( character on output when a litatom containing the character is printed:)Tj -/TT10 1 Tf --2.3084 -2.0667 TD -(ESCQUOTE)Tj -/TT8 1 Tf -4.8008 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(ESC)Tj -/TT8 1 Tf -3.1327 0 TD -0.2033 Tw -[(The default. When printed with )]TJ -/TT10 1 Tf -15.7483 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -3.0005 0 TD -0.2033 Tw -(, the read macro character will be)Tj --18.7488 -1.2889 TD -0.1789 Tw -(preceded by the output escape character \()Tj -/TT10 1 Tf -19.4986 0 TD -0 Tw -(%)Tj -/TT8 1 Tf -0.6001 0 TD -0.1789 Tw -(\) as needed to permit the atom)Tj --20.0987 -1.2889 TD -0.1511 Tw -[(containing it to be read correctly. Note that for )]TJ -/TT10 1 Tf -22.5341 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1511 Tw -[( macros, this means)]TJ --25.5345 -1.2889 TD -0.1711 Tw -(that the character need be quoted only when it is the first character of the)Tj -0 -1.2222 TD -0 Tw -(atom.)Tj -/TT10 1 Tf --11.7744 -2 TD -(NOESCQUOTE)Tj -/TT8 1 Tf -6.001 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NOESC)Tj -/TT8 1 Tf -4.3326 0 TD -0.2311 Tw -[(The read macro character will always be printed without an escape. For)]TJ -0 -1.2889 TD -0.1778 Tw -(example, the )Tj -/TT18 1 Tf -6.2418 0 TD -0 Tw -(?)Tj -/TT8 1 Tf -0.4438 0 TD -0.1778 Tw -[( read macro in the )]TJ -/TT10 1 Tf -9.1516 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1778 Tw -[( read table is a )]TJ -/TT10 1 Tf -7.488 0 TD -0 Tw -(NOESCQUOTE)Tj -/TT8 1 Tf -6.001 0 TD -0.1778 Tw -[( character.)]TJ --29.9263 -1.2889 TD -0.1911 Tw -(Unless you are very careful what you are doing, read macro characters in)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.2589 Tw -[( should never be )]TJ -/TT10 1 Tf -8.6244 0 TD -0 Tw -(NOESCQUOTE)Tj -/TT8 1 Tf -6.001 0 TD -0.2589 Tw -(, since symbols that happen to)Tj --20.0263 -1.2889 TD -0 Tw -(contain the read macro character will not read back in correctly.)Tj --10.4444 -2.8889 TD -(The following two disjoint options control when the macros function is actually executed:)Tj -/TT10 1 Tf --0.73 -2 TD -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(IMMED)Tj -/TT8 1 Tf -4.3326 0 TD -0.2122 Tw -(The read macro character is immediately activated, i.e., the current line is)Tj -0 -1.2889 TD -0.0167 Tw -(terminated, as if an )Tj -/TT10 1 Tf -8.8186 0 TD -0 Tw -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0167 Tw -[( had been typed, a carriage-return line-feed is printed,)]TJ -ET -endstream -endobj -120 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -122 0 obj -<< -/Length 5626 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-36)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 569.54 Tm -0.2367 Tw -(and the entire line \(including the macro character\) is passed to the input)Tj -0 -1.2222 TD -0 Tw -(function.)Tj -/TT10 1 Tf -0 -2 TD -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0611 Tw -[( read macro characters enable you to specify a character that will)]TJ --5.4009 -1.2889 TD -0.0722 Tw -(take effect immediately, as soon as it is encountered in the input, rather than)Tj -0 -1.2222 TD -0.0411 Tw -[(waiting for the line to be terminated. Note that this is not necessarily as soon)]TJ -T* -0.1933 Tw -(as the character is )Tj -/TT16 1 Tf -8.8642 0 TD -0 Tw -(typed)Tj -/TT8 1 Tf -2.2222 0 TD -0.1933 Tw -[(. Characters that cause action as soon as they are)]TJ --11.0863 -1.2222 TD -0 Tw -(typed are interrupt characters \(see Chapter 30\).)Tj -0 -2 TD -0.0622 Tw -(Note that since an )Tj -/TT10 1 Tf -8.4672 0 TD -0 Tw -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0622 Tw -[( macro causes any input before it to be sent to)]TJ --13.868 -1.2889 TD -0.3078 Tw -(the reader, characters typed before an )Tj -/TT10 1 Tf -18.772 0 TD -0 Tw -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.3078 Tw -[( read macro character)]TJ --24.1728 -1.2889 TD -0.1289 Tw -(cannot be erased by Control-A or Control-Q once the )Tj -/TT10 1 Tf -24.8182 0 TD -0 Tw -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1289 Tw -[( character)]TJ --30.2191 -1.2889 TD -0.2967 Tw -(has been typed, since they have already passed through the line buffer.)Tj -0 -1.2222 TD -0.11 Tw -(However, an )Tj -/TT10 1 Tf -6.1819 0 TD -0 Tw -(INFIX)Tj -/TT8 1 Tf -3.0005 0 TD -0.11 Tw -[( read macro can still alter some of what has been typed)]TJ --9.1824 -1.2889 TD -0 Tw -(earlier, via its third argument.)Tj -/TT10 1 Tf --13.33 -2 TD -(NONIMMEDIATE)Tj -/TT8 1 Tf -7.2012 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NONIMMED)Tj -/TT8 1 Tf -5.3546 0 TD -0.05 Tw -[(The default. The read macro character is a normal character with respect to)]TJ --0.6667 -1.2889 TD -0.2622 Tw -(the line buffering, and so will not be activated until a carriage-return or)Tj -0 -1.2222 TD -0 Tw -(matching right parenthesis or bracket is seen.)Tj -0 -2 TD -0.4378 Tw -(Making a read macro character be both )Tj -/TT10 1 Tf -20.6025 0 TD -0 Tw -(ALONE)Tj -/TT8 1 Tf -3.0005 0 TD -0.4378 Tw -[( and )]TJ -/TT10 1 Tf -3.0684 0 TD -0 Tw -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -0.4378 Tw -[( is a)]TJ --32.0723 -1.2889 TD -0.1011 Tw -(contradiction, since )Tj -/TT10 1 Tf -9.0557 0 TD -0 Tw -(ALONE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1011 Tw -[( requires that the next character be input in order)]TJ --12.0562 -1.2889 TD -0.1511 Tw -[(to see if it is a break or separator character. Thus, )]TJ -/TT10 1 Tf -23.9002 0 TD -0 Tw -(ALONE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1511 Tw -[( read macros are)]TJ --26.9007 -1.2889 TD -0 Tw -(always )Tj -/TT10 1 Tf -3.355 0 TD -(NONIMMEDIATE)Tj -/TT8 1 Tf -7.2012 0 TD -(, regardless of whether or not )Tj -/TT10 1 Tf -13.2549 0 TD -(IMMEDIATE)Tj -/TT8 1 Tf -5.4009 0 TD -( is specified.)Tj --39.8786 -2.9556 TD -(Read macro characters can be "nested". For example, if )Tj -/TT10 1 Tf -24.5855 0 TD -(=)Tj -/TT8 1 Tf -0.6001 0 TD -( is defined by)Tj -/TT10 1 Tf --15.8522 -2.8889 TD -(\(MACRO \(LAMBDA \(FL RDTBL\))Tj -0 -1.2222 TD -( \(EVAL \(READ FL RDTBL\)\)\)\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(!)Tj -/TT8 1 Tf -0.6001 0 TD -( is defined by)Tj -/TT10 1 Tf -6.7904 -2.8889 TD -(\(SPLICE \(LAMBDA \(FL RDTBL\))Tj -0 -1.2222 TD -( \(READ FL RDTBL\)\)\))Tj -/TT8 1 Tf --9.3333 -2.9556 TD -0.0022 Tw -(then if the value of )Tj -/TT10 1 Tf -8.5585 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0006 Tc -0.0016 Tw -( is )Tj -/TT10 1 Tf -1.2193 0 TD -0 Tc -0.0044 Tw -(\(A B C\))Tj -/TT8 1 Tf -4.2096 0 TD -0.0022 Tw -(, and)Tj -/TT10 1 Tf -2.1951 0 TD -0.0004 Tc -0.004 Tw -( \(X =FOO Y\))Tj -/TT8 1 Tf -6.6144 0 TD -0.0002 Tc -0.002 Tw -( is input, )Tj -/TT10 1 Tf -4.1248 0 TD -0 Tc -0.0044 Tw -(\(X \(A B C\) Y\))Tj -/TT8 1 Tf -7.819 0 TD -0.0002 Tc -0.002 Tw -( will be returned. If)Tj -/TT10 1 Tf --36.541 -1.2889 TD -0 Tc -0 Tw -(\(X !=FOO Y\))Tj -/TT8 1 Tf -6.6011 0 TD -( is input, )Tj -/TT10 1 Tf -4.1182 0 TD -(\(X A B C Y\))Tj -/TT8 1 Tf -6.6011 0 TD -( will be returned.)Tj --17.3203 -2.9556 TD -0.3222 Tw -[(Note: If a read macros function calls )]TJ -/TT10 1 Tf -19.2907 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.3222 Tw -(, and the )Tj -/TT10 1 Tf -5.0467 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.3222 Tw -[( returns )]TJ -/TT10 1 Tf -4.3485 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3222 Tw -(, the function cannot)Tj --35.287 -1.2889 TD -0.0156 Tw -(distinguish the case where a )Tj -/TT10 1 Tf -12.8117 0 TD -0 Tw -(RIGHTPAREN)Tj -/TT8 1 Tf -6.001 0 TD -0.0156 Tw -[( or )]TJ -/TT10 1 Tf -1.472 0 TD -0 Tw -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -0.0156 Tw -[( followed the read macro character, \(e.g.)]TJ --27.4858 -1.2889 TD -0 Tw -(")Tj -/TT10 1 Tf -0.3711 0 TD -0.21 Tw -(\(A B \))Tj -/TT8 1 Tf -4.6207 0 TD -0.0878 Tw -("\), from the case where the atom )Tj -/TT10 1 Tf -15.1203 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0878 Tw -[( \(or ")]TJ -/TT10 1 Tf -2.3206 0 TD -0 Tw -(\(\))Tj -/TT8 1 Tf -1.2002 0 TD -0.0878 Tw -[("\) actually appeared. In Interlisp-D, a )]TJ -/TT10 1 Tf -17.4977 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf --42.9309 -1.2889 TD -0.0711 Tw -(inside of a read macro when the next input character is a )Tj -/TT10 1 Tf -26.1131 0 TD -0 Tw -(RIGHTPAREN)Tj -/TT8 1 Tf -6.001 0 TD -0.0711 Tw -[( or )]TJ -/TT10 1 Tf -1.5831 0 TD -0 Tw -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -0.0711 Tw -[( reads the)]TJ --40.8984 -1.2889 TD -0 Tw -(character and returns )Tj -/TT10 1 Tf -9.7119 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, just as if the )Tj -/TT10 1 Tf -6.022 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -( had not occurred inside a read macro.)Tj -ET -endstream -endobj -123 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 16 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -125 0 obj -<< -/Length 6759 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-37)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.03 Tw -(If a call to )Tj -/TT10 1 Tf -4.6879 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.03 Tw -[( from within a read macro encounters an unmatched )]TJ -/TT10 1 Tf -23.7871 0 TD -0 Tw -(RIGHTBRACKET)Tj -/TT8 1 Tf -7.2012 0 TD -( )Tj -/TT16 1 Tf -0.28 0 TD -(within)Tj -/TT8 1 Tf -2.667 0 TD -0.03 Tw -[( a list, the)]TJ --41.0235 -1.2889 TD -0.1056 Tw -[(bracket is simply put back into the buffer to be read \(again\) at the higher level. Thus, inputting an)]TJ -0 -1.2222 TD -0 Tw -(expression such as )Tj -/TT10 1 Tf -8.4634 0 TD -(\(A B \(C D])Tj -/TT8 1 Tf -6.6011 0 TD -( works correctly.)Tj -/TT10 1 Tf --15.0645 -3.1044 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(INREADMACROP)Tj -/TT10 1 Tf -7.1999 0 TD -(\) )Tj -/TT6 1 Tf -10 0 0 10 159.0017 519 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 519 Tm -([Function])Tj --35.4033 -1.8444 TD -(Returns )Tj -/TT10 1 Tf -3.9915 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2644 Tw -[( if currently )]TJ -/TT16 1 Tf -6.2386 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.2644 Tw -[( under a read macro function, otherwise the number of)]TJ --13.3634 -1.2889 TD -0 Tw -(unmatched left parentheses or brackets.)Tj -/TT10 1 Tf --5.3333 -3.0378 TD -(\()Tj -/TT14 1 Tf -0.6001 0 TD -(READMACROS)Tj -/TT4 1 Tf -10 0 0 10 137.4 463.46 Tm -( )Tj -/TT12 1 Tf -9 0 0 9 140.1783 463.46 Tm -(FLG)Tj -/TT16 1 Tf -1.8003 0 TD -( )Tj -/TT12 1 Tf -0.25 0 TD -(RDTBL)Tj -/TT10 1 Tf -3.0005 0 TD -(\))Tj -/TT6 1 Tf -10 0 0 10 191.0362 463.46 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 463.46 Tm -([Function])Tj --35.4033 -1.8445 TD -(If )Tj -/TT12 1 Tf -0.931 0 TD -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=NIL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -(, turns off action of read macros in read table )Tj -/TT12 1 Tf -20.1546 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -[(. If )]TJ -/TT12 1 Tf -1.7033 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -1.8003 0 TD -(=T)Tj -/TT8 1 Tf -1.2002 0 TD -0.0111 Tw -(, turns them on.)Tj --32.9905 -1.2889 TD -0 Tw -(Returns previous setting.)Tj -0 -2 TD -0.1167 Tw -(The following read macros are standardly defined in Interlisp in the )Tj -/TT10 1 Tf -31.5685 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1167 Tw -[( and )]TJ -/TT10 1 Tf -2.4262 0 TD -0 Tw -(EDITRDTBL)Tj -/TT8 1 Tf --34.5948 -1.2889 TD -(read tables:)Tj -/TT10 1 Tf --3.3367 -2 TD -( )Tj -/TT8 1 Tf -1.2002 0 TD -0.0844 Tw -[(\(single-quote\))-1333.6(Returns the next expression, wrapped in a call to )]TJ -/TT10 1 Tf -30.0262 0 TD -0 Tw -(QUOTE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0844 Tw -(; e.g., )Tj -/TT10 1 Tf -2.704 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -[( reads as)]TJ -/TT10 1 Tf --30.6613 -1.2889 TD -0.39 Tw -(\(QUOTE FOO\))Tj -/TT8 1 Tf -6.9911 0 TD -0.1622 Tw -[(. The macro is defined as a )]TJ -/TT10 1 Tf -13.5136 0 TD -0 Tw -(FIRST)Tj -/TT8 1 Tf -3.0005 0 TD -0.1622 Tw -[( read macro, so that the)]TJ --23.5052 -1.2889 TD -0.1389 Tw -[(quote character has no effect in the middle of a symbol. The macro is also)]TJ -0 -1.2222 TD -0.41 Tw -(ignored if the quote character is immediately followed by a separator)Tj -T* -0 Tw -(character.)Tj --5.7278 -2 TD -0.2544 Tw -[(Control-Y)-1332.8(Defined in )]TJ -/TT10 1 Tf -11.1585 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.2544 Tw -[( and )]TJ -/TT10 1 Tf -2.7018 0 TD -0 Tw -(EDITRDTBL)Tj -/TT8 1 Tf -5.4009 0 TD -0.2544 Tw -[(. Returns the result of evaluating the next)]TJ --14.1335 -1.2889 TD -0.0278 Tw -[(expression. For example, if the value of )]TJ -/TT10 1 Tf -18.0333 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -0.0278 Tw -[( is )]TJ -/TT10 1 Tf -1.2704 0 TD -0.0656 Tw -(\(A B\))Tj -/TT8 1 Tf -3.066 0 TD -0.0278 Tw -(, then )Tj -/TT10 1 Tf -2.7748 0 TD -0.0656 Tw -(\(LIST 1)Tj -/TT18 1 Tf -4.2662 0 TD -0 Tw -( )Tj -/TT16 1 Tf -0.2778 0 TD -(control-)Tj --31.4888 -1.2889 TD -(Y)Tj -/TT10 1 Tf -0.667 0 TD -0.1244 Tw -(FOO 2\))Tj -/TT8 1 Tf -3.725 0 TD -0.0522 Tw -[( is read as )]TJ -/TT10 1 Tf -4.8324 0 TD -0.1244 Tw -(\(LIST 1 \(A B\) 2\))Tj -/TT8 1 Tf -10.0993 0 TD -0.0522 Tw -[(. Note that no structure is copied;)]TJ --19.3238 -1.2889 TD -0.2244 Tw -(the third element of that input expression is still )Tj -/TT10 1 Tf -23.4726 0 TD -0 Tw -(EQ)Tj -/TT8 1 Tf -1.2002 0 TD -0.2244 Tw -[( to the value of )]TJ -/TT10 1 Tf -7.9484 0 TD -0 Tw -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --34.4215 -1.2889 TD -0.1622 Tw -(Control-Y can thus be used to read structures that ordinarily have no read)Tj -0 -1.2222 TD -0.3811 Tw -[(syntax. For example, the value returned from reading )]TJ -/TT10 1 Tf -27.5965 0 TD -0 Tw -(\(KEY1)Tj -/TT18 1 Tf -3.0005 0 TD -( )Tj -/TT16 1 Tf -0.6311 0 TD -(Control-)Tj --31.2281 -1.2889 TD -(Y)Tj -/TT10 1 Tf -0.667 0 TD -0.0289 Tw -(\(ARRAY 10\)\))Tj -/TT8 1 Tf -6.63 0 TD -0.0122 Tw -[( has an array as its second element. Control-Y can be thought)]TJ --7.297 -1.2889 TD -0.0156 Tw -[(of as an "un-quote" character. The choice of character to perform this function)]TJ -0 -1.2222 TD -0 Tw -(is changeable with )Tj -/TT10 1 Tf -8.4644 0 TD -(SETTERMCHARS)Tj -/TT8 1 Tf -7.2012 0 TD -( \(see Chapter 16\).)Tj -/TT10 1 Tf --23.0822 -2.0667 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -0.3356 Tw -[( )335.6(\(backquote\))-1333.2(Backquote makes it easier to write programs to construct complex data)]TJ -6.8166 -1.2889 TD -0.3722 Tw -[(structures. Backquote is like quote, except that within the backquoted)]TJ -0 -1.2222 TD -0.09 Tw -[(expression, forms can be evaluated. The general idea is that the backquoted)]TJ -T* -0.1289 Tw -(expression is a "template" containing some constant parts \(as with a quoted)Tj -T* -0.1422 Tw -[(form\) and some parts to be filled in by evaluating something. Unlike with)]TJ -T* -0.0278 Tw -(control-Y, however, the evaluation occurs not at the time the form is read, but)Tj -T* -0.16 Tw -[(at the time the backquoted expression is evaluated. That is, the backquote)]TJ -T* -0.1967 Tw -(macro returns an expression which, when evaluated, produces the desired)Tj -T* -0 Tw -(structure.)Tj -0 -2 TD -0.2467 Tw -(Within the backquoted expression, the character ")Tj -/TT18 1 Tf -23.4278 0 TD -0 Tw -(,)Tj -/TT8 1 Tf -0.25 0 TD -0.2467 Tw -(" \(comma\) introduces a)Tj --23.6778 -1.2222 TD -0.0001 Tc -0.0043 Tw -(form to be evaluated. The value of a form preceded by ")Tj -/TT10 1 Tf -24.9449 0 TD -0 Tc -0 Tw -(,@)Tj -/TT8 1 Tf -1.2002 0 TD -0.0044 Tw -(" is to be spliced in,)Tj --26.1451 -1.2889 TD -0 Tw -(using )Tj -/TT10 1 Tf -2.8838 0 TD -(APPEND)Tj -/TT8 1 Tf -3.6006 0 TD -0.1778 Tw -[(. If it is permissible to destroy the list being spliced in \(i.e.,)]TJ -/TT10 1 Tf --6.4844 -1.2889 TD -0 Tw -(NCONC)Tj -/TT8 1 Tf -3.0005 0 TD -( may be used in the translation\), then ")Tj -/TT10 1 Tf -17.0347 0 TD -(,.)Tj -/TT8 1 Tf -1.2002 0 TD -(" can be used instead of ")Tj -/TT10 1 Tf -11.0088 0 TD -(,@)Tj -/TT8 1 Tf -1.2002 0 TD -(".)Tj --33.4443 -2.0667 TD -(For example, if the value of )Tj -/TT10 1 Tf -12.3242 0 TD -(FOO)Tj -/TT8 1 Tf -1.8003 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(\(1 2 3 4\))Tj -/TT8 1 Tf -5.4009 0 TD -(, then the form)Tj -ET -endstream -endobj -126 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 15 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -128 0 obj -<< -/Length 3902 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-38)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 306 570.14 Tm -(\(A ,\(CAR FOO\) ,@\(CDDR FOO\) D E\))Tj -/TT8 1 Tf --9.3333 -2.0667 TD -(evaluates to )Tj -/TT10 1 Tf -5.5391 0 TD -(\(A 1 3 4 D E\))Tj -/TT8 1 Tf -7.8013 0 TD -(; it is logically equivalent to writing)Tj -/TT10 1 Tf --4.007 -2 TD -(\(CONS A)Tj -0 -1.2222 TD -( \(CONS \(CAR FOO\))Tj -T* -( \(APPEND \(CDDR FOO\) \(D E\)\)\)\))Tj -T* -(.)Tj -/TT8 1 Tf --9.3333 -2.0667 TD -0.0311 Tw -[(Backquote is particularly useful for writing macros. For example, the body of)]TJ -0 -1.2222 TD -0 Tw -(a macro that refers to )Tj -/TT10 1 Tf -9.6289 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( as the macros argument list might be)Tj -/TT10 1 Tf --0.8957 -1.7778 TD -(\(COND)Tj -0 -1 TD -( \(\(FIXP ,\(CAR X\)\))Tj -T* -( ,\(CADR X\)\))Tj -T* -( \(T .,\(CDDR X\)\)\))Tj -/TT8 1 Tf -0 -1.6222 TD -(which is equivalent to writing)Tj -/TT10 1 Tf -0 -1.4889 TD -(\(LIST COND)Tj -0 -1 TD -( \(LIST \(LIST FIXP \(CAR X\)\))Tj -T* -( \(CADR X\)\))Tj -T* -( \(CONS T \(CDDR X\)\)\))Tj -/TT8 1 Tf --9.3333 -1.8444 TD -0.1011 Tw -(Note that comma does )Tj -/TT16 1 Tf -10.6359 0 TD -0 Tw -(not)Tj -/TT8 1 Tf -1.333 0 TD -0.1011 Tw -[( have any special meaning outside of a backquote)]TJ --11.9689 -1.2222 TD -0 Tw -(context.)Tj -0 -2 TD -0.1533 Tw -(For users without a backquote character on their keyboards, backquote can)Tj -0 -1.2222 TD -0 Tw -(also be written as |)Tj -/TT10 1 Tf -8.5562 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -( \(vertical-bar, quote\).)Tj -/TT10 1 Tf --11.0896 -2.2156 TD -(?)Tj -/TT8 1 Tf -1.9333 0 TD -0.4778 Tw -(Implements the )Tj -/TT10 1 Tf -8.1274 0 TD -0 Tw -(?=)Tj -/TT8 1 Tf -1.2002 0 TD -0.4778 Tw -[( command for on-line help regarding the function)]TJ --9.3276 -1.2889 TD -0 Tw -(currently being "called" in the typein \(see Chapter 26\).)Tj --7.8456 -2 TD -0.0844 Tw -[(| )84.4(\(vertical )84.4(bar\))-1334.3(When followed by an end of line, tab or space, | is ignored, i.e., treated as a)]TJ -7.8456 -1.2222 TD -0.1489 Tw -(separator character, enabling the editors )Tj -/TT10 1 Tf -19.0467 0 TD -0 Tw -(CHANGECHAR)Tj -/TT8 1 Tf -6.001 0 TD -0.1489 Tw -[( feature \(see Chapter)]TJ --25.0477 -1.2889 TD -0.1078 Tw -[(26\). Otherwise it is a "dispatching" read macro whose meaning depends on)]TJ -0 -1.2222 TD -0 Tw -(the character\(s\) following it. The following are currently defined:)Tj -/TT10 1 Tf -0 -2 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -( \(quote\) -- A synonym for backquote.)Tj -/TT10 1 Tf --0.6001 -2.0667 TD -(.)Tj -/TT8 1 Tf -0.6001 0 TD -0.2689 Tw -[( \(period\) -- Returns the evaluation of the next expression, i.e., this is a)]TJ --0.6001 -1.2889 TD -0 Tw -(synonym for Control-Y.)Tj -/TT18 1 Tf -0 -2 TD -(,)Tj -/TT8 1 Tf -0.25 0 TD -0.0356 Tw -[( \(comma\) -- Returns the evaluation of the next expression )]TJ -/TT16 1 Tf -25.8966 0 TD -(at load time)Tj -/TT8 1 Tf -4.7913 0 TD -(, i.e., the)Tj --30.9379 -1.2889 TD -0.0522 Tw -(following expression is quoted in such a manner that the compiler treats it as)Tj -0 -1.2222 TD -0.2867 Tw -(a literal whose value is not determined until the compiled expression is)Tj -T* -0 Tw -(loaded.)Tj -/TT10 1 Tf -0 -2 TD -(O)Tj -/TT8 1 Tf -0.6001 0 TD -0.0522 Tw -[( or )]TJ -/TT10 1 Tf -1.5454 0 TD -0 Tw -(o)Tj -/TT8 1 Tf -0.6001 0 TD -0.0522 Tw -[( \(the letter O\) -- Treats the next number as octal, i.e., reads it in radix 8.)]TJ --2.7456 -1.2889 TD -0 Tw -(For example, |)Tj -/TT10 1 Tf -6.6021 0 TD -(o12)Tj -/TT8 1 Tf -1.8003 0 TD -( = )Tj -/TT10 1 Tf -1.106 0 TD -(10)Tj -/TT8 1 Tf -1.2002 0 TD -( \(decimal\).)Tj -/TT10 1 Tf --10.7085 -2.0667 TD -(B)Tj -/TT8 1 Tf -0.6001 0 TD -0.2389 Tw -[( or )]TJ -/TT10 1 Tf -1.9187 0 TD -0 Tw -(b)Tj -/TT8 1 Tf -0.6001 0 TD -0.2389 Tw -[( -- Treats the next number as binary, i.e., reads it in radix 2. For)]TJ --3.1189 -1.2889 TD -0 Tw -(example, |)Tj -/TT10 1 Tf -4.855 0 TD -(b101)Tj -/TT8 1 Tf -2.4004 0 TD -( = )Tj -/TT10 1 Tf -1.106 0 TD -(5)Tj -/TT8 1 Tf -0.6001 0 TD -( \(decimal\).)Tj -ET -endstream -endobj -129 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT16 16 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -131 0 obj -<< -/Length 2413 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(24-39)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(I/O FUNCTIONS)Tj -/TT10 1 Tf -9 0 0 9 174 569.54 Tm -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( or )]TJ -/TT10 1 Tf -1.5209 0 TD -0 Tw -(x)Tj -/TT8 1 Tf -0.6001 0 TD -0.04 Tw -[( -- Treats the next number as hexadecimal, i.e., reads it in radix 16. The)]TJ --2.7211 -1.2889 TD -0.0122 Tw -(uppercase letters )Tj -/TT10 1 Tf -7.7705 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[( though )]TJ -/TT10 1 Tf -3.7198 0 TD -0 Tw -(F)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[( are used as the digits after )]TJ -/TT10 1 Tf -12.1695 0 TD -0 Tw -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.0122 Tw -[(. For example, |)]TJ -/TT10 1 Tf -7.4009 0 TD -0 Tw -(x1A)Tj -/TT8 1 Tf --32.8611 -1.2889 TD -(= )Tj -/TT10 1 Tf -0.856 0 TD -(26)Tj -/TT8 1 Tf -1.2002 0 TD -( \(decimal\).)Tj -/TT10 1 Tf --2.0562 -2.0667 TD -(R)Tj -/TT8 1 Tf -0.6001 0 TD -0.2644 Tw -[( or )]TJ -/TT10 1 Tf -1.9698 0 TD -0 Tw -(r)Tj -/TT8 1 Tf -0.6001 0 TD -0.2644 Tw -[( -- Reads the next number in the radix specified by the \(decimal\))]TJ --3.17 -1.2889 TD -0.0244 Tw -(number that appears between the | and the )Tj -/TT10 1 Tf -19.7307 0 TD -0 Tw -(R)Tj -/TT8 1 Tf -0.6001 0 TD -0.0244 Tw -[(. When inputting a number in a)]TJ --20.3308 -1.2889 TD -0.0944 Tw -(radix above ten, the upper-case letters )Tj -/TT10 1 Tf -17.6262 0 TD -0 Tw -(A)Tj -/TT8 1 Tf -0.6001 0 TD -0.0944 Tw -[( through )]TJ -/TT10 1 Tf -4.2792 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -0.0944 Tw -[( can be used as the digits)]TJ --23.1057 -1.2889 TD -0 Tw -(after )Tj -/TT10 1 Tf -2.3843 0 TD -(9)Tj -/TT8 1 Tf -0.6001 0 TD -0.1011 Tw -[( \(but there is no digit above )]TJ -/TT10 1 Tf -13.0955 0 TD -0 Tw -(Z)Tj -/TT8 1 Tf -0.6001 0 TD -0.1011 Tw -(, so it is not possible to type all base-99)Tj --16.68 -1.2889 TD -0 Tw -(digits\). For example, |)Tj -/TT10 1 Tf -10.1841 0 TD -(3r120)Tj -/TT8 1 Tf -3.0005 0 TD -( reads 120 in radix 3, returning 15.)Tj -/TT10 1 Tf --13.1846 -2.0667 TD -0.2656 Tw -(\(, {,)Tj -/TT8 1 Tf -3.266 0 TD -0 Tw -( )Tj -/TT18 1 Tf -0.3611 0 TD -(^)Tj -/TT8 1 Tf -0.606 0 TD -0.1111 Tw -[( -- Used internally by )]TJ -/TT10 1 Tf -10.1659 0 TD -0 Tw -(HPRINT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1111 Tw -[( and )]TJ -/TT10 1 Tf -2.4151 0 TD -0 Tw -(HREAD)Tj -/TT8 1 Tf -3.0005 0 TD -0.1111 Tw -[( \(see above\) to print and)]TJ --23.4152 -1.2889 TD -0 Tw -(read unusual expressions. )Tj -0 -2 TD -0.2478 Tw -(The dispatching characters that are letters can appear in either upper- or)Tj -0 -1.2222 TD -0 Tw -(lowercase.)Tj -ET -endstream -endobj -132 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT18 23 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -133 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -134 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -135 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -136 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -137 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -138 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -139 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -140 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -141 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 133 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 278 -0 0 556 0 556 0 0 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 0 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 667 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 0 778 556 556 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 134 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 278 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 135 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [250 0 371 0 0 840 0 0 333 333 0 606 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 0 606 606 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 786 668 525 613 778 722 1000 0 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 606 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 136 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 600 600 600 600 600 0 600 600 600 600 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 0 0 0 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 600 -0 600 600 600 600 600 600 0 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 600 600 600 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 137 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -600 600 600 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 138 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 35 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 600 600 0 600 600 600 -600 600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 -600 600 600 600 600 600 600 0 600 600 600 600 600 600 0 600 -600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 139 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 333 250 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 611 667 778 611 556 0 0 333 0 667 556 944 778 0 -611 0 667 556 611 0 0 0 722 667 0 0 0 0 0 0 -0 444 463 407 500 389 278 500 500 278 278 444 278 778 556 444 -500 0 389 389 333 556 500 722 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 140 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 126 -/Widths [250 0 0 0 0 0 0 0 333 333 0 0 250 333 250 0 -0 500 500 500 0 0 0 0 0 0 0 0 0 0 0 444 -0 0 0 0 0 611 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 606 0 -0 500 0 0 0 500 0 0 0 0 0 0 333 889 0 0 -611 0 0 0 0 0 0 0 500 0 0 0 0 0 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 141 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -24 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 26 0 R -/Contents 25 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -50 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 52 0 R -/Contents 51 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -56 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 58 0 R -/Contents 57 0 R ->> -endobj -59 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 61 0 R -/Contents 60 0 R ->> -endobj -62 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 64 0 R -/Contents 63 0 R ->> -endobj -65 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 67 0 R -/Contents 66 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -71 0 obj -<< -/Type /Page -/Parent 46 0 R -/Resources 73 0 R -/Contents 72 0 R ->> -endobj -74 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 76 0 R -/Contents 75 0 R ->> -endobj -78 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 80 0 R -/Contents 79 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -84 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 86 0 R -/Contents 85 0 R ->> -endobj -87 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 89 0 R -/Contents 88 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 77 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -109 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 111 0 R -/Contents 110 0 R ->> -endobj -112 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 114 0 R -/Contents 113 0 R ->> -endobj -115 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 117 0 R -/Contents 116 0 R ->> -endobj -118 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 120 0 R -/Contents 119 0 R ->> -endobj -121 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 123 0 R -/Contents 122 0 R ->> -endobj -124 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 126 0 R -/Contents 125 0 R ->> -endobj -127 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 129 0 R -/Contents 128 0 R ->> -endobj -130 0 obj -<< -/Type /Page -/Parent 108 0 R -/Resources 132 0 R -/Contents 131 0 R ->> -endobj -142 0 obj -<< -/S /D ->> -endobj -143 0 obj -<< -/Nums [0 142 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 17 0 R 20 0 R 24 0 R 27 0 R 30 0 R 33 0 R 36 0 R 39 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -46 0 obj -<< -/Type /Pages -/Kids [42 0 R 47 0 R 50 0 R 53 0 R 56 0 R 59 0 R 62 0 R 65 0 R 68 0 R 71 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -77 0 obj -<< -/Type /Pages -/Kids [74 0 R 78 0 R 81 0 R 84 0 R 87 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R] -/Count 10 -/Parent 45 0 R ->> -endobj -108 0 obj -<< -/Type /Pages -/Kids [105 0 R 109 0 R 112 0 R 115 0 R 118 0 R 121 0 R 124 0 R 127 0 R 130 0 R] -/Count 9 -/Parent 45 0 R ->> -endobj -45 0 obj -<< -/Type /Pages -/Kids [11 0 R 46 0 R 77 0 R 108 0 R ] -/Count 39 -/MediaBox [0 0 612 792] ->> -endobj -144 0 obj -<< -/CreationDate (D:20210202102712-06'00') -/ModDate (D:20210202102712-06'00') -/Producer (Apple pstopdf) ->> -endobj -145 0 obj -<< -/Type /Catalog -/Pages 45 0 R -/PageLabels 143 0 R ->> -endobj -xref -0 146 -0000000000 65535 f -0000277262 00000 n -0000000016 00000 n -0000004880 00000 n -0000273636 00000 n -0000273848 00000 n -0000274299 00000 n -0000274608 00000 n -0000275176 00000 n -0000275736 00000 n -0000271686 00000 n -0000280647 00000 n -0000277343 00000 n -0000005033 00000 n -0000011287 00000 n -0000276077 00000 n -0000276418 00000 n -0000277427 00000 n -0000011467 00000 n -0000019518 00000 n -0000277511 00000 n -0000019687 00000 n -0000027738 00000 n -0000276861 00000 n -0000277595 00000 n -0000027920 00000 n -0000035770 00000 n -0000277679 00000 n -0000035952 00000 n -0000043650 00000 n -0000277763 00000 n -0000043830 00000 n -0000051114 00000 n -0000277847 00000 n -0000051283 00000 n -0000058827 00000 n -0000277931 00000 n -0000059009 00000 n -0000066659 00000 n -0000278015 00000 n -0000066852 00000 n -0000073803 00000 n -0000278099 00000 n -0000073996 00000 n -0000082171 00000 n -0000281201 00000 n -0000280784 00000 n -0000278183 00000 n -0000082351 00000 n -0000089155 00000 n -0000278267 00000 n -0000089335 00000 n -0000097974 00000 n -0000278351 00000 n -0000098167 00000 n -0000105697 00000 n -0000278435 00000 n -0000105890 00000 n -0000113490 00000 n -0000278519 00000 n -0000113659 00000 n -0000120145 00000 n -0000278603 00000 n -0000120325 00000 n -0000129364 00000 n -0000278687 00000 n -0000129557 00000 n -0000136328 00000 n -0000278771 00000 n -0000136497 00000 n -0000142259 00000 n -0000278855 00000 n -0000142439 00000 n -0000148893 00000 n -0000278939 00000 n -0000149086 00000 n -0000153538 00000 n -0000280922 00000 n -0000279023 00000 n -0000153682 00000 n -0000160646 00000 n -0000279107 00000 n -0000160839 00000 n -0000165251 00000 n -0000279191 00000 n -0000165444 00000 n -0000171340 00000 n -0000279275 00000 n -0000171533 00000 n -0000177013 00000 n -0000279359 00000 n -0000177193 00000 n -0000184631 00000 n -0000279443 00000 n -0000184824 00000 n -0000190664 00000 n -0000279527 00000 n -0000190857 00000 n -0000199501 00000 n -0000279611 00000 n -0000199694 00000 n -0000206051 00000 n -0000279697 00000 n -0000206245 00000 n -0000213999 00000 n -0000279784 00000 n -0000214193 00000 n -0000220763 00000 n -0000281061 00000 n -0000279872 00000 n -0000220946 00000 n -0000230670 00000 n -0000279960 00000 n -0000230853 00000 n -0000238773 00000 n -0000280048 00000 n -0000238956 00000 n -0000245176 00000 n -0000280136 00000 n -0000245370 00000 n -0000251958 00000 n -0000280224 00000 n -0000252128 00000 n -0000257808 00000 n -0000280312 00000 n -0000257953 00000 n -0000264766 00000 n -0000280400 00000 n -0000264960 00000 n -0000268916 00000 n -0000280488 00000 n -0000269074 00000 n -0000271541 00000 n -0000271827 00000 n -0000272025 00000 n -0000272232 00000 n -0000272428 00000 n -0000272629 00000 n -0000272821 00000 n -0000273023 00000 n -0000273226 00000 n -0000273430 00000 n -0000280576 00000 n -0000280605 00000 n -0000281308 00000 n -0000281432 00000 n -trailer -<< -/Size 146 -/Root 145 0 R -/Info 144 0 R -/ID [<86c205726a981af932f6adc88a72e803><86c205726a981af932f6adc88a72e803>] ->> -startxref -281504 -%%EOF diff --git a/docs/medley-irm/25-USERIO-PACKAGES.pdf b/docs/medley-irm/25-USERIO-PACKAGES.pdf deleted file mode 100644 index e273ad01..00000000 --- a/docs/medley-irm/25-USERIO-PACKAGES.pdf +++ /dev/null @@ -1,17949 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 3999 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(25. USER/ INPUT/OUTPUT PACKAGES)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 564.99 m -534.01 564.99 l -S -BT -/TT6 1 Tf -9 0 0 9 78 542.54 Tm -(Interlisp-D can perform input/output operations on a large variety of physical devices. )Tj -0 -2.8889 TD -0.0089 Tw -(This chapter presents a number of packages that have been developed for displaying and allowing the)Tj -0 -1.2222 TD -0.0844 Tw -[(user to enter information. These packages are used to implement the user interface of many system)]TJ -T* -0 Tw -(facilities.)Tj -/TT8 1 Tf -4 -2 TD -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.3211 Tw -[( \(see the )]TJ -/TT8 1 Tf -4.8154 0 TD -0 Tw -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.3211 Tw -[( section below\) provides a window-based facility for)]TJ --13.2168 -1.2889 TD -0 Tw -(displaying and changing the fields of a data object.)Tj -/TT8 1 Tf -0 -2.1422 TD -(PROMPTFORWORD)Tj -/F1 1 Tf -10 0 0 10 184.2114 445.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 190.2114 445.66 Tm -0.2889 Tw -(\(see the )Tj -/TT8 1 Tf -4.1798 0 TD -0 Tw -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.2889 Tw -[( section below\) is a function used for)]TJ --20.449 -1.2889 TD -0.2822 Tw -[(entering a simple string of characters. Basic editing and prompting facilities are)]TJ -0 -1.2222 TD -0 Tw -(provided.)Tj -/TT8 1 Tf -0 -2 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1622 Tw -[( \(see the )]TJ -/TT8 1 Tf -4.3387 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1622 Tw -[( section below\) provides a more complicated prompting)]TJ --12.7401 -1.2889 TD -0.2222 Tw -[(and answering facility, allowing a series of questions to be printed. Prompts and)]TJ -0 -1.2222 TD -0 Tw -(argument completion are supported.)Tj -/TT8 1 Tf -0 -2 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[( \(see the )]TJ -/TT8 1 Tf -3.9954 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[( Display Typein Editor section below\) is a display typein editor,)]TJ --9.9964 -1.2889 TD -0 Tw -(that provides complex text editing facilities when entering an input line.)Tj -/TT8 1 Tf -0 -2 TD -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.4011 Tw -[( \(see the Prettyprint section below\) is used for printing function)]TJ --6.6011 -1.2889 TD -0.0944 Tw -(definitions and other list structures, using multiple fonts and indenting lines to show)Tj -0 -1.2222 TD -0 Tw -(the structure of the list.)Tj -/TT4 1 Tf -10 0 0 10 54 269.92 Tm -(Inspector)Tj -ET -1 w -54.01 267.21 m -534.01 267.21 l -S -BT -/TT6 1 Tf -9 0 0 9 78 245.26 Tm -0.1467 Tw -(The Inspector provides a display-oriented facility for looking at and changing arbitrary Interlisp-D)Tj -T* -0.0833 Tw -[(data structures. The inspector can be used to inspect all user datatypes and many system datatypes)]TJ -T* -0.1156 Tw -[(\(although some objects such as numbers have no inspectable structure\). The inspector displays the)]TJ -T* -0.1189 Tw -(field names and values of an arbitrary object in a window that allows setting of the properties and)Tj -T* -0.0578 Tw -[(further inspection of the values. This latter feature makes it possible to "walk" around all of the data)]TJ -T* -0.15 Tw -[(structures in the system at the touch of a button. In addition, the inspector is integrated with the)]TJ -T* -0.24 Tw -(break package to allow inspection of any object on the stack and with the display and teletype)Tj -T* -0.0522 Tw -(structural editors to allow the editors to be used to "inspect" list structures and the inspector to "edit")Tj -T* -0 Tw -(datatypes. )Tj -0 -2.8889 TD -0.0111 Tw -(The underlying mechanisms of the data inspector have been designed to allow their use as specialized)Tj -0 -1.2222 TD -0 Tw -(editors in user applications. This functionality is described at the end of this section.)Tj -5.3333 -2 TD -0.0644 Tw -[(Note: Currently, the inspector does not have )]TJ -/TT8 1 Tf -20.6489 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0644 Tw -[(ing. Also, variables whose values are)]TJ --19.0492 -1.2889 TD -0 Tw -(changed will not be marked as such.)Tj -/TT4 1 Tf -10 0 0 10 78 61.32 Tm -(Calling the Inspector)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -12 0 obj -<< -/Length 5805 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-2)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1233 Tw -[(There are several ways to open an inspect window onto an object. In addition to calling )]TJ -/TT8 1 Tf -41.1401 0 TD -0 Tw -(INSPECT)Tj -/TT6 1 Tf --41.1401 -1.2889 TD -0.0489 Tw -(directly \(below\), the inspector can also be called by buttoning an Inspect command inside an existing)Tj -0 -1.2222 TD -0.1656 Tw -[(inspector window. Finally, if a non-list is edited with )]TJ -/TT8 1 Tf -25.5525 0 TD -0 Tw -(EDITDEF)Tj -/TT6 1 Tf -4.2007 0 TD -0.1656 Tw -[( \(see Chapter 17\), the inspector is)]TJ --29.7532 -1.2889 TD -0.0878 Tw -[(called. This also causes the inspector to be called by the Dedit command from the display editor or)]TJ -0 -1.2222 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.6372 0 TD -(EV)Tj -/TT6 1 Tf -1.2002 0 TD -( command from the teletype editor if the selected piece of structure is a non-list.)Tj -/TT8 1 Tf --0.1707 -2.5422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(INSPECT)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(OBJECT)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ASTYPE)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 306.6184 501.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 501.46 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1933 Tw -(Creates an inspect window onto )Tj -/TT14 1 Tf -15.4554 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1933 Tw -[(. If )]TJ -/TT14 1 Tf -2.2499 0 TD -0 Tw -(ASTYPE)Tj -/TT6 1 Tf -3.6006 0 TD -0.1933 Tw -[( is given, it will be taken as the)]TJ --24.9065 -1.2889 TD -0.0256 Tw -(record type of )Tj -/TT14 1 Tf -6.5376 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0256 Tw -[(. This allows records to be inspected with their property names. If)]TJ -/TT14 1 Tf --10.1382 -1.2889 TD -0 Tw -(ASTYPE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -[( is )]TJ -/TT8 1 Tf -1.3326 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0589 Tw -(, the data type of )Tj -/TT14 1 Tf -7.96 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -[( will be used to determine its property names in)]TJ --18.2941 -1.2889 TD -0 Tw -(the inspect window.)Tj -/TT14 1 Tf -0 -2 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1556 Tw -[( specifies the location of the inspect window. If )]TJ -/TT14 1 Tf -22.765 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1556 Tw -[( is )]TJ -/TT8 1 Tf -1.526 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1556 Tw -(, the user will be)Tj --32.0923 -1.2889 TD -0.0456 Tw -[(prompted for a location. If )]TJ -/TT14 1 Tf -12.435 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0456 Tw -[( is a window, it will be used as the inspect window. If)]TJ -/TT14 1 Tf --15.4354 -1.2889 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1633 Tw -[( is a region, the inspect window will be created in that region of the screen. If)]TJ -/TT14 1 Tf --3.0005 -1.2889 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0444 Tw -[( is a position, the inspect window will have its lower left corner at that position on)]TJ --3.0005 -1.2889 TD -0 Tw -(the screen.)Tj -/TT8 1 Tf -0 -2 TD -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -( returns the inspect window onto )Tj -/TT14 1 Tf -14.936 0 TD -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -(, or )Tj -/TT8 1 Tf -1.6909 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if no inspection took place.)Tj -/TT8 1 Tf --28.8952 -2.5422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(INSPECTCODE)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FN)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WHERE )Tj -/TT8 1 Tf -7.8013 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 312.0158 344.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 344.78 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1067 Tw -(Opens a window and displays the compiled code of the function )Tj -/TT14 1 Tf -29.9692 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.1067 Tw -[( using )]TJ -/TT8 1 Tf -3.1694 0 TD -0 Tw -(PRINTCODE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --39.7397 -1.2889 TD -(The window is scrollable.)Tj -/TT8 1 Tf -0 -2 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0744 Tw -[( determines where the window should appear. It can be a position, a region, or a)]TJ --3.0005 -1.2889 TD -0 Tw -(window. If )Tj -/TT8 1 Tf -5.3677 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the user is prompted to specify the position of the window.)Tj --7.168 -2.0667 TD -0.1811 Tw -[(Note: If the Tedit library package is loaded, )]TJ -/TT8 1 Tf -21.3092 0 TD -0 Tw -(INSPECTCODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.1811 Tw -[( uses it to create the code)]TJ --23.9103 -1.2889 TD -0.0422 Tw -[(inspector window. Also, if )]TJ -/TT8 1 Tf -12.4094 0 TD -0 Tw -(INSPECTCODE)Tj -/TT6 1 Tf -6.6011 0 TD -0.0422 Tw -[( is called to inspect the frame name in)]TJ --19.0104 -1.2889 TD -0.1389 Tw -(a break window \(see Chapter 14\), the location in the code that the frames PC)Tj -0 -1.2222 TD -0 Tw -(indicates it was executing at the time is highlighted.)Tj -/TT4 1 Tf -10 0 0 10 126 204.84 Tm -(Multiple Ways of Inspecting)Tj -/TT6 1 Tf -9 0 0 9 126 181.18 Tm -0.1811 Tw -(For some datatypes there is more than one aspect that is of interest or more than one method of)Tj -T* -0.0744 Tw -[(inspecting the object. In these cases, the inspector will bring up a menu of the possibilities and wait)]TJ -T* -0 Tw -(for the user to select one.)Tj -0 -2.8889 TD -0.2744 Tw -(If the object is a litatom, the commands are the types for which the litatom has definitions as)Tj -0 -1.2222 TD -0 Tw -(determined by )Tj -/TT8 1 Tf -6.7451 0 TD -(HASDEF)Tj -/TT6 1 Tf -3.6006 0 TD -(. Some typical commands are:)Tj -/TT8 1 Tf --2.8124 -2.0667 TD -(FNS)Tj -/TT6 1 Tf -3.1333 0 TD -(Edit the definition of the selected litatom.)Tj -ET -102 91.42 6.99 -6.44 re -f -BT -/TT8 1 Tf -9 0 0 9 188.4 84.98 Tm -(VARS)Tj -/TT6 1 Tf -3.7333 0 TD -(Inspect the value.)Tj -/TT8 1 Tf --4.3333 -2.0667 TD -(PROPS)Tj -/TT6 1 Tf -4.3333 0 TD -(Inspect the property list.)Tj --5.3333 -2.0667 TD -(If the object is a list, there will be choice of how to inspect the list:)Tj -ET -endstream -endobj -13 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -18 0 obj -<< -/Length 4773 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-3)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 124.2 569.54 Tm -(Inspect)Tj -/TT6 1 Tf -5.5333 0 TD -0.0078 Tw -(Opens an inspect window in which the properties are numbers and the values)Tj -0 -1.2889 TD -0 Tw -(are the elements of the list.)Tj -/TT8 1 Tf --5.5333 -2 TD -(TtyEdit)Tj -/TT6 1 Tf -5.5333 0 TD -(Calls the teletype list structure editor on the list \(see Chapter 16\).)Tj -/TT8 1 Tf --7.9333 -2.0667 TD -(DisplayEdit)Tj -/TT6 1 Tf -7.9333 0 TD -(Calls the DEdit display editor on the list \(see Chapter 16\).)Tj --6.5356 -2.0667 TD -(As a )Tj -/TT8 1 Tf -2.2017 0 TD -(PLIST)Tj -/TT6 1 Tf -4.3339 0 TD -0.06 Tw -(Inspects the list as a property list, if the list is in property list form: )Tj -/TT8 1 Tf -30.4606 0 TD -0 Tw -(\(\(PROP)Tj -3.6028 -0.2222 TD -(1)Tj --34.0633 -1.2222 TD -(VAL)Tj -1.8 -0.2222 TD -(1)Tj -0.6 0.2222 TD -(\) ... \(PROP)Tj -6.6 -0.2222 TD -(N)Tj -0.6 0.2222 TD -( VAL)Tj -2.4 -0.2222 TD -(N)Tj -0.6 0.2222 TD -(\)\).)Tj -/TT6 1 Tf --19.7178 -2.2889 TD -(As an )Tj -/TT8 1 Tf -2.7837 0 TD -(ALIST)Tj -/TT6 1 Tf -4.3341 0 TD -0.0544 Tw -(Inspects the list as an association-list, if the list is in )Tj -/TT8 1 Tf -23.4104 0 TD -0 Tw -(ASSOC)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -[( list form: )]TJ -/TT8 1 Tf -4.6521 0 TD -0 Tw -(\(PROP)Tj -3.0048 -0.2222 TD -(1)Tj --34.0678 -1.2222 TD -(VAL)Tj -1.8 -0.2222 TD -(1)Tj -0.6 0.2222 TD -( ... PROP)Tj -5.4 -0.2222 TD -(N)Tj -0.6 0.2222 TD -( VAL)Tj -2.4 -0.2222 TD -(N)Tj -0.6 0.2222 TD -(\).)Tj -/TT6 1 Tf --17.8067 -2.2889 TD -0.1067 Tw -[(As )106.7(a )106.7(record)-1335.4(Brings up a submenu with all of the )]TJ -/TT8 1 Tf -23.3313 0 TD -0 Tw -(RECORD)Tj -/TT6 1 Tf -3.6006 0 TD -0.1067 Tw -(s in the system and inspect the)Tj --20.5252 -1.2889 TD -0 Tw -(list with the one chosen.)Tj --9.36 -2 TD -0.0922 Tw -[(As )92.2(a )92.2("record )92.2(type")-1334.1(Inspects the list as the record of the type named in its )]TJ -/TT8 1 Tf -34.1805 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -(, if the )Tj -/TT8 1 Tf -3.2879 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0922 Tw -[( of the)]TJ --31.709 -1.2889 TD -0 Tw -(list is the name of a )Tj -/TT8 1 Tf -8.7568 0 TD -(TYPERECORD)Tj -/TT6 1 Tf -6.001 0 TD -( \(see Chapter 8\).)Tj --25.4245 -2.9556 TD -0.0267 Tw -(If the object is a bitmap, the choice is between inspecting the bitmaps contents with the bitmap editor)Tj -0 -1.2222 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -(EDITBM)Tj -/TT6 1 Tf -3.6006 0 TD -(\) or inspecting the bitmaps fields.)Tj --3.9336 -2.9556 TD -(Other datatypes may include multiple methods for inspecting objects of that type.)Tj -/TT4 1 Tf -10 0 0 10 78 300.8 Tm -(Inspect Windows)Tj -/TT6 1 Tf -9 0 0 9 78 277.14 Tm -0.0278 Tw -[(An inspect window displays two columns of values. The lefthand column lists the property names of)]TJ -0 -1.2222 TD -0.0578 Tw -[(the structure being inspected. The righthand column contains the values of the properties named on)]TJ -T* -0.0278 Tw -[(the left. For variable length data such as lists and arrays, the "property names" are numbers from 1 to)]TJ -T* -0.2122 Tw -[(the length of the inspected item and the values are the corresponding elements. For arrays, the)]TJ -T* -0.06 Tw -(property names are the array element numbers and the values are the corresponding elements of the)Tj -T* -0 Tw -(array.)Tj -0 -2.8889 TD -0.0178 Tw -(For large lists or arrays, or datatypes with many fields, the initial window may be too small to contain)Tj -0 -1.2222 TD -0.1167 Tw -[(all of them. In these cases, the unseen elements can be scrolled into view \(from the bottom\) or the)]TJ -T* -0 Tw -(window can be reshaped to increase its size.)Tj -0 -2.8889 TD -0.2844 Tw -(In an inspect window, the )Tj -/TT8 1 Tf -13.1551 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2844 Tw -[( button is used to select things, the )]TJ -/TT8 1 Tf -17.757 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2844 Tw -[( button to invoke)]TJ --36.9131 -1.2889 TD -0.1378 Tw -[(commands that apply to the selected item. Any property or value can be selected by pointing the)]TJ -0 -1.2222 TD -0.0189 Tw -(cursor directly at the text representing it, and clicking the )Tj -/TT8 1 Tf -25.7411 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0189 Tw -[( button. There is one selected item per)]TJ --28.1415 -1.2889 TD -0 Tw -(window and it is marked by having its surrounding box inverted.)Tj -0 -2.8889 TD -0.0033 Tw -(The options offered by the )Tj -/TT8 1 Tf -11.9288 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0001 Tc -0.0032 Tw -( button depend on whether the selection is a property or a value. If)Tj --15.5294 -1.2889 TD -0 Tc -0.1211 Tw -(the selected item is a value, the options provide different ways of inspecting the selected structure.)Tj -0 -1.2222 TD -0.1122 Tw -(The exact commands that are given depend on the type of the value. An example of the menu you)Tj -T* -0 Tw -(may see is:)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -21 0 obj -<< -/Length 3870 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-4)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -ET -q -56.25 0 0 -46.5 301.88 575.99 cm -/Im1 Do -Q -BT -/TT6 1 Tf -9 0 0 9 126 506.04 Tm -0.1078 Tw -(If the selected item is a property name, the command )Tj -/TT8 1 Tf -24.7902 0 TD -0 Tw -(SET)Tj -/TT6 1 Tf -1.8003 0 TD -0.1078 Tw -[( will appear. If selected, the user will be)]TJ --26.5905 -1.2889 TD -0.0022 Tw -(asked to type in an expression, and the selected property will be set to the result of evaluating the read)Tj -0 -1.2222 TD -0.0533 Tw -[(form. The evaluation of the read form and the replacement of the selected item property will appear)]TJ -T* -0.0556 Tw -[(as their own history events and are individually undoable. Properties of system datatypes cannot be)]TJ -T* -0.0289 Tw -[(set. \(There are often consistency requirements which can be inadvertently violated in ways that crash)]TJ -T* -0.0033 Tw -(the system. This may be true of some user datatypes as well, however the system doesnt know which)Tj -T* -0 Tw -(ones. Users are advised to exercise caution.\))Tj -0 -2.8889 TD -0.0856 Tw -[(It is possible to copy-select property names or values out of an inspect window. Litatoms, numbers)]TJ -0 -1.2222 TD -0.0633 Tw -[(and strings are copied as they are displayed. Unprintable objects \(such as bitmaps, etc.\) come out as)]TJ -T* -0 Tw -(an appropriate system expression, such that if is evaluated, the object is re-created.)Tj -/TT4 1 Tf -10 0 0 10 126 362.1 Tm -(Inspect Window Commands)Tj -/TT6 1 Tf -9 0 0 9 126 338.44 Tm -0.0389 Tw -(By pressing the )Tj -/TT8 1 Tf -7.1728 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0389 Tw -[( button in the title of the inspect window, a menu of commands that apply to)]TJ --10.7734 -1.2889 TD -0 Tw -(the inspect window is brought up:)Tj -ET -q -61.5 0 0 -28.5 299.26 307.29 cm -/Im2 Do -Q -BT -/TT12 1 Tf -9 0 0 9 150 259.06 Tm -(ReFetch)Tj -/F1 1 Tf -10 0 0 10 187.8 259.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 417.55 259.06 Tm -([Inspect Window Command])Tj --27.0611 -1.8444 TD -0.1611 Tw -(An inspect window is not automatically updated when the structure it is inspecting is)Tj -0 -1.2222 TD -0.0467 Tw -[(changed. The )]TJ -/TT8 1 Tf -6.5677 0 TD -0 Tw -(ReFetch)Tj -/TT6 1 Tf -4.2007 0 TD -0.0467 Tw -[( command will refetch and redisplay all of the fields of the object)]TJ --10.7684 -1.2889 TD -0 Tw -(being inspected in the inspect window.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(IT)Tj -/TT15 1 Tf -9.9 0 0 9 160.8017 197.58 Tm -<0040>Tj -/TT12 1 Tf -9 0 0 9 170.5712 197.58 Tm -(datum)Tj -/F1 1 Tf -10 0 0 10 196.68 197.58 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 417.55 197.58 Tm -([Inspect Window Command])Tj --27.0611 -1.8444 TD -(Sets the variable )Tj -/TT8 1 Tf -7.4653 0 TD -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -( to object being inspected in the inspect window.)Tj -/TT12 1 Tf --11.3322 -2.5422 TD -(IT)Tj -/TT15 1 Tf -9.9 0 0 9 160.8017 158.1 Tm -<0040>Tj -/TT12 1 Tf -9 0 0 9 170.5712 158.1 Tm -(selection)Tj -/F1 1 Tf -10 0 0 10 218.28 158.1 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 417.55 158.1 Tm -([Inspect Window Command])Tj --27.0611 -1.8444 TD -0.2567 Tw -(Sets the variable )Tj -/TT8 1 Tf -8.2353 0 TD -0 Tw -(IT)Tj -/TT6 1 Tf -1.2002 0 TD -0.2567 Tw -[( to the property name or value currently selected in the inspect)]TJ --9.4355 -1.2889 TD -0 Tw -(window.)Tj -/TT4 1 Tf -10 0 0 10 126 100.56 Tm -(Interaction With Break Windows)Tj -/TT6 1 Tf -9 0 0 9 126 76.9 Tm -0.0556 Tw -(The break window facility \(see Chapter 14\) knows about the inspector in the sense that the backtrace)Tj -0 -1.2222 TD -0.0044 Tw -(frame window is an inspect window onto the frame selected from the back trace menu during a break.)Tj -T* -0.1055 Tw -(Thus you can call the inspector on an object that is bound on the stack by selecting its frame in the)Tj -T* -0.2211 Tw -(back trace menu, selecting its value with the )Tj -/TT8 1 Tf -21.5345 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2211 Tw -[( button in the back trace frame window, and)]TJ -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT15 23 0 R ->> -/XObject << -/Im1 24 0 R -/Im2 25 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -27 0 obj -<< -/Length 6045 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-5)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0611 Tw -(selecting the inspect command with the )Tj -/TT8 1 Tf -18.1416 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( button in the back trace frame window. The values)]TJ --21.7422 -1.2889 TD -0.1156 Tw -(of variables in frames can be set by selecting the variable name with the )Tj -/TT8 1 Tf -33.4757 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1156 Tw -[( button and then the)]TJ --35.8761 -1.2889 TD -0 Tw -("Set" command with the )Tj -/TT8 1 Tf -10.9409 0 TD -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -( button.)Tj --9.2082 -2.0667 TD -0.2311 Tw -[(Note: The inspector will only allow the setting of named variables. Even with this)]TJ -4 -1.2222 TD -0.01 Tw -(restriction it is still possible to crash the system by setting variables inside system)Tj -T* -0 Tw -(frames. Exercise caution in setting variables in other than your own code.)Tj -/TT4 1 Tf -10 0 0 10 78 476.4 Tm -(Controlling the Amount Displayed During Inspection)Tj -/TT6 1 Tf -9 0 0 9 78 452.74 Tm -0.3256 Tw -(The amount of information displayed during inspection can be controlled using the following)Tj -T* -0 Tw -(variables:)Tj -/TT12 1 Tf -2.6667 -2.4756 TD -(MAXINSPECTCDRLEVEL)Tj -/F1 1 Tf -10 0 0 10 199.2 419.46 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 419.46 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0122 Tw -(The inspector prints only the first )Tj -/TT8 1 Tf -15.0855 0 TD -0 Tw -(MAXINSPECTCDRLEVEL)Tj -/TT6 1 Tf -10.8018 0 TD -0.0122 Tw -[( elements of a long list, and will)]TJ --25.8873 -1.2889 TD -0.2422 Tw -[(make the tail containing the unprinted elements the last item. The last item can be)]TJ -0 -1.2222 TD -0 Tw -(inspected to see further elements. Initially 50.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(MAXINSPECTARRAYLEVEL)Tj -/F1 1 Tf -10 0 0 10 210 357.98 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 357.98 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1089 Tw -(The inspector prints only the first )Tj -/TT8 1 Tf -15.6655 0 TD -0 Tw -(MAXINSPECTARRAYLEVEL)Tj -/TT6 1 Tf -12.002 0 TD -0.1089 Tw -[( elements of an array. The)]TJ --27.6675 -1.2889 TD -0.1133 Tw -(remaining elements can be inspected by calling the function )Tj -/TT8 1 Tf -27.7256 0 TD -0.2722 Tw -(\(INSPECT/ARRAY ARRAY)Tj --27.7256 -1.2889 TD -0 Tw -(BEGINOFFSET\))Tj -/TT6 1 Tf -7.2012 0 TD -0.4233 Tw -[( which inspects the )]TJ -/TT8 1 Tf -10.3843 0 TD -0 Tw -(BEGINOFFSET)Tj -/TT6 1 Tf -6.6011 0 TD -0.4233 Tw -[( through the )]TJ -/TT8 1 Tf -6.9975 0 TD -1.0167 Tw -(BEGINOFFSET +)Tj --31.184 -1.2889 TD -0 Tw -(MAXINSPECTARRAYLEVEL)Tj -/TT6 1 Tf -12.002 0 TD -( elements of )Tj -/TT8 1 Tf -5.5718 0 TD -(ARRAY)Tj -/TT6 1 Tf -3.0005 0 TD -(. Initially 300.)Tj -/TT12 1 Tf --23.2409 -2.5422 TD -(INSPECTPRINTLEVEL)Tj -/F1 1 Tf -10 0 0 10 193.8149 283.7 Tm --0.0015 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 283.7 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.05 Tw -(When printing the values, the inspector resets )Tj -/TT8 1 Tf -20.8686 0 TD -0 Tw -(PRINTLEVEL)Tj -/TT6 1 Tf -6.001 0 TD -0.05 Tw -[( \(see Chapter 25\) to the value)]TJ --26.8695 -1.2889 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1289 0 TD -(INSPECTPRINTLEVEL)Tj -/TT6 1 Tf -10.2017 0 TD -(. Initially \(2 . 5\).)Tj -/TT12 1 Tf --13.9972 -2.5422 TD -(INSPECTALLFIELDSFLG)Tj -/F1 1 Tf -10 0 0 10 204.6 232.62 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 232.62 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT8 1 Tf -1.0588 0 TD -(INSPECTALLFIELDSFLG)Tj -/TT6 1 Tf -11.4019 0 TD -0.1389 Tw -[( is )]TJ -/TT8 1 Tf -1.4926 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1389 Tw -(, the inspector will show computed fields \()Tj -/TT8 1 Tf -19.7945 0 TD -0 Tw -(ACCESSFNS)Tj -/TT6 1 Tf -5.4009 0 TD -(,)Tj --39.7488 -1.2889 TD -(Chapter 8\) as well as regular fields for structures that have a record definition. Initially )Tj -/TT8 1 Tf -38.7861 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 174.48 Tm -(Inspect Macros)Tj -/TT6 1 Tf -9 0 0 9 78 150.82 Tm -0.1067 Tw -(The Inspector can be extended to inspect new structures and datatypes by adding entries to the list)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(INSPECTMACROS)Tj -/TT6 1 Tf -7.8013 0 TD -0.03 Tw -[(. An entry should be of the form )]TJ -/TT8 1 Tf -14.98 0 TD -0.0722 Tw -(\(OBJECTTYPE . INSPECTINFO\))Tj -/TT6 1 Tf -15.747 0 TD -0.03 Tw -(. )Tj -/TT8 1 Tf -0.81 0 TD -0 Tw -(OBJECTTYPE)Tj -/TT6 1 Tf --39.3382 -1.2889 TD -0.1689 Tw -[(is used to determine the types of objects that are inspected with this macro. If )]TJ -/TT8 1 Tf -37.2779 0 TD -0 Tw -(OBJECTTYPE)Tj -/TT6 1 Tf -6.001 0 TD -0.1689 Tw -[( is a)]TJ --43.2789 -1.2889 TD -0.2667 Tw -(litatom, the )Tj -/TT8 1 Tf -5.8336 0 TD -0 Tw -(INSPECTINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.2667 Tw -[( will be used to inspect items whose type name is )]TJ -/TT8 1 Tf -24.947 0 TD -0 Tw -(OBJECTTYPE)Tj -/TT6 1 Tf -6.001 0 TD -0.2667 Tw -[(. If)]TJ -/TT8 1 Tf --43.3827 -1.2889 TD -0 Tw -(OBJECTTYPE)Tj -/TT6 1 Tf -6.001 0 TD -0.1833 Tw -[( is a list of the form )]TJ -/TT8 1 Tf -10.0031 0 TD -0.44 Tw -(\(FUNCTION DATUM-PREDICATE\))Tj -/TT6 1 Tf -16.0425 0 TD -0 Tw -(, )Tj -/TT8 1 Tf -0.6833 0 TD -(DATUM-PREDICATE)Tj -/TT6 1 Tf -9.0015 0 TD -0.1833 Tw -[( will be)]TJ -/TT8 1 Tf --41.7314 -1.2889 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -(ed to the item and if it returns non-)Tj -/TT8 1 Tf -15.5093 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the )Tj -/TT8 1 Tf -2.1372 0 TD -(INSPECTINFO)Tj -/TT6 1 Tf -6.6011 0 TD -( will be used to inspect the item.)Tj -/TT8 1 Tf --29.0483 -2.9556 TD -(INSPECTINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0078 Tw -[( can be one of two forms. If )]TJ -/TT8 1 Tf -12.5705 0 TD -0 Tw -(INSPECTINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0078 Tw -[( is a litatom, it should be a function that will)]TJ --25.7726 -1.2889 TD -0.2322 Tw -(be applied to three arguments \(the item being inspected, )Tj -/TT8 1 Tf -27.2751 0 TD -0 Tw -(OBJECTTYPE)Tj -/TT6 1 Tf -6.001 0 TD -0.2322 Tw -(, and the value of )Tj -/TT8 1 Tf -9.0581 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf --42.3341 -1.2889 TD -0.0056 Tw -(passed to )Tj -/TT8 1 Tf -4.4218 0 TD -0 Tw -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0056 Tw -[(\) that should do the inspection. If )]TJ -/TT8 1 Tf -15.1983 0 TD -0 Tw -(INSPECTINFO)Tj -/TT6 1 Tf -6.6011 0 TD -0.0056 Tw -[( is not a litatom, it should be a list)]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -30 0 obj -<< -/Length 7716 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-6)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -(of )Tj -/TT8 1 Tf -1.2522 0 TD -0.2967 Tw -(\(PROPERTIES FETCHFN STOREFN PROPCOMMANDFN VALUECOMMANDFN TITLECOMMANDFN)Tj --1.2522 -1.2889 TD -0.0722 Tw -(TITLE SELECTIONFN WHERE PROPPRINTFN\))Tj -/TT6 1 Tf -21.8202 0 TD -0.03 Tw -[( where the elements of this list are the arguments for)]TJ -/TT8 1 Tf --21.8202 -1.2889 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(CREATE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2244 Tw -[(, described below. From this list, the )]TJ -/TT8 1 Tf -18.2575 0 TD -0 Tw -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.2244 Tw -[( argument will be evaluated; the)]TJ --29.9093 -1.2889 TD -0 Tw -(others will not. If )Tj -/TT8 1 Tf -8.083 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, the value of )Tj -/TT8 1 Tf -5.9541 0 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -( that was passed to )Tj -/TT8 1 Tf -8.6528 0 TD -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -( will be used.)Tj --35.9067 -2.9556 TD -(Examples:)Tj -0 -2.8889 TD -0.0456 Tw -(The entry )Tj -/TT8 1 Tf -4.6033 0 TD -0.1078 Tw -(\(\(FUNCTION MYATOMP\) PROPNAMES GETPROP PUTPROP\))Tj -/TT6 1 Tf -28.0356 0 TD -0.0456 Tw -[( on )]TJ -/TT8 1 Tf -1.719 0 TD -0 Tw -(INSPECTMACROS)Tj -/TT6 1 Tf -7.8013 0 TD -0.0456 Tw -[( would)]TJ --42.1592 -1.2889 TD -0.1133 Tw -(cause all objects satisfying the predicate )Tj -/TT8 1 Tf -18.514 0 TD -0 Tw -(MYATOMP)Tj -/TT6 1 Tf -4.2007 0 TD -0.1133 Tw -[( to have their properties inspected with )]TJ -/TT8 1 Tf -18.4218 0 TD -0 Tw -(GETPROP)Tj -/TT6 1 Tf --41.1364 -1.2889 TD -(and )Tj -/TT8 1 Tf -1.9429 0 TD -(PUTPROP)Tj -/TT6 1 Tf -4.2007 0 TD -(. In this example, )Tj -/TT8 1 Tf -8.041 0 TD -(MYATOMP)Tj -/TT6 1 Tf -4.2007 0 TD -( should make sure the object is a litatom.)Tj --18.3853 -2.9556 TD -0.0478 Tw -(The entry )Tj -/TT8 1 Tf -4.6078 0 TD -0.1156 Tw -(\(MYDATATYPE . MYINSPECTFN\))Tj -/TT6 1 Tf -15.8337 0 TD -0.0478 Tw -[( on )]TJ -/TT8 1 Tf -1.7235 0 TD -0 Tw -(INSPECTMACROS)Tj -/TT6 1 Tf -7.8013 0 TD -0.0478 Tw -[( would cause all datatypes of type)]TJ -/TT8 1 Tf --29.9662 -1.2889 TD -0 Tw -(MYDATATYPE)Tj -/TT6 1 Tf -6.001 0 TD -( to be passed to the function )Tj -/TT8 1 Tf -12.6592 0 TD -(MYINSPECTFN)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 390.8 Tm -(INSPECTWs)Tj -/TT6 1 Tf -9 0 0 9 126 367.14 Tm -0.1178 Tw -(The inspector is built on the abstraction of an )Tj -/TT8 1 Tf -21.2143 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1178 Tw -[(. An )]TJ -/TT8 1 Tf -2.7132 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1178 Tw -[( is a window with certain)]TJ --33.5291 -1.2889 TD -0.3178 Tw -(window properties that display an object and respond to selections of the objects parts. It is)Tj -0 -1.2222 TD -0.0267 Tw -[(characterized by an object and its list of properties. An )]TJ -/TT8 1 Tf -24.8544 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.0267 Tw -[( displays the object in two columns)]TJ --29.6552 -1.2889 TD -0.1067 Tw -[(with the property names on the left and the values of those properties on the right. An )]TJ -/TT8 1 Tf -40.5421 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf --40.5421 -1.2889 TD -0.2522 Tw -(supports the protocol that the )Tj -/TT8 1 Tf -14.6346 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2522 Tw -[( mouse button can be used to select any property name or)]TJ --17.035 -1.2889 TD -0.27 Tw -(property value and the )Tj -/TT8 1 Tf -11.4975 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.27 Tw -[( button calls a user provided function on the selected value or)]TJ --15.0981 -1.2889 TD -0.2011 Tw -[(property. For the Inspector application, this function puts up a menu of the alternative ways of)]TJ -0 -1.2222 TD -0.1633 Tw -(inspecting values or of the ways of setting properties. )Tj -/TT8 1 Tf -25.7427 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1633 Tw -(s are created with the following)Tj --30.5435 -1.2889 TD -0 Tw -(function:)Tj -/TT8 1 Tf -2.6667 -2.2667 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(INSPECTW.CREATE)Tj -/TT8 1 Tf -8.9999 0 TD -( )Tj -/TT14 1 Tf -1.5734 0 TD -0.9733 Tw -(DATUM PROPERTIES FETCHFN STOREFN PROPCOMMANDFN)Tj --10.5068 -1.2089 TD -(VALUECOMMANDFN TITLECOMMANDFN TITLE SELECTIONFN WHERE PROPPRINTFN)Tj -/TT8 1 Tf -39 0 TD -0 Tw -(\))Tj -/F1 1 Tf -10 0 0 10 512.4008 244.26 Tm -0.451 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 156 234.66 Tm -0 Tc -([Function])Tj -2 -1.7778 TD -0.05 Tw -(Creates an )Tj -/TT8 1 Tf -4.994 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.05 Tw -[( that views the object )]TJ -/TT14 1 Tf -9.7964 0 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -0.05 Tw -[(. If )]TJ -/TT14 1 Tf -1.8199 0 TD -0 Tw -(PROPERTIES)Tj -/TT6 1 Tf -6.001 0 TD -0.05 Tw -[( is a list, it is taken as)]TJ --30.4126 -1.2889 TD -0.1033 Tw -(the list of properties of )Tj -/TT14 1 Tf -10.7808 0 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -0.1033 Tw -[( to display. If )]TJ -/TT14 1 Tf -6.8326 0 TD -0 Tw -(PROPERTIES)Tj -/TT6 1 Tf -6.001 0 TD -0.1033 Tw -[( is a litatom, it is )]TJ -/TT8 1 Tf -8.08 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.1033 Tw -(ed to)Tj -/TT14 1 Tf --37.6953 -1.2889 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -( and the result is used as the list of properties to display.)Tj -/TT14 1 Tf --3.0005 -2.0667 TD -(FETCHFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.0867 Tw -[( is a function of two arguments )]TJ -/TT8 1 Tf -14.6116 0 TD -0.2078 Tw -(\(OBJECT PROPERTY\) )Tj -/TT6 1 Tf -11.2173 0 TD -0.0867 Tw -(that should return the)Tj --30.0295 -1.2889 TD -0.1122 Tw -(value of the )Tj -/TT8 1 Tf -5.7908 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1122 Tw -[( property of )]TJ -/TT8 1 Tf -5.865 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1122 Tw -[(. The result of this function will be printed)]TJ --20.0571 -1.2889 TD -0 Tw -(\(with )Tj -/TT8 1 Tf -2.6162 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -(\) in the )Tj -/TT8 1 Tf -3.3433 0 TD -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -( as the value.)Tj -/TT14 1 Tf --13.7607 -2.0667 TD -(STOREFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.2322 Tw -[( is a function of three arguments)]TJ -/TT8 1 Tf -15.7034 0 TD -0.5589 Tw -[( \(OBJECT PROPERTY NEWVALUE\))]TJ -/TT6 1 Tf -17.8793 0 TD -0.2322 Tw -[( that)]TJ --37.7834 -1.2889 TD -0.2367 Tw -(changes the )Tj -/TT8 1 Tf -5.9274 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2367 Tw -[( property of )]TJ -/TT8 1 Tf -6.2383 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2367 Tw -[( to )]TJ -/TT8 1 Tf -1.8454 0 TD -0 Tw -(NEWVALUE)Tj -/TT6 1 Tf -4.8008 0 TD -0.2367 Tw -[(. It is used by the default)]TJ -/TT14 1 Tf --27.2133 -1.2889 TD -0 Tw -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.1189 Tw -[( and )]TJ -/TT14 1 Tf -2.4306 0 TD -0 Tw -(VALUECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -0.1189 Tw -[( to change the value of a property and also by)]TJ --18.6333 -1.2889 TD -0.0311 Tw -(the function )Tj -/TT8 1 Tf -5.6565 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(REPLACE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0311 Tw -[( \(described below\). This can be )]TJ -/TT8 1 Tf -14.3413 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0311 Tw -[( if the user provides)]TJ --31.0495 -1.2889 TD -0.0411 Tw -(command functions which do not call )Tj -/TT8 1 Tf -17.1954 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(REPLACE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0411 Tw -[(. Each replace action will be a)]TJ --26.4469 -1.2889 TD -0 Tw -(separate event on the history list. Users are encouraged to provide )Tj -/TT8 1 Tf -29.7808 0 TD -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -(able )Tj -/TT8 1 Tf -2.0732 0 TD -(STOREFN)Tj -/TT6 1 Tf -4.2007 0 TD -(s.)Tj -/TT14 1 Tf --38.4551 -2.0667 TD -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.1722 Tw -[( is a function of three arguments )]TJ -/TT8 1 Tf -15.7656 0 TD -0.4144 Tw -(\(PROPERTY OBJECT INSPECTW\))Tj -/TT6 1 Tf --23.5669 -1.2889 TD -0.09 Tw -(which gets called when the user presses the )Tj -/TT8 1 Tf -20.2317 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.09 Tw -[( button and the selected item in the)]TJ -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -33 0 obj -<< -/Length 8349 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-7)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1833 Tw -[( is a property name. )]TJ -/TT8 1 Tf -10.4081 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1833 Tw -[( will be the name of the selected property,)]TJ -/TT8 1 Tf --20.0097 -1.2889 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf -3.6006 0 TD -0.3311 Tw -[( will be the datum being viewed, and )]TJ -/TT8 1 Tf -19.3613 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.3311 Tw -[( will be the window. If)]TJ -/TT14 1 Tf --27.7627 -1.2889 TD -0 Tw -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.0778 Tw -[( is a string, it will get printed in the )]TJ -/TT8 1 Tf -16.5478 0 TD -0 Tw -(PROMPTWINDOW)Tj -/TT6 1 Tf -7.2012 0 TD -0.0778 Tw -[( when the )]TJ -/TT8 1 Tf -4.8476 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf --36.3978 -1.2889 TD -0.2156 Tw -[(button is pressed. This provides a convenient way to notify the user about disabled)]TJ -0 -1.2222 TD -0.57 Tw -(commands on the properties. )Tj -/TT8 1 Tf -16.2743 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.57 Tw -(, the default)Tj -/TT14 1 Tf --33.5771 -1.2889 TD -0 Tw -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -0.0022 Tw -(, will present a menu with the single command )Tj -/TT8 1 Tf -21.0517 0 TD -0 Tw -(Set)Tj -/TT6 1 Tf -1.8003 0 TD -0.0002 Tc -0.002 Tw -( on it. If selected, the)Tj -/TT8 1 Tf --30.6533 -1.2889 TD -0 Tc -0 Tw -(Set)Tj -/TT6 1 Tf -1.8003 0 TD -0.0011 Tw -( command will read a value from the user and set the selected property to the result of)Tj -/TT8 1 Tf --1.8003 -1.2889 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -(uating this read value.)Tj -/TT14 1 Tf --2.4004 -2.0667 TD -(VALUECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -0.3578 Tw -[( is a function of four arguments )]TJ -/TT8 1 Tf -16.6802 0 TD -0.8589 Tw -(\(VALUE PROPERTY OBJECT)Tj --25.0816 -1.2889 TD -0 Tw -(INSPECTW\))Tj -/TT6 1 Tf -5.4009 0 TD -0.13 Tw -[( that gets called when the user presses the )]TJ -/TT8 1 Tf -19.9332 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.13 Tw -[( button and the selected)]TJ --28.9347 -1.2889 TD -0.0578 Tw -(item in the )Tj -/TT8 1 Tf -5.1626 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.0578 Tw -[( is a property value. )]TJ -/TT8 1 Tf -9.6489 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0578 Tw -[( will be the selected value \(as returned)]TJ --22.6128 -1.2889 TD -0 Tw -(by )Tj -/TT14 1 Tf -1.396 0 TD -(FETCHFN)Tj -/TT6 1 Tf -4.2007 0 TD -(\), )Tj -/TT8 1 Tf -0.8697 0 TD -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.0367 Tw -[( will be the name of the property )]TJ -/TT8 1 Tf -15.0292 0 TD -0 Tw -(VALUE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( is the value of, )]TJ -/TT8 1 Tf -7.1023 0 TD -0 Tw -(OBJECT)Tj -/TT6 1 Tf --36.3991 -1.2889 TD -(will be the datum being viewed, and )Tj -/TT8 1 Tf -16.4624 0 TD -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -( will be the )Tj -/TT8 1 Tf -5.1265 0 TD -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -( window. )Tj -/TT8 1 Tf --31.1904 -2.0667 TD -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(VALUECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -0.2789 Tw -(, the default )Tj -/TT14 1 Tf -6.3669 0 TD -0 Tw -(VALUECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -0.2789 Tw -(, will present a)Tj --32.6711 -1.2889 TD -0.0411 Tw -(menu of possible ways of inspecting the value and create a new Inspect window if one of)Tj -0 -1.2222 TD -0 Tw -(the menu items is selected.)Tj -/TT14 1 Tf -0 -2 TD -(TITLECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -0.2078 Tw -[( is a function of two arguments )]TJ -/TT8 1 Tf -15.4593 0 TD -0.5 Tw -(\(INSPECTW OBJECT\))Tj -/TT6 1 Tf -10.7017 0 TD -0.2078 Tw -[( which gets)]TJ --34.5624 -1.2889 TD -0.0489 Tw -(called when the user presses the )Tj -/TT8 1 Tf -14.787 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0489 Tw -[( button and the cursor is in the title or border of)]TJ --18.3876 -1.2889 TD -0.1556 Tw -(the inspect window )Tj -/TT8 1 Tf -9.4486 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.1556 Tw -[(. This command function is provided so that users can)]TJ --14.2494 -1.2889 TD -0.22 Tw -[(implement commands that apply to the entire object. The default )]TJ -/TT14 1 Tf -31.6012 0 TD -0 Tw -(TITLECOMMANDFN)Tj -/TT8 1 Tf --31.6012 -1.2889 TD -(\(DEFAULT.INSPECTW.TITLECOMMANDFN\))Tj -/TT6 1 Tf -19.8032 0 TD -0.6078 Tw -[( presents a menu with the commands)]TJ -/TT8 1 Tf --19.8032 -1.2889 TD -0 Tw -(ReFetch)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(IT)Tj -/TT15 1 Tf -1.2002 0 TD -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -(datum, and )Tj -/TT8 1 Tf -5.3657 0 TD -(IT)Tj -/TT15 1 Tf -1.2002 0 TD -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -(election .)Tj -/TT14 1 Tf --14.4404 -2.0667 TD -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( specifies the title of the window. If )]TJ -/TT14 1 Tf -16.59 0 TD -0 Tw -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( is )]TJ -/TT8 1 Tf -1.346 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -(, the title of the window will be)Tj --25.7372 -1.2889 TD -0.1389 Tw -(the printed form of )Tj -/TT14 1 Tf -9.2636 0 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -0.1389 Tw -[( followed by the string " Inspector". If )]TJ -/TT14 1 Tf -18.2974 0 TD -0 Tw -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1389 Tw -[( is the litatom)]TJ -/TT8 1 Tf --33.5619 -1.2889 TD -0 Tw -(DONT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0633 Tw -[(, the inspect window will not have a title. If )]TJ -/TT14 1 Tf -20.349 0 TD -0 Tw -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0633 Tw -[( is any other litatom, it will be)]TJ --26.35 -1.2889 TD -0.0056 Tw -(applyed to the )Tj -/TT14 1 Tf -6.6651 0 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -0.0056 Tw -[( and the potential inspect window \(if it is known\). If this result is the)]TJ --9.6656 -1.2889 TD -0 Tw -(litatom )Tj -/TT8 1 Tf -3.462 0 TD -(DONT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0489 Tw -(, the inspect window will not have a title; otherwise the result will be used)Tj --6.4625 -1.2889 TD -0 Tw -(as a title. If )Tj -/TT14 1 Tf -5.3071 0 TD -(TITLE)Tj -/TT6 1 Tf -3.0005 0 TD -( is not a litatom, it will be used as the title. )Tj -/TT14 1 Tf --8.3076 -2.0667 TD -(SELECTIONFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.1722 Tw -[( is a function of three arguments )]TJ -/TT8 1 Tf -15.7656 0 TD -0.4144 Tw -(\(PROPERTY VALUEFLG INSPECTW\))Tj -/TT6 1 Tf --22.3667 -1.2889 TD -0.1189 Tw -(which gets called when the user releases the left button and the cursor is on one of the)Tj -0 -1.2222 TD -0.1133 Tw -[(items. The )]TJ -/TT14 1 Tf -5.4167 0 TD -0 Tw -(SELECTIONFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.1133 Tw -[( allows a program to take action on the users selection of an)]TJ --12.0177 -1.2889 TD -0.0311 Tw -[(item in the inspect window. At the time this function is called, the selected item has been)]TJ -0 -1.2222 TD -0.0778 Tw -[("selected". The function )]TJ -/TT8 1 Tf -11.2169 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(SELECTITEM)Tj -/TT6 1 Tf -6.001 0 TD -0.0778 Tw -[( \(described below\) can be used to turn)]TJ --22.2686 -1.2889 TD -0.2489 Tw -(off this selection. )Tj -/TT8 1 Tf -8.9423 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.2489 Tw -[( will be the name of the property of the selected item.)]TJ -/TT14 1 Tf --13.7431 -1.2889 TD -0 Tw -(VALUEFLG)Tj -/TT6 1 Tf -4.8008 0 TD -0.08 Tw -[( will be )]TJ -/TT8 1 Tf -3.7293 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.08 Tw -[( if the selected item is the property name; )]TJ -/TT8 1 Tf -19.1883 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.08 Tw -[( if the selected item is)]TJ --30.1187 -1.2889 TD -0 Tw -(the property value.)Tj -/TT14 1 Tf -0 -2 TD -(WHERE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1 Tw -[( indicates where the inspect window should go. Its interpretation is described in)]TJ -/TT8 1 Tf --3.0005 -1.2889 TD -0 Tw -(INSPECT)Tj -/TT6 1 Tf -4.2007 0 TD -( \(see above\).)Tj -/TT14 1 Tf --4.2007 -2.0667 TD -(PROPPRINTFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.0789 Tw -[( is a function of two arguments \()]TJ -/TT8 1 Tf -14.8901 0 TD -0.1889 Tw -(PROPERTY DATUM\))Tj -/TT6 1 Tf -9.1904 0 TD -0.0789 Tw -[( which gets called to)]TJ --30.6815 -1.2889 TD -0.4744 Tw -(determine what to print in the property place for the property )Tj -/TT8 1 Tf -32.8385 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.4744 Tw -[(. If)]TJ -/TT14 1 Tf --37.6393 -1.2889 TD -0 Tw -(PROPPRINTFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.2411 Tw -[( returns )]TJ -/TT8 1 Tf -4.1863 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2411 Tw -(, no property name will be printed and the value will be)Tj --12.5877 -1.2889 TD -0 Tw -(printed to the left of the other values. )Tj -ET -endstream -endobj -34 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT14 16 0 R -/TT15 23 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -36 0 obj -<< -/Length 7454 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-8)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 174 569.54 Tm -0.2333 Tw -(An inspect window uses the following window property names to hold information:)Tj -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(DATUM)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT14 1 Tf -1.11 0 TD -(FETCHFN)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT14 1 Tf -1.11 0 TD -(STOREFN)Tj -/TT6 1 Tf -4.2007 0 TD -(, )Tj -/TT14 1 Tf -1.11 0 TD -(PROPCOMMANDFN)Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT14 1 Tf -1.11 0 TD -(VALUECOMMANDFN)Tj -/TT6 1 Tf -8.4014 0 TD -(, )Tj -/TT14 1 Tf -1.11 0 TD -(SELECTIONFN)Tj -/TT6 1 Tf -6.6011 0 TD -(,)Tj -/TT14 1 Tf --39.7556 -1.2889 TD -(PROPPRINTFN)Tj -/TT6 1 Tf -6.6011 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(INSPECTWTITLE)Tj -/TT6 1 Tf -7.8013 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(PROPERTIES)Tj -/TT6 1 Tf -6.001 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(CURRENTITEM)Tj -/TT6 1 Tf -6.6011 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(SELECTABLEITEMS)Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 524.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 524.06 Tm -(INSPECTW.REDISPLAY)Tj -/TT8 1 Tf -10.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(INSPECTW)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -()Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 350.4158 524.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 524.06 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0789 Tw -(Updates the display of the objects being inspected in )Tj -/TT8 1 Tf -24.1831 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.0789 Tw -[(. If )]TJ -/TT14 1 Tf -1.9066 0 TD -0 Tw -(PROPS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0789 Tw -[( is a property)]TJ --33.891 -1.2889 TD -0.0522 Tw -[(name or a list of property names, only those properties are updated. If )]TJ -/TT14 1 Tf -32.238 0 TD -0 Tw -(PROPS)Tj -/TT6 1 Tf -3.0005 0 TD -0.0522 Tw -[( is )]TJ -/TT8 1 Tf -1.3193 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -(, all)Tj --38.358 -1.2889 TD -0.15 Tw -[(properties are redisplayed. This function is provided because inspect windows do not)]TJ -0 -1.2222 TD -0 Tw -(automatically update their display when the object they are showing changes. )Tj -0 -2 TD -0.2478 Tw -(This function is called by the )Tj -/TT8 1 Tf -14.4305 0 TD -0 Tw -(ReFetch)Tj -/TT6 1 Tf -4.2007 0 TD -0.2478 Tw -[( command in the title command menu of an)]TJ -/TT8 1 Tf --18.6312 -1.2889 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -( \(see above\).)Tj -/TT8 1 Tf -10 0 0 10 150 420.43 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 420.43 Tm -(INSPECTW.REPLACE)Tj -/TT8 1 Tf -9.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(INSPECTW)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(PROPERTY)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -10 0 0 10 388.2237 420.43 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 420.43 Tm -([Function])Tj --35.4033 -1.8833 TD -0.2444 Tw -(Calls the )Tj -/TT8 1 Tf -4.5909 0 TD -0 Tw -(STOREFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.2444 Tw -[( of the inspect window )]TJ -/TT14 1 Tf -11.5831 0 TD -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.2444 Tw -[( to change the property named)]TJ -/TT14 1 Tf --25.1755 -1.2889 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1133 Tw -[( to the value )]TJ -/TT14 1 Tf -6.1506 0 TD -0 Tw -(NEWVALUE)Tj -/TT6 1 Tf -4.8008 0 TD -0.1133 Tw -[( and updates the display of )]TJ -/TT14 1 Tf -12.9569 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1133 Tw -(s value in the)Tj --33.5098 -1.2889 TD -0 Tw -(display. This provides a functional interface for user )Tj -/TT8 1 Tf -23.5972 0 TD -(PROPCOMMANDFNs)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 150 357.4 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 357.4 Tm -(INSPECTW.SELECTITEM)Tj -/TT8 1 Tf -11.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(INSPECTW)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(PROPERTY)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(VALUEFLG)Tj -/TT8 1 Tf -10 0 0 10 404.4237 357.4 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 357.4 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0556 Tw -[(Sets the selected item in an inspect window. The item is inverted on the display and put)]TJ -0 -1.2222 TD -0.0022 Tw -(on the window property )Tj -/TT8 1 Tf -11.1212 0 TD -0 Tw -(CURRENTITEM)Tj -/TT6 1 Tf -6.6011 0 TD -0.0006 Tc -0.0016 Tw -( of )Tj -/TT14 1 Tf -1.3834 0 TD -0 Tc -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT14 1 Tf -1.6766 0 TD -0 Tc -0 Tw -(INSPECTW)Tj -/TT6 1 Tf -4.8008 0 TD -0.0003 Tc -0.0019 Tw -( has a )Tj -/TT8 1 Tf -2.7625 0 TD -0 Tc -0 Tw -(CURRENTITEM)Tj -/TT6 1 Tf -6.6011 0 TD -(,)Tj --39.7474 -1.2889 TD -0.0289 Tw -(it is deselected. )Tj -/TT14 1 Tf -7.3201 0 TD -0 Tw -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -0.0289 Tw -[( is the name of the property of the selected item. )]TJ -/TT14 1 Tf -22.0859 0 TD -0 Tw -(VALUEFLG)Tj -/TT6 1 Tf -4.8008 0 TD -0.0289 Tw -[( is)]TJ -/TT8 1 Tf --39.0076 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0544 Tw -[( if the selected item is the property name; )]TJ -/TT8 1 Tf -18.9583 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0544 Tw -[( if the selected item is the property value.)]TJ --21.3587 -1.2889 TD -0 Tw -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(PROPERTY)Tj -/TT6 1 Tf -4.8008 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, no item will be selected. This provides a way of deselecting all items.)Tj -/TT4 1 Tf -10 0 0 10 102 251.71 Tm -(PROMPTFORWORD)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 249 m -582.01 249 l -S -BT -/TT8 1 Tf -9 0 0 9 126 227.05 Tm -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.1289 Tw -[( is a function that reads in a sequence of characters, generally from the keyboard,)]TJ --7.8013 -1.2889 TD -0.0833 Tw -(without involving )Tj -/TT8 1 Tf -8.444 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0833 Tw -[(-like syntax. A user can supply a prompting string, as well as a "candidate")]TJ --10.8444 -1.2889 TD -0.0756 Tw -(string, which is printed and used if the user types only a word terminator character \(or doesnt type)Tj -0 -1.2222 TD -0.1556 Tw -[(anything before a given time limit\). As soon as any characters are typed the "candidate" string is)]TJ -T* -0 Tw -(erased and the new input takes its place.)Tj -/TT8 1 Tf -0 -2.8889 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.3667 Tw -[( accepts user type-in until one of the "word terminator" characters is typed.)]TJ --7.8013 -1.2889 TD -0.19 Tw -(Normally, the word terminator characters are )Tj -/TT8 1 Tf -21.5419 0 TD -0 Tw -(EOL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.69 0 TD -(ESCAPE)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.69 0 TD -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.69 0 TD -(SPACE)Tj -/TT6 1 Tf -3.0005 0 TD -0.19 Tw -(, or )Tj -/TT8 1 Tf -2.0709 0 TD -0 Tw -(TAB)Tj -/TT6 1 Tf -1.8003 0 TD -0.19 Tw -[(. This list can be)]TJ --37.0846 -1.2889 TD -0.1011 Tw -(changed using the )Tj -/TT8 1 Tf -8.6505 0 TD -0 Tw -(TERMINCHAR)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1011 Tw -[( argument to )]TJ -/TT8 1 Tf -6.2496 0 TD -0 Tw -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.1011 Tw -(, for example if it is desirable to)Tj --30.7527 -1.2889 TD -0 Tw -(allow the user to input lines including spaces.)Tj -/TT8 1 Tf -0 -2.8889 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -( also recognizes the following special characters:)Tj -/TT12 1 Tf --3.8679 -2.0667 TD -(Control-A)Tj -0 -1.2222 TD -(BACKSPACE)Tj -1.2 -1.2889 TD -( DELETE)Tj -/TT6 1 Tf -5.5333 0 TD -0.2155 Tw -(Any of these characters deletes the last character typed and appropriately)Tj -0 -1.2889 TD -0 Tw -(erases it from the echo stream if it is a display stream.)Tj -ET -endstream -endobj -37 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -39 0 obj -<< -/Length 5916 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-9)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT12 1 Tf -9 0 0 9 113.4 569.54 Tm -(Control-Q)Tj -/TT6 1 Tf -6.7333 0 TD -(Erases all the type-in so far.)Tj -/TT12 1 Tf --6.7333 -2.0667 TD -(Control-R)Tj -/TT6 1 Tf -6.7333 0 TD -(Reprints the accumulated string.)Tj -/TT12 1 Tf --6.7333 -2.0667 TD -(Control-V)Tj -/TT6 1 Tf -6.7333 0 TD -0.0111 Tw -("Quotes" the next character: after typing Control-V, the next character typed is)Tj -0 -1.2889 TD -0.1811 Tw -(added to the accumulated string, regardless of any special meaning it has.)Tj -0 -1.2222 TD -0.0622 Tw -(Allows the user to include editing characters and word terminator characters)Tj -T* -0 Tw -(in the accumulated string.)Tj -/TT12 1 Tf --6.7333 -2 TD -(Control-W)Tj -/TT6 1 Tf -6.7333 0 TD -(Erases the last word.)Tj -/TT12 1 Tf --1.9333 -2.0667 TD -(?)Tj -/TT6 1 Tf -1.9333 0 TD -0.6967 Tw -[(Calls up a "help" facility. The action taken is defined by the)]TJ -/TT8 1 Tf -0 -1.2889 TD -0 Tw -(GENERATE?LIST.FN)Tj -/TT6 1 Tf -9.6016 0 TD -0.1111 Tw -[( argument to )]TJ -/TT8 1 Tf -6.2796 0 TD -0 Tw -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.1111 Tw -[( \(see below\). Normally,)]TJ --23.6825 -1.2889 TD -0 Tw -(this prints a list of possible candidates.)Tj -/TT8 1 Tf -10 0 0 10 102 417.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 417.89 Tm -(PROMPTFORWORD)Tj -/TT8 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.9001 0 TD -0.3 Tw -(PROMPT.STR CANDIDATE.STR GENERATE?LIST.FN ECHO.CHANNEL)Tj --8.7001 -1.2478 TD -(DONTECHOTYPEIN.FLG URGENCY.OPTION TERMINCHARS.LST KEYBD.CHANNEL)Tj -/TT8 1 Tf -10 0 0 10 448.2 406.66 Tm -0 Tw -(\))Tj -/F1 1 Tf -0.6001 0 TD -0.139 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 108 396.71 Tm -0 Tc -([Function])Tj -/TT8 1 Tf -2 -1.7778 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.0233 Tw -[( has a multiplicity of features, which are specified through a rather large)]TJ --7.8013 -1.2889 TD -0.0144 Tw -(number of input arguments, but the default settings for them \(i.e., when they arent given,)Tj -0 -1.2222 TD -0.0778 Tw -(or are given as )Tj -/TT8 1 Tf -7.023 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0778 Tw -(\) is such to minimize the number needed in the average case, and an)Tj --8.8233 -1.2889 TD -0.2211 Tw -(attempt has been made to order the more frequently non-defaulted arguments at the)Tj -0 -1.2222 TD -0.0856 Tw -[(beginning of the argument list. The default input and echo are both to the terminal; the)]TJ -T* -0 Tw -(terminal table in effect during input allows most control characters to be )Tj -/TT8 1 Tf -32.1924 0 TD -(INDICATE)Tj -/TT6 1 Tf -4.8008 0 TD -(d. )Tj -/TT8 1 Tf --36.9932 -2.0667 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.3378 Tw -[( returns )]TJ -/TT8 1 Tf -4.3797 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3378 Tw -[( if a null string is typed; this would occur when no)]TJ --13.9812 -1.2889 TD -0.0678 Tw -(candidate is given and only a terminator is typed, or when the candidate is erased and a)Tj -0 -1.2222 TD -0.5933 Tw -[(terminator is typed with no other input still un-erased. In all other cases,)]TJ -/TT8 1 Tf -T* -0 Tw -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -( returns a string. )Tj -/TT8 1 Tf --7.8013 -2.0667 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -( is controlled through the following arguments:)Tj -/TT14 1 Tf --9.8013 -1.2889 TD -(PROMPT.STR)Tj -/TT6 1 Tf -7.3333 0 TD -0.0944 Tw -(If non-)Tj -/TT8 1 Tf -3.0573 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0944 Tw -(, this is coerced to a string and used for prompting; an additional)Tj --4.8576 -1.2889 TD -0 Tw -(space is output after this string.)Tj -/TT14 1 Tf --9.1333 -1.2222 TD -(CANDIDATE.STR)Tj -/TT6 1 Tf -9.1333 0 TD -0.17 Tw -(If non-)Tj -/TT8 1 Tf -3.1329 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.17 Tw -(, this is coerced to a string and offered as initial contents of the)Tj --4.9332 -1.2889 TD -0 Tw -(input buffer.)Tj -/TT14 1 Tf --10.9333 -1.2222 TD -(GENERATE?LIST.FN)Tj -/TT6 1 Tf -10.9333 0 TD -0.0289 Tw -(If non-)Tj -/TT8 1 Tf -2.9918 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0289 Tw -(, this is either a string to be printed out for help, or a function to be)Tj --4.7921 -1.2889 TD -0.0767 Tw -(applied to )Tj -/TT14 1 Tf -4.8994 0 TD -0 Tw -(PROMPT.STR)Tj -/TT6 1 Tf -6.001 0 TD -0.0767 Tw -[( and )]TJ -/TT14 1 Tf -2.3462 0 TD -0 Tw -(CANDIDATE.STR)Tj -/TT6 1 Tf -7.8013 0 TD -0.0767 Tw -[( \(after both have been coerced)]TJ --21.0479 -1.2889 TD -0.1078 Tw -[(to strings\), and which should return a list of potential candidates. The help)]TJ -0 -1.2222 TD -0.0089 Tw -(string or list of potential candidates will then be printed on a separate line, the)Tj -T* -0 Tw -(prompt will be restarted, and any type-in will be re-echoed.)Tj -T* -0.1511 Tw -[(Note: If )]TJ -/TT14 1 Tf -4.3054 0 TD -0 Tw -(GENERATE?LIST.FN)Tj -/TT6 1 Tf -9.6016 0 TD -0.1511 Tw -[( is a function, its value list will be cached so)]TJ --13.9069 -1.2889 TD -0 Tw -(that it will be run at most once per call to )Tj -/TT8 1 Tf -18.3496 0 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj -/TT14 1 Tf --34.6842 -1.2889 TD -(ECHO.CHANNEL)Tj -/TT6 1 Tf -8.5333 0 TD -0.0456 Tw -(Coerced to an output stream; )Tj -/TT8 1 Tf -13.3567 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0456 Tw -[( defaults to T, the "terminal output stream",)]TJ --15.157 -1.2889 TD -0.1133 Tw -(normally \()Tj -/TT8 1 Tf -4.7403 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT6 1 Tf -9.6016 0 TD -0.1133 Tw -[(\). To achieve echoing to the "current output)]TJ --14.3418 -1.2889 TD -0.0822 Tw -(stream", use \()Tj -/TT8 1 Tf -6.1312 0 TD -0.1989 Tw -(GETSTREAM NIL OUTPUT)Tj -/TT6 1 Tf -12.9998 0 TD -0.0822 Tw -[(\). If echo is to a display stream, it)]TJ --19.1311 -1.2889 TD -0 Tw -(will have a flashing caret showing where the next input is to be echoed.)Tj -/TT14 1 Tf --12.1333 -1.2222 TD -(DONTECHOTYPEIN.FLG)Tj -/TT6 1 Tf -12.1333 0 TD -(If )Tj -/TT8 1 Tf -1.4399 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.52 Tw -[(, there is no echoing of the input characters. If the value of)]TJ -/TT14 1 Tf --2.04 -1.2889 TD -0 Tw -(DONTECHOTYPEIN.FLG)Tj -/TT6 1 Tf -10.8018 0 TD -0.0933 Tw -[( is a single-character atom or string, that character is)]TJ -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -42 0 obj -<< -/Length 6300 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-10)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 222 569.54 Tm -0.3067 Tw -[(echoed instead of the actual input. For example, )]TJ -/TT8 1 Tf -24.4431 0 TD -0 Tw -(LOGIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.3067 Tw -[( prompts for a)]TJ --27.4436 -1.2889 TD -0 Tw -(password with )Tj -/TT14 1 Tf -6.8677 0 TD -(DONTECHOTYPEIN.FLG)Tj -/TT6 1 Tf -10.8018 0 TD -( being ")Tj -/TT8 1 Tf -3.3325 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(".)Tj -/TT14 1 Tf --31.3354 -1.2889 TD -(URGENCY.OPTION)Tj -/TT6 1 Tf -9.7333 0 TD -(If )Tj -/TT8 1 Tf -1.0577 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.6378 0 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.1378 Tw -[( quietly wait for input, as )]TJ -/TT8 1 Tf -12.2354 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1378 Tw -[( does; if a number,)]TJ --25.9328 -1.2889 TD -0.1522 Tw -(this is the number of seconds to wait for the user to respond \(if timeout is)Tj -0 -1.2222 TD -0.1 Tw -(reached, then )Tj -/TT14 1 Tf -6.409 0 TD -0 Tw -(CANDIDATE.WORD)Tj -/TT6 1 Tf -8.4014 0 TD -0.1 Tw -[( is returned, regardless of any other type-in)]TJ --14.8104 -1.2889 TD -0.0333 Tw -(activity\); if )Tj -/TT8 1 Tf -5.073 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -(, this means to wait forever, but periodically flash the window to)Tj --5.6731 -1.2889 TD -0.2733 Tw -(alert the user; if )Tj -/TT8 1 Tf -8.2467 0 TD -0 Tw -(TTY)Tj -/TT6 1 Tf -1.8003 0 TD -0.2733 Tw -(, then )Tj -/TT8 1 Tf -3.2659 0 TD -0 Tw -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -0.2733 Tw -[( grabs the )]TJ -/TT8 1 Tf -5.3854 0 TD -0 Tw -(TTY)Tj -/TT6 1 Tf -1.8003 0 TD -0.2733 Tw -[( immediately.)]TJ --28.2998 -1.2889 TD -0 Tw -(When )Tj -/TT8 1 Tf -3.0864 0 TD -0.4633 Tw -(URGENCY.OPTION = TTY)Tj -/TT6 1 Tf -12.9286 0 TD -0.1933 Tw -(, the cursor is temporarily changed to a)Tj --16.015 -1.2889 TD -0 Tw -(different shape to indicate the urgent nature of the request.)Tj -/TT14 1 Tf --10.3333 -1.2222 TD -(TERMINCHARS.LST)Tj -/TT6 1 Tf -10.3333 0 TD -0.1778 Tw -(This is list of "word terminator" character codes; it defaults to )Tj -/TT8 1 Tf -29.2666 0 TD -0 Tw -(\(CHARCODE)Tj --29.2666 -1.2889 TD -(\(EOL ESCAPE LF SPACE TAB\)\))Tj -/TT6 1 Tf -15.6025 0 TD -(. This may also be a single character code. )Tj -/TT14 1 Tf --24.7359 -1.2889 TD -(KEYBD.CHANNEL)Tj -/TT6 1 Tf -9.1333 0 TD -0.0167 Tw -(If non-)Tj -/TT8 1 Tf -2.9796 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0167 Tw -(, this is coerced to a stream, and the input bytes are taken from that)Tj --4.7799 -1.4311 TD -0.1 Tw -(stream. )Tj -/TT8 1 Tf -3.9568 0 TD -0 Tw -(NIL)Tj -/F1 1 Tf -10 0 0 10 273.8141 430.26 Tm -0.112 Tw -[( defaults to the )]TJ -/TT6 1 Tf -9 0 0 9 350.7141 430.26 Tm -0.1 Tw -[(keyboard input stream. Note that this is not)]TJ --14.3016 -1.2889 TD -0.0833 Tw -(the same as the terminal input stream )Tj -/TT8 1 Tf -17.4745 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -(, which is a buffered keyboard input)Tj --18.0745 -1.2889 TD -0 Tw -[(stream, )-1159.8(not suitable for use with )]TJ -/TT8 1 Tf -15.651 0 TD -(PROMPTFORWORD)Tj -/TT6 1 Tf -7.8013 0 TD -(.)Tj --28.7856 -2.0667 TD -(Examples:)Tj -/TT8 1 Tf -10 0 0 10 246 370.41 Tm -(\()Tj -9 0 0 9 252.0009 370.41 Tm -(PROMPTFORWORD)Tj --0.6668 -1.2611 TD -( "What is your FOO word?" Mumble)Tj -10 0 0 10 246 347.41 Tm -( \()Tj -9 0 0 9 270.0039 347.41 Tm -(FUNCTION)Tj -10 0 0 10 313.2109 347.41 Tm -( \()Tj -9 0 0 9 325.2129 347.41 Tm -(LAMBDA)Tj -10 0 0 10 357.6181 347.41 Tm -( \(\) \(Grumble Bletch\)\)\))Tj --11.1618 -1.2 TD -( )Tj -9 0 0 9 264.0029 335.41 Tm -(PROMPTWINDOW)Tj -10 0 0 10 328.8134 335.41 Tm -( )Tj -9 0 0 9 334.8144 335.41 Tm -(NIL)Tj -10 0 0 10 351.0171 335.41 Tm -( )Tj -9 0 0 9 357.018 335.41 Tm -(30)Tj -10 0 0 10 367.8198 335.41 Tm -(\))Tj -/TT6 1 Tf -9 0 0 9 174 316.46 Tm -0.2056 Tw -(This first prompts the user for input by printing the first argument as a prompt into)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(PROMPTWINDOW)Tj -/TT6 1 Tf -7.2012 0 TD -0.0467 Tw -[(; then the proffered default answer, )]TJ -/TT8 1 Tf -16.4619 0 TD -0 Tw -(Mumble)Tj -/TT6 1 Tf -3.6006 0 TD -0.0467 Tw -(, is printed out and the caret)Tj --27.2637 -1.2889 TD -0.04 Tw -[(starts flashing just after it to indicate that the upcoming input will be echoed there. If the)]TJ -0 -1.2222 TD -0 Tw -(user fails to complete a word within 30 seconds, then the result will be the string )Tj -/TT8 1 Tf -35.7871 0 TD -(Mumble)Tj -/TT6 1 Tf -3.6006 0 TD -(. )Tj -/TT8 1 Tf --31.3877 -2 TD -(\(FRESHLINE T\))Tj -0 -1.2222 TD -(\(LIST )Tj -T* -( \(PROMPTFORWORD)Tj -T* -( \(CONCAT "{" HOST "} Login:"\))Tj -T* -( \(USERNAME NIL NIL T\)\))Tj -T* -( \(PROMPTFORWORD)Tj -T* -( " \(password\)" NIL NIL NIL *\)\))Tj -/TT6 1 Tf --8 -2.0667 TD -0.2344 Tw -(This first prompts in whatever window is currently \()Tj -/TT8 1 Tf -25.1802 0 TD -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT6 1 Tf -9.6016 0 TD -0.2344 Tw -(\), and then)Tj --34.7818 -1.2889 TD -0.0178 Tw -[(takes in a username; the second call prompts with \(password\) and takes in another word)]TJ -0 -1.2222 TD -0 Tw -(\(the password\) without proffering a candidate, echoing the typed-in characters as ")Tj -/TT8 1 Tf -36.9312 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(".)Tj -/TT4 1 Tf -10 0 0 10 102 114.72 Tm -(ASKUSER)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 112.01 m -582.01 112.01 l -S -BT -/TT8 1 Tf -9 0 0 9 126 90.06 Tm -(DWIM)Tj -/TT6 1 Tf -2.4004 0 TD -0.2222 Tw -(, the compiler, the editor, and many other system packages all use )Tj -/TT8 1 Tf -32.0505 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2222 Tw -(, an extremely)Tj --38.6515 -1.2889 TD -0.0011 Tw -(general user interaction package, for their interactions with the user at the terminal. )Tj -/TT8 1 Tf -37.412 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0001 Tc -0.001 Tw -( takes as)Tj --41.6127 -1.2889 TD -0 Tc -0.0178 Tw -(its principal argument )Tj -/TT8 1 Tf -10.1647 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0178 Tw -[( which is used to drive the interaction. )]TJ -/TT8 1 Tf -17.5868 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0178 Tw -[( specifies what the user)]TJ --34.9526 -1.2889 TD -0.0656 Tw -(can type at any given point, how )Tj -/TT8 1 Tf -15.1928 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0656 Tw -[( should respond to the various inputs, what value should)]TJ --19.3935 -1.2889 TD -0.1367 Tw -(be returned by )Tj -/TT8 1 Tf -7.1717 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1367 Tw -(, and is also used to present the user at any given point with a list of the)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -45 0 obj -<< -/Length 8012 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-11)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.2033 Tw -(possible responses. )Tj -/TT8 1 Tf -9.5724 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2033 Tw -[( also takes other arguments which permit specifying a wait time, a)]TJ --13.7731 -1.2889 TD -0.1044 Tw -(default value, a message to be printed on entry, a flag indicating whether or not typeahead is to be)Tj -0 -1.2222 TD -0.0167 Tw -[(permitted, a flag indicating whether the transaction is to be stored on the history list \(see Chapter 13\),)]TJ -T* -0 Tw -(a default set of options, and an \(optional\) input file/string.)Tj -/TT8 1 Tf -10 0 0 10 102 514.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 514.89 Tm -(ASKUSER)Tj -/TT8 1 Tf -4.1999 0 TD -( )Tj -/TT14 1 Tf -0.9434 0 TD -0.3433 Tw -(WAIT DEFAULT MESS KEYLST TYPEAHEAD LISPXPRNTFLG OPTIONSLST)Tj --5.1434 -1.2478 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -10 0 0 10 129.6035 503.66 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -0.159 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 503.66 Tm -0 Tc -([Function])Tj -/TT14 1 Tf --35.4033 -1.8833 TD -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0256 Tw -[( is either )]TJ -/TT8 1 Tf -4.0938 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0256 Tw -[( or a number \(of seconds\). )]TJ -/TT14 1 Tf -12.1691 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0256 Tw -[( is a single character or a sequence)]TJ --24.6642 -1.2889 TD -0.0433 Tw -(\(list\) of characters to be used as the default inputs for the case when )Tj -/TT14 1 Tf -30.7595 0 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -[( is not )]TJ -/TT8 1 Tf -3.0489 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0433 Tw -[( and)]TJ --38.0091 -1.2889 TD -0.17 Tw -(more than )Tj -/TT14 1 Tf -5.133 0 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.17 Tw -[( seconds elapse without any input. In this case, the character\(s\) from)]TJ -/TT14 1 Tf --7.5334 -1.2889 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0344 Tw -[( are processed exactly as though they had been typed, except that )]TJ -/TT8 1 Tf -29.5535 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0344 Tw -[( first)]TJ --37.9548 -1.2889 TD -0 Tw -(types ")Tj -/TT8 1 Tf -3.0073 0 TD -(...)Tj -/TT6 1 Tf -1.8003 0 TD -(".)Tj -/TT14 1 Tf --4.8076 -2.0667 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.03 Tw -[( is the initial message to be printed by )]TJ -/TT8 1 Tf -17.2378 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -(, if any, and can be a string, or a list.)Tj --23.8388 -1.2889 TD -0.07 Tw -(In the latter case, each element of the list is printed, separated by spaces, and terminated)Tj -0 -1.2222 TD -0.1567 Tw -(with a " )Tj -/TT8 1 Tf -4.1243 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.1567 Tw -[( ". )]TJ -/TT14 1 Tf -1.8411 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1567 Tw -[( and )]TJ -/TT14 1 Tf -2.5062 0 TD -0 Tw -(OPTIONSLST)Tj -/TT6 1 Tf -6.001 0 TD -0.1567 Tw -[( are described. )]TJ -/TT14 1 Tf -7.5373 0 TD -0 Tw -(TYPEAHEAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.1567 Tw -[( is )]TJ -/TT8 1 Tf -1.5282 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1567 Tw -[( if the user is)]TJ --33.7397 -1.2889 TD -0.1589 Tw -(permitted to typeahead a response to )Tj -/TT8 1 Tf -17.6526 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1589 Tw -(. )Tj -/TT8 1 Tf -1.0678 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1589 Tw -[( means any typeahead should be)]TJ --24.7213 -1.2889 TD -0.1567 Tw -(cleared and saved. )Tj -/TT14 1 Tf -9.3469 0 TD -0 Tw -(LISPXPRNTFLG)Tj -/TT6 1 Tf -7.2012 0 TD -0.1567 Tw -[( determines whether or not the interaction is to be)]TJ --16.5481 -1.2889 TD -0.1778 Tw -(recorded on the history list. )Tj -/TT14 1 Tf -13.7434 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1778 Tw -[( can be either )]TJ -/TT8 1 Tf -6.8215 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1778 Tw -[( \(in which case it defaults to the)]TJ --24.7656 -1.2889 TD -0 Tw -(terminal input stream, T\) or a stream.)Tj -0 -2 TD -0.0133 Tw -(All input operations take place from )Tj -/TT14 1 Tf -16.3661 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0133 Tw -[( until an unacceptable input is encountered, i.e.,)]TJ --18.7665 -1.2889 TD -0.0644 Tw -(one that does not conform to the protocol defined by )Tj -/TT14 1 Tf -24.1772 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0644 Tw -[(. At that point, )]TJ -/TT14 1 Tf -7.2568 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0644 Tw -[( is set)]TJ --37.4349 -1.2889 TD -0 Tw -(to )Tj -/TT8 1 Tf -1.1876 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT14 1 Tf -0.5656 0 TD -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0656 Tw -[( is set to )]TJ -/TT8 1 Tf -4.0781 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0656 Tw -[(, the input buffer is cleared, and a bell is rung. Unacceptable)]TJ --12.4324 -1.2889 TD -0 Tw -(inputs are not echoed.)Tj -0 -2 TD -0.0689 Tw -(The value of )Tj -/TT8 1 Tf -5.9474 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0689 Tw -[( is the result of packing all the keys that were matched, unless the)]TJ -/TT14 1 Tf --10.1481 -1.2889 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -( option is specified \(see the Options section below\).)Tj -/TT8 1 Tf -10 0 0 10 102 247.43 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 247.43 Tm -(MAKEKEYLST)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(LST DEFAULTKEY LCASEFLG AUTOCOMPLETEFLG)Tj -/TT8 1 Tf -10 0 0 10 378.0352 247.43 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 247.43 Tm -([Function])Tj -/TT14 1 Tf --35.4033 -1.8833 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.1078 Tw -[( is a list of atoms or strings. )]TJ -/TT8 1 Tf -13.5135 0 TD -0 Tw -(MAKEKEYLST)Tj -/TT6 1 Tf -6.001 0 TD -0.1078 Tw -[( returns an )]TJ -/TT8 1 Tf -5.3595 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -0.3578 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( which will)]TJ --34.8332 -1.2889 TD -0.0556 Tw -(permit the user to specify one of the elements on )Tj -/TT14 1 Tf -22.2626 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -[( by either typing enough characters)]TJ --24.0629 -1.2889 TD -0.0811 Tw -(to make the choice unambiguous, or else typing a number between 1 and N, where N is)Tj -0 -1.2222 TD -0 Tw -(the length of )Tj -/TT14 1 Tf -5.8325 0 TD -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --7.6328 -2.0667 TD -0.3211 Tw -(For example, if )Tj -/TT8 1 Tf -7.8335 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.3211 Tw -[( is called with )]TJ -/TT8 1 Tf -7.6482 0 TD -0.7711 Tw -(KEYLST = \(MAKEKEYLST \(CONNECT)Tj --19.6824 -1.2889 TD -0.0633 Tw -(SUPPORT COMPILE\)\))Tj -/TT6 1 Tf -10.265 0 TD -0.0267 Tw -(, then the user can type )Tj -/TT8 1 Tf -10.6556 0 TD -0 Tw -(C-O-N)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(S)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(C-O-M)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(1)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5267 0 TD -(2)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -(, or )Tj -/TT8 1 Tf -1.7443 0 TD -0 Tw -(3)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[( to indicate one)]TJ --33.1729 -1.2889 TD -0 Tw -(of the three choices.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.0466 0 TD -(LCASEFLG )Tj -/TT8 1 Tf -5.7042 0 TD -0.3033 Tw -(= T)Tj -/TT6 1 Tf -2.1036 0 TD -0.1267 Tw -(, then echoing of upper case elements will be in lower case \(but the)Tj --8.8544 -1.2889 TD -0.0278 Tw -(value returned will still be one of the elements of )Tj -/TT8 1 Tf -22.143 0 TD -0 Tw -(LST)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(\). If )Tj -/TT14 1 Tf -1.8085 0 TD -0 Tw -(DEFAULTKEY)Tj -/TT6 1 Tf -6.001 0 TD -0.0278 Tw -[( is non-)]TJ -/TT8 1 Tf -3.3134 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -(, it will)Tj --36.8664 -1.2889 TD -0.0411 Tw -(be the last key on the )Tj -/TT8 1 Tf -9.8136 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0411 Tw -[(. Otherwise, a key which permits the user to indicate "No -)]TJ --13.4141 -1.2889 TD -0 Tw -(none of the above" choices, in which case the value returned by )Tj -/TT8 1 Tf -28.186 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( will be )Tj -/TT8 1 Tf -3.4893 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT14 1 Tf --37.6763 -2.0667 TD -(AUTOCOMPLETEFLG)Tj -/TT6 1 Tf -9.0015 0 TD -0.0002 Tc -0.0042 Tw -( is used as the value of the )Tj -/TT14 1 Tf -11.8822 0 TD -0 Tc -0 Tw -(AUTOCOMPLETEFLG)Tj -/TT6 1 Tf -9.0015 0 TD -0.0002 Tc -0.0042 Tw -( option of the resulting)Tj --29.8852 -1.2889 TD -0 Tc -0 Tw -(key list.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -50 0 obj -<< -/Length 7495 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-12)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Format of KEYLST)Tj -/TT8 1 Tf -9 0 0 9 126 544.54 Tm -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -[( is a list of elements of the form )]TJ -/TT8 1 Tf -14.3715 0 TD -0.0867 Tw -(\(KEY PROMPTSTRING . OPTIONS\))Tj -/TT6 1 Tf -17.0627 0 TD -0.0367 Tw -(, where )Tj -/TT8 1 Tf -3.5924 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.0367 Tw -[( is an atom)]TJ --40.4275 -1.2889 TD -0.1867 Tw -(or a string \(equivalent\), )Tj -/TT8 1 Tf -11.3541 0 TD -0 Tw -(PROMPTSTRING)Tj -/TT6 1 Tf -7.2012 0 TD -0.1867 Tw -[( is an atom or a string, and )]TJ -/TT8 1 Tf -13.5031 0 TD -0 Tw -(OPTIONS)Tj -/TT6 1 Tf -4.2007 0 TD -0.1867 Tw -[( a list of options in)]TJ --36.259 -1.2889 TD -0.0133 Tw -[(property list format. The options are explained below. If an option is specified in )]TJ -/TT8 1 Tf -36.5293 0 TD -0 Tw -(OPTIONS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0133 Tw -(, the value)Tj --40.7299 -1.2889 TD -0.0011 Tw -(of the option is the next element. Otherwise, if the option is specified in the )Tj -/TT8 1 Tf -33.6276 0 TD -0 Tw -(OPTIONSLST)Tj -/TT6 1 Tf -6.001 0 TD -0.0001 Tc -0.001 Tw -( argument to)Tj -/TT8 1 Tf --39.6286 -1.2889 TD -0 Tc -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0622 Tw -(, its value is the next element on )Tj -/TT8 1 Tf -14.8791 0 TD -0 Tw -(OPTIONSLST)Tj -/TT6 1 Tf -6.001 0 TD -0.0622 Tw -[(. Thus, )]TJ -/TT8 1 Tf -3.6583 0 TD -0 Tw -(OPTIONSLST)Tj -/TT6 1 Tf -6.001 0 TD -0.0622 Tw -[( can be used to provide)]TJ --34.7401 -1.2889 TD -0.1611 Tw -(default options for an entire )Tj -/TT8 1 Tf -13.4227 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1611 Tw -(, rather than having to include the option at each level. If an)Tj --17.0233 -1.2889 TD -0 Tw -(option does not appear on either )Tj -/TT8 1 Tf -14.6621 0 TD -(OPTIONS)Tj -/TT6 1 Tf -4.2007 0 TD -( or )Tj -/TT8 1 Tf -1.4409 0 TD -(OPTIONSLST)Tj -/TT6 1 Tf -6.001 0 TD -(, its value is )Tj -/TT8 1 Tf -5.4438 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --33.5488 -2.9556 TD -0.1978 Tw -(For convenience, an entry on )Tj -/TT8 1 Tf -14.007 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1978 Tw -[( of the form )]TJ -/TT8 1 Tf -6.214 0 TD -0.4733 Tw -(\(KEY . ATOM/STRING\))Tj -/TT6 1 Tf -12.3485 0 TD -0.1978 Tw -(, can be used as an)Tj --36.17 -1.2889 TD -0.1056 Tw -(abbreviation for )Tj -/TT8 1 Tf -7.5666 0 TD -0.2544 Tw -(\(KEY ATOM/STRING CONFIRMFLG T\))Tj -/TT6 1 Tf -18.7663 0 TD -0.1056 Tw -(, and an entry of just the form )Tj -/TT8 1 Tf -14.2175 0 TD -0 Tw -(KEY)Tj -/TT6 1 Tf -1.8003 0 TD -0.1056 Tw -(, i.e., a)Tj --42.3506 -1.2889 TD -0 Tw -(non-list, as an abbreviation for \()Tj -/TT8 1 Tf -14.0693 0 TD -(KEY NIL CONFIRMFLG T\))Tj -/TT6 1 Tf -12.6021 0 TD -(.)Tj --26.6714 -2.9556 TD -0.0256 Tw -[(As each character is read, it is matched against the currently active keys. A character matches a key if)]TJ -0 -1.2222 TD -0.1767 Tw -(it is the same character as that in the corresponding position in the key, or, if the character is an)Tj -T* -0.0889 Tw -(alphabetic character, if the characters are the same without regard for upper/lower case differences,)Tj -T* -0.0333 Tw -(i.e. ")Tj -/TT8 1 Tf -1.9244 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -(" matches ")Tj -/TT8 1 Tf -4.9466 0 TD -0 Tw -(a)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -(" and vice versa \(unless the )Tj -/TT8 1 Tf -12.4285 0 TD -0 Tw -(NOCASEFLG)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( option is )]TJ -/TT8 1 Tf -4.4569 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0333 Tw -(, see the Options section below\).)Tj --30.9576 -1.2889 TD -0.0178 Tw -(In other words, if two characters have already been input and matched, the third character is matched)Tj -0 -1.2222 TD -0.12 Tw -[(with each active key by comparing it with the third character of that key. If the character matches)]TJ -T* -0.26 Tw -(with one or more of the keys, the entries on )Tj -/TT8 1 Tf -22.0063 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.26 Tw -[( corresponding to the remaining keys are)]TJ --25.6068 -1.2889 TD -0.0156 Tw -[(discarded. If the character does not match with any of the keys, the character is not echoed, and a bell)]TJ -0 -1.2222 TD -0 Tw -(is rung instead.)Tj -0 -2.8889 TD -0.1222 Tw -(When a key is complete, )Tj -/TT8 1 Tf -11.6092 0 TD -0 Tw -(PROMPTSTRING)Tj -/TT6 1 Tf -7.2012 0 TD -0.1222 Tw -[( is printed \()]TJ -/TT8 1 Tf -5.4497 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1222 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.7521 0 TD -0 Tw -("")Tj -/TT6 1 Tf -1.2002 0 TD -0.1222 Tw -(, the empty string, i.e.,)Tj --35.0126 -1.2889 TD -0.2044 Tw -[(nothing will be printed\). Then, if the value of the )]TJ -/TT8 1 Tf -24.2928 0 TD -0 Tw -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.2044 Tw -[( option is )]TJ -/TT8 1 Tf -4.9703 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.7044 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2044 Tw -[( waits for)]TJ --40.7693 -1.2889 TD -0.3522 Tw -[(confirmation of the key by a carriage return or space. Otherwise, the key does not require)]TJ -0 -1.2222 TD -0 Tw -(confirmation.)Tj -0 -2.8889 TD -0.1889 Tw -(Then, if the value of the )Tj -/TT8 1 Tf -11.8545 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1889 Tw -[( option is not )]TJ -/TT8 1 Tf -6.8166 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1889 Tw -(, its value becomes the new )Tj -/TT8 1 Tf -13.4522 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1889 Tw -(, and the)Tj --41.1248 -1.2889 TD -0.24 Tw -[(process recurses. Otherwise, the key is a "leaf," i.e., it terminates a particular path through the)]TJ -0 -1.2222 TD -0.1511 Tw -(original, top-level )Tj -/TT8 1 Tf -8.4155 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1511 Tw -(, and )Tj -/TT8 1 Tf -2.7451 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1511 Tw -[( returns the result of packing all the keys that have been)]TJ --18.9619 -1.2889 TD -0.0133 Tw -(matched and completed along the way \(unless the )Tj -/TT8 1 Tf -22.5593 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -[( option is used to specify some other value,)]TJ --26.1599 -1.2889 TD -0 Tw -(as described below\).)Tj -0 -2.8889 TD -0.13 Tw -(For example, when )Tj -/TT8 1 Tf -9.1131 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.13 Tw -[( is called with )]TJ -/TT8 1 Tf -6.8838 0 TD -0.3122 Tw -(KEYLST = NIL)Tj -/TT6 1 Tf -7.8256 0 TD -0.13 Tw -(, the following )Tj -/TT8 1 Tf -7.0472 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.13 Tw -[( is used as the)]TJ --38.671 -1.2889 TD -0 Tw -(default:)Tj -/TT8 1 Tf -13.3333 -1.9333 TD -(\(\(Y "escr"\) \(N "ocr"\)\))Tj -/TT6 1 Tf --13.3333 -2.9556 TD -(This )Tj -/TT8 1 Tf -2.273 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1133 Tw -[( specifies that if \(as soon as\) the user types )]TJ -/TT8 1 Tf -20.043 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -[( \(or )]TJ -/TT8 1 Tf -2.0006 0 TD -0 Tw -(y)Tj -/TT6 1 Tf -0.6001 0 TD -(\), )Tj -/TT8 1 Tf -0.9463 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1133 Tw -[( echoes with )]TJ -/TT8 1 Tf -6.0768 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.1133 Tw -(, prompts)Tj --40.9413 -1.2889 TD -0.0956 Tw -(with escr, and returns )Tj -/TT8 1 Tf -10.3041 0 TD -0 Tw -(Y)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -[( as its value. Similarly, if the user types )]TJ -/TT8 1 Tf -18.6797 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5956 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0956 Tw -[( echoes the )]TJ -/TT8 1 Tf -5.3775 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -(, prompts)Tj --40.9578 -1.2889 TD -0 Tw -(with ocr, and returns )Tj -/TT8 1 Tf -9.5649 0 TD -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(. If the user types )Tj -/TT8 1 Tf -8.0942 0 TD -(?)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( prints:)Tj -/TT8 1 Tf --14.2267 -1.7778 TD -(Yes)Tj -0 -1.5556 TD -(No)Tj -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -53 0 obj -<< -/Length 6277 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-13)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0656 Tw -[(to indicate his possible responses. All other inputs are unacceptable, and )]TJ -/TT8 1 Tf -33.3262 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0656 Tw -[( will ring the bell)]TJ --37.5269 -1.2889 TD -0 Tw -(and not echo or print anything.)Tj -0 -2.8889 TD -(For a more complicated example, the following is the )Tj -/TT8 1 Tf -23.7236 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -( used for the compiler questions:)Tj -/TT8 1 Tf --13.9909 -2 TD -(\(\(ST "ore and redefine " KEYLST \("" \(F . "orget)Tj -0 -1.2222 TD -(exprs"\)\))Tj -T* -( \(S . "ame as last time"\))Tj -T* -( \(F . "File only"\))Tj -T* -( \(T . "o terminal"\))Tj -T* -( 1)Tj -T* -( 2)Tj -T* -( \(Y . "es"\))Tj -T* -( \(N . "o"\)\))Tj -/TT6 1 Tf --13.3333 -2.9556 TD -(When )Tj -/TT8 1 Tf -2.9297 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0367 Tw -[( is called with this )]TJ -/TT8 1 Tf -8.4202 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0367 Tw -(, and the user types an )Tj -/TT8 1 Tf -10.4192 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0367 Tw -(, two keys are matched: )Tj -/TT8 1 Tf -10.8533 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.0367 Tw -[( and )]TJ -/TT8 1 Tf -2.2662 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --45.0902 -1.7644 TD -0.0944 Tw -(The user can then type a )Tj -/TT8 1 Tf -11.5989 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0944 Tw -(, which matches only the )Tj -/TT8 1 Tf -11.7051 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.0944 Tw -[( key, or confirm the )]TJ -/TT8 1 Tf -9.3653 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0944 Tw -[( key by typing a)]TJ -/F1 1 Tf -10 0 0 10 461.0469 383.46 Tm -0 Tw -( )Tj -0.3823 0.3 TD -(cr)Tj -0.888 -0.3 TD -( )Tj -/TT6 1 Tf -9 0 0 9 477.58 383.46 Tm -(or)Tj --44.3978 -1.2889 TD -0.0667 Tw -[(space. If the user confirms the S key, )]TJ -/TT8 1 Tf -17.1566 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0667 Tw -[( prompts with "ame as last time", and returns S as its)]TJ --21.3573 -1.2889 TD -0.2222 Tw -[(value. \(Note that the confirming character is not included in the value.\) If the user types a )]TJ -/TT8 1 Tf -44.4708 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(,)Tj -/TT8 1 Tf --45.0709 -1.2889 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0756 Tw -[( prompts with "ore and redefine", and makes )]TJ -/TT8 1 Tf -20.7021 0 TD -0.1822 Tw -(\("" \(F . "orget exprs"\)\))Tj -/TT6 1 Tf -15.1312 0 TD -0.0756 Tw -[( be the new)]TJ -/TT8 1 Tf --40.034 -1.2889 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0422 Tw -[(, and waits for more input. The user can then type an F, or confirm the )]TJ -/TT8 1 Tf -32.2378 0 TD -0 Tw -("")Tj -/TT6 1 Tf -1.2002 0 TD -0.0422 Tw -[( \(which essentially)]TJ --37.0386 -1.2889 TD -0.05 Tw -[(starts out with all of its characters matched\). If he confirms the )]TJ -/TT8 1 Tf -28.7174 0 TD -0 Tw -("",)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.3 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.05 Tw -[( returns )]TJ -/TT8 1 Tf -3.8041 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.05 Tw -[( as its value)]TJ --40.0227 -1.2889 TD -0.1244 Tw -(the result of packing )Tj -/TT8 1 Tf -9.8122 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1244 Tw -[( and "". If he types )]TJ -/TT8 1 Tf -9.4234 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.6244 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1244 Tw -[( prompts with "orget exprs", and waits for)]TJ --25.861 -1.2889 TD -0 Tw -(confirmation again. If the user then confirms, )Tj -/TT8 1 Tf -20.2227 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( returns )Tj -/TT8 1 Tf -3.7041 0 TD -(STF)Tj -/TT6 1 Tf -1.8003 0 TD -(, the result of packing )Tj -/TT8 1 Tf -9.8145 0 TD -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -( and )Tj -/TT8 1 Tf -2.1929 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --43.7354 -2.9556 TD -0.0533 Tw -(At any point the user can type a )Tj -/TT8 1 Tf -14.7914 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0533 Tw -[( and be prompted with the possible responses. For example, if the)]TJ --15.3915 -1.2889 TD -0 Tw -(user types )Tj -/TT8 1 Tf -4.7871 0 TD -(S)Tj -/TT6 1 Tf -0.6001 0 TD -( and then )Tj -/TT8 1 Tf -4.4121 0 TD -(?)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( will type:)Tj -/TT8 1 Tf --1.7668 -2 TD -(STore and redefine Forget exprs)Tj -0 -1.2222 TD -(STore and redefine)Tj -T* -(Same as last time)Tj -/TT4 1 Tf -10 0 0 10 78 194.12 Tm -(Options)Tj -/TT8 1 Tf -9 0 0 9 129.6 185.46 Tm -(KEYLST)Tj -/TT6 1 Tf -4.9333 0 TD -0.1411 Tw -(When a key is complete, if the value of the )Tj -/TT8 1 Tf -20.3745 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1411 Tw -[( option is not )]TJ -/TT8 1 Tf -6.6255 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1411 Tw -(, this)Tj --32.4008 -1.2889 TD -0.0611 Tw -(value becomes the new )Tj -/TT8 1 Tf -10.7723 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( and the process recurses. Otherwise, the key)]TJ --14.3729 -1.2889 TD -0.3211 Tw -(terminates a path through the original, top-level )Tj -/TT8 1 Tf -23.7829 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.3211 Tw -(, and )Tj -/TT8 1 Tf -3.0851 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf --30.4686 -1.2889 TD -(returns the indicated value.)Tj -/TT8 1 Tf --7.3333 -1.2222 TD -(CONFIRMFLG)Tj -/TT6 1 Tf -7.3333 0 TD -(If )Tj -/TT8 1 Tf -0.9466 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0267 Tw -[(, the key must be confirmed with either a carriage return or a space. If the)]TJ --1.5467 -1.2889 TD -0.0756 Tw -(value of )Tj -/TT8 1 Tf -3.968 0 TD -0 Tw -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0756 Tw -[( is a list, the confirming character may be any member)]TJ --9.969 -1.2889 TD -0 Tw -(of the list.)Tj -/TT8 1 Tf --10.9333 -1.2222 TD -(PROMPTCONFIRMFLG)Tj -/TT6 1 Tf -10.9333 0 TD -(If )Tj -/TT8 1 Tf -0.9877 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0678 Tw -(, whenever confirmation is required, the user is prompted with the string)Tj --1.5878 -1.2889 TD -0 Tw -([confirm].)Tj -/TT8 1 Tf --6.7333 -1.2222 TD -(NOCASEFLG)Tj -/TT6 1 Tf -6.7333 0 TD -(If )Tj -/TT8 1 Tf -0.9355 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0156 Tw -(, says do not perform case independent matching on alphabetic characters.)Tj --1.5356 -1.2889 TD -0 Tw -(If )Tj -/TT8 1 Tf -0.9988 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0789 Tw -(, do perform case independent matching, i.e. ")Tj -/TT8 1 Tf -20.8657 0 TD -0 Tw -(A)Tj -/TT6 1 Tf -0.6001 0 TD -0.0789 Tw -(" matches with ")Tj -/TT8 1 Tf -7.3998 0 TD -0 Tw -(a)Tj -/TT6 1 Tf -0.6001 0 TD -0.0789 Tw -(" and)Tj --32.2648 -1.2889 TD -0 Tw -(vice versa.)Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -56 0 obj -<< -/Length 7162 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-14)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 177.6 569.54 Tm -(RETURN)Tj -/TT6 1 Tf -4.9333 0 TD -0.0056 Tw -(If non-)Tj -/TT8 1 Tf -2.9684 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5056 0 TD -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -[( of the value of the )]TJ -/TT8 1 Tf -8.5036 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.0056 Tw -[( option is returned as the value of)]TJ -/TT8 1 Tf --19.7788 -1.2889 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1078 Tw -[(. Note that different )]TJ -/TT8 1 Tf -9.7845 0 TD -0 Tw -(RETURN)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( options can be specified for different)]TJ --17.5858 -1.2889 TD -0.0522 Tw -[(keys. The variable )]TJ -/TT8 1 Tf -8.7221 0 TD -0 Tw -(ANSWER)Tj -/TT6 1 Tf -3.6006 0 TD -0.0522 Tw -[( is bound in )]TJ -/TT8 1 Tf -5.6918 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0522 Tw -[( to the list of keys that have)]TJ --22.2151 -1.2889 TD -0.3333 Tw -[(been matched. In other words, )]TJ -/TT8 1 Tf -15.9746 0 TD -0.8011 Tw -(RETURN \(PACK ANSWER\))Tj -/TT6 1 Tf -13.6042 0 TD -0.3333 Tw -[( would be)]TJ --29.5788 -1.2889 TD -0 Tw -(equivalent to what )Tj -/TT8 1 Tf -8.5405 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( normally does.)Tj -/TT8 1 Tf --19.4745 -1.2889 TD -(NOECHOFLG)Tj -/TT6 1 Tf -6.7333 0 TD -0.05 Tw -(If non-)Tj -/TT8 1 Tf -3.0129 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.05 Tw -(, characters that are matched \(or automatically supplied as a result)Tj --4.8132 -1.2889 TD -0.23 Tw -(of typing )Tj -/TT8 1 Tf -4.7515 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.23 Tw -[( \(escape\) or confirming\) are not echoed, nor is the confirming)]TJ --5.3516 -1.2889 TD -0.3311 Tw -[(character, if any. The value of )]TJ -/TT8 1 Tf -15.8857 0 TD -0 Tw -(NOECHOFLG)Tj -/TT6 1 Tf -5.4009 0 TD -0.3311 Tw -[( is automatically )]TJ -/TT8 1 Tf -8.5153 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3311 Tw -[( when)]TJ -/TT8 1 Tf --31.6021 -1.2889 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0767 Tw -[( is reading from a file or string. The decision about whether or not)]TJ --4.2007 -1.2889 TD -0.0078 Tw -(to echo a character that matches several keys is determined by the value of the)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(NOECHOFLG)Tj -/TT6 1 Tf -5.4009 0 TD -( option for the first key.)Tj -/TT8 1 Tf --14.5342 -1.2889 TD -(EXPLAINSTRING)Tj -/TT6 1 Tf -9.1333 0 TD -0.1611 Tw -(If the value of the )Tj -/TT8 1 Tf -8.8168 0 TD -0 Tw -(EXPLAINSTRING)Tj -/TT6 1 Tf -7.8013 0 TD -0.1611 Tw -[( option is non-)]TJ -/TT8 1 Tf -6.8832 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1611 Tw -(, its value is printed)Tj --25.3016 -1.2889 TD -0.5822 Tw -(when the user types a )Tj -/TT8 1 Tf -12.8125 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.5822 Tw -(, rather than )Tj -/TT8 1 Tf -7.4142 0 TD -1.3967 Tw -(KEY + PROMPTSTRING)Tj -/TT6 1 Tf -13.5951 0 TD -0 Tw -(.)Tj -/TT8 1 Tf --34.4218 -1.2889 TD -(EXPLAINSTRING)Tj -/TT6 1 Tf -7.8013 0 TD -0.0167 Tw -[( enables more elaborate explanations in response to a ? than)]TJ --7.8013 -1.2889 TD -0 Tw -(what the user sees when he is prompted as a result of simply completing keys.)Tj -0 -1.2222 TD -(For example: One of the entries on the )Tj -/TT8 1 Tf -17.3506 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -( used by )Tj -/TT8 1 Tf -3.9761 0 TD -(ADDTOFILES)Tj -/TT6 1 Tf -6.001 0 TD -(? is:)Tj -/TT8 1 Tf --30.2616 -1.2222 TD -(\(] "Nowherecr" NOECHOFLG T)Tj -T* -0.7244 Tw -(EXPLAINSTRING "] - nowhere, item is marked as a)Tj --0.6667 -1.2222 TD -0 Tw -(dummycr"\))Tj -/TT6 1 Tf -0 -1.2889 TD -0.2256 Tw -(When the user types )Tj -/TT8 1 Tf -10.2196 0 TD -0 Tw -(])Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.7256 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2256 Tw -[( just prints Nowherecr, i.e., the )]TJ -/TT8 1 Tf -15.2015 0 TD -0 Tw -(])Tj -/TT6 1 Tf -0.6001 0 TD -0.2256 Tw -[( is not)]TJ --31.5475 -1.2889 TD -0.0956 Tw -[(echoed. If the user types )]TJ -/TT8 1 Tf -11.8082 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0956 Tw -(, the explanation corresponding to this entry will)Tj --12.4083 -1.2889 TD -0 Tw -(be:)Tj -0.6667 -1.2222 TD -(])Tj -/TT8 1 Tf -0.333 0 TD -( )Tj -/TT6 1 Tf -0.6001 0 TD -(- nowhere, item is marked as a dummy)Tj -/TT8 1 Tf --8.3331 -1.2889 TD -(KEYSTRING)Tj -/TT6 1 Tf -6.7333 0 TD -0.1789 Tw -(If non-)Tj -/TT8 1 Tf -3.1418 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1789 Tw -(, characters that are matched are echoed as though the value of)Tj -/TT8 1 Tf --4.9421 -1.2889 TD -0 Tw -(KEYSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.2833 Tw -[( were used in place of the key. )]TJ -/TT8 1 Tf -15.8658 0 TD -0 Tw -(KEYSTRING)Tj -/TT6 1 Tf -5.4009 0 TD -0.2833 Tw -[( is also used for)]TJ --26.6676 -1.2889 TD -0.1289 Tw -(computing the value returned. The main reason for this feature is to enable)Tj -0 -1.2222 TD -0 Tw -(echoing in lowercase.)Tj -/TT8 1 Tf --6.1333 -1.2222 TD -(PROMPTON)Tj -/TT6 1 Tf -6.1333 0 TD -0.0378 Tw -(If non-)Tj -/TT8 1 Tf -3.0007 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5378 0 TD -(PROMPTSTRING)Tj -/TT6 1 Tf -7.2012 0 TD -0.0378 Tw -[( is printed only when the key is confirmed with a)]TJ --12.5399 -1.2889 TD -0 Tw -(member of the value of )Tj -/TT8 1 Tf -10.5049 0 TD -(PROMPTON)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --22.639 -1.2889 TD -(COMPLETEON)Tj -/TT6 1 Tf -7.3333 0 TD -0.0567 Tw -(When a confirming character is typed, the )Tj -/TT8 1 Tf -19.1828 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -0.0567 Tw -[( characters that are automatically)]TJ --19.7829 -1.2889 TD -0.0789 Tw -(supplied, as specified in case \(4\), are echoed only when the key is confirmed)Tj -0 -1.2222 TD -0 Tw -(with a member of the value of )Tj -/TT8 1 Tf -13.5381 0 TD -(PROMPTON)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --29.0055 -2.9556 TD -(The )Tj -/TT8 1 Tf -2.0827 0 TD -(PROMPTON)Tj -/TT6 1 Tf -4.8008 0 TD -0.1589 Tw -[( and )]TJ -/TT8 1 Tf -2.5106 0 TD -0 Tw -(COMPLETEON)Tj -/TT6 1 Tf -6.001 0 TD -0.1589 Tw -[( options enable the user to construct a )]TJ -/TT8 1 Tf -18.2213 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1589 Tw -[( which will cause)]TJ -/TT8 1 Tf --37.217 -1.2889 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0856 Tw -[( to emulate the action of the )]TJ -/TT8 1 Tf -13.1243 0 TD -0 Tw -(TENEX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0856 Tw -[( exec. The protocol followed by the )]TJ -/TT8 1 Tf -16.6483 0 TD -0 Tw -(TENEX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0855 Tw -[( exec is that)]TJ --39.9743 -1.2889 TD -0.1544 Tw -[(the user can type as many characters as he likes in specifying a command. The command can be)]TJ -0 -1.2222 TD -0.0244 Tw -(completed with a carriage return or space, in which case no further output is forthcoming, or with a )Tj -/TT8 1 Tf -44.7339 0 TD -0 Tw -($)Tj -/TT6 1 Tf --44.7339 -1.2889 TD -0.2133 Tw -(\(escape\), in which case the rest of the characters in the command are echoed, followed by some)Tj -0 -1.2222 TD -0.3222 Tw -[(prompting information. The following )]TJ -/TT8 1 Tf -19.1111 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.3222 Tw -[( would handle the )]TJ -/TT8 1 Tf -9.6058 0 TD -0 Tw -(TENEX)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.5722 0 TD -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -0.3222 Tw -[( and )]TJ -/TT8 1 Tf -2.8373 0 TD -0 Tw -(CONNECT)Tj -/TT6 1 Tf --41.1279 -1.2889 TD -(comands:)Tj -/TT8 1 Tf -13.3333 -1.9333 TD -(\(\(COPY " \(FILE LIST\) ")Tj -4 -1.2222 TD -(PROMPTON \($\))Tj -T* -(COMPLETEON \($\))Tj -T* -(CONFIRMFLG \($\)\))Tj --4 -2 TD -( \(CONNECT " \(TO DIRECTORY\) ")Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -59 0 obj -<< -/Length 5436 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-15)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 234 570.14 Tm -(PROMPTON \($\))Tj -0 -1.2222 TD -(COMPLETEON \($\))Tj -T* -(CONFIRMFLG \($\)\)\))Tj --17 -1.2889 TD -(AUTOCOMPLETEFLG)Tj -/TT6 1 Tf -10.3333 0 TD -0.2856 Tw -(If the value of the )Tj -/TT8 1 Tf -9.439 0 TD -0 Tw -(AUTOCOMPLETEFLG)Tj -/TT6 1 Tf -9.0015 0 TD -0.2856 Tw -[( option is not )]TJ -/TT8 1 Tf -7.2033 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7856 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2856 Tw -[( will)]TJ --32.4303 -1.2889 TD -0.0489 Tw -(automatically supply unambiguous characters whenever it can, i.e., )Tj -/TT8 1 Tf -30.4653 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf --30.4653 -1.2889 TD -0.0733 Tw -(acts as though )Tj -/TT8 1 Tf -6.783 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.0733 Tw -[( \(escape\) were typed after each character \(except that it does)]TJ --7.3831 -1.2889 TD -0 Tw -(not ring the bell if there are no unambiguous characters\).)Tj -/TT8 1 Tf --7.3333 -1.2222 TD -(MACROCHARS)Tj -/TT6 1 Tf -7.3333 0 TD -0.2667 Tw -(value is a list of dotted pairs of form )Tj -/TT8 1 Tf -18.6593 0 TD -0.64 Tw -(\(CHARACTER . FORM\))Tj -/TT6 1 Tf -12.0818 0 TD -0.2667 Tw -[(. When)]TJ -/TT8 1 Tf --30.741 -1.2889 TD -0 Tw -(CHARACTER)Tj -/TT6 1 Tf -5.4009 0 TD -0.0833 Tw -[( is typed, and it does not match any of the current keys, )]TJ -/TT8 1 Tf -25.8236 0 TD -0 Tw -(FORM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0833 Tw -[( is)]TJ --33.6248 -1.2889 TD -0.0878 Tw -(evaluated and nothing else happens, i.e. the matching process stays where it)Tj -0 -1.2222 TD -0.4556 Tw -[(is. For example, )]TJ -/TT8 1 Tf -9.2832 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.4556 Tw -[( could have been implemented using this option.)]TJ --9.8833 -1.2889 TD -0 Tw -(Essentially )Tj -/TT8 1 Tf -5.4038 0 TD -(MACROCHARS)Tj -/TT6 1 Tf -6.001 0 TD -0.3789 Tw -[( provides a read macro facility while inside of)]TJ -/TT8 1 Tf --11.4048 -1.2889 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.46 Tw -[( \(since )]TJ -/TT8 1 Tf -3.9727 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.46 Tw -[( does )]TJ -/TT8 1 Tf -3.4796 0 TD -0 Tw -(READC)Tj -/TT6 1 Tf -3.0005 0 TD -0.46 Tw -(s, read macros defined via the)Tj --18.8542 -1.2889 TD -0 Tw -(readtable are never invoked\).)Tj -/TT8 1 Tf --10.9333 -1.3644 TD -(EXPLAINDELIMITER)Tj -/F1 1 Tf -10 0 0 10 174 409.46 Tm -0.261 Tw -(value is what is printed to delimit explanation in )Tj -/TT6 1 Tf -9 0 0 9 426.43 409.46 Tm -0.2344 Tw -(response to )Tj -/TT8 1 Tf -5.7706 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --34.4185 -1.2889 TD -0.12 Tw -(Initially a carriage return, but can be reset, e.g. to a comma, for more linear)Tj -0 -1.2222 TD -0 Tw -(output. )Tj -/TT4 1 Tf -10 0 0 10 78 357.52 Tm -(Operation)Tj -/TT6 1 Tf -9 0 0 9 78 333.86 Tm -0.0544 Tw -(All input operations are executed with the terminal table in the variable )Tj -/TT8 1 Tf -32.5689 0 TD -0 Tw -(ASKUSERTTBL)Tj -/TT6 1 Tf -6.6011 0 TD -0.0544 Tw -(, in which the)Tj --39.1699 -1.2889 TD -0 Tw -(following is true:)Tj -5.3333 -2 TD -()Tj -/TT8 1 Tf -0 -1.2222 TD -0.1333 Tw -(\(CONTROL T\))Tj -/TT6 1 Tf -6.7344 0 TD -0.0556 Tw -[( has been executed \(see the Line-Buffering section of Chapter 30\), so)]TJ --6.7344 -1.2889 TD -0 Tw -(that )Tj -/TT8 1 Tf -1.9844 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( can interact with the user after each character is typed)Tj -/TT8 1 Tf --6.1851 -2.0667 TD -0.0078 Tw -(\(ECHOMODE NIL\))Tj -/TT6 1 Tf -8.4091 0 TD -0.0001 Tc -0.0032 Tw -( has been executed \(see the Terminal Control Functions section of)Tj --8.4091 -1.2889 TD -0 Tc -0.1156 Tw -(Chapter 30\), so that )Tj -/TT8 1 Tf -9.3416 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1156 Tw -[( can decide after it reads a character whether or not)]TJ --13.5423 -1.2889 TD -0.0944 Tw -(the character should be echoed, and with what, e.g. unacceptable inputs are never)Tj -0 -1.2222 TD -0 Tw -(echoed.)Tj --5.3333 -2.8889 TD -0.0289 Tw -(As each character is typed, it is matched against )Tj -/TT8 1 Tf -21.6555 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0289 Tw -(, and appropriate echoing and/or prompting)Tj --25.2561 -1.2889 TD -0.0633 Tw -[(is performed. If the user types an unacceptable character, )]TJ -/TT8 1 Tf -26.3633 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0633 Tw -[( simply rings the bell and allows)]TJ --30.564 -1.2889 TD -0 Tw -(him to try again.)Tj -0 -2.8889 TD -0.1089 Tw -(At any point, the user can type )Tj -/TT8 1 Tf -14.627 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.1089 Tw -[( and receive a list of acceptable responses at that point \(generated)]TJ --15.2271 -1.2889 TD -0 Tw -(from )Tj -/TT8 1 Tf -2.6867 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.28 Tw -(\), or type a Control-A, Control-Q, Control-X, or delete, which causes )Tj -/TT8 1 Tf -33.4438 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.28 Tw -[( to)]TJ --43.9318 -1.2889 TD -0 Tw -(reinitialize, and start over.)Tj -0 -2.8889 TD -0.0233 Tw -(Note that )Tj -/TT8 1 Tf -4.4632 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0233 Tw -(, Control-A, Control-Q, and Control-X will not work if they are acceptable inputs, i.e., they)Tj --5.0633 -1.2889 TD -0.0356 Tw -(match one of the keys on )Tj -/TT8 1 Tf -11.4643 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0356 Tw -[(. Delete will not work if it is an interrupt character, in which case it)]TJ --15.0649 -1.2889 TD -0 Tw -(is not seen by )Tj -/TT8 1 Tf -6.2422 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --10.4429 -2.9556 TD -(When an acceptable sequence is completed, )Tj -/TT8 1 Tf -19.5166 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( returns the indicated value.)Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -62 0 obj -<< -/Length 6806 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-16)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -3 -4.38 TD -(Completing a Key)Tj -/TT6 1 Tf -9 0 0 9 126 544.54 Tm -0.06 Tw -(The decision about when a key is complete is more complicated than simply whether or not all of its)Tj -0 -1.2222 TD -0.0289 Tw -[(characters have been matched. In the compiler questions example above, all of the characters in the )]TJ -/TT8 1 Tf -44.7338 0 TD -0 Tw -(S)Tj -/TT6 1 Tf --44.7338 -1.2889 TD -0.0378 Tw -(key are matched as soon as the )Tj -/TT8 1 Tf -14.137 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0378 Tw -[( has been typed, but until the next character is typed, )]TJ -/TT8 1 Tf -24.0572 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0378 Tw -[( does)]TJ --42.9949 -1.2889 TD -0.0311 Tw -(not know whether the )Tj -/TT8 1 Tf -10.1611 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( completes the )]TJ -/TT8 1 Tf -6.7032 0 TD -0 Tw -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0311 Tw -[( key, or is simply the first character in the )]TJ -/TT8 1 Tf -18.8355 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.0311 Tw -[( key. Therefore,)]TJ --38.1002 -1.2889 TD -0 Tw -(a key is considered to be complete when:)Tj -1.9167 -2 TD -0.0044 Tw -[(1.)-1333.3(All of its characters have been matched and it is the only key left, i.e., there are no other)]TJ -2.0833 -1.2222 TD -0 Tw -(keys for which this key is a substring.)Tj --2.0833 -2 TD -[(2.)-1333.3(All of its characters have been matched and a confirming character is typed.)]TJ -T* -0.1222 Tw -[(3.)-1333.3(All of its characters have been matched, and the value of the )]TJ -/TT8 1 Tf -30.3967 0 TD -0 Tw -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.1222 Tw -[( option is)]TJ -/TT8 1 Tf --34.3143 -1.2889 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -(, and the value of the )Tj -/TT8 1 Tf -10.2075 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1122 Tw -[( option is not )]TJ -/TT8 1 Tf -6.5099 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1122 Tw -(, and the next character matches)Tj --23.9186 -1.2889 TD -0 Tw -(one of the keys on the value of the )Tj -/TT8 1 Tf -15.3574 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -( option.)Tj --21.0413 -2.0667 TD -0.02 Tw -[(4.)-1333.3(There is only one key left and a confirming character is typed. Note that if the value of)]TJ -/TT8 1 Tf -2.0833 -1.2222 TD -0 Tw -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.09 Tw -[( is )]TJ -/TT8 1 Tf -1.3948 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.09 Tw -(, the key still has to be confirmed, regardless of whether or not it is)Tj --7.9959 -1.2889 TD -0 Tw -(complete. For example, if the first entry in the above example were instead )Tj -/TT8 1 Tf -0 -2 TD -0.2967 Tw -(\(ST "ore and redefine " CONFIRMFLG T KEYLST \("" \(F . "orget)Tj -0 -1.2222 TD -0 Tw -(exprs"\)\))Tj -/TT6 1 Tf -0 -2.0667 TD -(and the user wanted to specify the )Tj -/TT8 1 Tf -15.4502 0 TD -(STF)Tj -/TT6 1 Tf -1.8003 0 TD -( path, he would have to type )Tj -/TT8 1 Tf -12.9155 0 TD -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1338 Tw -[(, then )-838.4(confirm)]TJ --31.3662 -1.2889 TD -0.1856 Tw -(before typing )Tj -/TT8 1 Tf -6.5689 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.1856 Tw -[(, even though the )]TJ -/TT8 1 Tf -9.1153 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1856 Tw -[( completed the )]TJ -/TT8 1 Tf -7.3535 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1856 Tw -[( key by the rule in Case 1.)]TJ --26.0382 -1.2889 TD -0.0178 Tw -[(However, he would be prompted with ore and redefine as soon as he typed the )]TJ -/TT8 1 Tf -35.846 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0178 Tw -(, and)Tj --36.4461 -1.2889 TD -0 Tw -(completed the )Tj -/TT8 1 Tf -6.5469 0 TD -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -( key.)Tj --11.7471 -2.9556 TD -0.1467 Tw -(Case 2 says that confirmation can be used to complete a key in the case where it is a substring of)Tj -0 -1.2222 TD -0.1711 Tw -(another key, even where the value of )Tj -/TT8 1 Tf -17.7774 0 TD -0 Tw -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.1711 Tw -[( is )]TJ -/TT8 1 Tf -1.5571 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1711 Tw -[(. In this case, the confirming character)]TJ --27.1357 -1.2889 TD -0.2144 Tw -[(doubles as both an indicator that the key is complete, and also to confirm it, if necessary. This)]TJ -0 -1.2222 TD -0 Tw -(situation corresponds to typing )Tj -/TT8 1 Tf -14.1201 0 TD -(Scr)Tj -/TT6 1 Tf -1.8003 0 TD -( in the above example.)Tj --15.9204 -2.9556 TD -0.0111 Tw -(Case 3 says that if there were another entry whose key was )Tj -/TT8 1 Tf -26.418 0 TD -0 Tw -(STX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0111 Tw -[( in the above example, so that after the)]TJ --28.2183 -1.2889 TD -0.1378 Tw -(user typed )Tj -/TT8 1 Tf -5.2497 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1378 Tw -(, two keys, )Tj -/TT8 1 Tf -5.3845 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1378 Tw -[( and )]TJ -/TT8 1 Tf -2.4684 0 TD -0 Tw -(STX)Tj -/TT6 1 Tf -1.8003 0 TD -0.1378 Tw -(, were still active, then typing )Tj -/TT8 1 Tf -14.1235 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.1378 Tw -[( would complete the )]TJ -/TT8 1 Tf -9.8719 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.1378 Tw -[( key,)]TJ --43.0991 -1.2889 TD -0 Tw -(because )Tj -/TT8 1 Tf -3.8019 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.07 Tw -[( matches the )]TJ -/TT8 1 Tf -5.9849 0 TD -0.1689 Tw -(\(F . "orget exprs"\))Tj -/TT6 1 Tf -11.9085 0 TD -0.07 Tw -[( entry on the value of the )]TJ -/TT8 1 Tf -11.7976 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.07 Tw -[( option of the )]TJ -/TT8 1 Tf -6.4382 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf --44.1319 -1.2889 TD -(entry. In this case, ore and redefine would be printed before the )Tj -/TT8 1 Tf -28.6133 0 TD -(F)Tj -/TT6 1 Tf -0.6001 0 TD -( was echoed.)Tj --29.2134 -2.9556 TD -0.0111 Tw -(Finally, Case 4 says that the user can use confirmation to specify completion when only one key is left,)Tj -0 -1.2222 TD -0.1578 Tw -[(even when all of its characters have not been matched. For example, if the first key in the above)]TJ -T* -0.0678 Tw -(example were )Tj -/TT8 1 Tf -6.5716 0 TD -0 Tw -(STORE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0678 Tw -(, the user could type )Tj -/TT8 1 Tf -9.584 0 TD -0 Tw -(ST)Tj -/TT6 1 Tf -1.2002 0 TD -0.0678 Tw -[( and then confirm, and )]TJ -/TT8 1 Tf -10.6675 0 TD -0 Tw -(ORE)Tj -/TT6 1 Tf -1.8003 0 TD -0.0678 Tw -[( would be echoed, followed)]TJ --32.8241 -1.2889 TD -0.0667 Tw -[(by whatever prompting was specified. In this case, the confirming character also confirms the key if)]TJ -0 -1.2222 TD -0 Tw -(necessary, so that no further action is required, even when the value of )Tj -/TT8 1 Tf -31.481 0 TD -(CONFIRMFLG)Tj -/TT6 1 Tf -6.001 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --39.2969 -2.9556 TD -0.0422 Tw -(Case 4 permits the user not to have to type every character in a key when the key is the only one left.)Tj -0 -1.2222 TD -0.0411 Tw -(Even when there are several active keys, the user can type to specify the next N>0 common)Tj -T* -0.0611 Tw -[(characters among the currently active keys. The effect is exactly the same as though these characters)]TJ -ET -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -65 0 obj -<< -/Length 6559 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-17)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.0056 Tw -[(had been typed. If there are no common characters in the active keys at that point, i.e. )]TJ -/TT8 1 Tf -38.5772 0 TD -0.0144 Tw -(N = 0)Tj -/TT6 1 Tf -3.0294 0 TD -0.0056 Tw -(, the )Tj -/TT8 1 Tf -2.1483 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( is)]TJ --44.355 -1.2889 TD -0.3767 Tw -[(treated as an incorrect input, and the bell is rung. For example, if )]TJ -/TT8 1 Tf -34.3661 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.3767 Tw -[( is )]TJ -/TT8 1 Tf -1.9682 0 TD -0 Tw -(\(CLISPFLG)Tj --39.9349 -1.2889 TD -0.0967 Tw -(CLISPIFYPACKFLG CLISPIFTRANFLG\))Tj -/TT6 1 Tf -18.6997 0 TD -0.04 Tw -(, and the user types )Tj -/TT8 1 Tf -9.0672 0 TD -0 Tw -(C)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -[( followed by )]TJ -/TT8 1 Tf -5.91 0 TD -0 Tw -($,)Tj -/TT6 1 Tf -1.2002 0 TD -( )Tj -/TT8 1 Tf -0.29 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.04 Tw -[( will supply)]TJ --39.9679 -1.2889 TD -0 Tw -(the )Tj -/TT8 1 Tf -1.7205 0 TD -(L)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5833 0 TD -(I)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.5833 0 TD -(S)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -(, and )Tj -/TT8 1 Tf -2.6095 0 TD -0 Tw -(P)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -[(. The user can then type )]TJ -/TT8 1 Tf -11.6156 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.0833 Tw -[( followed by a carriage return or space to complete and)]TJ --20.1128 -1.2889 TD -0 Tw -(confirm )Tj -/TT8 1 Tf -3.8592 0 TD -(CLISPFLG)Tj -/TT6 1 Tf -4.8008 0 TD -0.1356 Tw -(, as per Case 4, or type)Tj -/TT8 1 Tf -10.7274 0 TD -0.3267 Tc -0 Tw -( I)Tj -/TT6 1 Tf -1.5269 0 TD -0 Tc -0.1356 Tw -(, followed by )Tj -/TT8 1 Tf -6.4467 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.1356 Tw -(, and )Tj -/TT8 1 Tf -2.714 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1356 Tw -[( will supply the )]TJ -/TT8 1 Tf -7.7126 0 TD -0 Tw -(F)Tj -/TT6 1 Tf -0.6001 0 TD -0.1356 Tw -(, etc.)Tj --43.1884 -1.2889 TD -0.0344 Tw -(Note that the characters supplied do not have to correspond to a terminal segment of any of the keys.)Tj -0 -1.2222 TD -0.01 Tw -(Note also that the )Tj -/TT8 1 Tf -8.1045 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.01 Tw -[( does not confirm the key, although it may complete it in the case that there is only)]TJ --8.7046 -1.2889 TD -0 Tw -(one key active.)Tj -0 -2.8889 TD -0.0778 Tw -(If the user types a confirming character when several keys are left, the next N>0 common characters)Tj -0 -1.2222 TD -0.05 Tw -(are still supplied, the same as with )Tj -/TT8 1 Tf -15.8778 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.05 Tw -[(. However, )]TJ -/TT8 1 Tf -5.5299 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.05 Tw -[( assumes the intent was to complete a key,)]TJ --26.2085 -1.2889 TD -0.1644 Tw -[(i.e., Case 4 is being invoked. Therefore, after supplying the next N characters, the bell is rung to)]TJ -0 -1.2222 TD -0.0444 Tw -[(indicate that the operation was not completed. In other words, typing a confirming character has the)]TJ -T* -0.0711 Tw -(same effect as typing an )Tj -/TT8 1 Tf -11.2037 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[( in that the next N common characters are supplied. Then, if there is only)]TJ --11.8038 -1.2889 TD -0.0644 Tw -[(one key left, the key is complete \(Case 4\) and confirmation is not required. If the key is not the only)]TJ -0 -1.2222 TD -0 Tw -(key left, the bell is rung.)Tj -/TT4 1 Tf -10 0 0 10 78 366.4 Tm -(Special Keys)Tj -/TT8 1 Tf -9 0 0 9 156.6 350.74 Tm -(&)Tj -/TT6 1 Tf -1.9333 0 TD -0.1333 Tw -(This can be used as a key to match with any single character, provided the)Tj -0 -1.2889 TD -0.0733 Tw -(character does not match with some other key at that level. For the purposes)Tj -0 -1.2222 TD -0.33 Tw -(of echoing and returning a value, the effect is the same as though the)Tj -T* -0 Tw -(character that were matched actually appeared as the key.)Tj --5.4722 -2 TD -0.0122 Tw -[()-1333.6(This can be used as a key to match with the result of a single call to )]TJ -/TT8 1 Tf -35.4749 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0122 Tw -[(. For)]TJ --32.4031 -1.2889 TD -0 Tw -(example, if the )Tj -/TT8 1 Tf -6.7603 0 TD -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -( were:)Tj -/TT8 1 Tf --3.6942 -2 TD -(\(\(COPY " \(FILE LIST\) ")Tj -4 -1.2222 TD -(PROMPTON \($\))Tj -T* -(COMPLETEON \($\))Tj -T* -(CONFIRMFLG \($\))Tj -T* -(KEYLST \(\($ NIL RETURN ANSWER\)\)\)\))Tj -/TT6 1 Tf --10.6667 -2.0667 TD -0.1433 Tw -(then if the user typed )Tj -/TT8 1 Tf -10.4213 0 TD -0 Tw -(COP)Tj -/TT6 1 Tf -1.8003 0 TD -( )Tj -/TT8 1 Tf -0.3933 0 TD -(FOOcr)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.6433 0 TD -0.3433 Tw -(\(COPY FOO\))Tj -/TT6 1 Tf -6.3443 0 TD -0.1433 Tw -[( would be returned as the)]TJ --22.603 -1.2889 TD -0.07 Tw -(value of )Tj -/TT8 1 Tf -3.9569 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.07 Tw -[(. One advantage of using )]TJ -/TT8 1 Tf -11.9713 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.07 Tw -(, rather than having the calling)Tj --20.7289 -1.2889 TD -0.1144 Tw -(program perform the )Tj -/TT8 1 Tf -9.9884 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1144 Tw -(, is that the call to )Tj -/TT8 1 Tf -8.671 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1144 Tw -[( from inside )]TJ -/TT8 1 Tf -5.9278 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1144 Tw -[( is)]TJ -/TT8 1 Tf --33.5887 -1.2889 TD -0 Tw -(ERRORSET)Tj -/TT6 1 Tf -4.8008 0 TD -0.0144 Tw -[( protected, so that the user can back out of this path and reinitialize)]TJ -/TT8 1 Tf --4.8008 -1.2889 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1944 Tw -(, e.g. to change from a )Tj -/TT8 1 Tf -11.1237 0 TD -0 Tw -(COPY)Tj -/TT6 1 Tf -2.4004 0 TD -0.1944 Tw -[( command to a )]TJ -/TT8 1 Tf -7.5981 0 TD -0 Tw -(CONNECT)Tj -/TT6 1 Tf -4.2007 0 TD -0.1944 Tw -[( command,)]TJ --29.5236 -1.2889 TD -0 Tw -(simply by typing Control-E.)Tj --7.7033 -2 TD -0.32 Tw -[(Escape )320(Escape)-1336.1(This can be used as a key to match with the result of a single call to)]TJ -/TT8 1 Tf -7.7033 -1.2222 TD -0 Tw -(READLINE)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj --8.4941 -2.0667 TD -0.1167 Tw -[(A )116.7(list)-1333.5(A list can be used as a key, in which case the list/form is evaluated and its)]TJ -3.6933 -1.2222 TD -0.22 Tw -[(value "matches" the key. This feature is provided primarily as an escape)]TJ -T* -0.4289 Tw -(hatch for including arbitrary input operations as part of an )Tj -/TT8 1 Tf -30.4598 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf --30.4598 -1.2889 TD -0.1467 Tw -[(sequence. For example, the effect of )]TJ -/TT8 1 Tf -17.2327 0 TD -0 Tw -($$)Tj -/TT6 1 Tf -1.2002 0 TD -0.1467 Tw -[( \(escape, escape\) could be achieved)]TJ --18.4329 -1.2889 TD -0 Tw -(simply by using )Tj -/TT8 1 Tf -7.3613 0 TD -(\(READLINE T\))Tj -/TT6 1 Tf -7.2012 0 TD -( as a key.)Tj -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -68 0 obj -<< -/Length 4357 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-18)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 199.2 569.54 Tm -("")Tj -/TT6 1 Tf -2.5333 0 TD -0.1211 Tw -[(The empty string can be used as a key. Since it has no characters, all of its)]TJ -0 -1.2889 TD -0.2 Tw -(characters are automatically matched. )Tj -/TT8 1 Tf -18.2446 0 TD -0 Tw -("")Tj -/TT6 1 Tf -1.2002 0 TD -0.2 Tw -[( essentially functions as a place)]TJ --19.4448 -1.2889 TD -0.5433 Tw -[(marker. For example, one of the entries on the )]TJ -/TT8 1 Tf -26.2517 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.5433 Tw -[( used by)]TJ -/TT8 1 Tf --29.8523 -1.2889 TD -0 Tw -(ADDTOFILES?)Tj -/TT6 1 Tf -6.6011 0 TD -( is:)Tj -/TT8 1 Tf --1.9344 -2 TD -(\("" "File/list: ")Tj -0 -1.2222 TD -0.5622 Tw -(EXPLAINSTRING "a file name or name of a)Tj -T* -0 Tw -(function list")Tj --7.9333 -2.0667 TD -(KEYLST \($\)\))Tj -/TT6 1 Tf -3.2667 -2.0667 TD -0.09 Tw -(Thus, if the user types a character that does not match any of the other keys)Tj -0 -1.2222 TD -0.0411 Tw -(on the )Tj -/TT8 1 Tf -3.0974 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0411 Tw -(, then the character completes the )Tj -/TT8 1 Tf -15.2779 0 TD -0 Tw -("")Tj -/TT6 1 Tf -1.2002 0 TD -0.0411 Tw -[( key, by virtue of case \(4\),)]TJ --23.1761 -1.2889 TD -0.03 Tw -(since the character will match with the )Tj -/TT8 1 Tf -17.4942 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.03 Tw -[( in the inner )]TJ -/TT8 1 Tf -5.7094 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.03 Tw -(. )Tj -/TT8 1 Tf -0.81 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -[( then)]TJ --32.4149 -1.2889 TD -0.08 Tw -[(prints File/list: before echoing the character, then calls )]TJ -/TT8 1 Tf -25.2806 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.08 Tw -[(. The character)]TJ --27.6809 -1.2889 TD -0.0533 Tw -(will be read as part of the )Tj -/TT8 1 Tf -11.8597 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0533 Tw -[(. The value returned by )]TJ -/TT8 1 Tf -11.1613 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0533 Tw -[( will be the)]TJ --29.622 -1.2889 TD -0 Tw -(value of the )Tj -/TT8 1 Tf -5.4541 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --7.8545 -2.0667 TD -0.0822 Tw -[(Note: For Escape, Escape Escape, or a list, if the last character read by)]TJ -2.6667 -1.2222 TD -0.1989 Tw -(the input operation is a separator, the character is treated as a)Tj -T* -0.0356 Tw -[(confirming character for the key. However, if the last character is)]TJ -T* -0 Tw -(a break character, it will be matched against the next key.)Tj -/TT4 1 Tf -10 0 0 10 126 319.2 Tm -(Startup Protocol and Typeahead)Tj -/TT6 1 Tf -9 0 0 9 126 295.54 Tm -0.1244 Tw -(Interlisp permits and encourages the user to typeahead; in actual practice, the user frequently does)Tj -T* -0.0156 Tw -[(this. This presents a problem for )]TJ -/TT8 1 Tf -14.8735 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0156 Tw -[(. When )]TJ -/TT8 1 Tf -3.6897 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0156 Tw -[( is entered and there has been typeahead,)]TJ --26.9646 -1.2889 TD -0.0111 Tw -(was the input intended for )Tj -/TT8 1 Tf -12.0888 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0111 Tw -(, or was the interaction unanticipated, and the user simply typing)Tj --16.2894 -1.2889 TD -0.0478 Tw -[(ahead to some other program, e.g. the programmers assistant? Even where there was no typeahead,)]TJ -0 -1.2222 TD -0.01 Tw -(i.e., the user starts typing after the call to )Tj -/TT8 1 Tf -18.2741 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.01 Tw -(, the question remains of whether the user had time)Tj --22.4748 -1.2889 TD -0.1189 Tw -(to see the message from )Tj -/TT8 1 Tf -11.3869 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1189 Tw -[( and react to it, or simply began typing ahead at an inauspicious)]TJ --15.5876 -1.2889 TD -0.04 Tw -[(moment. Thus, what is needed is an interlock mechanism which warns the user to stop typing, gives)]TJ -0 -1.2222 TD -0 Tw -(him a chance to respond to the warning, and then allows him to begin typing to )Tj -/TT8 1 Tf -35.4678 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --39.6685 -2.9556 TD -0.1367 Tw -(Therefore, when )Tj -/TT8 1 Tf -7.8012 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1367 Tw -[( is first entered, and the interaction is to take place with a terminal, and)]TJ --12.0019 -1.2889 TD -0 Tw -(typeahead to )Tj -/TT8 1 Tf -6.0063 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( is not permitted, the following protocol is observed:)Tj -ET -endstream -endobj -69 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -71 0 obj -<< -/Length 7722 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-19)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 95.25 569.54 Tm -0.0556 Tw -[(1.)-1333.3(If there is typeahead, )]TJ -/TT8 1 Tf -11.8358 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0556 Tw -[( clears and saves the input buffers and rings the bell to)]TJ --13.9532 -1.2889 TD -0.0922 Tw -[(warn the user to stop typing. The buffers will be restored when )]TJ -/TT8 1 Tf -29.6447 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0922 Tw -[( completes)]TJ --33.8454 -1.2889 TD -0 Tw -(operation and returns.)Tj --2.0833 -2 TD -[(2.)-1333.3(If )]TJ -/TT8 1 Tf -3.0044 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -(, the message to be printed on entry, is not )Tj -/TT8 1 Tf -18.9663 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( \(the typical case\), )Tj -/TT8 1 Tf -8.1642 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( then)Tj --36.4529 -1.2889 TD -(prints )Tj -/TT8 1 Tf -2.8691 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -( if it is a string, otherwise )Tj -/TT8 1 Tf -11.3862 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -( of )Tj -/TT8 1 Tf -1.3789 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -(, if )Tj -/TT8 1 Tf -1.374 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -( is a list.)Tj --28.0931 -2.0667 TD -0.0278 Tw -[(3.)-1333.3(After printing )]TJ -/TT8 1 Tf -8.5744 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0278 Tw -[( or )]TJ -/TT8 1 Tf -1.4965 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0278 Tw -[( of )]TJ -/TT8 1 Tf -1.4345 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -(, )Tj -/TT8 1 Tf -0.5278 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0278 Tw -[( waits until the output has actually been)]TJ --20.7516 -1.2889 TD -0.0456 Tw -(printed on the terminal to make sure that the user has actually had a chance to see the)Tj -0 -1.2222 TD -0.2078 Tw -[(output. This also give the user a chance to react. )]TJ -/TT8 1 Tf -24.3952 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2078 Tw -[( then checks to see if)]TJ --28.5959 -1.2889 TD -0.0778 Tw -(anything additional has been typed in the intervening period since it first warned the)Tj -0 -1.2222 TD -0.0167 Tw -(user in \(1\). If something has been typed, )Tj -/TT8 1 Tf -18.0845 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0167 Tw -[( clears it out and again rings the bell.)]TJ --22.2852 -1.2889 TD -0.1456 Tw -(This latter material, i.e., that typed between the entry to )Tj -/TT8 1 Tf -26.2554 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1456 Tw -[( and this point, is)]TJ --30.456 -1.2889 TD -0.23 Tw -(discarded and will not be restored since it is not certain whether the user simply)Tj -0 -1.2222 TD -0.1089 Tw -(reacted quickly to the first warning \(bell\) and this input is intended for )Tj -/TT8 1 Tf -32.9185 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1089 Tw -(, or)Tj --37.1192 -1.2889 TD -0.2811 Tw -(whether the user was in the process of typing ahead when the call to )Tj -/TT8 1 Tf -34.457 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf --34.457 -1.2889 TD -0.1567 Tw -(occurred, and did not stop typing at the first warning, and therefore this input is a)Tj -0 -1.2222 TD -0 Tw -(continuation of input intended for another program.)Tj -0 -2 TD -0.0578 Tw -[(Anything typed after \(3\) is considered to be intended for )]TJ -/TT8 1 Tf -26.1268 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0578 Tw -(, i.e., once the user)Tj --30.3275 -1.2889 TD -0 Tw -(sees )Tj -/TT8 1 Tf -2.1079 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0522 Tw -[( or )]TJ -/TT8 1 Tf -1.5454 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( of )]TJ -/TT8 1 Tf -1.4834 0 TD -0 Tw -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0522 Tw -[(, he is free to respond. For example, )]TJ -/TT8 1 Tf -16.99 0 TD -0 Tw -(UNDO)Tj -/TT6 1 Tf -2.4004 0 TD -0.0522 Tw -[( \(see Chapter 13\))]TJ --31.1281 -1.2889 TD -0 Tw -(calls )Tj -/TT8 1 Tf -2.2253 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0256 Tw -[( when the number of undosaves are exceeded for an event with )]TJ -/TT8 1 Tf -28.5703 0 TD -0.0622 Tw -(MESS =)Tj --34.9963 -1.2889 TD -0.08 Tw -(\(LIST NUMBER-UNDOSAVES "undosaves, continue saving"\))Tj -/TT6 1 Tf -31.5251 0 TD -0.0333 Tw -[(. Thus, the user)]TJ --31.5251 -1.2889 TD -0 Tw -(can type a response as soon as )Tj -/TT8 1 Tf -13.6133 0 TD -(NUMBER-UNDOSAVES)Tj -/TT6 1 Tf -9.6016 0 TD -( is typed.)Tj --25.2982 -2.0667 TD -(4.)Tj -/TT8 1 Tf -2.0833 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( then types the rest of )Tj -/TT8 1 Tf -9.7456 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -(, if any.)Tj --18.43 -2.0667 TD -[(5.)-1333.3(Then )]TJ -/TT8 1 Tf -4.6414 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0522 Tw -[( goes into a wait loop until something is typed. If )]TJ -/TT8 1 Tf -22.7819 0 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0522 Tw -(, the wait time,)Tj --31.9411 -1.2889 TD -0.0722 Tw -(is not )Tj -/TT8 1 Tf -2.8134 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -(, and nothing is typed in )Tj -/TT8 1 Tf -11.5027 0 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0722 Tw -[( seconds, )]TJ -/TT8 1 Tf -4.4037 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0722 Tw -[( will type ")]TJ -/TT8 1 Tf -5.0072 0 TD -0 Tw -(...)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -(" and treat)Tj --33.9286 -1.2889 TD -0.0011 Tw -(the elements of )Tj -/TT8 1 Tf -6.9623 0 TD -0 Tw -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -0.0011 Tw -(, the default value, as a list of characters, and begin processing)Tj --11.163 -1.2889 TD -0.1333 Tw -[(them exactly as though they had been typed. If the user does type anything within)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.1867 Tw -[( seconds, he can then wait as long as he likes, i.e., once something has been)]TJ --2.4004 -1.2889 TD -0 Tw -(typed, )Tj -/TT8 1 Tf -3.0732 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( will not use the default value specified in )Tj -/TT8 1 Tf -18.7109 0 TD -(DEFAULT)Tj -/TT6 1 Tf -4.2007 0 TD -(.)Tj --30.1856 -2.0667 TD -0.0989 Tw -(If the user wants to consider his response for more than )Tj -/TT8 1 Tf -25.8988 0 TD -0 Tw -(WAIT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0989 Tw -[( seconds, and does not)]TJ --28.2992 -1.2889 TD -0 Tw -(want )Tj -/TT8 1 Tf -2.5066 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0144 Tw -[( to default, he can type a carriage return or a space, which are ignored if)]TJ --6.7073 -1.2889 TD -0.0133 Tw -(they are not specified as acceptable inputs by )Tj -/TT8 1 Tf -20.3083 0 TD -0 Tw -(KEYLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.0133 Tw -[( \(see below\) and they are the first)]TJ --23.9089 -1.2889 TD -0 Tw -(thing typed.)Tj -0 -2 TD -0.0956 Tw -(If the calling program knows that the user is expecting an interaction with )Tj -/TT8 1 Tf -34.2115 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -(,)Tj --38.4121 -1.2889 TD -0.1267 Tw -(e.g., another interaction preceded this one, it can specify in the call to )Tj -/TT8 1 Tf -32.362 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.1267 Tw -[( that)]TJ --36.5627 -1.2889 TD -0.2222 Tw -[(typeahead is permitted. In this case, )]TJ -/TT8 1 Tf -17.9345 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2222 Tw -[( simply notes whether there is any)]TJ --22.1351 -1.2889 TD -0 Tw -(typeahead, then prints )Tj -/TT8 1 Tf -10.2227 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -( and goes into a wait loop as described above.)Tj --12.623 -2.0667 TD -0.0967 Tw -(If there is typeahead that contains unacceptable input, )Tj -/TT8 1 Tf -24.9384 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.0967 Tw -[( will assume that the)]TJ --29.1391 -1.2889 TD -0.2144 Tw -(typeahead was not intended for )Tj -/TT8 1 Tf -15.4033 0 TD -0 Tw -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -0.2144 Tw -(, and will restore the typeahead when it)Tj --19.604 -1.2889 TD -0 Tw -(completes operation and returns.)Tj --2.0833 -2 TD -0.0867 Tw -[(6.)-1333.3(Finally, if the interaction is not with the terminal, i.e., the optional input file/string is)]TJ -2.0833 -1.2222 TD -0 Tw -(specified, )Tj -/TT8 1 Tf -4.4526 0 TD -(ASKUSER)Tj -/TT6 1 Tf -4.2007 0 TD -( simply prints )Tj -/TT8 1 Tf -6.415 0 TD -(MESS)Tj -/TT6 1 Tf -2.4004 0 TD -( and begins reading from the file/string.)Tj -ET -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -74 0 obj -<< -/Length 5048 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-20)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(TTYIN Display Typein Editor)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -582.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1089 Tw -[( is an Interlisp function for reading input from the terminal. It features altmode completion,)]TJ --3.0005 -1.2889 TD -0.1322 Tw -(spelling correction, help facility, and fancy editing, and can also serve as a glorified free text input)Tj -0 -1.2222 TD -0.0567 Tw -[(function. This document is divided into two major sections: how to use )]TJ -/TT8 1 Tf -32.6146 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -[( from the users point)]TJ --35.6151 -1.2889 TD -0 Tw -(of view, and from the programmers.)Tj -/TT8 1 Tf -0 -2.8889 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.4156 Tw -[( exists in implementations for Interlisp-10 and Interlisp-D. The two are substantially)]TJ --3.0005 -1.2889 TD -0.0067 Tw -(compatible, but the capabilities of the two systems differ \(Interlisp-D has a more powerful display and)Tj -0 -1.2222 TD -0.1533 Tw -(allows greater access to the system primitives needed to control it effectively; it also has a mouse,)Tj -T* -0.3156 Tw -[(greatly reducing the need for keyboard-oriented editing commands\). Descriptions of both are)]TJ -T* -0 Tw -(included in this document for completeness, but Interlisp-D users may find large sections irrelevant.)Tj -/TT4 1 Tf -10 0 0 10 126 409.4 Tm -(Entering Input With TTYIN)Tj -/TT6 1 Tf -9 0 0 9 126 385.74 Tm -0.0178 Tw -(There are two major ways of using )Tj -/TT8 1 Tf -15.7089 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -[(: set )]TJ -/TT8 1 Tf -2.5501 0 TD -0 Tw -(LISPXREADFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.0178 Tw -[( to )]TJ -/TT8 1 Tf -1.4076 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -(, so the )Tj -/TT8 1 Tf -3.4103 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -[( executive uses)]TJ --38.6795 -1.2889 TD -0.0533 Tw -(it to obtain input; and call )Tj -/TT8 1 Tf -11.9797 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0533 Tw -[( from within a program to gather text input. Mostly the same rules)]TJ --14.9802 -1.2889 TD -0 Tw -(apply to both; places where it makes a difference are mentioned below.)Tj -0 -2.8889 TD -0.0856 Tw -(The following characters may be used to edit your input, independent of what kind of terminal you)Tj -0 -1.2222 TD -0.0733 Tw -[(are on. The more )]TJ -/TT8 1 Tf -8.3452 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0733 Tw -[( knows about your terminal, of course, the nicer some of these will behave.)]TJ --11.3457 -1.2889 TD -0.1311 Tw -(Some functions are performed by one of several characters; any character that you happen to have)Tj -0 -1.2222 TD -0.2111 Tw -[(assigned as an interrupt character will, of couse, not be read by )]TJ -/TT8 1 Tf -31.0926 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2111 Tw -[(. There is a \(somewhat)]TJ --34.0931 -1.2889 TD -0.6611 Tw -(inelegant\) way of changing which characters perform which functions, described under)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -( later on.)Tj -/TT12 1 Tf --5.0681 -2.0667 TD -(Control-A)Tj -0 -1 TD -(BACKSPACE)Tj -1.8 -1.2889 TD -(DELETE)Tj -/TT6 1 Tf -4.9333 0 TD -0.15 Tw -[(Deletes a character. At the start of the second or subsequent lines of)]TJ -0 -1.2889 TD -0 Tw -(your input, deletes the last character of the previous line.)Tj -/TT12 1 Tf --6.7333 -2 TD -(Control-W)Tj -/TT6 1 Tf -6.7333 0 TD -0.3167 Tw -[(Deletes a "word". Generally this means back to the last space or)]TJ -0 -1.0667 TD -0 Tw -(parenthesis.)Tj -/TT12 1 Tf --6.7333 -1.7778 TD -(Control-Q)Tj -/TT6 1 Tf -6.7333 0 TD -0.2911 Tw -(Deletes the current line, or if the current line is blank, deletes the)Tj -0 -1.0667 TD -0 Tw -(previous line.)Tj -/TT12 1 Tf --6.7333 -1.7778 TD -(Control-R)Tj -/TT6 1 Tf -6.7333 0 TD -0.19 Tw -[(Refreshes the current line. Two in a row refreshes the whole buffer)]TJ -0 -1.0667 TD -0 Tw -(\(when doing multi-line input\).)Tj -/TT12 1 Tf --4.9333 -1.7778 TD -(ESCAPE)Tj -/TT6 1 Tf -4.9333 0 TD -0.16 Tw -(Tries to complete the current word from the spelling list provided to)Tj -/TT8 1 Tf -0 -1.0667 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0478 Tw -[(, if any. In the case of ambiguity, completes as far as is uniquely)]TJ --3.0005 -1.0667 TD -0.0433 Tw -[(determined, or rings the bell. For )]TJ -/TT8 1 Tf -15.3766 0 TD -0 Tw -(LISPX)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( input, the spelling list may be)]TJ -/TT8 1 Tf --18.3771 -1.0667 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -( \(see discussion of )Tj -/TT8 1 Tf -8.2329 0 TD -(TTYINCOMPLETEFLG)Tj -/TT6 1 Tf -9.6016 0 TD -(.)Tj --23.2354 -1.8444 TD -0.0689 Tw -[(Interlisp-10 only: If no spelling list was provided, but the word begins)]TJ -0 -1 TD -0.1256 Tw -(with a ")Tj -/TT8 1 Tf -3.6554 0 TD -0 Tw -(<)Tj -/TT6 1 Tf -0.6001 0 TD -0.1256 Tw -(", tries directory name completion \(or filename completion if)Tj --4.2555 -1.0667 TD -0 Tw -(there is already a matching ")Tj -/TT8 1 Tf -12.5933 0 TD -(>)Tj -/TT6 1 Tf -0.6001 0 TD -(" in the current word\).)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -77 0 obj -<< -/Length 6189 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-21)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT12 1 Tf -9 0 0 9 156.6 569.54 Tm -(?)Tj -/TT6 1 Tf -1.9333 0 TD -0.1711 Tw -(If typed in the middle of a word will supply alternative completions)Tj -0 -1.0667 TD -0.1078 Tw -(from the )Tj -/TT8 1 Tf -4.2595 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1078 Tw -[( argument to )]TJ -/TT8 1 Tf -6.2696 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1078 Tw -[( \(if any\). ?)]TJ -/TT8 1 Tf -5.0532 0 TD -0 Tw -(ACTIVATEFLG)Tj -/TT6 1 Tf -6.6011 0 TD -0.1078 Tw -[( \(see the)]TJ --28.1844 -1.0667 TD -0 Tw -(Assorted Flags section below\) must be true to enable this feature.)Tj -/TT12 1 Tf --6.7333 -1.7778 TD -(Control-Y)Tj -/TT6 1 Tf -6.7333 0 TD -0.3611 Tw -(Escapes to a Lisp user exec, from which you may return by the)Tj -0 -1.0667 TD -0 Tw -(command )Tj -/TT8 1 Tf -4.8571 0 TD -(OK)Tj -/TT6 1 Tf -1.2002 0 TD -0.1589 Tw -[(. However, when in )]TJ -/TT8 1 Tf -10.0244 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1589 Tw -[( mode and the buffer is non-)]TJ --18.4821 -1.0667 TD -0.2022 Tw -(empty, Control-Y is treated as Lisps unquote macro instead, so you)Tj -0 -1 TD -0 Tw -(have to use meta-Control-Y \(below\) to invoke the user exec.)Tj -/TT12 1 Tf --8.9667 -1.7778 TD -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -0.0233 Tw -[( )23.3(in )23.3(Interlisp-10)-1334.3(Retrieves characters from the previous non-empty buffer when it is able)]TJ -7.7665 -1.0667 TD -0.0756 Tw -(to; e.g., when typed at the beginning of the line this command restores)Tj -0 -1 TD -0.1233 Tw -(the previous line you typed at )Tj -/TT8 1 Tf -14.2786 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1233 Tw -(; when typed in the middle of a)Tj --17.2791 -1.0667 TD -0.0878 Tw -(line fills in the remaining text from the old line; when typed following)Tj -/TT15 1 Tf -0 -1 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(Q)Tj -/TT6 1 Tf -0.6001 0 TD -( or )Tj -/TT15 1 Tf -1.4409 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(W)Tj -/TT6 1 Tf -0.6001 0 TD -( restores what those commands erased.)Tj -/TT12 1 Tf --5.7805 -1.8444 TD -(;)Tj -/TT6 1 Tf -1.9333 0 TD -0.0556 Tw -(If typed as the first character of the line means the line is a comment; it)Tj -0 -1.0667 TD -0 Tw -(is ignored, and )Tj -/TT8 1 Tf -6.8677 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( loops back for more input.)Tj --9.8682 -1.8444 TD -0.0633 Tw -[(Note: The exact behaviour of this character is determined by the value)]TJ -0 -1 TD -0 Tw -(of )Tj -/TT8 1 Tf -1.1289 0 TD -(TTYINCOMMENTCHAR)Tj -/TT6 1 Tf -9.6016 0 TD -( \(see the Assorted Flags section below\).)Tj -/TT12 1 Tf --17.4638 -1.8444 TD -(Control-X)Tj -/TT6 1 Tf -6.7333 0 TD -0.0478 Tw -(Goes to the end of your input \(or end of expression if there is an excess)Tj -0 -1.0667 TD -0 Tw -(right parenthesis\) and returns if parentheses are balanced, beeps if not.)Tj --10.6667 -2.6667 TD -0.0844 Tw -(During most kinds of input, )Tj -/TT8 1 Tf -13.0482 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0844 Tw -[( is in "autofill" mode: if a space is typed near the right margin, a)]TJ --16.0487 -1.2889 TD -0.19 Tw -[(carriage return is simulated to start a new line. In fact, on cursor-addressable displays, lines are)]TJ -0 -1.2222 TD -0.0167 Tw -[(always broken, if possible, so that no word straddles the end of the line. The "pseudo-carriage return")]TJ -T* -0.0211 Tw -(ending the line is still read as a space, however; i.e., the program keeps track of whether a line ends in)Tj -T* -0.0011 Tw -(a carriage return or is merely broken at some convenient point. You wont get carriage returns in your)Tj -T* -0 Tw -(strings unless you explicitly type them.)Tj -/TT4 1 Tf -10 0 0 10 78 266 Tm -(Mouse Commands )Tj -/TT6 1 Tf -9 0 0 9 78 242.34 Tm -(The mouse buttons are interpreted as follows during )Tj -/TT8 1 Tf -23.5337 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( input:)Tj -/TT8 1 Tf --19.6008 -2.0667 TD -(LEFT)Tj -/TT6 1 Tf -3.7333 0 TD -0.1667 Tw -[(Moves the caret to where the cursor is pointing. As you hold down)]TJ -/TT8 1 Tf -0 -1.0667 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.19 Tw -(, the caret moves around with the cursor; after you let up, any)Tj --2.4004 -1.0667 TD -0 Tw -(typein will be inserted at the new position.)Tj -/TT8 1 Tf --4.9333 -1.7778 TD -(MIDDLE)Tj -/TT6 1 Tf -4.9333 0 TD -(Like )Tj -/TT8 1 Tf -2.187 0 TD -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -(, but moves only to word boundaries.)Tj -/TT8 1 Tf --8.9207 -1.8444 TD -(RIGHT)Tj -/TT6 1 Tf -4.3333 0 TD -0.1444 Tw -(Deletes text from the caret to the cursor, either forward or backward.)Tj -0 -1.0667 TD -0.1156 Tw -(While you hold down )Tj -/TT8 1 Tf -10.4129 0 TD -0 Tw -(RIGHT)Tj -/TT6 1 Tf -3.0005 0 TD -0.1156 Tw -(, the text to be deleted is complemented;)Tj --13.4134 -1.0667 TD -0.0656 Tw -[(when you let up, the text actually goes away. If you let up outside the)]TJ -0 -1 TD -0.4389 Tw -(scope of the text, nothing is killed \(this is how to "cancel" the)Tj -T* -0.1578 Tw -[(command\). This is roughly the same as )]TJ -/TT8 1 Tf -19.044 0 TD -0 Tw -(CTRL-RIGHT)Tj -/TT6 1 Tf -6.001 0 TD -0.1578 Tw -[( with no initial)]TJ --25.0449 -1.0667 TD -0 Tw -(selection \(below\). )Tj --10.6667 -2.6667 TD -0.0656 Tw -(If you hold down )Tj -/TT8 1 Tf -8.2398 0 TD -0 Tw -(CTRL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0656 Tw -[( and/or )]TJ -/TT8 1 Tf -3.8709 0 TD -0 Tw -(SHIFT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( while pressing the mouse buttons, you instead get secondary)]TJ --17.5115 -1.2889 TD -0.2011 Tw -[(selection, move selection or delete selection. You make a selection by bugging )]TJ -/TT8 1 Tf -37.4313 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.2011 Tw -[( \(to select a)]TJ --39.8317 -1.2889 TD -0.08 Tw -(character\) or )Tj -/TT8 1 Tf -5.9989 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.08 Tw -[( \(to select a word\), and optionally extend the selection either left or right using)]TJ -/TT8 1 Tf --9.5995 -1.2889 TD -0 Tw -(RIGHT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0733 Tw -[(. While you are doing this, the caret does not move, but your selected text is highlighted in a)]TJ --3.0005 -1.2889 TD -0.0544 Tw -[(manner indicating what is about to happen. When you have made your selection \(all mouse buttons)]TJ -0 -1.2222 TD -0 Tw -(up now\), lift up on )Tj -/TT8 1 Tf -8.5723 0 TD -(CTRL)Tj -/TT6 1 Tf -2.4004 0 TD -( and/or )Tj -/TT8 1 Tf -3.7397 0 TD -(SHIFT)Tj -/TT6 1 Tf -3.0005 0 TD -( and the action you have selected will occur, which is:)Tj -ET -endstream -endobj -78 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT15 23 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -81 0 obj -<< -/Length 4975 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-22)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 183 569.54 Tm -(SHIFT)Tj -/TT6 1 Tf -4.3333 0 TD -0.1122 Tw -[(The selected text as typein at the caret. The text is highlighted with a)]TJ -0 -1.0667 TD -0 Tw -(broken underline during selection.)Tj -/TT8 1 Tf --3.7333 -1.7778 TD -(CTRL)Tj -/TT6 1 Tf -3.7333 0 TD -(Delete the selected text. The text is complemented during selection.)Tj -/TT8 1 Tf --7.3333 -1.8444 TD -(CTRL-SHIFT)Tj -/TT6 1 Tf -7.3333 0 TD -0.1344 Tw -(Combines the above: delete the selected text and insert it at the caret.)Tj -0 -1.0667 TD -0 Tw -(This is how you move text about.)Tj --10.6667 -2.6667 TD -0.0211 Tw -(You can cancel a selection in progress by pressing )Tj -/TT8 1 Tf -22.4376 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0211 Tw -[( or )]TJ -/TT8 1 Tf -1.4831 0 TD -0 Tw -(MIDDLE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0211 Tw -[( as if to select, and moving outside)]TJ --29.9217 -1.2889 TD -0 Tw -(the range of the text.)Tj -0 -2.8889 TD -0.05 Tw -(The most recent text deleted by mouse command can be inserted at the caret by typing Middle-blank)Tj -0 -1.2222 TD -0.07 Tw -[(key \(on the Xerox 1132\) or the Open key \(on the Xerox 1108\). This is the same key that retrieves the)]TJ -T* -0 Tw -(previous buffer when issued at the end of a line.)Tj -/TT4 1 Tf -10 0 0 10 126 404.8 Tm -(Display Editing Commands)Tj -/TT6 1 Tf -9 0 0 9 126 381.14 Tm -0.2367 Tw -[(On terminals with a meta key: In Interlisp-10, )]TJ -/TT8 1 Tf -22.7096 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2367 Tw -[( reads from the terminal in binary mode,)]TJ --25.7101 -1.2889 TD -0.1078 Tw -(allowing many more editing commands via the meta key, in the style of )Tj -/TT8 1 Tf -33.362 0 TD -0 Tw -(TVEDIT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1078 Tw -[( commands. Note)]TJ --36.9626 -1.2889 TD -0.1955 Tw -(that due to Tenexs unfortunate way of handling typeahead, it is not possible to type ahead edit)Tj -0 -1.2222 TD -0.1511 Tw -(commands before )Tj -/TT8 1 Tf -8.4594 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1511 Tw -[( has started \(i.e., before its prompt appears\), because the meta bit will be)]TJ --11.4599 -1.2889 TD -0.2256 Tw -(thrown away. Also, since Escape has numerous other meanings in Lisp and even in )Tj -/TT8 1 Tf -40.2462 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2256 Tw -[( \(for)]TJ --43.2466 -1.2889 TD -0 Tw -(completion\), this is not used as a substitute for the meta key.)Tj -0 -2.8889 TD -0.0422 Tw -[(In Interlisp-D: Users will probably have little use for most of these commands, as cursor positioning)]TJ -0 -1.2222 TD -0.1011 Tw -[(can often be done more conveniently, and certainly more obviously, with the mouse. Nevertheless,)]TJ -T* -0.0767 Tw -[(some commands, such as the case changing commands, can be useful. The key can)]TJ -T* -0.0333 Tw -(be used as an meta key if you perform )Tj -/TT8 1 Tf -17.445 0 TD -0.08 Tw -(\(METASHIFT T\))Tj -/TT6 1 Tf -7.8813 0 TD -0.0333 Tw -[( \(see Chapter 30\). Alternatively, you can use)]TJ --25.3263 -1.2889 TD -0 Tw -(the variable )Tj -/TT8 1 Tf -5.4614 0 TD -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -( as described in the next paragraph.)Tj --13.8628 -2.9556 TD -0.0856 Tw -[(On display terminals without a meta key: If you want to type any of these commands, you need to)]TJ -0 -1.2222 TD -0.0533 Tw -[(prefix them with the "edit prefix" character. Set the variable )]TJ -/TT8 1 Tf -27.3132 0 TD -0 Tw -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -0.0533 Tw -[( to the character code)]TJ --35.7146 -1.2889 TD -0.0367 Tw -[(of the desired prefix char. Type the edit prefix twice to give an "meta-escape" command. Some users)]TJ -0 -1.2222 TD -0.2644 Tw -(of the )Tj -/TT8 1 Tf -3.295 0 TD -0 Tw -(TENEX)Tj -/TT6 1 Tf -3.0005 0 TD -( )Tj -/TT8 1 Tf -0.5144 0 TD -(TVEDIT)Tj -/TT6 1 Tf -3.6006 0 TD -0.2644 Tw -[( program like to make escape \(33Q\) be the edit prefix, but this makes it)]TJ --10.4105 -1.2889 TD -0 Tw -(somewhat awkward to ever use escape completion. )Tj -/TT8 1 Tf -23.2651 0 TD -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -( is initially )Tj -/TT8 1 Tf -4.8843 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj --38.3511 -2.9556 TD -0.0022 Tw -(On hardcopy terminals without a meta key: You probably want to ignore this section, since you wont)Tj -0 -1.2222 TD -0.1422 Tw -(be able to see whats going on when you issure edit commands; there is no attempt made to echo)Tj -T* -0 Tw -(anything reasonable.)Tj -0 -2.8889 TD -0.0278 Tw -(In the descriptions below, "current word" means the word the cursor is under, or if under a space, the)Tj -0 -1.2222 TD -0.03 Tw -[(previous word. Currently parentheses are treated as spaces, which is usually what you want, but can)]TJ -T* -0.0967 Tw -[(occasionally cause confusion in the word deletion commands. Most commands can be preceded by)]TJ -T* -0.0678 Tw -(numbers or escape \(means infinity\), only the first of which requires the meta key \(or the edit prefix\).)Tj -T* -0.1478 Tw -(Some commands also accept negative arguments, but some only look at the magnitude of the arg.)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -84 0 obj -<< -/Length 3866 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-23)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 78 569.54 Tm -0.1156 Tw -(Most of these commands are taken from the display editors )Tj -/TT8 1 Tf -27.6453 0 TD -0 Tw -(TVEDIT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1156 Tw -[( and/or )]TJ -/TT8 1 Tf -3.9709 0 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.1156 Tw -(, and are confined to)Tj --35.8168 -1.2889 TD -0 Tw -(work within one line of text unless otherwise noted. )Tj -0 -2.8889 TD -(Cursor Movement Commands:)Tj -ET -78 517.38 6.99 -6.44 re -f -BT -/TT12 1 Tf -9 0 0 9 90.6 510.94 Tm -(Meta-DELETE)Tj -2.4 -1 TD -(Meta-BS)Tj -0.6 -1.0667 TD -(Meta-<)Tj -/TT6 1 Tf -4.9333 0 TD -(Back up one \(or n\) characters.)Tj -/TT12 1 Tf --7.3333 -2.1778 TD -(Meta-SPACE)Tj -2.4 -1.0667 TD -(Meta->)Tj -/TT6 1 Tf -4.9333 0 TD -(Moves forward one \(or n\) characters.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-^)Tj -/TT6 1 Tf -4.9333 0 TD -(Moves up one \(or n\) lines.)Tj -/TT12 1 Tf --5.5333 -2.1778 TD -(Meta-lf)Tj -/TT6 1 Tf -5.5333 0 TD -(Moves down one \(or n\) lines.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-\()Tj -/TT6 1 Tf -4.9333 0 TD -(Moves back one \(or n\) words.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-\))Tj -/TT6 1 Tf -4.9333 0 TD -(Moves ahead one \(or n\) words.)Tj -/TT12 1 Tf --6.1333 -2.1778 TD -(Meta-TAB)Tj -/TT6 1 Tf -6.1333 0 TD -0.12 Tw -(Moves to end of line; with an argument moves to nth end of line; )Tj -/TT12 1 Tf -30.5975 0 TD -0 Tw -(Meta-ESC-)Tj --30.5975 -1.0667 TD -(TAB)Tj -/TT6 1 Tf -1.8003 0 TD -( goes to end of buffer.)Tj -/TT12 1 Tf --11.1303 -2.32 TD -(Control-Meta-L)Tj -/TT6 1 Tf -9.33 0 TD -(Moves to start of line \(or nth previous, or start of )Tj -/F1 1 Tf -10 0 0 10 358.0532 334.66 Tm -(buffer\).)Tj -/TT12 1 Tf -9 0 0 9 117.6 315.06 Tm -(Meta-{)Tj --0.6 -1.0667 TD -( Meta-})Tj -/TT6 1 Tf -5.5333 0 TD -(Go to start and end of buffer, respectively.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-[)Tj -/TT6 1 Tf -4.9333 0 TD -0.2922 Tw -(Moves to beginning of the current list, where cursor is currently under an)Tj -0 -1.0667 TD -0.0633 Tw -[(element of that list or its closing paren. \(See also the auto-parenthesis-matching)]TJ -0 -1 TD -0 Tw -(feature below under "Flags".\))Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-])Tj -/TT6 1 Tf -4.9333 0 TD -(Moves to end of current list.)Tj -/TT12 1 Tf --5.5333 -2.1778 TD -(Meta-Sx)Tj -/TT6 1 Tf -5.5333 0 TD -(Skips ahead to next \(or nth\) occurrence of character x, or rings the bell.)Tj -/TT12 1 Tf --5.5333 -2.1778 TD -(Meta-Bx)Tj -/TT6 1 Tf -5.5333 0 TD -(Backward search.)Tj --9.3333 -2.7333 TD -(Buffer Modification Commands:)Tj -/TT12 1 Tf -3.8 -2.3333 TD -(Meta-Zx)Tj -/TT6 1 Tf -5.5333 0 TD -0.0733 Tw -[(Zaps characters from cursor to next \(or nth\) occurrence of x. There is no unzap)]TJ -0 -1.0667 TD -0 Tw -(command yet.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-A)Tj -0 -1.0667 TD -(Meta-R)Tj -/TT6 1 Tf -4.9333 0 TD -0.0233 Tw -(Repeat the last S, B or Z command, regardless of any intervening input \(note this)Tj -0 -1.0667 TD -0 Tw -(differs from TEdits A command\).)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-K)Tj -/TT6 1 Tf -4.9333 0 TD -(Kills the character under the cursor, or n chars starting at the cursor.)Tj -/TT12 1 Tf --5.5333 -2.1778 TD -(Meta-CR)Tj -/TT6 1 Tf -5.5333 0 TD -0.2811 Tw -(When the buffer is empty is the same as )Tj -/TT12 1 Tf -20.3781 0 TD -0 Tw -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -0.2811 Tw -(, i.e. restores buffers previous)Tj --21.5783 -1.0667 TD -0.1567 Tw -[(contents. Otherwise is just like a )]TJ -/TT12 1 Tf -15.8208 0 TD -0 Tw -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -0.1567 Tw -[( \(except that it also terminates an insert\).)]TJ --17.021 -1.0667 TD -0 Tw -(Thus, )Tj -/TT12 1 Tf -2.8661 0 TD -(Meta-CR)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT12 1 Tf -0.3944 0 TD -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -0.1444 Tw -[( will repeat the previous input \(as will )]TJ -/TT12 1 Tf -18.3011 0 TD -0.3478 Tw -(LF CR)Tj -/TT6 1 Tf -3.3483 0 TD -0.1444 Tw -[( without the)]TJ --30.3108 -1.0667 TD -0 Tw -(meta key\).)Tj -ET -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -87 0 obj -<< -/Length 5996 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-24)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 165.6 569.54 Tm -(Meta-O)Tj -/TT6 1 Tf -4.9333 0 TD -0.0189 Tw -(Does "Open line", inserting a crlf after the cursor, i.e., it breaks the line but leaves)Tj -0 -1.0667 TD -0 Tw -(the cursor where it is.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-T)Tj -/TT6 1 Tf -4.9333 0 TD -0.05 Tw -[(Transposes the characters before and after the cursor. When typed at the end of)]TJ -0 -1.0667 TD -0.1389 Tw -[(a line, transposes the previous two characters. Refuses to handle funny cases,)]TJ -0 -1 TD -0 Tw -(such as tabs.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-G)Tj -/TT6 1 Tf -4.9333 0 TD -0.0722 Tw -[(Grabs the contents of the previous line from the cursor position onward. Meta-)]TJ -0 -1.0667 TD -0 Tw -(nG grabs the nth previous line.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-L)Tj -/TT6 1 Tf -4.9333 0 TD -0.0678 Tw -(Lowercases current word, or n words on line. )Tj -/TT12 1 Tf -21.2086 0 TD -0 Tw -(Meta-ESC-L)Tj -/TT6 1 Tf -6.001 0 TD -0.0678 Tw -[( lowercases the rest)]TJ --27.2096 -1.0667 TD -0 Tw -(of the line, or if given at the end of line lowercases the entire line.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-U)Tj -/TT6 1 Tf -4.9333 0 TD -(Uppercases analogously.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-C)Tj -/TT6 1 Tf -4.9333 0 TD -0.0433 Tw -[(Capitalize. If you give it an argument, only the first word is capitalized; the rest)]TJ -0 -1.0667 TD -0 Tw -(are just lowercased.)Tj -/TT12 1 Tf --9.33 -2.1111 TD -(Control-Meta-Q)Tj -/TT6 1 Tf -9.33 0 TD -0.0278 Tw -(Deletes the current line. )Tj -/TT12 1 Tf -11.1452 0 TD -0 Tw -(Control-Meta-ESC-Q)Tj -/TT6 1 Tf -10.8018 0 TD -0.0278 Tw -[( deletes from the current cursor)]TJ --21.947 -1.0667 TD -0 Tw -(position to the end of the buffer. No other arguments are handled.)Tj -/TT12 1 Tf --9.33 -2.1111 TD -(Control-Meta-W)Tj -/TT6 1 Tf -9.33 0 TD -(Deletes the current word, or the previous word if sitting on a space.)Tj -/TT12 1 Tf --4.9333 -2.1778 TD -(Meta-J)Tj -/TT6 1 Tf -4.9333 0 TD -0.06 Tw -[("Justify" this line. This will break it if it is too long, or move words up from the)]TJ -0 -1.0667 TD -0.1033 Tw -[(next line if too short. Will not join to an empty line, or one starting with a tab)]TJ -0 -1 TD -0.1867 Tw -[(\(both of which are interpreted as paragraph breaks\). Any new line breaks it)]TJ -T* -0 Tw -(introduces are considered spaces, not carriage returns. )Tj -/TT12 1 Tf -24.5259 0 TD -(Meta-nJ)Tj -/TT6 1 Tf -4.2007 0 TD -( justifies n lines.)Tj --28.7266 -2.1778 TD -0.0189 Tw -(The linelength is defined as )Tj -/TT8 1 Tf -12.5022 0 TD -0 Tw -(TTYJUSTLENGTH)Tj -/TT6 1 Tf -7.8013 0 TD -0.0189 Tw -(, ignoring any prompt characters at)Tj --20.3034 -1.0667 TD -0.1456 Tw -[(the margin. If )]TJ -/TT8 1 Tf -7.0964 0 TD -0 Tw -(TTYJUSTLENGTH)Tj -/TT6 1 Tf -7.8013 0 TD -0.1456 Tw -[( is negative, it is interpreted as relative to the)]TJ --14.8977 -1.0667 TD -0 Tw -(right margin. )Tj -/TT8 1 Tf -6.3574 0 TD -(TTYJUSTLENGTH)Tj -/TT6 1 Tf -7.8013 0 TD -( is initially -8 in Interlisp-D, 72 in Interlisp-10.)Tj -/TT12 1 Tf --21.492 -2.1778 TD -(Meta-ESC-F)Tj -/TT6 1 Tf -7.3333 0 TD -0.0389 Tw -[("Finishes" the input, regardless of where the cursor is. Specifically, it goes to the)]TJ -0 -1.0667 TD -0.17 Tw -(end of the input and enters a )Tj -/TT12 1 Tf -14.1592 0 TD -0.4078 Tw -(CR, control-Z)Tj -/TT6 1 Tf -8.209 0 TD -0.17 Tw -[( or "", depending on whether)]TJ --22.3683 -1.0667 TD -0 Tw -(normal, )Tj -/TT8 1 Tf -3.8223 0 TD -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -0.1256 Tw -[( or )]TJ -/TT8 1 Tf -1.692 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1256 Tw -[( input is happening. Note that a "" wont necessarily)]TJ --11.5153 -1.0667 TD -0.0556 Tw -(end a )Tj -/TT8 1 Tf -2.783 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0556 Tw -(, but it seems likely to in most cases where you would be inclined to)Tj --5.1834 -1.0667 TD -0 Tw -(use this command, and makes for more predictable behavior.)Tj --9.3333 -2.6667 TD -(Miscellaneous Commands:)Tj -/TT12 1 Tf -4.4 -2.3333 TD -(Meta-P)Tj -/TT6 1 Tf -4.9333 0 TD -0.4722 Tw -[(Interlisp-D: Prettyprint buffer. Clears the buffer and reprints it using)]TJ -0 -1.0667 TD -0.1744 Tw -[(prettyprint. If there are not enough right parentheses, it will supply more; if)]TJ -0 -1 TD -0.0556 Tw -(there are too many, any excess remains unprettyprinted at the end of the buffer.)Tj -T* -0.0822 Tw -(May refuse to do anything if there is an unclosed string or other error trying to)Tj -T* -0 Tw -(read the buffer.)Tj -/TT12 1 Tf --4.9333 -2.1111 TD -(Meta-N)Tj -/TT6 1 Tf -4.9333 0 TD -0.2167 Tw -[(Refresh line. Same as )]TJ -/TT12 1 Tf -10.8968 0 TD -0 Tw -(Control-R)Tj -/TT6 1 Tf -5.4009 0 TD -0.2167 Tw -[(. Meta-ESC-N refreshes the whole buffer;)]TJ --16.2977 -1.0667 TD -0.0001 Tc -0.0032 Tw -(Meta-nN refreshes n lines. Cursor movement in )Tj -/TT8 1 Tf -21.5999 0 TD -0 Tc -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0003 Tc -0.003 Tw -( depends on )Tj -/TT8 1 Tf -5.6746 0 TD -0 Tc -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0006 Tc -0.0027 Tw -( being)Tj --33.2754 -1.0667 TD -0 Tc -0.1756 Tw -(the only source of output to the screen; if you do a )Tj -/TT12 1 Tf -24.5417 0 TD -0 Tw -(Control-T)Tj -/TT6 1 Tf -5.4009 0 TD -0.1756 Tw -(, or a system)Tj --29.9426 -1.0667 TD -0.0822 Tw -(message appears, or line noise occurs, you may need to refresh the line for best)Tj -0 -1 TD -0.0344 Tw -[(results. In Interlisp-10, if for some reason your terminal falls out of binary mode)]TJ -T* -0.2389 Tw -(\(e.g. can happen when returning to a Lisp running in a lower fork\), )Tj -/TT12 1 Tf -33.0025 0 TD -0 Tw -(Meta-)Tj -/TT6 1 Tf --33.0025 -1.0667 TD -( is unreadable, so youd have to type )Tj -/TT12 1 Tf -21.6694 0 TD -(Control-R)Tj -/TT6 1 Tf -5.4009 0 TD -( instead.)Tj -/TT12 1 Tf --36.4003 -2.1778 TD -(Control-Meta-Y)Tj -/TT6 1 Tf -9.33 0 TD -0.0233 Tw -[(Gets user exec. Thus, this is like regular )]TJ -/TT12 1 Tf -18.167 0 TD -0 Tw -(Control-Y)Tj -/TT6 1 Tf -5.4009 0 TD -0.0233 Tw -(, except when doing a )Tj -/TT8 1 Tf -10.0249 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf --33.5928 -1.0667 TD -(\(when control-Y is a read macro and hence does not invoke this function\).)Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -90 0 obj -<< -/Length 6501 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-25)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT12 1 Tf -9 0 0 9 78.03 569.54 Tm -(Control-Meta-ESC-Y)Tj -/TT6 1 Tf -10.8856 0 TD -0.08 Tw -(Gets a user exec, but first unreads the contents of the buffer from the cursor)Tj --1.5556 -1.0667 TD -0.0456 Tw -[(onward. Thus if you typed at )]TJ -/TT8 1 Tf -13.7369 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0456 Tw -[( something destined for the Lisp executive,)]TJ --16.7373 -1.0667 TD -0 Tw -(you can do )Tj -/TT12 1 Tf -5.1377 0 TD -(Control-Meta-L-ESC-Control-Y)Tj -/TT6 1 Tf -16.8027 0 TD -( and give it to Lisp.)Tj -/TT12 1 Tf --27.2604 -2.1778 TD -(Meta-)Tj -/TT15 1 Tf -9.9 0 0 9 141.1244 530.74 Tm -<0040>Tj -/TT6 1 Tf -9 0 0 9 162 530.74 Tm -0.0756 Tw -(Adds the current word to the spelling list )Tj -/TT8 1 Tf -19.1313 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0756 Tw -[(. With zero arg, removes)]TJ --24.5322 -1.0667 TD -0 Tw -(word. See )Tj -/TT8 1 Tf -4.8687 0 TD -(TTYINCOMPLETEFLG)Tj -/TT6 1 Tf -9.6016 0 TD -( \(see the Assorted Flags section below\).)Tj --23.8036 -2.7333 TD -0.46 Tw -[(Note to Datamedia, Heath users: In addition to simple cursor movement commands and)]TJ -0 -1.2222 TD -0 Tw -(insert/delete, )Tj -/TT8 1 Tf -6.407 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1389 Tw -[( uses the displays cursor-addressing capability to optimize cursor movements)]TJ --9.4074 -1.2889 TD -0.0144 Tw -(longer than a few characters, e.g. )Tj -/TT12 1 Tf -14.8459 0 TD -0 Tw -(Meta-TAB)Tj -/TT6 1 Tf -4.8008 0 TD -0.0144 Tw -[( to go to the end of the line. In order to be able to address)]TJ --19.6467 -1.2889 TD -(the cursor, )Tj -/TT8 1 Tf -4.9727 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0144 Tw -[( has to know where it is to begin with. Lisp keeps track of the current print position)]TJ --7.9732 -1.2889 TD -0.0322 Tw -(within the line, but does not keep track of the line on the screen \(in fact, it knows precious little about)Tj -0 -1.2222 TD -0.0133 Tw -[(displays, much like Tenex\). Thus, )]TJ -/TT8 1 Tf -15.3803 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0133 Tw -[( establishes where it is by forcing the cursor to appear on the)]TJ --18.3808 -1.2889 TD -0.0122 Tw -[(last line of the screen. Ordinarily this is the case anyway \(except possibly on startup\), but if the cursor)]TJ -0 -1.2222 TD -0.1455 Tw -(happens to be only halfway down the screen at the time, there is a possibly unsettling leap of the)Tj -T* -0 Tw -(cursor when )Tj -/TT8 1 Tf -5.7837 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( starts. )Tj -/TT4 1 Tf -10 0 0 10 78 376.2 Tm -(Using TTYIN for Lisp Input)Tj -/TT6 1 Tf -9 0 0 9 78 352.54 Tm -(When )Tj -/TT8 1 Tf -2.9153 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0222 Tw -[( is loaded, or a sysout containing )]TJ -/TT8 1 Tf -14.928 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0222 Tw -[( is started up, the function )]TJ -/TT8 1 Tf -11.9576 0 TD -0 Tw -(SETREADFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.0222 Tw -[( is called.)]TJ --41.2027 -1.2889 TD -0.0244 Tw -(If the terminal is a display, it sets )Tj -/TT8 1 Tf -15.0085 0 TD -0 Tw -(LISPXREADFN)Tj -/TT6 1 Tf -6.6011 0 TD -0.0244 Tw -[( \(see Chapter 13\) to be )]TJ -/TT8 1 Tf -10.1911 0 TD -0 Tw -(TTYINREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.0244 Tw -[(. If the terminal is)]TJ --37.2016 -1.2889 TD -0.0367 Tw -(not a display terminal, )Tj -/TT8 1 Tf -10.3718 0 TD -0 Tw -(SETREADFN)Tj -/TT6 1 Tf -5.4009 0 TD -0.0367 Tw -[( will set the variable to )]TJ -/TT8 1 Tf -10.4895 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -(. )Tj -/TT8 1 Tf -0.8233 0 TD -0.0889 Tw -(\(SETREADFN READ\))Tj -/TT6 1 Tf -10.2906 0 TD -0.0367 Tw -[( will also set)]TJ --39.7765 -1.2889 TD -0 Tw -(it to )Tj -/TT8 1 Tf -1.9893 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(.)Tj --4.3897 -2.9556 TD -0.1267 Tw -(There are two principal differences between )Tj -/TT8 1 Tf -20.4661 0 TD -0 Tw -(TTYINREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.1267 Tw -[( and )]TJ -/TT8 1 Tf -2.4462 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1267 Tw -[(: \(1\) parenthesis balancing. The)]TJ --30.7135 -1.2889 TD -0.1244 Tw -(input does not activate on an exactly balancing right paren/bracket unless the input started with a)Tj -0 -1.2222 TD -0.0589 Tw -(paren/bracket, e.g., )Tj -/TT8 1 Tf -9.0694 0 TD -0.1422 Tw -(USE \(FOO\) FOR \(FIE\))Tj -/TT6 1 Tf -11.8285 0 TD -0.0589 Tw -[( will all be on one line, terminated by )]TJ -/TT12 1 Tf -17.2107 0 TD -0 Tw -(CR)Tj -/TT6 1 Tf -1.2002 0 TD -0.0589 Tw -(; and \(2\) read)Tj --39.3088 -1.2889 TD -0 Tw -(macros.)Tj -0 -2.8889 TD -0.1156 Tw -(In Interlisp-10, )Tj -/TT8 1 Tf -6.9591 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1156 Tw -[( does not use a read table \()]TJ -/TT8 1 Tf -12.5457 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1156 Tw -[( behaves as though using the default initial)]TJ --25.5058 -1.2889 TD -0.0033 Tw -(Lisp terminal input readtable\), so read macros and redefinition of syntax characters are not supported;)Tj -0 -1.2222 TD -0.0056 Tw -(however, " )Tj -/TT8 1 Tf -5.0121 0 TD -0 Tw -()Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( " )]TJ -/TT8 1 Tf -0.8822 0 TD -0 Tw -(\(QUOTE\))Tj -/TT6 1 Tf -4.2007 0 TD -0.0056 Tw -[( and "Control-Y" \()]TJ -/TT8 1 Tf -7.9298 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -(\) are built in, and a simple implementation of )Tj -/TT8 1 Tf -20.2951 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( and )]TJ -/TT8 1 Tf -2.204 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf --44.1244 -1.2889 TD -0.4089 Tw -[(is supplied. Also, the )]TJ -/TT8 1 Tf -11.8359 0 TD -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -0.4089 Tw -[( facility described below can supply some of the)]TJ --20.8374 -1.2889 TD -0 Tw -(functionality of immediate read macros in the editor.)Tj -0 -2.8889 TD -0.0022 Tw -(In Interlisp-D, read macros are \(mostly\) supported. Immediate read macros take effect only if typed at)Tj -0 -1.2222 TD -0 Tw -(the end of the input \(its not clear what their semantics should be elsewhere\).)Tj -/TT4 1 Tf -10 0 0 10 78 118.8 Tm -(Useful Macros)Tj -/TT6 1 Tf -9 0 0 9 78 95.14 Tm -0.08 Tw -(There are two useful edit macros that allow you to use )Tj -/TT8 1 Tf -25.1686 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.08 Tw -[( as a character editor: \(1\) )]TJ -/TT8 1 Tf -11.5327 0 TD -0 Tw -(ED)Tj -/TT6 1 Tf -1.2002 0 TD -0.08 Tw -[( loads the)]TJ --40.902 -1.2889 TD -0.0989 Tw -(current expression into the ttyin buffer to be edited \(this is good for editing comments and strings\).)Tj -0 -1.2222 TD -0.0956 Tw -(Input is terminated in the usual way \(by typing a balancing right programmers assistant command)Tj -/TT8 1 Tf -T* -0 Tw -(FIX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0167 Tw -[( will load the buffer with the events input, rather than calling the editor. If you really wanted the)]TJ -ET -endstream -endobj -91 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT15 23 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -93 0 obj -<< -/Length 7070 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-26)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0567 Tw -(Interlisp editor for your fix, you can say )Tj -/TT8 1 Tf -18.3025 0 TD -0.1344 Tw -(FIX EVENT - TTY)Tj -/TT6 1 Tf -9.4048 0 TD -0.0567 Tw -(: once you got )Tj -/TT8 1 Tf -6.6607 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0567 Tw -(s version to force)Tj --37.3685 -1.2889 TD -0 Tw -(you into the editor.)Tj -/TT4 1 Tf -10 0 0 10 126 528.6 Tm -(Programming With TTYIN)Tj -/TT8 1 Tf -9 0 0 9 150 508.66 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TTYIN)Tj -/TT8 1 Tf -2.9999 0 TD -( PROMPT SPLST HELP OPTIONS ECHOTOFILE TABS UNREADBUF RDTBL\))Tj -/F1 1 Tf -10 0 0 10 501.0519 508.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 156 499.06 Tm -([Function])Tj -/TT8 1 Tf -2 -1.7778 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.01 Tw -[( prints )]TJ -/TT8 1 Tf -3.1391 0 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.01 Tw -[(, then waits for input. The value returned in the normal case is a list)]TJ --9.7402 -1.2889 TD -0.0656 Tw -(of all atoms on the line, with comma and parens returned as individual atoms; )Tj -/TT8 1 Tf -35.7864 0 TD -0 Tw -(OPTIONS)Tj -/TT6 1 Tf --35.7864 -1.2889 TD -(may be used to get a different kind of value back.)Tj -/TT8 1 Tf -0 -2 TD -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.07 Tw -[( is an atom or string \(anything else is converted to a string\). If )]TJ -/TT8 1 Tf -28.6892 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.07 Tw -(, the value of)Tj -/TT8 1 Tf --34.09 -1.2889 TD -0 Tw -(DEFAULTPROMPT)Tj -/TT6 1 Tf -7.8013 0 TD -0.0911 Tw -(, initially ")Tj -/TT8 1 Tf -4.7227 0 TD -0 Tw -(**)Tj -/TT6 1 Tf -1.2002 0 TD -0.0911 Tw -[( ", will be used. If )]TJ -/TT8 1 Tf -8.7847 0 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0911 Tw -[( is )]TJ -/TT8 1 Tf -1.3971 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0911 Tw -(, no prompt will be given.)Tj -/TT8 1 Tf --28.1067 -1.2889 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0944 Tw -[( may also be a dotted pair )]TJ -/TT8 1 Tf -12.3291 0 TD -0.2278 Tw -(\(PROMPT1 . PROMPT2\))Tj -/TT6 1 Tf -11.8574 0 TD -0.0944 Tw -(, giving the prompt for the)Tj --27.7871 -1.2889 TD -0.2289 Tw -(first and subsequent \(or overflow\) lines, each prompt being a string/atom or )Tj -/TT8 1 Tf -36.8487 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2289 Tw -[( to)]TJ --38.649 -1.2889 TD -0.1578 Tw -[(denote absence of prompt. The default prompt for overflow lines is ")]TJ -/TT8 1 Tf -32.4426 0 TD -0 Tw -(...)Tj -/TT6 1 Tf -1.8003 0 TD -0.1578 Tw -[(". Note that)]TJ --34.2429 -1.2889 TD -0 Tw -(rebinding )Tj -/TT8 1 Tf -4.6114 0 TD -(DEFAULTPROMPT)Tj -/TT6 1 Tf -7.8013 0 TD -0.0211 Tw -[( gives a convenient way to affect all the "ordinary" prompts in)]TJ --12.4127 -1.2889 TD -0 Tw -(some program module.)Tj -/TT8 1 Tf -0 -2 TD -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1744 Tw -[( is a spelling list, i.e., a list of atoms or dotted pairs )]TJ -/TT8 1 Tf -24.7902 0 TD -0.4189 Tw -(\(SYNONYM . ROOT\))Tj -/TT6 1 Tf -10.4393 0 TD -0.1744 Tw -[(. If)]TJ --38.2301 -1.2889 TD -0.0656 Tw -(supplied, it is used to check and correct user responses, and to provide completion if the)Tj -0 -1.2222 TD -0.0956 Tw -[(user types escape. If )]TJ -/TT8 1 Tf -9.8616 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.0956 Tw -[( is one of the Lisp system spelling lists \(e.g., )]TJ -/TT8 1 Tf -20.4512 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0956 Tw -[( or)]TJ -/TT8 1 Tf --38.7141 -1.2889 TD -0 Tw -(SPELLINGS3)Tj -/TT6 1 Tf -6.001 0 TD -0.2733 Tw -(\), words that are escape-completed get moved to the front, just as if a)Tj -/TT8 1 Tf --6.001 -1.2889 TD -0 Tw -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0667 Tw -[( had found them. Autocompletion is also performed when user types a break)]TJ --4.8008 -1.2889 TD -0.1256 Tw -(character \(cr, space, paren, etc\), unless one of the "nofixspell" options below is selected;)Tj -0 -1.2222 TD -0.0378 Tw -(i.e., if the word just typed would uniquely complete by escape, )Tj -/TT8 1 Tf -28.4278 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0378 Tw -[( behaves as though)]TJ --31.4283 -1.2889 TD -0 Tw -(escape had been typed.)Tj -/TT8 1 Tf -0 -2 TD -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -(, if non-)Tj -/TT8 1 Tf -3.4281 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0056 Tw -(, determines what happens when the user types )Tj -/TT8 1 Tf -21.4058 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( or )]TJ -/TT8 1 Tf -1.452 0 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0056 Tw -(. If )Tj -/TT8 1 Tf -1.431 0 TD -0.0133 Tw -(HELP = T)Tj -/TT6 1 Tf -4.8274 0 TD -0 Tw -(,)Tj --39.7456 -1.2889 TD -0.1578 Tw -(program prints back )Tj -/TT8 1 Tf -9.7717 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.1578 Tw -[( in suitable form. If )]TJ -/TT8 1 Tf -9.8637 0 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.1578 Tw -[( is any other litatom, or a string)]TJ --25.0362 -1.2889 TD -0.0356 Tw -(containing no spaces, it performs )Tj -/TT8 1 Tf -15.0503 0 TD -0.0844 Tw -(\(DISPLAYHELP HELP\))Tj -/TT6 1 Tf -10.8862 0 TD -0.0355 Tw -[(. Anything else is printed as is.)]TJ --25.9365 -1.2889 TD -0 Tw -(If )Tj -/TT8 1 Tf -0.9544 0 TD -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0344 Tw -[( is )]TJ -/TT8 1 Tf -1.2837 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5344 0 TD -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.0344 Tw -[( and )]TJ -/TT8 1 Tf -2.2618 0 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.0344 Tw -[( are treated as any other atoms the user types. [)]TJ -/TT8 1 Tf -21.1609 0 TD -0 Tw -(DISPLAYHELP)Tj -/TT6 1 Tf --33.3963 -1.2889 TD -0.1478 Tw -(is a user-supplied function, initially a noop; systems with a suitable )Tj -/TT8 1 Tf -31.6426 0 TD -0 Tw -(HASH)Tj -/TT6 1 Tf -2.4004 0 TD -0.1478 Tw -[( package, for)]TJ --34.043 -1.2889 TD -0.0444 Tw -(example, have defined it to display a piece of text from a hashfile associated with the key)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -(.] )Tj -/TT8 1 Tf --2.4004 -2.0667 TD -(OPTIONS)Tj -/TT6 1 Tf -4.2007 0 TD -( is an atom or list of atoms chosen from among the following:)Tj -/TT8 1 Tf --6.2007 -2.0667 TD -(NOFIXSPELL)Tj -/TT6 1 Tf -7.3333 0 TD -(Uses )Tj -/TT8 1 Tf -2.6334 0 TD -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.2789 Tw -[( for )]TJ -/TT8 1 Tf -2.3317 0 TD -0 Tw -(HELP)Tj -/TT6 1 Tf -2.4004 0 TD -0.2789 Tw -[( and Escape completion, but does not attempt any)]TJ -/TT8 1 Tf --10.366 -1.2889 TD -0 Tw -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0833 Tw -[(ing. Mainly useful if )]TJ -/TT8 1 Tf -9.8688 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -[( is incomplete and the caller wants to)]TJ --17.6701 -1.2889 TD -0 Tw -(handle corrections in a more flexible way than a straight )Tj -/TT8 1 Tf -25.1065 0 TD -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -/TT8 1 Tf --37.8406 -2.0667 TD -(MUSTAPPROVE)Tj -/TT6 1 Tf -7.9333 0 TD -(Does spelling correction, but requires confirmation.)Tj -/TT8 1 Tf --7.3333 -2.0667 TD -(CRCOMPLETE)Tj -/TT6 1 Tf -7.3333 0 TD -0.0067 Tw -(Requires confirmation on spelling correction, but also does autocompletion on)Tj -0 -1.2889 TD -( \(i.e. if what user has typed so far uniquely identifies a member of )Tj -/TT8 1 Tf -31.4141 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -(,)Tj --34.4146 -1.2889 TD -0.0178 Tw -[(completes it\). This allows you to have the benefits of autocompletion and still)]TJ -0 -1.2222 TD -0 Tw -(allow new words to be typed.)Tj -ET -endstream -endobj -94 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -96 0 obj -<< -/Length 6822 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-27)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 113.4 569.54 Tm -(DIRECTORY)Tj -/TT6 1 Tf -6.7333 0 TD -0.0067 Tw -(\(only if )Tj -/TT8 1 Tf -3.4455 0 TD -0.0167 Tw -(SPLST = NIL)Tj -/TT6 1 Tf -6.6344 0 TD -0.0067 Tw -[(\) Interprets Escape to mean directory name completion)]TJ --10.0799 -1.2889 TD -0 Tw -([Interlisp-10 only].)Tj -/TT8 1 Tf --3.7333 -2 TD -(USER)Tj -/TT6 1 Tf -3.7333 0 TD -(Like )Tj -/TT8 1 Tf -2.6015 0 TD -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -0.4144 Tw -[(, but does username completion. This is identical to)]TJ -/TT8 1 Tf --8.0023 -1.2889 TD -0 Tw -(DIRECTORY)Tj -/TT6 1 Tf -5.4009 0 TD -( under Tenex [Interlisp-10 only].)Tj -/TT8 1 Tf --9.1342 -2.0667 TD -(FILE)Tj -/TT6 1 Tf -3.7333 0 TD -0.2178 Tw -(\(only if )Tj -/TT8 1 Tf -3.8677 0 TD -0.5222 Tw -(SPLST = NIL)Tj -/TT6 1 Tf -7.6455 0 TD -0.2178 Tw -[(\) Interprets Escape to mean filename completion)]TJ --11.5132 -1.2889 TD -0 Tw -([Sumex and Tops20 only].)Tj -/TT8 1 Tf --3.1333 -2 TD -(FIX)Tj -/TT6 1 Tf -3.1333 0 TD -0.0022 Tw -(If response is not on, or does not correct to, )Tj -/TT8 1 Tf -19.2742 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.0022 Tw -(, interacts with user until an)Tj --22.2747 -1.2889 TD -0.3322 Tw -[(acceptable response is entered. A blank line \(returning )]TJ -/TT8 1 Tf -27.5486 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.3322 Tw -(\) is always)Tj --29.3489 -1.2889 TD -0.1833 Tw -[(accepted. Note that if you are willing to accept responses that are not on)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.4267 Tw -(, you probably should specify one of the options )Tj -/TT8 1 Tf -25.4142 0 TD -0 Tw -(NOXFISPELL)Tj -/TT6 1 Tf -6.001 0 TD -(,)Tj -/TT8 1 Tf --34.4157 -1.2889 TD -(MUSTAPPROVE)Tj -/TT6 1 Tf -6.6011 0 TD -0.0011 Tc -0.0033 Tw -( or )Tj -/TT8 1 Tf -1.4498 0 TD -0 Tc -0 Tw -(CRCOMPLETE)Tj -/TT6 1 Tf -6.001 0 TD -0.0044 Tw -(, lest the users new response get )Tj -/TT8 1 Tf -14.7269 0 TD -0 Tw -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -(ed)Tj --33.5796 -1.2889 TD -(away without their approval.)Tj -/TT8 1 Tf --4.9333 -2 TD -(STRING)Tj -/TT6 1 Tf -4.9333 0 TD -(Line is read as a string, rather than list of atoms. Good for free text.)Tj -/TT8 1 Tf --5.5333 -2.0667 TD -(NORAISE)Tj -/TT6 1 Tf -5.5333 0 TD -(Does not convert lower case letters to upper case.)Tj -/TT8 1 Tf --5.5333 -2.0667 TD -(NOVALUE)Tj -/TT6 1 Tf -5.5333 0 TD -0.1056 Tw -(For use principally with the )Tj -/TT8 1 Tf -13.0444 0 TD -0 Tw -(ECHOTOFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.1056 Tw -[( arg \(below\). Does not compute a)]TJ --19.0454 -1.2889 TD -0 Tw -(value, but returns )Tj -/TT8 1 Tf -8.1245 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -( if user typed anything, )Tj -/TT8 1 Tf -10.5737 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if just a blank line.)Tj -/TT8 1 Tf --26.032 -2.0667 TD -(REPEAT)Tj -/TT6 1 Tf -4.9333 0 TD -0.1567 Tw -[(For multi-line input. Repeatedly prompts until user types Control-Z \(as in)]TJ -0 -1.2889 TD -0.12 Tw -[(Tenex sndmsg\). Returns one long list; with )]TJ -/TT8 1 Tf -20.3658 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.12 Tw -[( option returns a single)]TJ --23.9663 -1.2889 TD -0 Tw -(string of everything typed, with carriage returns \()Tj -/TT8 1 Tf -21.9683 0 TD -(EOL)Tj -/TT6 1 Tf -1.8003 0 TD -(\) included in the string.)Tj -/TT8 1 Tf --27.5019 -2.0667 TD -(TEXT)Tj -/TT6 1 Tf -3.7333 0 TD -(Implies )Tj -/TT8 1 Tf -3.9301 0 TD -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.8744 0 TD -(NORAISE)Tj -/TT6 1 Tf -4.2007 0 TD -0.3744 Tw -(, and )Tj -/TT8 1 Tf -3.1918 0 TD -0 Tw -(NOVALUE)Tj -/TT6 1 Tf -4.2007 0 TD -0.3744 Tw -[(. Additionally, input may be)]TJ --19.9983 -1.2889 TD -0.0033 Tw -(terminated with Control-V, in which case the global flag )Tj -/TT8 1 Tf -25.1428 0 TD -0 Tw -(CTRLVFLG)Tj -/TT6 1 Tf -4.8008 0 TD -0.0003 Tc -0.003 Tw -( will be set)Tj --29.9436 -1.2889 TD -0 Tc -0.1 Tw -(true \(it is set to )Tj -/TT8 1 Tf -7.3193 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1 Tw -[( on any other termination\). This flag may be utilized in)]TJ --9.1196 -1.2889 TD -0 Tw -(any way the caller desires.)Tj -/TT8 1 Tf --5.5333 -2 TD -(COMMAND)Tj -/TT6 1 Tf -5.5333 0 TD -0.3689 Tw -(Only the first word on the line is treated as belonging to )Tj -/TT8 1 Tf -29.4057 0 TD -0 Tw -(SPLST)Tj -/TT6 1 Tf -3.0005 0 TD -0.3689 Tw -(, the)Tj --32.4062 -1.2889 TD -0.1611 Tw -[(remainder of the line being arbitrary text; i.e., "command format". If other)]TJ -0 -1.2222 TD -0.0344 Tw -(options are supplied, )Tj -/TT8 1 Tf -9.6942 0 TD -0 Tw -(COMMAND)Tj -/TT6 1 Tf -4.2007 0 TD -0.0344 Tw -[( still applies to the first word typed. Basically,)]TJ --13.8948 -1.2889 TD -0.2444 Tw -(it always returns \()Tj -/TT8 1 Tf -8.7426 0 TD -0.5856 Tw -(CMD . REST-OF-INPUT)Tj -/TT6 1 Tf -12.573 0 TD -0.2444 Tw -(\), where )Tj -/TT8 1 Tf -4.3409 0 TD -0 Tw -(REST-OF-INPUT)Tj -/TT6 1 Tf -7.8013 0 TD -0.2444 Tw -[( is)]TJ --33.4578 -1.2889 TD -0.0144 Tw -[(whatever the other options dictate for the remainder. E.g. )]TJ -/TT8 1 Tf -26.0058 0 TD -0 Tw -(COMMAND)Tj -/TT6 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -0.2644 0 TD -(NOVALUE)Tj -/TT6 1 Tf --30.4709 -1.2889 TD -0.0711 Tw -(returns \()Tj -/TT8 1 Tf -3.8582 0 TD -0 Tw -(CMD)Tj -/TT6 1 Tf -1.8003 0 TD -0.0711 Tw -(\) or \()Tj -/TT8 1 Tf -2.2492 0 TD -0.17 Tw -(CMD . T)Tj -/TT6 1 Tf -4.5407 0 TD -0.0711 Tw -(\), depending on whether there was further input;)Tj -/TT8 1 Tf --12.4484 -1.2889 TD -0.1789 Tw -(COMMAND STRING)Tj -/TT6 1 Tf -8.5803 0 TD -0.0744 Tw -[( returns )]TJ -/TT8 1 Tf -3.853 0 TD -0.1789 Tw -(\(CMD . "REST-OF-INPUT")Tj -/TT6 1 Tf -13.5599 0 TD -0.0744 Tw -[(\). When used with)]TJ -/TT8 1 Tf --25.9932 -1.4311 TD -0 Tw -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5544 0 TD -(COMMAND)Tj -/TT6 1 Tf -4.2007 0 TD -0.0544 Tw -[( is only in effect )]TJ -/F1 1 Tf -10 0 0 10 316.5147 160.86 Tm -0.06 Tw -(for the first line typed; furthermore,)Tj --14.2515 -1.288 TD -0 Tw -(if the first line )Tj -/TT6 1 Tf -9 0 0 9 243.45 147.98 Tm -(consists solely of a command, the )Tj -/TT8 1 Tf -15.0117 0 TD -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -( is ignored, i.e., the)Tj --26.329 -1.2889 TD -(entire input is taken to be just the command.)Tj -/TT8 1 Tf --3.7333 -2 TD -(READ)Tj -/TT6 1 Tf -3.7333 0 TD -0.0367 Tw -(Parens, brackets, and quotes are treated a la )Tj -/TT8 1 Tf -19.8666 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -(, rather than being returned)Tj --22.267 -1.2889 TD -0.2233 Tw -[(as individual atoms. Control characters may be input via the Control-Vx)]TJ -0 -1.2222 TD -0.0444 Tw -[(notation. Input is terminated roughly along the lines of )]TJ -/TT8 1 Tf -25.2672 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0444 Tw -[( conventions: a)]TJ --27.6676 -1.2889 TD -0.2078 Tw -(balancing or over-balancing right paren/bracket will activate the input, or)Tj -0 -1.2222 TD -0.2478 Tw -( when no parenthesis remains unbalanced. )Tj -/TT8 1 Tf -23.1719 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.2478 Tw -[( overrides all other)]TJ --25.5723 -1.2889 TD -0 Tw -(options \(except )Tj -/TT8 1 Tf -6.9941 0 TD -(NORAISE)Tj -/TT6 1 Tf -4.2007 0 TD -(\).)Tj -ET -endstream -endobj -97 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -99 0 obj -<< -/Length 6263 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-28)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 161.4 569.54 Tm -(LISPXREAD)Tj -/TT6 1 Tf -6.7333 0 TD -(Like )Tj -/TT8 1 Tf -2.2859 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0989 Tw -(, but implies that )Tj -/TT8 1 Tf -8.1221 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0989 Tw -[( should behave even more like )]TJ -/TT8 1 Tf -14.3331 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0989 Tw -(, i.e.,)Tj --32.5424 -1.2889 TD -0 Tw -(do )Tj -/TT8 1 Tf -1.4067 0 TD -(NORAISE)Tj -/TT6 1 Tf -4.2007 0 TD -(, not be errorset-protected, etc.)Tj -/TT8 1 Tf --11.7408 -2.0667 TD -(NOPROMPT)Tj -/TT6 1 Tf -6.1333 0 TD -0.0211 Tw -[(Interlisp-D only: The prompt argument is treated as usual, except that )]TJ -/TT8 1 Tf -31.6669 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf --31.6669 -1.2889 TD -0.1855 Tw -(assumes that the prompt for the first line has already been printed by the)Tj -0 -1.2222 TD -0.1356 Tw -(caller; the prompt for the first line is thus used only when redisplaying the)Tj -T* -0 Tw -(line.)Tj -/TT8 1 Tf --10.6667 -2.8889 TD -(ECHOTOFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0222 Tw -[( if specified, users input is copied to this file, i.e., )]TJ -/TT8 1 Tf -22.1727 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0222 Tw -[( can be used as a simple text-to-)]TJ --31.1741 -1.2889 TD -0.0756 Tw -(file routine if )Tj -/TT8 1 Tf -6.2169 0 TD -0 Tw -(NOVALUE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0756 Tw -[( is used. If )]TJ -/TT8 1 Tf -5.3792 0 TD -0 Tw -(ECHOTOFILE)Tj -/TT6 1 Tf -6.001 0 TD -0.0756 Tw -[( is a list, copies to all files in the list. )]TJ -/TT8 1 Tf -17.1025 0 TD -0 Tw -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0756 Tw -[( is not)]TJ --42.5009 -1.2889 TD -0 Tw -(included on the file.)Tj -/TT8 1 Tf -0 -2.8889 TD -(TABS)Tj -/TT6 1 Tf -2.4004 0 TD -0.0422 Tw -[( is a special addition for tabular input. It is a list of tabstops \(numbers\). When user types a tab,)]TJ -/TT8 1 Tf --2.4004 -1.2889 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1889 Tw -[( automatically spaces over to the next tabstop \(thus the first tabstop is actually the second)]TJ --3.0005 -1.2889 TD -0.2522 Tw -[("column" of input\). Also treats specially the characters )]TJ -/TT8 1 Tf -26.7178 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.2522 Tw -[( and )]TJ -/TT8 1 Tf -2.6973 0 TD -0 Tw -(")Tj -/TT6 1 Tf -0.6001 0 TD -0.2522 Tw -(; they echo normally, and then)Tj --30.6153 -1.2889 TD -0 Tw -(automatically tab over.)Tj -/TT8 1 Tf -0 -2.8889 TD -(UNREADBUF)Tj -/TT6 1 Tf -5.4009 0 TD -0.0411 Tw -[( allows the caller to "preload" the )]TJ -/TT8 1 Tf -15.1349 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( buffer with a line of input. )]TJ -/TT8 1 Tf -12.7337 0 TD -0 Tw -(UNREADBUF)Tj -/TT6 1 Tf -5.4009 0 TD -0.0411 Tw -[( is a list,)]TJ --41.6709 -1.2889 TD -0.0944 Tw -(the elements of which are unread into the buffer \(i.e., "the outer parentheses are stripped off"\) to be)Tj -0 -1.2222 TD -0.0244 Tw -(edited further as desired; a simple carriage return \(or Control-Z for )Tj -/TT8 1 Tf -30.1444 0 TD -0 Tw -(REPEAT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0244 Tw -[( input\) will thus cause the)]TJ --33.745 -1.2889 TD -0.0411 Tw -[(buffers contents to be returned unchanged. If doing )]TJ -/TT8 1 Tf -23.9462 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0411 Tw -[( input, the ")]TJ -/TT8 1 Tf -5.285 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0411 Tw -[( names" of the input list)]TJ --34.632 -1.2889 TD -0.2811 Tw -(are used, i.e., quotes and %s will appear as needed; otherwise the buffer will look as though)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(UNREADBUF)Tj -/TT6 1 Tf -5.4009 0 TD -0.0178 Tw -[( had been )]TJ -/TT8 1 Tf -4.5895 0 TD -0 Tw -(PRIN1)Tj -/TT6 1 Tf -3.0005 0 TD -0.0178 Tw -(ed. )Tj -/TT8 1 Tf -2.1532 0 TD -0 Tw -(UNREADBUF)Tj -/TT6 1 Tf -5.4009 0 TD -0.0178 Tw -[( is treated somewhat like )]TJ -/TT8 1 Tf -11.3609 0 TD -0 Tw -(READBUF)Tj -/TT6 1 Tf -4.2007 0 TD -0.0178 Tw -(, so that if it contains)Tj --36.1065 -1.2889 TD -0 Tw -(a pseudo-carriage return \(the value of )Tj -/TT8 1 Tf -16.9741 0 TD -(HISTSTR0)Tj -/TT6 1 Tf -4.8008 0 TD -(\), the input line terminates there.)Tj --21.7749 -2.9556 TD -0.1567 Tw -(Input can also be unread from a file, using the )Tj -/TT8 1 Tf -22.1487 0 TD -0 Tw -(HISTSTR1)Tj -/TT6 1 Tf -4.8008 0 TD -0.1567 Tw -[( format: )]TJ -/TT8 1 Tf -4.0462 0 TD -0.3767 Tw -(UNREADBUF = \( \(FILE START . END\)\))Tj -/TT6 1 Tf -18.4917 0 TD -0.1133 Tw -(, where )Tj -/TT8 1 Tf -3.7457 0 TD -0 Tw -(START)Tj -/TT6 1 Tf -3.0005 0 TD -0.1133 Tw -[( and )]TJ -/TT8 1 Tf -2.4195 0 TD -0 Tw -(END)Tj -/TT6 1 Tf -1.8003 0 TD -0.1133 Tw -[( are file byte pointers. This makes)]TJ -/TT8 1 Tf --29.4577 -1.2889 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( a miniature text file editor.)Tj -/TT8 1 Tf --3.0005 -2.9556 TD -(RDTBL)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( [Interlisp-D only] is the read table to use for )]TJ -/TT8 1 Tf -20.2956 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -(ing the input when one of the )Tj -/TT8 1 Tf -13.6232 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0433 Tw -[( options)]TJ --41.7201 -1.2889 TD -0.0422 Tw -[(is given. A lot of character interpretations are hardwired into )]TJ -/TT8 1 Tf -27.8976 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0422 Tw -(, so currently the only effect this)Tj --30.898 -1.2889 TD -0.1467 Tw -(has is in the actual )Tj -/TT8 1 Tf -9.1284 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.1467 Tw -(, and in deciding whether a character typed at the end of the input is an)Tj --11.5287 -1.2889 TD -0 Tw -(immediate read macro, for purposes of termination.)Tj -0 -2.8889 TD -0.03 Tw -(If the global variable )Tj -/TT8 1 Tf -9.4887 0 TD -0 Tw -(TYPEAHEADFLG)Tj -/TT6 1 Tf -7.2012 0 TD -0.03 Tw -[( is )]TJ -/TT8 1 Tf -1.2748 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.03 Tw -(, or option )Tj -/TT8 1 Tf -4.923 0 TD -0 Tw -(LISPXREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.03 Tw -[( is given, )]TJ -/TT8 1 Tf -4.278 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.03 Tw -[( permits type-ahead;)]TJ --36.1671 -1.2889 TD -0 Tw -(otherwise it clears the buffer before prompting the user.)Tj -/TT4 1 Tf -10 0 0 10 126 123.2 Tm -(Using TTYIN as a General Editor)Tj -/TT6 1 Tf -9 0 0 9 126 99.54 Tm -0.1189 Tw -(The following may be useful as a way of outsiders to call )Tj -/TT8 1 Tf -26.7641 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1189 Tw -[( as an editor. These functions are)]TJ --29.7646 -1.2889 TD -0 Tw -(currently only in Interlisp-D.)Tj -ET -endstream -endobj -100 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -102 0 obj -<< -/Length 6513 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-29)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TTYINEDIT)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(EXPRS WINDOW PRINTFN PROMPT)Tj -/TT8 1 Tf -16.2026 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 312.6255 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.08 Tw -(This is the body of the edit macro )Tj -/TT8 1 Tf -15.6586 0 TD -0 Tw -(EE)Tj -/TT6 1 Tf -1.2002 0 TD -0.08 Tw -[(. Switches the tty to )]TJ -/TT14 1 Tf -9.6026 0 TD -0 Tw -(WINDOW)Tj -/TT6 1 Tf -3.6006 0 TD -0.08 Tw -(, clears it, prettyprints)Tj -/TT14 1 Tf --30.0619 -1.2889 TD -0 Tw -(EXPRS)Tj -/TT6 1 Tf -3.0005 0 TD -0.18 Tw -(, a list of expressions, into it, and leaves you in )Tj -/TT8 1 Tf -22.7227 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.18 Tw -[( to edit it as Lisp input.)]TJ --28.7237 -1.2889 TD -0 Tw -(Returns a new list of expressions.)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.0966 0 TD -(PRINTFN)Tj -/TT6 1 Tf -4.2007 0 TD -0.1767 Tw -[( is non-)]TJ -/TT8 1 Tf -3.6111 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1767 Tw -(, it is a function of two arguments, )Tj -/TT8 1 Tf -16.7854 0 TD -0 Tw -(EXPRS)Tj -/TT6 1 Tf -3.0005 0 TD -0.1767 Tw -[( and )]TJ -/TT8 1 Tf -2.5462 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.1767 Tw -(, which is)Tj --35.4412 -1.2889 TD -0.2044 Tw -(called instead of )Tj -/TT8 1 Tf -8.0709 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.2044 Tw -[( to print the expressions to the window \(actually to a)]TJ --14.6719 -1.2889 TD -0.1022 Tw -[(scratch file\). Note that )]TJ -/TT8 1 Tf -10.7694 0 TD -0 Tw -(EXPRS)Tj -/TT6 1 Tf -3.0005 0 TD -0.1022 Tw -[( is a list, so normally the outer parentheses should not be)]TJ --13.7699 -1.2889 TD -0 Tw -(printed. )Tj -/TT14 1 Tf -4.0352 0 TD -(PRINTFN)Tj -/TT8 1 Tf -4.2007 0 TD -( = T)Tj -/TT6 1 Tf -2.4004 0 TD -( is shorthand for "unpretty"; use )Tj -/TT8 1 Tf -14.4033 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -( instead of )Tj -/TT8 1 Tf -4.8418 0 TD -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT14 1 Tf --39.4829 -2.0667 TD -(PROMPT)Tj -/TT6 1 Tf -3.6006 0 TD -0.0556 Tw -[( determines what prompt is printed, if any. If )]TJ -/TT8 1 Tf -21.0307 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0556 Tw -[(, no prompt is printed. If )]TJ -/TT8 1 Tf -11.7888 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0556 Tw -(, it)Tj --38.8204 -1.2889 TD -0 Tw -(defaults to the value of )Tj -/TT8 1 Tf -10.3931 0 TD -(TTYINEDITPROMPT)Tj -/TT6 1 Tf -9.0015 0 TD -(.)Tj -/TT12 1 Tf --22.0612 -2.5422 TD -(TTYINAUTOCLOSEFLG)Tj -/F1 1 Tf -10 0 0 10 193.8 422.58 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 422.58 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT8 1 Tf -0.9199 0 TD -(TTYINAUTOCLOSEFLG)Tj -/TT6 1 Tf -10.2017 0 TD -( is true, )Tj -/TT8 1 Tf -3.5181 0 TD -(TTYINEDIT)Tj -/TT6 1 Tf -5.4009 0 TD -( closes the window on exit.)Tj -/TT12 1 Tf --22.7072 -2.5422 TD -(TTYINEDITWINDOW)Tj -/F1 1 Tf -10 0 0 10 183 383.1 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 383.1 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.02 Tw -(If the )Tj -/TT8 1 Tf -2.5971 0 TD -0 Tw -(WINDOW)Tj -/TT6 1 Tf -3.6006 0 TD -0.02 Tw -[( arg to )]TJ -/TT8 1 Tf -3.1332 0 TD -0 Tw -(TTYINEDIT)Tj -/TT6 1 Tf -5.4009 0 TD -0.02 Tw -[( is )]TJ -/TT8 1 Tf -1.2548 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.02 Tw -(, it uses the value of )Tj -/TT8 1 Tf -9.121 0 TD -0 Tw -(TTYINEDITWINDOW)Tj -/TT6 1 Tf -9.0015 0 TD -0.02 Tw -(, creating)Tj --35.9094 -1.2889 TD -0 Tw -(it if it does not yet exist.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(TTYINPRINTFN)Tj -/F1 1 Tf -10 0 0 10 166.8 332.62 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 332.62 Tm -([Variable])Tj --35.6011 -1.8444 TD -(The default value for )Tj -/TT8 1 Tf -9.5288 0 TD -(PRINTFN)Tj -/TT6 1 Tf -4.2007 0 TD -( in )Tj -/TT8 1 Tf -1.373 0 TD -(EE)Tj -/TT6 1 Tf -1.2002 0 TD -(s call to )Tj -/TT8 1 Tf -3.8496 0 TD -(TTYINEDIT)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 293.14 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 293.14 Tm -(SET.TTYINEDIT.WINDOW)Tj -/F2 1 Tf -10 0 0 10 216 293.14 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 218.87 293.14 Tm -(WINDOW)Tj -/TT8 1 Tf -10 0 0 10 251.2753 293.14 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 293.14 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0456 Tw -(Called under a )Tj -/TT8 1 Tf -6.9374 0 TD -0 Tw -(RESETLST)Tj -/TT6 1 Tf -4.8008 0 TD -0.0456 Tw -[(. Switches the tty to )]TJ -/TT14 1 Tf -9.3959 0 TD -0 Tw -(WINDOW)Tj -/TT6 1 Tf -3.6006 0 TD -0.0456 Tw -[( \(defaulted as in )]TJ -/TT8 1 Tf -7.545 0 TD -0 Tw -(TTYINEDIT)Tj -/TT6 1 Tf -5.4009 0 TD -0.0456 Tw -(\) and)Tj --37.6806 -1.2889 TD -0.0144 Tw -[(clears it. The windows position is left so that )]TJ -/TT8 1 Tf -20.5727 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0144 Tw -[( will be happy with it if you now call)]TJ -/TT8 1 Tf --23.5732 -1.2889 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0433 Tw -[( yourself. Specifically, this means positioning an integral number of lines from the)]TJ --3.0005 -1.2889 TD -0 Tw -(bottom of the window, the way the top-level tty window normally is.)Tj -/TT8 1 Tf -10 0 0 10 102 219.11 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 219.11 Tm -(TTYIN.SCRATCHFILE)Tj -/TT8 1 Tf -10 0 0 10 199.8 219.11 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 219.11 Tm -([Function])Tj --35.4033 -1.8833 TD -(Returns, possibly creating, the scratchfile that )Tj -/TT8 1 Tf -20.3667 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( uses for prettyprinting its input. The)Tj --23.3672 -1.2889 TD -0.0256 Tw -[(file pointer is set to zero. Since )]TJ -/TT8 1 Tf -14.1253 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0256 Tw -[( does use this file, beware of multiple simultaneous)]TJ --17.1258 -1.2889 TD -0 Tw -(use of the file.)Tj -/TT4 1 Tf -10 0 0 10 78 149.62 Tm -(?= Handler)Tj -/TT6 1 Tf -9 0 0 9 78 125.96 Tm -0.0956 Tw -(In Interlisp, the )Tj -/TT8 1 Tf -7.3189 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0956 Tw -[( read macro displays the arguments to the function currently "in progress" in the)]TJ --8.5191 -1.2889 TD -0.0889 Tw -[(typein. Since )]TJ -/TT8 1 Tf -6.4229 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0889 Tw -[( wants you to be able to continue editing the buffer after a )]TJ -/TT8 1 Tf -26.9822 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0889 Tw -(, it processes this)Tj --37.6058 -1.2889 TD -0.1344 Tw -(macro specially on its own, printing the arguments below your typein and then putting the cursor)Tj -0 -1.2222 TD -0.1133 Tw -(back where it was when )Tj -/TT8 1 Tf -11.491 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1133 Tw -[( was typed. For users who want special treatment of )]TJ -/TT8 1 Tf -24.8087 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.1133 Tw -(, the following)Tj --38.7001 -1.2889 TD -0 Tw -(hook exists:)Tj -ET -endstream -endobj -103 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 104 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -106 0 obj -<< -/Length 5747 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-30)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 568.26 Tm -(TTYIN?=FN)Tj -/F1 1 Tf -10 0 0 10 198.6 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 568.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1344 Tw -(The value of this variable, if non-)Tj -/TT8 1 Tf -15.4116 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1344 Tw -(, is a user function of one argument that is called)Tj --17.2119 -1.2889 TD -0 Tw -(when )Tj -/TT8 1 Tf -2.8226 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0956 Tw -[( is typed. The argument is the function that )]TJ -/TT8 1 Tf -20.5351 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0956 Tw -[( thinks it is inside of. The user)]TJ --25.7581 -1.2889 TD -0 Tw -(function should return one of the following:)Tj -/TT8 1 Tf -2.2 -2 TD -(NIL)Tj -/TT6 1 Tf -3.1333 0 TD -(Normal ?= processing is performed.)Tj -/TT8 1 Tf --1.9333 -2.0667 TD -(T)Tj -/TT6 1 Tf -1.9333 0 TD -0.0078 Tw -[(Nothing is done. Presumably the user function has done something privately,)]TJ -0 -1.2889 TD -0 Tw -(perhaps diddled some other window, or called )Tj -/TT8 1 Tf -21.0005 0 TD -(TTYIN.PRINTARGS)Tj -/TT6 1 Tf -9.0015 0 TD -( \(below\).)Tj --39.332 -2.0667 TD -(a list \()Tj -/TT8 1 Tf -2.665 0 TD -(ARGS . STUFF)Tj -/TT6 1 Tf -7.2012 0 TD -[(\))-1797.4(Treats )]TJ -/TT8 1 Tf -5.385 0 TD -(STUFF)Tj -/TT6 1 Tf -3.0005 0 TD -0.2678 Tw -[( as the argument list of the function in question, and)]TJ --8.9218 -1.2889 TD -0 Tw -(performs the normal )Tj -/TT8 1 Tf -9.3897 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -( processing using it.)Tj --17.821 -2.0667 TD -[(anything else)-1332.7(The value is printed in lieu of what )]TJ -/TT8 1 Tf -23.0011 0 TD -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -( normally prints.)Tj --22.3035 -2.0667 TD -0.0989 Tw -(At the time that )Tj -/TT8 1 Tf -7.6001 0 TD -0 Tw -(?=)Tj -/TT6 1 Tf -1.2002 0 TD -0.0989 Tw -[( is typed, nothing has been "read" yet, so you dont have the normal)]TJ --8.8003 -1.2889 TD -0.07 Tw -[(context you might expect inside a conventional readmacro. If the user function wants to)]TJ -0 -1.2222 TD -0.0744 Tw -(examine the typed-in arguments being passed to the fn, however, it can call the function)Tj -/TT8 1 Tf -T* -0 Tw -(TTYIN.READ?=ARGS)Tj -/TT6 1 Tf -9.6016 0 TD -(:)Tj -/TT8 1 Tf -10 0 0 10 150 356.38 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 356.38 Tm -(TTYIN.READ?=ARGS)Tj -/TT8 1 Tf -10 0 0 10 242.4 356.38 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 356.38 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1456 Tw -(When called inside )Tj -/TT8 1 Tf -9.1232 0 TD -0 Tw -(TTYIN?=FN)Tj -/TT6 1 Tf -5.4009 0 TD -0.1456 Tw -[( user function, returns everything between the function)]TJ --14.5241 -1.2889 TD -0.0867 Tw -[(and the typing of ?= as a list \(like an arglist\). Returns )]TJ -/TT8 1 Tf -24.9294 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0867 Tw -[( if ?= was typed immediately)]TJ --26.7297 -1.2889 TD -0 Tw -(after the function name. )Tj -/TT8 1 Tf --2.6667 -2.4756 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(TTYIN.PRINTARGS)Tj -/TT8 1 Tf -8.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FN ARGS ACTUALS ARGTYPE)Tj -/TT8 1 Tf -13.8022 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 371.422 293.95 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 293.95 Tm -([Function])Tj --35.4033 -1.8444 TD -0.03 Tw -(Does the function/argument printing for )Tj -/TT8 1 Tf -18.5455 0 TD -0 Tw -(?=.)Tj -/TT6 1 Tf -1.8003 0 TD -0.03 Tc -( )Tj -/TT14 1 Tf -0.56 0 TD -0 Tc -(ARGS)Tj -/TT6 1 Tf -2.4004 0 TD -0.03 Tw -[( is an argument list, )]TJ -/TT14 1 Tf -9.1031 0 TD -0 Tw -(ACTUALS)Tj -/TT6 1 Tf -4.2007 0 TD -0.03 Tw -[( is a list)]TJ --36.61 -1.2889 TD -0.0644 Tw -(of actual parameters \(from the typein\) to match up with args. )Tj -/TT14 1 Tf -28.3129 0 TD -0 Tw -(ARGTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -0.0644 Tw -[( is a value of the)]TJ --32.5136 -1.2889 TD -0 Tw -(function )Tj -/TT14 1 Tf -3.957 0 TD -(ARGTYPE)Tj -/TT6 1 Tf -4.2007 0 TD -(; it defaults to \()Tj -/TT14 1 Tf -6.6392 0 TD -(ARGTYPE FN)Tj -/TT6 1 Tf -6.001 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 126 224.21 Tm -(Read Macros)Tj -/TT6 1 Tf -9 0 0 9 126 200.55 Tm -0.0311 Tw -(When doing )Tj -/TT8 1 Tf -5.7912 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0311 Tw -[( input in Interlisp-10, no Lisp-style read macros are available \(but the and control-)]TJ --8.1916 -1.2889 TD -0.2544 Tw -[(Y macros are built in\). Principally because of the usefulness of the editor read macros \(set by)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(SETTERMCHARS)Tj -/TT6 1 Tf -7.2012 0 TD -0.3778 Tw -(\), and the desire for a way of changing the meanings of the display editing)Tj --7.2012 -1.2889 TD -0 Tw -(commands, the following exists as a hack:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(TTYINREADMACROS)Tj -/TT6 1 Tf -9 0 TD -[( )-28767.8([Variable])]TJ --6.3333 -1.8444 TD -0.17 Tw -(Value is a set of shorthand inputs useable during )Tj -/TT8 1 Tf -23.4402 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.17 Tw -[( input. It is an alist of entries)]TJ --25.8405 -1.2889 TD -0 Tw -(\()Tj -/TT8 1 Tf -0.333 0 TD -0.5078 Tw -(CHARCODE . SYNONYM)Tj -/TT6 1 Tf -11.8173 0 TD -0.2122 Tw -[(\). If the user types the indicated character \(the meta bit is)]TJ --12.1503 -1.2889 TD -0.2756 Tw -(denoted by the 200Q bit in the char code\), )Tj -/TT8 1 Tf -21.1607 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2756 Tw -[( behaves as though the synonym)]TJ --24.1612 -1.2889 TD -0 Tw -(character had been typed.)Tj -0 -2 TD -0.0011 Tw -(Special cases: 0 - the character is ignored; 200Q - pure meta bit; means to read another char)Tj -0 -1.2222 TD -0.2167 Tw -(and turn on its meta bit; 400Q - macro quote: read another char and use its original)Tj -T* -0.1522 Tw -[(meaning. For example, if you have macros \()]TJ -/TT8 1 Tf -20.8164 0 TD -0.3656 Tw -(\(33Q . 200Q\) \(30Q . 33Q\))Tj -/TT6 1 Tf -16.2301 0 TD -0.1522 Tw -(\), then)Tj --37.0465 -1.2889 TD -0.1056 Tw -(Escape \(33Q\) will behave as an edit prefix, and control-X \(30Q\) will behave like Escape.)Tj -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -109 0 obj -<< -/Length 5497 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-31)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.2233 Tw -(Note: currently, synonyms for meta commands are not well-supported, working only)Tj -0 -1.2222 TD -0 Tw -(when the command is typed with no argument. )Tj -0 -2 TD -0.0033 Tw -(Slightly more powerful macros also can be supplied; they are recognized when a character)Tj -0 -1.2222 TD -0.2378 Tw -[(is typed on an empty line, i.e., as the first thing after the prompt. In this case, the)]TJ -/TT8 1 Tf -T* -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -0.1433 Tw -[( entry is of the form \()]TJ -/TT8 1 Tf -10.1691 0 TD -0.3444 Tw -(CHARCODE T . RESPONSE)Tj -/TT6 1 Tf -13.6354 0 TD -0.1433 Tw -(\) or \()Tj -/TT8 1 Tf -2.3936 0 TD -0 Tw -(CHARCODE)Tj --35.1995 -1.2889 TD -0.08 Tw -(CONDITION . RESPONSE)Tj -/TT6 1 Tf -12.162 0 TD -0.0333 Tw -(\), where )Tj -/TT8 1 Tf -3.9187 0 TD -0 Tw -(CONDITION)Tj -/TT6 1 Tf -5.4009 0 TD -0.0333 Tw -[( is a list that evaluates true. If )]TJ -/TT8 1 Tf -13.7214 0 TD -0 Tw -(RESPONSE)Tj -/TT6 1 Tf --35.2029 -1.2889 TD -0.1367 Tw -(is a list, it is )Tj -/TT8 1 Tf -6.0622 0 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.1367 Tw -[(ed; otherwise it is left unevaluated. The result of this evaluation \(or)]TJ -/TT8 1 Tf --8.4626 -1.2889 TD -0 Tw -(RESPONSE)Tj -/TT6 1 Tf -4.8008 0 TD -( itself\) is treated as follows:)Tj -/TT8 1 Tf --2.6008 -2.0667 TD -(NIL)Tj -/TT6 1 Tf -3.1333 0 TD -0.3467 Tw -(The macro is ignored and the character reads normally, i.e., as though)Tj -/TT8 1 Tf -0 -1.2889 TD -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -( had never existed.)Tj --15.0526 -2.0667 TD -0.0778 Tw -[(An )77.8(integer)-1332.8(A character code, treated as above. Special case: -1 is treated like 0, but says)]TJ -6.0511 -1.2222 TD -0.1667 Tw -[(that the display may have been altered in the evaluation of the macro, so)]TJ -/TT8 1 Tf -T* -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( should reset itself appropriately.)Tj --10.5094 -2.0667 TD -[(Anything else)-1332.6(This )]TJ -/TT8 1 Tf -10.043 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.3744 Tw -[( input is terminated \(with a crlf\) and returns the value of)]TJ --5.5346 -1.2889 TD -0.1478 Tw -[("response" \(turned into a list if necessary\). This is the principal use of this)]TJ -0 -1.2222 TD -0.0056 Tw -[(facility. The macro character thus stands for the \(possibly computed\) reponse,)]TJ -T* -0 Tw -(terminated if necessary with a crlf. The original character is not echoed.)Tj --5.3333 -2 TD -0.0278 Tw -(Interrupt characters, of course, cannot be read macros, as )Tj -/TT8 1 Tf -25.665 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0278 Tw -[( never sees them, but any)]TJ --28.6655 -1.2889 TD -0.1389 Tw -[(other characters, even non-control chars, are allowed. The ability to return )]TJ -/TT8 1 Tf -34.9167 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1389 Tw -[( allows)]TJ --36.717 -1.2889 TD -0.1678 Tw -(you to have conditional macros that only apply in specified situations \(e.g., the macro)Tj -0 -1.2222 TD -0.0233 Tw -(might check the prompt \()Tj -/TT8 1 Tf -11.3087 0 TD -0 Tw -(LISPXID)Tj -/TT6 1 Tf -4.2007 0 TD -0.0233 Tw -[(\) or other contextual variables\). To use this specifically)]TJ --15.5094 -1.2889 TD -0.3044 Tw -(to do immediate editor read macros, do the following for each edit command and)Tj -0 -1.2222 TD -0 Tw -(character you want to invoke it with:)Tj -/TT8 1 Tf -5.3333 -1.9333 TD -(\(ADDTOVAR TTYINREADMACROS \(CHARCODE CHARMACRO?)Tj -0 -1.2222 TD -(EDITCOM\)\)\))Tj -/TT6 1 Tf --5.3333 -2.0667 TD -0.0867 Tw -(For example, )Tj -/TT8 1 Tf -6.1694 0 TD -0.2078 Tw -(\(ADDTOVAR TTYINREADMACROS \(12Q CHARMACRO? !NX\)\))Tj -/TT6 1 Tf -29.0357 0 TD -0.0867 Tw -[( will make)]TJ --35.2051 -1.2889 TD -0.0522 Tw -(linefeed do the )Tj -/TT8 1 Tf -6.9955 0 TD -0 Tw -(!NX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0522 Tw -[( command. Note that this will only activate linefeed at the beginning)]TJ --8.7958 -1.2889 TD -0.02 Tw -[(of a line, not anywhere in the line. There will probably be a user function to do this in the)]TJ -0 -1.2222 TD -0 Tw -(next release.)Tj -0 -2 TD -0.0678 Tw -(Note that putting \()Tj -/TT8 1 Tf -8.4885 0 TD -0.1611 Tw -(12Q T . !NX)Tj -/TT6 1 Tf -7.0844 0 TD -0.0678 Tw -(\) on )Tj -/TT8 1 Tf -2.0965 0 TD -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -0.0678 Tw -[( would also have the effect of)]TJ --26.6709 -1.2889 TD -0 Tw -(returning )Tj -/TT8 1 Tf -4.5361 0 TD -(!NX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0767 Tw -[( from the )]TJ -/TT8 1 Tf -4.5239 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -0.0767 Tw -[( call so that the editor would do an )]TJ -/TT8 1 Tf -16.3287 0 TD -0 Tw -(!NX)Tj -/TT6 1 Tf -1.8003 0 TD -0.0767 Tw -[(. However, )]TJ -/TT8 1 Tf -5.6099 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf --36.9996 -1.2889 TD -0.3656 Tw -(would also return )Tj -/TT8 1 Tf -9.2724 0 TD -0 Tw -(!NX)Tj -/TT6 1 Tf -1.8003 0 TD -0.3656 Tw -[( outside the editor \(probably resulting in a u.b.a. error, or)]TJ --11.0727 -1.2889 TD -0 Tw -(convincing )Tj -/TT8 1 Tf -5.1373 0 TD -(DWIM)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0043 Tw -( to enter the editor\), and also the clearing of the output buffer \(performed)Tj --7.5376 -1.2889 TD -0 Tc -0 Tw -(by )Tj -/TT8 1 Tf -1.3594 0 TD -(CHARMACRO?)Tj -/TT6 1 Tf -6.001 0 TD -(\) would not happen.)Tj -/TT4 1 Tf -10 0 0 10 78 110.4 Tm -(Assorted Flags)Tj -/TT6 1 Tf -9 0 0 9 78 86.74 Tm -0.0544 Tw -(These flags control aspects of )Tj -/TT8 1 Tf -13.4094 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0544 Tw -[(s behavior. Some have already been mentioned. In Interlisp-D,)]TJ --16.4099 -1.2889 TD -0 Tw -(the flags are all initially set to )Tj -/TT8 1 Tf -13.2178 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -110 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -113 0 obj -<< -/Length 5267 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-32)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 568.26 Tm -(TYPEAHEADFLG)Tj -/F1 1 Tf -10 0 0 10 214.8 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 568.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2811 Tw -(If true, )Tj -/TT8 1 Tf -3.7854 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.2811 Tw -[( always permits typeahead; otherwise it clears the buffer for any but)]TJ -/TT8 1 Tf --6.7859 -1.2889 TD -0 Tw -(LISPXREAD)Tj -/TT6 1 Tf -5.4009 0 TD -( input.)Tj -/TT8 1 Tf -10 0 0 10 150 517.18 Tm -(?)Tj -/TT12 1 Tf -9 0 0 9 156.001 517.18 Tm -(ACTIVATEFLG)Tj -/F1 1 Tf -10 0 0 10 215.4 517.18 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 517.18 Tm -([Variable])Tj --35.6011 -1.8833 TD -0.2767 Tw -(If true, enables the feature whereby )Tj -/TT8 1 Tf -17.5721 0 TD -0 Tw -(?)Tj -/TT6 1 Tf -0.6001 0 TD -0.2767 Tw -[( lists alternative completions from the current)]TJ --18.1722 -1.2889 TD -0 Tw -(spelling list.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(SHOWPARENFLG)Tj -/F1 1 Tf -10 0 0 10 214.8 466.35 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 466.35 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1422 Tw -(If true, then whenever you are typing Lisp input and type a right parenthesis/bracket,)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1256 Tw -[( will briefly move the cursor to the matching parenthesis/bracket, assuming it is)]TJ --3.0005 -1.2889 TD -0.1078 Tw -[(still on the screen. The cursor stays there for about 1 second, or until you type another)]TJ -0 -1.2222 TD -0.2 Tw -[(character \(i.e., if you type fast youll never notice it\). This feature was inspired by a)]TJ -T* -0 Tw -(similar )Tj -/TT8 1 Tf -3.3247 0 TD -(EMACS)Tj -/TT6 1 Tf -3.0005 0 TD -( feature, and turned out to be pretty easy to implement.)Tj -/TT12 1 Tf --8.9919 -2.5422 TD -(TTYINBSFLG)Tj -/F1 1 Tf -10 0 0 10 204 382.27 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 382.27 Tm -([Variable])Tj --35.6011 -1.8444 TD -(Causes )Tj -/TT8 1 Tf -3.5109 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1222 Tw -[( to always physically backspace, even if youre running on a non-display)]TJ --6.5114 -1.2889 TD -0.31 Tw -(\(not a DM or Heath\), rather than print \\deletedtext\\ \(this assumes your hardcopy)Tj -0 -1.2222 TD -0.0378 Tw -[(terminal or glass tty is capable of backspacing\). If )]TJ -/TT8 1 Tf -22.6351 0 TD -0 Tw -(TTYINBSFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0378 Tw -[( is )]TJ -/TT8 1 Tf -1.2904 0 TD -0 Tw -(LF)Tj -/TT6 1 Tf -1.2002 0 TD -0.0378 Tw -(, then in addition to)Tj --31.1267 -1.2889 TD -0 Tw -(backspacing, )Tj -/TT8 1 Tf -6.1445 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1933 Tw -[( xs out the deleted characters as it backs up, and when you stop)]TJ --9.145 -1.2889 TD -0.0067 Tw -[(deleting, it outputs a linefeed to drop to a new, clean line before resuming. To save paper,)]TJ -0 -1.2222 TD -0.0211 Tw -(this linefeed operation is not done when only a single character is deleted, on the grounds)Tj -T* -0 Tw -(that you can probably figure out what you typed anyway.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(TTYINRESPONSES)Tj -/F1 1 Tf -10 0 0 10 225.6123 275.59 Tm --0.0012 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 275.59 Tm -0 Tc -([Variable])Tj --35.6011 -1.8444 TD -0.03 Tw -(An association list of special responses that will be handled by routines designated by the)Tj -0 -1.2222 TD -0 Tw -(programmer. See "Special Responses", below.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(TTYINERRORSETFLG)Tj -/F1 1 Tf -10 0 0 10 236.4 225.71 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 225.71 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0756 Tw -[([Interlisp-D only] If true, non-)]TJ -/TT8 1 Tf -13.868 0 TD -0 Tw -(LISPXREAD)Tj -/TT6 1 Tf -5.4009 0 TD -0.0756 Tw -[( inputs are errorset-protected \(Control-E traps)]TJ --19.2689 -1.2889 TD -0 Tw -(back to the prompt\), otherwise errors propagate upwards. Initially )Tj -/TT8 1 Tf -29.9248 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --34.3918 -2.5422 TD -(TTYINCOMMENTCHAR)Tj -/F1 1 Tf -10 0 0 10 236.4 174.63 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 174.63 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0289 Tw -(This variable affects the treatment of lines beginning with the comment character \(usually)Tj -0 -1.2222 TD -0 Tw -(")Tj -/TT8 1 Tf -0.3711 0 TD -(;)Tj -/TT6 1 Tf -0.6001 0 TD -0.0178 Tw -[("\). If )]TJ -/TT8 1 Tf -2.4274 0 TD -0 Tw -(TTYINCOMMENTCHAR)Tj -/TT6 1 Tf -9.6016 0 TD -0.0178 Tw -[( is a character code, and the first character on a line of typein)]TJ --13.0001 -1.2889 TD -0.1756 Tw -(is equal to )Tj -/TT8 1 Tf -5.2967 0 TD -0 Tw -(TTYINCOMMENTCHAR)Tj -/TT6 1 Tf -9.6016 0 TD -0.1756 Tw -(, then the line is erased from the screen and no input)Tj --14.8982 -1.2889 TD -0.57 Tw -[(function will see it. If )]TJ -/TT8 1 Tf -13.253 0 TD -0 Tw -(TTYINCOMMENTCHAR)Tj -/TT6 1 Tf -9.6016 0 TD -0.57 Tw -[( is )]TJ -/TT8 1 Tf -2.3548 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.57 Tw -(, this feature is disabled.)Tj -/TT8 1 Tf --27.0097 -1.2889 TD -0 Tw -(TTYINCOMMENTCHAR)Tj -/TT6 1 Tf -9.6016 0 TD -( is initially )Tj -/TT8 1 Tf -4.8843 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --18.9528 -2.5422 TD -(TTYINCOMPLETEFLG)Tj -/F1 1 Tf -10 0 0 10 236.4 89.35 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 89.35 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If true, enables Escape completion from )Tj -/TT8 1 Tf -17.7354 0 TD -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -( during )Tj -/TT8 1 Tf -3.5381 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -( inputs. Details below.)Tj -ET -endstream -endobj -114 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -116 0 obj -<< -/Length 6493 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-33)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0511 Tw -[( \(see Chapter 20\) contains words you mentioned recently: functions you have defined or)]TJ --5.4009 -1.2889 TD -0.1722 Tw -[(edited, variables you have set or evaluated at the executive level, etc. This happens to be a very)]TJ -0 -1.2222 TD -0.0611 Tw -(convenient list for context-free escape completion; if you have recently edited a function, chances are)Tj -T* -0.0178 Tw -(good you may want to edit it again \(typing ")Tj -/TT8 1 Tf -19.7972 0 TD -0.0433 Tw -(EF xx$)Tj -/TT6 1 Tf -3.6439 0 TD -0.0178 Tw -[("\) or type a call to it. If there is no completion for)]TJ --23.4411 -1.2889 TD -0.0844 Tw -(the current word from )Tj -/TT8 1 Tf -10.4916 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.0844 Tw -(, the escape echoes as ")Tj -/TT8 1 Tf -10.4847 0 TD -0 Tw -($)Tj -/TT6 1 Tf -0.6001 0 TD -0.0844 Tw -(", i.e. nothing special happens; if there is)Tj --26.9773 -1.2889 TD -0.2511 Tw -[(more than one possible completion, you get beeped. If typed when not inside a word, Escape)]TJ -0 -1.2222 TD -0.1944 Tw -(completes to the value of )Tj -/TT8 1 Tf -12.2711 0 TD -0 Tw -(LASTWORD)Tj -/TT6 1 Tf -4.8008 0 TD -0.1944 Tw -(, i.e., the last thing you typed that the p.a. "noticed" \(setting)Tj -/TT8 1 Tf --17.0718 -1.2889 TD -0 Tw -(TTYINCOMPLETEFLG)Tj -/TT6 1 Tf -9.6016 0 TD -0.0122 Tw -[( to 0 disables this latter feature\), except that Escape at the beginning of the line is)]TJ --9.6016 -1.2889 TD -0 Tw -(left alone \(it is a p.a. command\).)Tj -0 -2.8889 TD -0.0344 Tw -(If you really wanted to enter an escape, you can, of course, just quote it with a control-V, like you can)Tj -0 -1.2222 TD -0 Tw -(other control chars.)Tj -0 -2.8889 TD -0.1133 Tw -(You may explicitly add words to )Tj -/TT8 1 Tf -15.4246 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1133 Tw -[( yourself that wouldnt get there otherwise. To make)]TJ --20.8255 -1.2889 TD -0.2044 Tw -(this convenient online the edit command [)Tj -/TT15 1 Tf -19.8722 0 TD -0 Tw -<0040>Tj -/TT6 1 Tf -0.9868 0 TD -0.2044 Tw -(] means "add the current atom to )Tj -/TT8 1 Tf -16.2128 0 TD -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.2044 Tw -(" \(you)Tj --42.4727 -1.2889 TD -0.1744 Tw -[(might think of the command as "pointing out this atom"\). For example, you might be entering a)]TJ -0 -1.2222 TD -0.0611 Tw -[(function definition and want to "point to" one or more of its arguments or prog variables. Giving an)]TJ -T* -0 Tw -(argument of zero to this command will instead remove the indicated atom from )Tj -/TT8 1 Tf -35.5166 0 TD -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --40.9175 -2.9556 TD -0.1178 Tw -(Note that this feature loses some of its value if the spelling list is too long, for then the completion)Tj -0 -1.2222 TD -0.0911 Tw -(takes too long computationally and, more important, there are too many alternative completions for)Tj -T* -0.0333 Tw -[(you to get by with typing a few characters followed by escape. Lisps maintenance of the spelling list)]TJ -/TT8 1 Tf -T* -0 Tw -(USERWORDS)Tj -/TT6 1 Tf -5.4009 0 TD -0.1133 Tw -[( keeps the "temporary" section \(which is where everything goes initially unless you say)]TJ --5.4009 -1.2889 TD -0.1167 Tw -(otherwise\) limited to )Tj -/TT8 1 Tf -9.8329 0 TD -0 Tw -(#USERWORDS)Tj -/TT6 1 Tf -6.001 0 TD -0.1167 Tw -[( atoms, initially 100. Words fall off the end if they havent been)]TJ --15.8339 -1.2889 TD -0 Tw -(used \(they are "used" if )Tj -/TT8 1 Tf -10.5 0 TD -(FIXSPELL)Tj -/TT6 1 Tf -4.8008 0 TD -( corrects to one, or you use to complete one\). )Tj -/TT4 1 Tf -10 0 0 10 78 257.6 Tm -(Special Responses)Tj -/TT6 1 Tf -9 0 0 9 78 233.94 Tm -0.0656 Tw -(There is a facility for handling "special responses" during any non-)Tj -/TT8 1 Tf -30.0643 0 TD -0 Tw -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -( )Tj -/TT8 1 Tf -0.3156 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0656 Tw -[( input. This action is)]TJ --35.7807 -1.2889 TD -0.0833 Tw -(independent of the particular call to )Tj -/TT8 1 Tf -16.6333 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -(, and exists to allow you to effectively "advise" )Tj -/TT8 1 Tf -21.502 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0833 Tw -[( to)]TJ --44.1362 -1.2889 TD -0.0856 Tw -[(intercept certain commands. After the command is processed, control returns to the original )]TJ -/TT8 1 Tf -42.3194 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf --42.3194 -1.2889 TD -(call. The facility is implemented via the list )Tj -/TT8 1 Tf -19.4268 0 TD -(TTYINRESPONSES)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT12 1 Tf --25.1615 -2.5422 TD -(TTYINRESPONSES)Tj -/F1 1 Tf -10 0 0 10 177.6123 176.26 Tm --0.0012 Tc -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 176.26 Tm -0 Tc -([Variable])Tj -/TT8 1 Tf --35.6011 -1.8444 TD -(TTYINRESPONSES)Tj -/TT6 1 Tf -8.4014 0 TD -( is a list of elements, each of the form:)Tj -/TT8 1 Tf --0.4014 -2 TD -(\(COMMANDS RESPONSE-FORM OPTION\))Tj --8 -2.0667 TD -(COMMANDS)Tj -/TT6 1 Tf -4.8008 0 TD -0.1756 Tw -[( is a single atom or list of commands to be recognized; )]TJ -/TT8 1 Tf -26.2605 0 TD -0 Tw -(RESPONSE-FORM)Tj -/TT6 1 Tf -7.8013 0 TD -0.1756 Tw -[( is)]TJ -/TT8 1 Tf --38.8625 -1.2889 TD -0 Tw -(EVAL)Tj -/TT6 1 Tf -2.4004 0 TD -0.0044 Tw -(ed \(if a list\), or )Tj -/TT8 1 Tf -6.6751 0 TD -0 Tw -(APPLY)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0043 Tw -(ed \(if an atom\) to the command and the rest of the line. Within)Tj --12.0759 -1.2889 TD -0 Tc -0.0133 Tw -(this form one can reference the free variables )Tj -/TT8 1 Tf -20.1555 0 TD -0 Tw -(COMMAND)Tj -/TT6 1 Tf -4.2007 0 TD -0.0133 Tw -[( \(the command the user typed\) and)]TJ -/TT8 1 Tf --24.3562 -1.2889 TD -0 Tw -(LINE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0322 Tw -[( \(the rest of the line\). If )]TJ -/TT8 1 Tf -10.7641 0 TD -0 Tw -(OPTION)Tj -/TT6 1 Tf -3.6006 0 TD -0.0322 Tw -[( is the atom )]TJ -/TT8 1 Tf -5.4858 0 TD -0 Tw -(LINE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0322 Tw -(, this means to pass the rest of line)Tj --24.6513 -1.2889 TD -0.0589 Tw -(as a list; if it is )Tj -/TT8 1 Tf -6.8152 0 TD -0 Tw -(STRING)Tj -/TT6 1 Tf -3.6006 0 TD -0.0589 Tw -(, this means to pass it as a string; otherwise, the command is only)Tj --10.4158 -1.2889 TD -0.0511 Tw -[(valid if there is nothing else on the line. If )]TJ -/TT8 1 Tf -19.3864 0 TD -0 Tw -(RESPONSE-FORM)Tj -/TT6 1 Tf -7.8013 0 TD -0.0511 Tw -[( returns the atom )]TJ -/TT8 1 Tf -8.0506 0 TD -0 Tw -(IGNORE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0511 Tw -(, it)Tj --38.8389 -1.2889 TD -0.1622 Tw -(is not treated as a special response \(i.e. the input is returned normally as the result of)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -(\).)Tj -ET -endstream -endobj -117 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT15 23 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -119 0 obj -<< -/Length 5031 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-34)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0344 Tw -(Suggested use: global commands or options can be added to the toplevel value of )Tj -/TT8 1 Tf -36.6873 0 TD -0 Tw -(TTYINRESPONSES)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj --45.0887 -1.2889 TD -0.72 Tw -(For more specialized commands, rebind )Tj -/TT8 1 Tf -21.5937 0 TD -0 Tw -(TTYINRESPONSES)Tj -/TT6 1 Tf -8.4014 0 TD -0.72 Tw -[( to )]TJ -/TT8 1 Tf -2.8121 0 TD -1.7267 Tw -(\(APPEND NEWENTRIES)Tj --32.8071 -1.2889 TD -0 Tw -(TTYINRESPONSES\))Tj -/TT6 1 Tf -9.0015 0 TD -( inside any module where you want to do this sort of special processing.)Tj --9.0015 -2.9556 TD -(Special responses are not checked for during )Tj -/TT8 1 Tf -19.9692 0 TD -(READ)Tj -/TT6 1 Tf -2.4004 0 TD -(-style input.)Tj -/TT4 1 Tf -10 0 0 10 126 489.8 Tm -(Display Types)Tj -/TT6 1 Tf -9 0 0 9 126 466.14 Tm -([This is not relevant in Interlisp-D])Tj -/TT8 1 Tf -0 -2.8889 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.0367 Tw -[( determines the type of display by calling )]TJ -/TT8 1 Tf -18.809 0 TD -0 Tw -(DISPLAYTERMP)Tj -/TT6 1 Tf -7.2012 0 TD -0.0367 Tw -(, which is initially defined to test the)Tj --29.0106 -1.2889 TD -0.1989 Tw -(value of the )Tj -/TT8 1 Tf -6.0508 0 TD -0 Tw -(GTTYP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1989 Tw -[( jsys. It returns either NIL \(for printing terminals\) or a small number giving)]TJ -/TT8 1 Tf --9.0513 -1.2889 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -(s internal code for the terminal type. The types )Tj -/TT8 1 Tf -21.4082 0 TD -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -( currently knows about:)Tj --23.2981 -2.0667 TD -(0 = glass tty \(capable of deleting chars by backspacing, but little else\))Tj --0.1111 -2 TD -(1 = Datamedia)Tj -T* -(2 = Heath)Tj --4 -2.8889 TD -0.17 Tw -(Only the Datamedia has full editing power. )Tj -/TT8 1 Tf -21.0914 0 TD -0 Tw -(DISPLAYTERMP)Tj -/TT6 1 Tf -7.2012 0 TD -0.17 Tw -[( has built into it the correct terminal)]TJ --28.2926 -1.2889 TD -0.1556 Tw -(types for Sumex and Stanford campus 20s: Datamedia = 11 on tenex, 5 on tops20; Heath = 18 on)Tj -0 -1.2222 TD -0.0778 Tw -[(Tenex, 25 on tops20. You can override those values by setting the variable )]TJ -/TT8 1 Tf -34.1592 0 TD -0 Tw -(DISPLAYTYPES)Tj -/TT6 1 Tf -7.2012 0 TD -0.0778 Tw -[( to be an)]TJ --41.3604 -1.2889 TD -0.1433 Tw -(association list associating the )Tj -/TT8 1 Tf -14.0499 0 TD -0 Tw -(GTTYP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1433 Tw -[( value with one of these internal codes. For example, Sumex)]TJ --17.0504 -1.2889 TD -(displays correspond to )Tj -/TT8 1 Tf -10.7723 0 TD -0.3444 Tw -(DISPLAYTYPES = \(\(11 . 1\) \(18 . 2\)\))Tj -/TT6 1 Tf -22.8144 0 TD -0.1433 Tw -[( [although this is actually)]TJ --33.5867 -1.2889 TD -0.0167 Tw -(compiled into )Tj -/TT8 1 Tf -6.424 0 TD -0 Tw -(DISPLAYTERMP)Tj -/TT6 1 Tf -7.2012 0 TD -0.0167 Tw -[( for speed]. Any display terminal other than Datamedia and Heath can)]TJ --13.6251 -1.2889 TD -0 Tw -(probably safely be assigned to "0" for glass tty.)Tj -0 -2.8889 TD -0.1078 Tw -(To add new terminal types, you have to choose a number for it, add new code to )Tj -/TT8 1 Tf -37.6691 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1078 Tw -[( for it and)]TJ --40.6696 -1.2889 TD -0.1511 Tw -[(recompile. The )]TJ -/TT8 1 Tf -7.5359 0 TD -0 Tw -(TTYIN)Tj -/TT6 1 Tf -3.0005 0 TD -0.1511 Tw -[( code specifies what the capabilities of the terminal are, and how to do the)]TJ --10.5363 -1.2889 TD -0.1489 Tw -(primitive operations: up, down, left, right, address cursor, erase screen, erase to end of line, insert)Tj -0 -1.2222 TD -0 Tw -(character, etc.)Tj -0 -2.8889 TD -0.5944 Tw -(For terminals lacking a meta key \(currently only Datamedias have it\), set the variable)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -0.0811 Tw -[( to the ascii code of an edit "prefix" \(i.e., anything typed preceded by the prefix is)]TJ --8.4014 -1.2889 TD -0.0833 Tw -[(considered to have the meta bit on\). If your )]TJ -/TT8 1 Tf -20.4193 0 TD -0 Tw -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -0.0833 Tw -[( is )]TJ -/TT8 1 Tf -1.3815 0 TD -0 Tw -(33Q)Tj -/TT6 1 Tf -1.8003 0 TD -0.0833 Tw -[( \(Escape\), you can type a real)]TJ --32.0024 -1.2889 TD -0.1389 Tw -(Escape by typing 3 of them \(2 wont do, since that means "Meta-Escape", a legitimate argument to)Tj -0 -1.2222 TD -0.2433 Tw -[(another command\). You could also define an Escape synonym with )]TJ -/TT8 1 Tf -33.017 0 TD -0 Tw -(TTYINREADMACROS)Tj -/TT6 1 Tf -9.0015 0 TD -0.2433 Tw -[( if you)]TJ --42.0185 -1.2889 TD -0.2411 Tw -[(wanted \(but currently it doesnt work in filename completion\). Setting )]TJ -/TT8 1 Tf -34.183 0 TD -0 Tw -(EDITPREFIXCHAR)Tj -/TT6 1 Tf -8.4014 0 TD -0.2411 Tw -[( for a)]TJ --42.5844 -1.2889 TD -0.2422 Tw -(terminal that is not equipped to handle the full range of editing functions \(only the Heath and)Tj -0 -1.2222 TD -0.0089 Tw -(Datamedia are currently so equipped\) is not guaranteed to work, i.e. the display will not always be up)Tj -T* -0.0544 Tw -(to date; but if you can keep track of what youre doing, together with an occasional control-R to help)Tj -T* -0 Tw -(out, go right ahead. )Tj -ET -endstream -endobj -120 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -122 0 obj -<< -/Length 5767 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-35)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT4 1 Tf --35.4 -4.38 TD -(Prettyprint)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -558.01 565.49 l -S -BT -/TT6 1 Tf -9 0 0 9 78 543.54 Tm -0.3033 Tw -(The standard way of printing out function definitions \(on the terminal or into files\) is to use)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj -/TT8 1 Tf --3.9344 -2.5422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PRETTYPRINT)Tj -/TT8 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FNS PRETTYDEFLG )Tj -/TT8 1 Tf -10.2017 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 269.4167 509.66 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 509.66 Tm -([Function])Tj -/TT14 1 Tf --35.4033 -1.8444 TD -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.1911 Tw -[( is a list of functions. If )]TJ -/TT14 1 Tf -12.0055 0 TD -0 Tw -(FNS)Tj -/TT6 1 Tf -1.8003 0 TD -0.1911 Tw -[( is atomic, its value is used\). The definitions of the)]TJ --15.606 -1.2889 TD -0.19 Tw -(functions are printed in a pretty format on the primary output file using the primary)Tj -0 -1.2222 TD -0 Tw -(readtable. For example, if )Tj -/TT8 1 Tf -11.7544 0 TD -(FACTORIAL)Tj -/TT6 1 Tf -5.4009 0 TD -( were defined by typing)Tj -/TT8 1 Tf --11.8219 -2 TD -(\(DEFINEQ \(FACTORIAL [LAMBDA \(N\) \(COND \(\(ZEROP N\) 1\))Tj -0 -1.2222 TD -(\(T \(ITIMES N \(FACTORIAL \(SUB1 N])Tj -0 -2 TD -(\(PRETTYPRINT \(FACTORIAL\)\)would print out)Tj -0 -1.2222 TD -(\(FACTORIAL)Tj -T* -( [LAMBDA \(N\))Tj -T* -( \(COND)Tj -T* -( \(\(ZEROP N\))Tj -T* -( 1\))Tj -T* -( \(T \(ITIMES N \(FACTORIAL \(SUB1 N]\))Tj -/TT14 1 Tf --5.3333 -2.0667 TD -(PRETTYDEFLG)Tj -/TT6 1 Tf -6.6011 0 TD -0.0656 Tw -[( is )]TJ -/TT8 1 Tf -1.346 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0656 Tw -[( when called from )]TJ -/TT8 1 Tf -8.5117 0 TD -0 Tw -(PRETTYDEF)Tj -/TT6 1 Tf -5.4009 0 TD -0.0656 Tw -[( \(and hence )]TJ -/TT8 1 Tf -5.5385 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0656 Tw -[(\). Among other)]TJ --32.799 -1.2889 TD -0.0578 Tw -(actions taken when this argument is true, )Tj -/TT8 1 Tf -18.903 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0578 Tw -[( indicates its progress in writing)]TJ --25.5041 -1.2889 TD -0.1567 Tw -(the current output file: whenever it starts a new function, it prints on the terminal the)Tj -0 -1.2222 TD -0.0533 Tw -(name of that function if more than 30 seconds \(real time\) have elapsed since the last time)Tj -T* -0 Tw -(it printed the name of a function.)Tj -/TT8 1 Tf -0 -2 TD -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0011 Tw -( operates correctly on functions that are )Tj -/TT8 1 Tf -17.7509 0 TD -0 Tw -(BROKEN)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.5011 0 TD -(BROKEN-IN)Tj -/TT6 1 Tf -5.4009 0 TD -(, )Tj -/TT8 1 Tf -0.5011 0 TD -(ADVISED)Tj -/TT6 1 Tf -4.2007 0 TD -0.0011 Tw -(, or)Tj --38.5564 -1.2889 TD -0.2467 Tw -(have been compiled with their definitions saved on their property lists: it prints the)Tj -0 -1.2222 TD -0.1589 Tw -[(original, pristine definition, but does not change the current state of the function. If a)]TJ -T* -0.0644 Tw -(function is not defined but is known to be on one of the files noticed by the file package,)Tj -/TT8 1 Tf -T* -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0756 Tw -[( loads in the definition \(using )]TJ -/TT8 1 Tf -13.7063 0 TD -0 Tw -(LOADFNS)Tj -/TT6 1 Tf -4.2007 0 TD -0.0756 Tw -(\) and prints it \(except when called)Tj --24.508 -1.2889 TD -0 Tw -(from )Tj -/TT8 1 Tf -2.6867 0 TD -(PRETTYDEF)Tj -/TT6 1 Tf -5.4009 0 TD -0.28 Tw -[(\). If )]TJ -/TT8 1 Tf -2.8429 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.28 Tw -[( is given an atom which is not the name of a)]TJ --17.5316 -1.2889 TD -0.13 Tw -[(function, but has a value, it prettyprints the value. Otherwise, )]TJ -/TT8 1 Tf -29.1546 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.13 Tw -[( attempts)]TJ --35.7557 -1.2889 TD -0.0267 Tw -[(spelling correction. If all fails, )]TJ -/TT8 1 Tf -13.7137 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0267 Tw -[( returns )]TJ -/TT8 1 Tf -3.7574 0 TD -0.0644 Tw -(\(FN NOT PRINTABLE\))Tj -/TT6 1 Tf -10.9306 0 TD -0.0267 Tw -[(. Note that)]TJ -/TT8 1 Tf --35.0029 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0178 Tw -[( will return )]TJ -/TT8 1 Tf -5.2906 0 TD -0.0433 Tw -(\(FN NOT PRINTABLE\))Tj -/TT6 1 Tf -10.8884 0 TD -0.0178 Tw -[( if )]TJ -/TT8 1 Tf -1.1596 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0178 Tw -[( does not have an accessable expr)]TJ --25.1399 -1.2889 TD -0 Tw -(definition, or if it doesnt have any definition at all.)Tj -/TT8 1 Tf --2.6667 -2.4756 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PP)Tj -/TT8 1 Tf -1.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FN)Tj -1.1999 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( ... FN)Tj -4.2 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\))Tj -/F1 1 Tf -10 0 0 10 188.4008 150.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 359.33 150.78 Tm -([NLambda NoSpread Function])Tj --25.9256 -2.1778 TD -0.1678 Tw -(For prettyprinting functions to the terminal. )Tj -/TT8 1 Tf -21.1168 0 TD -0 Tw -(PP)Tj -/TT6 1 Tf -1.2002 0 TD -0.1678 Tw -[( calls )]TJ -/TT8 1 Tf -2.7853 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1678 Tw -[( with the primary)]TJ --31.7034 -1.2889 TD -0.1789 Tw -(output file set to )Tj -/TT8 1 Tf -8.216 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1789 Tw -[( and the primary read table set to )]TJ -/TT8 1 Tf -16.3676 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.1789 Tw -[(. The primary output file and)]TJ --25.7839 -1.2889 TD -0 Tw -(primary readtable are restored after printing.)Tj -/TT8 1 Tf -0 -2 TD -0.0756 Tw -(\(PP FOO\))Tj -/TT6 1 Tf -4.8763 0 TD -0.0311 Tw -[( is equivalent to )]TJ -/TT8 1 Tf -7.3876 0 TD -0.0756 Tw -(\(PRETTYPRINT \(FOO\)\))Tj -/TT6 1 Tf -12.0775 0 TD -0 Tw -(; )Tj -/TT8 1 Tf -0.5311 0 TD -0.0756 Tw -[( \(PP FOO FIE\))]TJ -/TT6 1 Tf -8.0279 0 TD -0.0311 Tw -[( is equivalent to)]TJ -/TT8 1 Tf --32.9005 -1.2889 TD -0 Tw -(\(PRETTYPRINT \(FOO FIE\)\))Tj -/TT6 1 Tf -14.4023 0 TD -(.)Tj -ET -endstream -endobj -123 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -125 0 obj -<< -/Length 6785 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-36)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0544 Tw -(As described above, when )Tj -/TT8 1 Tf -12.0762 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0544 Tw -(, and hence )Tj -/TT8 1 Tf -5.4221 0 TD -0 Tw -(PP)Tj -/TT6 1 Tf -1.2002 0 TD -0.0544 Tw -(, is called with the name of a function that is)Tj --25.2996 -1.2889 TD -0.0267 Tw -(not defined, but whose definition is on a file known to the file package, the definition is automatically)Tj -0 -1.2222 TD -0.2044 Tw -[(read in and then prettyprinted. However, if the user does not intend on editing or running the)]TJ -T* -0.1567 Tw -(definition, but simply wants to see the definition, the function )Tj -/TT8 1 Tf -29.1604 0 TD -0 Tw -(PF)Tj -/TT6 1 Tf -1.2002 0 TD -0.1567 Tw -[( described below can be used to)]TJ --30.3606 -1.2889 TD -0.1133 Tw -[(simply copy the corresponding characters from the file to the terminal. This results in a savings in)]TJ -0 -1.2222 TD -0.0433 Tw -(both space and time, since it is not necessary to allocate storage to actually read in the definition, and)Tj -T* -0 Tw -(it is not necessary to re-prettyprint it \(since the function is already in prettyprint format on the file\).)Tj -/TT8 1 Tf -2.6667 -2.4756 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PF)Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FN FROMFILES TOFILE)Tj -/TT8 1 Tf -11.4019 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 279.6211 480.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 480.06 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.2244 Tw -(Copies the definition of )Tj -/TT14 1 Tf -11.5457 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.2244 Tw -[( found on each of the files in )]TJ -/TT14 1 Tf -14.5602 0 TD -0 Tw -(FROMFILES)Tj -/TT6 1 Tf -5.4009 0 TD -0.2244 Tw -[( to )]TJ -/TT14 1 Tf -1.821 0 TD -0 Tw -(TOFILE)Tj -/TT6 1 Tf -3.6006 0 TD -0.2244 Tw -[(. If)]TJ -/TT14 1 Tf --38.1285 -1.2889 TD -0 Tw -(TOFILE )Tj -/TT8 1 Tf -4.3707 0 TD -0.17 Tw -(= NIL)Tj -/TT6 1 Tf -3.1705 0 TD -0.0711 Tw -(, defaults to )Tj -/TT8 1 Tf -5.6523 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0711 Tw -[(. If )]TJ -/TT14 1 Tf -1.8833 0 TD -0 Tw -(FROMFILES)Tj -/TT8 1 Tf -5.4009 0 TD -0.17 Tw -[( = NIL)]TJ -/TT6 1 Tf -3.9406 0 TD -0.0711 Tw -(, defaults to )Tj -/TT8 1 Tf -5.6523 0 TD -0.17 Tw -(\(WHEREIS FN NIL)Tj --30.6706 -1.2889 TD -0 Tw -(T\))Tj -/TT6 1 Tf -1.2002 0 TD -( \(see Chapter 17\). The typical usage of )Tj -/TT8 1 Tf -17.2642 0 TD -(PF)Tj -/TT6 1 Tf -1.2002 0 TD -( is simply to type ")Tj -/TT8 1 Tf -8.2163 0 TD -(PF FN)Tj -/TT6 1 Tf -3.0005 0 TD -(".)Tj -/TT8 1 Tf --30.8813 -2.0667 TD -(PF)Tj -/TT6 1 Tf -1.2002 0 TD -0.0211 Tw -[( prints a message if it cant find a file on )]TJ -/TT14 1 Tf -18.056 0 TD -0 Tw -(FROMFILES)Tj -/TT6 1 Tf -5.4009 0 TD -0.0211 Tw -(, or it cant find the function )Tj -/TT8 1 Tf -12.7469 0 TD -0 Tw -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -0.0211 Tw -[( on)]TJ --38.6041 -1.2889 TD -0 Tw -(a file.)Tj --5.3333 -2.8889 TD -0.0811 Tw -(When printing to the terminal, )Tj -/TT8 1 Tf -14.1795 0 TD -0 Tw -(PF)Tj -/TT6 1 Tf -1.2002 0 TD -0.0811 Tw -[( performs several transformations on the characters in the file that)]TJ --15.3797 -1.2889 TD -0 Tw -(comprise the definition for )Tj -/TT8 1 Tf -12.0557 0 TD -(FN)Tj -/TT6 1 Tf -1.2002 0 TD -(:)Tj --11.3392 -2.0667 TD -0.3767 Tw -[(1.)-1333.3(Font information is stripped out \(except in Interlisp-D, whose display supports)]TJ -2.0833 -1.2222 TD -0 Tw -(multiple fonts\))Tj --2.0833 -2 TD -0.1367 Tw -[(2.)-1333.3(Occurrences of the )]TJ -/TT8 1 Tf -10.9841 0 TD -0 Tw -(CHANGECHAR)Tj -/TT6 1 Tf -6.001 0 TD -0.1367 Tw -[( \(see the Special Prettyprint Controls section below\))]TJ --14.9017 -1.2889 TD -0 Tw -(are not printed)Tj --2.0833 -2 TD -0.0389 Tw -[(3.)-1333.3(Since functions typically tend to be printed to a file with a larger linelength than when)]TJ -2.0833 -1.2222 TD -0.0711 Tw -(printing to a terminal, the number of leading spaces on each line is cut in half \(unless)Tj -/TT8 1 Tf -T* -0 Tw -(PFDEFAULT)Tj -/TT6 1 Tf -5.4009 0 TD -( is )Tj -/TT8 1 Tf -1.2148 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(; initially )Tj -/TT8 1 Tf -4.1694 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(\))Tj --15.2689 -2.0667 TD -0.2522 Tw -[(4.)-1333.3(Comments are elided, if )]TJ -/TT8 1 Tf -13.9335 0 TD -0 Tw -(**COMMENT**FLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.2522 Tw -[( is non-)]TJ -/TT8 1 Tf -3.7623 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2522 Tw -[( \(see the Comment Feature)]TJ --25.8141 -1.2889 TD -0 Tw -(section below\). )Tj -/TT8 1 Tf --1.3333 -2.4756 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SEE)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FROMFILE TOFILE)Tj -/TT8 1 Tf -9.0015 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 263.4149 220.78 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 220.78 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.0611 Tw -(Copies all of the text from )Tj -/TT14 1 Tf -12.0688 0 TD -0 Tw -(FROMFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0611 Tw -[( to )]TJ -/TT14 1 Tf -1.4943 0 TD -0 Tw -(TOFILE)Tj -/TT6 1 Tf -3.6006 0 TD -0.0611 Tw -[( \(defaults to )]TJ -/TT8 1 Tf -5.7053 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -(\), processing all text as )Tj -/TT8 1 Tf -10.5336 0 TD -0 Tw -(PF)Tj -/TT6 1 Tf --38.8035 -1.2889 TD -(does. Used to display the contents of files on the terminal.)Tj -/TT8 1 Tf --2.6667 -2.4756 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PP*)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 187.8026 170.3 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 170.3 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --28.5922 -1.4311 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PF*)Tj -/TT8 1 Tf -1.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FN FROMFILES TOFILE)Tj -/TT8 1 Tf -11.4019 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 285.0184 157.42 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 157.42 Tm -([NLambda NoSpread Function])Tj -/TT8 1 Tf --28.5922 -1.4311 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(SEE*)Tj -/TT8 1 Tf -2.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FROMFILE TOFILE)Tj -/TT8 1 Tf -9.0015 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 268.8149 144.54 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 407.33 144.54 Tm -([NLambda NoSpread Function])Tj --25.9256 -1.8444 TD -0.5867 Tw -(These functions operate exactly like )Tj -/TT8 1 Tf -18.9465 0 TD -0 Tw -(PP)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -1.0867 0 TD -(PF)Tj -/TT6 1 Tf -1.2002 0 TD -0.5867 Tw -(, and )Tj -/TT8 1 Tf -3.6162 0 TD -0 Tw -(SEE)Tj -/TT6 1 Tf -1.8003 0 TD -0.5867 Tw -(, except that they bind)Tj -/TT8 1 Tf --27.8501 -1.2889 TD -0 Tw -(**COMMENT**FLG)Tj -/TT6 1 Tf -8.4014 0 TD -( to )Tj -/TT8 1 Tf -1.3721 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, so comments are printed in full.)Tj --16.9071 -2.9556 TD -0.1378 Tw -(While the function )Tj -/TT8 1 Tf -8.9006 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1378 Tw -[( prints entire function definitions, the function )]TJ -/TT8 1 Tf -21.693 0 TD -0 Tw -(PRINTDEF)Tj -/TT6 1 Tf -4.8008 0 TD -0.1378 Tw -[( can be)]TJ --41.9955 -1.2889 TD -0 Tw -(used to print parts of functions, or arbitrary Interlisp structures:)Tj -ET -endstream -endobj -126 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -128 0 obj -<< -/Length 6222 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-37)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 102 568.26 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(PRINTDEF)Tj -/TT8 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(EXPR LEFT DEF TAILFLG FNSLST FILE)Tj -/TT8 1 Tf -19.8032 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 339.6307 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 568.26 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0189 Tw -(Prints the expression )Tj -/TT14 1 Tf -9.5528 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0189 Tw -[( in a pretty format on )]TJ -/TT14 1 Tf -9.7808 0 TD -0 Tw -(FILE)Tj -/TT6 1 Tf -2.4004 0 TD -0.0189 Tw -[( using the primary readtable. )]TJ -/TT14 1 Tf -13.462 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf --37.5963 -1.2889 TD -0.1911 Tw -(is the left hand margin \()Tj -/TT8 1 Tf -11.5517 0 TD -0 Tw -(LINELENGTH)Tj -/TT6 1 Tf -6.001 0 TD -0.1911 Tw -[( determines the right hand margin\). )]TJ -/TT8 1 Tf -17.639 0 TD -0 Tw -(PRINTDEF)Tj -/TT6 1 Tf --35.1918 -1.2889 TD -0.0089 Tw -(initially performs )Tj -/TT8 1 Tf -7.9929 0 TD -0.0211 Tw -(\(TAB LEFT T\))Tj -/TT6 1 Tf -7.2434 0 TD -0.0089 Tw -(, which means to space to position )Tj -/TT14 1 Tf -15.4616 0 TD -0 Tw -(LEFT)Tj -/TT6 1 Tf -2.4004 0 TD -0.0089 Tw -(, unless already)Tj --33.0983 -1.2889 TD -0 Tw -(beyond this position, in which case it does nothing.)Tj -/TT14 1 Tf -0 -2 TD -(DEF)Tj -/TT8 1 Tf -1.8003 0 TD -0.0067 Tw -[( = T)]TJ -/TT6 1 Tf -2.4137 0 TD -0.0005 Tc -0.0028 Tw -( means )Tj -/TT14 1 Tf -3.3743 0 TD -0 Tc -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.0001 Tc -0.0032 Tw -( is a function definition, or a piece of one. If )Tj -/TT14 1 Tf -19.6845 0 TD -0 Tc -0 Tw -(DEF )Tj -/TT8 1 Tf -2.4071 0 TD -0.0067 Tw -(= NIL)Tj -/TT6 1 Tf -3.0072 0 TD -0.0033 Tw -(, no special)Tj --35.0875 -1.2889 TD -0.1256 Tw -(action is taken for )Tj -/TT8 1 Tf -8.6233 0 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -(s, )Tj -/TT8 1 Tf -1.3272 0 TD -(PROG)Tj -/TT6 1 Tf -2.4004 0 TD -(s, )Tj -/TT8 1 Tf -1.3272 0 TD -(COND)Tj -/TT6 1 Tf -2.4004 0 TD -0.1256 Tw -(s, comments, )Tj -/TT8 1 Tf -6.5192 0 TD -0 Tw -(CLISP)Tj -/TT6 1 Tf -3.0005 0 TD -0.1256 Tw -(, etc. )Tj -/TT8 1 Tf -2.8757 0 TD -0 Tw -(DEF)Tj -/TT6 1 Tf -1.8003 0 TD -0.1256 Tw -[( is )]TJ -/TT8 1 Tf -1.466 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1256 Tw -[( when)]TJ -/TT8 1 Tf --37.141 -1.2889 TD -0 Tw -(PRETTYDEF)Tj -/TT6 1 Tf -5.4009 0 TD -0.4711 Tw -[( calls )]TJ -/TT8 1 Tf -3.3919 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.4711 Tw -[( to print variables and property lists, and when)]TJ -/TT8 1 Tf --15.3939 -1.2889 TD -0 Tw -(PRINTDEF)Tj -/TT6 1 Tf -4.8008 0 TD -( is called from the editor via the command )Tj -/TT8 1 Tf -18.9639 0 TD -(PPV)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT14 1 Tf --25.5649 -2.0667 TD -(TAILFLG )Tj -/TT8 1 Tf -5.3708 0 TD -0.57 Tw -(= T)Tj -/TT6 1 Tf -2.3703 0 TD -0.2378 Tw -[( means )]TJ -/TT14 1 Tf -3.8432 0 TD -0 Tw -(EXPR)Tj -/TT6 1 Tf -2.4004 0 TD -0.2378 Tw -[( is interpreted as a tail of a list, to be printed without)]TJ --13.9847 -1.2889 TD -0 Tw -(parentheses.)Tj -/TT14 1 Tf -0 -2 TD -(FNSLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.1556 Tw -[( is for use for printing with multiple fonts \(see Chapter 27\). )]TJ -/TT8 1 Tf -28.5647 0 TD -0 Tw -(PRINTDEF)Tj -/TT6 1 Tf -4.8008 0 TD -0.1556 Tw -[( prints)]TJ --36.9661 -1.2889 TD -0.3956 Tw -(occurrences of any function in the list )Tj -/TT8 1 Tf -19.5697 0 TD -0 Tw -(FNSLST)Tj -/TT6 1 Tf -3.6006 0 TD -0.3956 Tw -[( in a different font, for emphasis.)]TJ -/TT8 1 Tf --23.1703 -1.2889 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -( passes as )Tj -/TT8 1 Tf -4.5254 0 TD -(FNSLST)Tj -/TT6 1 Tf -3.6006 0 TD -( the list of all functions on the file being made.)Tj -/TT4 1 Tf -10 0 0 10 78 362.72 Tm -(Comment Feature)Tj -/TT6 1 Tf -9 0 0 9 78 339.06 Tm -0.0533 Tw -(A facility for annotating Interlisp functions is provided in )Tj -/TT8 1 Tf -26.149 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0533 Tw -[(. Any expression beginning)]TJ --32.75 -1.2889 TD -0 Tw -(with the atom )Tj -/TT8 1 Tf -6.4253 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -( is interpreted as a comment and printed in the right margin. Example:)Tj -/TT8 1 Tf -3.6413 -2 TD -(\(FACTORIAL)Tj -0 -1.2222 TD -( [LAMBDA \(N\) \(* COMPUTES N!\))Tj -T* -( \(COND)Tj -T* -( \(\(ZEROP N\) \(* 0! = 1\))Tj -T* -( 1\))Tj -T* -( \(T \(* RECURSIVE DEFINITION:)Tj -T* -( N! = N*N-1!\))Tj -T* -( \(ITIMES N \(FACTORIAL \(SUB1 N]\))Tj -/TT6 1 Tf --10.6667 -2.9556 TD -0.1989 Tw -[(These comments actually form a part of the function definition. Accordingly, )]TJ -/TT8 1 Tf -36.8188 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1989 Tw -[( is defined as an)]TJ --37.4189 -1.2889 TD -0.0022 Tw -(nlambda nospread function that returns its argument, similar to )Tj -/TT8 1 Tf -28.5351 0 TD -0 Tw -(QUOTE)Tj -/TT6 1 Tf -3.0005 0 TD -0.0001 Tc -0.0021 Tw -(. When running an interpreted)Tj --31.5356 -1.2889 TD -0 Tc -0 Tw -(function, )Tj -/TT8 1 Tf -4.287 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.08 Tw -[( is entered the same as any other Interlisp function. Therefore, comments should only be)]TJ --4.8871 -1.2889 TD -0.1189 Tw -(placed where they will not harm the computation, i.e., where a quoted expression could be placed.)Tj -0 -1.2222 TD -0 Tw -(For example, writing)Tj -/TT8 1 Tf -10.6667 -1.9333 TD -(\(ITIMES N \(FACTORIAL \(SUB1 N\)\) \(* RECURSIVE)Tj -0 -1.2222 TD -(DEFINITION\)\))Tj -/TT6 1 Tf --10.6667 -2.9556 TD -0.2556 Tw -(in the above function would cause an error when )Tj -/TT8 1 Tf -24.2639 0 TD -0 Tw -(ITIMES)Tj -/TT6 1 Tf -3.6006 0 TD -0.2556 Tw -[( attempted to multiply )]TJ -/TT8 1 Tf -11.2678 0 TD -0 Tw -(N)Tj -/TT6 1 Tf -0.6001 0 TD -(, )Tj -/TT8 1 Tf -0.7556 0 TD -(N-1!)Tj -/TT6 1 Tf -2.4004 0 TD -0.2556 Tw -(, and)Tj -/TT8 1 Tf --42.8883 -1.2889 TD -0 Tw -(RECURSIVE)Tj -/TT6 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -2.9556 TD -0.1489 Tw -(For compilation purposes, )Tj -/TT8 1 Tf -12.3173 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1489 Tw -[( is defined as a macro which compiles into no instructions \(unless the)]TJ --12.9174 -1.2889 TD -0.1689 Tw -(comment has been placed where it has been used for value, in which case the compiler prints an)Tj -0 -1.2222 TD -0.1311 Tw -(appropriate error message and compiles )Tj -/TT8 1 Tf -18.7469 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1311 Tw -[( as )]TJ -/TT8 1 Tf -1.686 0 TD -0 Tw -(QUOTE)Tj -/TT6 1 Tf -3.0005 0 TD -0.1311 Tw -[(\). Thus, the compiled form of a function with)]TJ -ET -endstream -endobj -129 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -131 0 obj -<< -/Length 5610 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-38)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.1567 Tw -(comments does not use the extra atom and list structure storage required by the comments in the)Tj -0 -1.2222 TD -0 Tw -(source \(interpreted\) code. This is the way the comment feature is intended to be used.)Tj -0 -2.8889 TD -0.0389 Tw -(A comment of the form )Tj -/TT8 1 Tf -10.7877 0 TD -0.0922 Tw -(\(* E X\))Tj -/TT6 1 Tf -4.3851 0 TD -0.0389 Tw -[( causes )]TJ -/TT8 1 Tf -3.4513 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0389 Tw -[( to be evaluated at prettyprint time, as well as printed as a)]TJ --19.2242 -1.2889 TD -0.0344 Tw -[(comment in the usual way. For example, )]TJ -/TT8 1 Tf -18.7355 0 TD -0.0833 Tw -(\(* E \(RADIX 8\)\))Tj -/TT6 1 Tf -9.2515 0 TD -0.0344 Tw -[( as a comment in a function containing)]TJ --27.987 -1.2889 TD -0 Tw -(octal numbers can be used to change the radix to produce more readable printout.)Tj -0 -2.8889 TD -0.1267 Tw -(The comment character )Tj -/TT8 1 Tf -11.0113 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1267 Tw -[( is stored in the variable )]TJ -/TT8 1 Tf -11.5901 0 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.1267 Tw -[(. The user can set it to some other)]TJ --29.2025 -1.2889 TD -0 Tw -(value, e.g. ")Tj -/TT8 1 Tf -5.0942 0 TD -(;)Tj -/TT6 1 Tf -0.6001 0 TD -(", and use this to indicate comments.)Tj -/TT12 1 Tf --3.0277 -2.5422 TD -(COMMENTFLG)Tj -/F1 1 Tf -10 0 0 10 204 448.86 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 448.86 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT8 1 Tf -0.9921 0 TD -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0722 Tw -[( of an expression is )]TJ -/TT8 1 Tf -9.0237 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0722 Tw -[( to )]TJ -/TT8 1 Tf -1.5165 0 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0722 Tw -(, the expression is treated as a comment by)Tj -/TT8 1 Tf --20.5338 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0989 Tw -(. )Tj -/TT8 1 Tf -0.9478 0 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0989 Tw -[( is initialized to )]TJ -/TT8 1 Tf -7.4356 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0989 Tw -[(. Note that whatever atom is chosen for)]TJ -/TT8 1 Tf --21.5855 -1.2889 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0022 Tw -( should also have an appropriate function definition and compiler macro, for)Tj --6.001 -1.2889 TD -0 Tw -(example, by copying those of )Tj -/TT8 1 Tf -13.1704 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj --19.1038 -2.9556 TD -0.2322 Tw -[(Comments are designed mainly for documenting listings. Therefore, when prettyprinting to the)]TJ -0 -1.2222 TD -0.4144 Tw -(terminal, comments are suppressed and printed as the string )Tj -/TT8 1 Tf -30.8213 0 TD -0 Tw -(**COMMENT**)Tj -/TT6 1 Tf -6.6011 0 TD -0.4144 Tw -[(. The value of)]TJ -/TT8 1 Tf --37.4224 -1.2889 TD -0 Tw -(**COMMENT**FLG)Tj -/TT6 1 Tf -8.4014 0 TD -( determines the action.)Tj -/TT12 1 Tf --5.7347 -2.5422 TD -(**COMMENT**FLG)Tj -/F1 1 Tf -10 0 0 10 225.6123 325.38 Tm --0.0012 Tc -[( )-26293.2([)]TJ -/TT6 1 Tf -9 0 0 9 497.41 325.38 Tm -0 Tc -(Variable])Tj --35.9344 -1.8444 TD -(If )Tj -/TT8 1 Tf -1.501 0 TD -(**COMMENT**FLG)Tj -/TT6 1 Tf -8.4014 0 TD -0.5811 Tw -[( is )]TJ -/TT8 1 Tf -2.3771 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.5811 Tw -[(, comments are printed. Otherwise, the value of)]TJ -/TT8 1 Tf --14.0798 -1.2889 TD -0 Tw -(**COMMENT**FLG)Tj -/TT6 1 Tf -8.4014 0 TD -( is printed. Initially " )Tj -/TT8 1 Tf -9.5864 0 TD -(**COMMENT** )Tj -/TT6 1 Tf -7.2012 0 TD -(".)Tj -/TT8 1 Tf -10 0 0 10 150 274.3 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 274.3 Tm -(COMMENT1)Tj -/F2 1 Tf -10 0 0 10 199.2 274.3 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.07 274.3 Tm -(L)Tj -/TT8 1 Tf -0.6001 0 TD -( )Tj -10 0 0 10 218.2726 274.3 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 274.3 Tm -([Function])Tj --35.4033 -1.8833 TD -0.2322 Tw -(Prints the comment )Tj -/TT14 1 Tf -9.5985 0 TD -0 Tw -(L)Tj -/TT6 1 Tf -0.6001 0 TD -0.2322 Tw -(. )Tj -/TT8 1 Tf -1.2144 0 TD -0 Tw -(COMMENT1)Tj -/TT6 1 Tf -4.8008 0 TD -0.2322 Tw -[( is a separate function to permit the user to write)]TJ --16.2138 -1.2889 TD -0.4 Tw -[(prettyprint macros that use the regular comment printer. For example, to cause)]TJ -0 -1.2222 TD -0.0056 Tw -(comments to be printed at a larger than normal linelength, one could put an entry for )Tj -/TT8 1 Tf -38.0098 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0056 Tw -[( on)]TJ -/TT8 1 Tf --38.6099 -1.2889 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -(:)Tj -/TT8 1 Tf --4.8683 -2 TD -(\(* LAMBDA \(X\) \(RESETFORM \(LINELENGTH 100\) )Tj -0 -1.2222 TD -(\(COMMENT1 X\)\)\))Tj -/TT6 1 Tf --5.3333 -2.0667 TD -(This macro resets the line length, prints the comment, and then restores the line length.)Tj -/TT8 1 Tf -0 -2 TD -(COMMENT1)Tj -/TT6 1 Tf -4.8008 0 TD -0.0133 Tw -[( expects to be called from within the environment established by )]TJ -/TT8 1 Tf -28.9152 0 TD -0 Tw -(PRINTDEF)Tj -/TT6 1 Tf -4.8008 0 TD -0.0133 Tw -(, so)Tj --38.5168 -1.2889 TD -0 Tw -(ordinarily the user should call it only from within prettyprint macros.)Tj -/TT4 1 Tf -10 0 0 10 126 116.61 Tm -(Comment Pointers)Tj -/TT6 1 Tf -9 0 0 9 126 92.95 Tm -0.3022 Tw -(For a well-commented collection of programs, the list structure, atom, and print name storage)Tj -0 -1.2222 TD -0.0856 Tw -[(required to represent the comments in core can be significant. If the comments already appear on a)]TJ -T* -0.0456 Tw -(file and are not needed for editing, a significant savings in storage can be achieved by simply leaving)Tj -T* -0.0189 Tw -(the text of the comment on the file when the file is loaded, and instead retaining in core only a pointer)Tj -T* -0.2056 Tw -[(to the comment. When this feature is enabled, * is defined as a read macro \(see Chapter 25\) in)]TJ -ET -endstream -endobj -132 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 104 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -134 0 obj -<< -/Length 6190 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-39)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(FILERDTBL)Tj -/TT6 1 Tf -5.4009 0 TD -0.1778 Tw -[( which, instead of reading in the entire text of the comment, constructs an expression)]TJ --5.4009 -1.2889 TD -0 Tw -(containing )Tj -2.0611 -2 TD -[()-1332.9(The name of the file in which the text of the comment is contained)]TJ -T* -[()-1332.9(The address of the first character of the comment)]TJ -T* -[()-1332.9(The number of characters in the comment)]TJ -T* -0.0411 Tw -[()-1332.9(A)0( flag indicating whether the comment appeared at the right hand margin or centered)]TJ -1.9389 -1.2222 TD -0 Tw -(on the page )Tj --4 -2.8889 TD -0.1456 Tw -(For output purposes, )Tj -/TT8 1 Tf -10.0119 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.1456 Tw -[( is defined on )]TJ -/TT8 1 Tf -6.8107 0 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -0.1456 Tw -[( \(see the Prettyprint Control Functions)]TJ --27.6244 -1.2889 TD -0.1589 Tw -(section below\) so that it prints the comments represented by such pointers by simply copying the)Tj -0 -1.2222 TD -0.33 Tw -[(corresponding characters from one file to another, or to the terminal. Normal comments are)]TJ -T* -0 Tw -(processed the same as before, and can be intermixed freely with comment pointers.)Tj -0 -2.8889 TD -(The comment pointer feature is controlled by the function )Tj -/TT8 1 Tf -25.8311 0 TD -(NORMALCOMMENTS)Tj -/TT6 1 Tf -8.4014 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 366.46 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 366.46 Tm -(NORMALCOMMENTS)Tj -/F2 1 Tf -10 0 0 10 183.6 366.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.47 366.46 Tm -(FLG)Tj -/TT8 1 Tf -10 0 0 10 202.6726 366.46 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 366.46 Tm -([Function])Tj --35.4033 -1.8833 TD -(If )Tj -/TT14 1 Tf -1.0021 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0822 Tw -[( is )]TJ -/TT8 1 Tf -1.3793 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0822 Tw -[(, the comment pointer feature is enabled. If )]TJ -/TT14 1 Tf -20.2351 0 TD -0 Tw -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -0.0822 Tw -[( is )]TJ -/TT8 1 Tf -1.3793 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -0.0822 Tw -(, the comment pointer)Tj --29.9968 -1.2889 TD -0 Tw -(feature is disabled \(the default\).)Tj -/TT8 1 Tf -0 -2 TD -(NORMALCOMMENTS)Tj -/TT6 1 Tf -8.4014 0 TD -0.1367 Tw -[( can be changed as often as desired. Thus, some files can be loaded)]TJ --8.4014 -1.2889 TD -0 Tw -(normally, and others with their comments converted to comment pointers.)Tj --5.3333 -2.8889 TD -0.1033 Tw -(For convenience of editing selected comments, an edit macro, )Tj -/TT8 1 Tf -28.3206 0 TD -0 Tw -(GET*)Tj -/TT6 1 Tf -2.4004 0 TD -0.1033 Tw -(, is included, which loads in the)Tj --30.721 -1.2889 TD -0.1956 Tw -[(text of the corresponding comment. The editors )]TJ -/TT8 1 Tf -23.3457 0 TD -0 Tw -(PP*)Tj -/TT6 1 Tf -1.8003 0 TD -0.1956 Tw -[( command, in contrast, prints the comment)]TJ --25.146 -1.2889 TD -0.0067 Tw -(without reading it by simply copying the corresponding characters to the terminal. )Tj -/TT8 1 Tf -37.1917 0 TD -0 Tw -(GET*)Tj -/TT6 1 Tf -2.4004 0 TD -0.0067 Tw -[( is defined in)]TJ --39.592 -1.2889 TD -0 Tw -(terms of )Tj -/TT8 1 Tf -3.8857 0 TD -(GETCOMMENT)Tj -/TT6 1 Tf -6.001 0 TD -(:)Tj -/TT8 1 Tf -10 0 0 10 102 224.63 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 224.63 Tm -(GETCOMMENT)Tj -/TT8 1 Tf -5.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X DESTFL )Tj -/TT8 1 Tf -10 0 0 10 221.4097 224.63 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 224.63 Tm -([Function])Tj --35.4033 -1.8833 TD -(If )Tj -/TT14 1 Tf -0.9955 0 TD -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0756 Tw -[( is a comment pointer, replaces )]TJ -/TT14 1 Tf -14.3938 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0756 Tw -[( with the actual text of the comment, which it reads)]TJ --16.5894 -1.2889 TD -0.0078 Tw -[(from its file. Returns )]TJ -/TT14 1 Tf -9.6077 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0078 Tw -[( in all cases. If )]TJ -/TT14 1 Tf -6.6922 0 TD -0 Tw -(DESTFL)Tj -/TT6 1 Tf -3.6006 0 TD -0.0078 Tw -[( is non-)]TJ -/TT8 1 Tf -3.2734 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.0078 Tw -(, it is the name of an open file, to)Tj --25.5743 -1.2889 TD -0 Tw -(which )Tj -/TT8 1 Tf -2.9996 0 TD -(GETCOMMENT)Tj -/TT6 1 Tf -6.001 0 TD -0.0167 Tw -[( copies the comment; in this case, )]TJ -/TT14 1 Tf -15.0239 0 TD -0 Tw -(X)Tj -/TT6 1 Tf -0.6001 0 TD -0.0167 Tw -[( remains a comment pointer, but it)]TJ --24.6245 -1.2889 TD -0.2244 Tw -(has been changed to point to the new file \(unless )Tj -/TT8 1 Tf -23.9998 0 TD -0 Tw -(NORMALCOMMENTS)Tj -/TT6 1 Tf -8.4014 0 TD -0.2244 Tw -[( has been set to)]TJ -/TT8 1 Tf --32.4012 -1.2889 TD -0 Tw -(DONTUPDATE)Tj -/TT6 1 Tf -6.001 0 TD -(\).)Tj -/TT8 1 Tf -10 0 0 10 102 138.4 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 138.4 Tm -(PRINTCOMMENT)Tj -/F2 1 Tf -10 0 0 10 172.8 138.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 175.67 138.4 Tm -(X)Tj -/TT8 1 Tf -10 0 0 10 181.0709 138.4 Tm -(\))Tj -/F1 1 Tf -0.6001 0 TD -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 138.4 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0611 Tw -(Defined as the prettyprint macro for )Tj -/TT8 1 Tf -16.6469 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0611 Tw -(: copies the comment to the primary output file by)Tj --17.247 -1.2889 TD -0 Tw -(using )Tj -/TT8 1 Tf -2.7061 0 TD -(GETCOMMENT)Tj -/TT6 1 Tf -6.001 0 TD -(.)Tj -/TT8 1 Tf -10 0 0 10 102 86.97 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 86.97 Tm -(READCOMMENT)Tj -/F2 1 Tf -10 0 0 10 167.4 86.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 86.97 Tm -(FL RDTBL LST)Tj -/TT8 1 Tf -7.2012 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 240.4814 86.97 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 444.63 86.97 Tm -([Function])Tj --35.4033 -1.8833 TD -0.2711 Tw -(Defined as the read macro for )Tj -/TT8 1 Tf -15.0129 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.2711 Tw -[( in )]TJ -/TT8 1 Tf -1.9153 0 TD -0 Tw -(FILERDTBL)Tj -/TT6 1 Tf -5.4009 0 TD -0.2711 Tw -(: if )Tj -/TT8 1 Tf -1.9162 0 TD -0 Tw -(NORMALCOMMENTSFLG)Tj -/TT6 1 Tf -10.2017 0 TD -0.2711 Tw -[( is )]TJ -/TT8 1 Tf -1.7571 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2711 Tw -(, it)Tj --38.6044 -1.2889 TD -0.15 Tw -(constructs a comment pointer, unless it believes the expression beginning with * is not)Tj -0 -1.2222 TD -0 Tw -(actually a comment, e.g., if the next atom is ")Tj -/TT8 1 Tf -19.6943 0 TD -(.)Tj -/TT6 1 Tf -0.6001 0 TD -(" or )Tj -/TT8 1 Tf -1.812 0 TD -(E)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -135 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 104 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -137 0 obj -<< -/Length 6463 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-40)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT6 1 Tf -9 0 0 9 126 569.54 Tm -0.0422 Tw -[(Note that a certain amount of care is required in using the comment pointer feature. Since the text of)]TJ -0 -1.2222 TD -0.0433 Tw -(the comment resides on the file pointed to by the comment pointer, that file must remain in existence)Tj -T* -0.1933 Tw -(as long as the comment is needed. )Tj -/TT8 1 Tf -17.1048 0 TD -0 Tw -(GETCOMMENT)Tj -/TT6 1 Tf -6.001 0 TD -0.1933 Tw -[( helps out by changing the comment pointer to)]TJ --23.1058 -1.2889 TD -0.2389 Tw -[(always point at the most recent file that the comment lives on. However, if the user has been)]TJ -0 -1.2222 TD -0.0522 Tw -(performing repeated )Tj -/TT8 1 Tf -9.5356 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0522 Tw -(s \(see Chapter 17\) in which differing functions have changed at each)Tj --14.3364 -1.2889 TD -0.0678 Tw -(invocation of )Tj -/TT8 1 Tf -6.1873 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0678 Tw -(, it is possible for the comment pointers in memory to be pointing at several)Tj --10.9881 -1.2889 TD -0.1444 Tw -(versions of the same file, since a comment pointer is only updated when the function it lives in is)Tj -0 -1.2222 TD -0.0278 Tw -[(prettyprinted, not when the function has been copied verbatim to the new file. This can be a problem)]TJ -T* -0.0822 Tw -(for file systems that have a built-in limit on the number of versions of a given file that will be made)Tj -T* -0.0911 Tw -[(before old versions are expunged. In such a case, the user should set the version retention count of)]TJ -T* -0.2233 Tw -(any directories involved to be infinite. )Tj -/TT8 1 Tf -18.8915 0 TD -0 Tw -(GETCOMMENT)Tj -/TT6 1 Tf -6.001 0 TD -0.2233 Tw -[( prints an error message if the file that the)]TJ --24.8924 -1.2889 TD -0 Tw -(comment pointer points at has disappeared.)Tj -0 -2.8889 TD -0.0133 Tw -(Similarly, one should be cognizant of comment pointers in sysouts, and be sure to retain any files thus)Tj -0 -1.2222 TD -0 Tw -(pointed to.)Tj -0 -2.8889 TD -0.1289 Tw -(When using comment pointers, the user should also not set )Tj -/TT8 1 Tf -27.7132 0 TD -0 Tw -(PRETTYFLG)Tj -/TT6 1 Tf -5.4009 0 TD -0.1289 Tw -[( to )]TJ -/TT8 1 Tf -2.0087 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1289 Tw -[( or call )]TJ -/TT8 1 Tf -3.6035 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf --40.5266 -1.2889 TD -0.1067 Tw -(with option )Tj -/TT8 1 Tf -5.6386 0 TD -0 Tw -(FAST)Tj -/TT6 1 Tf -2.4004 0 TD -0.1067 Tw -(, since this will prevent functions from being prettyprinted, and hence not get the)Tj --8.039 -1.2889 TD -0 Tw -(text of the comment copied into the new file.)Tj -0 -2.8889 TD -0.0489 Tw -(If the user changes the value of )Tj -/TT8 1 Tf -14.3212 0 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0489 Tw -[( but still wishes to use the comment pointer feature, the)]TJ --20.3222 -1.2889 TD -0 Tw -(new )Tj -/TT8 1 Tf -2.2384 0 TD -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.0933 Tw -[( should be given the same read-macro definition in )]TJ -/TT8 1 Tf -23.6154 0 TD -0 Tw -(FILERDTBL)Tj -/TT6 1 Tf -5.4009 0 TD -0.0933 Tw -[( as )]TJ -/TT8 1 Tf -1.6105 0 TD -0 Tw -(*)Tj -/TT6 1 Tf -0.6001 0 TD -0.0933 Tw -[( has, and the)]TJ --39.4662 -1.2889 TD -0.1356 Tw -(same entry be put on )Tj -/TT8 1 Tf -10.2422 0 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -0.1356 Tw -[(. For example, if )]TJ -/TT8 1 Tf -8.2979 0 TD -0 Tw -(COMMENTFLG)Tj -/TT6 1 Tf -6.001 0 TD -0.1356 Tw -[( is reset to be ")]TJ -/TT8 1 Tf -7.021 0 TD -0 Tw -(;)Tj -/TT6 1 Tf -0.6001 0 TD -0.1356 Tw -(", then)Tj -/TT8 1 Tf --42.3639 -1.2889 TD -0.3044 Tw -(\(SETSYNTAX ; * FILERDTBL\))Tj -/TT6 1 Tf -17.116 0 TD -0.1267 Tw -[( should be performed, and \()]TJ -/TT8 1 Tf -12.9698 0 TD -0.3044 Tw -(; . PRINTCOMMENT\))Tj -/TT6 1 Tf -10.8106 0 TD -0.1267 Tw -[( added to)]TJ -/TT8 1 Tf --40.8963 -1.2889 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 257.6 Tm -(Converting Comments to Lower Case)Tj -/TT6 1 Tf -9 0 0 9 126 233.94 Tm -0.2633 Tw -(This section is for users using terminals without lower case, who nevertheless would like their)Tj -0 -1.2222 TD -0.0522 Tw -[(comments to be converted to lower case for more readable listings. If the second atom in a comment)]TJ -T* -0 Tw -(is )Tj -/TT8 1 Tf -1.036 0 TD -(%%)Tj -/TT6 1 Tf -1.2002 0 TD -0.0711 Tw -(, the text of the comment is converted to lower case so that it looks like English instead of Lisp.)Tj --2.2361 -1.2889 TD -0 Tw -(Note that comments are converted only when they are actually written to a file by )Tj -/TT8 1 Tf -36.4233 0 TD -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -(.)Tj --43.0244 -2.9556 TD -0.0722 Tw -[(The algorithm for conversion to lower case is the following: If the first character in an atom is )]TJ -/TT8 1 Tf -42.9953 0 TD -0 Tw -(^)Tj -/TT6 1 Tf -0.6001 0 TD -0.0722 Tw -(, do)Tj --43.5954 -1.2889 TD -0.1211 Tw -(not change the atom \(but remove the )Tj -/TT8 1 Tf -17.3864 0 TD -0 Tw -(^)Tj -/TT6 1 Tf -0.6001 0 TD -0.1211 Tw -[(\). If the first character is )]TJ -/TT8 1 Tf -11.7867 0 TD -0 Tw -(%)Tj -/TT6 1 Tf -0.6001 0 TD -0.1211 Tw -(, convert the atom to lower case.)Tj --30.3733 -1.2889 TD -0.2533 Tw -(Note that the user must type )Tj -/TT8 1 Tf -14.4228 0 TD -0 Tw -(%%)Tj -/TT6 1 Tf -1.2002 0 TD -0.2533 Tw -[( as )]TJ -/TT8 1 Tf -1.9305 0 TD -0 Tw -(%)Tj -/TT6 1 Tf -0.6001 0 TD -0.2533 Tw -[( is the escape character. If the atom \(minus any trailing)]TJ --18.1536 -1.2889 TD -0.0033 Tw -(punctuation marks\) is an Interlisp word \(i.e., is a bound or free variable for the function containing the)Tj -0 -1.2222 TD -0.1189 Tw -(comment, or has a top level value, or is a defined function, or has a non-)Tj -/TT8 1 Tf -33.6271 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1189 Tw -[( property list\), do not)]TJ --35.4274 -1.2889 TD -0.2589 Tw -[(change it. Otherwise, convert the atom to lower case. Conversion only affects the upper case)]TJ -0 -1.2222 TD -0.16 Tw -(alphabet, i.e., atoms already converted to lower case are not changed if the comment is converted)Tj -T* -0.1911 Tw -(again. When converting, the first character in the comment and the first character following each)Tj -T* -0.0367 Tw -[(period are left capitalized. After conversion, the comment is physically modified to be the lower case)]TJ -T* -0.19 Tw -(text minus the )Tj -/TT8 1 Tf -7.1374 0 TD -0 Tw -(%%)Tj -/TT6 1 Tf -1.2002 0 TD -0.19 Tw -[( flag, so that conversion is thus only performed once \(unless the user edits the)]TJ --8.3376 -1.2889 TD -0 Tw -(comment inserting additional upper case text and another )Tj -/TT8 1 Tf -25.894 0 TD -(%%)Tj -/TT6 1 Tf -1.2002 0 TD -( flag\).)Tj -ET -endstream -endobj -138 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -140 0 obj -<< -/Length 6331 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-41)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT12 1 Tf -9 0 0 9 102 568.26 Tm -(LCASELST)Tj -/F1 1 Tf -10 0 0 10 145.2 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 568.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0689 Tw -(Words on )Tj -/TT8 1 Tf -4.7413 0 TD -0 Tw -(LCASELST)Tj -/TT6 1 Tf -4.8008 0 TD -0.0689 Tw -[( will always be converted to lower case. )]TJ -/TT8 1 Tf -18.6547 0 TD -0 Tw -(LCASELST)Tj -/TT6 1 Tf -4.8008 0 TD -0.0689 Tw -[( is initialized to)]TJ --32.9975 -1.2889 TD -0.1389 Tw -(contain words which are Interlisp functions but also appear frequently in comments as)Tj -0 -1.2222 TD -0.2289 Tw -(English words \()Tj -/TT8 1 Tf -7.4373 0 TD -0 Tw -(AND)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7289 0 TD -(EVERY)Tj -/TT6 1 Tf -3.0005 0 TD -(, )Tj -/TT8 1 Tf -0.7289 0 TD -(GET)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7289 0 TD -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -(, )Tj -/TT8 1 Tf -0.7289 0 TD -(LAST)Tj -/TT6 1 Tf -2.4004 0 TD -0.2289 Tw -(, )Tj -/TT8 1 Tf -1.2078 0 TD -0 Tw -(LENGTH)Tj -/TT6 1 Tf -3.6006 0 TD -(, )Tj -/TT8 1 Tf -0.7289 0 TD -(LIST)Tj -/TT6 1 Tf -2.4004 0 TD -0.2289 Tw -[(, etc.\). Therefore, if one)]TJ --28.4921 -1.2889 TD -0.0011 Tw -(wished to type a comment including the lisp fuction )Tj -/TT8 1 Tf -23.3279 0 TD -0 Tw -(GO)Tj -/TT6 1 Tf -1.2002 0 TD -0.0011 Tw -(, it would be necessary to type )Tj -/TT15 1 Tf -13.6591 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(GO)Tj -/TT6 1 Tf --38.7902 -1.2889 TD -(in order that it might be left in upper case.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(UCASELST)Tj -/F1 1 Tf -10 0 0 10 145.2 483.58 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 483.58 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2689 Tw -(Words on )Tj -/TT8 1 Tf -5.1413 0 TD -0 Tw -(UCASELST)Tj -/TT6 1 Tf -4.8008 0 TD -0.2689 Tw -[( \(that do not appear on )]TJ -/TT8 1 Tf -11.9957 0 TD -0 Tw -(LCASELST)Tj -/TT6 1 Tf -4.8008 0 TD -0.2689 Tw -(\) will be left in upper case.)Tj -/TT8 1 Tf --26.7385 -1.2889 TD -0 Tw -(UCASELST)Tj -/TT6 1 Tf -4.8008 0 TD -( is initialized to )Tj -/TT8 1 Tf -7.04 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --16.3078 -2.5422 TD -(ABBREVLST)Tj -/F1 1 Tf -10 0 0 10 150.6 432.5 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 432.5 Tm -([Variable])Tj -/TT8 1 Tf --35.6011 -1.8444 TD -(ABBREVLST)Tj -/TT6 1 Tf -5.4009 0 TD -0.0667 Tw -[( is used to distinguish between abbreviations and words that end in periods.)]TJ --5.4009 -1.2889 TD -0.1344 Tw -(Normally, words that end in periods and occur more than halfway to the right margin)Tj -0 -1.2222 TD -0.1611 Tw -[(cause carriage-returns. Furthermore, during conversion to lowercase, words ending in)]TJ -T* -0.0844 Tw -(periods, except for those on )Tj -/TT8 1 Tf -12.8729 0 TD -0 Tw -(ABBREVLST)Tj -/TT6 1 Tf -5.4009 0 TD -0.0844 Tw -(, cause the first character in the next word to be)Tj --18.2738 -1.2889 TD -0.0111 Tw -(capitalized. )Tj -/TT8 1 Tf -5.6062 0 TD -0 Tw -(ABBREVLST)Tj -/TT6 1 Tf -5.4009 0 TD -0.0111 Tw -[( is initialized to the upper and lower case forms of )]TJ -/TT8 1 Tf -22.5226 0 TD -0 Tw -(ETC)Tj -/TT6 1 Tf -1.8003 0 TD -(., )Tj -/TT8 1 Tf -0.7611 0 TD -(I)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(E)Tj -/TT6 1 Tf -0.6001 0 TD -0.0111 Tw -(., and)Tj -/TT8 1 Tf --37.5413 -1.2889 TD -0 Tw -(E)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf -0.25 0 TD -(G)Tj -/TT6 1 Tf -0.6001 0 TD -(..)Tj -/TT4 1 Tf -10 0 0 10 78 329.16 Tm -(Special Prettyprint Controls)Tj -/TT12 1 Tf -9 0 0 9 102 309.22 Tm -(PRETTYTABFLG)Tj -/F1 1 Tf -10 0 0 10 166.8 309.22 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 309.22 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0256 Tw -(In order to save space on files, tabs are used instead of spaces for the inital spaces on each)Tj -0 -1.2222 TD -0.0033 Tw -(line, assuming that each tab corresponds to 8 spaces. This results in a reduction of file size)Tj -T* -0 Tw -(by about 30%. Tabs are not used if )Tj -/TT8 1 Tf -15.6362 0 TD -(PRETTYTABFLG)Tj -/TT6 1 Tf -7.2012 0 TD -( is set to )Tj -/TT8 1 Tf -3.8159 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( \(initially )Tj -/TT8 1 Tf -4.2524 0 TD -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(\).)Tj -/TT12 1 Tf --35.9728 -2.5422 TD -(#RPARS)Tj -/F1 1 Tf -10 0 0 10 134.4 247.74 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 247.74 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1789 Tw -[(Controls the number of right parentheses necessary for square bracketing to occur. If)]TJ -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(#RPARS = NIL)Tj -/TT6 1 Tf -7.2012 0 TD -(, no brackets are used. )Tj -/TT8 1 Tf -10.2959 0 TD -(#RPARS)Tj -/TT6 1 Tf -3.6006 0 TD -( is initialized to 4.)Tj -/TT12 1 Tf --23.7643 -2.5422 TD -(FIRSTCOL)Tj -/F1 1 Tf -10 0 0 10 145.2 197.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 197.26 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.2344 Tw -[(The starting column for comments. Comments run between )]TJ -/TT8 1 Tf -29.0172 0 TD -0 Tw -(FIRSTCOL)Tj -/TT6 1 Tf -4.8008 0 TD -0.2344 Tw -[( and the line)]TJ --33.818 -1.2889 TD -0.04 Tw -(length set by )Tj -/TT8 1 Tf -6.0248 0 TD -0 Tw -(LINELENGTH)Tj -/TT6 1 Tf -6.001 0 TD -0.04 Tw -[( \(see Chapter 25\). If a word in a comment ends with a ")]TJ -/TT8 1 Tf -25.0214 0 TD -0 Tw -(.)Tj -/TT6 1 Tf -0.6001 0 TD -0.04 Tw -(" and)Tj --37.6473 -1.2889 TD -0.0133 Tw -(is not on the list )Tj -/TT8 1 Tf -7.3328 0 TD -0 Tw -(ABBREVLST)Tj -/TT6 1 Tf -5.4009 0 TD -0.0133 Tw -(, and the position is greater than halfway between )Tj -/TT8 1 Tf -22.4711 0 TD -0 Tw -(FIRSTCOL)Tj -/TT6 1 Tf --35.2047 -1.2889 TD -(and )Tj -/TT8 1 Tf -2.0384 0 TD -(LINELENGTH)Tj -/TT6 1 Tf -6.001 0 TD -0.0956 Tw -[(, the next word in the comment begins on a new line. Also, if a list is)]TJ --8.0394 -1.2889 TD -0.09 Tw -(encountered in a comment, and the position is greater than halfway, the list begins on a)Tj -0 -1.2222 TD -0 Tw -(new line.)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(PRETTYLCOM)Tj -/F1 1 Tf -10 0 0 10 156 100.98 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 100.98 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0167 Tw -(If a comment has more than )Tj -/TT8 1 Tf -12.7113 0 TD -0 Tw -(PRETTYLCOM)Tj -/TT6 1 Tf -6.001 0 TD -0.0167 Tw -[( elements \(using )]TJ -/TT8 1 Tf -7.5319 0 TD -0 Tw -(COUNT)Tj -/TT6 1 Tf -3.0005 0 TD -0.0167 Tw -(\), it is printed starting at)Tj --29.2447 -1.2889 TD -0.1644 Tw -(column 10, instead of )Tj -/TT8 1 Tf -10.3482 0 TD -0 Tw -(FIRSTCOL)Tj -/TT6 1 Tf -4.8008 0 TD -0.1644 Tw -[(. Comments are also printed starting at column 10 if)]TJ --15.149 -1.2889 TD -0 Tw -(their second element is also a )Tj -/TT8 1 Tf -13.1533 0 TD -(*)Tj -/TT6 1 Tf -0.6001 0 TD -(, i.e., comments of the form )Tj -/TT8 1 Tf -12.2593 0 TD -(\(* * --\))Tj -/TT6 1 Tf -4.8008 0 TD -(.)Tj -ET -endstream -endobj -141 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT15 23 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -144 0 obj -<< -/Length 6876 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-42)Tj -/TT10 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -5.4 -4.374 TD -(#)Tj -/TT12 1 Tf -9 0 0 9 156.001 568.26 Tm -(CAREFULCOLUMNS)Tj -/F1 1 Tf -10 0 0 10 231.6 568.26 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 568.26 Tm -([Variable])Tj --35.6011 -1.8833 TD -0.1878 Tw -(In the interests of efficiency, )Tj -/TT8 1 Tf -13.582 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1878 Tw -[( approximates the number of characters in)]TJ --20.183 -1.2889 TD -0.0089 Tw -(each atom, rather than calling )Tj -/TT8 1 Tf -13.4268 0 TD -0 Tw -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0089 Tw -[(, when computing how much will fit on a line. This)]TJ --17.0274 -1.2889 TD -0.0522 Tw -[(procedure works satisfactorily in most cases. However, users with unusually long atoms)]TJ -0 -1.2222 TD -0.0556 Tw -(in their programs, e.g., such as produced by )Tj -/TT8 1 Tf -20.1012 0 TD -0 Tw -(CLISPIFY)Tj -/TT6 1 Tf -4.8008 0 TD -0.0556 Tw -(, may occasionlly encounter some)Tj --24.902 -1.2889 TD -0.0244 Tw -(glitches in the output produced by )Tj -/TT8 1 Tf -15.7043 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0244 Tw -[(. The value of )]TJ -/TT8 1 Tf -6.6129 0 TD -0 Tw -(#CAREFULCOLUMNS)Tj -/TT6 1 Tf -9.0015 0 TD -0.0244 Tw -[( tells)]TJ -/TT8 1 Tf --37.9198 -1.2889 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1578 Tw -[( how many columns \(counting from the right hand margin\) in which to)]TJ --6.6011 -1.2889 TD -0.0389 Tw -(actually compute )Tj -/TT8 1 Tf -7.9708 0 TD -0 Tw -(NCHARS)Tj -/TT6 1 Tf -3.6006 0 TD -0.0389 Tw -[( instead of approximating. Setting )]TJ -/TT8 1 Tf -15.749 0 TD -0 Tw -(#CAREFULCOLUMNS)Tj -/TT6 1 Tf -9.0015 0 TD -0.0389 Tw -[( to 20 or)]TJ --36.3219 -1.2889 TD -0.3856 Tw -(30 will eliminate the glitches, although it will slow down )Tj -/TT8 1 Tf -29.193 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.3856 Tw -[( slightly.)]TJ -/TT8 1 Tf --35.794 -1.2889 TD -0 Tw -(#CAREFULCOLUMNS)Tj -/TT6 1 Tf -9.0015 0 TD -( is initially 0.)Tj -/TT8 1 Tf --11.6681 -2.5422 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(WIDEPAPER)Tj -/TT8 1 Tf -5.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj -/F1 1 Tf -10 0 0 10 231.0044 436.23 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 492.6299 436.23 Tm -([Function])Tj -/TT8 1 Tf --35.4033 -1.8444 TD -0.1178 Tw -(\(WIDEPAPER T\))Tj -/TT6 1 Tf -7.919 0 TD -0.0489 Tw -[( sets )]TJ -/TT8 1 Tf -2.2506 0 TD -0 Tw -(FILELINELENGTH)Tj -/TT6 1 Tf -8.4014 0 TD -0.0489 Tw -[( \(see Chapter 25\), )]TJ -/TT8 1 Tf -8.0857 0 TD -0 Tw -(FIRSTCOL)Tj -/TT6 1 Tf -4.8008 0 TD -0.0489 Tw -(, and )Tj -/TT8 1 Tf -2.5406 0 TD -0 Tw -(PRETTYLCOM)Tj -/TT6 1 Tf --33.9982 -1.2889 TD -0.4356 Tw -(to large values appropriate for pretty printing files to be listed on wide paper.)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(\(WIDEPAPER\))Tj -/TT6 1 Tf -6.6011 0 TD -0.1167 Tw -[( restores these parameters to their initial values. )]TJ -/TT8 1 Tf -22.6691 0 TD -0 Tw -(WIDEPAPER)Tj -/TT6 1 Tf -5.4009 0 TD -0.1167 Tw -[( returns the)]TJ --34.6711 -1.2889 TD -0 Tw -(previous setting of )Tj -/TT14 1 Tf -8.5171 0 TD -(FLG)Tj -/TT6 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --12.9841 -2.5422 TD -(PRETTYFLG)Tj -/F1 1 Tf -10 0 0 10 198.6 362.55 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 362.55 Tm -([Variable])Tj --35.6011 -1.8444 TD -(If )Tj -/TT8 1 Tf -0.9666 0 TD -(PRETTYFLG)Tj -/TT6 1 Tf -5.4009 0 TD -0.0467 Tw -[( is )]TJ -/TT8 1 Tf -1.3082 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.5467 0 TD -(PRINTDEF)Tj -/TT6 1 Tf -4.8008 0 TD -0.0467 Tw -[( uses )]TJ -/TT8 1 Tf -2.523 0 TD -0 Tw -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -0.0467 Tw -[( instead of prettyprinting. This is useful for)]TJ --20.3469 -1.2889 TD -0.0367 Tw -(producing a fast symbolic dump \(see the )Tj -/TT8 1 Tf -18.5062 0 TD -0 Tw -(FAST)Tj -/TT6 1 Tf -2.4004 0 TD -0.0367 Tw -[( option of )]TJ -/TT8 1 Tf -4.631 0 TD -0 Tw -(MAKEFILE)Tj -/TT6 1 Tf -4.8008 0 TD -0.0367 Tw -[( in Chapter 17\). Note)]TJ --30.3383 -1.2889 TD -0.1255 Tw -(that the file loads the same as if it were prettyprinted. )Tj -/TT8 1 Tf -25.6375 0 TD -0 Tw -(PRETTYFLG)Tj -/TT6 1 Tf -5.4009 0 TD -0.1256 Tw -[( is initially set to )]TJ -/TT8 1 Tf -8.1131 0 TD -0 Tw -(T)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -/TT8 1 Tf --39.7516 -1.2889 TD -(PRETTYFLG)Tj -/TT6 1 Tf -5.4009 0 TD -( should not be set to )Tj -/TT8 1 Tf -9.144 0 TD -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -( if comment pointers are being used.)Tj -/TT12 1 Tf --19.0119 -2.5422 TD -(CLISPIFYPRETTYFLG)Tj -/F1 1 Tf -10 0 0 10 241.8 288.27 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 288.27 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.1222 Tw -(Used to inform )Tj -/TT8 1 Tf -7.31 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1222 Tw -[( to call )]TJ -/TT8 1 Tf -3.5146 0 TD -0 Tw -(CLISPIFY)Tj -/TT6 1 Tf -4.8008 0 TD -0.1222 Tw -[( on selected function definitions before)]TJ --22.2265 -1.2889 TD -0 Tw -(printing them \(see Chapter 21\).)Tj -/TT12 1 Tf --2.6667 -2.4756 TD -(PRETTYPRINTMACROS)Tj -/F1 1 Tf -10 0 0 10 241.8 237.79 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 237.79 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0678 Tw -(An association-list that enables the user to control the formatting of selected expressions.)Tj -/TT8 1 Tf -0 -1.2222 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.14 Tw -[( of each expression being )]TJ -/TT8 1 Tf -12.032 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.14 Tw -(ed is looked up on )Tj -/TT8 1 Tf -9.1155 0 TD -0 Tw -(PRETTYPRINTMACROS)Tj -/TT6 1 Tf -10.2017 0 TD -(,)Tj --39.7506 -1.2889 TD -0.03 Tw -[(and if found, CDR of the corresponding entry is applied to the expression. If the result of)]TJ -0 -1.2222 TD -0.2878 Tw -(this application is )Tj -/TT8 1 Tf -8.9244 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -(, )Tj -/TT8 1 Tf -0.7878 0 TD -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.2878 Tw -[( ignores the expression; i.e., it prints nothing,)]TJ --18.1135 -1.2889 TD -[(assuming that the prettyprintmacro has done any desired printing. If the result of)]TJ -0 -1.2222 TD -0.2611 Tw -(applying the prettyprint macro is non-)Tj -/TT8 1 Tf -18.3256 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.2611 Tw -(, the result is prettyprinted in the normal)Tj --20.1259 -1.2889 TD -0.2989 Tw -[(fashion. This gives the user the option of computing some other expression to be)]TJ -0 -1.2222 TD -0 Tw -(prettyprinted in its place.)Tj -0 -2 TD -0.2856 Tw -[(Note: "prettyprinted in the normal fashion" includes processing prettyprint macros,)]TJ -4 -1.2222 TD -0.0733 Tw -(unless the prettyprint macro returns a structure )Tj -/TT8 1 Tf -21.799 0 TD -0 Tw -(EQ)Tj -/TT6 1 Tf -1.2002 0 TD -0.0733 Tw -[( to the one it was handed, in)]TJ --22.9992 -1.2889 TD -0 Tw -(which case the potential recursion is broken.)Tj -/TT12 1 Tf --6.6667 -2.4756 TD -(PRETTYPRINTYPEMACROS)Tj -/F1 1 Tf -10 0 0 10 258 79.51 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 494.41 79.51 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0533 Tw -(A list of elements of the form )Tj -/TT8 1 Tf -13.4778 0 TD -0.1289 Tw -(\(TYPENAME . FN\))Tj -/TT6 1 Tf -9.2592 0 TD -0.0533 Tw -[(. For types other than lists and atoms,)]TJ --22.7371 -1.2889 TD -0.9544 Tw -(the type name of each datum to be prettyprinted is looked up on)Tj -ET -endstream -endobj -145 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R -/TT14 16 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -147 0 obj -<< -/Length 2697 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(25-43)Tj -/TT10 1 Tf -10 0 0 10 408 612 Tm -(USER I/O PACKAGES)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(PRETTYPRINTYPEMACROS)Tj -/TT6 1 Tf -12.002 0 TD -0.2111 Tw -(, and if found, the corresponding function is applied to the)Tj --12.002 -1.2889 TD -0 Tw -(datum about to be printed, instead of simply printing it with )Tj -/TT8 1 Tf -27.0532 0 TD -(PRIN2)Tj -/TT6 1 Tf -3.0005 0 TD -(.)Tj -/TT12 1 Tf --32.7204 -2.5422 TD -(PRETTYEQUIVLST)Tj -/F1 1 Tf -10 0 0 10 177.6 535.06 Tm -( )Tj -/TT6 1 Tf -9 0 0 9 446.41 535.06 Tm -([Variable])Tj --35.6011 -1.8444 TD -0.0422 Tw -(An association-list that tells )Tj -/TT8 1 Tf -12.6127 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.0422 Tw -[( to treat a )]TJ -/TT8 1 Tf -4.5673 0 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.0422 Tw -(-of-form the same as some other)Tj -/TT8 1 Tf --25.5814 -1.2889 TD -0 Tw -(CAR)Tj -/TT6 1 Tf -1.8003 0 TD -0.16 Tw -[(-of-form. For example, if )]TJ -/TT8 1 Tf -12.1218 0 TD -0.3844 Tw -(\(QLAMBDA . LAMBDA\))Tj -/TT6 1 Tf -11.5706 0 TD -0.16 Tw -[( appears on )]TJ -/TT8 1 Tf -5.8579 0 TD -0 Tw -(PRETTYEQUIVLST)Tj -/TT6 1 Tf -8.4014 0 TD -(,)Tj --39.752 -1.2889 TD -0.3444 Tw -(then expressions beginning with )Tj -/TT8 1 Tf -16.0135 0 TD -0 Tw -(QLAMBDA)Tj -/TT6 1 Tf -4.2007 0 TD -0.3444 Tw -[( are prettyprinted the same as )]TJ -/TT8 1 Tf -15.5061 0 TD -0 Tw -(LAMBDA)Tj -/TT6 1 Tf -3.6006 0 TD -(s.)Tj --39.3209 -1.2889 TD -(Currently, )Tj -/TT8 1 Tf -5.4164 0 TD -(PRETTYEQUIVLST)Tj -/TT6 1 Tf -8.4014 0 TD -0.58 Tw -[( only allows \(i.e., supports in an interesting way\))]TJ --13.8178 -1.2889 TD -0.1467 Tw -(equivalences to forms that )Tj -/TT8 1 Tf -12.4705 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1467 Tw -[( internally handles. Equivalence to forms for)]TJ --19.0715 -1.2889 TD -0.2444 Tw -(which the user has specified a prettyprint macro should be made by adding further)Tj -0 -1.2222 TD -0 Tw -(entries to )Tj -/TT8 1 Tf -4.3481 0 TD -(PRETTYPRINTMACROS)Tj -/TT12 1 Tf --7.0148 -2.4 TD -(CHANGECHAR)Tj -/TT6 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.8444 TD -0.1689 Tw -(If non-)Tj -/TT8 1 Tf -3.1318 0 TD -0 Tw -(NIL)Tj -/TT6 1 Tf -1.8003 0 TD -0.1689 Tw -(, and )Tj -/TT8 1 Tf -2.7806 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf -6.6011 0 TD -0.1689 Tw -[( is printing to a file or display terminal, )]TJ -/TT8 1 Tf -19.0874 0 TD -0 Tw -(PRETTYPRINT)Tj -/TT6 1 Tf --33.4012 -1.2889 TD -(prints )Tj -/TT8 1 Tf -2.8969 0 TD -(CHANGECHAR)Tj -/TT6 1 Tf -6.001 0 TD -0.0278 Tw -[( in the right hand margin while printing those expressions marked by)]TJ --8.8979 -1.2889 TD -0 Tw -(the editor as having been changed \(see Chapter 16\). )Tj -/TT8 1 Tf -23.2725 0 TD -(CHANGECHAR)Tj -/TT6 1 Tf -6.001 0 TD -( is initially )Tj -/TT8 1 Tf -4.8843 0 TD -(|)Tj -/TT6 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -148 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 14 0 R -/TT12 15 0 R ->> -/ExtGState << -/GS1 9 0 R ->> ->> -endobj -24 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 75 -/Height 62 -/BitsPerComponent 1 -/ImageMask true -/Length 621 ->> -stream -}w}~~^o_oow> -stream -?wǎǗw߻vݻvw߿~߿vwvw߿vݻvwwǎwvwwŘww߹w7ww߿wwwwww߿w7wwvo;ooo`poo`o:?o`? -endstream -endobj -9 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -149 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -150 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -151 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -152 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -153 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -154 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -155 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -156 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBNCHE+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 157 0 R ->> -endobj -157 0 obj -<< -/Filter /FlateDecode -/Length 20107 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8`BBiԃ4NˡfwfGf?%Z%%Rh -FnRKD>iRi nxj3>yomrBwE]X;ohQ`r Wq`]Y|7>43u42/|g2#* -#mʵ 10U'wmЎDŽBϭXaH8b&׹K [Z #`MG`>#`S [ X45MP-$Lȃ&߆mlxܹ/`\b'UXςRqf$ '4V[NwH)w.r,x;В&~; )&ӑ<FBia-ob~+:Ԥއw#CV͗^X p KH -Tͷ=2PCk+wjU)XŧH=_I'S_3g^!#\\y?! '|Ih$\xwAF:=I? f I}'f};k4GOBZ'nIxFK%}'ƠO|s^uࡔ0Nuoo}7JOAW)ۀ/L=s$@_Lgg>&uZ}4 !~XΦkeyǃkϘdh l\dcOٸڸƥ6.q+l\i*kl\mXkl\gzl`Flcڸl|99~"NzAфI*i0輄mC0Xg QլL !-џ;Z+*aoĕ }YRt=VᏙtQ!.oq[]`"Ur_Kq-a0mF72 -^HB3ոV[~tmQUтj(;4j|5H/VW<|EGIKSC?z,Sݤ]Eh UrL=<7b͟RSAU>_@gw3cE5[d5v̦V>Ex{QsO!&3 ?ʙ3 {Eqz5/y%ZѿT^k5AQӅ- hG]Qn-Vjpc M1i Y;LT! 6[@d:V(QoH؀=HDPaYB4F0zM׏;c.5 ?Mio0JM!gID ^,ByI^r[XZ$%.3%3~%[e~lj4b4ыlU7p7ۭy{ZsovMi2_pic kȕ%7tO'ebL]_Ɨ1[SV]_[=5O_jH)O _uzj<5rxVJJKKܥ/hEH.A!J)HJPa͂o)BOzv-X/.w\[N 9{*2={k/F>u ni;8u]zCEL9Pxs -Y.[GGUV'ϲG-^mqyg) ;]Dty'/lɟ)hI9>/%`঎s]>{=rޱp zccg6kBX{bfa߀1k':ܽl`88/LٹA+2rq0Z2 -*:Ok 54$ -j e:TFת*`@[Z &@W*ШC5sgWyy~Μ3.j RJF, z 墋^& LH}2*$u֑1{wkY74`taeX4R = DFk}`a!TyȈ~Q F ':u :# *P?Nloe҄ti05`cau+j?@Jt #=y2G ۔/wLv; XwUqQ˯]BF>i.UFx5?.*vV揟;۳PQq!c֧/NUG>ml_(TEduPK(BȥEX9s4St.F+;m,zdW*cg!6Yמk! R=ni=9z2g@ݲ.s>=wʞi.VĮٔgw+Z`]U?cjdf_ʎEt/ϔœ\.UvF 6yv"`[=Ĝ&+r32:BNiXR&oϗPVAe5i>}Rsx]pUKX{F6~ -PĒqy3UD,ǎ4kd''>.ndTghS1wlzN!R -5yn/\r2?) #az ˚gz*&:?2Oa׮FJĐ15D㗋'dFF`űۘQo~۪hc_2.ACϣl; 0 .Bf6&}H8 d`iƷEUӛz:8TLb\Nǔ֣cL[5f2jV{<-;qAzTtM.,\:D8UAY$_GPq{ -|\%xp7xUylO}9vkx \ߥk/OG}ٛJR 󧦶_ ²cx%K*ue}Ag}>ɘ :6G^mu=;V[5-m]+N:q+Uga(΢_wʪ>{"a&׵_G$ SZ>ؒ\u%E!lkhH5by^HMmͅ$wD} -r RjC|ہ]8EKXj#C.sQdtwd ahT n0*rE 2ةo4Ha$ٖ#9b6 lHO" U4? 2O:6NhXx(;@B -v9aLϋ̅'a,gf% !M -m>t_p!N,A yd -yxIC YI^" WH I 3"4%%rj69MCTt6G?Ut=ѕ*moh_>O2LfcD6Ϟ` R<[+7;dY]dW\ùO^O9"fO wN~''w~_QO/>󸉚̦ S&V'ቛJwPg&A,T;):"Pf-bTzPVjc0Vbxo5Ab Xz/2t_8f B,U CoV߉G.TIu:a(6x -؂aɘ͔AlDT"GW>@ņEԢG3az 5B|1} ~; ;nZm fI#KJfo+=N-%ڋ60RzoL9].W̹CY]rsF,ᒮWlLGbNuklZrԢ~QIe[ 2/ehHT6gyvsx*(ѝt mZrJPb'WodWu敦m&\.j,ˣFK$۰,Zum*j+ =@-f42f9+)^Es/KWuq'h_dYmB2sKug<j -?Z#bZ[9sQ%jrYFUdMK!^Dig,1򑩞z &AKPtеZ"EZ+YE1u n"ZJ=P=jB_F_CGG K[4BK* R -n ŽxO)<_o~ U|/""">W,yԓB3+ Ysp.[m䚹/qOrAn}n~gposw۷?oRV̾]lP+N&6N,:J"#V:hgĤ-љLkg@ZcҎ;QƟs/ ƨsϞݟs{>abMYd]&ϔ9rH^"A9"!;cGr|A()_ -QdEQJx2ILUJRGydܑ@x2UH8P :&fPE%f#T XJ,@lhqĊT88j+Q1dž~lD4d6h–5y{c+ -*oa#fj&bۇ=H0HJT|!/qLxMl}D!8hVZI"+b*u/đlyh~UsouYY扵aW֚c0Tͅ'k>hn̳-2-{:8e[J'v{!=x"Az_+lyo!ͫ/q|t‘=)5$IUoǤ@fa5Yd{DU˥ibnh;IyS^q<&-ҦKfMDZ[E$gUjA $hg6}]M|L&нq-_xLtW6|?j,XPkbu $]߯BH-F'ӆgO^]3ue I7j3c^r?=⠱1A?gF823O>ܱn(?pR*VA[n mjDX7/ -^$6N\Q'.UkS=C4m[h 3pUcHiHK I}5iӡsjgh;mezTD#anA8u%FR$@"|Ra2)0YUdVe, ~ˑ[W":lFN :'O0O -nN"n2LFKq%ϒ䧤Hj+d-#(2d;i#^6#yr#$&W:1(PF-AԅCSd:fә-Z@t#JېAnGQzCEv$H>I)[̬YT--GvV'E&9Z~/idigiU:25` ٚ٘9Y"Kane$=6elrُ(@Hĥ$}LȝbB%+p ŭV|ÌHE;&T0*/ Cq{q5[R6 E6,rXk3۰_gƱd:ςOキٽۄ xG8D.A$c$k%q0R j"D4#0?3t/0a&#ڑVGZavFmKr vj3n?'TC{ -8wtXh V*# ."͘ZTrrvvWv&->^͋N-ΰ͸Ƴ n۟[W*:o6g]~暡e<\f˛=7 Q7^s,PL{/9.x#J w,̜ǾzWή{dzx{x}5&ho,i7OtBhwUsAu(yݝs5OG׶d rڭQ47΋x9Н?W/jR5E\4nꈉ6o-48laXx/ {~gۥPޔ]7߰jf~Iko&7gO|ش -ȏ "PL銳wl<\iROQW\Sof*?J!aThR4{2KȦ=0&S}5fUD3qtd[Ңj9e7=G -I]۳"QzFt^`R6,jZ6MձwX5lj:W3ZP}uBv'S@-v=9rC>"(=5=JQRwc$&T!Ơ8oșhu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV}FQ4eDfyULT\"n↙ 枔.ڑ *C[dPI$fx у`&؁q&Ȯhg3C%)AA֪Tv$4,ja|*/#EfݽJH^4rrBF;ox,HgQ Q8nvHX"CNykA-G%&$%$MrT8l;sB7@eQ1fY45E{H#baf"@ӅN9%S+R,!0/HV6~wR 6:]F{bnkg*5lK"<ߐt_ӯr^6,gxYuckfYҴ6ϧ܋1z "b 6L,\,I"qgCcϳ9۰6E؜OMuc1{t;aDŠsJTJ83^ b(anL%z{,,cTբ( H賛Ӄý9Һa7*CV6bAdTM$J0Wؖy@8fy:\~7 3gOIbVf<|@ ,${skmb4bAs9X!ݑ -|,toR[X CLX X3g7JpH`ku 7zlyKM.8 U]]yD5܇*`jyC ctir~DT4;*Kꃠ]Ro/6 7u9̑KnㄨH̑R[!aD -$J@B/Qs_WHԕ}-HH zLھYjPe -r qmyvgg3}| --Y>h6p;pR:]z]A?L)Po;=AGQ@CϢYԤ[^ě>Vt<{BS/ޞK<ll848q̒yUZX:)nLnRz wAZ(5g޼vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk?Oe:N阕]Jym*ә++ȩ{mW>Cz&> ÐVmm0[x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =Lө0^p`MQ}Aiay8ʩZHyo:GZwHV9cWn8tjSH~պOxc5̩_h%,0{Z%̾ӏˇL̩8evdq Zflaezv)ZL`U֝҂|^3,'[h҂`FYƠ+Suʖ$ͼ4,6)sj*af+wn:f -A/фƈ5"c +Ad%-v;I)slak,f -װTvNC _V 5+H ܏&Q ZB|=߱7I4 --Uw!Xj-G-d'E E0GAz|'Ο_6Yn k~}$SXY얱[XjA u#̕,u|;^.WYXc-Xϴ"q~C>Yc'ϴoi72gsssxSKYwb6Tu1~&Xꃤu'a9 ړs,ˤ*;$-EIZX^i06@@22XAC9 IZP7Ŧx9ҌZk.Q r̩hujՄy֤G[%6g `##'2 2k~ EMG6NCv{.1@ˍTϢѠ /b/wB z S["@Io`p#/J?d^wO9p}W=K!`eh/ ;>-T{bE܅!q'MIbzl`][ XnO>Wt|9᰽E%cV@hխCyAo'],O Uun|DnqM}֍qЂqriaȻ)^`1uxS^GipXoZ4'>ڎ׷?-vwwZF835&' ckgG x~ o_:F&#ȣd|\"łdB;b(cʸi%)ܽV(/(Z:?݅EQ YjeVkĺ%4="jyhSk=`L7Hצh㨨UcL|&NJ\5j!S T P~*S\eJyG@فi^rD9U>W\R:UQ5}U A`5CTG( z-x:??`Ub0$"*QhJ+Ee*."`"F0I$@UF$J {G*~FcGX!D0a? J g0>G @ed9,R~R 䥡<wXh~0r3<"f=bSP-|¥p|Gb0RaFC.(w#ZBЧ@N< oojCA|bc,^9 v}maѓmMgn?]/[YpT ^;tJк U+>vTl\iU+ˮުY_hX>& %omybc)^%zȕ9ΔWf\J߸yd_3ZZJ+<޽}`~<;ύZW6\LA~u]Ue'Ʋbin;:Ur߭҂_x Y>̫8".OD{oYߐW}D Zs~ubf4䦼lnY騸#_{n X -NT%WZ]NXjXh4!bEò;kWmVncqu˧?϶<fV&kjČibSy֕oЌCX{t{nYq&WLo| odj++ypDEdLq%%N'Fw7d)+0. 3- ]q~?e/;lȿ{ᣓhE E qj<$SkA0O0 dHȃqdxǥr Plx^*{43a8y8pڡ3"%q$$}N$I.K&Id2)"H))#/٤,,$dw 7di"Z7";^r'3 /i'_SB%<©F0SL4Nx]NL|kRk,rQ?Fwa.yS3z^Wmh' 0昡,H~,1 gIq6=2B>T>E)$$)Ch1*1!,.aYGU=xU@k X* -|IWҵJ^ -ӕs}O$KbbD)|+6E8Gr>eIhjFE^J.ǒTOJ8{?ThS%)qfSXGAv8#dO~?_3lJṴH16BhH`-ԪDռn6R>Սӯ()Nti\w%.0%pu!BYLG@NfslvWŢ9mX˅gsO J<^o@O-hȒr]K0$X,8OXdXŕ* OI[:>Q+2{~~(k mO9n-P)g@1P&߉ZK3z:chA)l G%;oF\Y:Tw]}ce<30샲 øi6ÒӴMoNs"IӴI綽a||GyQqEAAde_܅ewrN d;rC .`7dǝk[Ls=?}Ϙ"ɁL!( fv+Osׯ }p<7[;r; 7vcYk? ȵǻ|n_c~www~ lpf k/A%x_W 䅾zjtWr`3_PWntoBwsb9˿8r|r/,bݏ^W?2丼=ޅ'4}J;n:M_ {={KK{in뮓1Q@,1S4:'ȶlMztWv0l'z*XSkE7:H{s}+*b5QBp;6!Kdlqu)eCeLjX<cF.EBUp+k9{,GXGL`Kӭ4;5_X9rg;Sb$E:LnWZ{rO=L2cט&q6w0rZMQ,؟I¢Uou=w}. -u8)g+q'D(Vrܶ5דVKcXr}DJdĵzFr*)JV*Sjm-y -;UHB :|-a8μ7鎂&WNgDd⥉Ѥ S*L#;m[A:bЙbN([Ϗ_Ywpw~GE}]q7Q Id:JbF2#RZTP$Dq5 VA"҈ܒO0*Fm`}ߙ9ӓywr߻{Sps -]޼4fՖ1eVmN~h|LG&[L4[DThk}p]MY9yC:y'jN)]V)%'M")}ݺr-z9{ Ujג%v{>hhw[Ru鴀~Gb*>7}[]֙+5't[vY3~X8GARL__K(i~C̭Vw:u&eJÆ[evmّos|p\H<5 N#OL86jXYš}n57o?4{a o1jS}[l|uhq彨TnWϏ 1d -Ǔ7Wo91A7CZvv?Qz$uмyc[—m#!-`3xWλm)9![M ^߂߀__C.Awe55BnQhB>փ%`xc;1XjP,ʚl`B#S%UTR7䲸ꮠDf2l䭶$G}P^[99aiQ"3EQ ˻Ѧ,?E!O ~'_! GN'42mCdf~k" k o7}L5:hւkj\+QwLQXӏP'\WbLL9i1-|W$%T%Y*( 9CY'JdЈh-Χy5ߚy zZ -L3)?%O}Ǻ4~&42MGTp8 &`8ACs,D0 ƁcR! Ƃ` yG߀uDtp a6! C![˼< A+)@phEL?2 "KL/}G2y~hzC4[; tщ9EBJ.M¢(dX@MW A;Pj)ᯫL8gɠ -BƟ³OamSˏ$i)1-+XN
\ӗ[ߏ5/sR8p<q̉8$CX0UO=>lNzv4)d} BzNćQ֜ࣛ:LSOUva٩I#_._turr gM:Ӈ4 ~ΐr%{/("k*ΨjNiԒZpmu{A&drv1%_zj(R%-IgפTfK aCm*SXmh5Rܠ;gQkEJ6m4ٺf;Mm`$jeg(ղђZ4[]eI6; R&1q<rjj*kXcǕUVq̚m8bmwm"# c2ߛ634Q|.F}t&$|VO{l&m'%e_ 58&H"m#.PΏG%;>uXxzIx_Lآl^ 0f -endstream -endobj -158 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -159 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 158 0 R ->> -endobj -104 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 159 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 149 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 278 -0 0 556 0 0 556 0 0 0 0 0 0 0 584 0 611 -0 722 722 722 722 667 611 778 722 278 0 722 611 833 722 778 -667 0 722 667 611 722 0 944 0 667 0 0 0 0 0 0 -0 556 0 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 150 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 149 -/Widths [250 0 371 0 0 840 0 0 333 333 389 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 606 606 606 444 -0 778 611 709 774 611 556 763 832 337 333 726 611 946 831 786 -604 786 668 525 613 778 722 1000 667 667 667 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 606 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 151 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 600 600 600 600 600 600 0 600 600 600 600 600 600 600 600 -600 600 600 600 0 0 0 0 600 0 600 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 600 600 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 152 0 R ->> -endobj -14 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 278 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 0 278 0 667 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 153 0 R ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 125 -/Widths [600 0 0 600 0 0 0 0 600 600 600 0 600 600 600 0 -0 600 0 0 0 0 0 0 0 0 0 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 0 -0 600 0 600 600 600 600 0 600 600 0 0 600 600 600 600 -0 0 600 600 600 600 0 0 600 0 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 154 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 -0 600 0 0 0 0 0 0 0 0 0 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 155 0 R ->> -endobj -23 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBNCHE+Symbol -/Encoding /Identity-H -/DescendantFonts [ 160 0 R ] -/ToUnicode 161 0 R ->> -endobj -160 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBNCHE+Symbol -/FontDescriptor 156 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -161 0 obj -<< -/Filter /FlateDecode -/Length 227 ->> -stream -HTP=O0 +<c@-@DiC=Ibg?S|F0#\,G@*pަh'gq- 6 34 9$xJɇ1Sn' h Əg/fB7oAU,%dˆq~J?Mu![l$5ڽt);mٕ(;!~82<#|m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -11 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 13 0 R -/Contents 12 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -32 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 34 0 R -/Contents 33 0 R ->> -endobj -35 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 37 0 R -/Contents 36 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 10 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -67 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 69 0 R -/Contents 68 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 48 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -76 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 78 0 R -/Contents 77 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -89 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 91 0 R -/Contents 90 0 R ->> -endobj -92 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 94 0 R -/Contents 93 0 R ->> -endobj -95 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 97 0 R -/Contents 96 0 R ->> -endobj -98 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 100 0 R -/Contents 99 0 R ->> -endobj -101 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 103 0 R -/Contents 102 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 79 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -108 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 110 0 R -/Contents 109 0 R ->> -endobj -112 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 114 0 R -/Contents 113 0 R ->> -endobj -115 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 117 0 R -/Contents 116 0 R ->> -endobj -118 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 120 0 R -/Contents 119 0 R ->> -endobj -121 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 123 0 R -/Contents 122 0 R ->> -endobj -124 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 126 0 R -/Contents 125 0 R ->> -endobj -127 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 129 0 R -/Contents 128 0 R ->> -endobj -130 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 132 0 R -/Contents 131 0 R ->> -endobj -133 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 135 0 R -/Contents 134 0 R ->> -endobj -136 0 obj -<< -/Type /Page -/Parent 111 0 R -/Resources 138 0 R -/Contents 137 0 R ->> -endobj -139 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 141 0 R -/Contents 140 0 R ->> -endobj -143 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 145 0 R -/Contents 144 0 R ->> -endobj -146 0 obj -<< -/Type /Page -/Parent 142 0 R -/Resources 148 0 R -/Contents 147 0 R ->> -endobj -162 0 obj -<< -/S /D ->> -endobj -163 0 obj -<< -/Nums [0 162 0 R ] ->> -endobj -10 0 obj -<< -/Type /Pages -/Kids [1 0 R 11 0 R 17 0 R 20 0 R 26 0 R 29 0 R 32 0 R 35 0 R 38 0 R 41 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -48 0 obj -<< -/Type /Pages -/Kids [44 0 R 49 0 R 52 0 R 55 0 R 58 0 R 61 0 R 64 0 R 67 0 R 70 0 R 73 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -79 0 obj -<< -/Type /Pages -/Kids [76 0 R 80 0 R 83 0 R 86 0 R 89 0 R 92 0 R 95 0 R 98 0 R 101 0 R 105 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -111 0 obj -<< -/Type /Pages -/Kids [108 0 R 112 0 R 115 0 R 118 0 R 121 0 R 124 0 R 127 0 R 130 0 R 133 0 R 136 0 R] -/Count 10 -/Parent 47 0 R ->> -endobj -142 0 obj -<< -/Type /Pages -/Kids [139 0 R 143 0 R 146 0 R] -/Count 3 -/Parent 47 0 R ->> -endobj -47 0 obj -<< -/Type /Pages -/Kids [10 0 R 48 0 R 79 0 R 111 0 R 142 0 R ] -/Count 43 -/MediaBox [0 0 612 792] ->> -endobj -164 0 obj -<< -/CreationDate (D:20210202102715-06'00') -/ModDate (D:20210202102715-06'00') -/Producer (Apple pstopdf) ->> -endobj -165 0 obj -<< -/Type /Catalog -/Pages 47 0 R -/PageLabels 163 0 R ->> -endobj -xref -0 166 -0000000000 65535 f -0000297617 00000 n -0000000016 00000 n -0000004067 00000 n -0000293158 00000 n -0000293873 00000 n -0000294085 00000 n -0000294536 00000 n -0000295112 00000 n -0000270807 00000 n -0000301356 00000 n -0000297698 00000 n -0000004205 00000 n -0000010063 00000 n -0000295686 00000 n -0000296000 00000 n -0000296482 00000 n -0000297782 00000 n -0000010241 00000 n -0000015067 00000 n -0000297866 00000 n -0000015209 00000 n -0000019132 00000 n -0000296957 00000 n -0000269487 00000 n -0000270248 00000 n -0000297950 00000 n -0000019357 00000 n -0000025455 00000 n -0000298034 00000 n -0000025620 00000 n -0000033389 00000 n -0000298118 00000 n -0000033567 00000 n -0000041969 00000 n -0000298202 00000 n -0000042126 00000 n -0000049633 00000 n -0000298286 00000 n -0000049811 00000 n -0000055780 00000 n -0000298370 00000 n -0000055947 00000 n -0000062300 00000 n -0000298454 00000 n -0000062465 00000 n -0000070530 00000 n -0000302012 00000 n -0000301493 00000 n -0000298538 00000 n -0000070697 00000 n -0000078245 00000 n -0000298622 00000 n -0000078387 00000 n -0000084717 00000 n -0000298706 00000 n -0000084869 00000 n -0000092084 00000 n -0000298790 00000 n -0000092215 00000 n -0000097704 00000 n -0000298874 00000 n -0000097856 00000 n -0000104715 00000 n -0000298958 00000 n -0000104857 00000 n -0000111469 00000 n -0000299042 00000 n -0000111611 00000 n -0000116021 00000 n -0000299126 00000 n -0000116163 00000 n -0000123938 00000 n -0000299210 00000 n -0000124069 00000 n -0000129170 00000 n -0000299294 00000 n -0000129325 00000 n -0000135567 00000 n -0000301631 00000 n -0000299378 00000 n -0000135735 00000 n -0000140763 00000 n -0000299462 00000 n -0000140905 00000 n -0000144824 00000 n -0000299546 00000 n -0000144978 00000 n -0000151027 00000 n -0000299630 00000 n -0000151171 00000 n -0000157725 00000 n -0000299714 00000 n -0000157893 00000 n -0000165016 00000 n -0000299798 00000 n -0000165181 00000 n -0000172056 00000 n -0000299882 00000 n -0000172197 00000 n -0000178513 00000 n -0000299967 00000 n -0000178656 00000 n -0000185223 00000 n -0000293696 00000 n -0000300054 00000 n -0000185414 00000 n -0000191215 00000 n -0000300141 00000 n -0000191394 00000 n -0000196945 00000 n -0000301771 00000 n -0000300229 00000 n -0000197088 00000 n -0000202409 00000 n -0000300317 00000 n -0000202564 00000 n -0000209111 00000 n -0000300405 00000 n -0000209290 00000 n -0000214375 00000 n -0000300493 00000 n -0000214518 00000 n -0000220339 00000 n -0000300581 00000 n -0000220518 00000 n -0000227357 00000 n -0000300669 00000 n -0000227525 00000 n -0000233801 00000 n -0000300757 00000 n -0000233980 00000 n -0000239644 00000 n -0000300845 00000 n -0000239835 00000 n -0000246079 00000 n -0000300933 00000 n -0000246259 00000 n -0000252776 00000 n -0000301021 00000 n -0000252919 00000 n -0000259304 00000 n -0000301920 00000 n -0000301109 00000 n -0000259483 00000 n -0000266413 00000 n -0000301197 00000 n -0000266581 00000 n -0000269332 00000 n -0000270947 00000 n -0000271145 00000 n -0000271352 00000 n -0000271553 00000 n -0000271745 00000 n -0000271941 00000 n -0000272144 00000 n -0000272346 00000 n -0000272538 00000 n -0000292736 00000 n -0000292945 00000 n -0000297102 00000 n -0000297316 00000 n -0000301285 00000 n -0000301314 00000 n -0000302127 00000 n -0000302251 00000 n -trailer -<< -/Size 166 -/Root 165 0 R -/Info 164 0 R -/ID [<5b8d60deddc14c27227e5c0045afd759><5b8d60deddc14c27227e5c0045afd759>] ->> -startxref -302323 -%%EOF diff --git a/docs/medley-irm/26-GRAPHICS.pdf b/docs/medley-irm/26-GRAPHICS.pdf deleted file mode 100644 index 8e360e3d..00000000 --- a/docs/medley-irm/26-GRAPHICS.pdf +++ /dev/null @@ -1,20133 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5292 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(26. GRAPHICS OUTPUT OPERATIONS)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -486.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 486 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.2111 Tw -[(Streams are used as the basis for all I/O operations. Files are implemented as streams that can)]TJ -0 -1.2222 TD -0.0178 Tw -[(support character printing and reading operations, and file pointer manipulation. An image stream is)]TJ -T* -0.0122 Tw -[(a type of stream that also provides an interface for graphical operations. All of the operations that can)]TJ -T* -0.0633 Tw -[(applied to streams can be applied to image streams. For example, an image stream can be passed as)]TJ -T* -0.1322 Tw -(the argument to )Tj -/TT10 1 Tf -7.7302 0 TD -0 Tw -(PRINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1322 Tw -[(, to print something on an image stream. In addition, special functions are)]TJ --10.7307 -1.2889 TD -0.0044 Tw -(provided to draw lines and curves and perform other graphical operations. Calling these functions on)Tj -0 -1.2222 TD -0 Tw -(a stream that is not an image stream will generate an error.)Tj -/TT4 1 Tf -10 0 0 10 54 425.6 Tm -(Primitive Graphics Concepts)Tj -ET -1 w -54.01 422.89 m -486.01 422.89 l -S -BT -/TT8 1 Tf -9 0 0 9 78 400.94 Tm -0.2256 Tw -(The Interlisp-D graphics system is based on manipulating bitmaps \(rectangular arrays of pixels\),)Tj -T* -0 Tw -(positions, regions, and textures. These objects are used by all of the graphics functions.)Tj -/TT4 1 Tf -10 0 0 10 78 360.6 Tm -(Positions)Tj -/TT8 1 Tf -9 0 0 9 78 334.89 Tm -0.0311 Tw -(A position denotes a point in an )Tj -/TT10 1 Tf -10 0 0 10 209.4053 334.89 Tm -0 Tw -(X,Y)Tj -/TT8 1 Tf -9 0 0 9 227.4082 334.89 Tm -0.0311 Tw -[( coordinate system. A )]TJ -/TT10 1 Tf -10.2449 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0311 Tw -[( is an instance of a record with)]TJ --31.6466 -1.3278 TD -0 Tw -(fields )Tj -/TT10 1 Tf -2.9032 0 TD -(XCOORD)Tj -/TT8 1 Tf -3.6006 0 TD -0.2244 Tw -[( and )]TJ -/TT10 1 Tf -2.6418 0 TD -0 Tw -(YCOORD)Tj -/TT8 1 Tf -3.6006 0 TD -0.2244 Tw -[( and is manipulated with the standard record package facilities. For)]TJ --12.7461 -1.2889 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.2635 0 TD -0.0344 Tw -(\(create POSITION XCOORD )Tj -/TT11 1 Tf -14.5057 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.0344 Tw -[( 10 YCOORD )]TJ -/TT11 1 Tf -6.7044 0 TD -0 Tw -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -0.0344 Tw -[( 20\))]TJ -/TT8 1 Tf -2.4348 0 TD -0.0144 Tw -[( creates a position representing the)]TJ --29.882 -1.2889 TD -0 Tw -(point \(10,20\).)Tj -/TT10 1 Tf -2.6667 -2.4756 TD -(\()Tj -/TT13 1 Tf -0.6001 0 TD -(POSITIONP)Tj -/TT10 1 Tf -5.4009 0 TD -( )Tj -/F1 1 Tf -10 0 0 10 161.4097 277.46 Tm -(X)Tj -/TT10 1 Tf -9 0 0 9 168.4497 277.46 Tm -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-29586.6([Function])]TJ -/F2 1 Tf -10 0 0 10 126 259.58 Tm -(Returns )Tj -/F1 1 Tf -4.018 0 TD -(X)Tj -/F2 1 Tf -0.704 0 TD -( if )Tj -/F1 1 Tf -1.204 0 TD -(X)Tj -/F2 1 Tf -0.704 0 TD -( is a position; )Tj -/TT10 1 Tf -9 0 0 9 256.21 259.58 Tm -(NIL)Tj -/F2 1 Tf -10 0 0 10 272.4126 259.58 Tm -( otherwise.)Tj -/TT4 1 Tf --19.4413 -2.994 TD -(Regions)Tj -/TT8 1 Tf -9 0 0 9 78 203.98 Tm -0.2667 Tw -[(A Region denotes a rectangular area in a coordinate system. Regions are characterized by the)]TJ -0 -1.2222 TD -0.0656 Tw -[(coordinates of their bottom left corner and their width and height. A )]TJ -/TT10 1 Tf -31.5954 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[( is a record with fields)]TJ -/TT10 1 Tf --35.196 -1.2889 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.77 0 TD -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.77 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.27 Tw -(, and )Tj -/TT10 1 Tf -2.9829 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.27 Tw -[(. It can be manipulated with the standard record package)]TJ --17.1249 -1.2889 TD -0.1533 Tw -[(facilities. There are access functions for the )]TJ -/TT10 1 Tf -20.5748 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1533 Tw -[( record that return the )]TJ -/TT10 1 Tf -10.7882 0 TD -0 Tw -(TOP)Tj -/TT8 1 Tf -1.8003 0 TD -0.1533 Tw -[( and )]TJ -/TT10 1 Tf -2.4995 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1533 Tw -[( of the)]TJ --42.2639 -1.2889 TD -0 Tw -(region.)Tj -0 -2.8889 TD -(The following functions are provided for manipulating regions:)Tj -/TT10 1 Tf -10 0 0 10 102 109.9 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 109.9 Tm -(CREATEREGION)Tj -/F1 1 Tf -10 0 0 10 172.8115 109.9 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.5915 109.9 Tm -(LEFT BOTTOM WIDTH HEIGHT)Tj -/TT10 1 Tf -10 0 0 10 305.2126 109.9 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 311.2136 109.9 Tm -[( )-14324([Function])]TJ --20.5793 -1.8889 TD -0.03 Tw -(Returns an instance of the )Tj -/TT10 1 Tf -10 0 0 10 232.6781 92.9 Tm -0 Tw -(REGION)Tj -/TT8 1 Tf -9 0 0 9 268.684 92.9 Tm -0.03 Tw -[( record which has )]TJ -/TT15 1 Tf -8.2284 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.53 0 TD -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT15 1 Tf -0.53 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.03 Tw -[( and )]TJ -/TT15 1 Tf -2.2529 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf --36.3965 -1.3278 TD -(as respectively its )Tj -/TT15 1 Tf -8.0449 0 TD -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.5 0 TD -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT15 1 Tf -0.5 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -(, and )Tj -/TT15 1 Tf -2.4429 0 TD -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -( fields.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT11 11 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -17 0 obj -<< -/Length 8369 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.0989 Tw -(Example: \()Tj -/TT10 1 Tf -10 0 0 10 217.3148 569.49 Tm -0.237 Tw -(CREATEREGION 10 -20 100 200)Tj -/TT8 1 Tf -9 0 0 9 388.8211 569.49 Tm -0.0989 Tw -(\) will create a region that denotes a)Tj --23.869 -1.3278 TD -0.0956 Tw -(rectangle whose width is 100, whose height is 200, and whose lower left corner is at the)Tj -0 -1.2222 TD -0 Tw -(position \(10,-20\).)Tj -/TT10 1 Tf -10 0 0 10 150 524.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 524.26 Tm -(REGIONP)Tj -/F2 1 Tf -10 0 0 10 193.8071 524.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.5871 524.26 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 201.988 524.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 207.989 524.26 Tm -[( )-31126.8([Function])]TJ --3.7766 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a region, )Tj -/TT10 1 Tf -10 0 0 10 276.2871 507.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 294.29 507.26 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 150 484.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 484.03 Tm -(INTERSECTREGIONS)Tj -/F2 1 Tf -10 0 0 10 242.4 484.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 245.18 484.03 Tm -(REGION)Tj -3.6 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 282.98 484.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 285.76 484.03 Tm -(REGION)Tj -3.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 323.56 484.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 326.34 484.03 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 342.5426 484.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 345.3226 484.03 Tm -(REGION)Tj -3.5997 -0.3333 TD -(n)Tj -/TT10 1 Tf -10 0 0 10 383.12 484.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 389.121 484.03 Tm -[( )-6263.2([NoSpread Function])]TJ --23.9023 -2.1833 TD -0.15 Tw -[(Returns a region which is the intersection of a number of regions. Returns )]TJ -/TT10 1 Tf -10 0 0 10 490.6119 464.38 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 508.6149 464.38 Tm -0.15 Tw -[( if the)]TJ --37.1794 -1.3278 TD -0 Tw -(intersection is empty.)Tj -/TT10 1 Tf -10 0 0 10 150 430.15 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 430.15 Tm -(UNIONREGIONS)Tj -/F2 1 Tf -10 0 0 10 220.8 430.15 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.58 430.15 Tm -(REGION)Tj -3.6 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 261.38 430.15 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 264.16 430.15 Tm -(REGION)Tj -3.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 301.96 430.15 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 304.74 430.15 Tm -(...)Tj -/F1 1 Tf -10 0 0 10 320.9426 430.15 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 323.7226 430.15 Tm -(REGION)Tj -3.5997 -0.3333 TD -(n)Tj -/TT10 1 Tf -10 0 0 10 361.52 430.15 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 367.521 430.15 Tm -[( )-8663.2([NoSpread Function])]TJ --21.5023 -2.1778 TD -0.1 Tw -(Returns a region which is the union of a number of regions, i.e. the smallest region that)Tj -0 -1.2278 TD -0 Tw -(contains all of them. Returns )Tj -/TT10 1 Tf -10 0 0 10 292.3755 399.5 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 310.3784 399.5 Tm -( if there are no regions given.)Tj -/TT10 1 Tf -10 0 0 10 150 376.27 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 376.27 Tm -(REGIONSINTERSECTP)Tj -/F2 1 Tf -10 0 0 10 247.8 376.27 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 250.58 376.27 Tm -(REGION)Tj -3.6 -0.3333 TD -(1)Tj -0.6 0.3333 TD -( REGION)Tj -4.2 -0.3333 TD -(2)Tj -/TT10 1 Tf -10 0 0 10 331.58 376.27 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 337.581 376.27 Tm -[( )-16727.7([Function])]TJ --18.1757 -2.1833 TD -(Returns )Tj -/TT10 1 Tf -10 0 0 10 207.5434 356.62 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 213.5444 356.62 Tm -( if )Tj -/TT15 1 Tf -1.124 0 TD -(REGION)Tj -3.601 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( intersects )Tj -/TT15 1 Tf -4.6699 0 TD -(REGION)Tj -3.6012 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(. Returns )Tj -/TT10 1 Tf -10 0 0 10 381.6034 356.62 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 399.6064 356.62 Tm -( if they do not intersect.)Tj -/TT10 1 Tf -10 0 0 10 150 330.74 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 330.74 Tm -(SUBREGIONP)Tj -/F2 1 Tf -10 0 0 10 210 330.74 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.78 330.74 Tm -(LARGEREGION SMALLREGION)Tj -/TT10 1 Tf -10 0 0 10 337.0002 330.74 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 343.0012 330.74 Tm -[( )-16125.4([Function])]TJ --18.7779 -1.8889 TD -(Returns )Tj -/TT10 1 Tf -10 0 0 10 211.3334 313.74 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 217.3344 313.74 Tm -0.4211 Tw -[( if )]TJ -/TT15 1 Tf -1.9662 0 TD -0 Tw -(SMALLREGION)Tj -/TT8 1 Tf -6.6011 0 TD -0.4211 Tw -[( is a subregion \(is equal to or entirely contained in\))]TJ -/TT15 1 Tf --13.3823 -1.3333 TD -0 Tw -(LARGEREGION)Tj -/TT8 1 Tf -6.6011 0 TD -(; otherwise returns )Tj -/TT10 1 Tf -10 0 0 10 310.4502 301.74 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 328.4531 301.74 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 278.51 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 278.51 Tm -(EXTENDREGION)Tj -/F2 1 Tf -10 0 0 10 220.8 278.51 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.58 278.51 Tm -(REGION INCLUDEREGION)Tj -/TT10 1 Tf -10 0 0 10 331.5976 278.51 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 337.5985 278.51 Tm -[( )-16725.7([Function])]TJ --18.1776 -1.8833 TD -0.3622 Tw -(Changes \(destructively modifies\) the region )Tj -/TT15 1 Tf -21.4429 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.3622 Tw -[( so that it includes the region)]TJ -/TT15 1 Tf --25.0435 -1.2889 TD -0 Tw -(INCLUDEREGION)Tj -/TT8 1 Tf -7.8013 0 TD -(. It returns )Tj -/TT15 1 Tf -5.1172 0 TD -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 227.08 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 227.08 Tm -(MAKEWITHINREGION)Tj -/F2 1 Tf -10 0 0 10 242.4 227.08 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 245.18 227.08 Tm -(REGION LIMITREGION)Tj -/TT10 1 Tf -10 0 0 10 342.3958 227.08 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 348.3968 227.08 Tm -[( )-15525.9([Function])]TJ --19.3774 -1.8833 TD -0.1367 Tw -(Changes \(destructively modifies\) the left and bottom of the region )Tj -/TT15 1 Tf -30.8169 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1367 Tw -[( so that it is)]TJ --34.4174 -1.2889 TD -0.0589 Tw -(within the region )Tj -/TT15 1 Tf -8.0692 0 TD -0 Tw -(LIMITREGION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0589 Tw -[(, if possible. If the dimension of )]TJ -/TT15 1 Tf -14.8285 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0589 Tw -[( are larger than)]TJ -/TT15 1 Tf --33.0994 -1.2889 TD -0 Tw -(LIMITREGION)Tj -/TT8 1 Tf -6.6011 0 TD -(, )Tj -/TT15 1 Tf -0.5422 0 TD -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[( is moved to the lower left of )]TJ -/TT15 1 Tf -13.2484 0 TD -0 Tw -(LIMITREGION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0422 Tw -[(. If )]TJ -/TT15 1 Tf -1.7966 0 TD -0 Tw -(LIMITREGION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0422 Tw -[( is)]TJ -/TT10 1 Tf -10 0 0 10 174 175.28 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 192.0029 175.28 Tm -0.6678 Tw -(, the value of the variable )Tj -/TT15 1 Tf -15.4222 0 TD -0 Tw -(WHOLEDISPLAY)Tj -/TT8 1 Tf -7.2012 0 TD -0.6678 Tw -[( \(the screen region\) is used.)]TJ -/TT10 1 Tf -10 0 0 10 174 163.28 Tm -0 Tw -(MAKEWITHINREGION)Tj -/TT8 1 Tf -9 0 0 9 270.0156 163.28 Tm -( returns the modified )Tj -/TT15 1 Tf -9.6357 0 TD -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 140.05 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 140.05 Tm -(INSIDEP)Tj -/F2 1 Tf -10 0 0 10 193.8 140.05 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.58 140.05 Tm -(REGION POSORX Y)Tj -/TT10 1 Tf -10 0 0 10 277.5932 140.05 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.5941 140.05 Tm -[( )-22726.2([Function])]TJ --12.1771 -1.8889 TD -(If )Tj -/TT15 1 Tf -0.9355 0 TD -(POSORX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0156 Tw -[( and )]TJ -/TT15 1 Tf -2.224 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( are numbers, it returns )]TJ -/TT10 1 Tf -10 0 0 10 336.4696 123.05 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 342.4706 123.05 Tm -0.0156 Tw -[( if the point \()]TJ -/TT15 1 Tf -5.7527 0 TD -0 Tw -(POSORX,Y)Tj -/TT8 1 Tf -4.8008 0 TD -0.0156 Tw -(\) is inside of )Tj -/TT15 1 Tf -5.6667 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0156 Tw -[(. If)]TJ -/TT15 1 Tf --38.5397 -1.3333 TD -0 Tw -(POSORX)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[( is a )]TJ -/TT15 1 Tf -2.5948 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.21 Tw -(, it returns )Tj -/TT10 1 Tf -10 0 0 10 322.0275 111.05 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 328.0285 111.05 Tm -0.21 Tw -[( if )]TJ -/TT15 1 Tf -1.544 0 TD -0 Tw -(POSORX)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[( is inside of )]TJ -/TT15 1 Tf -6.1115 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[(. If )]TJ -/TT15 1 Tf -2.2999 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.21 Tw -[( is a)]TJ -/TT10 1 Tf -10 0 0 10 174 99.05 Tm -0 Tw -(WINDOW)Tj -/TT8 1 Tf -9 0 0 9 210.0058 99.05 Tm -0.2122 Tw -[(, the windows interior region in window coordinates is used. Otherwise, it)]TJ --4.0007 -1.3333 TD -0 Tw -(returns )Tj -/TT10 1 Tf -10 0 0 10 205.0869 87.05 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 223.0898 87.05 Tm -(.)Tj -ET -endstream -endobj -18 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -20 0 obj -<< -/Length 7359 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT4 1 Tf --33 -4.38 TD -(Bitmaps)Tj -/TT8 1 Tf -9 0 0 9 78 542.54 Tm -0.0089 Tw -[(The display primitives manipulate graphical images in the form of bitmaps. A bitmap is a rectangular)]TJ -0 -1.2222 TD -0.06 Tw -(array of "pixels," each of which is an integer representing the color of one point in the bitmap image.)Tj -T* -0.0311 Tw -[(A bitmap is created with a specific number of bits allocated for each pixel. Most bitmaps used for the)]TJ -T* -0.0567 Tw -[(display screen use one bit per pixel, so that at most two colors can be represented. If a pixel is 0, the)]TJ -T* -0.0622 Tw -[(corresponding location on the image is white. If a pixel is 1, its location is black. This interpretation)]TJ -0 -1.2278 TD -0.0411 Tw -(can be changed for the display screen with the function )Tj -/TT10 1 Tf -10 0 0 10 303.7952 487.49 Tm -0 Tw -(VIDEOCOLOR)Tj -/TT8 1 Tf -9 0 0 9 363.805 487.49 Tm -0.0411 Tw -[(. Bitmaps with more than one)]TJ --31.7561 -1.3278 TD -0.2822 Tw -[(bit per pixel are used to represent color or grey scale images. Bitmaps use a positive integer)]TJ -0 -1.2222 TD -0.1633 Tw -[(coordinate system with the lower left corner pixel at coordinate \(0,0\). Bitmaps are represented as)]TJ -0 -1.2278 TD -0.2522 Tw -(instances of the datatype )Tj -/TT10 1 Tf -10 0 0 10 188.0356 453.49 Tm -0 Tw -(BITMAP)Tj -/TT8 1 Tf -9 0 0 9 224.0414 453.49 Tm -0.2522 Tw -[(. Bitmaps can be saved on files with the )]TJ -/TT10 1 Tf -10 0 0 10 407.7395 453.49 Tm -0 Tw -(VARS)Tj -/TT8 1 Tf -9 0 0 9 431.7434 453.49 Tm -0.2522 Tw -[( file package)]TJ --39.3048 -1.3278 TD -0 Tw -(command.)Tj -/TT10 1 Tf -10 0 0 10 102 419.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 419.26 Tm -(BITMAPCREATE)Tj -/F3 1 Tf -10 0 0 10 172.8115 419.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.6815 419.26 Tm -(WIDTH HEIGHT BITSPERPIXEL)Tj -/TT10 1 Tf -10 0 0 10 310.7035 419.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.7045 419.26 Tm -[( )-13713.9([Function])]TJ --21.1894 -1.8833 TD -0.1356 Tw -(Creates and returns a new bitmap which is )Tj -/TT15 1 Tf -20.2905 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.1356 Tw -[( pixels wide by )]TJ -/TT15 1 Tf -7.4685 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1356 Tw -[( pixels high,)]TJ --34.3601 -1.2944 TD -0 Tw -(with )Tj -/TT15 1 Tf -2.2832 0 TD -(BITSPERPIXEL)Tj -/TT8 1 Tf -7.2012 0 TD -( bits per pixel. If )Tj -/TT10 1 Tf -10 0 0 10 280.3667 390.66 Tm -(BITSPERPIXEL)Tj -/TT8 1 Tf -9 0 0 9 352.3784 390.66 Tm -( is )Tj -/TT10 1 Tf -10 0 0 10 363.312 390.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 381.3149 390.66 Tm -(, it defaults to 1.)Tj -/TT10 1 Tf -10 0 0 10 102 367.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 367.43 Tm -(BITMAPP)Tj -/F3 1 Tf -10 0 0 10 145.8 367.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 148.67 367.43 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 154.0708 367.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 160.0718 367.43 Tm -[( )-31117.6([Function])]TJ --3.7858 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a bitmap, )Tj -/TT10 1 Tf -10 0 0 10 231.0337 350.43 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 249.0366 350.43 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 102 327.2 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 327.2 Tm -(BITMAPWIDTH)Tj -/F3 1 Tf -10 0 0 10 167.4 327.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.27 327.2 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 202.6752 327.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 208.6762 327.2 Tm -[( )-25717.1([Function])]TJ --9.1862 -1.8833 TD -(Returns the width of )Tj -/TT15 1 Tf -9.3872 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -( in pixels.)Tj -/TT10 1 Tf -10 0 0 10 102 287.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 287.37 Tm -(BITMAPHEIGHT)Tj -/F3 1 Tf -10 0 0 10 172.8 287.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.67 287.37 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 208.0753 287.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 214.0762 287.37 Tm -[( )-25117.1([Function])]TJ --9.7863 -1.8833 TD -(Returns the height of )Tj -/TT15 1 Tf -9.5596 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -( in pixels.)Tj -/TT10 1 Tf -10 0 0 10 102 247.54 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 247.54 Tm -(BITSPERPIXEL)Tj -/F3 1 Tf -10 0 0 10 172.8115 247.54 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.6815 247.54 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 208.0868 247.54 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 214.0878 247.54 Tm -[( )-25115.8([Function])]TJ --9.7875 -1.8833 TD -(Returns the number of bits per pixel of )Tj -/TT15 1 Tf -17.3647 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 207.71 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 207.71 Tm -(BITMAPBIT)Tj -/F2 1 Tf -10 0 0 10 156.6 207.71 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.38 207.71 Tm -(BITMAP X Y NEWVALUE)Tj -/TT10 1 Tf -10 0 0 10 261.9967 207.71 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 267.9977 207.71 Tm -[( )-19125.8([Function])]TJ --15.7775 -1.8833 TD -(If )Tj -/TT15 1 Tf -0.9699 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.05 Tw -[( is between 0 and the maximum value for a pixel in )]TJ -/TT15 1 Tf -23.4491 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -(, the pixel \()Tj -/TT15 1 Tf -5.0484 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -(\))Tj --39.6691 -1.2944 TD -0.0811 Tw -(is changed to )Tj -/TT15 1 Tf -6.3342 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0811 Tw -[( and the old value is returned. If )]TJ -/TT15 1 Tf -15.4507 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0811 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 420.8713 179.11 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 438.8743 179.11 Tm -(, )Tj -/TT15 1 Tf -0.5811 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.0811 Tw -[( is)]TJ --38.9455 -1.3278 TD -0.0344 Tw -[(not changed but the value of the pixel is returned. If )]TJ -/TT15 1 Tf -23.8782 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0344 Tw -[( is anything else, an error)]TJ --28.679 -1.2889 TD -0.1611 Tw -[(is generated. If \()]TJ -/TT15 1 Tf -8.0194 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.1611 Tw -(\) is outside the limits of )Tj -/TT15 1 Tf -11.5663 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1611 Tw -(, 0 is returned and no pixels are)Tj --24.9866 -1.2889 TD -0.1444 Tw -(changed. )Tj -/TT15 1 Tf -4.7928 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1444 Tw -[( can also be a window or display stream. Note: non-window image)]TJ --8.3934 -1.2944 TD -0 Tw -(streams are "write-only"; the )Tj -/TT15 1 Tf -12.8174 0 TD -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -( argument must be non-)Tj -/TT10 1 Tf -10 0 0 10 380.2808 132.31 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 398.2837 132.31 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 109.08 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 109.08 Tm -(BITMAPCOPY)Tj -/F2 1 Tf -10 0 0 10 162 109.08 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.78 109.08 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 197.1852 109.08 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 203.1862 109.08 Tm -[( )-26327.1([Function])]TJ --8.5762 -1.8833 TD -0.0978 Tw -(Returns a new bitmap which is a copy of )Tj -/TT15 1 Tf -19.13 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.0978 Tw -[( \(same dimensions, bits per pixel, and)]TJ --22.7306 -1.2889 TD -0 Tw -(contents\).)Tj -/TT10 1 Tf -10 0 0 10 102 58.25 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 58.25 Tm -(EXPANDBITMAP)Tj -/F1 1 Tf -10 0 0 10 172.8 58.25 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.58 58.25 Tm -(BITMAP WIDTHFACTOR HEIGHTFACTOR)Tj -/TT10 1 Tf -10 0 0 10 343.0072 58.25 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 349.0082 58.25 Tm -[( )-10124.6([Function])]TJ --24.7787 -1.8833 TD -(Returns a new bitmap that is )Tj -/TT15 1 Tf -12.9756 0 TD -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -( times as wide as )Tj -/TT15 1 Tf -7.7153 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -( a)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -24 0 obj -<< -/Length 6425 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 568.26 Tm -(nd )Tj -/TT15 1 Tf -1.4573 0 TD -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.0144 Tw -[( times as high. Each pixel of )]TJ -/F1 1 Tf -10 0 0 10 368.002 568.26 Tm -0 Tw -(BITMAP)Tj -/TT8 1 Tf -9 0 0 9 409.292 568.26 Tm -0.0144 Tw -[( is copied into a )]TJ -/TT15 1 Tf -7.2539 0 TD -0 Tw -(WIDTHFACTOR)Tj -/TT8 1 Tf --33.3974 -1.2944 TD -(times )Tj -/TT15 1 Tf -3.2728 0 TD -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.62 Tw -[( block of pixels. If )]TJ -/TT10 1 Tf -10 0 0 10 376.3652 556.61 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 394.3681 556.61 Tm -(, )Tj -/TT15 1 Tf -1.12 0 TD -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -0.62 Tw -[( defaults to 4,)]TJ -/TT15 1 Tf --32.2064 -1.3278 TD -0 Tw -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -( to 1.)Tj -/TT10 1 Tf -10 0 0 10 150 521.78 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 521.78 Tm -(ROTATEBITMAP)Tj -/F1 1 Tf -10 0 0 10 220.8 521.78 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.58 521.78 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 255.9853 521.78 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 261.9862 521.78 Tm -[( )-25127.1([Function])]TJ --9.7763 -1.8833 TD -0.1244 Tw -(Given an m-high by n-wide bitmap, this function returns an n-high by m-wide bitmap.)Tj -0 -1.2222 TD -0 Tw -(The returned bitmap is the image of the original bitmap, rotated 90 degrees clockwise.)Tj -/TT10 1 Tf -10 0 0 10 150 471.55 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 471.55 Tm -(SHRINKBITMAP)Tj -/F2 1 Tf -10 0 0 10 220.8 471.55 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.58 471.55 Tm -(BITMAP WIDTHFACTOR HEIGHTFACTOR DESTINATIONBITMAP)Tj -/TT10 1 Tf -10 0 0 10 488.2231 471.55 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 494.224 471.55 Tm -( )Tj --37.5805 -1.1056 TD -([Function])Tj -2 -1.7778 TD -0.0211 Tw -(Returns a copy of )Tj -/TT15 1 Tf -8.0874 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( that has been shrunken by )]TJ -/TT15 1 Tf -12.2727 0 TD -0 Tw -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -0.0211 Tw -[( and )]TJ -/TT15 1 Tf -2.2351 0 TD -0 Tw -(HEIGHTFACTOR)Tj -/TT8 1 Tf --32.7968 -1.2944 TD -0.5878 Tw -[(in the width and height, respectively. If )]TJ -/TT10 1 Tf -10 0 0 10 377.5421 433.95 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 395.5451 433.95 Tm -(, )Tj -/TT15 1 Tf -1.0878 0 TD -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -0.5878 Tw -[( defaults to 4,)]TJ -/TT15 1 Tf --32.305 -1.3278 TD -0 Tw -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.3911 Tw -[( to 1. If )]TJ -/TT15 1 Tf -5.4975 0 TD -0 Tw -(DESTINATIONBITMAP)Tj -/TT8 1 Tf -10.2017 0 TD -0.3911 Tw -[( is not provided, a bitmap that is)]TJ --22.9004 -1.2889 TD -0 Tw -(1/)Tj -/TT15 1 Tf -1.106 0 TD -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -0.3056 Tw -[( by 1/)]TJ -/TT15 1 Tf -3.3264 0 TD -0 Tw -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -0.3056 Tw -[( the size of )]TJ -/TT15 1 Tf -6.1822 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.3056 Tw -[( is created and returned.)]TJ -/TT15 1 Tf --28.0174 -1.2889 TD -0 Tw -(WIDTHFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -( and )Tj -/TT15 1 Tf -2.1929 0 TD -(HEIGHTFACTOR)Tj -/TT8 1 Tf -7.2012 0 TD -( must be positive integers.)Tj -/TT10 1 Tf -10 0 0 10 150 375.92 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 375.92 Tm -(PRINTBITMAP)Tj -/F2 1 Tf -10 0 0 10 215.4 375.92 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 218.18 375.92 Tm -(BITMAP FILE)Tj -/TT10 1 Tf -10 0 0 10 277.5897 375.92 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.5906 375.92 Tm -[( )-22726.6([Function])]TJ --12.1767 -1.8833 TD -0.2356 Tw -(Prints the bitmap )Tj -/TT15 1 Tf -8.6202 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.2356 Tw -[( on the file )]TJ -/TT15 1 Tf -5.8514 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2356 Tw -[( in a format that can be read back in by)]TJ -/TT10 1 Tf -10 0 0 10 174 347.32 Tm -0 Tw -(READBITMAP)Tj -/TT8 1 Tf -9 0 0 9 234.0097 347.32 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 324.09 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 324.09 Tm -(READBITMAP)Tj -/F2 1 Tf -10 0 0 10 210 324.09 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.78 324.09 Tm -(FILE)Tj -/TT10 1 Tf -10 0 0 10 234.3835 324.09 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.3845 324.09 Tm -[( )-27527.3([Function])]TJ --7.3761 -1.8889 TD -0.2011 Tw -(Creates a bitmap by reading an expression \(written by )Tj -/TT10 1 Tf -10 0 0 10 408.3994 307.09 Tm -0 Tw -(PRINTBITMAP)Tj -/TT8 1 Tf -9 0 0 9 474.4101 307.09 Tm -0.2011 Tw -(\) from the file)Tj -/TT15 1 Tf --33.3789 -1.3278 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 272.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 272.26 Tm -(EDITBM)Tj -/F2 1 Tf -10 0 0 10 188.4 272.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.18 272.26 Tm -(BMSPEC)Tj -/TT10 1 Tf -10 0 0 10 223.5853 272.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 229.5862 272.26 Tm -[( )-28727.1([Function])]TJ -/TT10 1 Tf -10 0 0 10 174 255.26 Tm -(EDITBM)Tj -/TT8 1 Tf -9 0 0 9 210.0058 255.26 Tm -0.0644 Tw -[( provides an easy-to-use interactive editing facility for various types of bitmaps.)]TJ --4.0007 -1.3278 TD -0 Tw -(If )Tj -/TT15 1 Tf -0.9199 0 TD -(BMSPEC)Tj -/TT8 1 Tf -3.6006 0 TD -( is a bitmap, it is edited. If )Tj -/TT15 1 Tf -11.918 0 TD -(BMSPEC)Tj -/TT8 1 Tf -3.6006 0 TD -( is an atom whose value is a bitmap, its value)Tj --20.0391 -1.2944 TD -0.2122 Tw -[(is edited. If )]TJ -/TT15 1 Tf -6.2805 0 TD -0 Tw -(BMSPEC)Tj -/TT8 1 Tf -3.6006 0 TD -0.2122 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 277.6836 231.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 295.6866 231.66 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 302.0966 231.66 Tm -(EDITBM)Tj -/TT8 1 Tf -9 0 0 9 338.1024 231.66 Tm -0.2122 Tw -[( asks for dimensions and creates a bitmap. If)]TJ -/TT15 1 Tf --18.2336 -1.3278 TD -0 Tw -(BMSPEC)Tj -/TT8 1 Tf -3.6006 0 TD -0.0122 Tw -[( is a region, that portion of the screen bitmap is used. If )]TJ -/TT15 1 Tf -24.9812 0 TD -0 Tw -(BMSPEC)Tj -/TT8 1 Tf -3.6006 0 TD -0.0122 Tw -[( is a window, it is)]TJ --32.1823 -1.2889 TD -0 Tw -(brought to the top and its contents edited.)Tj -/TT10 1 Tf -10 0 0 10 126 182.06 Tm -(EDITBM)Tj -/TT8 1 Tf -9 0 0 9 162.0058 182.06 Tm -0.0656 Tw -[( sets up the bitmap being edited in an editing window. The editing window has two major)]TJ --4.0007 -1.3278 TD -0.0167 Tw -[(areas: a gridded edit area in the lower part of the window and a display area in the upper left part. In)]TJ -0 -1.2222 TD -0.12 Tw -[(the edit area, the left button will add points, the middle button will erase points. The right button)]TJ -T* -0.05 Tw -[(provides access to the normal window commands to reposition and reshape the window. The actual)]TJ -T* -0.0178 Tw -[(size bitmap is shown in the display area. For example, the following is a picture of the bitmap editing)]TJ -T* -0 Tw -(window editing a eight-high by eighteen-wide bitmap:)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -27 0 obj -<< -/Length 3229 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -ET -q -223.5 0 0 -118.5 194.26 575.99 cm -/Im1 Do -Q -BT -/TT8 1 Tf -9 0 0 9 78 434.04 Tm -0.1056 Tw -[(If the bitmap is too large to fit in the edit area, only a portion will be editable. This portion can be)]TJ -0 -1.2222 TD -0.1067 Tw -(changed by scrolling both up and down in the left margin and left and right in the bottom margin.)Tj -T* -0.2822 Tw -(Pressing the middle button while in the display area will bring up a menu that allows global)Tj -T* -0.1211 Tw -[(placement of the portion of the bitmap being edited. To allow more of the bitmap to be editing at)]TJ -0 -1.2278 TD -0.0567 Tw -(once, the window can be reshaped to make it larger or the )Tj -/TT10 1 Tf -10 0 0 10 316.9159 389.99 Tm -0 Tw -(GridSize)Tj -/TT11 1 Tf -4.8008 0 TD -<0040>Tj -/TT8 1 Tf -9 0 0 9 374.7919 389.99 Tm -0.0567 Tw -[( command described below)]TJ --32.9769 -1.3278 TD -0 Tw -(can be used to reduce the size of a bit in the edit area.)Tj -0 -2.8889 TD -0.1333 Tw -[(The bitmap editing window can be reshaped to provide more or less room for editing. When this)]TJ -0 -1.2222 TD -0 Tw -(happens, the space allocated to the editing area will be changed to fit in the new region.)Tj -0 -2.8889 TD -0.0867 Tw -(Whenever the left or middle button is down and the cursor is not in the edit area, the section of the)Tj -0 -1.2222 TD -0.0122 Tw -[(display of the bitmap that is currently in the edit area is complemented. Pressing the left button while)]TJ -T* -0.0278 Tw -(not in the edit region will put the lower left 16 x 16 section of the bitmap into the cursor for as long as)Tj -T* -0 Tw -(the left button is held down.)Tj -0 -2.8889 TD -0.05 Tw -(Pressing the middle button while not in either the edit area or the display area \(i.e., while in the grey)Tj -0 -1.2222 TD -0 Tw -(area in the upper right or in the title\) will bring up a command menu.)Tj -ET -q -58.5 0 0 -82.5 252.76 225.49 cm -/Im2 Do -Q -BT -9 0 0 9 78 119.54 Tm -0.0789 Tw -(There are commands to stop editing, to restore the bitmap to its initial state and to clear the bitmap.)Tj -T* -0.2467 Tw -(Holding the middle button down over a command will result in an explanatory message being)Tj -T* -0 Tw -(printed in the prompt window. The commands are described below:)Tj -/TT10 1 Tf -10 0 0 10 132 79.49 Tm -(Paint)Tj -/TT8 1 Tf -9 0 0 9 174 79.49 Tm -0.4189 Tw -(Puts the current bitmap into a window and call the window )Tj -/TT10 1 Tf -10 0 0 10 455.9431 79.49 Tm -0 Tw -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 174 67.49 Tm -0.19 Tw -[(command on it. The )]TJ -/TT10 1 Tf -10 0 0 10 266.8547 67.49 Tm -0 Tw -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 296.8596 67.49 Tm -0.19 Tw -[( command implements drawing with various)]TJ --13.6511 -1.3333 TD -0.0156 Tw -[(brush sizes and shapes but only on an actual sized bitmap. The )]TJ -/TT10 1 Tf -10 0 0 10 430.8961 55.49 Tm -0 Tw -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 460.901 55.49 Tm -0.0156 Tw -[( mode)]TJ --31.8779 -1.3333 TD -0.0644 Tw -(is left by pressing the )Tj -/TT10 1 Tf -10 0 0 10 263.6832 43.49 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 293.688 43.49 Tm -0.0644 Tw -[( button and selecting the )]TJ -/TT10 1 Tf -10 0 0 10 396.8361 43.49 Tm -0 Tw -(QUIT)Tj -/TT8 1 Tf -9 0 0 9 420.84 43.49 Tm -0.0644 Tw -[( command from)]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT11 11 0 R ->> -/XObject << -/Im1 29 0 R -/Im2 30 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -32 0 obj -<< -/Length 5222 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 569.54 Tm -0.1633 Tw -[(the menu. At this point, you will be given a choice of whether or not the)]TJ -0 -1.2278 TD -0.2222 Tw -(changes you made while in )Tj -/TT10 1 Tf -10 0 0 10 343.1025 558.49 Tm -0 Tw -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 373.1074 558.49 Tm -0.2222 Tw -[( mode should be made to the current)]TJ --16.7897 -1.3278 TD -0 Tw -(bitmap.)Tj -/TT10 1 Tf -10 0 0 10 150 528.49 Tm -(ShowAsTile)Tj -/TT8 1 Tf -9 0 0 9 222 528.49 Tm -0.0444 Tw -[(Tesselates the current bitmap in the upper part of the window. This is useful)]TJ -T* -0.4244 Tw -(for determining how a bitmap will look if it were made the display)Tj -0 -1.2278 TD -0.26 Tw -(background \(using the function )Tj -/TT10 1 Tf -10 0 0 10 359.4254 505.49 Tm -0 Tw -(CHANGEBACKGROUND)Tj -/TT8 1 Tf -9 0 0 9 455.441 505.49 Tm -0.26 Tw -[(\). Note: The tiled)]TJ --25.9379 -1.3278 TD -0.0322 Tw -(display will not automatically change as the bitmap changes; to update it, use)Tj -0 -1.2278 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 236.7348 482.49 Tm -(ShowAsTile)Tj -/TT8 1 Tf -9 0 0 9 296.7446 482.49 Tm -( command again.)Tj -/TT10 1 Tf -10 0 0 10 144 463.49 Tm -(Grid,On/Off)Tj -/TT8 1 Tf -9 0 0 9 222 463.49 Tm -(Turns the editing grid display on or off.)Tj -/TT10 1 Tf -10 0 0 10 152.13 444.49 Tm -(GridSize)Tj -/TT11 1 Tf -4.8008 0 TD -<0040>Tj -/TT8 1 Tf -9 0 0 9 222 444.49 Tm -0.0167 Tw -[(Allows specification of the size of the editing grid. Another menu will appear)]TJ -0 -1.3278 TD -0.1044 Tw -[(giving a choice of several sizes. If one is selected, the editing portion of the)]TJ -0 -1.2222 TD -0.0844 Tw -(bitmap editor will be redrawn using the selected grid size, allowing more or)Tj -T* -0.09 Tw -[(less of the bitmap to be edited without scrolling. The original size is chosen)]TJ -T* -0.1444 Tw -[(hueristically and is typically about 8. It is particularly useful when editing)]TJ -T* -0 Tw -(large bitmaps to set the edit grid size smaller than the original.)Tj -/TT10 1 Tf -10 0 0 10 180 370.49 Tm -(Reset)Tj -/TT8 1 Tf -9 0 0 9 222 370.49 Tm -0.0344 Tw -(Sets all or part of the bitmap to the contents it had when )Tj -/TT10 1 Tf -10 0 0 10 451.2541 370.49 Tm -0 Tw -(EDITBM)Tj -/TT8 1 Tf -9 0 0 9 487.2599 370.49 Tm -0.0344 Tw -[( was called.)]TJ --29.4733 -1.3278 TD -0.0078 Tw -(Another menu will appear giving a choice between resetting the entire bitmap)Tj -0 -1.2222 TD -0.1467 Tw -[(or just the portion that is in the edit area. The second menu also acts as a)]TJ -T* -0.0444 Tw -(confirmation, since not selecting one of the choices on this menu results in no)Tj -T* -0 Tw -(action being taken.)Tj -/TT10 1 Tf -10 0 0 10 180 307.49 Tm -(Clear)Tj -/TT8 1 Tf -9 0 0 9 222 307.49 Tm -0.1478 Tw -[(Sets all or part of the bitmap to 0. As with the )]TJ -/TT10 1 Tf -10 0 0 10 423.913 307.49 Tm -0 Tw -(Reset)Tj -/TT8 1 Tf -9 0 0 9 453.9179 307.49 Tm -0.1478 Tw -[( command, another)]TJ --25.7687 -1.3278 TD -0.1622 Tw -(menu gives a choice between clearing the entire bitmap or just the portion)Tj -0 -1.2222 TD -0 Tw -(that is in the edit area.)Tj -/TT10 1 Tf -10 0 0 10 164.13 266.49 Tm -(Cursor)Tj -/TT11 1 Tf -3.6006 0 TD -<0040>Tj -/TT8 1 Tf -9 0 0 9 222 266.49 Tm -0.0711 Tw -[(Sets the cursor to the lower left part of the bitmap. This prompts the user to)]TJ -0 -1.3278 TD -0 Tw -(specify the cursor "hot spot" by clicking in the lower left corner of the grid.)Tj -/TT10 1 Tf -10 0 0 10 198 236.49 Tm -(OK)Tj -/TT8 1 Tf -9 0 0 9 222 236.49 Tm -0.1378 Tw -(Copies the changed image into the original bitmap, stops the bitmap editor)Tj -T* -0.1322 Tw -[(and closes the edit windows. The changes the bitmap editor makes during)]TJ -0 -1.2222 TD -0.1856 Tw -[(the interaction occur on a copy of the original bitmap. Unless the bitmap)]TJ -0 -1.2278 TD -0 Tw -(editor is exited via )Tj -/TT10 1 Tf -10 0 0 10 297.7881 202.49 Tm -(OK)Tj -/TT8 1 Tf -9 0 0 9 309.79 202.49 Tm -(, no changes are made in the original.)Tj -/TT10 1 Tf -10 0 0 10 186 183.49 Tm -(Stop)Tj -/TT8 1 Tf -9 0 0 9 222 183.49 Tm -(Stops the bitmap editor without making any changes to the original bitmap.)Tj -/TT4 1 Tf -10 0 0 10 126 153.2 Tm -(Textures)Tj -/TT8 1 Tf -9 0 0 9 126 127.54 Tm -0.0011 Tw -(A Texture denotes a pattern of gray which can be used to \(conceptually\) tessellate the plane to form an)Tj -0 -1.2222 TD -0.0633 Tw -[(infinite sheet of gray. It is currently either a 4 by 4 pattern or a 16 by N \(N <= 16\) pattern. Textures)]TJ -T* -0 Tw -(are created from bitmaps using the following function:)Tj -/TT10 1 Tf -10 0 0 10 150 83.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 83.26 Tm -(CREATETEXTUREFROMBITMAP)Tj -/F3 1 Tf -10 0 0 10 280.2 83.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 283.07 83.26 Tm -(BITMAP)Tj -/TT10 1 Tf -10 0 0 10 315.4753 83.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.4762 83.26 Tm -[( )-18517.1([Function])]TJ --16.3862 -1.8833 TD -0.0678 Tw -(Returns a texture object that will produce the texture of )Tj -/TT15 1 Tf -25.3721 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.0678 Tw -[(. If )]TJ -/TT15 1 Tf -1.8733 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.0678 Tw -[( is too large,)]TJ --34.4465 -1.2889 TD -0 Tw -(its lower left portion is used. If )Tj -/TT15 1 Tf -14.0537 0 TD -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -( is too small, it is repeated to fill out the texture.)Tj -ET -endstream -endobj -33 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT11 11 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -35 0 obj -<< -/Length 3966 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(TEXTUREP)Tj -/F3 1 Tf -10 0 0 10 151.2 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 154.07 568.26 Tm -(OBJECT)Tj -/TT10 1 Tf -10 0 0 10 186.4753 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 192.4762 568.26 Tm -[( )-27517.1([Function])]TJ --7.3863 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(OBJECT)Tj -/TT8 1 Tf -3.6006 0 TD -( if it is a texture; )Tj -/TT10 1 Tf -10 0 0 10 257.9238 551.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 275.9267 551.26 Tm -( otherwise.)Tj --21.9919 -3 TD -0.1544 Tw -(The functions which accept textures \()Tj -/TT10 1 Tf -10 0 0 10 233.116 524.26 Tm -0.371 Tw -(TEXTUREP, BITBLT, DSPTEXTURE)Tj -/TT8 1 Tf -9 0 0 9 408.5634 524.26 Tm -0 Tw -(, )Tj -/TT10 1 Tf -10 0 0 10 414.4533 524.26 Tm -(etc)Tj -/TT8 1 Tf -9 0 0 9 432.4563 524.26 Tm -0.1544 Tw -(.\) also accept)Tj --39.384 -1.3278 TD -0.0967 Tw -[(bitmaps up to 16 bits wide by 16 bits high as textures. When a region is being filled with a bitmap)]TJ -0 -1.2222 TD -0 Tw -(texture, the texture is treated as if it were 16 bits wide \(if less, the rest is filled with white space\).)Tj -0 -2.8944 TD -0.4 Tw -(The common textures white and black are available as system constants )Tj -/TT10 1 Tf -10 0 0 10 404.8661 475.26 Tm -0 Tw -(WHITESHADE)Tj -/TT8 1 Tf -9 0 0 9 464.8759 475.26 Tm -0.4 Tw -[( and)]TJ -/TT10 1 Tf -10 0 0 10 78 463.26 Tm -0 Tw -(BLACKSHADE)Tj -/TT8 1 Tf -9 0 0 9 138.0098 463.26 Tm -0.0667 Tw -[(. The global variable )]TJ -/TT10 1 Tf -10 0 0 10 226.3779 463.26 Tm -0 Tw -(GRAYSHADE)Tj -/TT8 1 Tf -9 0 0 9 280.3867 463.26 Tm -0.0667 Tw -[( is used by many system facilities as a background)]TJ --22.4874 -1.3278 TD -0 Tw -(gray shade and can be set by the user.)Tj -/TT10 1 Tf -10 0 0 10 102 429.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 429.03 Tm -(EDITSHADE)Tj -/F3 1 Tf -10 0 0 10 156.6 429.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.47 429.03 Tm -(SHADE)Tj -/TT10 1 Tf -10 0 0 10 186.4744 429.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 192.4753 429.03 Tm -[( )-27517.2([Function])]TJ --7.3862 -1.8833 TD -0.0022 Tw -(Opens a window that allows the user to edit textures. Textures can be either small \(4 by 4\))Tj -0 -1.2222 TD -0.0311 Tw -[(patterns or large \(16 by 16\). In the edit area, the left button adds bits to the shade and the)]TJ -T* -0.03 Tw -[(middle button erases bits from the shade. The top part of the window is painted with the)]TJ -T* -0.2144 Tw -[(current texture whenever all mouse keys are released. Thus it is possible to directly)]TJ -T* -0.1078 Tw -(compare two textures that differ by more than one pixel by holding a mouse key down)Tj -T* -0.0433 Tw -[(until all changes are made. When the "quit" button is selected, the texture being edited is)]TJ -T* -0 Tw -(returned.)Tj -0 -2.0056 TD -(If )Tj -/TT15 1 Tf -0.9255 0 TD -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[( is a texture object, )]TJ -/TT10 1 Tf -10 0 0 10 237.3762 328.03 Tm -0 Tw -(EDITSHADE)Tj -/TT8 1 Tf -9 0 0 9 291.3849 328.03 Tm -0.0056 Tw -[( starts with it. If )]TJ -/TT15 1 Tf -7.4987 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0056 Tw -[( is T, it starts with a large)]TJ --28.8753 -1.3333 TD -0 Tw -(\(16 by 16\) white texture. Otherwise, it starts with )Tj -/TT10 1 Tf -10 0 0 10 324.4834 316.03 Tm -(WHITESHADE)Tj -/TT8 1 Tf -9 0 0 9 384.4931 316.03 Tm -(.)Tj --34.0548 -2.9944 TD -(The following is a picture of the texture editor, editing a large \(16 by 16\) pattern:)Tj -ET -q -150 0 0 -150 231.01 274.53 cm -/Im3 Do -Q -BT -/TT4 1 Tf -10 0 0 10 54 84.74 Tm -(Opening Image Streams)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 82.03 m -486.01 82.03 l -S -BT -/TT8 1 Tf -9 0 0 9 78 60.08 Tm -0.0289 Tw -(An image stream is an output stream which "knows" how to process graphic commands to a graphics)Tj -0 -1.2278 TD -0.23 Tw -[(output device. Besides accepting the normal character-output functions \()]TJ -/TT10 1 Tf -10 0 0 10 387.9303 49.03 Tm -0 Tw -(PRINT)Tj -/TT8 1 Tf -9 0 0 9 417.9352 49.03 Tm -0.23 Tw -(, etc.\), an image)Tj -ET -endstream -endobj -36 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/XObject << -/Im3 37 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -39 0 obj -<< -/Length 8801 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0478 Tw -(stream can also be passed as an argument to functions to draw curves, to print characters in multiple)Tj -0 -1.2222 TD -0 Tw -(fonts, and other graphics operations.)Tj -0 -2.8889 TD -0.1533 Tw -(Each image stream has an "image stream type," a litatom that specifies the type of graphic output)Tj -0 -1.2222 TD -0.18 Tw -[(device that the image stream is processing graphics commands for. Currently, the built-in image)]TJ -0 -1.2278 TD -0.1222 Tw -(stream types are )Tj -/TT10 1 Tf -10 0 0 10 196.9538 510.49 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 238.9606 510.49 Tm -0.1222 Tw -[( \(for the display screen\), )]TJ -/TT10 1 Tf -10 0 0 10 342.5949 510.49 Tm -0 Tw -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 402.6047 510.49 Tm -0.1222 Tw -[( \(for Interpress format printers\),)]TJ --30.7339 -1.47 TD -0 Tw -(and )Tj -/TT10 1 Tf -10 0 0 10 145.3458 497.26 Tm -(PRESS)Tj -/TT8 1 Tf -9 0 0 9 175.3507 497.26 Tm -0.2067 Tw -[( \(for Press format printers\). There are also library packages )]TJ -/F2 1 Tf -10 0 0 10 434.0031 497.26 Tm -0.229 Tw -(available that define)Tj --30.8003 -1.323 TD -0 Tw -(image stream types for the IRIS display, 4045 printer, FX-80 printer, C150 printer, etc.)Tj -/TT8 1 Tf -9 0 0 9 126 458.31 Tm -0.3867 Tw -(Image streams to the display \(display streams\) interpret graphics commands by immediately)Tj -0 -1.2222 TD -0.1967 Tw -(executing the appropriate operations to cause the desired image to appear on the display screen.)Tj -T* -0.12 Tw -(Image streams for hardcopy devices such as Interpress printers interpret the graphic commands by)Tj -T* -0 Tw -(saving information in a file, which can later be sent to the printer.)Tj -0 -2.8889 TD -0.0478 Tw -[(Note: Not all graphics operations can be properly executed for all image stream types. For example,)]TJ -/TT10 1 Tf -10 0 0 10 126 388.26 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 162.0058 388.26 Tm -0.0367 Tw -[( may not be supported to all printers. This functionality is still being developed, but even in)]TJ --4.0007 -1.3278 TD -0.1055 Tw -(the long run some operations may be beyond the physical or logical capabilities of some devices or)Tj -0 -1.2222 TD -0 Tw -(image file formats. In these cases, the stream will approximate the specified image as best it can.)Tj -/TT10 1 Tf -10 0 0 10 150 343.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 343.03 Tm -(OPENIMAGESTREAM)Tj -/F3 1 Tf -10 0 0 10 237 343.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 239.87 343.03 Tm -(FILE IMAGETYPE OPTIONS)Tj -/TT10 1 Tf -10 0 0 10 358.6893 343.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 364.6903 343.03 Tm -[( )-13715.5([Function])]TJ --21.1878 -1.8833 TD -0.1767 Tw -(Opens and returns an image stream of type )Tj -/TT15 1 Tf -20.8215 0 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1767 Tw -[( on a destination specified by)]TJ -/TT15 1 Tf --26.2224 -1.2889 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[(. If )]TJ -/TT15 1 Tf -1.8666 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( is a file name on a normal file storage device, the image stream will store)]TJ --6.6674 -1.2889 TD -0.0355 Tw -(graphics commands on the specified file, which can be transmitted to a printer by explicit)Tj -0 -1.2278 TD -0.2167 Tw -(calls to )Tj -/TT10 1 Tf -10 0 0 10 207.796 291.83 Tm -0 Tw -(LISTFILES)Tj -/TT8 1 Tf -9 0 0 9 261.8047 291.83 Tm -0.2167 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 285.4406 291.83 Tm -0 Tw -(SEND.FILE.TO.PRINTER)Tj -/TT8 1 Tf -9 0 0 9 405.4601 291.83 Tm -0.2167 Tw -[(. If )]TJ -/TT15 1 Tf -2.3199 0 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.2167 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 489.7809 291.83 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 531.7878 291.83 Tm -(,)Tj --39.7542 -1.3278 TD -0.0078 Tw -(then the user is prompted for a window to open. )Tj -/TT15 1 Tf -22.0514 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0078 Tw -[( in this case will be used as the title)]TJ --24.4518 -1.2889 TD -0 Tw -(of the window.)Tj -0 -2.0056 TD -(If )Tj -/TT15 1 Tf -1.1288 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2089 Tw -[( is a file name on the )]TJ -/TT10 1 Tf -10 0 0 10 302.7836 250.23 Tm -0 Tw -(LPT)Tj -/TT8 1 Tf -9 0 0 9 320.7866 250.23 Tm -0.2089 Tw -[( device, this indicates that the graphics commands)]TJ --16.3096 -1.3278 TD -0.0144 Tw -(should be stored in a temporary file, and automatically sent to the printer when the image)Tj -0 -1.2278 TD -0.0011 Tw -(stream is closed by )Tj -/TT10 1 Tf -10 0 0 10 251.6694 227.23 Tm -0 Tw -(CLOSEF)Tj -/TT8 1 Tf -9 0 0 9 287.6752 227.23 Tm -0.0011 Tw -(. )Tj -/TT15 1 Tf -0.7522 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -10 0 0 10 318.3087 227.23 Tm -(=)Tj -/TT8 1 Tf -9 0 0 9 324.3097 227.23 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 326.5697 227.23 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 344.5727 227.23 Tm -0.0001 Tc -0.001 Tw -( is equivalent to )Tj -/TT15 1 Tf -7.2676 0 TD -0 Tc -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT10 1 Tf -10 0 0 10 433.8448 227.23 Tm -(=)Tj -/TT8 1 Tf -9 0 0 9 439.8458 227.23 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 442.1058 227.23 Tm -({LPT})Tj -/TT8 1 Tf -9 0 0 9 472.1107 227.23 Tm -0.0001 Tc -0.001 Tw -(. File names on)Tj --33.1234 -1.3333 TD -0 Tc -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 190.1649 215.23 Tm -(LPT)Tj -/TT8 1 Tf -9 0 0 9 208.1678 215.23 Tm -0.1589 Tw -[( device are of the form {)]TJ -/TT10 1 Tf -10 0 0 10 311.2346 215.23 Tm -0 Tw -(LPT}PRINTERNAME.TYPE)Tj -/TT8 1 Tf -9 0 0 9 431.2542 215.23 Tm -0.1589 Tw -(, where )Tj -/TT10 1 Tf -10 0 0 10 465.7855 215.23 Tm -0 Tw -(PRINTERNAME)Tj -/TT8 1 Tf -9 0 0 9 531.7963 215.23 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 203.23 Tm -(TYPE)Tj -/TT8 1 Tf -9 0 0 9 198.0039 203.23 Tm -0.0233 Tw -(, or both may be omitted.)Tj -/TT10 1 Tf -10 0 0 10 299.236 203.23 Tm -0.057 Tw -[( PRINTERNAME)]TJ -/TT8 1 Tf -9 0 0 9 378.3887 203.23 Tm -0.0233 Tw -[( is the name of the particular printer to)]TJ --22.7099 -1.3278 TD -0.4411 Tw -(which the file will be transmitted on closing; it defaults to the first printer on)Tj -/TT10 1 Tf -10 0 0 10 174 180.23 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 288.0185 180.23 Tm -0.3989 Tw -[( that can print )]TJ -/TT15 1 Tf -8.0511 0 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.3989 Tw -[( files. The )]TJ -/TT10 1 Tf -10 0 0 10 466.1218 180.23 Tm -0 Tw -(TYPE)Tj -/TT8 1 Tf -9 0 0 9 490.1257 180.23 Tm -0.3989 Tw -[( extension)]TJ --35.1251 -1.3333 TD -0.0111 Tw -(supplies the value of )Tj -/TT15 1 Tf -9.4624 0 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0111 Tw -[( when it is defaulted \(see below\). )]TJ -/TT10 1 Tf -10 0 0 10 443.9563 168.23 Tm -0 Tw -(OPENIMAGESTREAM)Tj -/TT8 1 Tf -9 0 0 9 174 156.28 Tm -0.0689 Tw -(will generate an error if the specified printer does not accept the kind of file specified by)Tj -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -2.0722 TD -(If )Tj -/TT15 1 Tf -0.951 0 TD -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0311 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 242.6608 126.63 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 260.6637 126.63 Tm -0.0311 Tw -(, the image type is inferred from the extension field of )Tj -/TT15 1 Tf -24.3334 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[( and the)]TJ -/TT10 1 Tf -10 0 0 10 174 114.63 Tm -0 Tw -(EXTENSIONS)Tj -/TT8 1 Tf -9 0 0 9 234.0097 114.63 Tm -0.0478 Tw -[( properties in the list )]TJ -/TT10 1 Tf -10 0 0 10 320.5743 114.63 Tm -0 Tw -(PRINTFILETYPES)Tj -/TT8 1 Tf -9 0 0 9 404.588 114.63 Tm -0.0478 Tw -[(. Thus, the extensions )]TJ -/TT10 1 Tf -10 0 0 10 496.8083 114.63 Tm -0 Tw -(IP)Tj -/TT8 1 Tf -9 0 0 9 508.8102 114.63 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 513.7402 114.63 Tm -(IPR)Tj -/TT8 1 Tf -9 0 0 9 531.7432 114.63 Tm -(,)Tj --39.7492 -1.3333 TD -(and )Tj -/TT10 1 Tf -10 0 0 10 192.4058 102.63 Tm -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 252.4156 102.63 Tm -0.1022 Tw -[( indicate Interpress format, and the extension )]TJ -/TT10 1 Tf -10 0 0 10 441.1407 102.63 Tm -0 Tw -(PRESS)Tj -/TT8 1 Tf -9 0 0 9 471.1456 102.63 Tm -0.1022 Tw -[( indicates Press)]TJ --33.0162 -1.47 TD -0.0322 Tw -[(format. If )]TJ -/F1 1 Tf -10 0 0 10 216.7455 89.4 Tm -0 Tw -(FILE)Tj -/TT8 1 Tf -9 0 0 9 241.3755 89.4 Tm -0.0322 Tw -[( is a printer file with no extension \(of the form )]TJ -/TT10 1 Tf -10 0 0 10 429.6983 89.4 Tm -0 Tw -({LPT}PRINTERNAME\))Tj -/TT8 1 Tf -9 0 0 9 531.7149 89.4 Tm -(,)Tj --39.7461 -1.3278 TD -(then )Tj -/TT15 1 Tf -2.3781 0 TD -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1589 Tw -[( will be the type that the indicated printer can print. If )]TJ -/TT15 1 Tf -26.3712 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1589 Tw -[( has no)]TJ --36.5506 -1.2944 TD -0.1511 Tw -(extension but is not on the printer device )Tj -/TT10 1 Tf -10 0 0 10 349.8463 65.8 Tm -0 Tw -({LPT})Tj -/TT8 1 Tf -9 0 0 9 379.8512 65.8 Tm -0.1511 Tw -(, then )Tj -/TT15 1 Tf -3.0215 0 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -0.1511 Tw -[( will default to the)]TJ --31.2947 -1.3333 TD -0 Tw -(type accepted by the first printer on )Tj -/TT10 1 Tf -10 0 0 10 318.5317 53.8 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 432.5503 53.8 Tm -(. )Tj -ET -endstream -endobj -40 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -42 0 obj -<< -/Length 5424 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT15 1 Tf -9 0 0 9 126 569.49 Tm -(OPTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1056 Tw -[( is a list in property list format, \()]TJ -/TT10 1 Tf -10 0 0 10 299.3617 569.49 Tm -0.253 Tw -(PROP1 VAL1 PROP2 VAL2 )Tj -/TT8 1 Tf -9 0 0 9 447.5042 569.49 Tm -0.1056 Tw -(\), used to)Tj --35.7227 -1.3278 TD -0.3522 Tw -(specify certain attributes of the image stream; not all attributes are meaningful or)Tj -0 -1.2222 TD -0 Tw -(interpreted by all types of image streams. Acceptable properties are:)Tj -/TT10 1 Tf -10 0 0 10 126 528.49 Tm -(REGION)Tj -/TT8 1 Tf -9 0 0 9 174 528.49 Tm -0.0522 Tw -(Value is the region on the page \(in stream scale units, 0,0 being the lower-left)Tj -0 -1.3278 TD -0.1378 Tw -[(corner of the page\) that text will fill up. It establishes the initial values for)]TJ -/TT10 1 Tf -10 0 0 10 174 505.49 Tm -0 Tw -(DSPLEFTMARGIN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 505.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 256.5627 505.49 Tm -(DSPRIGHTMARGIN)Tj -/TT8 1 Tf -9 0 0 9 340.5763 505.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 345.1263 505.49 Tm -(DSPBOTTOMMARGIN)Tj -/TT8 1 Tf -9 0 0 9 435.141 505.49 Tm -0.0056 Tw -[( \(the point at)]TJ --29.0157 -1.3333 TD -0.4078 Tw -(which carriage returns cause page advancement\) and )Tj -/TT10 1 Tf -10 0 0 10 413.9761 493.49 Tm -0 Tw -(DSPTOPMARGIN)Tj -/TT8 1 Tf -9 0 0 9 174 481.54 Tm -(\(where the stream is positioned at the beginning of a new page\).)Tj -0 -2 TD -1.1422 Tw -(If this property is not given, the value of the variable)Tj -/TT10 1 Tf -10 0 0 10 174 452.49 Tm -0 Tw -(DEFAULTPAGEREGION)Tj -/TT8 1 Tf -9 0 0 9 276.0166 452.49 Tm -(, is used)Tj -/TT10 1 Tf -10 0 0 10 308.2505 452.49 Tm -(.)Tj --17.625 -1.9 TD -(FONTS)Tj -/TT8 1 Tf -9 0 0 9 174 433.49 Tm -0.0267 Tw -[(Value is a list of fonts that are expected to be used in the image stream. Some)]TJ -0 -1.3278 TD -0.2144 Tw -(image streams \(e.g. Interpress\) are more efficient if the expected fonts are)Tj -0 -1.2222 TD -0.0189 Tw -[(specified in advance, but this is not necessary. The first font in this list will be)]TJ -T* -0.0578 Tw -(the initial font of the stream, otherwise the default font for that image stream)Tj -T* -0 Tw -(type will be used.)Tj -/TT10 1 Tf -10 0 0 10 120 370.49 Tm -(HEADING)Tj -/TT8 1 Tf -9 0 0 9 174 370.49 Tm -0.0333 Tw -(Value is the heading to be placed automatically on each page. )Tj -/TT10 1 Tf -10 0 0 10 426.9413 370.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 444.9442 370.49 Tm -0.0333 Tw -[( means no)]TJ --30.1049 -1.3278 TD -0 Tw -(heading.)Tj -0 -2.0056 TD -0.1678 Tw -[(Examples: Suppose that Tremor: is an Interpress printer, Quake is a Press)]TJ -0 -1.3333 TD -0 Tw -(printer, and)Tj -/TT10 1 Tf -10 0 0 10 221.3598 328.49 Tm -( DEFAULTPRINTINGHOST )Tj -/TT8 1 Tf -9 0 0 9 347.3803 328.49 Tm -(is)Tj -/TT10 1 Tf -10 0 0 10 353.8139 328.49 Tm -( \(Tremor: Quake\):)Tj --17.9814 -1.9 TD -(\(OPENIMAGESTREAM\) )Tj -/TT8 1 Tf -9 0 0 9 288.9976 309.49 Tm -0.2911 Tw -(returns an Interpress image stream on printer)Tj --12.7775 -1.3278 TD -0 Tw -(Tremor:.)Tj -/TT10 1 Tf -10 0 0 10 174 279.49 Tm -(\(OPENIMAGESTREAM NIL PRESS\) )Tj -/TT8 1 Tf -9 0 0 9 348.0283 279.49 Tm -(returns a Press stream on Quake.)Tj -/TT10 1 Tf -10 0 0 10 174 260.49 Tm -0.47 Tw -(\(OPENIMAGESTREAM {LPT}.INTERPRESS\) )Tj -/TT8 1 Tf -9 0 0 9 399.4351 260.49 Tm -0.1956 Tw -(returns an Interpress)Tj --25.0483 -1.3278 TD -0 Tw -(stream on Tremor:.)Tj -/TT10 1 Tf -10 0 0 10 174 230.49 Tm -0.042 Tw -(\(OPENIMAGESTREAM {CORE}FOO.PRESS\) )Tj -/TT8 1 Tf -9 0 0 9 384.8741 230.49 Tm -0.0178 Tw -(returns a Press stream on)Tj --23.4305 -1.3333 TD -0 Tw -(the file )Tj -/TT10 1 Tf -10 0 0 10 203.5312 218.49 Tm -({CORE}FOO.PRESS.)Tj --10.1531 -2.323 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 195.26 Tm -(IMAGESTREAMP)Tj -/F3 1 Tf -10 0 0 10 172.8 195.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.67 195.26 Tm -(X IMAGETYPE)Tj -/TT10 1 Tf -10 0 0 10 235.0797 195.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 241.0806 195.26 Tm -[( )-17378.8([NoSpread Function])]TJ --12.7867 -1.8833 TD -(Returns )Tj -/TT15 1 Tf -4.0893 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.3622 Tw -[( \(possibly coerced to a stream\) if it is an output image stream of type)]TJ -/TT15 1 Tf --4.6894 -1.2944 TD -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -( \(or of any type if )Tj -/TT15 1 Tf -7.8774 0 TD -(IMAGETYPE )Tj -/TT10 1 Tf -10 0 0 10 299.5137 166.66 Tm -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 329.5186 166.66 Tm -(\), otherwise )Tj -/TT10 1 Tf -10 0 0 10 378.4692 166.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 396.4722 166.66 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 143.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 143.43 Tm -(IMAGESTREAMTYPE)Tj -/F3 1 Tf -10 0 0 10 189 143.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.87 143.43 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 224.2753 143.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 230.2762 143.43 Tm -[( )-23317.1([Function])]TJ --11.5863 -1.8833 TD -(Returns the image stream type of )Tj -/TT15 1 Tf -14.9214 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 103.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 103.6 Tm -(IMAGESTREAMTYPEP)Tj -/F3 1 Tf -10 0 0 10 194.4 103.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 197.27 103.6 Tm -(STREAM TYPE)Tj -/TT10 1 Tf -10 0 0 10 256.6797 103.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.6806 103.6 Tm -[( )-19716.6([Function])]TJ --15.1867 -1.8889 TD -(Returns )Tj -/TT10 1 Tf -10 0 0 10 159.5434 86.6 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 165.5444 86.6 Tm -( if )Tj -/TT15 1 Tf -1.124 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( is an image stream of type )Tj -/TT15 1 Tf -12.104 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -43 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -45 0 obj -<< -/Length 7273 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Accessing Image Stream Fields)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -534.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -0.1589 Tw -[(The following functions manipulate the fields of an image stream. These functions return the old)]TJ -0 -1.2278 TD -0.17 Tw -[(value \(the one being replaced\). A value of )]TJ -/TT10 1 Tf -10 0 0 10 310.3569 532.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 328.3598 532.49 Tm -0.17 Tw -[( for the new value will return the current setting)]TJ --22.4844 -1.3278 TD -0.0589 Tw -[(without changing it. These functions do not change any of the bits drawn on the image stream; they)]TJ -0 -1.2222 TD -0 Tw -(just affect future operations done on the image stream.)Tj -/TT10 1 Tf -10 0 0 10 150 487.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 487.26 Tm -(DSPCLIPPINGREGION)Tj -/F3 1 Tf -10 0 0 10 247.8 487.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 250.67 487.26 Tm -(REGION STREAM)Tj -/TT10 1 Tf -10 0 0 10 320.8814 487.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 326.8824 487.26 Tm -[( )-17916.4([Function])]TJ --16.9869 -1.8833 TD -0.0222 Tw -(The clipping region is a region that limits the extent of characters printed and lines drawn)Tj -0 -1.2222 TD -0 Tw -(\(in the image streams coordinate system\). Initially set so that no clipping occurs.)Tj -0 -2 TD -0.0744 Tw -[(Warning: For display streams, the window system maintains the clipping region during)]TJ -0 -1.2222 TD -0 Tw -(window operations. Users should be very careful about changing this field.)Tj -/TT10 1 Tf -10 0 0 10 150 408.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 408.03 Tm -(DSPFONT)Tj -/F3 1 Tf -10 0 0 10 193.8 408.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.67 408.03 Tm -(FONT STREAM)Tj -/TT10 1 Tf -10 0 0 10 256.0797 408.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.0806 408.03 Tm -[( )-25116.6([Function])]TJ --9.7867 -1.8833 TD -(The font field specifies the font used when printing characters to the image stream.)Tj -4 -2.0056 TD -0.1978 Tw -(Note: )Tj -/TT10 1 Tf -10 0 0 10 239.9491 373.03 Tm -0 Tw -(DSPFONT)Tj -/TT8 1 Tf -9 0 0 9 281.956 373.03 Tm -0.1978 Tw -[( determines its new font descriptor from )]TJ -/TT15 1 Tf -19.4748 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1978 Tw -[( by the same)]TJ --25.8703 -1.3333 TD -0.3344 Tw -(coercion rules that )Tj -/TT10 1 Tf -10 0 0 10 330.6555 361.03 Tm -0 Tw -(FONTPROP)Tj -/TT8 1 Tf -9 0 0 9 378.6633 361.03 Tm -0.3344 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 404.4191 361.03 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 464.4289 361.03 Tm -0.3344 Tw -[( use , with one)]TJ --24.2699 -1.3333 TD -0.2156 Tw -(additional possibility: If )Tj -/TT15 1 Tf -11.4597 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.2156 Tw -[( is a list of the form )]TJ -/TT10 1 Tf -10 0 0 10 462.7979 349.03 Tm -0 Tw -(\(PROP)Tj -3.0012 -0.2 TD -(1)Tj -0.6 0.2 TD -0.518 Tw -[( VAL)]TJ -2.918 -0.2 TD -0 Tw -(1)Tj --28.199 -1.2 TD -(PROP)Tj -2.4 -0.2 TD -(2)Tj -0.6 0.2 TD -0.045 Tw -[( VAL)]TJ -2.445 -0.2 TD -0 Tw -(2)Tj -0.6 0.2 TD -0.045 Tw -[( ...\))]TJ -/TT8 1 Tf -9 0 0 9 336.9048 335.03 Tm -0.0189 Tw -[( where )]TJ -/TT10 1 Tf -10 0 0 10 366.6662 335.03 Tm -0 Tw -(PROP)Tj -2.4004 -0.2 TD -(1)Tj -/TT8 1 Tf -9 0 0 9 396.67 335.03 Tm -0.0189 Tw -[( is acceptable as a font-property to)]TJ -/TT10 1 Tf -10 0 0 10 246 321.03 Tm -0 Tw -(FONTCOPY)Tj -/TT8 1 Tf -9 0 0 9 294.0078 321.03 Tm -0.7078 Tw -(, then the new font is obtained by )Tj -/TT10 1 Tf -10 0 0 10 479.9766 321.03 Tm -0 Tw -(\(FONTCOPY)Tj --23.3977 -1.2 TD -0.0001 Tc -0.0019 Tw -(\(DSPFONT NIL STREAM\) PROP)Tj -/TT15 1 Tf -9 0 0 9 402.08 306.03 Tm -0 Tc -0 Tw -(1)Tj -/TT10 1 Tf -10 0 0 10 407.48 309.03 Tm -0.0005 Tc -0.0015 Tw -( VAL)Tj -/TT15 1 Tf -9 0 0 9 431.5 306.03 Tm -0 Tc -0 Tw -(1)Tj -/TT10 1 Tf -10 0 0 10 436.9 309.03 Tm -0.0004 Tc -0.0016 Tw -( PROP)Tj -/TT15 1 Tf -9 0 0 9 466.92 306.03 Tm -0 Tc -0 Tw -(2)Tj -/TT10 1 Tf -10 0 0 10 472.32 309.03 Tm -0.0005 Tc -0.0015 Tw -( VAL)Tj -/TT15 1 Tf -9 0 0 9 496.34 306.03 Tm -0 Tc -0 Tw -(2)Tj -/TT10 1 Tf -10 0 0 10 501.74 309.03 Tm -0.0004 Tc -0.0016 Tw -( ...\))Tj -/TT8 1 Tf -9 0 0 9 531.7649 309.03 Tm -0 Tc -0 Tw -(.)Tj --31.7517 -1.6278 TD -0.1233 Tw -(For example, )Tj -/TT10 1 Tf -10 0 0 10 302.1848 294.38 Tm -0.295 Tw -(\(DSPFONT \(SIZE 12\) STREAM\))Tj -/TT8 1 Tf -9 0 0 9 473.0612 294.38 Tm -0.1233 Tw -[( would change)]TJ --25.229 -1.3278 TD -0.0322 Tw -(the font to the 12 point version of the current font, leaving all other font)Tj -0 -1.2222 TD -0 Tw -(properties the same.)Tj -/TT10 1 Tf -10 0 0 10 150 249.15 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 249.15 Tm -(DSPTOPMARGIN)Tj -/F3 1 Tf -10 0 0 10 220.8 249.15 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.67 249.15 Tm -(YPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 310.084 249.15 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.085 249.15 Tm -[( )-19116.1([Function])]TJ --15.7872 -1.8889 TD -0.0311 Tw -(The top margin is an integer that is the )Tj -/TT10 1 Tf -10 0 0 10 332.6313 232.15 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 338.6323 232.15 Tm -0.0311 Tw -[( position after a new page \(in the image streams)]TJ --18.2925 -1.3278 TD -0 Tw -(coordinate system\). This function has no effect on windows.)Tj -/TT10 1 Tf -10 0 0 10 150 197.92 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 197.92 Tm -(DSPBOTTOMMARGIN)Tj -/F3 1 Tf -10 0 0 10 237 197.92 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 239.87 197.92 Tm -(YPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 326.2841 197.92 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.285 197.92 Tm -[( )-17316.1([Function])]TJ --17.5872 -1.8889 TD -0.12 Tw -(The bottom margin is an integer that is the minimum )Tj -/TT10 1 Tf -10 0 0 10 398.2643 180.92 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 404.2653 180.92 Tm -0.12 Tw -[( position that characters will be)]TJ --25.585 -1.3333 TD -0.0511 Tw -(printed by )Tj -/TT10 1 Tf -10 0 0 10 218.9708 168.92 Tm -0 Tw -(PRIN1)Tj -/TT8 1 Tf -9 0 0 9 248.9756 168.92 Tm -0.0511 Tw -[( \(in the image streams coordinate system\). This function has no effect)]TJ --8.3306 -1.3278 TD -0 Tw -(on windows.)Tj -/TT10 1 Tf -10 0 0 10 150 134.69 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 134.69 Tm -(DSPLEFTMARGIN)Tj -/F3 1 Tf -10 0 0 10 226.2 134.69 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.07 134.69 Tm -(XPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 315.484 134.69 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.485 134.69 Tm -[( )-18516.1([Function])]TJ --16.3872 -1.8889 TD -0.2122 Tw -(The left margin is an integer that is the )Tj -/TT10 1 Tf -10 0 0 10 346.9058 117.69 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 352.9068 117.69 Tm -0.2122 Tw -[( position after an end-of-line \(in the image)]TJ --19.8785 -1.3278 TD -0 Tw -(streams coordinate system\). Initially the left edge of the clipping region.)Tj -/TT10 1 Tf -10 0 0 10 150 83.46 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 83.46 Tm -(DSPRIGHTMARGIN)Tj -/F3 1 Tf -10 0 0 10 231.6 83.46 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.47 83.46 Tm -(XPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 320.8841 83.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 326.885 83.46 Tm -[( )-17916.1([Function])]TJ --16.9872 -1.8889 TD -0.1789 Tw -(The right margin is an integer that is the maximum )Tj -/TT10 1 Tf -10 0 0 10 395.5839 66.46 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 401.5849 66.46 Tm -0.1789 Tw -[( position that characters will be)]TJ --25.2872 -1.3333 TD -0.0233 Tw -(printed by )Tj -/TT10 1 Tf -10 0 0 10 218.4708 54.46 Tm -0 Tw -(PRIN1)Tj -/TT8 1 Tf -9 0 0 9 248.4756 54.46 Tm -0.0233 Tw -[( \(in the image streams coordinate system\). This is initially the position)]TJ --8.2751 -1.3278 TD -0 Tw -(of the right edge of the window or page.)Tj -ET -endstream -endobj -46 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -48 0 obj -<< -/Length 7101 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 78 569.49 Tm -0.0067 Tw -(The line length of a window or image stream \(as returned by )Tj -/TT10 1 Tf -10 0 0 10 322.6472 569.49 Tm -0 Tw -(LINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 382.657 569.49 Tm -0.0067 Tw -(\) is computed by dividing)Tj --33.8508 -1.3278 TD -0.0611 Tw -(the distance between the left and right margins by the width of an uppercase "A" in the current font.)Tj -0 -1.2222 TD -0.0789 Tw -(The line length is changed whenever the font, left margin, or right margin are changed or whenever)Tj -T* -0 Tw -(the window is reshaped.)Tj -/TT10 1 Tf -10 0 0 10 102 513.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 513.26 Tm -(DSPOPERATION)Tj -/F3 1 Tf -10 0 0 10 172.8 513.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.67 513.26 Tm -(OPERATION STREAM)Tj -/TT10 1 Tf -10 0 0 10 262.084 513.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 268.085 513.26 Tm -[( )-19116.1([Function])]TJ --15.7872 -1.8889 TD -0.1422 Tw -(The operation is the default )Tj -/TT10 1 Tf -10 0 0 10 244.3155 496.26 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 280.3214 496.26 Tm -0.1422 Tw -[( operation used when printing or drawing on the)]TJ --17.1468 -1.3333 TD -0.0644 Tw -[(image stream. One of )]TJ -/TT10 1 Tf -10 0 0 10 218.377 484.26 Tm -0.154 Tw -(REPLACE, PAINT, INVERT)Tj -/TT8 1 Tf -9 0 0 9 353.4785 484.26 Tm -0.0644 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 369.8568 484.26 Tm -0 Tw -(ERASE)Tj -/TT8 1 Tf -9 0 0 9 399.8616 484.26 Tm -0.0644 Tw -[(. Initially )]TJ -/TT10 1 Tf -10 0 0 10 441.7896 484.26 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 483.7965 484.26 Tm -(.)Tj --39.7552 -1.3278 TD -0.0389 Tw -(This is a meaningless operation for most printers which support the model that once dots)Tj -0 -1.2222 TD -0 Tw -(are deposited on a page they cannot be removed.)Tj -/TT10 1 Tf -10 0 0 10 102 439.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 439.03 Tm -(DSPLINEFEED)Tj -/F3 1 Tf -10 0 0 10 167.4 439.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.27 439.03 Tm -(DELTAY STREAM)Tj -/TT10 1 Tf -10 0 0 10 240.4814 439.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.4824 439.03 Tm -[( )-21516.4([Function])]TJ --13.3869 -2.0256 TD -0.2611 Tw -(The linefeed is an integer that specifies the )Tj -/F1 1 Tf -10 0 0 10 315.9011 420.8 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 322.7511 420.8 Tm -0.2611 Tw -[( increment for each linefeed, normally)]TJ --21.8612 -1.2222 TD -0 Tw -(negative. Initially minus the height of the initial font.)Tj -/TT10 1 Tf -10 0 0 10 102 387.52 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 387.52 Tm -(DSPCLEOL)Tj -/F3 1 Tf -10 0 0 10 151.2 387.52 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 154.07 387.52 Tm -(DSPSTREAM XPOS YPOS HEIGHT)Tj -/TT10 1 Tf -10 0 0 10 294.4928 387.52 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 300.4938 387.52 Tm -[( )-15515.1([Function])]TJ --19.3882 -1.8833 TD -0.2067 Tw -[("Clear to end of line". Clears a region from \()]TJ -/TT15 1 Tf -21.6355 0 TD -0 Tw -(XPOS,YPOS)Tj -/TT8 1 Tf -5.4009 0 TD -0.2067 Tw -(\) to the right margin of the)Tj --27.0364 -1.2944 TD -0.0322 Tw -(display, with a height of )Tj -/TT15 1 Tf -11.1636 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0322 Tw -[(. If )]TJ -/TT15 1 Tf -1.7666 0 TD -0 Tw -(XPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0322 Tw -[( and )]TJ -/TT15 1 Tf -2.2573 0 TD -0 Tw -(YPOS)Tj -/TT8 1 Tf -2.4004 0 TD -0.0322 Tw -[( are )]TJ -/TT10 1 Tf -10 0 0 10 355.7456 358.92 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 373.7485 358.92 Tm -0.0322 Tw -(, clears the remainder of the)Tj --27.5276 -1.3278 TD -0 Tw -(current display line, using the height of the current font.)Tj -/TT6 1 Tf -10 0 0 10 102 324.63 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 105.3301 324.63 Tm -(DSPRUBOUTCHAR)Tj -/TT6 1 Tf -10 0 0 10 175.53 324.63 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 178.3083 324.63 Tm -(DSPSTREAM CHAR X Y TTBL)Tj -/TT6 1 Tf -10 0 0 10 302.5285 324.63 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 444.63 324.63 Tm -([Function])Tj --35.4033 -1.8444 TD -0.0256 Tw -(Backs up over character code )Tj -/TT15 1 Tf -13.2459 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0256 Tw -[( in the )]TJ -/TT15 1 Tf -3.0869 0 TD -0 Tw -(DSPSTREAM)Tj -/TT8 1 Tf -5.4009 0 TD -0.0256 Tw -[(, erasing it. If )]TJ -/TT15 1 Tf -6.3919 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(, )Tj -/TT15 1 Tf -0.5256 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0256 Tw -[( are supplied, the)]TJ --32.2518 -1.2889 TD -0.2533 Tw -(rubbing out starts from the position specified. )Tj -/TT13 1 Tf -22.784 0 TD -0 Tw -(DSPRUBOUTCHAR)Tj -/TT8 1 Tf -7.8013 0 TD -0.2533 Tw -[( assumes )]TJ -/TT15 1 Tf -4.743 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.2533 Tw -[( was)]TJ --37.7286 -1.2889 TD -0.0522 Tw -(printed with the terminal table )Tj -/TT15 1 Tf -14.1132 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0522 Tw -(, so it knows to handle control characters, etc. )Tj -/TT15 1 Tf -21.0857 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf --37.5993 -1.2889 TD -(defaults to the primary terminal table.)Tj -/TT10 1 Tf -10 0 0 10 102 233.95 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 233.95 Tm -(DSPSCALE)Tj -/F3 1 Tf -10 0 0 10 151.2 233.95 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 154.07 233.95 Tm -(SCALE STREAM)Tj -/TT10 1 Tf -10 0 0 10 218.8805 233.95 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 224.8815 233.95 Tm -[( )-23916.5([Function])]TJ --10.9868 -1.8833 TD -0.1144 Tw -(Returns the scale of the image stream )Tj -/TT15 1 Tf -17.535 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1144 Tw -(, a number indicating how many units in)Tj --21.1356 -1.2889 TD -0.1333 Tw -[(the streams coordinate system correspond to one printers point \(1/72 of an inch\). For)]TJ -0 -1.2278 TD -0 Tw -(example, )Tj -/TT10 1 Tf -10 0 0 10 164.6512 194.35 Tm -(DSPSCALE)Tj -/TT8 1 Tf -9 0 0 9 212.659 194.35 Tm -0.0456 Tw -[( returns 1 for display streams, and 35.27778 for Interpress and Press)]TJ --9.6288 -1.3278 TD -0.0022 Tw -(streams \(the number of micas per printers point\). In order to be device-independent, user)Tj -0 -1.2222 TD -0.1344 Tw -(graphics programs must either not specify position values absolutely, or must multiply)Tj -0 -1.2278 TD -0.01 Tw -(absolute point quantities by the )Tj -/TT10 1 Tf -10 0 0 10 254.2254 160.35 Tm -0 Tw -(DSPSCALE)Tj -/TT8 1 Tf -9 0 0 9 302.2332 160.35 Tm -0.01 Tw -[( of the destination stream. For example, to set)]TJ --19.5815 -1.3333 TD -0 Tw -(the left margin of the Interpress stream )Tj -/TT10 1 Tf -10 0 0 10 283.3945 148.35 Tm -(XX)Tj -/TT8 1 Tf -9 0 0 9 295.3965 148.35 Tm -( to one inch, do)Tj -/TT10 1 Tf -10 0 0 10 174 129.35 Tm -(\(DSPLEFTMARGIN \(TIMES 72 \(DSPSCALE NIL XX\)\) XX\))Tj -/TT8 1 Tf -9 0 0 9 126 112.35 Tm -(The )Tj -/TT10 1 Tf -10 0 0 10 145.2044 112.35 Tm -(SCALE)Tj -/TT8 1 Tf -9 0 0 9 175.2093 112.35 Tm -0.21 Tw -[( argument to )]TJ -/TT10 1 Tf -10 0 0 10 234.3959 112.35 Tm -0 Tw -(DSPSCALE)Tj -/TT8 1 Tf -9 0 0 9 282.4037 112.35 Tm -0.21 Tw -[( is currently ignored. In a future release it will)]TJ --17.3782 -1.3278 TD -0.1722 Tw -(enable the scale of the stream to be changed under user control, so that the necessary)Tj -0 -1.2222 TD -0.0067 Tw -[(multiplication will be done internal to the image stream interface. In this case, it would be)]TJ -0 -1.2278 TD -0 Tw -(possible to set the left margin of the Interpress stream )Tj -/TT10 1 Tf -10 0 0 10 341.5342 78.35 Tm -(XX)Tj -/TT8 1 Tf -9 0 0 9 353.5361 78.35 Tm -( to one inch by doing)Tj -/TT10 1 Tf -10 0 0 10 174 59.35 Tm -(\(DSPSCALE 1 XX\))Tj -0 -1 TD -(\(DSPLEFTMARGIN 72 XX\))Tj -ET -endstream -endobj -49 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -53 0 obj -<< -/Length 6784 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 568.26 Tm -(DSPSPACEFACTOR)Tj -/F3 1 Tf -10 0 0 10 231.6133 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.4833 568.26 Tm -(FACTOR STREAM)Tj -/TT10 1 Tf -10 0 0 10 304.6947 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 310.6957 568.26 Tm -[( )-19714.9([Function])]TJ --15.1884 -1.8833 TD -0.1344 Tw -(The space factor is the amount by which to multiply the natural width of all following)Tj -0 -1.2222 TD -0.1722 Tw -(space characters on )Tj -/TT15 1 Tf -9.3311 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1722 Tw -[(; this can be used for the justification of text. The default)]TJ --12.9317 -1.2889 TD -0.14 Tw -[(value is 1. For example, if the natural width of a space in )]TJ -/TT15 1 Tf -27.4112 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.14 Tw -(s current font is 12)Tj --31.0118 -1.2889 TD -0.0222 Tw -[(units, and the space factor is set to two, spaces appear 24 units wide. The values returned)]TJ -0 -1.2278 TD -0 Tw -(by )Tj -/TT10 1 Tf -10 0 0 10 186.2343 506.06 Tm -(STRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 252.2451 506.06 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 271.9809 506.06 Tm -(CHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 325.9897 506.06 Tm -( are also affected.)Tj --22.2211 -2.9944 TD -(The following two functions only have meaning for image streams that can display color:)Tj -/TT10 1 Tf -10 0 0 10 150 456.83 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 456.83 Tm -(DSPCOLOR)Tj -/F3 1 Tf -10 0 0 10 199.208 456.83 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 202.078 456.83 Tm -(COLOR STREAM)Tj -/TT10 1 Tf -10 0 0 10 266.8885 456.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.8895 456.83 Tm -[( )-23915.6([Function])]TJ --10.9877 -1.8833 TD -0.09 Tw -(Sets the default foreground color of )Tj -/TT15 1 Tf -16.4707 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.09 Tw -[(. Returns the previous foreground color. If)]TJ -/TT15 1 Tf --20.0712 -1.2944 TD -0 Tw -(COLOR)Tj -/TT8 1 Tf -3.0005 0 TD -0.1211 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 214.118 428.23 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 232.1209 428.23 Tm -0.1211 Tw -[(, it returns the current foreground color without changing anything. The)]TJ --6.4579 -1.3278 TD -0 Tw -(default color is white)Tj -/TT10 1 Tf -10 0 0 10 150 394 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 394 Tm -(DSPBACKCOLOR)Tj -/F3 1 Tf -10 0 0 10 220.8115 394 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 394 Tm -(COLOR STREAM)Tj -/TT10 1 Tf -10 0 0 10 288.4921 394 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 294.493 394 Tm -[( )-21515.2([Function])]TJ --13.3881 -1.8833 TD -0.0578 Tw -(Sets the background color of )Tj -/TT15 1 Tf -13.1268 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0578 Tw -[(. Returns the previous background color. If )]TJ -/TT15 1 Tf -20.2759 0 TD -0 Tw -(COLOR)Tj -/TT8 1 Tf --37.0032 -1.2944 TD -(is )Tj -/TT10 1 Tf -10 0 0 10 183.4736 365.4 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 201.4765 365.4 Tm -0.0878 Tw -[(, it returns the current background color without changing anything. The default)]TJ --3.0529 -1.3278 TD -0 Tw -(background color is black.)Tj -/TT4 1 Tf -10 0 0 10 102 311.11 Tm -(Current Position of an Image Stream)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 308.4 m -534.01 308.4 l -S -BT -/TT8 1 Tf -9 0 0 9 126 286.45 Tm -0.1744 Tw -(Each image stream has a "current position," which is a position \(in the image streams coordinate)Tj -0 -1.2222 TD -0.13 Tw -[(system\) where the next printing operation will start from. The functions which print characters or)]TJ -T* -0.1511 Tw -[(draw on an image stream update these values appropriately. The following functions are used to)]TJ -T* -0 Tw -(explicitly access the current position of an image stream:)Tj -/TT10 1 Tf -10 0 0 10 150 231.17 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 231.17 Tm -(DSPXPOSITION)Tj -/F3 1 Tf -10 0 0 10 220.8115 231.17 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 231.17 Tm -(XPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 310.0956 231.17 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.0966 231.17 Tm -[( )-19114.8([Function])]TJ --15.7885 -1.8889 TD -0.0956 Tw -(Returns the )Tj -/TT10 1 Tf -10 0 0 10 223.9983 214.17 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 229.9993 214.17 Tm -0.0956 Tw -[( coordinate of the current position of )]TJ -/TT15 1 Tf -17.1147 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0956 Tw -[(. If )]TJ -/TT15 1 Tf -1.9566 0 TD -0 Tw -(XPOSITION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0956 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 513.6943 214.17 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 531.6973 214.17 Tm -(,)Tj --39.7441 -1.3333 TD -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 202.17 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 194.7358 202.17 Tm -( coordinate is set to it \(without changing the )Tj -/TT10 1 Tf -10 0 0 10 372.2573 202.17 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 378.2583 202.17 Tm -( coordinate\).)Tj -/TT10 1 Tf -10 0 0 10 150 178.94 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 178.94 Tm -(DSPYPOSITION)Tj -/F3 1 Tf -10 0 0 10 220.8115 178.94 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 178.94 Tm -(YPOSITION STREAM)Tj -/TT10 1 Tf -10 0 0 10 310.0956 178.94 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.0966 178.94 Tm -[( )-19114.8([Function])]TJ --15.7885 -1.8889 TD -0.0956 Tw -(Returns the )Tj -/TT10 1 Tf -10 0 0 10 223.9983 161.94 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 229.9993 161.94 Tm -0.0956 Tw -[( coordinate of the current position of )]TJ -/TT15 1 Tf -17.1147 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0956 Tw -[(. If )]TJ -/TT15 1 Tf -1.9566 0 TD -0 Tw -(YPOSITION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0956 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 513.6943 161.94 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 531.6973 161.94 Tm -(,)Tj --39.7441 -1.3333 TD -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 149.94 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 194.7358 149.94 Tm -( coordinate is set to it \(without changing the )Tj -/TT10 1 Tf -10 0 0 10 372.2573 149.94 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 378.2583 149.94 Tm -( coordinate\).)Tj -/TT10 1 Tf -10 0 0 10 150 126.71 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 126.71 Tm -(MOVETO)Tj -/F3 1 Tf -10 0 0 10 188.4062 126.71 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.2762 126.71 Tm -(X Y STREAM)Tj -/TT10 1 Tf -10 0 0 10 245.285 126.71 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.286 126.71 Tm -[( )-26316([Function])]TJ --8.5873 -1.8833 TD -(Changes the current position of )Tj -/TT15 1 Tf -14.1792 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( to the point \()Tj -/TT15 1 Tf -5.9385 0 TD -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -(\).)Tj -/TT10 1 Tf -10 0 0 10 150 86.88 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 86.88 Tm -(RELMOVETO)Tj -/F3 1 Tf -10 0 0 10 204.6089 86.88 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.4789 86.88 Tm -(DX DY STREAM)Tj -/TT10 1 Tf -10 0 0 10 272.2894 86.88 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 278.2904 86.88 Tm -[( )-23315.5([Function])]TJ --11.5878 -1.8833 TD -0.0133 Tw -(Changes the current position to the point \()Tj -/TT15 1 Tf -18.8321 0 TD -0 Tw -(DX,DY)Tj -/TT8 1 Tf -3.0005 0 TD -0.0133 Tw -(\) coordinates away from current position)Tj --21.8326 -1.2889 TD -0 Tw -(of )Tj -/TT15 1 Tf -1.1289 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -ET -endstream -endobj -54 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -56 0 obj -<< -/Length 8498 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(MOVETOUPPERLEFT)Tj -/F3 1 Tf -10 0 0 10 189.0142 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.8842 568.26 Tm -(STREAM REGION)Tj -/TT10 1 Tf -10 0 0 10 262.0956 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 268.0966 568.26 Tm -[( )-19114.8([Function])]TJ --15.7885 -1.8833 TD -0.0644 Tw -[(Moves the current position to the beginning position of the top line of text. If )]TJ -/TT15 1 Tf -35.3763 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -[( is)]TJ --38.9769 -1.2944 TD -0 Tw -(non-)Tj -/TT10 1 Tf -10 0 0 10 144.3867 539.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 162.3896 539.66 Tm -0.08 Tw -(, it must be a )Tj -/TT15 1 Tf -6.2853 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( and the )]TJ -/TT10 1 Tf -10 0 0 10 287.9929 539.66 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 293.9939 539.66 Tm -0.08 Tw -[( position is changed to the left edge of )]TJ -/TT15 1 Tf -17.7381 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf --36.4041 -1.3333 TD -0.2056 Tw -(and the )Tj -/TT10 1 Tf -10 0 0 10 161.9207 527.66 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 167.9217 527.66 Tm -0.2056 Tw -[( position changed to the top of )]TJ -/TT15 1 Tf -15.1611 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.2056 Tw -[( less the font ascent of )]TJ -/TT15 1 Tf -11.1591 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2056 Tw -[(. If)]TJ -/TT15 1 Tf --38.1793 -1.3333 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1922 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 172.7989 515.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 190.8018 515.66 Tm -0.1922 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 213.4966 515.66 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 219.4976 515.66 Tm -0.1922 Tw -[( coordinate is changed to the left margin of )]TJ -/TT15 1 Tf -20.9429 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1922 Tw -[( and the )]TJ -/TT10 1 Tf -10 0 0 10 480.0496 515.66 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 126 503.71 Tm -0.0878 Tw -(coordinate is changed to the top of the clipping region of )Tj -/TT15 1 Tf -26.2878 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0878 Tw -[( less the font ascent of)]TJ -/TT15 1 Tf --29.8884 -1.2889 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 54 449.17 Tm -(Moving Bits Between Bitmaps With BITBLT)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 446.46 m -486.01 446.46 l -S -BT -/TT10 1 Tf -10 0 0 10 78 424.46 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 114.0059 424.46 Tm -0.0256 Tw -[( is the primitive function for moving bits from one bitmap to another, or from a bitmap to an)]TJ --4.0007 -1.3278 TD -0 Tw -(image stream.)Tj -/TT10 1 Tf -10 0 0 10 102 390.23 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 390.23 Tm -(BITBLT)Tj -/F3 1 Tf -10 0 0 10 140.4063 390.23 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 146.7363 390.23 Tm -0.7244 Tw -(SOURCE SOURCELEFT SOURCEBOTTOM DESTINATION DESTINATIONLEFT)Tj --4.304 -1.0389 TD -1.32 Tw -(DESTINATIONBOTTOM WIDTH HEIGHT SOURCETYPE OPERATION TEXTURE)Tj -0 -1.0722 TD -0 Tw -(CLIPPINGREGION)Tj -/TT10 1 Tf -10 0 0 10 183.6123 371.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 189.6133 371.23 Tm -0.55 Tw -[( )-26735.2([Function])]TJ --7.0681 -1.8833 TD -0.0822 Tw -(Transfers a rectangular array of bits from )Tj -/TT15 1 Tf -19.0175 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[( to )]TJ -/TT15 1 Tf -1.5365 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0822 Tw -[(. )]TJ -/TT15 1 Tf -1.5789 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[( can be a)]TJ --35.9351 -1.2889 TD -0.2289 Tw -(bitmap, or a display stream or window, in which case its associated bitmap is used.)Tj -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -( can be a bitmap or an arbitrary image stream.)Tj -/TT15 1 Tf --6.6011 -2.0667 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.3922 Tw -[( and )]TJ -/TT15 1 Tf -2.9773 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3922 Tw -[( define a pair of rectangles, one in each of the )]TJ -/TT15 1 Tf -24.4824 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -0.3922 Tw -[( and)]TJ -/TT15 1 Tf --37.6614 -1.2889 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.6811 Tw -[( whose left, bottom corners are at, respectively, \()]TJ -/TT15 1 Tf -26.8009 0 TD -0 Tw -(SOURCELEFT,)Tj --33.402 -1.2889 TD -(SOURCEBOTTOM)Tj -/TT8 1 Tf -7.2012 0 TD -0.0622 Tw -(\) and \()Tj -/TT15 1 Tf -2.9833 0 TD -0.1489 Tw -(DESTINATIONLEFT, DESTINATIONBOTTOM)Tj -/TT8 1 Tf -20.5522 0 TD -0.0622 Tw -[(\). If these rectangles)]TJ --30.7367 -1.2889 TD -0.2511 Tw -(overlap the boundaries of either source or destination they are both reduced in size)Tj -0 -1.2222 TD -0.6678 Tw -[(\(without translation\) so that they fit within their respective boundaries. If)]TJ -/TT15 1 Tf -0 -1.2278 TD -0 Tw -(CLIPPINGREGION)Tj -/TT8 1 Tf -8.4014 0 TD -0.1789 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 234.1526 256.23 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 252.1555 256.23 Tm -0.1789 Tw -[( it should be a )]TJ -/TT15 1 Tf -7.3505 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1789 Tw -[( and is interpreted as a clipping)]TJ --24.9684 -1.3278 TD -0.2244 Tw -(region within )Tj -/TT15 1 Tf -6.7043 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.2244 Tw -(; clipping to this region may further reduce the defining)Tj --13.3053 -1.2889 TD -0.4033 Tw -[(rectangles. These \(possibly reduced\) rectangles define the source and destination)]TJ -0 -1.2278 TD -0 Tw -(rectangles for )Tj -/TT10 1 Tf -10 0 0 10 182.25 221.63 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 218.2558 221.63 Tm -(. )Tj --10.2507 -2.1056 TD -0.5078 Tw -(The mode of )Tj -/TT15 1 Tf -7.3446 0 TD -0 Tw -(transferring)Tj -/TT8 1 Tf -7.2012 0 TD -0.5078 Tw -[( bits is defined by )]TJ -/TT15 1 Tf -10.5931 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.5078 Tw -[( and )]TJ -/TT15 1 Tf -3.2084 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT15 1 Tf --39.7492 -1.2889 TD -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.0278 Tw -[( and )]TJ -/TT15 1 Tf -2.2484 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0278 Tw -[( specify whether the source bits should come from )]TJ -/TT15 1 Tf -22.7422 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf --36.3925 -1.2889 TD -(or )Tj -/TT15 1 Tf -1.7765 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.5856 Tw -(, and how these bits are combined with those of )Tj -/TT15 1 Tf -27.1764 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT15 1 Tf --39.7546 -1.2889 TD -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -( and )Tj -/TT15 1 Tf -2.1929 0 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -( are described further below.)Tj -/TT15 1 Tf --13.5947 -2.0722 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2222 Tw -[( is a texture. )]TJ -/TT10 1 Tf -10 0 0 10 226.3603 149.23 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 262.3662 149.23 Tm -0.2222 Tw -[( aligns the texture so that the upper-left pixel of the)]TJ --15.1518 -1.3278 TD -0 Tw -(texture coincides with the upper-left pixel of the destination bitmap.)Tj -/TT15 1 Tf -0 -2 TD -0.9733 Tw -(SOURCELEFT, SOURCEBOTTOM, DESTINATIONLEFT)Tj -/TT8 1 Tf -26.5507 0 TD -0.4056 Tw -(, and )Tj -/TT15 1 Tf -3.254 0 TD -0 Tw -(DESTINATIONBOTTOM)Tj -/TT8 1 Tf --29.8047 -1.2889 TD -0.3011 Tw -(default to 0. )Tj -/TT15 1 Tf -6.9696 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.3011 Tw -[( and )]TJ -/TT15 1 Tf -2.7951 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3011 Tw -[( default to the width and height of the )]TJ -/TT15 1 Tf -19.7818 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT15 1 Tf --39.7481 -1.2944 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1444 Tw -[( defaults to white. )]TJ -/TT15 1 Tf -9.1734 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.1444 Tw -[( defaults to )]TJ -/TT10 1 Tf -10 0 0 10 350.9762 96.03 Tm -0 Tw -(INPUT)Tj -/TT8 1 Tf -9 0 0 9 380.981 96.03 Tm -0.1444 Tw -(. )Tj -/TT15 1 Tf -1.0389 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.1444 Tw -[( defaults to)]TJ -/TT10 1 Tf -10 0 0 10 126 84.03 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 168.0068 84.03 Tm -0.3844 Tw -[(. If )]TJ -/TT15 1 Tf -2.8233 0 TD -0 Tw -(CLIPPINGREGION)Tj -/TT8 1 Tf -8.4014 0 TD -0.3844 Tw -[( is not provided, no additional clipping is done.)]TJ -/TT10 1 Tf -10 0 0 10 126 72.03 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 162.0058 72.03 Tm -( returns )Tj -/TT10 1 Tf -10 0 0 10 195.3428 72.03 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 201.3437 72.03 Tm -( if any bits were moved; )Tj -/TT10 1 Tf -10 0 0 10 299.2363 72.03 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 317.2392 72.03 Tm -( otherwise.)Tj --21.2488 -2.1056 TD -0.3644 Tw -[(Note: If )]TJ -/TT15 1 Tf -4.9454 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -0.3644 Tw -[( or )]TJ -/TT15 1 Tf -2.1698 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.3644 Tw -[( is a window or image stream, the remaining)]TJ --17.3168 -1.2889 TD -0.1689 Tw -(arguments are interpreted as values in the coordinate system of the window or image)Tj -ET -endstream -endobj -57 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -59 0 obj -<< -/Length 5459 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.1589 Tw -(stream and the operation of )Tj -/TT10 1 Tf -10 0 0 10 293.4874 569.49 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 329.4933 569.49 Tm -0.1589 Tw -[( is translated and clipped accordingly. Also, if a)]TJ --17.277 -1.3333 TD -0.0189 Tw -(window or image stream is used as the destination to )Tj -/TT10 1 Tf -10 0 0 10 390.1443 557.49 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 426.1502 557.49 Tm -0.0189 Tw -(, its clipping region further)Tj --28.0167 -1.3278 TD -0 Tw -(limits the region involved.)Tj -/TT15 1 Tf -0 -2 TD -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.0656 Tw -[( specifies whether the source bits should come from the bitmap )]TJ -/TT15 1 Tf -28.8925 0 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -(, or)Tj --38.4941 -1.2889 TD -0 Tw -(from the texture )Tj -/TT15 1 Tf -7.4185 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -( is interpreted as follows:)Tj -/TT10 1 Tf -10 0 0 10 180 497.29 Tm -(INPUT)Tj -/TT8 1 Tf -9 0 0 9 222 497.29 Tm -(The source bits come from )Tj -/TT15 1 Tf -11.917 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -( is ignored.)Tj -/TT10 1 Tf -10 0 0 10 174 478.29 Tm -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 222 478.29 Tm -(The source bits are the inverse of the bits from )Tj -/TT15 1 Tf -20.6519 0 TD -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -( is ignored.)Tj -/TT10 1 Tf -10 0 0 10 168 459.29 Tm -(TEXTURE)Tj -/TT8 1 Tf -9 0 0 9 222 459.29 Tm -0.2844 Tw -(The source bits come from )Tj -/TT15 1 Tf -13.3392 0 TD -0.6822 Tw -[(TEXTURE. SOURCE, SOURCELEFT)]TJ -/TT8 1 Tf -18.8494 0 TD -0.2845 Tw -(, and)Tj -/TT15 1 Tf --32.1886 -1.3278 TD -0 Tw -(SOURCEBOTTOM)Tj -/TT8 1 Tf -7.2012 0 TD -( are ignored.)Tj -/TT15 1 Tf --7.2012 -2.0667 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.1133 Tw -[( specifies how the source bits \(as specified by )]TJ -/TT15 1 Tf -21.1885 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.1133 Tw -(\) are)Tj --32.5903 -1.2889 TD -0.0167 Tw -(combined with the bits in )Tj -/TT15 1 Tf -11.6097 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0167 Tw -[( and stored back into )]TJ -/TT15 1 Tf -9.6053 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT15 1 Tf --34.4172 -1.2889 TD -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -( is one of the following:)Tj -/TT10 1 Tf -10 0 0 10 168 386.89 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 222 386.89 Tm -(All source bits \(on or off\) replace destination bits.)Tj -/TT10 1 Tf -10 0 0 10 180 367.89 Tm -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 222 367.89 Tm -0.0167 Tw -[(Any source bits that are on replace the corresponding destination bits. Source)]TJ -0 -1.3333 TD -0.0367 Tw -[(bits that are off have no effect. Does a logical )]TJ -/TT10 1 Tf -10 0 0 10 407.4669 355.89 Tm -0 Tw -(OR)Tj -/TT8 1 Tf -9 0 0 9 419.4688 355.89 Tm -0.0367 Tw -[( between the source bits and)]TJ --21.941 -1.3278 TD -0 Tw -(the destination bits.)Tj -/TT10 1 Tf -10 0 0 10 174 325.89 Tm -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 222 325.89 Tm -0.06 Tw -[(Any source bits that are on invert the corresponding destination bits. Does a)]TJ -0 -1.3333 TD -0 Tw -(logical )Tj -/TT10 1 Tf -10 0 0 10 250.5205 313.89 Tm -(XOR)Tj -/TT8 1 Tf -9 0 0 9 268.5234 313.89 Tm -( between the source bits and the destination bits.)Tj -/TT10 1 Tf -10 0 0 10 180 294.89 Tm -(ERASE)Tj -/TT8 1 Tf -9 0 0 9 222 294.89 Tm -0.0878 Tw -[(Any source bits that are on erase the corresponding destination bits. Does a)]TJ -T* -0 Tw -(logical )Tj -/TT10 1 Tf -10 0 0 10 254.2605 282.89 Tm -(AND)Tj -/TT8 1 Tf -9 0 0 9 272.2634 282.89 Tm -0.4156 Tw -[( operation between the inverse of the source bits and the)]TJ --5.5848 -1.3278 TD -0 Tw -(destination bits.)Tj -0 -2 TD -0.1222 Tw -(Different combinations of )Tj -/TT15 1 Tf -11.9555 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.1222 Tw -[( and )]TJ -/TT15 1 Tf -2.4373 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.1222 Tw -[( can be specified to)]TJ --25.7947 -1.2889 TD -0.0778 Tw -[(achieve many different effects. Given the following bitmaps as the values of)]TJ -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(SOURCE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT15 1 Tf -0.5 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -(, and )Tj -/TT15 1 Tf -2.4429 0 TD -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -(:)Tj -ET -q -30 0 0 -35 222.01 208.19 cm -/Im4 Do -Q -BT -/TT4 1 Tf -10 0 0 10 252 173.19 Tm -( )Tj -ET -q -29.5 0 0 -35 293.71 208.19 cm -/Im5 Do -Q -BT -10 0 0 10 323.2 173.19 Tm -( )Tj -ET -q -40 0 0 -45 364.91 218.19 cm -/Im6 Do -Q -BT -/TT10 1 Tf -10 0 0 10 222 155.48 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 258.0058 155.48 Tm -0.5844 Tw -[( would produce the results given below for the difference)]TJ --4.0007 -1.3278 TD -1.7756 Tw -(combinations of )Tj -/TT15 1 Tf -10.8978 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -1.7756 Tw -[( and )]TJ -/TT15 1 Tf -5.744 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -1.7756 Tw -[( \(assuming)]TJ -/TT15 1 Tf --28.0436 -1.2889 TD -0 Tw -(CLIPPINGREGION)Tj -/TT8 1 Tf -8.4014 0 TD -(, )Tj -/TT15 1 Tf -0.5 0 TD -(SOURCELEFT)Tj -/TT8 1 Tf -6.001 0 TD -(, etc. are set correctly, of course\):)Tj -ET -q -40 0 0 -51 199.46 121.78 cm -/Im7 Do -Q -BT -/TT4 1 Tf -10 0 0 10 239.45 70.78 Tm -( )Tj -ET -q -40 0 0 -51 281.16 121.78 cm -/Im8 Do -Q -BT -10 0 0 10 321.15 70.78 Tm -( )Tj -ET -q -40 0 0 -51 362.86 121.78 cm -/Im9 Do -Q -BT -10 0 0 10 402.85 70.78 Tm -( )Tj -ET -q -40 0 0 -51 444.56 121.78 cm -/Im10 Do -Q -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT15 13 0 R ->> -/XObject << -/Im4 61 0 R -/Im5 62 0 R -/Im6 63 0 R -/Im7 64 0 R -/Im8 65 0 R -/Im9 66 0 R -/Im10 67 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -69 0 obj -<< -/Length 7871 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -ET -q -40 0 0 -51 151.46 575.99 cm -/Im11 Do -Q -BT -/TT4 1 Tf -10 0 0 10 191.45 524.99 Tm -( )Tj -ET -q -40 0 0 -51 233.16 575.99 cm -/Im12 Do -Q -BT -10 0 0 10 273.15 524.99 Tm -( )Tj -ET -q -40 0 0 -51 314.86 575.99 cm -/Im13 Do -Q -BT -10 0 0 10 354.85 524.99 Tm -( )Tj -ET -q -40 0 0 -51 396.56 575.99 cm -/Im14 Do -Q -q -40 0 0 -51 151.46 517.78 cm -/Im15 Do -Q -BT -10 0 0 10 191.45 466.78 Tm -( )Tj -ET -q -40 0 0 -51 233.16 517.78 cm -/Im16 Do -Q -BT -10 0 0 10 273.15 466.78 Tm -( )Tj -ET -q -40 0 0 -51 314.86 517.78 cm -/Im17 Do -Q -BT -10 0 0 10 354.85 466.78 Tm -( )Tj -ET -q -40 0 0 -51 396.56 517.78 cm -/Im18 Do -Q -BT -/TT10 1 Tf -10 0 0 10 102 446.84 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 446.84 Tm -(BLTSHADE)Tj -/F3 1 Tf -10 0 0 10 151.208 446.84 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 155.638 446.84 Tm -0.3267 Tw -(TEXTURE DESTINATION DESTINATIONLEFT DESTINATIONBOTTOM WIDTH)Tj --5.2931 -1.1111 TD -(HEIGHT OPERATION CLIPPINGREGION)Tj -/TT10 1 Tf -10 0 0 10 275.4 436.84 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 281.4009 436.84 Tm -0.1367 Tw -[( )-17363.2([Function])]TJ -/TT10 1 Tf -10 0 0 10 126 419.84 Tm -0 Tw -(BLTSHADE)Tj -/TT8 1 Tf -9 0 0 9 174.0078 419.84 Tm -0.0067 Tw -[( is the )]TJ -/TT15 1 Tf -2.8721 0 TD -0.0144 Tw -(SOURCETYPE = TEXTURE)Tj -/TT8 1 Tf -12.0308 0 TD -0.0067 Tw -[( case of )]TJ -/TT10 1 Tf -10 0 0 10 339.5941 419.84 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 375.6 419.84 Tm -0.0067 Tw -[(. It fills the specified region)]TJ --27.7333 -1.3278 TD -0.1044 Tw -(of the destination bitmap )Tj -/TT15 1 Tf -11.7962 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.1044 Tw -[( with the texture )]TJ -/TT15 1 Tf -7.9627 0 TD -0 Tw -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1044 Tw -(. )Tj -/TT15 1 Tf -0.9589 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.1044 Tw -[( can)]TJ --38.1206 -1.2889 TD -0 Tw -(be a bitmap or image stream.)Tj -/TT10 1 Tf -10 0 0 10 102 374.01 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 374.01 Tm -(BITMAPIMAGESIZE)Tj -/F3 1 Tf -10 0 0 10 189.0142 374.01 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.8842 374.01 Tm -(BITMAP DIMENSION STREAM)Tj -/TT10 1 Tf -10 0 0 10 316.1044 374.01 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 322.1053 374.01 Tm -[( )-13113.9([Function])]TJ --21.7895 -1.8889 TD -0.1678 Tw -(Returns the size that )Tj -/TT15 1 Tf -9.9636 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -[( will be when )]TJ -/TT10 1 Tf -10 0 0 10 310.0644 357.01 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 346.0702 357.01 Tm -0.1678 Tw -(ed to )Tj -/TT15 1 Tf -2.7975 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -(, in )Tj -/TT15 1 Tf -1.9586 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -(s units.)Tj -/TT15 1 Tf --36.4095 -1.3333 TD -0 Tw -(DIMENSION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0433 Tw -[( can be one of )]TJ -/TT15 1 Tf -6.5106 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT15 1 Tf -0.5433 0 TD -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0433 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 313.5013 345.01 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 331.5043 345.01 Tm -0.0433 Tw -(, in which case the dotted pair \()Tj -/TT15 1 Tf -14.1622 0 TD -0 Tw -(WIDTH)Tj --36.996 -1.3278 TD -(. HEIGHT)Tj -/TT8 1 Tf -4.8008 0 TD -(\) will be returned.)Tj -/TT4 1 Tf -10 0 0 10 54 290.12 Tm -(Drawing Lines)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 287.41 m -486.01 287.41 l -S -BT -/TT8 1 Tf -9 0 0 9 78 265.46 Tm -0.2333 Tw -[(Interlisp-D provides several functions for drawing lines and curves on image streams. The line)]TJ -0 -1.2222 TD -0.13 Tw -[(drawing functions are intended for interactive applications where efficiency is important. They do)]TJ -T* -0.0467 Tw -(not allow the use of "brush" patterns, like the curve drawing functions, but \(for display streams\) they)Tj -0 -1.2278 TD -0.0956 Tw -(support drawing a line in )Tj -/TT10 1 Tf -10 0 0 10 186.0813 232.41 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 222.0871 232.41 Tm -0.0956 Tw -[( mode, so redrawing the line will erase it. )]TJ -/TT10 1 Tf -10 0 0 10 399.5514 232.41 Tm -0 Tw -(DRAWCURVE)Tj -/TT8 1 Tf -9 0 0 9 453.5602 232.41 Tm -0.0956 Tw -[( can be)]TJ --41.7289 -1.3278 TD -0 Tw -(used to draw lines using a brush.)Tj -/TT10 1 Tf -10 0 0 10 102 198.18 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 198.18 Tm -(DRAWLINE)Tj -/F3 1 Tf -10 0 0 10 151.208 198.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 154.078 198.18 Tm -(X)Tj -0.5991 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 164.87 198.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 167.65 198.18 Tm -(Y)Tj -0.6 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 178.45 198.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 181.23 198.18 Tm -(X)Tj -0.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 192.03 198.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 194.81 198.18 Tm -(Y)Tj -0.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 205.61 198.18 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 208.39 198.18 Tm -(WIDTH OPERATION STREAM COLOR DASHING)Tj -/TT10 1 Tf -10 0 0 10 402.8216 198.18 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 408.8226 198.18 Tm -[( )-3478.6([Function])]TJ --31.4247 -2.32 TD -0.1533 Tw -(Draws a straight line from the point \()Tj -/TT15 1 Tf -17.5167 0 TD -0 Tw -(X)Tj -0.6022 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 294.47 177.3 Tm -(,)Tj -/TT15 1 Tf -9 0 0 9 297.25 177.3 Tm -(Y)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1533 Tw -(\) to the point \()Tj -/TT15 1 Tf -6.8848 0 TD -0 Tw -(X)Tj -0.5985 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 380.8 177.3 Tm -(,)Tj -/TT15 1 Tf -9 0 0 9 383.58 177.3 Tm -(Y)Tj -0.6 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1533 Tw -(\) on the image stream)Tj -/TT15 1 Tf --29.82 -1.7644 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[(. The position of )]TJ -/TT15 1 Tf -8.0708 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0822 Tw -[( is set to \()]TJ -/TT15 1 Tf -4.4778 0 TD -0 Tw -(X)Tj -0.5991 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 314.54 161.42 Tm -(,)Tj -/TT15 1 Tf -9 0 0 9 317.32 161.42 Tm -(Y)Tj -0.6 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0822 Tw -[(\). If )]TJ -/TT15 1 Tf -2.2496 0 TD -0 Tw -(X)Tj -0.6004 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0822 Tw -[( equals )]TJ -/TT15 1 Tf -3.5214 0 TD -0 Tw -(X)Tj -0.6008 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0822 Tw -[( and )]TJ -/TT15 1 Tf -2.3573 0 TD -0 Tw -(Y)Tj -0.6005 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0822 Tw -[( equals )]TJ -/TT15 1 Tf -3.5214 0 TD -0 Tw -(Y)Tj -0.6008 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0822 Tw -(, a)Tj --38.91 -1.7644 TD -0 Tw -(point is drawn at \()Tj -/TT15 1 Tf -8.1421 0 TD -(X)Tj -0.6012 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 210.09 145.54 Tm -(,)Tj -/TT15 1 Tf -9 0 0 9 212.87 145.54 Tm -(Y)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\).)Tj -/TT15 1 Tf --10.8522 -2.4056 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -( is the width of the line, in the units of the device. If )Tj -/TT15 1 Tf -23.1963 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 399.709 123.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 417.7119 123.89 Tm -(, the default is 1.)Tj -/TT15 1 Tf --32.4124 -2.1111 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0967 Tw -[( is the )]TJ -/TT10 1 Tf -10 0 0 10 202.8864 104.89 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 238.8922 104.89 Tm -0.0967 Tw -[( operation used to draw the line. If )]TJ -/TT15 1 Tf -16.6649 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0967 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 450.158 104.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 468.1609 104.89 Tm -0.0967 Tw -(, the)Tj --38.0179 -1.3333 TD -0 Tw -(value of )Tj -/TT10 1 Tf -10 0 0 10 160.352 92.89 Tm -(DSPOPERATION)Tj -/TT8 1 Tf -9 0 0 9 232.3637 92.89 Tm -( for the image stream is used.)Tj -/TT15 1 Tf --11.8182 -2.1056 TD -(COLOR)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( is a color specification that determines the color used to draw the line for image)]TJ --3.0005 -1.2944 TD -0 Tw -(streams that support color. If )Tj -/TT15 1 Tf -13.3027 0 TD -(COLOR)Tj -/TT8 1 Tf -3.0005 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 283.6626 62.29 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 301.6655 62.29 Tm -(, the )Tj -/TT15 1 Tf -2.1372 0 TD -(DSPCOLOR)Tj -/TT8 1 Tf -4.8008 0 TD -( of )Tj -/TT15 1 Tf -1.3789 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( is used.)Tj -ET -endstream -endobj -70 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/XObject << -/Im11 71 0 R -/Im12 72 0 R -/Im13 73 0 R -/Im14 74 0 R -/Im15 75 0 R -/Im16 76 0 R -/Im17 77 0 R -/Im18 78 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -80 0 obj -<< -/Length 7158 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT15 1 Tf -9 0 0 9 174 569.54 Tm -(DASHING)Tj -/TT8 1 Tf -4.2007 0 TD -0.1478 Tw -[( is a list of positive integers that determines the dashing characteristics of the)]TJ --4.2007 -1.2889 TD -0.1711 Tw -[(line. The line is drawn for the number of points indicated by the first element of the)]TJ -0 -1.2222 TD -0.0511 Tw -[(dashing list, is not drawn for the number of points indicated by the second element. The)]TJ -T* -0.0533 Tw -[(third element indicates how long it will be on again, and so forth. The dashing sequence)]TJ -0 -1.2278 TD -0.0867 Tw -(is repeated from the beginning when the list is exhausted. A brush )Tj -/TT10 1 Tf -10 0 0 10 449.9191 524.89 Tm -0 Tw -(LINEWITHBRUSH-)Tj -/TT8 1 Tf -9 0 0 9 174 512.89 Tm -(by)Tj -/TT10 1 Tf -10 0 0 10 183.9843 512.89 Tm -(-LINEWITHBRUSH)Tj -/TT8 1 Tf -9 0 0 9 267.998 512.89 Tm -( is used.)Tj --10.4442 -2.1111 TD -( If )Tj -/TT15 1 Tf -1.1699 0 TD -(DASHING)Tj -/TT8 1 Tf -4.2007 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 233.269 493.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 251.272 493.89 Tm -(, the line is not dashed.)Tj -/TT10 1 Tf -10 0 0 10 150 470.66 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 470.66 Tm -(DRAWBETWEEN)Tj -/F3 1 Tf -10 0 0 10 215.4106 470.66 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 218.2806 470.66 Tm -(POSITION)Tj -4.7988 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 266.87 470.66 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 269.65 470.66 Tm -(POSITION)Tj -4.8 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 318.25 470.66 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 321.03 470.66 Tm -(WIDTH OPERATION STREAM COLOR DASHING)Tj -/TT10 1 Tf -10 0 0 10 515.4617 470.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 521.4626 470.66 Tm -( )Tj --40.607 -1.4 TD -([Function])Tj -2 -1.7778 TD -0.1567 Tw -(Draws a line from the point )Tj -/TT15 1 Tf -13.4 0 TD -0 Tw -(POSITION)Tj -4.8023 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1567 Tw -[( to the point )]TJ -/TT15 1 Tf -6.2321 0 TD -0 Tw -(POSITION)Tj -4.7979 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.1567 Tw -[( onto the destination)]TJ --30.4322 -1.6222 TD -0 Tw -(bitmap of )Tj -/TT15 1 Tf -4.5332 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(. The position of )Tj -/TT15 1 Tf -7.6597 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to )Tj -/TT15 1 Tf -3.8159 0 TD -(POSITION)Tj -4.7989 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(.)Tj --28.6089 -2.4 TD -0.0589 Tw -(In the Medley release, when using the color argument, Interpress )Tj -/TT13 1 Tf -29.6144 0 TD -0 Tw -(DRAWLINE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0589 Tw -[( treats 16x16)]TJ --34.4152 -1.2889 TD -0.1089 Tw -[(bitmaps or negative numbers as shades/textures. Positive numbers continue to refer to)]TJ -0 -1.2222 TD -0.0033 Tw -(color maps, and so cannot be used as textures. To convert an integer shade into a negative)Tj -0 -1.2278 TD -0 Tw -(number use )Tj -/TT10 1 Tf -10 0 0 10 223.5088 372.21 Tm -(NEGSHADE)Tj -/TT8 1 Tf -9 0 0 9 271.5166 372.21 Tm -( \(e.g. \()Tj -/TT10 1 Tf -10 0 0 10 295.8271 372.21 Tm -(NEGSHADE 42495)Tj -/TT8 1 Tf -9 0 0 9 379.8408 372.21 Tm -(\) is )Tj -/TT10 1 Tf -10 0 0 10 393.7715 372.21 Tm -(-23041)Tj -/TT8 1 Tf -9 0 0 9 429.7773 372.21 Tm -(\).)Tj -/TT10 1 Tf -10 0 0 10 150 330.98 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 330.98 Tm -(DRAWTO)Tj -/F3 1 Tf -10 0 0 10 188.4062 330.98 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.2762 330.98 Tm -(X Y WIDTH OPERATION STREAM COLOR DASHING)Tj -/TT10 1 Tf -10 0 0 10 407.3114 330.98 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 413.3124 330.98 Tm -[( )-8313.1([Function])]TJ --26.5903 -1.8833 TD -0.09 Tw -(Draws a line from the current position to the point \()Tj -/TT15 1 Tf -23.7833 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.09 Tw -(\) onto the destination bitmap of)Tj -/TT15 1 Tf --25.5836 -1.2889 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(. The position of )Tj -/TT15 1 Tf -7.6597 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( is set to \()Tj -/TT15 1 Tf -4.1489 0 TD -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -(\).)Tj -/TT10 1 Tf -10 0 0 10 150 279.55 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 279.55 Tm -(RELDRAWTO)Tj -/F3 1 Tf -10 0 0 10 204.6089 279.55 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.4789 279.55 Tm -(DX DY WIDTH OPERATION STREAM COLOR DASHING)Tj -/TT10 1 Tf -10 0 0 10 434.3158 279.55 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 440.3168 279.55 Tm -[( )-5312.6([Function])]TJ --29.5908 -1.8833 TD -0.1333 Tw -(Draws a line from the current position to the point \()Tj -/TT15 1 Tf -24.2166 0 TD -0 Tw -(DX,DY)Tj -/TT8 1 Tf -3.0005 0 TD -0.1333 Tw -(\) coordinates away onto the)Tj --27.2171 -1.2889 TD -0.0389 Tw -(destination bitmap of )Tj -/TT15 1 Tf -9.8579 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0389 Tw -[(. The position of )]TJ -/TT15 1 Tf -7.8541 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0389 Tw -[( is set to the end of the line. If )]TJ -/TT15 1 Tf -13.8819 0 TD -0 Tw -(DX)Tj -/TT8 1 Tf --38.795 -1.2889 TD -(and )Tj -/TT15 1 Tf -1.9429 0 TD -(DY)Tj -/TT8 1 Tf -1.2002 0 TD -( are both 0, nothing is drawn.)Tj -/TT4 1 Tf -10 0 0 10 102 196.46 Tm -(Drawing Curves)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 193.75 m -534.01 193.75 l -S -BT -/TT8 1 Tf -9 0 0 9 126 171.8 Tm -0.1133 Tw -[(A curve is drawn by placing a brush pattern centered at each point along the curves trajectory. A)]TJ -0 -1.2278 TD -0.2067 Tw -[(brush pattern is defined by its shape, size, and color. The predefined brush shapes are )]TJ -/TT10 1 Tf -10 0 0 10 501.6975 160.75 Tm -0 Tw -(ROUND)Tj -/TT8 1 Tf -9 0 0 9 531.7024 160.75 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 126 148.75 Tm -(SQUARE)Tj -/TT8 1 Tf -9 0 0 9 162.0058 148.75 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 167.4058 148.75 Tm -(HORIZONTAL)Tj -/TT8 1 Tf -9 0 0 9 227.4156 148.75 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 232.8156 148.75 Tm -(VERTICAL)Tj -/TT8 1 Tf -9 0 0 9 280.8234 148.75 Tm -0.1 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 304.6093 148.75 Tm -0 Tw -(DIAGONAL)Tj -/TT8 1 Tf -9 0 0 9 352.6171 148.75 Tm -0.1 Tw -(; new brush shapes can be created using the)Tj -/TT10 1 Tf -10 0 0 10 126 136.75 Tm -0 Tw -(INSTALLBRUSH)Tj -/TT8 1 Tf -9 0 0 9 198.0117 136.75 Tm -0.1067 Tw -[( function, described below. A brush size is an integer specifying the width of the)]TJ --8.0013 -1.3278 TD -0.0833 Tw -[(brush in the units of the device. The color is a color specification, which is only used if the curve is)]TJ -0 -1.2222 TD -0 Tw -(drawn to an image stream that supports colors.)Tj -0 -2.8944 TD -0.0322 Tw -(A brush is specified to the various drawing functions as a list of the form \()Tj -/TT10 1 Tf -10 0 0 10 425.0736 87.75 Tm -0.078 Tw -(SHAPE WIDTH COLOR)Tj -/TT8 1 Tf -9 0 0 9 528.6502 87.75 Tm -0 Tw -(\),)Tj --44.7389 -1.3333 TD -0.1389 Tw -(for example \()Tj -/TT10 1 Tf -10 0 0 10 181.2036 75.75 Tm -0.334 Tw -(SQUARE 2)Tj -/TT8 1 Tf -9 0 0 9 232.5514 75.75 Tm -0.1389 Tw -(\) or \()Tj -/TT10 1 Tf -10 0 0 10 254.0138 75.75 Tm -0.334 Tw -(VERTICAL 4 RED)Tj -/TT8 1 Tf -9 0 0 9 344.7075 75.75 Tm -0.1389 Tw -[(\). A brush can also be specified as a positive)]TJ --24.3008 -1.3333 TD -0.0478 Tw -(integer, which is interpreted as a )Tj -/TT10 1 Tf -10 0 0 10 260.829 63.75 Tm -0 Tw -(ROUND)Tj -/TT8 1 Tf -9 0 0 9 290.8339 63.75 Tm -0.0478 Tw -[( brush of that width. If a brush is a litatom, it is assumed to)]TJ --18.3149 -1.3333 TD -0.1722 Tw -(be a function which is called at each point of the curves trajectory \(with three arguments: the )Tj -/TT10 1 Tf -10 0 0 10 524.9271 51.75 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 530.9281 51.75 Tm -(-)Tj -ET -endstream -endobj -81 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -83 0 obj -<< -/Length 5804 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 78 569.49 Tm -0.1956 Tw -(coordinate of the point, the )Tj -/TT10 1 Tf -10 0 0 10 196.7731 569.49 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 202.7741 569.49 Tm -0.1956 Tw -(-coordinate, and the image stream\), and should do whatever image)Tj --13.8638 -1.3333 TD -0.0367 Tw -[(stream operations are necessary to draw each point. Finally, if a brush is specified as )]TJ -/TT10 1 Tf -10 0 0 10 423.0871 557.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 441.0901 557.49 Tm -0.0367 Tw -(, a \()Tj -/TT10 1 Tf -10 0 0 10 455.9971 557.49 Tm -0 Tw -(ROUND)Tj --37.7997 -1.2 TD -(1)Tj -/TT8 1 Tf -9 0 0 9 84.001 545.49 Tm -(\) brush is used as default.)Tj --0.6668 -2.9944 TD -0.0378 Tw -[(The appearance of a curve is also determined by its dashing characteristics. Dashing is specified by a)]TJ -0 -1.2222 TD -0.0156 Tw -[(list of positive integers. If a curve is dashed, the brush is placed along the trajectory for the number of)]TJ -T* -0.0144 Tw -[(units indicated by the first element of the dashing list. The brush is off, not placed in the bitmap, for a)]TJ -T* -0.0544 Tw -[(number of units indicated by the second element. The third element indicates how long it will be on)]TJ -T* -0.0444 Tw -[(again, and so forth. The dashing sequence is repeated from the beginning when the list is exhausted.)]TJ -T* -0.0367 Tw -[(The units used to measure dashing are the units of the brush. For example, specifying the dashing as)]TJ -0 -1.2278 TD -0.1333 Tw -(\(1 1\) with a brush of \()Tj -/TT10 1 Tf -10 0 0 10 170.4144 452.49 Tm -0.32 Tw -(ROUND 16)Tj -/TT8 1 Tf -9 0 0 9 221.6222 452.49 Tm -0.1333 Tw -(\) would put the brush on the trajectory, skip 16 points, and put)Tj --15.958 -1.3333 TD -0 Tw -(down another brush. A curve is not dashed if the dashing argument to the drawing function is )Tj -/TT10 1 Tf -10 0 0 10 458.3467 440.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 476.3496 440.49 Tm -(.)Tj --44.2611 -2.9944 TD -0.2033 Tw -[(The curve functions use the image streams clipping region and operation. Most types of image)]TJ -0 -1.2278 TD -0.2478 Tw -(streams only support the )Tj -/TT10 1 Tf -10 0 0 10 188.5215 402.49 Tm -0 Tw -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 218.5264 402.49 Tm -0.2478 Tw -[( operation when drawing curves. When drawing to a display)]TJ --15.614 -1.3333 TD -0.1278 Tw -(stream, the curve-drawing functions accept the operation )Tj -/TT10 1 Tf -10 0 0 10 316.0905 390.49 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 352.0964 390.49 Tm -0.1278 Tw -[( if the brush argument is 1. For)]TJ --30.4552 -1.3333 TD -0.0489 Tw -(brushes larger than 1, these functions will use the )Tj -/TT10 1 Tf -10 0 0 10 280.7466 378.49 Tm -0 Tw -(ERASE)Tj -/TT8 1 Tf -9 0 0 9 310.7515 378.49 Tm -0.0489 Tw -[( operation instead of )]TJ -/TT10 1 Tf -10 0 0 10 396.7327 378.49 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 432.7386 378.49 Tm -0.0489 Tw -[(. For display)]TJ --39.4154 -1.3333 TD -0 Tw -(streams, the curve-drawing functions treat the )Tj -/TT10 1 Tf -10 0 0 10 264.3018 366.49 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 306.3086 366.49 Tm -( operation the same as )Tj -/TT10 1 Tf -10 0 0 10 397.3237 366.49 Tm -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 427.3286 366.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 343.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 343.26 Tm -(DRAWCURVE)Tj -/F3 1 Tf -10 0 0 10 156.6089 343.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.4789 343.26 Tm -(KNOTS CLOSED BRUSH DASHING STREAM)Tj -/TT10 1 Tf -10 0 0 10 337.7079 343.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 343.7089 343.26 Tm -[( )-10713.5([Function])]TJ --24.1899 -1.8833 TD -0.0633 Tw -(Draws a "parametric cubic spline curve" on the image stream )Tj -/TT15 1 Tf -27.836 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0633 Tw -(. )Tj -/TT15 1 Tf -0.8767 0 TD -0 Tw -(KNOTS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -[( is a list of)]TJ --35.3137 -1.2944 TD -0.2022 Tw -[(positions to which the curve will be fitted. If )]TJ -/TT15 1 Tf -22.0564 0 TD -0 Tw -(CLOSED)Tj -/TT8 1 Tf -3.6006 0 TD -0.2022 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 389.8732 314.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 407.8761 314.66 Tm -0.2022 Tw -(, the curve will be)Tj --31.3196 -1.3278 TD -0.0156 Tw -(closed; otherwise it ends at the first and last positions in )Tj -/TT15 1 Tf -25.1545 0 TD -0 Tw -(KNOTS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0156 Tw -(. )Tj -/TT15 1 Tf -0.7811 0 TD -0 Tw -(BRUSH)Tj -/TT8 1 Tf -3.0005 0 TD -0.0156 Tw -[( and )]TJ -/TT15 1 Tf -2.224 0 TD -0 Tw -(DASHING)Tj -/TT8 1 Tf -4.2007 0 TD -0.0156 Tw -[( are)]TJ --38.3613 -1.2889 TD -0 Tw -(interpreted as described above.)Tj -4 -2 TD -(For example,)Tj -/TT10 1 Tf -10 0 0 10 162 255.06 Tm -(\(DRAWCURVE \(\(10 . 10\)\(50 . 50\)\(100 . 10\)\(150 . 50\)\))Tj -0 -1.2 TD -( NIL \(ROUND 5\) \(1 1 1 2\) XX\))Tj -/TT8 1 Tf -9 0 0 9 126 224.11 Tm -(would draw a curve like the following on the display stream XX:)Tj -ET -q -118.5 0 0 -44.25 264.76 212.56 cm -/Im19 Do -Q -BT -/TT10 1 Tf -10 0 0 10 102 150.58 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 150.58 Tm -(DRAWCIRCLE)Tj -/F3 1 Tf -10 0 0 10 162.0098 150.58 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 150.58 Tm -(CENTERX CENTERY RADIUS BRUSH DASHING)Tj --6.32 -1.2478 TD -( STREAM)Tj -/F2 1 Tf -10 0 0 10 145.8062 139.35 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 149.1361 139.35 Tm -( )Tj -32.8327 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.1589 Tw -(Draws a circle of radius )Tj -/TT15 1 Tf -11.5176 0 TD -0 Tw -(RADIUS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1589 Tw -[( about the point \()]TJ -/TT15 1 Tf -8.2303 0 TD -0 Tw -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -0.1589 Tw -(\) onto the image)Tj --32.3499 -1.2889 TD -0 Tw -(stream )Tj -/TT15 1 Tf -3.3068 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -(. )Tj -/TT15 1 Tf -0.85 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -(s position is left at \()Tj -/TT15 1 Tf -9.1118 0 TD -0 Tw -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -0.05 Tw -[(\). The other arguments)]TJ --29.4713 -1.2889 TD -0 Tw -(are interpreted as described above.)Tj -ET -endstream -endobj -84 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/XObject << -/Im19 85 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -87 0 obj -<< -/Length 7187 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -5.4 -4.38 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 153.33 568.2 Tm -(DRAWARC)Tj -/TT15 1 Tf -4.2007 0 TD -1.4489 Tw -[( CENTERX CENTERY RADIUS STARTANGLE NDEGREES BRUSH)]TJ --3.904 -1.0667 TD -0 Tw -(DASHINGSTREAM\))Tj -/TT8 1 Tf -37.4033 0 TD -([Function])Tj --35.4033 -1.8444 TD -0.0089 Tw -(Draws an arc of the circle whose center point is \()Tj -/TT15 1 Tf -21.5103 0 TD -0.02 Tw -(CENTERX CENTERY)Tj -/TT8 1 Tf -9.0215 0 TD -0.0089 Tw -(\) and whose radius is)Tj -/TT15 1 Tf --30.5317 -1.2889 TD -0 Tw -(RADIUS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0733 Tw -[( from the position at )]TJ -/TT15 1 Tf -9.5937 0 TD -0 Tw -(STARTANGLE)Tj -/TT8 1 Tf -6.001 0 TD -0.0733 Tw -[( degrees for )]TJ -/TT15 1 Tf -5.6668 0 TD -0 Tw -(NDEGREES)Tj -/TT8 1 Tf -4.8008 0 TD -0.0733 Tw -[( number of degrees. If)]TJ -/TT15 1 Tf --29.6628 -1.2889 TD -0 Tw -(STARTANGLE)Tj -/TT8 1 Tf -6.001 0 TD -0.35 Tw -[( is 0, the starting point will be \()]TJ -/TT15 1 Tf -16.4709 0 TD -0 Tw -(CENTERX)Tj -/TT8 1 Tf -4.2007 0 TD -0.35 Tc -( \()Tj -/TT15 1 Tf -0.933 0 TD -0 Tc -(CENTERY)Tj -/TT8 1 Tf -4.2007 0 TD -0.35 Tw -[( + )]TJ -/TT15 1 Tf -1.806 0 TD -0 Tw -(RADIUS)Tj -/TT8 1 Tf -3.6006 0 TD -0.35 Tw -[(\)\). If)]TJ -/TT15 1 Tf --37.2128 -1.2889 TD -0 Tw -(NDEGREES)Tj -/TT8 1 Tf -4.8008 0 TD -0.0622 Tw -[( is positive, the arc will be counterclockwise. If )]TJ -/TT15 1 Tf -21.6789 0 TD -0 Tw -(NDEGREES)Tj -/TT8 1 Tf -4.8008 0 TD -0.0622 Tw -[( is negative, the arc)]TJ --31.2804 -1.2889 TD -0 Tw -(will be clockwise. The other arguments are interpreted as described in )Tj -/TT13 1 Tf -31.4697 0 TD -(DRAWCIRCLE)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 454.72 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 454.72 Tm -(DRAWELLIPSE)Tj -/F3 1 Tf -10 0 0 10 215.4106 454.72 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 227.6006 454.72 Tm -1.9489 Tw -(CENTERX CENTERY SEMIMINORRADIUS SEMIMAJORRADIUS)Tj --7.9556 -1.1111 TD -(ORIENTATION BRUSH DASHING STREAM)Tj -/TT10 1 Tf -10 0 0 10 328.8 444.72 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 334.801 444.72 Tm -0.8122 Tw -[( )-15412.1([Function])]TJ --17.8668 -1.8833 TD -0.2689 Tw -(Draws an ellipse with a minor radius of )Tj -/TT15 1 Tf -19.9485 0 TD -0 Tw -(SEMIMINORRADIUS)Tj -/TT8 1 Tf -9.0015 0 TD -0.2689 Tw -[( and a major radius of)]TJ -/TT15 1 Tf --28.9499 -1.2889 TD -0 Tw -(SEMIMAJORRADIUS)Tj -/TT8 1 Tf -9.0015 0 TD -0.4967 Tw -[( about the point \()]TJ -/TT15 1 Tf -9.5814 0 TD -0 Tw -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -0.4967 Tw -(\) onto the image stream)Tj -/TT15 1 Tf --27.5843 -1.2889 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.3322 Tw -(. )Tj -/TT15 1 Tf -1.4144 0 TD -0 Tw -(ORIENTATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.3322 Tw -[( is the angle of the major axis in degrees, positive in the)]TJ --11.6161 -1.2889 TD -0.05 Tw -(counterclockwise direction. )Tj -/TT15 1 Tf -12.7984 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -(s position is left at \()Tj -/TT15 1 Tf -9.1118 0 TD -0 Tw -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -0.05 Tw -[(\). The other)]TJ --34.5123 -1.2889 TD -0 Tw -(arguments are interpreted as described above.)Tj --5.3333 -2.8889 TD -(New brush shapes can be defined using the following function:)Tj -/TT10 1 Tf -10 0 0 10 150 333.09 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 333.09 Tm -(INSTALLBRUSH)Tj -/F3 1 Tf -10 0 0 10 220.8115 333.09 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 333.09 Tm -(BRUSHNAME BRUSHFN BRUSHARRAY)Tj -/TT10 1 Tf -10 0 0 10 374.9061 333.09 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 380.9071 333.09 Tm -[( )-11913.7([Function])]TJ --22.9897 -1.8833 TD -0.2144 Tw -(Installs a new brush called )Tj -/TT15 1 Tf -13.0649 0 TD -0 Tw -(BRUSHNAME)Tj -/TT8 1 Tf -5.4009 0 TD -0.2144 Tw -[( with creation-function )]TJ -/TT15 1 Tf -11.0296 0 TD -0 Tw -(BRUSHFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.2144 Tw -[( and optional)]TJ --33.696 -1.2889 TD -0 Tw -(array )Tj -/TT15 1 Tf -2.754 0 TD -(BRUSHARRAY)Tj -/TT8 1 Tf -6.001 0 TD -0.1578 Tw -(. )Tj -/TT15 1 Tf -1.0656 0 TD -0 Tw -(BRUSHFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.1578 Tw -[( should be a function of one argument \(a width\), which)]TJ --14.0212 -1.2889 TD -0.2167 Tw -(returns a bitmap of the brush for that width. )Tj -/TT15 1 Tf -22.2507 0 TD -0 Tw -(BRUSHFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.2167 Tw -[( will be called to create new)]TJ --26.4513 -1.2889 TD -0.4456 Tw -(instances of )Tj -/TT15 1 Tf -6.3218 0 TD -0 Tw -(BRUSHNAME)Tj -/TT8 1 Tf -5.4009 0 TD -0.4455 Tw -(-type brushes; the sixteen smallest instances will be pre-)Tj --11.7227 -1.2889 TD -0.2567 Tw -[(computed and cached. "Hand-crafted" brushes can be supplied as the )]TJ -/TT15 1 Tf -33.9864 0 TD -0 Tw -(BRUSHARRAY)Tj -/TT8 1 Tf --33.9864 -1.2944 TD -0.1744 Tw -[(argument. Changing an existing brush can be done by calling )]TJ -/TT10 1 Tf -10 0 0 10 439.917 258.09 Tm -0 Tw -(INSTALLBRUSH)Tj -/TT8 1 Tf -9 0 0 9 511.9287 258.09 Tm -0.1744 Tw -[( with)]TJ --37.5476 -1.3278 TD -0 Tw -(new )Tj -/TT15 1 Tf -2.145 0 TD -(BRUSHFN)Tj -/TT8 1 Tf -4.2007 0 TD -( and/or )Tj -/TT15 1 Tf -3.7397 0 TD -(BRUSHARRAY)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 224.49 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 224.49 Tm -(DRAWPOINT)Tj -/TT10 1 Tf -10 0 0 10 204.6089 224.49 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 210.6098 224.49 Tm -(X Y BRUSH STREAM OPERATION)Tj -/TT10 1 Tf -10 0 0 10 351.0327 224.49 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 357.0337 224.49 Tm -[( )-14566.3([Function])]TJ --20.3371 -1.8833 TD -(Draws )Tj -/TT15 1 Tf -3.1868 0 TD -(BRUSH)Tj -/TT8 1 Tf -3.0005 0 TD -0.01 Tw -[( centered around point \()]TJ -/TT15 1 Tf -10.7509 0 TD -0.0244 Tw -(X, Y)Tj -/TT8 1 Tf -2.4248 0 TD -0.01 Tw -(\) on )Tj -/TT15 1 Tf -1.9809 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -(, using the operation )Tj -/TT15 1 Tf -9.3994 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT15 1 Tf --39.7448 -1.2889 TD -(BRUSH)Tj -/TT8 1 Tf -3.0005 0 TD -( may be a bitmap or a brush.)Tj -/TT4 1 Tf -10 0 0 10 102 153 Tm -(Miscellaneous Drawing and Printing Operations)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 150.29 m -534.01 150.29 l -S -BT -/TT10 1 Tf -10 0 0 10 150 132.06 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 132.06 Tm -(DSPFILL)Tj -/F3 1 Tf -10 0 0 10 193.8071 132.06 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.6771 132.06 Tm -(REGION TEXTURE OPERATION STREAM)Tj -/TT10 1 Tf -10 0 0 10 364.1044 132.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 370.1053 132.06 Tm -[( )-13113.8([Function])]TJ --21.7895 -1.8833 TD -(Fills )Tj -/TT15 1 Tf -2.2341 0 TD -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1311 Tw -[( of the image stream )]TJ -/TT15 1 Tf -9.8875 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1311 Tw -[( \(within the clipping region\) with the texture)]TJ -/TT15 1 Tf --19.3228 -1.2944 TD -0 Tw -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0006 Tc -0.0027 Tw -(. If )Tj -/TT15 1 Tf -1.6799 0 TD -0 Tc -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0008 Tc -0.0025 Tw -( is )Tj -/TT10 1 Tf -10 0 0 10 270.3243 103.46 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 288.3272 103.46 Tm -0.0033 Tw -(, the whole clipping region of )Tj -/TT15 1 Tf -13.2744 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0005 Tc -0.0028 Tw -( is used. If )Tj -/TT15 1 Tf -5.0181 0 TD -0 Tc -0 Tw -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0011 Tc -0.0022 Tw -( or)Tj -/TT15 1 Tf --38.7968 -1.3333 TD -0 Tc -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 233.5415 91.46 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 251.5444 91.46 Tm -(, the values for )Tj -/TT15 1 Tf -6.7729 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -( are used.)Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -90 0 obj -<< -/Length 4261 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-19)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.38 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.2 Tm -(DRAWPOLYGON)Tj -/TT6 1 Tf -10 0 0 10 167.4 568.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.1783 568.2 Tm -(POINTS CLOSED BRUSH DASHING STREAM)Tj -/TT10 1 Tf -10 0 0 10 353.8082 568.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 444.63 568.2 Tm -([Function])Tj --35.4033 -1.8833 TD -0.03 Tw -(Draws a polygon on the image stream )Tj -/TT15 1 Tf -17.2959 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.03 Tw -(. )Tj -/TT15 1 Tf -0.81 0 TD -0 Tw -(POINTS)Tj -/TT8 1 Tf -3.6006 0 TD -0.03 Tw -[( is a list of positions to which the)]TJ --25.3071 -1.2944 TD -0.0344 Tw -[(figure will be fitted \(the vertices of the polygon\). If )]TJ -/TT15 1 Tf -23.2119 0 TD -0 Tw -(CLOSED)Tj -/TT8 1 Tf -3.6006 0 TD -0.0344 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 397.2526 539.6 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 415.2556 539.6 Tm -0.0344 Tw -(, then the starting)Tj --32.1395 -1.3333 TD -0.1644 Tw -(position is specified only once in )Tj -/TT15 1 Tf -15.66 0 TD -0 Tw -(POINTS)Tj -/TT8 1 Tf -3.6006 0 TD -0.1644 Tw -[(. If )]TJ -/TT15 1 Tf -2.1633 0 TD -0 Tw -(CLOSED)Tj -/TT8 1 Tf -3.6006 0 TD -0.1644 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 365.1135 527.6 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 383.1164 527.6 Tm -0.1644 Tw -(, then the starting vertex)Tj --28.5685 -1.3278 TD -0.0611 Tw -(must be specified twice in )Tj -/TT15 1 Tf -12.0233 0 TD -0 Tw -(POINTS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0611 Tw -(. )Tj -/TT15 1 Tf -0.8722 0 TD -0 Tw -(BRUSH)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -[( and )]TJ -/TT15 1 Tf -2.3151 0 TD -0 Tw -(DASHING)Tj -/TT8 1 Tf -4.2007 0 TD -0.0611 Tw -[( are interpreted as described in)]TJ --26.0124 -1.2889 TD -0 Tw -(Chapter 27 of the Interlisp-D Reference Manual.)Tj -0 -2 TD -(For example,)Tj -/TT10 1 Tf -10 0 0 10 198 468 Tm -(\(DRAWPOLYGON \(\(100 . 100\) \(50 . 125\))Tj -0 -1 TD -( \(150 . 175\) \(200 . 100\) \(150 .)Tj -T* -(50\)\))Tj -T* -( T \(ROUND 3\) \(4 2\) XX\))Tj -/TT8 1 Tf -9 0 0 9 126 421 Tm -(will draw a polygon like the following on the display stream )Tj -/TT10 1 Tf -10 0 0 10 369.4087 421 Tm -(XX)Tj -/TT8 1 Tf -9 0 0 9 381.4106 421 Tm -(.)Tj -ET -q -120.75 0 0 -102 245.63 408.5 cm -/Im20 Do -Q -BT -/TT10 1 Tf -10 0 0 10 102 286.77 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 286.77 Tm -(FILLPOLYGON)Tj -/F3 1 Tf -10 0 0 10 167.4106 286.77 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.2806 286.77 Tm -(POINTS TEXTURE OPERATION WINDNUMBER STREAM)Tj -/TT10 1 Tf -10 0 0 10 397.1176 286.77 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 403.1185 286.77 Tm -[( )-4112.4([Function])]TJ -/TT15 1 Tf --30.791 -1.8833 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0289 Tw -[( is the )]TJ -/TT13 1 Tf -2.9387 0 TD -0 Tw -(BITBLT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0289 Tw -[( operation \(see page 27.15 in the Interlisp-D Reference Manual\))]TJ --11.9402 -1.2889 TD -0.2622 Tw -[(used to fill the polygon. If the )]TJ -/TT15 1 Tf -15.6652 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.2622 Tw -[( is NIL, the )]TJ -/TT15 1 Tf -6.1797 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.2622 Tw -[( defaults to the)]TJ --32.6467 -1.2889 TD -0 Tw -(STREAM default )Tj -/TT15 1 Tf -7.7832 0 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT15 1 Tf --13.1841 -2.0667 TD -(WINDNUMBER)Tj -/TT8 1 Tf -6.001 0 TD -0.01 Tw -[( is the number for the winding rule convention . This number is either 0 or 1;)]TJ --6.001 -1.2889 TD -0 Tw -(0 indicates the "zero" winding rule, 1 indicates the "odd" winding rule.)Tj -0 -2 TD -0.1011 Tw -(When filling a polygon, there is more than one way of dealing with the situation where)Tj -0 -1.2222 TD -0.3767 Tw -[(two polygon sides intersect, or one polygon is fully inside the other. Currently,)]TJ -/TT13 1 Tf -T* -0 Tw -(FILLPOLYGON)Tj -/TT8 1 Tf -6.6011 0 TD -0.3178 Tw -[( to a display stream uses the "odd" winding rule, which means that)]TJ --6.6011 -1.2889 TD -0.2933 Tw -(intersecting polygon sides define areas that are filled or not filled somewhat like a)Tj -0 -1.2222 TD -0 Tw -(checkerboard. For example, )Tj -/TT10 1 Tf -10 0 0 10 198 135.77 Tm -(\(FILLPOLYGON)Tj -0 -1 TD -( \( \(\(110 . 110\)\(150 . 200\)\(190 . 110\)\))Tj -T* -( \(\(135 . 125\)\(160 . 125\)\(160 . 150\)\(135 .)Tj -T* -(150\)\) \))Tj -T* -( GRAYSHADE WINDOW\))Tj -/TT8 1 Tf -9 0 0 9 126 78.82 Tm -(will produce a display something like this:)Tj -ET -endstream -endobj -91 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/XObject << -/Im20 92 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -94 0 obj -<< -/Length 6888 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -ET -q -35.25 0 0 -51.75 336.38 575.99 cm -/Im21 Do -Q -BT -/TT8 1 Tf -9 0 0 9 174 508.79 Tm -0.0178 Tw -(This fill convention also takes into account all polygons in )Tj -/TT15 1 Tf -26.2971 0 TD -0 Tw -(POINTS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0178 Tw -(, if it specifies multiple)Tj --29.8977 -1.2889 TD -0 Tw -(polygons.)Tj -/TT10 1 Tf -10 0 0 10 150 474.91 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 474.91 Tm -(FILLCIRCLE)Tj -/F3 1 Tf -10 0 0 10 210.0098 474.91 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 474.91 Tm -(CENTERX CENTERY RADIUS TEXTURE STREAM)Tj -/TT10 1 Tf -10 0 0 10 412.7123 474.91 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 418.7133 474.91 Tm -[( )-7713([Function])]TJ --27.1904 -1.8833 TD -0.0444 Tw -(Fills in a circular area of radius )Tj -/TT15 1 Tf -14.2266 0 TD -0 Tw -(RADIUS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0444 Tw -[( about the point \()]TJ -/TT15 1 Tf -7.7725 0 TD -0 Tw -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -0.0444 Tw -(\) in )Tj -/TT15 1 Tf -1.7949 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf --36.3961 -1.2889 TD -(with )Tj -/TT15 1 Tf -2.2832 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(s position is left at \()Tj -/TT15 1 Tf -8.8618 0 TD -(CENTERX,CENTERY)Tj -/TT8 1 Tf -9.0015 0 TD -(\).)Tj -/TT10 1 Tf -10 0 0 10 150 423.48 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 423.48 Tm -(DSPRESET)Tj -/F3 1 Tf -10 0 0 10 199.208 423.48 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 202.078 423.48 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 234.4833 423.48 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.4843 423.48 Tm -[( )-27516.2([Function])]TJ --7.3871 -1.8889 TD -0.0933 Tw -(Sets the )Tj -/TT10 1 Tf -10 0 0 10 208.45 406.48 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 214.451 406.48 Tm -0.0933 Tw -[( coordinate of )]TJ -/TT15 1 Tf -6.6286 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0933 Tw -[( to its left margin, sets its )]TJ -/TT10 1 Tf -11.8965 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0933 Tw -[( coordinate to the top of the)]TJ --27.2204 -1.3278 TD -0.0822 Tw -[(clipping region minus the font ascent. For a display stream, this also fills its destination)]TJ -0 -1.2222 TD -0 Tw -(bitmap with its background texture.)Tj -/TT10 1 Tf -10 0 0 10 150 361.25 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 361.25 Tm -(DSPNEWPAGE)Tj -/F3 1 Tf -10 0 0 10 210.0098 361.25 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 361.25 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 245.285 361.25 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.286 361.25 Tm -[( )-26316([Function])]TJ --8.5873 -1.8889 TD -0.0178 Tw -[(Starts a new page. The )]TJ -/TT10 1 Tf -10 0 0 10 269.0205 344.25 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 275.0215 344.25 Tm -0.0178 Tw -[( coordinate is set to the left margin, and the )]TJ -/TT10 1 Tf -19.5669 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0178 Tw -[( coordinate is set to)]TJ --31.3917 -1.3278 TD -0 Tw -(the top margin plus the linefeed.)Tj -/TT10 1 Tf -10 0 0 10 150 310.02 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 310.02 Tm -(CENTERPRINTINREGION)Tj -/F3 1 Tf -10 0 0 10 258.6177 310.02 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 261.4877 310.02 Tm -(EXP REGION STREAM)Tj -/TT10 1 Tf -10 0 0 10 353.3026 310.02 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 359.3036 310.02 Tm -[( )-14314([Function])]TJ --20.5893 -1.8889 TD -(Prints )Tj -/TT15 1 Tf -2.9798 0 TD -(EXP)Tj -/TT8 1 Tf -1.8003 0 TD -0.1078 Tw -[( so that is it centered within )]TJ -/TT15 1 Tf -13.2418 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[( of the )]TJ -/TT15 1 Tf -3.3394 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[(. If )]TJ -/TT15 1 Tf -1.9933 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 494.2807 293.02 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 512.2837 293.02 Tm -(, )Tj -/TT15 1 Tf -0.6078 0 TD -(EXP)Tj -/TT8 1 Tf --38.1949 -1.3278 TD -(will be centered in the clipping region of )Tj -/TT15 1 Tf -18.1797 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 102 238.13 Tm -(Drawing and Shading Grids)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 235.42 m -534.01 235.42 l -S -BT -/TT8 1 Tf -9 0 0 9 126 213.47 Tm -0.0256 Tw -(A grid is a partitioning of an arbitrary coordinate system \(hereafter referred to as the "source system"\))Tj -0 -1.2222 TD -0.0733 Tw -[(into rectangles. This section describes functions that operate on grids. It includes functions to draw)]TJ -T* -0.1944 Tw -(the outline of a grid, to translate between positions in a source system and grid coordinates \(the)Tj -T* -0.0556 Tw -[(coordinates of the rectangle which contains a given position\), and to shade grid rectangles. A grid is)]TJ -T* -0.0244 Tw -(defined by its "unit grid," a region \(called a grid specification\) which is the origin rectangle of the grid)Tj -0 -1.2278 TD -0.0444 Tw -[(in terms of the source system. Its )]TJ -/TT10 1 Tf -10 0 0 10 263.888 158.42 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 287.8919 158.42 Tm -0.0444 Tw -[( field is interpreted as the )]TJ -/TT10 1 Tf -10 0 0 10 393.7479 158.42 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 399.7489 158.42 Tm -0.0444 Tw -(-coordinate of the left edge of the)Tj --30.4165 -1.3333 TD -0.1033 Tw -(origin rectangle, its )Tj -/TT10 1 Tf -10 0 0 10 207.5795 146.42 Tm -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 243.5854 146.42 Tm -0.1033 Tw -[( field is the )]TJ -/TT10 1 Tf -10 0 0 10 293.2678 146.42 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 299.2688 146.42 Tm -0.1033 Tw -(-coordinate of the bottom edge of the origin rectangle, its)Tj -/TT10 1 Tf -10 0 0 10 126 134.42 Tm -0 Tw -(WIDTH)Tj -/TT8 1 Tf -9 0 0 9 156.0049 134.42 Tm -( is the width of the grid rectangles, and its )Tj -/TT10 1 Tf -10 0 0 10 325.4316 134.42 Tm -(HEIGHT)Tj -/TT8 1 Tf -9 0 0 9 361.4375 134.42 Tm -( is the height of the grid rectangles.)Tj -/TT10 1 Tf -10 0 0 10 150 111.19 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 111.19 Tm -(GRID)Tj -/F3 1 Tf -10 0 0 10 177.6045 111.19 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 180.4745 111.19 Tm -(GRIDSPEC WIDTH HEIGHT BORDER STREAM GRIDSHADE)Tj -/TT10 1 Tf -10 0 0 10 423.514 111.19 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 429.515 111.19 Tm -[( )-6512.8([Function])]TJ --28.3906 -1.8833 TD -0.1878 Tw -(Outlines the grid defined by )Tj -/TT15 1 Tf -13.7065 0 TD -0 Tw -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.1878 Tw -[( which is )]TJ -/TT15 1 Tf -4.7611 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.1878 Tw -[( rectangles wide and )]TJ -/TT15 1 Tf -10.1349 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf --36.4037 -1.2889 TD -0.1089 Tw -(rectangles high on )Tj -/TT15 1 Tf -8.6919 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1089 Tw -[(. Each box in the grid has a border within it that is )]TJ -/TT15 1 Tf -24.0972 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf --36.3897 -1.2889 TD -0.0211 Tw -(points on each side; so the resulting lines in the grid are 2*)Tj -/TT15 1 Tf -25.9584 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( thick. If )]TJ -/TT15 1 Tf -4.2036 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( is the)]TJ --37.3632 -1.2889 TD -0 Tw -(atom )Tj -/TT15 1 Tf -2.5482 0 TD -(POINT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -(, instead of a border the lower left point of each grid rectangle will be turned)Tj -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/XObject << -/Im21 96 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -98 0 obj -<< -/Length 6439 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-21)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0689 Tw -[(on. If )]TJ -/TT15 1 Tf -3.0045 0 TD -0 Tw -(GRIDSHADE)Tj -/TT8 1 Tf -5.4009 0 TD -0.0689 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 232.2089 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 250.2118 569.49 Tm -0.0689 Tw -(, it should be a texture and the border lines will be drawn)Tj --13.8013 -1.3278 TD -0 Tw -(using that texture.)Tj -/TT10 1 Tf -10 0 0 10 102 535.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 535.26 Tm -(SHADEGRIDBOX)Tj -/F3 1 Tf -10 0 0 10 172.8115 535.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.6815 535.26 Tm -(X Y SHADE OPERATION GRIDSPEC GRIDBORDER )Tj --7.5202 -1.1111 TD -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 140.4053 525.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 146.4063 525.26 Tm -( )Tj -33.136 0 TD -([Function])Tj --35.4033 -1.8833 TD -0.1078 Tw -(Shades the grid rectangle \()Tj -/TT15 1 Tf -12.1772 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.1078 Tw -(\) of )Tj -/TT15 1 Tf -1.9275 0 TD -0 Tw -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.1078 Tw -[( with texture )]TJ -/TT15 1 Tf -6.231 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1078 Tw -[( using )]TJ -/TT15 1 Tf -3.1716 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.1078 Tw -[( on)]TJ -/TT15 1 Tf --38.5098 -1.2944 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(GRIDBORDER)Tj -/TT8 1 Tf -6.001 0 TD -( is interpreted the same as for )Tj -/TT10 1 Tf -10 0 0 10 338.8623 496.66 Tm -(GRID)Tj -/TT8 1 Tf -9 0 0 9 362.8662 496.66 Tm -(.)Tj --31.6518 -3 TD -0.1189 Tw -(The following two functions map from the )Tj -/TT10 1 Tf -19.8908 0 TD -0 Tw -(X)Tj -10 0 0 10 262.4182 469.66 Tm -(,)Tj -9 0 0 9 268.4192 469.66 Tm -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.1189 Tw -[( coordinates of the source system into the grid )]TJ -/TT10 1 Tf -21.6974 0 TD -0 Tw -(X)Tj -10 0 0 10 474.498 469.66 Tm -(,)Tj -9 0 0 9 480.4989 469.66 Tm -(Y)Tj -/TT8 1 Tf --44.7221 -1.3278 TD -(coordinates:)Tj -/TT10 1 Tf -10 0 0 10 102 435.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 435.43 Tm -(GRIDXCOORD)Tj -/F3 1 Tf -10 0 0 10 162.0098 435.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 435.43 Tm -(XCOORD GRIDSPEC)Tj -/TT10 1 Tf -10 0 0 10 245.8929 435.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.8939 435.43 Tm -[( )-20915.1([Function])]TJ --13.9882 -1.8889 TD -0.2589 Tw -(Returns the grid )Tj -/TT10 1 Tf -10 0 0 10 200.1956 418.43 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 206.1965 418.43 Tm -0.2589 Tw -(-coordinate \(in the grid specified by )Tj -/TT15 1 Tf -17.6144 0 TD -0 Tw -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.2589 Tw -(\) that contains the)Tj --31.3259 -1.3333 TD -0 Tw -(source system )Tj -/TT10 1 Tf -10 0 0 10 184.3418 406.43 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 190.3427 406.43 Tm -(-coordinate )Tj -/TT15 1 Tf -5.3027 0 TD -(XCOORD)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 383.2 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 383.2 Tm -(GRIDYCOORD)Tj -/F3 1 Tf -10 0 0 10 162.0098 383.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 383.2 Tm -(YCOORD GRIDSPEC)Tj -/TT10 1 Tf -10 0 0 10 245.8929 383.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.8939 383.2 Tm -[( )-20915.1([Function])]TJ --13.9882 -1.8889 TD -0.2589 Tw -(Returns the grid )Tj -/TT10 1 Tf -10 0 0 10 200.1956 366.2 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 206.1965 366.2 Tm -0.2589 Tw -(-coordinate \(in the grid specified by )Tj -/TT15 1 Tf -17.6144 0 TD -0 Tw -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -0.2589 Tw -(\) that contains the)Tj --31.3259 -1.3333 TD -0 Tw -(source system )Tj -/TT10 1 Tf -10 0 0 10 184.3418 354.2 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 190.3427 354.2 Tm -(-coordinate )Tj -/TT15 1 Tf -5.3027 0 TD -(YCOORD)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --21.3859 -3 TD -0.1822 Tw -(The following two functions map from the grid )Tj -/TT10 1 Tf -10 0 0 10 281.5746 327.2 Tm -0 Tw -(X,Y)Tj -/TT8 1 Tf -9 0 0 9 299.5775 327.2 Tm -0.1822 Tw -[( coordinates into the )]TJ -/TT10 1 Tf -10 0 0 10 389.6204 327.2 Tm -0 Tw -(X,Y)Tj -/TT8 1 Tf -9 0 0 9 407.6234 327.2 Tm -0.1822 Tw -[( coordinates of the)]TJ --36.6248 -1.3278 TD -0 Tw -(source system:)Tj -/TT10 1 Tf -10 0 0 10 102 292.97 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 292.97 Tm -(LEFTOFGRIDCOORD)Tj -/F3 1 Tf -10 0 0 10 189.0142 292.97 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.8842 292.97 Tm -(GRIDX GRIDSPEC)Tj -/TT10 1 Tf -10 0 0 10 267.4965 292.97 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 273.4974 292.97 Tm -[( )-18514.7([Function])]TJ --16.3886 -1.8889 TD -0.1933 Tw -(Returns the source system )Tj -/TT10 1 Tf -10 0 0 10 239.5801 275.97 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 245.5811 275.97 Tm -0.1933 Tw -(-coordinate of the left edge of a grid rectangle at grid )Tj -/TT10 1 Tf -10 0 0 10 476.9989 275.97 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 482.9999 275.97 Tm -(-)Tj --39.6667 -1.3278 TD -(coordinate )Tj -/TT15 1 Tf -4.9697 0 TD -(GRIDX)Tj -/TT8 1 Tf -3.0005 0 TD -( \(in the grid specified by )Tj -/TT15 1 Tf -11.0083 0 TD -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -(\).)Tj -/TT10 1 Tf -10 0 0 10 102 241.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 241.14 Tm -(BOTTOMOFGRIDCOORD)Tj -/F3 1 Tf -10 0 0 10 199.8159 241.14 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 202.6859 241.14 Tm -(GRIDY GRIDSPEC)Tj -/TT10 1 Tf -10 0 0 10 278.2982 241.14 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 284.2992 241.14 Tm -[( )-17314.5([Function])]TJ --17.5888 -1.8889 TD -0.0767 Tw -(Returns the source system )Tj -/TT10 1 Tf -10 0 0 10 235.3801 224.14 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 241.3811 224.14 Tm -0.0767 Tw -(-coordinate of the bottom edge of a grid rectangle at grid )Tj -/TT10 1 Tf -10 0 0 10 477.0077 224.14 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 483.0087 224.14 Tm -(-)Tj --39.6676 -1.3278 TD -(coordinate )Tj -/TT15 1 Tf -4.9697 0 TD -(GRIDY)Tj -/TT8 1 Tf -3.0005 0 TD -( \(in the grid specified by )Tj -/TT15 1 Tf -11.0083 0 TD -(GRIDSPEC)Tj -/TT8 1 Tf -4.8008 0 TD -(\).)Tj -/TT4 1 Tf -10 0 0 10 54 169.25 Tm -(Display Streams)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 166.54 m -486.01 166.54 l -S -BT -/TT8 1 Tf -9 0 0 9 78 144.59 Tm -0.0622 Tw -(Display streams \(image streams of type )Tj -/TT10 1 Tf -18.055 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0622 Tw -(\) are used to control graphic output operations to a)Tj --22.2557 -1.2889 TD -0.1311 Tw -[(bitmap, known as the "destination" bitmap of the display stream. For each window on the screen,)]TJ -0 -1.2222 TD -0.0067 Tw -(there is an associated display stream which controls graphics operations to a specific part of the screen)Tj -T* -0.2433 Tw -[(bitmap. Any of the functions that take a display stream will also take a window, and use the)]TJ -T* -0.0056 Tw -[(associated display stream. Display streams can also have a destination bitmap that is not connected to)]TJ -T* -0 Tw -(any window or display device.)Tj -ET -endstream -endobj -99 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -102 0 obj -<< -/Length 7633 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 568.26 Tm -(DSPCREATE)Tj -/F3 1 Tf -10 0 0 10 204.6089 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.4789 568.26 Tm -(DESTINATION)Tj -/TT10 1 Tf -10 0 0 10 266.8885 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.8895 568.26 Tm -[( )-23915.6([Function])]TJ --10.9877 -1.8833 TD -0.2033 Tw -[(Creates and returns a display stream. If )]TJ -/TT15 1 Tf -19.5363 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.2033 Tw -[( is specified, it is used as the)]TJ --26.1374 -1.2889 TD -0 Tw -(destination bitmap, otherwise the screen bitmap is used.)Tj -/TT10 1 Tf -10 0 0 10 150 517.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 517.43 Tm -(DSPDESTINATION)Tj -/F3 1 Tf -10 0 0 10 231.6133 517.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.4833 517.43 Tm -(DESTINATION DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 369.5052 517.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 375.5062 517.43 Tm -[( )-12513.7([Function])]TJ --22.3896 -1.8833 TD -0.0022 Tw -(Returns the current destination bitmap for )Tj -/TT15 1 Tf -18.9879 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0022 Tw -(, setting it to )Tj -/TT15 1 Tf -5.7325 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0007 Tc -0.0015 Tw -( if)Tj --39.1228 -1.2944 TD -0 Tc -0 Tw -(non-)Tj -/TT10 1 Tf -10 0 0 10 192.3867 488.83 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 210.3896 488.83 Tm -0.0133 Tw -(. )Tj -/TT15 1 Tf -0.7767 0 TD -0 Tw -(DESTINATION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0133 Tw -[( can be either the screen bitmap, or an auxilliary bitmap in order)]TJ --11.421 -1.3278 TD -0 Tw -(to construct figures, possibly save them, and then display them in a single operation.)Tj -4 -2 TD -(Warning: The window system maintains the destination of a windows display)Tj -4 -1.2222 TD -(stream. Users should be very careful about changing this field.)Tj -/TT10 1 Tf -10 0 0 10 150 425.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 425.6 Tm -(DSPXOFFSET)Tj -/F3 1 Tf -10 0 0 10 210.0098 425.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 425.6 Tm -(XOFFSET DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 326.2982 425.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.2992 425.6 Tm -[( )-17314.5([Function])]TJ -/TT10 1 Tf -10 0 0 10 150 404.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 404.37 Tm -(DSPYOFFSET)Tj -/F3 1 Tf -10 0 0 10 210.0098 404.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 404.37 Tm -(YOFFSET DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 326.2982 404.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.2992 404.37 Tm -[( )-17314.5([Function])]TJ --17.5888 -1.8833 TD -0.0789 Tw -(Each display stream has its own coordinate system, separate from the coordinate system)Tj -0 -1.2222 TD -0.0144 Tw -[(of its destination bitmap. Having the coordinate system local to the display stream allows)]TJ -T* -0.1133 Tw -(objects to be displayed at different places by translating the display streams coordinate)Tj -0 -1.2278 TD -0.0333 Tw -[(system relative to its destination bitmap. This local coordinate system is defined by the )]TJ -/TT10 1 Tf -10 0 0 10 528.0015 354.37 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 174 342.37 Tm -(offset and )Tj -/TT10 1 Tf -10 0 0 10 215.7041 342.37 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 221.705 342.37 Tm -( offset.)Tj -/TT10 1 Tf -10 0 0 10 174 323.37 Tm -(DSPXOFFSET)Tj -/TT8 1 Tf -9 0 0 9 234.0097 323.37 Tm -0.2589 Tw -[( returns the current )]TJ -/TT10 1 Tf -10 0 0 10 322.6686 323.37 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 328.6696 323.37 Tm -0.2589 Tw -[( offset for )]TJ -/TT15 1 Tf -5.2415 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.2589 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 469.9495 323.37 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 475.9505 323.37 Tm -0.2589 Tw -[( origin of the)]TJ --33.5501 -1.3278 TD -0.0167 Tw -[(display streams coordinate system in the destination bitmaps coordinate system. It is set)]TJ -0 -1.2278 TD -0 Tw -(to )Tj -/TT15 1 Tf -1.1221 0 TD -(XOFFSET)Tj -/TT8 1 Tf -4.2007 0 TD -( if non-)Tj -/TT10 1 Tf -10 0 0 10 250.4077 300.37 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 268.4106 300.37 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 174 281.37 Tm -(DSPYOFFSET)Tj -/TT8 1 Tf -9 0 0 9 234.0097 281.37 Tm -0.2589 Tw -[( returns the current )]TJ -/TT10 1 Tf -10 0 0 10 322.6686 281.37 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 328.6696 281.37 Tm -0.2589 Tw -[( offset for )]TJ -/TT15 1 Tf -5.2415 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.2589 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 469.9495 281.37 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 475.9505 281.37 Tm -0.2589 Tw -[( origin of the)]TJ --33.5501 -1.3278 TD -0.0167 Tw -[(display streams coordinate system in the destination bitmaps coordinate system. It is set)]TJ -0 -1.2278 TD -0 Tw -(to )Tj -/TT15 1 Tf -1.1221 0 TD -(YOFFSET)Tj -/TT8 1 Tf -4.2007 0 TD -( if non-)Tj -/TT10 1 Tf -10 0 0 10 250.4077 258.37 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 268.4106 258.37 Tm -(.)Tj --10.4901 -2.1111 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 192.2044 239.37 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 198.2054 239.37 Tm -0.0989 Tw -[( offset and )]TJ -/TT10 1 Tf -10 0 0 10 244.8295 239.37 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 250.8305 239.37 Tm -0.0989 Tw -[( offset for a display stream are both initially 0 \(no )]TJ -/TT10 1 Tf -10 0 0 10 461.8264 239.37 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 467.8274 239.37 Tm -0.0989 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 482.5757 239.37 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 488.5767 239.37 Tm -(-coordinate)Tj --34.953 -1.3278 TD -(translation\).)Tj -0 -2.0056 TD -0.0056 Tw -[(Warning: The window system maintains the )]TJ -/TT10 1 Tf -10 0 0 10 355.5717 209.37 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 361.5727 209.37 Tm -0.0056 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 381.4085 209.37 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 387.4095 209.37 Tm -0.0056 Tw -[( offset of a windows display stream.)]TJ --23.7122 -1.3278 TD -0 Tw -(Users should be very careful about changing these fields.)Tj -/TT10 1 Tf -10 0 0 10 150 175.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 175.14 Tm -(DSPTEXTURE)Tj -/F3 1 Tf -10 0 0 10 210.0098 175.14 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 175.14 Tm -(TEXTURE DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 326.2982 175.14 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.2992 175.14 Tm -[( )-17314.5([Function])]TJ --17.5888 -1.8833 TD -0.0267 Tw -(Returns the current texture used as the background pattern for )Tj -/TT15 1 Tf -28.2369 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0267 Tw -[(. It is set)]TJ --36.0382 -1.2944 TD -0 Tw -(to )Tj -/TT15 1 Tf -1.1221 0 TD -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -( if non-)Tj -/TT10 1 Tf -10 0 0 10 250.4077 146.54 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 268.4106 146.54 Tm -(. Initially the value of )Tj -/TT10 1 Tf -10 0 0 10 357.6855 146.54 Tm -(WHITESHADE)Tj -/TT8 1 Tf -9 0 0 9 417.6953 146.54 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 123.31 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 123.31 Tm -(DSPSOURCETYPE)Tj -/F3 1 Tf -10 0 0 10 226.2124 123.31 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.0824 123.31 Tm -(SOURCETYPE DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 358.7035 123.31 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 364.7045 123.31 Tm -[( )-13713.9([Function])]TJ --21.1894 -1.8889 TD -0.1878 Tw -(Returns the current )Tj -/TT10 1 Tf -10 0 0 10 258.6154 106.31 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 294.6212 106.31 Tm -0.1878 Tw -[( sourcetype used when printing characters to the display)]TJ --13.4024 -1.3333 TD -0.2622 Tw -[(stream. It is set to )]TJ -/TT15 1 Tf -9.8092 0 TD -0 Tw -(SOURCETYPE)Tj -/TT8 1 Tf -6.001 0 TD -0.2622 Tw -(, if non-)Tj -/TT10 1 Tf -10 0 0 10 351.7643 94.31 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 369.7672 94.31 Tm -0.2622 Tw -[(. Must be either )]TJ -/TT10 1 Tf -10 0 0 10 448.0169 94.31 Tm -0 Tw -(INPUT)Tj -/TT8 1 Tf -9 0 0 9 478.0218 94.31 Tm -0.2622 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 495.7101 94.31 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 531.7159 94.31 Tm -(.)Tj --39.7462 -1.3333 TD -(Initially )Tj -/TT10 1 Tf -10 0 0 10 207.438 82.31 Tm -(INPUT)Tj -/TT8 1 Tf -9 0 0 9 237.4428 82.31 Tm -(.)Tj -ET -endstream -endobj -103 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -105 0 obj -<< -/Length 7143 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-23)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(DSPSCROLL)Tj -/F3 1 Tf -10 0 0 10 156.6089 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.4789 568.26 Tm -(SWITCHSETTING DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 305.3026 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 311.3036 568.26 Tm -[( )-14314([Function])]TJ --20.5893 -1.8833 TD -0.0467 Tw -(Returns the current value of the "scroll flag," a flag that determines the scrolling behavior)Tj -0 -1.2278 TD -0 Tw -(of the display stream; either )Tj -/TT10 1 Tf -10 0 0 10 239.45 540.26 Tm -(ON)Tj -/TT8 1 Tf -9 0 0 9 251.4519 540.26 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 264.44 540.26 Tm -(OFF)Tj -/TT8 1 Tf -9 0 0 9 282.4429 540.26 Tm -(. If )Tj -/TT10 1 Tf -10 0 0 10 297.5 540.26 Tm -(ON)Tj -/TT8 1 Tf -9 0 0 9 309.5019 540.26 Tm -(, the bits in the display streamss destination)Tj --20.3891 -1.3278 TD -0.0089 Tw -(bitmap are moved after any linefeed that moves the current position out of the destination)Tj -0 -1.2278 TD -0.0222 Tw -[(bitmap. Any bits moved out of the current clipping region are lost. Does not adjust the )]TJ -/TT10 1 Tf -10 0 0 10 480.0815 517.2599 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 126 505.26 Tm -(offset, )Tj -/TT10 1 Tf -10 0 0 10 152.4682 505.26 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 158.4692 505.26 Tm -( offset, or clipping region of the display stream. Initially )Tj -/TT10 1 Tf -10 0 0 10 384.8228 505.26 Tm -(OFF)Tj -/TT8 1 Tf -9 0 0 9 402.8257 505.26 Tm -(. )Tj --30.7584 -2.1111 TD -(Sets the scroll flag to )Tj -/TT15 1 Tf -9.334 0 TD -(SWITCHSETTING)Tj -/TT8 1 Tf -7.8013 0 TD -(, if non-)Tj -/TT10 1 Tf -10 0 0 10 310.9702 486.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 328.9731 486.26 Tm -(.)Tj --22.5526 -2.1056 TD -0.0211 Tw -[(Note: The word "scrolling" also describes the use of "scroll bars" on the left and bottom of)]TJ -0 -1.2222 TD -0 Tw -(a window to move an object displayed in a window. )Tj --5.3333 -2.8889 TD -0.0122 Tw -[(Each window has an associated display stream. To get the window of a particular display stream, use)]TJ -/TT10 1 Tf -10 0 0 10 78 419.26 Tm -0 Tw -(WFROMDS)Tj -/TT8 1 Tf -9 0 0 9 120.0068 419.26 Tm -(:)Tj -/TT10 1 Tf -10 0 0 10 102 396.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 396.03 Tm -(WFROMDS)Tj -/F3 1 Tf -10 0 0 10 145.8071 396.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 148.6771 396.03 Tm -(DISPLAYSTREAM DONTCREATE)Tj -/F3 1 Tf -10 0 0 10 278.2982 396.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 282.1882 396.03 Tm -[( )-17549.1([Function])]TJ --17.3543 -1.8833 TD -0.0244 Tw -(Returns the window associated with )Tj -/TT15 1 Tf -16.5119 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0244 Tw -(, creating a window if one does not)Tj --24.3131 -1.2944 TD -0.1189 Tw -(exist \(and )Tj -/TT15 1 Tf -4.7998 0 TD -0 Tw -(DONTCREATE)Tj -/TT8 1 Tf -6.001 0 TD -0.1189 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 236.2805 367.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 254.2834 367.43 Tm -0.1189 Tw -[(\). Returns )]TJ -/TT10 1 Tf -10 0 0 10 300.7839 367.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 318.7869 367.43 Tm -0.1189 Tw -[( if the destination of )]TJ -/TT15 1 Tf -9.6926 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.1189 Tw -[( is)]TJ --38.9146 -1.3278 TD -0 Tw -(not a screen bitmap that supports a window system.)Tj -0 -2.0056 TD -(If )Tj -/TT15 1 Tf -1.0433 0 TD -(DONTCREATE)Tj -/TT8 1 Tf -6.001 0 TD -0.1233 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 220.9384 337.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 238.9413 337.43 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 244.5513 337.43 Tm -(WFROMDS)Tj -/TT8 1 Tf -9 0 0 9 286.5581 337.43 Tm -0.1233 Tw -[( will never create a window, and returns )]TJ -/TT10 1 Tf -10 0 0 10 459.0114 337.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 477.0143 337.43 Tm -0.1233 Tw -[( if)]TJ -/TT15 1 Tf --39.0016 -1.3278 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -( does not have an associated window.)Tj -/TT10 1 Tf -10 0 0 10 126 306.83 Tm -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 222.0156 306.83 Tm -0.0478 Tw -[( calls )]TJ -/TT10 1 Tf -10 0 0 10 244.923 306.83 Tm -0 Tw -(WFROMDS)Tj -/TT8 1 Tf -9 0 0 9 286.9298 306.83 Tm -0.0478 Tw -[( with )]TJ -/TT10 1 Tf -10 0 0 10 310.5886 306.83 Tm -0.114 Tw -(DONTCREATE = T)Tj -/TT8 1 Tf -9 0 0 9 396.8823 306.83 Tm -0.0478 Tw -(, so it will not create a)Tj --30.098 -1.3333 TD -0.0589 Tw -[(window unnecessarily. Also, if )]TJ -/TT10 1 Tf -10 0 0 10 256.0914 294.83 Tm -0 Tw -(WFROMDS)Tj -/TT8 1 Tf -9 0 0 9 298.0982 294.83 Tm -0.0589 Tw -[( does create a window, it calls )]TJ -/TT10 1 Tf -10 0 0 10 422.8336 294.83 Tm -0 Tw -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 464.8405 294.83 Tm -0.0589 Tw -[( with)]TJ -/TT10 1 Tf -10 0 0 10 126 282.83 Tm -0 Tw -(NOOPENFLG = T)Tj -/TT8 1 Tf -9 0 0 9 204.0127 282.83 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 259.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 259.6 Tm -(DSPBACKUP)Tj -/F3 1 Tf -10 0 0 10 156.6089 259.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.4789 259.6 Tm -(WIDTH DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 262.0956 259.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 268.0966 259.6 Tm -[( )-19114.8([Function])]TJ --15.7885 -1.8833 TD -0.4244 Tw -(Backs up )Tj -/TT15 1 Tf -5.0877 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.4244 Tw -[( over a character which is )]TJ -/TT15 1 Tf -14.0442 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.4244 Tw -[( screen points wide.)]TJ -/TT10 1 Tf -10 0 0 10 126 231 Tm -0 Tw -(DSPBACKUP)Tj -/TT8 1 Tf -9 0 0 9 180.0088 231 Tm -0.0344 Tw -[( fills the backed over area with the display streams background texture and)]TJ --6.001 -1.3333 TD -0.4011 Tw -(decreases the )Tj -/TT10 1 Tf -10 0 0 10 188.3142 219 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 194.3152 219 Tm -0.4011 Tw -[( position by )]TJ -/TT15 1 Tf -6.6696 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.4011 Tw -[(. If this would put the )]TJ -/TT10 1 Tf -10 0 0 10 397.4733 219 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 403.4743 219 Tm -0.4011 Tw -[( position less than)]TJ -/TT15 1 Tf --30.8305 -1.3333 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0667 Tw -[(s left margin, its operation is stopped at the left margin. It returns )]TJ -/TT10 1 Tf -10 0 0 10 471.5924 207 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 477.5934 207 Tm -0.0667 Tw -[( if)]TJ --39.0659 -1.3333 TD -0 Tw -(any bits were written, )Tj -/TT10 1 Tf -10 0 0 10 215.1255 195 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 233.1284 195 Tm -( otherwise.)Tj -/TT4 1 Tf -10 0 0 10 54 151.71 Tm -(Fonts)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 149 m -486.01 149 l -S -BT -/TT8 1 Tf -9 0 0 9 78 127.05 Tm -0.0067 Tw -(A font is the collection of images that are printed or displayed when characters are output to a graphic)Tj -0 -1.2222 TD -0.0889 Tw -[(output device. Some simple displays and printers can only print characters using one font. Bitmap)]TJ -T* -0 Tw -(displays and graphic printers can print characters using a large number of fonts.)Tj -0 -2.8889 TD -0.1467 Tw -(Fonts are identified by a distinctive style or family \(such as Modern or Classic\), a size \(such as 10)Tj -0 -1.2222 TD -0.0611 Tw -[(points\), and a face \(such as bold or italic\). Fonts also have a rotation that indicates the orientation of)]TJ -T* -0 Tw -(characters on the screen or page. A normal horizontal font \(also called a portrait font\) has a rotation of)Tj -T* -0.0433 Tw -[(0; the rotation of a vertical \(landscape\) font is 90 degrees. While any combination can be specified, in)]TJ -ET -endstream -endobj -106 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -108 0 obj -<< -/Length 5865 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-24)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1444 Tw -(practice the user will find that only certain combinations of families, sizes, faces, and rotations are)Tj -0 -1.2222 TD -0 Tw -(available for any graphic output device.)Tj -0 -2.8944 TD -0.0167 Tw -(To specify a font to the functions described below, a )Tj -/TT10 1 Tf -10 0 0 10 336.3325 532.49 Tm -0 Tw -(FAMILY)Tj -/TT8 1 Tf -9 0 0 9 372.3384 532.49 Tm -0.0167 Tw -[( is represented by a literal atom, a )]TJ -/TT10 1 Tf -10 0 0 10 509.9095 532.49 Tm -0 Tw -(SIZE)Tj -/TT8 1 Tf -9 0 0 9 126 520.49 Tm -0.4 Tw -(by a positive integer, and a )Tj -/TT10 1 Tf -10 0 0 10 257.2523 520.49 Tm -0 Tw -(FACE)Tj -/TT8 1 Tf -9 0 0 9 281.2562 520.49 Tm -0.4 Tw -[( by a three-element list of the form \()]TJ -/TT10 1 Tf -10 0 0 10 452.3512 520.49 Tm -0.961 Tw -(WEIGHT SLOPE)Tj --32.6351 -1.2 TD -0 Tw -(EXPANSION)Tj -/TT8 1 Tf -9 0 0 9 180.0088 508.49 Tm -0.0822 Tw -(\). )Tj -/TT10 1 Tf -10 0 0 10 191.2358 508.49 Tm -0 Tw -(WEIGHT)Tj -/TT8 1 Tf -9 0 0 9 227.2417 508.49 Tm -0.0822 Tw -(, which indicates the thickness of the characters, can be )Tj -/TT10 1 Tf -10 0 0 10 455.0406 508.49 Tm -0 Tw -(BOLD)Tj -/TT8 1 Tf -9 0 0 9 479.0446 508.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 484.2845 508.49 Tm -(MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 520.2904 508.49 Tm -0.0822 Tw -(, or)Tj -/TT10 1 Tf -10 0 0 10 126 496.49 Tm -0 Tw -(LIGHT)Tj -/TT8 1 Tf -9 0 0 9 156.0049 496.49 Tm -(; )Tj -/TT10 1 Tf -10 0 0 10 161.1949 496.49 Tm -(SLOPE)Tj -/TT8 1 Tf -9 0 0 9 191.1997 496.49 Tm -0.0767 Tw -[( can be )]TJ -/TT10 1 Tf -10 0 0 10 223.0427 496.49 Tm -0 Tw -(ITALIC)Tj -/TT8 1 Tf -9 0 0 9 259.0486 496.49 Tm -0.0767 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 273.3968 496.49 Tm -0 Tw -(REGULAR)Tj -/TT8 1 Tf -9 0 0 9 315.4036 496.49 Tm -0.0767 Tw -(; and )Tj -/TT10 1 Tf -10 0 0 10 338.7695 496.49 Tm -0 Tw -(EXPANSION)Tj -/TT8 1 Tf -9 0 0 9 392.7783 496.49 Tm -0.0767 Tw -[( can be )]TJ -/TT10 1 Tf -10 0 0 10 424.6212 496.49 Tm -0 Tw -(REGULAR)Tj -/TT8 1 Tf -9 0 0 9 466.6281 496.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 471.8181 496.49 Tm -(COMPRESSED)Tj -/TT8 1 Tf -9 0 0 9 531.8278 496.49 Tm -(,)Tj --45.092 -1.3278 TD -0.1455 Tw -[(or EXPANDED, indicating how spread out the characters are. For convenience, faces may also be)]TJ -0 -1.2222 TD -0.0856 Tw -(specified by three-character atoms, where each character is the first letter of the corresponding field.)Tj -0 -1.2278 TD -0 Tw -(Thus, )Tj -/TT10 1 Tf -10 0 0 10 151.5751 462.49 Tm -(MRR)Tj -/TT8 1 Tf -9 0 0 9 169.578 462.49 Tm -0.12 Tw -[( is a synonym for \()]TJ -/TT10 1 Tf -10 0 0 10 248.7842 462.49 Tm -0.287 Tw -(MEDIUM REGULAR REGULAR)Tj -/TT8 1 Tf -9 0 0 9 386.5457 462.49 Tm -0.12 Tw -[(\). In addition, certain common face)]TJ --28.9495 -1.3278 TD -0 Tw -(combinations may be indicated by special literal atoms:)Tj -/TT10 1 Tf -10 0 0 10 210 432.49 Tm -(STANDARD = \(MEDIUM REGULAR REGULAR\) = MRR)Tj -0 -1.2 TD -(ITALIC = \(MEDIUM ITALIC REGULAR\) = MIR)Tj -T* -(BOLD = \(BOLD REGULAR REGULAR\) = BRR)Tj -T* -(BOLDITALIC = \(BOLD ITALIC REGULAR\) = BIR)Tj -/TT8 1 Tf -9 0 0 9 126 369.54 Tm -0.1511 Tw -[(Interlisp represents all the information related to a font in an object called a font descriptor. Font)]TJ -0 -1.2222 TD -0.1167 Tw -[(descriptors contain the family, size, etc. properties used to represent the font. In addition, for each)]TJ -T* -0.0411 Tw -(character in the font, the font descriptor contains width information for the character and \(for display)Tj -T* -0 Tw -(fonts\) a bitmap containing the picture of the character.)Tj -0 -2.8944 TD -0.0567 Tw -(The font functions can take fonts specified in a variety of different ways. )Tj -/TT10 1 Tf -10 0 0 10 424.7391 310.49 Tm -0 Tw -(DSPFONT)Tj -/TT8 1 Tf -9 0 0 9 466.746 310.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 471.756 310.49 Tm -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 531.7657 310.49 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 126 298.49 Tm -(FONTCOPY)Tj -/TT8 1 Tf -9 0 0 9 174.0078 298.49 Tm -0.0222 Tw -(, etc. can be applied to font descriptors, "font lists" such as \()Tj -/TT10 1 Tf -10 0 0 10 413.9937 298.49 Tm -0.054 Tw -(MODERN 10)Tj -/TT8 1 Tf -9 0 0 9 468.5425 298.49 Tm -0.0222 Tw -(\), image streams)Tj --38.0603 -1.3278 TD -0.1955 Tw -[(\(coerced to its current font\), or windows \(coerced to the current font of its display stream\). The)]TJ -0 -1.2278 TD -0 Tw -(printout command ".)Tj -/TT10 1 Tf -10 0 0 10 209.1577 275.49 Tm -(FONT)Tj -/TT8 1 Tf -9 0 0 9 233.1616 275.49 Tm -(" will also accept fonts specified in any of these forms.)Tj --11.9068 -2.9944 TD -(In general font files use the following format: )Tj -0 -2.8889 TD -0.06 Tw -(The family name \(e.g., Modern\); a two digit size \(e.g., 08\); a three letter Face \(e.g., BIR, for Bold Italic)Tj -0 -1.2222 TD -0.0322 Tw -(Regular\); the letter C followed by the fonts character set in base 8 \(e.g., C41\); and finally an extension)Tj -T* -0 Tw -(\(e.g., Displayfont\).)Tj -/TT6 1 Tf -10 0 0 10 248.28 115.42 Tm -(Family)Tj -2.8995 5.6 TD -(Size)Tj -1.861 -5.6 TD -(Face)Tj -/TT10 1 Tf --5.2885 2.658 TD -(Modern08-BIR-C41.Displayfont)Tj -/TT6 1 Tf -7.4815 2.142 TD -(CharacterSet \(base 8\))Tj -4.323 -4.8 TD -(Extension)Tj -ET -0 G -1 J 1 j 1 w 10 M []0 d -1 i -263 124 m -S -0 J 0 j -263 124 m -263 130.29 l -S -1 J 1 j -263 130.29 m -S -263 136 m -265.47 128.39 l -260.53 128.39 l -f* -383 124 m -S -0 J 0 j -383 124 m -383 130.29 l -S -1 J 1 j -383 130.29 m -S -383 136 m -385.47 128.39 l -380.53 128.39 l -f* -331 160 m -S -0 J 0 j -331 160 m -331 153.7 l -S -1 J 1 j -331 153.7 m -S -331 148 m -328.53 155.61 l -333.47 155.61 l -f* -287 160 m -S -0 J 0 j -287 160 m -287 153.7 l -S -1 J 1 j -287 153.7 m -S -287 148 m -284.53 155.61 l -289.47 155.61 l -f* -BT -8 0 0 8 267.665 163.54 Tm -(\(two digits\))Tj -ET -295 140 m -S -0 J 0 j -295 140 m -295 132 l -S -1 J 1 j -295 132 m -S -0 J 0 j -295 132 m -315 132 l -S -1 J 1 j -315 132 m -S -0 J 0 j -315 132 m -315 140 l -S -1 J 1 j -315 140 m -307 120 m -S -0 J 0 j -307 120 m -307 132 l -S -1 J 1 j -307 132 m -S -BT -/TT8 1 Tf -9 0 0 9 126 88.54 Tm -( )Tj -ET -endstream -endobj -109 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -111 0 obj -<< -/Length 7930 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-25)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(FONTCREATE)Tj -/F3 1 Tf -10 0 0 10 162.0098 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 568.26 Tm -(FAMILY SIZE FACE ROTATION DEVICE NOERRORFLG CHARSET)Tj -/TT10 1 Tf -10 0 0 10 440.3246 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 446.3256 568.26 Tm -( )Tj --37.5917 -1.1056 TD -([Function])Tj -2 -1.7778 TD -0.1078 Tw -(Returns a font descriptor for the specified font. )Tj -/TT15 1 Tf -22.1468 0 TD -0 Tw -(FAMILY)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[( is a litatom specifying the font)]TJ --25.7473 -1.2889 TD -0.0156 Tw -(family. )Tj -/TT15 1 Tf -3.6351 0 TD -0 Tw -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( is an integer indicating the size of the font in points. )]TJ -/TT15 1 Tf -23.859 0 TD -0 Tw -(FACE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( specifies the face)]TJ --32.2949 -1.2944 TD -0.1689 Tw -(characteristics in one of the formats listed above; if )Tj -/TT15 1 Tf -24.1264 0 TD -0 Tw -(FACE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1689 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 378.7151 519.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 396.718 519.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 402.738 519.06 Tm -(STANDARD)Tj -/TT8 1 Tf -9 0 0 9 450.7458 519.06 Tm -0.1689 Tw -[( is used.)]TJ -/TT15 1 Tf --36.0829 -1.3333 TD -0 Tw -(ROTATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0278 Tw -(, which specifies the orientation of the font, is 0 \(or )Tj -/TT10 1 Tf -10 0 0 10 374.835 507.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 392.8379 507.06 Tm -0.0278 Tw -(\) for a portrait font and)Tj --29.6487 -1.3278 TD -0.0656 Tw -(90 for a landscape font. )Tj -/TT15 1 Tf -11.136 0 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[( indicates the output device for the font, and can be any)]TJ --14.7366 -1.2944 TD -0.2033 Tw -(image stream type , such as )Tj -/TT10 1 Tf -10 0 0 10 248.623 483.46 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 290.6299 483.46 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 296.9599 483.46 Tm -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 356.9696 483.46 Tm -0.2033 Tw -(, etc. )Tj -/TT15 1 Tf -3.109 0 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.2033 Tw -[( may also be an)]TJ --32.3729 -1.3278 TD -0.0911 Tw -(image stream, in which case the type of the stream determines the font device. )Tj -/TT15 1 Tf -36.3994 0 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf --36.3994 -1.2944 TD -(defaults to )Tj -/TT10 1 Tf -10 0 0 10 170.4507 459.86 Tm -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 212.4575 459.86 Tm -(.)Tj --9.6064 -2.1111 TD -(The )Tj -/TT15 1 Tf -1.9605 0 TD -(FAMILY)Tj -/TT8 1 Tf -3.6006 0 TD -0.0367 Tw -[( argument to )]TJ -/TT10 1 Tf -10 0 0 10 230.5563 440.86 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 290.5661 440.86 Tm -0.0367 Tw -[( may also be a list, in which case it is interpreted)]TJ --18.2851 -1.3278 TD -0.1533 Tw -(as a font-specification quintuple, a list of the form \()Tj -/TT15 1 Tf -23.9 0 TD -0.3667 Tw -(FAMILY SIZE FACE ROTATION)Tj --23.9 -1.2944 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.4467 Tw -[(\). Thus, )]TJ -/TT10 1 Tf -10 0 0 10 204.7074 417.26 Tm -1.071 Tw -(\(FONTCREATE \(GACHA 10 BOLD\)\))Tj -/TT8 1 Tf -9 0 0 9 410.8658 417.26 Tm -0.4467 Tw -[( is equivalent to)]TJ --31.6518 -1.3333 TD -0 Tw -(\()Tj -/TT10 1 Tf -10 0 0 10 128.9971 405.26 Tm -0.035 Tw -(FONTCREATE GACHA 10 BOLD)Tj -/TT8 1 Tf -9 0 0 9 286.0724 405.26 Tm -0.0144 Tw -(\). )Tj -/TT15 1 Tf -1.1119 0 TD -0 Tw -(FAMILY)Tj -/TT8 1 Tf -3.6006 0 TD -0.0144 Tw -[( may also be a font descriptor, in which)]TJ --22.4983 -1.3278 TD -0 Tw -(case that descriptor is simply returned.)Tj -0 -2.0056 TD -0.0578 Tw -(If a font descriptor has already been created for the specified font, )Tj -/TT10 1 Tf -10 0 0 10 395.802 375.26 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 455.8117 375.26 Tm -0.0578 Tw -[( simply)]TJ --36.6458 -1.3333 TD -0.0289 Tw -[(returns it. If it has not been created, )]TJ -/TT10 1 Tf -10 0 0 10 273.6496 363.26 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 333.6593 363.26 Tm -0.0289 Tw -[( has to read the font information from)]TJ --23.0733 -1.3278 TD -0.0111 Tw -[(a font file that contains the information for that font. The name of an appropriate font file,)]TJ -0 -1.2222 TD -0 Tw -(and the algorithm for searching depends on the device that the font is for, and is described)Tj -T* -0.0522 Tw -[(in more detail below. If an appropriate font file is found, it is read into a font descriptor.)]TJ -0 -1.2278 TD -0.2567 Tw -(If no file is found, for )Tj -/TT10 1 Tf -10 0 0 10 226.3092 318.26 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 268.316 318.26 Tm -0.2567 Tw -[( fonts )]TJ -/TT10 1 Tf -10 0 0 10 297.3345 318.26 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 357.3442 318.26 Tm -0.2567 Tw -[( looks for fonts with less face)]TJ --25.7049 -1.3278 TD -0.1433 Tw -(information and fakes the remaining faces \(such as by doubling the bit pattern of each)Tj -0 -1.2222 TD -0.3222 Tw -[(character or slanting it\). For hardcopy printer fonts, there is no acceptable faking)]TJ -T* -0 Tw -(algorithm.)Tj -0 -2.0056 TD -0.5478 Tw -(If no acceptable font is found, the action of )Tj -/TT10 1 Tf -10 0 0 10 341.7919 266.26 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 401.8016 266.26 Tm -0.5478 Tw -[( is determined by)]TJ -/TT10 1 Tf -10 0 0 10 126 254.26 Tm -0 Tw -(NOERRORFLG)Tj -/TT8 1 Tf -9 0 0 9 186.0097 254.26 Tm -0.0689 Tw -[(. If )]TJ -/TT10 1 Tf -10 0 0 10 202.899 254.26 Tm -0 Tw -(NOERRORFLG)Tj -/TT8 1 Tf -9 0 0 9 262.9088 254.26 Tm -0.0689 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 275.0824 254.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 293.0853 254.26 Tm -0.0689 Tw -(, it generates a )Tj -/TT10 1 Tf -10 0 0 10 354.852 254.26 Tm -0.164 Tw -(FONT NOT FOUND)Tj -/TT8 1 Tf -9 0 0 9 442.1456 254.26 Tm -0.0689 Tw -[( error with)]TJ --35.1273 -1.3333 TD -0 Tw -(the offending font specification; otherwise, )Tj -/TT10 1 Tf -10 0 0 10 298.3052 242.26 Tm -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 358.3149 242.26 Tm -( returns )Tj -/TT10 1 Tf -10 0 0 10 391.6518 242.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 409.6548 242.26 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 126 223.26 Tm -(CHARSET)Tj -/TT8 1 Tf -9 0 0 9 168.0068 223.26 Tm -0.1222 Tw -[( is the character set which will be read to create the font. Defaults to 0. For)]TJ --4.6674 -1.3333 TD -0 Tw -(more information on character sets, see )Tj -/TT10 1 Tf -10 0 0 10 283.9966 211.26 Tm -(NS)Tj -/TT8 1 Tf -9 0 0 9 295.9985 211.26 Tm -( Characters.)Tj -/TT10 1 Tf -10 0 0 10 102 187.97 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 187.97 Tm -(FONTP)Tj -/TT4 1 Tf -10 0 0 10 135.0054 187.97 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 137.7837 187.97 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 143.1846 187.97 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 149.1856 187.97 Tm -( )Tj -32.8272 0 TD -([Function])Tj --35.4033 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a font descriptor; )Tj -/TT10 1 Tf -10 0 0 10 261.5845 170.97 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 279.5874 170.97 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 102 147.68 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 147.68 Tm -(FONTPROP)Tj -/TT4 1 Tf -10 0 0 10 151.208 147.68 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 153.9863 147.68 Tm -(FONT PROP)Tj -/TT10 1 Tf -10 0 0 10 202.5942 147.68 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 208.5952 147.68 Tm -[( )-25726.1([Function])]TJ --9.1772 -1.8833 TD -0.0944 Tw -(Returns the value of the )Tj -/TT15 1 Tf -11.2906 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0944 Tw -[( property of font )]TJ -/TT15 1 Tf -7.9432 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0944 Tw -[(. The following font properties are)]TJ --24.0346 -1.2889 TD -0 Tw -(recognized:)Tj -/TT10 1 Tf -10 0 0 10 126 101.08 Tm -(FAMILY)Tj -/TT8 1 Tf -9 0 0 9 174 101.08 Tm -0.2322 Tw -(The style of the font, represented as a literal atom, such as )Tj -/TT10 1 Tf -10 0 0 10 431.1157 101.08 Tm -0 Tw -(CLASSIC)Tj -/TT8 1 Tf -9 0 0 9 473.1225 101.08 Tm -0.2322 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 174 89.08 Tm -0 Tw -(MODERN)Tj -/TT8 1 Tf -9 0 0 9 210.0058 89.08 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 138 70.08 Tm -(SIZE)Tj -/TT8 1 Tf -9 0 0 9 174 70.08 Tm -0.1233 Tw -(A positive integer giving the size of the font, in printers points \(1/72 of an)Tj -0 -1.3278 TD -0 Tw -(inch\).)Tj -ET -endstream -endobj -112 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -114 0 obj -<< -/Length 7875 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-26)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -7.8 -4.251 TD -(WEIGHT)Tj -/TT8 1 Tf -9 0 0 9 222 569.49 Tm -(The thickness of the characters; one of )Tj -/TT10 1 Tf -10 0 0 10 375.2021 569.49 Tm -(BOLD)Tj -/TT8 1 Tf -9 0 0 9 399.2061 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 403.7061 569.49 Tm -(MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 439.7119 569.49 Tm -(, or )Tj -/TT10 1 Tf -10 0 0 10 454.9302 569.49 Tm -(LIGHT)Tj -/TT8 1 Tf -9 0 0 9 484.9351 569.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 180 550.49 Tm -(SLOPE)Tj -/TT8 1 Tf -9 0 0 9 222 550.49 Tm -(The "slope" of the characters in the font; one of )Tj -/TT10 1 Tf -10 0 0 10 409.1543 550.49 Tm -(ITALIC)Tj -/TT8 1 Tf -9 0 0 9 445.1602 550.49 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 458.1284 550.49 Tm -(REGULAR)Tj -/TT8 1 Tf -9 0 0 9 500.1353 550.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 156 531.49 Tm -(EXPANSION)Tj -/TT8 1 Tf -9 0 0 9 222 531.49 Tm -0.3778 Tw -(The extent to which the characters in the font are spread out; one of)Tj -/TT10 1 Tf -10 0 0 10 222 519.49 Tm -0 Tw -(REGULAR)Tj -/TT8 1 Tf -9 0 0 9 264.0068 519.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 272.7368 519.49 Tm -(COMPRESSED)Tj -/TT8 1 Tf -9 0 0 9 332.7466 519.49 Tm -0.47 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 356.4248 519.49 Tm -0 Tw -(EXPANDED)Tj -/TT8 1 Tf -9 0 0 9 404.4326 519.49 Tm -0.47 Tw -[(. Most available fonts have)]TJ -/TT10 1 Tf -10 0 0 10 222 507.49 Tm -0 Tw -(EXPANSION = REGULAR)Tj -/TT8 1 Tf -9 0 0 9 336.0185 507.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 186 488.49 Tm -(FACE)Tj -/TT8 1 Tf -9 0 0 9 222 488.49 Tm -0.0389 Tw -(A three-element list of the form \()Tj -/TT10 1 Tf -10 0 0 10 354.411 488.49 Tm -0.093 Tw -(WEIGHT SLOPE EXPANSION)Tj -/TT8 1 Tf -9 0 0 9 488.2925 488.49 Tm -0.0389 Tw -(\), giving all)Tj --29.5881 -1.3278 TD -0 Tw -(of the typeface parameters.)Tj -/TT10 1 Tf -10 0 0 10 162 458.49 Tm -(ROTATION)Tj -/TT8 1 Tf -9 0 0 9 222 458.49 Tm -0.1422 Tw -(An integer that gives the orientation of the font characters on the screen or)Tj -T* -0.0856 Tw -[(page, in degrees. A normal horizontal font \(also called a portrait font\) has a)]TJ -0 -1.2222 TD -0 Tw -(rotation of 0; the rotation of a vertical \(landscape\) font is 90.)Tj -/TT10 1 Tf -10 0 0 10 174 417.49 Tm -(DEVICE)Tj -/TT8 1 Tf -9 0 0 9 222 417.49 Tm -0.0567 Tw -(The device that the font can be printed on; one of )Tj -/TT10 1 Tf -10 0 0 10 424.7838 417.49 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 466.7906 417.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 471.8007 417.49 Tm -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 531.8104 417.49 Tm -(,)Tj --34.4234 -1.3278 TD -(etc.)Tj -/TT10 1 Tf -10 0 0 10 174 387.49 Tm -(ASCENT)Tj -/TT8 1 Tf -9 0 0 9 222 387.49 Tm -0.1167 Tw -(An integer giving the maximum height of any character in the font from its)Tj -T* -0.9478 Tw -[(base line \(the printing position\). The top line will be at)]TJ -/TT10 1 Tf -10 0 0 10 222 364.49 Tm -0 Tw -(BASELINE+ASCENT-1)Tj -/TT8 1 Tf -9 0 0 9 324.0166 364.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 168 345.49 Tm -(DESCENT)Tj -/TT8 1 Tf -9 0 0 9 222 345.49 Tm -0.0989 Tw -(An integer giving the maximum extent of any character below the base line,)Tj -T* -0.1889 Tw -[(such as the lower part of a "p". The bottom line of a character will be at)]TJ -/TT10 1 Tf -10 0 0 10 222 322.49 Tm -0 Tw -(BASELINE-DESCENT)Tj -/TT8 1 Tf -9 0 0 9 318.0156 322.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 174 303.49 Tm -(HEIGHT)Tj -/TT8 1 Tf -9 0 0 9 222 303.49 Tm -(Equal to )Tj -/TT10 1 Tf -10 0 0 10 257.4331 303.49 Tm -(ASCENT + DESCENT)Tj -/TT8 1 Tf -9 0 0 9 353.4487 303.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 186 284.49 Tm -(SPEC)Tj -/TT8 1 Tf -9 0 0 9 222 284.49 Tm -0.0111 Tw -(The \()Tj -/TT10 1 Tf -10 0 0 10 242.4115 284.49 Tm -0.027 Tw -(FAMILY SIZE FACE ROTATION DEVICE)Tj -/TT8 1 Tf -9 0 0 9 435.5228 284.49 Tm -0.0111 Tw -(\) quintuple by which the)Tj --23.7248 -1.3278 TD -0 Tw -(font is known to Lisp.)Tj -/TT10 1 Tf -10 0 0 10 150 254.49 Tm -(DEVICESPEC)Tj -/TT8 1 Tf -9 0 0 9 222 254.49 Tm -0.3056 Tw -(The \()Tj -/TT10 1 Tf -10 0 0 10 245.0615 254.49 Tm -0.733 Tw -(FAMILY SIZE FACE ROTATION DEVICE)Tj -/TT8 1 Tf -9 0 0 9 466.4128 254.49 Tm -0.3056 Tw -(\) quintuple that)Tj --27.157 -1.3278 TD -0.0522 Tw -[(identifies what will be used to represent the font on the display or printer. It)]TJ -0 -1.2278 TD -0.1944 Tw -(will differ from the )Tj -/TT10 1 Tf -10 0 0 10 307.2358 231.49 Tm -0 Tw -(SPEC)Tj -/TT8 1 Tf -9 0 0 9 331.2397 231.49 Tm -0.1944 Tw -[( property only if an implicit coercion is done to)]TJ --12.1378 -1.3278 TD -0 Tw -(approximate the specified font with one that actually exists on the device.)Tj -/TT10 1 Tf -10 0 0 10 180 201.49 Tm -(SCALE)Tj -/TT8 1 Tf -9 0 0 9 222 201.49 Tm -0.0656 Tw -(The units per printers point \(1/72 of an inch\) in which the font is measured.)Tj -T* -0.1867 Tw -(For example, this is 35.27778 \(the number of micas per printers point\) for)Tj -0 -1.2222 TD -0 Tw -(Interpress fonts, which are measured in terms of micas.)Tj -/TT10 1 Tf -10 0 0 10 150 156.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 156.26 Tm -(FONTCOPY)Tj -/F3 1 Tf -10 0 0 10 199.208 156.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 202.078 156.26 Tm -(OLDFONT PROP)Tj -7.1991 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 272.27 156.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 275.05 156.26 Tm -(VAL)Tj -1.8 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 296.65 156.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 299.43 156.26 Tm -(PROP)Tj -2.4 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 326.43 156.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 329.21 156.26 Tm -(VAL)Tj -1.8 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 350.81 156.26 Tm -( ...)Tj -/TT10 1 Tf -1.112 0 TD -(\))Tj -/TT8 1 Tf -9 0 0 9 367.931 156.26 Tm -[( )-8617.7([NoSpread Function])]TJ --21.5479 -2.1778 TD -0.2089 Tw -(Returns a font descriptor that is a copy of the font )Tj -/TT15 1 Tf -24.4731 0 TD -0 Tw -(OLDFONT)Tj -/TT8 1 Tf -4.2007 0 TD -0.2089 Tw -(, but which differs from)Tj -/TT15 1 Tf --28.6738 -1.2889 TD -0 Tw -(OLDFONT)Tj -/TT8 1 Tf -4.2007 0 TD -0.2856 Tw -[( in that )]TJ -/TT15 1 Tf -4.2141 0 TD -0 Tw -(OLDFONT)Tj -/TT8 1 Tf -4.2007 0 TD -0.2856 Tw -(s properties are replaced by the specified properties and)Tj --12.6155 -1.2944 TD -0.1022 Tw -[(values. Thus, \()]TJ -/TT10 1 Tf -10 0 0 10 236.7585 113.41 Tm -0.245 Tw -(FONTCOPY FONT WEIGHT BOLD DEVICE INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 531.0544 113.41 Tm -0 Tw -(\))Tj --39.6727 -1.3333 TD -0.1533 Tw -(will return a bold Interpress font with all other properties the same as those of )Tj -/TT10 1 Tf -10 0 0 10 507.7225 101.41 Tm -0 Tw -(FONT)Tj -/TT8 1 Tf -9 0 0 9 531.7264 101.41 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 174 89.41 Tm -(FONTCOPY)Tj -/TT8 1 Tf -9 0 0 9 222.0078 89.41 Tm -0.2844 Tw -[( accepts the properties )]TJ -/TT10 1 Tf -10 0 0 10 323.5266 89.41 Tm -0 Tw -(FAMILY)Tj -/TT8 1 Tf -9 0 0 9 359.5325 89.41 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 366.5925 89.41 Tm -(SIZE)Tj -/TT8 1 Tf -9 0 0 9 390.5964 89.41 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 397.6564 89.41 Tm -(WEIGHT)Tj -/TT8 1 Tf -9 0 0 9 433.6622 89.41 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 440.7222 89.41 Tm -(SLOPE)Tj -/TT8 1 Tf -9 0 0 9 470.7271 89.41 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 477.7871 89.41 Tm -(EXPANSION)Tj -/TT8 1 Tf -9 0 0 9 531.7959 89.41 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 77.41 Tm -(FACE)Tj -/TT8 1 Tf -9 0 0 9 198.0039 77.41 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 202.5639 77.41 Tm -(ROTATION)Tj -/TT8 1 Tf -9 0 0 9 250.5717 77.41 Tm -0.0067 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 272.6776 77.41 Tm -0 Tw -(DEVICE)Tj -/TT8 1 Tf -9 0 0 9 308.6834 77.41 Tm -0.0067 Tw -[(. If the first property is a list, it is taken to be the)]TJ -/TT15 1 Tf -21.4327 0 TD -0.0144 Tw -[( PROP)]TJ -3.0114 -0.3333 TD -0 Tw -(1)Tj --39.4089 -1.2944 TD -(VAL)Tj -1.8 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT15 1 Tf -0.4867 0 TD -(PROP)Tj -2.4 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT15 1 Tf -0.4867 0 TD -(VAL)Tj -1.8 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -( )Tj -/TT15 1 Tf -0.4867 0 TD -(...)Tj -/TT8 1 Tf -1.8003 0 TD -0.2367 Tw -[( sequence. Thus, \()]TJ -/TT10 1 Tf -10 0 0 10 355.0031 62.76 Tm -0.567 Tw -(FONTCOPY FONT \(WEIGHT BOLD)Tj --18.1003 -1.465 TD -0 Tw -(DEVICE INTERPRESS\))Tj -/TT8 1 Tf -9 0 0 9 282.0175 48.11 Tm -(\) is equivalent to the example above.)Tj -ET -endstream -endobj -115 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -117 0 obj -<< -/Length 6382 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-27)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0933 Tw -(If the property )Tj -/TT10 1 Tf -10 0 0 10 188.8789 569.49 Tm -0 Tw -(NOERROR)Tj -/TT8 1 Tf -9 0 0 9 230.8857 569.49 Tm -0.0933 Tw -[( is specified with value non-)]TJ -/TT10 1 Tf -10 0 0 10 346.9705 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 364.9734 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 370.3134 569.49 Tm -(FONTCOPY)Tj -/TT8 1 Tf -9 0 0 9 418.3212 569.49 Tm -0.0933 Tw -[( will return )]TJ -/TT10 1 Tf -10 0 0 10 467.9769 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 126 557.54 Tm -(rather than causing an error if the specified font cannot be created.)Tj -/TT10 1 Tf -10 0 0 10 102 535.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 535.26 Tm -(FONTSAVAILABLE)Tj -/F3 1 Tf -10 0 0 10 183.6133 535.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 186.4833 535.26 Tm -(FAMILY SIZE FACE ROTATION DEVICE )Tj --8.7204 -1.1111 TD -(CHECKFILESTOO?)Tj -/TT10 1 Tf -10 0 0 10 183.6123 525.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 189.6133 525.26 Tm -[( )-27835.2([Function])]TJ --7.0681 -1.8833 TD -0.1878 Tw -(Returns a list of available fonts that match the given specification. )Tj -/TT15 1 Tf -31.7538 0 TD -0.45 Tw -(FAMILY, SIZE,)Tj --31.7538 -1.2944 TD -0.0756 Tw -(FACE, ROTATION)Tj -/TT8 1 Tf -8.4769 0 TD -0.0311 Tw -(, and )Tj -/TT15 1 Tf -2.5051 0 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[( are the same as for )]TJ -/TT10 1 Tf -10 0 0 10 337.6251 496.66 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 397.6348 496.66 Tm -0.0311 Tw -[(. Additionally, any of)]TJ --30.1817 -1.3333 TD -0 Tw -(them can be the atom )Tj -/TT10 1 Tf -10 0 0 10 213.4819 484.66 Tm -(*)Tj -/TT8 1 Tf -9 0 0 9 219.4829 484.66 Tm -(, in which case all values of that field are matched.)Tj --10.387 -2.1111 TD -(If )Tj -/TT15 1 Tf -1.1877 0 TD -(CHECKFILESTOO?)Tj -/TT8 1 Tf -8.4014 0 TD -0.2678 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 228.0552 465.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 246.0581 465.66 Tm -0.2678 Tw -(, only fonts already loaded into virtual memory will be)Tj --13.3398 -1.3333 TD -0.0389 Tw -[(considered. If )]TJ -/TT15 1 Tf -6.6479 0 TD -0 Tw -(CHECKFILESTOO?)Tj -/TT8 1 Tf -8.4014 0 TD -0.0389 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 291.4639 453.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 309.4668 453.66 Tm -0.0389 Tw -(, the font directories for the specified device)Tj --20.3852 -1.3278 TD -0 Tw -(will be searched. When checking font files, the )Tj -/TT15 1 Tf -20.7222 0 TD -(ROTATION)Tj -/TT8 1 Tf -4.8008 0 TD -( is ignored.)Tj --21.523 -2.0667 TD -(Note: The search is conditional on the status of the server which holds the font.)Tj -4 -1.2278 TD -(Thus a file server crash may prevent )Tj -/TT10 1 Tf -10 0 0 10 344.8213 412.06 Tm -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 404.831 412.06 Tm -( from finding a file)Tj --22.9812 -1.3333 TD -(that an earlier )Tj -/TT10 1 Tf -10 0 0 10 255.5683 400.06 Tm -(FONTSAVAILABLE)Tj -/TT8 1 Tf -9 0 0 9 339.582 400.06 Tm -( returned. )Tj --23.7313 -2.1056 TD -0.0889 Tw -(Each element of the list returned will be of the form \()Tj -/TT15 1 Tf -24.3469 0 TD -0.2144 Tw -(FAMILY SIZE FACE ROTATION)Tj --24.3469 -1.2889 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -(\).)Tj --3.6006 -2.0667 TD -(Examples:)Tj -/TT10 1 Tf -10 0 0 10 126 332.86 Tm -(\(FONTSAVAILABLE MODERN 10 MRR 0 DISPLAY\))Tj -/TT8 1 Tf -9 0 0 9 126 313.86 Tm -0.0589 Tw -(will return \()Tj -/TT10 1 Tf -10 0 0 10 174.9428 313.86 Tm -0.14 Tw -(\(MODERN 10 \(MEDIUM REGULAR REGULAR\) 0 DISPLAY\))Tj -/TT8 1 Tf -9 0 0 9 459.3877 313.86 Tm -0.0589 Tw -(\) if the)Tj --37.0431 -1.3333 TD -0 Tw -(regular Modern 10 font for the display is in virtual memory; )Tj -/TT10 1 Tf -10 0 0 10 367.207 301.86 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 385.21 301.86 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 126 282.86 Tm -(\(FONTSAVAILABLE * 14 * * INTERPRESS T\))Tj -/TT8 1 Tf -9 0 0 9 126 263.91 Tm -0.0567 Tw -(will return a list of all the size 14 Interpress fonts, whether they are in virtual memory or)Tj -0 -1.2222 TD -0 Tw -(in font files. )Tj -/TT10 1 Tf -10 0 0 10 102 230.63 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 230.63 Tm -(SETFONTDESCRIPTOR)Tj -/F3 1 Tf -10 0 0 10 199.8159 230.63 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 202.6859 230.63 Tm -(FAMILY SIZE FACE ROTATION DEVICE FONT)Tj -/TT10 1 Tf -10 0 0 10 402.5184 230.63 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 408.5194 230.63 Tm -[( )-3512.3([Function])]TJ --31.391 -1.8833 TD -0.1 Tw -(Indicates to the system that )Tj -/TT15 1 Tf -12.8291 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1 Tw -[( is the font that should be associated with the )]TJ -/TT15 1 Tf -21.1772 0 TD -0 Tw -(FAMILY)Tj --36.4067 -1.2944 TD -0.0267 Tw -(SIZE FACE ROTATION DEVICE)Tj -/TT8 1 Tf -15.0824 0 TD -0.0111 Tw -[( characteristics. If )]TJ -/TT15 1 Tf -8.229 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0111 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 368.5402 202.03 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 386.5432 202.03 Tm -0.0111 Tw -(, the font associated with)Tj --28.9492 -1.3278 TD -0.1033 Tw -[(these characteristics is cleared and will be recreated the next time it is needed. As with)]TJ -/TT10 1 Tf -10 0 0 10 126 179.03 Tm -0 Tw -(FONTPROP)Tj -/TT8 1 Tf -9 0 0 9 174.0078 179.03 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 193.7436 179.03 Tm -(FONTCOPY)Tj -/TT8 1 Tf -9 0 0 9 241.7514 179.03 Tm -(, )Tj -/TT15 1 Tf -0.5 0 TD -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -( is coerced to a font descriptor if it is not one already.)Tj --15.7617 -2.1056 TD -0.0078 Tw -(This functions is useful when it is desirable to simulate an unavailable font or to use a font)Tj -0 -1.2222 TD -0 Tw -(with characteristics different from the interpretations provided by the system.)Tj -/TT10 1 Tf -10 0 0 10 102 126.8 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 126.8 Tm -(DEFAULTFONT)Tj -/F3 1 Tf -10 0 0 10 167.4106 126.8 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.2806 126.8 Tm -(DEVICE FONT )Tj -/TT10 1 Tf -10 0 0 10 240.4921 126.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.493 126.8 Tm -[( )-21515.2([Function])]TJ --13.3881 -1.8889 TD -0.2389 Tw -(Returns the font that would be used as the default \(if )Tj -/TT10 1 Tf -10 0 0 10 361.8751 109.8 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 379.878 109.8 Tm -0.2389 Tw -[( were specified as a font)]TJ --28.2087 -1.3278 TD -0.0756 Tw -(argument\) for image stream type )Tj -/TT15 1 Tf -15.2372 0 TD -0 Tw -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0756 Tw -[(. If )]TJ -/TT15 1 Tf -1.8966 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0756 Tw -[( is a font descriptor, it is set to be the)]TJ --23.1347 -1.2889 TD -0 Tw -(default font for )Tj -/TT15 1 Tf -6.9541 0 TD -(DEVICE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -ET -endstream -endobj -118 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -120 0 obj -<< -/Length 7431 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-28)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 568.26 Tm -(CHARWIDTH)Tj -/F3 1 Tf -10 0 0 10 204.6089 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.4789 568.26 Tm -(CHARCODE FONT)Tj -/TT10 1 Tf -10 0 0 10 277.6903 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.6913 568.26 Tm -[( )-22715.4([Function])]TJ -/TT15 1 Tf --12.1879 -1.8889 TD -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2778 Tw -[( is an integer that represents a valid character \(as returned by )]TJ -/TT10 1 Tf -10 0 0 10 492.7515 551.26 Tm -0 Tw -(CHCON1)Tj -/TT8 1 Tf -9 0 0 9 528.7573 551.26 Tm -(\).)Tj --39.4175 -1.47 TD -0.0156 Tw -(Returns the amount by which an image streams )Tj -/F3 1 Tf -10 0 0 10 369.934 538.03 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 377.154 538.03 Tm -0.0156 Tw -(-position will be incremented when the)Tj --22.5727 -1.2222 TD -0 Tw -(character is printed.)Tj -/F3 1 Tf -10 0 0 10 150 504.75 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 153.89 504.75 Tm -(CHARWIDTHY)Tj -/F3 1 Tf -10 0 0 10 207.8988 504.75 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 210.7688 504.75 Tm -(CHARCODE FONT)Tj -/F3 1 Tf -10 0 0 10 280.9802 504.75 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 284.8702 504.75 Tm -[( )-22584.4([Function])]TJ --12.3189 -1.9867 TD -(Like )Tj -/TT10 1 Tf -10 0 0 10 194.2631 486.87 Tm -(CHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 248.2719 486.87 Tm -0.0644 Tw -(, but returns the )Tj -/F3 1 Tf -10 0 0 10 316.5054 486.87 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 323.7254 486.87 Tm -0.0644 Tw -[( component of the characters width, the amount by)]TJ --16.6362 -1.47 TD -0.1289 Tw -(which an image streams )Tj -/F3 1 Tf -10 0 0 10 279.7318 473.64 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 286.9518 473.64 Tm -0.1289 Tw -(-position will be incremented when the character is printed.)Tj --12.5502 -1.2222 TD -0.1422 Tw -(This will be zero for most characters in normal portrait fonts, but may be non-zero for)Tj -T* -0 Tw -(landscape fonts or for vector-drawing fonts.)Tj -/F3 1 Tf -10 0 0 10 150 429.36 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 153.89 429.36 Tm -(STRINGWIDTH)Tj -/F3 1 Tf -10 0 0 10 213.2997 429.36 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 216.1696 429.36 Tm -(STR FONT FLG RDTBL)Tj -/F3 1 Tf -10 0 0 10 313.3855 429.36 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 317.2755 429.36 Tm -[( )-18983.8([Function])]TJ --15.9195 -1.9867 TD -0.0544 Tw -(Returns the amount by which a streams )Tj -/F3 1 Tf -10 0 0 10 340.3748 411.48 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 347.5948 411.48 Tm -0.0544 Tw -(-position will be incremented if the printname)Tj --19.2883 -1.2278 TD -0.0378 Tw -(for the Interlisp-D object )Tj -/TT15 1 Tf -11.2273 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0378 Tw -[( is printed in font )]TJ -/TT15 1 Tf -8.099 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -(. If )Tj -/TT15 1 Tf -1.4955 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0378 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 432.4195 400.43 Tm -0 Tw -(NIL,)Tj -/TT8 1 Tf -9 0 0 9 456.4234 400.43 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 459.0134 400.43 Tm -(DEFAULTFONT)Tj -/TT8 1 Tf -9 0 0 9 525.0242 400.43 Tm -0.0378 Tw -[( is)]TJ --39.0027 -1.4767 TD -0.0033 Tw -(used as )Tj -/TT15 1 Tf -3.5472 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0033 Tw -(. )Tj -/TT6 1 Tf -10 0 0 10 234.3382 387.14 Tm -0 Tw -(I)Tj -/TT8 1 Tf -9 0 0 9 237.1166 387.14 Tm -(f )Tj -/TT15 1 Tf -0.5863 0 TD -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0002 Tc -0.0031 Tw -( is an image stream, its font is used. If )Tj -/TT15 1 Tf -17.129 0 TD -0 Tc -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0004 Tc -0.0029 Tw -( is non-)Tj -/TT10 1 Tf -10 0 0 10 463.7407 387.14 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 481.7436 387.14 Tm -0.0033 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 501.0385 387.14 Tm -0 Tw -(PRIN2)Tj -/TT8 1 Tf -9 0 0 9 531.0433 387.14 Tm -(-)Tj --39.6715 -1.3278 TD -(pname of )Tj -/TT15 1 Tf -4.4238 0 TD -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -( with respect to the readtable )Tj -/TT15 1 Tf -13.0747 0 TD -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -( is used.)Tj -/F3 1 Tf -10 0 0 10 150 352.31 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 153.89 352.31 Tm -(STRINGREGION)Tj -/F3 1 Tf -10 0 0 10 218.7005 352.31 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 221.5705 352.31 Tm -(STR STREAM PRIN2FLG RDTBL)Tj -/F3 1 Tf -10 0 0 10 356.5925 352.31 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 360.4825 352.31 Tm -[( )-14183([Function])]TJ --20.7203 -1.8444 TD -0.0444 Tw -(Returns the region occupied by )Tj -/TT15 1 Tf -14.3135 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0444 Tw -[( if it were printed at the current location in the image)]TJ --16.1138 -1.2889 TD -0 Tw -(stream )Tj -/TT15 1 Tf -3.2835 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0267 Tw -[(. This is useful, for example, for determining where text is in a window to)]TJ --6.8841 -1.2889 TD -0.3833 Tw -[(allow the user to select it. The arguments )]TJ -/TT15 1 Tf -22.054 0 TD -0 Tw -(PRIN2FLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.3833 Tw -[( and )]TJ -/TT15 1 Tf -2.9595 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.3833 Tw -[( are passed to)]TJ -/TT10 1 Tf -10 0 0 10 174 300.86 Tm -0 Tw -(STRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 240.0107 300.86 Tm -(.)Tj --4.6679 -2.1111 TD -(Note: )Tj -/TT10 1 Tf -10 0 0 10 224.5291 281.86 Tm -(STRINGREGION)Tj -/TT8 1 Tf -9 0 0 9 296.5409 281.86 Tm -0.2656 Tw -[( does not take into account any carriage returns in the)]TJ --7.6157 -1.3278 TD -0.3211 Tw -(string, or carriage returns that may be automatically printed if )Tj -/TT15 1 Tf -30.9123 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.3211 Tw -[( is)]TJ --32.7126 -1.2889 TD -0.0711 Tw -(printed to )Tj -/TT15 1 Tf -4.7994 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0711 Tw -[(. Therefore, the value returned is meaningless for multi-)]TJ --8.4 -1.2889 TD -0 Tw -(line strings.)Tj --11.3333 -2.8889 TD -0.0211 Tw -(The following functions allow the user to access and change the bitmaps for individual characters in a)Tj -0 -1.2222 TD -0.2233 Tw -[(display font. Note: Character code 256 can be used to access the "dummy" character, used for)]TJ -T* -0 Tw -(characters in the font with no bitmap defined.)Tj -/TT10 1 Tf -10 0 0 10 150 176.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 176.43 Tm -(GETCHARBITMAP)Tj -/F3 1 Tf -10 0 0 10 226.2124 176.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.0824 176.43 Tm -(CHARCODE FONT)Tj -/TT10 1 Tf -10 0 0 10 299.2938 176.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 305.2948 176.43 Tm -[( )-20315([Function])]TJ --14.5883 -1.8833 TD -0.1078 Tw -(Returns a bitmap containing a copy of the image of the character )Tj -/TT15 1 Tf -30.078 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1078 Tw -[( in the font)]TJ -/TT15 1 Tf --34.8788 -1.2889 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 125 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 125 Tm -(PUTCHARBITMAP)Tj -/F3 1 Tf -10 0 0 10 226.2124 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.0824 125 Tm -(CHARCODE FONT NEWCHARBITMAP NEWCHARDESCENT)Tj -/TT10 1 Tf -10 0 0 10 455.9193 125 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 125 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1733 Tw -(Changes the bitmap image of the character )Tj -/TT15 1 Tf -20.3769 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1733 Tw -[( in the font )]TJ -/TT15 1 Tf -5.7407 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1733 Tw -[( to the bitmap)]TJ -/TT15 1 Tf --33.3188 -1.2944 TD -0 Tw -(NEWCHARBITMAP)Tj -/TT8 1 Tf -7.8013 0 TD -0.3033 Tw -[(. If )]TJ -/TT15 1 Tf -2.5799 0 TD -0 Tw -(NEWCHARDESCENT)Tj -/TT8 1 Tf -8.4014 0 TD -0.3033 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 377.8233 96.4 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 395.8263 96.4 Tm -0.3033 Tw -(, the descent of the character is)Tj --24.6474 -1.3278 TD -0 Tw -(changed to the value of )Tj -/TT15 1 Tf -10.5801 0 TD -(NEWCHARDESCENT)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -ET -endstream -endobj -121 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -123 0 obj -<< -/Length 5473 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-29)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(EDITCHAR)Tj -/F3 1 Tf -10 0 0 10 151.208 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 154.078 568.26 Tm -(CHARCODE FONT)Tj -/TT10 1 Tf -10 0 0 10 224.2894 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 230.2904 568.26 Tm -[( )-23315.5([Function])]TJ --11.5878 -1.8889 TD -0.0467 Tw -(Calls the bitmap editor \()Tj -/TT10 1 Tf -10 0 0 10 224.3157 551.26 Tm -0 Tw -(EDITBM)Tj -/TT8 1 Tf -9 0 0 9 260.3216 551.26 Tm -0.0467 Tw -(\) on the bitmap image of the character )Tj -/TT15 1 Tf -17.4158 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0467 Tw -[( in the)]TJ --37.1412 -1.3333 TD -0 Tw -(font )Tj -/TT15 1 Tf -2.1471 0 TD -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.11 Tw -(. )Tj -/TT15 1 Tf -0.97 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.11 Tw -[( can be a character code \(as returned by )]TJ -/TT10 1 Tf -10 0 0 10 386.9752 539.26 Tm -0 Tw -(CHCON1)Tj -/TT8 1 Tf -9 0 0 9 422.9811 539.26 Tm -0.11 Tw -(\) or an atom or)Tj --32.9979 -1.3278 TD -0 Tw -(string, in which case the first character of )Tj -/TT15 1 Tf -18.377 0 TD -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -( is used.)Tj -/TT10 1 Tf -10 0 0 10 102 504.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 504.37 Tm -(WRITESTRIKEFONTFILE)Tj -/TT6 1 Tf -10 0 0 10 210.6 504.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 213.3783 504.37 Tm -(FONT CHARSET FILENAME)Tj -/TT10 1 Tf -10 0 0 10 326.7968 504.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 444.63 504.37 Tm -([Function])Tj --35.4033 -1.8833 TD -0.0422 Tw -[(Takes a display font font descriptor and a character set number, and writes that character)]TJ -0 -1.2222 TD -0.0511 Tw -[(set into a file suitable for reading in again. Note that the font descriptors current state is)]TJ -0 -1.2278 TD -0.2767 Tw -(used \(which was perhaps modified by )Tj -/TT10 1 Tf -10 0 0 10 295.5264 465.37 Tm -0 Tw -(INSPECT)Tj -/TT8 1 Tf -9 0 0 9 337.5332 465.37 Tm -0.2767 Tw -(ing the datum\), so this provides a)Tj --23.5037 -1.3278 TD -0 Tw -(mechanism for creating/modifying new fonts.)Tj -0 -2 TD -(For example:)Tj -/TT10 1 Tf -10 0 0 10 126 417.37 Tm -(\(WRITESTRIKEFONTFILE \(FONTCREATE GACHA 10\) 0 {DSK}Magic10-)Tj -0 -1.2 TD -(MRR-C0.DISPLAYFONT\))Tj -/TT8 1 Tf -9 0 0 9 126 386.37 Tm -0.8567 Tw -(If your )Tj -/TT10 1 Tf -10 0 0 10 170.8502 386.37 Tm -0 Tw -(DISPLAYFONTDIRECTORIES)Tj -/TT8 1 Tf -9 0 0 9 302.85 386.37 Tm -0.8567 Tw -[( includes )]TJ -/TT10 1 Tf -10 0 0 10 356.2914 386.37 Tm -0 Tw -({DSK})Tj -/TT8 1 Tf -9 0 0 9 386.2963 386.37 Tm -0.8567 Tw -(, then a subsequent)Tj -/TT10 1 Tf -10 0 0 10 126 374.37 Tm -0.231 Tw -(\(FONTCREATE MAGIC 10)Tj -/TT8 1 Tf -9 0 0 9 256.6405 374.37 Tm -0.0967 Tw -[(\) will create a new font descriptor whose appearance is)]TJ --14.5156 -1.3278 TD -0 Tw -(the same as the old Gacha font descriptor.)Tj -0 -2 TD -0.1644 Tw -[(However, the new font is identical to the old one in appearance only. The individual)]TJ -0 -1.2222 TD -0.0222 Tw -(datatype fields and bitmap may not be the same as those in the old font descriptor, due to)Tj -T* -0 Tw -(peculiarities of different font file formats.)Tj -/TT4 1 Tf -10 0 0 10 54 262.08 Tm -(Font Files and Font Directories)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 259.37 m -486.01 259.37 l -S -BT -/TT8 1 Tf -9 0 0 9 78 237.37 Tm -(If )Tj -/TT10 1 Tf -10 0 0 10 86.2993 237.37 Tm -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 146.309 237.37 Tm -0.0022 Tw -( is called to create a font that has not been loaded into Interlisp, )Tj -/TT10 1 Tf -10 0 0 10 400.0217 237.37 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 460.0314 237.37 Tm -0.0003 Tc -0.0019 Tw -( has to)Tj --42.4479 -1.3278 TD -0 Tc -0.1833 Tw -[(read the font information from a font file that contains the information for that font. For printer)]TJ -0 -1.2222 TD -0.1144 Tw -[(devices, the font files have to contain width information for each character in the font. For display)]TJ -T* -0.1089 Tw -[(fonts, the font files have to contain, in addition, bitmap images for each character in the fonts. The)]TJ -T* -0.1322 Tw -[(font file names, formats, and searching algorithms are different for each device. There are a set of)]TJ -T* -0.0989 Tw -[(variables for each device, that determine the directories that are searched for font files. All of these)]TJ -T* -0.0433 Tw -[(variables must be set before Interlisp can auto-load font files. These variables should be initialized in)]TJ -0 -1.2278 TD -0 Tw -(the site-specific )Tj -/TT10 1 Tf -10 0 0 10 141.4219 159.37 Tm -(INIT)Tj -/TT8 1 Tf -9 0 0 9 165.4258 159.37 Tm -( file.)Tj -/TT13 1 Tf --7.0473 -2.4389 TD -(DISPLAYFONTDIRECTORIES)Tj -/TT8 1 Tf -13.2022 0 TD -[( )-24565.6([Variable])]TJ --10.5355 -1.8444 TD -(Value is a list of directories searched to find font bitmap files for display fonts.)Tj -/TT13 1 Tf --2.6667 -2.3333 TD -(DISPLAYFONTEXTENSIONS)Tj -/TT8 1 Tf -12.6021 0 TD -[( )-25165.7([Variable])]TJ --9.9354 -1.85 TD -0.0356 Tw -(Value is a list of file extensions used when searching )Tj -/TT10 1 Tf -10 0 0 10 339.8958 83.17 Tm -0 Tw -(DISPLAYFONTDIRECTORIES)Tj -/TT8 1 Tf -9 0 0 9 471.9173 83.17 Tm -0.0356 Tw -[( for)]TJ --38.4353 -1.3333 TD -0.0511 Tw -[(display fonts. Initially set to \()]TJ -/TT10 1 Tf -10 0 0 10 246.9685 71.17 Tm -0 Tw -(DISPLAYFONT)Tj -/TT8 1 Tf -9 0 0 9 312.9792 71.17 Tm -0.0511 Tw -(\), but when using older font files it may be)Tj --20.7755 -1.3333 TD -0 Tw -(necessary to add )Tj -/TT10 1 Tf -10 0 0 10 194.6382 59.17 Tm -(STRIKE)Tj -/TT8 1 Tf -9 0 0 9 230.644 59.17 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 250.3799 59.17 Tm -(AC)Tj -/TT8 1 Tf -9 0 0 9 262.3818 59.17 Tm -( to this list.)Tj -ET -endstream -endobj -124 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -126 0 obj -<< -/Length 5205 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-30)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT13 1 Tf -9 0 0 9 150 569.54 Tm -(INTERPRESSFONTDIRECTORIES)Tj -/TT8 1 Tf -15.0024 0 TD -[( )-22765.3([Variable])]TJ --12.3358 -1.8444 TD -(Value is a list of directories searched to find font widths files for Interpress fonts.)Tj -/TT13 1 Tf --2.6667 -2.3333 TD -(PRESSFONTWIDTHSFILES)Tj -/TT8 1 Tf -12.002 0 TD -[( )-25765.8([Variable])]TJ --9.3353 -1.8444 TD -0.1255 Tw -(Value is a list of files \(not directories\) searched to find font widths files for Press fonts.)Tj -0 -1.2278 TD -0 Tw -(Press font widths are packed into large files \(usually named )Tj -/TT10 1 Tf -10 0 0 10 414.1699 504.29 Tm -(FONTS)Tj -/TT8 1 Tf -9 0 0 9 444.1748 504.29 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 446.4248 504.29 Tm -(WIDTHS)Tj -/TT8 1 Tf -9 0 0 9 482.4307 504.29 Tm -(\).)Tj -/TT4 1 Tf -10 0 0 10 102 461 Tm -(Font Profiles)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 458.29 m -534.01 458.29 l -S -BT -/TT10 1 Tf -10 0 0 10 126 436.29 Tm -(PRETTYPRINT)Tj -/TT8 1 Tf -9 0 0 9 192.0107 436.29 Tm -0.1144 Tw -[( contains a facility for printing different elements \(user functions, system functions,)]TJ --7.3345 -1.3278 TD -0.0122 Tw -(clisp words, comments, etc.\) in different fonts to emphasize \(or deemphasize\) their importance, and in)Tj -0 -1.2222 TD -0.1889 Tw -[(general to provide for a more pleasing appearance. Of course, in order to be useful, this facility)]TJ -T* -0.0967 Tw -(requires that the user is printing on a device \(such as a bitmapped display or a laser printer\) which)Tj -T* -0 Tw -(supports multiple fonts.)Tj -/TT10 1 Tf -10 0 0 10 126 365.29 Tm -(PRETTYPRINT)Tj -/TT8 1 Tf -9 0 0 9 192.0107 365.29 Tm -0.15 Tw -[( signals font changes by inserting into the file a user-defined escape sequence \(the)]TJ --7.3345 -1.3333 TD -0.33 Tw -(value of the variable )Tj -/TT10 1 Tf -10 0 0 10 221.3849 353.29 Tm -0 Tw -(FONTESCAPECHAR)Tj -/TT8 1 Tf -9 0 0 9 305.3985 353.29 Tm -0.33 Tw -(\) followed by the character code which specifies, by)Tj --19.9332 -1.3333 TD -0.1856 Tw -(number, which font to use, i.e. )Tj -/TT11 1 Tf -14.7764 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.1856 Tw -(A for font number 1, etc. Thus, if )Tj -/TT10 1 Tf -10 0 0 10 409.8834 341.29 Tm -0 Tw -(FONTESCAPECHAR)Tj -/TT8 1 Tf -9 0 0 9 493.8971 341.29 Tm -0.1856 Tw -[( were the)]TJ --40.8775 -1.3278 TD -0 Tw -(character )Tj -/TT11 1 Tf -4.6394 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(F, )Tj -/TT11 1 Tf -1.3806 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(F)Tj -/TT11 1 Tf -0.5562 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.3244 Tw -(C would be output to change to font 3, )Tj -/TT11 1 Tf -20.2257 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(F)Tj -/TT11 1 Tf -0.5562 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.3244 Tw -[(A to change to font 1, etc. If)]TJ -/TT10 1 Tf -10 0 0 10 126 318.29 Tm -0 Tw -(FONTESCAPECHAR)Tj -/TT8 1 Tf -9 0 0 9 210.0136 318.29 Tm -0.0289 Tw -[( consists of characters which are separator charactors in )]TJ -/TT10 1 Tf -10 0 0 10 435.3717 318.29 Tm -0 Tw -(FILERDTBL)Tj -/TT8 1 Tf -9 0 0 9 489.3805 318.29 Tm -0.0289 Tw -(, then a file)Tj --40.3756 -1.3278 TD -0 Tw -(with font changes in it can also be loaded back in.)Tj -0 -2.8945 TD -(Currently, )Tj -/TT10 1 Tf -10 0 0 10 170.7378 280.29 Tm -(PRETTYPRINT)Tj -/TT8 1 Tf -9 0 0 9 236.7486 280.29 Tm -0.1344 Tw -[( uses the following font classes. The user can specify separate fonts for)]TJ --12.3054 -1.3278 TD -0 Tw -(each of these classes, or use the same font for several different classes.)Tj -/TT10 1 Tf -10 0 0 10 150 250.29 Tm -(LAMBDAFONT)Tj -/TT8 1 Tf -9 0 0 9 222 250.29 Tm -0.0544 Tw -(The font for printing the name of the function being prettyprinted, before the)Tj -T* -0 Tw -(actual definition \(usually a large font\).)Tj -/TT10 1 Tf -10 0 0 10 156 220.29 Tm -(CLISPFONT)Tj -/TT8 1 Tf -9 0 0 9 222 220.29 Tm -(If )Tj -/TT10 1 Tf -10 0 0 10 232.0193 220.29 Tm -(CLISPFLG)Tj -/TT8 1 Tf -9 0 0 9 280.0271 220.29 Tm -0.1933 Tw -[( is on, the font for printing any clisp words, i.e. atoms with)]TJ --6.4475 -1.3333 TD -0 Tw -(property )Tj -/TT10 1 Tf -10 0 0 10 259.3447 208.29 Tm -(CLISPWORD)Tj -/TT8 1 Tf -9 0 0 9 313.3535 208.29 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 144 189.29 Tm -(COMMENTFONT)Tj -/TT8 1 Tf -9 0 0 9 222 189.29 Tm -(The font used for comments.)Tj -/TT10 1 Tf -10 0 0 10 162 170.29 Tm -(USERFONT)Tj -/TT8 1 Tf -9 0 0 9 222 170.29 Tm -0.1322 Tw -(The font for the name of any function in the file, or any member of the list)Tj -/TT10 1 Tf -10 0 0 10 222 158.29 Tm -0 Tw -(FONTFNS)Tj -/TT8 1 Tf -9 0 0 9 264.0068 158.29 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 139.29 Tm -(SYSTEMFONT)Tj -/TT8 1 Tf -9 0 0 9 222 139.29 Tm -(The font for any other \(defined\) function.)Tj -/TT10 1 Tf -10 0 0 10 150 120.29 Tm -(CHANGEFONT)Tj -/TT8 1 Tf -9 0 0 9 222 120.29 Tm -(The font for an expression marked by the editor as having been changed.)Tj -/TT10 1 Tf -10 0 0 10 132 101.29 Tm -(PRETTYCOMFONT)Tj -/TT8 1 Tf -9 0 0 9 222 101.29 Tm -(The font for the operand of a file package command.)Tj -/TT10 1 Tf -10 0 0 10 144 82.29 Tm -(DEFAULTFONT)Tj -/TT8 1 Tf -9 0 0 9 222 82.29 Tm -(The font for everything else.)Tj --10.6667 -2.9944 TD -0.0678 Tw -(Note that not all combinations of fonts will be aesthetically pleasing \(or even readable!\) and the user)Tj -0 -1.2222 TD -0 Tw -(may have to experiment to find a compatible set.)Tj -ET -endstream -endobj -127 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT11 11 0 R -/TT13 12 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -129 0 obj -<< -/Length 6157 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-31)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 78 569.49 Tm -0.0511 Tw -(Although in some implementations )Tj -/TT10 1 Tf -10 0 0 10 223.4137 569.49 Tm -0 Tw -(LAMBDAFONT)Tj -/TT8 1 Tf -9 0 0 9 283.4235 569.49 Tm -0.0511 Tw -[( et al. may be defined as variables, one should not)]TJ --22.8248 -1.3278 TD -0.13 Tw -(set them directly, but should indicate what font is to be used for each class by calling the function)Tj -/TT10 1 Tf -10 0 0 10 78 546.49 Tm -0 Tw -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 144.0107 546.49 Tm -(:)Tj -/TT10 1 Tf -10 0 0 10 102 523.2599 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 523.2599 Tm -(FONTPROFILE)Tj -/F3 1 Tf -10 0 0 10 167.4106 523.2599 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.2806 523.2599 Tm -(PROFILE)Tj -/TT10 1 Tf -10 0 0 10 208.0868 523.2599 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 214.0878 523.2599 Tm -[( )-25115.8([Function])]TJ --9.7875 -1.8833 TD -0.1022 Tw -(Sets up the font classes as determined by )Tj -/TT15 1 Tf -19.1044 0 TD -0 Tw -(PROFILE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1022 Tw -(, a list of elements which defines the)Tj --23.3051 -1.2889 TD -0.0167 Tw -[(correspondence between font classes and specific fonts. Each element of )]TJ -/TT15 1 Tf -32.4397 0 TD -0 Tw -(PROFILE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0167 Tw -[( is a list)]TJ --36.6404 -1.2889 TD -0 Tw -(of the form:)Tj -/TT10 1 Tf -10 0 0 10 174 465.06 Tm -2.8 Tw -(\(FONTCLASS FONT# DISPLAYFONT PRESSFONT)Tj -0 -1.2 TD -0 Tw -(INTERPRESSFONT\))Tj --4.8 -1.9 TD -(FONTCLASS)Tj -/TT8 1 Tf -9 0 0 9 180.0088 434.06 Tm -0.0002 Tc -0.0042 Tw -( is the font class name and )Tj -/TT10 1 Tf -10 0 0 10 287.0143 434.06 Tm -0 Tc -0 Tw -(FONT#)Tj -/TT8 1 Tf -9 0 0 9 317.0192 434.06 Tm -0.0002 Tc -0.0042 Tw -( is the font number for that class. For each)Tj --21.2244 -1.3333 TD -0 Tc -0.0567 Tw -(font class name, the escape sequence will consist of )Tj -/TT10 1 Tf -10 0 0 10 335.7882 422.06 Tm -0 Tw -(FONTESCAPECHAR)Tj -/TT8 1 Tf -9 0 0 9 419.8019 422.06 Tm -0.0567 Tw -[( followed by the)]TJ --32.6447 -1.3278 TD -0 Tw -(character code for the font number, e.g. )Tj -/TT11 1 Tf -17.6231 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(A for font number 1, etc.)Tj --18.2261 -2.0056 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 135.4293 392.06 Tm -(FONT#)Tj -/TT8 1 Tf -9 0 0 9 165.4342 392.06 Tm -0.1278 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 178.6678 392.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 196.6707 392.06 Tm -0.1278 Tw -[( for any font class, the font class named )]TJ -/TT10 1 Tf -10 0 0 10 365.36 392.06 Tm -0 Tw -(DEFAULTFONT)Tj -/TT8 1 Tf -9 0 0 9 431.3708 392.06 Tm -0.1278 Tw -[( \(which must)]TJ --33.9301 -1.3333 TD -0.0411 Tw -[(always be specified\) is used. Alternatively, if )]TJ -/TT10 1 Tf -10 0 0 10 311.1001 380.06 Tm -0 Tw -(FONT#)Tj -/TT8 1 Tf -9 0 0 9 341.105 380.06 Tm -0.0411 Tw -[( is the name of a previously defined)]TJ --23.9006 -1.3278 TD -0 Tw -(font class, this font class will be equivalenced to the previously defined one.)Tj -/TT10 1 Tf -10 0 0 10 126 350.06 Tm -(DISPLAYFONT)Tj -/TT8 1 Tf -9 0 0 9 192.0107 350.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 198.0907 350.06 Tm -(PRESSFONT)Tj -/TT8 1 Tf -9 0 0 9 252.0995 350.06 Tm -0.1756 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 277.2454 350.06 Tm -0 Tw -(INTERPRESSFONT)Tj -/TT8 1 Tf -9 0 0 9 361.259 350.06 Tm -0.1756 Tw -[( are font specifications \(of the)]TJ --26.1399 -1.3333 TD -0.0433 Tw -(form accepted by )Tj -/TT10 1 Tf -10 0 0 10 198.2691 338.06 Tm -0 Tw -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 258.2789 338.06 Tm -0.0433 Tw -(\) for the fonts to use when printing to the display and to)Tj --14.6977 -1.3278 TD -0 Tw -(Press and Interpress printers respectively.)Tj -/TT13 1 Tf --2.6667 -2.3333 TD -(FONTPROFILE)Tj -/TT8 1 Tf -6.6011 0 TD -[( )-31166.7([Variable])]TJ --3.9344 -1.8444 TD -0.1789 Tw -(This is the variable used to store the current font profile, in the form accepted by the)Tj -0 -1.2278 TD -0 Tw -(function )Tj -/TT10 1 Tf -10 0 0 10 162.5833 277.46 Tm -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 228.594 277.46 Tm -0.1078 Tw -[(. Note that simply editing this value will not change the fonts)]TJ --11.3993 -1.3333 TD -0.6033 Tw -(used for the various font classes; it is necessary to execute \()Tj -/TT10 1 Tf -10 0 0 10 419.9102 265.46 Tm -0 Tw -(FONTPROFILE)Tj --29.391 -1.2 TD -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 192.0107 253.46 Tm -(\) to install the value of this variable. )Tj --12.6679 -2.9944 TD -0.5467 Tw -(The process of printing with multiple fonts is affected by a large number of variables:)Tj -/TT10 1 Tf -10 0 0 10 78 215.46 Tm -0 Tw -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 144.0107 215.46 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 150.3607 215.46 Tm -(FILELINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 234.3744 215.46 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 240.7244 215.46 Tm -(PRETTYLCOM)Tj -/TT8 1 Tf -9 0 0 9 300.7342 215.46 Tm -0.2056 Tw -[(, etc. To facilitate switching back and forth)]TJ --24.7482 -1.3278 TD -0.2289 Tw -(between various sets of values for the font variables, Interlisp supports the idea of named "font)Tj -0 -1.2222 TD -0 Tw -(configurations" encapsulating the values of all relevant variables.)Tj -0 -2.8889 TD -0.1 Tw -(To create a new font configuration, set all "relevant" variables to the values you want, and then call)Tj -/TT10 1 Tf -10 0 0 10 78 155.46 Tm -0 Tw -(FONTNAME)Tj -/TT8 1 Tf -9 0 0 9 126.0078 155.46 Tm -0.11 Tw -[( to save them \(on the variable )]TJ -/TT10 1 Tf -10 0 0 10 252.4778 155.46 Tm -0 Tw -(FONTDEFS)Tj -/TT8 1 Tf -9 0 0 9 300.4857 155.46 Tm -0.11 Tw -[(\) under a given name. To install a particular)]TJ --24.7206 -1.3333 TD -0.2856 Tw -(font configuration, call )Tj -/TT10 1 Tf -10 0 0 10 178.4829 143.46 Tm -0 Tw -(FONTSET)Tj -/TT8 1 Tf -9 0 0 9 220.4898 143.46 Tm -0.2856 Tw -[( giving it your name. To change the values in a saved font)]TJ --15.8322 -1.3333 TD -0 Tw -(configuration, edit the value of the variable )Tj -/TT10 1 Tf -10 0 0 10 252.3091 131.46 Tm -(FONTDEFS)Tj -/TT8 1 Tf -9 0 0 9 300.3169 131.46 Tm -(.)Tj --24.7019 -3 TD -0.0433 Tw -[(Note: The list of variables saved by )]TJ -/TT10 1 Tf -10 0 0 10 225.1464 104.46 Tm -0 Tw -(FONTNAME)Tj -/TT8 1 Tf -9 0 0 9 273.1542 104.46 Tm -0.0433 Tw -[( is stored in the variable )]TJ -/TT10 1 Tf -10 0 0 10 372.9649 104.46 Tm -0 Tw -(FONTDEFSVARS)Tj -/TT8 1 Tf -9 0 0 9 444.9766 104.46 Tm -0.0433 Tw -[(. This can)]TJ --40.7752 -1.3278 TD -0 Tw -(be changed by the user.)Tj -ET -endstream -endobj -130 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT11 11 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -133 0 obj -<< -/Length 6179 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-32)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 568.26 Tm -(FONTSET)Tj -/F3 1 Tf -10 0 0 10 193.8071 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.6771 568.26 Tm -(NAME)Tj -/TT10 1 Tf -10 0 0 10 218.2806 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 224.2816 568.26 Tm -[( )-29316.5([Function])]TJ --5.5868 -1.8889 TD -0.0856 Tw -(Installs font configuration for )Tj -/TT15 1 Tf -13.5732 0 TD -0 Tw -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -0.0856 Tw -[(. Also evaluates \()]TJ -/TT10 1 Tf -10 0 0 10 390.9393 551.26 Tm -0.205 Tw -(FONTPROFILE FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 531.0117 551.26 Tm -0 Tw -(\))Tj --39.668 -1.3333 TD -0.1333 Tw -(to install the font classes as specified in the new value of the variable )Tj -/TT10 1 Tf -10 0 0 10 465.7219 539.26 Tm -0 Tw -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 531.7326 539.26 Tm -(.)Tj --39.7481 -1.3278 TD -(Generates an error if )Tj -/TT15 1 Tf -9.3433 0 TD -(NAME)Tj -/TT8 1 Tf -2.4004 0 TD -( not previously defined.)Tj -/TT13 1 Tf --14.4103 -2.4 TD -(FONTDEFSVARS)Tj -/TT8 1 Tf -7.2012 0 TD -[( )-30566.6([Variable])]TJ --4.5345 -1.85 TD -0.2822 Tw -(The list of variables to be packaged by a )Tj -/TT10 1 Tf -10 0 0 10 357.902 489.06 Tm -0 Tw -(FONTNAME)Tj -/TT8 1 Tf -9 0 0 9 405.9098 489.06 Tm -0.2822 Tw -[(. Initially )]TJ -/TT10 1 Tf -10 0 0 10 453.7178 489.06 Tm -0 Tw -(FONTCHANGEFLG)Tj -/TT8 1 Tf -9 0 0 9 531.7305 489.06 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 477.06 Tm -(FILELINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 258.0136 477.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 279.2636 477.06 Tm -(COMMENTLINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 381.2802 477.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 402.5302 477.06 Tm -(FIRSTCOL)Tj -/TT8 1 Tf -9 0 0 9 450.5381 477.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 471.7881 477.06 Tm -(PRETTYLCOM)Tj -/TT8 1 Tf -9 0 0 9 531.7979 477.06 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 465.06 Tm -(LISTFILESTR)Tj -/TT8 1 Tf -9 0 0 9 240.0107 465.06 Tm -(, and )Tj -/TT10 1 Tf -10 0 0 10 261.9966 465.06 Tm -(FONTPROFILE)Tj -/TT8 1 Tf -9 0 0 9 328.0073 465.06 Tm -(.)Tj -/TT13 1 Tf --19.7786 -2.4389 TD -(FONTDEFS)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -33.467 0 TD -([Variable])Tj --35.6011 -1.85 TD -0.04 Tw -(An association list of font configurations. )Tj -/TT10 1 Tf -10 0 0 10 344.3735 426.46 Tm -0 Tw -(FONTDEFS)Tj -/TT8 1 Tf -9 0 0 9 392.3813 426.46 Tm -0.04 Tw -[( is a list of elements of form \()]TJ -/TT10 1 Tf -10 0 0 10 509.8971 426.46 Tm -0 Tw -(NAME)Tj --33.5897 -1.2 TD -0.894 Tw -(. PARAMETER-PAIRS)Tj -/TT8 1 Tf -9 0 0 9 284.9566 414.46 Tm -0.3722 Tw -[(\). To save a configuration on a file after performing a)]TJ -/TT10 1 Tf -10 0 0 10 174 402.46 Tm -0 Tw -(FONTNAME)Tj -/TT8 1 Tf -9 0 0 9 222.0078 402.46 Tm -0.0544 Tw -[( to define it, the user could either save the entire value of )]TJ -/TT10 1 Tf -10 0 0 10 456.287 402.46 Tm -0 Tw -(FONTDEFS)Tj -/TT8 1 Tf -9 0 0 9 504.2948 402.46 Tm -0.0544 Tw -(, or use)Tj --36.6994 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 390.46 Tm -(ALISTS)Tj -/TT8 1 Tf -9 0 0 9 224.7407 390.46 Tm -( file package command to dump out just the one configuration.)Tj -/TT13 1 Tf --8.3045 -2.4389 TD -(FONTESCAPECHAR)Tj -/TT8 1 Tf -8.4014 0 TD -[( )-29366.4([Variable])]TJ --5.7347 -1.8444 TD -(The character or string used to signal the start of a font escape sequence.)Tj -/TT13 1 Tf --2.6667 -2.3333 TD -(FONTCHANGEFLG)Tj -/TT8 1 Tf -7.8013 0 TD -[( )-29966.5([Variable])]TJ --5.1346 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 182.5393 314.26 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 188.5403 314.26 Tm -0.0289 Tw -[(, enables fonts when prettyprinting. If )]TJ -/TT10 1 Tf -10 0 0 10 345.3773 314.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 363.3803 314.26 Tm -0.0289 Tw -(, disables fonts. )Tj -/TT10 1 Tf -10 0 0 10 427.4635 314.26 Tm -0 Tw -(ALL)Tj -/TT8 1 Tf -9 0 0 9 445.4664 314.26 Tm -0.0289 Tw -[( indicates that all calls)]TJ --30.1629 -1.3333 TD -0 Tw -(to )Tj -/TT10 1 Tf -10 0 0 10 184.0986 302.26 Tm -(CHANGEFONT)Tj -/TT8 1 Tf -9 0 0 9 244.1084 302.26 Tm -( are executed.)Tj -/TT13 1 Tf --10.4565 -2.4389 TD -(LISTFILESTR)Tj -/TT8 1 Tf -6.6011 0 TD -[( )-31166.7([Variable])]TJ --3.9344 -1.85 TD -0.0933 Tw -(In Interlisp-10, passed to the operating system by )Tj -/TT10 1 Tf -10 0 0 10 378.7507 263.66 Tm -0 Tw -(LISTFILES)Tj -/TT8 1 Tf -9 0 0 9 432.7595 263.66 Tm -0.0933 Tw -[(. Can be used to specify)]TJ --28.7511 -1.3333 TD -0.2589 Tw -(subcommands to the )Tj -/TT10 1 Tf -10 0 0 10 266.19 251.66 Tm -0 Tw -(LIST)Tj -/TT8 1 Tf -9 0 0 9 290.1939 251.66 Tm -0.2589 Tw -[( command, e.g. to establish correspondance between font)]TJ --12.9104 -1.3278 TD -0 Tw -(number and font name.)Tj -/TT13 1 Tf --2.6667 -2.3333 TD -(COMMENTLINELENGTH)Tj -/TT8 1 Tf -10.2017 0 TD -[( )-27566.1([Variable])]TJ --7.535 -1.85 TD -0.3956 Tw -(Since comments are usually printed in a smaller font, )Tj -/TT10 1 Tf -10 0 0 10 419.6757 202.06 Tm -0 Tw -(COMMENTLINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 521.6923 202.06 Tm -0.3956 Tw -[( is)]TJ --38.6325 -1.3278 TD -0.3089 Tw -[(provided to offset the fact that Interlisp does not know about font widths. When)]TJ -/TT10 1 Tf -10 0 0 10 174 179.06 Tm -0.035 Tw -(FONTCHANGEFLG = T)Tj -/TT8 1 Tf -9 0 0 9 276.7166 179.06 Tm -0 Tw -(, )Tj -/TT10 1 Tf -10 0 0 10 281.3466 179.06 Tm -(CAR)Tj -/TT8 1 Tf -9 0 0 9 299.3495 179.06 Tm -0.0144 Tw -[( of )]TJ -/TT10 1 Tf -10 0 0 10 312.0197 179.06 Tm -0 Tw -(COMMENTLINELENGTH)Tj -/TT8 1 Tf -9 0 0 9 414.0363 179.06 Tm -0.0144 Tw -[( is the linelength used to print)]TJ --26.6707 -1.3333 TD -0.1611 Tw -(short comments, i.e. those printed in the right margin, and )Tj -/TT10 1 Tf -10 0 0 10 423.0581 167.06 Tm -0 Tw -(CDR)Tj -/TT8 1 Tf -9 0 0 9 441.061 167.06 Tm -0.1611 Tw -[( is the linelength used)]TJ --29.6735 -1.3278 TD -0 Tw -(when printing full width comments.)Tj --2.6667 -2.3333 TD -(\()Tj -/TT13 1 Tf -0.333 0 TD -(CHANGEFONT)Tj -/TT8 1 Tf -6.001 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT15 1 Tf -0.25 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -[(\) )-24402([Function])]TJ --10.1683 -1.8444 TD -0.5167 Tw -(Executes the operations on )Tj -/TT15 1 Tf -14.1536 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.5167 Tw -[( to change to the font )]TJ -/TT15 1 Tf -12.6615 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.5167 Tw -[(. For use in)]TJ -/TT10 1 Tf -10 0 0 10 174 105.86 Tm -0 Tw -(PRETTYPRINTMACROS)Tj -/TT8 1 Tf -9 0 0 9 276.0166 105.86 Tm -(.)Tj -ET -endstream -endobj -134 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -136 0 obj -<< -/Length 5991 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-33)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT4 1 Tf --35.4 -4.38 TD -(Image Objects)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -486.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 543.54 Tm -0.0167 Tw -(An Image Object is an object that includes information about an image, such as how to display it, how)Tj -0 -1.2222 TD -0.2789 Tw -(to print it, and how to manipulate it when it is included in a collection of images \(such as a)Tj -T* -0.1622 Tw -[(document\). More generally, it enables you to include one kind of image, with its own semantics,)]TJ -T* -0.06 Tw -[(layout rules, and editing paradigms, inside another kind of image. Image Objects provide a general-)]TJ -T* -0.3544 Tw -(purpose interface between image users who want to manipulate arbitrary images, and image)Tj -T* -0 Tw -(producers, who create images for use, say, in documents.)Tj -0 -2.8944 TD -0.0533 Tw -(Images are encapsulated inside a uniform barrierthe )Tj -/TT10 1 Tf -10 0 0 10 300.4977 462.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 348.5055 462.49 Tm -0.0533 Tw -[( data type. From the outside, you)]TJ --30.0562 -1.3278 TD -0.1011 Tw -[(communicate to the image by calling a standard set of functions. For example, calling one function)]TJ -0 -1.2222 TD -0.0467 Tw -(tells you how big the image is; calling another causes the image object to be displayed where you tell)Tj -T* -0.0733 Tw -[(it, and so on. Anyone who wants to create images for general use can implement his own brand of)]TJ -/TT10 1 Tf -10 0 0 10 78 417.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 126.0078 417.49 Tm -0.3822 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 139.6378 417.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 187.6456 417.49 Tm -0.3822 Tw -(s have been implemented \(in library packages\) for bitmaps, menus,)Tj --12.1828 -1.3278 TD -0 Tw -(annotations, graphs, and sketches. )Tj -0 -2.8889 TD -0.0878 Tw -(Image Objects were originally implemented to support inserting images into TEdit text files, but the)Tj -0 -1.2222 TD -0.1133 Tw -[(facility is available for use by any tools that manipulate images. The Image Object interface allows)]TJ -T* -0.0644 Tw -[(objects to exist in TEdit documents and be edited with their own editor. It also provides a facility in)]TJ -T* -0.1044 Tw -[(which objects can be shift-selected \(or "copy-selected"\) between TEdit and non-TEdit windows. For)]TJ -T* -0.04 Tw -(example, the Image Objects interface allows you to copy-select graphs from a Grapher window into a)Tj -T* -0.0656 Tw -[(TEdit window. The source window \(where the object comes from\) does not have to know what sort)]TJ -T* -0.0222 Tw -(of window the destination window \(where the object is inserted\) is, and the destination does not have)Tj -T* -0 Tw -(to know where the insertion comes from. )Tj -0 -2.8944 TD -0.0144 Tw -(A new data type, )Tj -/TT10 1 Tf -10 0 0 10 148.9204 276.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 196.9282 276.49 Tm -0.0144 Tw -(, contains the data and the procedures necessary to manipulate an object)Tj --13.2142 -1.3333 TD -0.0067 Tw -(that is to be manipulated in this way. )Tj -/TT10 1 Tf -10 0 0 10 230.7006 264.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 278.7084 264.49 Tm -0.0067 Tw -(s are created with the function )Tj -/TT10 1 Tf -10 0 0 10 402.0011 264.49 Tm -0 Tw -(IMAGEOBJCREATE)Tj -/TT8 1 Tf -9 0 0 9 78 252.54 Tm -(\(below\). )Tj -0 -2.8944 TD -0.0433 Tw -(Another new data type, )Tj -/TT10 1 Tf -10 0 0 10 176.1518 226.49 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 224.1596 226.49 Tm -0.0433 Tw -(, is a vector of the procedures necessary to define the behavior of)Tj --16.24 -1.3333 TD -0.09 Tw -(a type of )Tj -/TT10 1 Tf -10 0 0 10 117.2518 214.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 165.2596 214.49 Tm -0.09 Tw -[(. Grouping the operations in a separate data type allows multiple instances of)]TJ --9.6955 -1.3278 TD -0.2233 Tw -[(the same type of image object to share procedure vectors. The data and procedure fields of an)]TJ -/TT10 1 Tf -10 0 0 10 78 191.49 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 126.0078 191.49 Tm -0.0001 Tc -0.0032 Tw -( have a uniform interface through the function )Tj -/TT10 1 Tf -10 0 0 10 313.2 191.49 Tm -0 Tc -0 Tw -(IMAGEOBJPROP)Tj -/TT8 1 Tf -9 0 0 9 385.2117 191.49 Tm -0.0033 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 392.0217 191.49 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 440.0295 191.49 Tm -0.0003 Tc -0.003 Tw -( are created)Tj --40.2255 -1.3333 TD -0 Tc -0 Tw -(with the function )Tj -/TT10 1 Tf -10 0 0 10 148.897 179.49 Tm -(IMAGEFNSCREATE)Tj -/TT8 1 Tf -9 0 0 9 232.9106 179.49 Tm -(:)Tj -/TT10 1 Tf -10 0 0 10 102 156.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 156.26 Tm -(IMAGEFNSCREATE)Tj -/F3 1 Tf -10 0 0 10 183.6 156.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 186.71 156.26 Tm -0.0511 Tw -(DISPLAYFN IMAGEBOXFN PUTFN GETFN COPYFN BUTTONEVENTINFN)Tj --8.7456 -1.0389 TD -2 Tw -(COPYBUTTONEVENTINFN WHENMOVEDFN WHENINSERTEDFN WHENDELETEDFN)Tj -0 -1.0722 TD -(WHENCOPIEDFN WHENOPERATEDONFN PREPRINTFN )Tj -/TT10 1 Tf -10 0 0 10 334.8 137.26 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 340.8009 137.26 Tm -0.8333 Tw -[( )-9369.9([Function])]TJ --23.8668 -1.8889 TD -0.0289 Tw -(Returns an )Tj -/TT10 1 Tf -10 0 0 10 172.0517 120.26 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 220.0595 120.26 Tm -0.0289 Tw -[( object that contains the functions necessary to define the behavior)]TJ --10.4511 -1.3333 TD -0 Tw -(of an )Tj -/TT10 1 Tf -10 0 0 10 148.1484 108.26 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 196.1562 108.26 Tm -(.)Tj --7.7951 -2.1056 TD -0.1989 Tw -(The arguments )Tj -/TT15 1 Tf -7.3197 0 TD -0 Tw -(DISPLAYFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.1989 Tw -[( through )]TJ -/TT15 1 Tf -4.4881 0 TD -0 Tw -(PREPRINTFN)Tj -/TT8 1 Tf -6.001 0 TD -0.1989 Tw -[( should all be function names to be)]TJ --23.2096 -1.2944 TD -0.0911 Tw -(stored as the "methods" of the )Tj -/TT10 1 Tf -10 0 0 10 251.9761 77.66 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 299.9839 77.66 Tm -0.0911 Tw -[(. The purpose of each )]TJ -/TT10 1 Tf -10 0 0 10 394.5128 77.66 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 442.5206 77.66 Tm -0.0911 Tw -[( method is)]TJ --35.169 -1.3278 TD -0 Tw -(described below.)Tj -ET -endstream -endobj -137 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -139 0 obj -<< -/Length 8168 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-34)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.15 Tw -[(Note: Image objects must be "registered" before they can be read by TEdit or )]TJ -/TT10 1 Tf -10 0 0 10 501.7046 569.49 Tm -0 Tw -(HREAD)Tj -/TT8 1 Tf -9 0 0 9 531.7095 569.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 174 557.49 Tm -(IMAGEFNSCREATE)Tj -/TT8 1 Tf -9 0 0 9 258.0136 557.49 Tm -( implicitly registers its )Tj -/TT10 1 Tf -10 0 0 10 348.6904 557.49 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 378.6953 557.49 Tm -( argument.)Tj -/TT10 1 Tf -10 0 0 10 150 534.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 534.26 Tm -(IMAGEOBJCREATE)Tj -/F3 1 Tf -10 0 0 10 231.6 534.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.47 534.26 Tm -(OBJECTDATUM IMAGEFNS)Tj -/F3 1 Tf -10 0 0 10 342.4876 534.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 346.3776 534.26 Tm -[( )-15750.3([Function])]TJ --19.1531 -1.8889 TD -0.06 Tw -(Returns an )Tj -/TT10 1 Tf -10 0 0 10 220.6117 517.2599 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 268.6195 517.2599 Tm -0.06 Tw -[( that contains the object datum )]TJ -/TT15 1 Tf -14.1813 0 TD -0 Tw -(OBJECTDATUM)Tj -/TT8 1 Tf -6.6011 0 TD -0.06 Tw -[( and the operations)]TJ --31.2957 -1.3278 TD -0 Tw -(vector )Tj -/TT15 1 Tf -3.0049 0 TD -(IMAGEFNS)Tj -/TT8 1 Tf -4.8008 0 TD -(. )Tj -/TT15 1 Tf -0.75 0 TD -(OBJECTDATUM)Tj -/TT8 1 Tf -6.6011 0 TD -( can be arbitrary data.)Tj -/TT10 1 Tf -10 0 0 10 150 482.43 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 482.43 Tm -(IMAGEOBJPROP)Tj -/F3 1 Tf -10 0 0 10 220.8 482.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.67 482.43 Tm -(IMAGEOBJECT PROPERTY NEWVALUE)Tj -/TT10 1 Tf -10 0 0 10 380.2955 482.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 386.2964 482.43 Tm -[( )-6577.1([NoSpread Function])]TJ --23.5885 -1.8889 TD -0.2133 Tw -(Accesses and sets the properties of an )Tj -/TT10 1 Tf -10 0 0 10 339.3238 465.43 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 387.3316 465.43 Tm -0.2133 Tw -[(. Returns the current value of the)]TJ -/TT15 1 Tf --23.7035 -1.3278 TD -0 Tw -(PROPERTY)Tj -/TT8 1 Tf -4.8008 0 TD -0.3 Tw -[( property of the image object )]TJ -/TT15 1 Tf -14.7565 0 TD -0 Tw -(IMAGEOBJECT)Tj -/TT8 1 Tf -6.6011 0 TD -0.3 Tw -[(. If )]TJ -/TT15 1 Tf -2.5699 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.3 Tw -[( is given, the)]TJ --33.5291 -1.2889 TD -0 Tw -(property is set to it.)Tj -/TT10 1 Tf -10 0 0 10 174 423.83 Tm -(IMAGEOBJPROP)Tj -/TT8 1 Tf -9 0 0 9 246.0117 423.83 Tm -0.1222 Tw -[( can be used on the system properties )]TJ -/TT10 1 Tf -10 0 0 10 406.1813 423.83 Tm -0 Tw -(OBJECTDATUM)Tj -/TT8 1 Tf -9 0 0 9 472.1921 423.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 477.7921 423.83 Tm -(DISPLAYFN)Tj -/TT8 1 Tf -9 0 0 9 531.8009 423.83 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 411.83 Tm -(IMAGEBOXFN)Tj -/TT8 1 Tf -9 0 0 9 234.0097 411.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 261.5497 411.83 Tm -(PUTFN)Tj -/TT8 1 Tf -9 0 0 9 291.5546 411.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 319.0946 411.83 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 349.0995 411.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 376.6395 411.83 Tm -(COPYFN)Tj -/TT8 1 Tf -9 0 0 9 412.6454 411.83 Tm -2.56 Tw -(, BUTTONEVENTINFN,)Tj -/TT10 1 Tf -10 0 0 10 174 399.83 Tm -0 Tw -(COPYBUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 288.0185 399.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 293.2085 399.83 Tm -(WHENOPERATEDONFN)Tj -/TT8 1 Tf -9 0 0 9 389.2242 399.83 Tm -0.0767 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 412.59 399.83 Tm -0 Tw -(PREPRINTFN)Tj -/TT8 1 Tf -9 0 0 9 472.5997 399.83 Tm -0.0767 Tw -[(. Additionally,)]TJ --33.1777 -1.3333 TD -0 Tw -(it can be used to save arbitrary properties on an )Tj -/TT10 1 Tf -10 0 0 10 365.6147 387.83 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 413.6226 387.83 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 364.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 364.6 Tm -(IMAGEFNSP)Tj -/F3 1 Tf -10 0 0 10 204.6 364.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.47 364.6 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 212.8709 364.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 218.8718 364.6 Tm -[( )-29917.6([Function])]TJ --4.9858 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is an )Tj -/TT10 1 Tf -10 0 0 10 251.3833 347.6 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 299.3911 347.6 Tm -( object, )Tj -/TT10 1 Tf -10 0 0 10 329.3794 347.6 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 347.3823 347.6 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 150 324.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 324.37 Tm -(IMAGEOBJP)Tj -/F3 1 Tf -10 0 0 10 204.6 324.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.47 324.37 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 212.8709 324.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 218.8718 324.37 Tm -[( )-29917.6([Function])]TJ --4.9858 -1.8889 TD -(Returns )Tj -/TT15 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT15 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is an )Tj -/TT10 1 Tf -10 0 0 10 251.3833 307.37 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 299.3911 307.37 Tm -( object, )Tj -/TT10 1 Tf -10 0 0 10 329.3794 307.37 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 347.3823 307.37 Tm -( otherwise.)Tj -/TT4 1 Tf -10 0 0 10 126 277.08 Tm -(IMAGEFNS Methods)Tj -/TT8 1 Tf -9 0 0 9 126 251.37 Tm -0.0844 Tw -[(Note: Many of the )]TJ -/TT10 1 Tf -10 0 0 10 206.59 251.37 Tm -0 Tw -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 254.5978 251.37 Tm -0.0844 Tw -[( methods below are passed "host stream" arguments. The TEdit text)]TJ --14.2886 -1.3278 TD -0.0522 Tw -(editor passes the "text stream" \(an object contain all of the information in the document being edited\))Tj -0 -1.2222 TD -0.0844 Tw -[(as the "host stream" argument. Other editing programs that want to use image objects may want to)]TJ -0 -1.2278 TD -0 Tw -(pass the data structure being edited to the )Tj -/TT10 1 Tf -10 0 0 10 295.0708 217.37 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 343.0786 217.37 Tm -( methods as the "host stream" argument.)Tj -/TT10 1 Tf -10 0 0 10 150 194.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 194.14 Tm -(DISPLAYFN)Tj -/F3 1 Tf -10 0 0 10 204.6089 194.14 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 207.4789 194.14 Tm -(IMAGEOBJ IMAGESTREAM IMAGESTREAMTYPE HOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 461.3202 194.14 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 467.3212 194.14 Tm -[( )-1242.1([)]TJ -/TT10 1 Tf -10 0 0 10 485.9971 194.14 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 156 184.19 Tm -(Method])Tj -2 -1.7833 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.5644 168.14 Tm -(DISPLAYFN)Tj -/TT8 1 Tf -9 0 0 9 245.5732 168.14 Tm -0.0278 Tw -[( method is called to display the object )]TJ -/TT15 1 Tf -17.0948 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.0278 Tw -[( at the current position)]TJ --29.8481 -1.3278 TD -0 Tw -(on )Tj -/TT15 1 Tf -1.409 0 TD -(IMAGESTREAM)Tj -/TT8 1 Tf -6.6011 0 TD -0.0311 Tw -[(. The type of )]TJ -/TT15 1 Tf -6.1707 0 TD -0 Tw -(IMAGESTREAM)Tj -/TT8 1 Tf -6.6011 0 TD -0.0311 Tw -[( indicates whether the device is the display)]TJ --20.7819 -1.2889 TD -0 Tw -(or some other image stream.)Tj -0 -2.0056 TD -0.1367 Tw -[(Note: When the )]TJ -/TT10 1 Tf -10 0 0 10 246.0816 126.54 Tm -0 Tw -(DISPLAYFN)Tj -/TT8 1 Tf -9 0 0 9 300.0904 126.54 Tm -0.1367 Tw -[( method is called, the offset and clipping regions for the)]TJ --14.01 -1.3278 TD -0 Tw -(stream are set so the objects image is at \(0,0\), and only that image area can be modified.)Tj -/TT10 1 Tf -10 0 0 10 150 92.31 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 92.31 Tm -(IMAGEBOXFN)Tj -/F3 1 Tf -10 0 0 10 210.0098 92.31 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.8798 92.31 Tm -(IMAGEOBJ IMAGESTREAM CURRENTX RIGHTMARGIN)Tj -/TT10 1 Tf -10 0 0 10 434.3158 92.31 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 440.3168 92.31 Tm -[( )-170.4([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 92.31 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 92.31 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.9344 75.31 Tm -(IMAGEBOXFN)Tj -/TT8 1 Tf -9 0 0 9 251.9442 75.31 Tm -0.0689 Tw -[( method should return the size of the object as an )]TJ -/TT10 1 Tf -10 0 0 10 456.3028 75.31 Tm -0 Tw -(IMAGEBOX)Tj -/TT8 1 Tf -9 0 0 9 504.3106 75.31 Tm -0.0689 Tw -(, which)Tj --36.7012 -1.3278 TD -0.0389 Tw -(is a data structure that describes the image laid down when an )Tj -/TT15 1 Tf -28.3685 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.0389 Tw -[( is displayed in)]TJ --33.1693 -1.2944 TD -0.1378 Tw -[(terms of width, height, and descender height. An )]TJ -/TT10 1 Tf -10 0 0 10 385.1287 51.71 Tm -0 Tw -(IMAGEBOX)Tj -/TT8 1 Tf -9 0 0 9 433.1365 51.71 Tm -0.1378 Tw -[( has four fields: )]TJ -/TT10 1 Tf -10 0 0 10 501.6503 51.71 Tm -0 Tw -(XSIZE)Tj -/TT8 1 Tf -9 0 0 9 531.6552 51.71 Tm -(,)Tj -ET -endstream -endobj -140 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -142 0 obj -<< -/Length 8169 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-35)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --28.2 -4.251 TD -(YSIZE)Tj -/TT8 1 Tf -9 0 0 9 156.0049 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 160.9149 569.49 Tm -(YDESC)Tj -/TT8 1 Tf -9 0 0 9 190.9197 569.49 Tm -0.0456 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 213.7256 569.49 Tm -0 Tw -(XKERN)Tj -/TT8 1 Tf -9 0 0 9 243.7305 569.49 Tm -0.0456 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 251.3005 569.49 Tm -0 Tw -(XSIZE)Tj -/TT8 1 Tf -9 0 0 9 281.3053 569.49 Tm -0.0456 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 301.8612 569.49 Tm -0 Tw -(YSIZE)Tj -/TT8 1 Tf -9 0 0 9 331.8661 569.49 Tm -0.0456 Tw -[( are the width and height of the object)]TJ --22.874 -1.3333 TD -0.0044 Tw -(image. )Tj -/TT10 1 Tf -10 0 0 10 157.2108 557.49 Tm -0 Tw -(YDESC)Tj -/TT8 1 Tf -9 0 0 9 187.2157 557.49 Tm -0.0009 Tc -0.0035 Tw -( and )Tj -/TT10 1 Tf -10 0 0 10 207.0316 557.49 Tm -0 Tc -0 Tw -(XKERN)Tj -/TT8 1 Tf -9 0 0 9 237.0364 557.49 Tm -0.0001 Tc -0.0043 Tw -( give the position of the baseline and the left edge of the image)Tj --12.3374 -1.3333 TD -0 Tc -0.0122 Tw -[(relative to where you want to position it. For characters, the )]TJ -/TT10 1 Tf -10 0 0 10 369.2741 545.49 Tm -0 Tw -(YDESC)Tj -/TT8 1 Tf -9 0 0 9 399.279 545.49 Tm -0.0122 Tw -[( is the descent \(height)]TJ --30.3643 -1.3333 TD -0.2489 Tw -(of the descender\) and the )Tj -/TT10 1 Tf -10 0 0 10 240.0935 533.49 Tm -0 Tw -(XKERN)Tj -/TT8 1 Tf -9 0 0 9 270.0984 533.49 Tm -0.2489 Tw -[( is the amount of left kerning \(note: TEdit doesnt)]TJ --16.0109 -1.3278 TD -0 Tw -(support left kerning\).)Tj -0 -2.0056 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.1744 503.49 Tm -(IMAGEBOXFN)Tj -/TT8 1 Tf -9 0 0 9 204.1842 503.49 Tm -0.0956 Tw -[( looks at the type of the stream to determine the output device if the)]TJ --8.6871 -1.3278 TD -0.0478 Tw -[(objects size changes from device to device. \(For example, a bit-map object may specify a)]TJ -0 -1.2222 TD -0.0567 Tw -(scale factor that is ignored when the bit map is displayed on the screen.\) )Tj -/TT15 1 Tf -33.1889 0 TD -0 Tw -(CURRENTX)Tj -/TT8 1 Tf -4.8008 0 TD -0.0567 Tw -[( and)]TJ -/TT15 1 Tf --37.9897 -1.2889 TD -0 Tw -(RIGHTMARGIN)Tj -/TT8 1 Tf -6.6011 0 TD -0.0389 Tw -[( allow an object to take account of its environment when deciding how big)]TJ --6.6011 -1.2944 TD -0 Tw -(it is. If these fields are not available, they are )Tj -/TT10 1 Tf -10 0 0 10 306.7778 457.29 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 324.7808 457.29 Tm -(.)Tj --18.0868 -2.1111 TD -(Note: TEdit calls the )Tj -/TT10 1 Tf -10 0 0 10 244.9863 438.29 Tm -(IMAGEBOXFN)Tj -/TT8 1 Tf -9 0 0 9 304.9961 438.29 Tm -( only during line formatting, then caches the)Tj -/TT10 1 Tf -10 0 0 10 198 426.29 Tm -(IMAGEBOX)Tj -/TT8 1 Tf -9 0 0 9 246.0078 426.29 Tm -( as the )Tj -/TT10 1 Tf -10 0 0 10 273.5571 426.29 Tm -(BOUNDBOX)Tj -/TT8 1 Tf -9 0 0 9 321.5649 426.29 Tm -( property of the )Tj -/TT15 1 Tf -7.1655 0 TD -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -(. This avoids)Tj --25.6957 -1.3333 TD -(the need to call the )Tj -/TT10 1 Tf -10 0 0 10 275.1592 414.29 Tm -(IMAGEBOXFN)Tj -/TT8 1 Tf -9 0 0 9 335.1689 414.29 Tm -( when incomplete position and)Tj --15.241 -1.3278 TD -(margin information is available.)Tj -/TT10 1 Tf -10 0 0 10 102 380.06 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 380.06 Tm -(PUTFN)Tj -/F3 1 Tf -10 0 0 10 135.0054 380.06 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 137.8754 380.06 Tm -(IMAGEOBJ FILESTREAM)Tj -/TT10 1 Tf -10 0 0 10 240.4921 380.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.493 380.06 Tm -[( )-16373([)]TJ -/TT10 1 Tf -10 0 0 10 401.347 380.06 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 449.3549 380.06 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 145.4344 363.06 Tm -(PUTFN)Tj -/TT8 1 Tf -9 0 0 9 175.4393 363.06 Tm -0.2356 Tw -[( method is called to save the object on a file. It prints a description on)]TJ -/TT15 1 Tf --5.4933 -1.3333 TD -0 Tw -(FILESTREAM)Tj -/TT8 1 Tf -6.001 0 TD -0.4344 Tw -[( that, when read by the corresponding )]TJ -/TT10 1 Tf -10 0 0 10 361.6795 351.06 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 391.6844 351.06 Tm -0.4344 Tw -[( method \(see below\),)]TJ --29.5205 -1.3333 TD -0.0056 Tw -[(regenerates the image object. \(TEdit and )]TJ -/TT10 1 Tf -10 0 0 10 290.6 339.06 Tm -0 Tw -(HPRINT)Tj -/TT8 1 Tf -9 0 0 9 326.6059 339.06 Tm -0.0056 Tw -[( take care of writing out the name of the)]TJ -/TT10 1 Tf -10 0 0 10 126 327.06 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 156.0049 327.06 Tm -(.\))Tj -/TT10 1 Tf -10 0 0 10 102 303.83 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 303.83 Tm -(GETFN)Tj -/F3 1 Tf -10 0 0 10 135.0054 303.83 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 137.8754 303.83 Tm -(FILESTREAM)Tj -/TT10 1 Tf -10 0 0 10 191.8842 303.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 197.8851 303.83 Tm -[( )-21773.9([)]TJ -/TT10 1 Tf -10 0 0 10 401.347 303.83 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 449.3549 303.83 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.0344 286.83 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 174.0393 286.83 Tm -0.08 Tw -[( method is called when the object is encountered on the file during input. It)]TJ --5.3377 -1.3333 TD -0 Tw -(reads the description that was written by the )Tj -/TT10 1 Tf -10 0 0 10 306.0703 274.83 Tm -(PUTFN)Tj -/TT8 1 Tf -9 0 0 9 336.0752 274.83 Tm -( method and returns an )Tj -/TT10 1 Tf -10 0 0 10 431.9771 274.83 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 479.9849 274.83 Tm -(. )Tj -/TT10 1 Tf -10 0 0 10 102 251.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 251.6 Tm -(COPYFN)Tj -/F3 1 Tf -10 0 0 10 140.4063 251.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 143.2762 251.6 Tm -(IMAGEOBJ SOURCEHOSTSTREAM TARGETHOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 370.1132 251.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 376.1141 251.6 Tm -[( )-1970.6([)]TJ -/TT10 1 Tf -10 0 0 10 401.347 251.6 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 449.3549 251.6 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 143.8044 234.6 Tm -(COPYFN)Tj -/TT8 1 Tf -9 0 0 9 179.8103 234.6 Tm -0.0544 Tw -[( method is called during a copy-select operation. It should return a copy of)]TJ -/TT15 1 Tf --5.9789 -1.3333 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -(. If it returns the litatom )Tj -/TT10 1 Tf -10 0 0 10 268.5806 222.6 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 298.5854 222.6 Tm -(, copying is suppressed.)Tj -/TT10 1 Tf -10 0 0 10 102 199.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 199.37 Tm -(BUTTONEVENTINFN)Tj -/F3 1 Tf -10 0 0 10 189.0142 199.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 195.2442 199.37 Tm -0.7011 Tw -(IMAGEOBJ WINDOWSTREAM SELECTION RELX RELY WINDOW)Tj --9.6938 -1.1111 TD -(HOSTSTREAM BUTTON)Tj -/TT10 1 Tf -10 0 0 10 199.8 189.37 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 205.801 189.37 Tm -0.2922 Tc -[( )-20309.9([)]TJ -/TT10 1 Tf -10 0 0 10 401.347 189.37 Tm -0 Tc -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 449.3549 189.37 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.5344 172.37 Tm -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 234.5491 172.37 Tm -0.1356 Tw -[( method is called when you press a mouse button inside the)]TJ --12.061 -1.3333 TD -0.0967 Tw -[(object. The )]TJ -/TT10 1 Tf -10 0 0 10 175.9127 160.37 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 265.9274 160.37 Tm -0.0967 Tw -[( decides whether or not to handle the button, to track)]TJ --15.5475 -1.3278 TD -0.0644 Tw -(the cursor in parallel with mouse movement, and to invoke selections or edits supported)Tj -0 -1.2278 TD -0.5589 Tw -(by the object \(but see the )Tj -/TT10 1 Tf -10 0 0 10 256.6478 137.37 Tm -0 Tw -(COPYBUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 370.6663 137.37 Tm -0.5589 Tw -[( method below\). If the)]TJ -/TT10 1 Tf -10 0 0 10 126 125.37 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 216.0146 125.37 Tm -0.0178 Tw -[( returns )]TJ -/TT10 1 Tf -10 0 0 10 249.6715 125.37 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 267.6745 125.37 Tm -0.0178 Tw -(, TEdit treats the button press as a selection at its level.)Tj --15.7416 -1.3333 TD -0.0556 Tw -[(Note that when this function is first called, a button is down. The )]TJ -/TT10 1 Tf -10 0 0 10 395.9907 113.37 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 126 101.42 Tm -0.0433 Tw -(should also support the button-down protocol to descend inside of any composite objects)Tj -0 -1.2278 TD -0.1911 Tw -[(with in it. In most cases, the )]TJ -/TT10 1 Tf -10 0 0 10 254.7693 90.37 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 344.7839 90.37 Tm -0.1911 Tw -[( relinquishes control \(i.e., returns\))]TJ --24.3093 -1.3278 TD -0 Tw -(when the cursor leaves its objects region.)Tj -ET -endstream -endobj -143 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -145 0 obj -<< -/Length 8464 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-36)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.3044 Tw -(When the )Tj -/TT10 1 Tf -10 0 0 10 172.2524 569.49 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 262.2671 569.49 Tm -0.3044 Tw -[( is called, the windows clipping region and offsets have been)]TJ --15.1408 -1.3333 TD -0.03 Tw -(changed so that the lower-left corner of the objects image is at \()Tj -/TT10 1 Tf -10 0 0 10 382.3738 557.49 Tm -0 Tw -(0,0)Tj -/TT8 1 Tf -9 0 0 9 400.3767 557.49 Tm -0.03 Tw -(\), and only the objects image can)Tj --30.4863 -1.3278 TD -0.0322 Tw -[(be changed. The selection is available for changing to fit your needs; the mouse button went down at)]TJ -0 -1.2278 TD -0 Tw -(\()Tj -/TT10 1 Tf -10 0 0 10 128.9971 534.49 Tm -(RELX,RELY)Tj -/TT8 1 Tf -9 0 0 9 183.0058 534.49 Tm -0.0789 Tw -[(\) within the objects image. You can affect how TEdit treats the selection by returning)]TJ --6.334 -1.3333 TD -0.0822 Tw -[(one of several values. If you return )]TJ -/TT10 1 Tf -10 0 0 10 274.8917 522.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 292.8946 522.49 Tm -0.0822 Tw -(, TEdit forgets that you selected an object; if you return the)Tj --18.5438 -1.3333 TD -0 Tw -(atom )Tj -/TT10 1 Tf -10 0 0 10 148.8539 510.49 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 178.8588 510.49 Tm -0.0344 Tw -(, TEdit doesnt permit the selection; if you return the atom )Tj -/TT10 1 Tf -10 0 0 10 415.5745 510.49 Tm -0 Tw -(CHANGED)Tj -/TT8 1 Tf -9 0 0 9 457.5813 510.49 Tm -0.0344 Tw -(, TEdit updates the)Tj --36.8424 -1.3333 TD -0.1267 Tw -[(screen. Use )]TJ -/TT10 1 Tf -10 0 0 10 178.7706 498.49 Tm -0 Tw -(CHANGED)Tj -/TT8 1 Tf -9 0 0 9 220.7774 498.49 Tm -0.1267 Tw -[( to signal TEdit that the object has changed size or will have side effects on)]TJ --10.5308 -1.3278 TD -0 Tw -(other parts of the screen image.)Tj -/TT10 1 Tf -10 0 0 10 150 464.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 464.26 Tm -(COPYBUTTONEVENTINFN)Tj -/F3 1 Tf -10 0 0 10 258.6177 464.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 261.4877 464.26 Tm -(IMAGEOBJ WINDOWSTREAM)Tj -/TT10 1 Tf -10 0 0 10 374.9061 464.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 380.9071 464.26 Tm -[( )-6771.4([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 464.26 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 464.26 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.4844 447.26 Tm -(COPYBUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 305.503 447.26 Tm -0.0189 Tw -[( method is called when you button inside an object while)]TJ --14.6114 -1.3333 TD -0.1656 Tw -[(holding down a copy key. Many of the comments about )]TJ -/TT10 1 Tf -10 0 0 10 417.3236 435.26 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 507.3383 435.26 Tm -0.1656 Tw -[( apply)]TJ --37.0376 -1.3278 TD -0 Tw -(here too. Also, see the discussion below about copying image objects between windows. )Tj -/TT10 1 Tf -10 0 0 10 150 401.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 401.03 Tm -(WHENMOVEDFN)Tj -/F3 1 Tf -10 0 0 10 215.4106 401.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.6806 401.03 Tm -3.4289 Tw -(IMAGEOBJ TARGETWINDOWSTREAM SOURCEHOSTSTREAM)Tj --8.7423 -1.1111 TD -0 Tw -(TARGETHOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 242.414 391.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 248.415 391.03 Tm -1.4289 Tc -[( )-18635([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 391.03 Tm -0 Tc -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 391.03 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 192.1244 374.03 Tm -(WHENMOVEDFN)Tj -/TT8 1 Tf -9 0 0 9 258.1352 374.03 Tm -0.09 Tw -[( method provides hooks by which the object is notified when TEdit)]TJ --9.3484 -1.3333 TD -0.2067 Tw -(performs an operation \()Tj -/TT10 1 Tf -10 0 0 10 273.9613 362.03 Tm -0 Tw -(MOVE)Tj -/TT8 1 Tf -9 0 0 9 297.9652 362.03 Tm -0.2067 Tw -[(ing\) on the whole object. It allows objects to have side)]TJ --13.7739 -1.3278 TD -0 Tw -(effects. )Tj -/TT10 1 Tf -10 0 0 10 150 327.8 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 327.8 Tm -(WHENINSERTEDFN)Tj -/F3 1 Tf -10 0 0 10 231.6133 327.8 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 247.4833 327.8 Tm -2.7178 Tw -(IMAGEOBJ TARGETWINDOWSTREAM SOURCEHOSTSTREAM)Tj --10.1648 -1.1111 TD -0 Tw -(TARGETHOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 242.414 317.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 248.415 317.8 Tm -1.1322 Tc -[( )-19228.4([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 317.8 Tm -0 Tc -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 317.8 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 192.7744 300.8 Tm -(WHENINSERTEDFN)Tj -/TT8 1 Tf -9 0 0 9 276.7881 300.8 Tm -0.1622 Tw -[( method provides hooks by which the object is notified when)]TJ --11.4209 -1.3333 TD -0.0656 Tw -(TEdit performs an operation \()Tj -/TT10 1 Tf -10 0 0 10 295.0563 288.8 Tm -0 Tw -(INSERT)Tj -/TT8 1 Tf -9 0 0 9 331.0621 288.8 Tm -0.0656 Tw -[(ing\) on the whole object. It allows objects to have)]TJ --17.4513 -1.3278 TD -0 Tw -(side effects. )Tj -/TT10 1 Tf -10 0 0 10 150 254.57 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 254.57 Tm -(WHENDELETEDFN)Tj -/F3 1 Tf -10 0 0 10 226.2124 254.57 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.0824 254.57 Tm -(IMAGEOBJ TARGETWINDOWSTREAM)Tj -/F3 1 Tf -10 0 0 10 374.9061 254.57 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 378.7961 254.57 Tm -[( )-7006([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 254.57 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 254.57 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 193.3244 237.57 Tm -(WHENDELETEDFN)Tj -/TT8 1 Tf -9 0 0 9 271.3371 237.57 Tm -0.2233 Tw -[( method provides hooks by which the object is notified when)]TJ --10.8152 -1.3333 TD -0.0656 Tw -(TEdit performs an operation \()Tj -/TT10 1 Tf -10 0 0 10 295.0563 225.57 Tm -0 Tw -(DELETE)Tj -/TT8 1 Tf -9 0 0 9 331.0621 225.57 Tm -0.0656 Tw -[(ing\) on the whole object. It allows objects to have)]TJ --17.4513 -1.3278 TD -0 Tw -(side effects. )Tj -/TT10 1 Tf -10 0 0 10 150 191.34 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 191.34 Tm -(WHENCOPIEDFN)Tj -/F3 1 Tf -10 0 0 10 220.8115 191.34 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 238.9515 191.34 Tm -3.1922 Tw -(IMAGEOBJ TARGETWINDOWSTREAM SOURCEHOSTSTREAM)Tj --9.2168 -1.1111 TD -0 Tw -(TARGETHOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 242.414 181.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 248.415 181.34 Tm -1.33 Tc -[( )-18832.8([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 181.34 Tm -0 Tc -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 181.34 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.6244 164.34 Tm -(WHENCOPIEDFN)Tj -/TT8 1 Tf -9 0 0 9 263.6361 164.34 Tm -0.0344 Tw -[( method provides hooks by which the object is notified when TEdit)]TJ --9.9596 -1.3333 TD -0.0778 Tw -(performs an operation \()Tj -/TT10 1 Tf -10 0 0 10 270.4813 152.34 Tm -0 Tw -(COPY)Tj -/TT8 1 Tf -9 0 0 9 294.4852 152.34 Tm -0.0778 Tw -[(ing\) on the whole object. The )]TJ -/TT10 1 Tf -10 0 0 10 418.7715 152.34 Tm -0 Tw -(WHENCOPIEDFN)Tj -/TT8 1 Tf -9 0 0 9 490.7832 152.34 Tm -0.0778 Tw -[( method is)]TJ --35.1981 -1.3333 TD -0.0267 Tw -(called in addition to \(and after\) the )Tj -/TT10 1 Tf -10 0 0 10 316.5115 140.34 Tm -0 Tw -(COPYFN)Tj -/TT8 1 Tf -9 0 0 9 352.5174 140.34 Tm -0.0267 Tw -[( method above. It allows objects to have side)]TJ --19.8353 -1.3278 TD -0 Tw -(effects.)Tj -/TT10 1 Tf -10 0 0 10 150 106.11 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 106.11 Tm -(WHENOPERATEDONFN)Tj -/F3 1 Tf -10 0 0 10 242.415 106.11 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 252.165 106.11 Tm -1.4389 Tw -(IMAGEOBJ WINDOWSTREAM HOWOPERATEDON SELECTION)Tj --10.685 -1.1111 TD -0 Tw -(HOSTSTREAM)Tj -/TT10 1 Tf -10 0 0 10 210.0088 96.11 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 216.0097 96.11 Tm -0.6 Tc -[( )-23893.4([)]TJ -/TT10 1 Tf -10 0 0 10 449.347 96.11 Tm -0 Tc -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 497.3549 96.11 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 199.9444 79.11 Tm -(WHENOPERATEDONFN)Tj -/TT8 1 Tf -9 0 0 9 295.9601 79.11 Tm -0.9589 Tw -[( method provides a hook for edit operations.)]TJ -/TT10 1 Tf -10 0 0 10 174 67.11 Tm -0 Tw -(HOWOPERATEDON)Tj -/TT8 1 Tf -9 0 0 9 252.0127 67.11 Tm -0.1222 Tw -[( should be one of )]TJ -/TT10 1 Tf -10 0 0 10 327.935 67.11 Tm -0 Tw -(SELECTED)Tj -/TT8 1 Tf -9 0 0 9 375.9428 67.11 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 381.5428 67.11 Tm -(DESELECTED)Tj -/TT8 1 Tf -9 0 0 9 441.5526 67.11 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 447.1526 67.11 Tm -(HIGHLIGHTED)Tj -/TT8 1 Tf -9 0 0 9 513.1633 67.11 Tm -0.1222 Tw -(, and)Tj -/TT10 1 Tf -10 0 0 10 174 55.11 Tm -0 Tw -(UNHILIGHTED)Tj -/TT8 1 Tf -9 0 0 9 240.0107 55.11 Tm -0.2733 Tw -[(. The )]TJ -/TT10 1 Tf -10 0 0 10 271.4552 55.11 Tm -0 Tw -(WHENOPERATEDONFN)Tj -/TT8 1 Tf -9 0 0 9 367.4708 55.11 Tm -0.2733 Tw -[( differs from the )]TJ -/TT10 1 Tf -10 0 0 10 443.9978 55.11 Tm -0 Tw -(BUTTONEVENTINFN)Tj -/TT8 1 Tf -9 0 0 9 174 43.16 Tm -0.0767 Tw -[(because it is called when you extend a selection through the object. That is, the object is)]TJ -ET -endstream -endobj -146 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -148 0 obj -<< -/Length 8499 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-37)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.3389 Tw -(treated in toto as a TEdit character. )Tj -/TT10 1 Tf -10 0 0 10 293.7144 569.49 Tm -0 Tw -(HIGHLIGHTED)Tj -/TT8 1 Tf -9 0 0 9 359.7252 569.49 Tm -0.3389 Tw -[( refers to the selection being)]TJ --25.9695 -1.3333 TD -0.1389 Tw -(highlighted on the screen, and )Tj -/TT10 1 Tf -10 0 0 10 255.1738 557.49 Tm -0 Tw -(UNHIGHLIGHTED)Tj -/TT8 1 Tf -9 0 0 9 333.1865 557.49 Tm -0.1389 Tw -[( means that the highlighting is being)]TJ --23.0207 -1.3278 TD -0 Tw -(turned off. )Tj -/TT10 1 Tf -10 0 0 10 102 523.2599 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 523.2599 Tm -(PREPRINTFN)Tj -/F3 1 Tf -10 0 0 10 162.0098 523.2599 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 523.2599 Tm -(IMAGEOBJ)Tj -/TT10 1 Tf -10 0 0 10 208.0868 523.2599 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 214.0878 523.2599 Tm -[( )-19973.6([)]TJ -/TT10 1 Tf -10 0 0 10 401.347 523.2599 Tm -(IMAGEFNS)Tj -/TT8 1 Tf -9 0 0 9 449.3549 523.2599 Tm -( Method])Tj --35.9283 -1.8889 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 145.2344 506.26 Tm -(PREPRINTFN)Tj -/TT8 1 Tf -9 0 0 9 205.2442 506.26 Tm -0.2133 Tw -[( method is called to convert the object into something that can be)]TJ --8.8049 -1.3278 TD -0.1356 Tw -[(printed for inclusion in documents. It returns an object that the receiving window can)]TJ -0 -1.2278 TD -0.0222 Tw -(print \(using either )Tj -/TT10 1 Tf -10 0 0 10 201.1796 483.26 Tm -0 Tw -(PRIN1)Tj -/TT8 1 Tf -9 0 0 9 231.1844 483.26 Tm -0.0222 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 244.5527 483.26 Tm -0 Tw -(PRIN2)Tj -/TT8 1 Tf -9 0 0 9 274.5576 483.26 Tm -0.0222 Tw -(,its choice\) to obtain a character representation of the)Tj --16.5064 -1.3333 TD -0.02 Tw -[(object. If the )]TJ -/TT10 1 Tf -10 0 0 10 179.7224 471.26 Tm -0 Tw -(PREPRINTFN)Tj -/TT8 1 Tf -9 0 0 9 239.7322 471.26 Tm -0.02 Tw -[( method is )]TJ -/TT10 1 Tf -10 0 0 10 284.2966 471.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 302.2995 471.26 Tm -0.02 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 321.8944 471.26 Tm -0 Tw -(OBJECTDATUM)Tj -/TT8 1 Tf -9 0 0 9 387.9051 471.26 Tm -0.02 Tw -[( field of )]TJ -/TT15 1 Tf -3.6938 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.02 Tw -[( itself)]TJ --37.5951 -1.3278 TD -0.0544 Tw -[(is used. TEdit uses this function when you indicate that you want to print the characters)]TJ -0 -1.2278 TD -0 Tw -(from an object rather than the object itself \(presumably using )Tj -/TT10 1 Tf -10 0 0 10 370.582 448.26 Tm -(PRIN1)Tj -/TT8 1 Tf -9 0 0 9 400.5869 448.26 Tm -( case\).)Tj -/TT4 1 Tf -10 0 0 10 78 417.97 Tm -(Registering Image Objects)Tj -/TT8 1 Tf -9 0 0 9 78 392.26 Tm -0.0956 Tw -(Each legitimate )Tj -/TT10 1 Tf -10 0 0 10 143.2517 392.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 173.2566 392.26 Tm -0.0956 Tw -[( needs to be known to the system, to prevent various Trojan-horse problems)]TJ --10.5841 -1.3333 TD -0.0122 Tw -(and to allow the automatic loading of the supporting code for infrequently used )Tj -/TT10 1 Tf -10 0 0 10 399.8221 380.26 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 447.8299 380.26 Tm -0.0122 Tw -[(s. To this)]TJ --41.0922 -1.3333 TD -0.0389 Tw -(end, there is a global list, )Tj -/TT10 1 Tf -10 0 0 10 181.0556 368.26 Tm -0 Tw -(IMAGEOBJGETFNS)Tj -/TT8 1 Tf -9 0 0 9 265.0692 368.26 Tm -0.0389 Tw -(, that contains an entry for each )Tj -/TT10 1 Tf -10 0 0 10 394.675 368.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 424.6799 368.26 Tm -0.0389 Tw -[(. The existence)]TJ --38.52 -1.3333 TD -0.2678 Tw -(of the entry marks the )Tj -/TT10 1 Tf -10 0 0 10 180.0456 356.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 210.0505 356.26 Tm -0.2678 Tw -[( as legitimate; the entry itself is a property list, which can hold)]TJ --14.6723 -1.3333 TD -0 Tw -(information about the )Tj -/TT10 1 Tf -10 0 0 10 167.4639 344.26 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 197.4688 344.26 Tm -(.)Tj --13.2743 -3 TD -0.0889 Tw -(No action needs to be taken for )Tj -/TT10 1 Tf -10 0 0 10 209.7099 317.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 239.7148 317.26 Tm -0.0889 Tw -(s that are currently in use: the function )Tj -/TT10 1 Tf -10 0 0 10 402.0547 317.26 Tm -0 Tw -(IMAGEFNSCREATE)Tj -/TT8 1 Tf -9 0 0 9 78 305.26 Tm -0.0056 Tw -(automatically adds its )Tj -/TT10 1 Tf -10 0 0 10 168.0929 305.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 198.0977 305.26 Tm -0.0056 Tw -[( argument to the list. However, packages that support obsolete versions)]TJ --13.3442 -1.3333 TD -0.1689 Tw -(of objects may need to explicitly add the obsolete )Tj -/TT10 1 Tf -10 0 0 10 289.1043 293.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 319.1092 293.26 Tm -0.1689 Tw -[(s. For example, TEdit supports bit-map)]TJ -/TT10 1 Tf -10 0 0 10 78 281.26 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 126.0078 281.26 Tm -0.2289 Tw -[(s. Recently, a change was made in the format in which objects are stored; to retain)]TJ --5.3342 -1.3333 TD -0.3156 Tw -(compatibility with the old object format, there are now two )Tj -/TT10 1 Tf -10 0 0 10 343.8717 269.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 373.8766 269.26 Tm -0.3156 Tw -[(s. The current )]TJ -/TT10 1 Tf -10 0 0 10 444.3826 269.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 474.3875 269.26 Tm -0.3156 Tw -[( is)]TJ --44.0431 -1.3333 TD -0.0611 Tw -(automatically on the list, courtesy of )Tj -/TT10 1 Tf -10 0 0 10 228.0554 257.26 Tm -0 Tw -(IMAGEFNSCREATE)Tj -/TT8 1 Tf -9 0 0 9 312.069 257.26 Tm -0.0611 Tw -[(. However, the code file that supports the)]TJ --26.0077 -1.3333 TD -1.1967 Tw -[(old bit-map objects contains the clause: )]TJ -/TT10 1 Tf -10 0 0 10 313.2631 245.26 Tm -2.872 Tw -(\(ADDVARS \(IMAGEOBJGETFNS)Tj --23.5263 -1.2 TD -0 Tw -(\(OLDGETFNNAME\)\)\))Tj -/TT8 1 Tf -9 0 0 9 174.0156 233.26 Tm -(, which adds the old )Tj -/TT10 1 Tf -10 0 0 10 256.936 233.26 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 286.9409 233.26 Tm -( to )Tj -/TT10 1 Tf -10 0 0 10 299.2896 233.26 Tm -(IMAGEOBJGETFNS)Tj -/TT8 1 Tf -9 0 0 9 383.3032 233.26 Tm -(.)Tj --33.9226 -3 TD -0.3211 Tw -(For a given )Tj -/TT10 1 Tf -10 0 0 10 133.6519 206.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 163.6568 206.26 Tm -0.3211 Tw -(, the entry on )Tj -/TT10 1 Tf -10 0 0 10 230.1484 206.26 Tm -0 Tw -(IMAGEOBJGETFNS)Tj -/TT8 1 Tf -9 0 0 9 314.1621 206.26 Tm -0.3211 Tw -[( may be a property list of information.)]TJ --26.2402 -1.3333 TD -0 Tw -(Currently the only recognized property is )Tj -/TT10 1 Tf -10 0 0 10 248.5122 194.26 Tm -(FILE)Tj -/TT8 1 Tf -9 0 0 9 272.5161 194.26 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 78 167.26 Tm -(FILE)Tj -/TT8 1 Tf -9 0 0 9 102.0039 167.26 Tm -0.0222 Tw -[( is the name of the file that can be loaded if the )]TJ -/TT10 1 Tf -10 0 0 10 291.7802 167.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 321.7851 167.26 Tm -0.0222 Tw -[( isnt defined. This file should define the)]TJ -/TT10 1 Tf -10 0 0 10 78 155.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 108.0049 155.26 Tm -(, along with all the other functions needed to support that kind of )Tj -/TT10 1 Tf -10 0 0 10 370.7935 155.26 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 418.8012 155.26 Tm -(.)Tj --37.8668 -3 TD -0.1356 Tw -(For example, the bit-map )Tj -/TT10 1 Tf -10 0 0 10 185.2155 128.26 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 233.2233 128.26 Tm -0.1356 Tw -[( implemented by TEdit use the )]TJ -/TT10 1 Tf -10 0 0 10 365.2733 128.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 395.2781 128.26 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 398.7481 128.26 Tm -(BMOBJ)Tj -/TT8 1 Tf -9 0 0 9 428.753 128.26 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 431.003 128.26 Tm -(GETFN2)Tj -/TT8 1 Tf -9 0 0 9 467.0089 128.26 Tm -0.1356 Tw -[(. Its)]TJ --43.2232 -1.3333 TD -0.2889 Tw -(entry on )Tj -/TT10 1 Tf -10 0 0 10 118.8968 116.26 Tm -0 Tw -(IMAGEOBJGETFNS)Tj -/TT8 1 Tf -9 0 0 9 202.9104 116.26 Tm -0.2889 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 219.044 116.26 Tm -0.692 Tw -(\(BMOBJ.GETFN2 FILE IMAGEOBJ\))Tj -/TT8 1 Tf -9 0 0 9 400.9114 116.26 Tm -0.2889 Tw -(, indicating that the)Tj --35.879 -1.3333 TD -0.0011 Tw -(support code for bit-map image objects resides on the file )Tj -/TT10 1 Tf -10 0 0 10 308.1713 104.26 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 356.1791 104.26 Tm -0.0011 Tw -(, and that the )Tj -/TT10 1 Tf -10 0 0 10 410.7992 104.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 440.804 104.26 Tm -0.0001 Tc -0.001 Tw -( for them is)Tj -/TT10 1 Tf -10 0 0 10 78 92.26 Tm -0 Tc -0 Tw -(BMOBJ.GETFN2)Tj -/TT8 1 Tf -9 0 0 9 150.0117 92.26 Tm -(.)Tj --8.0013 -3 TD -0.1033 Tw -(This makes it possible to have entries for )Tj -/TT10 1 Tf -10 0 0 10 249.4703 65.26 Tm -0 Tw -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 279.4752 65.26 Tm -0.1033 Tw -(s whose supporting code isnt loadedyou might,)Tj --22.3861 -1.3333 TD -0.0467 Tw -(for instance, have your init file add entries to )Tj -/TT10 1 Tf -10 0 0 10 262.5183 53.26 Tm -0 Tw -(IMAGEOBJGETFNS)Tj -/TT8 1 Tf -9 0 0 9 346.532 53.26 Tm -0.0467 Tw -[( for the kinds of image objects you)]TJ -ET -endstream -endobj -149 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -151 0 obj -<< -/Length 4668 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-38)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.3456 Tw -[(commonly use. The systems default reading method will automatically load the code when)]TJ -0 -1.2222 TD -0 Tw -(necessary.)Tj -/TT4 1 Tf -10 0 0 10 126 529.2 Tm -(Reading and Writing Image Objects on Files)Tj -/TT8 1 Tf -9 0 0 9 126 503.49 Tm -0.0556 Tw -(Image Objects can be written out to files using )Tj -/TT10 1 Tf -10 0 0 10 316.4722 503.49 Tm -0 Tw -(HPRINT)Tj -/TT8 1 Tf -9 0 0 9 352.478 503.49 Tm -0.0556 Tw -[( and read back using )]TJ -/TT10 1 Tf -10 0 0 10 439.9111 503.49 Tm -0 Tw -(HREAD)Tj -/TT8 1 Tf -9 0 0 9 469.916 503.49 Tm -0.0556 Tw -[(. The following)]TJ --38.2129 -1.3278 TD -0 Tw -(functions can also be used:)Tj -/TT10 1 Tf -10 0 0 10 150 469.26 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 469.26 Tm -(WRITEIMAGEOBJ)Tj -/F3 1 Tf -10 0 0 10 226.2 469.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.07 469.26 Tm -(IMAGEOBJ STREAM)Tj -/TT10 1 Tf -10 0 0 10 310.0832 469.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.0841 469.26 Tm -[( )-19116.2([Function])]TJ --15.7871 -1.8889 TD -0.0722 Tw -(Prints \(using )Tj -/TT10 1 Tf -10 0 0 10 228.5002 452.26 Tm -0 Tw -(PRIN2)Tj -/TT8 1 Tf -9 0 0 9 258.5051 452.26 Tm -0.0722 Tw -(\) a call to )Tj -/TT10 1 Tf -10 0 0 10 299.1837 452.26 Tm -0 Tw -(READIMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 371.1954 452.26 Tm -0.0722 Tw -(, then calls the )Tj -/TT10 1 Tf -10 0 0 10 432.8008 452.26 Tm -0 Tw -(PUTFN)Tj -/TT8 1 Tf -9 0 0 9 462.8057 452.26 Tm -0.0722 Tw -[( for )]TJ -/TT15 1 Tf -1.9184 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.0722 Tw -[( to)]TJ --38.8087 -1.3333 TD -0.2467 Tw -(write it onto )Tj -/TT15 1 Tf -6.4324 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2467 Tw -[(. During input, then, the call to )]TJ -/TT10 1 Tf -10 0 0 10 409.0367 440.26 Tm -0 Tw -(READIMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 481.0484 440.26 Tm -0.2467 Tw -[( is read and)]TJ --34.1165 -1.3333 TD -0 Tw -(evaluated; it in turn reads back the objects description, using the appropriate )Tj -/TT10 1 Tf -10 0 0 10 484.0649 428.26 Tm -(GETFN)Tj -/TT8 1 Tf -9 0 0 9 514.0698 428.26 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 405.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 405.03 Tm -(READIMAGEOBJ)Tj -/F3 1 Tf -10 0 0 10 220.8 405.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.67 405.03 Tm -(STREAM GETFN NOERROR)Tj -/TT10 1 Tf -10 0 0 10 331.6876 405.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 337.6885 405.03 Tm -[( )-16715.7([Function])]TJ --18.1876 -1.8889 TD -0.0078 Tw -(Reads an )Tj -/TT10 1 Tf -10 0 0 10 212.513 388.03 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 260.5208 388.03 Tm -0.0078 Tw -[( from )]TJ -/TT15 1 Tf -2.6723 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0078 Tw -[(, starting at the current file position. Uses the function)]TJ -/TT15 1 Tf --15.8863 -1.3278 TD -0 Tw -(GETFN)Tj -/TT8 1 Tf -3.0005 0 TD -( after validating it \(and loading support code, if necessary\).)Tj --3.0005 -2.0722 TD -0.5533 Tw -(If the )Tj -/TT15 1 Tf -3.6638 0 TD -0 Tw -(GETFN)Tj -/TT8 1 Tf -3.0005 0 TD -0.5533 Tw -[( cant be validated or isnt defined, )]TJ -/TT10 1 Tf -10 0 0 10 408.9099 357.43 Tm -0 Tw -(READIMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 480.9215 357.43 Tm -0.5533 Tw -[( returns an)]TJ --34.1024 -1.3333 TD -0.01 Tw -("encapsulated image object", an )Tj -/TT10 1 Tf -10 0 0 10 302.2057 345.43 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 350.2135 345.43 Tm -0.01 Tw -[( that safely encapsulates all of the information)]TJ --19.5793 -1.3278 TD -0.2244 Tw -[(in the image object. An encapsulated image object displays as a rectangle that says,)]TJ -0 -1.2278 TD -0 Tw -(")Tj -/TT10 1 Tf -10 0 0 10 177.3398 322.43 Tm -0.147 Tw -(Unknown IMAGEOBJ Type)Tj -/TT8 1 Tf -9 0 0 9 306.3003 322.43 Tm -0.0611 Tw -(" and lists the )Tj -/TT15 1 Tf -6.4515 0 TD -0 Tw -(GETFN)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -[(s name. Selecting an encapsulated)]TJ --24.152 -1.3278 TD -0.0167 Tw -(image object with the mouse causes another attempt to read the object from the file; this is)Tj -0 -1.2222 TD -0 Tw -(so you can load any necessary support code and then get to the object.)Tj -0 -2 TD -0.2267 Tw -(Warning: You cannot save an encapsulated image object on a file because there isnt)Tj -0 -1.2222 TD -0 Tw -(enough information to allow copying the description to the new file from the old one.)Tj -0 -2.0056 TD -(If )Tj -/TT15 1 Tf -1.0744 0 TD -(NOERROR)Tj -/TT8 1 Tf -4.2007 0 TD -0.1544 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 253.5757 252.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 271.5787 252.43 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 277.4687 252.43 Tm -(READIMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 349.4804 252.43 Tm -0.1544 Tw -[( returns )]TJ -/TT10 1 Tf -10 0 0 10 385.5973 252.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 403.6002 252.43 Tm -0.1544 Tw -[( if it cant successfully read the)]TJ --25.5111 -1.3278 TD -0 Tw -(object.)Tj -ET -endstream -endobj -152 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -154 0 obj -<< -/Length 7756 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-39)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT4 1 Tf --33 -4.38 TD -(Copying Image Objects Between Windows)Tj -/TT8 1 Tf -9 0 0 9 78 542.54 Tm -0.0522 Tw -[(Copying between windows is implemented as follows: If a button event occurs in a window when a)]TJ -0 -1.2278 TD -0.0189 Tw -(copy key is down, the windows )Tj -/TT10 1 Tf -10 0 0 10 210.0825 531.49 Tm -0 Tw -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 312.0991 531.49 Tm -0.0189 Tw -[( window property is called. If this window)]TJ --26.011 -1.3278 TD -0.0267 Tw -[(supports copy-selection, it should track the mouse, indicating the item to be copied. When the button)]TJ -0 -1.2278 TD -0.4722 Tw -(is released, the )Tj -/TT10 1 Tf -10 0 0 10 151.5879 508.49 Tm -0 Tw -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 253.6045 508.49 Tm -0.4722 Tw -[( should create an image object out of the selected)]TJ --19.5116 -1.3333 TD -0.05 Tw -(information, and call )Tj -/TT10 1 Tf -10 0 0 10 164.7929 496.49 Tm -0 Tw -(COPYINSERT)Tj -/TT8 1 Tf -9 0 0 9 224.8026 496.49 Tm -0.05 Tw -[( to insert it in the current )]TJ -/TT10 1 Tf -10 0 0 10 328.939 496.49 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 346.9419 496.49 Tm -0.05 Tw -[( window. )]TJ -/TT10 1 Tf -10 0 0 10 390.5717 496.49 Tm -0 Tw -(COPYINSERT)Tj -/TT8 1 Tf -9 0 0 9 450.5814 496.49 Tm -0.05 Tw -[( calls the)]TJ -/TT10 1 Tf -10 0 0 10 78 484.49 Tm -0 Tw -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 150.0117 484.49 Tm -0.0844 Tw -[( window property of the )]TJ -/TT10 1 Tf -10 0 0 10 253.8312 484.49 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 271.8342 484.49 Tm -0.0844 Tw -[( window to insert this image object. Therefore, both)]TJ --21.5371 -1.3278 TD -0 Tw -(the source and destination windows can determine how they handle copying image objects.)Tj -0 -2.8944 TD -0.0589 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 102.0742 446.49 Tm -0 Tw -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 204.0908 446.49 Tm -0.0589 Tw -[( of a window is )]TJ -/TT10 1 Tf -10 0 0 10 270.1143 446.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 288.1172 446.49 Tm -0.0589 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 308.4121 446.49 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 386.4248 446.49 Tm -0.0589 Tw -[( is called instead when a)]TJ --34.2694 -1.3278 TD -0.0767 Tw -(button event occurs in the window when a copy key is down, and copying from that window is not)Tj -0 -1.2278 TD -0.0922 Tw -[(supported. If the )]TJ -/TT10 1 Tf -10 0 0 10 152.3576 423.49 Tm -0 Tw -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 224.3693 423.49 Tm -0.0922 Tw -[( of the )]TJ -/TT10 1 Tf -10 0 0 10 254.0043 423.49 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 272.0073 423.49 Tm -0.0922 Tw -[( window is )]TJ -/TT10 1 Tf -10 0 0 10 320.9606 423.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 338.9636 423.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 344.2936 423.49 Tm -(COPYINSERT)Tj -/TT8 1 Tf -9 0 0 9 404.3033 423.49 Tm -0.0922 Tw -[( will turn the image)]TJ --36.2559 -1.3333 TD -0.0611 Tw -(object into a string \(by calling the )Tj -/TT10 1 Tf -10 0 0 10 216.2743 411.49 Tm -0 Tw -(PREPRINTFN)Tj -/TT8 1 Tf -9 0 0 9 276.2841 411.49 Tm -0.0611 Tw -[( method of the image object\) and insert it by calling)]TJ -/TT10 1 Tf -10 0 0 10 78 399.49 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 126.0078 399.49 Tm -(.)Tj -/TT13 1 Tf --2.6675 -2.4389 TD -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -10.2017 0 TD -[( )-23281.7([Window Property])]TJ --7.535 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 145.1244 360.89 Tm -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 247.141 360.89 Tm -0.2011 Tw -[( of a window is called \(if it exists\) when a button event)]TJ --13.4601 -1.3333 TD -0.0489 Tw -[(occurs in the window and a copy key is down. If no )]TJ -/TT10 1 Tf -10 0 0 10 341.6907 348.89 Tm -0 Tw -(COPYBUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 443.7073 348.89 Tm -0.0489 Tw -[( exists, the)]TJ -/TT10 1 Tf -10 0 0 10 126 336.89 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 204.0127 336.89 Tm -( is called.)Tj -/TT13 1 Tf --11.3347 -2.4389 TD -(COPYINSERTFN)Tj -/TT8 1 Tf -7.2012 0 TD -[( )-26282.2([Window Property])]TJ --4.5345 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.4844 298.29 Tm -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 216.4962 298.29 Tm -0.13 Tw -[( of the "destination" window is called by )]TJ -/TT10 1 Tf -10 0 0 10 388.7922 298.29 Tm -0 Tw -(COPYINSERT)Tj -/TT8 1 Tf -9 0 0 9 448.8019 298.29 Tm -0.13 Tw -[( to insert)]TJ --35.8669 -1.3278 TD -0.0622 Tw -[(something into the destination window. It is called with two arguments: the object to be)]TJ -0 -1.2222 TD -0.0656 Tw -[(inserted and the destination window. The object to be inserted can be a character string,)]TJ -0 -1.2278 TD -0 Tw -(an )Tj -/TT10 1 Tf -10 0 0 10 139.9983 264.29 Tm -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 188.0061 264.29 Tm -0.2233 Tw -(, or a list of )Tj -/TT10 1 Tf -10 0 0 10 244.4228 264.29 Tm -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -9 0 0 9 292.4306 264.29 Tm -0.2233 Tw -[(s and character strings. As a convention, the)]TJ -/TT10 1 Tf -10 0 0 10 126 252.29 Tm -0 Tw -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 198.0117 252.29 Tm -0.0744 Tw -[( should call )]TJ -/TT10 1 Tf -10 0 0 10 248.0144 252.29 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 296.0222 252.29 Tm -0.0744 Tw -[( if the object to be inserted insert is a character)]TJ --18.8914 -1.3278 TD -0 Tw -(string.)Tj -/TT10 1 Tf -10 0 0 10 102 218.06 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 218.06 Tm -(COPYINSERT)Tj -/F3 1 Tf -10 0 0 10 162.0098 218.06 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 218.06 Tm -(IMAGEOBJ)Tj -/TT10 1 Tf -10 0 0 10 208.0868 218.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 214.0878 218.06 Tm -[( )-25115.8([Function])]TJ -/TT10 1 Tf -10 0 0 10 126 201.06 Tm -(COPYINSERT)Tj -/TT8 1 Tf -9 0 0 9 186.0097 201.06 Tm -0.1944 Tw -[( inserts )]TJ -/TT15 1 Tf -3.8098 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.1944 Tw -[( into the window that currently has the )]TJ -/TT10 1 Tf -10 0 0 10 435.2641 201.06 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 453.2671 201.06 Tm -0.1944 Tw -[(. If the)]TJ --36.363 -1.3333 TD -0 Tw -(current )Tj -/TT10 1 Tf -10 0 0 10 158.2971 189.06 Tm -(TTY)Tj -/TT8 1 Tf -9 0 0 9 176.3 189.06 Tm -0.1144 Tw -[( window has a )]TJ -/TT10 1 Tf -10 0 0 10 240.7525 189.06 Tm -0 Tw -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 312.7643 189.06 Tm -0.1144 Tw -(, it is called, passing it )Tj -/TT15 1 Tf -10.6295 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.1144 Tw -[( and the)]TJ --36.1819 -1.3278 TD -0 Tw -(window as arguments.)Tj -0 -2.0056 TD -0.1056 Tw -(If no )Tj -/TT10 1 Tf -10 0 0 10 148.5806 159.06 Tm -0 Tw -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 220.5924 159.06 Tm -0.1056 Tw -[( exists and if )]TJ -/TT15 1 Tf -6.1991 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.1056 Tw -[( is an image object, )]TJ -/TT10 1 Tf -10 0 0 10 401.6321 159.06 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 449.64 159.06 Tm -0.1056 Tw -[( is called)]TJ --35.96 -1.3333 TD -0.0744 Tw -(on the result of calling its )Tj -/TT10 1 Tf -10 0 0 10 232.6938 147.06 Tm -0 Tw -(PREPRINTFN)Tj -/TT8 1 Tf -9 0 0 9 292.7036 147.06 Tm -0.0744 Tw -[( on it. If )]TJ -/TT15 1 Tf -4.2873 0 TD -0 Tw -(IMAGEOBJ)Tj -/TT8 1 Tf -4.8008 0 TD -0.0744 Tw -[( is not an image object, it is)]TJ --27.6107 -1.3333 TD -0.0156 Tw -(simply passed to )Tj -/TT10 1 Tf -10 0 0 10 195.7789 135.06 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 243.7867 135.06 Tm -0.0156 Tw -[( . In this case, )]TJ -/TT10 1 Tf -10 0 0 10 302.1247 135.06 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 350.1325 135.06 Tm -0.0156 Tw -[( will call )]TJ -/TT10 1 Tf -10 0 0 10 386.3987 135.06 Tm -0 Tw -(PRIN2)Tj -/TT8 1 Tf -9 0 0 9 416.4036 135.06 Tm -0.0155 Tw -[( with a read table)]TJ --32.2671 -1.3333 TD -0.0944 Tw -(taken from the process associated with the )Tj -/TT10 1 Tf -10 0 0 10 303.0818 123.06 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 321.0847 123.06 Tm -0.0944 Tw -[( window. A window that wishes to use)]TJ -/TT10 1 Tf -10 0 0 10 126 111.06 Tm -0 Tw -(PRIN1)Tj -/TT8 1 Tf -9 0 0 9 156.0049 111.06 Tm -( or a different read table must provide its own )Tj -/TT10 1 Tf -10 0 0 10 341.6826 111.06 Tm -(COPYINSERTFN)Tj -/TT8 1 Tf -9 0 0 9 413.6943 111.06 Tm -( to do this.)Tj -ET -endstream -endobj -155 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -157 0 obj -<< -/Length 5610 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-40)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Implementation of Image Streams)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -534.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -0.0156 Tw -(Interlisp does all image creation through a set of functions and data structures for device-independent)Tj -0 -1.2278 TD -0.0456 Tw -(graphics, known popularly as )Tj -/TT10 1 Tf -10 0 0 10 248.7005 532.49 Tm -0 Tw -(DIG)Tj -/TT8 1 Tf -9 0 0 9 266.7035 532.49 Tm -0.0456 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 274.2735 532.49 Tm -0 Tw -(DIG)Tj -/TT8 1 Tf -9 0 0 9 292.2764 532.49 Tm -0.0456 Tw -[( is implemented through the use of a special type of stream,)]TJ --18.4752 -1.3278 TD -0 Tw -(known as an image stream.)Tj -0 -2.8944 TD -0.1989 Tw -(An image stream, by convention, is any stream that has its )Tj -/TT10 1 Tf -10 0 0 10 379.8614 494.49 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 427.8692 494.49 Tm -0.1989 Tw -[( field \(described in detail)]TJ --33.541 -1.3278 TD -0.2355 Tw -[(below\) set to a vector of meaningful graphical operations. Using image streams, you can write)]TJ -0 -1.2222 TD -0.0989 Tw -(programs that draw and print on an output stream without regard to the underlying device, be it a)Tj -T* -0 Tw -(window, a disk, or a printer.)Tj -0 -2.8889 TD -0.53 Tw -(To define a new image stream type, it is necessary to put information on the variable)Tj -/TT10 1 Tf -10 0 0 10 126 422.26 Tm -0 Tw -(IMAGESTREAMTYPES)Tj -/F2 1 Tf -9.6016 0 TD -(:)Tj -/TT13 1 Tf -9 0 0 9 150 400.31 Tm -(IMAGESTREAMTYPES)Tj -/TT8 1 Tf -9.6016 0 TD -[( )-28166.2([Variable])]TJ --6.9349 -1.8444 TD -0.0022 Tw -(This variable describes how to create a stream for a given image stream type. The value of)Tj -/TT10 1 Tf -10 0 0 10 174 372.66 Tm -0 Tw -(IMAGESTREAMTYPES)Tj -/TT8 1 Tf -9 0 0 9 270.0156 372.66 Tm -0.2244 Tw -[( is an association list, indexed by the image stream type \(e.g.,)]TJ -/TT10 1 Tf -10 0 0 10 174 360.66 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 216.0068 360.66 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 220.5068 360.66 Tm -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 280.5166 360.66 Tm -(, etc.\). The format of a single association list item is:)Tj -/TT10 1 Tf -10 0 0 10 246 343.66 Tm -(\(IMAGETYPE)Tj -0 -1 TD -( \(OPENSTREAM OPENSTREAMFN\))Tj -T* -( \(FONTCREATE FONTCREATEFN\))Tj -T* -( \(FONTSAVAILABLE FONTSAVAILABLEFN\)\))Tj --7.2 -1.7 TD -(OPENSTREAMFN)Tj -/TT8 1 Tf -9 0 0 9 246.0117 296.66 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 253.7817 296.66 Tm -(FONTCREATEFN)Tj -/TT8 1 Tf -9 0 0 9 325.7934 296.66 Tm -0.3633 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 354.3192 296.66 Tm -0 Tw -(FONTSAVAILABLEFN)Tj -/TT8 1 Tf -9 0 0 9 450.3349 296.66 Tm -0.3633 Tw -[( are "image stream)]TJ --30.7039 -1.3278 TD -0.5867 Tw -(methods," device-dependent functions used to implement generic image stream)Tj -0 -1.2222 TD -0 Tw -(operations. For Interpress image streams, the association list entry is:)Tj -/TT10 1 Tf -10 0 0 10 246 257.66 Tm -(\(INTERPRESS)Tj -0 -1 TD -( \(OPENSTREAM OPENIPSTREAM\))Tj -T* -( \(FONTCREATE \\CREATEINTERPRESSFONT\))Tj -T* -( \(FONTSAVAILABLE \\SEARCHINTERPRESSFONTS\)\))Tj --9.6 -2.123 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 206.43 Tm -(OPENSTREAMFN)Tj -/F3 1 Tf -10 0 0 10 220.8115 206.43 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 206.43 Tm -(FILE OPTIONS)Tj -/TT10 1 Tf -10 0 0 10 288.4921 206.43 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 294.493 206.43 Tm -[( )-15594.1([Image Stream Method])]TJ -/TT15 1 Tf --13.3881 -1.8889 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1933 Tw -[( is the file name as it was passed to )]TJ -/TT10 1 Tf -10 0 0 10 353.8482 189.43 Tm -0 Tw -(OPENIMAGESTREAM)Tj -/TT8 1 Tf -9 0 0 9 443.8629 189.43 Tm -0.1933 Tw -(, and )Tj -/TT15 1 Tf -2.8295 0 TD -0 Tw -(OPTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1933 Tw -[( is the)]TJ -/TT15 1 Tf --37.015 -1.3333 TD -0 Tw -(OPTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1011 Tw -[( property list passed to )]TJ -/TT10 1 Tf -10 0 0 10 309.8849 177.43 Tm -0 Tw -(OPENIMAGESTREAM)Tj -/TT8 1 Tf -9 0 0 9 399.8996 177.43 Tm -0.1011 Tw -[(. The result must be a stream of)]TJ --25.1 -1.3278 TD -0 Tw -(the appropriate image type.)Tj -/TT10 1 Tf -10 0 0 10 150 143.2 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 143.2 Tm -(FONTCREATEFN)Tj -/F3 1 Tf -10 0 0 10 220.8115 143.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 143.2 Tm -(FAMILY SIZE FACE ROTATION DEVICE)Tj -/TT10 1 Tf -10 0 0 10 396.5096 143.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 402.5106 143.2 Tm -[( )-3592.2([Image Stream Method])]TJ -/TT15 1 Tf --25.3901 -1.8889 TD -(FAMILY)Tj -/TT8 1 Tf -3.6006 0 TD -0.0556 Tw -[( is the family name for the font, e.g., )]TJ -/TT10 1 Tf -10 0 0 10 356.105 126.2 Tm -0 Tw -(MODERN)Tj -/TT8 1 Tf -9 0 0 9 392.1108 126.2 Tm -0.0556 Tw -(. )Tj -/TT15 1 Tf -0.8611 0 TD -0 Tw -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0556 Tw -[( is the body size of the font,)]TJ --27.496 -1.3278 TD -0.3389 Tw -(in printers points. )Tj -/TT15 1 Tf -10.0196 0 TD -0 Tw -(FACE)Tj -/TT8 1 Tf -2.4004 0 TD -0.3389 Tw -[( is a three-element list describing the weight, slope, and)]TJ --12.42 -1.2944 TD -0.0367 Tw -(expansion of the face desired, e.g., \()Tj -/TT10 1 Tf -10 0 0 10 317.2861 102.6 Tm -0.089 Tw -(MEDIUM ITALIC EXPANDED)Tj -/TT8 1 Tf -9 0 0 9 451.0876 102.6 Tm -0.0367 Tw -(\). )Tj -/TT15 1 Tf -1.1563 0 TD -0 Tw -(ROTATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0367 Tw -[( is how)]TJ --36.7446 -1.3278 TD -0.2644 Tw -[(much the font is to be rotated from the normal orientation, in minutes of arc. For)]TJ -0 -1.2222 TD -0.2767 Tw -[(example, to print a landscape page, fonts have the rotation 5400 \(90 degrees\). The)]TJ -0 -1.2278 TD -0 Tw -(functions result must be a )Tj -/TT10 1 Tf -10 0 0 10 281.5034 68.6 Tm -(FONTDESCRIPTOR)Tj -/TT8 1 Tf -9 0 0 9 365.5171 68.6 Tm -( with the fields filled in appropriately.)Tj -ET -endstream -endobj -158 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -160 0 obj -<< -/Length 8178 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-41)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(FONTSAVAILABLEFN)Tj -/F3 1 Tf -10 0 0 10 194.415 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 197.285 568.26 Tm -(FAMILY SIZE FACE ROTATION DEVICE)Tj -/TT10 1 Tf -10 0 0 10 370.1132 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 376.1141 568.26 Tm -[( )-1191.8([Image Stream Method])]TJ --27.7905 -1.8833 TD -0.2544 Tw -(This function returns a list of all fonts agreeing with the )Tj -/TT15 1 Tf -27.6324 0 TD -0 Tw -(FAMILY)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT15 1 Tf -0.7544 0 TD -(SIZE)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT15 1 Tf -0.7544 0 TD -(FACE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2544 Tw -(, and)Tj -/TT15 1 Tf --37.5426 -1.2944 TD -0 Tw -(ROTATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0167 Tw -[( arguments; any of them may be wild-carded \(i.e., equal to )]TJ -/TT10 1 Tf -10 0 0 10 405.4327 539.66 Tm -0 Tw -(*)Tj -/TT8 1 Tf -9 0 0 9 411.4337 539.66 Tm -0.0167 Tw -(, which means any)Tj --31.7149 -1.3278 TD -0.0689 Tw -[(value is acceptable\). Each element of the list should be a quintuple of the form \()]TJ -/TT15 1 Tf -36.3903 0 TD -0 Tw -(FAMILY)Tj --36.3903 -1.2889 TD -(SIZE FACE ROTATION DEVICE)Tj -/TT8 1 Tf -15.0024 0 TD -(\).)Tj --15.0024 -2.0722 TD -0.1 Tw -(Where the function looks is an implementation decision: the )Tj -/TT10 1 Tf -10 0 0 10 375.3334 497.46 Tm -0 Tw -(FONTSAVAILABLEFN)Tj -/TT8 1 Tf -9 0 0 9 471.349 497.46 Tm -0.1 Tw -[( for)]TJ --38.3721 -1.3333 TD -0.0467 Tw -(the display device looks at )Tj -/TT10 1 Tf -10 0 0 10 235.8187 485.46 Tm -0 Tw -(DISPLAYFONTDIRECTORIES)Tj -/TT8 1 Tf -9 0 0 9 367.8402 485.46 Tm -0.0467 Tw -(, the Interpress code looks on)Tj -/TT10 1 Tf -10 0 0 10 126 473.46 Tm -0 Tw -(INTERPRESSFONTDIRECTORIES)Tj -/TT8 1 Tf -9 0 0 9 276.0244 473.46 Tm -0.1022 Tw -(, and implementors of new devices should feel free)Tj --16.6694 -1.3278 TD -0 Tw -(to introduce new search path variables.)Tj --5.3333 -2.8944 TD -0.0589 Tw -(As indicated above, image streams use a field that no other stream uses: )Tj -/TT10 1 Tf -10 0 0 10 372.9515 435.46 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 420.9594 435.46 Tm -0.0589 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 428.7693 435.46 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 476.7772 435.46 Tm -0.0589 Tw -[( is)]TJ --44.3086 -1.3333 TD -0.0189 Tw -(an instance of the )Tj -/TT10 1 Tf -10 0 0 10 150.4647 423.46 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 198.4725 423.46 Tm -0.0189 Tw -[( data type and contains a vector of the streams graphical methods. The)]TJ --13.3858 -1.3333 TD -0.1811 Tw -(methods contained in the )Tj -/TT10 1 Tf -10 0 0 10 187.7651 411.46 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 235.7729 411.46 Tm -0.1811 Tw -[( object can make arbitrary use of the streams )]TJ -/TT10 1 Tf -10 0 0 10 431.9547 411.46 Tm -0 Tw -(IMAGEDATA)Tj -/TT8 1 Tf -9 0 0 9 78 399.51 Tm -(field, which is provided for their use, and may contain any data needed.)Tj -/TT13 1 Tf -2.6667 -2.3389 TD -(IMAGETYPE)Tj -/TT8 1 Tf -5.4009 0 TD -[( )-28288([)]TJ -/TT10 1 Tf -10 0 0 10 412.6971 378.46 Tm -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 460.7049 378.46 Tm -( Field])Tj --37.1894 -1.8889 TD -0.0433 Tw -[(Value is the name of an image type. Monochrome display streams have an )]TJ -/TT10 1 Tf -10 0 0 10 431.9185 361.46 Tm -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -9 0 0 9 126 349.46 Tm -(of )Tj -/TT10 1 Tf -10 0 0 10 139.6601 349.46 Tm -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 181.667 349.46 Tm -0.3889 Tw -(; color display streams are identified as \()Tj -/TT10 1 Tf -10 0 0 10 366.8267 349.46 Tm -0.933 Tw -(COLOR DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 454.1693 349.46 Tm -0.3889 Tw -[(\). The)]TJ -/TT10 1 Tf -10 0 0 10 126 337.46 Tm -0 Tw -(IMAGETYPE)Tj -/TT8 1 Tf -9 0 0 9 180.0088 337.46 Tm -( field is informational and can be set to anything you choose.)Tj -/TT13 1 Tf --8.6676 -2.4444 TD -(IMFONTCREATE)Tj -/TT8 1 Tf -7.2012 0 TD -[( )-26487.7([)]TJ -/TT10 1 Tf -10 0 0 10 412.6971 315.46 Tm -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 460.7049 315.46 Tm -( Field])Tj --37.1894 -1.8889 TD -(Value is the device name to pass to )Tj -/TT10 1 Tf -10 0 0 10 267.3237 298.46 Tm -(FONTCREATE)Tj -/TT8 1 Tf -9 0 0 9 327.3335 298.46 Tm -( when fonts are created for the stream.)Tj --22.3704 -2.1056 TD -0.2089 Tw -(The remaining fields are all image stream methods, whose value should be a device-)Tj -0 -1.2222 TD -0.0378 Tw -[(dependent function that implements the generic operation. Most methods are called by a)]TJ -0 -1.2278 TD -0.0933 Tw -(similarly-named function, e.g. the function )Tj -/TT10 1 Tf -10 0 0 10 302.5139 257.46 Tm -0 Tw -(DRAWLINE)Tj -/TT8 1 Tf -9 0 0 9 350.5218 257.46 Tm -0.0933 Tw -[( calls the )]TJ -/TT10 1 Tf -10 0 0 10 389.824 257.46 Tm -0 Tw -(IMDRAWLINE)Tj -/TT8 1 Tf -9 0 0 9 449.8337 257.46 Tm -0.0933 Tw -[( method.)]TJ --35.9815 -1.3278 TD -0.0022 Tw -(All coordinates that refer to points in a display devices space are measured in the devices)Tj -0 -1.2278 TD -0.1178 Tw -[(units. \(The )]TJ -/TT10 1 Tf -10 0 0 10 176.2762 234.46 Tm -0 Tw -(IMSCALE)Tj -/TT8 1 Tf -9 0 0 9 218.283 234.46 Tm -0.1178 Tw -[( method provides access to a devices scale.\) For arguments that)]TJ --10.2537 -1.3333 TD -0.1067 Tw -(have defaults \(such as the )Tj -/TT10 1 Tf -10 0 0 10 235.5568 222.46 Tm -0 Tw -(BRUSH)Tj -/TT8 1 Tf -9 0 0 9 265.5617 222.46 Tm -0.1067 Tw -[( argument of )]TJ -/TT10 1 Tf -10 0 0 10 322.0198 222.46 Tm -0 Tw -(DRAWCURVE)Tj -/TT8 1 Tf -9 0 0 9 376.0286 222.46 Tm -0.1067 Tw -(\), the default is substituted)Tj --27.781 -1.3333 TD -0.08 Tw -(for the )Tj -/TT10 1 Tf -10 0 0 10 155.8902 210.46 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 173.8931 210.46 Tm -0.08 Tw -[( argument before it is passed to the image stream method. Therefore, image)]TJ --5.3215 -1.3278 TD -0 Tw -(stream methods do not have to handle defaults.)Tj -/TT10 1 Tf -10 0 0 10 102 176.23 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 176.23 Tm -(IMCLOSEFN)Tj -/F3 1 Tf -10 0 0 10 156.6089 176.23 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.4789 176.23 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 191.8842 176.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 197.8851 176.23 Tm -[( )-20995([Image Stream Method])]TJ --7.9872 -1.8889 TD -0.0856 Tw -(Called before a stream is closed with )Tj -/TT10 1 Tf -10 0 0 10 279.578 159.23 Tm -0 Tw -(CLOSEF)Tj -/TT8 1 Tf -9 0 0 9 315.5838 159.23 Tm -0.0856 Tw -[(. This method should flush buffers, write)]TJ --21.0649 -1.3278 TD -0 Tw -(header or trailer information, etc.)Tj -/TT10 1 Tf -10 0 0 10 102 125 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 125 Tm -(IMDRAWLINE)Tj -/F3 1 Tf -10 0 0 10 162.0098 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.8798 125 Tm -(STREAM)Tj -/F1 1 Tf -10 0 0 10 197.285 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 200.065 125 Tm -(X)Tj -0.5983 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 210.85 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 213.63 125 Tm -(Y)Tj -0.6 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 224.43 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 227.21 125 Tm -(X)Tj -0.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 238.01 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 240.79 125 Tm -(Y)Tj -0.6 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 251.59 125 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 254.37 125 Tm -(WIDTH OPERATION COLOR DASHING)Tj -/TT10 1 Tf -10 0 0 10 410.9955 125 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 416.9965 125 Tm -[( )-721.5([Image Stream)]TJ --34.3329 -1.4 TD -(Method])Tj -2 -1.92 TD -(Draws a line of width )Tj -/TT15 1 Tf -9.8428 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -( from \()Tj -/TT15 1 Tf -2.9897 0 TD -(X)Tj -0.6037 -0.3333 TD -(1)Tj -/F1 1 Tf -10 0 0 10 279.33 95.12 Tm -(, )Tj -/TT15 1 Tf -9 0 0 9 284.89 95.12 Tm -(Y)Tj -0.6 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\) to \()Tj -/TT15 1 Tf -2.0381 0 TD -(X)Tj -0.5997 -0.3333 TD -(2)Tj -/F1 1 Tf -10 0 0 10 324.83 95.12 Tm -(, )Tj -/TT15 1 Tf -9 0 0 9 330.39 95.12 Tm -(Y)Tj -0.6 -0.3333 TD -(2)Tj -/TT8 1 Tf -0.6 0.3333 TD -(\). See )Tj -/TT10 1 Tf -10 0 0 10 366.5332 95.12 Tm -(DRAWLINE)Tj -/TT8 1 Tf -9 0 0 9 414.541 95.12 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 69.24 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 69.24 Tm -(IMDRAWCURVE)Tj -/F3 1 Tf -10 0 0 10 167.4106 69.24 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.2806 69.24 Tm -(STREAM KNOTS CLOSED BRUSH DASHING)Tj -/TT10 1 Tf -10 0 0 10 348.5096 69.24 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 354.5106 69.24 Tm -[( )-3592.2([Image Stream Method])]TJ --25.3901 -1.8889 TD -(Draws a curve through )Tj -/TT15 1 Tf -10.5029 0 TD -(KNOTS)Tj -/TT8 1 Tf -3.0005 0 TD -(. See )Tj -/TT10 1 Tf -10 0 0 10 269.877 52.24 Tm -(DRAWCURVE)Tj -/TT8 1 Tf -9 0 0 9 323.8857 52.24 Tm -(.)Tj -ET -endstream -endobj -161 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -164 0 obj -<< -/Length 7855 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-42)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 568.26 Tm -(IMDRAWCIRCLE)Tj -/F3 1 Tf -10 0 0 10 220.8115 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 568.26 Tm -(STREAM CENTERX CENTERY RADIUS BRUSH DASHING)Tj -/TT10 1 Tf -10 0 0 10 455.9193 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 461.9203 568.26 Tm -[( )-1063.3([Image Stream)]TJ --33.9911 -1.1056 TD -(Method])Tj -2 -1.7833 TD -(Draws a circle of radius )Tj -/TT15 1 Tf -10.7231 0 TD -(RADIUS)Tj -/TT8 1 Tf -3.6006 0 TD -( around \()Tj -/TT15 1 Tf -4.0698 0 TD -(CENTERX, CENTERY)Tj -/TT8 1 Tf -9.6016 0 TD -(\). See )Tj -/TT10 1 Tf -10 0 0 10 451.2993 542.26 Tm -(DRAWCIRCLE)Tj -/TT8 1 Tf -9 0 0 9 511.3091 542.26 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 519.03 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 519.03 Tm -(IMDRAWELLIPSE)Tj -/F3 1 Tf -10 0 0 10 226.2124 519.03 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 230.6424 519.03 Tm -0.3267 Tw -(STREAM CENTERX CENTERY SEMIMINORRADIUS SEMIMAJORRADIUS)Tj --8.2936 -1.1111 TD -(ORIENTATION BRUSH DASHING)Tj -/TT10 1 Tf -10 0 0 10 291 509.03 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 297.0009 509.03 Tm -[( )-136.7( )-15178.8([Image Stream Method])]TJ --13.6668 -1.8889 TD -(Draws an ellipse around \()Tj -/TT15 1 Tf -11.4346 0 TD -(CENTERX, CENTERY)Tj -/TT8 1 Tf -9.6016 0 TD -(\). See )Tj -/TT10 1 Tf -10 0 0 10 388.6685 492.03 Tm -(DRAWELLIPSE)Tj -/TT8 1 Tf -9 0 0 9 454.6792 492.03 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 468.8 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 468.8 Tm -(IMFILLPOLYGON)Tj -/F3 1 Tf -10 0 0 10 226.2124 468.8 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.0824 468.8 Tm -(STREAM POINTS TEXTURE)Tj -/TT10 1 Tf -10 0 0 10 342.5009 468.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 348.5018 468.8 Tm -[( )-9593.1([Image Stream Method])]TJ --19.3891 -1.8833 TD -0.0878 Tw -(Fills in the polygon outlined by )Tj -/TT15 1 Tf -14.6565 0 TD -0 Tw -(POINTS)Tj -/TT8 1 Tf -3.6006 0 TD -0.0878 Tw -[( on the image stream )]TJ -/TT15 1 Tf -9.9198 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0878 Tw -(, using the texture)Tj -/TT15 1 Tf --31.7776 -1.2944 TD -0 Tw -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -(. See )Tj -/TT10 1 Tf -10 0 0 10 234.1523 440.2 Tm -(FILLPOLYGON)Tj -/TT8 1 Tf -9 0 0 9 300.1631 440.2 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 416.97 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 416.97 Tm -(IMFILLCIRCLE)Tj -/F3 1 Tf -10 0 0 10 220.8115 416.97 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.6815 416.97 Tm -(STREAM CENTERX CENTERY RADIUS TEXTURE)Tj -/TT10 1 Tf -10 0 0 10 423.514 416.97 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 429.515 416.97 Tm -[( )-591.7([Image Stream Method])]TJ --28.3906 -1.8833 TD -0.39 Tw -(Draws a circle filled with texture )Tj -/TT15 1 Tf -17.0641 0 TD -0 Tw -(TEXTURE)Tj -/TT8 1 Tf -4.2007 0 TD -0.39 Tw -[( around \()]TJ -/TT15 1 Tf -4.8498 0 TD -0.9356 Tw -(CENTERX, CENTERY)Tj -/TT8 1 Tf -10.5371 0 TD -0.39 Tw -[(\). See)]TJ -/TT10 1 Tf -10 0 0 10 174 388.37 Tm -0 Tw -(FILLCIRCLE)Tj -/TT8 1 Tf -9 0 0 9 234.0097 388.37 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 365.14 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 365.14 Tm -(IMBLTSHADE)Tj -/F3 1 Tf -10 0 0 10 210.0098 365.14 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 216.3398 365.14 Tm -0.7244 Tw -(TEXTURE STREAM DESTINATIONLEFT DESTINATIONBOTTOM WIDTH)Tj --6.7044 -1.1111 TD -(HEIGHT OPERATION CLIPPINGREGION)Tj -/TT10 1 Tf -10 0 0 10 323.4 355.14 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 329.4009 355.14 Tm -[( )-302.2( )-11413.2([Image Stream Method])]TJ --17.2668 -1.8889 TD -0.4567 Tw -(The texture-source case of )Tj -/TT10 1 Tf -10 0 0 10 296.168 338.14 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 332.1739 338.14 Tm -0.4567 Tw -(. )Tj -/TT15 1 Tf -1.6633 0 TD -0 Tw -(DESTINATIONLEFT)Tj -/TT8 1 Tf -9.0015 0 TD -(, )Tj -/TT15 1 Tf -0.9567 0 TD -(DESTINATIONBOTTOM,)Tj --29.1963 -1.3278 TD -0.1189 Tw -(WIDTH, HEIGHT)Tj -/TT8 1 Tf -7.9202 0 TD -0.05 Tw -(, and )Tj -/TT15 1 Tf -2.5429 0 TD -0 Tw -(CLIPPINGREGION)Tj -/TT8 1 Tf -8.4014 0 TD -0.05 Tw -[( are measured in )]TJ -/TT15 1 Tf -7.8206 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -[(s units. This method)]TJ --30.2856 -1.2944 TD -0 Tw -(is invoked by the functions )Tj -/TT10 1 Tf -10 0 0 10 283.9995 314.54 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 320.0053 314.54 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 339.7412 314.54 Tm -(BLTSHADE)Tj -/TT8 1 Tf -9 0 0 9 387.749 314.54 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 291.31 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 291.31 Tm -(IMBITBLT)Tj -/F2 1 Tf -10 0 0 10 199.208 291.31 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 203.518 291.31 Tm -0.33 Tw -(SOURCEBITMAP SOURCELEFT SOURCEBOTTOM STREAM DESTINATIONLEFT)Tj --5.2798 -1.0389 TD -1.32 Tw -(DESTINATIONBOTTOM WIDTH HEIGHT SOURCETYPE OPERATION TEXTURE)Tj -0 -1.0722 TD -(CLIPPINGREGION CLIPPEDSOURCELEFT CLIPPEDSOURCEBOTTOM SCALE)Tj -/TT10 1 Tf -10 0 0 10 469.2 272.31 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 475.201 272.31 Tm -0.55 Tw -[( )-1845.5([Image)]TJ --35.4668 -1.1056 TD -0 Tw -(Stream Method])Tj -2 -1.7833 TD -0.4033 Tw -(Contains the bit-map-source cases of )Tj -/TT10 1 Tf -10 0 0 10 340.2677 246.31 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 376.2735 246.31 Tm -0.4033 Tw -(. )Tj -/TT15 1 Tf -1.5567 0 TD -0.9678 Tw -(SOURCELEFT, SOURCEBOTTOM,)Tj --24.0315 -1.3278 TD -0.1922 Tw -(CLIPPEDSOURCELEFT, CLIPPEDSOURCEBOTTOM, WIDTH)Tj -/TT8 1 Tf -27.3888 0 TD -0.08 Tw -(, and )Tj -/TT15 1 Tf -2.6029 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( are measured)]TJ --33.5923 -1.2889 TD -0.1056 Tw -(in pixels; )Tj -/TT15 1 Tf -4.4362 0 TD -0 Tw -(DESTINATIONLEFT)Tj -/TT8 1 Tf -9.0015 0 TD -(, )Tj -/TT15 1 Tf -0.6056 0 TD -(DESTINATIONBOTTOM)Tj -/TT8 1 Tf -10.2017 0 TD -0.1056 Tw -(, and )Tj -/TT15 1 Tf -2.654 0 TD -0 Tw -(CLIPPINGREGION)Tj -/TT8 1 Tf -8.4014 0 TD -0.1056 Tw -[( are in the)]TJ --35.3002 -1.2889 TD -0 Tw -(units of the destination stream.)Tj -/TT10 1 Tf -10 0 0 10 150 188.82 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 188.82 Tm -(IMSCALEDBITBLT)Tj -/TT4 1 Tf -10 0 0 10 231.6133 188.82 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 244.2716 188.82 Tm -2.1311 Tw -(SOURCEBITMAP SOURCELEFT SOURCEBOTTOM STREAM)Tj --9.808 -1.0389 TD -0.36 Tw -(DESTINATIONLEFT DESTINATIONBOTTOM WIDTH HEIGHT SOURCETYPE OPERATION)Tj -0 -1.0722 TD -[(TEXTURE CLIPPINGREGION CLIPPEDSOURCELEFT CLIPPEDSOURCEBOTTOM SCALE)]TJ -/TT10 1 Tf -10 0 0 10 517.7999 169.82 Tm -0 Tw -(\))Tj -/TT8 1 Tf -9 0 0 9 523.8009 169.82 Tm -0.15 Tc -( )Tj --40.8668 -1.1056 TD -0 Tc -([Image Stream Method])Tj -2 -1.7833 TD -0.0422 Tw -(A scaled version of )Tj -/TT10 1 Tf -10 0 0 10 253.7031 143.82 Tm -0 Tw -(IMBITBLT)Tj -/TT8 1 Tf -9 0 0 9 301.7109 143.82 Tm -0.0422 Tw -[(. Each pixel in )]TJ -/TT15 1 Tf -6.8991 0 TD -0 Tw -(SOURCEBITMAP)Tj -/TT8 1 Tf -7.2012 0 TD -0.0422 Tw -[( is replicated )]TJ -/TT15 1 Tf -6.0085 0 TD -0 Tw -(SCALE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0422 Tw -[( times)]TJ --37.2994 -1.3333 TD -0 Tw -(in the )Tj -/TT10 1 Tf -10 0 0 10 198.8423 131.82 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 204.8432 131.82 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 224.5791 131.82 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 230.58 131.82 Tm -( directions; currently, )Tj -/TT15 1 Tf -9.71 0 TD -(SCALE)Tj -/TT8 1 Tf -3.0005 0 TD -( must be an integer.)Tj -/TT10 1 Tf -10 0 0 10 150 108.59 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 108.59 Tm -(IMMOVETO)Tj -/F2 1 Tf -10 0 0 10 199.208 108.59 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 201.988 108.59 Tm -(STREAM X Y)Tj -/TT10 1 Tf -10 0 0 10 255.9968 108.59 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 261.9978 108.59 Tm -[( )-19204.7([Image Stream Method])]TJ --9.7775 -1.8889 TD -0.0711 Tw -(Moves to \()Tj -/TT15 1 Tf -4.8068 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -[(\). This method is invoked by the function )]TJ -/TT10 1 Tf -10 0 0 10 407.6835 91.59 Tm -0 Tw -(MOVETO)Tj -/TT8 1 Tf -9 0 0 9 443.6894 91.59 Tm -0.0711 Tw -[(. If )]TJ -/TT10 1 Tf -10 0 0 10 460.6387 91.59 Tm -0 Tw -(IMMOVETO)Tj -/TT8 1 Tf -9 0 0 9 508.6465 91.59 Tm -0.0711 Tw -[( is not)]TJ --37.1829 -1.3333 TD -0.0044 Tw -(supplied, a default method composed of calls to the )Tj -/TT10 1 Tf -10 0 0 10 382.1862 79.59 Tm -0 Tw -(IMXPOSITION)Tj -/TT8 1 Tf -9 0 0 9 448.1969 79.59 Tm -0.0009 Tc -0.0035 Tw -( and )Tj -/TT10 1 Tf -10 0 0 10 468.0128 79.59 Tm -0 Tc -0 Tw -(IMYPOSITION)Tj -/TT8 1 Tf -9 0 0 9 174 67.64 Tm -(methods is used.)Tj -ET -endstream -endobj -165 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -167 0 obj -<< -/Length 9117 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-43)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(IMSTRINGWIDTH)Tj -/F2 1 Tf -10 0 0 10 178.2124 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 180.9924 568.26 Tm -(STREAM STR RDTBL)Tj -/TT10 1 Tf -10 0 0 10 267.4065 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 273.4074 568.26 Tm -[( )-12603.6([Image Stream Method])]TJ --16.3786 -2.0256 TD -0.0444 Tw -(Returns the width of string )Tj -/F1 1 Tf -10 0 0 10 237.9028 550.03 Tm -0 Tw -(STR)Tj -/TT8 1 Tf -9 0 0 9 258.8328 550.03 Tm -0.0444 Tw -[( in )]TJ -/TT15 1 Tf -1.4619 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0444 Tw -(s units, using )Tj -/TT15 1 Tf -6.5171 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0444 Tw -[(s current font. This is)]TJ --29.9394 -1.2944 TD -0.5189 Tw -(envoked when )Tj -/TT10 1 Tf -10 0 0 10 196.4943 538.38 Tm -0 Tw -(STRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 262.505 538.38 Tm -0.5189 Tw -[( is passed a stream as its )]TJ -/TT10 1 Tf -10 0 0 10 393.9709 538.38 Tm -0 Tw -(FONT)Tj -/TT8 1 Tf -9 0 0 9 417.9748 538.38 Tm -0.5189 Tw -[( argument. If)]TJ -/TT10 1 Tf -10 0 0 10 126 526.38 Tm -0 Tw -(IMSTRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 204.0127 526.38 Tm -0.1144 Tw -[( is not supplied, it defaults to calling )]TJ -/TT10 1 Tf -10 0 0 10 359.2321 526.38 Tm -0 Tw -(STRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 425.2429 526.38 Tm -0.1144 Tw -[( on the default)]TJ --33.2492 -1.3278 TD -0 Tw -(font of )Tj -/TT15 1 Tf -3.166 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 491.55 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 491.55 Tm -(IMCHARWIDTH)Tj -/F2 1 Tf -10 0 0 10 167.4106 491.55 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.1906 491.55 Tm -(STREAM CHARCODE)Tj -/TT10 1 Tf -10 0 0 10 251.2038 491.55 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 257.2048 491.55 Tm -[( )-14403.9([Image Stream Method])]TJ --14.5783 -1.8833 TD -0.0056 Tw -(Returns the width of character )Tj -/TT15 1 Tf -13.7299 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0056 Tw -[( in )]TJ -/TT15 1 Tf -1.3842 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0056 Tw -(s units, using )Tj -/TT15 1 Tf -6.4005 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0056 Tw -(s current font.)Tj --33.5165 -1.2944 TD -0.2922 Tw -(This is invoked when )Tj -/TT10 1 Tf -10 0 0 10 224.103 462.95 Tm -0 Tw -(CHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 278.1118 462.95 Tm -0.2922 Tw -[( is passed a stream as its )]TJ -/TT10 1 Tf -10 0 0 10 400.1777 462.95 Tm -0 Tw -(FONT)Tj -/TT8 1 Tf -9 0 0 9 424.1816 462.95 Tm -0.2922 Tw -[( argument. If)]TJ -/TT10 1 Tf -10 0 0 10 126 450.95 Tm -0 Tw -(IMCHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 192.0107 450.95 Tm -0.0589 Tw -[( is not supplied, it defaults to calling )]TJ -/TT10 1 Tf -10 0 0 10 343.2302 450.95 Tm -0 Tw -(CHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 397.239 450.95 Tm -0.0589 Tw -[( on the default font of)]TJ -/TT15 1 Tf --30.1377 -1.3278 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 416.12 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 416.12 Tm -(IMCHARWIDTHY)Tj -/F2 1 Tf -10 0 0 10 172.8115 416.12 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.5915 416.12 Tm -(STREAM CHARCODE)Tj -/TT10 1 Tf -10 0 0 10 256.6047 416.12 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.6057 416.12 Tm -[( )-13803.8([Image Stream Method])]TJ --15.1784 -1.8889 TD -0.1111 Tw -(Returns the )Tj -/TT10 1 Tf -10 0 0 10 176.2783 399.12 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 182.2793 399.12 Tm -0.1111 Tw -[( componant of the width of character )]TJ -/TT15 1 Tf -17.3915 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1111 Tw -[( in )]TJ -/TT15 1 Tf -1.5953 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1111 Tw -(s units, using)Tj -/TT15 1 Tf --33.6414 -1.3333 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1244 Tw -[(s current font. This is envoked when )]TJ -/TT10 1 Tf -10 0 0 10 319.3062 387.12 Tm -0 Tw -(CHARWIDTHY)Tj -/TT8 1 Tf -9 0 0 9 379.3159 387.12 Tm -0.1244 Tw -[( is passed a stream as its)]TJ -/TT10 1 Tf -10 0 0 10 126 375.12 Tm -0 Tw -(FONT)Tj -/TT8 1 Tf -9 0 0 9 150.0039 375.12 Tm -0.0078 Tw -[( argument. If )]TJ -/TT10 1 Tf -10 0 0 10 206.4812 375.12 Tm -0 Tw -(IMCHARWIDTHY)Tj -/TT8 1 Tf -9 0 0 9 278.4929 375.12 Tm -0.0078 Tw -[( is not supplied, it defaults to calling )]TJ -/TT10 1 Tf -10 0 0 10 426.0323 375.12 Tm -0 Tw -(CHARWIDTHY)Tj -/TT8 1 Tf -9 0 0 9 126 363.17 Tm -(on the default font of )Tj -/TT15 1 Tf -9.5742 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 340.29 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 340.29 Tm -(IMBITMAPSIZE)Tj -/F2 1 Tf -10 0 0 10 172.8115 340.29 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 175.5915 340.29 Tm -(STREAM BITMAP DIMENSION)Tj -/TT10 1 Tf -10 0 0 10 299.8117 340.29 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 305.8127 340.29 Tm -[( )-9003([Image Stream Method])]TJ --19.9792 -1.8889 TD -0.1678 Tw -(Returns the size that )Tj -/TT15 1 Tf -9.9636 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -[( will be when )]TJ -/TT10 1 Tf -10 0 0 10 310.0644 323.29 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 346.0702 323.29 Tm -0.1678 Tw -(ed to )Tj -/TT15 1 Tf -2.7975 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -(, in )Tj -/TT15 1 Tf -1.9586 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1678 Tw -(s units.)Tj -/TT15 1 Tf --36.4095 -1.3333 TD -0 Tw -(DIMENSION)Tj -/TT8 1 Tf -5.4009 0 TD -0.23 Tw -[( can be one of )]TJ -/TT15 1 Tf -7.4439 0 TD -0.5511 Tw -(WIDTH, HEIGHT)Tj -/TT8 1 Tf -8.3524 0 TD -0.23 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 336.1331 311.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 354.136 311.29 Tm -0.23 Tw -(, in which case the dotted pair)Tj --25.3484 -1.3278 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.333 0 TD -(WIDTH . HEIGHT)Tj -/TT8 1 Tf -8.4014 0 TD -(\) will be returned.)Tj --8.7344 -2.0722 TD -0.0022 Tw -(This is envoked by )Tj -/TT10 1 Tf -10 0 0 10 203.0458 280.69 Tm -0 Tw -(BITMAPIMAGESIZE)Tj -/TT8 1 Tf -9 0 0 9 293.0605 280.69 Tm -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT10 1 Tf -10 0 0 10 308.1497 280.69 Tm -0 Tc -0 Tw -(IMBITMAPSIZE)Tj -/TT8 1 Tf -9 0 0 9 380.1615 280.69 Tm -0.0001 Tc -0.0021 Tw -( is not supplied, it defaults)Tj --28.2402 -1.3278 TD -0 Tc -0 Tw -(to a method that multiplies the bitmap height and width by the scale of )Tj -/TT15 1 Tf -31.7212 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 245.86 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 245.86 Tm -(IMNEWPAGE)Tj -/F2 1 Tf -10 0 0 10 156.6089 245.86 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.3889 245.86 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 191.7942 245.86 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 197.7951 245.86 Tm -[( )-21005([Image Stream Method])]TJ --7.9772 -1.8889 TD -0.1889 Tw -[(Causes a new page to be started. The )]TJ -/TT10 1 Tf -10 0 0 10 292.5817 228.86 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 298.5827 228.86 Tm -0.1889 Tw -[( position is set to the left margin, and the )]TJ -/TT10 1 Tf -10 0 0 10 480.07 228.86 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 126 216.91 Tm -0.3967 Tw -[(position is set to the top margin plus the linefeed. If not supplied, defaults to)]TJ -/TT10 1 Tf -10 0 0 10 126 205.86 Tm -0 Tw -(\(\\OUTCHAR STREAM \(CHARCODE ^L\)\))Tj -/TT8 1 Tf -9 0 0 9 312.0302 205.86 Tm -(. Envoked by )Tj -/TT10 1 Tf -10 0 0 10 368.812 205.86 Tm -(DSPNEWPAGE)Tj -/TT8 1 Tf -9 0 0 9 428.8217 205.86 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 182.57 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 182.57 Tm -(IMTERPRI)Tj -/TT4 1 Tf -10 0 0 10 151.208 182.57 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 153.9863 182.57 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 186.3916 182.57 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 192.3926 182.57 Tm -[( )-21605.3([Image Stream Method])]TJ --7.377 -1.8889 TD -0.0111 Tw -[(Causes a new line to be started. The )]TJ -/TT10 1 Tf -10 0 0 10 273.7433 165.57 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 279.7442 165.57 Tm -0.0111 Tw -[( position is set to the left margin, and the )]TJ -/TT10 1 Tf -10 0 0 10 445.2315 165.57 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 451.2325 165.57 Tm -0.0111 Tw -[( position)]TJ --36.137 -1.3333 TD -0.03 Tw -(is set to the current )Tj -/TT10 1 Tf -10 0 0 10 205.4452 153.57 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 211.4462 153.57 Tm -0.03 Tw -[( position plus the linefeed. If not supplied, defaults to )]TJ -/TT10 1 Tf -10 0 0 10 431.9631 153.57 Tm -0 Tw -(\(\\OUTCHAR)Tj --30.5963 -1.2 TD -(STREAM \(CHARCODE EOL\)\))Tj -/TT8 1 Tf -9 0 0 9 258.0215 141.57 Tm -(. Envoked by )Tj -/TT10 1 Tf -10 0 0 10 314.8032 141.57 Tm -(TERPRI)Tj -/TT8 1 Tf -9 0 0 9 350.8091 141.57 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 118.34 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 118.34 Tm -(IMRESET)Tj -/F3 1 Tf -10 0 0 10 145.8 118.34 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 148.67 118.34 Tm -(STREAM)Tj -/TT10 1 Tf -10 0 0 10 181.0753 118.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 187.0762 118.34 Tm -[( )-22196([Image Stream Method])]TJ --6.7863 -1.8889 TD -0.0967 Tw -(Resets the )Tj -/TT10 1 Tf -10 0 0 10 169.9231 101.34 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 175.9241 101.34 Tm -0.0967 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 197.3999 101.34 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 203.4009 101.34 Tm -0.0967 Tw -[( position of )]TJ -/TT15 1 Tf -5.5258 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0967 Tw -[(. The )]TJ -/TT10 1 Tf -10 0 0 10 312.2132 101.34 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 318.2141 101.34 Tm -0.0967 Tw -[( coordinate is set to its left margin; the )]TJ -/TT10 1 Tf -10 0 0 10 479.945 101.34 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 126 89.39 Tm -0.1755 Tw -[(coordinate is set to the top of the clipping region minus the font ascent. Envoked by)]TJ -/TT10 1 Tf -10 0 0 10 126 78.34 Tm -0 Tw -(DSPRESET)Tj -/TT8 1 Tf -9 0 0 9 174.0078 78.34 Tm -(.)Tj -ET -endstream -endobj -168 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 5 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -170 0 obj -<< -/Length 6864 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-44)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0178 Tw -(The following methods all have corresponding )Tj -/TT10 1 Tf -10 0 0 10 315.5469 569.49 Tm -0 Tw -(DSP)Tj -/TT8 1 Tf -9 0 0 9 333.5498 569.49 Tm -0.0178 Tw -(xx functions \(e.g., )Tj -/TT10 1 Tf -10 0 0 10 406.3111 569.49 Tm -0 Tw -(IMYPOSITION)Tj -/TT8 1 Tf -9 0 0 9 472.3218 569.49 Tm -0.0178 Tw -[( corresponds to)]TJ -/TT10 1 Tf -10 0 0 10 126 557.49 Tm -0 Tw -(DSPYPOSITION)Tj -/TT8 1 Tf -9 0 0 9 198.0117 557.49 Tm -0.0767 Tw -[(\) that invoke them. They also have the property of returning their previous value;)]TJ --8.0013 -1.3333 TD -0 Tw -(when called with )Tj -/TT10 1 Tf -10 0 0 10 196.8838 545.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 214.8867 545.49 Tm -( they return the old value without changing it.)Tj -/TT10 1 Tf -10 0 0 10 150 522.2 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 522.2 Tm -(IMCLIPPINGREGION)Tj -/TT4 1 Tf -10 0 0 10 242.4 522.2 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 245.1783 522.2 Tm -(STREAM REGION)Tj -/TT10 1 Tf -10 0 0 10 315.3897 522.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.3907 522.2 Tm -[( )-12605.5([Image Stream Method])]TJ --16.3767 -1.8833 TD -(Sets a new clipping region on )Tj -/TT15 1 Tf -13.2832 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 482.37 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 482.37 Tm -(IMXPOSITION)Tj -/F3 1 Tf -10 0 0 10 215.4 482.37 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 218.27 482.37 Tm -(STREAM XPOSITION)Tj -/TT10 1 Tf -10 0 0 10 304.6841 482.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 310.685 482.37 Tm -[( )-13795([Image Stream Method])]TJ --15.1872 -1.8889 TD -(Sets the )Tj -/TT10 1 Tf -10 0 0 10 206.77 465.37 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 212.771 465.37 Tm -(-position on )Tj -/TT15 1 Tf -5.5679 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 442.08 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 442.08 Tm -(IMYPOSITION)Tj -/TT4 1 Tf -10 0 0 10 215.4 442.08 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 218.1783 442.08 Tm -(STREAM YPOSITION)Tj -/TT10 1 Tf -10 0 0 10 304.5924 442.08 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 310.5934 442.08 Tm -[( )-13805.2([Image Stream Method])]TJ --15.177 -1.8889 TD -(Sets a new )Tj -/TT10 1 Tf -10 0 0 10 218.0903 425.08 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 224.0913 425.08 Tm -(-position on )Tj -/TT15 1 Tf -5.5679 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 401.85 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 401.85 Tm -(IMFONT)Tj -/F3 1 Tf -10 0 0 10 188.4 401.85 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 191.27 401.85 Tm -(STREAM)Tj -/F1 1 Tf -10 0 0 10 223.6753 401.85 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 226.4553 401.85 Tm -(FONT)Tj -/TT10 1 Tf -10 0 0 10 248.0588 401.85 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 254.0598 401.85 Tm -[( )-20086.7([Image Stream Method])]TJ --8.8955 -1.8833 TD -(Sets )Tj -/TT15 1 Tf -2.0039 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(s font to be )Tj -/TT15 1 Tf -5.3931 0 TD -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 362.02 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 362.02 Tm -(IMLEFTMARGIN)Tj -/F3 1 Tf -10 0 0 10 220.8 362.02 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 223.67 362.02 Tm -(STREAM LEFTMARGIN)Tj -/TT10 1 Tf -10 0 0 10 315.4849 362.02 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.4859 362.02 Tm -[( )-12594.9([Image Stream Method])]TJ --16.3873 -1.8889 TD -(Sets )Tj -/TT15 1 Tf -2.0083 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0044 Tw -(s left margin to be )Tj -/TT15 1 Tf -8.5144 0 TD -0 Tw -(LEFTMARGIN)Tj -/TT8 1 Tf -6.001 0 TD -0.0001 Tc -0.0043 Tw -(. The left margin is defined as the )Tj -/TT10 1 Tf -10 0 0 10 492.474 345.02 Tm -0 Tc -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 498.475 345.02 Tm -(-position)Tj --36.0528 -1.3278 TD -(set after the new line.)Tj -/TT10 1 Tf -10 0 0 10 150 310.79 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 310.79 Tm -(IMRIGHTMARGIN)Tj -/F3 1 Tf -10 0 0 10 226.2 310.79 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 229.07 310.79 Tm -(STREAM RIGHTMARGIN)Tj -/TT10 1 Tf -10 0 0 10 326.2858 310.79 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.2868 310.79 Tm -[( )-11394.8([Image Stream Method])]TJ --17.5874 -1.8833 TD -(Sets )Tj -/TT15 1 Tf -2.2106 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2067 Tw -(s right margin to be )Tj -/TT15 1 Tf -10.2467 0 TD -0 Tw -(RIGHTMARGIN)Tj -/TT8 1 Tf -6.6011 0 TD -0.2067 Tw -[(. The right margin is defined as the)]TJ --22.6589 -1.2944 TD -0 Tw -(maximum )Tj -/TT10 1 Tf -10 0 0 10 218.8073 282.19 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 224.8083 282.19 Tm -0.17 Tw -(-position at which characters are printed; printing beyond it causes a new)Tj --5.6454 -1.3278 TD -0 Tw -(line.)Tj -/TT10 1 Tf -10 0 0 10 150 247.96 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 247.96 Tm -(IMTOPMARGIN)Tj -/F3 1 Tf -10 0 0 10 215.4 247.96 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 218.27 247.96 Tm -(STREAM YPOSITION)Tj -/TT10 1 Tf -10 0 0 10 304.6841 247.96 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 310.685 247.96 Tm -[( )-13795([Image Stream Method])]TJ --15.1872 -1.8889 TD -(Sets )Tj -/TT15 1 Tf -2.085 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0811 Tw -(s top margin \(the )Tj -/TT10 1 Tf -10 0 0 10 301.0089 230.96 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 307.0099 230.96 Tm -0.0811 Tw -(-position of the tops of characters that is set after a new)Tj --14.7789 -1.3278 TD -0 Tw -(page\) to be )Tj -/TT15 1 Tf -5.1235 0 TD -(YPOSITION)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 196.13 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 196.13 Tm -(IMBOTTOMMARGIN)Tj -/F1 1 Tf -10 0 0 10 231.6 196.13 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 234.38 196.13 Tm -(STREAM YPOSITION)Tj -/TT10 1 Tf -10 0 0 10 320.794 196.13 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 326.795 196.13 Tm -[( )-12005([Image Stream Method])]TJ --16.9772 -1.8889 TD -(Sets )Tj -/TT15 1 Tf -2.1406 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1367 Tw -(s bottom margin \(the )Tj -/TT10 1 Tf -10 0 0 10 318.8722 179.13 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 324.8731 179.13 Tm -0.1367 Tw -(-position beyond which any printing causes a new)Tj --16.7637 -1.3278 TD -0 Tw -(page\) to be )Tj -/TT15 1 Tf -5.1235 0 TD -(YPOSITION)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 144.3 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 144.3 Tm -(IMLINEFEED)Tj -/F1 1 Tf -10 0 0 10 210 144.3 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 212.78 144.3 Tm -(STREAM DELTA)Tj -/TT10 1 Tf -10 0 0 10 277.5905 144.3 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.5915 144.3 Tm -[( )-16805.4([Image Stream Method])]TJ --12.1768 -1.8833 TD -(Sets )Tj -/TT15 1 Tf -2.2506 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.2467 Tw -(s line feed distance \(distance to move vertically after a new line\) to be)Tj -/TT15 1 Tf --5.8512 -1.2889 TD -0 Tw -(DELTA)Tj -/TT8 1 Tf -3.0005 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 92.81 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 156.001 92.81 Tm -(IMSCALE)Tj -/TT4 1 Tf -10 0 0 10 193.8 92.81 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 196.5783 92.81 Tm -(STREAM SCALE)Tj -/TT10 1 Tf -10 0 0 10 261.3889 92.81 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 267.3898 92.81 Tm -[( )-18605.6([Image Stream Method])]TJ --10.3766 -1.8833 TD -0.0967 Tw -(Returns the number of device points per screen point \(a screen point being ~1/72 inch\).)Tj -/TT15 1 Tf -0 -1.2222 TD -0 Tw -(SCALE)Tj -/TT8 1 Tf -3.0005 0 TD -( is ignored.)Tj -ET -endstream -endobj -171 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -173 0 obj -<< -/Length 5850 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(26-45)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( GRAPHICS OUTPUT OPERATIONS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 568.26 Tm -(IMSPACEFACTOR)Tj -/F1 1 Tf -10 0 0 10 178.2 568.26 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 180.98 568.26 Tm -(STREAM FACTOR)Tj -/TT10 1 Tf -10 0 0 10 251.1914 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 257.1924 568.26 Tm -[( )-14405.3([Image Stream Method])]TJ --14.5769 -1.8833 TD -0.0689 Tw -(Sets the amount by which to multiply the natural width of all following space characters)Tj -0 -1.2222 TD -0 Tw -(on )Tj -/TT15 1 Tf -1.5657 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.1878 Tw -[(; this can be used for the justification of text. The default value is 1. For)]TJ --5.1663 -1.2889 TD -0.01 Tw -(example, if the natural width of a space in )Tj -/TT15 1 Tf -18.8913 0 TD -0 Tw -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -(s current font is 12 units, and the space)Tj --22.4919 -1.2944 TD -0.03 Tw -[(factor is set to two, spaces appear 24 units wide. The values returned by )]TJ -/TT10 1 Tf -10 0 0 10 420.0275 517.06 Tm -0 Tw -(STRINGWIDTH)Tj -/TT8 1 Tf -9 0 0 9 126 505.06 Tm -(and )Tj -/TT10 1 Tf -10 0 0 10 143.4858 505.06 Tm -(CHARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 197.4946 505.06 Tm -( are also affected.)Tj -/TT10 1 Tf -10 0 0 10 102 481.83 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 481.83 Tm -(IMOPERATION)Tj -/F1 1 Tf -10 0 0 10 167.4 481.83 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.18 481.83 Tm -(STREAM OPERATION)Tj -/TT10 1 Tf -10 0 0 10 256.5941 481.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.595 481.83 Tm -[( )-13805([Image Stream Method])]TJ --15.1772 -1.8889 TD -(Sets the default )Tj -/TT10 1 Tf -10 0 0 10 189.3076 464.83 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 225.3135 464.83 Tm -( )Tj -/TT15 1 Tf -0.25 0 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -( argument.)Tj -/TT10 1 Tf -10 0 0 10 102 441.6 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 441.6 Tm -(IMBACKCOLOR)Tj -/F1 1 Tf -10 0 0 10 167.4 441.6 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 170.18 441.6 Tm -(STREAM COLOR)Tj -/TT10 1 Tf -10 0 0 10 234.9905 441.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.9915 441.6 Tm -[( )-16205.4([Image Stream Method])]TJ --12.7768 -1.8833 TD -(Sets the background color of )Tj -/TT15 1 Tf -12.8379 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 401.71 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 401.71 Tm -(IMCOLOR)Tj -/TT4 1 Tf -10 0 0 10 145.8071 401.71 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 148.58 401.71 Tm -(STREAM COLOR)Tj -/TT10 1 Tf -10 0 0 10 213.3905 401.71 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 219.3915 401.71 Tm -[( )-18605.4([Image Stream Method])]TJ --10.3768 -1.8833 TD -(Sets the default color of )Tj -/TT15 1 Tf -10.6348 0 TD -(STREAM)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --19.5687 -2.9611 TD -0.1967 Tw -(In addition to the )Tj -/TT10 1 Tf -10 0 0 10 156.5043 358.11 Tm -0 Tw -(IMAGEOPS)Tj -/TT8 1 Tf -9 0 0 9 204.5121 358.11 Tm -0.1967 Tw -[( methods described above, there are two other important methods,)]TJ --14.0569 -1.3278 TD -[(which are contained in the stream itself. These fields can be installed using a form like \(replace)]TJ -0 -1.2278 TD -0 Tw -(\()Tj -/TT10 1 Tf -10 0 0 10 80.9971 335.11 Tm -0.053 Tw -(STREAM OUTCHARFN)Tj -/TT8 1 Tf -9 0 0 9 177.5427 335.11 Tm -0.0222 Tw -(\) of )Tj -/TT10 1 Tf -10 0 0 10 193.3499 335.11 Tm -0 Tw -(STREAM)Tj -/TT8 1 Tf -9 0 0 9 229.3558 335.11 Tm -0.0222 Tw -[( with \()]TJ -/TT10 1 Tf -10 0 0 10 255.5517 335.11 Tm -0.053 Tw -(FUNCTION MYOUTCHARFN)Tj -/TT8 1 Tf -9 0 0 9 376.1012 335.11 Tm -0.0222 Tw -[(\)\). Note: You need to have)]TJ --33.1224 -1.3333 TD -0.0144 Tw -(loaded the Interlisp-D system declarations to manipulate the fields of )Tj -/TT10 1 Tf -10 0 0 10 357.0519 323.11 Tm -0 Tw -(STREAM)Tj -/TT8 1 Tf -9 0 0 9 393.0578 323.11 Tm -0.0144 Tw -[(s. The declarations can)]TJ --35.0064 -1.3333 TD -0 Tw -(be loaded by loading the Lisp Library package )Tj -/TT10 1 Tf -10 0 0 10 265.2686 311.11 Tm -(SYSEDIT)Tj -/TT8 1 Tf -9 0 0 9 307.2754 311.11 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 287.88 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 287.88 Tm -(STRMBOUTFN)Tj -/F3 1 Tf -10 0 0 10 162 287.88 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 164.87 287.88 Tm -(STREAM CHARCODE)Tj -/TT10 1 Tf -10 0 0 10 245.8832 287.88 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.8841 287.88 Tm -[( )-17999.5([Stream Method])]TJ --13.9871 -1.8833 TD -(The function called by )Tj -/TT10 1 Tf -10.106 0 TD -(BOUT)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 248.05 Tm -(\()Tj -/TT13 1 Tf -9 0 0 9 108.001 248.05 Tm -(OUTCHARFN)Tj -/F3 1 Tf -10 0 0 10 156.6 248.05 Tm -( )Tj -/TT15 1 Tf -9 0 0 9 159.47 248.05 Tm -(STREAM CHARCODE)Tj -/TT10 1 Tf -10 0 0 10 240.4832 248.05 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.4841 248.05 Tm -[( )-18599.5([Stream Method])]TJ --13.3871 -1.8889 TD -0.07 Tw -[(The function that is called to output a single byte. This is like )]TJ -/TT10 1 Tf -10 0 0 10 380.9929 231.05 Tm -0 Tw -(STRMBOUTFN)Tj -/TT8 1 Tf -9 0 0 9 441.0026 231.05 Tm -0.07 Tw -(, except for)Tj --35.0003 -1.3278 TD -0.0456 Tw -[(being one level higher: it is intended for text output. Hence, this function should convert)]TJ -0 -1.2278 TD -0 Tw -(\()Tj -/TT15 1 Tf -0.333 0 TD -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -( )Tj -/TT10 1 Tf -10 0 0 10 176.5241 208.05 Tm -(EOL)Tj -/TT8 1 Tf -9 0 0 9 194.527 208.05 Tm -0.23 Tw -(\) into the streams actual end-of-line sequence and should adjust the)Tj --7.6141 -1.3333 TD -0 Tw -(streams )Tj -/TT10 1 Tf -10 0 0 10 161.9064 196.05 Tm -(CHARPOSITION)Tj -/TT8 1 Tf -9 0 0 9 233.9182 196.05 Tm -0.0311 Tw -[( appropriately before invoking the streams )]TJ -/TT10 1 Tf -10 0 0 10 410.4917 196.05 Tm -0 Tw -(STRMBOUTFN)Tj -/TT8 1 Tf -9 0 0 9 470.5015 196.05 Tm -0.0311 Tw -[( \(by)]TJ --38.2779 -1.3333 TD -0 Tw -(calling )Tj -/TT10 1 Tf -10 0 0 10 156.1957 184.05 Tm -(BOUT)Tj -/TT8 1 Tf -9 0 0 9 180.1996 184.05 Tm -0.15 Tw -[(\) to actually put the character. Defaults to )]TJ -/TT10 1 Tf -10 0 0 10 361.5566 184.05 Tm -0 Tw -(\\FILEOUTCHARFN)Tj -/TT8 1 Tf -9 0 0 9 445.5703 184.05 Tm -0.15 Tw -(, which is)Tj --35.5078 -1.3278 TD -0 Tw -(probably incorrect for an image stream.)Tj -ET -endstream -endobj -174 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 22 0 R -/TT2 6 0 R -/TT4 7 0 R -/TT6 8 0 R -/TT8 9 0 R -/TT10 10 0 R -/TT13 12 0 R -/TT15 13 0 R ->> -/ExtGState << -/GS1 14 0 R ->> ->> -endobj -29 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 298 -/Height 158 -/BitsPerComponent 1 -/ImageMask true -/Length 6005 ->> -stream -????????9UQUQUSUSUSUSUS?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?=UUUUUWUWUWUWUW?:?;USUSUSUSUS????UWUWUWUWUW????UWUWUWUWUW????UWUWUWUWUW????UWUWUWUWUW????UWUWUWUWUW????UWUWUWUWUW????UWUWUWUWUW???;USUSUSUSUSUS????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW???;USUQUQUQUSUSUSUS????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW????UWUUUUUUUWUWUWUW???;USUSUSUSUSUS????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW????UWUWUWUWUWUW???;USUSUSUQUSUQUS????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW????UWUWUWUUUWUUUW???9UQUQUSUQUQUQUSUSUS?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?=UUUUUWUUUUUUUWUWUW?:?;???????????????????????????????;?1wUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW?;w?;WUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW?;W?;WUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW?;'?1wUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW????UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW????UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUW??????@?@?p?I$H$H?I$H$H?6H$N?Kp???? -endstream -endobj -30 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 78 -/Height 110 -/BitsPerComponent 1 -/ImageMask true -/Length 1101 ->> -stream -G|;{{{{{w{{{;{+G@{{oooooWoex۷oo{wwۻWWw;xyۻwۻw<;{wx;osoooooogoh -endstream -endobj -37 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 300 -/Height 300 -/BitsPerComponent 1 -/ImageMask true -/Length 11401 ->> -stream -????????????????UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUEUQUUUUEUQT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUT??UUUUUUUT??UUUUUUUT??UUUUUUUT??TUUUWUTUUUWT??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T?ʪʪ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?TUUUU_UTUUUUWT?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?**?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪??????????**?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?TUUUUWUTUUUUWT?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?򪪪?UUUUUU_UUUUUUU_T?ʪʪ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?UU_UUU_T?ꪯꪯ?TUUUWUTUUUWT??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T??UUUUU_UUUUUU_T??UUUUUUUT??UUUUUUUT??UUUUUUUT??UUUUUUUT??TUUEUQUUUUEUQT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT??UUUUUUUUUUUUUUUT?????????????x?{?{?{?{?{?{?wq????????????????????? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #?''''''''''''''''''''''''''''''''''?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?999999999999999999999999999999999;??????999999999999999999999999999999999;?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#?''''''''''''''''''''''''''''''''''? #? #?? #? #????????? -endstream -endobj -61 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 60 -/Height 70 -/BitsPerComponent 1 -/ImageMask true -/Length 561 ->> -stream - Ardrdrd3rdrdd8A???? -endstream -endobj -62 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 59 -/Height 70 -/BitsPerComponent 1 -/ImageMask true -/Length 561 ->> -stream -949$y$ y$9$  ߙߙߙߙߙߙߙߙߙߙߙߙߙߙߙ -endstream -endobj -63 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 90 -/BitsPerComponent 1 -/ImageMask true -/Length 901 ->> -stream -<ɇ93??9??y?<Ȓy?<|Ș?<ɘ?I3? -endstream -endobj -64 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream - s?LyyOxgyL '&x?y'yy'yg?dsdfs$I&s !I&s&sFA?? -endstream -endobj -65 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -LO LLdsdfs$I&s !I&s&sFA? -endstream -endobj -66 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -;7?L1'?O1'?L$?$'?O'?A dsdfs$I&s !I&s&sFA~~~?~?~?~??????????????????????????????? -endstream -endobj -67 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -cL@OOH> -stream - s?LyyOxgyL '&x?y'yy'yg?Mdsds$I0C !I3ÓÐC???~~~~~~?~~?~~?~~?????????????????????????????? -endstream -endobj -72 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -LO LLMdsds$I0C !I3ÓÐC???~~~~~~ -endstream -endobj -73 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -;7?L1'?O1'?L$?$'?O'?A Mdsds$I0C !I3ÓÐC????~~~~~~ -endstream -endobj -74 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -cL@OOH> -stream - s?LyyOxgyL '&x?y'yy'yg?g8fdg3$d3$$3! !3$g3$d!ٙٙٙٙٙٙٙ;?;?;?;?;?;?;?; -endstream -endobj -76 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -LO LLg8fdg3$d3$$3! !3$g3$d!ٙٙٙٙٙٙٙ -endstream -endobj -77 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -;7?L1'?O1'?L$?$'?O'?A g8fdg3$d3$$3! !3$g3$d!""" ٙfffdDDDD""" ٙfffdDDDD""" ٙfffdDDDD""" ٙfffdDDDD""" ٙfffdDDDD""" ٙfffdDDDD""" ٙfffdDDDD""" &fffDDD""""&fffDDD""""&fffDDD""""&fffDDD""""&fffDDD""""&fffDDD""""&fffDDD""""&fffDDD -endstream -endobj -78 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 80 -/Height 102 -/BitsPerComponent 1 -/ImageMask true -/Length 1021 ->> -stream -cL@OOH> -stream -????????>?>?> ???????????????????????????????????????????????????~ ?~?~?????? -endstream -endobj -92 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 161 -/Height 136 -/BitsPerComponent 1 -/ImageMask true -/Length 2857 ->> -stream -??????G?????????????????????????????????????????????????????????????>?>?~?????????????????>808>????????????????????????????????????????????????????????? -endstream -endobj -96 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 47 -/Height 69 -/BitsPerComponent 1 -/ImageMask true -/Length 415 ->> -stream -WW____UUUUU_UU_UUUUUUWU_WWW__W_W_UWUUUUUWWWW__ -endstream -endobj -14 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -175 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -176 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -177 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -178 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -179 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -180 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBNLAP+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 181 0 R ->> -endobj -181 0 obj -<< -/Filter /FlateDecode -/Length 20105 -/Length1 39456 ->> -stream -HW}tovgvfwv9 -UH8P%S8C9͎~03K6JJ@S4tk54Z -$!HG@PLc ovvSyq}{nrz{,,^@ڹ~C>J {(t8P,<ːz"6Ƕb{ЪBKNX7 ǐT ر ?.>n="l3]VmG $w\bexjx -`=G(ɸxTzkCy~[/5AqSTG&oPQ4~1@+Jl#^xՁ9#Qp8+H=}a!Ei rgp@tɿt}$,&Lh9p4d"Pzl&hgnH6B< ;2<[(9s .^^@ &s8N+0 ;` 8qC'I@) 9?? va!2! )Y%6Rp;L#-/Ay܉'7y56Z%dQID^/=0? PDŽl`o%;{d0:ss'q-j -Wo%'aB | 'iL2~JnE E+2xrqm^U,'sS ϓNr%t@3+ݤ@I&>!уK׳h1vMBgA% \p:NǗ;ʊʕA3d-mJz0]uL᪈?AO?MYr l'0Z0p&wL? ,N> iY&H'ƐO|k#^wࡔ{1Nwoo7JOAwۈ/L=s$@f\{`g>&uZ}4 !~XΦy'TkϘdh l\lcOظKm\frWظU6ڸ56)ٸ6l 6>kFy甄8#nZ,:!F&QàI JTcџj4FU*%F h Dޚ5O%Unb{}Uh4iΌmi$nVl(ډf3DU3kE}>4f$X< g2vP4d5iBjKKf]C._/1{:/Eۼr18u,ߔ:ַu7zj}R1|əvbEMyvPU+#8HAfXDgRLY\VC.5;*<څ -W%Jgi*:jk}A{H,9k:SPeItȲ}HݾOv-xCFF%kp6qǦ$.PCg_V|e(Z*2"`|ybc1*!qnġD >_qLUI7$ …sNdQe^Au$5ǽ]U:Kw=?~g^Ş˖Νc]|ԗ1_(9jj%p ,;Jp>v WR1_t瓌nËˑxՖj\׳cuuQb+ڶٵdɬb]QO;1{",:~uׯ{ý'R\jr]{u$.0M!9m-u]ZQƺ\[#wumv/n\HrGw;( 6:4ʷ@*ozڅS ]ԁ62$2UAF!@NwKFFE"W$ # H3$nF2m?#KiC,d-Run0Nk0 :tsma;)`q0&xʞ \xbxkVM{a C7NY8 -BG~HGT9d>!ϐ%y M?.r|LN^r\"W(jNCt }>DUZNgy)sZE܃]I_n6;}vO4,}=d6MdSY -eϳլZX{IvEEv pE>>O?eQ_ʟ/zox1~O^e:l0ebu[ppf"BÈsj!eb!F7 EQ`f< Hݡ?j%VVt+Z02aX)Ccm>菘*$kʢ_u0f`ez(~BTVb#YHЈ-vKLFLD%;̞}tCTlؑ]D-z=ǰ^Î̃c,m&V3zfam,A+u;ضqSƫKrP0"ܾо7ۢ.2F>8j -d2KU-"OZ~ݍ-YBZhi.D$g-u-{we6ϩ0L#VҒ2i-Q#Hl%K{}I-a@ӌ1- E~ӣU 4JJ\yK蚢ܯ'Q\FA]/u޻\szgR _Bٖ ?&m9AalڍhKHdrH2:?[l?968UubTlEi lBmgɲw}VWXcZAh\}~۲}nn}%f dC!96(}Å-2*`Si PM^:=L6tX@,Z-ĸ v7X<p"՗eLnѣ\ L[z|:ldžI~ V?2Չ暜8e}ъn2=ݚeHb-Ǣ~Io8P6KY_M/*@]YZds|b>w옾?[󝂅]\E7CѶ$͑%lh7֕PF^ʼnZ)x|7ǎ_ . ]H9#acR{pI׫n6#}'>v56-9jQ2~2d4f*<;ҹY<_N:6-t -GIgatj72Zں] J6ok.C%mX^:6 3PKmٕ,s.wѱMZ:L!pe. ?fARżYaDlt& (aYi} h Qҗ U}&?L(Һ,h#&R&j^6@a_%j TEB Zs扻kcSnZ?T2U,fQqx/mu("H?Ỳ,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ5@qAy-K0oUW yU}fBAkff8߰j2@-} 9Fחaŭtf+t0dˀea33% -fM:{P+a+qw?vo>j[`[$jI[t.2 9d -P7J-}W -RHgRcoHVW+,j?Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xs פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(MZI-]Râb"T:X[{J}k*=f46_ԷΟ;99%R :h ڳDKX]ͶSyLA]ҟgbb>a 7BJUК?v<>#RKyu0fҾAwӌc^s<{,+6zl5Y4e1TI*{E|ӵRJ["ƾ=1ˢ6n m'U 2ar&1`{Q -Y| r{/EˊtܙF'['cݣ֏_P:uVSrYNY% +KPouĤe=O/qkSԣQ]h-]'?{YPJߔ?^KC{ͷ\0A橥/Kw={!_m1B*X,dղ&,/CnV q|"|L4[Ixnf: (W4 -~ g`.}܀E"/zաzԄv47hCUt lǥx ^܀) ܅{0Sx #N:^$Ed%YED"}*Y' gHy #$J)-Iw{}WA\\\ 5s_>7ɽ%gpwۻ?oRV̾]ѶlQ+N&6N,](i3vNLɤv 5&؈ey=_1yo9~# n\MP u:C-Pg%BuZԨSTRUyzYRohDS5MskZm6Y=О -"msej C$PFJlI'XF5*X6_D*m8Aq;>;vSqc@ sXc8h"lY-5E{c) -piUp+FDoQCHnC%\"?(w(N-ܢ"(w"o8 -S;bTS) -YA UɧUMnbX3/c\v/͂DzC@6E}z$xܩ~۹$-}}Ҽ>{]ߑ? @ IfCݜ⊮Mp4Bf -eېܸ^Sw†<_C IYpa3HóH/|Y9o&}6eu<$„!qm5bPx0x-vN2 }_p(jv:_v H1)Έ&51|[_m.3pJ6{ŬLZՔl_Bn9%%f`ln^49(,M\? /"=?h DEmO-^.F'-]V{-PV:k.5rmV<DL]DBNjm+2<]r̽֞JJ4Ҳ`1H%l2U2He$+"o "pݯ.D";Nu5y2@Ά}97qt|s/=]1]"pje[%|9:!̲A7{Z$"M3Nl_~̰lv5T:nryWy^|ZH Ōu!Hb{lt1(Tl5A\"i~o3JFW<3XޑΝFI<ѐ8nB6& 1{PkG$fo~H;k_y&PD\Hjׁ8B2L@F5 2 f cU <0?_2V/ï(au@'샷_'֧|7f7/O&""q!ϒg@d !zd^[6Jv=-'!G4%$&W1)PFmAԃGD:N3$Oi%]NW5F"ۍn/OL#4=Cy:H.AIRʓt%[2RfJ YU&hJҥWN!K; OT(אc֬Y2?&),Mg,Y2{؁H\JL, !/&Uw Q0_ o788ڱ2\03& 'qoj6'Г1/Ti[h["C9,YcدTO3c؈C`agC#9;cbǚ #K0^#,U%c5 F+Fq<TEɧ(pZF*hOl|<ˤm!+QY)R o7UM<;c_xl[F>u7; $c'~xOgu ʓ-t'|b?~c~aYg bTߩGj C>$HAfءC;:t3ѯ;U(^vڛs).Om( w| キٽۄ xG8D.%#``5 RPZ8APc 5i "Qs0H#qvFlo{g:}~on{ -Dh?AaAeT?Vv m.풍UH3\5%ywEcOA]ӲKY\fҢڛΙmA8uG/jhl4}`jM-_`W.,-[XpW]3s4UGUvY:o_zƣPy^ۓ}Aaۿmoq ͇ߞzB+1My ͼ~zű49Epܚ@]6}(g=J uDu7ЬoUQd#5lՖn=V,Xyb[mao+m鞼iph@\;R|EχWor ]Y/0ύwۍWSgl֊6dDU6T"=n{4{i&ڽǫO+nMȿqNˁ|QcxpZE= [s;6vlBĻ& -ۼm'h.g[߮vq^콯?}w׾Sz*u?;gϵ+Z | 59#U@~dڧJ׼9u).!*%yE^frfA&A'Ĉl cyj;WiV 1M4WJGg.-ziޑSv}QoOص=kD#>nwf'#f-N+cg r  -fTSTP 7R`;a5A=ulSh<PSwi8ozF."RTU3PWPY'בrTo|XrdBH3i!z#Ir1 rF mPj4i.U!uj -ZIou]wut m_zQKO?hпa.fSQk]fQm-bլ̾]ePs6ͨ~W'*.=ƞ`0jgسX#(;c))"3P#ܣ(u7F2jRb -Ǝ6QwmpuP$*7w>zUB/x|^KO6Bep)WnEߧ` nTHIQL{hW1@%)n b))Pi2OMDSӃنm/Bdas1Nrt;aDŠ%״~pfzP* -RJ(XX*ԣǩEQ \e6f)gzuÈoy[-U> 8-mĂȂH`- -e q&}su -}F/ nA aǟ,;Ĭy\Oc#Y,I5>tduŀCySr\5eNuY`)ߤ`D걈Afewo *˹b6)ۢg7z\y[MBUWWu7D >L-x_`(A|.NN`NmcJd{QC͠ẩd>ZeY&b8]kߞ̚\s'DE`ĕR !#PH]'Qj/}ʞ·6]!< ZxAR_+}>1(F"owwM!1ofħ¥AAؑλߵX3˶j0 -m7pdeG堡g,idW`7i -VY:kоw|˵gGF >2[\zvzQzּJ>+nʛ-LkC`B W5=5ιע [69]Rh¥uR9 /"+kWTR4CsIoYa]'t9|@d4UZX`Z΁BWf -״ϟs8#Vn10-\֪@ o\]A^-kz螇87X,X-oi,|liն4dsNdv9ciۉ,dePż@IE`.,:\, -L?dbFZ/ u[tg"kuYxdqX]~ɏ-mҥ3)ou\4!GK 19fɗ=0Zp1呅g!GZ[H,,,,|p] N` .hq -&p2m_t,8nF Z8w 1;Z,X~^-SrڭސhQnmZR4K)I]H,ldDd:eX(Lfum`}ZG.ɺhH,DBn=і!Z8#Gu+W_4:6.H\,ܫ;PTwBcdl"*pn]ّA-`E=%e8!){/By h<zGM ,hh-KR5,Bu~Ha$8N螏cg,(0Y4Om^0ЊE]F[NyD !Tx_)ZE&XL";.rZ`0~88()U (cQ} "/.ڠ>@,H|g8:, -;[Q윶^[e7^<hE/^j=`/b؃h=Rf &T2; -4Z8fba7-|R\( -՝dkI,4pT1mZF88ꊕ+?\ן~iYjƱrhՍVS<2y*#͊3+LqzC*Z0UK^G Z,v7 Z)slak,f -װT~VC*zM,΋d0ydE,f i;{F;_?_qJk{U-?k,,kZQ Yn}Q< Q}:k\'.^X6QnBD@5xEHI,q-vS,'tт>(>}x@u'˳%*\c . %\+ޛ6Zog4vl_2cnq3̋ٹl\f-9fIN*Z>gRdUH՝";i6O^ݹ 2R"[BbAgvڐ7C5 !>gP 󲱁A)n rlyUo.We -oՖR9b -͠1cJ:ho֦Dv닚׏5-l 7]ݝ6 lo?"e[ԦEo?A.bd~O;N - S[Вxp6H#.J?^wHN9p}$Wrz<@6# ep#q_vrYwbE҅!17!M!XRfl`][,Lq7 `=>Wv|9ߥµq+ ֡ <0гS.) u^r -Y,mqM}֍qЂgp -0wE]6)sX[4q]vDY\oZ479ڮ߳?-vwB;-T }F5&'ckgG x~ o_:dcYcl}]dłl;b(#ʘi%yiܽ.)?QE{@Eu zA4 -m˂|f$u!JizE#K(4*{n#10\q\#!B@ cPЇwW-D !SDuD P'nnط7q!_| >1WPk;ɶlrџۗ,8wYlYQ:hrhu*ZQYO[7v\U[ngvbr{T.xCR`\,Kց%5,W\~-}()޽o篬KBgط$O,˯.m6 -xe'&?3R8ٴKO - 6]{2O 9FOs;*XE emo׬/4,\QUOG̒wJs0fF+T.& ޲cY|a?z4Iԉ@[*9lyViAȯ^,ungo|uUzZBܧXν,o+I̾N" [Ԇ\{9:[S YJrSo6,tTܑ/=rb,{Ɩ?'X+-U.'b,_5,4E_aY+6[1и}ӍˁgZ3Mj5Rlbr4Xe1֩I'CpI$%$2ilRA`VMZ;4d-s?d/9HOi慗Ur)yLc)&TNLjyt<.ZDt&t>5t)]FW5zn0"K\VInmSZ{45 c%OcI'%luéc8щUB3s~P ;'j?ۂ6ݪUrf}!V4XjF"|gKj\WMƉWtx]O':g`Yl;k8\,P# @'v -|l9c}6+br|N6{^wf3bs9`Ѕk`j%X|7֋q~@4AGdI9~q.O%V, K,Q}JGلƤ-]=|?[xⅶ3E Dkx G]`=  |14֠VxW#fP7JX#,*vՄqyf섶вMC(!]L$[!,˶j`Ar!}q#<337a,΀Gۿra+C(A7ޅ>8`߭vYG1,`˵P] -r1Ļ;6tH3/qk+roB_Ӌq =x ~K9/Cuo+7rP:7!޹_? -[fsc>w_X|Ga+owr\ޞoBm>%?Džoiמ%սowuI֘( )Fd|6&z\[r:˫Is;AE˽ԊNvkM(g{8e`5ՠ"d<7P%&KR8bR}@dA(D?lm{*[s1wɂ|Ս9jdzqicku\$ RFiDC$ a#Tr3"_Ni9nɈj1t,9>CW%2YYZqv^9E%H}+)hUGÀq: +fqI=P| h7Xqq&̹f^ T:깒AވGDb..rVN`l'(JL))dvyhFq==Zp55<~Ӡj4*Q&f(Pv)Aq!SՂf\)y$l8jR}Z[J7v,.G'((! -MPKZCvj‘IO}Rdז̀-s@N}ܕzI"=t/Tk!,,*ĝ{-TjrGű#ԃ3KfV )olhyR R2.oCIc\lKSI75CNZ*qj nH贗رʄ(os}3ꔎ]Ii54;*9UDk`CgX -]"t,\t }U%S6*1HZw(S]srRUdnJ,Ɛ(8㦥CG8\E(ɦQTy>ѯuoGϻ_;wc\:8~ܹ3(" Q"3*!1bE(DE]"H -̖F@PF+Ycm|npU~麿{tsgӘq4oۛXx}/WJ2*/qu۾ܫ *f$=֥3%EnzޙNf Yuy˲+͝Van,ڸ֏m6?8#3Z1ԙi onώ|Թ|^OVgΊ?5hf'&^plš5>w -|Էg޽}↙ѽj;Tߕ^ )VCj1AEC> -1bbS<׏i kܲԲ&obU?DՆT6ƃ 5~4Ul ݱ2>ywrIQ{]̟9NWU}1%ڥo^"dGzFrXzԟzN_#9-j"DM~KJȇޢqiFqCQ>ZCsk;GCkl4vy{3 UI.|}WJ6]L,I!3ɒy,$H|v?G`;>?VlyM$"'d| 675;_[2Ok}HlystXVS# ,3`=xN2\O_b|<k! X VqUu:ؾTId%\TP9_0֕R1E$:ym=;Po/,a-*=qNDNXmAL.)4 "h --0DB#6+ c^X yQc@1C\֠oj\ҕeZ:Q \5u%w-\pe,!˔ÞA"'wKQM\E ٪)<=uDf -VZ r32 ìL]qHnڕCKi`$?9bS)lzn6V6&42Ddp8 -&`8AO@s -ymj^,q(P-ANjfr8iݸ+zr9xzܛz{xY Ǔ<>t}f_N:\Ӈ[ߗ5/sR8p<qĉ8$Yp8{g})4N:v4)d} B:NćQ֜ࣛ:L7WOWvbYI#Y)*5 R -_P5]MrZ'j*yiSJ^`XoE֨U$:>9mcQKjµmۛߎfh Y*`Nx>&'w -@ޫlUTHr9ZE/Pl5ij$)I+;x M4u9QV -6XNO!.?&d Kn"֬qU&,f]a9gDM=34Q|T)8Cp^dmr_SY+DIme)l[hHrBKbR3g[j5V? -H -endstream -endobj -182 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -183 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -184 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -185 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -186 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 89 -/Widths [278 333 400 556 556 833 852 278 333 333 500 606 278 333 278 606 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -747 704 722 722 778 722 667 778 833 407 611 741 667 944 815 778 -667 778 741 667 685 815 704 926 704 685 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 184 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 185 0 R ->> -endobj -22 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 89 -/Widths [287 296 333 574 574 833 852 241 389 389 500 606 278 333 278 278 -574 574 574 574 574 574 574 574 574 574 278 278 606 606 606 500 -747 759 778 778 833 759 722 833 870 444 648 815 722 981 833 833 -759 833 815 667 722 833 759 981 722 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 186 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 175 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 -0 0 556 0 0 0 556 0 0 0 0 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 944 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 278 0 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 176 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 122 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 556 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 778 722 278 0 0 556 833 722 778 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 556 500 556 556 0 556 556 222 0 0 222 833 556 556 -0 0 333 500 278 0 0 722 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 177 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [250 278 371 0 0 0 0 0 333 333 389 606 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 606 606 0 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 786 668 525 613 778 722 1000 667 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 333 0 0 606 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 1000 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 178 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 600 0 0 0 0 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 0 600 0 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 0 -0 600 0 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 0 600 0 600 600 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 179 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBNLAP+Symbol -/Encoding /Identity-H -/DescendantFonts [ 187 0 R ] -/ToUnicode 188 0 R ->> -endobj -187 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBNLAP+Symbol -/FontDescriptor 180 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -66 [603] -] ->> -endobj -12 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 65 -/LastChar 90 -/Widths [600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 182 0 R ->> -endobj -13 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 600 0 0 600 0 600 0 -0 600 600 0 0 0 0 0 0 0 0 0 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 600 0 0 0 600 600 600 0 600 0 0 0 0 600 0 -0 0 600 600 600 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 183 0 R ->> -endobj -188 0 obj -<< -/Filter /FlateDecode -/Length 226 ->> -stream -HTP=o [uCTXK~IsH .F~6?O}E;`Gƍ,g@*ph>L\3p7R>{| uRqApblҋYUǎ{BP czt&cL:!NBOi発.2~|fE{T.uǛ-V5nbc? m -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -16 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 18 0 R -/Contents 17 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -31 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 33 0 R -/Contents 32 0 R ->> -endobj -34 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 36 0 R -/Contents 35 0 R ->> -endobj -38 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 40 0 R -/Contents 39 0 R ->> -endobj -41 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 43 0 R -/Contents 42 0 R ->> -endobj -44 0 obj -<< -/Type /Page -/Parent 15 0 R -/Resources 46 0 R -/Contents 45 0 R ->> -endobj -47 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 49 0 R -/Contents 48 0 R ->> -endobj -52 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 54 0 R -/Contents 53 0 R ->> -endobj -55 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 57 0 R -/Contents 56 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -68 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 70 0 R -/Contents 69 0 R ->> -endobj -79 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 81 0 R -/Contents 80 0 R ->> -endobj -82 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 84 0 R -/Contents 83 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -89 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 91 0 R -/Contents 90 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 51 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -97 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 99 0 R -/Contents 98 0 R ->> -endobj -101 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 103 0 R -/Contents 102 0 R ->> -endobj -104 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 106 0 R -/Contents 105 0 R ->> -endobj -107 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 109 0 R -/Contents 108 0 R ->> -endobj -110 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 112 0 R -/Contents 111 0 R ->> -endobj -113 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 115 0 R -/Contents 114 0 R ->> -endobj -116 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 118 0 R -/Contents 117 0 R ->> -endobj -119 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 121 0 R -/Contents 120 0 R ->> -endobj -122 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 124 0 R -/Contents 123 0 R ->> -endobj -125 0 obj -<< -/Type /Page -/Parent 100 0 R -/Resources 127 0 R -/Contents 126 0 R ->> -endobj -128 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 130 0 R -/Contents 129 0 R ->> -endobj -132 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 134 0 R -/Contents 133 0 R ->> -endobj -135 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 137 0 R -/Contents 136 0 R ->> -endobj -138 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 140 0 R -/Contents 139 0 R ->> -endobj -141 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 143 0 R -/Contents 142 0 R ->> -endobj -144 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 146 0 R -/Contents 145 0 R ->> -endobj -147 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 149 0 R -/Contents 148 0 R ->> -endobj -150 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 152 0 R -/Contents 151 0 R ->> -endobj -153 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 155 0 R -/Contents 154 0 R ->> -endobj -156 0 obj -<< -/Type /Page -/Parent 131 0 R -/Resources 158 0 R -/Contents 157 0 R ->> -endobj -159 0 obj -<< -/Type /Page -/Parent 162 0 R -/Resources 161 0 R -/Contents 160 0 R ->> -endobj -163 0 obj -<< -/Type /Page -/Parent 162 0 R -/Resources 165 0 R -/Contents 164 0 R ->> -endobj -166 0 obj -<< -/Type /Page -/Parent 162 0 R -/Resources 168 0 R -/Contents 167 0 R ->> -endobj -169 0 obj -<< -/Type /Page -/Parent 162 0 R -/Resources 171 0 R -/Contents 170 0 R ->> -endobj -172 0 obj -<< -/Type /Page -/Parent 162 0 R -/Resources 174 0 R -/Contents 173 0 R ->> -endobj -189 0 obj -<< -/S /D ->> -endobj -190 0 obj -<< -/Nums [0 189 0 R ] ->> -endobj -15 0 obj -<< -/Type /Pages -/Kids [1 0 R 16 0 R 19 0 R 23 0 R 26 0 R 31 0 R 34 0 R 38 0 R 41 0 R 44 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -51 0 obj -<< -/Type /Pages -/Kids [47 0 R 52 0 R 55 0 R 58 0 R 68 0 R 79 0 R 82 0 R 86 0 R 89 0 R 93 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -100 0 obj -<< -/Type /Pages -/Kids [97 0 R 101 0 R 104 0 R 107 0 R 110 0 R 113 0 R 116 0 R 119 0 R 122 0 R 125 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -131 0 obj -<< -/Type /Pages -/Kids [128 0 R 132 0 R 135 0 R 138 0 R 141 0 R 144 0 R 147 0 R 150 0 R 153 0 R 156 0 R] -/Count 10 -/Parent 50 0 R ->> -endobj -162 0 obj -<< -/Type /Pages -/Kids [159 0 R 163 0 R 166 0 R 169 0 R 172 0 R] -/Count 5 -/Parent 50 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [15 0 R 51 0 R 100 0 R 131 0 R 162 0 R ] -/Count 45 -/MediaBox [0 0 612 792] ->> -endobj -191 0 obj -<< -/CreationDate (D:20210202102717-06'00') -/ModDate (D:20210202102717-06'00') -/Producer (Apple pstopdf) ->> -endobj -192 0 obj -<< -/Type /Catalog -/Pages 50 0 R -/PageLabels 190 0 R ->> -endobj -xref -0 193 -0000000000 65535 f -0000381969 00000 n -0000000016 00000 n -0000005360 00000 n -0000376960 00000 n -0000377368 00000 n -0000378313 00000 n -0000378525 00000 n -0000378970 00000 n -0000379402 00000 n -0000379979 00000 n -0000380538 00000 n -0000380897 00000 n -0000381166 00000 n -0000354399 00000 n -0000385914 00000 n -0000382050 00000 n -0000005561 00000 n -0000013983 00000 n -0000382134 00000 n -0000014161 00000 n -0000021573 00000 n -0000377906 00000 n -0000382218 00000 n -0000021773 00000 n -0000028251 00000 n -0000382302 00000 n -0000028429 00000 n -0000031711 00000 n -0000314186 00000 n -0000320334 00000 n -0000382386 00000 n -0000031903 00000 n -0000037178 00000 n -0000382470 00000 n -0000037371 00000 n -0000041390 00000 n -0000321577 00000 n -0000382554 00000 n -0000041605 00000 n -0000050459 00000 n -0000382638 00000 n -0000050648 00000 n -0000056125 00000 n -0000382722 00000 n -0000056294 00000 n -0000063620 00000 n -0000382806 00000 n -0000063800 00000 n -0000070954 00000 n -0000386594 00000 n -0000386051 00000 n -0000382890 00000 n -0000071133 00000 n -0000077970 00000 n -0000382974 00000 n -0000078150 00000 n -0000086701 00000 n -0000383058 00000 n -0000086881 00000 n -0000092393 00000 n -0000333122 00000 n -0000333823 00000 n -0000334524 00000 n -0000335565 00000 n -0000336728 00000 n -0000337891 00000 n -0000339054 00000 n -0000383142 00000 n -0000092657 00000 n -0000100581 00000 n -0000340217 00000 n -0000341380 00000 n -0000342543 00000 n -0000343706 00000 n -0000344869 00000 n -0000346032 00000 n -0000347195 00000 n -0000348358 00000 n -0000383226 00000 n -0000100898 00000 n -0000108109 00000 n -0000383310 00000 n -0000108299 00000 n -0000114156 00000 n -0000349521 00000 n -0000383394 00000 n -0000114371 00000 n -0000121611 00000 n -0000383478 00000 n -0000121791 00000 n -0000126105 00000 n -0000350844 00000 n -0000383562 00000 n -0000126310 00000 n -0000133251 00000 n -0000353844 00000 n -0000383646 00000 n -0000133467 00000 n -0000139959 00000 n -0000386189 00000 n -0000383731 00000 n -0000140139 00000 n -0000147826 00000 n -0000383819 00000 n -0000147996 00000 n -0000155193 00000 n -0000383907 00000 n -0000155374 00000 n -0000161293 00000 n -0000383995 00000 n -0000161426 00000 n -0000169410 00000 n -0000384083 00000 n -0000169591 00000 n -0000177520 00000 n -0000384171 00000 n -0000177700 00000 n -0000184136 00000 n -0000384259 00000 n -0000184306 00000 n -0000191791 00000 n -0000384347 00000 n -0000191971 00000 n -0000197498 00000 n -0000384435 00000 n -0000197679 00000 n -0000202938 00000 n -0000384523 00000 n -0000203108 00000 n -0000209319 00000 n -0000386337 00000 n -0000384611 00000 n -0000209502 00000 n -0000215735 00000 n -0000384699 00000 n -0000215905 00000 n -0000221950 00000 n -0000384787 00000 n -0000222131 00000 n -0000230353 00000 n -0000384875 00000 n -0000230534 00000 n -0000238757 00000 n -0000384963 00000 n -0000238927 00000 n -0000247445 00000 n -0000385051 00000 n -0000247615 00000 n -0000256168 00000 n -0000385139 00000 n -0000256349 00000 n -0000261071 00000 n -0000385227 00000 n -0000261252 00000 n -0000269062 00000 n -0000385315 00000 n -0000269243 00000 n -0000274907 00000 n -0000385403 00000 n -0000275098 00000 n -0000283330 00000 n -0000386486 00000 n -0000385491 00000 n -0000283510 00000 n -0000291419 00000 n -0000385579 00000 n -0000291610 00000 n -0000300781 00000 n -0000385667 00000 n -0000300982 00000 n -0000307900 00000 n -0000385755 00000 n -0000308091 00000 n -0000313995 00000 n -0000354540 00000 n -0000354738 00000 n -0000354945 00000 n -0000355141 00000 n -0000355342 00000 n -0000355534 00000 n -0000355726 00000 n -0000375922 00000 n -0000376125 00000 n -0000376327 00000 n -0000376538 00000 n -0000376747 00000 n -0000380683 00000 n -0000381669 00000 n -0000385843 00000 n -0000385872 00000 n -0000386710 00000 n -0000386834 00000 n -trailer -<< -/Size 193 -/Root 192 0 R -/Info 191 0 R -/ID [] ->> -startxref -386906 -%%EOF diff --git a/docs/medley-irm/27-WINDOWS.pdf b/docs/medley-irm/27-WINDOWS.pdf deleted file mode 100644 index 1281eb83..00000000 --- a/docs/medley-irm/27-WINDOWS.pdf +++ /dev/null @@ -1,27263 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4400 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(27. WINDOWS AND MENUS)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 564.99 m -510.01 564.99 l -S -BT -/TT6 1 Tf -10 0 0 10 54 556.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 533.54 Tm -0.17 Tw -(Windows provide a means by which different programs can share a single display harmoniously.)Tj -0 -1.2222 TD -0.05 Tw -(Rather than having every program directly manipulating the screen bitmap, all display input/output)Tj -T* -0.1489 Tw -(operations are directed towards windows, which appear as rectangular regions of the screen, with)Tj -T* -0.2444 Tw -[(borders and titles. The Interlisp-D window system provides both interactive and programmatic)]TJ -T* -0.0067 Tw -(constructs for creating, moving, reshaping, overlapping, and destroying windows in such a way that a)Tj -T* -0.0389 Tw -[(program can use a window in a relatively transparent fashion \(see the Windows section below\). This)]TJ -T* -0.4722 Tw -(allows existing Interlisp programs to be used without change, while providing a base for)Tj -T* -0 Tw -(experimentation with more complex windows in new applications.)Tj -0 -2.7778 TD -0.1333 Tw -(Menus are a special type of window provided by the window system, used for displaying a set of)Tj -0 -1.2222 TD -0.1067 Tw -[(items to the user, and having the user select one using the mouse and cursor. The window system)]TJ -T* -0.1433 Tw -[(uses menus to provide the interactive interface for manipulating windows. The menu facility also)]TJ -T* -0 Tw -(allows users to create and use menus in interactive programs \(see the Menus section below\).)Tj -0 -2.7778 TD -0.2278 Tw -[(Sometimes, a program needs to use a number of windows, displaying related information. The)]TJ -0 -1.2222 TD -0.1378 Tw -(attached window facility \(see the Attached Windows section below\) makes it easy to manipulate a)Tj -T* -0 Tw -(group of windows as a single unit, moving and reshaping them together.)Tj -0 -2.7778 TD -0.08 Tw -[(This chapter documents the Interlisp-D window system. First, it describes the default windows and)]TJ -0 -1.2222 TD -0.1978 Tw -[(menus supplied by the window system. Then, the programmatic facilities for creating windows.)]TJ -T* -0 Tw -(Next, the functions for using menus. Finally, the attached window facility.)Tj -0 -2 TD -0.2711 Tw -(Warning: The window system assumes that all programs follow certain conventions concerning)Tj -5.3333 -1.2222 TD -0.1633 Tw -[(control of the screen. All user programs should use perform display operations using)]TJ -T* -0.0867 Tw -[(windows and menus. In particular, user programs should not perform operate directly)]TJ -T* -0.3367 Tw -[(on the screen bitmap; otherwise the window system will not work correctly. For)]TJ -T* -0.1033 Tw -(specialized applications that require taking complete control of the display, the window)Tj -T* -0 Tw -(system can be turned off \(and back on again\) with the following function:)Tj -/TT10 1 Tf -10 0 0 10 102 209.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 209.26 Tm -(WINDOWWORLD)Tj -/F1 1 Tf -10 0 0 10 167.4 209.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 209.26 Tm -(FLAG)Tj -/TT10 1 Tf -10 0 0 10 191.8735 209.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 197.8745 209.26 Tm -[( )-22179.5([NoSpread Function])]TJ --7.9861 -1.8833 TD -0.1656 Tw -(The window system is turned on if )Tj -/TT14 1 Tf -16.8352 0 TD -0 Tw -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1656 Tw -[( is )]TJ -/TT10 1 Tf -1.546 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1656 Tw -[( and off if )]TJ -/TT14 1 Tf -5.191 0 TD -0 Tw -(FLAG)Tj -/TT8 1 Tf -2.4004 0 TD -0.1656 Tw -[( is )]TJ -/TT10 1 Tf -1.546 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1656 Tw -(. )Tj -/TT10 1 Tf -1.0811 0 TD -0 Tw -(WINDOWWORLD)Tj -/TT8 1 Tf --33.4004 -1.2889 TD -0.0344 Tw -(returns the previous state of the window system \()Tj -/TT10 1 Tf -22.2145 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0344 Tw -[( or )]TJ -/TT10 1 Tf -1.5098 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0344 Tw -[(\). If )]TJ -/TT10 1 Tf -2.1063 0 TD -0 Tw -(WINDOWWORLD)Tj -/TT8 1 Tf -6.6011 0 TD -0.0344 Tw -[( is given no)]TJ --34.8321 -1.2889 TD -0 Tw -(arguments, it simply returns the current state without affecting the window system.)Tj -/TT4 1 Tf -10 0 0 10 54 126.77 Tm -(Using the Window System)Tj -ET -1 w -54.01 124.06 m -534.01 124.06 l -S -BT -/TT8 1 Tf -9 0 0 9 78 103.11 Tm -0.2811 Tw -(When Medley is initially started, the display screen lights up, showing a number of windows,)Tj -0 -1.2222 TD -0 Tw -(including the following:)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 4151 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -ET -q -150 0 0 -85 174.01 575.99 cm -/Im1 Do -Q -BT -/TT8 1 Tf -9 0 0 9 126 470.54 Tm -0.1178 Tw -[(This window is the "logo window," used to identify the system. The logo window is bound to the)]TJ -0 -1.2222 TD -0 Tw -(variable )Tj -/TT10 1 Tf -3.8598 0 TD -(LOGOW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0356 Tw -[( until it is closed. The user can create other windows like this by calling the following)]TJ --6.8603 -1.2889 TD -0 Tw -(function:)Tj -/TT10 1 Tf -10 0 0 10 150 425.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 425.66 Tm -(LOGOW)Tj -/F1 1 Tf -10 0 0 10 183 425.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.87 425.66 Tm -(STRING WHERE TITLE ANGLEDELTA)Tj -/TT10 1 Tf -10 0 0 10 342.4955 425.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 348.4965 425.66 Tm -[( )-15514.8([Function])]TJ --19.3885 -1.8833 TD -0.0078 Tw -(Creates a window formatted like the "logo window." )Tj -/TT14 1 Tf -23.862 0 TD -0 Tw -(STRING)Tj -/TT8 1 Tf -3.6006 0 TD -0.0078 Tw -[( is the string to be printed in)]TJ --27.4626 -1.2889 TD -0.0611 Tw -(big type in the window; if )Tj -/TT10 1 Tf -12.0615 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0611 Tw -(, "Medley" is used. )Tj -/TT14 1 Tf -8.9911 0 TD -0 Tw -(WHERE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -[( is the position of the lower-left)]TJ --25.8534 -1.2889 TD -0.0022 Tw -(corner of the window; if )Tj -/TT10 1 Tf -10.9398 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0022 Tw -(, the user is asked to specify a position. )Tj -/TT14 1 Tf -17.7019 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0002 Tc -0.002 Tw -( is the window)Tj --33.4425 -1.2889 TD -0 Tc -0.2244 Tw -(title to use; if )Tj -/TT10 1 Tf -6.8631 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.2244 Tw -(, it defaults to the Xerox copyright notice and date. )Tj -/TT14 1 Tf -25.3395 0 TD -0 Tw -(ANGLEDELTA)Tj -/TT8 1 Tf --34.0029 -1.2889 TD -0.0911 Tw -(specifies the angle \(in degrees\) between the boxes in the picture; if )Tj -/TT10 1 Tf -30.5274 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0911 Tw -(, it defaults to 23)Tj --32.3277 -1.2889 TD -0 Tw -(degrees.)Tj -ET -q -197.5 0 0 -62 255.26 341.16 cm -/Im2 Do -Q -BT -9 0 0 9 126 258.71 Tm -0.0089 Tw -(This window is the "executive window," used for typing expressions and commands to the Interlisp-D)Tj -0 -1.2222 TD -0.1867 Tw -[(executive, and for the executive to print any results \(see Chapter 13\). For example, in the above)]TJ -0 -1.2278 TD -0.01 Tw -(picture, the user typed in )Tj -/TT10 1 Tf -10 0 0 10 228.8118 236.66 Tm -0.024 Tw -(\(PLUS 3 4\))Tj -/TT8 1 Tf -9 0 0 9 289.3016 236.66 Tm -0.01 Tw -[(, the executive evaluated it, and printed out the result, 7. The)]TJ --18.1446 -1.3278 TD -0.0378 Tw -(upward-pointing arrow \()Tj -ET -q -7 0 0 -6 227.11 230.71 cm -/Im3 Do -Q -BT -9 0 0 9 234.1 224.71 Tm -(\) is the flashing caret, which indicates where the next keyboard typein will)Tj --12.0111 -1.2222 TD -0 Tw -(be printed \(see the )Tj -/TT10 1 Tf -8.4194 0 TD -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -( Process and the Caret section in this chapter\).)Tj -ET -q -189.5 0 0 -31.5 259.26 203.56 cm -/Im4 Do -Q -BT -9 0 0 9 126 151.61 Tm -0.2167 Tw -[(This window is the "prompt window," used for printing various system prompt messages. It is)]TJ -0 -1.2222 TD -0 Tw -(available to user programs through the following functions: )Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(PROMPTWINDOW)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.9867 TD -(Global variable containing the prompt window)Tj -/F2 1 Tf -10 0 0 10 362.1519 101.73 Tm -(.)Tj -/TT10 1 Tf --21.2152 -2.228 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 79.45 Tm -(PROMPTPRINT)Tj -/F1 1 Tf -10 0 0 10 215.4 79.45 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 218.27 79.45 Tm -(EXP)Tj -1.8 -0.3333 TD -(1)Tj -/F3 1 Tf -10 0 0 10 239.87 79.45 Tm -( ... )Tj -/TT14 1 Tf -9 0 0 9 253.77 79.45 Tm -(EXP)Tj -1.8 -0.3333 TD -(N)Tj -/TT10 1 Tf -10 0 0 10 275.37 79.45 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 281.3709 79.45 Tm -[( )-18235.4([NoSpread Function])]TJ --11.9301 -2.1778 TD -(Clears the prompt window, and prints )Tj -/TT14 1 Tf -17.2969 0 TD -(EXP)Tj -1.8031 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -( through )Tj -/TT14 1 Tf -4.0903 0 TD -(EXP)Tj -1.7997 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -( in the prompt window.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/F2 17 0 R -/F3 18 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im1 19 0 R -/Im2 20 0 R -/Im3 21 0 R -/Im4 22 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -24 0 obj -<< -/Length 3752 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --30.6 -4.251 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 569.49 Tm -(CLRPROMPT)Tj -/TT10 1 Tf -10 0 0 10 156.6 569.49 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 162.601 569.49 Tm -[( )-30836.6([Function])]TJ --4.0668 -1.8833 TD -(Clears the prompt window.)Tj --5.3333 -2.7778 TD -0.0933 Tw -(The Medley window system allows the user to interactively manipulate the windows on the screen,)Tj -0 -1.2222 TD -0 Tw -(moving them around, changing their shape, etc. by selecting various operations from a menu. )Tj -0 -2.7778 TD -0.0144 Tw -(For most windows, pressing the )Tj -/TT10 1 Tf -14.5087 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0144 Tw -[( mouse button when the cursor is inside a window during I/O)]TJ --17.5092 -1.2889 TD -0 Tw -(wait will cause the window to come to the top and a menu of window operations to appear. )Tj -ET -q -53.25 0 0 -91.5 255.38 461.39 cm -/Im5 Do -Q -BT -9 0 0 9 78 347.44 Tm -0.0533 Tw -(If a command is selected from this menu \(by releasing the right mouse key while the cursor is over a)Tj -0 -1.2222 TD -0.0456 Tw -(command\), the selected operation will be applied to the window in which the menu was brought up.)Tj -T* -0.0567 Tw -(It is possible for an applications program to redefine the action of the )Tj -/TT10 1 Tf -31.4657 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0567 Tw -[( mouse button. In these)]TJ --34.4662 -1.2889 TD -0.1289 Tw -(cases, there is a convention that the default command menu may be brought up by depressing the)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1478 Tw -[( button when the cursor is in the header or border of a window \(see the Mouse Activity in)]TJ --3.0005 -1.2889 TD -0 Tw -(Windows section in this chapter\). The operations are:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(Close)Tj -/TT8 1 Tf -3 0 TD -[( )-26811.1([Window Menu Command])]TJ --0.3333 -1.8444 TD -0.1689 Tw -[(Closes the window, i.e, removes it from the screen. \(See )]TJ -/TT10 1 Tf -26.8856 0 TD -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1689 Tw -[( in the Opening and)]TJ --30.4862 -1.2889 TD -0 Tw -(Closing Windows section in this chapter.\))Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Snap)Tj -/TT8 1 Tf -2.4 0 TD -[( )-27411.1([Window Menu Command])]TJ -0.2667 -1.8444 TD -0.0122 Tw -(Prompts for a region on the screen and makes a new window whose bits are a snapshot of)Tj -0 -1.2222 TD -0.0589 Tw -[(the bits currently in that region. Useful for saving some particularly choice image before)]TJ -T* -0 Tw -(the window image changes.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Paint)Tj -/TT8 1 Tf -3 0 TD -[( )-26811.1([Window Menu Command])]TJ --0.3333 -1.8444 TD -0.2033 Tw -(Switches to a mode in which the cursor can be used like a paint brush to draw in a)Tj -0 -1.2222 TD -0.0567 Tw -[(window. This is useful for making notes on a window. While the )]TJ -/TT10 1 Tf -30.2035 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( button is down,)]TJ --32.6039 -1.2889 TD -0.1122 Tw -[(bits are added. While the )]TJ -/TT10 1 Tf -12.2334 0 TD -0 Tw -(MIDDLE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1122 Tw -[( button is down, they are erased. The )]TJ -/TT10 1 Tf -17.863 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1122 Tw -[( button)]TJ --36.6975 -1.2889 TD -0.2156 Tw -(pops up a command menu that allows changing of the brush shape, size and shade,)Tj -0 -1.2222 TD -0 Tw -(changing the mode of combining the brush with the existing bits, or stopping paint mode.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Clear)Tj -/TT8 1 Tf -3 0 TD -[( )-26811.1([Window Menu Command])]TJ --0.3333 -1.8444 TD -0.0667 Tw -(Clears the window and repositions it to the left margin of the first line of text \(below the)Tj -0 -1.2222 TD -0 Tw -(upper left corner of the window by the amount of the font ascent\).)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/XObject << -/Im5 26 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -28 0 obj -<< -/Length 5131 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 569.54 Tm -(Bury)Tj -/TT8 1 Tf -2.4 0 TD -[( )-27411.1([Window Menu Command])]TJ -0.2667 -1.8444 TD -0.15 Tw -(Puts the window on the bottom of the occlusion stack, thereby exposing any windows)Tj -0 -1.2222 TD -0 Tw -(that it was hiding.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Redisplay)Tj -/TT8 1 Tf -5.4 0 TD -[( )-24411.1([Window Menu Command])]TJ --2.7333 -1.8444 TD -0.0844 Tw -[(Redisplays the window. \(See )]TJ -/TT10 1 Tf -13.6678 0 TD -0 Tw -(REDISPLAYW)Tj -/TT8 1 Tf -6.001 0 TD -0.0844 Tw -[( in the Redisplaying Windows section in this)]TJ --19.6688 -1.2889 TD -0 Tw -(chapter.\))Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Hardcopy)Tj -/TT8 1 Tf -4.8 0 TD -[( )-25011.1([Window Menu Command])]TJ --2.1333 -1.8444 TD -0.0867 Tw -[(Prints the contents of the window to the printer. If the window has a window property)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(HARDCOPYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0656 Tw -(, it is called with two arguments, the window and an image stream to print)Tj --6.001 -1.2889 TD -0.0033 Tw -(to, and the )Tj -/TT10 1 Tf -4.9621 0 TD -0 Tw -(HARDCOPYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0001 Tc -0.0032 Tw -( must do the printing. In this way, special windows can be set up)Tj --10.9631 -1.2889 TD -0 Tc -0.0378 Tw -[(that know how to print their contents in a particular way. If the window does not have a)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(HARDCOPYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.2889 Tw -(, the bitmap image of the window \(including the border and title\) are)Tj --6.001 -1.2889 TD -0 Tw -(printed on the file or printer.)Tj -0 -2 TD -0.0044 Tw -(To save the image in a Press or Interpress-format file, or to send it to a non-default printer,)Tj -0 -1.2222 TD -0.1567 Tw -(use the submenu of the Hardcopy command, indicated by a gray triangle on the right)Tj -T* -0.0067 Tw -[(edge of the Hardcopy menu item. If the mouse is moved off of the right of the menu item,)]TJ -T* -0.0044 Tw -(another pop-up menu will apear giving the choices )Tj -/TT10 1 Tf -22.8979 0 TD -0.0111 Tw -("To a file")Tj -/TT8 1 Tf -6.6233 0 TD -0.0011 Tc -0.0033 Tw -( or )Tj -/TT10 1 Tf -1.4498 0 TD -0 Tc -0.0111 Tw -("To a printer.")Tj -/TT8 1 Tf --30.971 -1.2889 TD -0 Tw -(If )Tj -/TT10 1 Tf -0.9344 0 TD -0.0356 Tw -("To a file")Tj -/TT8 1 Tf -6.6722 0 TD -0.0144 Tw -[( is selected, the user is prompted to supply a file name, and the format of)]TJ --7.6066 -1.2889 TD -0 Tw -(the file \(Press, Interpress, etc.\), and the specified region will be stored in the file.)Tj -0 -2 TD -(If )Tj -/TT10 1 Tf -0.9999 0 TD -0.1933 Tw -("To a printer")Tj -/TT8 1 Tf -8.788 0 TD -0.08 Tw -[( is selected, the user is prompted to select a printer from the list of)]TJ --9.788 -1.2889 TD -0.0867 Tw -[(known printers, or to type the name of another printer. If the printer selected is not the)]TJ -0 -1.2222 TD -0.0389 Tw -(first printer on )Tj -/TT10 1 Tf -6.833 0 TD -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -11.4019 0 TD -0.0389 Tw -[( \(see Chapter 29\), the user will be asked whether)]TJ --18.2348 -1.2889 TD -0.0822 Tw -(to move or add the printer to the beginning of this list, so that future printing will go to)Tj -0 -1.2222 TD -0 Tw -(the new printer.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Move)Tj -/TT8 1 Tf -2.4 0 TD -[( )-27411.1([Window Menu Command])]TJ -0.2667 -1.8444 TD -0.0078 Tw -(Moves the window to a location specified by pressing and then releasing the )Tj -/TT10 1 Tf -34.1538 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0078 Tw -[( button.)]TJ --36.5542 -1.2889 TD -0.1111 Tw -(During this time a ghost frame will indicate where the window will reappear when the)Tj -0 -1.2222 TD -0.2689 Tw -[(key is released. \(See )]TJ -/TT10 1 Tf -10.6242 0 TD -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf -8.4014 0 TD -0.2689 Tw -[( in the Interactive Display Functions section)]TJ --19.0256 -1.2889 TD -0 Tw -(below.\))Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Shape)Tj -/TT8 1 Tf -3 0 TD -[( )-26811.1([Window Menu Command])]TJ --0.3333 -1.8444 TD -0.1289 Tw -[(Allows the user to specify a new region for the existing window contents. If the )]TJ -/TT10 1 Tf -37.5984 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf --37.5984 -1.2889 TD -0.0744 Tw -(button is used to specify the new region, the reshaped window can be placed anywhere.)Tj -0 -1.2222 TD -0.0444 Tw -(If the )Tj -/TT10 1 Tf -2.646 0 TD -0 Tw -(MIDDLE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0444 Tw -[( button is used, the cursor will start out tugging at the nearest corner of the)]TJ --6.2466 -1.2889 TD -0.2467 Tw -(existing window, which is useful for making small adjustments in a window that is)Tj -0 -1.2222 TD -0.3444 Tw -(already positioned correctly. This is done by calling the function )Tj -/TT10 1 Tf -32.1002 0 TD -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -3.6006 0 TD -0.3444 Tw -[( \(see the)]TJ --35.7008 -1.2889 TD -0 Tw -(Reshaping Windows section below\).)Tj --5.3333 -2.7778 TD -0.0622 Tw -(Occasionally, a user will have a number of large windows on the screen, making it difficult to access)Tj -0 -1.2222 TD -0.1078 Tw -[(those windows being used. To help with the problem of screen space management, the Interlisp-D)]TJ -T* -0.1933 Tw -[(window system allows the creation of "icons." An icon is a small rectangle \(containing text or a)]TJ -ET -endstream -endobj -29 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -31 0 obj -<< -/Length 4450 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.16 Tw -[(bitmap\) which is a "shrunken-down" form of a particular window. Using the Shrink and Expand)]TJ -0 -1.2222 TD -0.0589 Tw -(commands, the user can shrink windows not currently being used into icons, and quickly restore the)Tj -T* -0 Tw -(original windows at any time.)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(Shrink)Tj -/TT8 1 Tf -3.6 0 TD -[( )-26211.1([Window Menu Command])]TJ --0.9333 -1.8444 TD -0.2433 Tw -[(Removes the window from the screen and brings up its icon. \(See )]TJ -/TT10 1 Tf -32.5564 0 TD -0 Tw -(SHRINKW)Tj -/TT8 1 Tf -4.2007 0 TD -0.2433 Tw -[( in the)]TJ --36.7571 -1.2889 TD -0.13 Tw -[(Shrinking Windows into Icons section in this chapter\) The window can be restored by)]TJ -0 -1.2222 TD -0 Tw -(selecting Expand from the window command menu of the icon.)Tj --5.3333 -2.7778 TD -0.0111 Tw -(If the )Tj -/TT10 1 Tf -2.5794 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0111 Tw -[( button is pressed while the cursor is in an icon, the window command menu will contain)]TJ --5.5798 -1.2889 TD -0.2 Tw -[(a slightly different set of commands. The Redisplay and Clear commands are removed, and the)]TJ -0 -1.2222 TD -0 Tw -(Shrink command is replaced with the Expand command:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(Expand)Tj -/TT8 1 Tf -3.6 0 TD -[( )-26211.1([Window Menu Command])]TJ --0.9333 -1.8444 TD -0.0078 Tw -[(Restores the window associated with this icon and removes the icon. \(See )]TJ -/TT10 1 Tf -33.0196 0 TD -0 Tw -(EXPANDW)Tj -/TT8 1 Tf -4.2007 0 TD -0.0078 Tw -[( in the)]TJ --37.2203 -1.2889 TD -0 Tw -(Shrinking Windows into Icons section in this chapter.\))Tj -0 -2 TD -0.1733 Tw -(If the )Tj -/TT10 1 Tf -2.9038 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1733 Tw -[( button is pressed while the cursor is not in any window, a "background)]TJ --5.9043 -1.2889 TD -0 Tw -(menu" appears with the following operations:)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Idle)Tj -/TT8 1 Tf -2.4 0 TD -[( )-25871.1([Background Menu Command])]TJ -0.2667 -1.8444 TD -0.2278 Tw -(Enters "idle mode" \(see Chapter 12\), which blacks out the display screen to save the)Tj -0 -1.2222 TD -0.0522 Tw -[(phosphor. Idle mode can be exited by pressing any key on the keyboard or mouse. This)]TJ -T* -0.0544 Tw -(menu command has subitems that allow the user to interactively set idle options to erase)Tj -T* -0.2122 Tw -(the password cache \(for security\), to request a password before exiting idle mode, to)Tj -T* -0 Tw -(change the timeout before idle mode is entered automatically, etc.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(SaveVM)Tj -/TT8 1 Tf -3.6 0 TD -[( )-24671.1([Background Menu Command])]TJ --0.9333 -1.8444 TD -0.0556 Tw -(Calls the function )Tj -/TT10 1 Tf -8.2257 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0556 Tw -[( \(see Chapter 12\), which writes out all of the dirty pages of the)]TJ --11.8263 -1.2889 TD -0.08 Tw -[(virtual memory. After a )]TJ -/TT10 1 Tf -11.4239 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -(, and until the pagefault handler is next forced to write)Tj --15.0245 -1.2889 TD -0.2178 Tw -(out a dirty page, your virtual memory image will be continuable \(as of the )Tj -/TT10 1 Tf -36.0709 0 TD -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -3.6006 0 TD -(\))Tj --39.6715 -1.2889 TD -(should you experience a system crash or other disaster.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Snap)Tj -/TT8 1 Tf -2.4 0 TD -[( )-25871.1([Background Menu Command])]TJ -0.2667 -1.8444 TD -(The same as the window menu command Snap described above.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(Hardcopy)Tj -/TT8 1 Tf -4.8 0 TD -[( )-23471.1([Background Menu Command])]TJ --2.1333 -1.8444 TD -0.0733 Tw -(Prompts for a region on the screen, and sends the bitmap image to the printer by calling)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(HARDCOPYW)Tj -/TT8 1 Tf -5.4009 0 TD -( \(see Chapter 29\). Note that the region can cross window boundaries.)Tj --5.4009 -2.0667 TD -0.0222 Tw -(Like the Hardcopy window menu command \(above\), the user can print to a file or specify)Tj -0 -1.2222 TD -0 Tw -(a printer by using a submenu.)Tj -/TT12 1 Tf --2.6667 -2.4822 TD -(PSW)Tj -/TT6 1 Tf -10 0 0 10 118.2026 68.8 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 120.98 68.8 Tm -[( )-26412.2([Background Menu Command])]TJ -0.5578 -1.8444 TD -0.06 Tw -(Prompts the user for a position on the screen, and creates a "process status window" that)Tj -0 -1.2222 TD -0 Tw -(allows the user to examine and manipulate all of the existing processes \(see Chapter 23\).)Tj -ET -endstream -endobj -32 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -34 0 obj -<< -/Length 5838 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.1 Tw -(Various system utilities \(TEdit, SEdit, )Tj -/TT10 1 Tf -17.2935 0 TD -0 Tw -(TTYIN)Tj -/TT8 1 Tf -3.0005 0 TD -0.1 Tw -(\) allow information to be "copy-inserted" at)Tj --20.2939 -1.2889 TD -0.1022 Tw -(the current cursor position by selecting it with the "copy" key held down \(Normally the)Tj -0 -1.2222 TD -0.0078 Tw -[(shift keys are the "copy" key; this action can be changed in the key action table.\) To "copy-)]TJ -T* -0.0133 Tw -[(insert" the bitmap of a snap into a Tedit document. If the right mouse button is pressed in)]TJ -T* -0.2578 Tw -(the background with the copy key held down, a menu with the single item ")Tj -/TT10 1 Tf -37.2271 0 TD -0 Tw -(SNAP)Tj -/TT8 1 Tf -2.4004 0 TD -(")Tj --39.6274 -1.2889 TD -0.1478 Tw -[(appears. If this item is selected, the user is prompted to select a region, and a bitmap)]TJ -0 -1.2222 TD -0.1089 Tw -(containing the bits in that region of the screen is inserted into the current tty process, if)Tj -T* -0 Tw -(that process is able to accept image objects.)Tj -0 -2 TD -0.0789 Tw -(Some built-in facilities and Lispusers packages add commands to the background menu,)Tj -0 -1.2222 TD -0.1411 Tw -[(to provide an easy way of calling the different facilities. The user can determine what)]TJ -T* -0.0844 Tw -(these new commands do by holding the )Tj -/TT10 1 Tf -18.5105 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0844 Tw -[( button down for a few seconds over the)]TJ --21.511 -1.2889 TD -0 Tw -(item in question; an explanatory message will be printed in the prompt window.)Tj -/TT4 1 Tf -10 0 0 10 102 397.4 Tm -(Changing the Window System)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 394.69 m -582.01 394.69 l -S -BT -/TT8 1 Tf -9 0 0 9 126 373.74 Tm -0.1278 Tw -(The following functions provide a functional interface to the interactive window operations so that)Tj -0 -1.2222 TD -0 Tw -(user programs can call them directly.)Tj -/TT10 1 Tf -10 0 0 10 150 340.46 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 340.46 Tm -(DOWINDOWCOM)Tj -/F2 1 Tf -10 0 0 10 215.4 340.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 218.18 340.46 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 250.5853 340.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 256.5862 340.46 Tm -[( )-25727.1([Function])]TJ --9.1763 -1.8833 TD -(If )Tj -/TT14 1 Tf -1.1121 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1922 Tw -[( is a )]TJ -/TT14 1 Tf -2.5415 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1922 Tw -[( that has a )]TJ -/TT10 1 Tf -5.5091 0 TD -0 Tw -(DOWINDOWCOMFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.1922 Tw -[( window property, it )]TJ -/TT10 1 Tf -10.2332 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.1922 Tw -(s that)Tj --37.399 -1.2889 TD -0.0389 Tw -(property to )Tj -/TT14 1 Tf -5.3493 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0389 Tw -[(. Shrunken windows have a )]TJ -/TT10 1 Tf -13.0351 0 TD -0 Tw -(DOWINDOWCOMFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0389 Tw -[( property that presents)]TJ --29.7862 -1.2889 TD -0 Tw -(a window command menu that contains "expand" instead of "shrink".)Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -0.9966 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0767 Tw -[( is a )]TJ -/TT14 1 Tf -2.1948 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0767 Tw -[( that doesnt have a )]TJ -/TT10 1 Tf -9.2393 0 TD -0 Tw -(DOWINDOWCOMFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.0767 Tw -[( window property, it brings)]TJ --27.4332 -1.2889 TD -0.0278 Tw -[(up the window command menu. The initial items in these menus are described above. If)]TJ -0 -1.2222 TD -0.2656 Tw -(the user selects one of the items from the provided menu, that item is )Tj -/TT10 1 Tf -34.5161 0 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -0.2656 Tw -(ed to)Tj -/TT14 1 Tf --37.5166 -1.2889 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --3.6006 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(DOBACKGROUNDCOM)Tj -/TT8 1 Tf -9.0015 0 TD -( \(below\) is called.)Tj --17.0371 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( is not a )Tj -/TT14 1 Tf -3.6689 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( or )Tj -/TT10 1 Tf -1.4409 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(DOWINDOWCOM)Tj -/TT8 1 Tf -6.6011 0 TD -( simply returns without doing anything.)Tj -/TT10 1 Tf -10 0 0 10 150 189.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 189.26 Tm -(DOBACKGROUNDCOM)Tj -/TT10 1 Tf -10 0 0 10 237 189.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 243.001 189.26 Tm -[( )-27236.6([Function])]TJ --7.6668 -1.8833 TD -0.0922 Tw -[(Brings up the background menu. The initial items in this menu are described above. If)]TJ -0 -1.2222 TD -0 Tw -(the user selects one of the items from the menu, that item is )Tj -/TT10 1 Tf -26.4497 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(ed.)Tj --34.1834 -2.8444 TD -0.0844 Tw -[(The window command menu for unshrunken windows is cached in the variable WindowMenu. To)]TJ -0 -1.2222 TD -0.0656 Tw -(change the entries in this menu, the user should change the change the menu "command lists" in the)Tj -T* -0 Tw -(variable WindowMenuCommands, and set the appropriate menu variable to a non-)Tj -/TT10 1 Tf -37.03 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(, so the menu)Tj --39.4304 -1.2889 TD -0.0889 Tw -[(will be recreated. This provides a way of adding commands to the menu, of changing its font or of)]TJ -0 -1.2222 TD -0.0622 Tw -[(restoring the menu if it gets clobbered. The window command menus for icons and the background)]TJ -T* -0.1733 Tw -[(have similar pairs of variables, documented below. The "command lists" are in the format of the)]TJ -/TT10 1 Tf -T* -0 Tw -(ITEMS)Tj -/TT8 1 Tf -3.0005 0 TD -( field of a menu \(see the Menu Fields section below\), except as specified below.)Tj -4.9995 -2.0667 TD -(Note: Command menus are recreated using the current value of )Tj -/TT10 1 Tf -28.7324 0 TD -(MENUFONT)Tj -/TT8 1 Tf -4.8008 0 TD -(.)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 17 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -37 0 obj -<< -/Length 6434 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT12 1 Tf -9 0 0 9 102 569.54 Tm -(WindowMenu)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ -/TT12 1 Tf --6 -1.0667 TD -(WindowMenuCommands)Tj -/TT8 1 Tf -10.8 0 TD -[( )-26967.8([Variable])]TJ --8.1333 -1.8444 TD -0.0967 Tw -(The menu that is brought up in response to a right button in an unshrunken window is)Tj -0 -1.2222 TD -0.0544 Tw -(stored on the variable )Tj -/TT10 1 Tf -10.0879 0 TD -0 Tw -(WindowMenu)Tj -/TT8 1 Tf -6.001 0 TD -0.0544 Tw -[(. If )]TJ -/TT10 1 Tf -1.8333 0 TD -0 Tw -(WindowMenu)Tj -/TT8 1 Tf -6.001 0 TD -0.0544 Tw -[( is set to a non-)]TJ -/TT10 1 Tf -6.8811 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0544 Tw -(, the menu will)Tj --33.2046 -1.2889 TD -0.2678 Tw -(be recreated from the list of commands )Tj -/TT10 1 Tf -19.3915 0 TD -0 Tw -(WindowMenuCommands)Tj -/TT8 1 Tf -10.8018 0 TD -0.2678 Tw -[(. The )]TJ -/TT10 1 Tf -3.4772 0 TD -0 Tw -(CADR)Tj -/TT8 1 Tf -2.4004 0 TD -0.2678 Tw -[( of each)]TJ --36.0708 -1.2889 TD -0.2822 Tw -(command added to )Tj -/TT10 1 Tf -9.7285 0 TD -0 Tw -(WindowMenuCommands)Tj -/TT8 1 Tf -10.8018 0 TD -0.2822 Tw -[( should be a function name that will be)]TJ -/TT10 1 Tf --20.5303 -1.2889 TD -0 Tw -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -(ed to the window.)Tj -/TT12 1 Tf --5.6672 -2.4 TD -(IconWindowMenu)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ -/TT12 1 Tf --8.4 -1.0667 TD -(IconWindowMenuCommands)Tj -/TT8 1 Tf -13.2 0 TD -[( )-24567.8([Variable])]TJ --10.5333 -1.8444 TD -0.0167 Tw -(The menu that is brought up in response to a right button in a shrunken window is stored)Tj -0 -1.2222 TD -0.0711 Tw -(on the variable )Tj -/TT10 1 Tf -7.0527 0 TD -0 Tw -(IconWindowMenu)Tj -/TT8 1 Tf -8.4014 0 TD -0.0711 Tw -[(. If it is )]TJ -/TT10 1 Tf -3.8575 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -(, it is recreated from the list of commands)Tj -/TT10 1 Tf --21.1119 -1.2889 TD -0 Tw -(IconWindowMenuCommands)Tj -/TT8 1 Tf -13.2021 0 TD -0.1089 Tw -[(. The )]TJ -/TT10 1 Tf -3.0005 0 TD -0 Tw -(CADR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1089 Tw -[( of each command added a function name that)]TJ --18.603 -1.2889 TD -0 Tw -(will be )Tj -/TT10 1 Tf -3.2393 0 TD -(APPLY)Tj -/TT8 1 Tf -3.0005 0 TD -(ed to the window.)Tj -/TT12 1 Tf --8.9064 -2.4 TD -(BackgroundMenu)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ -/TT12 1 Tf --8.4 -1.0667 TD -(BackgroundMenuCommands)Tj -/TT8 1 Tf -13.2 0 TD -[( )-24567.8([Variable])]TJ --10.5333 -1.8445 TD -0.0478 Tw -(The menu that is brought up in response to a right button in the background is stored on)Tj -0 -1.2222 TD -0.1678 Tw -(the variable )Tj -/TT10 1 Tf -5.797 0 TD -0 Tw -(BackgroundMenu)Tj -/TT8 1 Tf -8.4014 0 TD -0.1678 Tw -[(. If it is )]TJ -/TT10 1 Tf -4.3408 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1678 Tw -(, it is recreated from the list of commands)Tj --20.3395 -1.2889 TD -1.1878 Tw -[(BackgroundMenuCommands. The )]TJ -/TT10 1 Tf -19.388 0 TD -0 Tw -(CADR)Tj -/TT8 1 Tf -2.4004 0 TD -1.1878 Tw -[( of each command added to)]TJ --21.7884 -1.2889 TD -0 Tw -(BackgroundMenuCommands should be a form that will be )Tj -/TT10 1 Tf -26.3701 0 TD -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(ed.)Tj -/TT12 1 Tf --31.4372 -2.4 TD -(BackgroundCopyMenu)Tj -/TT8 1 Tf -10.8018 0 TD -[( )-26966([Variable])]TJ -/TT12 1 Tf --10.8018 -1.0667 TD -(BackgroundCopyMenuCommands)Tj -/TT8 1 Tf -15.6025 0 TD -[( )-22165.2([Variable])]TJ --12.9359 -1.8444 TD -0.1144 Tw -(The menu that is brought up in response to a right button in the background when the)Tj -0 -1.2222 TD -0.1844 Tw -(copy key is down is stored on the variable )Tj -/TT10 1 Tf -20.5208 0 TD -0 Tw -(BackgroundCopyMenu)Tj -/TT8 1 Tf -10.8018 0 TD -0.1844 Tw -[(. If it is )]TJ -/TT10 1 Tf -4.4242 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1844 Tw -(, it is)Tj --37.5471 -1.2889 TD -0.1989 Tw -[(recreated from the list of commands BackgroundCopyMenuCommands. The )]TJ -/TT10 1 Tf -36.2617 0 TD -0 Tw -(CADR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1989 Tw -[( of)]TJ --38.6621 -1.2889 TD -0.0267 Tw -(each command added to )Tj -/TT10 1 Tf -11.2434 0 TD -0 Tw -(BackgroundCopyMenuCommands)Tj -/TT8 1 Tf -15.6025 0 TD -0.0267 Tw -[( should be a form that will be)]TJ -/TT10 1 Tf --26.8459 -1.2889 TD -0 Tw -(EVAL)Tj -/TT8 1 Tf -2.4004 0 TD -(ed.)Tj -/TT4 1 Tf -10 0 0 10 54 197 Tm -(Interactive Display Functions)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 194.29 m -534.01 194.29 l -S -BT -/TT8 1 Tf -9 0 0 9 78 173.34 Tm -0.0033 Tw -(The following functions can be used by programs to allow the user to interactively specify positions or)Tj -0 -1.2222 TD -0 Tw -(regions on the display screen.)Tj -/TT10 1 Tf -10 0 0 10 102 140.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 140.06 Tm -(GETPOSITION)Tj -/F1 1 Tf -10 0 0 10 167.4 140.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 140.06 Tm -(WINDOW CURSOR)Tj -/TT10 1 Tf -10 0 0 10 240.4814 140.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.4824 140.06 Tm -[( )-21516.4([Function])]TJ --13.3869 -1.8833 TD -0.1344 Tw -(Returns a )Tj -/TT10 1 Tf -4.7459 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.1344 Tw -[( that is specified by the user. )]TJ -/TT10 1 Tf -14.1249 0 TD -0 Tw -(GETPOSITION)Tj -/TT8 1 Tf -6.6011 0 TD -0.1344 Tw -[( waits for the user to)]TJ --30.2727 -1.2889 TD -0.0678 Tw -(press and release the left button of the mouse and returns the cursor position at the time)Tj -0 -1.2222 TD -0.2378 Tw -[(of release. If )]TJ -/TT14 1 Tf -6.7968 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2378 Tw -[( is a )]TJ -/TT14 1 Tf -2.6782 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2378 Tw -(, the position will be in the coordinate system of)Tj -/TT14 1 Tf --16.6762 -1.2889 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[(s display stream. If )]TJ -/TT14 1 Tf -9.3579 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[( is )]TJ -/TT10 1 Tf -1.2971 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -[(, the position will be in screen coordinates. If)]TJ -/TT14 1 Tf --19.6564 -1.2889 TD -0 Tw -(CURSOR)Tj -/TT8 1 Tf -3.6006 0 TD -0.4667 Tw -[( is a )]TJ -/TT14 1 Tf -3.3648 0 TD -0 Tw -(CURSOR)Tj -/TT8 1 Tf -3.6006 0 TD -0.4667 Tw -[( \(see Chapter 30\), the cursor will be changed to it while)]TJ -/TT10 1 Tf --10.566 -1.2889 TD -0 Tw -(GETPOSITION)Tj -/TT8 1 Tf -6.6011 0 TD -0.4467 Tw -[( is running. If )]TJ -/TT14 1 Tf -8.7094 0 TD -0 Tw -(CURSOR)Tj -/TT8 1 Tf -3.6006 0 TD -0.4467 Tw -[( is )]TJ -/TT10 1 Tf -2.1082 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.4467 Tw -(, the value of the system variable)Tj -/TT10 1 Tf --22.8195 -2.2389 TD -0 Tw -(CROSSHAIRS)Tj -/TT8 1 Tf -6.001 0 TD -( will be used as the cursor: )Tj -ET -q -15 0 0 -15 287.81 60.56 cm -/Im6 Do -Q -BT -9 0 0 9 302.8 45.56 Tm -(.)Tj -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im6 39 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -41 0 obj -<< -/Length 5498 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 568.26 Tm -(GETBOXPOSITION)Tj -/F1 1 Tf -10 0 0 10 231.6 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.47 568.26 Tm -(BOXWIDTH BOXHEIGHT ORGX ORGY WINDOW PROMPTMSG)Tj -/TT10 1 Tf -10 0 0 10 477.5095 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 483.5105 568.26 Tm -[( )-513.3([Function])]TJ --34.3901 -1.8833 TD -0.1889 Tw -(Allows the user to position a "ghost" region of size )Tj -/TT14 1 Tf -24.4177 0 TD -0 Tw -(BOXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.1889 Tw -[( by )]TJ -/TT14 1 Tf -1.9872 0 TD -0 Tw -(BOXHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.1889 Tw -[( on the)]TJ --36.6065 -1.2889 TD -0.0389 Tw -(screen, and returns the )Tj -/TT10 1 Tf -10.4925 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0389 Tw -[( of the lower left corner of the region. If )]TJ -/TT14 1 Tf -18.294 0 TD -0 Tw -(PROMPTMSG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0389 Tw -[( is)]TJ --38.9881 -1.2889 TD -0 Tw -(non-)Tj -/TT10 1 Tf -2.043 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.7378 0 TD -(GETBOXPOSITION)Tj -/TT8 1 Tf -8.4014 0 TD -0.2378 Tw -[( first prints it in the )]TJ -/TT10 1 Tf -10.1923 0 TD -0 Tw -(PROMPTWINDOW)Tj -/TT8 1 Tf -7.2012 0 TD -0.2378 Tw -(. )Tj -/TT10 1 Tf -1.2256 0 TD -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf --31.6014 -1.9056 TD -0.0289 Tw -(then changes the cursor to a box \(using the global variable )Tj -/TT10 1 Tf -26.2729 0 TD -0 Tw -(BOXCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -(: )Tj -ET -q -12 0 0 -12 463.83 522.96 cm -/Im7 Do -Q -BT -9 0 0 9 475.82 510.96 Tm -0.0289 Tw -[(\). If )]TJ -/TT14 1 Tf -2.0896 0 TD -0 Tw -(ORGX)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( and)]TJ -/TT14 1 Tf --38.0255 -1.2889 TD -0 Tw -(ORGY)Tj -/TT8 1 Tf -2.4004 0 TD -0.0433 Tw -[( are numbers, they are taken to be the original position of the region, and the cursor)]TJ --2.4004 -1.2889 TD -0.1089 Tw -[(is moved to the nearest corner of that region. A ghost region is locked to the cursor so)]TJ -0 -1.2222 TD -0.2433 Tw -[(that if the cursor is moved, the ghost region moves with it. If )]TJ -/TT14 1 Tf -30.6445 0 TD -0 Tw -(ORGX)Tj -/TT8 1 Tf -2.4004 0 TD -0.2433 Tw -[( and )]TJ -/TT14 1 Tf -2.6795 0 TD -0 Tw -(ORGY)Tj -/TT8 1 Tf -2.4004 0 TD -0.2433 Tw -[( are)]TJ --38.1248 -1.2889 TD -0.0422 Tw -(numbers, the corner of the region formed by \()Tj -/TT14 1 Tf -20.5389 0 TD -0.1011 Tw -(ORGX ORGY BOXWIDTH BOXHEIGHT)Tj -/TT8 1 Tf -17.1061 0 TD -0.0422 Tw -(\) that)Tj --37.645 -1.2889 TD -0.0233 Tw -[(is nearest the cursor position is locked, otherwise the lower left corner is locked. The user)]TJ -0 -1.2222 TD -0.1278 Tw -[(can change to another corner by holding down the right button. With the right button)]TJ -T* -0.0078 Tw -(down, the cursor can be moved across the screen without effect on the ghost region frame.)Tj -T* -0.0933 Tw -(When the right button is released, the mouse will snap to the nearest corner, which will)Tj -T* -0.0044 Tw -(then become locked to the cursor. \(The held corner can be changed after the left or middle)Tj -T* -0.0711 Tw -(button is down by holding both the original button and the right button down while the)Tj -T* -0.0967 Tw -[(cursor is moved to the desired new corner, then letting up just the right button.\) When)]TJ -T* -0.0367 Tw -(the left or middle button is pressed and released, the lower left corner of the region at the)Tj -T* -0.2156 Tw -[(time of release is returned. If )]TJ -/TT14 1 Tf -14.6686 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2156 Tw -[( is a )]TJ -/TT14 1 Tf -2.6115 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2156 Tw -(, the returned position will be in)Tj -/TT14 1 Tf --24.4812 -1.2889 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(s coordinate system; otherwise it will be in screen coordinates.)Tj -0.3994 -2.0667 TD -(Example:)Tj -/TT10 1 Tf -1.3333 -1.9333 TD -(\(GETBOXPOSITION 100 200 NIL NIL NIL)Tj -0 -1.2222 TD -( "Specify the position of the command area."\))Tj -/TT8 1 Tf --5.3333 -2.0667 TD -0.1233 Tw -(prompts the user for a 100 wide by 200 high region and returns its lower left corner in)Tj -0 -1.2222 TD -0 Tw -(screen coordinates.)Tj -/TT10 1 Tf -10 0 0 10 150 255.08 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 255.08 Tm -(GETREGION)Tj -/F1 1 Tf -10 0 0 10 204.6 255.08 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.47 255.08 Tm -(MINWIDTH MINHEIGHT OLDREGION NEWREGIONFN NEWREGIONFNARG)Tj --5.7189 -1.1111 TD -(INITCORNERS)Tj -/TT10 1 Tf -10 0 0 10 215.4097 245.08 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 221.4106 245.08 Tm -[( )-29635.5([Function])]TJ --5.2678 -1.8833 TD -0.3611 Tw -(Lets the user specify a new region and returns that region in screen coordinates.)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(GETREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.16 Tw -[( prompts for a region by displaying a four-pronged box next to the cursor)]TJ --5.4009 -2.1278 TD -0.0256 Tw -(arrow at one corner of a "ghost" region: )Tj -ET -q -16 0 0 -14 334.24 211.98 cm -/Im8 Do -Q -BT -9 0 0 9 350.23 197.98 Tm -[(. If the user presses the left button, the corner)]TJ --19.5811 -1.2222 TD -0.1178 Tw -[(of a "ghost" region opposite the cursor is locked where it is. Once one corner has been)]TJ -T* -0 Tw -(fixed, the ghost region expands as the cursor moves.)Tj -0 -2 TD -(To specify a region:)Tj -4 -2 TD -[(1.)-1250(Move the ghost box so that the corner opposite the cursor is at one)]TJ -2 -1.2222 TD -(corner of the intended region. )Tj --2 -2 TD -[(2.)-1250(Press the left button. )]TJ -T* -[(3.)-1250(Move the cursor to the position of the opposite corner of the intended)]TJ -2 -1.2222 TD -(region while holding down the left button. )Tj --2 -2 TD -[(4.)-1250(Release the left button. )]TJ -ET -endstream -endobj -42 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im7 43 0 R -/Im8 44 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -46 0 obj -<< -/Length 7012 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0356 Tw -(Before one corner has been fixed, one can switch the cursor to another corner of the ghost)Tj -0 -1.2222 TD -0.0189 Tw -[(region by holding down the right button. With the right button down, the cursor changes)]TJ -0 -2.2833 TD -0.1122 Tw -(to a "forceps" \()Tj -ET -q -12 0 0 -16 186.82 553.99 cm -/Im9 Do -Q -BT -9 0 0 9 198.81 537.99 Tm -(\) and the cursor can be moved across the screen without effect on the)Tj --8.09 -1.2222 TD -0.0422 Tw -[(ghost region frame. When the right button is released, the cursor will snap to the nearest)]TJ -T* -0 Tw -(corner of the ghost region.)Tj -0 -2 TD -0.1844 Tw -[(After one corner has been fixed, one can still switch to another corner. To change to)]TJ -0 -1.2222 TD -0.1533 Tw -(another corner, continue to hold down the left button and hold down the right button)Tj -T* -0.0789 Tw -[(also. With both buttons down, the cursor can be moved across the screen without effect)]TJ -T* -0.0644 Tw -[(on the ghost region frame. When the right button is released, the cursor will snap to the)]TJ -T* -0.1567 Tw -[(nearest corner, which will become the moving corner. In this way, the region may be)]TJ -T* -0 Tw -(moved all over the screen, before its size and position is finalized.)Tj -0 -2 TD -0.4244 Tw -(The size of the initial ghost region is controlled by the )Tj -/TT14 1 Tf -28.6303 0 TD -0 Tw -(MINWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -(, )Tj -/TT14 1 Tf -0.9244 0 TD -(MINHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -(,)Tj -/TT14 1 Tf --39.7564 -1.2889 TD -(OLDREGION)Tj -/TT8 1 Tf -5.4009 0 TD -(, and )Tj -/TT14 1 Tf -2.4429 0 TD -(INITCORNERS)Tj -/TT8 1 Tf -6.6011 0 TD -( arguments.)Tj --14.4448 -2.0667 TD -(If )Tj -/TT14 1 Tf -1.0555 0 TD -(INITCORNERS)Tj -/TT8 1 Tf -6.6011 0 TD -0.1356 Tw -[( is non-)]TJ -/TT10 1 Tf -3.5289 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1356 Tw -(, it should be a list specifying the initial corners of a ghost)Tj --12.9858 -1.2889 TD -0.0622 Tw -(region of the form \()Tj -/TT14 1 Tf -8.8539 0 TD -0.1478 Tw -(BASEX BASEY OPPX OPPY)Tj -/TT8 1 Tf -13.0454 0 TD -0.0622 Tw -(\), where \()Tj -/TT14 1 Tf -4.3095 0 TD -0.1478 Tw -(BASEX, BASEY)Tj -/TT8 1 Tf -7.349 0 TD -0.0622 Tw -(\) describes the)Tj --33.5577 -1.2889 TD -0.0789 Tw -(anchored corner of the box, and \()Tj -/TT14 1 Tf -15.1101 0 TD -0.19 Tw -(OPPX, OPPY)Tj -/TT8 1 Tf -6.191 0 TD -0.0789 Tw -(\) describes the trackable corner \(in screen)Tj --21.301 -1.2889 TD -0 Tw -(coordinates\). The cursor is moved to \()Tj -/TT14 1 Tf -16.9605 0 TD -(OPPX, OPPY)Tj -/TT8 1 Tf -6.001 0 TD -(\).)Tj --22.9614 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9921 0 TD -(INITCORNERS)Tj -/TT8 1 Tf -6.6011 0 TD -0.0722 Tw -[( is )]TJ -/TT10 1 Tf -1.3593 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0722 Tw -(, the ghost region will be )Tj -/TT14 1 Tf -11.593 0 TD -0 Tw -(MINWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.0722 Tw -[( wide and )]TJ -/TT14 1 Tf -4.8744 0 TD -0 Tw -(MINHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0722 Tw -[( high.)]TJ --37.4218 -1.2889 TD -0 Tw -(If )Tj -/TT14 1 Tf -1.0599 0 TD -(MINWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.14 Tw -[( or )]TJ -/TT14 1 Tf -1.7209 0 TD -0 Tw -(MINHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.14 Tw -[( is )]TJ -/TT10 1 Tf -1.4948 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.14 Tw -[(, 0 is used. Thus, for a call to )]TJ -/TT10 1 Tf -14.3751 0 TD -0 Tw -(GETREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.14 Tw -[( with no)]TJ --36.0536 -1.2889 TD -0.0489 Tw -[(arguments specified, there will be no initial ghost region. The cursor will be in the lower)]TJ -0 -1.2222 TD -0 Tw -(right corner of the region, if there is one. )Tj -0 -2 TD -(If )Tj -/TT14 1 Tf -1.2988 0 TD -(OLDREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.3789 Tw -[( is a region and the user presses the middle button, the corner of)]TJ -/TT14 1 Tf --6.6997 -1.2889 TD -0 Tw -(OLDREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0578 Tw -[( farthest from the cursor position is fixed and the corner nearest the cursor is)]TJ --5.4009 -1.2889 TD -0 Tw -(locked to the cursor.)Tj -/TT14 1 Tf -0 -2 TD -(MINWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.31 Tw -[( and )]TJ -/TT14 1 Tf -2.8129 0 TD -0 Tw -(MINHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.31 Tw -(, if given, are the smallest )Tj -/TT14 1 Tf -13.3361 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.31 Tw -[( and )]TJ -/TT14 1 Tf -2.8129 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.31 Tw -[( that the)]TJ --35.7646 -1.2889 TD -0.0867 Tw -[(returned region will have. The ghost image will not get any smaller than )]TJ -/TT14 1 Tf -33.7461 0 TD -0 Tw -(MINWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.0867 Tw -[( by)]TJ -/TT14 1 Tf --38.5468 -1.2889 TD -0 Tw -(MINHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --5.4009 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9855 0 TD -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.0656 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3889 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0656 Tw -(, it will be called to determine values for the positions of the)Tj --12.7758 -1.2889 TD -0.0311 Tw -[(corners. This provides a way of "filtering" prospective regions; for instance, by restricting)]TJ -0 -1.2222 TD -0.0756 Tw -[(the region to lie on an arbitrary grid. When the user is specifying a region, the region is)]TJ -T* -0.1556 Tw -(determined by two of its corners, one that is fixed and one that is tracking the cursor.)Tj -T* -0.1167 Tw -(Each time the cursor moves or a mouse button is pressed, )Tj -/TT14 1 Tf -26.9288 0 TD -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.1167 Tw -[( is called with)]TJ --33.5299 -1.2889 TD -0.0533 Tw -(three arguments: )Tj -/TT14 1 Tf -7.8659 0 TD -0 Tw -(FIXEDPOINT)Tj -/TT8 1 Tf -6.001 0 TD -0.0533 Tw -(, the position of the fixed corner of the prospective region;)Tj -/TT14 1 Tf --13.8669 -1.2889 TD -0 Tw -(MOVINGPOINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.3889 Tw -(, the position of the opposite corner of the prospective region; and)Tj -/TT14 1 Tf --6.6011 -1.2889 TD -0 Tw -(NEWREGIONFNARG)Tj -/TT8 1 Tf -8.4014 0 TD -0.4678 Tw -[(. )]TJ -/TT14 1 Tf -2.4033 0 TD -0 Tw -(NEWREGIONFNARG)Tj -/TT8 1 Tf -8.4014 0 TD -0.4678 Tw -[( allows the caller of )]TJ -/TT10 1 Tf -11.1407 0 TD -0 Tw -(GETREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.4678 Tw -[( to pass)]TJ --35.7476 -1.2889 TD -0 Tw -(information to the )Tj -/TT14 1 Tf -8.2842 0 TD -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj --14.8853 -2.0667 TD -0.0522 Tw -(The first time a button is pressed and when the user changes the moving corner via right)Tj -0 -1.2222 TD -0 Tw -(buttoning, )Tj -/TT14 1 Tf -4.8757 0 TD -(MOVINGPOINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.01 Tw -[( is )]TJ -/TT10 1 Tf -1.2348 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.01 Tw -[( and )]TJ -/TT14 1 Tf -2.2129 0 TD -0 Tw -(FIXEDPOINT)Tj -/TT8 1 Tf -6.001 0 TD -0.01 Tw -[( is the position the user selected for the)]TJ --22.7258 -1.2889 TD -0.0667 Tw -[(fixed corner of the new region. In this case, the position returned by )]TJ -/TT14 1 Tf -31.3767 0 TD -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.0667 Tw -[( will)]TJ --37.9778 -1.2889 TD -0.0878 Tw -[(be used for the fixed corner instead of the one proposed by the user. For all other calls,)]TJ -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(FIXEDPOINT)Tj -/TT8 1 Tf -6.001 0 TD -0.1689 Tw -[( is the position of the fixed corner \(as returned by the previous call\) and)]TJ -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT14 11 0 R ->> -/XObject << -/Im9 48 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -50 0 obj -<< -/Length 5867 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT14 1 Tf -9 0 0 9 174 569.54 Tm -(MOVINGPOINT)Tj -/TT8 1 Tf -6.6011 0 TD -0.1922 Tw -[( is the new position the user selected for the opposite corner. In these)]TJ --6.6011 -1.2889 TD -0.2456 Tw -(cases, the value of )Tj -/TT14 1 Tf -9.2068 0 TD -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.2456 Tw -[( is used for the opposite corner instead of the one)]TJ --15.8079 -1.2889 TD -0.0478 Tw -[(proposed by the user. In all cases, the ghost region is drawn with the values returned by)]TJ -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.0756 Tw -(. )Tj -/TT14 1 Tf -0.9011 0 TD -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6011 0 TD -0.0756 Tw -[( can be a list of functions in which case they are called in)]TJ --14.1033 -1.2889 TD -0.1044 Tw -(order with each being passed the result of calling the previous and the value of the last)Tj -0 -1.2222 TD -0 Tw -(one used as the point.)Tj -/TT10 1 Tf -10 0 0 10 150 490.46 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 490.46 Tm -(GETBOXREGION)Tj -/F1 1 Tf -10 0 0 10 220.8 490.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.67 490.46 Tm -(WIDTH HEIGHT ORGX ORGY WINDOW PROMPTMSG)Tj -/TT10 1 Tf -10 0 0 10 434.3043 490.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 440.3052 490.46 Tm -[( )-5313.9([Function])]TJ --29.5895 -1.8833 TD -0.0422 Tw -(Performs the same prompting as )Tj -/TT10 1 Tf -14.8976 0 TD -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf -8.4014 0 TD -0.0422 Tw -[( and returns the )]TJ -/TT10 1 Tf -7.4531 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[( specified by)]TJ --34.3527 -1.2889 TD -0 Tw -(the user instead of the )Tj -/TT10 1 Tf -10.0171 0 TD -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -( of its lower left corner.)Tj -/TT10 1 Tf -10 0 0 10 150 439.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 439.03 Tm -(MOUSECONFIRM)Tj -/F1 1 Tf -10 0 0 10 220.8 439.03 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.67 439.03 Tm -(PROMPTSTRING HELPSTRING WINDOW DONTCLEARWINDOWFLG)Tj -/TT10 1 Tf -10 0 0 10 493.7139 439.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 499.7149 439.03 Tm -( )Tj --38.1906 -1.1056 TD -([Function])Tj -/TT10 1 Tf -2 -1.7778 TD -(MOUSECONFIRM)Tj -/TT8 1 Tf -7.2012 0 TD -0.2378 Tw -[( provides a simple way for the user to confirm or abort some action)]TJ --7.2012 -1.2889 TD -0.4911 Tw -[(simply by using the mouse buttons. It prints the strings )]TJ -/TT14 1 Tf -30.3632 0 TD -0 Tw -(PROMPTSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.4911 Tw -[( and)]TJ -/TT14 1 Tf --37.5643 -2.35 TD -0 Tw -(HELPSTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.1244 Tw -[( in the window )]TJ -/TT14 1 Tf -7.4558 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1244 Tw -(, changes the cursor to a "little mouse" cursor: )Tj -ET -q -13 0 0 -16 520.97 396.33 cm -/Im10 Do -Q -BT -9 0 0 9 174 368.73 Tm -0.1367 Tw -(\(stored in the variable )Tj -/TT10 1 Tf -10.4949 0 TD -0 Tw -(MOUSECONFIRMCURSOR)Tj -/TT8 1 Tf -10.8018 0 TD -0.1367 Tw -(\), and waits for the user to press the left)Tj --21.2967 -1.2889 TD -0.17 Tw -[(button to confirm, or any other button to abort. If the left button was the last button)]TJ -0 -1.2222 TD -0 Tw -(released, returns )Tj -/TT10 1 Tf -7.6118 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -(, else )Tj -/TT10 1 Tf -2.4229 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --12.4351 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9555 0 TD -(PROMPTSTRING)Tj -/TT8 1 Tf -7.2012 0 TD -0.0356 Tw -[( is )]TJ -/TT10 1 Tf -1.286 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0356 Tw -[(, it is not printed out. If )]TJ -/TT14 1 Tf -11.0008 0 TD -0 Tw -(HELPSTRING)Tj -/TT8 1 Tf -6.001 0 TD -0.0356 Tw -[( is )]TJ -/TT10 1 Tf -1.286 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0356 Tw -(, the string )Tj -/TT10 1 Tf -5.0681 0 TD -0 Tw -("Click)Tj --36.399 -1.2889 TD -0.3533 Tw -(LEFT to confirm, RIGHT to abort.")Tj -/TT8 1 Tf -21.5699 0 TD -0.1478 Tw -[( is used. If )]TJ -/TT14 1 Tf -5.7404 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1478 Tw -[( is )]TJ -/TT10 1 Tf -1.5104 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1478 Tw -(, the prompt)Tj --34.2215 -1.2889 TD -0 Tw -(window is used.)Tj -0 -2 TD -(Normally, )Tj -/TT10 1 Tf -4.8941 0 TD -(MOUSECONFIRM)Tj -/TT8 1 Tf -7.2012 0 TD -0.1011 Tw -[( clears )]TJ -/TT14 1 Tf -3.2349 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( before returning. If )]TJ -/TT14 1 Tf -9.6701 0 TD -0 Tw -(DONTCLEARWINDOWFLG)Tj -/TT8 1 Tf --28.6009 -1.2889 TD -(is non-)Tj -/TT10 1 Tf -3.0078 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the window is not cleared.)Tj -/TT4 1 Tf -10 0 0 10 102 231.79 Tm -(Windows)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 229.08 m -582.01 229.08 l -S -BT -/TT8 1 Tf -9 0 0 9 126 208.13 Tm -0.23 Tw -(A window specifies a region of the screen, a display stream, functions that get called when the)Tj -0 -1.2222 TD -0.0489 Tw -[(window undergoes certain actions, and various other items of information. The basic model is that a)]TJ -T* -0.0589 Tw -[(window is a passive collection of bits \(on the screen\). On top of this basic level, the system supports)]TJ -T* -0.0233 Tw -(many different types of windows that are linked to the data structures displayed in them and provide)Tj -T* -0.1744 Tw -[(selection and redisplaying routines. In addition, it is possible for the user to create new types of)]TJ -T* -0 Tw -(windows by providing selection and displaying functions for them.)Tj -0 -2.7778 TD -0.1467 Tw -[(Windows are ordered in depth from user to background. Windows in front of others obscure the)]TJ -0 -1.2222 TD -0 Tw -(latter. Operating on a window generally brings it to the top.)Tj -0 -2.7778 TD -0.1544 Tw -[(Windows are located at a certain position on the screen. Each window has a clipping region that)]TJ -0 -1.2222 TD -0 Tw -(confines all bits written to it to a region that allows a border around the window, and a title above it.)Tj -0 -2.7778 TD -0.1433 Tw -(Each window has a display stream associated with it \(see Chapter 27\), and either a window or its)Tj -0 -1.2222 TD -0.2822 Tw -[(display stream can be passed interchangeably to all system functions. There are dependencies)]TJ -ET -endstream -endobj -51 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im10 52 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -54 0 obj -<< -/Length 6723 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.2344 Tw -[(between the window and its display stream that the user should not disturb. For instance, the)]TJ -0 -1.2222 TD -0.0089 Tw -[(destination bitmap of the display stream of a window must always be the screen bitmap. The )]TJ -/TT10 1 Tf -41.7781 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0089 Tw -[( offset,)]TJ -/TT10 1 Tf --42.3782 -1.2889 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( offset, and Clipping Region fields of the display stream should not be changed.)Tj --0.6001 -2.8444 TD -0.3222 Tw -(Windows can be created by the user interactively, under program control, or may be created)Tj -0 -1.2222 TD -0 Tw -(automatically by the system.)Tj -0 -2.7778 TD -0.0656 Tw -[(Windows are in one of two states: "open" or "closed". In an "open" state, a window is visible on the)]TJ -0 -1.2222 TD -0.1278 Tw -(screen \(unless it is covered by other open windows or off the edge of the screen\) and accessible to)Tj -T* -0.0267 Tw -[(mouse operations. In a "closed" state, a window is not visible and not accessible to mouse operations.)]TJ -T* -0 Tw -(Any attempt to print or draw on a closed window will open it. )Tj -/TT4 1 Tf -10 0 0 10 78 426 Tm -(Window Properties)Tj -/TT8 1 Tf -9 0 0 9 78 401.34 Tm -0.0811 Tw -[(The behavior of a window is controlled by a set of "window properties." Some of these are used by)]TJ -T* -0.19 Tw -[(the system. However, any arbitrary property name may be used by a user program to associate)]TJ -T* -0.2778 Tw -[(information with a window. For many applications the user will associate the structure being)]TJ -T* -0.0278 Tw -[(displayed with its window using a property. The following functions provide for reading and setting)]TJ -T* -0 Tw -(window properties:)Tj -/TT10 1 Tf -10 0 0 10 102 335.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 335.06 Tm -(WINDOWPROP)Tj -/F1 1 Tf -10 0 0 10 162 335.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.87 335.06 Tm -(WINDOW PROP NEWVALUE)Tj -/TT10 1 Tf -10 0 0 10 272.8876 335.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 278.8885 335.06 Tm -[( )-13177.9([NoSpread Function])]TJ --16.9876 -1.8833 TD -0.1944 Tw -(Returns the previous value of )Tj -/TT14 1 Tf -14.3072 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(s )Tj -/TT14 1 Tf -1.1461 0 TD -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1944 Tw -[( aspect. If )]TJ -/TT14 1 Tf -5.4716 0 TD -0 Tw -(NEWVALUE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1944 Tw -[( is given, \(even if)]TJ --31.7267 -1.2944 TD -0.0133 Tw -(given as )Tj -/TT10 1 Tf -10 0 0 10 161.3127 306.46 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 179.3157 306.46 Tm -0.0133 Tw -(\), it is stored as the new )Tj -/TT14 1 Tf -10.7452 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( aspect. Some aspects cannot be set by the user)]TJ --19.0695 -1.3278 TD -0.0844 Tw -[(and will generate errors. Any )]TJ -/TT14 1 Tf -14.0028 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0844 Tw -[( name that is not recognized is stored on a property)]TJ --16.4032 -1.2889 TD -0 Tw -(list associated with the window.)Tj -/TT10 1 Tf -10 0 0 10 102 260.63 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 260.63 Tm -(WINDOWADDPROP)Tj -/F1 1 Tf -10 0 0 10 178.2 260.63 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 181.07 260.63 Tm -(WINDOW PROP ITEMTOADD FIRSTFLG)Tj -/TT10 1 Tf -10 0 0 10 343.0963 260.63 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 349.0973 260.63 Tm -[( )-10114.7([Function])]TJ -/TT10 1 Tf -10 0 0 10 126 243.63 Tm -(WINDOWADDPROP)Tj -/TT8 1 Tf -9 0 0 9 204.0127 243.63 Tm -0.1178 Tw -[( adds a new item to a window property. If )]TJ -/TT14 1 Tf -20.4543 0 TD -0 Tw -(ITEMTOADD)Tj -/TT8 1 Tf -5.4009 0 TD -0.1178 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 449.7624 243.63 Tm -0 Tw -(EQ)Tj -/TT8 1 Tf -9 0 0 9 461.7643 243.63 Tm -0.1178 Tw -[( to an)]TJ --37.3072 -1.3333 TD -0.0956 Tw -(element of the )Tj -/TT14 1 Tf -6.8218 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0956 Tw -[( property of the window )]TJ -/TT10 1 Tf -10 0 0 10 313.3195 231.63 Tm -0 Tw -(WINDOW)Tj -/TT8 1 Tf -9 0 0 9 349.3253 231.63 Tm -0.0956 Tw -[(, nothing is added. If the current)]TJ --24.8139 -1.3333 TD -0.2 Tw -(property is not a list, it is made a list before )Tj -/TT14 1 Tf -21.5223 0 TD -0 Tw -(ITEMTOADD)Tj -/TT8 1 Tf -5.4009 0 TD -0.2 Tw -[( added. )]TJ -/TT10 1 Tf -10 0 0 10 408.012 219.63 Tm -0 Tw -(WINDOWADDPROP)Tj -/TT8 1 Tf -9 0 0 9 126 207.63 Tm -0.0001 Tc -0.0021 Tw -(returns the previous property. If )Tj -/TT14 1 Tf -14.8278 0 TD -0 Tc -0 Tw -(FIRSTFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0003 Tc -0.0019 Tw -( is non-)Tj -/TT10 1 Tf -10 0 0 10 332.0174 207.63 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 350.0203 207.63 Tm -0.0022 Tw -(, the new item goes on the front of)Tj --24.8912 -1.3333 TD -0.0111 Tw -[(the list; otherwise, it goes on the end of the list. If )]TJ -/TT14 1 Tf -22.2968 0 TD -0 Tw -(FIRSTFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0111 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 399.3984 195.63 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 417.4013 195.63 Tm -0.0111 Tw -[( and )]TJ -/TT14 1 Tf -2.2151 0 TD -0 Tw -(ITEMTOADD)Tj -/TT8 1 Tf --34.593 -1.3278 TD -(is already on the list, it is moved to the front.)Tj -0 -2 TD -0.4522 Tw -(Many window properties \()Tj -/TT14 1 Tf -13.2585 0 TD -1.0867 Tw -(OPENFN, CLOSEFN)Tj -/TT8 1 Tf -10.0881 0 TD -0.4522 Tw -(, etc.\) can be a list of functions.)Tj -/TT10 1 Tf -10 0 0 10 126 154.03 Tm -0 Tw -(WINDOWADDPROP)Tj -/TT8 1 Tf -9 0 0 9 204.0127 154.03 Tm -0.3311 Tw -[( is useful for adding additional functions to a window property)]TJ --8.6681 -1.3278 TD -0.18 Tw -[(without affecting any existing functions. Note that if the order of items in a window)]TJ -0 -1.2278 TD -0 Tw -(property is important, the list can be modified using )Tj -/TT10 1 Tf -10 0 0 10 336.0806 131.03 Tm -(WINDOWPROP)Tj -/TT8 1 Tf -9 0 0 9 396.0903 131.03 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 107.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 107.8 Tm -(WINDOWDELPROP)Tj -/F1 1 Tf -10 0 0 10 178.2 107.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 181.07 107.8 Tm -(WINDOW PROP ITEMTODELETE)Tj -/TT10 1 Tf -10 0 0 10 310.6911 107.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.692 107.8 Tm -[( )-13715.3([Function])]TJ -/TT10 1 Tf -10 0 0 10 126 90.8 Tm -(WINDOWDELPROP)Tj -/TT8 1 Tf -9 0 0 9 204.0127 90.8 Tm -0.0856 Tw -[( deletes )]TJ -/TT14 1 Tf -3.76 0 TD -0 Tw -(ITEMTODELETE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0856 Tw -[( from the window property )]TJ -/TT14 1 Tf -12.8189 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0856 Tw -[( of )]TJ -/TT14 1 Tf -1.55 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf --36.3985 -1.3278 TD -0.09 Tw -(and returns the previous list if )Tj -/TT14 1 Tf -14.184 0 TD -0 Tw -(ITEMTODELETE)Tj -/TT8 1 Tf -7.2012 0 TD -0.09 Tw -[( was an element. If )]TJ -/TT14 1 Tf -9.3188 0 TD -0 Tw -(ITEMTODELETE)Tj -/TT8 1 Tf -7.2012 0 TD -0.09 Tw -[( was)]TJ --37.9052 -1.2889 TD -0 Tw -(not a member of window property )Tj -/TT14 1 Tf -15.6021 0 TD -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -(, NIL is returned.)Tj -/TT4 1 Tf -10 0 0 10 78 40.31 Tm -(Creating Windows)Tj -ET -endstream -endobj -55 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -59 0 obj -<< -/Length 8882 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -5.4 -4.374 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 568.26 Tm -(CREATEW)Tj -/F1 1 Tf -10 0 0 10 193.8 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 568.26 Tm -(REGION TITLE BORDERSIZE NOOPENFLG)Tj -/TT10 1 Tf -10 0 0 10 374.899 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 380.9 568.26 Tm -[( )-11914.4([Function])]TJ --22.9889 -1.8833 TD -0.0078 Tw -(Creates a new window. )Tj -/TT14 1 Tf -10.9437 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0078 Tw -[( indicates where and how large the window should be by)]TJ --14.5443 -1.2889 TD -0.2944 Tw -[(specifying the exterior region of the window. The usable height and width of the)]TJ -0 -1.2222 TD -0.1389 Tw -(resulting window will be smaller than the height and width of the region by twice the)Tj -0 -1.2278 TD -0.0278 Tw -[(border size and further less the height of the title, if any. If )]TJ -/TT14 1 Tf -26.6008 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 457.2461 517.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 475.249 517.66 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 479.999 517.66 Tm -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 174 505.71 Tm -(is called to prompt the user for a region.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.9944 0 TD -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0744 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 240.614 487.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 258.6169 487.66 Tm -0.0744 Tw -[(, it is printed in the border at the top of the window. The )]TJ -/TT14 1 Tf -26.5473 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0744 Tw -[( is)]TJ --38.9497 -1.3333 TD -0.1933 Tw -(printed using the global display stream )Tj -/TT10 1 Tf -10 0 0 10 343.2584 475.66 Tm -0 Tw -(WindowTitleDisplayStream)Tj -/TT8 1 Tf -9 0 0 9 487.2818 475.66 Tm -0.1933 Tw -[(. Thus the)]TJ --34.8091 -1.3333 TD -0 Tw -(height of the title will be )Tj -/TT10 1 Tf -10 0 0 10 273.3164 463.66 Tm -(\(FONTPROP WindowTitleDisplayStream HEIGHT\))Tj -/TT8 1 Tf -9 0 0 9 531.3584 463.66 Tm -(.)Tj --39.7065 -2.1056 TD -(If )Tj -/TT14 1 Tf -0.9255 0 TD -(BORDERSIZE)Tj -/TT8 1 Tf -6.001 0 TD -0.0056 Tw -[( is a number, it is used as the border size. If )]TJ -/TT14 1 Tf -19.6347 0 TD -0 Tw -(BORDERSIZE)Tj -/TT8 1 Tf -6.001 0 TD -0.0056 Tw -[( is not a number,)]TJ --32.5622 -1.2944 TD -0 Tw -(the window will have a border )Tj -/TT10 1 Tf -10 0 0 10 299.0728 433.06 Tm -(WBorder)Tj -/TT8 1 Tf -9 0 0 9 341.0796 433.06 Tm -( \(initially 4\) bits wide.)Tj --18.5644 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(NOOPENFLG)Tj -/TT8 1 Tf -5.4009 0 TD -( is non-)Tj -/TT10 1 Tf -10 0 0 10 260.2075 414.06 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 278.2104 414.06 Tm -(, the window will not be opened, i.e. displayed on the screen.)Tj --11.5789 -2.1111 TD -0.1533 Tw -(The initial )Tj -/TT10 1 Tf -10 0 0 10 219.4748 395.06 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 225.4758 395.06 Tm -0.1533 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 247.9716 395.06 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 253.9726 395.06 Tm -0.1533 Tw -[( positions of the window are set to the upper left corner by calling)]TJ -/TT10 1 Tf -10 0 0 10 174 383.06 Tm -0 Tw -(MOVETOUPPERLEFT)Tj -/TT8 1 Tf -9 0 0 9 264.0146 383.06 Tm -( \(see Chapter 27\).)Tj -/TT10 1 Tf -10 0 0 10 150 359.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 359.83 Tm -(DECODE.WINDOW.ARG)Tj -/F1 1 Tf -10 0 0 10 247.8 359.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 250.67 359.83 Tm -(WHERESPEC WIDTH HEIGHT TITLE BORDER NOOPENFLG)Tj -/TT10 1 Tf -10 0 0 10 493.7095 359.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 499.7105 359.83 Tm -( )Tj --38.1901 -1.1056 TD -([Function])Tj -2 -1.7833 TD -(This is a useful function for creating windows. )Tj -/TT14 1 Tf -21.0332 0 TD -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -( can be a )Tj -/TT10 1 Tf -10 0 0 10 448.4297 333.83 Tm -(WINDOW)Tj -/TT8 1 Tf -9 0 0 9 484.4355 333.83 Tm -(, a )Tj -/TT10 1 Tf -10 0 0 10 495.6855 333.83 Tm -(REGION)Tj -/TT8 1 Tf -9 0 0 9 531.6914 333.83 Tm -(,)Tj --39.7435 -1.3333 TD -(a )Tj -/TT10 1 Tf -10 0 0 10 182.28 321.83 Tm -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 230.2878 321.83 Tm -0.17 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 246.3161 321.83 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 264.319 321.83 Tm -0.17 Tw -[(. If )]TJ -/TT14 1 Tf -2.1799 0 TD -0 Tw -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -0.17 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 354.8198 321.83 Tm -0 Tw -(WINDOW)Tj -/TT8 1 Tf -9 0 0 9 390.8257 321.83 Tm -0.17 Tw -[(, it is returned. In all other cases,)]TJ -/TT10 1 Tf -10 0 0 10 174 309.83 Tm -0 Tw -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 216.0068 309.83 Tm -0.1011 Tw -[( is called with the arguments )]TJ -/TT14 1 Tf -13.6057 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.3511 0 TD -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( and )]TJ -/TT14 1 Tf -2.3951 0 TD -0 Tw -(NOOPENFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.1011 Tw -[(. The )]TJ -/TT10 1 Tf -10 0 0 10 497.9859 309.83 Tm -0 Tw -(REGION)Tj -/TT8 1 Tf -9 0 0 9 174 297.83 Tm -(argument to )Tj -/TT10 1 Tf -10 0 0 10 225.2666 297.83 Tm -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 267.2734 297.83 Tm -( is determined from )Tj -/TT14 1 Tf -9.0073 0 TD -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -( as follows:)Tj --24.7719 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -( is a )Tj -/TT10 1 Tf -10 0 0 10 248.5708 278.83 Tm -(REGION)Tj -/TT8 1 Tf -9 0 0 9 284.5766 278.83 Tm -(, it is adjusted to be on the screen, then passed to )Tj -/TT10 1 Tf -10 0 0 10 480.0718 278.83 Tm -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 522.0786 278.83 Tm -(.)Tj --38.6754 -2.1111 TD -(If )Tj -/TT14 1 Tf -1.0355 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.1156 Tw -[( and )]TJ -/TT14 1 Tf -2.424 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1156 Tw -[( are numbers and )]TJ -/TT14 1 Tf -8.4481 0 TD -0 Tw -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -0.1156 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 409.9889 259.83 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 457.9967 259.83 Tm -0.1156 Tw -(, the region whose)Tj --31.5552 -1.3278 TD -0.12 Tw -(lower left corner is )Tj -/TT14 1 Tf -9.0098 0 TD -0 Tw -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -0.12 Tw -(, whose width is )Tj -/TT14 1 Tf -7.9536 0 TD -0 Tw -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.12 Tw -[( and whose height is )]TJ -/TT14 1 Tf -9.9389 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.12 Tw -[( is)]TJ --38.9042 -1.2944 TD -0 Tw -(adjusted to be on the screen, then passed to )Tj -/TT10 1 Tf -10 0 0 10 348.5068 236.23 Tm -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 390.5137 236.23 Tm -(.)Tj --24.0571 -2.1111 TD -(If )Tj -/TT14 1 Tf -1.3721 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -0.4522 Tw -[( and )]TJ -/TT14 1 Tf -3.0973 0 TD -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -0.4522 Tw -[( are numbers and )]TJ -/TT14 1 Tf -9.7947 0 TD -0 Tw -(WHERESPEC)Tj -/TT8 1 Tf -5.4009 0 TD -0.4522 Tw -[( is not a )]TJ -/TT10 1 Tf -10 0 0 10 459.6958 217.23 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 507.7036 217.23 Tm -0.4522 Tw -(, then)Tj -/TT10 1 Tf -10 0 0 10 174 205.23 Tm -0 Tw -(GETBOXREGION)Tj -/TT8 1 Tf -9 0 0 9 246.0117 205.23 Tm -0.0756 Tw -[( is called to prompt the user for the position of a region that is )]TJ -/TT10 1 Tf -10 0 0 10 504.0545 205.23 Tm -0 Tw -(WIDTH)Tj -/TT8 1 Tf -9 0 0 9 174 193.28 Tm -(by )Tj -/TT14 1 Tf -1.3594 0 TD -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --4.96 -2.0722 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -( are not numbers, )Tj -/TT10 1 Tf -10 0 0 10 333.3984 174.63 Tm -(CREATEW)Tj -/TT8 1 Tf -9 0 0 9 375.4053 174.63 Tm -( is given )Tj -/TT10 1 Tf -10 0 0 10 410.8472 174.63 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 428.8501 174.63 Tm -( as a )Tj -/TT10 1 Tf -10 0 0 10 448.4146 174.63 Tm -(REGION)Tj -/TT8 1 Tf -9 0 0 9 484.4204 174.63 Tm -( argument.)Tj --34.4912 -2.2478 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(WIDTH)Tj -/TT8 1 Tf -3.0005 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(HEIGHT)Tj -/TT8 1 Tf -3.6006 0 TD -( are used, they are used as interior dimensions for the )Tj -/F2 1 Tf -10 0 0 10 476.77 154.4 Tm -(window.)Tj -/TT10 1 Tf --32.677 -2.288 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 131.52 Tm -(WINDOWP)Tj -/F1 1 Tf -10 0 0 10 193.8 131.52 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 131.52 Tm -(X)Tj -/TT10 1 Tf -10 0 0 10 202.0709 131.52 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 208.0718 131.52 Tm -[( )-31117.6([Function])]TJ --3.7858 -1.8889 TD -(Returns )Tj -/TT14 1 Tf -3.7271 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( if )Tj -/TT14 1 Tf -1.124 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is a window, )Tj -/TT10 1 Tf -10 0 0 10 283.9248 114.52 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 301.9277 114.52 Tm -( otherwise.)Tj -/TT4 1 Tf -10 0 0 10 126 87.23 Tm -(Opening and Closing Windows)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 65.29 Tm -(OPENWP)Tj -/F1 1 Tf -10 0 0 10 188.4 65.29 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.27 65.29 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 223.6753 65.29 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 229.6762 65.29 Tm -[( )-28717.1([Function])]TJ --6.1863 -1.8889 TD -(Returns )Tj -/TT14 1 Tf -3.7271 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(, if )Tj -/TT14 1 Tf -1.374 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( is an open window \(has not been closed\); )Tj -/TT10 1 Tf -10 0 0 10 453.167 48.29 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 471.1699 48.29 Tm -( otherwise.)Tj -ET -endstream -endobj -60 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -62 0 obj -<< -/Length 7824 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --30.6 -4.251 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 569.49 Tm -(OPENWINDOWS)Tj -/TT10 1 Tf -10 0 0 10 167.4 569.49 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 173.401 569.49 Tm -[( )-29636.6([Function])]TJ --5.2668 -1.8833 TD -(Returns a list of all open windows.)Tj -/TT10 1 Tf -10 0 0 10 102 530.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 530.26 Tm -(OPENW)Tj -/F1 1 Tf -10 0 0 10 135 530.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 137.87 530.26 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 170.2753 530.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 176.2762 530.26 Tm -[( )-29317.1([Function])]TJ --5.5862 -1.8889 TD -(If )Tj -/TT14 1 Tf -1.1055 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1856 Tw -[( is a closed window, )]TJ -/TT10 1 Tf -10 0 0 10 259.5678 513.26 Tm -0 Tw -(OPENW)Tj -/TT8 1 Tf -9 0 0 9 289.5727 513.26 Tm -0.1856 Tw -[( calls the function or functions on the window)]TJ --18.1748 -1.3333 TD -0 Tw -(property )Tj -/TT10 1 Tf -10 0 0 10 164.7847 501.26 Tm -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 200.7906 501.26 Tm -0.16 Tw -[( of )]TJ -/TT14 1 Tf -1.6989 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.16 Tw -[(, if any. If one of the )]TJ -/TT10 1 Tf -10 0 0 10 343.7526 501.26 Tm -0 Tw -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 379.7585 501.26 Tm -0.16 Tw -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 437.5453 501.26 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 467.5502 501.26 Tm -0.16 Tw -(, the)Tj --37.95 -1.3278 TD -0.1111 Tw -[(window will not be opened. Otherwise the window is placed on the occlusion stack of)]TJ -0 -1.2222 TD -0.1944 Tw -[(windows and its contents displayed on the screen. If )]TJ -/TT14 1 Tf -25.6105 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1944 Tw -[( is an open window, it)]TJ --29.211 -1.2944 TD -0 Tw -(returns )Tj -/TT10 1 Tf -10 0 0 10 157.0869 466.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 175.0898 466.66 Tm -(. )Tj -/TT10 1 Tf -10 0 0 10 102 443.43 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 443.43 Tm -(CLOSEW)Tj -/F1 1 Tf -10 0 0 10 140.4 443.43 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 143.27 443.43 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 175.6752 443.43 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -[( )-25062.4([Function])]TJ -/TT10 1 Tf --5.5676 -1.823 TD -(CLOSEW)Tj -/F2 1 Tf -3.6006 0 TD -0.278 Tw -[( calls the function or functions on)]TJ -/TT8 1 Tf -9 0 0 9 332.7559 425.2 Tm -0.25 Tw -[( the window property )]TJ -/TT10 1 Tf -10 0 0 10 431.6152 425.2 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 473.6221 425.2 Tm -0.25 Tw -[( of)]TJ -/TT14 1 Tf --38.6247 -1.3333 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0556 Tw -[(, if any. If one of the )]TJ -/TT10 1 Tf -10 0 0 10 246.1518 413.2 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 288.1587 413.2 Tm -0.0556 Tw -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 342.1855 413.2 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 372.1904 413.2 Tm -0.0556 Tw -[( or returns the atom )]TJ -/TT10 1 Tf -10 0 0 10 456.0244 413.2 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 126 401.2 Tm -0.2833 Tw -(as a value, )Tj -/TT10 1 Tf -10 0 0 10 182.2063 401.2 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 218.2122 401.2 Tm -0.2833 Tw -[( returns without doing anything further. Otherwise, )]TJ -/TT10 1 Tf -10 0 0 10 449.9628 401.2 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 126 389.25 Tm -(removes )Tj -/TT14 1 Tf -4.0872 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0667 Tw -[( from the window stack and restores the bits it is obscuring. If )]TJ -/TT14 1 Tf -28.7131 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf --36.4009 -1.2889 TD -0.02 Tw -(was closed, )Tj -/TT14 1 Tf -5.3422 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.02 Tw -[( is returned as the value. If it was not closed, \(for example because its)]TJ -/TT10 1 Tf -10 0 0 10 126 366 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 168.0068 366 Tm -( returned the atom )Tj -/TT10 1 Tf -10 0 0 10 244.6167 366 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 274.6216 366 Tm -(\), )Tj -/TT10 1 Tf -10 0 0 10 282.1187 366 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 300.1216 366 Tm -( is returned as the value.)Tj -/TT14 1 Tf --19.3468 -2.1056 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[( can be restored in the same place with the same contents \(reopened\) by calling)]TJ -/TT10 1 Tf -10 0 0 10 126 335.4 Tm -0 Tw -(OPENW)Tj -/TT8 1 Tf -9 0 0 9 156.0049 335.4 Tm -( or by using it as the source of a display operation.)Tj -/TT12 1 Tf --6.0005 -2.4389 TD -(OPENFN)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 143.4444 296.8 Tm -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 179.4503 296.8 Tm -0.0144 Tw -[( window property can be a single function or a list of functions. If one of the)]TJ -/TT10 1 Tf -10 0 0 10 126 284.8 Tm -0 Tw -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 162.0058 284.8 Tm -0.0467 Tw -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 215.7127 284.8 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 245.7176 284.8 Tm -0.0467 Tw -[(, the window will not be opened. Otherwise, the )]TJ -/TT10 1 Tf -10 0 0 10 446.2037 284.8 Tm -0 Tw -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 482.2096 284.8 Tm -(s)Tj --39.5788 -1.3333 TD -0.2178 Tw -(are called after a window has been opened by )Tj -/TT10 1 Tf -10 0 0 10 327.9334 272.8 Tm -0 Tw -(OPENW)Tj -/TT8 1 Tf -9 0 0 9 357.9383 272.8 Tm -0.2178 Tw -(, with the window as a single)Tj --25.7709 -1.3278 TD -0 Tw -(argument.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(CLOSEFN)Tj -/TT8 1 Tf -4.2 0 TD -[( )-29283.3([Window Property])]TJ --1.5333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.5344 223.2 Tm -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 186.5413 223.2 Tm -0.1356 Tw -[( window property can be a single function or a list of functions that are)]TJ --6.7268 -1.3333 TD -0.0433 Tw -(called just before a window is closed by )Tj -/TT10 1 Tf -10 0 0 10 289.3578 211.2 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 325.3636 211.2 Tm -0.0433 Tw -[(. The function\(s\) will be called with the)]TJ --22.1515 -1.3333 TD -0.13 Tw -[(window as a single argument. If any of the )]TJ -/TT10 1 Tf -10 0 0 10 312.2376 199.2 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 354.2444 199.2 Tm -0.13 Tw -(s are the atom )Tj -/TT10 1 Tf -10 0 0 10 416.8839 199.2 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 446.8888 199.2 Tm -0.13 Tw -(, or if the)Tj --35.6543 -1.3333 TD -0.1744 Tw -(value returned by any of the )Tj -/TT10 1 Tf -10 0 0 10 250.816 187.2 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 292.8228 187.2 Tm -0.1744 Tw -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 351.1297 187.2 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 381.1346 187.2 Tm -0.1744 Tw -(, the window will not be)Tj --28.3483 -1.3278 TD -0 Tw -(closed.)Tj -2.6667 -2.0056 TD -0.6512 Tw -[(Note: If )549(the )]TJ -/TT10 1 Tf -10 0 0 10 204.8542 157.2 Tm -0 Tw -(CAR)Tj -/TT8 1 Tf -9 0 0 9 222.8571 157.2 Tm -0.1022 Tw -[( of the )]TJ -/TT10 1 Tf -10 0 0 10 252.7621 157.2 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 294.7689 157.2 Tm -0.1022 Tw -[( list is a )]TJ -/TT10 1 Tf -10 0 0 10 330.3708 157.2 Tm -0 Tw -(LAMBDA)Tj -/TT8 1 Tf -9 0 0 9 366.3767 157.2 Tm -0.1022 Tw -[( word, it is treated as a)]TJ --20.7085 -1.3278 TD -0 Tw -(single function.)Tj --3.3333 -2.0056 TD -[(Note: )-401.2(A )]TJ -/TT10 1 Tf -10 0 0 10 189.2505 127.2 Tm -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 231.2573 127.2 Tm -( should not call )Tj -/TT10 1 Tf -10 0 0 10 294.5869 127.2 Tm -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 330.5927 127.2 Tm -( on its argument.)Tj -/TT4 1 Tf -10 0 0 10 78 99.91 Tm -(Redisplaying Windows)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 77.97 Tm -(REDISPLAYW)Tj -/F1 1 Tf -10 0 0 10 162 77.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.87 77.97 Tm -(WINDOW REGION ALWAYSFLG)Tj -/TT10 1 Tf -10 0 0 10 289.0902 77.97 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 295.0912 77.97 Tm -[( )-16115.4([Function])]TJ --18.7879 -1.8889 TD -0.2322 Tw -(Redisplay the region )Tj -/TT14 1 Tf -10.1039 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.2322 Tw -[( of the window )]TJ -/TT14 1 Tf -7.8928 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2322 Tw -[(. If )]TJ -/TT14 1 Tf -2.3666 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.2322 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 421.5985 60.97 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 439.6015 60.97 Tm -0.2322 Tw -(, the entire)Tj --34.8446 -1.3278 TD -0 Tw -(window is redisplayed.)Tj -ET -endstream -endobj -63 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -65 0 obj -<< -/Length 9590 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -(If )Tj -/TT14 1 Tf -0.9977 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0778 Tw -[( doesnt have a )]TJ -/TT10 1 Tf -10 0 0 10 280.0288 569.49 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 334.0376 569.49 Tm -0.0778 Tw -(, the action depends on the value of )Tj -/TT14 1 Tf -16.567 0 TD -0 Tw -(ALWAYSFLG)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj --39.7499 -1.3333 TD -(If )Tj -/TT14 1 Tf -1.0521 0 TD -(ALWAYSFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.1322 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 245.3908 557.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 263.3937 557.49 Tm -(, )Tj -/TT14 1 Tf -0.6322 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1322 Tw -[( will not change and the message )]TJ -/TT10 1 Tf -10 0 0 10 443.7292 557.49 Tm -0.316 Tw -("Window has no)Tj --26.9729 -1.2 TD -0.305 Tw -[(REPAINTFN. Cant redisplay.")]TJ -/TT8 1 Tf -9 0 0 9 357.1783 545.49 Tm -0.1267 Tw -[( will be printed in the prompt window. If)]TJ -/TT14 1 Tf --20.3531 -1.3333 TD -0 Tw -(ALWAYSFLG)Tj -/TT8 1 Tf -5.4009 0 TD -( is non-)Tj -/TT10 1 Tf -10 0 0 10 251.9282 533.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 269.9312 533.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 274.4312 533.49 Tm -(REDISPLAYW)Tj -/TT8 1 Tf -9 0 0 9 334.4409 533.49 Tm -( acts as if REPAINTFN was )Tj -/TT10 1 Tf -10 0 0 10 445.394 533.49 Tm -(NILL)Tj -/TT8 1 Tf -9 0 0 9 469.3979 533.49 Tm -(.)Tj -/TT12 1 Tf --35.4887 -2.4389 TD -(REPAINTFN)Tj -/TT8 1 Tf -5.4 0 TD -[( )-28083.3([Window Property])]TJ --2.7333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.7344 494.89 Tm -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 245.7432 494.89 Tm -0.0467 Tw -[( window property can be a single function or a list of functions that are)]TJ --7.9715 -1.3333 TD -0.1356 Tw -(called to repaint parts of the window by )Tj -/TT10 1 Tf -10 0 0 10 345.593 482.89 Tm -0 Tw -(REDISPLAYW)Tj -/TT8 1 Tf -9 0 0 9 405.6028 482.89 Tm -0.1356 Tw -[(. The )]TJ -/TT10 1 Tf -10 0 0 10 433.3272 482.89 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 487.336 482.89 Tm -0.1356 Tw -(s are called)Tj --34.8151 -1.3278 TD -0.2256 Tw -(with two arguments: the window and the region in the coordinates of the windows)Tj -0 -1.2278 TD -0.0189 Tw -[(display stream of the area that should be repainted. Before the )]TJ -/TT10 1 Tf -10 0 0 10 427.9345 459.89 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 481.9433 459.89 Tm -0.0189 Tw -[( is called, the)]TJ --34.2159 -1.3278 TD -0.03 Tw -(clipping region of the window is set to clip all display operations to the area of interest so)Tj -0 -1.2278 TD -0.2089 Tw -(that the )Tj -/TT10 1 Tf -10 0 0 10 210.3542 436.89 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 264.363 436.89 Tm -0.2089 Tw -[( can display the entire window contents and the results will be)]TJ --10.0403 -1.3278 TD -0 Tw -(appropriately clipped.)Tj -2.6667 -2.0056 TD -(Note: )Tj -/TT10 1 Tf -10 0 0 10 228 406.89 Tm -(CLEARW)Tj -/TT8 1 Tf -9 0 0 9 264.0058 406.89 Tm -0.2622 Tw -[( \(see the Miscellaneous Window Functions section below\))]TJ --4.0006 -1.3333 TD -0.1456 Tw -(should not be used in )Tj -/TT10 1 Tf -10 0 0 10 322.5944 394.89 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 376.6032 394.89 Tm -0.1456 Tw -(s because it resets the windows)Tj --16.5115 -1.3333 TD -0.0767 Tw -[(coordinate system. If a )]TJ -/TT10 1 Tf -10 0 0 10 325.783 382.89 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 379.7918 382.89 Tm -0.0767 Tw -[( wants to clear its region first, it)]TJ --16.8658 -1.3333 TD -0 Tw -(should use )Tj -/TT10 1 Tf -10 0 0 10 273.5625 370.89 Tm -(DSPFILL)Tj -/TT8 1 Tf -9 0 0 9 315.5693 370.89 Tm -( \(see Chapter 27\).)Tj -/TT4 1 Tf -10 0 0 10 126 343.6 Tm -(Reshaping Windows)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 321.66 Tm -(SHAPEW)Tj -/F1 1 Tf -10 0 0 10 188.4 321.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.27 321.66 Tm -(WINDOW NEWREGION)Tj -/TT10 1 Tf -10 0 0 10 277.6841 321.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.685 321.66 Tm -[( )-22716.1([Function])]TJ --12.1872 -1.8889 TD -(Reshapes )Tj -/TT14 1 Tf -4.4723 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[(. If the window property )]TJ -/TT14 1 Tf -11.7976 0 TD -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.0656 Tw -[( is the atom )]TJ -/TT10 1 Tf -10 0 0 10 452.0149 304.66 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 482.0198 304.66 Tm -0.0656 Tw -[( or a list that)]TJ --34.2244 -1.3333 TD -0.1433 Tw -(contains the atom )Tj -/TT10 1 Tf -10 0 0 10 250.6522 292.66 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 280.6571 292.66 Tm -0.1433 Tw -(, a message is printed in the prompt window, )Tj -/TT14 1 Tf -21.5947 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1433 Tw -[( is not)]TJ --37.0461 -1.3333 TD -0.0067 Tw -(changed, and )Tj -/TT10 1 Tf -10 0 0 10 229.891 280.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 247.8939 280.66 Tm -0.0067 Tw -[( is returned. Otherwise, )]TJ -/TT10 1 Tf -10 0 0 10 346.5743 280.66 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 400.5831 280.66 Tm -0.0067 Tw -[( window property can be a single)]TJ --25.1759 -1.3278 TD -0.0878 Tw -(function or a list of functions that are called when a window is reshaped, to reformat or)Tj -0 -1.2278 TD -0.0144 Tw -[(redisplay the window contents \(see below\). If the )]TJ -/TT10 1 Tf -10 0 0 10 375.42 257.66 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 429.4288 257.66 Tm -0.0144 Tw -[( window property is )]TJ -/TT10 1 Tf -10 0 0 10 513.7568 257.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 531.7598 257.66 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 245.66 Tm -(RESHAPEBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 282.0175 245.66 Tm -( is the default.)Tj --12.002 -2.1111 TD -0.0056 Tw -(If the region )Tj -/TT14 1 Tf -5.6729 0 TD -0 Tw -(NEWREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0056 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 284.6978 226.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 302.7007 226.66 Tm -0.0056 Tw -(, it prompts for a region with )Tj -/TT10 1 Tf -10 0 0 10 420.4945 226.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 474.5033 226.66 Tm -0.0056 Tw -[(. When calling)]TJ -/TT10 1 Tf -10 0 0 10 174 214.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 228.0088 214.66 Tm -0.06 Tw -(, the function )Tj -/TT10 1 Tf -10 0 0 10 284.4769 214.66 Tm -0 Tw -(MINIMUMWINDOWSIZE)Tj -/TT8 1 Tf -9 0 0 9 386.4935 214.66 Tm -0.06 Tw -[( is called to determine the minimum)]TJ --23.6104 -1.3333 TD -0.0167 Tw -(height and width of the window, the function )Tj -/TT10 1 Tf -10 0 0 10 359.3528 202.66 Tm -0 Tw -(WINDOWREGION)Tj -/TT8 1 Tf -9 0 0 9 431.3645 202.66 Tm -0.0167 Tw -[( is called to get the region)]TJ --28.5961 -1.3333 TD -0.1133 Tw -(passed as the )Tj -/TT10 1 Tf -10 0 0 10 231.9565 190.66 Tm -0 Tw -(OLDREGION)Tj -/TT8 1 Tf -9 0 0 9 285.9652 190.66 Tm -0.1133 Tw -[( argument, the window property )]TJ -/TT10 1 Tf -10 0 0 10 424.3426 190.66 Tm -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 490.3533 190.66 Tm -0.1133 Tw -[( is used as)]TJ --35.1504 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 189.2549 178.66 Tm -(NEWREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 255.2656 178.66 Tm -0.0578 Tw -[( argument and )]TJ -/TT14 1 Tf -6.9404 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0578 Tw -[( as the )]TJ -/TT10 1 Tf -10 0 0 10 379.244 178.66 Tm -0 Tw -(NEWREGIONFNARG)Tj -/TT8 1 Tf -9 0 0 9 463.2576 178.66 Tm -0.0578 Tw -[( argument. If the)]TJ --32.1397 -1.3333 TD -0.1444 Tw -(window property )Tj -/TT10 1 Tf -10 0 0 10 249.4745 166.66 Tm -0 Tw -(INITCORNERSFN)Tj -/TT8 1 Tf -9 0 0 9 327.4872 166.66 Tm -0.1444 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 359.4075 166.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 377.4104 166.66 Tm -0.1444 Tw -(, it is applied to the window, and the)Tj --22.6012 -1.3333 TD -0.03 Tw -(value is passed as the )Tj -/TT10 1 Tf -10 0 0 10 263.1219 154.66 Tm -0 Tw -(INITCORNERS)Tj -/TT8 1 Tf -9 0 0 9 329.1327 154.66 Tm -0.03 Tw -[( argument to )]TJ -/TT10 1 Tf -10 0 0 10 383.4593 154.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 437.4681 154.66 Tm -0.03 Tw -(, to determine the initial)Tj --29.2742 -1.3278 TD -0.18 Tw -[(size of the "ghost region." These window properties allow the window to specify the)]TJ -0 -1.2278 TD -0 Tw -(regions used for interactive calls to )Tj -/TT10 1 Tf -10 0 0 10 314.9722 131.66 Tm -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 350.978 131.66 Tm -(.)Tj --19.6642 -2.1111 TD -0.3556 Tw -(If the region )Tj -/TT14 1 Tf -6.7229 0 TD -0 Tw -(NEWREGION)Tj -/TT8 1 Tf -5.4009 0 TD -0.3556 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 310.3977 112.66 Tm -0 Tw -(REGION)Tj -/TT8 1 Tf -9 0 0 9 346.4036 112.66 Tm -0.3556 Tw -[( and its )]TJ -/TT10 1 Tf -10 0 0 10 387.3586 112.66 Tm -0 Tw -(WIDTH)Tj -/TT8 1 Tf -9 0 0 9 417.3635 112.66 Tm -0.3556 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 436.7318 112.66 Tm -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -9 0 0 9 472.7376 112.66 Tm -0.3556 Tw -[( less than the)]TJ --33.1931 -1.3333 TD -0.4011 Tw -(minimums returned by calling the function )Tj -/TT10 1 Tf -10 0 0 10 369.9734 100.66 Tm -0 Tw -(MINIMUMWINDOWSIZE)Tj -/TT8 1 Tf -9 0 0 9 471.9901 100.66 Tm -0.4011 Tw -(, they will be)Tj --33.11 -1.3278 TD -0 Tw -(increased to the minimums.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -1.161 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2411 Tw -[( has a window property )]TJ -/TT10 1 Tf -10 0 0 10 325.3818 70.66 Tm -0 Tw -(DOSHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 379.3906 70.66 Tm -0.2411 Tw -(, it is called, passing it )Tj -/TT14 1 Tf -11.3895 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2411 Tw -[( and)]TJ -/TT10 1 Tf -10 0 0 10 174 58.66 Tm -0 Tw -(NEWREGION)Tj -/TT8 1 Tf -9 0 0 9 228.0088 58.66 Tm -0.2511 Tw -[( \(or the region returned by )]TJ -/TT10 1 Tf -10 0 0 10 349.4765 58.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 403.4853 58.66 Tm -0.2511 Tw -[(\). If )]TJ -/TT14 1 Tf -2.7563 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2511 Tw -[( does not have a)]TJ -/TT10 1 Tf -10 0 0 10 174 46.66 Tm -0 Tw -(DOSHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 228.0088 46.66 Tm -0.0578 Tw -[( window property, the function )]TJ -/TT10 1 Tf -10 0 0 10 358.3314 46.66 Tm -0 Tw -(SHAPEW1)Tj -/TT8 1 Tf -9 0 0 9 400.3383 46.66 Tm -0.0578 Tw -[( is called to reshape the window.)]TJ -ET -endstream -endobj -66 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -68 0 obj -<< -/Length 7381 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --28.2 -4.251 TD -(DOSHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 180.0088 569.49 Tm -0.2 Tw -(s are provided to implement window groups and few users should ever)Tj --6.001 -1.3333 TD -0.3978 Tw -[(write them. They are tricky to write and must call )]TJ -/TT10 1 Tf -10 0 0 10 367.1549 557.49 Tm -0 Tw -(SHAPEW1)Tj -/TT8 1 Tf -9 0 0 9 409.1617 557.49 Tm -0.3978 Tw -[( eventually. The)]TJ -/TT10 1 Tf -10 0 0 10 126 545.49 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 180.0088 545.49 Tm -( window property is a simpler hook into reshape operations.)Tj -/TT10 1 Tf -10 0 0 10 102 522.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 522.26 Tm -(SHAPEW1)Tj -/F1 1 Tf -10 0 0 10 145.8 522.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.67 522.26 Tm -(WINDOW REGION)Tj -/TT10 1 Tf -10 0 0 10 218.8814 522.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 224.8824 522.26 Tm -[( )-23916.4([Function])]TJ --10.9869 -1.8833 TD -(Changes )Tj -/TT14 1 Tf -4.3009 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2189 Tw -(s size and position on the screen to be )Tj -/TT14 1 Tf -19.1375 0 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.2189 Tw -[(. After clearing the)]TJ --30.6396 -1.2944 TD -0.3811 Tw -(region on the screen, it calls the windows )Tj -/TT10 1 Tf -10 0 0 10 322.3745 493.66 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 376.3833 493.66 Tm -0.3811 Tw -(, if any, passing it three)Tj --27.8204 -1.3278 TD -0.1356 Tw -(arguments: )Tj -/TT14 1 Tf -5.7692 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1356 Tw -[(; a bitmap that contains )]TJ -/TT14 1 Tf -11.6468 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1356 Tw -(s previous screen image; and the)Tj --24.6172 -1.2889 TD -0 Tw -(region of )Tj -/TT14 1 Tf -4.228 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(s old image within the bitmap.)Tj -/TT12 1 Tf --10.4953 -2.4 TD -(RESHAPEFN)Tj -/TT8 1 Tf -5.4 0 TD -[( )-28083.3([Window Property])]TJ --2.7333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 143.7344 431.86 Tm -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 197.7432 431.86 Tm -0.0467 Tw -[( window property can be a single function or a list of functions that are)]TJ --7.9715 -1.3333 TD -0.1056 Tw -(called when a window is reshaped by )Tj -/TT10 1 Tf -10 0 0 10 285.0699 419.86 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 321.0758 419.86 Tm -0.1056 Tw -[(. If the )]TJ -/TT10 1 Tf -10 0 0 10 354.64 419.86 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 408.6487 419.86 Tm -0.1056 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 421.4823 419.86 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 451.4872 419.86 Tm -0.1056 Tw -[( or a list)]TJ --36.1652 -1.3333 TD -0 Tw -(containing )Tj -/TT10 1 Tf -10 0 0 10 172.5817 407.86 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 202.5866 407.86 Tm -0.2256 Tw -[(, the window will not be reshaped. Otherwise, the function\(s\) are)]TJ --8.5096 -1.3278 TD -0.1089 Tw -(called after the window has been reshaped, its coordinate system readjusted to the new)Tj -0 -1.2222 TD -0.3644 Tw -[(position, the title and border displayed, and the interior filled with texture. The)]TJ -/TT10 1 Tf -10 0 0 10 126 373.86 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 180.0088 373.86 Tm -0.49 Tw -[( should display any additional information needed to complete the)]TJ --6.001 -1.3333 TD -0.1556 Tw -[(windows image in the new position and shape. The )]TJ -/TT10 1 Tf -10 0 0 10 352.1592 361.86 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 406.168 361.86 Tm -0.1556 Tw -[( is called with four)]TJ --31.1298 -1.3278 TD -0.1056 Tw -(arguments: \(1\) the window in its reshaped form, \(2\) a bitmap with the image of the old)Tj -0 -1.2222 TD -0.04 Tw -(window in its old shape, and \(3\) the region within the bitmap that contains the windows)Tj -T* -0.1544 Tw -[(old image, and \(4\) the region of the screen previously occupied by this window. This)]TJ -T* -0.5044 Tw -(function is provided so that users can reformat window contents or whatever.)Tj -/TT10 1 Tf -10 0 0 10 126 305.86 Tm -0 Tw -(RESHAPEBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 234.0175 305.86 Tm -0.4567 Tw -[( \(below\) is the default and should be useful for many)]TJ --12.002 -1.3278 TD -0 Tw -(windows.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(NEWREGIONFN)Tj -/TT8 1 Tf -6.6 0 TD -[( )-26883.3([Window Property])]TJ --3.9333 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 137.7493 256.26 Tm -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 173.7551 256.26 Tm -0.3856 Tw -[( calls )]TJ -/TT10 1 Tf -10 0 0 10 202.7425 256.26 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 256.7513 256.26 Tm -0.3856 Tw -[( to prompt the user for a region, the value of the)]TJ -/TT10 1 Tf -10 0 0 10 126 244.26 Tm -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 192.0107 244.26 Tm -0.4689 Tw -[( window property is passed as the )]TJ -/TT10 1 Tf -10 0 0 10 360.2553 244.26 Tm -0 Tw -(NEWREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 426.2661 244.26 Tm -0.4689 Tw -[( argument to)]TJ -/TT10 1 Tf -10 0 0 10 126 232.26 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 180.0088 232.26 Tm -(.)Tj -/TT12 1 Tf --8.6676 -2.4389 TD -(INITCORNERSFN)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ --5.1333 -1.85 TD -0.0622 Tw -(If this window property is non-)Tj -/TT10 1 Tf -10 0 0 10 253.8815 193.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 271.8845 193.66 Tm -0.0622 Tw -(, it should be a function of one argument, a window,)Tj --16.2094 -1.3333 TD -0.1467 Tw -(that returns a list specifying the initial corners of a "ghost region" of the form \()Tj -/TT10 1 Tf -10 0 0 10 455.9572 181.66 Tm -0 Tw -(BASEX)Tj --32.9957 -1.2 TD -0.086 Tw -(BASEY OPPX OPPY\))Tj -/TT8 1 Tf -9 0 0 9 223.7356 169.66 Tm -0.0356 Tw -(, where \()Tj -/TT10 1 Tf -10 0 0 10 259.0441 169.66 Tm -0.086 Tw -(BASEX, BASEY\))Tj -/TT8 1 Tf -9 0 0 9 337.9167 169.66 Tm -0.0356 Tw -[( describes the anchored corner of the)]TJ --23.5463 -1.3333 TD -0.0322 Tw -(box, and )Tj -/TT10 1 Tf -10 0 0 10 163.1029 157.66 Tm -0.078 Tw -(\(OPPX, OPPY\))Tj -/TT8 1 Tf -9 0 0 9 235.8947 157.66 Tm -0.0322 Tw -[( describes the trackable corner. If )]TJ -/TT10 1 Tf -10 0 0 10 373.3026 157.66 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 409.3084 157.66 Tm -0.0322 Tw -[( calls )]TJ -/TT10 1 Tf -10 0 0 10 431.9358 157.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 126 145.71 Tm -0.2233 Tw -(to prompt the user for a region, this function is applied to the window, and the list)Tj -0 -1.2278 TD -0.0267 Tw -(returned is passed as the )Tj -/TT10 1 Tf -10 0 0 10 227.8611 134.66 Tm -0 Tw -(INITCORNERS)Tj -/TT8 1 Tf -9 0 0 9 293.8719 134.66 Tm -0.0267 Tw -[( argument to )]TJ -/TT10 1 Tf -10 0 0 10 348.1085 134.66 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 402.1172 134.66 Tm -0.0267 Tw -(, to specify the initial)Tj --30.6797 -1.3278 TD -0 Tw -(ghost region.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(DOSHAPEFN)Tj -/TT8 1 Tf -5.4 0 TD -[( )-28083.3([Window Property])]TJ --2.7333 -1.85 TD -0.2233 Tw -(If this window property is non-)Tj -/TT10 1 Tf -10 0 0 10 261.1315 85.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 279.1345 85.06 Tm -0.2233 Tw -(, it is called by )Tj -/TT10 1 Tf -10 0 0 10 348.1986 85.06 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 384.2045 85.06 Tm -0.2233 Tw -[( to reshape the window)]TJ --28.6894 -1.3333 TD -0 Tw -(\(instead of )Tj -/TT10 1 Tf -10 0 0 10 170.3232 73.06 Tm -(SHAPEW1)Tj -/TT8 1 Tf -9 0 0 9 212.33 73.06 Tm -(\). It is called with two arguments: the window and the new region.)Tj -/TT10 1 Tf -10 0 0 10 102 49.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 49.83 Tm -(RESHAPEBYREPAINTFN)Tj -/F1 1 Tf -10 0 0 10 205.2 49.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 208.07 49.83 Tm -(WINDOW OLDIMAGE IMAGEREGION OLDSCREENREGION)Tj -/TT10 1 Tf -10 0 0 10 440.3078 49.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 446.3088 49.83 Tm -( )Tj --37.5899 -1.1056 TD -([Function])Tj -ET -endstream -endobj -69 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -71 0 obj -<< -/Length 8680 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.0022 Tw -(This the default window )Tj -/TT10 1 Tf -10 0 0 10 274.3192 569.49 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 328.328 569.49 Tm -0.0022 Tw -(. )Tj -/TT14 1 Tf -0.7544 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0001 Tc -0.0021 Tw -( is a window that has been reshaped from)Tj --21.5026 -1.3333 TD -0 Tc -0.1811 Tw -(the screen region )Tj -/TT14 1 Tf -8.3324 0 TD -0 Tw -(OLDSCREENREGION)Tj -/TT8 1 Tf -9.0015 0 TD -0.1811 Tw -[( to its new region \(available via )]TJ -/TT10 1 Tf -10 0 0 10 468.0124 557.49 Tm -0 Tw -(\(WINDOWPROP)Tj --29.4012 -1.2 TD -0.288 Tw -(WINDOW REGION\))Tj -/TT8 1 Tf -9 0 0 9 266.8946 545.49 Tm -0.12 Tw -(\). )Tj -/TT14 1 Tf -1.323 0 TD -0 Tw -(OLDIMAGE)Tj -/TT8 1 Tf -4.8008 0 TD -0.12 Tw -[( is a bitmap that contains the image of the window)]TJ --16.4454 -1.3278 TD -(from its previous location. )Tj -/TT14 1 Tf -12.7274 0 TD -0 Tw -(IMAGEREGION)Tj -/TT8 1 Tf -6.6011 0 TD -0.12 Tw -[( is the region within )]TJ -/TT14 1 Tf -9.7074 0 TD -0 Tw -(OLDIMAGE)Tj -/TT8 1 Tf -4.8008 0 TD -0.12 Tw -[( that contains)]TJ --33.8367 -1.2889 TD -0 Tw -(the old image.)Tj -/TT10 1 Tf -10 0 0 10 174 503.89 Tm -(RESHAPEBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 282.0175 503.89 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 285.0175 503.89 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 321.0234 503.89 Tm -0.0833 Tw -[(s the old region contents into the new region. If the)]TJ --16.3359 -1.3278 TD -0.0178 Tw -(new shape is larger in either or both dimensions, the newly exposed areas are redisplayed)Tj -0 -1.2278 TD -0.0922 Tw -(via calls )Tj -/TT14 1 Tf -3.9901 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(s )Tj -/TT10 1 Tf -10 0 0 10 251.7112 480.89 Tm -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 305.72 480.89 Tm -0.0922 Tw -[( window property. )]TJ -/TT10 1 Tf -10 0 0 10 388.6645 480.89 Tm -0 Tw -(RESHAPEBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 496.6821 480.89 Tm -0.0922 Tw -[( may call)]TJ --35.8536 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 468.89 Tm -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 242.7436 468.89 Tm -( up to four times during a single reshape.)Tj --7.6382 -2.1056 TD -0.1889 Tw -[(The choice of which areas of the window to remove or extend is done as follows. If)]TJ -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.3444 Tw -(s new region shares an edge with )Tj -/TT10 1 Tf -10 0 0 10 365.263 438.89 Tm -0 Tw -(OLDSCREENREGION)Tj -/TT8 1 Tf -9 0 0 9 455.2776 438.89 Tm -0.3444 Tw -(, that edge of the)Tj --31.2531 -1.3278 TD -0.0489 Tw -(window image will remain fixed and any addition or reduction in that dimension will be)Tj -0 -1.2278 TD -0.2011 Tw -[(performed on the opposite side. If )]TJ -/TT14 1 Tf -16.9332 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2011 Tw -[( has an )]TJ -/TT10 1 Tf -10 0 0 10 394.2748 415.89 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 430.2806 415.89 Tm -0.2011 Tw -[( property and the newly)]TJ --28.4756 -1.3333 TD -0.0289 Tw -(exposed window area is outside of it, any extra will be added so as to show )Tj -/TT10 1 Tf -10 0 0 10 479.8841 403.89 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 515.89 403.89 Tm -0.0289 Tw -[( that)]TJ --37.9878 -1.3333 TD -0.0589 Tw -[(was previously not visible. An exception to these rules is that the current )]TJ -/TT10 1 Tf -10 0 0 10 475.2296 391.89 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 481.2305 391.89 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 483.4805 391.89 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 489.4815 391.89 Tm -0.0589 Tw -[( position is)]TJ --35.0535 -1.3278 TD -0 Tw -(kept visible, if it was visible before the reshape.)Tj -/TT4 1 Tf -10 0 0 10 126 353.6 Tm -(Moving Windows)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 331.66 Tm -(MOVEW)Tj -/F1 1 Tf -10 0 0 10 183 331.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.87 331.66 Tm -(WINDOW POSorX Y)Tj -/TT10 1 Tf -10 0 0 10 266.8832 331.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.8842 331.66 Tm -[( )-23916.2([Function])]TJ --10.9871 -1.8833 TD -(Moves )Tj -/TT14 1 Tf -3.3995 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.19 Tw -[( to the position specified by )]TJ -/TT14 1 Tf -13.5682 0 TD -0 Tw -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.19 Tw -[( and )]TJ -/TT14 1 Tf -2.5729 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.19 Tw -[( according to the following)]TJ --27.3418 -1.2889 TD -0 Tw -(rules:)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -1.121 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.2011 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 231.0482 285.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 249.0511 285.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 255.3611 285.06 Tm -(GETBOXPOSITION)Tj -/TT8 1 Tf -9 0 0 9 339.3747 285.06 Tm -0.2011 Tw -[( is called to read a position from the user. If)]TJ -/TT14 1 Tf --18.375 -1.3333 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -[( has a )]TJ -/TT10 1 Tf -10 0 0 10 233.488 273.06 Tm -0 Tw -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 0 9 323.5026 273.06 Tm -0.0844 Tw -[( window property, it will be called with )]TJ -/TT14 1 Tf -18.5281 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -[( as)]TJ --38.7401 -1.3278 TD -0.0822 Tw -[(an argument and should return a region which will be used to prompt the user with. If)]TJ -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0867 Tw -[( does not have a )]TJ -/TT10 1 Tf -10 0 0 10 276.8121 250.06 Tm -0 Tw -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 0 9 366.8267 250.06 Tm -0.0867 Tw -[( window property, the region of )]TJ -/TT14 1 Tf -14.9824 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf --36.4076 -1.3278 TD -(is used to prompt with.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.9199 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -( is a )Tj -/TT10 1 Tf -10 0 0 10 232.3681 220.06 Tm -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 280.3759 220.06 Tm -(, )Tj -/TT14 1 Tf -0.5 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -( is used.)Tj --15.9201 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9844 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -[( and )]TJ -/TT14 1 Tf -2.3218 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0644 Tw -[( are both )]TJ -/TT10 1 Tf -10 0 0 10 280.4834 201.06 Tm -0 Tw -(NUMBERP)Tj -/TT8 1 Tf -9 0 0 9 322.4902 201.06 Tm -0.0644 Tw -(, a position is created using )Tj -/TT14 1 Tf -12.6484 0 TD -0 Tw -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0644 Tw -[( as the )]TJ -/TT10 1 Tf -10 0 0 10 498.0203 201.06 Tm -0 Tw -(XCOORD)Tj -/TT8 1 Tf -9 0 0 9 174 189.06 Tm -(and )Tj -/TT14 1 Tf -1.9429 0 TD -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -( as the )Tj -/TT10 1 Tf -10 0 0 10 224.436 189.06 Tm -(YCOORD)Tj -/TT8 1 Tf -9 0 0 9 260.4419 189.06 Tm -(.)Tj --9.6047 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9221 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0004 Tc -0.0018 Tw -( is a )Tj -/TT10 1 Tf -10 0 0 10 232.4482 170.06 Tm -0 Tc -0 Tw -(REGION)Tj -/TT8 1 Tf -9 0 0 9 268.454 170.06 Tm -0.0022 Tw -(, a position is created using its )Tj -/TT10 1 Tf -10 0 0 10 390.5686 170.06 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 414.5725 170.06 Tm -0.0003 Tc -0.0019 Tw -( as the )Tj -/TT10 1 Tf -10 0 0 10 442.1818 170.06 Tm -0 Tc -0 Tw -(XCOORD)Tj -/TT8 1 Tf -9 0 0 9 478.1877 170.06 Tm -0.0004 Tc -0.0018 Tw -( and )Tj -/TT10 1 Tf -10 0 0 10 497.9636 170.06 Tm -0 Tc -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 174 158.06 Tm -(as the )Tj -/TT10 1 Tf -10 0 0 10 199.2993 158.06 Tm -(YCOORD)Tj -/TT8 1 Tf -9 0 0 9 235.3052 158.06 Tm -(.)Tj --6.8117 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9477 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( is not open and )]TJ -/TT14 1 Tf -7.4587 0 TD -0 Tw -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0278 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 344.2886 139.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 362.2915 139.06 Tm -0.0278 Tw -(, the window will be moved without being)Tj --20.9213 -1.3278 TD -0 Tw -(opened. Otherwise, it will be opened.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.9833 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0633 Tw -[( has the atom )]TJ -/TT10 1 Tf -10 0 0 10 272.8661 109.06 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 302.871 109.06 Tm -0.0633 Tw -[( as a )]TJ -/TT10 1 Tf -10 0 0 10 324.1454 109.06 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 360.1513 109.06 Tm -0.0633 Tw -[( window property, the window will not be)]TJ --20.6835 -1.3333 TD -0.1044 Tw -[(moved. If )]TJ -/TT14 1 Tf -5.0667 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1044 Tw -[( has any other non-)]TJ -/TT10 1 Tf -10 0 0 10 332.4023 97.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 350.4052 97.06 Tm -0.1044 Tw -[( value as a )]TJ -/TT10 1 Tf -10 0 0 10 397.9215 97.06 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 433.9274 97.06 Tm -0.1044 Tw -[( property, it should be a)]TJ --28.8808 -1.3278 TD -0.2056 Tw -(function or list of functions that will be called before the window is moved with the)Tj -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( and the new positon as its arguments. If it returns the atom )]TJ -/TT10 1 Tf -10 0 0 10 451.0501 74.06 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 481.055 74.06 Tm -0.0211 Tw -(, the window)Tj --34.1172 -1.3278 TD -0.1322 Tw -[(will not be moved. If it returns a position, the window will be moved to that position)]TJ -ET -endstream -endobj -72 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -74 0 obj -<< -/Length 6795 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -(instead of the new one. If there are more than one )Tj -/TT10 1 Tf -10 0 0 10 328.05 569.49 Tm -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 364.0558 569.49 Tm -(s, the last one to return a value)Tj --26.4506 -1.3278 TD -(is the one that determines where the window is moved to.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.931 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0111 Tw -[( is moved and )]TJ -/TT14 1 Tf -6.5357 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0111 Tw -[( has an )]TJ -/TT10 1 Tf -10 0 0 10 288.3517 539.49 Tm -0 Tw -(AFTERMOVEFN)Tj -/TT8 1 Tf -9 0 0 9 354.3625 539.49 Tm -0.0111 Tw -[( window property, it should be a)]TJ --25.3736 -1.3278 TD -0.0544 Tw -(function or a list of functions that will be called after the window is moved with )Tj -/TT14 1 Tf -36.3999 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf --36.3999 -1.2889 TD -(as an argument.)Tj -/TT10 1 Tf -10 0 0 10 126 497.89 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 156.0049 497.89 Tm -( returns the new position, or )Tj -/TT10 1 Tf -10 0 0 10 271.0625 497.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 289.0654 497.89 Tm -( if the window could not be moved.)Tj --18.1184 -2.1111 TD -0.0467 Tw -[(Note: If )]TJ -/TT10 1 Tf -10 0 0 10 161.9284 478.89 Tm -0 Tw -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 191.9333 478.89 Tm -0.0467 Tw -[( moves any part of the window from off-screen onto the screen, that part)]TJ --7.3259 -1.3333 TD -0 Tw -(is redisplayed \(by calling )Tj -/TT10 1 Tf -10 0 0 10 228.1509 466.89 Tm -(REDISPLAYW)Tj -/TT8 1 Tf -9 0 0 9 288.1606 466.89 Tm -(\).)Tj -/TT10 1 Tf -10 0 0 10 102 443.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 443.66 Tm -(RELMOVEW)Tj -/F1 1 Tf -10 0 0 10 151.2 443.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 154.07 443.66 Tm -(WINDOW POSITION)Tj -/TT10 1 Tf -10 0 0 10 235.0832 443.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 241.0841 443.66 Tm -[( )-22116.2([Function])]TJ --12.7871 -1.8889 TD -(Like )Tj -/TT10 1 Tf -10 0 0 10 146.0331 426.66 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 176.038 426.66 Tm -0.0389 Tw -[( for moving windows but the )]TJ -/TT14 1 Tf -13.4213 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0389 Tw -[( is interpreted relative to the current)]TJ --23.7819 -1.3278 TD -0.03 Tw -(position of )Tj -/TT14 1 Tf -5.0458 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.03 Tw -[(. Example: The following code moves )]TJ -/TT14 1 Tf -17.5408 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.03 Tw -[( to the right one screen)]TJ --29.7878 -1.2889 TD -0 Tw -(point.)Tj -/TT10 1 Tf -10 0 0 10 174 383.83 Tm -(\(RELMOVEW)Tj -/F1 1 Tf -5.4009 0 TD -( )Tj -/TT14 1 Tf -9 0 0 9 230.8788 383.83 Tm -(WINDOW)Tj -/F1 1 Tf -10 0 0 10 263.2841 383.83 Tm -( )Tj -/TT10 1 Tf -0.287 0 TD -(\(create POSITION XCOORD )Tj -/TT15 1 Tf -14.4023 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 1 YCOORD)Tj -/TT15 1 Tf --24.6046 -1.323 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 0\)\))Tj -/TT12 1 Tf -9 0 0 9 102 348.65 Tm -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 TD -[( )-24483.3([Window Property])]TJ --6.3333 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 140.9793 332 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 170.9842 332 Tm -0.7444 Tw -[( calls )]TJ -/TT10 1 Tf -10 0 0 10 206.4315 332 Tm -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf -9 0 0 9 290.4452 332 Tm -0.7444 Tw -[( to prompt the user for a region, the)]TJ -/TT10 1 Tf -10 0 0 10 126 320 Tm -0 Tw -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 0 9 216.0146 320 Tm -0.1189 Tw -[( window property is called \(passing the window as an argument.)]TJ --10.0016 -1.3333 TD -0 Tw -(The )Tj -/TT10 1 Tf -10 0 0 10 143.6044 308 Tm -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 0 9 233.6191 308 Tm -0.0322 Tw -[( should returns a region to be used to prompt the user with. If)]TJ -/TT10 1 Tf -10 0 0 10 126 296 Tm -0 Tw -(CALCULATEREGION)Tj -/TT8 1 Tf -9 0 0 9 216.0146 296 Tm -( is )Tj -/TT10 1 Tf -10 0 0 10 226.9482 296 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 244.9511 296 Tm -(, the region of the window is used to prompt with.)Tj -/TT12 1 Tf --15.8835 -2.4389 TD -(MOVEFN)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.85 TD -0.1078 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 150.9541 257.4 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 186.96 257.4 Tm -0.1078 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 199.8336 257.4 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 229.8385 257.4 Tm -0.1078 Tw -(, the window will not be moved by )Tj -/TT10 1 Tf -10 0 0 10 379.0892 257.4 Tm -0 Tw -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 409.0941 257.4 Tm -0.1078 Tw -[(. Otherwise, if the)]TJ -/TT10 1 Tf -10 0 0 10 126 245.4 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 162.0058 245.4 Tm -0.01 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 191.5061 245.4 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 209.5091 245.4 Tm -0.01 Tw -(, it should be a function or a list of functions that will be called before)Tj --9.2788 -1.3278 TD -0.0389 Tw -(a window is moved with two arguments: the window being moved and the new position)Tj -0 -1.2278 TD -0.0111 Tw -[(of the lower left corner in screen coordinates. If the )]TJ -/TT10 1 Tf -10 0 0 10 333.7177 222.4 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 369.7235 222.4 Tm -0.0111 Tw -[( returns )]TJ -/TT10 1 Tf -10 0 0 10 403.2604 222.4 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 433.2653 222.4 Tm -0.0111 Tw -(, the window)Tj --34.1406 -1.3333 TD -0.0844 Tw -[(will not be moved. If the )]TJ -/TT10 1 Tf -10 0 0 10 233.3258 210.4 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 269.3317 210.4 Tm -0.0844 Tw -[( returns a )]TJ -/TT10 1 Tf -10 0 0 10 311.6986 210.4 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 359.7064 210.4 Tm -0.0844 Tw -(, the window will be moved to)Tj --25.9674 -1.3278 TD -0 Tw -(that position. Otherwise, the window will be moved to the specified new position.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(AFTERMOVEFN)Tj -/TT8 1 Tf -6.6 0 TD -[( )-26883.3([Window Property])]TJ --3.9333 -1.85 TD -0.21 Tw -(If non-)Tj -/TT10 1 Tf -10 0 0 10 154.556 160.8 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 172.5589 160.8 Tm -0.21 Tw -(, it should be a function or a list of functions that will be called after the)Tj --5.1732 -1.3333 TD -0 Tw -(window is moved \(by )Tj -/TT10 1 Tf -10 0 0 10 215.4463 148.8 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 245.4511 148.8 Tm -(\) with the window as an argument.)Tj -/TT4 1 Tf -10 0 0 10 78 121.51 Tm -(Exposing and Burying Windows)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 99.57 Tm -(TOTOPW)Tj -/F1 1 Tf -10 0 0 10 140.4 99.57 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 143.27 99.57 Tm -(WINDOW NOCALLTOTOPFNFLG)Tj -/TT10 1 Tf -10 0 0 10 267.4902 99.57 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 273.4912 99.57 Tm -[( )-18515.4([Function])]TJ --16.3879 -1.8833 TD -(Brings )Tj -/TT14 1 Tf -3.2678 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1589 Tw -[( to the top of the stack of overlapping windows, guaranteeing that it is)]TJ --6.8684 -1.2889 TD -0.0467 Tw -[(entirely visible. If )]TJ -/TT14 1 Tf -8.4 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -[( is closed, it is opened. This is done automatically whenever a)]TJ --12.0006 -1.2889 TD -0 Tw -(printing or drawing operation occurs to the window.)Tj -ET -endstream -endobj -75 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -78 0 obj -<< -/Length 8218 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -(If )Tj -/TT10 1 Tf -10 0 0 10 188.9593 569.49 Tm -(NOCALLTOTOPFNFLG)Tj -/TT8 1 Tf -9 0 0 9 284.9749 569.49 Tm -0.7422 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 309.2685 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 327.2714 569.49 Tm -0.7422 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 359.8663 569.49 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 401.8731 569.49 Tm -0.7422 Tw -[( of )]TJ -/TT14 1 Tf -2.8633 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.7422 Tw -[( is called. If)]TJ -/TT14 1 Tf --31.7832 -1.3333 TD -0 Tw -(NOCALLTOTOPFNFLG)Tj -/TT8 1 Tf -9.6016 0 TD -0.2067 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 275.0676 557.49 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 281.0686 557.49 Tm -0.2067 Tw -(, it is not called, which allows a )Tj -/TT10 1 Tf -10 0 0 10 422.1332 557.49 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 464.14 557.49 Tm -0.2067 Tw -[( to call )]TJ -/TT10 1 Tf -10 0 0 10 498.0516 557.49 Tm -0 Tw -(TOTOPW)Tj -/TT8 1 Tf -9 0 0 9 174 545.54 Tm -(without causing an infinite loop.)Tj -/TT10 1 Tf -10 0 0 10 150 523.2599 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 523.2599 Tm -(BURYW)Tj -/F1 1 Tf -10 0 0 10 183 523.2599 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.87 523.2599 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 218.2753 523.2599 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 224.2762 523.2599 Tm -[( )-29317.1([Function])]TJ --5.5862 -1.8833 TD -(Puts )Tj -/TT14 1 Tf -2.2426 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0356 Tw -[( on the bottom of the stack by moving all the windows that it covers in front)]TJ --5.8432 -1.2889 TD -0 Tw -(of it.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(TOTOPFN)Tj -/TT8 1 Tf -4.2 0 TD -[( )-29283.3([Window Property])]TJ --1.5333 -1.85 TD -0.0278 Tw -(If non-)Tj -/TT10 1 Tf -10 0 0 10 200.916 457.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 218.9189 457.06 Tm -0.0278 Tw -(, whenever the window is brought to the top, the )Tj -/TT10 1 Tf -10 0 0 10 418.3027 457.06 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 460.3095 457.06 Tm -0.0278 Tw -[( is called \(with the)]TJ --31.8122 -1.3278 TD -0.2678 Tw -[(window as a single argument\). This function may be used to bring a collection of)]TJ -0 -1.2222 TD -0 Tw -(windows to the top together.)Tj -0 -2.0056 TD -0.0589 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 198.0741 416.06 Tm -0 Tw -(NOCALLTOPWFN)Tj -/TT8 1 Tf -9 0 0 9 270.0859 416.06 Tm -0.0589 Tw -[( argument of )]TJ -/TT10 1 Tf -10 0 0 10 325.254 416.06 Tm -0 Tw -(TOTOPW)Tj -/TT8 1 Tf -9 0 0 9 361.2599 416.06 Tm -0.0589 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 391.6402 416.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 409.6431 416.06 Tm -0.0589 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 429.938 416.06 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 471.9448 416.06 Tm -0.0589 Tw -[( of the window)]TJ --33.105 -1.3333 TD -0.0667 Tw -(is not called, which provides a way of avoiding infinite loops when using )Tj -/TT10 1 Tf -10 0 0 10 475.7062 404.06 Tm -0 Tw -(TOTOPW)Tj -/TT8 1 Tf -9 0 0 9 511.7121 404.06 Tm -0.0667 Tw -[( from)]TJ --37.5236 -1.3333 TD -0 Tw -(within a )Tj -/TT10 1 Tf -10 0 0 10 209.1562 392.06 Tm -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 251.1631 392.06 Tm -(.)Tj -/TT4 1 Tf -10 0 0 10 126 364.77 Tm -(Shrinking Windows Into Icons)Tj -/TT8 1 Tf -9 0 0 9 126 340.11 Tm -0.0622 Tw -(Occasionally, a user will have a number of large windows on the screen, making it difficult to access)Tj -0 -1.2222 TD -0.1078 Tw -[(those windows being used. To help with the problem of screen space management, the Interlisp-D)]TJ -T* -0.0144 Tw -[(window system allows the creation of Icons. An icon is a small rectangle \(containing text or a bitmap\))]TJ -T* -0.1456 Tw -[(which is a "shrunken-down" form of a particular window. Using the Shrink and Expand window)]TJ -T* -0.0278 Tw -(menu commands \(see the beginning of this chapter\), the user can shrink windows not currently being)Tj -T* -0.0044 Tw -(used into icons, and quickly restore the original windows at any time. This facility is controlled by the)Tj -T* -0 Tw -(following functions and window properties:)Tj -/TT10 1 Tf -10 0 0 10 150 251.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 251.83 Tm -(SHRINKW)Tj -/F1 1 Tf -10 0 0 10 193.8 251.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 251.83 Tm -(WINDOW TOWHAT ICONPOSITION EXPANDFN)Tj -/TT10 1 Tf -10 0 0 10 385.7007 251.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 391.7017 251.83 Tm -[( )-10714.2([Function])]TJ -/TT10 1 Tf -10 0 0 10 174 234.83 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 216.0068 234.83 Tm -0.1011 Tw -[( makes a small icon which represents )]TJ -/TT14 1 Tf -17.3679 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( and removes )]TJ -/TT14 1 Tf -6.5167 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( from the)]TJ --35.7532 -1.3333 TD -0.09 Tw -[(screen. Icons have a different window command menu that contains ")]TJ -/TT10 1 Tf -10 0 0 10 462.6615 222.83 Tm -0 Tw -(EXPAND)Tj -/TT8 1 Tf -9 0 0 9 498.6673 222.83 Tm -0.09 Tw -(" instead)Tj --36.0742 -1.3333 TD -0.3356 Tw -(of ")Tj -/TT10 1 Tf -10 0 0 10 190.52 210.83 Tm -0 Tw -(SHRINK)Tj -/TT8 1 Tf -9 0 0 9 226.5258 210.83 Tm -0.3356 Tw -(". The )Tj -/TT10 1 Tf -10 0 0 10 257.7201 210.83 Tm -0 Tw -(EXPAND)Tj -/TT8 1 Tf -9 0 0 9 293.726 210.83 Tm -0.3356 Tw -[( command calls )]TJ -/TT10 1 Tf -10 0 0 10 367.1176 210.83 Tm -0 Tw -(EXPANDW)Tj -/TT8 1 Tf -9 0 0 9 409.1244 210.83 Tm -0.3356 Tw -[( which returns the shrunken)]TJ --26.1249 -1.3333 TD -0.0511 Tw -[(window to its original size and place. The icon can also be moved by pressing the )]TJ -/TT10 1 Tf -10 0 0 10 509.8893 198.83 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 174 186.83 Tm -(button in it, or expanded by pressing the )Tj -/TT10 1 Tf -10 0 0 10 338.2061 186.83 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 374.2119 186.83 Tm -( button in it. )Tj --22.2458 -2.1111 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 192.2244 167.83 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 240.2322 167.83 Tm -0.1011 Tw -[( property of the window )]TJ -/TT14 1 Tf -11.6188 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1011 Tw -[( affects the operation of )]TJ -/TT10 1 Tf -10 0 0 10 477.3469 167.83 Tm -0 Tw -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 519.3537 167.83 Tm -0.1011 Tw -[(. If)]TJ --38.3726 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 189.4848 155.83 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 237.4926 155.83 Tm -0.0833 Tw -[( property of )]TJ -/TT14 1 Tf -5.7783 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0833 Tw -[( is the atom )]TJ -/TT10 1 Tf -10 0 0 10 373.1152 155.83 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 403.1201 155.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 408.3701 155.83 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 450.377 155.83 Tm -0.0833 Tw -[( returns. Otherwise,)]TJ --30.7086 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 190.2048 143.83 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 238.2126 143.83 Tm -0.1633 Tw -[( property of the window is treated as a \(list of\) function\(s\) to apply to)]TJ -/TT14 1 Tf --7.1347 -1.3333 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(; if any returns the atom )Tj -/TT10 1 Tf -10 0 0 10 304.1309 131.83 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 334.1357 131.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 338.6357 131.83 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 380.6426 131.83 Tm -( returns.)Tj -/TT14 1 Tf --22.9603 -2.1056 TD -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0889 Tw -[(, if given, indicates the image the icon window will have. If )]TJ -/TT14 1 Tf -27.7474 0 TD -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0889 Tw -[( is a string,)]TJ --34.9485 -1.2889 TD -0.1611 Tw -(atom or list, the icons image will be that string \(currently implemented as a title-only)Tj -0 -1.2278 TD -0.1278 Tw -(window with )Tj -/TT14 1 Tf -6.4865 0 TD -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1278 Tw -[( as the title.\) If )]TJ -/TT14 1 Tf -7.544 0 TD -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1278 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 386.2188 90.23 Tm -0 Tw -(BITMAP)Tj -/TT8 1 Tf -9 0 0 9 422.2247 90.23 Tm -0.1278 Tw -(, the icons image will be a)Tj --27.5805 -1.3278 TD -0 Tw -(copy of the bitmap. If )Tj -/TT14 1 Tf -9.9873 0 TD -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -( is a )Tj -/TT14 1 Tf -1.9648 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(, that window will be used as the icon.)Tj --19.1533 -2.0722 TD -(If )Tj -/TT14 1 Tf -1.2788 0 TD -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.3589 Tw -[( is not given \(as is the case when invoked from the )]TJ -/TT10 1 Tf -10 0 0 10 459.1614 59.63 Tm -0 Tw -(SHRINK)Tj -/TT8 1 Tf -9 0 0 9 495.1672 59.63 Tm -0.3589 Tw -[( window)]TJ --35.6852 -1.3278 TD -0 Tw -(command\), then the following apply in turn: )Tj -ET -endstream -endobj -79 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -81 0 obj -<< -/Length 7612 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-19)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 162 569.49 Tm -0.1411 Tw -[(1.)-1250(If the window has an )]TJ -/TT10 1 Tf -10 0 0 10 272.6849 569.49 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 308.6908 569.49 Tm -0.1411 Tw -[( property, it gets called with the two)]TJ --14.299 -1.3333 TD -0 Tw -(arguments )Tj -/TT14 1 Tf -5.2736 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2756 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 284.5635 557.49 Tm -0 Tw -(OLDICON)Tj -/TT8 1 Tf -9 0 0 9 326.5703 557.49 Tm -0.2756 Tw -(, where )Tj -/TT14 1 Tf -4.0702 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2756 Tw -[( is the window)]TJ --23.9563 -1.3333 TD -0.2156 Tw -(being shrunk and )Tj -/TT10 1 Tf -10 0 0 10 258.2375 545.49 Tm -0 Tw -(OLDICON)Tj -/TT8 1 Tf -9 0 0 9 300.2443 545.49 Tm -0.2156 Tw -[( is the previously created icon, if any.)]TJ --13.3605 -1.3333 TD -0 Tw -(The )Tj -/TT10 1 Tf -10 0 0 10 199.9244 533.49 Tm -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 235.9303 533.49 Tm -0.29 Tw -[( should return one of the )]TJ -/TT14 1 Tf -12.95 0 TD -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.29 Tw -[( entities described)]TJ --22.765 -1.3333 TD -0 Tw -(above or return the )Tj -/TT10 1 Tf -10 0 0 10 258.7632 521.49 Tm -(OLDICON)Tj -/TT8 1 Tf -9 0 0 9 300.77 521.49 Tm -( if it does not want to change it. )Tj --15.4189 -2.1111 TD -0.2956 Tw -[(2.)-1250(If the window has an )]TJ -/TT10 1 Tf -10 0 0 10 279.6349 502.49 Tm -0 Tw -(ICON)Tj -/TT8 1 Tf -9 0 0 9 303.6389 502.49 Tm -0.2956 Tw -[( property, it is used as the value of)]TJ -/TT14 1 Tf --13.7377 -1.3278 TD -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj --5.6006 -2.0722 TD -0.0111 Tw -[(3.)-1250(If the window has neither an )]TJ -/TT10 1 Tf -10 0 0 10 297.3934 471.89 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 333.3993 471.89 Tm -0.0111 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 346.5676 471.89 Tm -0 Tw -(ICON)Tj -/TT8 1 Tf -9 0 0 9 370.5715 471.89 Tm -0.0111 Tw -[( property, the icon will)]TJ --21.1746 -1.3278 TD -0 Tw -(be )Tj -/TT14 1 Tf -1.3444 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0622 Tw -(s title or, if )Tj -/TT14 1 Tf -5.4789 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0622 Tw -[( doesnt have a title, the date and time)]TJ --14.0245 -1.2889 TD -0 Tw -(of the icon creation.)Tj -/TT10 1 Tf -10 0 0 10 126 430.29 Tm -(ICONPOSITION)Tj -/TT8 1 Tf -9 0 0 9 198.0117 430.29 Tm -0.0589 Tw -[( gives the position that the new icon will be on the screen. If it is )]TJ -/TT10 1 Tf -10 0 0 10 465.7498 430.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 483.7527 430.29 Tm -(,)Tj --39.7503 -1.3278 TD -(the icon will be in the corner of the window furthest from the center of the screen.)Tj -0 -2.0056 TD -0.0211 Tw -(In all but the default case, the icon is cached on the property )Tj -/TT10 1 Tf -10 0 0 10 369.6638 400.29 Tm -0 Tw -(ICONWINDOW)Tj -/TT8 1 Tf -9 0 0 9 429.6736 400.29 Tm -0.0211 Tw -[( of )]TJ -/TT14 1 Tf -1.4211 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0211 Tw -[( so)]TJ --38.7632 -1.3333 TD -0 Tw -(repeating )Tj -/TT10 1 Tf -10 0 0 10 167.0852 388.29 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 209.0921 388.29 Tm -0.1056 Tw -[( reuses the same icon \(unless overridden by the )]TJ -/TT10 1 Tf -10 0 0 10 408.2197 388.29 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 444.2256 388.29 Tm -0.1056 Tw -[( described)]TJ --35.3584 -1.3333 TD -0.0544 Tw -[(above\). Thus to change the icon it is necessary to remove the )]TJ -/TT10 1 Tf -10 0 0 10 377.0223 376.29 Tm -0 Tw -(ICONWINDOW)Tj -/TT8 1 Tf -9 0 0 9 437.0321 376.29 Tm -0.0544 Tw -[( property or)]TJ --34.5591 -1.3333 TD -0 Tw -(call )Tj -/TT10 1 Tf -10 0 0 10 141.9829 364.29 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 183.9897 364.29 Tm -( explicitly giving a )Tj -/TT14 1 Tf -8.4277 0 TD -(TOWHAT)Tj -/TT8 1 Tf -3.6006 0 TD -( argument.)Tj -/TT10 1 Tf -10 0 0 10 102 341.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 341.06 Tm -(EXPANDW)Tj -/F1 1 Tf -10 0 0 10 145.8 341.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 148.67 341.06 Tm -(ICONW)Tj -/TT10 1 Tf -10 0 0 10 175.6744 341.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 181.6754 341.06 Tm -[( )-28717.2([Function])]TJ --6.1862 -1.8833 TD -0.0011 Tw -(Restores the window for which )Tj -/TT14 1 Tf -14.0881 0 TD -0 Tw -(ICONW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0011 Tw -( is an icon, and removes the icon from the screen. If)Tj --17.0886 -1.2944 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 141.5548 312.46 Tm -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 189.5627 312.46 Tm -0.0911 Tw -[( window property of the main window is the atom )]TJ -/TT10 1 Tf -10 0 0 10 401.8271 312.46 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 431.832 312.46 Tm -0.0911 Tw -(, the window)Tj --33.9813 -1.3278 TD -0.2278 Tw -[(wont be expanded. Otherwise, the window will be restored to its original size and)]TJ -0 -1.2278 TD -0 Tw -(location and the )Tj -/TT10 1 Tf -10 0 0 10 192.2036 289.46 Tm -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 240.2114 289.46 Tm -( \(or list of functions\) will be applied to it.)Tj -/TT12 1 Tf --15.3568 -2.4389 TD -(SHRINKFN)Tj -/TT8 1 Tf -4.8 0 TD -[( )-28683.3([Window Property])]TJ --2.1333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.1344 250.86 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 192.1422 250.86 Tm -0.0911 Tw -[( window property can be a single function or a list of functions that are)]TJ --7.3491 -1.3333 TD -0.2289 Tw -(called just before a window is shrunken by )Tj -/TT10 1 Tf -10 0 0 10 315.396 238.86 Tm -0 Tw -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 357.4028 238.86 Tm -0.2289 Tw -(, with the window as a single)Tj --25.7114 -1.3333 TD -0.0144 Tw -[(argument. If any of the )]TJ -/TT10 1 Tf -10 0 0 10 222.6159 226.86 Tm -0 Tw -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 270.6237 226.86 Tm -0.0144 Tw -(s are the atom )Tj -/TT10 1 Tf -10 0 0 10 329.1032 226.86 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 359.1081 226.86 Tm -0.0144 Tw -(, or if the value returned by any)Tj --25.9009 -1.3333 TD -0 Tw -(of the )Tj -/TT10 1 Tf -10 0 0 10 150.895 214.86 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 198.9028 214.86 Tm -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 250.9297 214.86 Tm -(DONT)Tj -/TT8 1 Tf -9 0 0 9 280.9345 214.86 Tm -(, the window will not be shrunk.)Tj -/TT12 1 Tf --19.8816 -2.4389 TD -(EXPANDREGIONFN)Tj -/TT8 1 Tf -33.9867 0 TD -([Window property])Tj -/TT10 1 Tf -10 0 0 10 126 176.26 Tm -(EXPANDREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 210.0136 176.26 Tm -0.0133 Tw -(, if non-)Tj -/TT10 1 Tf -10 0 0 10 241.0066 176.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 259.0095 176.26 Tm -0.0133 Tw -(, should be the function to be called \(with the window as)Tj --14.7788 -1.3278 TD -0 Tw -(its argument\) before the window is actually expanded.)Tj -0 -2.0056 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 145.9144 146.26 Tm -(EXPANDREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 229.9281 146.26 Tm -0.2889 Tw -[( must return )]TJ -/TT10 1 Tf -10 0 0 10 289.6231 146.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 307.626 146.26 Tm -0.2889 Tw -[( or a valid region, and must not do any)]TJ --20.1807 -1.3278 TD -0.2389 Tw -[(window operations \(e.g., redisplaying\). If NIL is returned, the window is expanded)]TJ -0 -1.2278 TD -0.0089 Tw -(normally, as if the )Tj -/TT10 1 Tf -10 0 0 10 200.381 123.26 Tm -0 Tw -(EXPANDREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 284.3947 123.26 Tm -0.0089 Tw -[( had not existed. The region returned specifies the)]TJ --17.5994 -1.3278 TD -0.1511 Tw -(new region for the main window only, not for the group including any of its attached)Tj -0 -1.2222 TD -0.0589 Tw -[(windows. The window will be opened in its new shape, and any attached windows will)]TJ -0 -1.2278 TD -0.0133 Tw -[(be repositioned or rejustified appropriately. The main window must have a )]TJ -/TT10 1 Tf -10 0 0 10 431.9239 89.26 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 126 77.31 Tm -(which can repaint the entire window under these conditions.)Tj -0 -2.0056 TD -(As with expanding windows normally, the )Tj -/TT10 1 Tf -10 0 0 10 299.3027 59.26 Tm -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 335.32 59.26 Tm -( for the main window is not called.)Tj -ET -endstream -endobj -82 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -84 0 obj -<< -/Length 7027 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.2633 Tw -(Also, the window is reshaped without checking for a special shape function \(e.g., a)Tj -/TT10 1 Tf -10 0 0 10 174 558.49 Tm -0 Tw -(DOSHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 228 558.49 Tm -(\).)Tj -/TT12 1 Tf --8.6667 -2.4389 TD -(ICONFN)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 184.1293 519.89 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 226.1361 519.89 Tm -0.2056 Tw -[( is called without begin given a )]TJ -/TT10 1 Tf -10 0 0 10 365.2971 519.89 Tm -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 401.3029 519.89 Tm -0.2056 Tw -[( argument \(as is the case when)]TJ --25.2559 -1.3333 TD -0.1367 Tw -(invoked from the )Tj -/TT10 1 Tf -10 0 0 10 249.0044 507.89 Tm -0 Tw -(SHRINK)Tj -/TT8 1 Tf -9 0 0 9 285.0103 507.89 Tm -0.1367 Tw -[( window command\) and the windows )]TJ -/TT10 1 Tf -10 0 0 10 449.5168 507.89 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 485.5226 507.89 Tm -0.1367 Tw -[( property is)]TJ --34.6136 -1.3333 TD -0 Tw -(non-)Tj -/TT10 1 Tf -10 0 0 10 192.3867 495.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 210.3896 495.89 Tm -0.2278 Tw -(, then it gets called with two arguments, the window being shrunk and the)Tj --4.0433 -1.3333 TD -0.0933 Tw -[(previously created icon, if any. The )]TJ -/TT10 1 Tf -10 0 0 10 324.1832 483.89 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 360.1891 483.89 Tm -0.0933 Tw -[( should return one of the )]TJ -/TT10 1 Tf -10 0 0 10 466.1187 483.89 Tm -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 502.1246 483.89 Tm -0.0933 Tw -[( entities)]TJ --36.4583 -1.3278 TD -0 Tw -(described above or return the previously created icon if it does not want to change it.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(ICON)Tj -/TT8 1 Tf -2.4 0 TD -[( )-31083.3([Window Property])]TJ -0.2667 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 183.0493 434.29 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 225.0561 434.29 Tm -0.0856 Tw -[( is called without being given a )]TJ -/TT10 1 Tf -10 0 0 10 356.657 434.29 Tm -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 392.6629 434.29 Tm -0.0856 Tw -[( argument, the windows )]TJ -/TT10 1 Tf -10 0 0 10 497.9905 434.29 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 174 422.29 Tm -0.2144 Tw -(property is )Tj -/TT10 1 Tf -10 0 0 10 223.8883 422.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 241.8912 422.29 Tm -0.2144 Tw -(, and the )Tj -/TT10 1 Tf -10 0 0 10 284.4019 422.29 Tm -0 Tw -(ICON)Tj -/TT8 1 Tf -9 0 0 9 308.4058 422.29 Tm -0.2144 Tw -[( property is non-)]TJ -/TT10 1 Tf -10 0 0 10 380.8609 422.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 398.8638 422.29 Tm -0.2144 Tw -(, then it is used as the value of)Tj -/TT10 1 Tf -10 0 0 10 174 410.29 Tm -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 210.0058 410.29 Tm -(.)Tj -/TT12 1 Tf --6.6673 -2.4389 TD -(ICONWINDOW)Tj -/TT8 1 Tf -6 0 TD -[( )-27483.3([Window Property])]TJ --3.3333 -1.85 TD -0.0789 Tw -(Whenever an icon is created, it is cached on the property )Tj -/TT10 1 Tf -10 0 0 10 409.1567 371.69 Tm -0 Tw -(ICONWINDOW)Tj -/TT8 1 Tf -9 0 0 9 469.1664 371.69 Tm -0.0789 Tw -[( of the window,)]TJ --32.7963 -1.3333 TD -0 Tw -(so calling )Tj -/TT10 1 Tf -10 0 0 10 213.8232 359.69 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 255.8301 359.69 Tm -( again will reuse the same icon \(unless overridden by the )Tj -/TT10 1 Tf -10 0 0 10 484.3193 359.69 Tm -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 520.3252 359.69 Tm -(.)Tj --38.4806 -2.1111 TD -0.1789 Tw -(Thus, to change the icon it is necessary to remove the )Tj -/TT10 1 Tf -10 0 0 10 405.0777 340.69 Tm -0 Tw -(ICONWINDOW)Tj -/TT8 1 Tf -9 0 0 9 465.0874 340.69 Tm -0.1789 Tw -[( property or call)]TJ -/TT10 1 Tf -10 0 0 10 174 328.69 Tm -0 Tw -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 216.0068 328.69 Tm -( explicitly giving a )Tj -/TT10 1 Tf -10 0 0 10 291.8564 328.69 Tm -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 327.8623 328.69 Tm -( argument.)Tj -/TT12 1 Tf --19.7625 -2.5878 TD -(DEFAULTICONFN)Tj -/TT8 1 Tf -38.2678 0 TD -([Variable])Tj --35.6011 -1.85 TD -0.0933 Tw -(Changes how an icon is created when a window having no )Tj -/TT10 1 Tf -10 0 0 10 420.0876 288.75 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 456.0935 288.75 Tm -0.0933 Tw -[( is shrunk or when)]TJ -/TT10 1 Tf -10 0 0 10 174 276.75 Tm -0 Tw -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 216.0068 276.75 Tm -0.6311 Tw -(, with a )Tj -/TT10 1 Tf -10 0 0 10 264.8456 276.75 Tm -0 Tw -(TOWHAT)Tj -/TT8 1 Tf -9 0 0 9 300.8515 276.75 Tm -0.6311 Tw -[( argument of a string, is called. The value of)]TJ -/TT10 1 Tf -10 0 0 10 174 264.75 Tm -0 Tw -(DEFAULTICONFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 264.75 Tm -0.0689 Tw -[( is a function of two arguments \(window text\); text is either )]TJ -/TT10 1 Tf -10 0 0 10 497.3287 264.75 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 515.3316 264.75 Tm -0.0689 Tw -[( or a)]TJ --37.9257 -1.3333 TD -0 Tw -(string. )Tj -/TT10 1 Tf -10 0 0 10 201.668 252.75 Tm -(DEFAULTICONFN)Tj -/TT8 1 Tf -9 0 0 9 279.6806 252.75 Tm -( returns an icon window.)Tj --11.7423 -2.1111 TD -0.1733 Tw -(The initial value of )Tj -/TT10 1 Tf -10 0 0 10 257.3069 233.75 Tm -0 Tw -(DEFAULTICONFN)Tj -/TT8 1 Tf -9 0 0 9 335.3196 233.75 Tm -0.1733 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 349.3732 233.75 Tm -0 Tw -(MAKETITLEBARICON)Tj -/TT8 1 Tf -9 0 0 9 445.37 233.75 Tm -0.1733 Tw -(. It creates a window)Tj --30.1522 -1.3278 TD -0.1233 Tw -[(that is a title bar only; the title is either the text argument, the windows title, or "Icon)]TJ -0 -1.2278 TD -0.1078 Tw -(made " for titleless windows. )Tj -/TT10 1 Tf -10 0 0 10 324.6342 210.75 Tm -0 Tw -(MAKETITLEBARICON)Tj -/TT8 1 Tf -9 0 0 9 420.6498 210.75 Tm -0.1078 Tw -[( places the title bar at some)]TJ --27.4055 -1.3278 TD -0 Tw -(corner of the main window.)Tj -0 -2.0056 TD -0.2567 Tw -(An alternative behavior is available by setting )Tj -/TT10 1 Tf -10 0 0 10 374.9776 180.75 Tm -0 Tw -(DEFAULTICONFN)Tj -/TT8 1 Tf -9 0 0 9 452.9903 180.75 Tm -0.2567 Tw -[( to be )]TJ -/TT10 1 Tf -10 0 0 10 483.809 180.75 Tm -0 Tw -(TEXTICON)Tj -/TT8 1 Tf -9 0 0 9 531.77 180.75 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 174 168.75 Tm -(TEXTICON)Tj -/TT8 1 Tf -9 0 0 9 222.0078 168.75 Tm -( creates a titled icon window from the text or windows title.)Tj --5.3342 -2.1056 TD -0.1911 Tw -[(You can now copy-select titled icons such as those used by FileBrowser, SEdit, TEdit,)]TJ -0 -1.2278 TD -0.0633 Tw -[(Sketch. The default behavior is that the icons title is unread \(via )]TJ -/TT10 1 Tf -10 0 0 10 440.8631 138.75 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 488.8709 138.75 Tm -0.0633 Tw -(\), but if the)Tj --34.9857 -1.3333 TD -0.0911 Tw -(icon window has a )Tj -/TT10 1 Tf -10 0 0 10 254.3776 126.75 Tm -0 Tw -(COPYFN)Tj -/TT8 1 Tf -9 0 0 9 290.3835 126.75 Tm -0.0911 Tw -[( property, that gets called instead, with the icon window as)]TJ --12.9315 -1.3278 TD -0.0811 Tw -[(its argument. For example, if the name displayed in an icon is really a symbol, and you)]TJ -0 -1.2222 TD -0.0544 Tw -(want copy selection to cause the name to be unread correctly with respect to the package)Tj -0 -1.2278 TD -0.1 Tw -[(and read table of the exec you are copying into, you could put the following )]TJ -/TT10 1 Tf -10 0 0 10 497.9894 92.75 Tm -0 Tw -(COPYFN)Tj -/TT8 1 Tf -9 0 0 9 174 80.8 Tm -(property on the icon window:)Tj -/TT10 1 Tf -10 0 0 10 174 44.75 Tm -(\(LAMBDA \(WINDOW\))Tj -ET -endstream -endobj -85 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -87 0 obj -<< -/Length 5466 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-21)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --28.2 -4.251 TD -(\(IL:BKSYSBUF T \)\))Tj -/TT12 1 Tf -9 0 0 9 102 510.54 Tm -(EXPANDFN)Tj -/TT8 1 Tf -4.8 0 TD -[( )-28683.3([Window Property])]TJ --2.1333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 143.6144 493.89 Tm -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 191.6222 493.89 Tm -0.0333 Tw -[( window property can be a single function or a list of functions. If one of)]TJ --7.2914 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 141.5548 481.89 Tm -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 189.5627 481.89 Tm -0.0911 Tw -(s is the atom )Tj -/TT10 1 Tf -10 0 0 10 244.8695 481.89 Tm -0 Tw -(DONT)Tj -/TT8 1 Tf -9 0 0 9 274.8744 481.89 Tm -0.0911 Tw -[(, the window will not be expanded. Otherwise, the)]TJ -/TT10 1 Tf -10 0 0 10 126 469.89 Tm -0 Tw -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 174.0078 469.89 Tm -0.2256 Tw -(s are called after the window has been expanded by )Tj -/TT10 1 Tf -10 0 0 10 402.3801 469.89 Tm -0 Tw -(EXPANDW)Tj -/TT8 1 Tf -9 0 0 9 444.3869 469.89 Tm -0.2256 Tw -(, with the)Tj --35.3763 -1.3278 TD -0 Tw -(window as a single argument.)Tj -/TT4 1 Tf -10 0 0 10 54 397.6 Tm -(Creating Icons with ICONW)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 394.89 m -534.01 394.89 l -S -BT -/TT10 1 Tf -10 0 0 10 78 373.89 Tm -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 108.0049 373.89 Tm -0.2389 Tw -[( is a group of functions available for building small windows of arbitrary shape. These)]TJ --3.3339 -1.3278 TD -0.0878 Tw -[(windows are principally for use as )-5.3(icons for shrinking windows; i.e., these functions are likely to be)]TJ -0 -1.2278 TD -0.0056 Tw -(invoked from within the )Tj -/TT10 1 Tf -10 0 0 10 177.9207 350.89 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 213.9266 350.89 Tm -0.0056 Tw -[( of a window. An icon is specified by supplying its image \(a bitmap\))]TJ --15.103 -1.3278 TD -0.0222 Tw -[(and a mask that specifies its shape. The mask is a bitmap of the same dimensions as the image whose)]TJ -0 -1.2222 TD -0.0633 Tw -(bits are on \(black\) in those positions considered to be in the image, and off \(white\) in those positions)Tj -T* -0.0278 Tw -[(where the background should show through. By using the mask and appropriate window functions,)]TJ -/TT10 1 Tf -10 0 0 10 78 305.89 Tm -0 Tw -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 108.0049 305.89 Tm -0.2989 Tw -[( maintains the illusion that the icon window is nonrectangular, even though the actual)]TJ --3.3339 -1.3278 TD -0.0422 Tw -[(window itself is rectangular. The illusion is not complete, of course. For example, if you try to select)]TJ -0 -1.2222 TD -0.3111 Tw -(what looks like the background \(or an occluded window\) around the icon but still within its)Tj -T* -0.0189 Tw -[(rectangular perimeter, the icon window itself is selected. Also, if you move a window occluded by an)]TJ -0 -1.2278 TD -0.1322 Tw -(icon, the icon never notices that the background changed behind it. Icons created with )Tj -/TT10 1 Tf -10 0 0 10 438.8309 260.89 Tm -0 Tw -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 468.8358 260.89 Tm -0.1322 Tw -[( can)]TJ --43.4262 -1.3278 TD -0.0133 Tw -(also have titles; some part of the image can be filled with text computed at the time the icon is created,)Tj -0 -1.2222 TD -0 Tw -(or text may be changed after creation.)Tj -/TT4 1 Tf -10 0 0 10 78 211.6 Tm -(Creating Icons)Tj -/TT8 1 Tf -9 0 0 9 78 186.89 Tm -0.0367 Tw -(Two types of icons can be created with )Tj -/TT10 1 Tf -10 0 0 10 236.9667 186.89 Tm -0 Tw -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 266.9715 186.89 Tm -0.0367 Tw -[(, a borderless window)-5.4( containing an image defined by)]TJ --20.9968 -1.3278 TD -0.0001 Tw -(a mask and a window with a title.)Tj -2.6667 -2.3333 TD -0 Tw -(\()Tj -/TT12 1 Tf -0.3333 0 TD -(ICONW)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(IMAGE MASK POSITION NOOPENFLG)Tj -/TT8 1 Tf -17.4028 0 TD -[(\) )-15500.3( [Function])]TJ --18.32 -1.85 TD -0.1533 Tw -(Creates a window at )Tj -/TT14 1 Tf -9.9493 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.1533 Tw -(, or prompts for a position if )Tj -/TT14 1 Tf -13.795 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.1533 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 443.4362 137.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 461.4391 137.29 Tm -0.1533 Tw -[(. The)]TJ --37.271 -1.3333 TD -0.0489 Tw -(window is borderless, and filled with )Tj -/TT14 1 Tf -17.0746 0 TD -0 Tw -(IMAGE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0489 Tw -(, as cookie-cut by )Tj -/TT14 1 Tf -8.0466 0 TD -0 Tw -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0489 Tw -[(. If )]TJ -/TT14 1 Tf -1.8166 0 TD -0 Tw -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -0.0489 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 450.4652 125.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 468.4681 125.29 Tm -0.0489 Tw -(, the)Tj --38.052 -1.3278 TD -0.3189 Tw -(image is considered rectangular \(i.e., )Tj -/TT14 1 Tf -18.0539 0 TD -0 Tw -(MASK)Tj -/TT8 1 Tf -2.4004 0 TD -0.3189 Tw -[( defaults to a black bitmap of the same)]TJ --20.4543 -1.2944 TD -0 Tw -(dimensions as )Tj -/TT14 1 Tf -6.5361 0 TD -(IMAGE)Tj -/TT8 1 Tf -3.0005 0 TD -(\). If )Tj -/TT14 1 Tf -2.0029 0 TD -(NOOPENFLG)Tj -/TT8 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 289.3975 101.69 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 295.3984 101.69 Tm -(, the window is returned unopened.)Tj -/TT10 1 Tf -10 0 0 10 102 79.69 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108 79.69 Tm -(TITLEDICONW)Tj -/TT10 1 Tf -10 0 0 10 167.4097 79.69 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 173.4106 79.69 Tm -(ICON TITLE FONT POSITION NOOPENFLG JUST BREAKCHARS)Tj --7.2679 -1.1111 TD -(OPERATION)Tj -/TT10 1 Tf -10 0 0 10 156.6079 69.69 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 108 59.74 Tm -([Function])Tj -ET -endstream -endobj -88 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -91 0 obj -<< -/Length 8347 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.16 Tw -(Creates a titled icon at )Tj -/TT14 1 Tf -10.8752 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.16 Tw -(, or prompts for a position if )Tj -/TT14 1 Tf -13.8417 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.16 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 500.3695 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 518.3724 569.49 Tm -0.16 Tw -[(. If)]TJ -/TT14 1 Tf --38.2636 -1.3333 TD -0 Tw -(NOOPENFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0067 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 233.6615 557.49 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 239.6625 557.49 Tm -0.0067 Tw -[(, the window is returned unopened. The argument )]TJ -/TT14 1 Tf -22.9609 0 TD -0 Tw -(ICON)Tj -/TT8 1 Tf -2.4004 0 TD -0.0067 Tw -[( is an instance of)]TJ --32.6571 -1.3333 TD -0.0444 Tw -(the record )Tj -/TT10 1 Tf -10 0 0 10 217.6115 545.49 Tm -0 Tw -(TITLEDICON)Tj -/TT8 1 Tf -9 0 0 9 277.6213 545.49 Tm -0.0444 Tw -(, which specifies the icon image and mask, as with )Tj -/TT10 1 Tf -10 0 0 10 483.8532 545.49 Tm -0 Tw -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 513.858 545.49 Tm -0.0444 Tw -(, and)Tj --37.762 -1.3278 TD -[(a region within the image to be used for displaying the title. Thus, the )]TJ -/TT14 1 Tf -31.9757 0 TD -0 Tw -(ICON)Tj -/TT8 1 Tf -2.4004 0 TD -0.0444 Tw -[( argument is)]TJ --34.3761 -1.2889 TD -0 Tw -(usually of the form)Tj -0 -2.0056 TD -(\(create )Tj -/TT10 1 Tf -10 0 0 10 205.1045 503.89 Tm -(TITLEDICON)Tj -/TT8 1 Tf -9 0 0 9 265.1142 503.89 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 269.6142 503.89 Tm -(ICON)Tj -/TT8 1 Tf -9 0 0 9 293.6181 503.89 Tm -( )Tj -/TT15 1 Tf -0.25 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( someIconImage)Tj -/TT10 1 Tf -10 0 0 10 174 484.89 Tm -(MASK)Tj -/TT8 1 Tf -9 0 0 9 198.0039 484.89 Tm -( )Tj -/TT15 1 Tf -0.25 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( iconMask )Tj -/TT10 1 Tf -10 0 0 10 254.4824 484.89 Tm -(TITLEREG)Tj -/TT8 1 Tf -9 0 0 9 302.4902 484.89 Tm -( )Tj -/TT15 1 Tf -0.25 0 TD -<0040>Tj -/TT8 1 Tf -0.9868 0 TD -( someRegionWithinICON\))Tj --15.5135 -2.1056 TD -0.0467 Tw -(The title region is specified in coordinates relative to the icon, i.e., the lower-left corner of)Tj -0 -1.2278 TD -0.1167 Tw -[(the image bitmap is \(0, 0\). The mask can be )]TJ -/TT10 1 Tf -10 0 0 10 360.8347 454.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 378.8376 454.89 Tm -0.1167 Tw -[( if the icon is rectangular. The image)]TJ --22.7597 -1.3333 TD -0.0622 Tw -(should be white where it is covered by the title region. )Tj -/TT10 1 Tf -10 0 0 10 398.6781 442.89 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 464.6888 442.89 Tm -0.0622 Tw -[( clears the region)]TJ --32.2988 -1.3278 TD -0.19 Tw -(before printing on it. The title is printed into the specified region in the image, using)Tj -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[(. If )]TJ -/TT14 1 Tf -1.7633 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0311 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 244.5699 419.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 262.5728 419.89 Tm -0.0311 Tw -[( it defaults to the value of )]TJ -/TT10 1 Tf -10 0 0 10 368.1251 419.89 Tm -0 Tw -(DEFAULTICONFONT)Tj -/TT8 1 Tf -9 0 0 9 458.1398 419.89 Tm -0.0311 Tw -(, initially Helvetica)Tj --31.5711 -1.3333 TD -0.0656 Tw -[(10. The title is broken into multiple lines if necessary; )]TJ -/TT10 1 Tf -10 0 0 10 396.0154 407.89 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 462.0261 407.89 Tm -0.0656 Tw -[( attempts to place)]TJ --32.0029 -1.3278 TD -0.0344 Tw -(the breaks at characters that are in the list of character codes )Tj -/TT14 1 Tf -27.1707 0 TD -0 Tw -(BREAKCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.0344 Tw -(. )Tj -/TT14 1 Tf -0.8189 0 TD -0 Tw -(BREAKCHARS)Tj -/TT8 1 Tf --33.9905 -1.2889 TD -0.0778 Tw -[(defaults to \(CHARCODE \(SPACE \)\). In addition, line breaks are forced by any carriage)]TJ -0 -1.2222 TD -0.1289 Tw -(returns in )Tj -/TT14 1 Tf -4.8349 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1289 Tw -(, independent of )Tj -/TT14 1 Tf -7.8886 0 TD -0 Tw -(BREAKCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.1289 Tw -(. )Tj -/TT14 1 Tf -1.0078 0 TD -0 Tw -(BREAKCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.1289 Tw -[( is ignored if a long title)]TJ --28.7338 -1.2889 TD -0.1422 Tw -[(would not otherwise fit in the specified region. For convenience, )]TJ -/TT14 1 Tf -30.4912 0 TD -0 Tw -(BREAKCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.1422 Tw -[( = FILE)]TJ --36.4922 -1.2889 TD -0.0922 Tw -(means the title is a file name, so break at file name field delimiters. The argument )Tj -/TT14 1 Tf -37.5864 0 TD -0 Tw -(JUST)Tj -/TT8 1 Tf --37.5864 -1.2889 TD -0.1289 Tw -[(indicates how the text should be justified relative to the region. It is an atom or list of)]TJ -0 -1.2222 TD -0.31 Tw -(atoms chosen from )Tj -/TT14 1 Tf -9.5721 0 TD -0.7444 Tw -(TOP, BOTTOM, LEFT)Tj -/TT8 1 Tf -11.6905 0 TD -0.31 Tw -(, or )Tj -/TT14 1 Tf -2.3109 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.31 Tw -(, which indicate the vertical)Tj --26.574 -1.2889 TD -0.1222 Tw -(positioning \(flush to top or bottom\) and/or horizontal positioning \(flush to left edge or)Tj -0 -1.2278 TD -0.0411 Tw -[(right\). If )]TJ -/TT14 1 Tf -4.2767 0 TD -0 Tw -(JUST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0411 Tw -[( = )]TJ -/TT10 1 Tf -10 0 0 10 244.787 304.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 262.7899 304.89 Tm -0.0411 Tw -(, the text is centered. The argument )Tj -/TT14 1 Tf -16.0803 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0411 Tw -[( is a display stream)]TJ --31.3467 -1.3333 TD -0.0489 Tw -[(operation indicating how the title should be printed. If )]TJ -/TT14 1 Tf -25.0856 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.0489 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 460.1916 292.89 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 496.1975 292.89 Tm -0.0489 Tw -(, then the)Tj --35.7997 -1.3333 TD -0.07 Tw -[(title is printed white-on-black. The default )]TJ -/TT14 1 Tf -19.6707 0 TD -0 Tw -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -0.07 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 411.8375 280.89 Tm -0 Tw -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 453.8443 280.89 Tm -0.07 Tw -(, meaning black-on-)Tj --31.0938 -1.3333 TD -0 Tw -(white. )Tj -/TT10 1 Tf -10 0 0 10 203.3598 268.89 Tm -(ERASE)Tj -/TT8 1 Tf -9 0 0 9 233.3647 268.89 Tm -( is the same as )Tj -/TT10 1 Tf -10 0 0 10 292.4184 268.89 Tm -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 328.4243 268.89 Tm -(; )Tj -/TT10 1 Tf -10 0 0 10 332.9243 268.89 Tm -(PAINT)Tj -/TT8 1 Tf -9 0 0 9 362.9292 268.89 Tm -( is the same as )Tj -/TT10 1 Tf -10 0 0 10 421.9829 268.89 Tm -(REPLACE)Tj -/TT8 1 Tf -9 0 0 9 463.9897 268.89 Tm -(.)Tj --32.2211 -2.1111 TD -0.0711 Tw -(For convenience, )Tj -/TT10 1 Tf -10 0 0 10 244.7575 249.89 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 310.7682 249.89 Tm -0.0711 Tw -[( can also be used to create icons that consist solely of a)]TJ --15.1965 -1.3333 TD -0.1967 Tw -[(title, with no special image. If the argument )]TJ -/TT14 1 Tf -21.5146 0 TD -0 Tw -(ICON)Tj -/TT8 1 Tf -2.4004 0 TD -0.1967 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 403.7087 237.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 421.7117 237.89 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 427.9817 237.89 Tm -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 493.9924 237.89 Tm -0.1967 Tw -[( creates a)]TJ --35.5547 -1.3278 TD -0.0489 Tw -(rectangular icon large enough to contain )Tj -/TT14 1 Tf -18.4398 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0489 Tw -(, with a border the same width as that on)Tj --21.4403 -1.2889 TD -0.0633 Tw -[(a regular window. The remaining arguments are as described above, except that a )]TJ -/TT14 1 Tf -37.5917 0 TD -0 Tw -(JUST)Tj -/TT8 1 Tf --37.5917 -1.2889 TD -(of )Tj -/TT14 1 Tf -1.1289 0 TD -(TOP)Tj -/TT8 1 Tf -1.8003 0 TD -( or )Tj -/TT14 1 Tf -1.4409 0 TD -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -( is not meaningful.)Tj --7.9707 -2.0722 TD -0.2967 Tw -(In the Medley release, )Tj -/TT10 1 Tf -10 0 0 10 274.3636 184.09 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 340.3743 184.09 Tm -0.2967 Tw -[( can create icons with white text on a black)]TJ --18.486 -1.3278 TD -0.0156 Tw -[(background. To get this effect, your icon image must be black in the correct area, and you)]TJ -0 -1.2278 TD -0 Tw -(must specify the )Tj -/TT14 1 Tf -7.501 0 TD -(OPERATION)Tj -/TT8 1 Tf -5.4009 0 TD -( argument as )Tj -/TT10 1 Tf -10 0 0 10 344.0991 161.09 Tm -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 380.105 161.09 Tm -(. )Tj --22.9006 -2.1056 TD -(In Medley, you can copy- select the title of an icon. )Tj -/TT4 1 Tf -10 0 0 10 126 97.8 Tm -(Modifying Icons)Tj -/TT8 1 Tf -9 0 0 9 150 77.14 Tm -(\()Tj -/TT12 1 Tf -0.333 0 TD -(ICONW.TITLE)Tj -/TT8 1 Tf -6.6003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ICON TITLE)Tj -/TT8 1 Tf -6.001 0 TD -24.3027 Tw -(\) [Function])Tj -ET -endstream -endobj -92 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -94 0 obj -<< -/Length 6330 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-23)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.2078 Tw -(Returns the current title of the window )Tj -/TT14 1 Tf -18.9701 0 TD -0 Tw -(ICON)Tj -/TT8 1 Tf -2.4004 0 TD -0.2078 Tw -(, which must be a window returned by)Tj -/TT10 1 Tf -10 0 0 10 126 557.89 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 192.0107 557.89 Tm -0.1611 Tw -[(. In addition, if )]TJ -/TT14 1 Tf -7.8563 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1611 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 321.9424 557.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 339.9454 557.89 Tm -0.1611 Tw -(, makes )Tj -/TT14 1 Tf -3.914 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1611 Tw -[( the new title of the)]TJ --30.6862 -1.3278 TD -0 Tw -(window and repaints it accordingly. To erase the current title, make )Tj -/TT14 1 Tf -30.5 0 TD -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -( a null string.)Tj --36.1672 -2.4 TD -(\()Tj -/TT12 1 Tf -0.333 0 TD -(ICONW.SHADE)Tj -/TT8 1 Tf -6.6003 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(WINDOW SHADE)Tj -/TT8 1 Tf -7.2012 0 TD -[(\) )-22852.5([Function])]TJ --11.7178 -1.85 TD -0.0567 Tw -(Returns the current shading of the window )Tj -/TT10 1 Tf -10 0 0 10 303.7033 507.69 Tm -0 Tw -(ICON)Tj -/TT8 1 Tf -9 0 0 9 327.7072 507.69 Tm -0.0567 Tw -(, which must be a window returned by)Tj -/TT10 1 Tf -10 0 0 10 126 495.69 Tm -0 Tw -(ICONW)Tj -/TT8 1 Tf -9 0 0 9 156.0049 495.69 Tm -0.0767 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 170.3531 495.69 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 236.3639 495.69 Tm -0.0767 Tw -[(. In addition, if )]TJ -/TT14 1 Tf -7.7608 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0767 Tw -[( is non-NIL, paints the texture )]TJ -/TT14 1 Tf -13.9825 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf --37.0064 -1.3278 TD -(on )Tj -/TT14 1 Tf -1.5757 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1978 Tw -[(. A typical use for this function is to communicate a change of state in a)]TJ --5.1763 -1.2889 TD -0.0333 Tw -[(window that is shrunken, without reopening the window. To remove any shading, make)]TJ -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -( be )Tj -/TT10 1 Tf -10 0 0 10 166.7944 461.09 Tm -(WHITESHADE)Tj -/TT8 1 Tf -9 0 0 9 226.8042 461.09 Tm -(.)Tj -/TT4 1 Tf -10 0 0 10 78 433.8 Tm -(Default Icons)Tj -/TT8 1 Tf -9 0 0 9 78 409.09 Tm -0.0489 Tw -(When you shrink a window that has no )Tj -/TT10 1 Tf -10 0 0 10 241.2173 409.09 Tm -0 Tw -(ICONFN)Tj -/TT8 1 Tf -9 0 0 9 277.2231 409.09 Tm -0.0489 Tw -(, the system currently creates an icon that looks like)Tj --22.1359 -1.3278 TD -0.1756 Tw -[(the windows title bar. You can make the system instead create titled icons by setting the global)]TJ -0 -1.2278 TD -0 Tw -(variable )Tj -/TT10 1 Tf -10 0 0 10 112.418 386.09 Tm -(DEFAULTICONFN)Tj -/TT8 1 Tf -9 0 0 9 190.4306 386.09 Tm -( to the value )Tj -/TT10 1 Tf -10 0 0 10 241.706 386.09 Tm -(TEXTICON)Tj -/TT8 1 Tf -9 0 0 9 289.7139 386.09 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 364.09 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108 364.09 Tm -(TEXTICON)Tj -/TT10 1 Tf -10 0 0 10 151.207 364.09 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 157.208 364.09 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 189.6133 364.09 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 195.6143 364.09 Tm -(TEXT)Tj -/TT10 1 Tf -10 0 0 10 217.2178 364.09 Tm -(\) )Tj -/TT8 1 Tf -9 0 0 9 444.63 364.09 Tm -([Function])Tj --35.4033 -1.8833 TD -0.09 Tw -(Creates a titled icon window for the main window )Tj -/TT14 1 Tf -23.3715 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.09 Tw -[( containing the text )]TJ -/TT14 1 Tf -9.0949 0 TD -0 Tw -(TEXT)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -(, or)Tj --38.4674 -1.2944 TD -0 Tw -(the windows title if )Tj -/TT14 1 Tf -9.124 0 TD -(TEXT)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 240.6533 335.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 258.6562 335.49 Tm -(.)Tj -/TT12 1 Tf --17.4063 -2.4389 TD -(DEFAULTTEXTICON)Tj -/TT8 1 Tf -9.0015 0 TD -[( )-28766.3([Variable])]TJ --6.3348 -1.85 TD -0.0189 Tw -(The value that )Tj -/TT10 1 Tf -10 0 0 10 185.8757 296.89 Tm -0 Tw -(TEXTICON)Tj -/TT8 1 Tf -9 0 0 9 233.8835 296.89 Tm -0.0189 Tw -[( passes to )]TJ -/TT10 1 Tf -10 0 0 10 274.6562 296.89 Tm -0 Tw -(TITLEDICONW)Tj -/TT8 1 Tf -9 0 0 9 340.667 296.89 Tm -0.0189 Tw -[( as its )]TJ -/TT10 1 Tf -10 0 0 10 365.6105 296.89 Tm -0 Tw -(ICON)Tj -/TT8 1 Tf -9 0 0 9 389.6144 296.89 Tm -0.0189 Tw -[( argument. Initially it is)]TJ -/TT10 1 Tf -10 0 0 10 126 284.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 144.0029 284.89 Tm -0.1878 Tw -[(, which creates an unadorned rectangular window. However, you can set it to a)]TJ -/TT10 1 Tf -10 0 0 10 126 272.89 Tm -0 Tw -(TITLEDICON)Tj -/TT8 1 Tf -9 0 0 9 186.0097 272.89 Tm -0.03 Tw -[( record of your choosing if you would like default icons to have a different)]TJ --6.6678 -1.3278 TD -0 Tw -(appearance.)Tj -/TT4 1 Tf -10 0 0 10 78 234.6 Tm -(Coordinate Systems, Extents, And Scrolling)Tj -/TT8 1 Tf -9 0 0 9 78 209.94 Tm -0.1256 Tw -[(Note: The word "scrolling" has two distinct meanings when applied to Interlisp-D windows. This)]TJ -0 -1.2222 TD -0.1756 Tw -(section documents the use of "scroll bars" on the left and bottom of a window to move an object)Tj -T* -0.1844 Tw -[(displayed in the window. "Scrolling" also describes the feature where trying to print text off the)]TJ -T* -0.1122 Tw -[(bottom of a window will cause the contents to "scroll up." This second feature is controlled by the)]TJ -0 -1.2278 TD -0 Tw -(function )Tj -/TT10 1 Tf -10 0 0 10 113.6133 165.89 Tm -(DSPSCROLL)Tj -/TT8 1 Tf -9 0 0 9 167.6221 165.89 Tm -( \(see Chapter 27\).)Tj --9.958 -2.8833 TD -0.0267 Tw -[(One way of thinking of a window is as a "view" onto an object \(e.g. a graph, a file, a picture, etc.\) The)]TJ -0 -1.2222 TD -0.1133 Tw -[(object has its own natural coordinate system in terms of which its subparts are laid out. When the)]TJ -T* -0.0311 Tw -(window is created, the )Tj -/TT10 1 Tf -10.4081 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( Offset and )]TJ -/TT10 1 Tf -5.2174 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0311 Tw -[( Offset of the windows display stream are set to map the origin)]TJ --16.8257 -1.2889 TD -0.01 Tw -[(of the objects coordinate system into the lower left point of the windows interior region. At the same)]TJ -0 -1.2222 TD -0.1333 Tw -(time, the Clipping Region of the display stream is set to correspond to the interior of the window.)Tj -T* -0.1244 Tw -(From then on, the display streams coordinate system is translated and its clipping region adjusted)Tj -T* -0 Tw -(whenever the window is moved, scrolled or reshaped.)Tj -ET -endstream -endobj -95 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -97 0 obj -<< -/Length 7457 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-24)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0355 Tw -[(There are several distinct regions associated with a window viewing an object. First, there is a region)]TJ -0 -1.2222 TD -0.0222 Tw -[(in the windows coordinate system that contains the complete image of the object. This region \(which)]TJ -T* -0.0867 Tw -(can only be determined by application programs with knowledge of the "semantics" of the object\) is)Tj -0 -1.2278 TD -0.1178 Tw -(stored as the )Tj -/TT10 1 Tf -10 0 0 10 181.7561 536.49 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 217.762 536.49 Tm -0.1178 Tw -[( property of the window \(below\). Second, the clipping region of the display)]TJ --10.1958 -1.3333 TD -0.0022 Tw -(stream \(obtainable with the function )Tj -/TT10 1 Tf -10 0 0 10 273.1498 524.49 Tm -0 Tw -(DSPCLIPPINGREGION)Tj -/TT8 1 Tf -9 0 0 9 375.1664 524.49 Tm -0.0022 Tw -(, see Chapter 27\) specifies the portion of)Tj --27.6852 -1.3278 TD -0.0289 Tw -[(the object that is actually visible in the window. This is set so that it corresponds to the interior of the)]TJ -0 -1.2222 TD -0.0422 Tw -[(window \(not including the border or title\). Finally, there is the region on the screen that specifies the)]TJ -T* -0.0033 Tw -(total area that the window occupies, including the border and title. This region \(in screen coordinates\))Tj -0 -1.2278 TD -0.09 Tw -(is stored as the )Tj -/TT10 1 Tf -10 0 0 10 190.4998 479.49 Tm -0 Tw -(REGION)Tj -/TT8 1 Tf -9 0 0 9 226.5056 479.49 Tm -0.09 Tw -[( property of the window \(see the Miscellaneous Window Properties section)]TJ --11.1673 -1.3278 TD -0 Tw -(below\).)Tj -0 -2.7778 TD -0.0356 Tw -[(The window system supports the idea of scrolling the contents of a window. Scrolling regions are on)]TJ -0 -1.2278 TD -0.2111 Tw -[(the left and the bottom edge of each window. The )]TJ -/TT10 1 Tf -10 0 0 10 349.0133 431.49 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 373.0172 431.49 Tm -0.2111 Tw -[( button is used to indicate upward or)]TJ --27.4464 -1.3278 TD -0.0911 Tw -(leftward scrolling by the amount necessary to move the selected position to the top or the left edge.)Tj -0 -1.2278 TD -0 Tw -(The )Tj -/TT10 1 Tf -10 0 0 10 144.0044 408.49 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 174.0093 408.49 Tm -0.0767 Tw -[( button is used to indicate downward or rightward scrolling by the amount necessary to)]TJ --5.3344 -1.3333 TD -0.1544 Tw -[(move the top or left edge to the selected position. The )]TJ -/TT10 1 Tf -10 0 0 10 360.0379 396.49 Tm -0 Tw -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 396.0438 396.49 Tm -0.1544 Tw -[( button is used to indicate global)]TJ --30.0049 -1.3278 TD -0.1055 Tw -[(placement of the object within the window \(similar to "thumbing" a book\). In the scroll region, the)]TJ -0 -1.2222 TD -0.0167 Tw -[(part of the object that is being viewed by the window is marked with a gray shade. If the whole scroll)]TJ -T* -0.0756 Tw -[(bar is thought of as the entire object, the shaded portion is the portion currently being viewed. This)]TJ -0 -1.2278 TD -0.1744 Tw -(will only occur when the window "knows" how big the object is \(see window property )Tj -/TT10 1 Tf -10 0 0 10 495.7643 351.49 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 531.7702 351.49 Tm -(,)Tj --45.0856 -1.3278 TD -(below\).)Tj -0 -2.7833 TD -0.0756 Tw -(When the button is released in a scroll region, the function SCROLLW is called. )Tj -/TT10 1 Tf -10 0 0 10 456.0296 314.49 Tm -0 Tw -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 498.0364 314.49 Tm -0.0756 Tw -[( calls the)]TJ --41.3374 -1.3278 TD -0.0033 Tw -(scrolling function associated with the window to do the actual scrolling and provides a programmable)Tj -0 -1.2222 TD -0 Tw -(entry to the scrolling operation.)Tj -/TT10 1 Tf -10 0 0 10 150 269.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 269.26 Tm -(SCROLLW)Tj -/F1 1 Tf -10 0 0 10 193.8 269.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 269.26 Tm -(WINDOW DELTAX DELTAY CONTINUOUSFLG)Tj -/TT10 1 Tf -10 0 0 10 380.2999 269.26 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -[( )-9399.9([Function])]TJ -/TT8 1 Tf -9 0 0 9 174 252.26 Tm -0.0133 Tw -(Calls the )Tj -/TT10 1 Tf -10 0 0 10 211.1584 252.26 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 259.1663 252.26 Tm -0.0133 Tw -[( window property of the window)]TJ -/TT14 1 Tf -14.8777 0 TD -0.0333 Tw -[( WINDOW)]TJ -/TT8 1 Tf -4.234 0 TD -0.0133 Tw -[( with arguments )]TJ -/TT14 1 Tf -7.5713 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT14 1 Tf --39.7465 -1.3333 TD -(DELTAX)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT14 1 Tf -0.5 0 TD -(DELTAY)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT14 1 Tf -2.1929 0 TD -(CONTINUOUSFLG)Tj -/TT8 1 Tf -7.8013 0 TD -(. See )Tj -/TT10 1 Tf -10 0 0 10 355.604 240.26 Tm -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 403.6118 240.26 Tm -( window property below.)Tj -/TT10 1 Tf -10 0 0 10 150 217.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 217.03 Tm -(SCROLL.HANDLER)Tj -/F1 1 Tf -10 0 0 10 231.6 217.03 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.47 217.03 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 266.8752 217.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.8762 217.03 Tm -[( )-23917.1([Function])]TJ --10.9862 -1.8833 TD -0.0422 Tw -[(This is the function that tracks the mouse while it is in the scroll region. It is called when)]TJ -0 -1.2278 TD -0.06 Tw -[(the cursor leaves a window in either the left or downward direction. If )]TJ -/TT10 1 Tf -10 0 0 10 466.0444 189.03 Tm -0 Tw -(N)Tj -/TT8 1 Tf -9 0 0 9 472.0453 189.03 Tm -( )Tj -/TT14 1 Tf -0.31 0 TD -(MWINDOW)Tj -/TT8 1 Tf -4.2007 0 TD -0.06 Tw -[( does)]TJ --37.6268 -1.3278 TD -0.0267 Tw -(not have a scroll region for this direction \(e.g. the window has moved or reshaped since it)Tj -0 -1.2278 TD -0.1833 Tw -(was last scrolled\), a scroll region is created that is )Tj -/TT10 1 Tf -10 0 0 10 388.5 166.03 Tm -0 Tw -(SCROLLBARWIDTH)Tj -/TT8 1 Tf -9 0 0 9 472.5137 166.03 Tm -0.1833 Tw -[( wide. It then)]TJ --33.1682 -1.3278 TD -0.0567 Tw -(waits for )Tj -/TT10 1 Tf -4.2623 0 TD -0 Tw -(SCROLLWAITTIME)Tj -/TT8 1 Tf -8.4014 0 TD -0.0567 Tw -[( milliseconds and if the cursor is still inside the scroll region,)]TJ --12.6636 -1.2889 TD -0.17 Tw -(it opens a window the size of the scroll region and changes the cursor to indicate the)Tj -0 -1.2222 TD -0 Tw -(scrolling is taking place.)Tj -0 -2 TD -0.0033 Tw -(When a button is pressed, the cursor shape is changed to indicate the type of scrolling \(up,)Tj -0 -1.2278 TD -0.1633 Tw -[(down, left, right or thumb\). After the button is held for )]TJ -/TT10 1 Tf -10 0 0 10 414.0296 102.43 Tm -0 Tw -(WAITBEFORESCROLLTIME)Tj -/TT8 1 Tf -9 0 0 9 174 90.43 Tm -1.2389 Tw -(milliseconds, until the button is released )Tj -/TT10 1 Tf -10 0 0 10 403.7613 90.43 Tm -0 Tw -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 445.7682 90.43 Tm -1.2389 Tw -[( is called each)]TJ -/TT10 1 Tf -10 0 0 10 174 78.43 Tm -0 Tw -(WAITBETWEENSCROLLTIME)Tj -/TT8 1 Tf -9 0 0 9 300.0205 78.43 Tm -0.7989 Tw -[( milliseconds. These calls are made with the)]TJ -/TT10 1 Tf -10 0 0 10 174 66.43 Tm -0 Tw -(CONTINUOUSFLG)Tj -/TT8 1 Tf -9 0 0 9 252.0127 66.43 Tm -0.8267 Tw -[( argument set to )]TJ -/TT10 1 Tf -10 0 0 10 348.6003 66.43 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 354.6013 66.43 Tm -0.8267 Tw -[(. If the button is released before)]TJ -/TT10 1 Tf -10 0 0 10 174 54.43 Tm -0 Tw -(WAITBEFORESCROLLTIME)Tj -/TT8 1 Tf -9 0 0 9 294.0195 54.43 Tm -1.3233 Tw -[( milliseconds, )]TJ -/TT10 1 Tf -10 0 0 10 374.5949 54.43 Tm -0 Tw -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 416.6017 54.43 Tm -1.3233 Tw -[( is called with the)]TJ -/TT10 1 Tf -10 0 0 10 174 42.43 Tm -0 Tw -(CONTINUOUSFLG)Tj -/TT8 1 Tf -9 0 0 9 252.0127 42.43 Tm -( argument set to )Tj -/TT10 1 Tf -10 0 0 10 318.8403 42.43 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 336.8432 42.43 Tm -(.)Tj -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -100 0 obj -<< -/Length 8627 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-25)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0589 Tw -(The arguments passed to )Tj -/TT10 1 Tf -10 0 0 10 230.1127 569.49 Tm -0 Tw -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 272.1195 569.49 Tm -0.0589 Tw -[( depend on the mouse button. If the )]TJ -/TT10 1 Tf -10 0 0 10 423.6449 569.49 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 447.6488 569.49 Tm -0.0589 Tw -[( button is)]TJ --35.7388 -1.3333 TD -0.0033 Tw -(used in the vertical scroll region, )Tj -/TT10 1 Tf -10 0 0 10 258.0994 557.49 Tm -0 Tw -(DY)Tj -/TT8 1 Tf -9 0 0 9 270.1014 557.49 Tm -0.0001 Tc -0.0032 Tw -( is distance from cursor position at the time the button)Tj --16.0113 -1.3333 TD -0 Tc -0.15 Tw -(was released to the top of the window and )Tj -/TT10 1 Tf -10 0 0 10 309.6422 545.49 Tm -0 Tw -(DX)Tj -/TT8 1 Tf -9 0 0 9 321.6441 545.49 Tm -0.15 Tw -[( is 0. If the )]TJ -/TT10 1 Tf -10 0 0 10 374.9419 545.49 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 404.9467 545.49 Tm -0.15 Tw -[( button is used, the)]TJ --30.9941 -1.3333 TD -0.0978 Tw -(inverse of this quantity is used for )Tj -/TT10 1 Tf -10 0 0 10 270.012 533.49 Tm -0 Tw -(DY)Tj -/TT8 1 Tf -9 0 0 9 282.014 533.49 Tm -0.0978 Tw -[( and 0 for )]TJ -/TT10 1 Tf -10 0 0 10 325.7351 533.49 Tm -0 Tw -(DX)Tj -/TT8 1 Tf -9 0 0 9 337.7371 533.49 Tm -0.0978 Tw -[(. If the )]TJ -/TT10 1 Tf -10 0 0 10 374.1512 533.49 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 398.1552 533.49 Tm -0.0978 Tw -[( button is used in the)]TJ --30.2395 -1.3333 TD -0.0422 Tw -(horizontal scroll region, )Tj -/TT10 1 Tf -10 0 0 10 224.3294 521.49 Tm -0 Tw -(DX)Tj -/TT8 1 Tf -9 0 0 9 236.3314 521.49 Tm -0.0422 Tw -[( is distance from cursor position to left of the window and )]TJ -/TT10 1 Tf -10 0 0 10 473.9905 521.49 Tm -0 Tw -(DY)Tj -/TT8 1 Tf -9 0 0 9 126 509.49 Tm -(is 0. If the )Tj -/TT10 1 Tf -10 0 0 10 168.9477 509.49 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 198.9526 509.49 Tm -( button is used, the inverse of this quantity is used for )Tj -/TT10 1 Tf -10 0 0 10 414.7021 509.49 Tm -(DX)Tj -/TT8 1 Tf -9 0 0 9 426.7041 509.49 Tm -( and 0 for )Tj -/TT10 1 Tf -4.4668 0 TD -(DY)Tj -/TT8 1 Tf -1.2002 0 TD -(.)Tj --39.0786 -2.1111 TD -0.07 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 150.2741 490.49 Tm -0 Tw -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 186.28 490.49 Tm -0.07 Tw -[( button is pressed, the distance argument to )]TJ -/TT10 1 Tf -10 0 0 10 367.3078 490.49 Tm -0 Tw -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 409.3146 490.49 Tm -0.07 Tw -[( will be a )]TJ -/TT10 1 Tf -10 0 0 10 449.988 490.49 Tm -0 Tw -(FLOATP)Tj -/TT8 1 Tf -9 0 0 9 126 478.54 Tm -0.0667 Tw -(between 0.0 and 1.0 that indicates the proportion of the distance the cursor was from the)Tj -0 -1.2222 TD -0 Tw -(left or top edge to the right or bottom edge.)Tj -2.6667 -2 TD -0.4889 Tw -[(Note: )488.9( )87.7(The scrolling regions will not come up if the window has a)]TJ -/TT10 1 Tf -10 0 0 10 180 438.49 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 228.0078 438.49 Tm -1.0989 Tw -[( window property of NIL, has a non-)]TJ -/TT10 1 Tf -10 0 0 10 443.9712 438.49 Tm -0 Tw -(NIL)Tj --26.3971 -1.2 TD -(NOSCROLLBARS)Tj -/TT8 1 Tf -9 0 0 9 252.0117 426.49 Tm -0.23 Tw -[( window property, or if its )]TJ -/TT10 1 Tf -10 0 0 10 372.0098 426.49 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 180 414.49 Tm -(property has certain values and its )Tj -/TT10 1 Tf -10 0 0 10 319.6626 414.49 Tm -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 355.6685 414.49 Tm -( is fully visible.)Tj -/TT10 1 Tf -10 0 0 10 102 391.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 391.26 Tm -(SCROLLBYREPAINTFN)Tj -/F1 1 Tf -10 0 0 10 199.8 391.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 202.67 391.26 Tm -(WINDOW DELTAX DELTAY CONTINUOUSFLG)Tj -/TT10 1 Tf -10 0 0 10 386.2999 391.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 392.3008 391.26 Tm -[( )-5314.4([Function])]TJ -/TT10 1 Tf -10 0 0 10 126 374.26 Tm -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 228.0166 374.26 Tm -0.0989 Tw -[( is the standard scrolling function which should be used as the)]TJ -/TT10 1 Tf -10 0 0 10 126 362.26 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 174.0078 362.26 Tm -( property for most scrolling windows.)Tj --5.3342 -2.1111 TD -0.0089 Tw -(This function, when used as a )Tj -/TT10 1 Tf -10 0 0 10 246.9385 343.26 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 294.9463 343.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 299.5263 343.26 Tm -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 335.5321 343.26 Tm -0.0089 Tw -(s the bits that will remain visible after)Tj --23.2814 -1.3278 TD -0.2067 Tw -(the scroll to their new location, fills the newly exposed area with texture, adjusts the)Tj -0 -1.2278 TD -0.1267 Tw -(windows coordinates and then calls the windows )Tj -/TT10 1 Tf -10 0 0 10 338.2026 320.26 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 392.2114 320.26 Tm -0.1267 Tw -[( on the newly exposed)]TJ --29.5791 -1.3278 TD -0 Tw -(region. Thus this function will scroll any window that has a repaint function.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.9299 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.01 Tw -[( has an )]TJ -/TT10 1 Tf -10 0 0 10 197.0856 290.26 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 233.0914 290.26 Tm -0.01 Tw -[( property, )]TJ -/TT10 1 Tf -10 0 0 10 275.1161 290.26 Tm -0 Tw -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 377.1328 290.26 Tm -0.01 Tw -[( will limit scrolling in the )]TJ -/TT10 1 Tf -10 0 0 10 479.995 290.26 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 126 278.26 Tm -(and )Tj -/TT10 1 Tf -10 0 0 10 143.4858 278.26 Tm -(Y)Tj -/TT8 1 Tf -9 0 0 9 149.4868 278.26 Tm -( directions according to the value of the window property )Tj -/TT10 1 Tf -10 0 0 10 381.8477 278.26 Tm -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 471.8623 278.26 Tm -(.)Tj --38.4291 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.921 0 TD -(DELTAX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0003 Tc -0.0008 Tw -( or )Tj -/TT14 1 Tf -1.4431 0 TD -0 Tc -0 Tw -(DELTAY)Tj -/TT8 1 Tf -3.6006 0 TD -0.0002 Tc -0.0009 Tw -( is a )Tj -/TT10 1 Tf -10 0 0 10 229.8017 259.26 Tm -0 Tc -0 Tw -(FLOATP)Tj -/TT8 1 Tf -9 0 0 9 265.8075 259.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 270.3175 259.26 Tm -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 372.3341 259.26 Tm -0.0011 Tw -( will position the window so)Tj --27.3705 -1.3333 TD -0 Tw -(that its top or left edge will be positioned at that proportion of its )Tj -/TT10 1 Tf -10 0 0 10 386.9033 247.26 Tm -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 422.9092 247.26 Tm -(. If the window)Tj --32.9899 -1.3333 TD -(does not have an )Tj -/TT10 1 Tf -10 0 0 10 195.4951 235.26 Tm -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 231.501 235.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 236.001 235.26 Tm -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 338.0175 235.26 Tm -( will do nothing.)Tj --23.5575 -2.1111 TD -(If )Tj -/TT14 1 Tf -1.1644 0 TD -(CONTINUOUSFLG)Tj -/TT8 1 Tf -7.8013 0 TD -0.2444 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 240.411 216.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 258.4139 216.26 Tm -0.2444 Tw -(, this indicates that the scrolling button is being held)Tj --14.7127 -1.3333 TD -0.2522 Tw -[(down. In this case, )]TJ -/TT10 1 Tf -10 0 0 10 215.7528 204.26 Tm -0 Tw -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 317.7694 204.26 Tm -0.2522 Tw -[( will scroll the distance of one linefeed)]TJ --21.3077 -1.3333 TD -0 Tw -(height \(as returned by )Tj -/TT10 1 Tf -10 0 0 10 216.4746 192.26 Tm -(DSPLINEFEED)Tj -/TT8 1 Tf -9 0 0 9 282.4853 192.26 Tm -(, see Chapter 27\).)Tj --22.7206 -2.8833 TD -(Scrolling is controlled by the following window properties:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(EXTENT)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.85 TD -0.0156 Tw -[(Used to limit scrolling operations. Accesses the extent region of the window. If non-)]TJ -/TT10 1 Tf -10 0 0 10 465.7978 128.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 483.8007 128.66 Tm -(,)Tj --39.7556 -1.3333 TD -(the )Tj -/TT10 1 Tf -10 0 0 10 141.0748 116.66 Tm -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 177.0807 116.66 Tm -0.0378 Tw -[( is a region in the windows display stream that contains the complete image)]TJ --5.6756 -1.3278 TD -0.0944 Tw -[(of the object being viewed by the window. User programs are responsible for updating)]TJ -0 -1.2278 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 142.0049 93.66 Tm -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 178.0107 93.66 Tm -0.1411 Tw -[(. The functions )]TJ -/TT10 1 Tf -10 0 0 10 246.5829 93.66 Tm -0 Tw -(UNIONREGIONS)Tj -/TT8 1 Tf -9 0 0 9 318.5946 93.66 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 324.3646 93.66 Tm -(EXTENDREGION)Tj -/TT8 1 Tf -9 0 0 9 396.3763 93.66 Tm -0.1411 Tw -(, etc. \(see Chapter 27\))Tj --30.0418 -1.3278 TD -0 Tw -(are useful for computing a new extent region.)Tj -0 -2.0056 TD -0.1367 Tw -(In some situations, it is useful to define an )Tj -/TT10 1 Tf -10 0 0 10 306.7868 63.66 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 342.7926 63.66 Tm -0.1367 Tw -[( that only exists in one dimension.)]TJ --24.0881 -1.3333 TD -0.31 Tw -(This may be done by specifying an )Tj -/TT10 1 Tf -10 0 0 10 285.9045 51.66 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 321.9103 51.66 Tm -0.31 Tw -[( region with a width or height of -1.)]TJ -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -103 0 obj -<< -/Length 5976 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-26)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -7.8 -4.251 TD -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 222.0078 569.49 Tm -0.2322 Tw -[( handling recognizes this situation as meaning that the negative EXTENT)]TJ --5.3342 -1.3278 TD -0 Tw -(dimension is unknown.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(SCROLLFN)Tj -/TT8 1 Tf -4.8 0 TD -[( )-28683.3([Window Property])]TJ --2.1333 -1.85 TD -0.05 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 197.9141 519.89 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 245.922 519.89 Tm -0.05 Tw -[( property is )]TJ -/TT10 1 Tf -10 0 0 10 295.5503 519.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 313.5532 519.89 Tm -0.05 Tw -[(, the window will not scroll. Otherwise, it should be a)]TJ --15.5059 -1.3278 TD -0.0222 Tw -[(function of four arguments: \(1\) the window being scrolled, \(2\) the distance to scroll in the)]TJ -0 -1.2222 TD -0.1756 Tw -(horizontal direction \(positive to right, negative to left\), \(3\) the distance to scroll in the)Tj -T* -0.1211 Tw -(vertical direction \(positive up, negative down\), and \(4\) a flag which is T if the scrolling)Tj -0 -1.2278 TD -0.1767 Tw -[(button is being held down. For more information, see )]TJ -/TT10 1 Tf -10 0 0 10 406.8448 474.89 Tm -0 Tw -(SCROLL)Tj -/TT8 1 Tf -9 0 0 9 442.8507 474.89 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 445.1007 474.89 Tm -(HANDLER)Tj -/TT8 1 Tf -9 0 0 9 487.1075 474.89 Tm -0.1767 Tw -[(. For most)]TJ --34.7897 -1.3333 TD -0 Tw -(scrolling windows, the )Tj -/TT10 1 Tf -10 0 0 10 266.9575 462.89 Tm -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 314.9653 462.89 Tm -( function should be )Tj -/TT10 1 Tf -10 0 0 10 394.1284 462.89 Tm -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 496.145 462.89 Tm -(.)Tj -/TT12 1 Tf --38.4606 -2.4389 TD -(NOSCROLLBARS)Tj -/TT8 1 Tf -7.2 0 TD -[( )-26283.3([Window Property])]TJ --4.5333 -1.85 TD -0.1011 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 198.8341 424.29 Tm -0 Tw -(NOSCROLLBARS)Tj -/TT8 1 Tf -9 0 0 9 270.8459 424.29 Tm -0.1011 Tw -[( property is non-)]TJ -/TT10 1 Tf -10 0 0 10 340.2409 424.29 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 358.2438 424.29 Tm -0.1011 Tw -(, scroll bars will not be brought up for this)Tj --20.4715 -1.3278 TD -0.1378 Tw -[(window. This disables mouse-driven scrolling of a window. This window can still be)]TJ -0 -1.2278 TD -0 Tw -(scrolled using )Tj -/TT10 1 Tf -10 0 0 10 231.9287 401.29 Tm -(SCROLLW)Tj -/TT8 1 Tf -9 0 0 9 273.9355 401.29 Tm -(.)Tj -/TT12 1 Tf --13.7706 -2.4389 TD -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9.0015 0 TD -[( )-24481.9([Window Property])]TJ -/TT10 1 Tf -10 0 0 10 174 362.69 Tm -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 276.0166 362.69 Tm -0.1044 Tw -[( uses the )]TJ -/TT10 1 Tf -10 0 0 10 315.4386 362.69 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 405.4533 362.69 Tm -0.1044 Tw -[( window property to limit how)]TJ --25.717 -1.3333 TD -0.6767 Tw -(far scrolling can go in the )Tj -/TT10 1 Tf -10 0 0 10 313.4643 350.69 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 319.4653 350.69 Tm -0.6767 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 351.3811 350.69 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 357.3821 350.69 Tm -0.6767 Tw -[( directions. The possible values for)]TJ -/TT10 1 Tf -10 0 0 10 174 338.69 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 264.0146 338.69 Tm -( and their interpretations are:)Tj -/TT10 1 Tf -10 0 0 10 192 319.69 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 222 319.69 Tm -0.0478 Tw -[(This will keep the extent region visible or near visible. It will not scroll)]TJ -0 -1.3278 TD -0.0089 Tw -(the window so that the top of the extent is below the top of the window,)Tj -0 -1.2222 TD -0.16 Tw -(the bottom of the extent is more than one point above the top of the)Tj -T* -0.0133 Tw -(window, the left of the extent is to the right of the window and the right)Tj -0 -1.2278 TD -0.0633 Tw -[(of the extent is to the left of the window. The )]TJ -/TT10 1 Tf -10 0 0 10 411.2306 274.69 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 447.2365 274.69 Tm -0.0633 Tw -[( can be scrolled)]TJ --25.0263 -1.3278 TD -0.04 Tw -(to just above the window to provide a way of "hiding" the contents of a)Tj -0 -1.2222 TD -0.0756 Tw -[(window. In this mode the extent is either in the window or just of the)]TJ -T* -0 Tw -(top of the window.)Tj -/TT10 1 Tf -10 0 0 10 204 222.69 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 222 222.69 Tm -0.2411 Tw -[(The extent is not used to control scrolling. The user can scroll the)]TJ -0 -1.3333 TD -0.0822 Tw -[(window to anywhere. Having the )]TJ -/TT10 1 Tf -10 0 0 10 365.4039 210.69 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 401.4097 210.69 Tm -0.0822 Tw -[( window property does all)]TJ --19.9344 -1.3278 TD -0.1767 Tw -(thumb scrolling to be supported so that the user can get back to the)Tj -/TT10 1 Tf -10 0 0 10 222 187.69 Tm -0 Tw -(EXTENT)Tj -/TT8 1 Tf -9 0 0 9 258.0058 187.69 Tm -( by thumb scrolling.)Tj -/TT10 1 Tf -10 0 0 10 180 168.69 Tm -(LIMIT)Tj -/TT8 1 Tf -9 0 0 9 222 168.69 Tm -0.0344 Tw -[(This will keep the extent region visible. The window is only allowed to)]TJ -T* -0 Tw -(view within the extent.)Tj -/TT10 1 Tf -10 0 0 10 204 138.69 Tm -(+)Tj -/TT8 1 Tf -9 0 0 9 222 138.69 Tm -0.3256 Tw -(This will keep the extent region visible or just off in the positive)Tj -0 -1.3333 TD -0.0589 Tw -(direction in either )Tj -/TT10 1 Tf -10 0 0 10 296.8512 126.69 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 302.8522 126.69 Tm -0.0589 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 316.8805 126.69 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 322.8814 126.69 Tm -0.0589 Tw -[( \(i.e., the image will be either be visible or just)]TJ --11.2091 -1.3278 TD -0 Tw -(off to the top and/or right.\))Tj -/TT10 1 Tf -10 0 0 10 204 96.69 Tm -(-)Tj -/TT8 1 Tf -9 0 0 9 222 96.69 Tm -0.3044 Tw -(This will keep the extent region visible or just off in the negative)Tj -0 -1.3333 TD -0.0589 Tw -(direction in either )Tj -/TT10 1 Tf -10 0 0 10 296.8512 84.69 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 302.8522 84.69 Tm -0.0589 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 316.8805 84.69 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 322.8814 84.69 Tm -0.0589 Tw -[( \(i.e., the image will be either be visible or just)]TJ --11.2091 -1.3278 TD -0 Tw -(off to the left and/or bottom\).)Tj -/TT10 1 Tf -10 0 0 10 198 54.69 Tm -(+-)Tj -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -106 0 obj -<< -/Length 6131 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-27)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --25.8 -4.251 TD -(-+)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.0167 Tw -(This will keep the extent region visible or just off in the window \(i.e. the)Tj -0 -1.3278 TD -0 Tw -(image will be either be visible or just off to the left, bottom, top or right\).)Tj -/TT10 1 Tf -10 0 0 10 54.03 539.49 Tm -(\(XBEHAVIOR . YBEHAVIOR\))Tj -/TT8 1 Tf -9 0 0 9 198 539.49 Tm -0.0322 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 221.5941 539.49 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 311.6088 539.49 Tm -0.0322 Tw -[( is a list, the )]TJ -/TT10 1 Tf -10 0 0 10 361.9655 539.49 Tm -0 Tw -(CAR)Tj -/TT8 1 Tf -9 0 0 9 379.9685 539.49 Tm -0.0322 Tw -[( is interpreted as the)]TJ --22.8854 -1.3333 TD -0.0144 Tw -(scrolling limit in the )Tj -/TT10 1 Tf -10 0 0 10 256.979 527.49 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 262.9799 527.49 Tm -0.0144 Tw -[( behavior and the )]TJ -/TT10 1 Tf -10 0 0 10 335.4208 527.49 Tm -0 Tw -(CDR)Tj -/TT8 1 Tf -9 0 0 9 353.4238 527.49 Tm -0.0144 Tw -[( as the scrolling limit in the)]TJ -/TT10 1 Tf -10 0 0 10 174 515.49 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 180.001 515.49 Tm -0.0689 Tw -[( behavior. )]TJ -/TT10 1 Tf -10 0 0 10 226.0612 515.49 Tm -0 Tw -(XBEHAVIOR)Tj -/TT8 1 Tf -9 0 0 9 280.0699 515.49 Tm -0.0689 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 301.0458 515.49 Tm -0 Tw -(YBEHAVIOR)Tj -/TT8 1 Tf -9 0 0 9 355.0546 515.49 Tm -0.0689 Tw -[( should each be one of the)]TJ --20.1172 -1.3333 TD -0 Tw -(atoms )Tj -/TT10 1 Tf -10 0 0 10 200.9484 503.49 Tm -0.157 Tw -(\(NIL T LIMIT + - +- -+\))Tj -/TT8 1 Tf -9 0 0 9 348.3908 503.49 Tm -0.0656 Tw -[(. The interpretations of the)]TJ --19.3768 -1.3333 TD -0 Tw -(atoms is the same as above except that )Tj -/TT10 1 Tf -10 0 0 10 328.916 491.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 346.9189 491.49 Tm -( is equivalent to )Tj -/TT10 1 Tf -10 0 0 10 412.2876 491.49 Tm -(LIMIT)Tj -/TT8 1 Tf -9 0 0 9 442.2925 491.49 Tm -(.)Tj --29.8103 -2.1111 TD -0.0078 Tw -(Note: The )Tj -/TT10 1 Tf -10 0 0 10 215.5936 472.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 233.5965 472.49 Tm -0.0078 Tw -[( value of )]TJ -/TT10 1 Tf -10 0 0 10 270.4086 472.49 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 360.4232 472.49 Tm -0.0078 Tw -[( is equivalent to )]TJ -/TT10 1 Tf -10 0 0 10 426.0719 472.49 Tm -0 Tw -(\(LIMIT)Tj --25.2072 -1.2 TD -(. +\))Tj -/TT8 1 Tf -9 0 0 9 198.0039 460.49 Tm -(.)Tj --2.6671 -2.1111 TD -0.0989 Tw -[(Example: If the )]TJ -/TT10 1 Tf -10 0 0 10 242.2519 441.49 Tm -0 Tw -(SCROLLEXTENTUSE)Tj -/TT8 1 Tf -9 0 0 9 332.2665 441.49 Tm -0.0989 Tw -[( window property of a window)]TJ --17.5852 -1.3333 TD -0.1667 Tw -(\(with an extent defined\) is )Tj -/TT10 1 Tf -10 0 0 10 288.063 429.49 Tm -0.4 Tw -(\(LIMIT . T\))Tj -/TT8 1 Tf -9 0 0 9 362.0737 429.49 Tm -0.1667 Tw -(, the window will scroll)Tj --20.8971 -1.3333 TD -0.11 Tw -(uncontrolled in the )Tj -/TT10 1 Tf -10 0 0 10 255.3245 417.49 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 261.3254 417.49 Tm -0.11 Tw -[( dimension but be limited to the extent region in)]TJ --9.7028 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 405.49 Tm -(X)Tj -/TT8 1 Tf -9 0 0 9 194.7358 405.49 Tm -( dimension.)Tj -/TT4 1 Tf -10 0 0 10 78 378.2 Tm -(Mouse Activity in Windows)Tj -/TT8 1 Tf -9 0 0 9 78 353.54 Tm -0.2567 Tw -(The following window properties allow the user to control the response to mouse activity in a)Tj -0 -1.2278 TD -0.0422 Tw -[(window. The value of these properties, if non-)]TJ -/TT10 1 Tf -10 0 0 10 267.1836 342.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 285.1865 342.49 Tm -0.0422 Tw -(, should be a function that will be called \(with the)Tj --23.0207 -1.3278 TD -0 Tw -(window as argument\) when the specified event occurs.)Tj -0 -2.7778 TD -0.1656 Tw -(These functions should be "self-contained", communicating with the outside world solely via their)Tj -0 -1.2222 TD -0.23 Tw -[(window argument, e.g., by setting window properties. In particular, these functions should not)]TJ -T* -0.0989 Tw -(expect to access variables bound on the stack, as the stack context is formally undefined at the time)Tj -T* -0.0056 Tw -[(these functions are called. Since the functions are invoked asynchronously, they perform any terminal)]TJ -T* -0 Tw -(input/output operations from their own window.)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(WINDOWENTRYFN)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ --5.1333 -1.8444 TD -0.2967 Tw -(Whenever a button goes down in the window and the process associated with the)Tj -0 -1.2278 TD -0.4278 Tw -(window is not the tty process, the )Tj -/TT10 1 Tf -10 0 0 10 289.409 212.89 Tm -0 Tw -(WINDOWENTRYFN)Tj -/TT8 1 Tf -9 0 0 9 367.4216 212.89 Tm -0.4278 Tw -[( is called. The default is)]TJ -/TT10 1 Tf -10 0 0 10 126 200.89 Tm -0 Tw -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9 0 0 9 222.0156 200.89 Tm -0.0522 Tw -[( which gives the process associated with the window the tty and)]TJ --10.6684 -1.3333 TD -0.0478 Tw -(calls the )Tj -/TT10 1 Tf -10 0 0 10 161.3922 188.89 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 239.4049 188.89 Tm -0.0478 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 247.0149 188.89 Tm -0 Tw -(WINDOWENTRYFN)Tj -/TT8 1 Tf -9 0 0 9 325.0276 188.89 Tm -0.0478 Tw -[( can be a list of functions and all will be)]TJ --22.1142 -1.3278 TD -0 Tw -(called. )Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(CURSORINFN)Tj -/TT8 1 Tf -6 0 TD -[( )-27483.3([Window Property])]TJ --3.3333 -1.85 TD -0.4867 Tw -(Whenever the mouse moves into the window, the )Tj -/TT10 1 Tf -10 0 0 10 361.2592 139.29 Tm -0 Tw -(CURSORINFN)Tj -/TT8 1 Tf -9 0 0 9 421.269 139.29 Tm -0.4867 Tw -[( is called. If)]TJ -/TT10 1 Tf -10 0 0 10 126 127.29 Tm -0 Tw -(CURSORINFN)Tj -/TT8 1 Tf -9 0 0 9 186.0097 127.29 Tm -( is a list of functions, all will be called.)Tj -/TT12 1 Tf --9.3344 -2.4389 TD -(CURSOROUTFN)Tj -/TT8 1 Tf -6.6 0 TD -[( )-26883.3([Window Property])]TJ --3.9333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 143.4444 88.69 Tm -(CURSOROUTFN)Tj -/TT8 1 Tf -9 0 0 9 209.4552 88.69 Tm -0.0144 Tw -[( is called when the cursor leaves the window. If )]TJ -/TT10 1 Tf -10 0 0 10 404.3325 88.69 Tm -0 Tw -(CURSOROUTFN)Tj -/TT8 1 Tf -9 0 0 9 470.3432 88.69 Tm -0.0144 Tw -[( is a)]TJ --38.2604 -1.3278 TD -0 Tw -(list of functions, all will be called.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(CURSORMOVEDFN)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -109 0 obj -<< -/Length 6372 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-28)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -(The )Tj -/TT10 1 Tf -10 0 0 10 194.0644 569.49 Tm -(CURSORMOVEDFN)Tj -/TT8 1 Tf -9 0 0 9 272.0771 569.49 Tm -0.3056 Tw -[( is called whenever the cursor has moved and is inside the)]TJ --10.8975 -1.3333 TD -0.0033 Tw -(window. )Tj -/TT10 1 Tf -10 0 0 10 214.0898 557.49 Tm -0 Tw -(CURSORMOVEDFN)Tj -/TT8 1 Tf -9 0 0 9 292.1024 557.49 Tm -0.0001 Tc -0.0032 Tw -( can be a list of functions and all will be called. This allows a)Tj --13.1225 -1.3278 TD -0 Tc -0.7511 Tw -(window function to implement "active" regions within itself by having its)Tj -/TT10 1 Tf -10 0 0 10 174 534.49 Tm -0 Tw -(CURSORMOVEDFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 534.49 Tm -0.1389 Tw -[( determine if the cursor is in a region of interest, and if so, perform)]TJ --8.6681 -1.3278 TD -0 Tw -(some action.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(BUTTONEVENTFN)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ --5.1333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 191.9044 484.89 Tm -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 269.9171 484.89 Tm -0.0656 Tw -[( is called whenever there is a change in the state \(up or down\) of)]TJ --10.6575 -1.3278 TD -0.47 Tw -[(the mouse buttons inside the window. Changes to the mouse state while the)]TJ -/TT10 1 Tf -10 0 0 10 174 461.89 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 461.89 Tm -0.2444 Tw -[( is running will not be interpreted as new button events, and the)]TJ -/TT10 1 Tf -10 0 0 10 174 449.89 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 449.89 Tm -( will not be re-invoked.)Tj -/TT12 1 Tf --11.3347 -2.4389 TD -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ --5.1333 -1.85 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 194.8444 411.29 Tm -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 272.8571 411.29 Tm -0.3922 Tw -[( is called in lieu of the standard window menu operation)]TJ -/TT10 1 Tf -10 0 0 10 174 399.29 Tm -0 Tw -(\(DOWINDOWCOM\))Tj -/TT8 1 Tf -9 0 0 9 252.0127 399.29 Tm -0.0078 Tw -[( when the )]TJ -/TT10 1 Tf -10 0 0 10 293.751 399.29 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 323.7559 399.29 Tm -0.0078 Tw -[( button is depressed in a window. More specifically,)]TJ --16.6395 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 189.1448 387.29 Tm -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 267.1575 387.29 Tm -0.0456 Tw -[( is called instead of the )]TJ -/TT10 1 Tf -10 0 0 10 362.4037 387.29 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 440.4164 387.29 Tm -0.0456 Tw -[( when )]TJ -/TT10 1 Tf -10 0 0 10 468.0298 387.29 Tm -0 Tw -(\(MOUSESTATE)Tj --29.403 -1.2 TD -0.068 Tw -(\(ONLY RIGHT\)\))Tj -/TT8 1 Tf -9 0 0 9 252.6927 375.29 Tm -0.0278 Tw -[(. If the )]TJ -/TT10 1 Tf -10 0 0 10 283.4568 375.29 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 313.4617 375.29 Tm -0.0278 Tw -[( button is to be treated like any other key in a window,)]TJ --15.4957 -1.3333 TD -0 Tw -(supply )Tj -/TT10 1 Tf -10 0 0 10 203.9355 363.29 Tm -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 281.9482 363.29 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 301.6841 363.29 Tm -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 379.6967 363.29 Tm -( with the same function.)Tj --22.8552 -2.1111 TD -0.1033 Tw -(When an application program defines its own )Tj -/TT10 1 Tf -10 0 0 10 365.2429 344.29 Tm -0 Tw -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 443.2556 344.29 Tm -0.1033 Tw -(, there is a convention)Tj --29.9173 -1.3333 TD -0.1211 Tw -(that the default )Tj -/TT10 1 Tf -10 0 0 10 240.4018 332.29 Tm -0 Tw -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 318.4145 332.29 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 324.0045 332.29 Tm -(DOWINDOWCOM)Tj -/TT8 1 Tf -9 0 0 9 390.0153 332.29 Tm -0.1211 Tw -[( , may be executed by pressing the)]TJ -/TT10 1 Tf -10 0 0 10 174 320.29 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 204.0049 320.29 Tm -0.3978 Tw -[( button when the cursor is in the header or border of a window. User)]TJ -/TT10 1 Tf -10 0 0 10 174 308.29 Tm -0 Tw -(RIGHTBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 308.29 Tm -0.0178 Tw -(s are encouraged to follow this convention, by calling )Tj -/TT10 1 Tf -10 0 0 10 467.9761 308.29 Tm -0 Tw -(DOWINDOWCOM)Tj -/TT8 1 Tf -9 0 0 9 174 296.34 Tm -(if the cursor is not in the interior region of the window.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(BACKGROUNDBUTTONEVENTFN)Tj -/TT8 1 Tf -13.8 0 TD -[( )-23967.8([Variable])]TJ -/TT12 1 Tf --13.8 -1.0667 TD -(BACKGROUNDCURSORINFN)Tj -/TT8 1 Tf -12 0 TD -[( )-25767.8([Variable])]TJ -/TT12 1 Tf --12 -1.0667 TD -(BACKGROUNDCURSOROUTFN)Tj -/TT8 1 Tf -12.6 0 TD -[( )-25167.8([Variable])]TJ -/TT12 1 Tf --12.6 -1.0667 TD -(BACKGROUNDCURSORMOVEDFN)Tj -/TT8 1 Tf -13.8 0 TD -[( )-23967.8([Variable])]TJ --11.1333 -1.8444 TD -0.0389 Tw -(These variables provide a way of taking action when there is cursor action and the cursor)Tj -0 -1.2222 TD -0.0422 Tw -[(in in the background. They are interpreted like the corresponding window properties. If)]TJ -T* -0.2011 Tw -(set to the name of a function, that function will be called, respectively, whenever the)Tj -T* -0.2655 Tw -(cursor is in the background and a button changes, when the cursor moves into the)Tj -T* -0.0156 Tw -(background from a window, when the cursor moved from the background into a window)Tj -T* -0 Tw -(and when the cursor moves from one place in the background to another.)Tj -/TT4 1 Tf -10 0 0 10 126 148.6 Tm -(Terminal I/O and Page Holding)Tj -/TT8 1 Tf -9 0 0 9 126 123.94 Tm -0.0211 Tw -[(Each process has its own terminal i/o stream \(accessed as the stream T, see Chapter 25\). The terminal)]TJ -T* -0.2456 Tw -(i/o stream for the current process can be changed to point to a window by using the function)Tj -/TT10 1 Tf -10 0 0 10 126 101.89 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 222.0156 101.89 Tm -(, so that output and echoing of type-in is directed to a window.)Tj -/TT10 1 Tf -10 0 0 10 150 78.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 78.66 Tm -(TTYDISPLAYSTREAM)Tj -/F1 1 Tf -10 0 0 10 242.4 78.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 245.27 78.66 Tm -(DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 315.4814 78.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.4824 78.66 Tm -[( )-18516.4([Function])]TJ --16.3869 -1.8833 TD -0.0144 Tw -(Selects the display stream or window )Tj -/TT14 1 Tf -16.8611 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0144 Tw -[( to be the terminal output channel,)]TJ --24.6624 -1.2944 TD -0.14 Tw -(and returns the previous terminal output display stream. )Tj -/TT10 1 Tf -10 0 0 10 416.8307 50.06 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 512.8463 50.06 Tm -0.14 Tw -[( puts)]TJ -ET -endstream -endobj -110 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -112 0 obj -<< -/Length 7229 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-29)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT14 1 Tf -9 0 0 9 126 569.49 Tm -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.1078 Tw -[( into scrolling mode and calls )]TJ -/TT10 1 Tf -10 0 0 10 321.0661 569.49 Tm -0 Tw -(PAGEHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 381.0758 569.49 Tm -0.1078 Tw -[( with the number of lines)]TJ --28.3418 -1.3278 TD -(that will fit into )Tj -/TT14 1 Tf -7.5678 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.1078 Tw -[( given its current Font and Clipping Region. The line)]TJ --15.3691 -1.2944 TD -0.1778 Tw -(length of )Tj -/TT10 1 Tf -10 0 0 10 166.9578 545.89 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 262.9734 545.89 Tm -0.1778 Tw -[( is computed \(like any other display stream\) from its)]TJ --15.2193 -1.3278 TD -0.1044 Tw -[(Left Margin, Right Margin, and Font. If one of these fields is changed, its line length is)]TJ -0 -1.2222 TD -0.2511 Tw -[(recalculated. If one of the fields used to compute the number of lines \(such as the)]TJ -0 -1.2278 TD -0.3444 Tw -(Clipping Region or Font\) changes, )Tj -/TT10 1 Tf -10 0 0 10 280.0595 511.89 Tm -0 Tw -(PAGEHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 340.0693 511.89 Tm -0.3444 Tw -[( is not automatically recomputed.)]TJ -/TT10 1 Tf -10 0 0 10 126 499.89 Tm -0 Tw -(\(TTYDISPLAYSTREAM \(TTYDISPLAYSTREAM\)\))Tj -/TT8 1 Tf -9 0 0 9 348.0361 499.89 Tm -( will cause it to be recomputed.)Tj --24.6707 -2.1111 TD -0.0922 Tw -(If the window system is active, the line buffer is saved in the old )Tj -/TT10 1 Tf -10 0 0 10 395.4208 480.89 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 413.4237 480.89 Tm -0.0922 Tw -[( window, and the)]TJ --31.936 -1.3278 TD -0.0433 Tw -(line buffer is set to the one saved in the window of the new display stream, or to a newly)Tj -0 -1.2222 TD -0.3089 Tw -[(created line buffer \(if it does not have one\). Caution: It is possible to move the)]TJ -/TT10 1 Tf -10 0 0 10 126 446.89 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 222.0156 446.89 Tm -0.2022 Tw -[( to a nonvisible display stream or to a window whose current)]TJ --10.6684 -1.3278 TD -0 Tw -(position is not in its clipping region.)Tj -/TT10 1 Tf -10 0 0 10 102 412.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 412.66 Tm -(PAGEHEIGHT)Tj -/F1 1 Tf -10 0 0 10 162 412.66 Tm -( )Tj -/F3 1 Tf -0.287 0 TD -(N)Tj -/TT10 1 Tf -0.815 0 TD -(\))Tj -/TT8 1 Tf -9 0 0 9 179.021 412.66 Tm -[( )-29012.1([Function])]TJ --5.8912 -2.0256 TD -(If )Tj -/F3 1 Tf -10 0 0 10 137.1093 394.43 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 145.2593 394.43 Tm -0.3144 Tw -[( is greater than 0, it is the number of lines of output that will be printed to)]TJ -/TT10 1 Tf -10 0 0 10 126 382.15 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 222.0156 382.15 Tm -0.1478 Tw -[( before the page is held. A page is held before the )]TJ -/F3 1 Tf -10 0 0 10 439.56 382.15 Tm -0 Tw -(N)Tj -/TT8 1 Tf -9 0 0 9 447.71 382.15 Tm -0.1478 Tw -(+1 line is)Tj --35.7456 -1.3333 TD -0.0467 Tw -(printed to )Tj -/TT10 1 Tf -10 0 0 10 168.755 370.15 Tm -0 Tw -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 264.7706 370.15 Tm -0.0467 Tw -[( without intervening input if there is no terminal input)]TJ --15.419 -1.3278 TD -0.0567 Tw -[(waiting to be read. The output is held with the screen video reversed until a character is)]TJ -0 -1.3644 TD -0 Tw -(typed. Output holding is disabled if )Tj -/F3 1 Tf -10 0 0 10 273.3882 345.92 Tm -(N)Tj -/TT8 1 Tf -9 0 0 9 281.5382 345.92 Tm -( is 0. )Tj -/TT10 1 Tf -10 0 0 10 303.7218 345.92 Tm -(PAGEHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 363.7315 345.92 Tm -( returns the previous setting.)Tj -/TT12 1 Tf --29.0813 -2.4389 TD -(PAGEFULLFN)Tj -/TT8 1 Tf -6 0 TD -[( )-27483.3([Window Property])]TJ --3.3333 -1.85 TD -0.0267 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 149.4941 307.32 Tm -0 Tw -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 209.5039 307.32 Tm -0.0267 Tw -[( window property is non-)]TJ -/TT10 1 Tf -10 0 0 10 312.6587 307.32 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 330.6617 307.32 Tm -0.0267 Tw -(, it will be called with the window as a)Tj --22.7402 -1.3278 TD -0.1133 Tw -(single argument when the window is full \(i.e., when enough has been printed since the)Tj -0 -1.2278 TD -0 Tw -(last )Tj -/TT10 1 Tf -10 0 0 10 142.1391 284.32 Tm -(TTY)Tj -/TT8 1 Tf -9 0 0 9 160.142 284.32 Tm -0.0022 Tw -( interaction so that the next character printed will cause information to be scrolled)Tj --3.7936 -1.3278 TD -0 Tw -(off the top of the window.\))Tj -0 -2.0056 TD -0.2178 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 152.9341 254.32 Tm -0 Tw -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 212.9439 254.32 Tm -0.2178 Tw -[( window property is )]TJ -/TT10 1 Tf -10 0 0 10 304.592 254.32 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 322.5949 254.32 Tm -0.2178 Tw -(, the system function )Tj -/TT10 1 Tf -10 0 0 10 415.3593 254.32 Tm -0 Tw -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 475.369 254.32 Tm -0.2178 Tw -[( is)]TJ --38.8188 -1.3333 TD -0.2167 Tw -(called. )Tj -/TT10 1 Tf -10 0 0 10 160.1915 242.32 Tm -0 Tw -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 220.2012 242.32 Tm -0.2167 Tw -[( simply returns if there are characters in the type-in buffer for)]TJ -/TT10 1 Tf -10 0 0 10 126 230.32 Tm -0 Tw -(WINDOW)Tj -/TT8 1 Tf -9 0 0 9 162.0058 230.32 Tm -0.2033 Tw -(, otherwise it inverts the window and waits for the user to type a character.)Tj -/TT10 1 Tf -10 0 0 10 126 218.32 Tm -0 Tw -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 186.0097 218.32 Tm -( is user advisable.)Tj --4.0011 -2.1111 TD -[(Note: )-401.2(The )]TJ -/TT10 1 Tf -10 0 0 10 200.5044 199.32 Tm -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 260.5142 199.32 Tm -0.3544 Tw -[( window property is only called on windows)]TJ --8.946 -1.3333 TD -0 Tw -(which are the )Tj -/TT10 1 Tf -10 0 0 10 236.1973 187.32 Tm -(TTYDISPLAYSTREAM)Tj -/TT8 1 Tf -9 0 0 9 332.2129 187.32 Tm -( of some process.)Tj -/TT4 1 Tf -10 0 0 10 78 160.03 Tm -(TTY Process and the Caret)Tj -/TT8 1 Tf -9 0 0 9 78 135.32 Tm -0.1711 Tw -(At any time, one process is designated as the )Tj -/TT10 1 Tf -10 0 0 10 272.0885 135.32 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 290.0914 135.32 Tm -0.1711 Tw -[( process, which is used for accepting keyboard)]TJ --23.5657 -1.3333 TD -0.1344 Tw -[(input. The )]TJ -/TT10 1 Tf -10 0 0 10 127.3243 123.32 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 145.3273 123.32 Tm -0.1344 Tw -[( process can be changed to a given process by calling )]TJ -/TT10 1 Tf -10 0 0 10 371.0074 123.32 Tm -0 Tw -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9 0 0 9 467.023 123.32 Tm -0.1344 Tw -[( \(see)]TJ --43.2248 -1.3278 TD -0.0244 Tw -[(Chapter 23\), or by clicking the mouse in a window associated with the process. The latter mechanism)]TJ -0 -1.2222 TD -0 Tw -(is implemented with the following window property:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(PROCESS)Tj -/TT8 1 Tf -4.2 0 TD -[( )-29283.3([Window Property])]TJ --1.5333 -1.85 TD -0.0089 Tw -(If the )Tj -/TT10 1 Tf -10 0 0 10 149.1741 62.72 Tm -0 Tw -(PROCESS)Tj -/TT8 1 Tf -9 0 0 9 191.181 62.72 Tm -0.0089 Tw -[( window property is non-)]TJ -/TT10 1 Tf -10 0 0 10 293.6958 62.72 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 311.6987 62.72 Tm -0.0089 Tw -(, it should be a )Tj -/TT10 1 Tf -10 0 0 10 372.4532 62.72 Tm -0 Tw -(PROCESS)Tj -/TT8 1 Tf -9 0 0 9 414.4601 62.72 Tm -0.0089 Tw -[( and will be made)]TJ --32.0511 -1.3333 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 148.5848 50.72 Tm -(TTY)Tj -/TT8 1 Tf -9 0 0 9 166.5878 50.72 Tm -0.8722 Tw -[( process by )]TJ -/TT10 1 Tf -10 0 0 10 236.6846 50.72 Tm -0 Tw -(GIVE.TTY.PROCESS)Tj -/TT8 1 Tf -9 0 0 9 332.7003 50.72 Tm -0.8722 Tw -[( \(see Chapter 23\), the default)]TJ -ET -endstream -endobj -113 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -115 0 obj -<< -/Length 6869 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-30)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -7.8 -4.251 TD -(WINDOWENTRYFN)Tj -/TT8 1 Tf -9 0 0 9 252.0127 569.49 Tm -0.0822 Tw -[( property \(see above\). This implements the mechanism by which the)]TJ --8.6681 -1.3278 TD -0 Tw -(keyboard is associated with different processes.)Tj --5.3333 -2.7778 TD -0.1233 Tw -(The window system uses a flashing caret \()Tj -ET -q -7 0 0 -6 301.94 538.54 cm -/Im3 Do -Q -BT -9 0 0 9 308.93 532.54 Tm -[(\) to indicate the position of the next window typeout.)]TJ --20.3256 -1.2278 TD -0.0278 Tw -[(There is only one caret visible at any one time. The caret in the current )]TJ -/TT10 1 Tf -10 0 0 10 413.3681 521.49 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 431.3711 521.49 Tm -0.0278 Tw -[( process is always visible;)]TJ --33.9301 -1.3278 TD -0.0556 Tw -[(if it is hidden by another window, its window is brought to the top. An exception to this rule is that)]TJ -0 -1.2222 TD -0.0533 Tw -(the flashing carets window is not brought to the top if the user is buttoning or has a shift key down.)Tj -T* -0.0389 Tw -(This prevents the destination window \(which has the tty and caret flashing\) from interfering with the)Tj -T* -0 Tw -(window one is trying to select text to copy from.)Tj -/TT10 1 Tf -10 0 0 10 150 454.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 454.26 Tm -(CARET)Tj -/F1 1 Tf -10 0 0 10 183 454.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 185.87 454.26 Tm -(NEWCARET)Tj -/TT10 1 Tf -10 0 0 10 229.077 454.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 235.078 454.26 Tm -[( )-28116.9([Function])]TJ --6.7864 -1.8833 TD -0.2756 Tw -(Sets the shape that blinks at the location of the next output to the current process.)Tj -/TT14 1 Tf -0 -1.2222 TD -0 Tw -(NEWCARET)Tj -/TT8 1 Tf -4.8008 0 TD -( should be one of the following:)Tj --4.383 -2.0722 TD -(a )Tj -/TT10 1 Tf -10 0 0 10 184.51 407.66 Tm -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 220.5158 407.66 Tm -[( object)-1332.9(If )]TJ -/TT14 1 Tf -5.1282 0 TD -(NEWCARET)Tj -/TT8 1 Tf -4.8008 0 TD -0.0433 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 328.7299 407.66 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 364.7357 407.66 Tm -0.0433 Tw -[( object \(see Chapter 30\), it is used to)]TJ --11.8595 -1.3278 TD -0 Tw -(give the new caret shape)Tj -/TT10 1 Tf -10 0 0 10 228 377.66 Tm -(OFF)Tj -/TT8 1 Tf -9 0 0 9 258 377.66 Tm -(Turns the caret off)Tj -/TT10 1 Tf -10 0 0 10 228 358.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 258 358.66 Tm -0.5244 Tw -(The caret is not changed. )Tj -/TT10 1 Tf -10 0 0 10 389.7365 358.66 Tm -0 Tw -(CARET)Tj -/TT8 1 Tf -9 0 0 9 419.7414 358.66 Tm -0.5244 Tw -[( returns a )]TJ -/TT10 1 Tf -10 0 0 10 473.9883 358.66 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 258 346.71 Tm -(representing the current caret)Tj -/TT10 1 Tf -10 0 0 10 240 328.66 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 258 328.66 Tm -0.9311 Tw -(Reset the caret to the value of )Tj -/TT10 1 Tf -10 0 0 10 435.7606 328.66 Tm -0 Tw -(DEFAULTCARET)Tj -/TT8 1 Tf -9 0 0 9 507.7723 328.66 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 258 316.66 Tm -(DEFAULTCARET)Tj -/TT8 1 Tf -9 0 0 9 330.0117 316.66 Tm -0.0422 Tw -[( can be set to change the initial caret for new)]TJ --8.0013 -1.3278 TD -0 Tw -(processes.)Tj --9.3333 -2 TD -0.0022 Tw -(The hotspot of )Tj -/TT14 1 Tf -6.6605 0 TD -0 Tw -(NEWCARET)Tj -/TT8 1 Tf -4.8008 0 TD -0.0022 Tw -( indicates which point in the new caret bitmap should be located)Tj --11.4613 -1.2889 TD -0.0944 Tw -[(at the current output position. The previous caret is returned. Note: the bitmap for the)]TJ -0 -1.2278 TD -0 Tw -(caret is not limited to the dimensions )Tj -/TT10 1 Tf -10 0 0 10 323.458 264.06 Tm -(CURSORWIDTH)Tj -/TT8 1 Tf -9 0 0 9 389.4688 264.06 Tm -( by )Tj -/TT10 1 Tf -10 0 0 10 403.9531 264.06 Tm -(CURSORHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 475.9648 264.06 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 240.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 240.83 Tm -(CARETRATE)Tj -/F1 1 Tf -10 0 0 10 204.6 240.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.47 240.83 Tm -(ONRATE)Tj -/F3 1 Tf -10 0 0 10 239.8753 240.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 242.6553 240.83 Tm -(OFFRATE)Tj -/TT10 1 Tf -10 0 0 10 280.4614 240.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 286.4624 240.83 Tm -[( )-22407.5([Function])]TJ --12.4958 -1.8833 TD -0.0456 Tw -[(Sets the rate at which the caret for the current process will flash. The caret will be visible)]TJ -0 -1.2278 TD -0 Tw -(for )Tj -/TT14 1 Tf -1.5695 0 TD -(ONRATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[( milliseconds, then not visible for )]TJ -/TT14 1 Tf -15.1708 0 TD -0 Tw -(OFFRATE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0456 Tw -[( milliseconds. If )]TJ -/TT14 1 Tf -7.9539 0 TD -0 Tw -(OFFRATE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0456 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 516.0183 212.83 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 174 200.83 Tm -0.0611 Tw -(then it is set to be the same as )Tj -/TT14 1 Tf -13.8313 0 TD -0 Tw -(ONRATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0611 Tw -[(. If )]TJ -/TT14 1 Tf -1.8533 0 TD -0 Tw -(ONRATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0611 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 392.0047 200.83 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 398.0056 200.83 Tm -0.0611 Tw -(, both the "on" and "off" times are)Tj --24.8895 -1.3333 TD -0.0356 Tw -(set to the value of the variable )Tj -/TT10 1 Tf -10 0 0 10 297.8894 188.83 Tm -0 Tw -(DEFAULTCARETRATE)Tj -/TT8 1 Tf -9 0 0 9 393.905 188.83 Tm -0.0356 Tw -[( \(initially 333\). The previous value)]TJ --24.4339 -1.3333 TD -0 Tw -(of )Tj -/TT10 1 Tf -10 0 0 10 184.1601 176.83 Tm -(CARETRATE)Tj -/TT8 1 Tf -9 0 0 9 238.1689 176.83 Tm -( is returned. If the caret is off, )Tj -/TT10 1 Tf -10 0 0 10 359.3349 176.83 Tm -(CARETRATE)Tj -/TT8 1 Tf -9 0 0 9 413.3437 176.83 Tm -( return )Tj -/TT10 1 Tf -10 0 0 10 442.8662 176.83 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 460.8691 176.83 Tm -(.)Tj -/TT4 1 Tf -10 0 0 10 126 149.54 Tm -(Miscellaneous Window Functions)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 127.6 Tm -(CLEARW)Tj -/F1 1 Tf -10 0 0 10 188.4 127.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.27 127.6 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 223.6753 127.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 229.6762 127.6 Tm -[( )-28717.1([Function])]TJ --6.1863 -1.8833 TD -(Fills )Tj -/TT14 1 Tf -2.1286 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0256 Tw -[( with its background texture, changes its coordinate system so that the origin)]TJ --5.7292 -1.2944 TD -0.0633 Tw -(is the lower left corner of the window, sets its )Tj -/TT10 1 Tf -10 0 0 10 362.6223 99 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 368.6233 99 Tm -0.0633 Tw -[( position to the left margin and sets its )]TJ -/TT10 1 Tf -10 0 0 10 528.0058 99 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 174 87.05 Tm -0.0911 Tw -(position to the base line of the uppermost line of text, ie. the top of the window less the)Tj -0 -1.2222 TD -0 Tw -(font ascent.)Tj -/TT10 1 Tf -10 0 0 10 150 53.77 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 53.77 Tm -(INVERTW)Tj -/F1 1 Tf -10 0 0 10 193.8 53.77 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 53.77 Tm -(WINDOW)Tj -/F3 1 Tf -10 0 0 10 229.0753 53.77 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 231.8553 53.77 Tm -(SHADE)Tj -/TT10 1 Tf -10 0 0 10 258.8596 53.77 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 264.8606 53.77 Tm -[( )-24807.7([Function])]TJ -ET -endstream -endobj -116 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im3 21 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -118 0 obj -<< -/Length 8778 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-31)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.1256 Tw -(Fills the window )Tj -/TT14 1 Tf -8.0647 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1256 Tw -[( with the texture )]TJ -/TT14 1 Tf -8.0471 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1256 Tw -[( in )]TJ -/TT10 1 Tf -10 0 0 10 345.0333 569.49 Tm -0 Tw -(INVERT)Tj -/TT8 1 Tf -9 0 0 9 381.0391 569.49 Tm -0.1256 Tw -[( mode. If )]TJ -/TT14 1 Tf -4.9407 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1256 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 465.7034 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 483.7064 569.49 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 126 557.49 Tm -(BLACKSHADE)Tj -/TT8 1 Tf -9 0 0 9 186.0097 557.49 Tm -0.3733 Tw -[( is used. )]TJ -/TT10 1 Tf -10 0 0 10 236.1836 557.49 Tm -0 Tw -(INVERTW)Tj -/TT8 1 Tf -9 0 0 9 278.1905 557.49 Tm -0.3733 Tw -[( returns )]TJ -/TT14 1 Tf -4.4508 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.3733 Tw -[( so that it can be used inside)]TJ -/TT10 1 Tf -10 0 0 10 126 545.49 Tm -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -9 0 0 9 180.0088 545.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 522.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 522.26 Tm -(FLASHWINDOW)Tj -/F1 1 Tf -10 0 0 10 167.4 522.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 522.26 Tm -(WIN? N FLASHINTERVAL SHADE)Tj -/TT10 1 Tf -10 0 0 10 310.6928 522.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.6938 522.26 Tm -[( )-13715.1([Function])]TJ --21.1882 -1.8833 TD -0.1033 Tw -(Flashes the window )Tj -/TT14 1 Tf -9.4008 0 TD -0 Tw -(WIN?)Tj -/TT8 1 Tf -2.4004 0 TD -0.1033 Tw -[( by "inverting" it twice. N is the number of times to flash the)]TJ --11.8012 -1.2889 TD -0.1922 Tw -(window \(default is 1\). )Tj -/TT14 1 Tf -11.1828 0 TD -0 Tw -(FLASHINTERVAL)Tj -/TT8 1 Tf -7.8013 0 TD -0.1922 Tw -[( is the length of time in milliseconds to wait)]TJ --18.9841 -1.2889 TD -0.2356 Tw -(between flashes \(default is 200\). )Tj -/TT14 1 Tf -15.9524 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.2356 Tw -[( is the shade that will be used to invert the)]TJ --18.9529 -1.2944 TD -0 Tw -(window \(default is )Tj -/TT10 1 Tf -10 0 0 10 203.748 470.46 Tm -(BLACKSHADE)Tj -/TT8 1 Tf -9 0 0 9 263.7578 470.46 Tm -(\).)Tj --15.3064 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.9833 0 TD -(WIN?)Tj -/TT8 1 Tf -2.4004 0 TD -0.0633 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 168.5264 451.46 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 186.5293 451.46 Tm -0.0633 Tw -[(, the whole screen is flashed. In this case, the )]TJ -/TT14 1 Tf -20.829 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -[( argument is ignored)]TJ --30.555 -1.3278 TD -0 Tw -(\(can only invert the screen\).)Tj -/TT10 1 Tf -10 0 0 10 102 417.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 417.23 Tm -(WHICHW)Tj -/F1 1 Tf -10 0 0 10 140.4 417.23 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 143.27 417.23 Tm -(X Y)Tj -/TT10 1 Tf -10 0 0 10 159.4726 417.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 165.4736 417.23 Tm -[( )-30517.4([Function])]TJ --4.386 -1.8833 TD -0.2344 Tw -(Returns the window which contains the position in screen coordinates of )Tj -/TT14 1 Tf -35.011 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2344 Tw -[( if )]TJ -/TT14 1 Tf -1.5929 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.2344 Tw -[( is a)]TJ -/TT10 1 Tf --37.8041 -1.2944 TD -0 Tw -(POSITION)Tj -10 0 0 10 169.207 388.63 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 175.568 388.63 Tm -0.0156 Tw -(, the position \()Tj -/TT14 1 Tf -6.3738 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.0156 Tw -(\) if )Tj -/TT14 1 Tf -1.4881 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( and )]TJ -/TT14 1 Tf -2.224 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( are numbers, or the position of the cursor if )]TJ -/TT14 1 Tf -19.8304 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0156 Tw -[( is)]TJ -/TT10 1 Tf -10 0 0 10 126 376.63 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 144.0029 376.63 Tm -0.0289 Tw -[(. Returns NIL if the coordinates are not in any window. If they are in more than one)]TJ --2.0003 -1.3278 TD -0 Tw -(window, it returns the uppermost.)Tj -0 -2.0056 TD -(Example: )Tj -/TT10 1 Tf -10 0 0 10 165.4277 346.63 Tm -( \(WHICHW\))Tj -/TT8 1 Tf -9 0 0 9 219.4365 346.63 Tm -( returns the window that the cursor is in.)Tj -/TT10 1 Tf -10 0 0 10 102 323.4 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 323.4 Tm -(DECODE/WINDOW/OR/DISPLAYSTREAM)Tj -/F1 1 Tf -10 0 0 10 270 323.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 272.87 323.4 Tm -(DSORW WINDOWVAR TITLE BORDER)Tj -/TT10 1 Tf -10 0 0 10 424.0946 323.4 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 430.0956 323.4 Tm -[( )-1114.9([Function])]TJ --33.7884 -1.8833 TD -0.1667 Tw -(Returns a display stream as determined by the )Tj -/TT14 1 Tf -22.1473 0 TD -0 Tw -(DSORW)Tj -/TT8 1 Tf -3.0005 0 TD -0.1667 Tw -[( and )]TJ -/TT14 1 Tf -2.5262 0 TD -0 Tw -(WINDOWVAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1667 Tw -[( arguments. If)]TJ -/TT14 1 Tf --33.0749 -1.2889 TD -0 Tw -(DSORW)Tj -/TT8 1 Tf -3.0005 0 TD -0.1578 Tw -[( is a display stream, it is returned. If )]TJ -/TT14 1 Tf -17.9455 0 TD -0 Tw -(DSORW)Tj -/TT8 1 Tf -3.0005 0 TD -0.1578 Tw -[( is a window, its display stream is)]TJ --23.9464 -1.2889 TD -0.0378 Tw -[(returned. If )]TJ -/TT14 1 Tf -5.6534 0 TD -0 Tw -(DSORW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -[( is NIL, the litatom )]TJ -/TT14 1 Tf -8.7328 0 TD -0 Tw -(WINDOWVAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0378 Tw -[( is evaluated. If its value is a window,)]TJ --22.7876 -1.2889 TD -0.0622 Tw -[(its display stream is returned. If its value is not a window, )]TJ -/TT14 1 Tf -26.9813 0 TD -0 Tw -(WINDOWVAR)Tj -/TT8 1 Tf -5.4009 0 TD -0.0622 Tw -[( is set to a newly)]TJ --32.3821 -1.2889 TD -0.1322 Tw -[(created window \(prompting user for region\) whose display stream is then returned. If)]TJ -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(DSORW)Tj -/TT8 1 Tf -3.0005 0 TD -0.0433 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 164.718 249 Tm -0 Tw -(NEW)Tj -/TT8 1 Tf -9 0 0 9 182.7209 249 Tm -0.0433 Tw -[(, the display stream of a newly created window is returned. If a )]TJ -/TT14 1 Tf -29.0823 0 TD -0 Tw -(window)Tj -/TT8 1 Tf -3.6006 0 TD -0.0433 Tw -[( is)]TJ --38.9852 -1.3278 TD -0.0956 Tw -(involved in the decoding, it is opened and if )Tj -/TT14 1 Tf -20.6163 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0956 Tw -[( or )]TJ -/TT14 1 Tf -1.632 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0956 Tw -[( are given, the )]TJ -/TT14 1 Tf -6.8666 0 TD -0 Tw -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0956 Tw -[( or)]TJ -/TT14 1 Tf --38.7165 -1.2944 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1111 Tw -[( property of the window are reset. The )]TJ -/TT14 1 Tf -18.5142 0 TD -0.2656 Tw -(DSORW = )Tj -/TT10 1 Tf -10 0 0 10 373.0197 225.4 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 391.0227 225.4 Tm -0.1111 Tw -[( case is most useful for)]TJ --29.447 -1.3278 TD -0.1856 Tw -(programs that want to display their output in a window, but want to reuse the same)Tj -0 -1.2278 TD -0.1067 Tw -[(window each time they are called. The non-)]TJ -/TT10 1 Tf -10 0 0 10 309.9139 202.4 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 327.9168 202.4 Tm -0.1067 Tw -[( cases are good for decoding a display)]TJ --22.4352 -1.3278 TD -0 Tw -(stream argument passed to a function.)Tj -/TT10 1 Tf -10 0 0 10 102 168.17 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 168.17 Tm -(WIDTHIFWINDOW)Tj -/F1 1 Tf -10 0 0 10 178.2 168.17 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 181.07 168.17 Tm -(INTERIORWIDTH BORDER)Tj -/TT10 1 Tf -10 0 0 10 289.0876 168.17 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 295.0885 168.17 Tm -[( )-16115.7([Function])]TJ --18.7876 -1.8889 TD -0.2411 Tw -(Returns the width of the window necessary to have )Tj -/TT10 1 Tf -10 0 0 10 352.5564 151.17 Tm -0 Tw -(INTERIORWIDTH)Tj -/TT8 1 Tf -9 0 0 9 430.569 151.17 Tm -0.2411 Tw -[( points in its)]TJ --33.841 -1.3278 TD -0.1022 Tw -(interior if the width of the border is )Tj -/TT14 1 Tf -16.7382 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1022 Tw -[(. If )]TJ -/TT14 1 Tf -1.9766 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1022 Tw -[( is )]TJ -/TT10 1 Tf -1.4193 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1022 Tw -(, the default border size)Tj --29.1355 -1.2889 TD -0 Tw -(WBorder is used.)Tj -/TT10 1 Tf -10 0 0 10 102 105.34 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 105.34 Tm -(HEIGHTIFWINDOW)Tj -/F1 1 Tf -10 0 0 10 183.6 105.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 186.47 105.34 Tm -(INTERIORHEIGHT TITLEFLG BORDER)Tj -/TT10 1 Tf -10 0 0 10 348.4963 105.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 354.4973 105.34 Tm -[( )-9514.7([Function])]TJ --25.3886 -1.8833 TD -0.2489 Tw -(Returns the height of the window necessary to have )Tj -/TT14 1 Tf -25.4153 0 TD -0 Tw -(INTERIORHEIGHT)Tj -/TT8 1 Tf -8.4014 0 TD -0.2489 Tw -[( points in its)]TJ --33.8167 -1.2889 TD -0.0456 Tw -(interior with a border of )Tj -/TT14 1 Tf -11.1741 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[( and, if )]TJ -/TT14 1 Tf -3.4536 0 TD -0 Tw -(TITLEFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0456 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3489 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0456 Tw -[(, a title. If )]TJ -/TT14 1 Tf -4.8611 0 TD -0 Tw -(BORDER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[( is )]TJ -/TT10 1 Tf -1.306 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7461 -1.2889 TD -(the default border size WBorder is used.)Tj -ET -endstream -endobj -119 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -122 0 obj -<< -/Length 5831 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-32)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 126 569.54 Tm -(WIDTHIFWINDOW)Tj -/TT8 1 Tf -7.8013 0 TD -0.0722 Tw -[( and )]TJ -/TT10 1 Tf -2.3373 0 TD -0 Tw -(HEIGHTIFWINDOW)Tj -/TT8 1 Tf -8.4014 0 TD -0.0722 Tw -[( are useful for calculating the width and height for a call to)]TJ -/TT10 1 Tf --18.54 -1.2889 TD -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf -8.4014 0 TD -( for the purpose of positioning a prospective window.)Tj -/TT10 1 Tf -10 0 0 10 150 535.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 535.06 Tm -(MINIMUMWINDOWSIZE)Tj -/F1 1 Tf -10 0 0 10 247.8 535.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 250.67 535.06 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 283.0753 535.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 289.0762 535.06 Tm -[( )-22117.1([Function])]TJ --12.7862 -1.8833 TD -0.0044 Tw -(Returns a dotted pair, the )Tj -/TT10 1 Tf -11.5725 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0001 Tc -0.0043 Tw -( of which is the minimum width )Tj -/TT14 1 Tf -14.5546 0 TD -0 Tc -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0003 Tc -0.0041 Tw -( needs and the )Tj -/TT10 1 Tf -6.6726 0 TD -0 Tc -0 Tw -(CDR)Tj -/TT8 1 Tf --38.2005 -1.2889 TD -(or which is the minimum height )Tj -/TT14 1 Tf -14.5078 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( needs.)Tj --18.1084 -2.0667 TD -0.2489 Tw -(The minimum size is determined by the value of the window property )Tj -/TT10 1 Tf -34.4183 0 TD -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2489 Tw -[( of)]TJ -/TT14 1 Tf --38.619 -1.2889 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[(. If the value of the )]TJ -/TT10 1 Tf -9.4846 0 TD -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -4.2007 0 TD -0.1033 Tw -[( window property is )]TJ -/TT10 1 Tf -9.7253 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1033 Tw -(, the width is 26 and the)Tj --28.8115 -1.2889 TD -0.0733 Tw -(height is the height )Tj -/TT14 1 Tf -9.0282 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0733 Tw -[( needs to have its title, border and one line of text visible. If)]TJ -/TT10 1 Tf --12.6288 -1.2889 TD -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0456 Tw -[( is a dotted pair, it is returned. If it is a litatom, it should be a function which is)]TJ --4.2007 -1.2889 TD -0 Tw -(called with )Tj -/TT14 1 Tf -5.1489 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( as its first argument, which should return a dotted pair. )Tj -/TT4 1 Tf -10 0 0 10 126 414.57 Tm -(Miscellaneous Window Properties)Tj -/TT12 1 Tf -9 0 0 9 150 393.91 Tm -(TITLE)Tj -/TT8 1 Tf -3 0 TD -[( )-30483.3([Window Property])]TJ --0.3333 -1.8444 TD -0.0444 Tw -[(Accesses the title of the window. If a title is added to a window whose title is )]TJ -/TT10 1 Tf -35.2819 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0444 Tw -[( or the)]TJ --37.0822 -1.2889 TD -0.0478 Tw -(title is removed \(set to )Tj -/TT10 1 Tf -10.3087 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0478 Tw -(\) from a window with a title, the windows exterior \(its region)Tj --12.109 -1.2889 TD -0.1733 Tw -(on the screen\) is enlarged or reduced to accomodate the change without changing the)Tj -0 -1.2222 TD -0.3033 Tw -[(windows interior. For example, )]TJ -/TT10 1 Tf -16.2174 0 TD -0.7278 Tw -(\(WINDOWPROP WINDOW TITLE "Results"\))Tj -/TT8 1 Tf --16.2174 -1.2889 TD -0.0656 Tw -(changes the title of )Tj -/TT10 1 Tf -8.8086 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0656 Tw -[( to be ")]TJ -/TT10 1 Tf -3.2221 0 TD -0 Tw -(Results)Tj -/TT8 1 Tf -4.2007 0 TD -(". )Tj -/TT10 1 Tf -0.9366 0 TD -0.1578 Tw -[( \(WINDOWPROP WINDOW TITLE NIL\))]TJ -/TT8 1 Tf --20.7686 -1.2889 TD -0 Tw -(removes the title of )Tj -/TT10 1 Tf -8.75 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT12 1 Tf --15.0173 -2.4 TD -(BORDER)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.8444 TD -0.05 Tw -[(Accesses the width of the border of the window. The border will have at most 2 point of)]TJ -0 -1.2222 TD -0.0244 Tw -[(white \(but never more than half\) and the rest black. The default border is the value of the)]TJ -T* -0 Tw -(global variable WBorder \(initially 4\). )Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WINDOWTITLESHADE)Tj -/TT8 1 Tf -9.6 0 TD -[( )-23883.3([Window Property])]TJ --6.9333 -1.8444 TD -0.0411 Tw -[(Accesses the window title shade of the window. If non-)]TJ -/TT10 1 Tf -25.1269 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0411 Tw -(, it should be a texture which)Tj --26.9272 -1.2889 TD -0.0478 Tw -[(is used as the "backgound texture" for the title bar on the top of the window. If it is )]TJ -/TT10 1 Tf -37.9429 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(,)Tj --39.7432 -1.2889 TD -0.2333 Tw -(the value of the global variable )Tj -/TT10 1 Tf -15.3028 0 TD -0 Tw -(WINDOWTITLESHADE)Tj -/TT8 1 Tf -9.6016 0 TD -0.2333 Tw -[( \(initially )]TJ -/TT10 1 Tf -4.7191 0 TD -0 Tw -(BLACKSHADE)Tj -/TT8 1 Tf -6.001 0 TD -0.2333 Tw -(\) is used.)Tj --35.6245 -1.2889 TD -0 Tw -(Note that black is always used as the background of the title printed in the title bar, so that)Tj -0 -1.2222 TD -(the letters can be read. The remaining space is painted with the "title shade".)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(HARDCOPYFN)Tj -/TT8 1 Tf -6 0 TD -[( )-27483.3([Window Property])]TJ --3.3333 -1.8444 TD -0.3256 Tw -(If non-)Tj -/TT10 1 Tf -3.2884 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.3256 Tw -(, it should be a function that is called by the window menu command)Tj --5.0887 -1.2889 TD -0.1133 Tw -[(Hardcopy to print the contents of a window. The )]TJ -/TT10 1 Tf -23.2823 0 TD -0 Tw -(HARDCOPYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.1133 Tw -[( property is called with)]TJ --29.2832 -1.2889 TD -0.1411 Tw -[(two arguments, the window and an image stream to print to. If the window does not)]TJ -0 -1.2222 TD -0.0244 Tw -(have a )Tj -/TT10 1 Tf -3.1749 0 TD -0 Tw -(HARDCOPYFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0244 Tw -(, the bitmap image of the window \(including the border and title\) are)Tj --9.1758 -1.2889 TD -0 Tw -(printed on the file or printer.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(DSP)Tj -/TT8 1 Tf -1.8 0 TD -[( )-31683.3([Window Property])]TJ -ET -endstream -endobj -123 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -125 0 obj -<< -/Length 5290 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-33)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0078 Tw -[(Value is the display stream of the window. All system functions will operate on either the)]TJ -0 -1.2222 TD -0.4211 Tw -[(window or its display stream. This window property cannot be changed using)]TJ -/TT10 1 Tf -T* -0 Tw -(WINDOWPROP)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT12 1 Tf --8.6676 -2.5422 TD -(HEIGHT)Tj -/F2 1 Tf -10 0 0 10 134.4 524.66 Tm -[( )-25846([Window Property])]TJ -/TT12 1 Tf -9 0 0 9 102 515.06 Tm -(WIDTH)Tj -/TT8 1 Tf -3 0 TD -[( )-30483.3([Window Property])]TJ --0.3333 -1.8444 TD -0.0133 Tw -(Value is the height and width of the interior of the window \(the usable space not counting)Tj -0 -1.2222 TD -0 Tw -(the border and title\). These window properties cannot be changed using )Tj -/TT10 1 Tf -32.3892 0 TD -(WINDOWPROP)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT12 1 Tf --41.0568 -2.4 TD -(REGION)Tj -/TT8 1 Tf -3.6 0 TD -[( )-29883.3([Window Property])]TJ --0.9333 -1.8444 TD -0.2389 Tw -(Value is a region \(in screen coordinates\) indicating where the window \(counting the)Tj -0 -1.2222 TD -0.0211 Tw -[(border and title\) is located on the screen. This window property cannot be changed using)]TJ -/TT10 1 Tf -T* -0 Tw -(WINDOWPROP)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 400.32 Tm -(Example: A Scrollable Window)Tj -/TT8 1 Tf -9 0 0 9 78 375.66 Tm -(The following is a simple example showing how one might create a scrollable window. )Tj -/TT10 1 Tf -0 -2.7778 TD -(CREATE)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj -/TT10 1 Tf -0.25 0 TD -(PPWINDOW)Tj -/TT8 1 Tf -4.8008 0 TD -0.0489 Tw -[( creates a window that displays the pretty printed expression )]TJ -/TT10 1 Tf -27.7584 0 TD -0 Tw -(EXPR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0489 Tw -[(. The window)]TJ --38.8102 -1.2889 TD -0 Tw -(properties )Tj -/TT10 1 Tf -5.0493 0 TD -(PPEXPR)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7622 0 TD -(PPORIGX)Tj -/TT8 1 Tf -4.2007 0 TD -0.2622 Tw -(, and )Tj -/TT10 1 Tf -2.9673 0 TD -0 Tw -(PPORIGY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2622 Tw -[( are used for saving this expression, and the initial)]TJ --20.7808 -1.2889 TD -[(window position. Using this information, )]TJ -/TT10 1 Tf -20.4068 0 TD -0 Tw -(REPAINT.PPWINDOW)Tj -/TT8 1 Tf -9.6016 0 TD -0.2622 Tw -[( simply reinitializes the window)]TJ --30.0084 -1.2889 TD -0.0678 Tw -[(position, and prettyprints the expression again. Note that the whole expression is reformatted every)]TJ -0 -1.2222 TD -0.0011 Tw -(time, even if only a small part actually lies within the window. If this window was going to be used to)Tj -T* -0.1256 Tw -(display very large structures, it would be desirable to implement a more sophisticated )Tj -/TT10 1 Tf -39.933 0 TD -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf --39.933 -1.2889 TD -0.0644 Tw -[(that only redisplays that part of the expression within the window. However, this scheme would be)]TJ -0 -1.2222 TD -0 Tw -(satisfactory if most of the items to be displayed are small.)Tj -/TT10 1 Tf -0 -2.7778 TD -(RESHAPE.PPWINDOW)Tj -/TT8 1 Tf -9.6016 0 TD -0.72 Tw -[( resets the window \(and stores the initial window position\), calls)]TJ -/TT10 1 Tf --9.6016 -1.2889 TD -0 Tw -(REPAINT.PPWINDOW)Tj -/TT8 1 Tf -9.6016 0 TD -0.0844 Tw -[( to display the windows expression, and then sets the )]TJ -/TT10 1 Tf -24.966 0 TD -0 Tw -(EXTENT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0844 Tw -[( property of the)]TJ --38.1682 -1.2889 TD -0 Tw -(window so that )Tj -/TT10 1 Tf -7.1519 0 TD -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -10.2017 0 TD -( will be able to handle scrolling and "thumbing" correctly.)Tj -/TT10 1 Tf --8.0202 -1.7778 TD -(\(DEFINEQ)Tj -0 -1.5556 TD -(\(CREATE.PPWINDOW)Tj -10 0 0 10 162 182.12 Tm -( [LAMBDA \(EXPR\) )Tj -/TT4 1 Tf -10.2017 0 TD -( )Tj -/F3 1 Tf -5.001 0 TD -(\(* rrb " 4-OCT-82 12:06"\))Tj -/F1 1 Tf --15.2026 -1.123 TD -( )Tj -/F3 1 Tf -10.045 0 TD -(\(* creates a window that displays)Tj -/F1 1 Tf --10.045 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(a pretty printed expression.\))Tj -/TT4 1 Tf --1.019 -1.006 TD -( )Tj -/TT10 1 Tf -9 0 0 9 162 142.77 Tm -(\(PROG \(WINDOW\))Tj -/TT4 1 Tf -10 0 0 10 162 131.83 Tm -( )Tj -/F1 1 Tf -9.1685 0 TD -( )Tj -/F3 1 Tf -0.574 0 TD -(\(* ask the user for a piece of the)Tj -/F1 1 Tf --9.7425 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(screen and make it into a window.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(SETQ WINDOW \(CREATEW NIL "PP window"\)\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/F1 1 Tf -8.0571 0 TD -( )Tj -/F3 1 Tf -1.722 0 TD -(\(* put the expression on the)Tj -/F1 1 Tf --9.7791 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(property list of the window so that)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(the repaint and reshape functions)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(can access it.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(WINDOWPROP WINDOW \(QUOTE PPEXPR\) EXPR\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/F3 1 Tf -9.7241 0 TD -(\(* set the repaint and reshape)Tj -/F1 1 Tf --9.7241 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(functions.\))Tj -ET -endstream -endobj -126 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -128 0 obj -<< -/Length 4230 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-34)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -11.4 -4.251 TD -( \(WINDOWPROP WINDOW \(QUOTE REPAINTFN\))Tj -0 -1 TD -( \(FUNCTION REPAINT.PPWINDOW\)\))Tj -T* -( \(WINDOWPROP WINDOW \(QUOTE RESHAPEFN\))Tj -T* -( \(FUNCTION RESHAPE.PPWINDOW\)\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/F3 1 Tf -9.7241 0 TD -(\(* make the scroll function)Tj -/F1 1 Tf --9.7241 -1 TD -( )Tj -/TT14 1 Tf -9 0 0 9 316.19 518.2 Tm -(SCROLLBYREPAINTFN)Tj -/F3 1 Tf -10 0 0 10 408.0049 518.2 Tm -(, a system)Tj -/F1 1 Tf --19.8005 -1.088 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(function that uses the repaint)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(function to do scrolling.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(WINDOWPROP WINDOW \(QUOTE SCROLLFN\))Tj -0 -1 TD -( \(FUNCTION SCROLLBYREPAINTFN\)\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/F1 1 Tf -3.8896 0 TD -( )Tj -/F3 1 Tf -6.027 0 TD -(\(* call the reshape function to)Tj -/F1 1 Tf --9.9166 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(initially print the expression and)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(calculate its extent.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(RESHAPE.PPWINDOW WINDOW\))Tj -0 -1 TD -( \(RETURN WINDOW]\))Tj -0 -3 TD -(\(REPAINT.PPWINDOW)Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/TT10 1 Tf -0.5557 0 TD -([LAMBDA \(WINDOW REGION\))Tj -/TT4 1 Tf -13.8022 0 TD -( )Tj -/F1 1 Tf -2.5005 0 TD -( )Tj -/F3 1 Tf -0.287 0 TD -(\(* rrb " 4-OCT-82 11:52"\))Tj -/F1 1 Tf --17.1454 -2.123 TD -( )Tj -/F3 1 Tf -3.157 0 TD -(\(* the repainting function for a window with a)Tj -/F1 1 Tf --3.157 -1 TD -( )Tj -/F3 1 Tf -3.731 0 TD -(pretty printed expression. This repainting)Tj -/F1 1 Tf --3.731 -1 TD -( )Tj -/F3 1 Tf -3.731 0 TD -(function ignores the region to be repainted)Tj -/F1 1 Tf --3.731 -1 TD -( )Tj -/F3 1 Tf -3.731 0 TD -(and repaints the entire window.\))Tj -/F1 1 Tf --3.731 -2 TD -( )Tj -/F3 1 Tf -10.045 0 TD -(\(* set the window position to the)Tj -/F1 1 Tf --10.045 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(beginning of the pretty printing)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(of the expression.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(MOVETO \(WINDOWPROP WINDOW \(QUOTE PPORIGX\)\))Tj -0 -1 TD -( \(WINDOWPROP WINDOW \(QUOTE PPORIGY\)\))Tj -T* -( WINDOW\))Tj -T* -( \(PRINTDEF \(WINDOWPROP WINDOW \(QUOTE PPEXPR\)\))Tj -T* -( 0 NIL NIL NIL WINDOW]\))Tj -0 -3 TD -(\(RESHAPE.PPWINDOW)Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -( [LAMBDA \(WINDOW\))Tj -/TT4 1 Tf -10.2017 0 TD -( )Tj -/F1 1 Tf -4.4453 0 TD -( )Tj -/F3 1 Tf -0.287 0 TD -(\(* rrb " 4-OCT-82 12:01"\))Tj -/F1 1 Tf --15.2118 -1.123 TD -( )Tj -/F3 1 Tf -10.045 0 TD -(\(* the reshape function for a)Tj -/F1 1 Tf --10.045 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(window with a pretty printed)Tj -/F1 1 Tf --10.619 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(expression.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(PROG \(BTM\))Tj -/F1 1 Tf -0 -2.123 TD -( )Tj -/F3 1 Tf -3.157 0 TD -(\(* set the position of the window so that the)Tj -/F1 1 Tf --3.157 -1 TD -( )Tj -/F3 1 Tf -3.731 0 TD -(first character appears in the upper left corner)Tj -/F1 1 Tf --3.731 -1 TD -( )Tj -/F3 1 Tf -3.731 0 TD -(and save the X and Y for the repaint function.\))Tj -/TT10 1 Tf --3.731 -1.877 TD -( \(DSPRESET WINDOW\))Tj -0 -1 TD -( \(WINDOWPROP WINDOW \(QUOTE PPORIGX\))Tj -T* -( \(DSPXPOSITION NIL WINDOW\)\))Tj -T* -( \(WINDOWPROP WINDOW \(QUOTE PPORIGY\))Tj -T* -( \(DSPYPOSITION NIL WINDOW\)\))Tj -/F1 1 Tf -0 -1.123 TD -( )Tj -/F3 1 Tf -10.045 0 TD -(\(* call the repaint function to)Tj -/F1 1 Tf --10.045 -1 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(pretty print the expression in)Tj -ET -endstream -endobj -129 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT10 9 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -131 0 obj -<< -/Length 4835 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-35)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/F1 1 Tf --24.6 -4.374 TD -( )Tj -/F3 1 Tf -10.619 0 TD -(the newly cleared window.\))Tj -/TT10 1 Tf --10.619 -0.877 TD -( \(REPAINT.PPWINDOW WINDOW\))Tj -/F1 1 Tf -0 -2.123 TD -( )Tj -/F3 1 Tf -2.87 0 TD -(\(* save the region actually covered by the pretty)Tj -/F1 1 Tf --2.87 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(printed expression so that the scrolling routines)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(will know where to stop. The pretty printing of)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(the expression does a carriage return after the)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(last piece of the expression printed so that the)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(current position is the base line of the next line)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(of text. Hence the last visible piece of the)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(expression \(BTM\) is the ending position plus the)Tj -/F1 1 Tf --3.444 -1 TD -( )Tj -/F3 1 Tf -3.444 0 TD -(height of the font above the base line \(its ASCENT\).\))Tj -/TT10 1 Tf --3.444 -1.877 TD -( \(WINDOWPROP WINDOW \(QUOTE EXTENT\))Tj -0 -1 TD -( create REGION)Tj -0 -1.123 TD -( LEFT )Tj -/TT15 1 Tf -9.0015 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 0)Tj --9.9883 -1.123 TD -( BOTTOM )Tj -/TT15 1 Tf -10.2017 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( [SETQ BTM \(IPLUS)Tj --11.1885 -1 TD -( \(DSPYPOSITION NIL WINDOW\))Tj -T* -( \(FONTPROP WINDOW \(QUOTE ASCENT])Tj -0 -1.123 TD -( WIDTH )Tj -/TT15 1 Tf -9.6016 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(WINDOWPROP WINDOW \(QUOTE WIDTH\)\))Tj --10.5884 -1.123 TD -( HEIGHT )Tj -/TT15 1 Tf -10.2017 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -(\(IDIFFERENCE)Tj --11.1885 -1 TD -( \(WINDOWPROP WINDOW \(QUOTE HEIGHT\)\))Tj -T* -( BTM]\))Tj -T* -(\))Tj -/TT4 1 Tf --10.8 -5.129 TD -(Menus)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 280.57 m -534.01 280.57 l -S -BT -/TT8 1 Tf -9 0 0 9 78 259.62 Tm -0.1067 Tw -[(A menu is basically a means of selecting from a list of items. The system provides common layout)]TJ -0 -1.2222 TD -0.1222 Tw -(and interactive user selection mechanisms, then calls a user-supplied function when a selection has)Tj -T* -0.2022 Tw -[(been confirmed. The two major constituents of a menu are a list of items and a "when selected)]TJ -T* -0.0311 Tw -[(function." The label that appears for each item is the item itself for non-lists, or its )]TJ -/TT10 1 Tf -36.9171 0 TD -0 Tw -(CAR)Tj -/TT8 1 Tf -1.8003 0 TD -0.0311 Tw -[( if the item is a)]TJ --38.7174 -1.2889 TD -0.0211 Tw -[(list. In addition, there are a multitude of different formatting parameters for specifying font, size, and)]TJ -0 -1.2222 TD -0.0567 Tw -[(layout. When a menu is created, its unspecified fields are filled with defaults and its screen image is)]TJ -T* -0 Tw -(computed and saved.)Tj -0 -2.7778 TD -0.1856 Tw -[(Menus can be either pop up or fixed. If fixed menus are used, the menu must be included in a)]TJ -0 -1.2222 TD -0 Tw -(window.)Tj -/TT10 1 Tf -10 0 0 10 102 134.74 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 134.74 Tm -(MENU)Tj -/F1 1 Tf -10 0 0 10 129.6 134.74 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 132.47 134.74 Tm -(MENU POSITION RELEASECONTROLFLG )Tj -/TT10 1 Tf -10 0 0 10 310.699 134.74 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 316.7 134.74 Tm -[( )-13714.5([Function])]TJ --21.1889 -1.8833 TD -0.2211 Tw -[(This function provides menus that pop up when they are used. It displays )]TJ -/TT14 1 Tf -36.3031 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.2211 Tw -[( at)]TJ -/TT14 1 Tf --38.7035 -1.2889 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0989 Tw -[( \(in screen coordinates\) and waits for the user to select an item with a mouse)]TJ --4.8008 -1.2889 TD -0.0222 Tw -[(key. Before any mouse key is pressed, the item the mouse is over is boxed. After any key)]TJ -0 -1.2222 TD -0.1233 Tw -[(is down, the selected menu item is video reversed. When all keys are released, )]TJ -/TT14 1 Tf -36.8886 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(s)Tj -/TT10 1 Tf -10 0 0 10 126 71.94 Tm -(WHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 210.0136 71.94 Tm -0.2122 Tw -[( field is called with four arguments: \(1\) the item selected, \(2\) the)]TJ --9.3349 -1.3333 TD -0.1067 Tw -(menu, \(3\) the last mouse key released )Tj -/TT10 1 Tf -10 0 0 10 284.1423 59.94 Tm -0.257 Tw -(\(LEFT, MIDDLE, or RIGHT\))Tj -/TT8 1 Tf -9 0 0 9 435.8758 59.94 Tm -0.1067 Tw -(, and \(4\) the)Tj --34.4306 -1.3278 TD -0.1656 Tw -(reverse list of superitems rolled through when selecting the item and )Tj -/TT14 1 Tf -32.514 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.1656 Tw -[( returns its)]TJ -ET -endstream -endobj -132 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -134 0 obj -<< -/Length 9707 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-36)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.0001 Tc -0.0021 Tw -(value. If no item is selected, )Tj -/TT14 1 Tf -12.728 0 TD -0 Tc -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0002 Tc -0.002 Tw -( returns )Tj -/TT10 1 Tf -10 0 0 10 343.532 569.49 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 361.535 569.49 Tm -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT14 1 Tf -1.6766 0 TD -0 Tc -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0006 Tc -0.0016 Tw -( is )Tj -/TT10 1 Tf -10 0 0 10 430.8049 569.49 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 448.8078 569.49 Tm -0.0022 Tw -(, the menu is brought)Tj --30.5342 -1.3333 TD -0.0467 Tw -(up at the value from )Tj -/TT14 1 Tf -9.4955 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(s )Tj -/TT10 1 Tf -10 0 0 10 290.0483 557.49 Tm -(MENUPOSITION)Tj -/TT8 1 Tf -9 0 0 9 362.06 557.49 Tm -0.0467 Tw -[( field, if it is a )]TJ -/TT14 1 Tf -6.4909 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0467 Tw -(, or at the current)Tj --32.1873 -1.3278 TD -0.35 Tw -[(cursor position. The orientation of )]TJ -/TT14 1 Tf -17.6806 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.35 Tw -[( with respect to the specified position is)]TJ --20.081 -1.2944 TD -0 Tw -(determined by its )Tj -/TT10 1 Tf -10 0 0 10 246.3252 533.89 Tm -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 306.3349 533.89 Tm -( field.)Tj --14.7039 -2.1111 TD -(If )Tj -/TT14 1 Tf -1.0855 0 TD -(RELEASECONTROLFLG)Tj -/TT8 1 Tf -10.2017 0 TD -0.1656 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 289.4978 514.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 307.5008 514.89 Tm -0.1656 Tw -[(, this process will retain control of the mouse. In this)]TJ --14.8334 -1.3333 TD -0.0389 Tw -(case, if the user lets the mouse key up outside of the menu, )Tj -/TT14 1 Tf -26.7443 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0389 Tw -[( return )]TJ -/TT10 1 Tf -10 0 0 10 466.5249 502.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 484.5278 502.89 Tm -0.0389 Tw -[(. \(Note: this)]TJ --34.5031 -1.3278 TD -0.1267 Tw -(is the standard way of allowing the user to indicate that they do not want to make the)Tj -0 -1.2278 TD -0.0444 Tw -[(offered choice.\) If )]TJ -/TT14 1 Tf -8.3921 0 TD -0 Tw -(RELEASECONTROLFLG)Tj -/TT8 1 Tf -10.2017 0 TD -0.0444 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 371.4644 479.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 389.4674 479.89 Tm -0.0444 Tw -(, this process will give up control of)Tj --23.9408 -1.3278 TD -0.0389 Tw -[(the mouse when it is outside of the menu so that other processes can be run. In this case,)]TJ -0 -1.2222 TD -0.14 Tw -(clicking outside the menu has no effect on the call to )Tj -/TT14 1 Tf -24.8999 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.14 Tw -[(. If the menu is closed \(for)]TJ --27.3003 -1.2889 TD -0.1622 Tw -(example, by right buttoning in it and selecting "Close" from the window menu\), )Tj -/TT14 1 Tf -37.6011 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf --37.6011 -1.2944 TD -(returns )Tj -/TT10 1 Tf -10 0 0 10 206.1269 433.69 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 224.1298 433.69 Tm -0.1156 Tw -[(. Programmers are encouraged to provide a menu item such as "cancel" or)]TJ --5.57 -1.3278 TD -0 Tw -("abort" which gives users a positive way of indicating "no choice".)Tj -2.6667 -2 TD -0.0111 Tw -[(Note: A "released" menu will stay visible \(on top of the window stack\) until it)]TJ -3.3333 -1.2222 TD -0 Tw -(is closed or an item is selected.)Tj -/TT10 1 Tf -10 0 0 10 150 370.46 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 370.46 Tm -(ADDMENU)Tj -/F1 1 Tf -10 0 0 10 193.8 370.46 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 196.67 370.46 Tm -(MENU WINDOW POSITION DONTOPENFLG)Tj -/TT10 1 Tf -10 0 0 10 369.4981 370.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 375.4991 370.46 Tm -[( )-12514.5([Function])]TJ --22.3888 -1.8889 TD -0.0844 Tw -(This function provides menus that remain active in windows. )Tj -/TT10 1 Tf -10 0 0 10 431.016 353.46 Tm -0 Tw -(ADDMENU)Tj -/TT8 1 Tf -9 0 0 9 473.0228 353.46 Tm -0.0844 Tw -[( displays )]TJ -/TT14 1 Tf -4.3666 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf --37.5914 -1.3278 TD -(at )Tj -/TT14 1 Tf -1.1495 0 TD -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0733 Tw -[( \(in window coordinates\) in )]TJ -/TT14 1 Tf -12.8701 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0733 Tw -[(. If the window is too small to display)]TJ --22.421 -1.2889 TD -0.1011 Tw -[(the entire menu, the window is made scrollable. When an item is selected, the value of)]TJ -0 -1.2278 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 191.6148 318.86 Tm -(WHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 275.6285 318.86 Tm -0.32 Tw -[( field of )]TJ -/TT14 1 Tf -4.5938 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.32 Tw -[( is called with three arguments: \(1\) the item)]TJ --18.2862 -1.3333 TD -0.0878 Tw -(selected, \(2\) the menu, and \(3\) the mouse button that the item was selected with \()Tj -/TT10 1 Tf -10 0 0 10 507.6659 306.86 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 531.6698 306.86 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 294.86 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 210.0058 294.86 Tm -0.0244 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 225.6641 294.86 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 255.669 294.86 Tm -0.0244 Tw -[(\). More than one menu can be put in a window, but a menu can only)]TJ --9.0743 -1.3333 TD -0.1167 Tw -(be added to one window at a time. )Tj -/TT10 1 Tf -10 0 0 10 325.8811 282.86 Tm -0 Tw -(ADDMENU)Tj -/TT8 1 Tf -9 0 0 9 367.888 282.86 Tm -0.1167 Tw -[( returns the window into which )]TJ -/TT14 1 Tf -14.9671 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.1167 Tw -[( is)]TJ --38.9106 -1.3278 TD -0 Tw -(placed.)Tj -0 -2.0056 TD -(If )Tj -/TT14 1 Tf -0.9977 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0778 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 227.7181 252.86 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 245.7211 252.86 Tm -0.0778 Tw -(, a window is created at the position specified by )Tj -/TT14 1 Tf -22.5566 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0778 Tw -[( \(in screen)]TJ --35.3264 -1.3278 TD -0.1578 Tw -(coordinates\) that is the size of )Tj -/TT14 1 Tf -14.3324 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.1578 Tw -[(. If a window is created, it will be opened unless)]TJ -/TT14 1 Tf --16.7328 -1.2944 TD -0 Tw -(DONTOPENFLG)Tj -/TT8 1 Tf -6.6011 0 TD -0.0633 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 263.87 229.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 281.8729 229.26 Tm -0.0633 Tw -[(. If )]TJ -/TT14 1 Tf -1.8599 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0633 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 353.8928 229.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 371.8958 229.26 Tm -0.0633 Tw -(, the menu is brought up at the value of)Tj -/TT14 1 Tf --21.9884 -1.3333 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(s )Tj -/TT10 1 Tf -10 0 0 10 205.1784 217.26 Tm -(MENUPOSITION)Tj -/TT8 1 Tf -9 0 0 9 277.1902 217.26 Tm -0.1122 Tw -[( field \(in window coordinates\), if it is a position, or else in the)]TJ --11.4656 -1.3333 TD -0.2267 Tw -(lower left corner of )Tj -/TT14 1 Tf -9.6005 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2267 Tw -[(. If both )]TJ -/TT14 1 Tf -4.8339 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2267 Tw -[( and )]TJ -/TT14 1 Tf -2.6462 0 TD -0 Tw -(POSITION)Tj -/TT8 1 Tf -4.8008 0 TD -0.2267 Tw -[( are )]TJ -/TT10 1 Tf -10 0 0 10 456.6895 205.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 474.6924 205.26 Tm -0.2267 Tw -(, a window is)Tj --33.4103 -1.3278 TD -0 Tw -(created at the current cursor position.)Tj -0 -2.0056 TD -0.4678 Tw -(Warning: )Tj -/TT10 1 Tf -10 0 0 10 224.3262 175.26 Tm -0 Tw -(ADDMENU)Tj -/TT8 1 Tf -9 0 0 9 266.3331 175.26 Tm -0.4678 Tw -[( resets several of the window properties of )]TJ -/TT14 1 Tf -22.7818 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.4678 Tw -[(. The)]TJ -/TT10 1 Tf -10 0 0 10 204 163.26 Tm -0 Tw -(CURSORINFN)Tj -/TT8 1 Tf -9 0 0 9 264.0097 163.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 270.2897 163.26 Tm -(CURSORMOVEDFN)Tj -/TT8 1 Tf -9 0 0 9 348.3024 163.26 Tm -0.1978 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 373.8483 163.26 Tm -0 Tw -(BUTTONEVENTFN)Tj -/TT8 1 Tf -9 0 0 9 451.861 163.26 Tm -0.1978 Tw -[( window properties)]TJ --27.5401 -1.3333 TD -0.9178 Tw -(are replaced with )Tj -/TT10 1 Tf -10 0 0 10 300.3933 151.26 Tm -0 Tw -(MENUBUTTONFN)Tj -/TT8 1 Tf -9 0 0 9 372.405 151.26 Tm -0.9178 Tw -(, so that )Tj -/TT14 1 Tf -6.4574 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.9178 Tw -[( will be active.)]TJ -/TT10 1 Tf -10 0 0 10 204 139.26 Tm -0 Tw -(MENUREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 282.0127 139.26 Tm -0.0744 Tw -[( is added to the )]TJ -/TT10 1 Tf -10 0 0 10 348.6835 139.26 Tm -0 Tw -(REPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 402.6923 139.26 Tm -0.0744 Tw -[( window property to update the)]TJ --22.0769 -1.3333 TD -0.0978 Tw -[(menu image if the window is redisplayed. The )]TJ -/TT10 1 Tf -10 0 0 10 401.7418 127.26 Tm -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -9 0 0 9 449.7496 127.26 Tm -0.0978 Tw -[( window property is)]TJ --27.3055 -1.3333 TD -0.0956 Tw -(changed to )Tj -/TT10 1 Tf -10 0 0 10 251.8538 115.26 Tm -0 Tw -(SCROLLBYREPAINTFN)Tj -/TT8 1 Tf -9 0 0 9 353.8704 115.26 Tm -0.0956 Tw -[( if the window is too small for the menu, to)]TJ --16.6523 -1.3278 TD -0 Tw -(make the window scroll. )Tj -/TT10 1 Tf -10 0 0 10 150 81.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 81.03 Tm -(DELETEMENU)Tj -/F1 1 Tf -10 0 0 10 210 81.03 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.87 81.03 Tm -(MENU CLOSEFLG FROMWINDOW)Tj -/TT10 1 Tf -10 0 0 10 342.4911 81.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 348.4921 81.03 Tm -[( )-15515.3([Function])]TJ --19.388 -1.8833 TD -0.0267 Tw -(This function removes )Tj -/TT14 1 Tf -10.2172 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0267 Tw -[( from the window )]TJ -/TT14 1 Tf -8.3484 0 TD -0 Tw -(FROMWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0267 Tw -[(. If )]TJ -/TT14 1 Tf -1.7499 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0267 Tw -[( is the only menu in)]TJ --31.1173 -1.2944 TD -0 Tw -(the window and )Tj -/TT14 1 Tf -7.5278 0 TD -(CLOSEFLG)Tj -/TT8 1 Tf -4.8008 0 TD -( is non-)Tj -/TT10 1 Tf -10 0 0 10 314.2778 52.43 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 332.2808 52.43 Tm -(, its window will be closed \(by )Tj -/TT10 1 Tf -10 0 0 10 455.7144 52.43 Tm -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 491.7202 52.43 Tm -(\).)Tj -ET -endstream -endobj -135 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -137 0 obj -<< -/Length 5080 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-37)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -(If )Tj -/TT14 1 Tf -1.1788 0 TD -(FROMWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.2589 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 206.2117 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 224.2146 569.49 Tm -0.2589 Tw -(, the list of currently open windows is searched for one that)Tj --10.9127 -1.3333 TD -0 Tw -(contains )Tj -/TT14 1 Tf -3.9448 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(. If none is found, )Tj -/TT10 1 Tf -10 0 0 10 257.3437 557.49 Tm -(DELETEMENU)Tj -/TT8 1 Tf -9 0 0 9 317.3535 557.49 Tm -( does nothing.)Tj -/TT4 1 Tf -10 0 0 10 78 530.2 Tm -(Menu Fields)Tj -/TT8 1 Tf -9 0 0 9 78 505.54 Tm -(A menu is a datatype with the following fields:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(ITEMS)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -33.9117 0 TD -([Menu Field])Tj --34.2456 -1.8444 TD -0.1278 Tw -[(The list of items to appear in the menu. If an item is a list, its CAR will appear in the)]TJ -0 -1.2278 TD -0.0256 Tw -[(menu. If the item \(or its )]TJ -/TT10 1 Tf -10 0 0 10 225.6915 456.89 Tm -0 Tw -(CAR)Tj -/TT8 1 Tf -9 0 0 9 243.6945 456.89 Tm -0.0256 Tw -[(\) is a bitmap, the bitmap will be displayed in the menu. The)]TJ --13.0772 -1.3278 TD -0.1089 Tw -(default selection functions interpret each item as a list of three elements: a label, a form)Tj -0 -1.2222 TD -0.1233 Tw -(whose value is returned upon selection, and a help string that is printed in the prompt)Tj -T* -0.1178 Tw -[(window when the user presses a mouse key with the cursor pointing to this item. The)]TJ -0 -1.2278 TD -0.0467 Tw -[(default subitem function interprets the fourth element of the list. If it is a list whose )]TJ -/TT10 1 Tf -10 0 0 10 467.9022 411.89 Tm -0 Tw -(CAR)Tj -/TT8 1 Tf -9 0 0 9 126 399.89 Tm -(is the litatom )Tj -/TT10 1 Tf -10 0 0 10 180.1362 399.89 Tm -(SUBITEMS)Tj -/TT8 1 Tf -9 0 0 9 228.144 399.89 Tm -( , the )Tj -/TT10 1 Tf -10 0 0 10 249.6289 399.89 Tm -(CDR)Tj -/TT8 1 Tf -9 0 0 9 267.6318 399.89 Tm -( is taken as a list of subitems.)Tj -/TT12 1 Tf --18.4035 -2.4389 TD -(SUBITEMFN)Tj -/TT8 1 Tf -5.4009 0 TD -[( )-31011.3([Menu Field])]TJ --2.7342 -1.8444 TD -0.0456 Tw -[(A function to be called to determine if an item has any subitems. If an item has subitems)]TJ -0 -1.2222 TD -0.2467 Tw -(and the user rolls the cursor out the right of that item, a submenu with that items)Tj -T* -0.0256 Tw -[(subitems in it pops up. If the user selects one of the items from the submenu, the selected)]TJ -T* -0.0622 Tw -[(subitem is handled as if it were selected from the main menu. If the user rolls out of the)]TJ -T* -0.1533 Tw -(submenu to the left, the submenu is taken down and selection resumes from the main)Tj -T* -0 Tw -(menu.)Tj -0 -2 TD -0.0322 Tw -(An item with subitems is marked in the menu by a grey, right pointing triangle following)Tj -0 -1.2222 TD -0 Tw -(the label.)Tj -0 -2 TD -0.0133 Tw -[(The function is called with two arguments: \(1\) the menu and \(2\) the item. It should return)]TJ -0 -1.2222 TD -0.0067 Tw -[(a list of the subitems of this item if any. \(It is called twice to compute the menu image and)]TJ -T* -0.1744 Tw -[(each time the user rolls out of the item box so it should be moderately efficient. The)]TJ -0 -1.2278 TD -0 Tw -(default )Tj -/TT10 1 Tf -10 0 0 10 158.1176 226.29 Tm -(SUBITEMFN)Tj -/TT8 1 Tf -9 0 0 9 212.1264 226.29 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 218.2064 226.29 Tm -(DEFAULTSUBITEMFN)Tj -/TT8 1 Tf -9 0 0 9 314.222 226.29 Tm -0.1756 Tw -(, checks to see if the item is a list whose)Tj --20.9136 -1.3333 TD -0.0256 Tw -(fourth element is a list whose )Tj -/TT10 1 Tf -10 0 0 10 246.3224 214.29 Tm -0 Tw -(CAR)Tj -/TT8 1 Tf -9 0 0 9 264.3253 214.29 Tm -0.0256 Tw -[( is the litatom )]TJ -/TT10 1 Tf -10 0 0 10 321.6315 214.29 Tm -0 Tw -(SUBITEMS)Tj -/TT8 1 Tf -9 0 0 9 369.6393 214.29 Tm -0.0256 Tw -[( and if so, returns the )]TJ -/TT10 1 Tf -10 0 0 10 457.6707 214.29 Tm -0 Tw -(CDR)Tj -/TT8 1 Tf -9 0 0 9 475.6736 214.29 Tm -0.0256 Tw -[( of)]TJ --38.8526 -1.3278 TD -0 Tw -(it. )Tj -0 -2 TD -(For example:)Tj -/TT10 1 Tf -10 0 0 10 174 166.29 Tm -(\(create MENU)Tj -0 -1.2 TD -( ITEMS )Tj -/TT15 1 Tf -6.001 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(AAAA \(BBBB BBBB "help string for)Tj --6.9878 -1.2 TD -(BBBB")Tj -T* -( \(SUBITEMS BBBB1 BBBB2 BBBB3\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 111.29 Tm -0.01 Tw -(will create a menu with items )Tj -/TT10 1 Tf -10 0 0 10 246.3569 111.29 Tm -0 Tw -(A)Tj -/TT8 1 Tf -9 0 0 9 252.3578 111.29 Tm -0.01 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 272.2737 111.29 Tm -0 Tw -(B)Tj -/TT8 1 Tf -9 0 0 9 278.2747 111.29 Tm -0.01 Tw -[( in which )]TJ -/TT10 1 Tf -10 0 0 10 317.7483 111.29 Tm -0 Tw -(B)Tj -/TT8 1 Tf -9 0 0 9 323.7493 111.29 Tm -0.01 Tw -[( will have subitems )]TJ -/TT10 1 Tf -10 0 0 10 403.4525 111.29 Tm -0 Tw -(B1)Tj -/TT8 1 Tf -9 0 0 9 415.4545 111.29 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 420.0445 111.29 Tm -(B2)Tj -/TT8 1 Tf -9 0 0 9 432.0464 111.29 Tm -0.01 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 451.9623 111.29 Tm -0 Tw -(B3)Tj -/TT8 1 Tf -9 0 0 9 463.9642 111.29 Tm -0.01 Tw -[(. The)]TJ --37.5516 -1.3278 TD -0 Tw -(following picture below shows this menu as it first appears:)Tj -ET -q -46 0 0 -26 258.01 89.79 cm -/Im11 Do -Q -endstream -endobj -138 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/XObject << -/Im11 139 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -141 0 obj -<< -/Length 6167 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-38)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.1467 Tw -(The following picture shows the submenu, with the item BBBB3 selected by the cursor)Tj -0 -2.2833 TD -0 Tw -(\()Tj -ET -q -8 0 0 -16 177.01 564.99 cm -/Im12 Do -Q -BT -9 0 0 9 185 548.99 Tm -(\):)Tj -ET -q -91 0 0 -50 306.01 539.44 cm -/Im13 Do -Q -BT -/TT12 1 Tf -9 0 0 9 150 472.99 Tm -(WHENSELECTEDFN)Tj -/TT8 1 Tf -8.4014 0 TD -[( )-28010.9([Menu Field])]TJ --5.7347 -1.8444 TD -0.2467 Tw -[(A function to be called when an item is selected. The function is called with three)]TJ -0 -1.2222 TD -0.1067 Tw -(arguments: \(1\) the item selected, \(2\) the menu, and \(3\) the mouse key that the item was)Tj -0 -1.2278 TD -1.2556 Tw -(selected with \()Tj -/TT10 1 Tf -10 0 0 10 254.1903 434.34 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 278.1942 434.34 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 293.9942 434.34 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 330.0001 434.34 Tm -1.2556 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 367.8184 434.34 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 397.8232 434.34 Tm -1.2556 Tw -[(\). The default function)]TJ -/TT10 1 Tf -10 0 0 10 174 422.34 Tm -0 Tw -(DEFAULTWHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 300.0205 422.34 Tm -0.0856 Tw -[( evaluates and returns the value of the second element of)]TJ --14.0023 -1.3278 TD -0.0489 Tw -[(the item if the item is a list of at least length 2. If the item is not a list of at least length 2,)]TJ -/TT10 1 Tf -10 0 0 10 174 399.34 Tm -0 Tw -(DEFAULTWHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 300.0205 399.34 Tm -( returns the item.)Tj --14.0023 -2.1111 TD -0.0001 Tc -0.0032 Tw -(Note: If the menu is added to a window with )Tj -/TT10 1 Tf -10 0 0 10 358.0697 380.34 Tm -0 Tc -0 Tw -(ADDMENU)Tj -/TT8 1 Tf -9 0 0 9 400.0766 380.34 Tm -0.0033 Tw -(, the default )Tj -/TT10 1 Tf -10 0 0 10 449.939 380.34 Tm -0 Tw -(WHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 174 368.34 Tm -(is )Tj -/TT10 1 Tf -10 0 0 10 202.9136 368.34 Tm -(BACKGROUNDWHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 346.937 368.34 Tm -2.2478 Tw -(, which is the same as)Tj -/TT10 1 Tf -10 0 0 10 174 356.34 Tm -0 Tw -(DEFAULTWHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 300.0205 356.34 Tm -0.0733 Tw -[( except that )]TJ -/TT10 1 Tf -10 0 0 10 349.9668 356.34 Tm -0 Tw -(EVAL.AS.PROCESS)Tj -/TT8 1 Tf -9 0 0 9 439.9814 356.34 Tm -0.0733 Tw -[( is used to evaluate the)]TJ --29.5535 -1.3278 TD -0 Tw -(second element of the item, instead of tying up the mouse process. )Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WHENHELDFN)Tj -/TT8 1 Tf -6.001 0 TD -[( )-30411.3([Menu Field])]TJ --3.3343 -1.8444 TD -0.3011 Tw -(The function which is called when the user has held a mouse key on an item for)Tj -/TT10 1 Tf -10 0 0 10 174 295.74 Tm -0 Tw -(MENUHELDWAIT)Tj -/TT8 1 Tf -9 0 0 9 246.0117 295.74 Tm -0.46 Tw -[( milliseconds \(initially 1200\). The function is called with three)]TJ --8.0013 -1.3278 TD -0.1067 Tw -(arguments: \(1\) the item selected, \(2\) the menu, and \(3\) the mouse key that the item was)Tj -0 -1.2278 TD -0.1756 Tw -(selected with \()Tj -/TT10 1 Tf -10 0 0 10 234.7503 272.74 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 258.7542 272.74 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 264.8342 272.74 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 300.8401 272.74 Tm -0.1756 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 319.2184 272.74 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 349.2232 272.74 Tm -0.1756 Tw -(\). )Tj -/TT10 1 Tf -10 0 0 10 362.1303 272.74 Tm -0 Tw -(WHENHELDFN)Tj -/TT8 1 Tf -9 0 0 9 422.1401 272.74 Tm -0.1756 Tw -[( is intended for prompting)]TJ --27.5711 -1.3333 TD -0.07 Tw -[(users. The default is )]TJ -/TT10 1 Tf -10 0 0 10 261.358 260.74 Tm -0 Tw -(DEFAULTMENUHELDFN)Tj -/TT8 1 Tf -9 0 0 9 363.3746 260.74 Tm -0.07 Tw -[( which prints \(in the prompt window\) the)]TJ --21.0416 -1.3278 TD -0.1022 Tw -(third element of the item or, if there is not a third element, the string "This item will be)Tj -0 -1.2222 TD -0 Tw -(selected when the button is released.")Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WHENUNHELDFN)Tj -/TT8 1 Tf -7.2012 0 TD -[( )-29211.1([Menu Field])]TJ --4.5345 -1.85 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 182.9193 200.14 Tm -(WHENHELDFN)Tj -/TT8 1 Tf -9 0 0 9 242.929 200.14 Tm -0.0711 Tw -[( was called, )]TJ -/TT10 1 Tf -10 0 0 10 293.2108 200.14 Tm -0 Tw -(WHENUNHELDFN)Tj -/TT8 1 Tf -9 0 0 9 365.2226 200.14 Tm -0.0711 Tw -[( will be called: \(1\) when the cursor leaves)]TJ --21.247 -1.3278 TD -0.1878 Tw -[(the item, \(2\) when a mouse key is released, or \(3\) when another key is pressed. The)]TJ -0 -1.2278 TD -0.0856 Tw -(function is called with the same three argument values used to call )Tj -/TT10 1 Tf -10 0 0 10 450.5901 177.14 Tm -0 Tw -(WHENHELDFN)Tj -/TT8 1 Tf -9 0 0 9 510.5999 177.14 Tm -0.0856 Tw -[(. The)]TJ --37.4 -1.3333 TD -0 Tw -(default )Tj -/TT10 1 Tf -10 0 0 10 206.9676 165.14 Tm -(WHENUNHELDFN)Tj -/TT8 1 Tf -9 0 0 9 278.9793 165.14 Tm -0.27 Tw -[( is the function )]TJ -/TT10 1 Tf -10 0 0 10 349.981 165.14 Tm -0 Tw -(CLRPROMPT)Tj -/TT8 1 Tf -9 0 0 9 403.9898 165.14 Tm -0.27 Tw -(, which just clears the prompt)Tj --25.5544 -1.3278 TD -0 Tw -(window.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(MENUPOSITION)Tj -/TT8 1 Tf -7.2012 0 TD -[( )-29211.1([Menu Field])]TJ --4.5345 -1.85 TD -0.0867 Tw -(The position of the menu to be used if the call to )Tj -/TT10 1 Tf -10 0 0 10 377.0753 115.54 Tm -0 Tw -(MENU)Tj -/TT8 1 Tf -9 0 0 9 401.0792 115.54 Tm -0.0867 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 415.6075 115.54 Tm -0 Tw -(ADDMENU)Tj -/TT8 1 Tf -9 0 0 9 457.6143 115.54 Tm -0.0867 Tw -[( does not specify a)]TJ --31.5127 -1.3278 TD -0.1333 Tw -[(position. For popup menus, this is in screen coordinates. For fixed menus, it is in the)]TJ -0 -1.2222 TD -0.1933 Tw -[(coordinates of the window the menu is in. The point within the menu image that is)]TJ -0 -1.2278 TD -0.0667 Tw -(placed at this position is determined by )Tj -/TT10 1 Tf -10 0 0 10 337.427 81.54 Tm -0 Tw -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 397.4368 81.54 Tm -0.0667 Tw -[(. If )]TJ -/TT10 1 Tf -10 0 0 10 414.2661 81.54 Tm -0 Tw -(MENUPOSITION)Tj -/TT8 1 Tf -9 0 0 9 486.2778 81.54 Tm -0.0667 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 498.4114 81.54 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 516.4143 81.54 Tm -0.0667 Tw -(, the)Tj --38.046 -1.3278 TD -0 Tw -(menu will be brought up at the cursor position.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(MENUOFFSET)Tj -/TT8 1 Tf -6.001 0 TD -[( )-30411.3([Menu Field])]TJ -ET -endstream -endobj -142 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/XObject << -/Im12 143 0 R -/Im13 144 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -146 0 obj -<< -/Length 4737 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-39)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.1344 Tw -(The position in the menu image that is to be located at )Tj -/TT10 1 Tf -10 0 0 10 358.08 569.49 Tm -0 Tw -(MENUPOSITION)Tj -/TT8 1 Tf -9 0 0 9 430.0917 569.49 Tm -0.1344 Tw -[(. The default)]TJ --33.788 -1.3278 TD -0.1067 Tw -[(offset is \(0,0\). For example, to bring up a menu with the cursor over a particular menu)]TJ -0 -1.2278 TD -0.0644 Tw -(item, set its )Tj -/TT10 1 Tf -10 0 0 10 174.9812 546.49 Tm -0 Tw -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 234.991 546.49 Tm -0.0644 Tw -[( to a position within that item and set its )]TJ -/TT10 1 Tf -10 0 0 10 403.3447 546.49 Tm -0 Tw -(MENUPOSITION)Tj -/TT8 1 Tf -9 0 0 9 475.3564 546.49 Tm -0.0644 Tw -[( to)]TJ -/TT10 1 Tf -10 0 0 10 126 534.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 144.0029 534.49 Tm -(.)Tj -/TT12 1 Tf --4.667 -2.4389 TD -(MENUFONT)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-31611.4([Menu Field])]TJ --2.1341 -1.8444 TD -0.3467 Tw -(The font in which the items will be appear in the menu. Default is the value of)Tj -/TT10 1 Tf -10 0 0 10 126 484.89 Tm -0 Tw -(MENUFONT)Tj -/TT8 1 Tf -9 0 0 9 174.0078 484.89 Tm -(.)Tj -/TT12 1 Tf --8.0009 -2.4389 TD -(TITLE)Tj -/TT8 1 Tf -3.0005 0 TD -( )Tj -33.9117 0 TD -([Menu Field])Tj --34.2456 -1.85 TD -(If non-)Tj -/TT10 1 Tf -10 0 0 10 152.666 446.29 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 170.6689 446.29 Tm -(, the value of this field will appear as a title in a line above the menu.)Tj -/TT12 1 Tf --7.6299 -2.4389 TD -(MENUTITLEFONT)Tj -/TT8 1 Tf -7.8013 0 TD -[( )-28611([Menu Field])]TJ --5.1346 -1.85 TD -0.0001 Tc -0.0043 Tw -(The font in which the title of the menu will be appear. If this is )Tj -/TT10 1 Tf -10 0 0 10 379.1234 407.69 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 397.1263 407.69 Tm -0.0044 Tw -(, the title will be in the)Tj --30.1251 -1.3333 TD -0 Tw -(same font as window titles. If it is )Tj -/TT10 1 Tf -10 0 0 10 264.0015 395.69 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 270.0024 395.69 Tm -(, it will be in the same font as the menu items. )Tj -/TT12 1 Tf --18.6669 -2.4389 TD -(CENTERFLG)Tj -/TT8 1 Tf -5.4009 0 TD -[( )-31011.3([Menu Field])]TJ --2.7342 -1.85 TD -(If non-)Tj -/TT10 1 Tf -10 0 0 10 152.666 357.09 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 170.6689 357.09 Tm -(, the menu items are centered; otherwise they are left-justified.)Tj -/TT12 1 Tf --7.6299 -2.4389 TD -(MENUROWS)Tj -/TT8 1 Tf -4.8008 0 TD -[( )-31611.4([Menu Field])]TJ -/TT12 1 Tf --4.8008 -1.0667 TD -(MENUCOLUMNS)Tj -/TT8 1 Tf -6.6011 0 TD -[( )-29811.2([Menu Field])]TJ --3.9344 -1.85 TD -0.0556 Tw -[(These fields control the shape of the menu in terms of rows and columns. If )]TJ -/TT10 1 Tf -10 0 0 10 437.8774 308.89 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 126 296.89 Tm -0.0533 Tw -[(is given, the menu will have that number of rows. If )]TJ -/TT10 1 Tf -10 0 0 10 342.6491 296.89 Tm -0 Tw -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 408.6599 296.89 Tm -0.0533 Tw -[( is given, the menu)]TJ --31.4067 -1.3278 TD -0.0233 Tw -[(will have that number of columns. If only one is given, the other one will be calculated to)]TJ -0 -1.2278 TD -0.5367 Tw -(generate the minimal rectangular menu. \(Normally only one of )Tj -/TT10 1 Tf -10 0 0 10 422.4544 273.89 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 470.4622 273.89 Tm -0.5367 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 126 261.89 Tm -0 Tw -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 192.0107 261.89 Tm -( is given.\) If neither is given, the items will be in one column.)Tj -/TT12 1 Tf --10.0012 -2.4389 TD -(ITEMHEIGHT)Tj -/TT8 1 Tf -6.001 0 TD -[( )-30411.3([Menu Field])]TJ --3.3343 -1.8444 TD -0.07 Tw -[(The height of each item box in the menu. If not specified, it will be the maximum of the)]TJ -0 -1.2278 TD -0 Tw -(height of the )Tj -/TT10 1 Tf -10 0 0 10 178.4926 212.29 Tm -(MENUFONT)Tj -/TT8 1 Tf -9 0 0 9 226.5005 212.29 Tm -( and the heights of any bitmaps appearing as labels.)Tj -/TT12 1 Tf --13.8334 -2.4389 TD -(ITEMWIDTH)Tj -/TT8 1 Tf -5.4009 0 TD -[( )-31011.3([Menu Field])]TJ --2.7342 -1.8444 TD -0.01 Tw -[(The width of each item box in the menu. If not specified, it will be the width of the largest)]TJ -0 -1.2222 TD -0 Tw -(item in the menu.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(MENUBORDERSIZE)Tj -/TT8 1 Tf -8.4014 0 TD -[( )-28010.9([Menu Field])]TJ --5.7347 -1.8444 TD -(The size of the border around each item box. If not specified, 0 \(no border\) is used.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(MENUOUTLINESIZE)Tj -/TT8 1 Tf -9.0015 0 TD -[( )-27410.8([Menu Field])]TJ --6.3348 -1.8444 TD -0.0511 Tw -[(The size of the outline around the entire menu. If not specified, a maximum of 1 and the)]TJ -/TT10 1 Tf -10 0 0 10 126 76.49 Tm -0 Tw -(MENUBORDERSIZE)Tj -/TT8 1 Tf -9 0 0 9 210.0136 76.49 Tm -( is used.)Tj -/TT12 1 Tf --12.0015 -2.4389 TD -(CHANGEOFFSETFLG)Tj -/TT8 1 Tf -9.0015 0 TD -[( )-27410.8([Menu Field])]TJ -ET -endstream -endobj -147 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -149 0 obj -<< -/Length 6790 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-40)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.02 Tw -[(\(popup menus only\) If )]TJ -/TT10 1 Tf -10 0 0 10 269.255 569.49 Tm -0 Tw -(CHANGEOFFSETFLG)Tj -/TT8 1 Tf -9 0 0 9 359.2696 569.49 Tm -0.02 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 388.9499 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 406.9529 569.49 Tm -0.02 Tw -(, the position of the menu offset)Tj --25.8837 -1.3278 TD -0.1044 Tw -(is set each time a selection is confirmed so that the menu will come up next time in the)Tj -0 -1.2222 TD -0.1311 Tw -[(same position relative to the cursor. This will cause the menu to reappear in the same)]TJ -T* -0.3511 Tw -[(place on the screen if the cursor has not moved since the last selection. This is)]TJ -0 -1.2278 TD -0.0478 Tw -(implemented by changing the )Tj -/TT10 1 Tf -10 0 0 10 297.1717 524.49 Tm -0 Tw -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 357.1814 524.49 Tm -0.0478 Tw -[( field on each use. If )]TJ -/TT10 1 Tf -10 0 0 10 444.0127 524.49 Tm -0 Tw -(CHANGEOFFSETFLG)Tj -/TT8 1 Tf -9 0 0 9 174 512.49 Tm -0.0211 Tw -(is the atom )Tj -/TT10 1 Tf -10 0 0 10 220.5324 512.49 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 226.5334 512.49 Tm -0.0211 Tw -[( or the atom )]TJ -/TT10 1 Tf -10 0 0 10 277.5404 512.49 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 283.5414 512.49 Tm -0.0211 Tw -(, only the )Tj -/TT10 1 Tf -10 0 0 10 323.3721 512.49 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 329.3731 512.49 Tm -0.0211 Tw -[( or the )]TJ -/TT10 1 Tf -3.1415 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0211 Tw -[( coordinate of the )]TJ -/TT10 1 Tf -10 0 0 10 435.6797 512.49 Tm -0 Tw -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 495.6895 512.49 Tm -0.0211 Tw -[( field will)]TJ --35.7433 -1.3333 TD -0.2056 Tw -[(be changed. For example, by setting the )]TJ -/TT10 1 Tf -10 0 0 10 350.9186 500.49 Tm -0 Tw -(MENUOFFSET)Tj -/TT8 1 Tf -9 0 0 9 410.9284 500.49 Tm -0.2056 Tw -[( position to \(-1,0\) and setting)]TJ -/TT10 1 Tf -10 0 0 10 174 488.49 Tm -0 Tw -(CHANGEOFFSETFLG)Tj -/TT8 1 Tf -9 0 0 9 264.0146 488.49 Tm -0.0944 Tw -[( to )]TJ -/TT10 1 Tf -10 0 0 10 278.0633 488.49 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 284.0642 488.49 Tm -0.0944 Tw -(, the menu will pop up so that the cursor is just to the left of)Tj --12.2294 -1.3278 TD -0 Tw -(the last item selected. This is the setting of the window command menus.)Tj --5.3333 -2.7778 TD -(The following fields are read only.)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(IMAGEHEIGHT)Tj -/TT8 1 Tf -6.6011 0 TD -[( )-29811.2([Menu Field])]TJ --3.9344 -1.8444 TD -(Returns the height of the entire menu.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(IMAGEWIDTH)Tj -/TT8 1 Tf -6.001 0 TD -[( )-30411.3([Menu Field])]TJ --3.3343 -1.8444 TD -(Returns the width of the entire menu.)Tj -/TT4 1 Tf -10 0 0 10 126 350 Tm -(Miscellaneous Menu Functions)Tj -/TT10 1 Tf -2.4 -2.194 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 328.06 Tm -(MAXMENUITEMWIDTH)Tj -/F1 1 Tf -10 0 0 10 242.4 328.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 245.27 328.06 Tm -(MENU)Tj -/TT10 1 Tf -10 0 0 10 266.8735 328.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.8745 328.06 Tm -[( )-23917.3([Function])]TJ --10.9861 -1.8833 TD -(Returns the width of the largest menu item label in the menu )Tj -/TT14 1 Tf -27.1929 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 288.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 288.23 Tm -(MAXMENUITEMHEIGHT)Tj -/F1 1 Tf -10 0 0 10 247.8 288.23 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 250.67 288.23 Tm -(MENU)Tj -/TT10 1 Tf -10 0 0 10 272.2735 288.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 278.2745 288.23 Tm -[( )-23317.3([Function])]TJ --11.5861 -1.8833 TD -(Returns the height of the largest menu item label in the menu )Tj -/TT14 1 Tf -27.3652 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 248.4 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 248.4 Tm -(MENUREGION)Tj -/F1 1 Tf -10 0 0 10 210 248.4 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.87 248.4 Tm -(MENU)Tj -/TT10 1 Tf -10 0 0 10 234.4735 248.4 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.4745 248.4 Tm -[( )-27517.3([Function])]TJ --7.3861 -1.8833 TD -(Returns the region covered by the image of )Tj -/TT14 1 Tf -19.3164 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -( in its window.)Tj -/TT10 1 Tf -10 0 0 10 150 208.57 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 208.57 Tm -(WFROMMENU)Tj -/F1 1 Tf -10 0 0 10 204.6 208.57 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.47 208.57 Tm -(MENU)Tj -/TT10 1 Tf -10 0 0 10 229.0735 208.57 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 235.0745 208.57 Tm -[( )-28117.3([Function])]TJ --6.7861 -1.8889 TD -(Returns the window )Tj -/TT14 1 Tf -9.312 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -( is located in, if it is in one; )Tj -/TT10 1 Tf -10 0 0 10 387.1479 191.57 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 405.1509 191.57 Tm -( otherwise.)Tj -/TT10 1 Tf -10 0 0 10 150 168.34 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 168.34 Tm -(DOSELECTEDITEM)Tj -/F1 1 Tf -10 0 0 10 231.6 168.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.47 168.34 Tm -(MENU ITEM BUTTON)Tj -/TT10 1 Tf -10 0 0 10 320.8841 168.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 326.885 168.34 Tm -[( )-17916.1([Function])]TJ --16.9872 -1.8889 TD -(Calls )Tj -/TT14 1 Tf -2.6582 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(s )Tj -/TT10 1 Tf -10 0 0 10 229.832 151.34 Tm -(WHENSELECTEDFN)Tj -/TT8 1 Tf -9 0 0 9 313.8457 151.34 Tm -0.1933 Tw -[( on )]TJ -/TT14 1 Tf -2.0146 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1933 Tw -[( and )]TJ -/TT14 1 Tf -2.5795 0 TD -0 Tw -(BUTTON)Tj -/TT8 1 Tf -3.6006 0 TD -0.1933 Tw -[(. It provides a programmatic)]TJ --26.1335 -1.3278 TD -0 Tw -(way of making a selection. It does not change the display.)Tj -/TT10 1 Tf -10 0 0 10 150 117.11 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 117.11 Tm -(MENUITEMREGION)Tj -/F1 1 Tf -10 0 0 10 231.6 117.11 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 234.47 117.11 Tm -(ITEM MENU)Tj -/TT10 1 Tf -10 0 0 10 283.0779 117.11 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 289.0789 117.11 Tm -[( )-22116.8([Function])]TJ --12.7865 -1.8833 TD -(Returns the region occupied by )Tj -/TT14 1 Tf -14.0913 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -( in )Tj -/TT14 1 Tf -1.373 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 77.28 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 77.28 Tm -(SHADEITEM)Tj -/F1 1 Tf -10 0 0 10 204.6 77.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 207.47 77.28 Tm -(ITEM MENU SHADE DS/W)Tj -/TT10 1 Tf -10 0 0 10 315.4876 77.28 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 321.4886 77.28 Tm -[( )-18515.7([Function])]TJ --16.3876 -1.8833 TD -0.0289 Tw -(Shades the region occupied by )Tj -/TT14 1 Tf -13.8793 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( in )]TJ -/TT14 1 Tf -1.4308 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[(. If )]TJ -/TT14 1 Tf -1.7566 0 TD -0 Tw -(DS/W)Tj -/TT8 1 Tf -2.4004 0 TD -0.0289 Tw -[( is a display stream or a window, it)]TJ --24.2679 -1.2944 TD -0.0122 Tw -(is assumed to be where )Tj -/TT14 1 Tf -10.6226 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0122 Tw -[( is displayed. Otherwise, )]TJ -/TT10 1 Tf -10 0 0 10 394.5805 48.68 Tm -0 Tw -(WFROMMENU)Tj -/TT8 1 Tf -9 0 0 9 448.5892 48.68 Tm -0.0122 Tw -[( is called to locate the)]TJ -ET -endstream -endobj -150 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -152 0 obj -<< -/Length 4703 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-41)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(window )Tj -/TT14 1 Tf -3.9633 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0156 Tw -[( is in. Shading is persistent, and is reapplied when the window the menu is)]TJ --6.3637 -1.2889 TD -0 Tw -(in gets redisplayed. To unshade an item, call with a )Tj -/TT14 1 Tf -23.2056 0 TD -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -( of 0.)Tj -/TT10 1 Tf -10 0 0 10 102 535.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 535.06 Tm -(PUTMENUPROP)Tj -/F1 1 Tf -10 0 0 10 167.4 535.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 535.06 Tm -(MENU PROPERTY VALUE)Tj -/TT10 1 Tf -10 0 0 10 272.8867 535.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 278.8877 535.06 Tm -[( )-17915.8([Function])]TJ --16.9875 -1.8833 TD -0.02 Tw -(Stores the property )Tj -/TT14 1 Tf -8.7914 0 TD -0 Tw -(PROPERTY)Tj -/TT8 1 Tf -4.8008 0 TD -0.02 Tw -[( with the value )]TJ -/TT14 1 Tf -6.9384 0 TD -0 Tw -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -0.02 Tw -[( on a property list in the menu )]TJ -/TT14 1 Tf -13.8265 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --39.758 -1.2889 TD -(The user can use this property list for associating arbitrary data with a menu object.)Tj -/TT10 1 Tf -10 0 0 10 102 484.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 484.23 Tm -(GETMENUPROP)Tj -/F1 1 Tf -10 0 0 10 167.4 484.23 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 170.27 484.23 Tm -(MENU PROPERTY)Tj -/TT10 1 Tf -10 0 0 10 240.4814 484.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.4824 484.23 Tm -[( )-21516.4([Function])]TJ --13.3869 -1.8833 TD -(Returns the value of the )Tj -/TT14 1 Tf -10.8184 0 TD -(PROPERTY)Tj -/TT8 1 Tf -4.8008 0 TD -( property of the menu )Tj -/TT14 1 Tf -9.9624 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 78 440.34 Tm -(Examples of Menu Use)Tj -/TT8 1 Tf -9 0 0 9 78 415.68 Tm -[(Example:)-1202.5(A simple menu:)]TJ -/TT10 1 Tf -10 0 0 10 174 397.63 Tm -(\(MENU \(create MENU ITEMS _ \(\(YES T\) \(NO \(QUOTE)Tj -0 -1.2 TD -(NIL\)\)\) \)\))Tj -/TT8 1 Tf -9 0 0 9 78 359.63 Tm -(Creates a menu with items )Tj -/TT10 1 Tf -10 0 0 10 186.4043 359.63 Tm -(YES)Tj -/TT8 1 Tf -9 0 0 9 204.4072 359.63 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 224.1431 359.63 Tm -(NO)Tj -/TT8 1 Tf -9 0 0 9 236.145 359.63 Tm -( in a single vertical column:)Tj -ET -q -31 0 0 -26 258.01 349.13 cm -/Im14 Do -Q -BT -9 0 0 9 78 302.63 Tm -(If )Tj -/TT10 1 Tf -10 0 0 10 86.2793 302.63 Tm -(YES)Tj -/TT8 1 Tf -9 0 0 9 104.2822 302.63 Tm -( is selected, )Tj -/TT10 1 Tf -10 0 0 10 151.5103 302.63 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 157.5112 302.63 Tm -( will be returned. Otherwise, )Tj -/TT10 1 Tf -10 0 0 10 276.3613 302.63 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 294.3643 302.63 Tm -( will be returned.)Tj --24.0405 -2.8833 TD -[(Example:)-1202.5(A simple menu, with centering:)]TJ -/TT10 1 Tf -10 0 0 10 174 258.63 Tm -(\(MENU \(create MENU TITLE )Tj -/TT15 1 Tf -15.0024 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( "Foo?")Tj --15.9893 -1.2 TD -( ITEMS )Tj -/TT15 1 Tf -6.6011 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(\(YES T "Adds the Foo feature."\))Tj --7.5879 -1.2 TD -( \(NO NO "Removes the Foo feature."\)\))Tj -T* -( CENTERFLG )Tj -/TT15 1 Tf -12.602 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T\)\))Tj -/TT8 1 Tf -9 0 0 9 78 196.63 Tm -(Creates a menu with a title )Tj -/TT10 1 Tf -10 0 0 10 186.9492 196.63 Tm -(Foo?)Tj -/TT8 1 Tf -9 0 0 9 210.9531 196.63 Tm -( and items )Tj -/TT10 1 Tf -10 0 0 10 254.5645 196.63 Tm -(YES)Tj -/TT8 1 Tf -9 0 0 9 272.5674 196.63 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 292.3032 196.63 Tm -(NO)Tj -/TT8 1 Tf -9 0 0 9 304.3052 196.63 Tm -( centered in a single vertical column:)Tj -ET -q -31 0 0 -35 258.01 186.13 cm -/Im15 Do -Q -BT -9 0 0 9 78 130.63 Tm -0.06 Tw -(The strings following the )Tj -/TT10 1 Tf -10 0 0 10 182.1219 130.63 Tm -0 Tw -(YES)Tj -/TT8 1 Tf -9 0 0 9 200.1248 130.63 Tm -0.06 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 220.9407 130.63 Tm -0 Tw -(NO)Tj -/TT8 1 Tf -9 0 0 9 232.9426 130.63 Tm -0.06 Tw -[( are help strings and will be printed if the cursor remains over)]TJ --17.2159 -1.3278 TD -0.0178 Tw -[(one of the items for a period of time. This menu differs from the one above in that it distinquishes the)]TJ -/TT10 1 Tf -10 0 0 10 78 107.63 Tm -0 Tw -(NO)Tj -/TT8 1 Tf -9 0 0 9 90.0019 107.63 Tm -0.1144 Tw -[( case from the case where the user clicked outside of the menu. If the user clicks outside of the)]TJ --1.3336 -1.3333 TD -0 Tw -(menu, )Tj -/TT10 1 Tf -10 0 0 10 105.4219 95.63 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 123.4248 95.63 Tm -( is returned.)Tj --5.0472 -2.8833 TD -[(Example:)-1202.5(A multi-column menu:)]TJ -/TT10 1 Tf -10 0 0 10 162 53.63 Tm -(\(create MENU ITEMS )Tj -/TT15 1 Tf -11.4019 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(1 2 3 4 5 6 7 8 9 * 0 #\))Tj --12.3887 -1 TD -( CENTERFLG )Tj -/TT15 1 Tf -13.8022 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T)Tj -ET -endstream -endobj -153 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/XObject << -/Im14 154 0 R -/Im15 155 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -158 0 obj -<< -/Length 4871 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-42)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -11.4 -4.251 TD -( MENUCOLUMNS )Tj -/TT15 1 Tf -15.0024 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 3)Tj --15.9893 -1 TD -( MENUFONT )Tj -/TT15 1 Tf -13.2021 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(FONTCREATE MODERN 10 BOLD\))Tj --14.189 -1 TD -( ITEMHEIGHT )Tj -/TT15 1 Tf -14.4023 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 15)Tj --15.3892 -1 TD -( ITEMWIDTH )Tj -/TT15 1 Tf -13.8022 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( 15)Tj --14.7891 -1 TD -( CHANGEOFFSETFLG )Tj -/TT15 1 Tf -17.4028 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T\))Tj -/TT8 1 Tf -9 0 0 9 126 505.54 Tm -0.0667 Tw -(Creates a touch-tone-phone number pad with the items in 15 by 15 boxes printed in Modern 10 bold)Tj -0 -1.2222 TD -0 Tw -(font:)Tj -ET -q -47 0 0 -62 306.01 484.99 cm -/Im16 Do -Q -BT -9 0 0 9 126 402.54 Tm -0.0389 Tw -[(If used in pop up mode, its first use will have the cursor in the middle. Subsequent use will have the)]TJ -T* -0 Tw -(cursor in the same relative location as the previous selection.)Tj -0 -2.7778 TD -[(Example:)-1202.5(A program using a previously-saved menu:)]TJ -/TT10 1 Tf -10 0 0 10 210 350.49 Tm -(\(SELECTQ [MENU)Tj -0 -1 TD -( \(COND \(\(type? MENU FOOMENU\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/TT17 1 Tf -5.2788 0 TD -(\()Tj -/F3 1 Tf -0.333 0 TD -(* use previously computed menu)Tj -/TT17 1 Tf -14.793 0 TD -(.\))Tj -/TT10 1 Tf --20.4048 -0.877 TD -( FOOMENU\))Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/TT10 1 Tf -4.4453 0 TD -(\(T)Tj -/TT4 1 Tf -1.2002 0 TD -( )Tj -/TT17 1 Tf -0.2778 0 TD -(\()Tj -/F3 1 Tf -0.333 0 TD -(* create and save the menu)Tj -/TT17 1 Tf -12.331 0 TD -(\))Tj -/TT10 1 Tf --18.5873 -1 TD -( \(SETQ FOOMENU)Tj -T* -( \(create MENU)Tj -1.2 -1 TD -( ITEMS )Tj -/TT15 1 Tf -9.6016 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(\(A A-SELECTED "prompt string)Tj --10.5884 -1.2 TD -(for A"\))Tj --1.2 -1.2 TD -( \(B B-SELECTED "prompt string for B"])Tj -/TT4 1 Tf -0 -1.129 TD -( )Tj -/TT10 1 Tf -2.5005 0 TD -(\(A-SELECTED)Tj -/TT4 1 Tf -6.6011 0 TD -( )Tj -/TT17 1 Tf -0.5557 0 TD -(\()Tj -/F3 1 Tf -0.333 0 TD -(* if A is selected)Tj -/TT17 1 Tf -7.275 0 TD -(\))Tj -/TT4 1 Tf -0.333 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -(\(DOATHING\)\))Tj -/TT4 1 Tf --17.8761 -1.129 TD -( )Tj -/TT10 1 Tf -2.5005 0 TD -(\(B-SELECTED)Tj -/TT4 1 Tf -6.6011 0 TD -( )Tj -/TT17 1 Tf -0.5557 0 TD -(\()Tj -/F3 1 Tf -0.333 0 TD -(* if B is selected)Tj -/TT17 1 Tf -7.293 0 TD -(\))Tj -/TT4 1 Tf -0.333 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -(\(DOBTHING\)\))Tj -/TT4 1 Tf --17.8941 -1.129 TD -( )Tj -/TT10 1 Tf -2.2227 0 TD -( \(PROGN )Tj -/TT17 1 Tf -4.8008 0 TD -(\()Tj -/F3 1 Tf -0.333 0 TD -(* user selected outside the menu)Tj -/TT17 1 Tf -14.606 0 TD -(\))Tj -/TT4 1 Tf -0.333 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD -(NIL\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 197.27 Tm -0.0256 Tw -(This expression displays a pop up menu with two items, )Tj -/TT10 1 Tf -10 0 0 10 355.4182 197.27 Tm -0 Tw -(A)Tj -/TT8 1 Tf -9 0 0 9 361.4191 197.27 Tm -0.0256 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 381.615 197.27 Tm -0 Tw -(B)Tj -/TT8 1 Tf -9 0 0 9 387.616 197.27 Tm -0.0256 Tw -(, and waits for the user to select one.)Tj --29.0684 -1.3333 TD -0 Tw -(If )Tj -/TT10 1 Tf -10 0 0 10 135.6893 185.27 Tm -(A)Tj -/TT8 1 Tf -9 0 0 9 141.6903 185.27 Tm -0.1567 Tw -[( is selected, )]TJ -/TT10 1 Tf -10 0 0 10 193.1483 185.27 Tm -0 Tw -(DOATHING)Tj -/TT8 1 Tf -9 0 0 9 241.1561 185.27 Tm -0.1567 Tw -[( is called. If )]TJ -/TT10 1 Tf -10 0 0 10 297.7105 185.27 Tm -0 Tw -(B)Tj -/TT8 1 Tf -9 0 0 9 303.7115 185.27 Tm -0.1567 Tw -[( is selected, )]TJ -/TT10 1 Tf -10 0 0 10 355.1695 185.27 Tm -0 Tw -(DOBTHING)Tj -/TT8 1 Tf -9 0 0 9 403.1773 185.27 Tm -0.1567 Tw -[( is called. If neither of these is)]TJ --30.7975 -1.3333 TD -0 Tw -(selected, the form returns )Tj -/TT10 1 Tf -10 0 0 10 229.7768 173.27 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 247.7798 173.27 Tm -(.)Tj --13.5311 -2.8833 TD -0.0722 Tw -[(The purpose of this example is to show some good practices to follow when using menus. First, the)]TJ -0 -1.2278 TD -0.0533 Tw -(menu is only created once, and saved in the variable )Tj -/TT10 1 Tf -10 0 0 10 341.197 136.27 Tm -0 Tw -(FOOMENU)Tj -/TT8 1 Tf -9 0 0 9 383.2038 136.27 Tm -0.0533 Tw -[(. This is more efficient if the menu is)]TJ --28.5782 -1.3278 TD -0.0022 Tw -(used more than once. Second, all of the information about the menu is kept in one place, which makes)Tj -0 -1.2222 TD -0.0356 Tw -[(it easy to understand and edit. Third, the forms evaluated as a result of selecting something from the)]TJ -T* -0.0422 Tw -(menu are part of the code and hence will be known to masterscope \(as opposed to the situation if the)Tj -T* -0.0522 Tw -[(forms were stored as part of the items\). Fourth, the items in the menu have help strings for the user.)]TJ -T* -0 Tw -(Finally, the code is commented \(always worth the trouble\).)Tj -ET -endstream -endobj -159 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F3 18 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT15 76 0 R -/TT17 160 0 R ->> -/XObject << -/Im16 161 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -163 0 obj -<< -/Length 4355 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-43)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT4 1 Tf --35.4 -4.38 TD -(Free Menus)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 565.49 m -534.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 544.54 Tm -0.1733 Tw -[(Free Menus are powerful and flexible menus that are useful for )-5.6(applications needing menus with)]TJ -0 -1.2222 TD -0.0678 Tw -[(different types of items, including command items, state items, and items that can be edited. A Free)]TJ -T* -0.0522 Tw -(Menu is part of a window. It can can be opened and closed as desired, or attached as a control menu)Tj -T* -0 Tw -(to the application window.)Tj -/TT4 1 Tf -10 0 0 10 78 485.2 Tm -(Making a Free Menu)Tj -/TT8 1 Tf -9 0 0 9 78 460.54 Tm -0.0889 Tw -[(A Free Menu is built from a description of the contents and layout of the menu. As a Free Menu is)]TJ -T* -0.0556 Tw -[(simply a group of items, a Free Menu Description is simply a specification of a group of items. Each)]TJ -T* -0.1078 Tw -[(group has properties associated with it, as does each Free Menu Item. These properties specify the)]TJ -T* -0.0389 Tw -[(format of the items in the group, and the behavior of each item. The function )]TJ -/TT10 1 Tf -34.9704 0 TD -0 Tw -(FREEMENU)Tj -/TT8 1 Tf -4.8008 0 TD -0.0389 Tw -[( takes a Free)]TJ --39.7712 -1.2889 TD -0 Tw -(Menu Description, and returns a closed window with the Free Menu in it. )Tj -0 -2.7778 TD -0.07 Tw -(The easiest way to make a Free Menu is to define a specific function which calls )Tj -/TT10 1 Tf -36.474 0 TD -0 Tw -(FREEMENU)Tj -/TT8 1 Tf -4.8008 0 TD -0.07 Tw -[( with the)]TJ --41.2748 -1.2889 TD -0.08 Tw -(Free Menu Description in the function. This function can then also set up the Free Menu window as)Tj -0 -1.2222 TD -0.0089 Tw -[(required by the application. The Free Menu Description is saved as part of the specific function when)]TJ -T* -0.0667 Tw -[(the application is saved. Alternately, the Free Menu Description can be saved as a variable in your)]TJ -T* -0.0001 Tc -0.001 Tw -(file; then just call )Tj -/TT10 1 Tf -7.9816 0 TD -0 Tc -0 Tw -(FREEMENU)Tj -/TT8 1 Tf -4.8008 0 TD -0.0011 Tw -( with the name of the variable. This may be a more difficult alternative if)Tj --12.7824 -1.2889 TD -0 Tw -(the backquote facility is used to build the Free Menu Description.)Tj -/TT4 1 Tf -10 0 0 10 78 308.4 Tm -(Free Menu Formatting)Tj -/TT8 1 Tf -9 0 0 9 78 271.74 Tm -0.0344 Tw -[(A Free Menu can be formatted in one of four ways. The items in any group can be automatically laid)]TJ -0 -1.2222 TD -0.0122 Tw -[(out in rows, in columns, or in a table, or else the application can specify the exact location of each item)]TJ -T* -0.1067 Tw -[(in the group. Free Menu keeps track of the region that a group of items occupies, and items can be)]TJ -T* -0.2 Tw -(justified within that region. This way an item can be automatically positioned at one of the nine)Tj -T* -0 Tw -(justification locations, top-left, top-center, top-right, middle-left, etc.)Tj -/TT4 1 Tf -10 0 0 10 78 201.4 Tm -(Free Menu Description)Tj -/TT8 1 Tf -9 0 0 9 78 176.74 Tm -0.0056 Tw -[(A Free Menu Description, specifying a group of items, is a list structure. The first entry in the list is an)]TJ -T* -0 Tw -(optional list of the properties for this group of items. This entry is in the form: )Tj -/TT10 1 Tf -0 -2.7111 TD -(\(PROPS ...\) )Tj -/TT8 1 Tf -0 -2.8444 TD -(The keyword )Tj -/TT10 1 Tf -6.1509 0 TD -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -( determines whether or not the optional group properties list is specified.. )Tj --9.1514 -2.8444 TD -0.0467 Tw -(One important group property is )Tj -/TT10 1 Tf -15.0961 0 TD -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0467 Tw -[(. The four types of formatting, )]TJ -/TT10 1 Tf -14.1309 0 TD -0.1111 Tw -(ROW, TABLE, COLUMN)Tj -/TT8 1 Tf -11.024 0 TD -0.0467 Tw -(, or)Tj -/TT10 1 Tf --43.8516 -1.2889 TD -0 Tw -(EXPLICIT)Tj -/TT8 1 Tf -4.8008 0 TD -0.1422 Tw -(, determine the syntax of the rest of the Free Menu Description. When using )Tj -/TT10 1 Tf -35.7348 0 TD -0 Tw -(EXPLICIT)Tj -/TT8 1 Tf --40.5356 -1.2889 TD -0.1744 Tw -[(formatting, the rest of the description is any number of Item Descriptions which have )]TJ -/TT10 1 Tf -40.8095 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -[( and)]TJ -/TT10 1 Tf --43.2099 -1.2889 TD -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -( properties specifying the position of the item in the menu. The syntax is:)Tj -ET -endstream -endobj -164 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -166 0 obj -<< -/Length 3889 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-44)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 126 570.14 Tm -(\(\(PROPS FORMAT EXPLICIT ...\))Tj -0 -1.2222 TD -( )Tj -T* -( ...\))Tj -/TT8 1 Tf -0 -2.8444 TD -0.0533 Tw -(When using )Tj -/TT10 1 Tf -5.7058 0 TD -0 Tw -(ROW)Tj -/TT8 1 Tf -1.8003 0 TD -0.0533 Tw -[( or )]TJ -/TT10 1 Tf -1.5476 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0533 Tw -[( formatting, the rest of the description is any number of item groups, each)]TJ --12.0542 -1.2889 TD -0.1356 Tw -[(group corresponding to a row in the menu. These groups are identical in syntax to an )]TJ -/TT10 1 Tf -40.5335 0 TD -0 Tw -(EXPLICIT)Tj -/TT8 1 Tf --40.5335 -1.2889 TD -0.0256 Tw -(group description. The groups have an optional )Tj -/TT10 1 Tf -21.5597 0 TD -0 Tw -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0256 Tw -[( list and any number of Item Descriptions. The)]TJ --24.5602 -1.2889 TD -0.0833 Tw -(items need not have )Tj -/TT10 1 Tf -9.4671 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0833 Tw -[( and )]TJ -/TT10 1 Tf -2.3595 0 TD -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -0.0833 Tw -[( properties, as the location of each item is determined by the)]TJ --17.8276 -1.2889 TD -0.0189 Tw -[(formatter. However, the order of the rows and items is important. The menu is laid out top to bottom)]TJ -0 -1.2222 TD -0 Tw -(by row, and left to right within each row. The syntax is:)Tj -/TT10 1 Tf -0 -4.0444 TD -[(\(\(PROPS FORMAT ROW ...\))-3531.1(; props of this group)]TJ -0 -1.2222 TD -[( \()-5331.4(; items in first row)]TJ -T* -( ...\))Tj -T* -[( \(\(PROPS ...\))-8932(; props of second row)]TJ -T* -[( )-4731.3(; items in second row)]TJ -T* -( ...\)\))Tj -/TT8 1 Tf -0 -2.8444 TD -(\(The comments above only describe the syntax.\))Tj -0 -2.7778 TD -(For )Tj -/TT10 1 Tf -1.8837 0 TD -(COLUMN)Tj -/TT8 1 Tf -3.6006 0 TD -0.1367 Tw -[( formatting, the syntax is identical to that of )]TJ -/TT10 1 Tf -20.7749 0 TD -0 Tw -(ROW)Tj -/TT8 1 Tf -1.8003 0 TD -0.1367 Tw -[( formatting. However, each group of)]TJ --28.0595 -1.2889 TD -0.0756 Tw -[(items corresponds to a column in the menu, rather than a row. The menu is laid out left to right by)]TJ -0 -1.2222 TD -0 Tw -(column, top to bottom within each column. )Tj -0 -2.7778 TD -0.0644 Tw -[(Finally, a Free Menu Description can have recursively nested groups. Anywhere the description can)]TJ -0 -1.2222 TD -0.0056 Tw -(take an Item Description, it can take a group, marked by the keyword )Tj -/TT10 1 Tf -31.0463 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.0051 Tw -[(. A nested group inherits)]TJ --34.0468 -1.2889 TD -0.2544 Tw -[(all of the properties of its mother group, by default. However, any of these properties can be)]TJ -0 -1.2222 TD -0 Tw -(overridden in the nested groups )Tj -/TT10 1 Tf -14.4897 0 TD -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -( list, including the )Tj -/TT10 1 Tf -8.2202 0 TD -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -(. The syntax is:)Tj -/TT10 1 Tf --29.311 -1.2222 TD -[(\()-8733.2(;)0( no PROPS list, default row format)]TJ -T* -[(\()-5931.5(; first in row)]TJ -T* -[(\(GROUP)-5732.7(; nested group, second in row)]TJ -T* -[( \(PROPS FORMAT COLUMN ...\))-530.6(; optional props)]TJ -T* -[( \( ...\))-1130.7(; first column)]TJ -T* -( \( ...\)\))Tj -T* -[( \)\))-2931(; third in row)]TJ -/TT8 1 Tf -0 -2.8444 TD -0.1 Tw -(Here is an example of a simple Free Menu Description for a menu which might provide access to a)Tj -0 -1.2222 TD -0 Tw -(simple data base:)Tj -/TT10 1 Tf -10 0 0 10 126 91.29 Tm -(\(\(\(LABEL LOOKUP SELECTEDFN MYLOOKUPFN\) )Tj -0 -1.2 TD -( \(LABEL EXIT SELECTEDFN MYEXITFN\)\))Tj -T* -( \(\(LABEL Name: TYPE DISPLAY\) \(LABEL "" TYPE EDIT ID NAME\)\))Tj -T* -( \(\(LABEL Address: TYPE DISPLAY\) \(LABEL "" TYPE EDIT ID ADDRESS\)\))Tj -T* -( \(\(LABEL Phone: TYPE DISPLAY\))Tj -ET -endstream -endobj -167 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -169 0 obj -<< -/Length 2543 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-45)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --33 -4.251 TD -( \(LABEL "" TYPE EDIT LIMITCHARS MYPHONEP ID PHONE\)\)\))Tj -/TT8 1 Tf -9 0 0 9 78 543.54 Tm -0.1378 Tw -(This menu has two command buttons, LOOKUP and EXIT, and three edit fields, with IDs NAME,)Tj -0 -1.2222 TD -0.1056 Tw -[(PHONE, and ADDRESS. The Edit items are initialized to the empty string, as in this example they)]TJ -T* -0.0544 Tw -[(need no other initial value. The user could select the Name: prompt, type a persons name, and then)]TJ -T* -0.0056 Tw -[(press the LOOKUP button. The function )]TJ -/TT10 1 Tf -18.6128 0 TD -0 Tw -(MYLOOKUPFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0056 Tw -[( would be called. That function would look at)]TJ --24.6138 -1.2889 TD -0.3256 Tw -[(the NAME Edit item, look up that name in the data base, and fill in the rest of the fields)]TJ -0 -1.2222 TD -0.0467 Tw -[(appropriately. The PHONE item has )]TJ -/TT10 1 Tf -16.9353 0 TD -0 Tw -(MYPHONEP)Tj -/TT8 1 Tf -4.8008 0 TD -0.0467 Tw -[( as a )]TJ -/TT10 1 Tf -2.3151 0 TD -0 Tw -(LIMITCHARS)Tj -/TT8 1 Tf -6.001 0 TD -0.0467 Tw -[( function. This function would be)]TJ --30.0521 -1.2889 TD -0.1411 Tw -[(called when editing the phone number, in order to restrict input to a valid phone number. After)]TJ -0 -1.2222 TD -0 Tw -(looking up Perry, the Free Menu might look like:)Tj -ET -q -147 0 0 -49.5 208.51 446.79 cm -/Im17 Do -Q -BT -9 0 0 9 78 349.84 Tm -(Here is a more complicated example:)Tj -/TT10 1 Tf -10 0 0 10 78 312.79 Tm -(\(\(PROPS FONT \(MODERN 10\)\))Tj -0 -1.2 TD -( \(\(LABEL Example FONT \(MODERN 10 BOLD\) HJUSTIFY CENTER\)\))Tj -T* -( \(\(LABEL NORTH\) \(LABEL SOUTH\) \(LABEL EAST\) \(LABEL WEST\)\))Tj -T* -( \(\(PROPS ID ROW3 BOX 1\))Tj -T* -( \(LABEL ONE\) \(LABEL TWO\) \(LABEL THREE\)\))Tj -T* -( \(\(PROPS ID ROW4\))Tj -T* -( \(LABEL ONE ID ALPHA\))Tj -T* -( \(GROUP \(PROPS FORMAT COLUMN BACKGROUND 23130 BOX 2 BOXSPACE 4\))Tj -T* -0.138 Tw -[( \(\(TYPE NWAY LABEL A BOX 1 COLLECTION COL1 NWAYPROPS \(DESELECT)]TJ -T* -0 Tw -(T\)\) )Tj -T* -( \(TYPE NWAY LABEL B BOX 1 COLLECTION COL1\))Tj -T* -( \(TYPE NWAY LABEL C BOX 1 COLLECTION COL1\)\))Tj -9 0 0 9 78 168.79 Tm -( )Tj -10 0 0 10 115.8062 168.79 Tm -( \(\(TYPE STATE LABEL "Choose Me" BOX 1 MENUITEMS \(BRAVO DELTA\))Tj --3.7806 -1.2 TD -( INITSTATE DELTA LINKS \(DISPLAY \(GROUP ALPHA\)\)\))Tj -T* -( \(TYPE DISPLAY ID ALPHA LABEL "" BOX 1 MAXWIDTH 35\)\)\))Tj -T* -( \(LABEL THREE\)\)\))Tj -/TT8 1 Tf -9 0 0 9 78 106.84 Tm -(which will produce the following Free Menu:)Tj -ET -endstream -endobj -170 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/XObject << -/Im17 171 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -173 0 obj -<< -/Length 2531 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-46)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -ET -q -126 0 0 -88.5 267.01 575.99 cm -/Im18 Do -Q -BT -/TT8 1 Tf -9 0 0 9 126 440.04 Tm -(And if the Free Menu were formatted as a Table, instead of in Rows, it would look like:)Tj -ET -q -171 0 0 -88.5 244.51 421.49 cm -/Im19 Do -Q -BT -9 0 0 9 126 283.54 Tm -0.0078 Tw -[(The following breakdown of the example explains how each part contributes to the Free Menu shown)]TJ -0 -1.2222 TD -0 Tw -(above.)Tj -/TT10 1 Tf -10 0 0 10 126 254.49 Tm -(\(PROPS FONT \(MODERN 10\)\) )Tj -/TT8 1 Tf -9 0 0 9 174 235.54 Tm -0.2867 Tw -[(This line specifies the properties of the group that is the entire Free Menu. These)]TJ -T* -0.0744 Tw -[(properties are described in Section 28.7.4, Free Menu Group Properties. In this example,)]TJ -T* -0 Tw -(all items in the Free Menu, unless otherwise specified, will be in Modern 10.)Tj -/TT10 1 Tf -10 0 0 10 126 195.49 Tm -(\(\(LABEL Example FONT \(MODERN 10 BOLD\) HJUSTIFY CENTER\)\) )Tj -/TT8 1 Tf -9 0 0 9 174 176.54 Tm -0.1689 Tw -[(This line of the Free Menu Description describes the first row of the menu. Since the)]TJ -/TT10 1 Tf -T* -0 Tw -(FORMAT)Tj -/TT8 1 Tf -3.6006 0 TD -0.0311 Tw -[( specification of a Free Menu is, by default,)]TJ -/TT10 1 Tf -19.1659 0 TD -0.0756 Tw -[( ROW)]TJ -/TT8 1 Tf -2.4759 0 TD -0.0311 Tw -[( formatting, this line sets the first)]TJ --25.2424 -1.2889 TD -0.0267 Tw -[(row in the menu. If the menu were in )]TJ -/TT10 1 Tf -17.2628 0 TD -0 Tw -(COLUMN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0267 Tw -[( formatting, this position in the description)]TJ --20.8633 -1.2889 TD -0 Tw -(would specify the first column in the menu.)Tj -0 -2 TD -0.2022 Tw -[(In this example the first row contains only one item. The item is, by default, a type)]TJ -/TT10 1 Tf -0 -1.2944 TD -0 Tw -(MOMENTARY )Tj -/TT8 1 Tf -6.2221 0 TD -0.0922 Tw -[(item. It has its own Font declaration )]TJ -/TT10 1 Tf -10 0 0 10 387.1026 112.69 Tm -0.222 Tw -(\(FONT \(MODERN 10 BOLD\)\))Tj -/TT8 1 Tf -9 0 0 9 531.785 112.69 Tm -0 Tw -(,)Tj --39.7539 -1.3278 TD -(that overrides the font specified for the Free Menu as a whole, so the item appears bolded. )Tj -0 -2 TD -0.0367 Tw -[(Finally, the item is justified, in this case centered. The )]TJ -/TT10 1 Tf -24.4589 0 TD -0 Tw -(HJUSTIFY)Tj -/TT8 1 Tf -4.8008 0 TD -0.0367 Tw -[( Item Property indicates)]TJ --29.2597 -1.2889 TD -0 Tw -(that the item is to be centered horizontally within its row.)Tj -/TT10 1 Tf -10 0 0 10 126 53.09 Tm -(\(\(LABEL NORTH\) \(LABEL SOUTH\) \(LABEL EAST\) \(LABEL WEST\)\) )Tj -ET -endstream -endobj -174 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/XObject << -/Im18 175 0 R -/Im19 176 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -178 0 obj -<< -/Length 4831 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-47)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.1544 Tw -[(This line specifies the second row of the menu. The second row has four very simple)]TJ -0 -1.2278 TD -0 Tw -(items, labeled )Tj -/TT10 1 Tf -10 0 0 10 183.2124 558.49 Tm -(NORTH)Tj -/TT8 1 Tf -9 0 0 9 213.2173 558.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 217.7173 558.49 Tm -(SOUTH)Tj -/TT8 1 Tf -9 0 0 9 247.7221 558.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 252.2221 558.49 Tm -(EAST)Tj -/TT8 1 Tf -9 0 0 9 276.226 558.49 Tm -(, and )Tj -/TT10 1 Tf -10 0 0 10 298.2119 558.49 Tm -(WEST)Tj -/TT8 1 Tf -9 0 0 9 322.2158 558.49 Tm -( next to each other within the same row. )Tj -/TT10 1 Tf -10 0 0 10 78 539.49 Tm -(\(\(PROPS ID ROW3 BOX 1\))Tj -0 -1.2 TD -( \(LABEL ONE\) \(LABEL TWO\) \(LABEL THREE\)\) )Tj -/TT8 1 Tf -9 0 0 9 126 508.54 Tm -0.1189 Tw -(The third row in the menu is similar to the second row, except that it has a box drawn)Tj -0 -1.2278 TD -0.2478 Tw -[(around it. The box is specified in the )]TJ -/TT10 1 Tf -10 0 0 10 295.2072 497.49 Tm -0 Tw -(PROPS)Tj -/TT8 1 Tf -9 0 0 9 325.2121 497.49 Tm -0.2478 Tw -[( declaration for this row. Rows \(and)]TJ --22.1347 -1.3278 TD -0.1844 Tw -(columns\) are just like Groups in that the first thing in the declaration can be a list of)Tj -0 -1.2278 TD -0.1578 Tw -[(properties for that row. In this case the row is named by giving it an )]TJ -/TT10 1 Tf -10 0 0 10 423.5847 474.49 Tm -0 Tw -(ID)Tj -/TT8 1 Tf -9 0 0 9 435.5867 474.49 Tm -0.1578 Tw -[( property of)]TJ -/TT10 1 Tf -10 0 0 10 126 462.49 Tm -0 Tw -(ROW3)Tj -/TT8 1 Tf -9 0 0 9 150.0039 462.49 Tm -0.0422 Tw -[(. It is useful to name your groups if you want to be able to access and modify their)]TJ --2.6671 -1.3278 TD -0.1644 Tw -(properties later \(via the function)Tj -/TT10 1 Tf -14.9693 0 TD -0.3944 Tw -[( FM.GROUPPROP)]TJ -/TT8 1 Tf -8.1957 0 TD -0.1644 Tw -[(\). It is boxed by specifying the )]TJ -/TT10 1 Tf -15.0339 0 TD -0 Tw -(BOX)Tj -/TT8 1 Tf --38.1989 -1.2889 TD -(property with a value of 1, meaning draw the box one dot wide. )Tj -/TT10 1 Tf -10 0 0 10 78 420.89 Tm -( \(\(PROPS ID ROW4\))Tj -0 -1.2 TD -( \(LABEL ONE ID ALPHA\))Tj -T* -( \(GROUP \(PROPS FORMAT COLUMN BACKGROUND 23130 BOX 2 BOXSPACE 4\))Tj -T* -( \(\(TYPE NWAY LABEL A BOX 1 COLLECTION COL1 NWAYPROPS \(DESELECT T\)\) )Tj -T* -( \(TYPE NWAY LABEL B BOX 1 COLLECTION COL1\))Tj -T* -( \(TYPE NWAY LABEL C BOX 1 COLLECTION COL1\)\))Tj -T* -( \(\(TYPE STATE LABEL "Choose Me" BOX 1 MENUITEMS \(BRAVO DELTA\))Tj -T* -( INITSTATE DELTA LINKS \(DISPLAY \(GROUP ALPHA\)\)\))Tj -T* -( \(TYPE DISPLAY ID ALPHA LABEL "" BOX 1 MAXWIDTH 35\)\)\))Tj -T* -( \(LABEL THREE\)\)\))Tj -/TT8 1 Tf -9 0 0 9 126 293.94 Tm -0.0211 Tw -[(This part of the description specifies the fourth row in the menu. This row consists of: an)]TJ -0 -1.2278 TD -0.1378 Tw -(item labelled )Tj -/TT10 1 Tf -10 0 0 10 182.2471 282.89 Tm -0 Tw -(ONE)Tj -/TT8 1 Tf -9 0 0 9 200.25 282.89 Tm -0.1378 Tw -(, a group of items, and an item labelled )Tj -/TT10 1 Tf -10 0 0 10 368.7474 282.89 Tm -0 Tw -(THREE)Tj -/TT8 1 Tf -9 0 0 9 398.7523 282.89 Tm -0.1378 Tw -[(. That is, Free Menu)]TJ --30.3058 -1.3278 TD -0.0933 Tw -(thinks of the group as an entry, and formats the rest of the row just as it it were a large)Tj -0 -1.2222 TD -0 Tw -(item. )Tj -/TT10 1 Tf -10 0 0 10 78 241.89 Tm -( \(GROUP \(PROPS FORMAT COLUMN BACKGROUND 23130 BOX 2 BOXSPACE 4\))Tj -0 -1.2 TD -( \(\(TYPE NWAY LABEL A BOX 1 COLLECTION COL1 NWAYPROPS \(DESELECT T\)\) )Tj -T* -( \(TYPE NWAY LABEL B BOX 1 COLLECTION COL1\))Tj -T* -( \(TYPE NWAY LABEL C BOX 1 COLLECTION COL1\)\))Tj -T* -( \(\(TYPE STATE LABEL "Choose Me" BOX 1 MENUITEMS \(BRAVO DELTA\))Tj -T* -( INITSTATE DELTA LINKS \(DISPLAY \(GROUP ALPHA\)\)\))Tj -T* -( \(TYPE DISPLAY ID ALPHA LABEL "" BOX 1 MAXWIDTH 35\)\)\) )Tj -/TT8 1 Tf -9 0 0 9 126 150.94 Tm -0.0056 Tw -[(The second part of this row is a nested group of items. It is declared as a group by placing)]TJ -0 -1.2278 TD -0.2511 Tw -(the keyword )Tj -/TT10 1 Tf -10 0 0 10 183.2983 139.89 Tm -0 Tw -(GROUP)Tj -/TT8 1 Tf -9 0 0 9 213.3032 139.89 Tm -0.2511 Tw -[( as the first word in the declaration. A group can be declared)]TJ --9.7004 -1.3278 TD -0.0289 Tw -(anywhere a Free Menu Description can take a Free Menu Item Description \(as opposed to)Tj -0 -1.2222 TD -0 Tw -(a row or column declaration\). )Tj -0 -2 TD -0.1378 Tw -(The first thing in what would have been the second item declaration in this row is the)Tj -0 -1.2278 TD -0 Tw -(keyword )Tj -/TT10 1 Tf -10 0 0 10 165.5034 87.89 Tm -(GROUP)Tj -/TT8 1 Tf -9 0 0 9 195.5083 87.89 Tm -0.1622 Tw -[(. Following this keyword comes a normal group description, starting)]TJ --7.7231 -1.3278 TD -0.1544 Tw -(with an optional list of properties, and followed by any number of things to go in the)Tj -0 -1.2222 TD -0 Tw -(group \(based on the format of the group\).)Tj -ET -endstream -endobj -179 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -181 0 obj -<< -/Length 4972 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-48)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(This groups Props declaration is: )Tj -/TT10 1 Tf -10 0 0 10 126 551.49 Tm -(\(PROPS FORMAT COLUMN BACKGROUND 23130 BOX 2 BOXSPACE 4\). )Tj -/TT8 1 Tf -9 0 0 9 174 532.54 Tm -0.0378 Tw -(It specifies that the group is to be formatted as a number of columns \(instead of rows, the)Tj -0 -1.2222 TD -0.08 Tw -[(default\). The entire group will have a background shade of 23130, and a box of width 2)]TJ -0 -1.2278 TD -0.1789 Tw -[(around it, as you can see in the sample menu. The )]TJ -/TT10 1 Tf -10 0 0 10 396.2639 510.49 Tm -0 Tw -(BOXSPACE)Tj -/TT8 1 Tf -9 0 0 9 444.2717 510.49 Tm -0.1789 Tw -[( declaration tells Free)]TJ --30.0302 -1.3278 TD -0.1944 Tw -(Menu to leave an extra four dots of room between the edge of the group \(ie the box)Tj -0 -1.2222 TD -0 Tw -(around the group\) and the items in the group. )Tj --5.3333 -2.8889 TD -(The first column of this group is a Collection of)Tj -/TT10 1 Tf -20.8433 0 TD -0.0007 Tc -0.0026 Tw -( NWAY)Tj -/TT8 1 Tf -3.0038 0 TD -0 Tc -0 Tw -( items:)Tj -/TT10 1 Tf -10 0 0 10 126 442.89 Tm -(\(\(TYPE NWAY LABEL A BOX 1 COLLECTION COL1 NWAYPROPS \(DESELECT T\)\) )Tj -0 -1.2 TD -( \(TYPE NWAY LABEL B BOX 1 COLLECTION COL1\))Tj -T* -( \(TYPE NWAY LABEL C BOX 1 COLLECTION COL1\)\))Tj -/TT8 1 Tf -9 0 0 9 174 399.94 Tm -0.02 Tw -(The three items, labelled A, B, and C are all declared as )Tj -/TT10 1 Tf -24.803 0 TD -0 Tw -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -[( items, and are also specified)]TJ --27.2034 -1.2889 TD -0.0778 Tw -(to belong to the same)Tj -/TT10 1 Tf -9.7354 0 TD -0.1867 Tw -[( NWAY)]TJ -/TT8 1 Tf -3.1872 0 TD -0.0778 Tw -[( Collection, Col1. This is how a number of )]TJ -/TT10 1 Tf -19.789 0 TD -0 Tw -(NWAY )Tj -/TT8 1 Tf -3.1872 0 TD -0.0778 Tw -(items are)Tj --35.8987 -1.2889 TD -0.1311 Tw -[(collected together. The property)]TJ -/TT10 1 Tf -14.9478 0 TD -0.3132 Tw -[( NWAYPROPS )]TJ -/TT8 1 Tf -7.2287 0 TD -0.1311 Tw -(\(DESELECT T\) on the first )Tj -/TT10 1 Tf -12.5325 0 TD -0 Tw -(NWAY )Tj -/TT8 1 Tf -3.3149 0 TD -(item)Tj --38.024 -1.2889 TD -0.1478 Tw -(specifies that the Col1 Collection is to have the Deselect property enabled. This simply)Tj -0 -1.2222 TD -0.0022 Tw -(means that the )Tj -/TT10 1 Tf -6.7459 0 TD -0 Tw -(NWAY )Tj -/TT8 1 Tf -3.0049 0 TD -0.0022 Tw -(collection can be put in the state where none of the items \(A, B, or C\))Tj --9.7509 -1.2889 TD -0.0511 Tw -[(are selected \(highlighted\). Additionally, each item is declared with a box whose width is)]TJ -0 -1.2222 TD -0 Tw -(one dot \(pixel\) around it.)Tj --5.3333 -2.8889 TD -(The second column in this nested group is specified by:)Tj -/TT10 1 Tf -10 0 0 10 126 287.49 Tm -(\(\(TYPE STATE LABEL "Choose Me" BOX 1 MENUITEMS \(BRAVO DELTA\))Tj -0 -1.2 TD -( INITSTATE DELTA LINKS \(DISPLAY \(GROUP ALPHA\)\)\))Tj -T* -( \(TYPE DISPLAY ID ALPHA LABEL "" BOX 1 MAXWIDTH 35\)\))Tj -/TT8 1 Tf -9 0 0 9 174 244.54 Tm -0.0467 Tw -(Column two contains two items, a )Tj -/TT10 1 Tf -15.6535 0 TD -0 Tw -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0467 Tw -[( item and a )]TJ -/TT10 1 Tf -5.3593 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0467 Tw -[( item. The)]TJ -/TT10 1 Tf -4.7928 0 TD -0.1111 Tw -[( STATE)]TJ -/TT8 1 Tf -3.7117 0 TD -0.0467 Tw -[( item is)]TJ --36.7185 -1.2889 TD -0.0722 Tw -[(labelled "Choose Me." A Label can be a string or a bitmap, as well as an atom. Selecting)]TJ -0 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6972 0 TD -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.06 Tw -[( item will cause a pop-up menu to appear with two choices for the state of the)]TJ --4.6977 -1.2944 TD -0 Tw -(item, )Tj -/TT10 1 Tf -10 0 0 10 197.601 210.29 Tm -(BRAVO)Tj -/TT8 1 Tf -9 0 0 9 227.6059 210.29 Tm -0.1433 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 249.9217 210.29 Tm -0 Tw -(DELTA)Tj -/TT8 1 Tf -9 0 0 9 279.9266 210.29 Tm -0.1433 Tw -[(. The items to go in the pop-up menu are designated by the)]TJ -/TT10 1 Tf --11.7696 -1.3278 TD -0 Tw -(MENUITEMS)Tj -/TT8 1 Tf -5.4009 0 TD -( property.)Tj --5.4009 -2.0667 TD -(The pop-up menu would look like:)Tj -ET -q -42.75 0 0 -26.25 306.01 157.19 cm -/Im20 Do -Q -BT -9 0 0 9 174 99.44 Tm -0.1033 Tw -(The initial state of the "Choose Me" item is designated to be )Tj -/TT10 1 Tf -10 0 0 10 423.4535 99.44 Tm -0 Tw -(DELTA)Tj -/TT8 1 Tf -9 0 0 9 453.4583 99.44 Tm -0.1033 Tw -[( by the )]TJ -/TT10 1 Tf -3.5566 0 TD -0 Tw -(INITSTATE)Tj -/TT8 1 Tf --34.6075 -1.3278 TD -0.0355 Tw -[(Item Property. The initial state can be anything; it does not have to be one of the items in)]TJ -0 -1.2222 TD -0 Tw -(the pop-up menu.)Tj -0 -2 TD -0.0744 Tw -(Next, the )Tj -/TT10 1 Tf -4.4384 0 TD -0 Tw -(STATE )Tj -/TT8 1 Tf -3.7795 0 TD -0.0744 Tw -(item is Linked to a )Tj -/TT10 1 Tf -8.818 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0744 Tw -[( item, so that the current state of the item)]TJ --21.2366 -1.2944 TD -0.0233 Tw -[(will be displayed in the Free Menu. The links name is )]TJ -/TT10 1 Tf -10 0 0 10 396.0005 46.84 Tm -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -9 0 0 9 438.0073 46.84 Tm -0.0233 Tw -[( \(a special link name for)]TJ -ET -endstream -endobj -182 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/XObject << -/Im20 183 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -185 0 obj -<< -/Length 5804 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-49)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf -9 0 0 9 126 569.49 Tm -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.2622 Tw -[( items\), and the item linked to is described by the Link Description, \()]TJ -/TT10 1 Tf -10 0 0 10 455.9432 569.49 Tm -0 Tw -(GROUP)Tj -/TT8 1 Tf -9 0 0 9 126 557.54 Tm -0.0278 Tw -[(ALPHA\). Normally the linked item can just be described by its ID. But in this case, there)]TJ -0 -1.2222 TD -0.0622 Tw -(is more than one item whose ID is ALPHA \(for the sake of this example\), specifically the)Tj -T* -0.0433 Tw -[(first item in the fourth row and the display item in this nested group. The form \(GROUP)]TJ -T* -0.0356 Tw -(ALPHA\) tells Free Menu to search for an item whose ID is ALPHA, limiting the search to)Tj -T* -0.0289 Tw -[(the items that are within this lexical group. The lexical group is the smallest group that is)]TJ -T* -0.1467 Tw -(declared with the )Tj -/TT10 1 Tf -8.42 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.1467 Tw -[( keyword \(i.e., not row and column groups\) that contains this)]TJ --11.4205 -1.2889 TD -0.1167 Tw -[(item declaration. So in this case, Free Menu will link the)]TJ -/TT10 1 Tf -26.2243 0 TD -0.2789 Tw -[( STATE)]TJ -/TT8 1 Tf -3.8795 0 TD -0.1167 Tw -[( item to the )]TJ -/TT10 1 Tf -5.7049 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf --35.8087 -1.2889 TD -0.0989 Tw -(item, rather than the first item in the fourth row, since )Tj -/TT19 1 Tf -25.1596 0 TD -0 Tw -(that)Tj -/TT8 1 Tf -1.6099 0 TD -0.0989 Tw -[( item is outside of the nested)]TJ --26.7694 -1.2222 TD -0 Tw -(group. For further discussion of linking items, see Section 28.7.12, Free Menu Item Links. )Tj --5.3333 -2.8889 TD -(Now, establish the )Tj -/TT10 1 Tf -8.4683 0 TD -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -( item:)Tj -/TT10 1 Tf -10 0 0 10 78 423.69 Tm -(\(TYPE DISPLAY ID ALPHA LABEL "" BOX 1 MAXWIDTH 35\))Tj -/TT8 1 Tf -9 0 0 9 126 404.69 Tm -0.0633 Tw -(We have given it the )Tj -/TT10 1 Tf -10 0 0 10 212.8427 404.69 Tm -0 Tw -(ID)Tj -/TT8 1 Tf -9 0 0 9 224.8446 404.69 Tm -0.0633 Tw -[( of Alpha that the above)]TJ -/TT10 1 Tf -10.9622 0 TD -0.1461 Tw -[( STATE)]TJ -/TT8 1 Tf -3.7467 0 TD -0.0633 Tw -[( item uses in finding the proper)]TJ -/TT10 1 Tf --25.6916 -1.3278 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2 0 TD -0.0311 Tw -[( item to link to. This display item is used to display the current state of the item)]TJ --4.2 -1.2889 TD -0.0556 Tw -[("Choose Me." Every item is required to have a Label property specified, but the label for)]TJ -0 -1.2222 TD -0 Tw -(this )Tj -/TT10 1 Tf -1.8897 0 TD -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0167 Tw -[( item will depend on the state of "Choose Me." That is, when the state of the)]TJ --6.0904 -1.2944 TD -0.05 Tw -("Choose Me" item is changed from )Tj -/TT10 1 Tf -10 0 0 10 268.7141 358.49 Tm -0 Tw -(DELTA)Tj -/TT8 1 Tf -9 0 0 9 298.719 358.49 Tm -0.05 Tw -[( to )]TJ -/TT10 1 Tf -10 0 0 10 311.9677 358.49 Tm -0 Tw -(BRAVO)Tj -/TT8 1 Tf -9 0 0 9 341.9725 358.49 Tm -0.05 Tw -(, the label of the )Tj -/TT10 1 Tf -7.5176 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.05 Tw -[( item will)]TJ --35.7152 -1.3278 TD -0 Tw -(also change. The null string serves to hold the place for the changeable label.)Tj -0 -2 TD -0.1511 Tw -[(A box is specified for this item. Since the label is the empty string, Free Menu would)]TJ -0 -1.2222 TD -0.0156 Tw -[(draw a very small box. Instead, the )]TJ -/TT10 1 Tf -16.11 0 TD -0 Tw -(MAXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.0155 Tw -[( property indicates that the label, whatever)]TJ --20.9108 -1.2889 TD -0.0544 Tw -[(it becomes, will be limited to a stringwidth of 35. The width restriction of 35 was chosen)]TJ -0 -1.2222 TD -0.0144 Tw -[(because it is big enough for each of the possible labels for this display item. So Free Menu)]TJ -T* -0 Tw -(draws the box big enough to enclose any item within this width restriction. )Tj --5.3333 -2.8889 TD -(Finally we specify the final item in row four:)Tj -/TT10 1 Tf -10 0 0 10 78 230.89 Tm -(\(LABEL THREE\))Tj -/TT4 1 Tf --2.4 -4.329 TD -(Free Menu Group Properties)Tj -/TT8 1 Tf -9 0 0 9 78 164.94 Tm -0.1911 Tw -[(Each group has properties. Most group properties are relevant and should be set in the groups)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(PROPS )Tj -/TT8 1 Tf -3.6906 0 TD -0.0378 Tw -(list in the Free Menu Description. User properties can be freely included in the )Tj -/TT10 1 Tf -35.419 0 TD -0 Tw -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0378 Tw -[( list. A)]TJ --42.1101 -1.2889 TD -0 Tw -(few other properties are set up by the formatter. The macros )Tj -/TT10 1 Tf -27.3811 0 TD -(FM.GROUPPROP)Tj -/TT8 1 Tf -7.2 0 TD -( or )Tj -/TT10 1 Tf -1.4433 0 TD -(FM.MENUPROP)Tj -/TT8 1 Tf -6.6 0 TD -( allow)Tj --42.6244 -1.2889 TD -(access to group properties after the Free Menu is created.)Tj -/TT10 1 Tf -8.1333 -2 TD -(ID)Tj -/TT8 1 Tf -2.5333 0 TD -0.3189 Tw -[(The identifier of this group. Setting the group )]TJ -/TT10 1 Tf -23.4989 0 TD -0 Tw -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.3189 Tw -[( is desirable, for)]TJ --24.6991 -1.2889 TD -0.1733 Tw -(example, if the application needs to get handles on items in particular)Tj -0 -1.2222 TD -0 Tw -(groups, or access group properties.)Tj -/TT10 1 Tf --4.9333 -2 TD -(FORMAT)Tj -/TT8 1 Tf -4.9333 0 TD -(One of )Tj -/TT10 1 Tf -3.2261 0 TD -(ROW)Tj -/TT8 1 Tf -1.7995 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(COLUMN)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.4994 0 TD -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -(, or )Tj -/TT10 1 Tf -1.6906 0 TD -(EXPLICIT)Tj -/TT8 1 Tf -4.8008 0 TD -(. The default is )Tj -/TT10 1 Tf -7.0317 0 TD -(ROW)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf --31.6828 -2.0667 TD -(FONT)Tj -/TT8 1 Tf -3.7333 0 TD -0.4311 Tw -[(A font description of the form )]TJ -/TT10 1 Tf -16.7453 0 TD -1.0344 Tw -(\(FAMILY SIZE FACE\))Tj -/TT8 1 Tf -12.8706 0 TD -0.4311 Tw -(, or a)Tj -/TT10 1 Tf --29.616 -1.2889 TD -0 Tw -(FONTDESCRIPTOR)Tj -/TT8 1 Tf -8.4014 0 TD -0.0744 Tw -[( data type. This will be the default font for each item)]TJ -ET -endstream -endobj -186 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -189 0 obj -<< -/Length 4253 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-50)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 569.54 Tm -0.2411 Tw -[(in this group. The default font of the top group is the value of the)]TJ -0 -1.2222 TD -0 Tw -(variable )Tj -/TT10 1 Tf -3.8244 0 TD -(DEFAULTFONT)Tj -/TT8 1 Tf -6.6011 0 TD -(.)Tj -/TT10 1 Tf --18.3589 -2.0667 TD -(COORDINATES)Tj -/TT8 1 Tf -7.9333 0 TD -0.36 Tw -(One of )Tj -/TT10 1 Tf -3.9456 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.36 Tw -[( or )]TJ -/TT10 1 Tf -2.1606 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.36 Tw -[(. This property applies only to )]TJ -/TT10 1 Tf -16.3633 0 TD -0 Tw -(EXPLICIT)Tj -/TT8 1 Tf --27.8703 -1.2889 TD -0.03 Tw -[(formatting. If )]TJ -/TT10 1 Tf -6.4982 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.03 Tw -[(, the items in the)]TJ -/TT10 1 Tf -7.7003 0 TD -0.0711 Tw -[( EXPLICIT )]TJ -/TT8 1 Tf -6.1432 0 TD -0.03 Tw -(group are positioned)Tj --23.3422 -1.2889 TD -0.4867 Tw -(in coordinates relative to the lower left corner of the group, as)Tj -0 -1.2222 TD -0.0001 Tc -0.0021 Tw -(determined by the mother group. If )Tj -/TT10 1 Tf -16.2299 0 TD -0 Tc -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0021 Tw -(, which is the default, the items)Tj --18.6303 -1.2889 TD -0 Tc -0 Tw -(are positioned relative to the lower left corner of the menu.)Tj -/TT10 1 Tf --3.7333 -2 TD -(LEFT)Tj -/TT8 1 Tf -3.7333 0 TD -(Specifies a left offset for this group, pushing the group to the right.)Tj -/TT10 1 Tf --4.9333 -2.0667 TD -(BOTTOM)Tj -/TT8 1 Tf -4.9333 0 TD -(Specifies a bottom offset for this group, pushing the group up.)Tj -/TT10 1 Tf --6.1333 -2.0667 TD -(ROWSPACE)Tj -/TT8 1 Tf -6.1333 0 TD -(Specifies the number of dots between rows in this group.)Tj -/TT10 1 Tf --7.9333 -2.0667 TD -(COLUMNSPACE)Tj -/TT8 1 Tf -7.9333 0 TD -(Specifies the number of dots between columns in this group.)Tj -/TT10 1 Tf --3.1333 -2.0667 TD -(BOX)Tj -/TT8 1 Tf -3.1333 0 TD -(Specifies the number of dots in the box around this group of items.)Tj -/TT10 1 Tf --6.1333 -2.0667 TD -(BOXSHADE)Tj -/TT8 1 Tf -6.1333 0 TD -(Specifies the shade of the box.)Tj -/TT10 1 Tf --6.1333 -2.0667 TD -(BOXSPACE)Tj -/TT8 1 Tf -6.1333 0 TD -(Specifies the number of bits between the box and the items.)Tj -/TT10 1 Tf --7.3333 -2.0667 TD -(BACKGROUND)Tj -/TT8 1 Tf -7.3333 0 TD -0.3633 Tw -[(The background shade of this group. Nested groups inherit this)]TJ -0 -1.2889 TD -0.1878 Tw -(background shade, but items in this group and nested groups do not.)Tj -0 -1.2222 TD -0.0611 Tw -(This is because, in general, it is difficult to read text on a background, so)Tj -T* -0.0644 Tw -[(items appear on a white background by default. This can be overridden)]TJ -T* -0 Tw -(by the )Tj -/TT10 1 Tf -2.9966 0 TD -(BACKGROUND)Tj -/TT8 1 Tf -6.001 0 TD -( Item Property.)Tj -/TT4 1 Tf -10 0 0 10 102 258.4 Tm -(Other Group Properties)Tj -/TT8 1 Tf -9 0 0 9 126 234.74 Tm -0.1511 Tw -[(The following group properties are set up and maintained by Free Menu. The application should)]TJ -0 -1.2222 TD -0 Tw -(probably not change any of these properties.)Tj -/TT10 1 Tf -6.3333 -2 TD -(ITEMS)Tj -/TT8 1 Tf -4.3333 0 TD -(A list of the items in the group.)Tj -/TT10 1 Tf --4.9333 -2.0667 TD -(REGION)Tj -/TT8 1 Tf -4.9333 0 TD -(The region that is the extent of the items in the group.)Tj -/TT10 1 Tf --4.9333 -2.0667 TD -(MOTHER)Tj -/TT8 1 Tf -4.9333 0 TD -(The )Tj -/TT10 1 Tf -1.9238 0 TD -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -( of the group that is the mother of this group.)Tj -/TT10 1 Tf --10.4574 -2.0667 TD --0.0001 Tw -( DAUGHTERS)Tj -/TT8 1 Tf -7.3333 0 TD -0 Tw -(A list of )Tj -/TT10 1 Tf -3.7388 0 TD -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -( of groups which are daughters to this group.)Tj -/TT4 1 Tf -10 0 0 10 102 107 Tm -(Free Menu Items)Tj -/TT8 1 Tf -9 0 0 9 126 84.34 Tm -0.0511 Tw -(Each Free Menu Item is stored as an instance of the data type )Tj -/TT10 1 Tf -27.89 0 TD -0 Tw -(FREEMENUITEM)Tj -/TT8 1 Tf -7.2012 0 TD -0.0511 Tw -[(. Free Menu Items can)]TJ --35.0912 -1.2889 TD -0.1167 Tw -(be thought of as objects, each item having its own particular properties, such as its type, label, and)Tj -0 -1.2222 TD -0.0367 Tw -[(mouse event functions. A number of useful item types, described in Section 28.7.11, Predefined Item)]TJ -T* -0.1244 Tw -[(Types, are predefined by Free Menu. New types of items can be defined by the application, using)]TJ -ET -endstream -endobj -190 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -192 0 obj -<< -/Length 4252 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-51)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.0278 Tw -(Display items as a base. Each Free Menu Item is created from a Free Menu Item Description when the)Tj -0 -1.2222 TD -0 Tw -(Free Menu is created. )Tj -/TT10 1 Tf -8 -2 TD -(CAUTION: )Tj -/TT8 1 Tf -5.5709 0 TD -0.0711 Tw -[( Edit \(and thus Number\) Freemenu Items do not perform well)]TJ --2.2375 -1.2889 TD -0.1367 Tw -[(when boxed or when there is another item to the right in the same)]TJ -0 -1.2222 TD -0.0133 Tw -[(row. The display to the right of the edit item may be corrupted under)]TJ -T* -0 Tw -(editing and fm.changelabel operations.)Tj -/TT4 1 Tf -10 0 0 10 54 464.6 Tm -(Free Menu Item Descriptions )Tj -/TT8 1 Tf -9 0 0 9 78 441.94 Tm -0.1022 Tw -(A Free Menu Item Description is a list in property list format, specifying the properties of the item.)Tj -T* -0 Tw -(For example:)Tj -/TT10 1 Tf -10 0 0 10 126 412.89 Tm -(\(LABEL Refetch SELECTEDFN MY.REFETCHFN\))Tj -/TT8 1 Tf -9 0 0 9 78 386.94 Tm -0.0056 Tw -(describes a )Tj -/TT10 1 Tf -5.1107 0 TD -0 Tw -(MOMENTARY)Tj -/TT8 1 Tf -5.4009 0 TD -0.0056 Tw -[( item labelled Refetch, with the function )]TJ -/TT10 1 Tf -17.9515 0 TD -0 Tw -(MY.REFETCHFN)Tj -/TT8 1 Tf -7.2012 0 TD -0.0056 Tw -[( to be called when the)]TJ --35.6643 -1.2889 TD -0.02 Tw -[(item is selected. None of the property values in an item description are evaluated. When constructing)]TJ -0 -1.2222 TD -(Free Menu descriptions that incorporate evaluated expressions \(for example labels that are bitmaps\) it)Tj -T* -0.2022 Tw -[(is helpful to use the backquote facility. For instance, if the value of the variable )]TJ -/TT10 1 Tf -38.4099 0 TD -0 Tw -(MYBITMAP)Tj -/TT8 1 Tf -4.8008 0 TD -0.2022 Tw -[( is a)]TJ --43.2107 -1.2889 TD -0 Tw -(bitmap, then )Tj -/TT10 1 Tf -10 0 0 10 126 323.69 Tm -(\(FREEMENU \(\(\(LABEL A\) \(LABEL ,MYBITMAP\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 78 297.74 Tm -0.0556 Tw -(would create a Free Menu of one row, with two items in that row, the second of which has the value)Tj -0 -1.2222 TD -0 Tw -(of )Tj -/TT10 1 Tf -1.1289 0 TD -(MYBITMAP)Tj -/TT8 1 Tf -4.8008 0 TD -( as its label.)Tj -/TT4 1 Tf -10 0 0 10 78 259.8 Tm -(Free Menu Item Properties)Tj -/TT8 1 Tf -9 0 0 9 78 223.14 Tm -0.1056 Tw -[(The following Free Menu Item Properties can be set in the Item Description. Any other properties)]TJ -0 -1.2222 TD -0.0989 Tw -(given in an Item Description will be treated as user properties, and will be saved on the )Tj -/TT10 1 Tf -40.5302 0 TD -0 Tw -(USERDATA)Tj -/TT8 1 Tf --40.5302 -1.2889 TD -(property of the item.)Tj -/TT10 1 Tf -6.9333 -2 TD -(TYPE)Tj -/TT8 1 Tf -3.7333 0 TD -0.0378 Tw -[(The type of the item. Choose from one of the Free Menu Item type keywords)]TJ -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(MOMENTARY)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.7378 0 TD -(TOGGLE)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf -0.25 0 TD -0.57 Tw -[( 3STATE)]TJ -/TT8 1 Tf -5.9408 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.7378 0 TD -0.57 Tw -[( STATE)]TJ -/TT8 1 Tf -4.1706 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.7378 0 TD -0.57 Tw -[( NWAY)]TJ -/TT8 1 Tf -3.5705 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.7378 0 TD -(EDITSTART)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.7378 0 TD -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj -/TT10 1 Tf --34.4235 -1.2889 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -(, or)Tj -/TT10 1 Tf -1.4409 0 TD -( DISPLAY)Tj -/TT8 1 Tf -4.8008 0 TD -(. The default is )Tj -/TT10 1 Tf -7.0317 0 TD -(MOMENTARY)Tj -/TT8 1 Tf -5.4009 0 TD -(.)Tj -/TT10 1 Tf --26.6082 -2.0667 TD -(LABEL)Tj -/TT8 1 Tf -4.3333 0 TD -0.1156 Tw -[(An atom, string, or bitmap. Bitmaps are always copied, so that the original)]TJ -0 -1.2889 TD -0 Tw -(will not be changed. This property must be specified for every item.)Tj -/TT10 1 Tf --3.7333 -2 TD -(FONT)Tj -/TT8 1 Tf -3.7333 0 TD -0.0944 Tw -[(The font in which the item appears. The default is the font specified for the)]TJ -0 -1.2889 TD -0.1111 Tw -[(group containing this item. Can be a font description of the form )]TJ -/TT10 1 Tf -30.4708 0 TD -0 Tw -(\(FAMILY)Tj --30.4708 -1.2889 TD -(SIZE FACE\))Tj -/TT8 1 Tf -6.001 0 TD -(, or a )Tj -/TT10 1 Tf -2.4409 0 TD -(FONTDESCRIPTOR)Tj -/TT8 1 Tf -8.4014 0 TD -( data type.)Tj -/TT10 1 Tf --19.3766 -2.0667 TD -(ID)Tj -/TT8 1 Tf -2.5333 0 TD -(May be used to specify a unique identifier for this item, but is not necessary.)Tj -ET -endstream -endobj -193 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -196 0 obj -<< -/Length 5934 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-52)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 136.26 569.54 Tm -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(BOTTOM)Tj -/TT8 1 Tf -4.9334 0 TD -(When)Tj -/TT10 1 Tf -2.6431 0 TD -0.0811 Tw -[( ROW)]TJ -/TT8 1 Tf -2.4815 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5333 0 TD -(COLUMN)Tj -/TT8 1 Tf -3.6006 0 TD -0.0333 Tw -(, or)Tj -/TT10 1 Tf -1.4743 0 TD -0.0811 Tw -[( TABLE)]TJ -/TT8 1 Tf -3.6817 0 TD -0.0333 Tw -[( formatting, these specify offsets, pushing the)]TJ --14.4144 -1.2889 TD -0.0322 Tw -(item right and up, respectively, from where the formatter would have put the)Tj -0 -1.2222 TD -0.02 Tw -[(item. In )]TJ -/TT10 1 Tf -3.9579 0 TD -0 Tw -(EXPLICIT)Tj -/TT8 1 Tf -4.8008 0 TD -0.02 Tw -[( formatting, these are the actual coordinates of the item, in)]TJ --8.7587 -1.2889 TD -0 Tw -(the coordinate system given by the groups )Tj -/TT10 1 Tf -19.3213 0 TD -(COORDINATES)Tj -/TT8 1 Tf -6.6011 0 TD -( property.)Tj -/TT10 1 Tf --32.0557 -2.0667 TD -(HJUSTIFY)Tj -/TT8 1 Tf -6.1333 0 TD -0.1656 Tw -(Indicates horizontal justification type: )Tj -/TT10 1 Tf -18.0338 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6656 0 TD -(CENTER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1656 Tw -(, or )Tj -/TT10 1 Tf -2.022 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1656 Tw -[(. Specifies)]TJ --29.7229 -1.2889 TD -0.1989 Tw -(that this item is to be horizontally justified within the extent of its group.)Tj -0 -1.2222 TD -0.0478 Tw -(Note that the main group, as opposed to the smaller row or column group, is)Tj -T* -0 Tw -(used.)Tj -/TT10 1 Tf --6.1333 -2 TD -(VJUSTIFY)Tj -/TT8 1 Tf -6.1333 0 TD -0.0167 Tw -(Specifies that this item is to be vertically justified)Tj -/TT10 1 Tf -21.6856 0 TD -0 Tw -(. )Tj -/TT8 1 Tf -1.2413 0 TD -0.0167 Tw -[( Values are)]TJ -/TT10 1 Tf -4.9264 0 TD -0.0411 Tw -[( TOP)]TJ -/TT8 1 Tf -2.4415 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -0.5167 0 TD -(MIDDLE)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj --34.412 -1.2889 TD -(or )Tj -/TT10 1 Tf -1.1909 0 TD -(BOTTOM)Tj -/TT8 1 Tf -3.6006 0 TD -(. )Tj -/TT10 1 Tf --11.5248 -2.0667 TD -(HIGHLIGHT)Tj -/TT8 1 Tf -6.7333 0 TD -0.0067 Tw -(Specifies the highlighted looks of the item, that is, how the item changes when)Tj -0 -1.2889 TD -0.4789 Tw -[(a mouse event occurs on it. See Section 28.7.12, Free Menu Item)]TJ -0 -1.2222 TD -0 Tw -(Highlighting, for more details on highlighting. )Tj -/TT10 1 Tf --5.5333 -2 TD -(MESSAGE)Tj -/TT8 1 Tf -5.5333 0 TD -0.1489 Tw -(Specifies a string that will be printed in the prompt window after a mouse)Tj -0 -1.2889 TD -0.2467 Tw -(cursor selects this item for )Tj -/TT10 1 Tf -13.0327 0 TD -0 Tw -(MENUHELDWAIT)Tj -/TT8 1 Tf -7.2012 0 TD -0.2467 Tw -[( milliseconds. Or, if an atom,)]TJ --20.2338 -1.2889 TD -0.32 Tw -[(treated as a function to get the message. The function is passed three)]TJ -0 -1.2222 TD -0 Tw -(arguments, )Tj -/TT10 1 Tf -5.4069 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.6589 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1589 Tw -(, and )Tj -/TT10 1 Tf -2.7607 0 TD -0 Tw -(BUTTONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1589 Tw -[(, and should return a string. The)]TJ --19.0281 -1.2889 TD -0 Tw -(default is a message appropriate to the type of the item.)Tj -/TT10 1 Tf --6.7333 -2 TD -(INITSTATE)Tj -/TT8 1 Tf -6.7333 0 TD -0.1911 Tw -[(Specifies the initial state of the item. This is only appropriate to )]TJ -/TT10 1 Tf -30.8179 0 TD -0 Tw -(TOGGLE)Tj -/TT8 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --34.4185 -1.2889 TD -(3STATE)Tj -/TT8 1 Tf -3.6006 0 TD -(, and )Tj -/TT10 1 Tf -2.4429 0 TD -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -( items.)Tj -/TT10 1 Tf --15.1773 -2.0667 TD -(MAXWIDTH)Tj -/TT8 1 Tf -6.1333 0 TD -0.1555 Tw -[(Specifies the width allowed for this item. The formatter will leave enough)]TJ -0 -1.2889 TD -0 Tw -(space after the item for the item to grow to this width without collisions.)Tj -/TT10 1 Tf --6.7333 -2 TD -(MAXHEIGHT)Tj -/TT8 1 Tf -6.7333 0 TD -(Similar to )Tj -/TT10 1 Tf -4.5479 0 TD -(MAXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -(, but in the vertical dimension.)Tj -/TT10 1 Tf --12.482 -2.0667 TD -(BOX)Tj -/TT8 1 Tf -3.1333 0 TD -0.1822 Tw -[(Specifies the number of bits in the box around this item. Boxes are made)]TJ -0 -1.2889 TD -0 Tw -(around )Tj -/TT10 1 Tf -3.7535 0 TD -(MAXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.2667 Tw -[( and )]TJ -/TT10 1 Tf -2.7262 0 TD -0 Tw -(MAXHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.2667 Tw -[( dimensions. If unspecified, no box is)]TJ --16.6813 -1.2889 TD -0 Tw -(drawn.)Tj -/TT10 1 Tf --6.1333 -2 TD -(BOXSHADE)Tj -/TT8 1 Tf -6.1333 0 TD -(Specifies the shade that the box is drawn in. The default is )Tj -/TT10 1 Tf -26.1279 0 TD -(BLACKSHADE)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf --38.2622 -2.0667 TD -(BOXSPACE)Tj -/TT8 1 Tf -6.1333 0 TD -0.0244 Tw -[(Specifies the number of bits between the box and the label. The default is one)]TJ -0 -1.2889 TD -0 Tw -(bit.)Tj -/TT10 1 Tf --7.3333 -2 TD -(BACKGROUND)Tj -/TT8 1 Tf -7.3333 0 TD -0.1633 Tw -[(Specifies the background shade on which the item appears. The default is)]TJ -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(WHITESHADE)Tj -/TT8 1 Tf -6.001 0 TD -(, regardless of the groups background.)Tj -/TT10 1 Tf --10.3343 -2.0667 TD -(LINKS)Tj -/TT8 1 Tf -4.3333 0 TD -(Can be used to link this item to other items in the Free Menu.)Tj -/TT4 1 Tf -10 0 0 10 126 105.6 Tm -(Mouse Properties)Tj -/TT8 1 Tf -9 0 0 9 126 80.94 Tm -0.1389 Tw -(The following properties provide a way for application functions to be called under certain mouse)Tj -0 -1.2222 TD -0.2544 Tw -[(events. These functions are called with the)]TJ -/TT10 1 Tf -20.7538 0 TD -0.61 Tw -[( ITEM)]TJ -/TT8 1 Tf -3.6105 0 TD -0.2544 Tw -(, the )Tj -/TT10 1 Tf -2.6461 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2544 Tw -(, and the)Tj -/TT10 1 Tf -4.339 0 TD -0.61 Tw -[( BUTTONS)]TJ -/TT8 1 Tf -5.4108 0 TD -0.2544 Tw -[( passed as)]TJ --40.3607 -1.2889 TD -0.1167 Tw -[(arguments. These application functions do not interfere with any Free Menu system functions that)]TJ -0 -1.2222 TD -0.0489 Tw -[(take care of handling the different item types. In each case, though, the application function is called)]TJ -ET -endstream -endobj -197 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -199 0 obj -<< -/Length 4577 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-53)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.1378 Tw -[(after the system function. The default for all of these functions is )]TJ -/TT10 1 Tf -30.6979 0 TD -0 Tw -(NILL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1378 Tw -[(. The value of each of the)]TJ --33.0982 -1.2889 TD -[(following properties can be the name of a function, or a lambda expression.)-2382.1( )]TJ -/TT10 1 Tf -3.0833 -2 TD -0 Tw -(SELECTEDFN)Tj -/TT8 1 Tf -6.001 0 TD -0.0956 Tw -[( )-1236.8(Specifies the function to be called when this item is selected. The )]TJ -/TT10 1 Tf -31.806 0 TD -0 Tw -(Edit)Tj -/TT8 1 Tf -2.4004 0 TD -0.0956 Tw -[( and)]TJ -/TT10 1 Tf --32.6241 -1.2889 TD -0 Tw -(EditStart)Tj -/TT8 1 Tf -5.4009 0 TD -0.0333 Tw -[( items cannot have a)]TJ -/TT10 1 Tf -9.1421 0 TD -0.0811 Tw -[( SELECTEDFN)]TJ -/TT8 1 Tf -6.6822 0 TD -0.0333 Tw -[(. See the Edit Free Menu item)]TJ --21.2252 -1.2889 TD -[(description in Section 28.7.11, Predefined Item Types, for more information.)]TJ -/TT10 1 Tf --4.9333 -2 TD -0 Tw -(DOWNFN)Tj -/TT8 1 Tf -4.9333 0 TD -0.1144 Tw -(Specifies the function to be called when the item is selected with the mouse)Tj -0 -1.2889 TD -0 Tw -(cursor.)Tj -/TT10 1 Tf --4.9333 -2 TD -(HELDFN)Tj -/TT8 1 Tf -4.9333 0 TD -0.1122 Tw -(Specifies the function to be called repeatedly when the item is selected with)Tj -0 -1.2889 TD -0 Tw -(the mouse cursor.)Tj -/TT10 1 Tf --5.5333 -2 TD -(MOVEDFN)Tj -/TT8 1 Tf -5.5333 0 TD -0.0478 Tw -(Specifies the function to be called when the mouse cursor moves off this item)Tj -0 -1.2889 TD -0 Tw -(\(mouse buttons are still depressed\).)Tj -/TT4 1 Tf -10 0 0 10 78 401.6 Tm -(System Properties)Tj -/TT8 1 Tf -9 0 0 9 78 376.94 Tm -0.1789 Tw -[(The following Free Menu Item properties are set and maintained by Free Menu. The application)]TJ -0 -1.2222 TD -0 Tw -(should probably not change these properties directly.)Tj -/TT10 1 Tf -5.1333 -2 TD -(GROUPID)Tj -/TT8 1 Tf -5.5333 0 TD -0.1133 Tw -(Specifies the )Tj -/TT10 1 Tf -5.9806 0 TD -0 Tw -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.1133 Tw -[( of the smallest group that the item is in. For example, in a)]TJ --7.1808 -1.2889 TD -0.0211 Tw -(row formatted group, the items )Tj -/TT10 1 Tf -14.5484 0 TD -0 Tw -(GROUPID)Tj -/TT8 1 Tf -4.2007 0 TD -0.0211 Tw -[( will be set to the )]TJ -/TT10 1 Tf -7.8542 0 TD -0 Tw -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.0211 Tw -[( of the row that)]TJ --27.8035 -1.2889 TD -0 Tw -(the item is in, not the )Tj -/TT10 1 Tf -9.5454 0 TD -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -( of the whole group. )Tj -/TT10 1 Tf --15.0789 -2.0667 TD -(STATE)Tj -/TT8 1 Tf -4.3333 0 TD -0.0611 Tw -(Specifies the current state of )Tj -/TT10 1 Tf -12.9677 0 TD -0 Tw -(TOGGLE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5611 0 TD -(3STATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.0611 Tw -(, or )Tj -/TT10 1 Tf -1.8131 0 TD -0 Tw -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0611 Tw -[( items. The state of)]TJ --25.5436 -1.2889 TD -0 Tw -(an )Tj -/TT10 1 Tf -1.332 0 TD -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -( item behaves like that of a toggle item.)Tj -/TT10 1 Tf --8.6658 -2.0667 TD -(BITMAP)Tj -/TT8 1 Tf -4.9333 0 TD -(Specifies the bitmap from which the item is displayed.)Tj -/TT10 1 Tf --4.9333 -2.0667 TD -(REGION)Tj -/TT8 1 Tf -4.9333 0 TD -0.2178 Tw -[(Specifies the region of the item, in window coordinates. This is used for)]TJ -0 -1.2889 TD -0.2711 Tw -(locating the display position, as well as determining the mouse sensitive)Tj -0 -1.2222 TD -0 Tw -(region of the item.)Tj -/TT10 1 Tf --6.7333 -2 TD -(MAXREGION)Tj -/TT8 1 Tf -6.7333 0 TD -0.3122 Tw -(Specifies the maximum region the item may occupy, determined by the)Tj -/TT10 1 Tf -0 -1.2889 TD -0 Tw -(MAXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.2033 Tw -[( and )]TJ -/TT10 1 Tf -2.5995 0 TD -0 Tw -(MAXHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.2033 Tw -[( properties \(see Section 28.7.8, Free Menu item)]TJ --12.8012 -1.2889 TD -0 Tw -(Properties\). This is used by the formatter and the display routines.)Tj -/TT10 1 Tf --6.7333 -2 TD -(SYSDOWNFN)Tj --0.6 -2.0667 TD -(SYSMOVEDFN)Tj --1.8 -2.0667 TD -(SYSSELECTEDFN)Tj -/TT8 1 Tf -9.1333 0 TD -0.0878 Tw -(These are the system mouse event functions, set up by Free Menu according)Tj -0 -1.2889 TD -0.0267 Tw -[(to the item type. These functions are called before the mouse event functions,)]TJ -0 -1.2222 TD -0 Tw -(and are used to implement highlighting, state changes, editing, etc.)Tj -/TT10 1 Tf --6.1333 -2 TD -(USERDATA)Tj -/TT8 1 Tf -6.1333 0 TD -0.2111 Tw -[(Specifies how any other properties are stored on this list in property list)]TJ -0 -1.2889 TD -0 Tw -(format. This list should probably not need to be manipulated directly.)Tj -/TT4 1 Tf -10 0 0 10 78 59.8 Tm -(Predefined Item Types)Tj -ET -endstream -endobj -200 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -202 0 obj -<< -/Length 5676 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-54)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 569.54 Tm -(MOMENTARY)Tj -/TT8 1 Tf -5.4009 0 TD -[( )-29305.8([Free Menu Item])]TJ -/TT10 1 Tf --2.7342 -1.8444 TD -(MOMENTARY)Tj -/TT8 1 Tf -5.4009 0 TD -0.0644 Tw -[( items are like command buttons. When the button is selected, its associated)]TJ --5.4009 -1.2889 TD -0 Tw -(function is called.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(TOGGLE)Tj -/TT8 1 Tf -3.6006 0 TD -[( )-31106.1([Free Menu Item])]TJ --0.9339 -1.8444 TD -0.1178 Tw -[(Toggle items are simple two-state buttons. When pressed, the button is highlighted; it)]TJ -0 -1.2222 TD -0.0167 Tw -[(stays that way until pressed again. The states of a toggle button are )]TJ -/TT10 1 Tf -30.3696 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0167 Tw -[( and )]TJ -/TT10 1 Tf -2.2262 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0167 Tw -[(; the initial)]TJ --34.9962 -1.2889 TD -0 Tw -(state is )Tj -/TT10 1 Tf -3.27 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT12 1 Tf --7.737 -2.4 TD -(3STATE)Tj -/TT8 1 Tf -3.6006 0 TD -[( )-31106.1([Free Menu Item])]TJ -/TT10 1 Tf --0.9339 -1.8444 TD -(3STATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1544 Tw -[( items rotate through )]TJ -/TT10 1 Tf -10.1832 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.6544 0 TD -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1544 Tw -(, and )Tj -/TT10 1 Tf -2.7518 0 TD -0 Tw -(OFF)Tj -/TT8 1 Tf -1.8003 0 TD -0.1544 Tw -[(, states each time they are pressed. The)]TJ --21.3907 -1.2889 TD -0.1867 Tw -(default looks of the )Tj -/TT10 1 Tf -9.5186 0 TD -0 Tw -(OFF)Tj -/TT8 1 Tf -1.8003 0 TD -0.1867 Tw -[( state are with a diagonal line through the button, while )]TJ -/TT10 1 Tf -26.9269 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1867 Tw -[( is)]TJ --38.8459 -1.2889 TD -0 Tw -(highlighted, and )Tj -/TT10 1 Tf -7.5903 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( is normal. The default initial state is )Tj -/TT10 1 Tf -16.8208 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj --28.0117 -2.0667 TD -(The following Item Property applies to)Tj -/TT10 1 Tf -17.1802 0 TD -( 3STATE)Tj -/TT8 1 Tf -4.2007 0 TD -( items:)Tj -/TT10 1 Tf --19.1809 -2.0667 TD -(OFF)Tj -/TT8 1 Tf -3.1333 0 TD -0.3678 Tw -(Specifies the looks of a )Tj -/TT10 1 Tf -12.0845 0 TD -0 Tw -(3STATE)Tj -/TT8 1 Tf -3.6006 0 TD -0.3678 Tw -[( item in its )]TJ -/TT10 1 Tf -6.3642 0 TD -0 Tw -(OFF)Tj -/TT8 1 Tf -1.8003 0 TD -0.3678 Tw -[( state. Similar to)]TJ -/TT10 1 Tf --23.8496 -1.2889 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -(. The default is that the label gets a diagonal slash through it.)Tj -/TT10 1 Tf --2.7342 -2.0667 TD -(NOTE:)Tj -/TT8 1 Tf -3.0005 0 TD -0.0511 Tw -[( If you specify special highlighting \( a different bitmap of)]TJ --5.0005 -1.2889 TD -0.2533 Tw -[(string\) for Toggle or 3State items AND use this item in a group)]TJ -0 -1.2222 TD -0.0001 Tc -0.0021 Tw -(formatted as a Column or a Table, the highlight looks of the item may)Tj -T* -0 Tc -0 Tw -(not appear in the correct place. )Tj -/TT12 1 Tf --8.6667 -2.3333 TD -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -[( )-31456.2([Free Menu Item])]TJ -/TT10 1 Tf --0.3338 -1.8444 TD -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0822 Tw -[( items are general multiple state items. The following Item Property determines)]TJ --3.0005 -1.2889 TD -0 Tw -(how the item changes state:)Tj -/TT10 1 Tf --2.6 -2 TD -(CHANGESTATE)Tj -/TT8 1 Tf -7.9333 0 TD -0.0022 Tw -(This Item Property can be changed at any time to change the effect of the item.)Tj -0 -1.2889 TD -0.0044 Tw -(If a )Tj -/TT10 1 Tf -1.6788 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.0043 Tw -( data type, this menu pops up when the item is selected, and the user)Tj --4.0792 -1.2889 TD -0 Tc -0.05 Tw -[(can select the new state. Otherwise, if this property is given, it is treated as a)]TJ -0 -1.2222 TD -0.4522 Tw -(function name, which is passed three arguments, )Tj -/TT10 1 Tf -25.062 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.9522 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.4522 Tw -(, and)Tj -/TT10 1 Tf --32.0152 -1.2889 TD -0 Tw -(BUTTONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.0756 Tw -[(. This function can do whatever it wants, and is expected to return)]TJ --4.2007 -1.2889 TD -0.0533 Tw -(the new state \(an atom, string, or bitmap\), or )Tj -/TT10 1 Tf -20.4307 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0533 Tw -(, indicating the state should)Tj --22.231 -1.2889 TD -0.1289 Tw -(not change. The state of the item can automatically be indicated in the Free)Tj -0 -1.2222 TD -0.18 Tw -(Menu, by setting up a )Tj -/TT10 1 Tf -10.8077 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.18 Tw -[( link to a )]TJ -/TT10 1 Tf -4.8123 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.18 Tw -[( item in the menu \(see)]TJ --24.0214 -1.2889 TD -0.0756 Tw -[(Section 28.7.13, Free Menu Item Links\). If such a link exists, the label of the)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.08 Tw -[( item will be changed to the new state. The possible states are not)]TJ --4.2007 -1.2889 TD -0.1122 Tw -[(restricted at all, with the exception of selections from a pop-up menu. The)]TJ -0 -1.2222 TD -0.5278 Tw -(state can be changed to any atom, string, or bitmap, manually via)Tj -/TT10 1 Tf -T* -0 Tw -(FM.CHANGESTATE)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj --13.7347 -2.0667 TD -(The following Item Properties are relevant to )Tj -/TT10 1 Tf -20.1221 0 TD -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -( items when building a Free Menu:)Tj -/TT10 1 Tf --24.5226 -2.0667 TD -(MENUITEMS)Tj -/TT8 1 Tf -6.7333 0 TD -0.1422 Tw -(If specified, should be a list of items to go in a pop-up menu for this item.)Tj -0 -1.2889 TD -0.0722 Tw -(Free Menu will build the menu and save it as the )Tj -/TT10 1 Tf -22.6426 0 TD -0 Tw -(CHANGESTATE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0722 Tw -[( property of)]TJ --29.2437 -1.2889 TD -0 Tw -(the item.)Tj -ET -endstream -endobj -203 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -205 0 obj -<< -/Length 5767 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-55)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf -9 0 0 9 118.8 569.54 Tm -(MENUFONT)Tj -/TT8 1 Tf -6.1333 0 TD -(The font of the items in the pop-up menu.)Tj -/TT10 1 Tf --6.7333 -2.0667 TD -(MENUTITLE)Tj -/TT8 1 Tf -6.7333 0 TD -(The title of the pop-up menu. The default title is the label of the )Tj -/TT10 1 Tf -28.498 0 TD -(STATE )Tj -/TT8 1 Tf -3.6006 0 TD -(item.)Tj -/TT12 1 Tf --40.0986 -2.4 TD -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -32.5563 0 TD -([Free Menu Item])Tj -/TT10 1 Tf --32.29 -1.8444 TD -(NWAY )Tj -/TT8 1 Tf -3.1138 0 TD -0.0467 Tw -(items provide a way to collect any number of items together, in any format within)Tj --3.1138 -1.2889 TD -0.1 Tw -[(the Free Menu. Only one item from each Collection can be selected at a time, and that)]TJ -0 -1.2222 TD -0.0544 Tw -(item is highlighted to indicate this. The following Item Properties are particular to)Tj -/TT10 1 Tf -36.8648 0 TD -0.1311 Tw -[( NWAY)]TJ -/TT8 1 Tf --36.8648 -1.2889 TD -0 Tw -(items: )Tj -/TT10 1 Tf --2 -2 TD -(COLLECTION)Tj -/TT8 1 Tf -7.3333 0 TD -(An identifier that specifies which )Tj -/TT10 1 Tf -14.9209 0 TD -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -( Collection this item belongs to.)Tj -/TT10 1 Tf --24.0546 -2.0667 TD -(NWAYPROPS)Tj -/TT8 1 Tf -6.7333 0 TD -0.25 Tw -[(A property list of information to be associated with this collection. This)]TJ -0 -1.2889 TD -0.1233 Tw -(property is only noticed in the Free Menu Description on the first item in a)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(COLLECTION)Tj -/TT8 1 Tf -6.001 0 TD -0.16 Tw -(. )Tj -/TT10 1 Tf -1.07 0 TD -0 Tw -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -0.16 Tw -[( Collections are formed by creating a number of )]TJ -/TT10 1 Tf -22.796 0 TD -0 Tw -(NWAY)Tj -/TT8 1 Tf --32.2673 -1.2889 TD -0.4689 Tw -(items with the same )Tj -/TT10 1 Tf -10.9844 0 TD -0 Tw -(COLLECTION)Tj -/TT8 1 Tf -6.001 0 TD -0.4689 Tw -[( property. Each)]TJ -/TT10 1 Tf -8.4428 0 TD -1.1256 Tw -[( NWAY)]TJ -/TT8 1 Tf -4.126 0 TD -0.4689 Tw -[( item acts)]TJ --29.5543 -1.2889 TD -0.1167 Tw -(individually as a Toggle item, and can have its own mouse event functions.)Tj -0 -1.2222 TD -0 Tw -(Each )Tj -/TT10 1 Tf -2.5278 0 TD -(NWAY )Tj -/TT8 1 Tf -3.3383 0 TD -0.1411 Tw -[(Collection itself has properties, its state for instance. After the)]TJ --5.8661 -1.2889 TD -0.2733 Tw -(Free Menu is created, these Collection properties can be accessed by the)Tj -0 -1.2222 TD -0 Tw -(macro)Tj -/TT10 1 Tf -2.7676 0 TD -0.1378 Tw -[( FM.NWAYPROPS)]TJ -/TT8 1 Tf -7.939 0 TD -0.0578 Tw -[(. Note that)]TJ -/TT10 1 Tf -5.0898 0 TD -0.1378 Tw -[( NWAY)]TJ -/TT8 1 Tf -3.1383 0 TD -0.0578 Tw -[( Collections are different from Free)]TJ --18.9347 -1.2889 TD -0.1533 Tw -(Menu Groups. There are three)Tj -/TT10 1 Tf -13.9883 0 TD -0.3678 Tw -[( NWAY)]TJ -/TT8 1 Tf -3.3683 0 TD -0.1533 Tw -[( Collection properties that Free Menu)]TJ --17.3566 -1.2889 TD -0 Tw -(looks at:)Tj -/TT10 1 Tf --6.1333 -2 TD -(DESELECT)Tj -/TT8 1 Tf -6.1333 0 TD -0.1622 Tw -[(If given, specifies that the Collection can be deselected, yielding a state in)]TJ -0 -1.2889 TD -0.1656 Tw -[(which no item in the Collection is selected. When this property is set, the)]TJ -0 -1.2222 TD -0.2433 Tw -[(Collection can be deselected by selecting any item in the Collection and)]TJ -T* -0 Tw -(pressing the right mouse button .)Tj -/TT10 1 Tf --4.3333 -2 TD -(STATE)Tj -/TT8 1 Tf -4.3333 0 TD -(The current state of the Collection, which is the actual item selected.)Tj -/TT10 1 Tf --6.7333 -2.0667 TD -(INITSTATE)Tj -/TT8 1 Tf -6.7333 0 TD -0.14 Tw -[(Specifies the initial state of the Collection. The value of this property is an)]TJ -0 -1.2889 TD -0 Tw -(Item Link Description)Tj -/TT12 1 Tf --8 -2.3333 TD -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -32.5563 0 TD -([Free Menu Item])Tj -/TT10 1 Tf --32.29 -1.8444 TD -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0833 Tw -[( items are textual items that can be edited. The label for an )]TJ -/TT10 1 Tf -27.3713 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0833 Tw -[( item cannot be a)]TJ --32.172 -1.2889 TD -0.04 Tw -[(bitmap. When the item is selected an edit caret appears at that cursor position within the)]TJ -0 -1.2222 TD -0.0411 Tw -[(item, allowing insertion and deletion of characters at that point. If selected with the right)]TJ -T* -0.1967 Tw -[(mouse button, the item is cleared before editing starts. While editing, the left mouse)]TJ -T* -0.0289 Tw -[(button moves the caret to a new position within the item. The right mouse button deletes)]TJ -T* -0.0411 Tw -[(from the caret to the cursor. CONTROL-W deletes the previous word. Editing is stopped)]TJ -T* -0.0378 Tw -(when another item is selected, when the user moves the cursor into another TTY window)Tj -T* -0.0089 Tw -(and clicks the cursor, or when the Free Menu function )Tj -/TT10 1 Tf -24.2066 0 TD -0 Tw -(FM.ENDEDIT)Tj -/TT8 1 Tf -6.001 0 TD -0.0089 Tw -[( is called \(called when)]TJ --30.2075 -1.2889 TD -0.0367 Tw -(the Free Menu is reset, or the window is closed\). The Free Menu editor will time out after)Tj -0 -1.2222 TD -0.0444 Tw -[(about a minute, returning automatically. Because of the many ways in which editing can)]TJ -T* -0 Tw -(terminate, )Tj -/TT10 1 Tf -4.8012 0 TD -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.04 Tw -[( items are not allowed to have a )]TJ -/TT10 1 Tf -14.6008 0 TD -0 Tw -(SELECTEDFN)Tj -/TT8 1 Tf -6.001 0 TD -0.04 Tw -(, as it is not clear when this)Tj --27.8034 -1.2889 TD -0.1544 Tw -(function should be called. Each )Tj -/TT10 1 Tf -14.8206 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1544 Tw -[( item should have an ID specified, which is used)]TJ --17.221 -1.2889 TD -0.1078 Tw -[(when getting the state of the Free Menu, since the string being edited is defined as the)]TJ -0 -1.2222 TD -0.0822 Tw -[(state of the item, and thus cannot distinguish edit items. The following Item Properties)]TJ -T* -0 Tw -(are specific to)Tj -/TT10 1 Tf -6.0527 0 TD -( EDIT )Tj -/TT8 1 Tf -3.6006 0 TD -(items.)Tj -ET -endstream -endobj -206 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -208 0 obj -<< -/Length 5899 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-56)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 166.8 569.54 Tm -(MAXWIDTH)Tj -/TT8 1 Tf -6.1333 0 TD -0.0222 Tw -(Specifies the maximum string width of the item, in bits, after which input will)Tj -0 -1.2889 TD -0.0367 Tw -[(be ignored. If)]TJ -/TT10 1 Tf -6.2721 0 TD -0.0878 Tw -[( MAXWIDTH )]TJ -/TT8 1 Tf -6.1765 0 TD -0.0367 Tw -(is not specified, the items becomes infinitely wide)Tj --12.4486 -1.2889 TD -0 Tw -(and input is never restricted.)Tj -/TT10 1 Tf --9.1333 -2 TD -(INFINITEWIDTH)Tj -/TT8 1 Tf -9.1333 0 TD -0.01 Tw -(This property is set automatically when)Tj -/TT10 1 Tf -17.5871 0 TD -0.0233 Tw -[( MAXWIDTH)]TJ -/TT8 1 Tf -5.4242 0 TD -0.01 Tw -[( is not specified. This tells)]TJ --23.0113 -1.2889 TD -0.1444 Tw -(Free Menu that the item has no right end, so that the item becomes mouse)Tj -0 -1.2222 TD -0.0156 Tw -(sensitive from its left edge to the right edge of the window, within the vertical)Tj -T* -0 Tw -(space of the item.)Tj -0 -2 TD -0.0122 Tw -[(In Medley, Changestate of an infinite width Edit item to a smaller item clears)]TJ -0 -1.2222 TD -0 Tw -(the old item properly. )Tj -/TT10 1 Tf --7.3333 -2 TD -(LIMITCHARS)Tj -/TT8 1 Tf -7.3333 0 TD -0.2422 Tw -[(The input characters allowed can be restricted in two ways: If this item)]TJ -0 -1.2889 TD -0.0622 Tw -(property is a list, it is treated as a list of legal characters; any character not in)Tj -0 -1.2222 TD -0.1589 Tw -[(the list will be ignored. If it is an atom, it is treated as the name of a test)]TJ -T* -0.6378 Tw -(predicate, which is passed three arguments,)Tj -/TT10 1 Tf -22.5605 0 TD -1.5311 Tw -[( ITEM)]TJ -/TT8 1 Tf -4.5316 0 TD -0 Tw -(, )Tj -/TT10 1 Tf -1.1378 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.6378 Tw -(, and)Tj -/TT10 1 Tf --31.8304 -1.2889 TD -0 Tw -(CHARACTER, )Tj -/TT8 1 Tf -6.6244 0 TD -0.01 Tw -[(when each character is typed. This predicate should return )]TJ -/TT10 1 Tf -26.5575 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.01 Tw -[( if)]TJ --33.782 -1.2889 TD -0.1167 Tw -(the character is legal, )Tj -/TT10 1 Tf -10.0008 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1167 Tw -[( otherwise. The)]TJ -/TT10 1 Tf -7.3798 0 TD -0.2789 Tw -[( LIMITCHARS )]TJ -/TT8 1 Tf -7.759 0 TD -0.1167 Tw -(function can also)Tj --26.9399 -1.2889 TD -0 Tw -(call )Tj -/TT10 1 Tf -1.8481 0 TD -(FM.ENDEDIT)Tj -/TT8 1 Tf -6.001 0 TD -0.0722 Tw -[( to force the editor to terminate, or )]TJ -/TT10 1 Tf -16.006 0 TD -0 Tw -(FM.SKIPNEXT)Tj -/TT8 1 Tf -6.6011 0 TD -0.0722 Tw -(, to cause)Tj --30.4562 -1.2889 TD -0 Tw -(the editor to jump to the next edit item in the menu.)Tj -/TT10 1 Tf --6.1333 -2 TD -(ECHOCHAR)Tj -/TT8 1 Tf -6.1333 0 TD -0.0644 Tw -[(This item property can be set to any character. This character will be echoed)]TJ -0 -1.2889 TD -0.1644 Tw -[(in the window, regardless of what character is typed. However the items)]TJ -0 -1.2222 TD -0.2889 Tw -[(label contains the actual string typed. This is useful for operations like)]TJ -T* -0.0233 Tw -[(password prompting. If )]TJ -/TT10 1 Tf -11.129 0 TD -0 Tw -(ECHOCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.0233 Tw -[( is used, the font of the item must be fixed)]TJ --15.9298 -1.2889 TD -0.1256 Tw -(pitch. Unrestricted )Tj -/TT10 1 Tf -8.775 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1256 Tw -[( items should not have other items to their right in)]TJ --11.1754 -1.2889 TD -0.06 Tw -[(the menu, as they will be replaced. If the item is boxed, input is restricted to)]TJ -0 -1.2222 TD -0.1378 Tw -[(what will fit in the box. Typing off the edge of the window will cause the)]TJ -T* -0.1133 Tw -[(window to scroll appropriately. Control characters can be edited, including)]TJ -T* -0.0844 Tw -[(the carriage return and line feed, and they are echoed as a black box. While)]TJ -T* -0.1389 Tw -(editing, the Skip/Next key ends editing the current item, and starts editing)Tj -T* -0 Tw -(the next )Tj -/TT10 1 Tf -3.7905 0 TD -(EDIT )Tj -/TT8 1 Tf -3.0005 0 TD -(item in the Free Menu.)Tj -/TT12 1 Tf --14.791 -2.4 TD -(NUMBER)Tj -/TT8 1 Tf -34.9567 0 TD -([Free Menu Item])Tj -/TT10 1 Tf --32.29 -1.8444 TD -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.1611 Tw -[( items are )]TJ -/TT10 1 Tf -5.0102 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1611 Tw -[( items that are restricted to numerals. The state of the item is)]TJ --11.0112 -1.2889 TD -0.0922 Tw -(coerced to the the number itself, not a string of numerals. There is one )Tj -/TT10 1 Tf -32.4078 0 TD -0 Tw -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -0.0922 Tw -(- specific)Tj --36.0084 -1.2889 TD -(Item Property: )Tj -/TT10 1 Tf --2 -2 TD -0 Tw -(NUMBERTYPE)Tj -/TT8 1 Tf -7.3333 0 TD -0.1522 Tw -(If )Tj -/TT10 1 Tf -1.4744 0 TD -0 Tw -(FLOATP)Tj -/TT8 1 Tf -3.6006 0 TD -0.1522 Tw -[( \(or )]TJ -/TT10 1 Tf -2.0784 0 TD -0 Tw -(FLOAT)Tj -/TT8 1 Tf -3.0005 0 TD -0.1522 Tw -[(\), then decimals are accepted. Otherwise only whole)]TJ --10.1538 -1.2889 TD -0 Tw -(numbers can be edited.)Tj -/TT12 1 Tf --8 -2.3333 TD -(EDITSTART)Tj -/TT8 1 Tf -34.9567 0 TD -([Free Menu Item])Tj -/TT10 1 Tf --32.29 -1.8444 TD -(EDITSTART )Tj -/TT8 1 Tf -6.2499 0 TD -0.1033 Tw -(items serve the purpose of starting editing on another item when they are)Tj --6.2499 -1.2889 TD -0.0189 Tw -[(selected. The associated Edit item is linked to the EditStart item by an )]TJ -/TT10 1 Tf -31.449 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( link \(see Free)]TJ --33.8494 -1.2889 TD -0.0089 Tw -[(Menu Item Links below\). If the)]TJ -/TT10 1 Tf -13.9952 0 TD -0.02 Tw -[( EDITSTART)]TJ -/TT8 1 Tf -6.021 0 TD -0.0089 Tw -[( item is selected with the right mouse button,)]TJ --20.0162 -1.2889 TD -0.1678 Tw -[(the Edit item is cleared before editing is started. Similar to)]TJ -/TT10 1 Tf -27.7093 0 TD -0.4022 Tw -[( EDIT)]TJ -/TT8 1 Tf -3.4027 0 TD -0.1678 Tw -[( items, )]TJ -/TT10 1 Tf -3.4884 0 TD -0 Tw -(EDITSTART)Tj -/TT8 1 Tf --34.6004 -1.2889 TD -0.2267 Tw -(items cannot have a )Tj -/TT10 1 Tf -9.9155 0 TD -0 Tw -(SELECTEDFN)Tj -/TT8 1 Tf -6.001 0 TD -0.2267 Tw -(, as it is not clear when the associated editing will)Tj --15.9164 -1.2889 TD -0 Tw -(terminate. )Tj -ET -endstream -endobj -209 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -211 0 obj -<< -/Length 5199 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-57)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0856 Tw -(In Medley,)Tj -/TT10 1 Tf -4.8663 0 TD -0.2056 Tw -[( EDITSTART )]TJ -/TT8 1 Tf -7.8178 0 TD -0.0856 Tw -[( items linked to a Number item properly set number state)]TJ --12.6842 -1.2889 TD -0 Tw -(when editing has completed. )Tj -/TT12 1 Tf --2.6667 -4.3333 TD -(DISPLAY)Tj -/TT10 1 Tf -4.2007 0 TD -( )Tj -/TT8 1 Tf -30.756 0 TD -([Free Menu Item])Tj -/TT10 1 Tf --32.29 -1.8444 TD -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.0511 Tw -[( items serve two purposes. First, they simply provide a way of putting dummy)]TJ --4.2007 -1.2889 TD -0.0411 Tw -[(text in a Free Menu, which does nothing when selected. The items label can be changed,)]TJ -0 -1.2222 TD -0.2044 Tw -[(though. Secondly, )]TJ -/TT10 1 Tf -9.0923 0 TD -0 Tw -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -0.2044 Tw -[( items can be used as the base for new item types. The)]TJ --13.293 -1.2889 TD -0.2144 Tw -(application can create new item types by specifying )Tj -/TT10 1 Tf -24.7644 0 TD -0 Tw -(DOWNFN)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7144 0 TD -(HELDFN)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7144 0 TD -(MOVEDFN)Tj -/TT8 1 Tf -4.2007 0 TD -0.2144 Tw -(, and)Tj -/TT10 1 Tf --37.5951 -1.2889 TD -0 Tw -(SELECTEDFN)Tj -/TT8 1 Tf -6.001 0 TD -( for a )Tj -/TT10 1 Tf -2.5239 0 TD -(DISPLAY)Tj -/TT8 1 Tf -4.2007 0 TD -( item, making it behave as desired.)Tj -/TT4 1 Tf -10 0 0 10 78 429.6 Tm -(Free Menu Item Highlighting)Tj -/TT8 1 Tf -9 0 0 9 78 404.94 Tm -0.1367 Tw -[(Each Free Menu Item can specify how it wants to be highlighted. First of all, if the item does not)]TJ -0 -1.2222 TD -0.0589 Tw -(specify a )Tj -/TT10 1 Tf -4.2457 0 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.401 0 TD -0.0589 Tw -[( property, there are two default highlights. If the item is not boxed, the label is)]TJ --9.6467 -1.2889 TD -0.0956 Tw -[(simply inverted, as in normal menus. If the item is boxed, it is highlighted in the shade of the box.)]TJ -0 -1.2222 TD -0.0244 Tw -(Alternatively, the value of the )Tj -/TT10 1 Tf -13.5729 0 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.0244 Tw -[( property can be a SHADE, which will be painted on top of)]TJ --18.9738 -1.2889 TD -0.12 Tw -[(the item when a mouse event occurs on it. Or the )]TJ -/TT10 1 Tf -23.9379 0 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.12 Tw -[( property can be an alternate label,)]TJ --29.3388 -1.2889 TD -0.01 Tw -[(which can be an atom, string or bitmap. If the highlight label is a different size than the item label, the)]TJ -0 -1.2222 TD -0.1367 Tw -[(formatter will leave enough space for the larger of the two. In all of these cases, the looks of the)]TJ -T* -0.1244 Tw -(highlighted item are determined when the Free Menu is built, and a bitmap of the item with these)Tj -T* -0.1744 Tw -[(looks is created. This bitmap is stored on the items )]TJ -/TT10 1 Tf -24.9858 0 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.1744 Tw -[( property, and simply displayed)]TJ --30.3867 -1.2889 TD -0.0589 Tw -[(when a mouse event occurs. The value of the highlight property in the Item Description is copied to)]TJ -0 -1.2222 TD -0 Tw -(the )Tj -/TT10 1 Tf -1.6367 0 TD -(USERDATA)Tj -/TT8 1 Tf -4.8008 0 TD -( list, in case it is needed later for a label change.)Tj -/TT4 1 Tf -10 0 0 10 78 265.6 Tm -(Free Menu Item Links)Tj -/TT8 1 Tf -9 0 0 9 78 240.94 Tm -0.0722 Tw -[(Links between items are useful for grouping items in abstract ways. In particular, links are used for)]TJ -0 -1.2222 TD -0 Tw -(associating)Tj -/TT10 1 Tf -4.8838 0 TD -0.0267 Tw -[( EDITSTART )]TJ -/TT8 1 Tf -6.6544 0 TD -0.0111 Tw -(items with their item to edit, and)Tj -/TT10 1 Tf -14.5769 0 TD -0.0267 Tw -[( STATE)]TJ -/TT8 1 Tf -3.6273 0 TD -0.0111 Tw -[( items with their state display. The)]TJ --29.7424 -1.2889 TD -0.0522 Tw -(Free Menu Item property)Tj -/TT10 1 Tf -11.35 0 TD -0.1243 Tw -[( LINKS)]TJ -/TT8 1 Tf -3.7249 0 TD -0.0522 Tw -[( is a property list, where the value of each Link Name property is a)]TJ --15.0749 -1.2889 TD -0.2078 Tw -[(pointer to another item. In the Item Description, the value of the)]TJ -/TT10 1 Tf -31.5078 0 TD -0.5 Tw -[( LINK)]TJ -/TT8 1 Tf -3.5005 0 TD -0.2078 Tw -[( property should be a)]TJ --35.0082 -1.2889 TD -0.29 Tw -[(property list as above. The value of each Link Name property is a Link Description. A Link)]TJ -0 -1.2222 TD -0 Tw -(Description can be one of the following forms:)Tj -7.0111 -2 TD -0.2433 Tw -[()-1332.8( An ID of an item in the Free Menu. This is acceptable if items can be)]TJ -3.6556 -1.2222 TD -0 Tw -(distinguished by ID alone.)Tj --10.4933 -2 TD -0.0244 Tw -[(\( )24.4(\))-1332.7(A list whose first element is a GROUPID, and whose second element is the ID)]TJ -10.4933 -1.2222 TD -0.1711 Tw -[(of an item in that group. This way items with similar purposes, and thus)]TJ -T* -0 Tw -(similar IDs, can be distinguished across groups.)Tj --8.1711 -2 TD -0.0001 Tc -0.0039 Tw -[(\(GROUP \))-1333.1(A list whose first element is the keyword GROUP, and whose second element)]TJ -8.1711 -1.2222 TD -0 Tc -0.0033 Tw -(is an item ID. This form describes an item with ID, in the same group that this)Tj -T* -0.1844 Tw -[(item is in. This way you do not need to know the GROUPID, just which)]TJ -T* -0 Tw -(group it is in.)Tj -ET -endstream -endobj -212 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -214 0 obj -<< -/Length 5266 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-58)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0322 Tw -(Then after the entire menu is built, the links are set up, turning the Link Descriptions into)Tj -0 -1.2222 TD -0.0278 Tw -[(actual pointers to Free Menu Items. There is no reason why circular Item Links cannot be)]TJ -T* -0.1733 Tw -[(created, although such a link would probably not be very useful. If circular links are)]TJ -T* -0.0322 Tw -[(created, the Free Menu will not be garbage collected after it is not longer being used. The)]TJ -T* -0 Tw -(application is responsible for breaking any such links that it creates.)Tj -/TT4 1 Tf -10 0 0 10 126 499.2 Tm -(Free Menu Window Properties)Tj -/TT10 1 Tf -9 0 0 9 129 481.54 Tm -(FM.PROMPTWINDOW)Tj -/TT8 1 Tf -10.3333 0 TD -0.1911 Tw -(Specifies the window that Free Menu should use for displaying the items)Tj -0 -1.2889 TD -0 Tw -(messages. If not specified, )Tj -/TT10 1 Tf -11.9951 0 TD -(PROMPTWINDOW)Tj -/TT8 1 Tf -7.2012 0 TD -( is used.)Tj -/TT10 1 Tf --28.3296 -2.0667 TD -(FM.BACKGROUND)Tj -/TT8 1 Tf -9.1333 0 TD -0.2011 Tw -[(The background shade of the entire Free Menu. This property can be set)]TJ -0 -1.2889 TD -0.5189 Tw -(automatically by specifying a )Tj -/TT10 1 Tf -15.2992 0 TD -0 Tw -(BACKGROUND)Tj -/TT8 1 Tf -6.001 0 TD -0.5189 Tw -[( argument to the function)]TJ -/TT10 1 Tf --21.3002 -1.2889 TD -0 Tw -(FREEMENU)Tj -/TT8 1 Tf -4.8008 0 TD -0.2056 Tw -[(. The window border must be 4 or greater when a Free Menu)]TJ --4.8008 -1.2889 TD -0.1844 Tw -(background is used, due to the way the Window System handles window)Tj -0 -1.2222 TD -0 Tw -(borders.)Tj -/TT10 1 Tf --9.7333 -2 TD -(FM.DONTRESHAPE)Tj -/TT8 1 Tf -9.7333 0 TD -0.3 Tw -(Normally, Free Menu will attempt to use empty space in a window by)Tj -0 -1.2889 TD -[(pushing items around to fill the space. When a Free Menu window is)]TJ -0 -1.2222 TD -0.0878 Tw -[(reshaped, the items are repositioned in the new shape. This can be disabled)]TJ -T* -0 Tw -(by setting the )Tj -/TT10 1 Tf -6.231 0 TD -(FM.DONTRESHAPE)Tj -/TT8 1 Tf -8.4014 0 TD -( window property.)Tj -/TT4 1 Tf -10 0 0 10 126 327 Tm -(Free Menu Interface Functions)Tj -/TT10 1 Tf -9 0 0 9 150 306.34 Tm -(\()Tj -/TT12 1 Tf -0.6 0 TD -(FREEMENU)Tj -/TT10 1 Tf -4.8008 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(DESCRIPTION TITLE BACKGROUND BORDER)Tj -/TT10 1 Tf -21.0034 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-9965.6([Function])]TJ --24.9377 -1.8444 TD -0.03 Tw -[(Creates a Free Menu from a Free Menu Description, returning the window. This function)]TJ -0 -1.2222 TD -0 Tw -(will return quickly unless new display fonts have to be created.)Tj -/TT4 1 Tf -10 0 0 10 126 243.4 Tm -(Accessing Functions)Tj -/TT10 1 Tf -9 0 0 9 150 222.74 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.GETITEM)Tj -/TT10 1 Tf -6.001 0 TD -( )Tj -/TT14 1 Tf -0.5989 0 TD -(ID GROUP WINDOW)Tj -/TT10 1 Tf -9.0015 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-20768.4([Function])]TJ --14.1349 -1.8444 TD -0.1033 Tw -(Gets item)Tj -/TT19 1 Tf -4.3245 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.3533 0 TD -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.1033 Tw -[( in )]TJ -/TT14 1 Tf -1.5797 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.1033 Tw -[( of the Free Menu in )]TJ -/TT14 1 Tf -9.7782 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1033 Tw -[(. This function will search the Free)]TJ --23.837 -1.2889 TD -0.1933 Tw -(Menu for an item whose )Tj -/TT14 1 Tf -12.0262 0 TD -0 Tw -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.1933 Tw -[( property matches, or secondly whose)]TJ -/TT10 1 Tf -17.7421 0 TD -0.4644 Tw -[( LABEL )]TJ -/TT8 1 Tf -5.1296 0 TD -0 Tw -(property)Tj --36.0981 -1.2889 TD -(matches )Tj -/TT14 1 Tf -3.9277 0 TD -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.04 Tw -[(. If)]TJ -/TT19 1 Tf -1.4999 0 TD -0 Tw -( )Tj -/TT14 1 Tf -0.29 0 TD -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.04 Tw -[( is )]TJ -/TT10 1 Tf -1.2948 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.04 Tw -[(, then the entire Free Menu is searched. If no matching item)]TJ --13.0134 -1.2889 TD -0 Tw -(is found, )Tj -/TT10 1 Tf -4.1396 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( is returned.)Tj -/TT10 1 Tf --8.6066 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.GETSTATE)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-25569.2([Function])]TJ --9.3341 -1.8444 TD -0.0511 Tw -(Returns in property list format the ID and current )Tj -/TT10 1 Tf -22.6895 0 TD -0 Tw -(STATE )Tj -/TT8 1 Tf -3.725 0 TD -0.0511 Tw -(of every )Tj -/TT10 1 Tf -3.9553 0 TD -0 Tw -(NWAY )Tj -/TT8 1 Tf -3.1249 0 TD -0.0511 Tw -(Collection and)Tj --33.4947 -1.2889 TD -0.0689 Tw -[(item in the Free Menu. If an items or Collections state is )]TJ -/TT10 1 Tf -26.504 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0689 Tw -(, then it is not included in)Tj --28.3043 -1.2889 TD -0.0222 Tw -[(the list. This provides an easy way of getting the state of the menu all at once. If the state)]TJ -0 -1.2222 TD -0.1444 Tw -(of only one item or Collection is needed, the application can directly access the )Tj -/TT10 1 Tf -36.9944 0 TD -0 Tw -(STATE)Tj -/TT8 1 Tf --36.9944 -1.2889 TD -0.2011 Tw -[(property of that object using the Accessing Macros described in Section 28.7.20, Free)]TJ -0 -1.2222 TD -0.1089 Tw -[(Menu Macros. This function can be called when editing is in progress, in which case it)]TJ -T* -0 Tw -(will provide the label of the item being edited at that point.)Tj -ET -endstream -endobj -215 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -217 0 obj -<< -/Length 6280 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-59)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT4 1 Tf --33 -4.38 TD -(Changing Free Menus)Tj -/TT8 1 Tf -9 0 0 9 78 543.54 Tm -0.0422 Tw -(Many of the following functions operate on Free Menu Items, and thus take the item as an argument.)Tj -0 -1.2222 TD -0 Tw -(The )Tj -/TT19 1 Tf -1.9405 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.0167 Tw -[( argument to these functions can be the Free Menu Item itself, or just a reference to the item.)]TJ --4.439 -1.2222 TD -0.1022 Tw -(In the second case, )Tj -/TT10 1 Tf -8.8972 0 TD -0 Tw -(FM.GETITEM)Tj -/TT8 1 Tf -6.001 0 TD -0.1022 Tw -[( \(see Section 28.7.16, Accessing Functions\) will be used to find the)]TJ --14.8981 -1.2889 TD -(item in the Free Menu. The reference can be in one of the following forms: )Tj -7.0111 -2 TD -0.32 Tw -[()-1332.8(Specifies the first item in the Free Menu whose ID or LABEL property)]TJ -3.6556 -1.2222 TD -0 Tw -(matches .)Tj --10.4933 -2 TD -0.1789 Tw -[(\( )178.9(\))-1332.7(Specifies the item whose ID or LABEL property matches within the)]TJ -10.4933 -1.2222 TD -0 Tw -(group specified by .)Tj -/TT10 1 Tf --8 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.CHANGELABEL)Tj -/TT10 1 Tf -8.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM NEWLABEL WINDOW UPDATEFLG)Tj -/TT10 1 Tf -18.0029 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-9366.9([Function])]TJ --25.5365 -1.8444 TD -0.0778 Tw -(Changes an )Tj -/TT19 1 Tf -5.5696 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.0778 Tw -[(s label after the Free Menu has been created. It works for any type of)]TJ --8.0682 -1.2222 TD -0.0478 Tw -(item, and )Tj -/TT10 1 Tf -4.5174 0 TD -0 Tw -(STATE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0478 Tw -[( items will remain in their current state. If the window is open, the item)]TJ --7.5179 -1.2889 TD -0.0889 Tw -(will be redisplayed with its new appearance. )Tj -/TT19 1 Tf -20.9885 0 TD -0 Tw -(NEWLABEL)Tj -/TT8 1 Tf -5.3887 0 TD -0.0889 Tw -[( can be an atom, a string, or a)]TJ --26.3771 -1.2222 TD -0.2389 Tw -(bitmap \(except for )Tj -/TT10 1 Tf -9.0731 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.2389 Tw -[( items\), and will be restricted in size by the )]TJ -/TT10 1 Tf -21.5403 0 TD -0 Tw -(MAXWIDTH)Tj -/TT8 1 Tf -4.8008 0 TD -0.2389 Tw -[( and)]TJ -/TT10 1 Tf --37.8145 -1.2889 TD -0 Tw -(MAXHEIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.05 Tw -[( Item Properties. If these properties are unspecified, the )]TJ -/TT19 1 Tf -25.4609 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.05 Tw -[( will be able to)]TJ --33.3604 -1.2889 TD -0.07 Tw -(grow to any size. )Tj -/TT19 1 Tf -8.3852 0 TD -0 Tw -(UPDATEFLG)Tj -/TT8 1 Tf -5.9448 0 TD -0.07 Tw -[( specifies whether or not the regions of the groups in the)]TJ --14.33 -1.2222 TD -0.0189 Tw -[(menu are recalculated to take into account the change of size of this item. The application)]TJ -T* -0.0767 Tw -(should not change the label of an )Tj -/TT10 1 Tf -15.4029 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0767 Tw -[( item while it is being edited. The following Item)]TJ --17.8033 -1.2889 TD -(Property is relevant to changing labels: )Tj -/TT10 1 Tf --6.2 -2 TD -0 Tw -(CHANGELABELUPDATE)Tj -/TT8 1 Tf -11.5333 0 TD -0.0056 Tw -(Exactly like )Tj -/TT10 1 Tf -5.3724 0 TD -0 Tw -(UPDATEFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.0056 Tw -[( except specified on the item, rather than as a function)]TJ --10.7733 -1.2889 TD -0 Tw -(paramater.)Tj -/TT10 1 Tf --8 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.CHANGESTATE)Tj -/TT10 1 Tf -8.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X NEWSTATE WINDOW)Tj -/TT10 1 Tf -10.2017 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-17168.1([Function])]TJ --17.7352 -1.8444 TD -0.0233 Tw -(Programmatically changes the state of items and)Tj -/TT10 1 Tf -21.5848 0 TD -0.0556 Tw -[( NWAY)]TJ -/TT8 1 Tf -3.056 0 TD -0.0233 Tw -[( Collections. )]TJ -/TT19 1 Tf -5.9987 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.7222 0 TD -0.0233 Tw -[( is either an item or)]TJ --31.3617 -1.2889 TD -0.0878 Tw -[(a Collection name. For items )]TJ -/TT19 1 Tf -13.9631 0 TD -0 Tw -(NEWSTATE)Tj -/TT8 1 Tf -5.4434 0 TD -0.0878 Tw -[( is a state appropriate to the type of the item.)]TJ --19.4064 -1.2222 TD -0 Tw -(For )Tj -/TT10 1 Tf -1.7637 0 TD -(NWAY)Tj -/TT8 1 Tf -2.4004 0 TD -0.0167 Tw -[( Collections, )]TJ -/TT19 1 Tf -5.712 0 TD -0 Tw -(NEWSTATE)Tj -/TT8 1 Tf -5.4434 0 TD -0.0167 Tw -[( should be the desired item in the Collection, or)]TJ -/TT10 1 Tf -21.1007 0 TD -0.04 Tw -[( NIL)]TJ -/TT8 1 Tf -2.4404 0 TD -0.0167 Tw -[( to)]TJ --38.8606 -1.2889 TD -0.1711 Tw -[(deselect. For )]TJ -/TT10 1 Tf -6.5431 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1711 Tw -[( and)]TJ -/TT10 1 Tf -2.114 0 TD -0.4111 Tw -[( NUMBER)]TJ -/TT8 1 Tf -4.6118 0 TD -0.1711 Tw -[( items, this function just does a label change. If the)]TJ --15.6693 -1.2889 TD -0 Tw -(window is open, the item will be redisplayed.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.RESETSTATE)Tj -/TT10 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM WINDOW)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21368.7([Function])]TJ --13.5346 -1.8444 TD -(Sets an)Tj -/TT19 1 Tf -3.0859 0 TD -( )Tj -/TT14 1 Tf -0.25 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -( back to its initial state.)Tj -/TT10 1 Tf --8.403 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.RESETMENU)Tj -/TT10 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24969.2([Function])]TJ --9.9341 -1.8444 TD -(Resets every item in the menu back to its initial state.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.RESETSHAPE)Tj -/TT10 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW ALWAYSFLG)Tj -/TT10 1 Tf -9.6016 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-18368.2([Function])]TJ --16.5351 -1.8444 TD -0.1478 Tw -(Reshapes the )Tj -/TT14 1 Tf -6.3395 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1478 Tw -[( to its full extent, leaving the lower-left corner unmoved. Unless)]TJ -/TT14 1 Tf --9.9401 -1.2889 TD -0 Tw -(ALWAYSFLG)Tj -/TT8 1 Tf -5.4009 0 TD -0.15 Tw -[( is )]TJ -/TT10 1 Tf -1.5148 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.15 Tw -(, the window will only be increased in size as a result of resetting the)Tj --7.5158 -1.2889 TD -0 Tw -(shape.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.RESETGROUPS)Tj -/TT10 1 Tf -8.3999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-23769.2([Function])]TJ -ET -endstream -endobj -218 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -220 0 obj -<< -/Length 6085 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-60)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.4856 Tw -(Recalculates the extent of each group in the menu, updating group boxes and)Tj -0 -1.2222 TD -0 Tw -(backgrounds appropriately.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.HIGHLIGHTITEM)Tj -/TT10 1 Tf -9.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM WINDOW)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19568.7([Function])]TJ --15.3346 -1.8444 TD -0.2133 Tw -(Programmatically forces an )Tj -/TT19 1 Tf -13.0536 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.2133 Tw -[( to be highlighted. This might be useful for )]TJ -/TT19 1 Tf -21.522 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -(s)Tj --39.5726 -1.2222 TD -0.1144 Tw -[(which have a direct effect on other )]TJ -/TT19 1 Tf -16.6704 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.1144 Tw -[(s in the menu. The )]TJ -/TT19 1 Tf -9.3415 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.1144 Tw -[( will be highlighted)]TJ --31.009 -1.2222 TD -(according to its )Tj -/TT10 1 Tf -7.3751 0 TD -0 Tw -(HIGHLIGHT)Tj -/TT8 1 Tf -5.4009 0 TD -0.1144 Tw -[( property, as described in Section 28.7.12, Free Menu Item)]TJ --12.776 -1.2889 TD -0.0344 Tw -[(Highlighting. This highlight is temporary, and will be lost if the )]TJ -/TT19 1 Tf -29.3282 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.0344 Tw -[( is redisplayed, by)]TJ --31.8267 -1.2222 TD -0 Tw -(scrolling for example.)Tj -/TT4 1 Tf -10 0 0 10 126 450 Tm -(Editor Functions)Tj -/TT10 1 Tf -9 0 0 9 150 429.34 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.EDITITEM)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM WINDOW CLEARFLG)Tj -/TT10 1 Tf -12.002 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-17167.8([Function])]TJ --17.7355 -1.8444 TD -0.1833 Tw -(Starts editing an )Tj -/TT10 1 Tf -8.0144 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1833 Tw -[( or )]TJ -/TT10 1 Tf -1.8076 0 TD -0 Tw -(NUMBER)Tj -/TT8 1 Tf -3.6006 0 TD -( )Tj -/TT19 1 Tf -0.4333 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.1833 Tw -[( at the beginning of the )]TJ -/TT19 1 Tf -11.5522 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -0.1833 Tw -(, as long as the)Tj -/TT19 1 Tf --32.8055 -1.2889 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -4.5542 0 TD -0.0167 Tw -[( is open. This function will most likely be useful for starting editing of an )]TJ -/TT19 1 Tf -32.9429 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf --37.4971 -1.2222 TD -(that is currently the null string. If )Tj -/TT19 1 Tf -15.1689 0 TD -(CLEARFLG)Tj -/TT8 1 Tf -5.0576 0 TD -( is set, the )Tj -/TT19 1 Tf -4.5811 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4985 0 TD -( is cleared first.)Tj -/TT10 1 Tf --29.9728 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.SKIPNEXT)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW CLEARFLG)Tj -/TT10 1 Tf -9.0015 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-20168.3([Function])]TJ --14.735 -1.8444 TD -0.12 Tw -(Causes the editor to jump to the beginning of the next )Tj -/TT10 1 Tf -25.3381 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.12 Tw -[( item in the Free Menu. If)]TJ -/TT14 1 Tf --27.7385 -1.2889 TD -0 Tw -(CLEARFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0001 Tc -0.0032 Tw -( is set, then the next item will be cleared first. If there is not another)Tj -/TT10 1 Tf -29.9532 0 TD -0 Tc -0.0089 Tw -[( EDIT)]TJ -/TT8 1 Tf -3.0094 0 TD -0.0007 Tc -0.0026 Tw -( item)Tj --37.7634 -1.2889 TD -0 Tc -0.0111 Tw -[(in the menu, this function will simply cause editing to stop. If this function is called when)]TJ -0 -1.2222 TD -0.1511 Tw -(editing is not in progress, editing will begin on the first )Tj -/TT10 1 Tf -26.2491 0 TD -0 Tw -(EDIT)Tj -/TT8 1 Tf -2.4004 0 TD -0.1511 Tw -[( item in the menu. This)]TJ --28.6495 -1.2889 TD -0.0222 Tw -(function can be called from any process, and can also be called from inside the editor, in a)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(LIMITCHARS)Tj -/TT8 1 Tf -6.001 0 TD -( function.)Tj -/TT10 1 Tf --8.6676 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.ENDEDIT)Tj -/TT10 1 Tf -5.9999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW WAITFLG)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-21368.4([Function])]TJ --13.5349 -1.8444 TD -0.1022 Tw -(Stops any editing going on in )Tj -/TT14 1 Tf -13.8418 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1022 Tw -[(. If )]TJ -/TT14 1 Tf -1.9766 0 TD -0 Tw -(WAITFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.1022 Tw -[( is )]TJ -/TT10 1 Tf -1.4193 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1022 Tw -(, then block until the editor has)Tj --25.6391 -1.2889 TD -0.3444 Tw -[(completely finished. This function can be called from another process, or from a)]TJ -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(LIMITCHARS)Tj -/TT8 1 Tf -6.001 0 TD -( function.)Tj -/TT10 1 Tf --8.6676 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.EDITP)Tj -/TT10 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-27369.2([Function])]TJ --7.5341 -1.8444 TD -0.0089 Tw -(If an item is in the process of being edited in the Free Menu )Tj -/TT14 1 Tf -26.5595 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0089 Tw -(, that item is returned.)Tj --30.1601 -1.2889 TD -0 Tw -(Otherwise, )Tj -/TT10 1 Tf -5.0962 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( is returned.)Tj -/TT4 1 Tf -12 0 0 12 102 137.64 Tm -(Miscellaneous Functions)Tj -/TT10 1 Tf -9 0 0 9 150 106.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.REDISPLAYMENU)Tj -/TT10 1 Tf -9.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22569.2([Function])]TJ --12.3341 -1.8444 TD -(Redisplays the entire Free Menu in its )Tj -/TT14 1 Tf -16.9673 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(, if the )Tj -/TT14 1 Tf -3.0112 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( is open.)Tj -/TT10 1 Tf --29.8464 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.REDISPLAYITEM)Tj -/TT10 1 Tf -9.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM WINDOW)Tj -/TT10 1 Tf -6.6011 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19568.7([Function])]TJ --15.3346 -1.8444 TD -(Redisplays a particular Free Menu )Tj -/TT14 1 Tf -15.46 0 TD -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -( in its )Tj -/TT14 1 Tf -2.6641 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(, if the )Tj -/TT14 1 Tf -3.0112 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( is open.)Tj -ET -endstream -endobj -221 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -223 0 obj -<< -/Length 6635 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-61)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf -9 0 0 9 102 569.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.SHADE)Tj -/TT10 1 Tf -4.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(X SHADE WINDOW)Tj -/TT10 1 Tf -8.4014 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-22568.4([Function])]TJ -/TT14 1 Tf --12.3349 -1.8444 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0344 Tw -[( can be an item, or a group ID. )]TJ -/TT14 1 Tf -14.2165 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0344 Tw -[( is painted on top of the item or group. Note that)]TJ --17.8171 -1.2889 TD -0.0756 Tw -[(this is a temporary operation, and will be undone by redisplaying. For more permanent)]TJ -0 -1.2222 TD -0.1344 Tw -(shading, the application may be able to add a )Tj -/TT10 1 Tf -21.5044 0 TD -0 Tw -(REDEDISPLAYFN)Tj -/TT8 1 Tf -7.8013 0 TD -0.1344 Tw -[( and )]TJ -/TT10 1 Tf -2.4618 0 TD -0 Tw -(SCROLLFN)Tj -/TT8 1 Tf -4.8008 0 TD -0.1344 Tw -[( for the)]TJ --36.5682 -1.2889 TD -0 Tw -(window as necessary to update the shading.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.WHICHITEM)Tj -/TT10 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW POSorX Y)Tj -/TT10 1 Tf -9.0015 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19568.3([Function])]TJ --15.335 -1.8444 TD -0.0733 Tw -(Locates and identifies an item from its known location within the )Tj -/TT14 1 Tf -29.8643 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0733 Tw -[(. If )]TJ -/TT14 1 Tf -1.8899 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0733 Tw -[( is)]TJ -/TT10 1 Tf --38.9554 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(\(WHICHW\))Tj -/TT8 1 Tf -4.8008 0 TD -( is used, and if )Tj -/TT14 1 Tf -6.6484 0 TD -(POSorX)Tj -/TT8 1 Tf -3.6006 0 TD -( is )Tj -/TT10 1 Tf -1.2148 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(, the current cursor location is used.)Tj -/TT10 1 Tf --23.0319 -2.4 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.TOPGROUPID)Tj -/TT10 1 Tf -7.7999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW)Tj -/TT10 1 Tf -3.6006 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-24369.2([Function])]TJ --10.5341 -1.8444 TD -(Returns the ID of the top group of this Free Menu.)Tj -/TT4 1 Tf -10 0 0 10 78 387 Tm -(Free Menu Macros)Tj -/TT8 1 Tf -9 0 0 9 78 362.34 Tm -0.0822 Tw -(These Accessing Macros are provided to allow the application to get and set information in the Free)Tj -0 -1.2222 TD -0.11 Tw -[(Menu data structures. They are implemented as macros so that the operation will compile into the)]TJ -T* -0 Tw -(actual access form, rather than figuring that out at run time.)Tj -/TT10 1 Tf -2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.ITEMPROP)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(ITEM PROP {VALUE})Tj -/TT10 1 Tf -10.2017 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-20067([Macro])]TJ --15.9352 -1.8444 TD -0.0867 Tw -(Similar to )Tj -/TT10 1 Tf -4.7212 0 TD -0 Tw -(WINDOWPROP)Tj -/TT8 1 Tf -6.001 0 TD -0.0867 Tw -(, this macro provides an easy access to the fields of a Free Menu)Tj --10.7222 -1.2889 TD -0.1589 Tw -(Item. The function )Tj -/TT10 1 Tf -8.8824 0 TD -0 Tw -(FM.GETITEM)Tj -/TT8 1 Tf -6.001 0 TD -0.1589 Tw -[( gets the )]TJ -/TT14 1 Tf -4.399 0 TD -0 Tw -(ITEM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1589 Tw -(, described in Section 28.7.16, Accessing)Tj --21.6828 -1.2889 TD -0.0067 Tw -[(Function. )]TJ -/TT14 1 Tf -4.9502 0 TD -0 Tw -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -[( is optional, and if not given, the current value of the )]TJ -/TT14 1 Tf -23.5375 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0067 Tw -[( property will)]TJ --33.8886 -1.2889 TD -0.0222 Tw -[(be returned. If )]TJ -/TT14 1 Tf -6.9112 0 TD -0 Tw -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0222 Tw -[( is given, it will be used as the new value for that )]TJ -/TT14 1 Tf -22.1024 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0222 Tw -(, and the old)Tj --34.4144 -1.2889 TD -0.0567 Tw -[(value will be returned. When a call to )]TJ -/TT10 1 Tf -17.905 0 TD -0 Tw -(FM.ITEMPROP)Tj -/TT8 1 Tf -6.6011 0 TD -0.0567 Tw -[( is compiled, if the )]TJ -/TT14 1 Tf -8.6549 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( is known)]TJ --35.5614 -1.2889 TD -0.3722 Tw -(\(quoted in the calling form\), the macro figures out what field to access, and the)Tj -0 -1.2222 TD -0.12 Tw -[(appropriate Data Type access form is compiled. However, if the )]TJ -/TT14 1 Tf -30.027 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.12 Tw -[( is not known at)]TJ --32.4274 -1.2889 TD -0.1889 Tw -(compile time, the function )Tj -/TT10 1 Tf -12.6135 0 TD -0 Tw -(FM.ITEMPROP)Tj -/TT8 1 Tf -6.6011 0 TD -0.1889 Tw -(, which goes through the necessary property)Tj --19.2145 -1.2889 TD -0.1344 Tw -(selection at run time, is compiled. The )Tj -/TT10 1 Tf -17.9724 0 TD -0 Tw -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1344 Tw -[( and )]TJ -/TT10 1 Tf -2.4618 0 TD -0 Tw -(USERDATA)Tj -/TT8 1 Tf -4.8008 0 TD -0.1344 Tw -[( properties of a Free Menu)]TJ --27.6353 -1.2889 TD -0.1378 Tw -(Item are Read Only, and an error will result from trying to change the value of one of)Tj -0 -1.2222 TD -0 Tw -(these properties.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.GROUPPROP)Tj -/TT10 1 Tf -7.1999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW GROUP PROP {VALUE)Tj -/TT19 1 Tf -14.4023 0 TD -(})Tj -/TT10 1 Tf -0.333 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-14933.3([Macro])]TJ --21.0689 -1.8444 TD -0.0133 Tw -(Provides access to the Group Properties set up in the )Tj -/TT14 1 Tf -23.6631 0 TD -0 Tw -(PROPS)Tj -/TT8 1 Tf -3.0005 0 TD -0.0133 Tw -[( list for each group in the Free)]TJ --26.6636 -1.2889 TD -0.1044 Tw -(Menu Description. )Tj -/TT14 1 Tf -9.076 0 TD -0 Tw -(GROUP)Tj -/TT8 1 Tf -3.0005 0 TD -0.1044 Tw -[( specifies the )]TJ -/TT10 1 Tf -6.2162 0 TD -0 Tw -(ID)Tj -/TT8 1 Tf -1.2002 0 TD -0.1044 Tw -[( of the desired group, and )]TJ -/TT14 1 Tf -12.3264 0 TD -0 Tw -(PROP)Tj -/TT8 1 Tf -2.4004 0 TD -0.1044 Tw -[( the name of)]TJ --34.2196 -1.2889 TD -0.0467 Tw -[(the desired property. If )]TJ -/TT14 1 Tf -10.9794 0 TD -0 Tw -(VALUE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0467 Tw -[( is specified, it will become the new value of the property,)]TJ --13.9799 -1.2889 TD -0 Tw -(and the old value will be returned. Otherwise, the current value is returned.)Tj -/TT10 1 Tf --2.6667 -2.3333 TD -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.MENUPROP)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW PROP {VALUE)Tj -/TT19 1 Tf -10.8018 0 TD -(})Tj -/TT10 1 Tf -0.333 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-19133.9([Macro])]TJ --16.8683 -1.8444 TD -0.0356 Tw -(Provides access to the group properties of the top-most group in the Free Menu, that is to)Tj -0 -1.2222 TD -0.0289 Tw -(say, the entire menu. This provides an easy way for the application to attach properties to)Tj -T* -0 Tw -(the menu as a whole, as well as access the Group Properties for the entire menu.)Tj -ET -endstream -endobj -224 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -227 0 obj -<< -/Length 6280 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-62)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -9 0 0 9 150 569.54 Tm -(\()Tj -/TT12 1 Tf -0.6001 0 TD -(FM.NWAYPROP)Tj -/TT10 1 Tf -6.5999 0 TD -( )Tj -/TT14 1 Tf -0.6001 0 TD -(WINDOW COLLECTION PROP {VALUE)Tj -/TT19 1 Tf -17.4028 0 TD -(})Tj -/TT10 1 Tf -0.333 0 TD -(\))Tj -/TT8 1 Tf -0.6001 0 TD -[( )-12532.9([Macro])]TJ --28.8027 -2.6222 TD -(This macro works just like)Tj -/TT10 1 Tf -11.6362 0 TD -( FM.GROUPPROP)Tj -/TT8 1 Tf -7.8013 0 TD -(, except it provides access to the)Tj -/TT10 1 Tf -14.0977 0 TD -( NWay)Tj -/TT8 1 Tf -3.0005 0 TD -( Collections.)Tj -/TT4 1 Tf -10 0 0 10 102 492 Tm -(Attached Windows)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 489.29 m -606.01 489.29 l -S -BT -/TT8 1 Tf -9 0 0 9 126 468.34 Tm -0.1333 Tw -[(The attached window facility makes it easy to manipulate a group of window as a unit. Standard)]TJ -0 -1.2222 TD -0.0267 Tw -(window operations like moving, reshaping, opening, and closing can be done so that it appears to the)Tj -T* -0.0189 Tw -[(user as if the windows are a single entity. Each collection of attached windows has one main window)]TJ -T* -0.0822 Tw -[(and any number of other windows that are "attached" to it. Moving or reshaping the main window)]TJ -T* -0.2344 Tw -[(causes all of the attached windows to be moved or reshaped as well. Moving or reshaping an)]TJ -T* -0 Tw -(attached window does not affect the main window.)Tj -0 -2.7778 TD -0.0122 Tw -[(Attached windows can have other windows attached to them. Thus, it is possible to attach window A)]TJ -0 -1.2222 TD -0.0367 Tw -[(to window B when B is already attached to window C. Similarly, if A has other windows attached to)]TJ -T* -0 Tw -(it, it can still be attached to B. )Tj -/TT10 1 Tf -10 0 0 10 150 344.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 344.06 Tm -(ATTACHWINDOW)Tj -/F1 1 Tf -10 0 0 10 220.8 344.06 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.67 344.06 Tm -(WINDOWTOATTACH MAINWINDOW EDGE POSITIONONEDGE)Tj --7.5189 -1.1111 TD -(WINDOWCOMACTION)Tj -/TT10 1 Tf -10 0 0 10 237.0132 334.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 243.0141 334.06 Tm -[( )-27235.1([Function])]TJ --7.6682 -1.8833 TD -(Associates )Tj -/TT14 1 Tf -5.163 0 TD -(WINDOWTOATTACH)Tj -/TT8 1 Tf -8.4014 0 TD -0.2778 Tw -[( with )]TJ -/TT14 1 Tf -3.0888 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.2778 Tw -[( so that window operations done to)]TJ -/TT14 1 Tf --22.6541 -1.2889 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.1944 Tw -[( are also done to )]TJ -/TT14 1 Tf -8.4468 0 TD -0 Tw -(WINDOWTOATTACH)Tj -/TT8 1 Tf -8.4014 0 TD -0.1944 Tw -[( \(the exact set of window operations)]TJ --22.8492 -1.2889 TD -0.3078 Tw -(passed between main windows and attached windows is described in the Window)Tj -0 -1.2278 TD -0.7211 Tw -(Operations and Attached Windows section below\). )Tj -/TT10 1 Tf -10 0 0 10 427.1902 282.86 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 499.202 282.86 Tm -0.7211 Tw -[( moves)]TJ -/TT14 1 Tf --36.1336 -1.3278 TD -0 Tw -(WINDOWTOATTACH)Tj -/TT8 1 Tf -8.4014 0 TD -( to the correct position relative to )Tj -/TT14 1 Tf -14.8433 0 TD -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --29.2456 -2.0667 TD -0.1078 Tw -[(Note: A window can be attached to only one other window. Attaching a window to a)]TJ -0 -1.2222 TD -0.0711 Tw -[(second window will detach it from the first. Attachments can not form loops. That is, a)]TJ -T* -0.5744 Tw -(window cannot be attached to itself or to a window that is attached to it.)Tj -/TT10 1 Tf -10 0 0 10 174 219.26 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 246.0117 219.26 Tm -( will generate an error if this is attempted.)Tj -/TT10 1 Tf -10 0 0 10 174 200.26 Tm -(EDGE)Tj -/TT8 1 Tf -9 0 0 9 198.0039 200.26 Tm -0.0001 Tc -0.0032 Tw -( determines which edge of )Tj -/TT14 1 Tf -11.9522 0 TD -0 Tc -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0001 Tc -0.0032 Tw -( the attached window is positioned along: it)Tj --20.6203 -1.3333 TD -0 Tc -0 Tw -(should be one of )Tj -/TT10 1 Tf -10 0 0 10 242.1723 188.26 Tm -(TOP)Tj -/TT8 1 Tf -9 0 0 9 260.1753 188.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 264.6753 188.26 Tm -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 300.6811 188.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 305.1811 188.26 Tm -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 329.185 188.26 Tm -(, or )Tj -/TT10 1 Tf -10 0 0 10 344.4033 188.26 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 374.4082 188.26 Tm -(. If )Tj -/TT14 1 Tf -1.6699 0 TD -(EDGE)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 421.9746 188.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 439.9775 188.26 Tm -(, it defaults to )Tj -/TT10 1 Tf -10 0 0 10 496.7329 188.26 Tm -(TOP)Tj -/TT8 1 Tf -9 0 0 9 514.7358 188.26 Tm -(.)Tj -/TT14 1 Tf --37.8595 -2.1056 TD -(POSITIONONEDGE)Tj -/TT8 1 Tf -8.4014 0 TD -0.0978 Tw -[( determines where along )]TJ -/TT14 1 Tf -11.584 0 TD -0 Tw -(EDGE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0978 Tw -[( the attached window is positioned. It)]TJ --22.3857 -1.2889 TD -0 Tw -(should be one of the following:)Tj -/TT10 1 Tf -10 0 0 10 186 139.66 Tm -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 222 139.66 Tm -(The attached window is placed on the left \(of a )Tj -/TT10 1 Tf -10 0 0 10 410.4287 139.66 Tm -(TOP)Tj -/TT8 1 Tf -9 0 0 9 428.4316 139.66 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 441.3999 139.66 Tm -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 477.4058 139.66 Tm -( edge\).)Tj -/TT10 1 Tf -10 0 0 10 180 120.66 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 222 120.66 Tm -0.2411 Tw -(The attached window is placed on the right \(of a )Tj -/TT10 1 Tf -10 0 0 10 438.6194 120.66 Tm -0 Tw -(TOP)Tj -/TT8 1 Tf -9 0 0 9 456.6223 120.66 Tm -0.2411 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 473.9306 120.66 Tm -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 222 108.71 Tm -(edge\).)Tj -/TT10 1 Tf -10 0 0 10 174 90.66 Tm -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 222 90.66 Tm -0.1555 Tw -(The attached window is placed on the bottom \(of a )Tj -/TT10 1 Tf -10 0 0 10 440.1875 90.66 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 464.1914 90.66 Tm -0.1556 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 479.9597 90.66 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 222 78.71 Tm -(edge\).)Tj -/TT10 1 Tf -10 0 0 10 192 60.66 Tm -(TOP)Tj -/TT8 1 Tf -9 0 0 9 222 60.66 Tm -(The attached window is placed on the top \(of a )Tj -/TT10 1 Tf -10 0 0 10 410.8242 60.66 Tm -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 434.8281 60.66 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 447.7964 60.66 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 477.8013 60.66 Tm -( edge\).)Tj -/TT10 1 Tf -10 0 0 10 174 41.66 Tm -(CENTER)Tj -/TT8 1 Tf -9 0 0 9 222 41.66 Tm -(The attached window is placed in the center of the edge.)Tj -ET -endstream -endobj -228 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R -/TT19 187 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -230 0 obj -<< -/Length 5146 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-63)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --28.8 -4.251 TD -(JUSTIFY)Tj -/TT8 1 Tf -9 0 0 9 133.28 550.49 Tm -(or )Tj -/TT10 1 Tf -10 0 0 10 143.9982 550.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 174 550.49 Tm -0.0067 Tw -(The attached window is placed to fill the entire edge. )Tj -/TT10 1 Tf -10 0 0 10 389.9656 550.49 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 174 538.54 Tm -(reshapes the window if necessary.)Tj -0 -2 TD -0.0389 Tw -[(Note: The width or height used to justify an attached window includes)]TJ -0 -1.2222 TD -0.1656 Tw -(any other windows that have already been attached to )Tj -/TT14 1 Tf -25.7537 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj --31.7546 -1.2944 TD -(Thus )Tj -/TT10 1 Tf -10 0 0 10 196.2551 497.89 Tm -0.002 Tw -(\(ATTACHWINDOW BBB AAA RIGHT JUSTIFY\))Tj -/TT8 1 Tf -9 0 0 9 424.3722 497.89 Tm -0.0001 Tc -0.001 Tw -( followed)Tj --27.8191 -1.3333 TD -0 Tc -0 Tw -(by )Tj -/TT10 1 Tf -10 0 0 10 186.6344 485.89 Tm -0.107 Tw -(\(ATTACHWINDOW CCC AAA TOP JUSTIFY\))Tj -/TT8 1 Tf -9 0 0 9 406.9495 485.89 Tm -0.0444 Tw -[( will put )]TJ -/TT10 1 Tf -10 0 0 10 444.0352 485.89 Tm -0 Tw -(CCC)Tj -/TT8 1 Tf -9 0 0 9 174 473.89 Tm -(across the top of both )Tj -/TT10 1 Tf -10 0 0 10 261.561 473.89 Tm -(BBB)Tj -/TT8 1 Tf -9 0 0 9 279.5639 473.89 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 299.2998 473.89 Tm -(AAA)Tj -/TT8 1 Tf -9 0 0 9 317.3027 473.89 Tm -(:)Tj -ET -q -120 0 0 -75 174.01 461.39 cm -/Im21 Do -Q -BT -/TT14 1 Tf -9 0 0 9 174 368.39 Tm -(WINDOWCOMACTION)Tj -/TT8 1 Tf -9.0015 0 TD -0.3822 Tw -[( provides a convenient way of specifying how)]TJ -/TT14 1 Tf --9.0015 -1.2889 TD -0 Tw -(WINDOWTOATTACH)Tj -/TT8 1 Tf -8.4014 0 TD -0.2789 Tw -[( responds to right button menu commands. The)]TJ --8.4014 -1.2944 TD -0.1333 Tw -(window property )Tj -/TT10 1 Tf -10 0 0 10 249.2745 345.14 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 333.2882 345.14 Tm -0.1333 Tw -[( determines which right button)]TJ --17.6987 -1.3278 TD -0.28 Tw -(menu commands are directly applied to the attached window, and)Tj -0 -1.2222 TD -0.0267 Tw -(which are passed to the main window \(see the Window Operations and)Tj -T* -0.4722 Tw -[(Attached Windows section below\). Depending on the value of)]TJ -/TT14 1 Tf -0 -1.2278 TD -0 Tw -(WINDOWCOMACTION)Tj -/TT8 1 Tf -9.0015 0 TD -0.4611 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 282.548 300.14 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 366.5617 300.14 Tm -0.4611 Tw -[( window property of)]TJ -/TT14 1 Tf --21.3957 -1.3278 TD -0 Tw -(WINDOWTOATTACH)Tj -/TT8 1 Tf -8.4014 0 TD -( is set as follows:)Tj -/TT10 1 Tf -10 0 0 10 144 269.54 Tm -[(NIL)-1199.7(PASSTOMAINCOMS)]TJ -/TT8 1 Tf -9 0 0 9 258.0136 269.54 Tm -0.0156 Tw -[( is set to )]TJ -/TT10 1 Tf -10 0 0 10 292.9169 269.54 Tm -0.037 Tw -(\(CLOSEW MOVEW SHAPEW SHRINKW)Tj --11.8917 -1.2 TD -0 Tw -(BURYW\))Tj -/TT8 1 Tf -9 0 0 9 210.0058 257.54 Tm -0.3511 Tw -(, so right button menu commands to close, move, shape,)Tj --4.0007 -1.3278 TD -0.1944 Tw -(shrink, and bury are passed to the main window, and all others are)Tj -0 -1.2222 TD -0 Tw -(applied to the attached window.)Tj -/TT10 1 Tf -10 0 0 10 102 216.54 Tm -[(LOCALCLOSE)-1199(PASSTOMAINCOMS)]TJ -/TT8 1 Tf -9 0 0 9 258.0136 216.54 Tm -0.52 Tw -[( is set to )]TJ -/TT10 1 Tf -10 0 0 10 311.0769 216.54 Tm -1.247 Tw -(\(MOVEW SHAPEW SHRINKW)Tj --13.7077 -1.2 TD -0 Tw -(BURYW\))Tj -/TT8 1 Tf -9 0 0 9 210.0058 204.54 Tm -0.3344 Tw -(, which is the same as when )Tj -/TT14 1 Tf -14.8626 0 TD -0 Tw -(WINDOWCOMACTION)Tj -/TT8 1 Tf -9.0015 0 TD -0.3344 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 441.736 204.54 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 459.7389 204.54 Tm -(,)Tj --31.7488 -1.3278 TD -(except that the attached window can be closed independently.)Tj -/TT10 1 Tf -10 0 0 10 138 174.54 Tm -[(HERE)-1199.6(PASSTOMAINCOMS)]TJ -/TT8 1 Tf -9 0 0 9 258.0136 174.54 Tm -0.0544 Tw -[( is set to )]TJ -/TT10 1 Tf -10 0 0 10 294.3169 174.54 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 312.3199 174.54 Tm -0.0544 Tw -(, so all right button menu commands)Tj --15.3689 -1.3278 TD -0 Tw -(are applied to the attached window.)Tj -/TT10 1 Tf -10 0 0 10 138 144.54 Tm -[(MAIN)-1199.6(PASSTOMAINCOMS)]TJ -/TT8 1 Tf -9 0 0 9 258.0136 144.54 Tm -0.0222 Tw -[( is set to )]TJ -/TT10 1 Tf -10 0 0 10 293.1569 144.54 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 299.1579 144.54 Tm -0.0222 Tw -(, so all right button menu commands are)Tj --13.9064 -1.3278 TD -0 Tw -(passed to the main window.)Tj -0 -2.0056 TD -0.3922 Tw -[(Note: If the user wants to set the )]TJ -/TT10 1 Tf -10 0 0 10 338.9199 114.54 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 422.9336 114.54 Tm -0.3922 Tw -[( window)]TJ --27.6593 -1.3278 TD -(property of an attached window to something else, it must be )Tj -0 -1.2278 TD -0.2311 Tw -(done after the window is attached, since )Tj -/TT10 1 Tf -10 0 0 10 350.9071 91.54 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 422.9189 91.54 Tm -0.2311 Tw -[( modifies)]TJ --27.6577 -1.3278 TD -0 Tw -(this window property.)Tj -/TT10 1 Tf -10 0 0 10 102 57.31 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 57.31 Tm -(DETACHWINDOW)Tj -/F1 1 Tf -10 0 0 10 172.8 57.31 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 175.67 57.31 Tm -(WINDOWTODETACH)Tj -/TT10 1 Tf -10 0 0 10 251.2823 57.31 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 444.63 57.31 Tm -([Function])Tj -ET -endstream -endobj -231 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/XObject << -/Im21 232 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -234 0 obj -<< -/Length 7124 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-64)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -(Detaches )Tj -/TT14 1 Tf -4.4367 0 TD -(WINDOWTODETACH)Tj -/TT8 1 Tf -8.4014 0 TD -0.1789 Tw -[( from its main window. Returns a dotted pair \()]TJ -/TT10 1 Tf -10 0 0 10 493.7198 569.49 Tm -0.428 Tw -(EDGE .)Tj --31.972 -1.2 TD -0 Tw -(POSITIONONEDGE)Tj -/TT8 1 Tf -9 0 0 9 258.0136 557.49 Tm -0.2678 Tw -(\) if )Tj -/TT14 1 Tf -1.9926 0 TD -0 Tw -(WINDOWTODETACH)Tj -/TT8 1 Tf -8.4014 0 TD -0.2678 Tw -[( was an attached window, )]TJ -/TT10 1 Tf -10 0 0 10 469.8602 557.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 487.8632 557.49 Tm -0.2678 Tw -[( otherwise.)]TJ --34.8737 -1.3278 TD -0 Tw -(This does not close )Tj -/TT14 1 Tf -8.6069 0 TD -(WINDOWTODETACH)Tj -/TT8 1 Tf -8.4014 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 522.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 522.66 Tm -(DETACHALLWINDOWS)Tj -/F1 1 Tf -10 0 0 10 242.4 522.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 245.27 522.66 Tm -(MAINWINDOW)Tj -/TT10 1 Tf -10 0 0 10 299.2788 522.66 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 522.66 Tm -([Function])Tj --35.4033 -1.8833 TD -(Detaches and closes all windows attached to )Tj -/TT14 1 Tf -19.9019 0 TD -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 150 482.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 482.83 Tm -(FREEATTACHEDWINDOW)Tj -/F1 1 Tf -10 0 0 10 253.2 482.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 256.07 482.83 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 288.4753 482.83 Tm -(\))Tj -/F2 1 Tf -0.6001 0 TD -( )Tj -/TT8 1 Tf -9 0 0 9 492.6299 482.83 Tm -([Function])Tj --35.4033 -1.8833 TD -0.1078 Tw -(Detaches the attached window )Tj -/TT14 1 Tf -14.292 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.1078 Tw -[(. In addition, other attached windows above \(in)]TJ --17.8925 -1.2944 TD -0.02 Tw -(the case of a )Tj -/TT10 1 Tf -10 0 0 10 225.2351 454.23 Tm -0 Tw -(TOP)Tj -/TT8 1 Tf -9 0 0 9 243.2381 454.23 Tm -0.02 Tw -[( attached window\) or below \(in the case of a )]TJ -/TT10 1 Tf -10 0 0 10 422.8935 454.23 Tm -0 Tw -(BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 458.8994 454.23 Tm -0.02 Tw -[( attached window\))]TJ --31.6555 -1.3278 TD -0 Tw -(are moved closer to the main window to fill the gap.)Tj -2.6667 -2 TD -0.9244 Tw -(Note: Attached windows that "reject" the move operation \(see)Tj -/TT10 1 Tf -3.3333 -1.2222 TD -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -8.4014 0 TD -( below\) are not moved.)Tj --11.7347 -2.0667 TD -0.3411 Tw -(Note: )Tj -/TT10 1 Tf -3.6144 0 TD -0 Tw -(FREEATTACHEDWINDOW)Tj -/TT8 1 Tf -10.8018 0 TD -0.3411 Tw -[( currently doesnt handle )]TJ -/TT10 1 Tf -12.7263 0 TD -0 Tw -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -0.3411 Tw -[( or )]TJ -/TT10 1 Tf -2.1231 0 TD -0 Tw -(RIGHT)Tj -/TT8 1 Tf --28.3326 -1.2889 TD -(attached windows.)Tj -/TT10 1 Tf -10 0 0 10 150 360.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 360.8 Tm -(REMOVEWINDOW)Tj -/F1 1 Tf -10 0 0 10 220.8 360.8 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 223.67 360.8 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 256.0753 360.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.0762 360.8 Tm -[( )-25117.1([Function])]TJ --9.7862 -1.8833 TD -(Closes )Tj -/TT14 1 Tf -3.1626 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.04 Tw -(, and calls )Tj -/TT10 1 Tf -4.7626 0 TD -0 Tw -(FREEATTACHEDWINDOW)Tj -/TT8 1 Tf -10.8018 0 TD -0.04 Tw -[( to move other attached windows to fill)]TJ --22.3275 -1.2889 TD -0 Tw -(any gaps.)Tj -/TT10 1 Tf -10 0 0 10 150 309.97 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 309.97 Tm -(REPOSITIONATTACHEDWINDOWS)Tj -/F1 1 Tf -10 0 0 10 291 309.97 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 293.87 309.97 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 326.2752 309.97 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 332.2762 309.97 Tm -[( )-17317.1([Function])]TJ --17.5862 -1.8833 TD -0.0133 Tw -(Repositions every window attached to )Tj -/TT14 1 Tf -17.3064 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0133 Tw -[(, in the order that they were attached. This)]TJ --20.907 -1.2889 TD -0.04 Tw -(is useful as a )Tj -/TT10 1 Tf -6.0316 0 TD -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -5.4009 0 TD -0.04 Tw -[( for main windows with attached window that dont want to be)]TJ --11.4325 -1.2889 TD -0.0478 Tw -(reshaped, but do want to keep their position relative to the main window when the main)Tj -0 -1.2222 TD -0 Tw -(window is reshaped.)Tj -2.6667 -2 TD -0.9244 Tw -(Note: Attached windows that "reject" the move operation \(see)Tj -/TT10 1 Tf -3.3333 -1.2222 TD -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -8.4014 0 TD -( below\) are not moved.)Tj -/TT10 1 Tf -10 0 0 10 150 206.94 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 206.94 Tm -(MAINWINDOW)Tj -/F1 1 Tf -10 0 0 10 210 206.94 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 212.87 206.94 Tm -(WINDOW RECURSEFLG)Tj -/TT10 1 Tf -10 0 0 10 304.6849 206.94 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 310.6859 206.94 Tm -[( )-19716([Function])]TJ --15.1873 -1.8833 TD -(If )Tj -/TT14 1 Tf -0.9655 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[( is not a window, it generates an error. If )]TJ -/TT14 1 Tf -18.9171 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0456 Tw -[( is closed, it returns )]TJ -/TT14 1 Tf -9.0583 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --39.7427 -1.2889 TD -(If )Tj -/TT14 1 Tf -0.961 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[( is not attached to another window, it returns )]TJ -/TT14 1 Tf -20.6083 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0411 Tw -[( itself. If )]TJ -/TT14 1 Tf -4.2284 0 TD -0 Tw -(RECURSEFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.0411 Tw -[( is)]TJ -/TT10 1 Tf --38.9999 -1.2889 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0289 Tw -[( and )]TJ -/TT14 1 Tf -2.2507 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0289 Tw -[( is attached to a window, it returns that window. If )]TJ -/TT14 1 Tf -23.3227 0 TD -0 Tw -(RECURSEFLG)Tj -/TT8 1 Tf -6.001 0 TD -0.0289 Tw -[( is )]TJ -/TT10 1 Tf -1.2726 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.0289 Tw -(, it)Tj --38.848 -1.2889 TD -0.2155 Tw -(returns the first window up the "main window" chain starting at )Tj -/TT14 1 Tf -31.0918 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2156 Tw -[( that is not)]TJ --34.6924 -1.2889 TD -0 Tw -(attached to any other window.)Tj -/TT10 1 Tf -10 0 0 10 150 121.31 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 121.31 Tm -(ATTACHEDWINDOWS)Tj -/F1 1 Tf -10 0 0 10 237 121.31 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 239.87 121.31 Tm -(WINDOW COM)Tj -/TT10 1 Tf -10 0 0 10 293.8788 121.31 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 299.8798 121.31 Tm -[( )-20916.7([Function])]TJ --13.9866 -1.8833 TD -(Returns the list of windows attached to )Tj -/TT14 1 Tf -17.5869 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -(.)Tj --21.1875 -2.0667 TD -(If )Tj -/TT14 1 Tf -0.9521 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0322 Tw -[( is non-)]TJ -/TT10 1 Tf -3.3223 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0322 Tw -(, only those windows attached to )Tj -/TT14 1 Tf -15.0371 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0322 Tw -[( that do not reject the window)]TJ --26.5127 -1.2889 TD -0 Tw -(operation )Tj -/TT14 1 Tf -4.5161 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -( are returned \(see )Tj -/TT10 1 Tf -7.959 0 TD -(REJECTMAINCOMS)Tj -/TT8 1 Tf -8.4014 0 TD -(\).)Tj -/TT10 1 Tf -10 0 0 10 150 51.28 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 51.28 Tm -(ALLATTACHEDWINDOWS)Tj -/F1 1 Tf -10 0 0 10 253.2 51.28 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 256.07 51.28 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 288.4753 51.28 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 294.4762 51.28 Tm -[( )-21517.1([Function])]TJ -ET -endstream -endobj -235 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/F2 17 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -237 0 obj -<< -/Length 8208 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-65)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0344 Tw -(Returns a list of all of the windows attached to )Tj -/TT14 1 Tf -21.1423 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0344 Tw -[( or attached to a window attached)]TJ --24.7429 -1.2889 TD -0 Tw -(to it.)Tj -/TT10 1 Tf -10 0 0 10 102 535.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 535.66 Tm -(WINDOWREGION)Tj -/F1 1 Tf -10 0 0 10 172.8 535.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 175.67 535.66 Tm -(WINDOW COM)Tj -/TT10 1 Tf -10 0 0 10 229.6788 535.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 235.6797 535.66 Tm -[( )-22716.7([Function])]TJ --12.1866 -1.8833 TD -(Returns the screen region occupied by )Tj -/TT14 1 Tf -17.144 0 TD -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -( and its attached windows, if it has any.)Tj --20.7446 -2.0722 TD -(If )Tj -/TT14 1 Tf -0.9388 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -0.0189 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 180.3122 500.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 198.3152 500.06 Tm -0.0189 Tw -(, only those windows attached to )Tj -/TT14 1 Tf -14.9571 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0189 Tw -[( that do not reject the window)]TJ --26.5927 -1.3333 TD -0 Tw -(operation )Tj -/TT14 1 Tf -4.5161 0 TD -(COM)Tj -/TT8 1 Tf -1.8003 0 TD -( are considered in the calculation \(see )Tj -/TT10 1 Tf -10 0 0 10 333.8525 488.06 Tm -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 417.8662 488.06 Tm -(\).)Tj -/TT10 1 Tf -10 0 0 10 102 464.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 464.83 Tm -(WINDOWSIZE)Tj -/F1 1 Tf -10 0 0 10 162 464.83 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.87 464.83 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 197.2753 464.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 203.2762 464.83 Tm -[( )-26317.1([Function])]TJ --8.5862 -1.8889 TD -0.0867 Tw -(Returns the size of )Tj -/TT14 1 Tf -8.7837 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0867 Tw -[( and its attached windows \(if any\), as a dotted pair )]TJ -/TT10 1 Tf -10 0 0 10 449.993 447.83 Tm -0 Tw -(\(WIDTH)Tj --32.3993 -1.2 TD -(. HEIGHT\))Tj -/TT8 1 Tf -9 0 0 9 180.0088 435.83 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 412.6 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 412.6 Tm -(MINATTACHEDWINDOWEXTENT)Tj -/F1 1 Tf -10 0 0 10 232.2 412.6 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 235.07 412.6 Tm -(WINDOW)Tj -/TT10 1 Tf -10 0 0 10 267.4753 412.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 273.4762 412.6 Tm -[( )-18517.1([Function])]TJ --16.3862 -1.8833 TD -0.0144 Tw -(Returns the minimum size that )Tj -/TT14 1 Tf -14.0302 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.0144 Tw -[( and its attached windows \(if any\) will accept, as a)]TJ --17.6308 -1.2944 TD -0 Tw -(dotted pair )Tj -/TT10 1 Tf -10 0 0 10 172.6743 384 Tm -(\(WIDTH . HEIGHT\))Tj -/TT8 1 Tf -9 0 0 9 268.6899 384 Tm -(.)Tj -/TT4 1 Tf -10 0 0 10 78 356.71 Tm -(Attaching Menus To Windows)Tj -/TT8 1 Tf -9 0 0 9 78 332.05 Tm -(The following functions are provided to associate menus to windows.)Tj -/TT10 1 Tf -10 0 0 10 102 309.77 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 309.77 Tm -(MENUWINDOW)Tj -/F1 1 Tf -10 0 0 10 162 309.77 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.87 309.77 Tm -(MENU VERTFLG)Tj -/TT10 1 Tf -10 0 0 10 229.6805 309.77 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 235.6815 309.77 Tm -[( )-22716.5([Function])]TJ --12.1868 -1.8833 TD -0.0178 Tw -(Returns a closed window that has the menu )Tj -/TT14 1 Tf -19.7858 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( in it. If )]TJ -/TT14 1 Tf -3.7491 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0178 Tw -[( is a list, a menu is created)]TJ --28.3356 -1.2944 TD -0 Tw -(with )Tj -/TT14 1 Tf -2.3632 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tw -[( as its )]TJ -/TT10 1 Tf -10 0 0 10 195.4659 281.17 Tm -0 Tw -(ITEMS)Tj -/TT8 1 Tf -9 0 0 9 225.4708 281.17 Tm -0.08 Tw -[( menu field. Otherwise, )]TJ -/TT14 1 Tf -11.2979 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tw -[( should be a menu. The returned)]TJ --24.7507 -1.3333 TD -0.0456 Tw -(window has the appropriate )Tj -/TT10 1 Tf -10 0 0 10 243.0755 269.17 Tm -0 Tw -(RESHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 297.0843 269.17 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 301.9943 269.17 Tm -(MINSIZE)Tj -/TT8 1 Tf -9 0 0 9 344.0012 269.17 Tm -0.0456 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 364.557 269.17 Tm -0 Tw -(MAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 406.5638 269.17 Tm -0.0456 Tw -[( window properties)]TJ --31.1738 -1.3278 TD -0 Tw -(to allow its use in a window group.)Tj -0 -2.0056 TD -0.06 Tw -(If both the )Tj -/TT10 1 Tf -10 0 0 10 170.9501 239.17 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 218.9579 239.17 Tm -0.06 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 239.7737 239.17 Tm -0 Tw -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 305.7845 239.17 Tm -0.06 Tw -[( fields of )]TJ -/TT14 1 Tf -4.2376 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.06 Tw -[( are )]TJ -/TT10 1 Tf -10 0 0 10 383.4727 239.17 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 401.4756 239.17 Tm -(, )Tj -/TT14 1 Tf -0.56 0 TD -(VERTFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.06 Tw -[( is used to)]TJ --35.3691 -1.3333 TD -0.1056 Tw -[(set the default menu shape. If )]TJ -/TT14 1 Tf -14.3009 0 TD -0 Tw -(VERTFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.1056 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 323.7346 227.17 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 341.7375 227.17 Tm -0.1056 Tw -(, the )Tj -/TT10 1 Tf -10 0 0 10 362.8724 227.17 Tm -0 Tw -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 428.8831 227.17 Tm -0.1056 Tw -[( field of )]TJ -/TT14 1 Tf -3.9505 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf --37.6041 -1.3333 TD -0.0089 Tw -(will be set to 1 \(the menu items will be listed vertically\); otherwise the )Tj -/TT10 1 Tf -10 0 0 10 407.3417 215.17 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 455.3495 215.17 Tm -0.0089 Tw -[( field of)]TJ -/TT14 1 Tf --36.5944 -1.3278 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -( will be set to 1 \(the menu items will be listed horizontally\).)Tj -/TT10 1 Tf -10 0 0 10 102 180.34 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 180.34 Tm -(ATTACHMENU)Tj -/F1 1 Tf -10 0 0 10 162 180.34 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 164.87 180.34 Tm -(MENU MAINWINDOW EDGE POSITIONONEDGE NOOPENFLG)Tj -/TT10 1 Tf -10 0 0 10 407.9095 180.34 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 413.9105 180.34 Tm -[( )-2913.3([Function])]TJ --31.9901 -1.8833 TD -0.0656 Tw -(Creates a window that contains the menu )Tj -/TT14 1 Tf -19.0819 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0656 Tw -[( \(by calling )]TJ -/TT14 1 Tf -5.3441 0 TD -0 Tw -(MENUWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0656 Tw -(\) and attaches it)Tj --32.8274 -1.2889 TD -0.1744 Tw -(to the window )Tj -/TT14 1 Tf -7.2304 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.1744 Tw -[( on edge )]TJ -/TT14 1 Tf -4.5263 0 TD -0 Tw -(EDGE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1744 Tw -[( at position )]TJ -/TT14 1 Tf -5.7064 0 TD -0 Tw -(POSITIONONEDGE)Tj -/TT8 1 Tf -8.4014 0 TD -0.1744 Tw -[(. The menu)]TJ --34.2658 -1.2944 TD -0 Tw -(window is opened unless )Tj -/TT14 1 Tf -11.5132 0 TD -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -( is closed, or )Tj -/TT14 1 Tf -5.7002 0 TD -(NOOPENFLG)Tj -/TT8 1 Tf -5.4009 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 394.4707 140.14 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 400.4717 140.14 Tm -(.)Tj --30.4969 -2.1111 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 134.4493 121.14 Tm -(EDGE)Tj -/TT8 1 Tf -9 0 0 9 158.4532 121.14 Tm -0.0189 Tw -[( is either )]TJ -/TT10 1 Tf -10 0 0 10 195.117 121.14 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 219.1209 121.14 Tm -0.0189 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 232.4291 121.14 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 262.434 121.14 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 267.104 121.14 Tm -(MENUWINDOW)Tj -/TT8 1 Tf -9 0 0 9 327.1138 121.14 Tm -0.0189 Tw -[( will be called with )]TJ -/TT10 1 Tf -10 0 0 10 405.7075 121.14 Tm -0.045 Tw -(VERTFLG = T)Tj -/TT8 1 Tf -9 0 0 9 472.6182 121.14 Tm -0.0189 Tw -(, so)Tj --38.5131 -1.3278 TD -0.3856 Tw -(the menu items will be listed vertically; otherwise the menu items will be listed)Tj -0 -1.2278 TD -0.4189 Tw -[(horizontally. These defaults can be overridden by specifying the )]TJ -/TT10 1 Tf -10 0 0 10 423.4871 98.14 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 471.4949 98.14 Tm -0.4189 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 126 86.14 Tm -0 Tw -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 192.0107 86.14 Tm -( fields in )Tj -/TT14 1 Tf -4.0518 0 TD -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 62.91 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 62.91 Tm -(CREATEMENUEDWINDOW)Tj -/F1 1 Tf -10 0 0 10 205.2 62.91 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 208.07 62.91 Tm -(MENU WINDOWTITLE LOCATION WINDOWSPEC)Tj -/TT10 1 Tf -10 0 0 10 402.5016 62.91 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 408.5026 62.91 Tm -[( )-3514.2([Function])]TJ -ET -endstream -endobj -238 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -240 0 obj -<< -/Length 4579 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-66)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0056 Tw -(Creates a window with an attached menu and returns the main window. )Tj -/TT14 1 Tf -32.75 0 TD -0 Tw -(MENU)Tj -/TT8 1 Tf -2.4004 0 TD -0.0056 Tw -[( is the only)]TJ --35.1504 -1.2889 TD -0.0233 Tw -(required argument, and may be a menu or a list of menu items. )Tj -/TT14 1 Tf -28.7764 0 TD -0 Tw -(WINDOWTITLE)Tj -/TT8 1 Tf -6.6011 0 TD -0.0233 Tw -[( is a string)]TJ --35.3774 -1.2889 TD -0.0667 Tw -(specifying the title of the main window. )Tj -/TT14 1 Tf -18.6608 0 TD -0 Tw -(LOCATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0667 Tw -[( specifies the edge on which to place)]TJ --23.4616 -1.2944 TD -0.2622 Tw -(the menu; the default is )Tj -/TT10 1 Tf -10 0 0 10 281.9128 534.6899 Tm -0 Tw -(TOP)Tj -/TT8 1 Tf -9 0 0 9 299.9157 534.6899 Tm -0.2622 Tw -(. )Tj -/TT14 1 Tf -1.2744 0 TD -0 Tw -(WINDOWSPEC)Tj -/TT8 1 Tf -6.001 0 TD -0.2622 Tw -[( is a region specifying a region for the)]TJ --21.2661 -1.3333 TD -0 Tw -(aggregate window; if )Tj -/TT10 1 Tf -10 0 0 10 261.0249 522.6899 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 279.0278 522.6899 Tm -(, the user is prompted for a region.)Tj --11.6698 -2.4389 TD -(Examples:)Tj -/TT10 1 Tf -10 0 0 10 210 482.69 Tm -(\(SETQ MENUW)Tj -0 -1 TD -( \(MENUWINDOW)Tj -T* -( \(create MENU)Tj -T* -( ITEMS )Tj -/TT15 1 Tf -8.4014 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(smaller LARGER\))Tj --9.3882 -1 TD -( MENUFONT )Tj -/TT15 1 Tf -10.2017 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(MODERN 12\))Tj --11.1885 -1 TD -( TITLE )Tj -/TT15 1 Tf -8.4014 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( "zoom controls")Tj --9.3882 -1 TD -( CENTERFLG )Tj -/TT15 1 Tf -10.8018 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T)Tj --11.7886 -1 TD -( WHENSELECTEDFN )Tj -/TT15 1 Tf -13.8022 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(FUNCTION ZOOMMAINWINDOW\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 174 395.69 Tm -0.0578 Tw -(creates \(but does not open\) a menu window that contains the two items ")Tj -/TT10 1 Tf -10 0 0 10 470.6321 395.69 Tm -0 Tw -(smaller)Tj -/TT8 1 Tf -9 0 0 9 512.6389 395.69 Tm -0.0578 Tw -(" and)Tj --37.6265 -1.3333 TD -0 Tw -(")Tj -/TT10 1 Tf -10 0 0 10 177.3398 383.69 Tm -(LARGER)Tj -/TT8 1 Tf -9 0 0 9 213.3457 383.69 Tm -0.0722 Tw -(" with the title "zoom controls" and that calls the function )Tj -/TT10 1 Tf -10 0 0 10 449.9649 383.69 Tm -0 Tw -(ZOOMMAINWINDOW)Tj -/TT8 1 Tf -9 0 0 9 174 371.74 Tm -0.1111 Tw -[(when an item is selected. Note that the menu items will be listed horizontally, because)]TJ -/TT10 1 Tf -10 0 0 10 174 360.69 Tm -0 Tw -(MENUWINDOW)Tj -/TT8 1 Tf -9 0 0 9 234.0097 360.69 Tm -0.0422 Tw -[( is called with )]TJ -/TT10 1 Tf -10 0 0 10 292.8037 360.69 Tm -0.101 Tw -(VERTFLG = NIL)Tj -/TT8 1 Tf -9 0 0 9 372.8364 360.69 Tm -0.0422 Tw -(, and the menu does not specify either a)Tj -/TT10 1 Tf -10 0 0 10 174 348.69 Tm -0 Tw -(MENUROWS)Tj -/TT8 1 Tf -9 0 0 9 222.0078 348.69 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 234.976 348.69 Tm -(MENUCOLUMNS)Tj -/TT8 1 Tf -9 0 0 9 300.9868 348.69 Tm -( field.)Tj -/TT10 1 Tf -10 0 0 10 210 329.69 Tm -(\(ATTACHWINDOW MENUW)Tj -0 -1 TD -( \(CREATEW \(50 50 150 50\)\))Tj -T* -( TOP)Tj -T* -( JUSTIFY\))Tj -/TT8 1 Tf -9 0 0 9 174 282.74 Tm -(creates a window on the screen and attaches the above created menu window to its top:)Tj -ET -q -112.5 0 0 -56.25 306.01 273.19 cm -/Im22 Do -Q -BT -/TT10 1 Tf -10 0 0 10 210 203.44 Tm -(\(CREATEMENUEDWINDOW)Tj -T* -( \(create MENU)Tj -T* -( ITEMS )Tj -/TT15 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(smaller LARGER\))Tj --8.188 -1 TD -( MENUFONT )Tj -/TT15 1 Tf -9.0015 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(MODERN 12\))Tj --9.9883 -1 TD -( TITLE )Tj -/TT15 1 Tf -7.2012 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( "zoom controls")Tj --8.188 -1 TD -( CENTERFLG )Tj -/TT15 1 Tf -9.6016 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( T)Tj --10.5884 -1 TD -( WHENSELECTEDFN )Tj -/TT15 1 Tf -12.602 0 TD -<0040>Tj -/TT10 1 Tf -0.9868 0 TD -( \(FUNCTION ZOOMMAINWINDOW\)\)\)\))Tj -/TT8 1 Tf -9 0 0 9 174 126.49 Tm -(creates the same sort of window in one step, prompting the user for a region.)Tj -/TT4 1 Tf -10 0 0 10 126 100.15 Tm -(Attached Prompt Windows)Tj -/TT8 1 Tf -9 0 0 9 126 75.49 Tm -0.0556 Tw -(Many packages have a need to display status information or prompt for small amounts of user input)Tj -0 -1.2222 TD -0.0233 Tw -[(in a place outside their standard window. A convenient way to do this is to attach a small window to)]TJ -T* -0.0678 Tw -[(the top of the programs main window. The following functions do so in a uniform way that can be)]TJ -T* -0 Tw -(depended on among diverse applications.)Tj -ET -endstream -endobj -241 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT14 11 0 R -/TT15 76 0 R ->> -/XObject << -/Im22 242 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -244 0 obj -<< -/Length 5948 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-67)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT10 1 Tf --30.6 -4.374 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 568.26 Tm -(GETPROMPTWINDOW)Tj -/F1 1 Tf -10 0 0 10 189 568.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 191.87 568.26 Tm -(MAINWINDOW #LINES FONT DONTCREATE)Tj -/TT10 1 Tf -10 0 0 10 370.099 568.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 376.1 568.26 Tm -[( )-7114.4([Function])]TJ --27.7889 -1.8833 TD -0.4178 Tw -(Returns the attached prompt window associated with )Tj -/TT14 1 Tf -26.9342 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.4178 Tw -(, creating it if)Tj --32.9352 -1.2944 TD -0.0678 Tw -[(necessary. The window is always attached to the top of )]TJ -/TT14 1 Tf -25.5991 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0678 Tw -(, has )Tj -/TT10 1 Tf -10 0 0 10 431.9232 539.66 Tm -0 Tw -(DSPSCROLL)Tj -/TT8 1 Tf -9 0 0 9 126 527.66 Tm -(set to )Tj -/TT10 1 Tf -10 0 0 10 149.4097 527.66 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 155.4106 527.66 Tm -(, and has a )Tj -/TT10 1 Tf -10 0 0 10 199.9492 527.66 Tm -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 259.959 527.66 Tm -( of )Tj -/TT10 1 Tf -10 0 0 10 272.3691 527.66 Tm -(NILL)Tj -/TT8 1 Tf -9 0 0 9 296.373 527.66 Tm -( to inhibit page holding. The window is at least)Tj -/TT14 1 Tf --18.9303 -1.3278 TD -(#LINES)Tj -/TT8 1 Tf -3.6006 0 TD -0.0444 Tw -[( lines high \(default 1\); if a pre-existing window is shorter than that, it is reshaped)]TJ --3.6006 -1.2889 TD -0.0189 Tw -(to make it large enough. )Tj -/TT14 1 Tf -11.3399 0 TD -0 Tw -(FONT)Tj -/TT8 1 Tf -2.4004 0 TD -0.0189 Tw -[( is the font to give the prompt window \(defaults to the font)]TJ --13.7403 -1.2889 TD -0 Tw -(of )Tj -/TT14 1 Tf -1.2189 0 TD -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.09 Tw -[(\), and applies only when the window is first created. If )]TJ -/TT14 1 Tf -25.7177 0 TD -0 Tw -(DONTCREATE)Tj -/TT8 1 Tf -6.001 0 TD -0.09 Tw -[( is)]TJ --38.9386 -1.2889 TD -0 Tw -(true, returns the window if it exists, otherwise NIL without creating any prompt window.)Tj -/TT10 1 Tf -10 0 0 10 102 458.63 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 458.63 Tm -(REMOVEPROMPTWINDOW)Tj -/F1 1 Tf -10 0 0 10 205.2 458.63 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 208.07 458.63 Tm -(MAINWINDOW)Tj -/TT10 1 Tf -10 0 0 10 262.0788 458.63 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 268.0797 458.63 Tm -[( )-19116.7([Function])]TJ --15.7866 -1.8833 TD -0.0889 Tw -(Detaches the attached prompt window associated with )Tj -/TT14 1 Tf -25.1628 0 TD -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -6.001 0 TD -0.0889 Tw -[( \(if any\), and closes)]TJ --31.1637 -1.2889 TD -0 Tw -(it.)Tj -/TT4 1 Tf -10 0 0 10 78 403.74 Tm -(Window Operations And Attached Windows)Tj -/TT8 1 Tf -9 0 0 9 78 379.08 Tm -0.0167 Tw -(When a window operation, such as moving or clearing, is performed on a window, there is a question)Tj -0 -1.2222 TD -0.2078 Tw -(about whether or not that operation should also be performed on the windows attached to it or)Tj -T* -0.0122 Tw -[(performed on the window it is attached to. The "right" thing to do depends on the window operation:)]TJ -T* -0.2222 Tw -(it makes sense to independently redisplay a single window in a collection of windows, whereas)Tj -T* -0.0433 Tw -[(moving a single window usually implies moving the whole group of windows. The interpretation of)]TJ -T* -0.1378 Tw -[(window operations also depends on the application that the window group is used for. For some)]TJ -T* -0.0833 Tw -(applications, it may be desirable to have a window group where individual windows can be moved)Tj -T* -0.2311 Tw -[(away from the group, but still be conceptually attached to the group for other operations. The)]TJ -T* -0 Tw -(attached window facility is flexible enough to allow all of these possibilities.)Tj -0 -2.7778 TD -0.2711 Tw -(The operation of window operations can be specified by each attached window, by setting the)Tj -0 -1.2222 TD -0 Tw -(following two window properties:)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -8.4 0 TD -[( )-25083.3([Window Property])]TJ --5.7333 -1.85 TD -0.0933 Tw -(Value is a list of window commands \(e.g. )Tj -/TT10 1 Tf -10 0 0 10 298.8508 217.43 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 334.8567 217.43 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 340.1967 217.43 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 370.2016 217.43 Tm -0.0933 Tw -(\) which, when selected from)Tj --27.1335 -1.3278 TD -(the attached windows right-button menu, are actually applied to the central window in)Tj -0 -1.2222 TD -0.0489 Tw -[(the group, instead of being applied to the attached window itself. The "central window")]TJ -T* -0 Tw -(is the first window up the "main window" chain that is not attached to any other window.)Tj -0 -2.0056 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 134.5693 165.43 Tm -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 218.5829 165.43 Tm -0.0322 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 230.0965 165.43 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 248.0995 165.43 Tm -0.0322 Tw -(, all window operations are directly applied to the attached)Tj --13.5666 -1.3333 TD -0.1544 Tw -[(window. If )]TJ -/TT10 1 Tf -10 0 0 10 178.4791 153.43 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 262.4927 153.43 Tm -0.1544 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 276.2063 153.43 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 282.2073 153.43 Tm -0.1544 Tw -(, all window operations are passed to the central)Tj --17.3564 -1.3278 TD -0 Tw -(window.)Tj -0 -2.0056 TD -(Note: )Tj -/TT10 1 Tf -10 0 0 10 162 123.43 Tm -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 234.0117 123.43 Tm -0.2733 Tw -[( allows this window property to be set to commonly-used)]TJ --8.668 -1.3333 TD -0.19 Tw -(values by using its )Tj -/TT10 1 Tf -10 0 0 10 239.0543 111.43 Tm -0 Tw -(WINDOWCOMACTION)Tj -/TT8 1 Tf -9 0 0 9 329.069 111.43 Tm -0.19 Tw -[( argument. )]TJ -/TT10 1 Tf -10 0 0 10 382.1169 111.43 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 454.1287 111.43 Tm -0.19 Tw -[( always)]TJ --33.1254 -1.3278 TD -0.0022 Tw -(sets this window property, so users must modify it directly only after attaching the)Tj -0 -1.2222 TD -0 Tw -(window to another window.)Tj -/TT12 1 Tf --6 -2.3333 TD -(REJECTMAINCOMS)Tj -/TT8 1 Tf -8.4 0 TD -[( )-25083.3([Window Property])]TJ -ET -endstream -endobj -245 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -247 0 obj -<< -/Length 6734 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-68)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.12 Tw -(Value is a list of window commands that the attached window will not allow the main)Tj -0 -1.2222 TD -0.2289 Tw -[(window to apply to it. This is how a window can say "leave me out of this group)]TJ -T* -0 Tw -(operation.")Tj -0 -2.0056 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 183.6093 529.49 Tm -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 267.6229 529.49 Tm -0.1478 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 281.2165 529.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 299.2195 529.49 Tm -0.1478 Tw -(, all window commands may be applied to this attached)Tj --13.9133 -1.3333 TD -0.2022 Tw -[(window. If )]TJ -/TT10 1 Tf -10 0 0 10 227.7691 517.49 Tm -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 311.7827 517.49 Tm -0.2022 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 326.3563 517.49 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 332.3573 517.49 Tm -0.2022 Tw -(, no window commands may be applied to this)Tj --17.5953 -1.3278 TD -0 Tw -(attached window.)Tj --5.3333 -2.7833 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 146.34 480.49 Tm -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 230.3537 480.49 Tm -0.3344 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 256.12 480.49 Tm -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 340.1337 480.49 Tm -0.3344 Tw -[( window properties affect right-button menu)]TJ --23.7926 -1.3278 TD -0.0778 Tw -(operations applied to main windows or attached windows, and the action of programmatic window)Tj -0 -1.2278 TD -(functions \()Tj -/TT10 1 Tf -10 0 0 10 169.1248 457.49 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 205.1306 457.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 210.3307 457.49 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 240.3355 457.49 Tm -0.0778 Tw -[(, etc.\) applied to main windows. However, these window properties do)]TJ --12.7039 -1.3278 TD -0 Tw -(not affect the action of window functions applied to attached windows.)Tj -0 -2.7778 TD -0.3789 Tw -(The following list describes the behavior of main and attached windows under the window)Tj -0 -1.2278 TD -0.0289 Tw -(operations, assuming that all attached windows have their )Tj -/TT10 1 Tf -10 0 0 10 363.0512 409.49 Tm -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 447.0648 409.49 Tm -0.0289 Tw -[( window property set)]TJ --35.6739 -1.3333 TD -0 Tw -(to )Tj -/TT10 1 Tf -10 0 0 10 136.5086 397.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 154.5115 397.49 Tm -0.0456 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 175.0674 397.49 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 259.0811 397.49 Tm -0.0456 Tw -[( set to \()]TJ -/TT10 1 Tf -10 0 0 10 288.9678 397.49 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 324.9737 397.49 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 327.6337 397.49 Tm -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 357.6385 397.49 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 360.2985 397.49 Tm -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 396.3044 397.49 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 398.9644 397.49 Tm -(SHRINKW)Tj -/TT8 1 Tf -9 0 0 9 440.9713 397.49 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 443.6312 397.49 Tm -(BURYW)Tj -/TT8 1 Tf -9 0 0 9 473.6361 397.49 Tm -0.0456 Tw -(\) \(the default if)Tj -/TT10 1 Tf -10 0 0 10 126 385.49 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 198.0117 385.49 Tm -( is called with )Tj -/TT10 1 Tf -10 0 0 10 255.2856 385.49 Tm -(WINDOWCOMACTION = NIL)Tj -/TT8 1 Tf -9 0 0 9 381.3061 385.49 Tm -(\). )Tj --28.3674 -2.8833 TD -0.0578 Tw -(The behavior for any particular operation can be changed for particular attached windows by setting)Tj -0 -1.2278 TD -0.0422 Tw -(the standard window properties \(e.g., )Tj -/TT10 1 Tf -10 0 0 10 280.3507 348.49 Tm -0 Tw -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 316.3565 348.49 Tm -0.0422 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 330.0848 348.49 Tm -0 Tw -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 372.0916 348.49 Tm -0.0422 Tw -[(\) of the attached window. An exception)]TJ --27.3435 -1.3333 TD -0.0433 Tw -(is the )Tj -/TT10 1 Tf -10 0 0 10 150.1984 336.49 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 192.2053 336.49 Tm -0.0433 Tw -[( property of an attached window, that is set to bring the whole window group to the)]TJ --7.3561 -1.3333 TD -0.1233 Tw -(top and should not be set by the user \(although users can add functions to the )Tj -/TT10 1 Tf -10 0 0 10 455.3147 324.49 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 497.3215 324.49 Tm -0.1233 Tw -[( window)]TJ --41.258 -1.3278 TD -0 Tw -(property\).)Tj -/TT10 1 Tf -10 0 0 10 186 294.49 Tm -(Move)Tj -/TT8 1 Tf -9 0 0 9 222 294.49 Tm -0.0344 Tw -(If the main window moves, all attached windows move with it, and the)Tj -T* -0.4644 Tw -(relative positioning between the main window and the attached)Tj -0 -1.2222 TD -0.1444 Tw -[(windows is maintained. If the region is determined interactively, the)]TJ -T* -0.2478 Tw -(prompt region for the move is the union of the extent of the main)Tj -0 -1.2278 TD -0.2311 Tw -(window and all attached windows \(excluding those with )Tj -/TT10 1 Tf -10 0 0 10 467.7664 249.49 Tm -0 Tw -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 497.7713 249.49 Tm -0.2311 Tw -[( in)]TJ --30.6413 -1.3333 TD -0 Tw -(their )Tj -/TT10 1 Tf -10 0 0 10 242.9092 237.49 Tm -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 326.9228 237.49 Tm -( window property\).)Tj --11.6581 -2.1111 TD -0.1589 Tw -(If an attached window is moved by calling the function )Tj -/TT10 1 Tf -10 0 0 10 458.3732 218.49 Tm -0 Tw -(MOVEW)Tj -/TT8 1 Tf -9 0 0 9 488.3781 218.49 Tm -0.1589 Tw -(, it is)Tj --29.5976 -1.3278 TD -0.03 Tw -[(moved without affecting the main window. If the right-button window)]TJ -0 -1.2222 TD -0.0589 Tw -(menu command Move is called on an attached window, it is passed on)Tj -T* -0 Tw -(to the main window, so that all windows in the group move.)Tj -/TT10 1 Tf -10 0 0 10 168 166.49 Tm -(Reshape)Tj -/TT8 1 Tf -9 0 0 9 222 166.49 Tm -0.1256 Tw -(If the main window is reshaped, the minimum size of it and all of its)Tj -0 -1.3278 TD -0.1167 Tw -(attached windows is used as the minimum of the space for the result.)Tj -0 -1.2222 TD -0.1878 Tw -(Any space greater than the minimum is distributed among the main)Tj -0 -1.2278 TD -0.1078 Tw -[(window and its attached windows. Attached windows with )]TJ -/TT10 1 Tf -10 0 0 10 473.9277 132.49 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 222 120.49 Tm -0.4011 Tw -(on their )Tj -/TT10 1 Tf -10 0 0 10 262.5305 120.49 Tm -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 346.5442 120.49 Tm -0.4011 Tw -[( window property are ignored when)]TJ --13.8382 -1.3278 TD -0.2467 Tw -(finding the minimum size, creating a "ghost" region, or distributing)Tj -0 -1.2222 TD -0 Tw -(space after a reshape. )Tj -0 -2.0056 TD -0.0211 Tw -(If an attached window is reshaped by calling the function )Tj -/TT10 1 Tf -10 0 0 10 454.8589 79.49 Tm -0 Tw -(SHAPEW)Tj -/TT8 1 Tf -9 0 0 9 490.8648 79.49 Tm -0.0211 Tw -(, it is)Tj --29.8739 -1.3278 TD -0.13 Tw -[(reshaped independently. If the right-button window menu command)]TJ -0 -1.2222 TD -0.2144 Tw -(Shape is called on an attached window, it is passed on to the main)Tj -T* -0 Tw -(window, so the whole group is reshaped.)Tj -ET -endstream -endobj -248 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -250 0 obj -<< -/Length 4707 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-69)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.5011 Tw -[(Note: Reshaping the main window will restore the conditions)]TJ -0 -1.2278 TD -0.0989 Tw -(established by the call to )Tj -/TT10 1 Tf -10 0 0 10 278.3904 558.49 Tm -0 Tw -(ATTACHWINDOW)Tj -/TT8 1 Tf -9 0 0 9 350.4021 558.49 Tm -0.0989 Tw -(, whereas moving the main)Tj --19.6002 -1.3278 TD -0.0133 Tw -[(window does not. Thus, if A is attached to the top of B and then moved)]TJ -0 -1.2222 TD -0.1978 Tw -(by the user, its new position relative to B will be maintained if B is)Tj -T* -0.4133 Tw -[(moved. If B is reshaped, A will be reshaped to the top of B.)]TJ -T* -0.0222 Tw -(Additionally, if, while A is moved away from the top of B, C is attached)Tj -T* -0 Tw -(to the top of B, C will position itself above where A used to be.)Tj -/TT10 1 Tf -10 0 0 10 132 484.49 Tm -(Close)Tj -/TT8 1 Tf -9 0 0 9 174 484.49 Tm -0.1511 Tw -(If the main window is closed, all of the attached windows are closed)Tj -0 -1.3278 TD -(also and the links from the attached windows to the main )Tj -26.6667 0 TD -0.01 Tw -(window are)Tj --26.6667 -1.2222 TD -0 Tw -(broken. This is necessary for the windows to be garbage collected.)Tj -0 -2.0056 TD -0.1278 Tw -(If an attached window is closed by calling the function )Tj -/TT10 1 Tf -10 0 0 10 404.9716 443.49 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 440.9775 443.49 Tm -0.1278 Tw -(, it is)Tj --29.6642 -1.3278 TD -0.0589 Tw -[(closed without affecting the main window. If the right-button window)]TJ -0 -1.2278 TD -0.1167 Tw -(menu command )Tj -/TT10 1 Tf -10 0 0 10 243.556 420.49 Tm -0 Tw -(Close)Tj -/TT8 1 Tf -9 0 0 9 273.5609 420.49 Tm -0.1167 Tw -[( is called on an attached window, it is passed)]TJ --11.0623 -1.3278 TD -0.3689 Tw -[(on to the main window. Note that closing an attached window)]TJ -0 -1.2222 TD -0 Tw -(detaches it.)Tj -/TT10 1 Tf -10 0 0 10 138 379.49 Tm -(Open)Tj -/TT8 1 Tf -9 0 0 9 174 379.49 Tm -0.2778 Tw -(If the main window is opened, it opens all attached windows and)Tj -0 -1.3278 TD -0 Tw -(reestablishes links from them to the main window.)Tj -0 -2 TD -0.2689 Tw -(Attached windows can be opened independently and this does not)Tj -0 -1.2222 TD -0.2033 Tw -[(affect the main window. Note that it is possible to reopen a closed)]TJ -T* -0 Tw -(attached window and not have it linked to its main window.)Tj -/TT10 1 Tf -10 0 0 10 126 309.49 Tm -(Shrink)Tj -/TT8 1 Tf -9 0 0 9 174 309.49 Tm -0.0633 Tw -[(The collection of windows shrinks as a group. The )]TJ -/TT10 1 Tf -10 0 0 10 384.1512 309.49 Tm -0 Tw -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 432.159 309.49 Tm -0.0633 Tw -(s of the)Tj --28.6843 -1.3278 TD -0.0778 Tw -(attached windows are evaluated but the only icon displayed is the one)Tj -0 -1.2222 TD -0 Tw -(for the main window.)Tj -/TT10 1 Tf -10 0 0 10 108 268.49 Tm -(Redisplay)Tj -/TT8 1 Tf -9 0 0 9 174 268.49 Tm -(The main or attached windows can be redisplayed independently.)Tj -/TT10 1 Tf -10 0 0 10 132 249.49 Tm -(Totop)Tj -/TT8 1 Tf -9 0 0 9 174 249.49 Tm -0.1144 Tw -(If any main or attached window is brought to the top, all of the other)Tj -0 -1.3278 TD -0 Tw -(windows are brought to the top also.)Tj -/TT10 1 Tf -10 0 0 10 126 219.49 Tm -(Expand)Tj -/TT8 1 Tf -9 0 0 9 174 219.49 Tm -(Expanding any of the windows expands the whole collection.)Tj -/TT10 1 Tf -10 0 0 10 108 200.49 Tm -(Scrolling)Tj -/TT8 1 Tf -9 0 0 9 174 200.49 Tm -(All of the windows involved in the group scroll independently.)Tj -/TT10 1 Tf -10 0 0 10 132 181.49 Tm -(Clear)Tj -/TT8 1 Tf -9 0 0 9 174 181.49 Tm -(All windows clear independently of each other.)Tj -/TT4 1 Tf -10 0 0 10 78 154.2 Tm -(Window Properties Of Attached Windows)Tj -/TT8 1 Tf -9 0 0 9 78 129.54 Tm -0.0989 Tw -(Windows that are involved in a collection either as a main window or as an attached window have)Tj -0 -1.2222 TD -0.0778 Tw -[(properties stored on them. The only properties that are intended to be set be set by the user are the)]TJ -/TT10 1 Tf -10 0 0 10 78 107.49 Tm -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -9 0 0 9 120.0068 107.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 124.6568 107.49 Tm -(MAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 166.6637 107.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 171.3136 107.49 Tm -(PASSTOMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 255.3273 107.49 Tm -0.0167 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 277.6132 107.49 Tm -0 Tw -(REJECTMAINCOMS)Tj -/TT8 1 Tf -9 0 0 9 361.6268 107.49 Tm -0.0167 Tw -[( window properties. The other)]TJ --31.5141 -1.3278 TD -0 Tw -(properties should be considered read only.)Tj -/TT12 1 Tf -2.6667 -2.4756 TD -(MINSIZE)Tj -/F2 1 Tf -10 0 0 10 139.8 73.26 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 407.85 73.26 Tm -([Window Property])Tj -/TT12 1 Tf --33.9833 -1.2089 TD -(MAXSIZE)Tj -/F2 1 Tf -10 0 0 10 139.8 62.38 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 407.85 62.38 Tm -([Window Property])Tj -ET -endstream -endobj -251 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 17 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -253 0 obj -<< -/Length 6908 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-70)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -( INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.0867 Tw -(Each of these window properties should be a dotted pair )Tj -/TT10 1 Tf -10 0 0 10 409.6389 569.49 Tm -0.209 Tw -(\(WIDTH . HEIGHT\) )Tj -/TT8 1 Tf -9 0 0 9 517.9255 569.49 Tm -0.0867 Tw -(or a)Tj --38.2139 -1.3278 TD -0.0611 Tw -[(function to apply to the window that returns a dotted pair. The numbers are used when)]TJ -0 -1.2278 TD -0.0056 Tw -[(the main window is reshaped. The )]TJ -/TT10 1 Tf -10 0 0 10 316.5526 546.49 Tm -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -9 0 0 9 358.5595 546.49 Tm -0.0056 Tw -[( is used to determine the size of the smallest)]TJ --20.5066 -1.3278 TD -0.0567 Tw -[(region acceptable during reshaping. Any amount greater than the collective minimum is)]TJ -0 -1.2278 TD -0.0644 Tw -(spread evenly among the windows until each reaches )Tj -/TT10 1 Tf -10 0 0 10 394.0863 523.49 Tm -0 Tw -(MAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 436.0931 523.49 Tm -0.0644 Tw -[(. Any excess is given to)]TJ --29.1215 -1.3278 TD -0 Tw -(the main window.)Tj -0 -2.0056 TD -0.1422 Tw -(If you give the main window of an attached window group a )Tj -/TT10 1 Tf -10 0 0 10 434.4738 493.49 Tm -0 Tw -(MINSIZE)Tj -/TT8 1 Tf -9 0 0 9 476.4806 493.49 Tm -0.1422 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 492.0089 493.49 Tm -0 Tw -(MAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 174 481.49 Tm -0.0511 Tw -(property, its value is moved to the )Tj -/TT10 1 Tf -10 0 0 10 316.1443 481.49 Tm -0 Tw -(MAINWINDOWMINSIZE)Tj -/TT8 1 Tf -9 0 0 9 418.1609 481.49 Tm -0.0511 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 432.0491 481.49 Tm -0 Tw -(MAINWINDOWMAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 174 469.54 Tm -0.2822 Tw -(property, so that the main window can be given a size function that computes the)Tj -0 -1.2222 TD -0.12 Tw -[(minimum or maximum size of the entire group. Thus, if you want to change the main)]TJ -T* -0.09 Tw -(windows minimum or maximum size after attaching windows to it, you should change)Tj -0 -1.2278 TD -0 Tw -(the )Tj -/TT10 1 Tf -10 0 0 10 188.7348 436.49 Tm -(MAINWINDOWMINSIZE)Tj -/TT8 1 Tf -9 0 0 9 290.7514 436.49 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 303.7197 436.49 Tm -(MAINWINDOWMAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 405.7363 436.49 Tm -( property instead.)Tj --25.7485 -2.1056 TD -0.0344 Tw -[( This doesnt address the hard problem of overlapping attached windows side to side, for)]TJ -0 -1.2278 TD -0.07 Tw -(example if window A was attached as [)Tj -/TT10 1 Tf -10 0 0 10 334.8421 406.49 Tm -0 Tw -(TOP)Tj -/TT8 1 Tf -9 0 0 9 352.845 406.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 357.975 406.49 Tm -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 381.9789 406.49 Tm -0.07 Tw -(] and B as [)Tj -/TT10 1 Tf -10 0 0 10 428.541 406.49 Tm -0 Tw -(TOP)Tj -/TT8 1 Tf -9 0 0 9 446.5439 406.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 451.6739 406.49 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 481.6787 406.49 Tm -0.07 Tw -[(]. Currently,)]TJ --34.1865 -1.3278 TD -0 Tw -(the attached window functions do not worry about the overlap.)Tj -0 -2.0056 TD -(The default )Tj -/TT10 1 Tf -10 0 0 10 221.852 376.49 Tm -(MAXSIZE)Tj -/TT8 1 Tf -9 0 0 9 263.8589 376.49 Tm -( is )Tj -/TT10 1 Tf -10 0 0 10 274.7924 376.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 292.7954 376.49 Tm -(, which will let the region grow indefinitely.)Tj -/TT12 1 Tf --15.8662 -2.4389 TD -(MAINWINDOW)Tj -/TT8 1 Tf -6 0 TD -[( )-27483.3([Window Property])]TJ --3.3333 -1.8444 TD -0.25 Tw -[(Pointer from attached windows to the main window of the group. This link is not)]TJ -0 -1.2278 TD -0.0233 Tw -[(available if the main window is closed. The function )]TJ -/TT10 1 Tf -10 0 0 10 388.2767 326.89 Tm -0 Tw -(MAINWINDOW)Tj -/TT8 1 Tf -9 0 0 9 448.2865 326.89 Tm -0.0233 Tw -[( is the preferred way)]TJ --30.4763 -1.3278 TD -0 Tw -(to access this property.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(ATTACHEDWINDOWS)Tj -/TT8 1 Tf -9 0 TD -[( )-24483.3([Window Property])]TJ --6.3333 -1.85 TD -0.0789 Tw -[(Pointer from a window to its attached windows. The function )]TJ -/TT10 1 Tf -10 0 0 10 431.6611 277.29 Tm -0 Tw -(ATTACHEDWINDOWS)Tj -/TT8 1 Tf -9 0 0 9 521.6757 277.29 Tm -0.0789 Tc -[( i)78.9(s)]TJ --38.6306 -1.3278 TD -0 Tc -(the preferred way to access this property.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WHEREATTACHED)Tj -/TT8 1 Tf -7.8 0 TD -[( )-25683.3([Window Property])]TJ --5.1333 -1.85 TD -0.1333 Tw -(For attached windows, a dotted pair \()Tj -/TT10 1 Tf -10 0 0 10 331.1018 227.69 Tm -0.32 Tw -(EDGE . POSITIONONEDGE)Tj -/TT8 1 Tf -9 0 0 9 463.5223 227.69 Tm -0.1333 Tw -(\) giving the edge)Tj --32.1692 -1.3278 TD -0.0233 Tw -(and position on the edge that determine how the attached window is placed relative to its)Tj -0 -1.2222 TD -0 Tw -(main window.)Tj --5.3333 -2.7833 TD -(The )Tj -/TT10 1 Tf -10 0 0 10 144.0044 179.69 Tm -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 186.0113 179.69 Tm -0.0767 Tw -[( window property on attached windows and the properties )]TJ -/TT10 1 Tf -10 0 0 10 430.5587 179.69 Tm -0 Tw -(TOTOPFN)Tj -/TT8 1 Tf -9 0 0 9 472.5655 179.69 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 477.7555 179.69 Tm -(DOSHAPEFN)Tj -/TT8 1 Tf -9 0 0 9 531.7643 179.69 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 126 167.69 Tm -(MOVEFN)Tj -/TT8 1 Tf -9 0 0 9 162.0058 167.69 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 169.4158 167.69 Tm -(CLOSEFN)Tj -/TT8 1 Tf -9 0 0 9 211.4227 167.69 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 218.8327 167.69 Tm -(OPENFN)Tj -/TT8 1 Tf -9 0 0 9 254.8385 167.69 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 262.2485 167.69 Tm -(SHRINKFN)Tj -/TT8 1 Tf -9 0 0 9 310.2563 167.69 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 317.6664 167.69 Tm -(EXPANDFN)Tj -/TT8 1 Tf -9 0 0 9 365.6742 167.69 Tm -0.3233 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 391.23 167.69 Tm -0 Tw -(CALCULATEREGIONFN)Tj -/TT8 1 Tf -9 0 0 9 493.2466 167.69 Tm -0.3233 Tw -[( on main)]TJ --40.8052 -1.3278 TD -0.0289 Tw -[(windows contain functions that implement the attached window manipulation facilities. Care should)]TJ -0 -1.2222 TD -0 Tw -(be used in modifying or replacing these properties.)Tj -0 -2.7778 TD -0.0001 Tc -0.0132 Tw -[(Communication of Window Menu Commands between Attached Windows is dependent on the name)]TJ -0 -1.2278 TD -0 Tc -0.0944 Tw -(of function used to implement the window command, e.g., )Tj -/TT10 1 Tf -10 0 0 10 369.5221 108.69 Tm -0 Tw -(CLOSEW)Tj -/TT21 1 Tf -9 0 0 9 405.5279 108.69 Tm -( )Tj -/TT8 1 Tf -0.3444 0 TD -0.0944 Tw -[( implements )]TJ -/TT10 1 Tf -10 0 0 10 468.1768 108.69 Tm -0 Tw -(CLOSE)Tj -/TT8 1 Tf -9 0 0 9 498.1817 108.69 Tm -0.0944 Tw -[( \(refer to)]TJ -/TT10 1 Tf -10 0 0 10 126 96.69 Tm -0 Tw -(PASSTOMAINCOMS)Tj -/TT21 1 Tf -9 0 0 9 210.0136 96.69 Tm -( )Tj -/TT8 1 Tf -0.5144 0 TD -0.2644 Tw -[(documentation under Attached Windows\). Consequently, if an application)]TJ --9.8493 -1.3333 TD -0.1144 Tw -(intercepts a window command by changing )Tj -/TT10 1 Tf -10 0 0 10 309.4422 84.69 Tm -0 Tw -(WHENSELECTEDFN)Tj -/TT21 1 Tf -9 0 0 9 393.4559 84.69 Tm -0.1144 Tc -( )Tj -/TT8 1 Tf -0.7289 0 TD -0 Tc -0.1144 Tw -(for an item in the WindowMenu)Tj --30.4462 -1.3278 TD -0.1811 Tw -(\(for example, to advise the application that a window is being closed\), windows may not behave)Tj -0 -1.2222 TD -0 Tw -(correctly when attached to other windows.)Tj -ET -endstream -endobj -254 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT21 255 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -257 0 obj -<< -/Length 1225 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(27-71)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(WINDOWS AND MENUS)Tj -/TT8 1 Tf -9 0 0 9 78 569.49 Tm -0.2911 Tw -(To get around this problem, the Medley release provides the variable )Tj -/TT10 1 Tf -10 0 0 10 383.9919 569.49 Tm -0 Tw -(*attached-window-)Tj --30.5992 -1.2 TD -(command-synonyms*)Tj -/TT8 1 Tf -9 0 0 9 180.0166 557.49 Tm -0.3089 Tw -[(. This variable is an alist, where each element is of the form \(new-)]TJ --11.3352 -1.3278 TD -0 Tw -(command-function-name . old-command-function-name\).)Tj -0 -2.7833 TD -0.0811 Tw -(For example, if an application redefines the WindowMenu to call my-close-window when )Tj -/TT10 1 Tf -10 0 0 10 446.4919 520.49 Tm -0 Tw -(CLOSE)Tj -/TT8 1 Tf -9 0 0 9 476.4968 520.49 Tm -0.0811 Tw -[( is)]TJ --44.2774 -1.3278 TD -0 Tw -(selected, that application should:)Tj -/TT10 1 Tf -10 0 0 10 126 490.49 Tm -(\(cl:push \(my-close-window . il:closew\) il:*attached-window-)Tj -0 -1.2 TD -(command-synonyms*\))Tj --4.8 -2.6 TD -( )Tj -/TT8 1 Tf -9 0 0 9 89.201 452.49 Tm -0.2167 Tw -(in order to tell the attached window system that my-close-window is a synonym function for)Tj -/TT10 1 Tf -10 0 0 10 78 440.49 Tm -0 Tw -(CLOSEW)Tj -/TT8 1 Tf -9 0 0 9 114.0059 440.49 Tm -(.)Tj -ET -endstream -endobj -258 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -19 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 300 -/Height 170 -/BitsPerComponent 1 -/ImageMask true -/Length 6461 ->> -stream -?><<<8<0?<0<x <x <?x <?A8 <a8<`< << <?< <?~ <~0<0?<?8<?<<?><??x<?<?<?<?<?<?<8@ʊd, hk]F1SJD""*T8QWRJ%VD.*hU(QRT׻d+ ݄QWwn(`@QB~ ?!?0<~c>?c?c?????>??>?????????? 0?8?????? -endstream -endobj -20 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 395 -/Height 124 -/BitsPerComponent 1 -/ImageMask true -/Length 6201 ->> -stream -?????????????????????????????????????????????????s?'?'?<{;;;8~;;>???8?????> -stream -9 -endstream -endobj -22 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 379 -/Height 63 -/BitsPerComponent 1 -/ImageMask true -/Length 3025 ->> -stream -@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_!'#""I$$""I$I$U:MII)g8")cI"  -endstream -endobj -26 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 71 -/Height 122 -/BitsPerComponent 1 -/ImageMask true -/Length 1099 ->> -stream -_vVv?mv?}nwq???wWLJG}w۷{;߽wٷ{{]w7{{p{;wUwtLJGww]w}?wxw۷6w훯p87w۷6wwxwwp?x7ﷷﷷwﷴ> -stream -?>~~>? -endstream -endobj -43 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 12 -/Height 12 -/BitsPerComponent 1 -/ImageMask true -/Length 25 ->> -stream -???????? -endstream -endobj -44 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -> -stream -oooooooo?ֿ? -endstream -endobj -52 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 13 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -FFFFFFF -endstream -endobj -139 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 46 -/Height 26 -/BitsPerComponent 1 -/ImageMask true -/Length 157 ->> -stream -`p8o{oo[`p8o[o`p8{oopx<w{z~_z~_}} -endstream -endobj -143 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 8 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 17 ->> -stream -g'? -endstream -endobj -144 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 91 -/Height 50 -/BitsPerComponent 1 -/ImageMask true -/Length 601 ->> -stream -???~?A A A ~?H$A H$ AA H$~?PH$H$ G}o}w}yoo}~px<}nw{z~_z~_}}}}}}}}}a}y -endstream -endobj -154 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 31 -/Height 26 -/BitsPerComponent 1 -/ImageMask true -/Length 105 ->> -stream -o?o;nmmkgo?}}}}z<=wwwwo -endstream -endobj -155 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 31 -/Height 35 -/BitsPerComponent 1 -/ImageMask true -/Length 141 ->> -stream -~~~~~~~~~~~{~}}}}z<=wwwwoA $A $A$!a -endstream -endobj -161 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 47 -/Height 62 -/BitsPerComponent 1 -/ImageMask true -/Length 373 ->> -stream -?}}~O=~?~?}?=?=?===~?}?}=~=~O?=O}=}==?}~=~=?} -endstream -endobj -171 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 196 -/Height 66 -/BitsPerComponent 1 -/ImageMask true -/Length 1651 ->> -stream -?????;q  ~;nݻ;nݿ8wn݃o;nͻov;߮ߺ;>~=ۺ8wϿ~<|???????;rǏ?}~?}???????;j~;;7jݻ~m~;7jݿ~~:j݃~ :j6mٻvٷ9N:pw:w9w;???????88w;nݻw;nۻ;nۻ߿;nǻw߿;n׻w;nۻww;ݻw???? -endstream -endobj -175 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 168 -/Height 118 -/BitsPerComponent 1 -/ImageMask true -/Length 2479 ->> -stream -?????UUUUUUUUUU<;0⪪wn;7UUUUUUUUUUwm;ڷ⪪wm;ڰUUUUUUUUpc;ڷʪwm;ٷ?UUUUUUUUwm<9ʪc??UUUUUUUU?ʪ?7UUUUUUUUU?ʪ?7UUUUUUUU?ʪ?7UUUUUUUUU?ʪ??UUUUUUUU?ʪ??UUUUUUUU? -?UUUUUUUUUU?⪪?TUU?ʩ򪪟??UUU?ʩ򪪟??UUU?ʩ ;}򪪟?6U}UU?ʩ}򪪟?1U UU?ʩ}򪪟?6U}UU?ʩ 򪪟??UUU?ʩ򪪟??UUU? -?UUUUUUUUUU?⪪?T? -?U? -?U?J{n2?Umm?∊mz2?Um{z? -w ;7ww{:w{::w}9w}9qw.`????????!?<$?>0$?$?> -stream -???????UUUUUUUUUU???ʪ? ?>UUUUUUUUUU?}>ʪ?}>?UUUUUUUU? ?>?}>mUUUUUUUU?}?l??. ??UUUUUUUU??q??nUUUUUUUU??o??oUUUUUUUU??o??nUUUUUUUU??q??UUUUUUUU????UUUUUUUU??*??UUUUUUUUUU??ʪ??PUU??ꪪ??SUU??ꪪ??SUU??cvꪪ??mSvUU??mvwꪪ??cSvUU??mvꪪ??mSvUU??cꪪ??SUU??ꪪ??SUU??* -??UUUUUUUUUU??ʪ??P?? -??S?? -??S?? 8j??Su?? -}0Xj?? -S}[e?? - -|y9\??Su?? -??S?? -??S?? - -??UUUUUUUUUU??ʪ??UUUUUUUUUU??ʪ???????077777? 76}6o}6?o 76o}6m}7l?໰. 77770?????>燏_Ow >{ww{>{w{>}{w?u>{w߿}>m{w߿}>np]v {`????????C$a?$O?$A?s$I?Cc?????? -endstream -endobj -183 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 57 -/Height 35 -/BitsPerComponent 1 -/ImageMask true -/Length 281 ->> -stream -wowoowaoo߃nwmwkwwww$a8GA@H$FxO4HHa0 @ -endstream -endobj -232 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 120 -/Height 75 -/BitsPerComponent 1 -/ImageMask true -/Length 1126 ->> -stream -??????????????????????????????????????????????????0`ϟHHH - -H????????????????????????Ǐ(P(PǏ -endstream -endobj -242 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 150 -/Height 75 -/BitsPerComponent 1 -/ImageMask true -/Length 1426 ->> -stream -??????????????????????????????????????????????wrۆwl~߻wn~ݾ߻wp۸߷3~vÿÇLێݿ߻߻<@a418!$@I$I$@I$I $@M'I <au1  -endstream -endobj -12 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -260 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -261 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -262 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -263 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -264 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -265 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -266 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -267 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBOIIO+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 268 0 R ->> -endobj -268 0 obj -<< -/Filter /FlateDecode -/Length 20017 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($C"T0`IiA ݷّffɆVI AS44RR)4|-*PRi nxj3{ߛ{o oN~{;p>{ - -Lx+ -7spBA#P01l0X4x{˗! P8/V'>i!ZX;7<}Ms c{`!pLuT"x0AE(״X@zjo?tDI#қ8_j*$"T!7D}ln;:_ -uKq=?{8@mʿg-Y <8rqe -1:WA?'s> 9f5$%y8a),& hp43d P:6A5Fhp4Cmx\3LRԪ%-i7k$롞[H^w92|8"s .^Q@ &qS9N+α0a34@q*00r~X~nCd+9L#%AMRijnCOp;70vNGJ^gW}ǯG8j5ؿ#В<ލY_ )(CLG X&*0^A8⼋-,Ź6pr+\U|ƣ8?Id*+Pr+Ff,\̗kdkr&6g8"t{ -M -h"y2N a|# naDtz& -LQE8tmE0A,lvy 3ĭo2A,n, h!+c9`qnL~W-Sx"iGx&">l|xw@Fi ӯBo>u'i/ ~_^LZY-wxLHR E6Vٸ%6ƥ6V۸6ql)W۸Ƨm|ZlZl\gOly/:''OqCbQ/ 50$P bHW\T!5 BHj΀otU%p7L7_捸H13ܘjj4de5Mnx|uJG7 AZS)% f$4VFbRݲkIh*~'߯lT8ڠ*ZP ^ M6!W"m ̓W4 ?x8Α$Ei*2k>M![$~/ɝRU)Ck̄Lp Fk.I,[=TaaT=Ѵv8sEYaPUV'|jQ}MM5th2I蛑csVe쀜Vd Өybj+2E,ӕL5,#t5t\k, ҈ϵ.|`00q v bev$VIv;=ڠ_cr4XsY"~ܛn[(iwi4ZFOJ/l)958}oH?D Hf)Dl3~7?qg̥fJޔ&?M949C"j|oecNjƲ.vɝn˙6M+WdVkɎ^ogjv^iJok_0Z/v}=Iu+!XS#z"mRYw |)_ʘӺ:oNXu <5FOWjH :}xjbQ񴔔ZwVo-lpW{;mY{b;=ޕqyMpQOXj]gB&k=aahOgYU:NVoqu,<8\,Jҙ{S(0S榁gP}Aۀ]zօD,YcWAorm2c㓧Y^J w[mcxg6bΩ==N,_5K#5StrZs: i8¥;w^%9 'Qa@?[Cu8rU|-m$ٻc?ԗ lǟŹgBV8Np-vH§ֵ@CRr DB 5I*kU NG 0-d+hԡۚ ﹳMRDHHh<~ٜ3.\0YXJwX e^& LH}2*$u֑1b{wkY n%i0˰Z[-d4 ~RlB;~/1 sۃ^@F%HV:# )p)8Nho e҄ti05`c6V`~&/茍!Fz|{e.)_L3Bw,v!dm[YFF>.UFzB?.wUxϝj8Ԩ1Ӫ'#mtȶ/z"2ָ! -" Qg 9ke\VÚ.59=څrWJgi*:k}A{jI<9>S_ʒ P'Lgw<9'f72*I@3G5;$\J0ϾحːQ4UxNc0^1X*!qnD#o0Z#I 2ubQ "!8 3c yO[yK%Z2jV{<-;qAzTtM.,\:D8UAY)Q y{(]C_;w 5棾͏K%B 󧦶_"c%*u}Ag}>ɘ9k7=Rzv63zZ|Eۖ=V:q+勁xHٳ0[g˯~{eUM=Q_pAu ֒AiuSZ>ؒ\׵.3BXה˱"\{ŲνQb-7ٍ In'F9CHMOp -:D]#ʻ=(0tssѨ3`T$#baSiF[?-HƳ-VGs2)m|ذ,EAJ1 irMFbTNu.mÝа6#"ѶÕwv'0s<&$ _3q OX wJXu -a4A+^ SpeAb!'?$SȣO2TgJ2HJZNG&ɟI9F>&I/@.?P Q'ͥn:>D*-<4KA}/:n6;}vO4,}=d6MdSYI-e/լZX{IvEEv pE>>O?14_ʟ/zox1~O^e:4Qٔa$@ņEԢG3az 5✓;\~UfBȶli1i -c`nDS\B$CI`Lѭ -e1α6b+L`#nn/mHws 2Fۖ7v[Wu;%1E.lY喉UJ_h֙a9˼bjI%$)5b I,/=dP'~,MEhǧf{lx )qᇑY`XjC+\hkY.Zf.ӭY)6(z,H9el߹d`EadjDj50K%nmS UR.!/ qƜә KKmg'tX00,( {JMqCUӻ(>{J9#gA٤ H8_EE>eSKƻy!#<|xNm,|" پc-ٚ,*zh⏶%n7%i,Yf+eG8ߗ4j/(NJ}1=vjhw\e0R euE ڋK^)>?t1;ֱiɑPE$ n-ȼH !6#SّٜGw9iU?8*M:k CK]\ER_ZW|[s,~-\nòT^j^n0ѸZj˘̮xͽ\esӯnґ` )s]Z,3}g>̪ #:fΠ3ٕ_@ M賗eDcLmFhpԍ -l3ueBm&gYF#I4ɼe2P{ʶ[$5/O`yY@UY-РlKI:96֩%&De1#{imcEGAdT`YC:;|t C0iL0G-BRrl/Oo?9TM-=/̀= mșLZc\&UKdQWq 6B4',xiNY.İGz%C:\N/c -BѝnBJj:kg\+~[S1?7ꧾuܩE^/5IA# -hО%-e Oo_0hc 2~=ytLW,Z1ְZR+Ʈ17f<6cY1fjh/H2VQOhX,OtW"Ah۳\,jxf{[ - &gi Ƽe9,bXxX>M4d,<Ɵ$+j -#ǺG+ԍLοAXO-f9ζnf,,C-ݖΗ^צG9 -і[:?{YPJߔ?^KCGͷܠ0A橥/Kw=_B Zb衅KUDww+Xɪe)MXf_+PxcE-#iZ 4=t@!/Q8i5,\}܀E"/zաzԄv4hEUt lǥx ^܀) ܅{0Sx 6N:^$Ed%YED"}U1ROH i'ϐ9@FHLSM;$wrd"n-k=}!n13WͽǥE{Eu]sܷ )ef.HZT6 (DhjgdL'QVFQ@%֟V:hgĤ-љLkg@[cҎ;QƟs/ h:=?|ߏ]adUNuy+VS 〫sXGEҐ5Тl2 [*y5( -0m?{#8:Nh"ub*Q -1Q'6NGNP-;XZVj%^TqJ &. D8K(XՖ$24)X ckUCށYXv?lȦG 5AhcΥ ql3tؘ޸axʿ] YKCő4-izA GSF<6,4aVPj<ɭo8s:ZN/j,cIrKA@z5}g;ӡ.~T;B$a kHu_烢-LmIo+7%WAGb˻r{;"Qc<&=Yfzk -_a!N%u > ]-kw$4hH[uV"9>a*47JC/") I⟯gE^pwi.JC% `_ԒT T/@$KWO̺*S֝8XHd'ϧeug27;r~V*kX P Ir#֮;lP}Q.ccm޼<(@${94;=`gsFT]IO P o%0&H=Vx"sIz`,O /fH*?wUISRo/0Džu Ố -QM,ȅȪx, *a13XU% 7`32txQ8}a}×pxovqd22\k.y, ?!U%RC^%kIyDym%IEȻ#/<'7L$7A2jy .dtJ')4nt]MVچnr #=Jѳ ($)EIOJR`f*ji9:)"5Iڤ;% K;' OI7cY -s3/&i,e~F}@F\J, !/&T›0_ o78TcBe + 3/r`0dH -yW>a~! ۼ*0Q1p)mPds"E6 yfI&3,sǂ{xg\X$aD} -kwyBh0!Ye\Q.ʸy_ޣm/"i_YJTTʽҪ&6|ʪ'I/7J Duoוl?I1ުȪ5{lՖnV(X|bcmaO+^%=y~vPa4_3'cWr YٍwˍWSkl%͓)STPv|#M=Y}p~܀vk FK"^tϕK{UDrp!\p'͆D[n8j[oݧ[[  ~| ;pWm}].j2VAj)]q~nw}!S؝;A -U ;J"{ LG)$> -M*&Ofٴ $v&Ҭbh&14v3]ZtjoޑSv}QoOص=+D#>lwf'fO+.XaOI@PKB1LC)2Sp7"X rXzXৰ8 -ϣ:*3pDM>$!\Eɵ&*"7Nn#d&Bu|Xd YA'Mmv="(=5=JQRwc$FU!Ơ8ohu{kݖ WGE¨Bqsg{Q%(RZgGTJJh#XzV} F!4eDfyULT\"n↙ .ڑ +C[dPI$fx у`*؁kq&.hg3C%)A놲>֢Tv$4,j`$#ACυ| b?fA'XHoE,yƈPXhFϓ(6_N}b^y˛$Yc& XPR7d~ɇʐ/E iFjl|L*^bkG 8Jב{)۝bp/ HcwX(΢f~_pnFDGs}Z :ߡMH -JIeB9w`+0g L < -=,Y Y٪%JG&t)  2԰-|C v:s{y:"۠Їud}=񯙭xRdNLr/ 4,20dpɲF}OaT!?K0K!H >yZ|E(9ңg0l^*@ܚ=T2tKhfs=`a"4 pvL#.:-O (X ٌ[d6}aw m49l"rkb`mvˆAoi-Q*x% u  TE2QTGSUl,>"OkR. #-T; " n"Y׃¶\+Lę#X.Iq*=$d`9\2q="Xpd1;Н[c\ņA$/:؂FW'G8{ImeJdSQC͠ẩd>ZeY_lGovts# Q"#%qTvCˆ< RIK_0|!͉ !륾V2if}8cPC*E7|ǵ ${۝}Aۡ,8hZl ZdZdO}lj- Z<@UZ|-̢&-*&a׽j5sR}\I`c٥ʼnftg̫‡oMqe␥wcB ֬u=5Ƙע >Y6ޝRrT9UpdqJvG,Ȉş%ȼ~ś-;zR" ZxTQgЂM -5uf -te6xx]yz,1tJǬRBcl[Vά5&ހ^]AN-o]3qnu-]X,h9\.lwY8B{B֝^QYOFH/ZE/J. Š?瑅di -)y5kɹNPl \ҢITf1h->.]F/Wyc,c'j`-ʴ$-pEg@]-0i?[ dgarbչY- -pLxQ6qPZDuֆ-(Jh!Yi"Y c]qjϿ!I|HM= -V>1~ @ 7iN0N?^x21ّ'E0hgЂʛ]Yx$ڥ8h1YUYwJ VyͰtlI JgLU+[z87d،b̩kkܕ'ydtGe:+DQ`F#Z0nG؅;G -'Z̹گ›)8\R9 -|Y1b -p?&|FZD5ojh6 i1,~tj'G쫴Xf~WeޅcF²& 5H13]Z:~dk2V Cb,ELa nd[RlaM-XK"3WN닲{_zdayecE{3?F {8dI<οƦMz# RGԟͥ_͗\nV#N,e݉^pS%On|c -$ \֝<;l.hOZhW] /쐴HF%i!ZbQxvˆ75585iZn:; mh~D.7R=~DLnC] -p:T5|O lm>FOƋ%UmQǏԿ+疻{i;!>\;;//-l%ʖF,طPWnN=ZvڎqƝ\`79'"-CWm4wm6`aY>[XJ_\}[9Wmh|Ԧ񇾅wHp?1T7:ׇZQ>Y(Ңb5[7A Eȥ!~xo^kO{??,‰ZhbiӜh;^6ۉibۇp[p<9e/%  W!d|d#iMr| e"-yw-PƔq3 ה S{*?U~jwvE1_(TS- .F"]cBD -k<450OkGqTԪ1&>cm|cE;?#j<;;?L$^3Y -IJhbn36-dl5[6}.?xw@x|&y3w(?ǿWm)\)iUzF&)RHj~'m>H2r&gy\./_˭O|SaJOLV^Vf)s*e{rV\rITFդV5KV 5S"vݑa$IATRR(VP,.UU \AD`5H=iOG(]j2"FUvF5S+?BdP@&30p/b*# FHH1LawEc$ԃQn1U1EBד!\ -'g>$#3sQh"t0F u -qB:EXN?#:b_< (n\B=Xz (:=EO5etݾoE^H{aV(֭]o஢u`] ,{ulcUu֎{f70*WHr7,ؘRd(q\Ré9h}iCI}~>e_2-%>xbY~uiϽͶ+c=1Y6ɦ'd/{ը0ӅOWqy)#aa4eW -H_YvVBQUt}(ytokNQǴ+уprTBGUb3'B]ki=z(dx75so>7b]p1uU˲ -S֋eLH<Ta ~J B~-D[t;{<3㈸>_ueA~C^IbuYhޢ6kՉUޚmP~EG#|Y}Ɩ3c1>3|@JTq|հhB}dw֮ݬn@՗O7~0/o?xh>0M:KղIlcX+7+;ߠ5}2ܮ%L Θ&Sf6D"ohfے=G͍Q~FCap/#ߕ)s}I?aǾ#uʇ{?-XP! w@?C' !@>[yx /Bf^5XUP K1Z -h?@+f`;`7p 3p.:CBYgD4MHDv 9N>!g^"W NJxS3O`LSi:B3ѱ3hJ;y?Хt]EY~\0=J?g"Lѯ NoN`11CY8晑,b}X,cϒؓ?{ -ie3;HE`TȒ( %ŨĘ^J 2]DM>.S)&WKX𠅌UNx~yJ'!{Q]H1>4~b$TeJ降3b#.SpaW4 - {uA]+hRKA/̑fIAb:s dIB(qܿR `Sdت}4)sj]TkfT48|?p8yI}},I񤄳RMt85?QrA9vwbUP{H?{,uI'gM.Bjմv)F)Z5<ߙҼ7ՆkӦq`%^8X8->+n~z?\u2:D0H9>=gb--ǷmZ\. -;R|Λs9<+./8XޮVzcGm lAt,)O<]I -A%tI6Z\葚:Ԙp+SC^,>h |!pKnJ9]\0NZP5?ӑB.@@GE3` r>ɖs_X /,ź^;$s_H'.>8?'ir_si5>5./cs6+@ą37(8s4d,*vGx֋n2EjKPIykZjS0fh"A ]KEH@4cu=~8=I;aѦ 5‰o1VͰ$ Z TEvzt櫭GgOs%˨Çii%1HԆĶ c F`zOnܤ*qBJ2Od"`/qo (`bK%1]$syٙhV.9,#Rזaq5PAKO>f-(e=F6ȱ՗ɱ13u;W6^T] GG|z*w):lOeͳ8ޘZ.HV@X$}4]! KM JM ,a02-sLt]nMjkT)peɤձ9̪Q86v{zUE2W wi36*_Y%%q˱3fd..3S^ֵZGm΋~}r5-٥:yeUH q9O?ugirOk趲ys[ІѫG+Us(imU^mZ̎K̯zZLr(+5VZ}kt+ͻj['Ņ ʩ)WiO^tT/aXBЎ}e3Ipk@U ?Ѽ5@=RVx""MoL)7\\>{PjiI4-=A[Sno\TCɉ%LC&~ h\5S MhMsNCȗ>x o`'M7:T9!=kU -x^ ߂߀_]A -XVR f4S`x_Bn!A x` 8WMORMn岥*]̌`]%>+hsZBޓ*~'v?}12=-th/-ЉiaO)=S -?AGwA@SlkF!'623?5ފ޶@~,1mG `+}u5dVL+XP\W? -Y.흥2db>(u[ؒKճ%s*Xdbp _EBʆ`oL>lffO5F՟ K9b3[:MYO؄F4Ig4p*8L'ȽqNN߃xȯq+80}G:Q#A3ٌ<-#@זy y8X'S0!}-r~ء!@_rb"Oxd^ 4Rj9s*~ ]rao-zt\Bu]{Z@ 2|ʄ;pG *[ -,asa(|4j)f/!-]0'kMR)]ؤJRKv*65@3Mg8 zg}2eϮ֍Gw ~ΔL_% -N۝RVtW+%"5Qt\nvڻM&g)HB *^x"hMR{tQ*LnĺSS3)O-∣7Y͒F=k> -endobj -270 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 98 -/FontBBox [-170 -276 1010 918] -/FontName /Palatino-Italic -/ItalicAngle -15 -/StemV 84 -/XHeight 482 -/StemH 84 ->> -endobj -271 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -272 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -273 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -274 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 272 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 273 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 333 400 556 556 833 852 278 333 333 500 606 278 333 278 606 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -747 704 722 722 778 722 667 778 833 407 611 741 667 944 815 778 -667 778 741 667 685 815 704 926 704 685 667 333 606 333 606 500 -333 574 556 444 611 444 333 537 611 333 315 556 333 889 611 500 -574 556 444 444 352 611 519 778 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 274 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 260 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 278 278 -0 0 556 0 0 0 0 556 0 0 333 0 0 0 0 0 -0 722 722 722 722 667 611 778 722 278 0 0 611 833 722 778 -667 0 722 667 611 722 0 944 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 261 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 87 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 0 944 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 262 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 255 -/Widths [250 0 371 0 0 0 0 0 333 333 0 606 250 333 250 606 -500 500 500 500 500 500 500 500 500 500 250 250 606 606 606 0 -0 778 611 709 774 611 556 763 832 337 0 726 611 946 831 786 -604 0 668 525 613 778 722 1000 667 667 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 -] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 263 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 0 0 0 600 600 600 600 600 600 600 0 -600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 264 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 46 -/LastChar 121 -/Widths [600 600 0 600 0 600 0 0 0 0 0 0 0 0 0 0 -0 0 0 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 0 600 600 600 600 600 600 600 600 600 0 0 0 -0 0 0 600 0 600 600 600 0 600 600 600 0 600 600 600 -600 600 600 0 600 600 600 600 600 600 600 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 265 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 600 0 0 0 0 0 0 0 0 600 0 0 600 -0 600 0 0 0 0 0 0 0 0 0 0 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 0 0 0 600 0 0 0 0 600 0 0 0 0 600 600 -0 0 600 0 0 0 0 600 0 0 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 266 0 R ->> -endobj -76 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBOIIO+Symbol -/Encoding /Identity-H -/DescendantFonts [ 275 0 R ] -/ToUnicode 276 0 R ->> -endobj -275 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBOIIO+Symbol -/FontDescriptor 267 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -64 [986] -] ->> -endobj -160 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 40 -/LastChar 46 -/Widths [333 333 0 0 0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 269 0 R ->> -endobj -187 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 125 -/Widths [250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 722 611 667 778 611 556 722 0 333 0 0 556 944 778 778 -611 0 667 556 611 778 0 944 722 0 0 0 0 0 0 0 -0 444 0 0 0 0 0 0 500 0 0 0 0 0 0 0 -0 0 0 0 333 0 0 0 0 0 0 0 0 333 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Italic -/FontDescriptor 270 0 R ->> -endobj -255 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [250 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 271 0 R ->> -endobj -276 0 obj -<< -/Filter /FlateDecode -/Length 219 ->> -stream -HTPn0 {ꐀJnah*{.14Rq" -Wu-?=[KC.|goZ; ppE ֙uk6 ]cC# > -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -27 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 29 0 R -/Contents 28 0 R ->> -endobj -30 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 32 0 R -/Contents 31 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -40 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 42 0 R -/Contents 41 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -49 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 51 0 R -/Contents 50 0 R ->> -endobj -53 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 55 0 R -/Contents 54 0 R ->> -endobj -58 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 60 0 R -/Contents 59 0 R ->> -endobj -61 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 63 0 R -/Contents 62 0 R ->> -endobj -64 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 66 0 R -/Contents 65 0 R ->> -endobj -67 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 69 0 R -/Contents 68 0 R ->> -endobj -70 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 72 0 R -/Contents 71 0 R ->> -endobj -73 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 75 0 R -/Contents 74 0 R ->> -endobj -77 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 79 0 R -/Contents 78 0 R ->> -endobj -80 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 82 0 R -/Contents 81 0 R ->> -endobj -83 0 obj -<< -/Type /Page -/Parent 57 0 R -/Resources 85 0 R -/Contents 84 0 R ->> -endobj -86 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 88 0 R -/Contents 87 0 R ->> -endobj -90 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 92 0 R -/Contents 91 0 R ->> -endobj -93 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 95 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -108 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 110 0 R -/Contents 109 0 R ->> -endobj -111 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 113 0 R -/Contents 112 0 R ->> -endobj -114 0 obj -<< -/Type /Page -/Parent 89 0 R -/Resources 116 0 R -/Contents 115 0 R ->> -endobj -117 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 119 0 R -/Contents 118 0 R ->> -endobj -121 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 123 0 R -/Contents 122 0 R ->> -endobj -124 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 126 0 R -/Contents 125 0 R ->> -endobj -127 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 129 0 R -/Contents 128 0 R ->> -endobj -130 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 132 0 R -/Contents 131 0 R ->> -endobj -133 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 135 0 R -/Contents 134 0 R ->> -endobj -136 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 138 0 R -/Contents 137 0 R ->> -endobj -140 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 142 0 R -/Contents 141 0 R ->> -endobj -145 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 147 0 R -/Contents 146 0 R ->> -endobj -148 0 obj -<< -/Type /Page -/Parent 120 0 R -/Resources 150 0 R -/Contents 149 0 R ->> -endobj -151 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 153 0 R -/Contents 152 0 R ->> -endobj -157 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 159 0 R -/Contents 158 0 R ->> -endobj -162 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 164 0 R -/Contents 163 0 R ->> -endobj -165 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 167 0 R -/Contents 166 0 R ->> -endobj -168 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 170 0 R -/Contents 169 0 R ->> -endobj -172 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 174 0 R -/Contents 173 0 R ->> -endobj -177 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 179 0 R -/Contents 178 0 R ->> -endobj -180 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 182 0 R -/Contents 181 0 R ->> -endobj -184 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 186 0 R -/Contents 185 0 R ->> -endobj -188 0 obj -<< -/Type /Page -/Parent 156 0 R -/Resources 190 0 R -/Contents 189 0 R ->> -endobj -191 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 193 0 R -/Contents 192 0 R ->> -endobj -195 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 197 0 R -/Contents 196 0 R ->> -endobj -198 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 200 0 R -/Contents 199 0 R ->> -endobj -201 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 203 0 R -/Contents 202 0 R ->> -endobj -204 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 206 0 R -/Contents 205 0 R ->> -endobj -207 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 209 0 R -/Contents 208 0 R ->> -endobj -210 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 212 0 R -/Contents 211 0 R ->> -endobj -213 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 215 0 R -/Contents 214 0 R ->> -endobj -216 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 218 0 R -/Contents 217 0 R ->> -endobj -219 0 obj -<< -/Type /Page -/Parent 194 0 R -/Resources 221 0 R -/Contents 220 0 R ->> -endobj -222 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 224 0 R -/Contents 223 0 R ->> -endobj -226 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 228 0 R -/Contents 227 0 R ->> -endobj -229 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 231 0 R -/Contents 230 0 R ->> -endobj -233 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 235 0 R -/Contents 234 0 R ->> -endobj -236 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 238 0 R -/Contents 237 0 R ->> -endobj -239 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 241 0 R -/Contents 240 0 R ->> -endobj -243 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 245 0 R -/Contents 244 0 R ->> -endobj -246 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 248 0 R -/Contents 247 0 R ->> -endobj -249 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 251 0 R -/Contents 250 0 R ->> -endobj -252 0 obj -<< -/Type /Page -/Parent 225 0 R -/Resources 254 0 R -/Contents 253 0 R ->> -endobj -256 0 obj -<< -/Type /Page -/Parent 259 0 R -/Resources 258 0 R -/Contents 257 0 R ->> -endobj -277 0 obj -<< -/S /D ->> -endobj -278 0 obj -<< -/Nums [0 277 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 23 0 R 27 0 R 30 0 R 33 0 R 36 0 R 40 0 R 45 0 R 49 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -57 0 obj -<< -/Type /Pages -/Kids [53 0 R 58 0 R 61 0 R 64 0 R 67 0 R 70 0 R 73 0 R 77 0 R 80 0 R 83 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -89 0 obj -<< -/Type /Pages -/Kids [86 0 R 90 0 R 93 0 R 96 0 R 99 0 R 102 0 R 105 0 R 108 0 R 111 0 R 114 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -120 0 obj -<< -/Type /Pages -/Kids [117 0 R 121 0 R 124 0 R 127 0 R 130 0 R 133 0 R 136 0 R 140 0 R 145 0 R 148 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -156 0 obj -<< -/Type /Pages -/Kids [151 0 R 157 0 R 162 0 R 165 0 R 168 0 R 172 0 R 177 0 R 180 0 R 184 0 R 188 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -194 0 obj -<< -/Type /Pages -/Kids [191 0 R 195 0 R 198 0 R 201 0 R 204 0 R 207 0 R 210 0 R 213 0 R 216 0 R 219 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -225 0 obj -<< -/Type /Pages -/Kids [222 0 R 226 0 R 229 0 R 233 0 R 236 0 R 239 0 R 243 0 R 246 0 R 249 0 R 252 0 R] -/Count 10 -/Parent 56 0 R ->> -endobj -259 0 obj -<< -/Type /Pages -/Kids [256 0 R] -/Count 1 -/Parent 56 0 R ->> -endobj -56 0 obj -<< -/Type /Pages -/Kids [13 0 R 57 0 R 89 0 R 120 0 R 156 0 R 194 0 R 225 0 R 259 0 R ] -/Count 71 -/MediaBox [0 0 612 792] ->> -endobj -279 0 obj -<< -/CreationDate (D:20210202102720-06'00') -/ModDate (D:20210202102720-06'00') -/Producer (Apple pstopdf) ->> -endobj -280 0 obj -<< -/Type /Catalog -/Pages 56 0 R -/PageLabels 278 0 R ->> -endobj -xref -0 281 -0000000000 65535 f -0000499770 00000 n -0000000016 00000 n -0000004468 00000 n -0000493850 00000 n -0000495104 00000 n -0000495316 00000 n -0000495769 00000 n -0000496082 00000 n -0000496867 00000 n -0000497427 00000 n -0000497850 00000 n -0000470761 00000 n -0000505983 00000 n -0000499851 00000 n -0000004645 00000 n -0000008849 00000 n -0000494025 00000 n -0000494564 00000 n -0000438934 00000 n -0000445538 00000 n -0000451882 00000 n -0000452025 00000 n -0000499935 00000 n -0000009109 00000 n -0000012914 00000 n -0000455192 00000 n -0000500019 00000 n -0000013093 00000 n -0000018277 00000 n -0000500103 00000 n -0000018421 00000 n -0000022924 00000 n -0000500187 00000 n -0000023068 00000 n -0000028959 00000 n -0000500271 00000 n -0000029138 00000 n -0000035625 00000 n -0000456433 00000 n -0000500355 00000 n -0000035838 00000 n -0000041389 00000 n -0000456603 00000 n -0000456767 00000 n -0000500439 00000 n -0000041603 00000 n -0000048668 00000 n -0000456935 00000 n -0000500523 00000 n -0000048847 00000 n -0000054767 00000 n -0000457107 00000 n -0000500607 00000 n -0000054981 00000 n -0000061757 00000 n -0000507073 00000 n -0000506120 00000 n -0000500691 00000 n -0000061935 00000 n -0000070870 00000 n -0000500775 00000 n -0000071059 00000 n -0000078936 00000 n -0000500859 00000 n -0000079125 00000 n -0000088768 00000 n -0000500943 00000 n -0000088946 00000 n -0000096380 00000 n -0000501027 00000 n -0000096547 00000 n -0000105280 00000 n -0000501111 00000 n -0000105458 00000 n -0000112306 00000 n -0000498351 00000 n -0000501195 00000 n -0000112497 00000 n -0000120768 00000 n -0000501279 00000 n -0000120946 00000 n -0000128611 00000 n -0000501363 00000 n -0000128778 00000 n -0000135858 00000 n -0000501447 00000 n -0000136002 00000 n -0000141521 00000 n -0000506258 00000 n -0000501531 00000 n -0000141689 00000 n -0000150089 00000 n -0000501615 00000 n -0000150270 00000 n -0000156653 00000 n -0000501699 00000 n -0000156821 00000 n -0000164331 00000 n -0000501783 00000 n -0000164509 00000 n -0000173190 00000 n -0000501869 00000 n -0000173358 00000 n -0000179388 00000 n -0000501956 00000 n -0000179533 00000 n -0000185718 00000 n -0000502043 00000 n -0000185874 00000 n -0000192300 00000 n -0000502130 00000 n -0000192479 00000 n -0000199762 00000 n -0000502217 00000 n -0000199952 00000 n -0000206875 00000 n -0000502304 00000 n -0000207100 00000 n -0000215932 00000 n -0000506401 00000 n -0000502392 00000 n -0000216100 00000 n -0000221985 00000 n -0000502480 00000 n -0000222164 00000 n -0000227508 00000 n -0000502568 00000 n -0000227696 00000 n -0000231980 00000 n -0000502656 00000 n -0000232146 00000 n -0000237035 00000 n -0000502744 00000 n -0000237238 00000 n -0000246999 00000 n -0000502832 00000 n -0000247167 00000 n -0000252301 00000 n -0000457279 00000 n -0000502920 00000 n -0000252520 00000 n -0000258741 00000 n -0000457577 00000 n -0000457733 00000 n -0000503008 00000 n -0000258937 00000 n -0000263728 00000 n -0000503096 00000 n -0000263873 00000 n -0000270717 00000 n -0000503184 00000 n -0000270896 00000 n -0000275653 00000 n -0000458475 00000 n -0000458721 00000 n -0000506550 00000 n -0000503272 00000 n -0000275896 00000 n -0000280821 00000 n -0000498701 00000 n -0000459003 00000 n -0000503360 00000 n -0000281039 00000 n -0000285448 00000 n -0000503448 00000 n -0000285591 00000 n -0000289534 00000 n -0000503536 00000 n -0000289666 00000 n -0000292263 00000 n -0000459517 00000 n -0000503624 00000 n -0000292432 00000 n -0000295017 00000 n -0000461311 00000 n -0000463934 00000 n -0000503712 00000 n -0000295200 00000 n -0000300085 00000 n -0000503800 00000 n -0000300217 00000 n -0000305243 00000 n -0000467501 00000 n -0000503888 00000 n -0000305412 00000 n -0000311270 00000 n -0000498893 00000 n -0000503976 00000 n -0000311427 00000 n -0000315734 00000 n -0000504064 00000 n -0000315877 00000 n -0000320183 00000 n -0000506699 00000 n -0000504152 00000 n -0000320326 00000 n -0000326314 00000 n -0000504240 00000 n -0000326457 00000 n -0000331088 00000 n -0000504328 00000 n -0000331231 00000 n -0000336961 00000 n -0000504416 00000 n -0000337106 00000 n -0000342927 00000 n -0000504504 00000 n -0000343072 00000 n -0000349025 00000 n -0000504592 00000 n -0000349170 00000 n -0000354423 00000 n -0000504680 00000 n -0000354579 00000 n -0000359899 00000 n -0000504768 00000 n -0000360082 00000 n -0000366416 00000 n -0000504856 00000 n -0000366599 00000 n -0000372738 00000 n -0000504944 00000 n -0000372921 00000 n -0000379610 00000 n -0000506848 00000 n -0000505032 00000 n -0000379793 00000 n -0000386127 00000 n -0000505120 00000 n -0000386320 00000 n -0000391520 00000 n -0000467923 00000 n -0000505208 00000 n -0000391736 00000 n -0000398914 00000 n -0000505296 00000 n -0000399093 00000 n -0000407355 00000 n -0000505384 00000 n -0000407534 00000 n -0000412167 00000 n -0000469192 00000 n -0000505472 00000 n -0000412373 00000 n -0000418375 00000 n -0000505560 00000 n -0000418554 00000 n -0000425342 00000 n -0000505648 00000 n -0000425474 00000 n -0000430235 00000 n -0000505736 00000 n -0000430402 00000 n -0000437364 00000 n -0000499305 00000 n -0000505824 00000 n -0000437523 00000 n -0000438802 00000 n -0000506997 00000 n -0000470902 00000 n -0000471100 00000 n -0000471307 00000 n -0000471503 00000 n -0000471704 00000 n -0000471896 00000 n -0000472099 00000 n -0000472301 00000 n -0000472493 00000 n -0000492601 00000 n -0000492807 00000 n -0000493011 00000 n -0000493217 00000 n -0000493430 00000 n -0000493639 00000 n -0000498496 00000 n -0000499477 00000 n -0000505912 00000 n -0000505941 00000 n -0000507212 00000 n -0000507336 00000 n -trailer -<< -/Size 281 -/Root 280 0 R -/Info 279 0 R -/ID [<1a11e572aa7e28215b7cf1fd1db4c34e><1a11e572aa7e28215b7cf1fd1db4c34e>] ->> -startxref -507408 -%%EOF diff --git a/docs/medley-irm/28-HARDCOPY.pdf b/docs/medley-irm/28-HARDCOPY.pdf deleted file mode 100644 index c62a7f87..00000000 --- a/docs/medley-irm/28-HARDCOPY.pdf +++ /dev/null @@ -1,2396 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 5593 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(28. HARDCOPY FACILITIES)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -534.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 533.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.2778 Tw -(Interlisp-D includes facilities for generating hardcopy in "Interpress" format and "Press" format.)Tj -0 -1.2222 TD -0.0278 Tw -(Interpress is a file format used for communicating documents to Xerox Network System printers such)Tj -T* -0.0422 Tw -[(as the Xerox 8044 and Xerox 5700. Press is a file format used for communicating documents to Xerox)]TJ -T* -0.0322 Tw -[(laser Xerographic printers known by the names "Dover", "Spruce", "Penguin", and "Raven". There are)]TJ -T* -0.0611 Tw -(also library packages available for supporting other types of printer formats \(4045, FX-80, C150, etc.\).)Tj -T* -0.0589 Tw -(The hardcopy facilities are designed to allow the user to support new types of printers with minimal)Tj -T* -0 Tw -(changes to the user interface.)Tj -0 -2.8889 TD -0.1356 Tw -(Files can be in a number of formats, including Interpress files, plain text files, and formatted Tedit)Tj -0 -1.2222 TD -0.0211 Tw -[(files. In order to print a file on a given printer, it is necessary to identify the format of the file, convert)]TJ -T* -0.17 Tw -[(the file to a format that the printer can accept, and transmit it. Rather than require that the user)]TJ -T* -0.1844 Tw -(explicitly determine file types and do the conversion, the Interlisp-D hardcopy functions generate)Tj -T* -0.0022 Tw -(Interpress or other format output depending on the appropriate choice for the designated printer. The)Tj -0 -1.2278 TD -0.0011 Tw -(hardcopy functions use the variables )Tj -/TT10 1 Tf -10 0 0 10 226.6115 387.49 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 298.6232 387.49 Tm -0.0002 Tc -0.0009 Tw -( and )Tj -/TT10 1 Tf -10 0 0 10 318.3791 387.49 Tm -0 Tc -0 Tw -(PRINTFILETYPES)Tj -/TT8 1 Tf -9 0 0 9 402.3927 387.49 Tm -0.0001 Tc -0.001 Tw -( \(described below\) to)Tj --36.0436 -1.3278 TD -0 Tc -0.0989 Tw -[(determine the type of a file, how to convert it for a given printer, and how to send it. By changing)]TJ -0 -1.2222 TD -0.2478 Tw -(these variables, the user can define other kinds of printers and print to them using the normal)Tj -T* -0 Tw -(hardcopy functions.)Tj -/TT10 1 Tf -10 0 0 10 102 331.2 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 331.2 Tm -(SEND.FILE.TO.PRINTER)Tj -/TT4 1 Tf -10 0 0 10 216 331.2 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 218.7783 331.2 Tm -(FILE HOST PRINTOPTIONS)Tj -/TT10 1 Tf -10 0 0 10 337.5977 331.2 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 343.5986 331.2 Tm -[( )-10725.7([Function])]TJ --24.1776 -1.8889 TD -0.0989 Tw -(The function )Tj -/TT10 1 Tf -10 0 0 10 180.7077 314.2 Tm -0 Tw -(SEND.FILE.TO.PRINTER)Tj -/TT8 1 Tf -9 0 0 9 300.7272 314.2 Tm -0.0989 Tw -[( causes the file )]TJ -/TT14 1 Tf -7.0503 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[( to be sent to the printer)]TJ -/TT14 1 Tf --28.8649 -1.3333 TD -0 Tw -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -0.1611 Tw -[(. If )]TJ -/TT14 1 Tf -2.1533 0 TD -0 Tw -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -0.1611 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 202.4199 302.2 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 220.4228 302.2 Tm -0.1611 Tw -(, the first host in the list )Tj -/TT10 1 Tf -10 0 0 10 326.211 302.2 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 440.2296 302.2 Tm -0.1611 Tw -[( which can)]TJ --34.9144 -1.3278 TD -0 Tw -(print )Tj -/TT14 1 Tf -2.4453 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( is used.)Tj -/TT14 1 Tf --4.8457 -2.0722 TD -(PRINTOPTIONS)Tj -/TT8 1 Tf -7.2012 0 TD -0.1789 Tw -[( is a property list of the form )]TJ -/TT10 1 Tf -10 0 0 10 319.5128 271.6 Tm -0 Tw -(\(PROP)Tj -9 0 0 9 349.51 268.6 Tm -(1)Tj -10 0 0 10 354.91 271.6 Tm -0.43 Tw -[( VALUE)]TJ -9 0 0 9 395.21 268.6 Tm -0 Tw -(1)Tj -10 0 0 10 400.61 271.6 Tm -0.43 Tw -[( PROP)]TJ -9 0 0 9 434.91 268.6 Tm -0 Tw -(2)Tj -10 0 0 10 440.31 271.6 Tm -0.43 Tw -[( VALUE)]TJ -9 0 0 9 480.61 268.6 Tm -0 Tw -(2)Tj -10 0 0 10 126 256.95 Tm -(...\))Tj -/TT8 1 Tf -9 0 0 9 150.0039 256.95 Tm -0.0956 Tw -[(. The properties accepted depends on the type of printer. For Interpress printers,)]TJ --2.6671 -1.3278 TD -0 Tw -(the following properties are accepted:)Tj -/TT10 1 Tf -10 0 0 10 84 225.66 Tm -(DOCUMENT.NAME)Tj -/TT8 1 Tf -9 0 0 9 180 225.66 Tm -0.0389 Tw -[(The document name to appear on the header page \(a string\). Default is)]TJ --0.6667 -1.3278 TD -0 Tw -(the full name of the file.)Tj -/TT10 1 Tf -10 0 0 10 54.03 194.37 Tm -(DOCUMENT.CREATION.DATE)Tj -/TT8 1 Tf -9 0 0 9 198 194.37 Tm -0.0144 Tw -(The creation date to appear on the header page \(a Lisp integer date,)Tj --2.6667 -1.3333 TD -0.0133 Tw -(such as returned by )Tj -/TT10 1 Tf -10 0 0 10 255.0845 182.37 Tm -0 Tw -(IDATE)Tj -/TT8 1 Tf -9 0 0 9 285.0894 182.37 Tm -0.0133 Tw -[(\). The default value is the creation date of the)]TJ --12.3433 -1.3278 TD -0 Tw -(file.)Tj -/TT10 1 Tf -10 0 0 10 96 151.08 Tm -(SENDER.NAME)Tj -/TT8 1 Tf -9 0 0 9 174 151.08 Tm -0.1789 Tw -[(The name of the sender to appear on the header page \(a string\). The)]TJ -T* -0 Tw -(default value is the name of the user.)Tj -/TT10 1 Tf -10 0 0 10 78 119.79 Tm -(RECIPIENT.NAME)Tj -/TT8 1 Tf -9 0 0 9 174 119.79 Tm -0.1133 Tw -[(The name of the recipient to appear on the header page \(a string\). The)]TJ -T* -0 Tw -(default is none.)Tj -/TT10 1 Tf -10 0 0 10 120 88.5 Tm -(MESSAGE)Tj -/TT8 1 Tf -9 0 0 9 174 88.5 Tm -0.2256 Tw -[(An additional message to appear on the header page \(a string\). The)]TJ -0 -1.47 TD -0 Tw -(default is none)Tj -/F1 1 Tf -10 0 0 10 232.9219 75.27 Tm -(.)Tj -/TT10 1 Tf --11.2922 -1.934 TD -(#COPIES)Tj -/TT8 1 Tf -9 0 0 9 174 55.93 Tm -(The number of copies to be printed. The default value is 1.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -15 0 obj -<< -/Length 7364 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT10 1 Tf -3 -4.38 TD -(PAGES.TO.PRINT)Tj -/TT8 1 Tf -9 0 0 9 222 568.2 Tm -0.11 Tw -(The pages of the document that should be printed, represented as a list)Tj -/TT10 1 Tf -10 0 0 10 222 556.2 Tm -0.068 Tw -(\(FIRSTPAGE# LASTPAGE#\))Tj -/TT8 1 Tf -9 0 0 9 354.7014 556.2 Tm -0.0289 Tw -[(. For example, if this option is \(3 5\), this)]TJ --14.7446 -1.3278 TD -0.0833 Tw -[(specifies that pages 3 through 5, inclusive, should be printed. Note that)]TJ -0 -1.2222 TD -0.0378 Tw -(the page numbering used for this purpose has no connection to any page)Tj -T* -0.0233 Tw -[(numbers that may be printed on the document. The default is to print all)]TJ -T* -0 Tw -(of the pages in the document.)Tj -/TT10 1 Tf -10 0 0 10 174 491.91 Tm -(MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 222 491.91 Tm -0.2756 Tw -[(The medium on which the master is to be printed. If omitted, this)]TJ -0 -1.3333 TD -0.3456 Tw -(defaults to the value of )Tj -/TT10 1 Tf -10 0 0 10 331.0876 479.91 Tm -0 Tw -(NSPRINT.DEFAULT.MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 463.1091 479.91 Tm -0.3456 Tw -(, as follows:)Tj -/TT10 1 Tf -10 0 0 10 222 467.91 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 240.0029 467.91 Tm -0.0611 Tw -[( means to use the printers default; )]TJ -/TT10 1 Tf -10 0 0 10 383.7748 467.91 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 389.7758 467.91 Tm -0.0611 Tw -[( means to use the first medium)]TJ --18.6418 -1.3278 TD -0.0011 Tw -(reported available by the printer; any other value must be a Courier value)Tj -0 -1.2278 TD -0.5756 Tw -(of type )Tj -/TT10 1 Tf -10 0 0 10 262.4318 444.91 Tm -0 Tw -(MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 298.4376 444.91 Tm -0.5756 Tw -[(. The format of this type is a list )]TJ -/TT10 1 Tf -10 0 0 10 479.9993 444.91 Tm -0 Tw -(\(PAPER)Tj --25.7999 -1.2 TD -0.24 Tw -(\(KNOWN.SIZE TYPE\)\) or \(PAPER \(OTHER.SIZE \(WIDTH)Tj -T* -0 Tw -(LENGTH\)\)\))Tj -/TT8 1 Tf -9 0 0 9 276.0088 420.91 Tm -0.0633 Tw -[(. The paper )]TJ -/TT10 1 Tf -10 0 0 10 327.7888 420.91 Tm -0 Tw -(TYPE)Tj -/TT8 1 Tf -9 0 0 9 351.7927 420.91 Tm -0.0633 Tw -[( is one of )]TJ -/TT10 1 Tf -10 0 0 10 391.8788 420.91 Tm -0 Tw -(US.LETTER)Tj -/TT8 1 Tf -9 0 0 9 445.8876 420.91 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 450.9576 420.91 Tm -(US.LEGAL)Tj -/TT8 1 Tf -9 0 0 9 498.9654 420.91 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 504.0354 420.91 Tm -(A0)Tj -/TT8 1 Tf -9 0 0 9 222 408.91 Tm -(through )Tj -/TT10 1 Tf -10 0 0 10 261.863 408.91 Tm -(A10)Tj -/TT8 1 Tf -9 0 0 9 279.8659 408.91 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 289.6659 408.91 Tm -(ISO)Tj -/TT8 1 Tf -9 0 0 9 307.6688 408.91 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 309.9188 408.91 Tm -(B0)Tj -/TT8 1 Tf -9 0 0 9 321.9208 408.91 Tm -0.5889 Tw -[( through )]TJ -/TT10 1 Tf -10 0 0 10 369.3338 408.91 Tm -0 Tw -(ISO)Tj -/TT8 1 Tf -9 0 0 9 387.3367 408.91 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 389.5867 408.91 Tm -(B10)Tj -/TT8 1 Tf -9 0 0 9 407.5896 408.91 Tm -0.5889 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 440.1755 408.91 Tm -0 Tw -(JIS.B0)Tj -/TT8 1 Tf -9 0 0 9 476.1813 408.91 Tm -0.5889 Tw -[( through)]TJ -/TT10 1 Tf -10 0 0 10 222 396.91 Tm -0 Tw -(JIS.B10)Tj -/TT8 1 Tf -9 0 0 9 264.0068 396.91 Tm -0.36 Tw -[(. For users who use A4 paper exclusively, it should be)]TJ --4.6674 -1.3333 TD -1.1344 Tw -(sufficient to set )Tj -/TT10 1 Tf -10 0 0 10 315.2433 384.91 Tm -0 Tw -(NSPRINT.DEFAULT.MEDIUM)Tj -/TT8 1 Tf -9 0 0 9 447.2647 384.91 Tm -1.1344 Tw -[( to )]TJ -/TT10 1 Tf -10 0 0 10 480.0334 384.91 Tm -0 Tw -(\(PAPER)Tj --25.8033 -1.2 TD -(\(KNOWN.SIZE "A4"\)\))Tj -/TT8 1 Tf -9 0 0 9 330.0175 372.91 Tm -(.)Tj --12.002 -2.1056 TD -0.3467 Tw -(When using different paper sizes, it may be necessary to reset the)Tj -0 -1.2278 TD -0 Tw -(variable )Tj -/TT10 1 Tf -10 0 0 10 260.0479 342.91 Tm -(DEFAULTPAGEREGION)Tj -/TT8 1 Tf -9 0 0 9 362.0645 342.91 Tm -0.4033 Tw -(, the region on the page used for)Tj --15.5627 -1.3278 TD -0 Tw -(printing \(measured in micas from the lower-left corner\).)Tj -/TT10 1 Tf -10 0 0 10 168 311.62 Tm -(STAPLE?)Tj -/TT8 1 Tf -9 0 0 9 222 311.62 Tm -(True if the document should be stapled.)Tj -/TT10 1 Tf -10 0 0 10 174 291.33 Tm -(#SIDES)Tj -/TT8 1 Tf -9 0 0 9 222 291.33 Tm -0.1767 Tw -(1 or 2 to indicate that the document should be printed on one or two)Tj -0 -1.3333 TD -0 Tw -(sides, respectively. The default is the value of )Tj -/TT10 1 Tf -10 0 0 10 406.8999 279.33 Tm -(EMPRESS#SIDES)Tj -/TT8 1 Tf -9 0 0 9 484.9126 279.33 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 162 259.04 Tm -(PRIORITY)Tj -/TT8 1 Tf -9 0 0 9 222 259.04 Tm -0.1233 Tw -(The priority of this print request, one of )Tj -/TT10 1 Tf -10 0 0 10 390.8497 259.04 Tm -0 Tw -(LOW)Tj -/TT8 1 Tf -9 0 0 9 408.8527 259.04 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 414.4626 259.04 Tm -(NORMAL)Tj -/TT8 1 Tf -9 0 0 9 450.4685 259.04 Tm -0.1233 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 467.9068 259.04 Tm -0 Tw -(HIGH)Tj -/TT8 1 Tf -9 0 0 9 491.9107 259.04 Tm -0.1233 Tw -[(. The)]TJ --29.9901 -1.3278 TD -0 Tw -(default is the printers default.)Tj --5.3333 -2.1422 TD -1.0811 Tw -[(Note: )-236.8(Press printers only recognize the options)]TJ -/F1 1 Tf -10 0 0 10 420.8214 227.81 Tm -0 Tw -( )Tj -/TT10 1 Tf -1.48 0 TD -(#COPIES)Tj -/F1 1 Tf -4.2007 0 TD -(, )Tj -/TT10 1 Tf -1.758 0 TD -(#SIDES)Tj -/F1 1 Tf -3.6006 0 TD -(,)Tj -/TT10 1 Tf --35.7214 -1.323 TD -(DOCUMENT.CREATION.DATE)Tj -/F1 1 Tf -13.2021 0 TD -(, and )Tj -/TT10 1 Tf -2.575 0 TD -(DOCUMENT.NAME)Tj -/F1 1 Tf -7.8013 0 TD -(.)Tj -/TT8 1 Tf -9 0 0 9 210 195.63 Tm -(For example,)Tj -/TT10 1 Tf -10 0 0 10 210 177.58 Tm -(\(SEND.FILE.TO.PRINTER FOO NIL)Tj -0 -1.9 TD -( \(#COPIES 3 #SIDES 2 DOCUMENT.NAME "For John"\)\))Tj --3.6 -1.9 TD -(SEND.FILE.TO.PRINTER)Tj -/TT8 1 Tf -9 0 0 9 294.0195 139.58 Tm -0.0211 Tw -[( calls )]TJ -/TT10 1 Tf -10 0 0 10 316.4469 139.58 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 382.4576 139.58 Tm -0.0211 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 402.5735 139.58 Tm -0 Tw -(PRINTFILETYPE)Tj -/TT8 1 Tf -9 0 0 9 480.5861 139.58 Tm -0.0211 Tw -[( to determine)]TJ --34.0651 -1.3278 TD -0.0144 Tw -(the printer type of )Tj -/TT14 1 Tf -8.3556 0 TD -0 Tw -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[( and the file format of )]TJ -/TT14 1 Tf -9.9226 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[(. If )]TJ -/TT14 1 Tf -1.7133 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0144 Tw -[( is a formatted file already in)]TJ --27.1927 -1.2889 TD -0.7678 Tw -[(a form that the printer can print, it is transmitted directly. Otherwise,)]TJ -/TT10 1 Tf -10 0 0 10 174 104.98 Tm -0 Tw -(CONVERT.FILE.TO.TYPE.FOR.PRINTER)Tj -/TT8 1 Tf -9 0 0 9 366.0312 104.98 Tm -0.0878 Tw -[( is called to do the conversion. [Note: If)]TJ --21.3368 -1.3333 TD -0.2122 Tw -(the file is converted, )Tj -/TT10 1 Tf -10 0 0 10 264.1956 92.98 Tm -0 Tw -(PRINTOPTIONS)Tj -/TT8 1 Tf -9 0 0 9 336.2074 92.98 Tm -0.2122 Tw -[( is passed to the formatting function, so it can)]TJ --18.023 -1.3333 TD -0.0756 Tw -(include properties such as )Tj -/TT10 1 Tf -10 0 0 10 283.05 80.98 Tm -0 Tw -(HEADING)Tj -/TT8 1 Tf -9 0 0 9 325.0569 80.98 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 330.2369 80.98 Tm -(REGION)Tj -/TT8 1 Tf -9 0 0 9 366.2428 80.98 Tm -0.0756 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 389.5886 80.98 Tm -0 Tw -(FONTS)Tj -/TT8 1 Tf -9 0 0 9 419.5935 80.98 Tm -0.0756 Tw -[(.] All of these functions use)]TJ --27.2882 -1.3333 TD -0.0722 Tw -(the lists )Tj -/TT10 1 Tf -10 0 0 10 208.0876 68.98 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 280.0993 68.98 Tm -0.0722 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 301.1351 68.98 Tm -0 Tw -(PRINTFILETYPES)Tj -/TT8 1 Tf -9 0 0 9 385.1488 68.98 Tm -0.0722 Tw -[( to actually determine how to do the)]TJ --23.461 -1.3278 TD -0 Tw -(conversion.)Tj -ET -endstream -endobj -16 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -18 0 obj -<< -/Length 8097 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( HARDCOPY FACILITIES)Tj -/TT10 1 Tf --28.2 -4.251 TD -(LISTFILES)Tj -/TT8 1 Tf -9 0 0 9 180.0088 569.49 Tm -0.2244 Tw -[( \(Chapter 17\) calls the function )]TJ -/TT10 1 Tf -10 0 0 10 316.349 569.49 Tm -0 Tw -(LISTFILES1)Tj -/TT8 1 Tf -9 0 0 9 376.3587 569.49 Tm -0.2244 Tw -[( to send a single file to a)]TJ --27.8176 -1.3333 TD -0.1622 Tw -[(hardcopy printing device. Interlisp-D is initialized with )]TJ -/TT10 1 Tf -10 0 0 10 362.7899 557.49 Tm -0 Tw -(LISTFILES1)Tj -/TT8 1 Tf -9 0 0 9 422.7996 557.49 Tm -0.1622 Tw -[( defined to call)]TJ -/TT10 1 Tf -10 0 0 10 126 545.49 Tm -0 Tw -(SEND.FILE.TO.PRINTER)Tj -/TT8 1 Tf -9 0 0 9 246.0195 545.49 Tm -(. )Tj -/TT10 1 Tf -10 0 0 10 102 522.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 522.26 Tm -(HARDCOPYW)Tj -/F1 1 Tf -10 0 0 10 156.6 522.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 159.38 522.26 Tm -(WINDOW/BITMAP/REGION FILE HOST SCALEFACTOR ROTATION)Tj --5.7089 -1.1111 TD -(PRINTERTYPE)Tj -/TT10 1 Tf -10 0 0 10 167.4097 512.26 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 173.4106 512.26 Tm -(HARDCOPYTITLE)Tj -/TT10 1 Tf -10 0 0 10 243.6221 512.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 249.623 512.26 Tm -[( )-21167.4([Function])]TJ --13.7359 -1.8833 TD -0.0111 Tw -[(Creates a hardcopy file from a bitmap and optionally sends it to a printer. Note that some)]TJ -0 -1.2222 TD -0.0733 Tw -(printers may have limitations concerning how big or how "complicated" the bitmap may)Tj -T* -0 Tw -(be printed.)Tj -/TT14 1 Tf -0 -2 TD -(WINDOW/BITMAP/REGION)Tj -/TT8 1 Tf -12.002 0 TD -0.2611 Tw -[( can either be a )]TJ -/TT14 1 Tf -8.1659 0 TD -0 Tw -(WINDOW)Tj -/TT8 1 Tf -3.6006 0 TD -0.2611 Tw -[( \(open or closed\), a )]TJ -/TT14 1 Tf -9.9149 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.2611 Tw -(, or a)Tj -/TT14 1 Tf --37.284 -1.2944 TD -0 Tw -(REGION)Tj -/TT8 1 Tf -3.6006 0 TD -0.07 Tw -[( \(interpreted as a region of the screen\). If )]TJ -/TT14 1 Tf -19.0921 0 TD -0 Tw -(WINDOW/BITMAP/REGION)Tj -/TT8 1 Tf -12.002 0 TD -0.07 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 450.4453 443.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 468.4482 443.66 Tm -0.07 Tw -(, the)Tj --38.0498 -1.3333 TD -0 Tw -(user is prompted for a screen region using )Tj -/TT10 1 Tf -10 0 0 10 296.4551 431.66 Tm -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 350.4638 431.66 Tm -(.)Tj --24.9404 -2.1111 TD -(If )Tj -/TT14 1 Tf -0.941 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0211 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 185.7731 412.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 203.776 412.66 Tm -0.0211 Tw -[(, it is used as the name of the file for output. If )]TJ -/TT14 1 Tf -21.1085 0 TD -0 Tw -(HOST )Tj -/TT10 1 Tf -10 0 0 10 421.2073 412.66 Tm -0.05 Tw -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 451.7122 412.66 Tm -0.0211 Tw -(, this file)Tj --36.1903 -1.3333 TD -0 Tw -(is not printed. If )Tj -/TT14 1 Tf -7.624 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -( is )Tj -/TT10 1 Tf -10 0 0 10 227.1533 400.66 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 245.1562 400.66 Tm -(, a temporary file is created, and sent to )Tj -/TT14 1 Tf -17.6499 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --33.2899 -2.1111 TD -0.0467 Tw -(To save an image on a file without printing it, perform )Tj -/TT10 1 Tf -10 0 0 10 349.5116 381.66 Tm -0.112 Tw -(\(HARDCOPYW IMAGE FILE\))Tj -/TT8 1 Tf -9 0 0 9 483.7731 381.66 Tm -0 Tw -(.)Tj --39.7526 -1.3278 TD -0.5922 Tw -(To print an image to the printer PRINTER without saving the file, perform)Tj -/TT10 1 Tf -10 0 0 10 126 358.66 Tm -0 Tw -(\(HARDCOPYW IMAGE NIL PRINTER\))Tj -/TT8 1 Tf -9 0 0 9 300.0283 358.66 Tm -(. )Tj --19.3365 -2.1111 TD -0.09 Tw -(If both )Tj -/TT14 1 Tf -3.3572 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -[( and )]TJ -/TT14 1 Tf -2.3729 0 TD -0 Tw -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -0.09 Tw -[( are )]TJ -/TT10 1 Tf -10 0 0 10 239.2643 339.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 257.2672 339.66 Tm -0.09 Tw -(, the default action is to print the image, without saving)Tj --14.5852 -1.3333 TD -0.0778 Tw -[(the file. The printer used is determined by the argument )]TJ -/TT10 1 Tf -10 0 0 10 361.5125 327.66 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 427.5232 327.66 Tm -0.0778 Tw -[( and the value)]TJ --33.5026 -1.3333 TD -0.0411 Tw -(of the variable )Tj -/TT10 1 Tf -10 0 0 10 186.423 315.66 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 300.4415 315.66 Tm -0.0411 Tw -[(. If )]TJ -/TT10 1 Tf -10 0 0 10 316.5808 315.66 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 382.5916 315.66 Tm -0.0411 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 412.6519 315.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 430.6548 315.66 Tm -0.0411 Tw -(, the first host)Tj --33.8505 -1.3333 TD -0 Tw -(on )Tj -/TT10 1 Tf -10 0 0 10 138.4813 303.66 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 252.4999 303.66 Tm -0.0089 Tw -[( of the type )]TJ -/TT10 1 Tf -10 0 0 10 299.8765 303.66 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 365.8873 303.66 Tm -0.0089 Tw -[( is used. If )]TJ -/TT10 1 Tf -10 0 0 10 411.3005 303.66 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 477.3112 303.66 Tm -0.0089 Tw -[( is)]TJ --39.0346 -1.3333 TD -0 Tw -(NIL, the first printer on )Tj -/TT10 1 Tf -10 0 0 10 221.75 291.66 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 335.7685 291.66 Tm -( that implements the )Tj -/TT10 1 Tf -10 0 0 10 420.03 291.66 Tm -(BITMAPSCALE)Tj -/TT8 1 Tf -9 0 0 9 126 279.66 Tm -0.2744 Tw -(\(as determined by )Tj -/TT10 1 Tf -10 0 0 10 207.6776 279.66 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 279.6893 279.66 Tm -0.2744 Tw -[(\) operation is used, if any. Otherwise, the first)]TJ --17.0766 -1.3333 TD -0 Tw -(printer on )Tj -/TT10 1 Tf -10 0 0 10 168.2754 267.66 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 282.2939 267.66 Tm -( is used.)Tj --17.366 -2.1111 TD -0.3767 Tw -(The type of hardcopy file produced is determined by HOST if non-)Tj -/TT10 1 Tf -10 0 0 10 429.3877 248.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 447.3906 248.66 Tm -0.3767 Tw -(, else by)Tj -/TT10 1 Tf -10 0 0 10 126 236.66 Tm -0 Tw -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 192.0107 236.66 Tm -0.4633 Tw -[( if non-)]TJ -/TT10 1 Tf -10 0 0 10 228.8537 236.66 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 246.8566 236.66 Tm -0.4633 Tw -(, else by the value of )Tj -/TT10 1 Tf -10 0 0 10 355.0035 236.66 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 469.0221 236.66 Tm -0.4633 Tw -(, as)Tj --38.1136 -1.3278 TD -0 Tw -(described above. )Tj -/TT14 1 Tf -0 -2 TD -(SCALEFACTOR)Tj -/TT8 1 Tf -6.6011 0 TD -0.0844 Tw -[( is a reduction factor. If not given, it is computed automatically based on)]TJ --6.6011 -1.2889 TD -0.0411 Tw -[(the size of the bitmap and the capabilities of the printer type. This may not be supported)]TJ -0 -1.2222 TD -0 Tw -(for some printers.)Tj -/TT14 1 Tf -0 -2 TD -(ROTATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0733 Tw -[( specifies how the bitmap image should be rotated on the printed page. Most)]TJ --4.8008 -1.2944 TD -0 Tw -(printers \(including Interpress printers\) only support a )Tj -/TT10 1 Tf -10 0 0 10 342.5977 154.46 Tm -(ROTATION)Tj -/TT8 1 Tf -9 0 0 9 390.6055 154.46 Tm -( of multiples of 90.)Tj -/TT14 1 Tf --29.4006 -2.1111 TD -(PRINTERTYPE)Tj -/TT8 1 Tf -6.6011 0 TD -0.1344 Tw -[( specifies what type of printer to use when )]TJ -/TT10 1 Tf -10 0 0 10 367.5106 135.46 Tm -0 Tw -(HOST)Tj -/TT8 1 Tf -9 0 0 9 391.5145 135.46 Tm -0.1344 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 404.8681 135.46 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 422.871 135.46 Tm -0.1344 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 432.041 135.46 Tm -0 Tw -(HARDCOPYW)Tj -/TT8 1 Tf -9 0 0 9 126 123.51 Tm -0.02 Tw -(uses this information to select which printer to use or what print file format to convert the)Tj -0 -1.2222 TD -0 Tw -(output into, as described above.)Tj -0 -2 TD -0.15 Tw -(The background menu contains a "Hardcopy" command \(Chapter 28\) that prompts the)Tj -0 -1.2222 TD -0 Tw -(user for a region on the screen, and sends the image to the default printer.)Tj -0 -2.0056 TD -0.1078 Tw -(Hardcopy output may also be obtained by writing a file on the printer device )Tj -/TT10 1 Tf -10 0 0 10 448.6606 65.46 Tm -0 Tw -(LPT)Tj -/TT8 1 Tf -9 0 0 9 466.6635 65.46 Tm -0.1078 Tw -(, e.g.)Tj -/TT10 1 Tf -10 0 0 10 126 53.46 Tm -0.168 Tw -(\(COPYFILE FOO {LPT}\))Tj -/TT8 1 Tf -9 0 0 9 261.3815 53.46 Tm -0.07 Tw -[(. When a file on this device is closed, it is converted to)]TJ --15.0424 -1.3278 TD -0.02 Tw -(Interpress or some other format \(if necessary\) and sent to the default printer \(the first host)Tj -ET -endstream -endobj -19 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -21 0 obj -<< -/Length 6168 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -(on )Tj -/TT10 1 Tf -10 0 0 10 187.9013 569.49 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 301.9199 569.49 Tm -0.1667 Tw -[(\). One can include the printer name directly in the file)]TJ --14.2133 -1.3333 TD -0.2056 Tw -(name, e.g. )Tj -/TT10 1 Tf -10 0 0 10 220.261 557.49 Tm -0.492 Tw -(\(COPYFILE FOO {LPT}TREMOR:\))Tj -/TT8 1 Tf -9 0 0 9 398.1284 557.49 Tm -0.2056 Tw -[( will send the file to the printer)]TJ -/TT10 1 Tf -10 0 0 10 174 545.49 Tm -0 Tw -(TREMOR:)Tj -/TT8 1 Tf -9 0 0 9 216.0068 545.49 Tm -(.)Tj -/TT14 1 Tf --4.6674 -2.1056 TD -(HARDCOPYTITLE)Tj -/TT8 1 Tf -7.8013 0 TD -0.11 Tw -[( is a string specifying a title to print on the page containing the screen)]TJ --7.8013 -1.2944 TD -0 Tw -(image. If )Tj -/TT10 1 Tf -10 0 0 10 211.1601 514.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 229.1631 514.89 Tm -(, the string "Window Image" is used. To omit a title, specify the null string.)Tj -/TT10 1 Tf -10 0 0 10 150 473.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 473.66 Tm -(PRINTERSTATUS)Tj -/F1 1 Tf -10 0 0 10 226.2 473.66 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.98 473.66 Tm -(PRINTER)Tj -/TT10 1 Tf -10 0 0 10 266.7861 473.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.7871 473.66 Tm -[( )-23927([Function])]TJ --10.9763 -1.8833 TD -0.0111 Tw -(Returns a list describing the current status of the printer named )Tj -/TT14 1 Tf -28.4118 0 TD -0 Tw -(PRINTER)Tj -/TT8 1 Tf -4.2007 0 TD -0.0111 Tw -[(. The exact form)]TJ --32.6125 -1.2889 TD -0.1022 Tw -[(of the value returned depends on the type of printer. For InterPress printers, the status)]TJ -0 -1.2222 TD -0.1433 Tw -(describes whether the printer is available or busy or needs attention, and what type of)Tj -T* -0 Tw -(paper is loaded in the printer.)Tj -0 -2.0056 TD -(Returns )Tj -/TT10 1 Tf -10 0 0 10 208.2334 405.06 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 226.2364 405.06 Tm -0.0767 Tw -[( if the printer does not respond in a reasonable time, which can occur if the)]TJ --5.804 -1.3278 TD -0 Tw -(printer is very busy, or does not implement the printer status service.)Tj -/TT12 1 Tf --2.6667 -2.4822 TD -(DEFAULTPRINTINGHOST)Tj -/TT6 1 Tf -10 0 0 10 252.6167 370.77 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 255.38 370.77 Tm -26.3089 Tw -[( [Variable])]TJ --9.0422 -1.85 TD -0.1711 Tw -(The variable )Tj -/TT10 1 Tf -10 0 0 10 228.8124 354.12 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 342.8309 354.12 Tm -0.1711 Tw -[( is used to designate the default printer to be)]TJ --18.759 -1.3278 TD -0.1167 Tw -[(used as the output of printing operations. It should be a list of the known printer host)]TJ -0 -1.2278 TD -1.0511 Tw -(names, for example, )Tj -/TT10 1 Tf -10 0 0 10 284.6456 331.12 Tm -2.522 Tw -(\(QUAKE LISPPRINT:\))Tj -/TT8 1 Tf -9 0 0 9 417.8832 331.12 Tm -1.0511 Tw -[(. If an element of)]TJ -/TT10 1 Tf -10 0 0 10 174 319.12 Tm -0 Tw -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 288.0185 319.12 Tm -0.4067 Tw -[( is a list, is interpreted as )]TJ -/TT10 1 Tf -10 0 0 10 413.9877 319.12 Tm -0.976 Tw -(\(PRINTERTYPE HOST\))Tj -/TT8 1 Tf -9 0 0 9 531.7653 319.12 Tm -0 Tw -(,)Tj --39.7517 -1.3278 TD -0.3233 Tw -[(specifying both the host type and the host name. The type of the printer, which)]TJ -0 -1.2222 TD -0.03 Tw -(determines the protocol used to send to it and the file format it requires, is determined by)Tj -0 -1.2278 TD -0 Tw -(the function )Tj -/TT10 1 Tf -10 0 0 10 224.3481 285.12 Tm -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 290.3589 285.12 Tm -(. )Tj --12.9288 -2.1111 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 183.1493 266.12 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 297.1678 266.12 Tm -0.0967 Tw -[( is a single printer name, it is treated as if it were a list of)]TJ --13.6853 -1.3278 TD -0 Tw -(one element.)Tj -/TT10 1 Tf -10 0 0 10 150 231.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 231.89 Tm -(PRINTFILETYPE)Tj -/F1 1 Tf -10 0 0 10 226.2 231.89 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.98 231.89 Tm -(FILE )Tj -/TT10 1 Tf -10 0 0 10 261.3853 231.89 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 267.3862 231.89 Tm -[( )-24527.1([Function])]TJ --10.3762 -1.8889 TD -0.0622 Tw -(Returns the format of the file )Tj -/TT14 1 Tf -13.3807 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0622 Tw -[(. Possible values include )]TJ -/TT10 1 Tf -10 0 0 10 420.2992 214.89 Tm -0 Tw -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 480.3089 214.89 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 485.3689 214.89 Tm -(TEDIT)Tj -/TT8 1 Tf -9 0 0 9 515.3738 214.89 Tm -0.0622 Tw -(, etc.)Tj --37.9304 -1.3278 TD -0.5044 Tw -[(If it cannot determine the file type, it returns NIL. Uses the global variable)]TJ -/TT10 1 Tf -10 0 0 10 174 191.89 Tm -0 Tw -(PRINTFILETYPES)Tj -/TT8 1 Tf -9 0 0 9 258.0136 191.89 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 169.89 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 169.89 Tm -(PRINTERTYPE)Tj -/TT10 1 Tf -10 0 0 10 215.4 169.89 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 221.401 169.89 Tm -(HOST)Tj -/TT10 1 Tf -10 0 0 10 243.0045 169.89 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 249.0054 169.89 Tm -[( )-26569.4([Function])]TJ --8.3339 -1.8833 TD -(Returns the type of the printer )Tj -/TT14 1 Tf -13.6621 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -(. Currently uses the following heuristic:)Tj --12.0625 -2.0722 TD -[(1.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -( is a list, the )Tj -/TT10 1 Tf -10 0 0 10 306.7896 134.29 Tm -(CAR)Tj -/TT8 1 Tf -9 0 0 9 324.7925 134.29 Tm -( is assumed to be the printer type and )Tj -/TT10 1 Tf -10 0 0 10 476.9312 134.29 Tm -(CADR)Tj -/TT8 1 Tf -9 0 0 9 228 122.34 Tm -(the name of the printer)Tj --2 -2.0056 TD -[(2.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -( is a litatom with a non-)Tj -/TT10 1 Tf -10 0 0 10 351.9697 104.29 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 369.9727 104.29 Tm -( )Tj -/TT10 1 Tf -10 0 0 10 372.2227 104.29 Tm -(PRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 438.2334 104.29 Tm -( property, the)Tj --23.3593 -1.3278 TD -(property value is returned as the printer type)Tj --2 -2.0056 TD -[(3.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -( contains a colon \(e.g., )Tj -/TT10 1 Tf -10 0 0 10 347.6279 74.29 Tm -(PRINTER:PARC:XEROX\))Tj -/TT8 1 Tf -9 0 0 9 461.6465 74.29 Tm -( it is)Tj --25.9607 -1.3333 TD -(assumed to be an )Tj -/TT10 1 Tf -10 0 0 10 299.187 62.29 Tm -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 359.1967 62.29 Tm -( printer)Tj -ET -endstream -endobj -22 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 4 0 R -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -24 0 obj -<< -/Length 5491 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -( HARDCOPY FACILITIES)Tj -/TT8 1 Tf -9 0 0 9 162 569.49 Tm -[(4.)-1250(If )]TJ -/TT14 1 Tf -2.9199 0 TD -(HOST)Tj -/TT8 1 Tf -2.4004 0 TD -( is the )Tj -/TT10 1 Tf -10 0 0 10 235.5513 569.49 Tm -(CADR)Tj -/TT8 1 Tf -9 0 0 9 259.5551 569.49 Tm -( of a list on )Tj -/TT10 1 Tf -10 0 0 10 305.3549 569.49 Tm -(DEFAULTPRINTINGHOST)Tj -/TT8 1 Tf -9 0 0 9 419.3735 569.49 Tm -(, the )Tj -/TT10 1 Tf -10 0 0 10 438.6084 569.49 Tm -(CAR)Tj -/TT8 1 Tf -9 0 0 9 180 557.54 Tm -(is returned as the printer type)Tj --2 -2.0056 TD -[(5.)-1250(Otherwise, the value of )]TJ -/TT10 1 Tf -10 0 0 10 274.9526 539.49 Tm -(DEFAULTPRINTERTYPE)Tj -/TT8 1 Tf -9 0 0 9 382.9702 539.49 Tm -( is returned as the)Tj --22.5522 -1.3278 TD -(printer type.)Tj -/TT4 1 Tf -10 0 0 10 54 485.2 Tm -(Low-level Hardcopy Variables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 482.49 m -534.01 482.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 460.54 Tm -0.0444 Tw -(The following variables are used to define how Interlisp should generate hardcopy of different types.)Tj -0 -1.2222 TD -0.1589 Tw -(The user should only need to change these variables when it is necessary to access a new type of)Tj -T* -0 Tw -(printer, or define a new hardcopy document type \(not often\).)Tj -/TT12 1 Tf -2.6667 -2.3333 TD -(PRINTERTYPES)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -0.5267 Tw -(The characteristics of a given printer are determined by the value of the list)Tj -/TT10 1 Tf -10 0 0 10 126 389.89 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 198.0117 389.89 Tm -(. Each element is a list of the form)Tj -/TT10 1 Tf -10 0 0 10 174 372.89 Tm -(\(TYPES \(PROPERTY)Tj -9 0 0 9 270 369.89 Tm -(1)Tj -10 0 0 10 275.4 372.89 Tm -( VALUE)Tj -9 0 0 9 311.4 369.89 Tm -(1)Tj -10 0 0 10 316.8 372.89 Tm -(\) \(PROPERTY)Tj -9 0 0 9 382.8 369.89 Tm -(2)Tj -10 0 0 10 388.2 372.89 Tm -( VALUE)Tj -9 0 0 9 424.2 369.89 Tm -(2)Tj -10 0 0 10 429.6 372.89 Tm -(\))Tj --25.56 -1.265 TD -(...\))Tj --4.8 -1.7 TD -(TYPES)Tj -/TT8 1 Tf -9 0 0 9 156.0049 343.24 Tm -0.3089 Tw -[( is a list of the printer types that this entry addresses. The )]TJ -/TT10 1 Tf -10 0 0 10 426.5343 343.24 Tm -0 Tw -(\(PROPERTY)Tj -9 0 0 9 480.55 340.24 Tm -(n)Tj -10 0 0 10 126 328.59 Tm -(VALUE)Tj -9 0 0 9 156 325.59 Tm -(n)Tj -10 0 0 10 161.4 328.59 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 167.401 328.59 Tm -( pairs define properties associated with each printer type.)Tj --4.6001 -2.4 TD -(The printer properties include the following:)Tj -/TT10 1 Tf -10 0 0 10 114 287.71 Tm -(CANPRINT)Tj -/TT8 1 Tf -9 0 0 9 174 287.71 Tm -(Value is a list of the file types that the printer can print directly.)Tj -/TT10 1 Tf -10 0 0 10 126 267.48 Tm -(STATUS)Tj -/TT8 1 Tf -9 0 0 9 174 267.48 Tm -0.0911 Tw -(Value is a function that knows how to find out the status of the printer,)Tj -0 -1.3333 TD -0 Tw -(used by )Tj -/TT10 1 Tf -10 0 0 10 207.5347 255.48 Tm -(PRINTERSTATUS)Tj -/TT8 1 Tf -9 0 0 9 285.5473 255.48 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 235.25 Tm -(PROPERTIES)Tj -/TT8 1 Tf -9 0 0 9 174 235.25 Tm -(Value is a function which returns a list of known printer properties.)Tj -/TT10 1 Tf -10 0 0 10 138 215.02 Tm -(SEND)Tj -/TT8 1 Tf -9 0 0 9 174 215.02 Tm -0.0656 Tw -(Value is a function which invokes the appropriate protocol to send a file)Tj -0 -1.3278 TD -0 Tw -(to the printer.)Tj -/TT10 1 Tf -10 0 0 10 96 183.79 Tm -(BITMAPSCALE)Tj -/TT8 1 Tf -9 0 0 9 174 183.79 Tm -0.2311 Tw -(Value is a function of arguments )Tj -/TT10 1 Tf -10 0 0 10 318.2764 183.79 Tm -0 Tw -(WIDTH)Tj -/TT8 1 Tf -9 0 0 9 348.2813 183.79 Tm -0.2311 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 372.1771 183.79 Tm -0 Tw -(HEIGHT)Tj -/TT8 1 Tf -9 0 0 9 408.183 183.79 Tm -0.2311 Tw -[( in bits which)]TJ --26.0203 -1.3278 TD -0 Tw -(returns a scale factor for scaling a bitmap.)Tj -/TT10 1 Tf -10 0 0 10 102 152.56 Tm -(BITMAPFILE)Tj -/TT8 1 Tf -9 0 0 9 174 152.56 Tm -0.0167 Tw -(Value is a form which, when evaluated, converts a bitmap to a file format)Tj -T* -0 Tw -(that the printer will accept.)Tj --2.6667 -2.0056 TD -0.0922 Tw -[(Note: )-559(The name 8044 is defined on )]TJ -/TT10 1 Tf -10 0 0 10 300.5957 122.56 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 372.6074 122.56 Tm -0.0922 Tw -[( as a synonym for the)]TJ -/TT10 1 Tf -10 0 0 10 180 110.56 Tm -0 Tw -(INTERPRESS)Tj -/TT8 1 Tf -9 0 0 9 240.0097 110.56 Tm -0.2478 Tw -[( printer type. The names )]TJ -/TT10 1 Tf -10 0 0 10 355.2989 110.56 Tm -0 Tw -(SPRUCE)Tj -/TT8 1 Tf -9 0 0 9 391.3048 110.56 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 398.0348 110.56 Tm -(PENGUIN)Tj -/TT8 1 Tf -9 0 0 9 440.0416 110.56 Tm -0.2478 Tw -(, and)Tj -/TT10 1 Tf -10 0 0 10 180 98.56 Tm -0 Tw -(DOVER)Tj -/TT8 1 Tf -9 0 0 9 210.0049 98.56 Tm -0.0433 Tw -[( are defined on )]TJ -/TT10 1 Tf -10 0 0 10 273.5541 98.56 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 345.5658 98.56 Tm -0.0433 Tw -[( as synonyms for the )]TJ -/TT10 1 Tf -10 0 0 10 432.0051 98.56 Tm -0 Tw -(PRESS)Tj -/TT8 1 Tf -9 0 0 9 180 86.56 Tm -0.2256 Tw -[(printer type. The printer types )]TJ -/TT10 1 Tf -10 0 0 10 317.3802 86.56 Tm -0 Tw -(FULLPRESS)Tj -/TT8 1 Tf -9 0 0 9 371.389 86.56 Tm -0.2256 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 395.1848 86.56 Tm -0 Tw -(RAVEN)Tj -/TT8 1 Tf -9 0 0 9 425.1897 86.56 Tm -0.2256 Tw -[( are also)]TJ --27.2433 -1.3333 TD -0.1422 Tw -(defined the same as )Tj -/TT10 1 Tf -10 0 0 10 265.9618 74.56 Tm -0 Tw -(PRESS)Tj -/TT8 1 Tf -9 0 0 9 295.9667 74.56 Tm -0.1422 Tw -(, except that these printer types indicate)Tj --12.8852 -1.3278 TD -0.1811 Tw -(that the printer is a "Full Press" printer that is able to scale bitmap)Tj -0 -1.2222 TD -0 Tw -(images, in addition to the normal Press printer facilities.)Tj -ET -endstream -endobj -25 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT4 6 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R -/TT14 11 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -27 0 obj -<< -/Length 1335 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(28-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 150 569.54 Tm -(PRINTFILETYPES)Tj -/TT8 1 Tf -8.4 0 TD -[( )-29367.8([Variable])]TJ --5.7333 -1.85 TD -0.0067 Tw -(The variable )Tj -/TT10 1 Tf -10 0 0 10 225.8524 552.89 Tm -0 Tw -(PRINTFILETYPES)Tj -/TT8 1 Tf -9 0 0 9 309.8661 552.89 Tm -0.0067 Tw -[( contains information about various file formats, such as)]TJ --15.0962 -1.3333 TD -0.0267 Tw -[(Tedit files and Interpress files. The format is similar to )]TJ -/TT10 1 Tf -10 0 0 10 396.3182 540.89 Tm -0 Tw -(PRINTERTYPES)Tj -/TT8 1 Tf -9 0 0 9 468.3299 540.89 Tm -0.0267 Tw -[(. The properties)]TJ --32.7033 -1.3278 TD -0 Tw -(that can be specified include:)Tj -/TT10 1 Tf -10 0 0 10 186 509.6 Tm -(TEST)Tj -/TT8 1 Tf -9 0 0 9 222 509.6 Tm -0.0867 Tw -[(Value is a function which tests a file if it is of the given type. Note that)]TJ -T* -0 Tw -(this function is passed an open stream.)Tj -/TT10 1 Tf -10 0 0 10 150 478.37 Tm -(CONVERSION)Tj -/TT8 1 Tf -9 0 0 9 222 478.37 Tm -0.0256 Tw -(Value is a property list of other file types and funcitons that convert from)Tj -T* -0 Tw -(the specified type to the file format.)Tj -/TT10 1 Tf -10 0 0 10 156 447.08 Tm -(EXTENSION)Tj -/TT8 1 Tf -9 0 0 9 222 447.08 Tm -(Value is a list of possible file extensions for files of this type.)Tj -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 5 0 R -/TT6 7 0 R -/TT8 8 0 R -/TT10 9 0 R -/TT12 10 0 R ->> -/ExtGState << -/GS1 12 0 R ->> ->> -endobj -12 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -29 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -30 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -31 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -32 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -33 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -34 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -35 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -36 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 110 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 36 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 56 -/Widths [333 0 0 0 500 500 500 500 500 500 0 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 29 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0 -0 0 556 0 0 0 0 0 556 0 0 0 0 0 0 0 -0 722 0 722 722 667 611 0 722 278 0 0 611 0 0 778 -667 0 722 667 611 0 667 0 0 667 0 0 0 0 0 0 -0 556 611 556 611 556 0 0 0 278 0 0 278 0 0 611 -611 0 389 556 0 0 556 778 0 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 30 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 89 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 722 278 0 0 556 833 722 778 -667 0 722 667 611 722 0 0 0 667 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 31 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 371 0 0 0 0 0 333 333 0 0 250 333 250 0 -500 500 500 500 500 500 0 500 500 500 250 250 0 0 0 0 -0 778 611 709 774 611 556 0 832 337 0 0 611 946 831 786 -604 0 668 525 613 778 722 1000 667 0 0 333 0 333 0 0 -0 500 553 444 611 479 333 556 582 291 0 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 32 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 0 600 600 0 0 0 0 600 600 0 0 0 0 600 0 -600 600 600 600 600 0 0 0 0 0 600 0 0 600 0 600 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 -0 0 0 0 0 0 0 0 600 0 0 0 0 0 600 600 -0 0 600 0 0 0 0 0 0 0 0 600 0 600 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 33 0 R ->> -endobj -10 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 46 -/LastChar 89 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 600 0 600 600 600 600 600 600 600 0 0 600 0 -600 600 600 0 600 600 600 600 0 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 34 0 R ->> -endobj -11 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 600 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 0 0 600 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 35 0 R ->> -endobj -1 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -14 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 16 0 R -/Contents 15 0 R ->> -endobj -17 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 19 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 22 0 R -/Contents 21 0 R ->> -endobj -23 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 25 0 R -/Contents 24 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 13 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -37 0 obj -<< -/S /D ->> -endobj -38 0 obj -<< -/Nums [0 37 0 R ] ->> -endobj -13 0 obj -<< -/Type /Pages -/Kids [1 0 R 14 0 R 17 0 R 20 0 R 23 0 R 26 0 R] -/Count 6 -/MediaBox [0 0 612 792] ->> -endobj -39 0 obj -<< -/CreationDate (D:20210202102724-06'00') -/ModDate (D:20210202102724-06'00') -/Producer (Apple pstopdf) ->> -endobj -40 0 obj -<< -/Type /Catalog -/Pages 13 0 R -/PageLabels 38 0 R ->> -endobj -xref -0 41 -0000000000 65535 f -0000040313 00000 n -0000000016 00000 n -0000005661 00000 n -0000037099 00000 n -0000037591 00000 n -0000037794 00000 n -0000038214 00000 n -0000038532 00000 n -0000039069 00000 n -0000039560 00000 n -0000039853 00000 n -0000035358 00000 n -0000040882 00000 n -0000040394 00000 n -0000005838 00000 n -0000013255 00000 n -0000040478 00000 n -0000013409 00000 n -0000021559 00000 n -0000040562 00000 n -0000021726 00000 n -0000027947 00000 n -0000040646 00000 n -0000028114 00000 n -0000033658 00000 n -0000040730 00000 n -0000033826 00000 n -0000035214 00000 n -0000035499 00000 n -0000035696 00000 n -0000035902 00000 n -0000036097 00000 n -0000036297 00000 n -0000036488 00000 n -0000036690 00000 n -0000036891 00000 n -0000040814 00000 n -0000040842 00000 n -0000040999 00000 n -0000041122 00000 n -trailer -<< -/Size 41 -/Root 40 0 R -/Info 39 0 R -/ID [] ->> -startxref -41192 -%%EOF diff --git a/docs/medley-irm/29-TERMINAL.pdf b/docs/medley-irm/29-TERMINAL.pdf deleted file mode 100644 index 034ce791..00000000 --- a/docs/medley-irm/29-TERMINAL.pdf +++ /dev/null @@ -1,10209 +0,0 @@ -%PDF-1.3 -% -2 0 obj -<< -/Length 4600 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-1)Tj -/TT4 1 Tf -10 0 0 10 54 568.2 Tm -(29. TERMINALINPUT/OUTPUT)Tj -ET -0 G -0 J 0 j 2 w 10 M []0 d -1 i -54.01 559.2 m -534.01 559.2 l -S -BT -/TT6 1 Tf -10 0 0 10 533.9999 558.2 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 78 534.54 Tm -0.1211 Tw -(Most input/output operations in Interlisp can be simply modeled as reading or writing on a linear)Tj -0 -1.2222 TD -0.0044 Tw -(stream of bytes. However, the situation is much more complex when it comes to controlling the users)Tj -T* -0.1144 Tw -[("terminal," which includes the keyboard, the mouse, and the display screen. For example, Interlisp)]TJ -T* -0.0567 Tw -(coordinates the operation of these separate I/O devices so that the cursor on the screen moves as the)Tj -T* -0.16 Tw -(mouse moves, and any characters typed by the user appear in the window currently containing a)Tj -T* -0 Tw -(flashing cursor. Most of the time, this system works correctly without need for user modification.)Tj -0 -2.8889 TD -0.1133 Tw -(The purpose of this chapter is to describe how to access the low-level controls for the terminal I/O)Tj -0 -1.2222 TD -0.3744 Tw -[(devices. It documents the use of interrupt characters, the keyboard characters that generate)]TJ -T* -0.0733 Tw -[(interrupts. Then, it describes terminal tables, used to determine the meaning of the different editing)]TJ -T* -0.0533 Tw -[(characters \(character delete, line delete, etc.\). Then, the "dribble file" facility that allows terminal I/O)]TJ -T* -0.2322 Tw -[(to be saved onto a file is presented \(see the Dribble Files section below\). Finally, the low-level)]TJ -T* -0 Tw -(functions that control the mouse and cursor, the keyboard, and the screen are documented.)Tj -/TT4 1 Tf -10 0 0 10 54 356.2 Tm -(Interrupt Characters)Tj -ET -1 w -54.01 353.49 m -534.01 353.49 l -S -BT -/TT8 1 Tf -9 0 0 9 78 331.54 Tm -0.0522 Tw -[(Errors and breaks can be caused by errors within functions, or by explicitly breaking a function. The)]TJ -T* -0.18 Tw -(user can also indicate his desire to go into a break while a program is running by typing certain)Tj -T* -0.11 Tw -[(control characters known as "interrupt characters". The following interrupt characters are currently)]TJ -T* -0 Tw -(enabled in Interlisp-D:)Tj -0 -2.8889 TD -0.2133 Tw -[(Note: In Interlisp-D with multiple processes, it is not sufficient to say that "the computation" is)]TJ -0 -1.2222 TD -0.1056 Tw -[(broken, aborted, etc; it is necessary to specify which process is being acted upon. Usually, the user)]TJ -T* -0.1411 Tw -(wants interrupts to occur in the )Tj -/TT10 1 Tf -14.999 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.1411 Tw -[( process, which is the one currently receiving keyboard input.)]TJ --16.7993 -1.2889 TD -0.0355 Tw -(However, sometimes the user wants to interrupt the mouse process, if it is currently busy executing a)Tj -0 -1.2222 TD -0.1955 Tw -[(menu command or waiting for the user to specify a region on the screen. Most of the interrupt)]TJ -T* -0.0744 Tw -(characters below take place in the mouse process if it is busy, otherwise the )Tj -/TT10 1 Tf -34.5032 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.0744 Tw -[( process. Control-G)]TJ --36.3035 -1.2889 TD -0 Tw -(can be used to break arbitrary processes. For more information, see Chapter 23.)Tj -/TT12 1 Tf -3.9333 -2 TD -(Control-B)Tj -/TT8 1 Tf -6.7333 0 TD -0.1011 Tw -(Causes a break within the mouse process \(if busy\) or the )Tj -/TT10 1 Tf -26.2792 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.1011 Tw -[( process.)]TJ --28.0795 -1.2889 TD -0 Tw -(Use Control-G to break a particular process.)Tj -/TT12 1 Tf --6.7333 -2 TD -(Control-D)Tj -/TT8 1 Tf -6.7333 0 TD -0.0467 Tw -(Aborts the mouse process \(if busy\) or the )Tj -/TT10 1 Tf -18.784 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.0467 Tw -[( process, and unwinds its)]TJ --20.5843 -1.2889 TD -0 Tw -(stack to the top level. Calls )Tj -/TT10 1 Tf -12.3022 0 TD -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -( \(see Chapter 14\).)Tj -/TT12 1 Tf --22.0361 -2.0667 TD -(Control-E)Tj -/TT8 1 Tf -6.7333 0 TD -0.0389 Tw -(Aborts the mouse process \(if busy\) or the TTY process, and unwinds its)Tj -0 -1.2889 TD -0 Tw -(stack to the last )Tj -/TT10 1 Tf -7.0503 0 TD -(ERRORSET)Tj -/TT8 1 Tf -4.8008 0 TD -(. Calls )Tj -/TT10 1 Tf -3.2148 0 TD -(ERROR!)Tj -/TT8 1 Tf -3.6006 0 TD -( \(see Chapter 14\).)Tj -/TT12 1 Tf --25.3998 -2.0667 TD -(Control-G)Tj -/TT8 1 Tf -6.7333 0 TD -0.0256 Tw -[(Pops up a menu listing all of the currently-running processes. Selecting)]TJ -0 -1.2889 TD -0 Tw -(one of the processes will cause a break to take place in that process.)Tj -/TT12 1 Tf --6.7333 -2 TD -(Control-P)Tj -/TT8 1 Tf -6.7333 0 TD -(This interrupt is no longer supported in Medley.)Tj -ET -endstream -endobj -3 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -13 0 obj -<< -/Length 7851 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-2)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT12 1 Tf -9 0 0 9 161.4 569.54 Tm -(Control-T)Tj -/TT8 1 Tf -6.7333 0 TD -0.0911 Tw -(Flashes the )Tj -/TT10 1 Tf -5.3253 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.0911 Tw -[( process window and prints status information for the)]TJ -/TT10 1 Tf --7.1256 -1.2889 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.05 Tw -[( process. First it prints )]TJ -/TT10 1 Tf -10.591 0 TD -0 Tw -(")Tj -/TT12 1 Tf -0.6001 0 TD -0.1189 Tw -(IO wait)Tj -/TT10 1 Tf -4.3196 0 TD -0 Tw -(,")Tj -/TT8 1 Tf -1.2002 0 TD -( )Tj -/TT10 1 Tf -0.3 0 TD -(")Tj -/TT12 1 Tf -0.6001 0 TD -(Waiting)Tj -/TT10 1 Tf -4.2007 0 TD -(")Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -(, or )Tj -/TT10 1 Tf -1.7909 0 TD -0 Tw -(")Tj -/TT12 1 Tf -0.6001 0 TD -(Running)Tj -/TT10 1 Tf -4.2007 0 TD -(,")Tj -/TT8 1 Tf --30.8038 -1.2889 TD -0.3089 Tw -(depending on whether the )Tj -/TT10 1 Tf -13.2199 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.3089 Tw -[( process is currently in waiting for)]TJ --15.0202 -1.2889 TD -0.0089 Tw -[(characters to be typed, waiting for some other reason, or running. Next,)]TJ -0 -1.2222 TD -0.0344 Tw -(it prints the names of the top three frames on the stack, to show what is)Tj -T* -0.0833 Tw -[(running. Then, it prints a line describing the percentage of time \(since)]TJ -T* -0.1555 Tw -(the last control-T\) that has been spent running a program, swapping,)Tj -T* -0 Tw -(garbage collecting, doing local disk I/O, etc. For example:)Tj -/TT14 1 Tf -0 -2.0056 TD -(Running in )Tj -/TT12 1 Tf -5.4985 0 TD -(TTWAITFORINPUT)Tj -/TT14 1 Tf -8.4014 0 TD -( in )Tj -/TT12 1 Tf -1.4438 0 TD -(TTBIN)Tj -/TT14 1 Tf -3.0005 0 TD -( in )Tj -/TT12 1 Tf -1.4438 0 TD -(TTYIN1)Tj -/TT14 1 Tf --19.7881 -2.1056 TD -(95% Util, 0% Swap, 4% GC)Tj -/TT12 1 Tf --4.9333 -2 TD -(DELETE)Tj -/TT8 1 Tf -4.9333 0 TD -(Clears typeahead in all processes. )Tj -0 -2.0667 TD -0.1356 Tw -(The user can disable and/or redefine Interlisp interrupt characters, as)Tj -0 -1.2222 TD -0.1233 Tw -[(well as define new interrupt characters. Interlisp-D is initialized with)]TJ -T* -0.5922 Tw -(the following interrupt channels: )Tj -/TT10 1 Tf -18.0007 0 TD -0 Tw -(RESET)Tj -/TT8 1 Tf -3.0005 0 TD -0.5922 Tc -( \()Tj -/TT12 1 Tf -1.1752 0 TD -0 Tc -(Control-D)Tj -/TT8 1 Tf -5.4009 0 TD -(\), )Tj -/TT10 1 Tf -1.4252 0 TD -(ERROR)Tj -/TT8 1 Tf --29.0025 -1.2889 TD -(\()Tj -/TT12 1 Tf -0.333 0 TD -(Control-E)Tj -/TT8 1 Tf -5.4009 0 TD -(\), )Tj -/TT10 1 Tf -0.913 0 TD -(BREAK)Tj -/TT8 1 Tf -3.0005 0 TD -0.08 Tc -( \()Tj -/TT12 1 Tf -0.663 0 TD -0 Tc -(Control-B)Tj -/TT8 1 Tf -5.4009 0 TD -(\), )Tj -/TT10 1 Tf -0.913 0 TD -(HELP)Tj -/TT8 1 Tf -2.4004 0 TD -0.08 Tc -( \()Tj -/TT12 1 Tf -0.663 0 TD -0 Tc -(Control-G)Tj -/TT8 1 Tf -5.4009 0 TD -(\), )Tj -/TT10 1 Tf -0.913 0 TD -(PRINTLEVEL)Tj -/TT8 1 Tf --26.0016 -1.2889 TD -(\()Tj -/TT12 1 Tf -0.333 0 TD -(Control-P)Tj -/TT8 1 Tf -5.4009 0 TD -(\), )Tj -/TT10 1 Tf -1.0308 0 TD -(RUBOUT)Tj -/TT8 1 Tf -3.6006 0 TD -0.1978 Tc -( \()Tj -/TT12 1 Tf -0.7808 0 TD -0 Tc -(DELETE)Tj -/TT8 1 Tf -3.6006 0 TD -0.1978 Tw -(\), and )Tj -/TT10 1 Tf -3.1714 0 TD -0 Tw -(RAID)Tj -/TT8 1 Tf -2.4004 0 TD -0.1978 Tw -[(. Each of these channels)]TJ --20.3185 -1.2889 TD -0.3533 Tw -(independently can be disabled, or have a new interrupt character)Tj -0 -1.2222 TD -0.1733 Tw -(assigned to it via the function )Tj -/TT10 1 Tf -14.3462 0 TD -0 Tw -(INTERRUPTCHAR)Tj -/TT8 1 Tf -7.8013 0 TD -0.1733 Tw -[( described below. In)]TJ --22.1474 -1.2889 TD -0.01 Tw -(addition, the user can enable new interrupt channels, and associate with)Tj -0 -1.2222 TD -0.1111 Tw -(each channel an interrupt character and an expression to be evaluated)Tj -0 -1.3644 TD -0 Tw -(when that )Tj -/F1 1 Tf -10 0 0 10 264.4028 314.46 Tm -(character is typed.)Tj -/TT10 1 Tf --11.4403 -2.228 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 292.18 Tm -(INTERRUPTCHAR)Tj -/F2 1 Tf -10 0 0 10 226.2 292.18 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 229.07 292.18 Tm -(CHAR TYP/FORM HARDFLG )Tj -/TT10 1 Tf -10 0 0 10 353.2902 292.18 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 359.2912 292.18 Tm -[( )-14315.4([Function])]TJ --20.5879 -1.8833 TD -(Defines )Tj -/TT16 1 Tf -3.7152 0 TD -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1033 Tw -[( as an interrupt character. If )]TJ -/TT16 1 Tf -13.4626 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1033 Tw -[( was previously defined as an interrupt)]TJ --21.9785 -1.2889 TD -0 Tw -(character, that interpretation is disabled.)Tj -/TT16 1 Tf -0 -2 TD -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( is either a character or a character code \(see Chapter 2\). Note that full sixteen-bit NS)]TJ --2.4004 -1.2889 TD -0.1478 Tw -(characters can be specified as interrupt characters \(see Chapter 2\). )Tj -/TT16 1 Tf -31.1763 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.1478 Tw -[( can also be a)]TJ --33.5767 -1.2944 TD -0 Tw -(value returned from )Tj -/TT10 1 Tf -10 0 0 10 256.9336 222.38 Tm -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 334.9463 222.38 Tm -(, as described below.)Tj --17.8829 -2.1111 TD -(If )Tj -/TT16 1 Tf -0.9199 0 TD -(TYP/FORM )Tj -/TT10 1 Tf -10 0 0 10 230.8872 203.38 Tm -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 260.8921 203.38 Tm -(, )Tj -/TT16 1 Tf -0.5 0 TD -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -( is disabled.)Tj --12.5551 -2.1111 TD -(If )Tj -/TT16 1 Tf -0.9199 0 TD -(TYP/FORM)Tj -/TT10 1 Tf -10 0 0 10 225.4863 184.38 Tm -( = T)Tj -/TT8 1 Tf -9 0 0 9 249.4902 184.38 Tm -(, the current state of )Tj -/TT16 1 Tf -9.0454 0 TD -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -( is returned without changing or disabling it.)Tj --19.8336 -2.1111 TD -(If )Tj -/TT16 1 Tf -1.0121 0 TD -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0922 Tw -[( is one of the literal atoms )]TJ -/TT10 1 Tf -10 0 0 10 336.4349 165.38 Tm -0 Tw -(RESET)Tj -/TT8 1 Tf -9 0 0 9 366.4398 165.38 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 371.7698 165.38 Tm -(ERROR)Tj -/TT8 1 Tf -9 0 0 9 401.7747 165.38 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 407.1047 165.38 Tm -(BREAK)Tj -/TT8 1 Tf -9 0 0 9 437.1096 165.38 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 442.4395 165.38 Tm -(HELP)Tj -/TT8 1 Tf -9 0 0 9 466.4435 165.38 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 471.7734 165.38 Tm -(PRINTLEVEL)Tj -/TT8 1 Tf -9 0 0 9 531.7832 165.38 Tm -(,)Tj -/TT10 1 Tf -10 0 0 10 174 153.38 Tm -(RUBOUT)Tj -/TT8 1 Tf -9 0 0 9 210.0058 153.38 Tm -0.3033 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 230.6841 153.38 Tm -0 Tw -(RAID)Tj -/TT8 1 Tf -9 0 0 9 254.688 153.38 Tm -0.3033 Tw -(, then )Tj -/TT10 1 Tf -10 0 0 10 284.6212 153.38 Tm -0 Tw -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 362.6339 153.38 Tm -0.3033 Tw -[( assigns )]TJ -/TT16 1 Tf -4.3074 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.3033 Tw -[( to the indicated Interlisp)]TJ --27.6671 -1.3278 TD -0 Tw -(interrupt channel, \(reenabling the channel if previously disabled\).)Tj -0 -2 TD -0.3589 Tw -(If the argument )Tj -/TT16 1 Tf -8.208 0 TD -0 Tw -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.3589 Tw -[( is a symbol designating a predefined system interrupt)]TJ --13.0088 -1.2944 TD -0 Tw -(\()Tj -/TT10 1 Tf -10 0 0 10 176.9971 111.78 Tm -0.209 Tw -(RESET, ERROR, BREAK)Tj -/TT8 1 Tf -9 0 0 9 295.1956 111.78 Tm -0.0867 Tw -(, etc\), and )Tj -/TT10 1 Tf -10 0 0 10 338.2597 111.78 Tm -0 Tw -(HARDFLG)Tj -/TT8 1 Tf -9 0 0 9 380.2665 111.78 Tm -0.0867 Tw -[( is omitted or )]TJ -/TT10 1 Tf -10 0 0 10 438.4456 111.78 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 456.4486 111.78 Tm -0.0867 Tw -(, then the hardness)Tj --31.3832 -1.3333 TD -0.1667 Tw -(defaults to the standard hardness of the system interrupt \(e.g., )Tj -/TT10 1 Tf -10 0 0 10 438.7148 99.78 Tm -0 Tw -(MOUSE)Tj -/TT8 1 Tf -9 0 0 9 468.7197 99.78 Tm -0.1667 Tw -[( for the )]TJ -/TT10 1 Tf -10 0 0 10 503.9199 99.78 Tm -0 Tw -(ERROR)Tj -/TT8 1 Tf -9 0 0 9 174 87.83 Tm -(interrupt\).)Tj -0 -2 TD -(If )Tj -/TT16 1 Tf -0.9288 0 TD -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0089 Tw -[( is any other literal atom, )]TJ -/TT16 1 Tf -11.3126 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0089 Tw -[( is enabled as an interrupt character that when)]TJ --19.4426 -1.2944 TD -0 Tw -(typed causes the atom )Tj -/TT16 1 Tf -10.0889 0 TD -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -( to be immediately set to )Tj -/TT10 1 Tf -10 0 0 10 407.8638 58.18 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 413.8647 58.18 Tm -(.)Tj -ET -endstream -endobj -14 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 16 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 17 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -20 0 obj -<< -/Length 7286 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-3)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -(If )Tj -/TT16 1 Tf -0.9755 0 TD -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0556 Tw -[( is a list, )]TJ -/TT16 1 Tf -4.0191 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0556 Tw -[( is enabled as a user interrupt character, and )]TJ -/TT16 1 Tf -20.291 0 TD -0 Tw -(TYP/FORM)Tj -/TT8 1 Tf -4.8008 0 TD -0.0556 Tw -[( is the)]TJ --37.2875 -1.2944 TD -0.0011 Tw -(form that is evaluated when )Tj -/TT16 1 Tf -12.6926 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.001 Tw -( is typed. The interrupt will be hard if )Tj -/TT16 1 Tf -17.1727 0 TD -0 Tc -0 Tw -(HARDFLG )Tj -/TT10 1 Tf -10 0 0 10 459.6282 557.89 Tm -0.001 Tc -0.002 Tw -(= T)Tj -/TT8 1 Tf -9 0 0 9 483.6921 557.89 Tm -0 Tc -0 Tw -(,)Tj --39.7436 -1.3278 TD -(otherwise soft.)Tj -/TT10 1 Tf -10 0 0 10 126 527.89 Tm -0.007 Tw -(\(INTERRUPTCHAR T\))Tj -/TT8 1 Tf -9 0 0 9 228.0866 527.89 Tm -0.0022 Tw -( restores all Interlisp channels to their original state, and disables)Tj --11.343 -1.3278 TD -0 Tw -(all user interrupts.)Tj -/TT16 1 Tf -0 -2.0056 TD -(HARDFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.1011 Tw -[( determines what process the interrupt should run in. If )]TJ -/TT16 1 Tf -26.1811 0 TD -0 Tw -(HARDFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.1011 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 449.9955 497.89 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 467.9984 497.89 Tm -0.1011 Tw -(, the)Tj --37.9998 -1.3333 TD -0.0878 Tw -(interrupt will run in the )Tj -/TT10 1 Tf -10 0 0 10 227.1131 485.89 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 245.116 485.89 Tm -0.0878 Tw -[( process, which is the process currently receiving keyboard)]TJ --13.2351 -1.3333 TD -0.2033 Tw -[(input. If )]TJ -/TT16 1 Tf -4.6832 0 TD -0 Tw -(HARDFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.2033 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 220.5489 473.89 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 226.5499 473.89 Tm -0.2033 Tw -(, the interrupt will occur in whichever process happens to be)Tj --11.1722 -1.3333 TD -0.1356 Tw -[(running. If )]TJ -/TT16 1 Tf -5.6679 0 TD -0 Tw -(HARDFLG)Tj -/TT8 1 Tf -4.2007 0 TD -0.1356 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 228.1908 461.89 Tm -0 Tw -(MOUSE)Tj -/TT8 1 Tf -9 0 0 9 258.1957 461.89 Tm -0.1356 Tw -(, the interrupt will happen in the mouse process, if the)Tj --14.6884 -1.3333 TD -0 Tw -(mouse is busy, otherwise in the )Tj -/TT10 1 Tf -10 0 0 10 253.3667 449.89 Tm -(TTY)Tj -/TT8 1 Tf -9 0 0 9 271.3696 449.89 Tm -( process.)Tj -/TT10 1 Tf -10 0 0 10 126 430.89 Tm -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 204.0127 430.89 Tm -0.4178 Tw -[( returns a value which, when given as the )]TJ -/TT16 1 Tf -22.3962 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.4178 Tw -[( argument to)]TJ -/TT10 1 Tf -10 0 0 10 126 418.89 Tm -0 Tw -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 204.0127 418.89 Tm -0.0256 Tw -(, will restore things as they were before the call to )Tj -/TT10 1 Tf -10 0 0 10 405.7731 418.89 Tm -0 Tw -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 483.7858 418.89 Tm -(.)Tj --39.754 -1.3333 TD -(Therefore, )Tj -/TT10 1 Tf -10 0 0 10 174.037 406.89 Tm -(INTERRUPTCHAR)Tj -/TT8 1 Tf -9 0 0 9 252.0497 406.89 Tm -0.5367 Tw -[( can be used in conjunction with )]TJ -/TT10 1 Tf -10 0 0 10 416.4564 406.89 Tm -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -9 0 0 9 470.4651 406.89 Tm -0.5367 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 126 394.89 Tm -0 Tw -(RESETLST)Tj -/TT8 1 Tf -9 0 0 9 174.0078 394.89 Tm -( \(see Chapter 14\).)Tj -/TT10 1 Tf -10 0 0 10 126 374.66 Tm -(INTERRUPTCHAR)Tj -/F1 1 Tf -7.8013 0 TD -( is undoable.)Tj -/TT10 1 Tf --10.2013 -2.2 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 352.66 Tm -(RESET.INTERRUPTS)Tj -/TT16 1 Tf -9.5999 0 TD -( PERMITTEDINTERRUPTS SAVECURRENT?)Tj -/TT10 1 Tf -10 0 0 10 372.629 352.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 378.63 352.66 Tm -[( )-6833.3([Function])]TJ -/TT16 1 Tf --28.07 -1.8833 TD -(PERMITTEDINTERRUPTS)Tj -/TT8 1 Tf -11.4019 0 TD -0.0778 Tw -[( is a list of interrupt character settings to be performed, each of)]TJ --11.4019 -1.2944 TD -0.0322 Tw -(the form )Tj -/TT10 1 Tf -10 0 0 10 162.9755 324.06 Tm -0.077 Tw -(\(CHAR TYP/FORM HARDFLG\))Tj -/TT8 1 Tf -9 0 0 9 302.5379 324.06 Tm -0.0322 Tw -[(. The effect of )]TJ -/TT10 1 Tf -10 0 0 10 362.0089 324.06 Tm -0 Tw -(RESET.INTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 458.0246 324.06 Tm -0.0322 Tw -[( is as if)]TJ -/TT10 1 Tf -10 0 0 10 126 312.06 Tm -0.092 Tw -(\(INTERRUPTCHAR CHAR TYP/FORM HARDFLG\))Tj -/TT8 1 Tf -9 0 0 9 350.7961 312.06 Tm -0.0378 Tw -[( were performed for each item on)]TJ -/TT10 1 Tf -10 0 0 10 126 300.06 Tm -0 Tw -(PERMITTEDINTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 240.0185 300.06 Tm -0.3744 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 268.7444 300.06 Tm -0.898 Tw -(\(INTERRUPTCHAR OTHERCHAR NIL\))Tj -/TT8 1 Tf -9 0 0 9 460.7327 300.06 Tm -0.3744 Tw -[( were)]TJ --37.1925 -1.3278 TD -0 Tw -(performed on every other existing interrupt character.)Tj -0 -2.0056 TD -(If )Tj -/TT16 1 Tf -1.0433 0 TD -(SAVECURRENT?)Tj -/TT8 1 Tf -7.2012 0 TD -0.1233 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 231.7401 270.06 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 249.7431 270.06 Tm -0.1233 Tw -(, then )Tj -/TT10 1 Tf -10 0 0 10 276.4362 270.06 Tm -0 Tw -(RESET.INTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 372.4518 270.06 Tm -0.1233 Tw -[( returns the current state of)]TJ --27.3835 -1.3333 TD -0.2167 Tw -(the interrupts in a form that could be passed to )Tj -/TT10 1 Tf -10 0 0 10 334.6011 258.06 Tm -0 Tw -(RESET.INTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 430.6167 258.06 Tm -0.2167 Tw -(, otherwise it)Tj --33.8463 -1.3333 TD -0 Tw -(returns )Tj -/TT10 1 Tf -10 0 0 10 160.4769 246.06 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 178.4798 246.06 Tm -0.3767 Tw -[(. This can be used with a )]TJ -/TT10 1 Tf -10 0 0 10 307.9089 246.06 Tm -0 Tw -(RESET.INTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 403.9245 246.06 Tm -0.3767 Tw -[( that appears in a)]TJ -/TT10 1 Tf -10 0 0 10 126 234.06 Tm -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -9 0 0 9 180.0088 234.06 Tm -(, so that the list is built at "entry", but not upon "exit".)Tj -/TT10 1 Tf -10 0 0 10 102 212.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 212.06 Tm -(LISPINTERRUPTS)Tj -/TT10 1 Tf -10 0 0 10 183.6 212.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 189.601 212.06 Tm -[( )-27836.6([Function])]TJ --7.0668 -1.8833 TD -0.3411 Tw -(Returns the initial default interrupt character settings for Interlisp-D, as a list that)Tj -/TT10 1 Tf -10 0 0 10 126 184.06 Tm -0 Tw -(RESET.INTERRUPTS)Tj -/TT8 1 Tf -9 0 0 9 222.0156 184.06 Tm -( would accept.)Tj -/TT10 1 Tf -10 0 0 10 102 160.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 160.83 Tm -(INTERRUPTABLE)Tj -/F1 1 Tf -10 0 0 10 178.2 160.83 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 180.98 160.83 Tm -(FLAG)Tj -/TT10 1 Tf -10 0 0 10 202.5835 160.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 208.5845 160.83 Tm -[( )-25727.3([Function])]TJ --9.1761 -1.8889 TD -(if )Tj -/TT16 1 Tf -1.0407 0 TD -(FLAG)Tj -/TT10 1 Tf -10 0 0 10 156.9697 143.83 Tm -0.4 Tw -[( = NIL)]TJ -/TT8 1 Tf -9 0 0 9 200.9756 143.83 Tm -0.1667 Tw -[(, turns interrupts off. If )]TJ -/TT16 1 Tf -11.6343 0 TD -0 Tw -(FLAG )Tj -/TT10 1 Tf -10 0 0 10 336.2885 143.83 Tm -0.4 Tw -(= T)Tj -/TT8 1 Tf -9 0 0 9 358.2914 143.83 Tm -0.1667 Tw -[(, turns interrupts on. Value is)]TJ --25.8102 -1.3333 TD -0 Tw -(previous setting. )Tj -/TT10 1 Tf -10 0 0 10 196.9936 131.83 Tm -(INTERRUPTABLE)Tj -/TT8 1 Tf -9 0 0 9 275.0063 131.83 Tm -( compiles open.)Tj --16.5563 -2.1056 TD -0.1478 Tw -(Any interrupt character typed while interrupts are off is treated the same as any other)Tj -0 -1.2222 TD -0.06 Tw -(character, i.e., placed in the input buffer, and will not cause an interrupt when interrupts)Tj -T* -0 Tw -(are turned back on.)Tj -ET -endstream -endobj -21 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -23 0 obj -<< -/Length 7208 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-4)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT4 1 Tf -0.6 -4.38 TD -(Terminal Tables)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 565.49 m -582.01 565.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 543.54 Tm -0.2022 Tw -[(A read table \(see Chapter 25\) contains input/output information that is media-independent. For)]TJ -0 -1.2222 TD -0.0544 Tw -(example, the action of parentheses is the same regardless of the device from which the input is being)Tj -T* -0.3678 Tw -[(performed. A terminal table is an object that contains information that pertains to terminal)]TJ -T* -0.0289 Tw -(input/output operations only, such as the character to type to delete the last character or to delete the)Tj -T* -0.3122 Tw -[(last line. In addition, terminal tables contain such information as how line-buffering is to be)]TJ -T* -0.2978 Tw -(performed, how control characters are to be echoed/printed, whether lowercase input is to be)Tj -T* -0 Tw -(converted to upper case, etc.)Tj -0 -2.8889 TD -0.2278 Tw -(Using the functions below, the user may change, reset, or copy terminal tables, or create a new)Tj -0 -1.2222 TD -0.0578 Tw -(terminal table and install it as the primary terminal table via )Tj -/TT10 1 Tf -27.4817 0 TD -0 Tw -(SETTERMTABLE)Tj -/TT8 1 Tf -7.2012 0 TD -0.0578 Tw -[(. However, unlike read)]TJ --34.6829 -1.2889 TD -0 Tw -(tables, terminal tables cannot be passed as arguments to input/output functions.)Tj -/TT10 1 Tf -10 0 0 10 150 406.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 406.66 Tm -(GETTERMTABLE)Tj -/F2 1 Tf -10 0 0 10 220.8 406.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 223.67 406.66 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 245.2735 406.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.2745 406.66 Tm -[( )-26317.3([Function])]TJ --8.5861 -1.8833 TD -(If )Tj -/TT16 1 Tf -1.0144 0 TD -(TTBL)Tj -/TT10 1 Tf -2.4004 0 TD -0.2267 Tw -[( = NIL)]TJ -/TT8 1 Tf -4.0539 0 TD -0.0944 Tw -[(, returns the primary \(i.e., current\) terminal table. If )]TJ -/TT16 1 Tf -24.1334 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0944 Tw -[( is a terminal)]TJ --34.0025 -1.4311 TD -0 Tw -(table, return )Tj -/TT16 1 Tf -5.6797 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(. Otherwise, generates an )Tj -/TT14 1 Tf -11.6484 0 TD -(ILLEGAL TERMINAL TABLE)Tj -/F1 1 Tf -10 0 0 10 476.5459 376.83 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 479.3259 376.83 Tm -(error)Tj -/F1 1 Tf -10 0 0 10 499.2155 376.83 Tm -(.)Tj -/TT10 1 Tf --34.9216 -2.288 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 353.95 Tm -(COPYTERMTABLE)Tj -/F2 1 Tf -10 0 0 10 226.2 353.95 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 229.07 353.95 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 250.6735 353.95 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 256.6745 353.95 Tm -[( )-25717.3([Function])]TJ --9.1861 -1.8833 TD -0.1967 Tw -(Returns a copy of )Tj -/TT16 1 Tf -8.7896 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1967 Tw -(. )Tj -/TT16 1 Tf -1.1433 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1967 Tw -[( can be a real terminal table, )]TJ -/TT10 1 Tf -13.9963 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1967 Tw -[( \(copies the primary)]TJ --30.5303 -1.2889 TD -0.0689 Tw -(terminal table\), or )Tj -/TT10 1 Tf -8.3771 0 TD -0 Tw -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -0.0689 Tw -[( \(returns a copy of the original system terminal table\). Note that)]TJ -/TT10 1 Tf --10.7775 -1.2889 TD -0 Tw -(COPYTERMTABLE)Tj -/TT8 1 Tf -7.8013 0 TD -( is the only function that creates a terminal table.)Tj -/TT10 1 Tf -10 0 0 10 150 290.92 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 290.92 Tm -(SETTERMTABLE)Tj -/F2 1 Tf -10 0 0 10 220.8 290.92 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 223.67 290.92 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 245.2735 290.92 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.2745 290.92 Tm -[( )-26317.3([Function])]TJ --8.5861 -1.8833 TD -0.0533 Tw -(Sets the primary terminal table to be )Tj -/TT16 1 Tf -16.6863 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0533 Tw -[(. Returns the previous primary terminal table.)]TJ --19.0867 -1.4311 TD -0 Tw -(Generates an)Tj -/F1 1 Tf -10 0 0 10 225.8335 261.09 Tm -( )Tj -/TT14 1 Tf -9 0 0 9 228.6135 261.09 Tm -(ILLEGAL TERMINAL TABLE)Tj -/F1 1 Tf -10 0 0 10 353.6027 261.09 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 356.3828 261.09 Tm -(error if )Tj -/TT16 1 Tf -3.334 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -( is not a real terminal table.)Tj -/TT10 1 Tf -10 0 0 10 150 238.21 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 238.21 Tm -(RESETTERMTABLE)Tj -/F2 1 Tf -10 0 0 10 231.6 238.21 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 234.47 238.21 Tm -(TTBL FROM)Tj -/TT10 1 Tf -10 0 0 10 283.0779 238.21 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 289.0789 238.21 Tm -[( )-22116.8([Function])]TJ --12.7865 -1.8833 TD -0.0133 Tw -(Copies \(smashes\) )Tj -/TT16 1 Tf -7.9578 0 TD -0 Tw -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( into )]TJ -/TT16 1 Tf -2.2718 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -(. )Tj -/TT16 1 Tf -0.7767 0 TD -0 Tw -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( and )]TJ -/TT16 1 Tf -2.2195 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0133 Tw -[( can be )]TJ -/TT10 1 Tf -3.3481 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0133 Tw -[( or a real terminal table. In)]TJ --27.9758 -1.2889 TD -0 Tw -(addition, )Tj -/TT16 1 Tf -4.2578 0 TD -(FROM)Tj -/TT8 1 Tf -2.4004 0 TD -( can be )Tj -/TT10 1 Tf -3.3081 0 TD -(ORIG)Tj -/TT8 1 Tf -2.4004 0 TD -(, meaning to use the systems original terminal table.)Tj -/TT10 1 Tf -10 0 0 10 150 186.78 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 186.78 Tm -(TERMTABLEP)Tj -/F3 1 Tf -10 0 0 10 210 186.78 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 212.78 186.78 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 234.3835 186.78 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.3845 186.78 Tm -[( )-27527.3([Function])]TJ --7.3761 -1.8833 TD -(Returns )Tj -/TT16 1 Tf -3.7271 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(, if )Tj -/TT16 1 Tf -1.374 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -( is a real terminal table, )Tj -/TT10 1 Tf -10.5264 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -( otherwise.)Tj -/TT4 1 Tf -10 0 0 10 126 141.89 Tm -(Terminal Syntax Classes)Tj -/TT8 1 Tf -9 0 0 9 126 118.23 Tm -0.0789 Tw -(A terminal table associates with each character a single "terminal syntax class", one of )Tj -/TT10 1 Tf -39.0742 0 TD -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -6.001 0 TD -(,)Tj -/TT10 1 Tf --45.0752 -1.2889 TD -(LINEDELETE)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.6667 0 TD -(WORDDELETE)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.6667 0 TD -(RETYPE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.6667 0 TD -(CTRLV)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -0.6667 0 TD -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -0.1667 Tw -(, and )Tj -/TT10 1 Tf -2.7762 0 TD -0 Tw -(NONE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1667 Tw -[(. Unlike read table classes, only one)]TJ --28.2466 -1.2889 TD -0.0978 Tw -(character in a particular terminal table can belong to each of the classes \(except for the default class)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(NONE)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -[(\). When a new character is assigned one of these syntax classes by )]TJ -/TT10 1 Tf -29.8225 0 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.02 Tw -[( \(see Chapter 25\),)]TJ --37.6238 -1.2889 TD -0.4033 Tw -(the previous character is disabled \(i.e., reassigned the syntax class )Tj -/TT10 1 Tf -33.3317 0 TD -0 Tw -(NONE)Tj -/TT8 1 Tf -2.4004 0 TD -0.4033 Tw -(\), and the value of)Tj -/TT10 1 Tf --35.7321 -1.2889 TD -0 Tw -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -( is the code for the previous character of that class, if any, otherwise )Tj -/TT10 1 Tf -30.1255 0 TD -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -ET -endstream -endobj -24 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 16 0 R -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 17 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -27 0 obj -<< -/Length 5837 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-5)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -(The terminal syntax classes are interpreted as follows:)Tj -/TT10 1 Tf -9.3333 -2.1489 TD -(CHARDELETE)Tj -/TT8 1 Tf -7.3333 0 TD -0.05 Tw -[(\(Initially BackSpace and Control-A in Interlisp-D\) Typing)]TJ -0 -1.2889 TD -0.59 Tw -(this character deletes the previous character typed.)Tj -0 -1.2222 TD -0.7689 Tw -(Repeated use of this character deletes successive)Tj -T* -0 Tw -(characters back to the beginning of the line.)Tj -/TT10 1 Tf -10 0 0 10 156 497.26 Tm -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 228 497.26 Tm -0.1444 Tw -[(\(Initially Control-Q in Interlisp-D\) Typing this character)]TJ -0 -1.3278 TD -0 Tw -(deletes the whole line; it cannot be used repeatedly.)Tj -/TT10 1 Tf -10 0 0 10 156 465.97 Tm -(WORDDELETE)Tj -/TT8 1 Tf -9 0 0 9 228 465.97 Tm -0.1133 Tw -[(\(Initially Control-W in Interlisp-D\) Typing this character)]TJ -T* -0.5711 Tw -(deletes the previous "word", i.e., sequence of non-)Tj -0 -1.2222 TD -0 Tw -(separator characters.)Tj -/TT10 1 Tf -10 0 0 10 180 423.68 Tm -(RETYPE)Tj -/TT8 1 Tf -9 0 0 9 228 423.68 Tm -0.3089 Tw -[(\(Initially Control-R\) Causes the line to be retyped as)]TJ -0 -1.3278 TD -0.1711 Tw -(Interlisp sees it \(useful when repeated deletions make it)Tj -0 -1.2222 TD -0 Tw -(difficult to see what remains\).)Tj -/TT10 1 Tf -10 0 0 10 186 381.39 Tm -(CTRLV)Tj --0.6 -1.123 TD -(CNTRLV)Tj -/TT8 1 Tf -9 0 0 9 228 370.16 Tm -0.0856 Tw -[(\(Initially Control-V\) When followed by A, B, ... Z, inputs)]TJ -0 -1.3278 TD -0.18 Tw -(the corresponding control character control-A, control-B,)Tj -0 -1.2222 TD -0.1144 Tw -[(... control-Z. This allows interrupt characters to be input)]TJ -T* -0 Tw -(without causing an interrupt.)Tj -/TT10 1 Tf -10 0 0 10 198 316.87 Tm -(EOL)Tj -/TT8 1 Tf -9 0 0 9 228 316.87 Tm -0.0289 Tw -(On input from a terminal, the )Tj -/TT10 1 Tf -10 0 0 10 349.3725 316.87 Tm -0 Tw -(EOL)Tj -/TT8 1 Tf -9 0 0 9 367.3754 316.87 Tm -0.0289 Tw -[( character signals to the)]TJ --15.4862 -1.3278 TD -0.0633 Tw -(line buffering routine to pass the input back to the calling)Tj -0 -1.2222 TD -0.0656 Tw -[(function. It also is used to terminate inputs to )]TJ -/TT10 1 Tf -21.2005 0 TD -0 Tw -(READLINE)Tj -/TT8 1 Tf --21.2005 -1.2889 TD -0.4867 Tw -[(\(see Chapter 13\). In general, whenever the phrase)]TJ -0 -1.2222 TD -0.3578 Tw -(carriage-return linefeed is used, what is meant is the)Tj -T* -0 Tw -(character with terminal syntax class )Tj -/TT10 1 Tf -16.082 0 TD -(EOL)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 192 240.38 Tm -(NONE)Tj -/TT8 1 Tf -9 0 0 9 228 240.38 Tm -(The terminal syntax class of all other characters.)Tj -/TT10 1 Tf --16.6667 -2.9944 TD -(GETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -(, )Tj -/TT10 1 Tf -0.5911 0 TD -(SETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0911 Tw -(, and )Tj -/TT10 1 Tf -2.6251 0 TD -0 Tw -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0911 Tw -[( all work on terminal tables as well as read tables \(see page)]TJ -/TT10 1 Tf --18.2186 -1.2889 TD -0 Tw -(X.XX)Tj -/TT8 1 Tf -2.4004 0 TD -0.1822 Tw -[(\). As with read tables, full sixteen-bit NS characters can be specified in terminal tables \(see)]TJ --2.4004 -1.2889 TD -0.0589 Tw -[(Chapter 2\). When given )]TJ -/TT10 1 Tf -11.3359 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0589 Tw -[( as a )]TJ -/TT10 1 Tf -2.3505 0 TD -0 Tw -(TABLE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0589 Tw -[( argument, )]TJ -/TT10 1 Tf -5.192 0 TD -0 Tw -(GETSYNTAX)Tj -/TT8 1 Tf -5.4009 0 TD -0.0589 Tw -[( and )]TJ -/TT10 1 Tf -2.3106 0 TD -0 Tw -(SYNTAXP)Tj -/TT8 1 Tf -4.2007 0 TD -0.0589 Tw -[( use the primary read)]TJ --35.5914 -1.2889 TD -0.1444 Tw -(table or primary terminal table depending on which table contains the indicated )Tj -/TT10 1 Tf -37.3603 0 TD -0 Tw -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1444 Tw -[( argument.)]TJ --40.3608 -1.2889 TD -0.1144 Tw -(For example,)Tj -/TT10 1 Tf -5.8605 0 TD -0.2744 Tw -[( \(SETSYNTAX CH BREAK\))]TJ -/TT8 1 Tf -14.0255 0 TD -0.1144 Tw -[( refers to the primary read table, and )]TJ -/TT10 1 Tf -17.378 0 TD -0.2744 Tw -(\(SETSYNTAX CH)Tj --37.264 -1.2889 TD -0 Tw -(CHARDELETE\))Tj -/TT8 1 Tf -7.2012 0 TD -0.1522 Tw -[( refers to the primary terminal table. In the absence of such information, all three)]TJ --7.2012 -1.2889 TD -0.0889 Tw -(functions default to the primary read table; e.g., )Tj -/TT10 1 Tf -22.0348 0 TD -0.2144 Tw -(\(SETSYNTAX { %[\))Tj -/TT8 1 Tf -11.2306 0 TD -0.0889 Tw -[( refers to the primary read)]TJ --33.2655 -1.2889 TD -0.1844 Tw -[(table. If given incompatible )]TJ -/TT10 1 Tf -13.5018 0 TD -0 Tw -(CLASS)Tj -/TT8 1 Tf -3.0005 0 TD -0.1844 Tw -[( and table arguments, all three functions generate errors. For)]TJ --16.5023 -1.4311 TD -0 Tw -(example, )Tj -/TT10 1 Tf -4.2857 0 TD -0.0889 Tw -(\(SETSYNTAX CH BREAK TTBL\))Tj -/TT8 1 Tf -15.8692 0 TD -0.0367 Tw -(, where )Tj -/TT10 1 Tf -3.5924 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0367 Tw -[( is a terminal table, generates an)]TJ -/F1 1 Tf -10 0 0 10 442.7811 119.35 Tm -0 Tw -( )Tj -/TT14 1 Tf -9 0 0 9 445.9711 119.35 Tm -(ILLEGAL)Tj --40.8857 -1.4311 TD -(READTABLE)Tj -/F1 1 Tf -10 0 0 10 134.4961 106.47 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 137.5261 106.47 Tm -0.0222 Tw -(error, and )Tj -/TT10 1 Tf -4.6973 0 TD -0.0544 Tw -(\(GETSYNTAX CHARDELETE RDTBL\))Tj -/TT8 1 Tf -17.5117 0 TD -0.0222 Tw -[( generates an)]TJ -/F1 1 Tf -10 0 0 10 390.0273 106.47 Tm -0 Tw -( )Tj -/TT14 1 Tf -9 0 0 9 393.0573 106.47 Tm -0.0222 Tw -(ILLEGAL TERMINAL)Tj --35.0064 -1.4311 TD -0 Tw -(TABLE)Tj -/F1 1 Tf -10 0 0 10 108.0014 93.59 Tm -( )Tj -/TT8 1 Tf -9 0 0 9 110.7814 93.59 Tm -(error)Tj -/F1 1 Tf -10 0 0 10 130.6711 93.59 Tm -(.)Tj -/TT4 1 Tf --5.2671 -2.734 TD -(Terminal Control Functions)Tj -/TT10 1 Tf -2.4 -1.994 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 46.31 Tm -(ECHOCHAR)Tj -/F2 1 Tf -10 0 0 10 151.2 46.31 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 154.07 46.31 Tm -(CHARCODE MODE TTBL)Tj -/TT10 1 Tf -10 0 0 10 251.2858 46.31 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 257.2868 46.31 Tm -[( )-20315.9([Function])]TJ -ET -endstream -endobj -28 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F2 16 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT14 17 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -30 0 obj -<< -/Length 7095 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-6)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT16 1 Tf -9 0 0 9 174 569.54 Tm -(ECHOCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.0567 Tw -[( sets the "echo mode" of the character )]TJ -/TT16 1 Tf -17.136 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0567 Tw -[( to )]TJ -/TT16 1 Tf -1.4854 0 TD -0 Tw -(MODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.0567 Tw -[( in the terminal table)]TJ -/TT16 1 Tf --30.6233 -1.2889 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0989 Tw -[(. The "echo mode" determines how the character is to be echoed or printed. Note)]TJ --2.4004 -1.2889 TD -0.0789 Tw -(that although the name of this function suggests echoing only, it affects all output of the)Tj -0 -1.2222 TD -0 Tw -(character, both echoing of input and printing of output.)Tj -/TT16 1 Tf -0 -2 TD -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0001 Tc -0.0021 Tw -( should be a character code. )Tj -/TT16 1 Tf -12.749 0 TD -0 Tc -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0001 Tc -0.0021 Tw -( can also be a list of characters, in which)Tj --22.3505 -1.2889 TD -0 Tc -0 Tw -(case )Tj -/TT10 1 Tf -2.2333 0 TD -(ECHOCHAR)Tj -/TT8 1 Tf -4.8008 0 TD -0.1367 Tw -[( is applied to each of them with arguments )]TJ -/TT16 1 Tf -20.376 0 TD -0 Tw -(MODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1367 Tw -[( and )]TJ -/TT16 1 Tf -2.4662 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.1367 Tw -[(. Note that)]TJ --34.6771 -1.2889 TD -0 Tw -(echo modes can be specified for full sixteen-bit NS characters \(see Chapter 2\).)Tj -/TT16 1 Tf -0 -2 TD -(MODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2522 Tw -[( should be one of the litatoms )]TJ -/TT10 1 Tf -15.0644 0 TD -0 Tw -(IGNORE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.7522 0 TD -(REAL)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.7522 0 TD -(SIMULATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2522 Tw -(, or )Tj -/TT10 1 Tf -2.1954 0 TD -0 Tw -(INDICATE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2522 Tw -[( which)]TJ --36.7671 -1.2889 TD -0 Tw -(specify how the character should be echoed or printed:)Tj -/TT10 1 Tf -10 0 0 10 216 445.2 Tm -(IGNORE)Tj -/TT16 1 Tf -9 0 0 9 264 445.2 Tm -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -( is never printed.)Tj -/TT10 1 Tf -10 0 0 10 228 424.91 Tm -(REAL)Tj -/TT16 1 Tf -9 0 0 9 264 424.91 Tm -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.0922 Tw -[( itself is printed. Some terminals may respond to)]TJ --4.8008 -1.3278 TD -0 Tw -(certain control and meta characters in interesting ways.)Tj -/TT10 1 Tf -10 0 0 10 204 393.62 Tm -(SIMULATE)Tj -/TT8 1 Tf -9 0 0 9 264 393.62 Tm -0.2178 Tw -(Output of )Tj -/TT16 1 Tf -5.0601 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2178 Tw -[( is simulated. For example, control-I)]TJ --9.8609 -1.3278 TD -0.0422 Tw -[(\(tab\) may be simulated by printing spaces. The simulation is)]TJ -0 -1.2222 TD -0 Tw -(machine-specific and beyond the control of the user.)Tj -/TT10 1 Tf -10 0 0 10 204 352.62 Tm -(INDICATE)Tj -/TT8 1 Tf -9 0 0 9 264 352.62 Tm -0.2511 Tw -(For control or meta characters, )Tj -/TT16 1 Tf -15.0002 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.2511 Tw -[( is printed as #)]TJ --19.801 -1.3278 TD -0 Tw -(and/or )Tj -/TT17 1 Tf -4.2464 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.7567 Tw -[( followed by the corresponding alphabetic)]TJ --4.8494 -1.2222 TD -0.1756 Tw -[(character. For example, Control-A would echo as )]TJ -/TT17 1 Tf -23.5807 0 TD -0 Tw -<0042>Tj -/TT8 1 Tf -0.603 0 TD -0.1756 Tw -(A, and)Tj --24.1837 -1.2222 TD -0 Tw -(meta-Control-W would echo as #)Tj -/TT17 1 Tf -14.7144 0 TD -<0042>Tj -/TT8 1 Tf -0.603 0 TD -(W.)Tj --25.3174 -2.0056 TD -0.1256 Tw -(The value of )Tj -/TT10 1 Tf -10 0 0 10 229.0565 300.62 Tm -0 Tw -(ECHOCHAR)Tj -/TT8 1 Tf -9 0 0 9 277.0643 300.62 Tm -0.1256 Tw -[( is the previous echo mode for )]TJ -/TT16 1 Tf -14.478 0 TD -0 Tw -(CHARCODE)Tj -/TT8 1 Tf -4.8008 0 TD -0.1256 Tw -[(. If )]TJ -/TT16 1 Tf -2.0466 0 TD -0 Tw -(MODE )Tj -/TT10 1 Tf -10 0 0 10 498.7171 300.62 Tm -0.302 Tw -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 531.742 300.62 Tm -0 Tw -(,)Tj -/TT10 1 Tf -10 0 0 10 174 288.62 Tm -(ECHOCHAR)Tj -/TT8 1 Tf -9 0 0 9 222.0078 288.62 Tm -( returns the current echo mode without changing it.)Tj --5.3342 -2.1056 TD -(Warning: In some fonts, control and meta characters may be used for printable characters.)Tj -0 -1.2278 TD -(If the echomode is set to )Tj -/TT10 1 Tf -10 0 0 10 272.4814 258.62 Tm -(INDICATE)Tj -/TT8 1 Tf -9 0 0 9 320.4892 258.62 Tm -( for these characters, they will not print out correctly.)Tj -/TT10 1 Tf -10 0 0 10 150 235.39 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 235.39 Tm -(ECHOCONTROL)Tj -/F1 1 Tf -10 0 0 10 215.4 235.39 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 218.18 235.39 Tm -(CHAR MODE TTBL)Tj -/TT10 1 Tf -10 0 0 10 293.7923 235.39 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 299.7933 235.39 Tm -[( )-20926.3([Function])]TJ -/TT10 1 Tf -10 0 0 10 174 218.39 Tm -(ECHOCONTROL)Tj -/TT8 1 Tf -9 0 0 9 240.0107 218.39 Tm -0.0922 Tw -[( is an old, limited version of )]TJ -/TT10 1 Tf -10 0 0 10 359.0151 218.39 Tm -0 Tw -(ECHOCHAR)Tj -/TT8 1 Tf -9 0 0 9 407.0229 218.39 Tm -0.0922 Tw -(, that can only specify the echo)Tj --25.8914 -1.3278 TD -0.0011 Tw -(mode of control characters. )Tj -/TT16 1 Tf -12.5217 0 TD -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.001 Tw -( is a character or character code. If )Tj -/TT16 1 Tf -15.5452 0 TD -0 Tc -0 Tw -(CHAR)Tj -/TT8 1 Tf -2.4004 0 TD -0.0001 Tc -0.001 Tw -( is an alphabetic)Tj --32.8676 -1.2944 TD -0 Tc -0.0167 Tw -(character \(or code\), it refers to the corresponding control character, e.g., )Tj -/TT10 1 Tf -10 0 0 10 461.9801 194.79 Tm -0 Tw -(\(ECHOCONTROL)Tj --28.798 -1.2 TD -(Z INDICATE\))Tj -/TT8 1 Tf -9 0 0 9 252.0127 182.79 Tm -( if equivalent to )Tj -/TT10 1 Tf -10 0 0 10 316.5639 182.79 Tm -(\(ECHOCHAR \(CHARCODE )Tj -/TT17 1 Tf -12.002 0 TD -<0042>Tj -/TT10 1 Tf -0.603 0 TD -(Z\) INDICATE\))Tj -/TT8 1 Tf -9 0 0 9 520.6265 182.79 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 159.56 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 159.56 Tm -(ECHOMODE)Tj -/F1 1 Tf -10 0 0 10 199.2 159.56 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 201.98 159.56 Tm -(FLG TTBL)Tj -/TT10 1 Tf -10 0 0 10 245.187 159.56 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.188 159.56 Tm -[( )-26326.9([Function])]TJ --8.5764 -1.8889 TD -(If )Tj -/TT16 1 Tf -0.9399 0 TD -(FLG )Tj -/TT10 1 Tf -10 0 0 10 204.5028 142.56 Tm -0.049 Tw -(= T)Tj -/TT8 1 Tf -9 0 0 9 222.9957 142.56 Tm -0.02 Tw -(, turns echoing for terminal table )Tj -/TT16 1 Tf -14.8505 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.02 Tw -[( on. If )]TJ -/TT16 1 Tf -3.1278 0 TD -0 Tw -(FLG )Tj -/TT10 1 Tf -10 0 0 10 428.4476 142.56 Tm -0.049 Tw -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 458.9425 142.56 Tm -0.02 Tw -(, turns echoing off.)Tj --31.6603 -1.3278 TD -0 Tw -(Returns the previous setting.)Tj -0 -2.0056 TD -0.0378 Tw -[(Note: Unlike )]TJ -/TT10 1 Tf -10 0 0 10 230.4526 112.56 Tm -0 Tw -(ECHOCHAR)Tj -/TT8 1 Tf -9 0 0 9 278.4604 112.56 Tm -0.0378 Tw -(, this only affects echoing of typed-in characters, not printing of)Tj --11.6067 -1.3278 TD -0 Tw -(characters.)Tj -/TT10 1 Tf -10 0 0 10 150 78.33 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 78.33 Tm -(GETECHOMODE)Tj -/F1 1 Tf -10 0 0 10 215.4 78.33 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 218.18 78.33 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 239.7835 78.33 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 245.7845 78.33 Tm -[( )-26927.3([Function])]TJ --7.9761 -1.8833 TD -(Returns the current echo mode for )Tj -/TT16 1 Tf -15.4316 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -ET -endstream -endobj -31 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R -/TT17 32 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -34 0 obj -<< -/Length 6476 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-7)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 78 569.54 Tm -0.4278 Tw -(The following functions manipulate the "raise mode," which determines whether lower case)Tj -0 -1.2222 TD -0.1144 Tw -[(characters are converted to upper case when input from the terminal. There is no "raise mode" for)]TJ -T* -0 Tw -(input from files.)Tj -/TT10 1 Tf -10 0 0 10 102 525.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 525.26 Tm -(RAISE)Tj -/F1 1 Tf -10 0 0 10 135 525.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 137.78 525.26 Tm -(FLG TTBL)Tj -/TT10 1 Tf -10 0 0 10 180.987 525.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 186.988 525.26 Tm -[( )-28126.9([Function])]TJ --6.7764 -1.8889 TD -0.0544 Tw -(Sets the )Tj -/TT10 1 Tf -10 0 0 10 159.75 508.26 Tm -0 Tw -(RAISE)Tj -/TT8 1 Tf -9 0 0 9 189.7549 508.26 Tm -0.0544 Tw -[( mode for terminal table )]TJ -/TT16 1 Tf -11.2112 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0544 Tw -[(. If )]TJ -/TT16 1 Tf -1.8333 0 TD -0 Tw -(FLG )Tj -/TT10 1 Tf -10 0 0 10 351.5419 508.26 Tm -0.132 Tw -(= NIL)Tj -/TT8 1 Tf -9 0 0 9 382.8668 508.26 Tm -0.0544 Tw -(, all characters are passed)Tj --28.5408 -1.3333 TD -0.0911 Tw -[(as typed. If )]TJ -/TT16 1 Tf -5.7814 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -10 0 0 10 194.2355 496.26 Tm -0.217 Tw -[( = T)]TJ -/TT8 1 Tf -9 0 0 9 222.5795 496.26 Tm -0.0911 Tw -(, input is echoed as typed, but lowercase letters are converted to)Tj --10.7311 -1.3333 TD -0.0244 Tw -[(upper case. If )]TJ -/TT16 1 Tf -6.5436 0 TD -0 Tw -(FLG)Tj -/TT10 1 Tf -10 0 0 10 201.0948 484.26 Tm -0.058 Tw -[( = 0)]TJ -/TT8 1 Tf -9 0 0 9 226.2587 484.26 Tm -0.0244 Tw -[(, input is converted to uppercase before it is echoed. Returns the)]TJ --11.1399 -1.3278 TD -0 Tw -(previous setting.)Tj -/TT10 1 Tf -10 0 0 10 102 450.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 450.03 Tm -(GETRAISE)Tj -/F1 1 Tf -10 0 0 10 151.2 450.03 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 153.98 450.03 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 175.5835 450.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 181.5845 450.03 Tm -[( )-28727.3([Function])]TJ --6.1761 -1.8889 TD -(Returns the current )Tj -/TT10 1 Tf -10 0 0 10 205.5454 433.03 Tm -(RAISE)Tj -/TT8 1 Tf -9 0 0 9 235.5503 433.03 Tm -( mode for )Tj -/TT16 1 Tf -4.5425 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT10 1 Tf -10 0 0 10 102 409.74 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 409.74 Tm -(DELETECONTROL)Tj -/F1 1 Tf -10 0 0 10 178.2 409.74 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 180.98 409.74 Tm -(TYPE MESSAGE TTBL)Tj -/TT10 1 Tf -10 0 0 10 272.7949 409.74 Tm -(\))Tj -/TT6 1 Tf -0.6001 0 TD -( )Tj -/F1 1 Tf -15.9064 0 TD -([Function])Tj -/TT8 1 Tf -9 0 0 9 126 392.74 Tm -0.3089 Tw -(Specifies the output protocol when a )Tj -/TT10 1 Tf -10 0 0 10 290.5604 392.74 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 350.5701 392.74 Tm -0.3089 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 369.0984 392.74 Tm -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 429.1082 392.74 Tm -0.3089 Tw -[( is typed, by)]TJ --33.6787 -1.3278 TD -0 Tw -(specifying character strings to print when characters are deleted.)Tj -0 -2 TD -0.0756 Tw -(Interlisp-10 \(designed for use on hardcopy terminals\) echos the characters being deleted,)Tj -0 -1.2222 TD -0.1233 Tw -(preceding the first by a \\ and following the last by a \\, so that it is easy to see exactly)Tj -T* -0.0522 Tw -[(what was deleted. Interlisp-D is initially set up to physically erase the deleted characters)]TJ -0 -1.2278 TD -0 Tw -(from the display, so the )Tj -/TT10 1 Tf -10 0 0 10 222.0732 329.74 Tm -(DELETECONTROL)Tj -/TT8 1 Tf -9 0 0 9 300.0859 329.74 Tm -( strings are initialized to the null string.)Tj --19.3429 -2.1056 TD -(The various values of )Tj -/TT16 1 Tf -9.7383 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( specify different phases of the deletion, as follows:)Tj -/TT10 1 Tf -10 0 0 10 156 290.85 Tm -(1STCHDEL)Tj -/TT16 1 Tf -9 0 0 9 216 290.85 Tm -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.0244 Tw -[( is the message printed the first time )]TJ -/TT10 1 Tf -10 0 0 10 401.9699 290.85 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 216 278.9 Tm -(is typed. Initially "\\" in Interlisp-10.)Tj -/TT10 1 Tf -10 0 0 10 156 259.56 Tm -(NTHCHDEL)Tj -/TT16 1 Tf -9 0 0 9 216 259.56 Tm -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.4189 Tw -[( is the message printed when the second and)]TJ --4.2007 -1.3333 TD -0 Tw -(subsequent )Tj -/TT10 1 Tf -10 0 0 10 267.3388 247.56 Tm -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 327.3486 247.56 Tm -0.4211 Tw -[( characters are typed \(without)]TJ --12.3721 -1.3278 TD -0 Tw -(intervening characters\). Initially "" in Interlisp-10.)Tj -/TT10 1 Tf -10 0 0 10 150 216.27 Tm -(POSTCHDEL)Tj -/TT16 1 Tf -9 0 0 9 216 216.27 Tm -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.3156 Tw -[( is the message printed when input is resumed)]TJ --4.2007 -1.3333 TD -0.6233 Tw -(following a sequence of one or more )Tj -/TT10 1 Tf -10 0 0 10 401.9638 204.27 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 216 192.32 Tm -(characters. Initially "\\" in Interlisp-10.)Tj -/TT10 1 Tf -10 0 0 10 144 172.98 Tm -(EMPTYCHDEL)Tj -/TT16 1 Tf -9 0 0 9 216 172.98 Tm -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2056 Tw -[( is the message printed when a )]TJ -/TT10 1 Tf -10 0 0 10 391.4861 172.98 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 451.4959 172.98 Tm -0.2056 Tw -[( is)]TJ --26.1662 -1.3278 TD -0.2644 Tw -[(typed and there are no characters in the buffer. Initially)]TJ -0 -1.4444 TD -0 Tw -("##)Tj -1.5822 0.2222 TD -(cr)Tj -0.84 -0.2222 TD -(" in Interlisp-10.)Tj -/TT10 1 Tf -10 0 0 10 180 128.69 Tm -(ECHO)Tj -/TT8 1 Tf -9 0 0 9 216 128.69 Tm -(If )Tj -/TT16 1 Tf -1.001 0 TD -(TYPE)Tj -/TT10 1 Tf -10 0 0 10 246.6128 128.69 Tm -0.194 Tw -[( = ECHO)]TJ -/TT8 1 Tf -9 0 0 9 292.4996 128.69 Tm -0.0811 Tw -(, the characters deleted by )Tj -/TT10 1 Tf -10 0 0 10 402.0007 128.69 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 216 116.74 Tm -(are echoed. )Tj -/TT16 1 Tf -5.5147 0 TD -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -( is ignored.)Tj -/TT10 1 Tf -10 0 0 10 168 96.8 Tm -(NOECHO)Tj -/TT8 1 Tf -9 0 0 9 216 96.8 Tm -(If )Tj -/TT16 1 Tf -1.5721 0 TD -(TYPE )Tj -/TT10 1 Tf -10 0 0 10 271.2437 96.8 Tm -1.566 Tw -(= NOECHO)Tj -/TT8 1 Tf -9 0 0 9 334.9115 96.8 Tm -0.6522 Tw -(, the characters deleted by)Tj -/TT10 1 Tf -10 0 0 10 216 84.8 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 276.0097 84.8 Tm -( are not echoed. )Tj -/TT16 1 Tf -7.4687 0 TD -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -( is ignored.)Tj -/TT10 1 Tf -10 0 0 10 144 64.51 Tm -(LINEDELETE)Tj -/TT16 1 Tf -9 0 0 9 216 64.51 Tm -(MESSAGE)Tj -/TT8 1 Tf -4.2007 0 TD -0.2456 Tw -[( is the message printed when the )]TJ -/TT10 1 Tf -10 0 0 10 401.991 64.51 Tm -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 216 50.56 Tm -(character is typed. Initially "##)Tj -13.9011 0.2222 TD -(cr)Tj -0.84 -0.2222 TD -(".)Tj -ET -endstream -endobj -35 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -37 0 obj -<< -/Length 7548 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-8)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.49 Tm -0.1867 Tw -[(Note: In Interlisp-10, the )]TJ -/TT10 1 Tf -10 0 0 10 284.0763 569.49 Tm -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 344.086 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 350.266 569.49 Tm -(1STCHDEL)Tj -/TT8 1 Tf -9 0 0 9 398.2738 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 404.4538 569.49 Tm -(NTHCHDEL)Tj -/TT8 1 Tf -9 0 0 9 452.4616 569.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 458.6416 569.49 Tm -(POSTCHDEL)Tj -/TT8 1 Tf -9 0 0 9 512.6504 569.49 Tm -0.1867 Tw -(, and)Tj -/TT10 1 Tf -10 0 0 10 174 557.49 Tm -0 Tw -(EMPTYCHDEL)Tj -/TT8 1 Tf -9 0 0 9 234.0097 557.49 Tm -( messages must be 4 characters or fewer in length.)Tj -/TT10 1 Tf -10 0 0 10 174 538.49 Tm -(DELETECONTROL)Tj -/TT8 1 Tf -9 0 0 9 252.0127 538.49 Tm -0.0967 Tw -[( returns the previous message as a string. If )]TJ -/TT16 1 Tf -20.6244 0 TD -0 Tw -(MESSAGE)Tj -/TT10 1 Tf -10 0 0 10 475.4383 538.49 Tm -0.233 Tw -[( = NIL)]TJ -/TT8 1 Tf -9 0 0 9 516.1041 538.49 Tm -0.0967 Tw -(, the)Tj --38.0116 -1.3333 TD -0.1278 Tw -[(value returned is the previous message without changing it. For )]TJ -/TT16 1 Tf -30.18 0 TD -0 Tw -(TYPE)Tj -/TT10 1 Tf -10 0 0 10 467.2232 526.49 Tm -0.307 Tw -[( = ECHO)]TJ -/TT8 1 Tf -9 0 0 9 515.3701 526.49 Tm -0.1278 Tw -[( and)]TJ -/TT10 1 Tf -10 0 0 10 174 514.49 Tm -0 Tw -(NOECHO)Tj -/TT8 1 Tf -9 0 0 9 210.0058 514.49 Tm -0.2856 Tw -(, the value of )Tj -/TT10 1 Tf -10 0 0 10 273.8728 514.49 Tm -0 Tw -(DELETECONTROL)Tj -/TT8 1 Tf -9 0 0 9 351.8854 514.49 Tm -0.2856 Tw -[( is the previous echo mode, i.e., )]TJ -/TT10 1 Tf -10 0 0 10 496.7324 514.49 Tm -0 Tw -(ECHO)Tj -/TT8 1 Tf -9 0 0 9 520.7363 514.49 Tm -0.2856 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 174 502.49 Tm -0 Tw -(NOECHO)Tj -/TT8 1 Tf -9 0 0 9 210.0058 502.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 479.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 479.26 Tm -(GETDELETECONTROL)Tj -/F2 1 Tf -10 0 0 10 242.4 479.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 245.27 479.26 Tm -(TYPE TTBL)Tj -/TT10 1 Tf -10 0 0 10 293.8779 479.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 299.8789 479.26 Tm -[( )-20916.8([Function])]TJ --13.9865 -1.8889 TD -(Returns the current )Tj -/TT10 1 Tf -10 0 0 10 253.5454 462.26 Tm -(DELETECONTROL)Tj -/TT8 1 Tf -9 0 0 9 331.5581 462.26 Tm -( mode for )Tj -/TT16 1 Tf -4.5425 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( in )Tj -/TT16 1 Tf -1.373 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj -/TT4 1 Tf -10 0 0 10 126 433.97 Tm -(Line-Buffering)Tj -/TT8 1 Tf -9 0 0 9 126 410.31 Tm -0.0289 Tw -(Characters typed at the terminal are stored in two buffers before they are passed to an input function.)Tj -0 -1.2222 TD -0.0344 Tw -[(All characters typed in are put into the low-level "system buffer", which allows type-ahead. When an)]TJ -T* -0.0389 Tw -(input function is entered, characters are transferred to the "line buffer" until a character with terminal)Tj -0 -1.2278 TD -0.0933 Tw -(syntax class )Tj -/TT10 1 Tf -10 0 0 10 177.0613 377.26 Tm -0 Tw -(EOL)Tj -/TT8 1 Tf -9 0 0 9 195.0643 377.26 Tm -0.0933 Tw -[( appears \(or, for calls from )]TJ -/TT10 1 Tf -10 0 0 10 307.2429 377.26 Tm -0 Tw -(READ)Tj -/TT8 1 Tf -9 0 0 9 331.2468 377.26 Tm -0.0933 Tw -(, when the count of unbalanced open parentheses)Tj --22.8052 -1.3333 TD -0.12 Tw -[(reaches 0\). Note that )]TJ -/TT10 1 Tf -10 0 0 10 217.3702 365.26 Tm -0 Tw -(PEEKC)Tj -/TT8 1 Tf -9 0 0 9 247.3751 365.26 Tm -0.12 Tw -[( is an exception; it returns the character immediately when its second)]TJ --13.4861 -1.3333 TD -0.0522 Tw -(argument is )Tj -/TT10 1 Tf -10 0 0 10 176.7915 353.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 194.7945 353.26 Tm -0.0522 Tw -[(. Until this time, the user can delete characters one at a time from the line buffer by)]TJ --7.6438 -1.3333 TD -0.0967 Tw -(typing the current )Tj -/TT10 1 Tf -10 0 0 10 203.0753 341.26 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 263.0851 341.26 Tm -0.0967 Tw -[( character, or delete the entire line buffer back to the last carriage-)]TJ --15.2317 -1.3333 TD -0 Tw -(return by typing the current )Tj -/TT10 1 Tf -10 0 0 10 239.9722 329.26 Tm -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 299.9819 329.26 Tm -(.)Tj --19.3313 -3 TD -0.0067 Tw -(This line editing is not performed by )Tj -/TT10 1 Tf -10 0 0 10 274.3707 302.26 Tm -0 Tw -(READ)Tj -/TT8 1 Tf -9 0 0 9 298.3746 302.26 Tm -0.0067 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 311.4628 302.26 Tm -0 Tw -(RATOM)Tj -/TT8 1 Tf -9 0 0 9 341.4677 302.26 Tm -0.0067 Tw -(, but by Interlisp, i.e., it does not matter \(nor is it)Tj --23.9409 -1.3278 TD -0.0156 Tw -(necessarily known\) which function will ultimately process the characters, only that they are still in the)Tj -0 -1.2222 TD -0.1189 Tw -[(Interlisp line buffer. However, the function that is requesting input at the time the buffering starts)]TJ -T* -0.2344 Tw -[(does determine whether parentheses counting is observed. For example, if a program performs)]TJ -/TT10 1 Tf -10 0 0 10 126 257.26 Tm -0.199 Tw -(\(PROGN \(RATOM\) \(READ\)\))Tj -/TT8 1 Tf -9 0 0 9 262.0015 257.26 Tm -0.0822 Tw -[( and the user types in )]TJ -/TT10 1 Tf -10 0 0 10 354.1036 257.26 Tm -0.199 Tw -("A \(B C D\)")Tj -/TT8 1 Tf -9 0 0 9 426.0843 257.26 Tm -0.0822 Tw -(, the user must type in the)Tj --33.3427 -1.3278 TD -0.0278 Tw -(carriage-return following the right parenthesis before any action is taken, because the line buffering is)Tj -0 -1.2278 TD -0.0978 Tw -(happening under )Tj -/TT10 1 Tf -10 0 0 10 199.259 234.26 Tm -0 Tw -(RATOM)Tj -/TT8 1 Tf -9 0 0 9 229.2639 234.26 Tm -0.0978 Tw -[(. If the program had performed )]TJ -/TT10 1 Tf -10 0 0 10 364.5528 234.26 Tm -0.234 Tw -(\(PROGN \(READ\) \(READ\)\))Tj -/TT8 1 Tf -9 0 0 9 495.2533 234.26 Tm -0.0978 Tw -(, the line-)Tj --41.0281 -1.3333 TD -0.0422 Tw -(buffering would be under )Tj -/TT10 1 Tf -10 0 0 10 232.9316 222.26 Tm -0 Tw -(READ)Tj -/TT8 1 Tf -9 0 0 9 256.9355 222.26 Tm -0.0422 Tw -(, so that the right parenthesis would terminate line buffering, and no)Tj --14.5484 -1.3278 TD -0 Tw -(terminating carriage-return would be required.)Tj -0 -2.8889 TD -0.0367 Tw -(Once a carriage-return has been typed, the entire line is "available" even if not all of it is processed by)Tj -0 -1.2222 TD -0.2411 Tw -[(the function initiating the request for input. If any characters are "left over", they are returned)]TJ -0 -1.2278 TD -0.0078 Tw -[(immediately on the next request for input. For example, )]TJ -/TT10 1 Tf -10 0 0 10 353.4798 162.26 Tm -0.018 Tw -(\(LIST \(RATOM\) \(READC\) \(RATOM\)\))Tj -/TT8 1 Tf -9 0 0 9 126 150.31 Tm -0.05 Tw -[(when the input is "A Bcr" returns the three-element list \(A % B\) and leaves the carriage-return in the)]TJ -0 -1.2222 TD -0 Tw -(buffer.)Tj -0 -2.8944 TD -0.1133 Tw -(If a carriage-return is typed when the input under )Tj -/TT10 1 Tf -10 0 0 10 336.0496 113.26 Tm -0 Tw -(READ)Tj -/TT8 1 Tf -9 0 0 9 360.0535 113.26 Tm -0.1133 Tw -[( is not "complete" \(the parentheses are not)]TJ --26.006 -1.3278 TD -0.1289 Tw -(balanced or a string is in progress\), line buffering continues, but the lines completed so far are not)Tj -0 -1.2278 TD -0 Tw -(available for editing with )Tj -/TT10 1 Tf -10 0 0 10 228.7222 90.26 Tm -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 288.7319 90.26 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 301.7002 90.26 Tm -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 361.7099 90.26 Tm -(.)Tj --26.19 -3 TD -(The function )Tj -/TT10 1 Tf -10 0 0 10 178.9277 63.26 Tm -(CONTROL)Tj -/TT8 1 Tf -9 0 0 9 220.9345 63.26 Tm -( is available to defeat line-buffering:)Tj -/TT10 1 Tf -10 0 0 10 150 40.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 40.03 Tm -(CONTROL)Tj -/F3 1 Tf -10 0 0 10 193.8 40.03 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 196.58 40.03 Tm -(MODE TTBL)Tj -/TT10 1 Tf -10 0 0 10 245.1879 40.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.1889 40.03 Tm -[( )-26326.8([Function])]TJ -ET -endstream -endobj -38 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 16 0 R -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -40 0 obj -<< -/Length 6049 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 463.5 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-9)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -(If )Tj -/TT16 1 Tf -0.9744 0 TD -(MODE )Tj -/TT10 1 Tf -10 0 0 10 162.9437 569.49 Tm -0.13 Tw -(= T)Tj -/TT8 1 Tf -9 0 0 9 182.2466 569.49 Tm -0.0544 Tw -(, eliminates Interlisps normal line-buffering for the terminal table )Tj -/TT16 1 Tf -29.8196 0 TD -0 Tw -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -0.0544 Tw -[(. If)]TJ -/TT16 1 Tf --38.4696 -1.3333 TD -0 Tw -(MODE)Tj -/TT10 1 Tf -10 0 0 10 147.6035 557.49 Tm -0.102 Tw -[( = NIL)]TJ -/TT8 1 Tf -9 0 0 9 185.6494 557.49 Tm -0.0422 Tw -[(, restores line-buffering \(normal\). When operating with a terminal table in)]TJ --6.6277 -1.3333 TD -0 Tw -(which )Tj -/TT10 1 Tf -10 0 0 10 155.6262 545.49 Tm -0.741 Tw -(\(CONTROL T\))Tj -/TT8 1 Tf -9 0 0 9 229.0469 545.49 Tm -0.3089 Tw -[( has been performed, characters are returned to the calling)]TJ --11.4497 -1.3278 TD -0 Tw -(function without line-buffering as described below.)Tj -/TT10 1 Tf -10 0 0 10 126 515.49 Tm -(CONTROL)Tj -/TT8 1 Tf -9 0 0 9 168.0068 515.49 Tm -( returns its previous setting.)Tj -/TT10 1 Tf -10 0 0 10 102 492.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 492.26 Tm -(GETCONTROL)Tj -/F3 1 Tf -10 0 0 10 162 492.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 164.78 492.26 Tm -(TTBL)Tj -/TT10 1 Tf -10 0 0 10 186.3835 492.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 192.3845 492.26 Tm -[( )-27527.3([Function])]TJ --7.3761 -1.8833 TD -(Returns the current control mode for )Tj -/TT16 1 Tf -16.5107 0 TD -(TTBL)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --18.9111 -2.0667 TD -0.0922 Tw -(The function that initiates the request for input determines how the line is treated when)Tj -/TT10 1 Tf -10 0 0 10 126 445.66 Tm -0 Tw -(\(CONTROL T\))Tj -/TT8 1 Tf -9 0 0 9 192.0107 445.66 Tm -( is in effect:)Tj -/TT10 1 Tf -10 0 0 10 180 426.66 Tm -(READ)Tj -/TT8 1 Tf -9 0 0 9 216 426.66 Tm -0.0278 Tw -(If the expression being typed is a list, the effect is the same as)Tj -0 -1.3333 TD -0.2733 Tw -(though done with )Tj -/TT10 1 Tf -10 0 0 10 297.1466 414.66 Tm -0.657 Tw -(\(CONTROL NIL\))Tj -/TT8 1 Tf -9 0 0 9 381.7293 414.66 Tm -0.2733 Tw -(, i.e., line-buffering)Tj --18.4144 -1.3278 TD -0.0611 Tw -[(continues until a carriage-return or matching parentheses. If)]TJ -0 -1.2222 TD -0.0578 Tw -(the expression being typed is not a list, it is returned as soon)Tj -T* -0.4967 Tw -(as a break or separator character is encountered, e.g.,)Tj -/TT10 1 Tf -10 0 0 10 216 369.66 Tm -0 Tw -(\(READ\))Tj -/TT8 1 Tf -9 0 0 9 252.0058 369.66 Tm -0.46 Tw -[( when the input is "ABC" immediately)]TJ --4.0007 -1.3333 TD -0 Tw -(returns )Tj -/TT10 1 Tf -10 0 0 10 251.8769 357.66 Tm -(ABC)Tj -/TT8 1 Tf -9 0 0 9 269.8798 357.66 Tm -0.5322 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 286.2098 357.66 Tm -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -9 0 0 9 346.2196 357.66 Tm -0.5322 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 375.5354 357.66 Tm -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -9 0 0 9 435.5452 357.66 Tm -0.5322 Tw -[( are)]TJ --24.3939 -1.3278 TD -0.2011 Tw -[(available on those characters still in the buffer. Thus, if a)]TJ -0 -1.2278 TD -0.0444 Tw -(program is performing several reads under )Tj -/TT10 1 Tf -10 0 0 10 392.6695 334.66 Tm -0.106 Tw -(\(CONTROL T\))Tj -/TT8 1 Tf -9 0 0 9 459.7402 334.66 Tm -0 Tw -(,)Tj --27.0823 -1.3333 TD -0.15 Tw -(and the user types )Tj -/TT10 1 Tf -10 0 0 10 296.7047 322.66 Tm -0.359 Tw -("NOW IS THE TIME")Tj -/TT8 1 Tf -9 0 0 9 409.4913 322.66 Tm -0.15 Tw -[( followed by)]TJ --21.499 -1.3333 TD -0.0267 Tw -(Control-Q, only )Tj -/TT10 1 Tf -10 0 0 10 281.6333 310.66 Tm -0 Tw -(TIME)Tj -/TT8 1 Tf -9 0 0 9 305.6372 310.66 Tm -0.0267 Tw -[( is deleted, since the rest of the line has)]TJ --9.9597 -1.3278 TD -0 Tw -(already been transmitted to )Tj -/TT10 1 Tf -12.4404 0 TD -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -( and processed.)Tj --14.8408 -2.0667 TD -0.49 Tw -(An exception to the above occurs when the break or)Tj -0 -1.2222 TD -0.3411 Tw -(separator character is an opening parenthesis, bracket or)Tj -0 -1.3644 TD -0.0778 Tw -(double-quote, since returning at this point would )Tj -/F1 1 Tf -10 0 0 10 419.2559 256.83 Tm -0.087 Tw -(leave the)Tj --20.3256 -1.228 TD -0 Tw -(line )Tj -/TT8 1 Tf -9 0 0 9 236.6 244.55 Tm -0.0367 Tw -[(buffer in a "funny" state. Thus if the input to )]TJ -/TT10 1 Tf -20.4346 0 TD -0 Tw -(\(READ\))Tj -/TT8 1 Tf -3.6006 0 TD -0.0367 Tw -[( is)]TJ --26.3241 -1.2889 TD -0.4233 Tw -("ABC\(", the ABC is not read until a carriage-return or)Tj -0 -1.2222 TD -0.1644 Tw -[(matching parentheses is encountered. In this case the user)]TJ -T* -0 Tw -(could )Tj -/TT10 1 Tf -2.8224 0 TD -(LINEDELETE)Tj -/TT8 1 Tf -6.001 0 TD -0.0778 Tw -[( the entire line, since all of the characters)]TJ --8.8234 -1.2889 TD -0 Tw -(are still in the buffer.)Tj -/TT10 1 Tf --4.3333 -2.1422 TD -(RATOM)Tj -/TT8 1 Tf -4.3333 0 TD -0.3378 Tw -(Characters are returned as soon as a break or separator)Tj -0 -1.2889 TD -0.4067 Tw -[(character is encountered. Until then, )]TJ -/TT10 1 Tf -18.983 0 TD -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -6.001 0 TD -0.4067 Tw -[( and)]TJ -/TT10 1 Tf --24.9839 -1.2889 TD -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf -6.001 0 TD -0.3211 Tw -[( may be used as with )]TJ -/TT10 1 Tf -11.4716 0 TD -0 Tw -(READ)Tj -/TT8 1 Tf -2.4004 0 TD -0.3211 Tw -[(. For example,)]TJ -/TT10 1 Tf --19.873 -1.2889 TD -0 Tw -(\(RATOM\))Tj -/TT8 1 Tf -4.2007 0 TD -0.0222 Tw -[( followed by )]TJ -/TT10 1 Tf -5.8567 0 TD -0 Tw -("ABC")Tj -/TT8 1 Tf -13.8022 0 TD -0.0222 Tw -[( returns)]TJ -/TT10 1 Tf --23.8596 -1.2889 TD -0 Tw -(AB)Tj -/TT8 1 Tf -1.2002 0 TD -0.0278 Tw -(. )Tj -/TT10 1 Tf -0.8056 0 TD -0 Tw -(\(RATOM\))Tj -/TT8 1 Tf -4.2007 0 TD -0.0278 Tw -[( followed by "\(" returns \( and types)]TJ --6.2064 -1.2889 TD -0.1267 Tw -(## indicating that control-A was attempted with nothing in)Tj -0 -1.2222 TD -0.4211 Tw -(the buffer, since the \( is a break character and would)Tj -T* -0 Tw -(therefore already have been read.)Tj -/TT10 1 Tf --4.3333 -2.1489 TD -(READC)Tj -0 -1.2544 TD -(PEEKC)Tj -/TT8 1 Tf -4.3333 0 TD -0.3178 Tw -(The character is returned immediately; no line editing is)Tj -0 -1.3278 TD -0.0433 Tw -[(possible. In particular, )]TJ -/TT10 1 Tf -10.5474 0 TD -0 Tw -(\(READC\))Tj -/TT8 1 Tf -4.2007 0 TD -0.0433 Tw -[( is perfectly happy to return)]TJ -ET -endstream -endobj -41 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F3 25 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -43 0 obj -<< -/Length 6825 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-10)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 264 569.54 Tm -(the )Tj -/TT10 1 Tf -1.7205 0 TD -(CHARDELETE)Tj -/TT8 1 Tf -6.001 0 TD -0.0833 Tw -[( or )]TJ -/TT10 1 Tf -1.6076 0 TD -0 Tw -(LINEDELETE)Tj -/TT8 1 Tf -6.001 0 TD -0.0833 Tw -[( characters, or the )]TJ -/TT10 1 Tf -8.4002 0 TD -0 Tw -(ESCAPE)Tj -/TT8 1 Tf --23.7303 -1.2889 TD -(character \()Tj -/TT10 1 Tf -4.6479 0 TD -(%)Tj -/TT8 1 Tf -0.6001 0 TD -(\).)Tj --20.5814 -2.9556 TD -(The system buffer and line buffer can be directly manipulated using the following functions.)Tj -/TT10 1 Tf -10 0 0 10 150 509.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 509.06 Tm -(CLEARBUF)Tj -/F1 1 Tf -10 0 0 10 199.2 509.06 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 201.98 509.06 Tm -(FILE FLG)Tj -/TT10 1 Tf -10 0 0 10 245.187 509.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 251.188 509.06 Tm -[( )-26326.9([Function])]TJ --8.5764 -1.8833 TD -0.1356 Tw -(Clears the input buffer for )Tj -/TT16 1 Tf -12.4864 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1356 Tw -[(. If )]TJ -/TT16 1 Tf -2.0766 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1356 Tw -[( is )]TJ -/TT10 1 Tf -1.486 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1356 Tw -[( and )]TJ -/TT16 1 Tf -2.464 0 TD -0 Tw -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1356 Tw -[( is )]TJ -/TT10 1 Tf -1.486 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1356 Tw -(, the contents of Interlisps)Tj --27.8001 -1.2889 TD -0.1433 Tw -(system buffer and line buffer are saved \(and can be obtained via )Tj -/TT10 1 Tf -30.3211 0 TD -0 Tw -(SYSBUF)Tj -/TT8 1 Tf -3.6006 0 TD -0.1433 Tw -[( and )]TJ -/TT10 1 Tf -2.4795 0 TD -0 Tw -(LINBUF)Tj -/TT8 1 Tf --36.4012 -1.2889 TD -(described below\).)Tj -0 -2 TD -0.1644 Tw -(When you type Control-D or Control-E, or any of the interrupt characters that require)Tj -0 -1.2222 TD -0.71 Tw -(terminal interaction \(Control-G, or Control-P\), Interlisp automatically performs)Tj -/TT10 1 Tf -T* -0.3378 Tw -(\(CLEARBUF T T\))Tj -/TT8 1 Tf -9.0769 0 TD -0.1411 Tw -[(. For Control-P and, when the break is exited normally, control-H,)]TJ --9.0769 -1.2889 TD -0 Tw -(Interlisp restores the buffer after the interaction.)Tj -0 -2 TD -0.0567 Tw -(The action of )Tj -/TT10 1 Tf -6.1617 0 TD -0.1367 Tw -(\(CLEARBUF T\))Tj -/TT8 1 Tf -7.3378 0 TD -0.0567 Tw -(, i.e., clearing of typeahead, is also available as the )Tj -/TT10 1 Tf -22.8948 0 TD -0 Tw -(RUBOUT)Tj -/TT8 1 Tf --36.3943 -1.2889 TD -0.2067 Tw -[(interrupt character, initially assigned to the delete key in Interlisp-D. Note that this)]TJ -0 -1.2222 TD -0.0133 Tw -(interrupt clears both buffers at the time it is typed, whereas the action of the )Tj -/TT10 1 Tf -33.9915 0 TD -0 Tw -(CHARDELETE)Tj -/TT8 1 Tf --33.9915 -1.2889 TD -(and )Tj -/TT10 1 Tf -1.9429 0 TD -(LINEDELETE)Tj -/TT8 1 Tf -6.001 0 TD -( character occur at the time they are read.)Tj -/TT10 1 Tf -10 0 0 10 150 342.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 342.23 Tm -(SYSBUF)Tj -/F1 1 Tf -10 0 0 10 188.4 342.23 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 191.18 342.23 Tm -(FLG)Tj -/TT10 1 Tf -10 0 0 10 207.3826 342.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 213.3836 342.23 Tm -[( )-30527.4([Function])]TJ --4.376 -1.8833 TD -(If )Tj -/TT16 1 Tf -0.9955 0 TD -(FLG )Tj -/TT10 1 Tf -2.5826 0 TD -0.1822 Tw -(= T)Tj -/TT8 1 Tf -1.9825 0 TD -0.0756 Tw -(, returns the contents of the system buffer \(as a string\) that was saved at the)Tj --5.5606 -1.2889 TD -0 Tw -(last )Tj -/TT10 1 Tf -1.791 0 TD -(\(CLEARBUF T T\))Tj -/TT8 1 Tf -8.4014 0 TD -(. If )Tj -/TT16 1 Tf -1.6699 0 TD -(FLG )Tj -/TT10 1 Tf -2.4004 0 TD -(= NIL)Tj -/TT8 1 Tf -3.0005 0 TD -(, clears this internal buffer.)Tj -/TT10 1 Tf -10 0 0 10 150 290.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 290.8 Tm -(LINBUF)Tj -/F1 1 Tf -10 0 0 10 188.4 290.8 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 191.18 290.8 Tm -(FLG)Tj -/TT10 1 Tf -10 0 0 10 207.3826 290.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 213.3836 290.8 Tm -[( )-30527.4([Function])]TJ --4.376 -1.8833 TD -(Same as )Tj -/TT10 1 Tf -3.8105 0 TD -(SYSBUF)Tj -/TT8 1 Tf -3.6006 0 TD -( for the line buffer.)Tj --12.7445 -2.9556 TD -0.1511 Tw -(If both the system buffer and Interlisps line buffer are empty, the internal buffers associated with)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(LINBUF)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT10 1 Tf -2.1929 0 TD -(SYSBUF)Tj -/TT8 1 Tf -3.6006 0 TD -( are not changed by a )Tj -/TT10 1 Tf -9.6914 0 TD -(\(CLEARBUF T T\).)Tj -10 0 0 10 150 214.6 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 214.6 Tm -(BKSYSBUF)Tj -/TT16 1 Tf -4.7999 0 TD -( X FLG RDTBL)Tj -/TT10 1 Tf -10 0 0 10 264.0105 214.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 270.0115 214.6 Tm -[( )-24235.4([Function])]TJ -/TT10 1 Tf --10.6679 -1.8833 TD -(BKSYSBUF)Tj -/TT8 1 Tf -4.8008 0 TD -0.0489 Tw -[( appends the )]TJ -/TT10 1 Tf -6.0817 0 TD -0 Tw -(PRIN1)Tj -/TT8 1 Tf -3.0005 0 TD -0.0489 Tw -(-name of )Tj -/TT16 1 Tf -4.2535 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0489 Tw -[( to the system buffer. The effect is the same as)]TJ --18.7366 -1.2889 TD -0.0322 Tw -(though the user typed )Tj -/TT16 1 Tf -10.1855 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -[(. Some implementations have a limit on the length of )]TJ -/TT16 1 Tf -24.1894 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0322 Tw -(, in which)Tj --35.5751 -1.2889 TD -0 Tw -(case characters in )Tj -/TT16 1 Tf -7.9585 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( beyond the limit are ignored. Returns )Tj -/TT16 1 Tf -17.3574 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj --26.5161 -2.0667 TD -(If )Tj -/TT16 1 Tf -1.0577 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1378 Tw -[( is )]TJ -/TT10 1 Tf -1.4904 0 TD -0 Tw -(T)Tj -/TT8 1 Tf -0.6001 0 TD -0.1378 Tw -(, then the )Tj -/TT10 1 Tf -4.7698 0 TD -0 Tw -(PRIN2)Tj -/TT8 1 Tf -2.9995 0 TD -0.1378 Tw -(-name of )Tj -/TT16 1 Tf -4.4313 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.1378 Tw -[( is used, computed with respect to the readtable)]TJ -/TT16 1 Tf --17.7492 -1.2889 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -(. If )Tj -/TT16 1 Tf -1.5621 0 TD -0 Tw -(RDTBL)Tj -/TT8 1 Tf -3.0005 0 TD -0.0711 Tw -[( is )]TJ -/TT10 1 Tf -1.3571 0 TD -0 Tw -(NIL)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -[( or omitted, the current readtable of the )]TJ -/TT10 1 Tf -18.2334 0 TD -0 Tw -(TTY)Tj -/TT8 1 Tf -1.8003 0 TD -0.0711 Tw -[( process \(which is to)]TJ --30.7542 -1.2889 TD -0.0033 Tw -(receive the characters\) is used. Use this for copy selection functions that want their output)Tj -0 -1.2222 TD -0 Tw -(to be a readable expression in an Exec.)Tj -0 -2 TD -0.1467 Tw -(Note that if you are typing at the same time as the )Tj -/TT10 1 Tf -24.0813 0 TD -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -4.8008 0 TD -0.1467 Tw -[( is being performed, the)]TJ --28.8821 -1.2889 TD -0 Tw -(relative order of the typein and the characters of )Tj -/TT16 1 Tf -21.5513 0 TD -(X)Tj -/TT8 1 Tf -0.6001 0 TD -( is unpredictable.)Tj -/TT10 1 Tf -10 0 0 10 150 69.17 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 69.17 Tm -(BKLINBUF)Tj -/F3 1 Tf -10 0 0 10 199.2 69.17 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 201.98 69.17 Tm -(STR)Tj -/TT10 1 Tf -10 0 0 10 218.1826 69.17 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 224.1836 69.17 Tm -[( )-29327.4([Function])]TJ -ET -endstream -endobj -44 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F3 25 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -46 0 obj -<< -/Length 6858 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-11)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT16 1 Tf -9 0 0 9 126 569.49 Tm -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1478 Tw -[( is a string. )]TJ -/TT10 1 Tf -10 0 0 10 196.4542 569.49 Tm -0 Tw -(BKLINBUF)Tj -/TT8 1 Tf -9 0 0 9 244.462 569.49 Tm -0.1478 Tw -[( sets Interlisps line buffer to )]TJ -/TT16 1 Tf -13.6787 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1478 Tw -[(. Some implementations)]TJ --28.6414 -1.3278 TD -0.1178 Tw -(have a limit on the length of )Tj -/TT16 1 Tf -13.4929 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1178 Tw -(, in which case characters in )Tj -/TT16 1 Tf -13.2711 0 TD -0 Tw -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -0.1178 Tw -[( beyond the limit are)]TJ --30.3646 -1.2889 TD -0 Tw -(ignored. Returns )Tj -/TT16 1 Tf -7.937 0 TD -(STR)Tj -/TT8 1 Tf -1.8003 0 TD -(.)Tj -/TT6 1 Tf -10 0 0 10 102 523 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 105.33 523 Tm -(BKSYSCHARCODE)Tj -/TT19 1 Tf -10 0 0 10 175.5414 523 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 178.3197 523 Tm -(CODE)Tj -/TT6 1 Tf -10 0 0 10 199.9233 523 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 444.63 523 Tm -([Function])Tj --35.4033 -1.8444 TD -0.1011 Tw -(This function appends the character code )Tj -/TT16 1 Tf -19.053 0 TD -0 Tw -(CODE)Tj -/TT8 1 Tf -2.4004 0 TD -0.1011 Tw -[( to the system input buffer. The function)]TJ -/TT10 1 Tf -10 0 0 10 126 494.75 Tm -0 Tw -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 174 494.75 Tm -( is implemented by repeated calls to )Tj -/TT10 1 Tf -10 0 0 10 319.5381 494.75 Tm -(BKSYSCHARCODE)Tj -/TT8 1 Tf -9 0 0 9 397.5508 494.75 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 78 449.75 Tm -(BKLINBUF)Tj -/TT8 1 Tf -9 0 0 9 126.0078 449.75 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 130.6878 449.75 Tm -(BKSYSBUF)Tj -/TT8 1 Tf -9 0 0 9 178.6956 449.75 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 183.3756 449.75 Tm -(LINBUF)Tj -/TT8 1 Tf -9 0 0 9 219.3815 449.75 Tm -0.02 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 241.7273 449.75 Tm -0 Tw -(SYSBUF)Tj -/TT8 1 Tf -9 0 0 9 277.7332 449.75 Tm -0.02 Tw -[( provide a way of "undoing" a )]TJ -/TT10 1 Tf -10 0 0 10 400.6733 449.75 Tm -0 Tw -(CLEARBUF)Tj -/TT8 1 Tf -9 0 0 9 448.6812 449.75 Tm -0.02 Tw -[(. Thus to)]TJ --41.1868 -1.3333 TD -0.1844 Tw -("peek" at various characters in the buffer, one could perform )Tj -/TT10 1 Tf -10 0 0 10 337.0243 437.75 Tm -0.442 Tw -(\(CLEARBUF T T\))Tj -/TT8 1 Tf -9 0 0 9 429.878 437.75 Tm -0.1844 Tw -(, examine the)Tj --39.0976 -1.3333 TD -0 Tw -(buffers via )Tj -/TT10 1 Tf -10 0 0 10 122.7847 425.75 Tm -(LINBUF)Tj -/TT8 1 Tf -9 0 0 9 158.7905 425.75 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 178.5264 425.75 Tm -(SYSBUF)Tj -/TT8 1 Tf -9 0 0 9 214.5322 425.75 Tm -(, and then put them back.)Tj --15.1702 -2.9944 TD -0.2156 Tw -(The more common use of these functions is in saving and restoring typeahead when a program)Tj -0 -1.2278 TD -0.0567 Tw -[(requires some unanticipated \(from the users standpoint\) input. The function )]TJ -/TT10 1 Tf -10 0 0 10 393.9254 387.75 Tm -0 Tw -(RESETBUFS)Tj -/TT8 1 Tf -9 0 0 9 447.9342 387.75 Tm -0.0567 Tw -[( provides)]TJ --41.1038 -1.3278 TD -0.13 Tw -(a convenient way of simply clearing the input buffer, performing an interaction with the user, and)Tj -0 -1.2222 TD -0 Tw -(then restoring the input buffer. )Tj -/TT10 1 Tf -10 0 0 10 102 343.75 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 343.75 Tm -(RESETBUFS)Tj -/F3 1 Tf -10 0 0 10 156.6 340.75 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 159.38 343.75 Tm -(FORM)Tj -2.4 -0.3333 TD -(1)Tj -0.6 0.3333 TD -(, FORM)Tj -3.6 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(,... FORMN)Tj -6 -0.3333 TD -(\))Tj -/TT8 1 Tf -0.6 0.3333 TD -[( )-7916.7([NLambda NoSpread Function])]TJ --17.5089 -2.1778 TD -0.3389 Tw -(Clears any typeahead \(ringing the terminals bell if there was, indeed, typeahead\),)Tj -0 -1.2222 TD -0 Tw -(evaluates )Tj -/TT16 1 Tf -4.5037 0 TD -(FORM)Tj -2.3997 -0.3333 TD -(1)Tj -/TT8 1 Tf -0.6 0.3333 TD -(, )Tj -/TT16 1 Tf -0.5867 0 TD -(FORM)Tj -2.4 -0.3333 TD -(2)Tj -0.6 0.3333 TD -(,...)Tj -/TT8 1 Tf -2.4004 0 TD -( )Tj -/TT16 1 Tf -0.3367 0 TD -(FORM)Tj -2.3996 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -0.0867 Tw -[(, then restores the typeahead. Returns the value of)]TJ -/TT16 1 Tf --16.8267 -1.6222 TD -0 Tw -(FORM)Tj -2.4 -0.3333 TD -(N)Tj -/TT8 1 Tf -0.6 0.3333 TD -(. Compiles open.)Tj -/TT4 1 Tf -10 0 0 10 54 252.61 Tm -(Dribble Files)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 249.9 m -534.01 249.9 l -S -BT -/TT8 1 Tf -9 0 0 9 78 227.9 Tm -0.0722 Tw -[(A dribble file is a "transcript" of all of the input and output on a terminal. In Interlisp-D, )]TJ -/TT10 1 Tf -10 0 0 10 443.978 227.9 Tm -0 Tw -(DRIBBLE)Tj -/TT8 1 Tf -9 0 0 9 78 215.95 Tm -0.0667 Tw -(opens a dribble file for the current process, recording the terminal input and output for that process.)Tj -0 -1.2222 TD -0 Tw -(Multiple processes can have separate dribble files open at the same time.)Tj -/TT10 1 Tf -10 0 0 10 102 182.61 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 182.61 Tm -(DRIBBLE)Tj -/TT4 1 Tf -10 0 0 10 145.8 182.61 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 148.5783 182.61 Tm -(FILE APPENDFLG THAWEDFLG)Tj -/TT10 1 Tf -10 0 0 10 278.1994 182.61 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 284.2004 182.61 Tm -[( )-17325.5([Function])]TJ --17.5778 -1.8833 TD -(Opens )Tj -/TT16 1 Tf -3.3276 0 TD -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -0.2056 Tw -[( and begins recording the typescript. Returns the old dribble file if any,)]TJ --5.728 -1.2944 TD -0 Tw -(otherwise )Tj -/TT10 1 Tf -10 0 0 10 167.6436 154.01 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 185.6465 154.01 Tm -0.0211 Tw -[(. If )]TJ -/TT16 1 Tf -1.7333 0 TD -0 Tw -(APPENDFLG)Tj -/TT10 1 Tf -10 0 0 10 249.8537 154.01 Tm -0.051 Tw -[( = T)]TJ -/TT8 1 Tf -9 0 0 9 274.8777 154.01 Tm -0.0211 Tw -(, the typescript will be appended to the end of )Tj -/TT16 1 Tf -20.8049 0 TD -0 Tw -(FILE)Tj -/TT8 1 Tf -2.4004 0 TD -(.)Tj --39.7472 -1.3333 TD -(If )Tj -/TT16 1 Tf -0.941 0 TD -(THAWEDFLG)Tj -/TT10 1 Tf -10 0 0 10 183.0772 142.01 Tm -0.05 Tw -[( = T)]TJ -/TT8 1 Tf -9 0 0 9 208.0811 142.01 Tm -0.0211 Tw -(, the file will be opened in "thawed" mode, for those implementations)Tj --9.1201 -1.3333 TD -0.1544 Tw -(that support it. )Tj -/TT10 1 Tf -10 0 0 10 195.4389 130.01 Tm -0 Tw -(\(DRIBBLE\))Tj -/TT8 1 Tf -9 0 0 9 249.4477 130.01 Tm -0.1544 Tw -[( closes the dribble file for the current process. Only one)]TJ --13.7164 -1.3333 TD -0.2011 Tw -(dribble file can be active for each process at any one time, so )Tj -/TT10 1 Tf -10 0 0 10 391.1062 118.01 Tm -0.483 Tw -(\(DRIBBLE FILE1\))Tj -/TT8 1 Tf -9 0 0 9 126 106.01 Tm -0 Tw -(followed by )Tj -/TT10 1 Tf -10 0 0 10 175.8603 106.01 Tm -(\(DRIBBLE FILE2\))Tj -/TT8 1 Tf -9 0 0 9 265.875 106.01 Tm -( will cause )Tj -/TT10 1 Tf -10 0 0 10 310.0356 106.01 Tm -(FILE1)Tj -/TT8 1 Tf -9 0 0 9 340.0405 106.01 Tm -( to be closed.)Tj -/TT10 1 Tf -10 0 0 10 102 84.01 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 84.01 Tm -(DRIBBLEFILE)Tj -/TT10 1 Tf -10 0 0 10 167.4 84.01 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 173.401 84.01 Tm -[( )-29636.6([Function])]TJ --5.2668 -1.8889 TD -(Returns the name of the current dribble file for the current process, if any, otherwise )Tj -/TT10 1 Tf -10 0 0 10 462.8848 67.01 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 480.8877 67.01 Tm -(.)Tj -ET -endstream -endobj -47 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R -/TT19 48 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -52 0 obj -<< -/Length 5368 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-12)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.0922 Tw -[(Terminal input is echoed to the dribble file a line buffer at a time. Thus, the typescript produced is)]TJ -0 -1.2222 TD -0.0456 Tw -(somewhat neater than that appearing on the users terminal, because it does not show characters that)Tj -T* -0.0222 Tw -[(were erased via Control-A or Control-Q. Note that the typescript file is not included in the list of files)]TJ -0 -1.2278 TD -0.0456 Tw -(returned by )Tj -/TT10 1 Tf -10 0 0 10 176.1354 536.49 Tm -0 Tw -(\(OPENP\))Tj -/TT8 1 Tf -9 0 0 9 218.1422 536.49 Tm -0.0456 Tw -(, nor will it be closed by a call to )Tj -/TT10 1 Tf -10 0 0 10 352.1226 536.49 Tm -0 Tw -(CLOSEALL)Tj -/TT8 1 Tf -9 0 0 9 400.1304 536.49 Tm -0.0456 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 413.9187 536.49 Tm -0 Tw -(CLOSEF)Tj -/TT8 1 Tf -9 0 0 9 449.9246 536.49 Tm -0.0456 Tw -[(. Only )]TJ -/TT10 1 Tf -10 0 0 10 480.0926 536.49 Tm -0 Tw -(\(DRIBBLE\))Tj -/TT8 1 Tf -9 0 0 9 126 524.54 Tm -(closes the typescript file.)Tj -/TT4 1 Tf -10 0 0 10 102 482.2 Tm -(Cursor and Mouse)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 479.49 m -582.01 479.49 l -S -BT -/TT8 1 Tf -9 0 0 9 126 457.54 Tm -0.0311 Tw -[(A mouse is a small box connected to the computer keyboard by a long wire. On the top of the mouse)]TJ -0 -1.2222 TD -0.0267 Tw -[(are two or three buttons. On the bottom is a rolling ball or a set of photoreceptors, to detect when the)]TJ -T* -0.0367 Tw -[(mouse is moved. As the mouse is moved on a surface, a small image on the screen, called the cursor,)]TJ -T* -0.0478 Tw -[(moves to follow the movement of the mouse. By moving the mouse, the user can cause the cursor to)]TJ -T* -0 Tw -(point to any part of the display screen.)Tj -0 -2.8889 TD -0.0122 Tw -[(The mouse and cursor are an important part of the Interlisp-D user interface. The Interlisp-D window)]TJ -0 -1.2222 TD -0.1589 Tw -(system allows the user to create, move, and reshape windows, and to select items from displayed)Tj -T* -0.0311 Tw -[(menus, all by moving the mouse and clicking the mouse buttons. This section describes the low-level)]TJ -T* -0 Tw -(functions used to control the mouse and cursor.)Tj -/TT4 1 Tf -10 0 0 10 126 327.2 Tm -(Changing the Cursor Image)Tj -/TT8 1 Tf -9 0 0 9 126 303.54 Tm -0.1044 Tw -[(Interlisp-D maintains the image of the cursor on the screen, moving it as the mouse is moved. The)]TJ -T* -0 Tw -(bitmap that becomes visible as the cursor can be accessed by the following function:)Tj -/TT10 1 Tf -10 0 0 10 150 271.49 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 271.49 Tm -(CURSORBITMAP)Tj -/TT10 1 Tf -10 0 0 10 220.8 271.49 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 226.801 271.49 Tm -[( )-29036.6([Function])]TJ --5.8668 -1.8833 TD -(Returns the cursor bitmap.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(CURSORWIDTH)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ -/TT12 1 Tf --6.6 -1.0667 TD -(CURSORHEIGHT)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -2.0667 TD -(Value is the width and height of the cursor bitmap, respectively.)Tj --5.3333 -2.8944 TD -0.0589 Tw -(The cursor bitmap can be changed like any other bitmap by )Tj -/TT10 1 Tf -10 0 0 10 370.7255 179.29 Tm -0 Tw -(BITBLT)Tj -/TT8 1 Tf -9 0 0 9 406.7314 179.29 Tm -0.0589 Tw -(ing into it or pointing a display)Tj --31.1924 -1.4767 TD -0.1556 Tw -(stream at it and printing or drawing curves. The )Tj -/TT10 1 Tf -10 0 0 10 332.6493 166 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 368.68 166 Tm -0.1556 Tw -[( datatype has the following field names)]TJ -/TT10 1 Tf -10 0 0 10 126 152.71 Tm -0 Tw -(CUBITSPERPIXEL)Tj -/TT6 1 Tf -8.4014 0 TD -( )Tj -/TT10 1 Tf -0.2778 0 TD --0.0001 Tc -0.0001 Tw -(CUIMAGE, CUMASK, CUHOTSPOTX, CUHOTSPOTY)Tj -/TT6 1 Tf -23.3988 0 TD -0 Tc -0 Tw -(, )Tj -/TT10 1 Tf -0.5557 0 TD -(CUDATA)Tj --32.6337 -2.7 TD -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 162.0058 125.71 Tm -0.0167 Tw -[( objects can be saved on a file using the file package command )]TJ -/TT10 1 Tf -10 0 0 10 413.5828 125.71 Tm -0 Tw -(CURSORS)Tj -/TT8 1 Tf -9 0 0 9 455.5897 125.71 Tm -0.0167 Tw -(, or the )Tj -/TT10 1 Tf -10 0 0 10 485.9928 125.71 Tm -0 Tw -(UGLYVARS)Tj -/TT8 1 Tf -9 0 0 9 126 113.76 Tm -(file package command.)Tj -/TT10 1 Tf -10 0 0 10 150 91.48 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 91.48 Tm -(CURSORCREATE)Tj -/F3 1 Tf -10 0 0 10 220.8 91.48 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 223.58 91.48 Tm -(BITMAP X Y)Tj -/TT10 1 Tf -10 0 0 10 277.5888 91.48 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 283.5898 91.48 Tm -[( )-22726.7([Function])]TJ --12.1766 -1.8833 TD -0.08 Tw -(Returns a cursor object which has )Tj -/TT16 1 Tf -15.5845 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.08 Tw -[( as its image and the location \()]TJ -/TT16 1 Tf -13.9228 0 TD -0 Tw -(X,Y)Tj -/TT8 1 Tf -1.8003 0 TD -0.08 Tw -(\) as the hot)Tj --34.9082 -1.2944 TD -0.05 Tw -[(spot. If )]TJ -/TT16 1 Tf -3.7169 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.05 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 231.8865 62.88 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 279.8943 62.88 Tm -0.05 Tw -[(, it is used as the hot spot. If )]TJ -/TT16 1 Tf -13.2808 0 TD -0 Tw -(BITMAP)Tj -/TT8 1 Tf -3.6006 0 TD -0.05 Tw -[( has dimensions different)]TJ --28.6474 -1.3333 TD -0 Tw -(from )Tj -/TT10 1 Tf -10 0 0 10 196.2506 50.88 Tm -(CURSORWIDTH)Tj -/TT8 1 Tf -9 0 0 9 262.2614 50.88 Tm -0.0656 Tw -[( by )]TJ -/TT10 1 Tf -10 0 0 10 277.9258 50.88 Tm -0 Tw -(CURSORHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 349.9375 50.88 Tm -0.0656 Tw -(, the lesser of the widths and the lesser of the)Tj -ET -endstream -endobj -53 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -55 0 obj -<< -/Length 6301 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-13)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.54 Tm -0.03 Tw -(heights are used to determine the bits that actually get copied into the lower left corner of)Tj -0 -1.2278 TD -0.0878 Tw -[(the cursor. If )]TJ -/TT16 1 Tf -6.4649 0 TD -0 Tw -(X)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 202.0984 558.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 220.1013 558.49 Tm -0.0878 Tw -[(, 0 is used. If )]TJ -/TT16 1 Tf -6.5281 0 TD -0 Tw -(Y)Tj -/TT8 1 Tf -0.6001 0 TD -0.0878 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 296.769 558.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 314.7719 558.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 320.0619 558.49 Tm -(CURSORHEIGHT)Tj -/TT8 1 Tf -9 0 0 9 392.0736 558.49 Tm -0.0878 Tw -[(-1 is used. The default)]TJ --29.5637 -1.3278 TD -0.4444 Tw -(cursor is an uparrow with its tip in the upper left corner and its hot spot at)Tj -/TT10 1 Tf -10 0 0 10 126 535.49 Tm -0 Tw -(\(0,CURSORHEIGHT-1\))Tj -/TT8 1 Tf -9 0 0 9 234.0175 535.49 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 512.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 512.26 Tm -(CURSOR)Tj -/F3 1 Tf -10 0 0 10 140.4 512.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 143.18 512.26 Tm -(NEWCURSOR )Tj -/TT10 1 Tf -10 0 0 10 202.5896 512.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 208.5906 512.26 Tm -[( )-25726.6([Function])]TJ --9.1767 -1.8889 TD -0.4567 Tw -(Returns a )Tj -/TT10 1 Tf -10 0 0 10 174.5134 495.26 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 210.5193 495.26 Tm -0.4567 Tw -[( record instance that contains \(a copy of\) the current cursor)]TJ --9.391 -1.3333 TD -0.1322 Tw -[(specification. If )]TJ -/TT16 1 Tf -7.6183 0 TD -0 Tw -(NEWCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1322 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 264.4266 483.26 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 300.4325 483.26 Tm -0.1322 Tw -[( record instance, the cursor will be set to the)]TJ --19.3814 -1.3333 TD -0.1589 Tw -(values in )Tj -/TT16 1 Tf -4.5526 0 TD -0 Tw -(NEWCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1589 Tw -[(. If )]TJ -/TT16 1 Tf -2.1466 0 TD -0 Tw -(NEWCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.1589 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 297.3025 471.26 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 303.3034 471.26 Tm -0.1589 Tw -(, the cursor will be set to the default cursor)Tj -/TT10 1 Tf -10 0 0 10 126 449.76 Tm -0 Tw -(DEFAULTCURSOR)Tj -/TT8 1 Tf -9 0 0 9 204.0127 449.76 Tm -(, an upward left pointing arrow: )Tj -ET -q -8 0 0 -16 334.53 465.76 cm -/Im1 Do -Q -BT -9 0 0 9 342.52 449.76 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 102 426.53 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 426.53 Tm -(SETCURSOR)Tj -/F3 1 Tf -10 0 0 10 156.6 426.53 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 159.38 426.53 Tm -(NEWCURSOR)Tj -/F3 1 Tf -10 0 0 10 207.9879 426.53 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 210.7679 426.53 Tm -()Tj -/TT10 1 Tf -10 0 0 10 216.1688 426.53 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 222.1697 426.53 Tm -[( )-24217.8([Function])]TJ --10.6855 -1.8889 TD -(If )Tj -/TT16 1 Tf -1.1899 0 TD -(NEWCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.27 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 210.2908 409.53 Tm -0 Tw -(CURSOR)Tj -/TT8 1 Tf -9 0 0 9 246.2966 409.53 Tm -0.27 Tw -[( record instance, the cursor will be set to the values in)]TJ -/TT16 1 Tf --13.3663 -1.3278 TD -0 Tw -(NEWCURSOR)Tj -/TT8 1 Tf -5.4009 0 TD -0.2578 Tw -[(. This does not return the old cursor, and therefore, provides a way of)]TJ --5.4009 -1.2889 TD -0 Tw -(changing the cursor without using storage.)Tj -/TT10 1 Tf -10 0 0 10 102 364.93 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 364.93 Tm -(FLIPCURSOR)Tj -/TT10 1 Tf -10 0 0 10 162 364.93 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 168.001 364.93 Tm -[( )-30236.6([Function])]TJ --4.6668 -1.8833 TD -(Inverts the cursor.)Tj -0 -2 TD -0.0467 Tw -[(The following list describes the cursors used by the Interlisp-D system. Most of them are)]TJ -0 -1.2222 TD -0 Tw -(stored as the values of various variables.)Tj -ET -q -8 0 0 -16 154.01 307.43 cm -/Im1 Do -Q -BT -9 0 0 9 174 291.43 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 218.9385 291.43 Tm -(DEFAULTCURSOR)Tj -/TT8 1 Tf -9 0 0 9 296.9511 291.43 Tm -(. This is the default cursor.)Tj -ET -q -15 0 0 -16 147.01 278.93 cm -/Im2 Do -Q -BT -9 0 0 9 174 262.93 Tm -0.0556 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 219.9385 262.93 Tm -0 Tw -(WAITINGCURSOR)Tj -/TT8 1 Tf -9 0 0 9 297.9511 262.93 Tm -0.0555 Tw -[(. Represents an hourglass. Used during)]TJ --13.7724 -1.3278 TD -0 Tw -(long computations.)Tj -ET -q -13 0 0 -16 149.01 239.43 cm -/Im3 Do -Q -BT -9 0 0 9 174 223.43 Tm -0.2922 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 224.1985 223.43 Tm -0 Tw -(MOUSECONFIRMCURSOR)Tj -/TT8 1 Tf -9 0 0 9 332.216 223.43 Tm -0.2922 Tw -[(. Indicates that the system is)]TJ --17.5796 -1.3278 TD -0.1933 Tw -(waiting for the user to confirm an action by pressing the left mouse)Tj -0 -1.2222 TD -0.1367 Tw -[(button, or aborting the action by pressing any other button. Used by)]TJ -0 -1.2278 TD -0 Tw -(the function )Tj -/TT10 1 Tf -10 0 0 10 224.3481 189.43 Tm -(MOUSECONFIRM)Tj -/TT8 1 Tf -9 0 0 9 296.3598 189.43 Tm -( \(see Chapter 28\).)Tj -ET -q -14 0 0 -14 148.01 176.93 cm -/Im4 Do -Q -BT -9 0 0 9 174 162.93 Tm -0.1533 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 221.6985 162.93 Tm -0 Tw -(SYSOUTCURSOR)Tj -/TT8 1 Tf -9 0 0 9 293.7102 162.93 Tm -0.1533 Tw -[(. Indicates that the system is saving the)]TJ --13.3011 -1.3333 TD -0 Tw -(virtual memory in a sysout file. See )Tj -/TT10 1 Tf -10 0 0 10 318.8262 150.93 Tm -(SYSOUT)Tj -/TT8 1 Tf -9 0 0 9 354.832 150.93 Tm -(, Chapter 12.)Tj -ET -q -15 0 0 -13 147.01 138.43 cm -/Im5 Do -Q -BT -9 0 0 9 174 125.43 Tm -0.0511 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 219.8585 125.43 Tm -0 Tw -(SAVINGCURSOR)Tj -/TT8 1 Tf -9 0 0 9 291.8702 125.43 Tm -0.0511 Tw -[(. Indicates that )]TJ -/TT10 1 Tf -10 0 0 10 361.9324 125.43 Tm -0 Tw -(SAVEVM)Tj -/TT8 1 Tf -9 0 0 9 397.9383 125.43 Tm -0.0511 Tw -[( has been called)]TJ --24.882 -1.3278 TD -0.1178 Tw -(automatically to save the virtual memory state after the system is idle)Tj -0 -1.2278 TD -0 Tw -(for long enough. See )Tj -/TT10 1 Tf -10 0 0 10 260.2207 102.43 Tm -(SAVEVMWAIT)Tj -/TT8 1 Tf -9 0 0 9 320.2304 102.43 Tm -(, Chapter 12.)Tj -ET -q -15 0 0 -15 147.01 89.93 cm -/Im6 Do -Q -BT -9 0 0 9 174 74.93 Tm -0.0422 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 219.6985 74.93 Tm -0 Tw -(CROSSHAIRS)Tj -/TT8 1 Tf -9 0 0 9 279.7082 74.93 Tm -0.0422 Tw -[(. Used by )]TJ -/TT10 1 Tf -10 0 0 10 328.3461 74.93 Tm -0 Tw -(GETPOSITION)Tj -/TT8 1 Tf -9 0 0 9 394.3569 74.93 Tm -0.0422 Tw -[( \(see Chapter 28\))]TJ --24.4841 -1.3278 TD -0 Tw -(to indicate a position.)Tj -ET -endstream -endobj -56 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F3 25 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/XObject << -/Im1 57 0 R -/Im2 58 0 R -/Im3 59 0 R -/Im4 60 0 R -/Im5 61 0 R -/Im6 62 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -64 0 obj -<< -/Length 4721 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-14)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -ET -q -12 0 0 -12 198.01 575.99 cm -/Im7 Do -Q -BT -/TT8 1 Tf -9 0 0 9 222 563.99 Tm -0.0711 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 268.2184 563.99 Tm -0 Tw -(BOXCURSOR)Tj -/TT8 1 Tf -9 0 0 9 322.2272 563.99 Tm -0.0711 Tw -[(. Used by )]TJ -/TT10 1 Tf -10 0 0 10 372.4252 563.99 Tm -0 Tw -(GETBOXPOSITION)Tj -/TT8 1 Tf -9 0 0 9 456.4388 563.99 Tm -0.0711 Tw -[( \(see Chapter)]TJ --26.0488 -1.3278 TD -0 Tw -(28\) to indicate where to place the corner of a box.)Tj -ET -q -12 0 0 -16 198.01 540.49 cm -/Im8 Do -Q -BT -9 0 0 9 222 524.49 Tm -0.0889 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 268.5385 524.49 Tm -0 Tw -(FORCEPS)Tj -/TT8 1 Tf -9 0 0 9 310.5453 524.49 Tm -0.0889 Tw -[(. Used by )]TJ -/TT10 1 Tf -10 0 0 10 361.7032 524.49 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 415.712 524.49 Tm -0.0889 Tw -[( \(see Chapter 28\) when)]TJ --21.5236 -1.3278 TD -0 Tw -(the user switches corners.)Tj -ET -q -16 0 0 -14 194.01 500.99 cm -/Im9 Do -Q -BT -9 0 0 9 222 486.99 Tm -0.0422 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 267.6985 486.99 Tm -0 Tw -(EXPANDINGBOX)Tj -/TT8 1 Tf -9 0 0 9 339.7102 486.99 Tm -0.0422 Tw -[(. Used by )]TJ -/TT10 1 Tf -10 0 0 10 388.3481 486.99 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 442.3569 486.99 Tm -0.0422 Tw -[( \(see Chapter 28\))]TJ --24.4841 -1.3278 TD -0 Tw -(when a box is first displayed.)Tj -ET -q -13 0 0 -11 197.01 463.49 cm -/Im10 Do -Q -BT -9 0 0 9 222 452.49 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 452.49 Tm -(UpperRightCursor)Tj -/TT8 1 Tf -9 0 0 9 362.9541 452.49 Tm -(.)Tj -ET -q -11 0 0 -11 199.01 439.99 cm -/Im11 Do -Q -BT -9 0 0 9 222 428.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 428.99 Tm -(LowerRightCursor)Tj -/TT8 1 Tf -9 0 0 9 362.9541 428.99 Tm -(.)Tj -ET -q -13 0 0 -11 197.01 416.49 cm -/Im12 Do -Q -BT -9 0 0 9 222 405.49 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 405.49 Tm -(UpperLeftCursor)Tj -/TT8 1 Tf -9 0 0 9 356.9531 405.49 Tm -(.)Tj -ET -q -11 0 0 -11 199.01 392.99 cm -/Im13 Do -Q -BT -9 0 0 9 222 381.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 381.99 Tm -(LowerLeftCursor)Tj -/TT8 1 Tf -9 0 0 9 356.9531 381.99 Tm -(.)Tj --20.3281 -2.1111 TD -0.0644 Tw -(The previous four cursors are used by )Tj -/TT10 1 Tf -10 0 0 10 331.3764 362.99 Tm -0 Tw -(GETREGION)Tj -/TT8 1 Tf -9 0 0 9 385.3852 362.99 Tm -0.0644 Tw -[( \(see Chapter 28\) to indicate the four)]TJ --23.4872 -1.3278 TD -0 Tw -(corners of a region.)Tj -ET -q -13 0 0 -13 197.01 339.49 cm -/Im14 Do -Q -BT -9 0 0 9 222 326.49 Tm -0.2133 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 270.7785 326.49 Tm -0 Tw -(VertThumbCursor)Tj -/TT8 1 Tf -9 0 0 9 360.7931 326.49 Tm -0.2133 Tw -[(. Used during scrolling to indicate)]TJ --15.4215 -1.3278 TD -0 Tw -(thumbing in a vertical scroll bar.)Tj -ET -q -7 0 0 -16 203.01 302.99 cm -/Im15 Do -Q -BT -9 0 0 9 222 286.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 286.99 Tm -(VertScrollCursor)Tj -/TT8 1 Tf -9 0 0 9 362.9541 286.99 Tm -(.)Tj -ET -q -9 0 0 -16 201.01 274.49 cm -/Im16 Do -Q -BT -9 0 0 9 222 258.49 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 258.49 Tm -(ScrollUpCursor)Tj -/TT8 1 Tf -9 0 0 9 350.9521 258.49 Tm -(.)Tj -ET -q -9 0 0 -16 201.01 245.99 cm -/Im17 Do -Q -BT -9 0 0 9 222 229.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 229.99 Tm -(ScrollDownCursor)Tj -/TT8 1 Tf -9 0 0 9 362.9541 229.99 Tm -(.)Tj --20.9949 -2.1111 TD -0.2678 Tw -(The previous four cursors are used by )Tj -/TT10 1 Tf -10 0 0 10 344.1864 210.99 Tm -0 Tw -(SCROLL.HANDLER)Tj -/TT8 1 Tf -9 0 0 9 428.2 210.99 Tm -0.2678 Tw -[( \(see Chapter 28\) during)]TJ --28.2445 -1.3278 TD -0 Tw -(vertical scrolling.)Tj -ET -q -13 0 0 -13 197.01 187.49 cm -/Im18 Do -Q -BT -9 0 0 9 222 174.49 Tm -0.13 Tw -(In variable )Tj -/TT10 1 Tf -10 0 0 10 269.2785 174.49 Tm -0 Tw -(HorizThumbCursor)Tj -/TT8 1 Tf -9 0 0 9 365.2941 174.49 Tm -0.13 Tw -[(. Used during scrolling to indicate)]TJ --15.9216 -1.3278 TD -0 Tw -(thumbing in a horizontal scroll bar.)Tj -ET -q -15 0 0 -13 195.01 150.99 cm -/Im19 Do -Q -BT -9 0 0 9 222 137.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 137.99 Tm -(HorizScrollCursor)Tj -/TT8 1 Tf -9 0 0 9 368.955 137.99 Tm -(.)Tj -ET -q -16 0 0 -13 194.01 125.49 cm -/Im20 Do -Q -BT -9 0 0 9 222 112.49 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 112.49 Tm -(ScrollLeftCursor)Tj -/TT8 1 Tf -9 0 0 9 362.9541 112.49 Tm -(.)Tj -ET -q -16 0 0 -13 194.01 99.99 cm -/Im21 Do -Q -BT -9 0 0 9 222 86.99 Tm -(In variable )Tj -/TT10 1 Tf -10 0 0 10 266.9385 86.99 Tm -(ScrollRightCursor)Tj -/TT8 1 Tf -9 0 0 9 368.955 86.99 Tm -(.)Tj --21.6617 -2.1111 TD -0.2678 Tw -(The previous four cursors are used by )Tj -/TT10 1 Tf -10 0 0 10 344.1864 67.99 Tm -0 Tw -(SCROLL.HANDLER)Tj -/TT8 1 Tf -9 0 0 9 428.2 67.99 Tm -0.2678 Tw -[( \(see Chapter 28\) during)]TJ --28.2445 -1.3278 TD -0 Tw -(horizontal scrolling.)Tj -ET -endstream -endobj -65 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R ->> -/XObject << -/Im7 66 0 R -/Im8 67 0 R -/Im9 68 0 R -/Im10 69 0 R -/Im11 70 0 R -/Im12 71 0 R -/Im13 72 0 R -/Im14 73 0 R -/Im15 74 0 R -/Im16 75 0 R -/Im17 76 0 R -/Im18 77 0 R -/Im19 78 0 R -/Im20 79 0 R -/Im21 80 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -82 0 obj -<< -/Length 4690 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-15)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -ET -q -16 0 0 -15 93.51 575.99 cm -/Im22 Do -Q -BT -/TT8 1 Tf -9 0 0 9 109.5 560.99 Tm -(, )Tj -ET -q -12 0 0 -8 114.01 568.99 cm -/Im23 Do -Q -BT -9 0 0 9 126 560.99 Tm -(, )Tj -ET -q -12 0 0 -8 130.51 568.99 cm -/Im24 Do -Q -BT -9 0 0 9 142.5 560.99 Tm -(, )Tj -ET -q -15 0 0 -7 147.01 567.99 cm -/Im25 Do -Q -q -16 0 0 -7 105.01 542.4399 cm -/Im26 Do -Q -BT -9 0 0 9 121 535.4399 Tm -(, )Tj -ET -q -16 0 0 -7 125.51 542.4399 cm -/Im27 Do -Q -BT -9 0 0 9 141.5 535.4399 Tm -(, )Tj -ET -q -16 0 0 -14 146.01 549.4399 cm -/Im28 Do -Q -BT -9 0 0 9 174 535.4399 Tm -0.2878 Tw -[(These cursors are used by the Teleraid low-level debugger. These)]TJ -0 -1.2222 TD -0 Tw -(cursors are not accessable as standard Interlisp-D cursors.)Tj -/TT4 1 Tf -10 0 0 10 78 497.1 Tm -(Flashing Bars on the Cursor)Tj -/TT8 1 Tf -9 0 0 9 78 473.44 Tm -0.0456 Tw -(The low-level Interlisp-D system uses the cursor to display certain system status information, such as)Tj -T* -0.0967 Tw -[(garbage collection or swapping. This is done because changing the cursor image is very quick, and)]TJ -T* -0.0344 Tw -[(does not require interacting with the window system. Interlisp inverts horizontal bars on the cursor)]TJ -T* -0.0422 Tw -[(when the system is swapping pages, or doing certain stack operations. Normally, these bars are only)]TJ -T* -0.3033 Tw -[(inverted for a very short time, so they look like they are flashing. These cursor changes are)]TJ -T* -0 Tw -(interpreted as follows:)Tj -0.2233 -3.0611 TD -(Inverted cursor: )Tj -ET -q -16 0 0 -16 146.01 406.89 cm -/Im29 Do -Q -BT -9 0 0 9 174 390.89 Tm -0.1867 Tw -(Whatever image is being displayed as the cursor, whenever Interlisp)Tj -0 -1.2222 TD -0 Tw -(does a garbage collection, the whole cursor is inverted.)Tj --7.07 -3.0611 TD -(Top bar: )Tj -ET -q -16 0 0 -16 146.01 368.34 cm -/Im30 Do -Q -BT -9 0 0 9 174 352.34 Tm -0.1044 Tw -[(Swap read. On when Interlisp is swapping in a page from the virtual)]TJ -0 -1.2222 TD -0.0422 Tw -[(memory file into the real memory. It is also on when Interlisp allocates)]TJ -T* -0.1611 Tw -(a new virtual memory page, even though that doesnt involve a disk)Tj -T* -0.01 Tw -[(read. If this is flashing a lot, the system is doing a lot of swapping. This)]TJ -T* -0.0533 Tw -(is an indication that the virtual memory working set is fragmented \(see)Tj -T* -0.3189 Tw -[(Chapter 22\). Performance may be improved by reloading a clean)]TJ -T* -0 Tw -(Interlisp system.)Tj --11.5811 -3.0611 TD -(Upper middle bar: )Tj -ET -q -16 0 0 -16 146.01 274.79 cm -/Im31 Do -Q -BT -9 0 0 9 174 258.79 Tm -0.0156 Tw -[(Stack operations. If this is flashing a lot, it suggests that some process is)]TJ -0 -1.2222 TD -0 Tw -(neglecting to release stack pointers in a timely fashion \(see Chapter 11\).)Tj --13.2367 -3.0611 TD -(Lowereler middle bar: )Tj -ET -q -16 0 0 -16 146.01 236.24 cm -/Im32 Do -Q -BT -9 0 0 9 174 220.24 Tm -0.0811 Tw -[(Stack operations. On when Interlisp is moving frames on the stack. If)]TJ -0 -1.2278 TD -0.0544 Tw -(the system is slow, and this is flashing a lot, )Tj -/TT10 1 Tf -10 0 0 10 354.7735 209.19 Tm -0 Tw -(HARDRESET)Tj -/TT8 1 Tf -9 0 0 9 408.7823 209.19 Tm -0.0544 Tw -[( \(see Chapter)]TJ --26.0869 -1.3278 TD -0 Tw -(23\) sometimes helps.)Tj --8.5467 -3.0611 TD -(Bottom bar: )Tj -ET -q -16 0 0 -16 146.01 185.69 cm -/Im33 Do -Q -BT -9 0 0 9 174 169.69 Tm -0.2144 Tw -[(Swap write. On when Interlisp writes a dirty virtual memory page)]TJ -0 -1.2222 TD -0 Tw -(from the real memory back into the virtual memory file.)Tj -/TT4 1 Tf -10 0 0 10 78 131.35 Tm -(Cursor Position)Tj -/TT8 1 Tf -9 0 0 9 78 107.69 Tm -0.1489 Tw -(The position at which the cursor bitmap is being displayed can be read or set using the following)Tj -T* -0 Tw -(functions:)Tj -/TT10 1 Tf -10 0 0 10 102 74.41 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 74.41 Tm -(CURSORPOSITION)Tj -/F1 1 Tf -10 0 0 10 183.6 74.41 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 186.38 74.41 Tm -(NEWPOSITION DISPLAYSTREAM OLDPOSITION)Tj -/TT10 1 Tf -10 0 0 10 386.2125 74.41 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 392.2135 74.41 Tm -[( )-5324.1([Function])]TJ --29.5793 -1.8833 TD -0.1444 Tw -(Returns the location of the cursor in the coordinate system of )Tj -/TT16 1 Tf -28.7525 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.1444 Tw -[( \(or the)]TJ --36.5537 -1.2944 TD -0.2189 Tw -(current display stream, if )Tj -/TT16 1 Tf -12.2545 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.2189 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 321.3752 45.81 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 339.3781 45.81 Tm -0.2189 Tw -[(\). If )]TJ -/TT16 1 Tf -2.6596 0 TD -0 Tw -(NEWPOSITION)Tj -/TT8 1 Tf -6.6011 0 TD -0.2189 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 455.9844 45.81 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 473.9874 45.81 Tm -0.2189 Tw -(, it)Tj -ET -endstream -endobj -83 0 obj -<< -/ProcSet [/PDF /Text /ImageB ] -/Font << -/F1 15 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/XObject << -/Im22 84 0 R -/Im23 85 0 R -/Im24 86 0 R -/Im25 87 0 R -/Im26 88 0 R -/Im27 89 0 R -/Im28 90 0 R -/Im29 91 0 R -/Im30 92 0 R -/Im31 93 0 R -/Im32 94 0 R -/Im33 95 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -97 0 obj -<< -/Length 8216 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-16)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.0022 Tw -(should be a position and the cursor will be positioned at )Tj -/TT16 1 Tf -25.1192 0 TD -0 Tw -(NEWPOSITION)Tj -/TT8 1 Tf -6.6011 0 TD -0.0004 Tc -0.0018 Tw -(. If )Tj -/TT16 1 Tf -1.6766 0 TD -0 Tc -0 Tw -(NEWPOSITION)Tj -/TT8 1 Tf --33.3968 -1.2944 TD -(is )Tj -/TT10 1 Tf -10 0 0 10 182.6836 557.89 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 200.6865 557.89 Tm -(, the current position is simple returned.)Tj --2.9652 -2.1056 TD -0.0933 Tw -[( The current position of the cursor is the position of the "hot spot" of the cursor, not the)]TJ -0 -1.2222 TD -0 Tw -(position of the cursor bitmap.)Tj -0 -2.0056 TD -(If )Tj -/TT16 1 Tf -1.1821 0 TD -(OLDPOSITION)Tj -/TT8 1 Tf -6.6011 0 TD -0.2622 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 268.8126 509.89 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 316.8203 509.89 Tm -0.2622 Tw -[( object, this object will be changed to point to the)]TJ --15.8689 -1.3333 TD -0.1989 Tw -(location of the cursor and returned, rather of allocating a new )Tj -/TT10 1 Tf -10 0 0 10 440.6495 497.89 Tm -0 Tw -(POSITION)Tj -/TT8 1 Tf -9 0 0 9 488.6573 497.89 Tm -0.1989 Tw -[(. This can)]TJ --34.9619 -1.3333 TD -0 Tw -(improve performance if )Tj -/TT10 1 Tf -10 0 0 10 270.9346 485.89 Tm -(CURSORPOSITION)Tj -/TT8 1 Tf -9 0 0 9 354.9482 485.89 Tm -( is called repeatedly to track the cursor. )Tj --20.1054 -2.1056 TD -0.3078 Tw -[( To get the location of the cursor in absolute screen coordinates, use the variables)]TJ -/TT10 1 Tf -10 0 0 10 174 455.89 Tm -0 Tw -(LASTMOUSEX)Tj -/TT8 1 Tf -9 0 0 9 234.0097 455.89 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 253.7456 455.89 Tm -(LASTMOUSEY)Tj -/TT8 1 Tf -9 0 0 9 313.7553 455.89 Tm -(.)Tj -/TT10 1 Tf -10 0 0 10 150 432.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 432.66 Tm -(ADJUSTCURSORPOSITION)Tj -/F1 1 Tf -10 0 0 10 264 432.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 266.78 432.66 Tm -(DELTAX DELTAY)Tj -/TT10 1 Tf -10 0 0 10 336.9914 432.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 342.9924 432.66 Tm -[( )-16126.4([Function])]TJ --18.7769 -1.8889 TD -0.0422 Tw -(Moves the cursor )Tj -/TT16 1 Tf -8.03 0 TD -0 Tw -(DELTAX)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[( points in the )]TJ -/TT10 1 Tf -10 0 0 10 334.4676 415.66 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 340.4686 415.66 Tm -0.0422 Tw -[( direction and )]TJ -/TT16 1 Tf -6.5344 0 TD -0 Tw -(DELTAY)Tj -/TT8 1 Tf -3.6006 0 TD -0.0422 Tw -[( points in the )]TJ -/TT10 1 Tf -10 0 0 10 487.4758 415.66 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 493.4767 415.66 Tm -0.0422 Tw -[( direction.)]TJ -/TT16 1 Tf --35.4974 -1.3278 TD -0 Tw -(DELTAX)Tj -/TT8 1 Tf -3.6006 0 TD -( and )Tj -/TT16 1 Tf -2.1929 0 TD -(DELTAY)Tj -/TT8 1 Tf -3.6006 0 TD -( default to 0.)Tj -/TT4 1 Tf -10 0 0 10 126 375.77 Tm -(Mouse Button Testing)Tj -/TT8 1 Tf -9 0 0 9 126 352.11 Tm -0.1078 Tw -[(There are two or three keys on the mouse. These keys \(also called buttons\) are referred to by their)]TJ -0 -1.2278 TD -0 Tw -(location: )Tj -/TT10 1 Tf -10 0 0 10 163.9929 341.06 Tm -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 187.9968 341.06 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 194.2568 341.06 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 230.2626 341.06 Tm -0.1956 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 249.0009 341.06 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 279.0058 341.06 Tm -0.1955 Tw -[(. The following macros are provided to test the state of the)]TJ --17.0006 -1.3278 TD -0 Tw -(mouse buttons:)Tj -/TT10 1 Tf -10 0 0 10 150 306.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 306.83 Tm -(MOUSESTATE)Tj -/F3 1 Tf -10 0 0 10 210 306.83 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 212.78 306.83 Tm -(BUTTONFORM)Tj -/TT10 1 Tf -10 0 0 10 266.7888 306.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 272.7897 306.83 Tm -[( )-25025.6([Macro])]TJ --10.9766 -1.8889 TD -0.3478 Tw -(Reads the state of the mouse buttons, and returns )Tj -/TT10 1 Tf -10 0 0 10 400.9083 289.83 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 406.9092 289.83 Tm -0.3478 Tw -[( if that state is described by)]TJ -/TT16 1 Tf --25.8788 -1.3333 TD -0 Tw -(BUTTONFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.0289 Tw -(. )Tj -/TT16 1 Tf -0.8078 0 TD -0 Tw -(BUTTONFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.0289 Tw -[( can be one of the key indicators )]TJ -/TT10 1 Tf -10 0 0 10 421.2567 277.83 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 445.2607 277.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 450.0206 277.83 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 486.0265 277.83 Tm -0.0289 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 501.7648 277.83 Tm -0 Tw -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 531.7697 277.83 Tm -(;)Tj --39.7522 -1.3333 TD -0.0633 Tw -(the atom )Tj -/TT10 1 Tf -10 0 0 10 212.4188 265.83 Tm -0 Tw -(UP)Tj -/TT8 1 Tf -9 0 0 9 224.4207 265.83 Tm -0.0633 Tw -[( \(indicating all keys are up\); the form )]TJ -/TT10 1 Tf -10 0 0 10 378.4651 265.83 Tm -0.153 Tw -(\(ONLY KEY\))Tj -/TT8 1 Tf -9 0 0 9 440.0049 265.83 Tm -0.0633 Tw -(; or a form of )Tj -/TT10 1 Tf -10 0 0 10 496.6439 265.83 Tm -0 Tw -(AND)Tj -/TT8 1 Tf -9 0 0 9 514.6469 265.83 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 519.7169 265.83 Tm -(OR)Tj -/TT8 1 Tf -9 0 0 9 531.7188 265.83 Tm -(,)Tj --39.7465 -1.3333 TD -(or )Tj -/TT10 1 Tf -10 0 0 10 184.7182 253.83 Tm -(NOT)Tj -/TT8 1 Tf -9 0 0 9 202.7212 253.83 Tm -( applied to any valid button form.)Tj --3.1912 -2.1111 TD -0.1889 Tw -(For example: )Tj -/TT10 1 Tf -10 0 0 10 231.3648 234.83 Tm -0.455 Tw -(\(MOUSESTATE LEFT\))Tj -/TT8 1 Tf -9 0 0 9 337.9314 234.83 Tm -0.1889 Tw -[( will be true if the left mouse button is down.)]TJ -/TT10 1 Tf -10 0 0 10 174 222.83 Tm -0.202 Tw -(\(MOUSESTATE \(ONLY LEFT\)\))Tj -/TT8 1 Tf -9 0 0 9 322.0634 222.83 Tm -0.0844 Tw -[( will be true if the left mouse button is the only one)]TJ --16.4515 -1.3333 TD -0.0533 Tw -(down. )Tj -/TT10 1 Tf -10 0 0 10 204.8648 210.83 Tm -0.129 Tw -(\(MOUSESTATE \(OR \(NOT LEFT\) MIDDLE\)\))Tj -/TT8 1 Tf -9 0 0 9 420.0589 210.83 Tm -0.0533 Tw -[( will be true if either the left)]TJ --27.3399 -1.3278 TD -0 Tw -(mouse button is up or the middle mouse button is down.)Tj -/TT10 1 Tf -10 0 0 10 150 176.6 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 176.6 Tm -(LASTMOUSESTATE)Tj -/F3 1 Tf -10 0 0 10 231.6 176.6 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 234.38 176.6 Tm -(BUTTONFORM)Tj -/TT10 1 Tf -10 0 0 10 288.3888 176.6 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 294.3897 176.6 Tm -[( )-22625.6([Macro])]TJ --13.3766 -1.8889 TD -0.1656 Tw -(Similar to )Tj -/TT10 1 Tf -10 0 0 10 217.9106 159.6 Tm -0 Tw -(MOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 277.9204 159.6 Tm -0.1656 Tw -(, but tests the value of )Tj -/TT10 1 Tf -10 0 0 10 376.1002 159.6 Tm -0 Tw -(LASTMOUSEBUTTONS)Tj -/TT8 1 Tf -9 0 0 9 472.1158 159.6 Tm -0.1656 Tw -[( \(below\) rather)]TJ --33.124 -1.3278 TD -0.37 Tw -[(than getting the current state. This is useful for determining which keys caused)]TJ -/TT10 1 Tf -10 0 0 10 174 136.6 Tm -0 Tw -(MOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 234.0097 136.6 Tm -( to be true.)Tj -/TT10 1 Tf -10 0 0 10 150 113.37 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 113.37 Tm -(UNTILMOUSESTATE)Tj -/F3 1 Tf -10 0 0 10 237 113.37 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 239.78 113.37 Tm -(BUTTONFORM INTERVAL)Tj -/TT10 1 Tf -10 0 0 10 342.3967 113.37 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 348.3977 113.37 Tm -[( )-16624.7([Macro])]TJ -/TT16 1 Tf --19.3775 -1.8889 TD -(BUTTONFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.0644 Tw -[( is as described in )]TJ -/TT10 1 Tf -10 0 0 10 303.3438 96.37 Tm -0 Tw -(MOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 363.3536 96.37 Tm -0.0644 Tw -[(. Waits until )]TJ -/TT16 1 Tf -6.1421 0 TD -0 Tw -(BUTTONFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.0644 Tw -[( is true or until)]TJ -/TT16 1 Tf --33.1823 -1.3333 TD -0 Tw -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -0.3756 Tw -[( milliseconds have elapsed. The value of )]TJ -/TT10 1 Tf -10 0 0 10 409.0156 84.37 Tm -0 Tw -(UNTILMOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 499.0302 84.37 Tm -0.3756 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 516.7238 84.37 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 522.7248 84.37 Tm -0.3756 Tw -[( if)]TJ -/TT16 1 Tf --38.7472 -1.3333 TD -0 Tw -(BUTTONFORM)Tj -/TT8 1 Tf -6.001 0 TD -0.12 Tw -[( was satisfied before it timed out, otherwise )]TJ -/TT10 1 Tf -10 0 0 10 412.2367 72.37 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 430.2396 72.37 Tm -0.12 Tw -[(. If )]TJ -/TT16 1 Tf -2.0299 0 TD -0 Tw -(INTERVAL)Tj -/TT8 1 Tf -4.8008 0 TD -0.12 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 504.8095 72.37 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 522.8124 72.37 Tm -0.12 Tw -(, it)Tj --38.7569 -1.3333 TD -0.1078 Tw -[(waits indefinitely. This compiles into an open loop that calls the )]TJ -/TT10 1 Tf -10 0 0 10 443.9022 60.37 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 461.9051 60.37 Tm -0.1078 Tw -[( wait background)]TJ -ET -endstream -endobj -98 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -100 0 obj -<< -/Length 5149 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-17)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.2878 Tw -[(function. This form should not be used inside the )]TJ -/TT10 1 Tf -10 0 0 10 352.1324 569.49 Tm -0 Tw -(TTY)Tj -/TT8 1 Tf -9 0 0 9 370.1353 569.49 Tm -0.2878 Tw -[( wait background function.)]TJ -/TT10 1 Tf -10 0 0 10 126 557.49 Tm -0 Tw -(UNTILMOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 216.0146 557.49 Tm -( does not use any storage during its wait loop.)Tj -/TT4 1 Tf -10 0 0 10 78 529.2 Tm -(Low Level Mouse Functions)Tj -/TT8 1 Tf -9 0 0 9 78 505.54 Tm -0.1778 Tw -(This section describes the functions and variables that provide low level access to the mouse and)Tj -0 -1.2222 TD -0 Tw -(cursor.)Tj -/TT10 1 Tf -10 0 0 10 102 472.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 472.26 Tm -(LASTMOUSEX)Tj -/F1 1 Tf -10 0 0 10 162 472.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 164.78 472.26 Tm -(DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 234.9914 472.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.9924 472.26 Tm -[( )-22126.4([Function])]TJ --12.7769 -1.8889 TD -0.0667 Tw -(Returns the value of the cursors )Tj -/TT10 1 Tf -10 0 0 10 260.7899 455.26 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 266.7909 455.26 Tm -0.0667 Tw -[( position in the coordinates of )]TJ -/TT16 1 Tf -13.7897 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0667 Tw -[( \(as of)]TJ --37.2344 -1.3333 TD -0 Tw -(the last call to )Tj -/TT10 1 Tf -10 0 0 10 182.9355 443.26 Tm -(GETMOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 260.9482 443.26 Tm -(, below\).)Tj -/TT10 1 Tf -10 0 0 10 102 420.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 420.03 Tm -(LASTMOUSEY)Tj -/F1 1 Tf -10 0 0 10 162 420.03 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 164.78 420.03 Tm -(DISPLAYSTREAM)Tj -/TT10 1 Tf -10 0 0 10 234.9914 420.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 240.9924 420.03 Tm -[( )-22126.4([Function])]TJ --12.7769 -1.8889 TD -0.0667 Tw -(Returns the value of the cursors )Tj -/TT10 1 Tf -10 0 0 10 260.7899 403.03 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 266.7909 403.03 Tm -0.0667 Tw -[( position in the coordinates of )]TJ -/TT16 1 Tf -13.7897 0 TD -0 Tw -(DISPLAYSTREAM)Tj -/TT8 1 Tf -7.8013 0 TD -0.0667 Tw -[( \(as of)]TJ --37.2344 -1.3333 TD -0 Tw -(the last call to )Tj -/TT10 1 Tf -10 0 0 10 182.9355 391.03 Tm -(GETMOUSESTATE)Tj -/TT8 1 Tf -9 0 0 9 260.9482 391.03 Tm -(, below\).)Tj -/TT12 1 Tf --17.6609 -2.4389 TD -(LASTMOUSEX)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.85 TD -0.1 Tw -(Value is the )Tj -/TT10 1 Tf -10 0 0 10 177.7254 352.43 Tm -0 Tw -(X)Tj -/TT8 1 Tf -9 0 0 9 183.7263 352.43 Tm -0.1 Tw -[( position of the cursor in absolute screen coordinates \(as of the last call to)]TJ -/TT10 1 Tf --6.414 -1.3278 TD -0 Tw -(GETMOUSESTATE)Tj -/TT8 1 Tf -7.8013 0 TD -(, below\).)Tj -/TT12 1 Tf --10.4679 -2.4 TD -(LASTMOUSEY)Tj -/TT8 1 Tf -6 0 TD -[( )-31767.8([Variable])]TJ --3.3333 -1.85 TD -0.1 Tw -(Value is the )Tj -/TT10 1 Tf -10 0 0 10 177.7254 302.23 Tm -0 Tw -(Y)Tj -/TT8 1 Tf -9 0 0 9 183.7263 302.23 Tm -0.1 Tw -[( position of the cursor in absolute screen coordinates \(as of the last call to)]TJ -/TT10 1 Tf --6.414 -1.3278 TD -0 Tw -(GETMOUSESTATE)Tj -/TT8 1 Tf -7.8013 0 TD -(, below\).)Tj -/TT12 1 Tf --10.4679 -2.4 TD -(LASTMOUSEBUTTONS)Tj -/TT8 1 Tf -9.6 0 TD -[( )-28167.8([Variable])]TJ --6.9333 -1.8444 TD -0.0367 Tw -(Value is an integer that has bits on corresponding to the mouse buttons that are down \(as)Tj -0 -1.2222 TD -0.0144 Tw -(of the last call to )Tj -/TT10 1 Tf -7.5273 0 TD -0 Tw -(GETMOUSESTATE)Tj -/TT8 1 Tf -7.8013 0 TD -0.0144 Tw -[(, below\). Bit 4Q is the left mouse button, 2Q is the right)]TJ --15.3286 -1.2889 TD -0 Tw -(button, 1Q is the middle button.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(LASTKEYBOARD)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -0.0211 Tw -(Value is an integer encoding the state of certain keys on the keyboard \(as of the last call to)Tj -/TT10 1 Tf -0 -1.2222 TD -0 Tw -(GETMOUSESTATE)Tj -/TT8 1 Tf -7.8013 0 TD -0.0489 Tw -[(, below\). Bit 200Q = lock, 100Q = left shift, 40Q = ctrl, 10Q = right shift,)]TJ --7.8013 -1.2889 TD -0.2411 Tw -[(4Q = blank Bottom, 2Q = blank Middle, 1Q = blank Top. If the key is down, the)]TJ -0 -1.2222 TD -0 Tw -(corresponding bit is on.)Tj -/TT10 1 Tf -10 0 0 10 102 137.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 137.23 Tm -(GETMOUSESTATE)Tj -/TT10 1 Tf -10 0 0 10 178.2 137.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 184.201 137.23 Tm -[( )-28436.6([Function])]TJ --6.4668 -1.8833 TD -0.1011 Tw -(Reads the current state of the mouse and sets the variables )Tj -/TT10 1 Tf -27.142 0 TD -0 Tw -(LASTMOUSEX)Tj -/TT8 1 Tf -6.001 0 TD -(, )Tj -/TT10 1 Tf -0.6011 0 TD -(LASTMOUSEY)Tj -/TT8 1 Tf -6.001 0 TD -(,)Tj --39.7451 -1.2889 TD -(and )Tj -/TT10 1 Tf -2.0818 0 TD -(LASTMOUSEBUTTONS)Tj -/TT8 1 Tf -9.6016 0 TD -0.1389 Tw -[(. In polling mode, the program must remember the previous)]TJ --11.6833 -1.2889 TD -0.0333 Tw -(state and look for changes, such as a key going up or down, or the cursor moving outside)Tj -0 -1.2222 TD -0 Tw -(a region of interest.)Tj -/TT10 1 Tf -10 0 0 10 102 63.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 63.8 Tm -(DECODEBUTTONS)Tj -/F3 1 Tf -10 0 0 10 178.2 63.8 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 180.98 63.8 Tm -(BUTTONSTATE)Tj -/TT10 1 Tf -10 0 0 10 240.3896 63.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 246.3906 63.8 Tm -[( )-21526.6([Function])]TJ -ET -endstream -endobj -101 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F1 15 0 R -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -103 0 obj -<< -/Length 4908 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-18)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -0.3244 Tw -(Returns a list of the mouse buttons that are down in the state )Tj -/TT16 1 Tf -31.3345 0 TD -0 Tw -(BUTTONSTATE)Tj -/TT8 1 Tf -6.6011 0 TD -0.3244 Tw -[(. If)]TJ -/TT16 1 Tf --37.9355 -1.2889 TD -0 Tw -(BUTTONSTATE)Tj -/TT8 1 Tf -6.6011 0 TD -0.1078 Tw -[( is not a small integer, the value of )]TJ -/TT10 1 Tf -16.3401 0 TD -0 Tw -(LASTMOUSEBUTTONS)Tj -/TT8 1 Tf -9.6016 0 TD -0.1078 Tw -[( \(above\) is used.)]TJ --32.5428 -1.2889 TD -0 Tw -(The button names that can be returned are: )Tj -/TT10 1 Tf -19.2647 0 TD -(LEFT)Tj -/TT8 1 Tf -2.4004 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(MIDDLE)Tj -/TT8 1 Tf -3.6006 0 TD -(, )Tj -/TT10 1 Tf -0.5 0 TD -(RIGHT)Tj -/TT8 1 Tf -3.0005 0 TD -( \(the three mouse keys\).)Tj -/TT4 1 Tf -10 0 0 10 102 503.4 Tm -(Keyboard Interpretation)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 500.69 m -606.01 500.69 l -S -BT -/TT8 1 Tf -9 0 0 9 126 478.74 Tm -0.0889 Tw -(For each key on the keyboard and mouse there is a corresponding bit in memory that the hardware)Tj -0 -1.2222 TD -0.0989 Tw -[(turns on and off as the key moves up and down. System-level routines decode the meaning of key)]TJ -T* -0.0378 Tw -(transitions according to a table of "key actions", which may be to put particular character codes in the)Tj -T* -0.0056 Tw -(sysbuffer, cause interrupts, change the internal shift/control status, or create events to be placed in the)Tj -T* -0 Tw -(mouse buffer.)Tj -/TT10 1 Tf -10 0 0 10 150 412.46 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 412.46 Tm -(KEYDOWNP)Tj -/F3 1 Tf -10 0 0 10 199.2 412.46 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 201.98 412.46 Tm -(KEYNAME)Tj -/TT10 1 Tf -10 0 0 10 239.7861 412.46 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 245.7871 412.46 Tm -[( )-26927([Function])]TJ --7.9763 -1.8833 TD -0.1689 Tw -(Used to read the instantaneous state of any key, independent of any buffering or pre-)Tj -0 -1.2278 TD -0.1256 Tw -[(assigned key action. Returns )]TJ -/TT10 1 Tf -10 0 0 10 297.7662 384.46 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 303.7672 384.46 Tm -0.1256 Tw -[( if the key named )]TJ -/TT16 1 Tf -8.535 0 TD -0 Tw -(KEYNAME)Tj -/TT8 1 Tf -4.2007 0 TD -0.1256 Tw -[( is down at the moment the)]TJ --27.1543 -1.3278 TD -0 Tw -(function is executed.)Tj -0 -2.0056 TD -0.0489 Tw -[(Most keys are named by the characters on the key-top. Therefore, )]TJ -/TT10 1 Tf -10 0 0 10 443.7385 354.46 Tm -0.116 Tw -(\(KEYDOWNP a\))Tj -/TT8 1 Tf -9 0 0 9 522.9112 354.46 Tm -0.0489 Tw -[( or)]TJ -/TT10 1 Tf -10 0 0 10 174 342.46 Tm -0 Tw -(\(KEYDOWNP A\))Tj -/TT8 1 Tf -9 0 0 9 252.0127 342.46 Tm -( returns )Tj -/TT10 1 Tf -10 0 0 10 285.3496 342.46 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 291.3506 342.46 Tm -( if the "A" key is down.)Tj --13.039 -2.1056 TD -0.0355 Tw -[(There are a number of keys that do not have standard names printed on them. These can)]TJ -0 -1.2222 TD -0 Tw -(be accessed by special names as follows:)Tj -8.7844 -2.0056 TD -(Space)Tj -/TT10 1 Tf -10 0 0 10 288 294.46 Tm -(SPACE)Tj -/TT8 1 Tf -9 0 0 9 214.29 275.46 Tm -(Carriage return)Tj -/TT10 1 Tf -10 0 0 10 288 275.46 Tm -(CR)Tj -/TT8 1 Tf -9 0 0 9 238.21 256.46 Tm -(Line-feed)Tj -/TT10 1 Tf -10 0 0 10 288 256.46 Tm -(LF)Tj -/TT8 1 Tf -9 0 0 9 234.96 237.46 Tm -(Backspace)Tj -/TT10 1 Tf -10 0 0 10 288 237.46 Tm -(BS)Tj -/TT8 1 Tf -9 0 0 9 261 218.46 Tm -(Tab)Tj -/TT10 1 Tf -10 0 0 10 288 218.46 Tm -(TAB)Tj -/TT8 1 Tf -9 0 0 9 200.11 199.51 Tm -0.2367 Tw -[(Blank )236.7(keys )236.7(on )236.7(1132)-1332.4(The 1132 keyboard has three unmarked keys on the)]TJ -9.7656 -1.2222 TD -0.0056 Tw -[(right of the normal keyboard. These can be accessed by)]TJ -/TT10 1 Tf -10 0 0 10 288 177.46 Tm -0 Tw -(BLANK-BOTTOM)Tj -/TT8 1 Tf -9 0 0 9 360.0117 177.46 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 369.6817 177.46 Tm -(BLANK-MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 441.6934 177.46 Tm -0.5744 Tw -(, and )Tj -/TT10 1 Tf -10 0 0 10 474.0192 177.46 Tm -0 Tw -(BLANK-)Tj --18.6019 -1.2 TD -(TOP)Tj -/TT8 1 Tf -9 0 0 9 306.0029 165.46 Tm -(.)Tj --6.3937 -2.1111 TD -(Escape)Tj -/TT10 1 Tf -10 0 0 10 288 146.46 Tm -(ESCAPE)Tj -/TT8 1 Tf -9 0 0 9 237.11 127.46 Tm -(Shift keys)Tj -/TT10 1 Tf -10 0 0 10 288 127.46 Tm -(LSHIFT)Tj -/TT8 1 Tf -9 0 0 9 324.0058 127.46 Tm -0.1911 Tw -[( for the left shift key, )]TJ -/TT10 1 Tf -10 0 0 10 418.8151 127.46 Tm -0 Tw -(RSHIFT)Tj -/TT8 1 Tf -9 0 0 9 454.8209 127.46 Tm -0.1911 Tw -[( for the right)]TJ --18.5357 -1.3278 TD -0 Tw -(shift key.)Tj --7.3167 -2.0056 TD -(Shift lock key)Tj -/TT10 1 Tf -10 0 0 10 288 97.46 Tm -(LOCK)Tj -/TT8 1 Tf -9 0 0 9 228.89 78.46 Tm -(Control key)Tj -/TT10 1 Tf -10 0 0 10 288 78.46 Tm -(CTRL)Tj -/TT8 1 Tf -9 0 0 9 216.53 59.51 Tm -0.1444 Tw -[(Mouse )144.4(buttons)-1333.2(The state of the mouse buttons can be accessed using)]TJ -/TT10 1 Tf -10 0 0 10 288 48.46 Tm -0 Tw -(LEFT)Tj -/TT8 1 Tf -9 0 0 9 312.0039 48.46 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 316.5039 48.46 Tm -(MIDDLE)Tj -/TT8 1 Tf -9 0 0 9 352.5097 48.46 Tm -(, and )Tj -/TT10 1 Tf -10 0 0 10 374.4956 48.46 Tm -(RIGHT)Tj -/TT8 1 Tf -9 0 0 9 404.5005 48.46 Tm -(.)Tj -ET -endstream -endobj -104 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -106 0 obj -<< -/Length 7494 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-19)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -(If )Tj -/TT10 1 Tf -10 0 0 10 134.7193 569.49 Tm -(KEYNAME)Tj -/TT8 1 Tf -9 0 0 9 176.7261 569.49 Tm -0.0489 Tw -[( is a small integer, it is taken to be the internal key number. Otherwise, it is)]TJ --5.6362 -1.3278 TD -0.0522 Tw -[(taken to be the name of the key. This means, for example, that the name of the "6" key is)]TJ -0 -1.2222 TD -0.1089 Tw -[(not the number 6. Instead, spelled-out names for all the digit keys have been assigned.)]TJ -0 -1.2278 TD -0.0356 Tw -(The "6" key is named )Tj -/TT10 1 Tf -10 0 0 10 213.3417 535.49 Tm -0 Tw -(SIX)Tj -/TT8 1 Tf -9 0 0 9 231.3446 535.49 Tm -0.0356 Tw -[(. It happens that the key number of the "6" key is 2. Therefore,)]TJ --11.705 -1.3278 TD -0 Tw -(the following two forms are equivalent:)Tj -/TT10 1 Tf -10 0 0 10 162 505.49 Tm -(\(KEYDOWNP SIX\))Tj -0 -1.9 TD -(\(KEYDOWNP 2\))Tj --6 -4.123 TD -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 445.26 Tm -(SHIFTDOWNP)Tj -/F2 1 Tf -10 0 0 10 162 445.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 164.87 445.26 Tm -(SHIFT)Tj -/TT10 1 Tf -10 0 0 10 191.8744 445.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 197.8753 445.26 Tm -[( )-26917.2([Function])]TJ --7.9862 -1.8889 TD -(Returns )Tj -/TT10 1 Tf -10 0 0 10 159.5434 428.26 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 165.5444 428.26 Tm -( if the internal "shift" flag specified by )Tj -/TT16 1 Tf -16.898 0 TD -(SHIFT)Tj -/TT8 1 Tf -3.0005 0 TD -( is on; )Tj -/TT10 1 Tf -10 0 0 10 370.2153 428.26 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 388.2183 428.26 Tm -( otherwise.)Tj --29.1354 -2.1111 TD -(If )Tj -/TT16 1 Tf -0.9266 0 TD -(SHIFT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0067 Tw -[( = )]TJ -/TT10 1 Tf -10 0 0 10 171.4173 409.26 Tm -0 Tw -(1SHIFT)Tj -/TT8 1 Tf -9 0 0 9 207.4232 409.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 211.9832 409.26 Tm -(2SHIFT)Tj -/TT8 1 Tf -9 0 0 9 247.989 409.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 252.549 409.26 Tm -(LOCK)Tj -/TT8 1 Tf -9 0 0 9 276.5529 409.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 281.1129 409.26 Tm -(META)Tj -/TT8 1 Tf -9 0 0 9 305.1168 409.26 Tm -0.0067 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 320.4551 409.26 Tm -0 Tw -(CTRL)Tj -/TT8 1 Tf -9 0 0 9 344.459 409.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 349.019 409.26 Tm -(SHIFTDOWNP)Tj -/TT8 1 Tf -9 0 0 9 409.0287 409.26 Tm -0.0067 Tw -[( returns the state of)]TJ --31.4476 -1.3278 TD -0 Tw -(the left shift, right shift, shift lock, control, and meta flags, respectively.)Tj -0 -2.0056 TD -(If )Tj -/TT16 1 Tf -0.9199 0 TD -(SHIFT)Tj -/TT8 1 Tf -3.0005 0 TD -( = )Tj -/TT16 1 Tf -1.106 0 TD -(SHIFT)Tj -/TT8 1 Tf -3.0005 0 TD -(, )Tj -/TT10 1 Tf -10 0 0 10 202.7417 379.26 Tm -(SHIFTDOWNP)Tj -/TT8 1 Tf -9 0 0 9 262.7514 379.26 Tm -( returns )Tj -/TT10 1 Tf -10 0 0 10 296.0883 379.26 Tm -(T)Tj -/TT8 1 Tf -9 0 0 9 302.0893 379.26 Tm -( if either the left or right shift flag is on.)Tj --19.5655 -2.1111 TD -(If )Tj -/TT16 1 Tf -0.9421 0 TD -(SHIFT)Tj -/TT8 1 Tf -3.0005 0 TD -0.0222 Tw -[( = )]TJ -/TT10 1 Tf -10 0 0 10 171.8373 360.26 Tm -0 Tw -(USERMODE1)Tj -/TT8 1 Tf -9 0 0 9 225.8461 360.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 230.5461 360.26 Tm -(USERMODE2)Tj -/TT8 1 Tf -9 0 0 9 284.5549 360.26 Tm -0.0222 Tw -(, or )Tj -/TT10 1 Tf -10 0 0 10 300.1731 360.26 Tm -0 Tw -(USERMODE3)Tj -/TT8 1 Tf -9 0 0 9 354.1819 360.26 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 358.8819 360.26 Tm -(SHIFTDOWNP)Tj -/TT8 1 Tf -9 0 0 9 418.8917 360.26 Tm -0.0222 Tw -[( returns the state)]TJ --32.5435 -1.3278 TD -0.1022 Tw -[(of one of three user-settable flags that have no other effect on key interpretation. These)]TJ -0 -1.2278 TD -0 Tw -(flags can be set or cleared on character transitions by using )Tj -/TT10 1 Tf -10 0 0 10 362.0347 337.26 Tm -(KEYACTION)Tj -/TT8 1 Tf -9 0 0 9 416.0435 337.26 Tm -( \(below\).)Tj -/TT10 1 Tf -10 0 0 10 102 314.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 314.03 Tm -(KEYACTION)Tj -/F2 1 Tf -10 0 0 10 156.6 314.03 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 159.47 314.03 Tm -(KEYNAME ACTIONS )Tj -/TT10 1 Tf -10 0 0 10 251.2849 314.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 257.2859 314.03 Tm -[( )-20316([Function])]TJ --14.5873 -1.8833 TD -0.1689 Tw -(Changes the internal tables that define the action to be taken when a key transition is)Tj -0 -1.2278 TD -0.26 Tw -(detected by the system keyboard handler. )Tj -/TT16 1 Tf -20.7995 0 TD -0 Tw -(KEYNAME)Tj -/TT8 1 Tf -4.2007 0 TD -0.26 Tw -[( is specified as for )]TJ -/TT10 1 Tf -10 0 0 10 435.7387 286.03 Tm -0 Tw -(KEYDOWNP)Tj -/TT8 1 Tf -9 0 0 9 483.7465 286.03 Tm -(.)Tj -/TT16 1 Tf --39.7496 -1.3333 TD -(ACTIONS)Tj -/TT8 1 Tf -4.2007 0 TD -0.1244 Tw -[( is a dotted pair of the form )]TJ -/TT10 1 Tf -10 0 0 10 283.6797 274.03 Tm -0.298 Tw -(\(DOWN-ACTION . UP-ACTION\))Tj -/TT8 1 Tf -9 0 0 9 439.6641 274.03 Tm -0.1244 Tw -(, where the)Tj --34.8516 -1.3278 TD -0 Tw -(acceptable transition actions and their interpretations are:)Tj -/TT10 1 Tf -10 0 0 10 144 244.03 Tm -(NIL)Tj --1.8 -1.9 TD -(IGNORE)Tj -/TT8 1 Tf -9 0 0 9 174 225.03 Tm -0.1544 Tw -(Take no action on this transition \(the default for up-transitions on all)Tj -0 -1.3278 TD -0 Tw -(ordinary characters\).)Tj -/TT10 1 Tf -10 0 0 10 54.03 195.03 Tm -(\(CHAR SHIFTEDCHAR LOCKFLAG\))Tj -/TT8 1 Tf -9 0 0 9 174 176.03 Tm -0.0778 Tw -(If a transition action is a three-element list, )Tj -/TT10 1 Tf -10 0 0 10 350.89 176.03 Tm -0 Tw -(CHAR)Tj -/TT8 1 Tf -9 0 0 9 374.8939 176.03 Tm -0.0778 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 396.0298 176.03 Tm -0 Tw -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 174 164.08 Tm -0.2589 Tw -(are either character codes or \(non-numeric\) single-character litatoms)Tj -0 -1.2278 TD -0.8256 Tw -[(standing for their character codes. Note that )]TJ -/TT10 1 Tf -10 0 0 10 413.0269 153.03 Tm -0 Tw -(CHAR)Tj -/TT8 1 Tf -9 0 0 9 437.0308 153.03 Tm -0.8256 Tw -[( and)]TJ -/TT10 1 Tf -10 0 0 10 174 141.03 Tm -0 Tw -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 240.0107 141.03 Tm -0.0878 Tw -[( can be full sixteen-bit NS characters \(see page )]TJ -/TT10 1 Tf -10 0 0 10 432.7238 141.03 Tm -0 Tw -(X.XX)Tj -/TT8 1 Tf -9 0 0 9 456.7277 141.03 Tm -(\).)Tj --31.4142 -1.3333 TD -0.0756 Tw -(When the transition occurs, )Tj -/TT10 1 Tf -10 0 0 10 288.3103 129.03 Tm -0 Tw -(CHAR)Tj -/TT8 1 Tf -9 0 0 9 312.3142 129.03 Tm -0.0756 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 326.6425 129.03 Tm -0 Tw -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 392.6532 129.03 Tm -0.0756 Tw -[( is transmitted to)]TJ --24.2948 -1.3278 TD -0.0089 Tw -(the system buffer, depending on whether either of the two shift keys are)Tj -0 -1.2222 TD -0 Tw -(down.)Tj -/TT10 1 Tf -10 0 0 10 174 88.03 Tm -(LOCKFLAG)Tj -/TT8 1 Tf -9 0 0 9 222.0078 88.03 Tm -0.1033 Tw -[( is optional, and may be )]TJ -/TT10 1 Tf -10 0 0 10 324.8959 88.03 Tm -0 Tw -(LOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 378.9047 88.03 Tm -0.1033 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 393.7329 88.03 Tm -0 Tw -(NOLOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 459.7437 88.03 Tm -(.)Tj --31.7493 -1.3333 TD -(If )Tj -/TT10 1 Tf -10 0 0 10 185.9093 76.03 Tm -(LOCKFLAG)Tj -/TT8 1 Tf -9 0 0 9 233.9171 76.03 Tm -0.4033 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 252.1107 76.03 Tm -0 Tw -(LOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 306.1195 76.03 Tm -0.4033 Tw -(, then )Tj -/TT10 1 Tf -10 0 0 10 337.8526 76.03 Tm -0 Tw -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 403.8633 76.03 Tm -0.4033 Tw -[( will also be)]TJ --25.5404 -1.3333 TD -0.0856 Tw -(transmitted when the )Tj -/TT10 1 Tf -10 0 0 10 264.1259 64.03 Tm -0 Tw -(LOCK)Tj -/TT8 1 Tf -9 0 0 9 288.1298 64.03 Tm -0.0856 Tw -[( shift is down \(the alphabetic keys initially)]TJ --12.6811 -1.3333 TD -0 Tw -(specify )Tj -/TT10 1 Tf -10 0 0 10 205.2713 52.03 Tm -(LOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 259.2801 52.03 Tm -0.0967 Tw -(, but the digit keys specify )Tj -/TT10 1 Tf -10 0 0 10 371.0411 52.03 Tm -0 Tw -(NOLOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 437.0519 52.03 Tm -0.0967 Tw -[(\). For)]TJ -ET -endstream -endobj -107 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 16 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -109 0 obj -<< -/Length 5395 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-20)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 222 569.49 Tm -(example, )Tj -/TT10 1 Tf -10 0 0 10 261.0212 569.49 Tm -0.207 Tw -(\(a A LOCKSHIFT\))Tj -/TT8 1 Tf -9 0 0 9 355.1758 569.49 Tm -0.0867 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 376.4717 569.49 Tm -0.207 Tw -(\(61Q ! NOLOCKSHIFT\))Tj -/TT8 1 Tf -9 0 0 9 494.6302 569.49 Tm -0.0867 Tw -[( are)]TJ --30.2922 -1.3278 TD -0.2711 Tw -(the initial settings for the down transitions of the "a" and "1" keys)Tj -0 -1.2222 TD -0 Tw -(respectively.)Tj -/TT10 1 Tf -10 0 0 10 102.03 528.49 Tm -(1SHIFTUP, 1SHIFTDOWN)Tj -0 -1.9 TD -(2SHIFTUP, 2SHIFTDOWN)Tj -1.197 -1.9 TD -(CTRLUP, CTRLDOWN)Tj -T* -(METAUP, METADOWN)Tj -/TT8 1 Tf -9 0 0 9 222 471.49 Tm -0.0144 Tw -(Change the status of the internal "shift" flags for the left shift, right shift,)Tj -0 -1.3278 TD -0.7667 Tw -(control, and meta keys, respectively. These shifts affect the)Tj -0 -1.2222 TD -0.1467 Tw -[(interpretation of ordinary key actions. If either of the shifts is down,)]TJ -0 -1.2278 TD -0 Tw -(then )Tj -/TT10 1 Tf -10 0 0 10 242.1131 437.49 Tm -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 308.1239 437.49 Tm -0.0156 Tw -[(s are transmitted. If the control flag is on, then the)]TJ --9.5693 -1.3278 TD -0.3767 Tw -(the seventh bit of the character code is cleared as characters are)Tj -0 -1.2222 TD -0.1422 Tw -[(transmitted. If the meta flag is on, the the eighth bit of the character)]TJ -T* -0.33 Tw -[(code is set \(normally cleared\) as characters are transmitted. For)]TJ -0 -1.2278 TD -0.1156 Tw -(example, the initial keyactions for the left shift key is )Tj -/TT10 1 Tf -10 0 0 10 444.0362 392.49 Tm -0 Tw -(\(1SHIFTDOWN)Tj --22.2036 -1.2 TD -(. 1SHIFTUP\).)Tj --11.997 -1.9 TD -(LOCKUP, LOCKDOWN, LOCKTOGGLE)Tj -/TT8 1 Tf -9 0 0 9 222 342.54 Tm -0.1156 Tw -[(Change the status of the internal "shift" flags for the shift lock key. If)]TJ -0 -1.2278 TD -0.0878 Tw -(the lock flag is down, then )Tj -/TT10 1 Tf -10 0 0 10 333.9402 331.49 Tm -0 Tw -(SHIFTEDCHAR)Tj -/TT8 1 Tf -9 0 0 9 399.9509 331.49 Tm -0.0878 Tw -(s are transmitted if the key)Tj --19.7723 -1.3333 TD -0.0889 Tw -(action specified )Tj -/TT10 1 Tf -10 0 0 10 287.8744 319.49 Tm -0 Tw -(LOCKSHIFT)Tj -/TT8 1 Tf -9 0 0 9 341.8832 319.49 Tm -0.0889 Tw -(. )Tj -/TT10 1 Tf -10 0 0 10 350.2332 319.49 Tm -0 Tw -(LOCKUP)Tj -/TT8 1 Tf -9 0 0 9 386.239 319.49 Tm -0.0889 Tw -[( and )]TJ -/TT10 1 Tf -10 0 0 10 407.5749 319.49 Tm -0 Tw -(LOCKDOWN)Tj -/TT8 1 Tf -9 0 0 9 455.5827 319.49 Tm -0.0889 Tw -[( clear and set)]TJ --25.9536 -1.3333 TD -0.1544 Tw -(the shift lock flag, respectively. )Tj -/TT10 1 Tf -10 0 0 10 358.0539 307.49 Tm -0 Tw -(LOCKTOGGLE)Tj -/TT8 1 Tf -9 0 0 9 418.0636 307.49 Tm -0.1544 Tw -[( complements the flag)]TJ --21.7848 -1.3278 TD -0 Tw -(\(turning it off if the flag is on; on if the flag is off\).)Tj -/TT10 1 Tf -10 0 0 10 102.03 277.49 Tm -(USERMODE1UP, USERMODE1DOWN, USERMODE1TOGGLE)Tj -0 -1.9 TD -(USERMODE2UP, USERMODE2DOWN, USERMODE2TOGGLE)Tj -T* -(USERMODE3UP, USERMODE3DOWN, USERMODE3TOGGLE)Tj -/TT8 1 Tf -9 0 0 9 222 220.49 Tm -0.1467 Tw -(Change the status of the three user flags )Tj -/TT10 1 Tf -10 0 0 10 393.936 220.49 Tm -0 Tw -(USERMODE1)Tj -/TT8 1 Tf -9 0 0 9 447.9448 220.49 Tm -(, )Tj -/TT10 1 Tf -10 0 0 10 453.7647 220.49 Tm -(USERMODE2)Tj -/TT8 1 Tf -9 0 0 9 507.7735 220.49 Tm -(,)Tj --31.7526 -1.3333 TD -(and )Tj -/TT10 1 Tf -10 0 0 10 244.9158 208.49 Tm -(USERMODE3)Tj -/TT8 1 Tf -9 0 0 9 298.9246 208.49 Tm -0.6033 Tw -(, whose status can be determined by calling)Tj -/TT10 1 Tf -10 0 0 10 222 196.49 Tm -0 Tw -(SHIFTDOWNP)Tj -/TT8 1 Tf -9 0 0 9 282.0097 196.49 Tm -0.39 Tw -[( \(above\). These flags have no other effect on key)]TJ --6.6678 -1.3278 TD -0 Tw -(interpretation.)Tj -/TT10 1 Tf -10 0 0 10 180 166.49 Tm -(EVENT)Tj -/TT8 1 Tf -9 0 0 9 222 166.49 Tm -0.2367 Tw -(An encoding of the current state of the mouse and selected keys is)Tj -T* -0 Tw -(placed in the mouse-event buffer when this transition is detected.)Tj -/TT10 1 Tf -10 0 0 10 222 136.49 Tm -(KEYACTION)Tj -/TT8 1 Tf -9 0 0 9 276.0088 136.49 Tm -0.0822 Tw -[( returns the previous setting for )]TJ -/TT10 1 Tf -10 0 0 10 408.7296 136.49 Tm -0 Tw -(KEYNAME)Tj -/TT8 1 Tf -9 0 0 9 450.7364 136.49 Tm -0.0822 Tw -[(. If )]TJ -/TT10 1 Tf -10 0 0 10 467.9857 136.49 Tm -0 Tw -(ACTIONS)Tj -/TT8 1 Tf -9 0 0 9 222 124.49 Tm -(is )Tj -/TT10 1 Tf -10 0 0 10 230.6836 124.49 Tm -(NIL)Tj -/TT8 1 Tf -9 0 0 9 248.6865 124.49 Tm -(, returns the previous setting without changing the tables.)Tj -/TT10 1 Tf -10 0 0 10 150 101.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 101.26 Tm -(MODIFY.KEYACTIONS)Tj -/F3 1 Tf -10 0 0 10 247.8 101.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 250.58 101.26 Tm -(KEYACTIONS SAVECURRENT?)Tj -/TT10 1 Tf -10 0 0 10 374.8002 101.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 380.8012 101.26 Tm -[( )-11925.4([Function])]TJ -/TT16 1 Tf --22.9779 -1.8889 TD -(KEYACTIONS)Tj -/TT8 1 Tf -6.001 0 TD -0.3533 Tw -[( is a list of key actions to be set, each of the form )]TJ -/TT10 1 Tf -10 0 0 10 465.497 84.26 Tm -0.848 Tw -(\(KEYNAME .)Tj --29.1497 -1.2 TD -0 Tw -(ACTIONS\))Tj -/TT8 1 Tf -9 0 0 9 222.0078 72.26 Tm -0.1389 Tw -[(. The effect of )]TJ -/TT10 1 Tf -10 0 0 10 286.2788 72.26 Tm -0 Tw -(MODIFY.KEYACTIONS)Tj -/TT8 1 Tf -9 0 0 9 388.2954 72.26 Tm -0.1389 Tw -[( is as if )]TJ -/TT10 1 Tf -10 0 0 10 422.6596 72.26 Tm -0.333 Tw -(\(KEYACTION KEYNAME)Tj --24.866 -1.2 TD -0 Tw -(ACTIONS\))Tj -/TT8 1 Tf -9 0 0 9 222.0078 60.26 Tm -( were performed for each item on )Tj -/TT16 1 Tf -15.0444 0 TD -(KEYACTIONS)Tj -/TT8 1 Tf -6.001 0 TD -(.)Tj -ET -endstream -endobj -110 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F3 25 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -112 0 obj -<< -/Length 6083 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-21)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -(If )Tj -/TT16 1 Tf -1.1644 0 TD -(SAVECURRENT?)Tj -/TT8 1 Tf -7.2012 0 TD -0.2444 Tw -[( is non-)]TJ -/TT10 1 Tf -10 0 0 10 235.0101 569.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 253.0131 569.49 Tm -0.2444 Tw -(, then )Tj -/TT10 1 Tf -10 0 0 10 281.8862 569.49 Tm -0 Tw -(MODIFY.KEYACTIONS)Tj -/TT8 1 Tf -9 0 0 9 383.9028 569.49 Tm -0.2444 Tw -[( returns a list of all the)]TJ --28.6559 -1.3333 TD -0.4956 Tw -(results from )Tj -/TT16 1 Tf -6.5897 0 TD -0 Tw -(KEYACTION)Tj -/TT8 1 Tf -5.4009 0 TD -0.4956 Tw -(, otherwise it returns )Tj -/TT10 1 Tf -10 0 0 10 336.6008 557.49 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 354.6038 557.49 Tm -0.4956 Tw -[(. This can be used with a)]TJ -/TT10 1 Tf -10 0 0 10 126 545.49 Tm -0 Tw -(MODIFY.KEYACTIONS)Tj -/TT8 1 Tf -9 0 0 9 228.0166 545.49 Tm -0.0156 Tw -[( that appears in a )]TJ -/TT10 1 Tf -10 0 0 10 299.4334 545.49 Tm -0 Tw -(RESETFORM)Tj -/TT8 1 Tf -9 0 0 9 353.4422 545.49 Tm -0.0156 Tw -(, so that the list is built at "entry",)Tj --25.2714 -1.3278 TD -0 Tw -(but not upon "exit".)Tj -/TT10 1 Tf -10 0 0 10 102 511.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 511.26 Tm -(METASHIFT)Tj -/F3 1 Tf -10 0 0 10 156.6 511.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 159.38 511.26 Tm -(FLG)Tj -/TT10 1 Tf -10 0 0 10 175.5826 511.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 181.5836 511.26 Tm -[( )-23989.6([NoSpread Function])]TJ --6.176 -1.8889 TD -(If )Tj -/TT16 1 Tf -0.9777 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.0578 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 162.9755 494.26 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 168.9765 494.26 Tm -0.0578 Tw -(, changes the keyboard handler \(via )Tj -/TT10 1 Tf -10 0 0 10 316.3602 494.26 Tm -0 Tw -(KEYACTION)Tj -/TT8 1 Tf -9 0 0 9 370.369 494.26 Tm -0.0578 Tw -(\) so as to interpret the "stop")Tj --27.1521 -1.3278 TD -0.0156 Tw -(key on the 1108 as a metashift: if a key is struck while the meta is down, it is read with the)Tj -0 -1.2278 TD -0.1367 Tw -[(200Q bit set. For )]TJ -/TT10 1 Tf -10 0 0 10 201.2935 471.26 Tm -0 Tw -(CHAT)Tj -/TT8 1 Tf -9 0 0 9 225.2974 471.26 Tm -0.1367 Tw -[( users this is a way of getting an "Edit" key on your simulated)]TJ --11.0331 -1.3278 TD -0 Tw -(Datamedia.)Tj -0 -2.0056 TD -(If )Tj -/TT16 1 Tf -1.0355 0 TD -(FLG)Tj -/TT8 1 Tf -1.8003 0 TD -0.1156 Tw -[( is other than )]TJ -/TT10 1 Tf -10 0 0 10 209.9807 441.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 227.9837 441.26 Tm -0.1156 Tw -[( or )]TJ -/TT10 1 Tf -10 0 0 10 243.0319 441.26 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 249.0329 441.26 Tm -0.1156 Tw -(, it is passed as the )Tj -/TT10 1 Tf -10 0 0 10 331.1577 441.26 Tm -0 Tw -(ACTIONS)Tj -/TT8 1 Tf -9 0 0 9 373.1645 441.26 Tm -0.1156 Tw -[( argument to )]TJ -/TT10 1 Tf -10 0 0 10 429.8011 441.26 Tm -0 Tw -(KEYACTION)Tj -/TT8 1 Tf -9 0 0 9 483.8099 441.26 Tm -(.)Tj --39.7567 -1.3333 TD -0.0933 Tw -(The reason for this is that if someone has set the ")Tj -/TT10 1 Tf -10 0 0 10 331.0032 429.26 Tm -0 Tw -(STOP)Tj -/TT8 1 Tf -9 0 0 9 355.0071 429.26 Tm -0.0933 Tw -(" key to some random behavior,)Tj --25.4452 -1.3333 TD -0 Tw -(then )Tj -/TT10 1 Tf -10 0 0 10 148.5331 417.26 Tm -0.683 Tw -(\(RESETFORM \(METASHIFT T\) --\))Tj -/TT8 1 Tf -9 0 0 9 337.0505 417.26 Tm -0.2844 Tw -[( will correctly restore that random)]TJ --23.4501 -1.3278 TD -0 Tw -(behavior.)Tj -/TT4 1 Tf -10 0 0 10 54 362.97 Tm -(Display Screen)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -54.01 360.26 m -534.01 360.26 l -S -BT -/TT8 1 Tf -9 0 0 9 78 338.31 Tm -0.0244 Tw -[(Medley supports a high-resolution bitmap display screen. All printing and drawing operations to the)]TJ -0 -1.2222 TD -0.1189 Tw -(screen are actually performed on a bitmap in memory, which is read by the computer hardware to)Tj -T* -0.1 Tw -[(become visible as the screen. This section describes the functions used to control the appearance of)]TJ -T* -0 Tw -(the display screen.)Tj -/TT10 1 Tf -10 0 0 10 102 284.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 284.26 Tm -(SCREENBITMAP)Tj -/TT10 1 Tf -10 0 0 10 172.8 284.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 178.801 284.26 Tm -[( )-29036.6([Function])]TJ --5.8668 -1.8833 TD -(Returns the screen bitmap.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(SCREENWIDTH)Tj -/TT8 1 Tf -6.6 0 TD -[( )-31167.8([Variable])]TJ -/TT12 1 Tf --6.6 -1.0667 TD -(SCREENHEIGHT)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -2.0667 TD -(Value is the width and height of the screen bitmap, respectively.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WHOLEDISPLAY)Tj -/TT8 1 Tf -7.2 0 TD -[( )-30567.8([Variable])]TJ --4.5333 -1.8444 TD -(Value is a region that is the size of the screen bitmap.)Tj --5.3333 -2.8889 TD -(The background shade of the display window can be changed using the following function:)Tj -/TT10 1 Tf -10 0 0 10 102 132.23 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 132.23 Tm -(CHANGEBACKGROUND)Tj -/F2 1 Tf -10 0 0 10 194.4 132.23 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 197.27 132.23 Tm -(SHADE )Tj -/TT10 1 Tf -10 0 0 10 235.0761 132.23 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 241.0771 132.23 Tm -[( )-22117([Function])]TJ --12.7863 -1.8833 TD -0.0656 Tw -(Changes the background shade of the window system. )Tj -/TT16 1 Tf -25.3068 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0656 Tw -[( determines the pattern of)]TJ --28.3073 -1.2889 TD -0.0633 Tw -[(the background. If )]TJ -/TT16 1 Tf -8.9067 0 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0633 Tw -[( is a texture, then the background is simply painted with it. If)]TJ -/TT16 1 Tf --11.9071 -1.2944 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.1267 Tw -[( is a )]TJ -/TT10 1 Tf -10 0 0 10 174.108 92.03 Tm -0 Tw -(BITMAP)Tj -/TT8 1 Tf -9 0 0 9 210.1138 92.03 Tm -0.1267 Tw -[(, the background is tesselated \(tiled\) with it to cover the screen. If)]TJ -/TT16 1 Tf --9.346 -1.3333 TD -0 Tw -(SHADE)Tj -/TT8 1 Tf -3.0005 0 TD -0.0567 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 164.958 80.03 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 170.959 80.03 Tm -0.0567 Tw -(, it changes to the original shade, the value of )Tj -/TT10 1 Tf -10 0 0 10 357.8168 80.03 Tm -0 Tw -(WINDOWBACKGROUNDSHADE)Tj -/TT8 1 Tf -9 0 0 9 483.8373 80.03 Tm -(.)Tj --39.7597 -1.3278 TD -(It returns the previous value of the background.)Tj -/TT12 1 Tf --2.6667 -2.3333 TD -(WINDOWBACKGROUNDSHADE)Tj -/TT8 1 Tf -12.6 0 TD -[( )-25167.8([Variable])]TJ -ET -endstream -endobj -113 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 16 0 R -/F3 25 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -116 0 obj -<< -/Length 6065 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 102 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-22)Tj -/TT6 1 Tf -10 0 0 10 96 612 Tm -(INTERLISP-D REFERENCE MANUAL)Tj -/TT8 1 Tf -9 0 0 9 174 569.54 Tm -(Value is the default background shade for the display.)Tj -/TT10 1 Tf -10 0 0 10 150 547.26 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 547.26 Tm -(VIDEOCOLOR)Tj -/F2 1 Tf -10 0 0 10 210 547.26 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 212.87 547.26 Tm -(BLACKFLG)Tj -/TT10 1 Tf -10 0 0 10 256.077 547.26 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 262.078 547.26 Tm -[( )-20379.1([NoSpread Function])]TJ --9.7864 -1.8889 TD -0.0167 Tw -[(Sets the interpretation of the bits in the screen bitmap. If )]TJ -/TT16 1 Tf -25.4583 0 TD -0 Tw -(BLACKFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.0167 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 457.5653 530.26 Tm -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 475.5682 530.26 Tm -0.0167 Tw -(, a 0 bit will be)Tj --33.5076 -1.3333 TD -0.1022 Tw -(displayed as white, otherwise a 0 bit will be displayed as black. )Tj -/TT10 1 Tf -10 0 0 10 441.9854 518.26 Tm -0 Tw -(VIDEOCOLOR)Tj -/TT8 1 Tf -9 0 0 9 501.9951 518.26 Tm -0.1022 Tw -[( returns)]TJ --36.4439 -1.3333 TD -0.1611 Tw -[(the previous setting. If )]TJ -/TT16 1 Tf -11.2509 0 TD -0 Tw -(BLACKFLG)Tj -/TT8 1 Tf -4.8008 0 TD -0.1611 Tw -[( is not given, )]TJ -/TT10 1 Tf -10 0 0 10 377.2936 506.26 Tm -0 Tw -(VIDEOCOLOR)Tj -/TT8 1 Tf -9 0 0 9 437.3034 506.26 Tm -0.1611 Tw -[( will return the current)]TJ --29.2559 -1.3278 TD -0 Tw -(setting without changing anything.)Tj -0 -2 TD -(Note: This function only works on the Xerox 1100 and Xerox 1108.)Tj -/TT10 1 Tf -10 0 0 10 150 454.03 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 454.03 Tm -(VIDEORATE)Tj -/F2 1 Tf -10 0 0 10 204.6 454.03 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 207.47 454.03 Tm -(TYPE)Tj -/TT10 1 Tf -10 0 0 10 229.0735 454.03 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 235.0745 454.03 Tm -[( )-28117.3([Function])]TJ --6.7861 -1.8889 TD -(Sets the rate at which the screen is refreshed. )Tj -/TT16 1 Tf -20.2467 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( is one of )Tj -/TT10 1 Tf -10 0 0 10 415.67 437.03 Tm -(NORMAL)Tj -/TT8 1 Tf -9 0 0 9 451.6758 437.03 Tm -( or )Tj -/TT10 1 Tf -10 0 0 10 464.66 437.03 Tm -(TAPE)Tj -/TT8 1 Tf -9 0 0 9 488.6639 437.03 Tm -(. If )Tj -/TT16 1 Tf -1.6729 0 TD -(TYPE)Tj -/TT8 1 Tf -2.4004 0 TD -( is)Tj -/TT10 1 Tf -10 0 0 10 174 425.03 Tm -(TAPE)Tj -/TT8 1 Tf -9 0 0 9 198.0039 425.03 Tm -0.1311 Tw -[(, the screen will be refreshed at the same rate as TV \(60 cycles per second\). This)]TJ --2.6671 -1.3278 TD -0.02 Tw -[(makes the picture look better when video taping the screen. Note: Changing the rate may)]TJ -0 -1.2222 TD -0 Tw -(change the dimensions of the display on the picture tube. )Tj --5.3333 -2.8889 TD -0.0244 Tw -(Maintaining the video image on the screen uses cpu cycles, so turning off the display can improve the)Tj -0 -1.2222 TD -0.0644 Tw -[(speed of compute-bound tasks. When the display is off, the screen will be white but any printing or)]TJ -T* -0 Tw -(displaying that the program does will be visible when the display is turned back on. )Tj -5.3333 -2.0056 TD -(Note: Breaks and )Tj -/TT10 1 Tf -10 0 0 10 246.8086 336.03 Tm -(PAGEFULLFN)Tj -/TT8 1 Tf -9 0 0 9 306.8183 336.03 Tm -( waiting \(see Chapter 28\) turn the display on, but)Tj --14.7576 -1.3278 TD -(users should be aware that it is possible to have the system waiting for a response to)Tj -0 -1.2222 TD -(a question printed or a menu displayed on a non-visible part of the screen. The)Tj -T* -(functions below are provided to turn the display off.)Tj -0 -2 TD -(Note: These functions have no effect on the Xerox 1108 display.)Tj -/TT10 1 Tf -10 0 0 10 150 261.8 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 261.8 Tm -(SETDISPLAYHEIGHT)Tj -/F2 1 Tf -10 0 0 10 242.4 261.8 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 245.27 261.8 Tm -(NSCANLINES)Tj -/TT10 1 Tf -10 0 0 10 299.2788 261.8 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 305.2798 261.8 Tm -[( )-20316.7([Function])]TJ --14.5866 -1.8889 TD -0.1167 Tw -(Sets the display to only show the top )Tj -/TT16 1 Tf -17.4416 0 TD -0 Tw -(NSCANLINES)Tj -/TT8 1 Tf -6.001 0 TD -0.1167 Tw -[( of the screen. If )]TJ -/TT16 1 Tf -8.1888 0 TD -0 Tw -(NSCANLINES)Tj -/TT8 1 Tf -6.001 0 TD -0.1167 Tw -[( is )]TJ -/TT10 1 Tf -10 0 0 10 525.7248 244.8 Tm -0 Tw -(T)Tj -/TT8 1 Tf -9 0 0 9 531.7258 244.8 Tm -(,)Tj --39.7473 -1.3278 TD -(resets the display to show the full screen. Returns the previous setting.)Tj -/TT10 1 Tf -10 0 0 10 150 210.57 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 210.57 Tm -(DISPLAYDOWN)Tj -/F2 1 Tf -10 0 0 10 215.4 210.57 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 218.27 210.57 Tm -(FORM NSCANLINES)Tj -/TT10 1 Tf -10 0 0 10 299.2832 210.57 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 305.2841 210.57 Tm -[( )-20316.2([Function])]TJ --14.5871 -1.8833 TD -(Evaluates )Tj -/TT16 1 Tf -4.6777 0 TD -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.1289 Tw -[( \(with the display set to only show the top )]TJ -/TT16 1 Tf -20.1385 0 TD -0 Tw -(NSCANLINES)Tj -/TT8 1 Tf -6.001 0 TD -0.1289 Tw -[( of the screen\),)]TJ --33.2176 -1.2889 TD -0.3567 Tw -(and returns the value of )Tj -/TT16 1 Tf -12.6344 0 TD -0 Tw -(FORM)Tj -/TT8 1 Tf -2.4004 0 TD -0.3567 Tw -[(. It restores the screen to its previous setting. If)]TJ -/TT16 1 Tf --15.0348 -1.2889 TD -0 Tw -(NSCANLINES)Tj -/TT8 1 Tf -6.001 0 TD -( is not given, it defaults to 0.)Tj -/TT4 1 Tf -10 0 0 10 102 127.48 Tm -(Miscellaneous Terminal I/O)Tj -ET -0 G -0 J 0 j 1 w 10 M []0 d -1 i -102.01 124.77 m -582.01 124.77 l -S -BT -/TT10 1 Tf -10 0 0 10 150 106.54 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 106.54 Tm -(RINGBELLS)Tj -/F2 1 Tf -10 0 0 10 204.6 106.54 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 207.47 106.54 Tm -(N)Tj -/TT10 1 Tf -10 0 0 10 212.8709 106.54 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 218.8718 106.54 Tm -[( )-29917.6([Function])]TJ --4.9858 -1.8833 TD -0.0389 Tw -(Flashes \(reverse-videos\) the screen )Tj -/TT16 1 Tf -15.7317 0 TD -0 Tw -(N)Tj -/TT8 1 Tf -0.6001 0 TD -0.0389 Tw -[( times \(default 1\). On the Xerox 1108, this also beeps)]TJ --16.3318 -1.2889 TD -0 Tw -(through the keyboard speaker.)Tj -/TT10 1 Tf -10 0 0 10 150 55.71 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 156.001 55.71 Tm -(PLAYTUNE)Tj -/F2 1 Tf -10 0 0 10 199.2 55.71 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 202.07 55.71 Tm -(Frequency/Duration.pairlist)Tj -/TT10 1 Tf -10 0 0 10 347.8937 55.71 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 353.8947 55.71 Tm -[( )-14915([Function])]TJ -ET -endstream -endobj -117 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 16 0 R -/TT2 4 0 R -/TT4 5 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -119 0 obj -<< -/Length 3702 ->> -stream -BT -/TT2 1 Tf -9 0 0 9 459 24 Tm -0 g -/GS1 gs -0 Tc -0 Tw -(29-23)Tj -/TT6 1 Tf -10 0 0 10 408 612 Tm -(TERMINAL INPUT/OUTPUT)Tj -/TT8 1 Tf -9 0 0 9 126 569.49 Tm -0.0611 Tw -(On the Xerox 1108, )Tj -/TT10 1 Tf -10 0 0 10 205.6756 569.49 Tm -0 Tw -(PLAYTUNE)Tj -/TT8 1 Tf -9 0 0 9 253.6834 569.49 Tm -0.0611 Tw -[( plays a sequence of notes through the keyboard speaker.)]TJ -/TT16 1 Tf --14.187 -1.3278 TD -0 Tw -(Frequency/Duration.pairlist)Tj -/TT8 1 Tf -16.2026 0 TD -0.2844 Tw -[( should be a list of dotted pairs \()]TJ -/TT16 1 Tf -16.5182 0 TD -0.6822 Tw -(FREQUENCY .)Tj --32.7209 -1.2944 TD -0 Tw -(DURATION)Tj -/TT8 1 Tf -4.8008 0 TD -0.0589 Tw -(\). )Tj -/TT10 1 Tf -10 0 0 10 180.0141 545.89 Tm -0 Tw -(PLAYTUNE)Tj -/TT8 1 Tf -9 0 0 9 228.0219 545.89 Tm -0.0589 Tw -[( maps down its argument, beeping the 1108 keyboard buzzer at)]TJ --11.3358 -1.3333 TD -0.0001 Tc -0.0032 Tw -(each frequency for the specified amount of time. Specifying )Tj -/TT10 1 Tf -10 0 0 10 367.1027 533.89 Tm -0 Tc -0 Tw -(NIL)Tj -/TT8 1 Tf -9 0 0 9 385.1057 533.89 Tm -0.0001 Tc -0.0032 Tw -( for a frequency means to)Tj --28.7895 -1.3333 TD -0 Tc -0.0767 Tw -[(turn the beeper off the specified amount of time. The units of time are )]TJ -/TT10 1 Tf -10 0 0 10 417.7011 521.89 Tm -0 Tw -(TICKS)Tj -/TT8 1 Tf -9 0 0 9 447.706 521.89 Tm -0.0767 Tw -[( \(Chapter)]TJ --35.7451 -1.3333 TD -0.0256 Tw -(12\), which last about 28.78 microseconds on the Xerox 1108. )Tj -/TT10 1 Tf -10 0 0 10 369.9216 509.89 Tm -0 Tw -(PLAYTUNE)Tj -/TT8 1 Tf -9 0 0 9 417.9294 509.89 Tm -0.0256 Tw -[( makes no sound)]TJ --32.4366 -1.3333 TD -0.0422 Tw -[(on a Xerox 1132. The default "simulate" entry for Control-G )]TJ -/TT10 1 Tf -10 0 0 10 370.3939 497.89 Tm -0.102 Tw -(\(ASCII BEL\))Tj -/TT8 1 Tf -9 0 0 9 437.4246 497.89 Tm -0.0422 Tw -[( on the 1108)]TJ --34.6027 -1.3333 TD -0 Tw -(uses )Tj -/TT10 1 Tf -10 0 0 10 145.6172 485.89 Tm -(PLAYTUNE)Tj -/TT8 1 Tf -9 0 0 9 193.625 485.89 Tm -( to make a short beep.)Tj -/TT10 1 Tf -10 0 0 10 126 466.89 Tm -(PLAYTUNE)Tj -/TT8 1 Tf -9 0 0 9 174.0078 466.89 Tm -( is implemented using )Tj -/TT10 1 Tf -10 0 0 10 264.6889 466.89 Tm -(BEEPON)Tj -/TT8 1 Tf -9 0 0 9 300.6948 466.89 Tm -( and )Tj -/TT10 1 Tf -10 0 0 10 320.4306 466.89 Tm -(BEEPOFF)Tj -/TT8 1 Tf -9 0 0 9 362.4375 466.89 Tm -(:)Tj -/TT10 1 Tf -10 0 0 10 102 443.66 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 443.66 Tm -(BEEPON)Tj -/F2 1 Tf -10 0 0 10 140.4 443.66 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 143.27 443.66 Tm -(FREQ)Tj -/TT10 1 Tf -10 0 0 10 164.8735 443.66 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 170.8745 443.66 Tm -[( )-29917.3([Function])]TJ --4.9861 -1.8833 TD -0.1067 Tw -(On the Xerox 1108, turns on the keyboard speaker playing a note with frequency )Tj -/TT16 1 Tf -37.3522 0 TD -0 Tw -(FREQ)Tj -/TT8 1 Tf -2.4004 0 TD -(,)Tj --39.7526 -1.2889 TD -0.1789 Tw -[(measured in Hertz \(see Chapter 12\). The speaker will continue to play the note until)]TJ -/TT10 1 Tf -10 0 0 10 126 404.06 Tm -0 Tw -(BEEPOFF)Tj -/TT8 1 Tf -9 0 0 9 168.0068 404.06 Tm -( is called.)Tj -/TT10 1 Tf -10 0 0 10 102 382.06 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 382.06 Tm -(BEEPOFF)Tj -/TT10 1 Tf -10 0 0 10 145.8 382.06 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 151.801 382.06 Tm -( )Tj -32.5366 0 TD -([Function])Tj --35.4033 -1.8833 TD -(Turns off the keyboard speaker on the Xerox 1108.)Tj -/TT10 1 Tf -10 0 0 10 102 342.83 Tm -(\()Tj -/TT12 1 Tf -9 0 0 9 108.001 342.83 Tm -(SETMAINTPANEL)Tj -/F2 1 Tf -10 0 0 10 178.2 342.83 Tm -( )Tj -/TT16 1 Tf -9 0 0 9 181.07 342.83 Tm -(N)Tj -/TT10 1 Tf -10 0 0 10 186.4709 342.83 Tm -(\))Tj -/TT8 1 Tf -9 0 0 9 192.4718 342.83 Tm -[( )-27517.6([Function])]TJ --7.3858 -1.8833 TD -0.04 Tw -(On the Xerox 1108, this sets the four-digit "maintanance panel" display on the front of the)Tj -0 -1.2222 TD -0 Tw -(computer to display the number )Tj -/TT16 1 Tf -14.5552 0 TD -(N)Tj -/TT8 1 Tf -0.6001 0 TD -(.)Tj -ET -endstream -endobj -120 0 obj -<< -/ProcSet [/PDF /Text ] -/Font << -/F2 16 0 R -/TT2 4 0 R -/TT6 6 0 R -/TT8 7 0 R -/TT10 8 0 R -/TT12 9 0 R -/TT16 18 0 R ->> -/ExtGState << -/GS1 10 0 R ->> ->> -endobj -57 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 8 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 17 ->> -stream -g'? -endstream -endobj -58 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -'??‡? -endstream -endobj -59 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 13 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -FFFFFFF -endstream -endobj -60 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 14 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -wͣm}_c -endstream -endobj -61 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream --)5US5_u__ -endstream -endobj -62 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 15 -/BitsPerComponent 1 -/ImageMask true -/Length 31 ->> -stream -?>~~>? -endstream -endobj -66 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 12 -/Height 12 -/BitsPerComponent 1 -/ImageMask true -/Length 25 ->> -stream -???????? -endstream -endobj -67 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 12 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -oooooooo?ֿ? -endstream -endobj -68 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -> -stream -?????????? -endstream -endobj -70 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 11 -/Height 11 -/BitsPerComponent 1 -/ImageMask true -/Length 23 ->> -stream - -endstream -endobj -71 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 13 -/Height 11 -/BitsPerComponent 1 -/ImageMask true -/Length 23 ->> -stream -????????? -endstream -endobj -72 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 11 -/Height 11 -/BitsPerComponent 1 -/ImageMask true -/Length 23 ->> -stream -????????? -endstream -endobj -73 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 13 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream - -endstream -endobj -74 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 7 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 17 ->> -stream -ǃ -endstream -endobj -75 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 9 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream - -endstream -endobj -76 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 9 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream - -endstream -endobj -77 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 13 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream -UWUWUWUWUW___ -endstream -endobj -78 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream -LJ -endstream -endobj -79 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream - -endstream -endobj -80 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 13 -/BitsPerComponent 1 -/ImageMask true -/Length 27 ->> -stream -?? -endstream -endobj -84 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 15 -/BitsPerComponent 1 -/ImageMask true -/Length 31 ->> -stream -jZjlwqwq -endstream -endobj -85 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 12 -/Height 8 -/BitsPerComponent 1 -/ImageMask true -/Length 17 ->> -stream -V -endstream -endobj -86 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 12 -/Height 8 -/BitsPerComponent 1 -/ImageMask true -/Length 17 ->> -stream -Voo -endstream -endobj -87 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 15 -/Height 7 -/BitsPerComponent 1 -/ImageMask true -/Length 15 ->> -stream -kzzx-i- -endstream -endobj -88 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 7 -/BitsPerComponent 1 -/ImageMask true -/Length 15 ->> -stream -hkVlVVl -endstream -endobj -89 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 7 -/BitsPerComponent 1 -/ImageMask true -/Length 15 ->> -stream - uu u-w -endstream -endobj -90 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 14 -/BitsPerComponent 1 -/ImageMask true -/Length 29 ->> -stream -{ z~_{_ -endstream -endobj -91 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream - -endstream -endobj -92 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -g'? -endstream -endobj -93 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -g'? -endstream -endobj -94 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -'? -endstream -endobj -95 0 obj -<< -/Type /XObject -/Subtype /Image -/Width 16 -/Height 16 -/BitsPerComponent 1 -/ImageMask true -/Length 33 ->> -stream -g'? -endstream -endobj -10 0 obj -<< -/Type /ExtGState -/SA false -/SM 0.02 -/OP false -/op false -/OPM 1 -/BG2 /Default -/UCR2 /Default -/HT /Default -/TR2 /Default ->> -endobj -121 0 obj -<< -/Type /FontDescriptor -/Ascent 750 -/CapHeight 662 -/Descent -250 -/Flags 34 -/FontBBox [-168 -218 1000 898] -/FontName /Times-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 450 -/StemH 84 ->> -endobj -122 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 262176 -/FontBBox [-170 -228 1003 962] -/FontName /Helvetica-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 532 -/StemH 140 ->> -endobj -123 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 32 -/FontBBox [-166 -225 1000 931] -/FontName /Helvetica -/ItalicAngle 0 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -124 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 692 -/Descent -277 -/Flags 34 -/FontBBox [-166 -283 1021 927] -/FontName /Palatino-Roman -/ItalicAngle 0 -/StemV 84 -/XHeight 469 -/StemH 84 ->> -endobj -125 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 35 -/FontBBox [-28 -250 628 805] -/FontName /Courier -/ItalicAngle 0 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -126 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 262179 -/FontBBox [-113 -250 749 801] -/FontName /Courier-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 439 -/StemH 84 ->> -endobj -127 0 obj -<< -/Type /FontDescriptor -/Ascent 822 -/CapHeight 681 -/Descent -277 -/Flags 262178 -/FontBBox [-152 -266 1000 924] -/FontName /Palatino-Bold -/ItalicAngle 0 -/StemV 133 -/XHeight 471 -/StemH 122 ->> -endobj -128 0 obj -<< -/Type /FontDescriptor -/Ascent 753 -/CapHeight 562 -/Descent -246 -/Flags 99 -/FontBBox [-28 -250 742 805] -/FontName /Courier-Oblique -/ItalicAngle -15 -/StemV 51 -/XHeight 426 -/StemH 51 ->> -endobj -129 0 obj -<< -/Type /FontDescriptor -/Ascent 701 -/CapHeight 0 -/Descent -298 -/Flags 4 -/FontBBox [-167 -299 1094 827] -/FontName /JBPHDC+Symbol -/ItalicAngle 0 -/StemV 0 -/FontFile2 130 0 R ->> -endobj -130 0 obj -<< -/Filter /FlateDecode -/Length 20023 -/Length1 39356 ->> -stream -HW}tovgvfwv9 -($Z*PP81 rho#̒ ,4ŀMS))R &EEZ>*R -B1MO3{w{s}ͼ ̸ُ3 wТ@~3{8^nB(h& w ed( ^GT, "- ౭eZE(R\uCQS*;6_|L;}3P#frGI\,@ҁ8驈Gq s#TJ|AB.Gbhquۯ`ꈗz,^qt8@Mʿg Y<8 -qU -q:WA?'s?}R+t]6r"kHMs pRXMY p4d% Q:6C5F\hp4Cx\3LԪ%i7k$^ِw; -|:"Rx.^Q@ &s8Nα0;` 4@q+u@I@) c9??va!b!] )Y w'6Rp'L#%/Dy܃+75 -6ZdhIEXA^/=$a~6ԡ s-6GVJu a q͕ -Kq-*Wo%'a5߀G*OR1J܎8W$ -eڼͫYN -A8_ >KBf2ZxH|B>E0tl":=a%&(H" >wIBl _^6Yi 3Lfo>u'i/ ~_^LVImwxLHR 6Vٸ'lKm\frWظU6'm\cZikll|Z۸gm97/8$OęqCbQ/ -50O%Pz1+SE&ѐU͊!t5sg@K7?_/F\ җ%EcnL552鲚fU<>*%ʣ[ -)h #@1nٵU$4SkWLg6*6OmP-B Mv!.P"m Ń.P4 ?x8Α$;Di*2kM)[$~/]RU)Ck̄LpFkI,[{un';Ye7a I${xlm<~ؾ8x`R֜XQ* %ҮIԺhZJ.PCHB(aR6Cet(`" t:t[a=wI }u~ޏ;VuF݅Kb<&+zBCLt >ϵ)/ZBEp$w:2fQlnm47$M5z{V+@~FAj Z#XXh#~e59d.2b`{#ϫȨNǪSg!;"-W7: F&\wqX -R12Hoao=̑66˝iFE2^U.dmy5sG=>ԥjHO>eR -=[ 2fZu_v]6~EO!UD"\"@!^$5]3G"ѹ`5]١lg-s &Uin7;ɺXHe3@tK7H -ske]436}:{>5.],_)VjwU͊(9Ҫ~)'?SOrTYvAS%dtډy\/wo Cg,sKGp% CbKP+7ᖭ'CjXXۥ2GVYX,WEG\sm;H`oY-'4`gTYd>v@ۀ''6DC{FF%hp7csfK)P@p2ᖦ -) #az Kgz':~;@e?$]Í8#c$ _k$A梎_,4A=dc{ 0i`Q#}X7t:cݪX'kAFj7xbep}>.Hʐn= 茳'!g톗#cWgV[p]ώ&zFOhrg׊_'uŻ|1O;1{,:~uׯzý'.5=Z2(0MsjY [6EuFQr9VkoXֹ=J,R۽<&qss!QBb g(v iNtR0˼~dTy9nn.=uƂ\d$C0,v"hexڪrhX& V(HU)F8MOhCө cfD^4vFbDS+{&<s)XYY k^0l&h6 ]x/p -y W0H,A d -yI9Cj,YI^& WI I 3"4%%rj6ꤹMЇTet6G?t=ӕEZG7-5FGߢ. =C}&eƲl*+b3X=ճWY kcow!!;N(ȮNGp7')Ǽ?ƟK%^7|;wA0?OO)ˣc_|_&j22LYX'n*|?A!HPgn&1StN-D88Z,Ĩƙ(*ԌG&0VbYxo5Abdb, [MJH/k3AĄW!YS[2ћEw6 U_Rf2F][042XJD=w=ʇذ#Z(z& TaA*X+LfF&æ Y F}' OW.v-vu%.=kKlMo'% h~/u޻\szgR _Bٖ ?&m9AalڍhKHdrHR:l?[l?968UbTlEi lBm)w}ZAh\}~۲}nn}y2!56(}Å-2*`Si PM^:=L6tX@,Z-ĸ v7X<p"5eLOa-tl / p!%.01  K~hem59qQ,te{5:e[ZEqx8|l;,,(췰,^P TH-&xBַfdm-ݙzjVjYes~0e!ΘZ}:yarcLE`AqO鱩#nhʝtzgOI0g,\"y!{'?ȧbjx7/dDI㘅[zB|>YZds|b>w옾?[󝂅]\ECѶ$͑%lh7֕PF^ʼnZ)x|7ǎ_ . ]H9#acR{pI+n6#}':v56-9jQ2y2d4f*<;ҹY<_N:6-t -GIgati72Zں] J6ok.C%mX^:6 3PKmٕ,s.wѱMZ:L1p;e. ?bARżYaDt& (aYi} h Qҗ U}&?L(Һ,h#&R&j^6@a_% :3K +֘w)W'Ǧ:_T2U,fQqx/mu("H?]̀,z_g].~ڂa=~ȸv1f$-l ^\-Z@f~%Oia%gYZ@qAy-K0oUW yU}fBAkff8߰΋j2@-} 5Fa󥭀tft0dˀea33% -fM:{P+a+qw?v`>j[`[$jI[t.2 9d -P7J-}W -RHgR_coHVW+,j_Dϊmv/,f!oPP%:T3eu\NK1B-9EPEYTM9ec''G8Ըx? 9Xk פjiP,#*2na&B䂥/C"43eVTOaHG֠yLA(M^I-]Râb"T:X[{r/|k*=F46_ԷΟ;99%R= :h_ ڳDKX]ͶSyLACүgbb>a 7BJUК?v<>#RKyu0fұAӌc^s<{,+6zl5Y4e1TI*{E|ӽRJ"}{cEm=lOt|w_a1dZ,Mb~?,Y _ߧ`!F'd}EM?}$Xh7(),',⒅cC}Rb2u u(8GTA"r wW5~/ Jܫ`iyZ Mz<4Vzb|肽 D%8 -'8  VRE:TЗn=4t͠лnakp3~?wq/x -O8)|_Nj$HOொ|7Mr?~3h+|}}v!eeQQI f M d"j! -$2JgL5#:ihkLڱc'zeAMܳ}+얬I.OgEL^$/kߔwɝ{q#_D(_C-((N%YIQ*u/đlyh~UsouYY扵aW֚0T&ͅ$k>hn̳-2-{:9e[J'w{!=x"+A z_+ly!ͫ/q|t‘=*5$IUoǤ@fauYd{dU˥ibnh7:IyS^q<&-ӦKfMxꋺYH<Β 8:ՂLH$-_%ܱn(?pV*VA^}}|jz5"g͛db/GcFv~|Ө5!j7aqd4UIǪO$~4 _L $ I}5isjgh;mezTD#ana83uG%FR$@"|Ra2)0YUdVe<,~ˑ[ -נ"lFN8 : -O0OsnN"n2LFKq%ϑ'Djȫd-#(2d;i#>6ycr'$&ɗ1(PF-AԅCSd:fә-Z@t#JېAnG1z"CEv$H>I)[̬YT--GvV'E&9Z~'dii525` ٚ٘9Y"Kane$=6elr(@H߈KI<%;!ńJxW![=gvL 7rasU^Ι s T8oj6'1/daP&}?.mlYf"aBy?9όc#6ɄuyXpk$菰/TxT U-2q KLO/}p&h;‘&t *#DI@Z8AE)P  9LɈtՑCը"񶿷{I.N}[%h7,hb طjWjЗf]p"""Ҍ1u9.N%rGMGIEaXbY:kf͆v5/[T;`n~ژK:^~IeMK?V+577MS{?i"[UY3fR6 |`ܪOl-i۫D'<0׎*lу aw9_3ԝ7tj{ dy"E{* -BЮy"{i"ڝ'OnMȿqIˁ|IcH[.27KPw GMykm|wka8/>txoA9zGNwt@O^E-]PZXߜ* ?2|[3+Ώo>d -3q}'HJ>aGI^qQdo\(GPIE,1"vPNDUzBL$ƕn2KN-;rnz4*6 gwEVh3Ryć,d`Li#,})ȃjB(0t(E=UzjT]0F=X>X+PO=aC;8GyT]Euއ8H6UUE&TVm"[,!P_=H֐4 NtQTX'H3'IGgy\$owROs -ԠЯSVJ:ѻw"OW54L#>N:izFi=ID_qz^fj6ֵ,jk -jVj<VϖB[֡jbY36_:=ź!bϲ>OPRwRRE gFG 5*^Qndը#<mqz-ےHU(n| w/^Jk,h -۟^I mR@܊ܨ4䑒L3hL7*՝cKMS0cRE;peh *x2IČo!z ZE;p-0}ml^_b`U5q ~$%(6>|PZ4T -ėE dq$hH⹐a#`P, #X#h Ib?p MՈbyX+zةP+oy?84ud `\ -,ԏ1PRdۃ1H5IKlmHG:pw8eS7W.i, Y̯8mh7_(Sޣ|O $Q;tѻ Ix@:Ic G,z'? ІXxf EEY*: }`^y,ȧX(. 0y xrc)qqX[aBE >$+[UD)\S#=c!5Yf`2%oHa/WqNb:/YGd!гN15O,iqZ@pB0=UVC1EF .YU_ը`z_8 yfq 6I۠'Ok^H%GzKe[]v'JnmlY,TYf!y.X׎oEixazA#1tl&|6ldf6gMdCn-X,-NQ1h-%_%qnb!ʰHT==qjQmY$iYپҺa׿*v6bAdTM$z0Wؖy@8z%:\^ 0gOKbVf<|@ ,f'zsklb0CSr\[ :|,toR[-CLX X'7J.* bV/){/oi \v,$jUg/ Ll4jhv4\7U1lA+,3Y(vw}{N0s8!Cs$nA@:P{ FTt>$95Rվ$$^{J&m,g JyQovv6h6p;pR:]z]A?L)P8=AGQ@CϡYԤ[^ě>Vt<{BSޙK"ll848q̒yUZX:)nLnRz wAZ(5g޺vZ'&ûs\J7*JQZ8NɮhEQ܂ҵ6WOxe`@PJdvA y*bZ郡Eu}.Œbgk_8Oe:N阕]Jym*ә++ȩmW>Cz&> ÐVm0x U<%tʬ4D \mLs^4Mm^N)i0ih'#-8ZL)eHUsAhấ'L=0q-ZXhq$-_sςMf:#Y#֩•GA?")V\Oq.'5O57Y-UYn~xG S,Q ө --.DDZxh1Pp.jޥ =L-4iA T0,TcbjeKf^lQ950xmmd7LLgu LhRc]Zf1|Սw ֒tHUZ9wX5Tx3kX*;/+XGd~HM -f! >؞؛Y$Z|h}̻]~,[XD 2p"kZk\/^,c ^b7c}bY 5EH),q,vY-,k:^Q}?ԉ:>~}Q֝x/bkpQ,,Ͽ̱phogh^!|g,ɱg7شI?wtěAtchK\T -Z@s^); n亀ɍ?{,ARd˺u簜MI M~ݹ eRȢ$-DKZ, -/TQff `g !hlb$j\BśbSkiF5(v[hUrE۵j" EZTY츦>z8hӸ0/0݋~wm)}tXۀ4~]8vVB MZ7-wm[f;;҂;-T }ptN:| 13c%Cނ/p -# O aQ2MI.aA#L^$%u.ʘ2|F9|YrAy -wUʯ^-PQW¢( YjeVk b]xhZz@aQ1ttm>Z5gxxHp{g}S{~sgvӫqf`Y"KaX\~沅f&viƇ1|:o.~*-K=%MJHä1R4EIM҇t]YN,!O_EzU#)_o*LP)?Rr,eXY|vrX9T*+R.)*SUըުxuf\Bݮ;<X 33=JT*Z*  -jEE - "=H8L`FI"U0G#HK BQĨʣ(Fx -}G辱5  -v&#Q"|E @eDpHs) P};θhz0r3<"f=bHz[zR3K$ Ї`pq -CN(!W#ZBP uD P'qB7@ۛ8[!mPWϵA“@ɶlrџۗ(ث;?}^?tJк U+>vTl\iU+ˮުY_hX>* %omybc)]{%zЕΔWj\J߸yDk-GL^^sƿ>w0fF+T.& ޲cYBa?z4 @[*9lyViAȯ^(ungo|uUzZBܧXν,o+I̾N" [Ԇ\{9:[S QJrSo6(tDܑ/=rc,{FO(Uɕ*n1MX}Q,խ[h\ݾ͇UIGoZ6>c9imTuf%}v4c/^u97uDVIudj3_`/K)Ƈ/|R -L"=uAlewj"."Fa!z7+bmU*q)(%9R,z=HLg5,^B1W -l,qq[5&}qNm˒jԌ/B'\>%>pAʳ֑'J=6؎NQcOb|.? T̰EV3# łP6;\W溽pm7Lz89gsޭ\CO~.PP{@hfX?slvWŢ9mX˅VwGycc1`J<^o@w-(%ǡ< X!H$Xp.1F198R+U=RSgnt|Vve]~(kmO9n-P)g@1&މ\K3z:SȣhA‡S<> #֗8IVdPޅwnٮPDZ2v}Pqd"MҦaX6isDLiMz/2(0 -$(8 "Âˠ22 ;waY,sRzL%{rv!u̫ĮO}9WʷH(>*^Ȕ $e@-/u%igT~|R zQ:;3{'/KbO)!'TT&|ׯ\' u$bF[Y6fMJ"k_,: _>㻇*u@|Tn׊P1g#& gG9GR|xWi_{De*#I;$T!wk}.q#1YMk?%x/#U~P}x%ك+ĆJ\)nDKBx{oH^kz1>ŗOv:{)GlKh+7 -T$? Y#rZ|tByGm/wg. EXkdK)丼=$-|B{n7MF'מ%Ճxlvf`Ep!g&̓E6OzMHmc *rs"Z?qmTK~* M7HӁkI Fv'u'it0l;T8 Z8-fT!֓D+ANT|iI@K\ ƆalȜ&"gAy謚LtFtѮ?I2,mMqgoS] .3eԧt3$ruu7-mbq8f9ڐaԶHL)UE2Dh8Y[eAofYxcw| -U:JS5AuE(osh5qtl/Z*!qyO#f)8fH[p QdD^qGsyַ&]&dL0. xaNW\Z3 3 -nˉCPjc+ h6d;v~*ƱHy݋]#16`iw%3']CA$X:3! g,3em-578:X~5cߚp ڜ:>3밳aŘ z4l$$:S(c NCqHծ֣87QOrmCL4cYf\*hbgՙuzL]$u(SU`zy]QqV\-l\ 0LCDہҩuWg#[T ȄU[ Ub%ݢxֱhB|u0KѰp`.FķmE5͝q5v"P4yO$Qö'jشP*YS D. pJא% |ܕoXx5#{x50E8㸵xM֧-\E8<]Y(\IIS0^lSdCS5=1@E TBLcI$ d.#;s -Ѕ>s`Dڲ L<*hIǬővN55X54vI:cAV0܏p#J8YcG8E2 Ȧ949v;fng"OO7%PgyZk@c%\) -Z=$!baQɻieU7FPen؁˭@m "C6E,:0Y8; -NaO}y@7*Ν_~W;~t~e|? 2 yzZ -I%1-H0b b\@ & 2AHq_ffJA"DĀj0*F3feUʗTj>Lzw9w{sC\RKSG,IiZmQW͡ku½>Wy"RCxN*{u32w#c` ihMsLkw6<ݓ>'5fNmIOpmz*/Vܰw}ٻ־,;~Yӊ}=n=|xdՕewr:Onka'Z,>:!\Іik>Za{E<8̌+ǫʺ>Zײ +Vz ls ߬Ήx{/+p1?ka٥'.R'}|K:SUu*C.{.{Syqa {ׯlNl4S|SrPiכKԶN(3MqU{'FkȿuPخO+L]>y;]iy:ڌS!o3F}Y(N)X~6FcB>^ M"hOhdڃzDݨ 턼.1mW[nF `+}nu=d֡Lk5Q&\WY42dr{rQ"ߓkcK,9TϖlZν`9؃Y',2SxDhDRZ֗C?KQ*?|uzh_\f5r)42-T"XRyORƺ~ -&42%N,p&8D@Ms:8p b@ Fo(pBi$pa`(y,[0 ǀ-h0G/N&?#/C/7ycz Ӄer~(H!( - sh:p(:Աw^ [Qo';ߢG;(d@Qe M@KP SͻL8gɠ@Ɵ_ln}?{)㧞 IҤRWѯ"[bW;U˱G[|frX|>Y7/K,b 4,MŃ\n?l-P}1tnzu!5;Ϫ -endstream -endobj -131 0 obj -<< -/Type /FontDescriptor -/Ascent 770 -/CapHeight 718 -/Descent -229 -/Flags 96 -/FontBBox [-170 -225 1116 931] -/FontName /Helvetica-Oblique -/ItalicAngle -15 -/StemV 88 -/XHeight 523 -/StemH 88 ->> -endobj -132 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 34 -/FontBBox [-195 -250 1000 965] -/FontName /NewCenturySchlbk-Roman -/ItalicAngle 0 -/StemV 92 -/XHeight 464 -/StemH 45 ->> -endobj -133 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 262178 -/FontBBox [-165 -250 1000 988] -/FontName /NewCenturySchlbk-Bold -/ItalicAngle 0 -/StemV 154 -/XHeight 475 -/StemH 54 ->> -endobj -134 0 obj -<< -/Type /FontDescriptor -/Ascent 737 -/CapHeight 722 -/Descent -205 -/Flags 98 -/FontBBox [-166 -250 994 958] -/FontName /NewCenturySchlbk-Italic -/ItalicAngle -16 -/StemV 80 -/XHeight 466 -/StemH 45 ->> -endobj -15 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 121 -/Widths [278 296 389 556 556 833 815 204 333 333 500 606 278 333 278 278 -556 556 556 556 556 556 556 556 556 556 278 278 606 606 606 444 -737 722 722 722 778 722 667 778 833 407 556 778 667 944 815 778 -667 778 722 630 667 815 722 981 704 704 611 333 606 333 606 500 -333 556 556 444 574 500 333 537 611 315 296 593 315 889 611 500 -574 556 444 463 389 611 537 778 537 537 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Roman -/FontDescriptor 132 0 R ->> -endobj -16 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [287 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Bold -/FontDescriptor 133 0 R ->> -endobj -25 0 obj -<< -/Type /Font -/Subtype /Type1 -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /NewCenturySchlbk-Italic -/FontDescriptor 134 0 R ->> -endobj -4 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 45 -/LastChar 57 -/Widths [333 0 0 500 500 500 500 500 500 500 500 500 500 ] -/Encoding /WinAnsiEncoding -/BaseFont /Times-Roman -/FontDescriptor 121 0 R ->> -endobj -5 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 121 -/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 278 -0 0 556 0 0 0 0 0 0 556 0 0 0 0 0 0 -0 722 722 722 722 667 611 0 0 278 0 722 611 833 722 778 -667 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0 -0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611 -611 0 389 556 333 611 556 778 556 556 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Bold -/FontDescriptor 122 0 R ->> -endobj -6 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 85 -/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 333 0 278 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 667 0 722 722 667 611 0 0 278 0 0 556 833 722 778 -667 0 722 667 611 722 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica -/FontDescriptor 123 0 R ->> -endobj -7 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [250 0 371 606 0 840 0 0 333 333 0 0 250 333 250 606 -500 500 500 500 500 500 500 500 500 0 250 250 606 606 606 0 -0 778 611 709 774 611 556 763 832 337 0 0 611 946 831 786 -604 786 668 525 613 778 722 1000 667 667 667 333 606 333 0 0 -0 500 553 444 611 479 333 556 582 291 234 556 291 883 582 546 -601 560 395 424 326 603 565 834 516 556 500 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Roman -/FontDescriptor 124 0 R ->> -endobj -8 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 146 -/Widths [600 600 600 0 0 600 0 0 600 600 0 0 600 600 600 600 -600 600 600 600 0 0 600 0 0 0 0 0 600 600 600 0 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 -0 600 600 600 0 600 600 600 600 600 0 0 600 600 600 600 -600 0 600 600 600 600 0 600 0 0 600 600 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier -/FontDescriptor 125 0 R ->> -endobj -9 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [600 0 0 0 0 0 0 0 0 0 0 0 0 600 600 0 -0 600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 -600 0 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 0 0 0 0 0 600 0 600 0 0 600 0 600 600 -0 0 600 0 600 600 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Bold -/FontDescriptor 126 0 R ->> -endobj -17 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 119 -/Widths [250 0 0 0 0 889 0 0 0 0 0 0 250 0 0 0 -500 0 0 0 500 500 0 0 0 500 0 0 0 0 0 0 -0 778 667 722 833 611 0 833 0 389 0 0 611 1000 833 0 -0 0 722 611 667 778 0 0 0 0 0 0 0 0 0 0 -0 500 0 0 0 0 0 556 0 333 0 0 333 0 611 0 -611 0 0 0 333 611 0 833 ] -/Encoding /WinAnsiEncoding -/BaseFont /Palatino-Bold -/FontDescriptor 127 0 R ->> -endobj -18 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 151 -/Widths [600 0 0 0 0 0 0 0 0 600 0 0 600 0 600 600 -0 600 600 0 0 0 0 0 0 0 0 0 0 0 0 600 -0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 -600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 -0 600 0 600 0 600 0 0 0 600 0 0 600 0 600 600 -600 600 600 600 600 600 0 0 0 600 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 600 ] -/Encoding /WinAnsiEncoding -/BaseFont /Courier-Oblique -/FontDescriptor 128 0 R ->> -endobj -32 0 obj -<< -/Type /Font -/Subtype /Type0 -/BaseFont /JBPHDC+Symbol -/Encoding /Identity-H -/DescendantFonts [ 135 0 R ] -/ToUnicode 136 0 R ->> -endobj -135 0 obj -<< -/Type /Font -/Subtype /CIDFontType2 -/BaseFont /JBPHDC+Symbol -/FontDescriptor 129 0 R -/CIDSystemInfo<< -/Registry (Adobe) -/Ordering (Identity) -/Supplement 0 ->> -/DW 1000 -/W [ -66 [603] -] ->> -endobj -48 0 obj -<< -/Type /Font -/Subtype /TrueType -/FirstChar 32 -/LastChar 32 -/Widths [278 ] -/Encoding /WinAnsiEncoding -/BaseFont /Helvetica-Oblique -/FontDescriptor 131 0 R ->> -endobj -136 0 obj -<< -/Filter /FlateDecode -/Length 219 ->> -stream -HTP=o0 +<TUB,w C?Th\bhD& &`[~{<|v`簰E mڻ-Dܭs©!@] s^=>T _!{3tqBJPAӀA/fB?_#zs4ЈPWI7GAr:/I5"oxᕫnFœ=noFOxN ? (j -endstream -endobj -1 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 3 0 R -/Contents 2 0 R ->> -endobj -12 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 14 0 R -/Contents 13 0 R ->> -endobj -19 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 21 0 R -/Contents 20 0 R ->> -endobj -22 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 24 0 R -/Contents 23 0 R ->> -endobj -26 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 28 0 R -/Contents 27 0 R ->> -endobj -29 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 31 0 R -/Contents 30 0 R ->> -endobj -33 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 35 0 R -/Contents 34 0 R ->> -endobj -36 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 38 0 R -/Contents 37 0 R ->> -endobj -39 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 41 0 R -/Contents 40 0 R ->> -endobj -42 0 obj -<< -/Type /Page -/Parent 11 0 R -/Resources 44 0 R -/Contents 43 0 R ->> -endobj -45 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 47 0 R -/Contents 46 0 R ->> -endobj -51 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 53 0 R -/Contents 52 0 R ->> -endobj -54 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 56 0 R -/Contents 55 0 R ->> -endobj -63 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 65 0 R -/Contents 64 0 R ->> -endobj -81 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 83 0 R -/Contents 82 0 R ->> -endobj -96 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 98 0 R -/Contents 97 0 R ->> -endobj -99 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 101 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 104 0 R -/Contents 103 0 R ->> -endobj -105 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 107 0 R -/Contents 106 0 R ->> -endobj -108 0 obj -<< -/Type /Page -/Parent 50 0 R -/Resources 110 0 R -/Contents 109 0 R ->> -endobj -111 0 obj -<< -/Type /Page -/Parent 114 0 R -/Resources 113 0 R -/Contents 112 0 R ->> -endobj -115 0 obj -<< -/Type /Page -/Parent 114 0 R -/Resources 117 0 R -/Contents 116 0 R ->> -endobj -118 0 obj -<< -/Type /Page -/Parent 114 0 R -/Resources 120 0 R -/Contents 119 0 R ->> -endobj -137 0 obj -<< -/S /D ->> -endobj -138 0 obj -<< -/Nums [0 137 0 R ] ->> -endobj -11 0 obj -<< -/Type /Pages -/Kids [1 0 R 12 0 R 19 0 R 22 0 R 26 0 R 29 0 R 33 0 R 36 0 R 39 0 R 42 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -50 0 obj -<< -/Type /Pages -/Kids [45 0 R 51 0 R 54 0 R 63 0 R 81 0 R 96 0 R 99 0 R 102 0 R 105 0 R 108 0 R] -/Count 10 -/Parent 49 0 R ->> -endobj -114 0 obj -<< -/Type /Pages -/Kids [111 0 R 115 0 R 118 0 R] -/Count 3 -/Parent 49 0 R ->> -endobj -49 0 obj -<< -/Type /Pages -/Kids [11 0 R 50 0 R 114 0 R ] -/Count 23 -/MediaBox [0 0 612 792] ->> -endobj -139 0 obj -<< -/CreationDate (D:20210202102724-06'00') -/ModDate (D:20210202102724-06'00') -/Producer (Apple pstopdf) ->> -endobj -140 0 obj -<< -/Type /Catalog -/Pages 49 0 R -/PageLabels 138 0 R ->> -endobj -xref -0 141 -0000000000 65535 f -0000181004 00000 n -0000000016 00000 n -0000004668 00000 n -0000176782 00000 n -0000176994 00000 n -0000177437 00000 n -0000177752 00000 n -0000178314 00000 n -0000178842 00000 n -0000152998 00000 n -0000183027 00000 n -0000181085 00000 n -0000004821 00000 n -0000012725 00000 n -0000175889 00000 n -0000176428 00000 n -0000179265 00000 n -0000179675 00000 n -0000181169 00000 n -0000012916 00000 n -0000020255 00000 n -0000181253 00000 n -0000020422 00000 n -0000027683 00000 n -0000176604 00000 n -0000181337 00000 n -0000027896 00000 n -0000033786 00000 n -0000181421 00000 n -0000033988 00000 n -0000041136 00000 n -0000180186 00000 n -0000181505 00000 n -0000041316 00000 n -0000047845 00000 n -0000181589 00000 n -0000048012 00000 n -0000055613 00000 n -0000181673 00000 n -0000055802 00000 n -0000061904 00000 n -0000181757 00000 n -0000062082 00000 n -0000068960 00000 n -0000181841 00000 n -0000069138 00000 n -0000076049 00000 n -0000180536 00000 n -0000183397 00000 n -0000183164 00000 n -0000181925 00000 n -0000076240 00000 n -0000081661 00000 n -0000182009 00000 n -0000081839 00000 n -0000088193 00000 n -0000147549 00000 n -0000147704 00000 n -0000147876 00000 n -0000148048 00000 n -0000148216 00000 n -0000148382 00000 n -0000182093 00000 n -0000088455 00000 n -0000093229 00000 n -0000148552 00000 n -0000148716 00000 n -0000148888 00000 n -0000149056 00000 n -0000149218 00000 n -0000149380 00000 n -0000149542 00000 n -0000149704 00000 n -0000149870 00000 n -0000150025 00000 n -0000150196 00000 n -0000150367 00000 n -0000150533 00000 n -0000150699 00000 n -0000150865 00000 n -0000182177 00000 n -0000093575 00000 n -0000098318 00000 n -0000151031 00000 n -0000151201 00000 n -0000151356 00000 n -0000151511 00000 n -0000151664 00000 n -0000151817 00000 n -0000151970 00000 n -0000152138 00000 n -0000152310 00000 n -0000152482 00000 n -0000152654 00000 n -0000152826 00000 n -0000182261 00000 n -0000098675 00000 n -0000106944 00000 n -0000182345 00000 n -0000107133 00000 n -0000112336 00000 n -0000182431 00000 n -0000112526 00000 n -0000117488 00000 n -0000182518 00000 n -0000117667 00000 n -0000125215 00000 n -0000182605 00000 n -0000125383 00000 n -0000130832 00000 n -0000182692 00000 n -0000131000 00000 n -0000137137 00000 n -0000183305 00000 n -0000182780 00000 n -0000137327 00000 n -0000143446 00000 n -0000182868 00000 n -0000143625 00000 n -0000147381 00000 n -0000153139 00000 n -0000153337 00000 n -0000153544 00000 n -0000153740 00000 n -0000153941 00000 n -0000154133 00000 n -0000154336 00000 n -0000154542 00000 n -0000154744 00000 n -0000154936 00000 n -0000175050 00000 n -0000175256 00000 n -0000175465 00000 n -0000175678 00000 n -0000180331 00000 n -0000180711 00000 n -0000182956 00000 n -0000182985 00000 n -0000183497 00000 n -0000183621 00000 n -trailer -<< -/Size 141 -/Root 140 0 R -/Info 139 0 R -/ID [<519d4f7b9867e3b6dc0ba10a05282410><519d4f7b9867e3b6dc0ba10a05282410>] ->> -startxref -183693 -%%EOF diff --git a/docs/primer/001-TITLEPAGE.pdf b/docs/primer/001-TITLEPAGE.pdf deleted file mode 100644 index 3cb0831f..00000000 Binary files a/docs/primer/001-TITLEPAGE.pdf and /dev/null differ diff --git a/docs/primer/002-PREFACE.pdf b/docs/primer/002-PREFACE.pdf deleted file mode 100644 index 6e8c71b5..00000000 Binary files a/docs/primer/002-PREFACE.pdf and /dev/null differ diff --git a/docs/primer/003-TOC.pdf b/docs/primer/003-TOC.pdf deleted file mode 100644 index 4e288637..00000000 Binary files a/docs/primer/003-TOC.pdf and /dev/null differ diff --git a/docs/primer/01-GLOSSARY.pdf b/docs/primer/01-GLOSSARY.pdf deleted file mode 100644 index 4cc6c9cd..00000000 Binary files a/docs/primer/01-GLOSSARY.pdf and /dev/null differ diff --git a/docs/primer/02-TYPING-SHORTCUTS.pdf b/docs/primer/02-TYPING-SHORTCUTS.pdf deleted file mode 100644 index 69e05d49..00000000 Binary files a/docs/primer/02-TYPING-SHORTCUTS.pdf and /dev/null differ diff --git a/docs/primer/03-USING-MENUS.pdf b/docs/primer/03-USING-MENUS.pdf deleted file mode 100644 index 9fb54477..00000000 Binary files a/docs/primer/03-USING-MENUS.pdf and /dev/null differ diff --git a/docs/primer/04-USING-FILES.pdf b/docs/primer/04-USING-FILES.pdf deleted file mode 100644 index d5fc07a7..00000000 Binary files a/docs/primer/04-USING-FILES.pdf and /dev/null differ diff --git a/docs/primer/05-FILEBROWSER.pdf b/docs/primer/05-FILEBROWSER.pdf deleted file mode 100644 index 53d814b9..00000000 Binary files a/docs/primer/05-FILEBROWSER.pdf and /dev/null differ diff --git a/docs/primer/06-WINDOWS.pdf b/docs/primer/06-WINDOWS.pdf deleted file mode 100644 index 78d850ad..00000000 Binary files a/docs/primer/06-WINDOWS.pdf and /dev/null differ diff --git a/docs/primer/07-EDITING-AND-SAVING.pdf b/docs/primer/07-EDITING-AND-SAVING.pdf deleted file mode 100644 index f4abf7ba..00000000 Binary files a/docs/primer/07-EDITING-AND-SAVING.pdf and /dev/null differ diff --git a/docs/primer/08-YOUR-INIT.pdf b/docs/primer/08-YOUR-INIT.pdf deleted file mode 100644 index c38b6c21..00000000 Binary files a/docs/primer/08-YOUR-INIT.pdf and /dev/null differ diff --git a/docs/primer/09-FLEXIBILITY.pdf b/docs/primer/09-FLEXIBILITY.pdf deleted file mode 100644 index dfe0f4da..00000000 Binary files a/docs/primer/09-FLEXIBILITY.pdf and /dev/null differ diff --git a/docs/primer/10-BREAK-MENU.pdf b/docs/primer/10-BREAK-MENU.pdf deleted file mode 100644 index bcf5a75a..00000000 Binary files a/docs/primer/10-BREAK-MENU.pdf and /dev/null differ diff --git a/docs/primer/11-WHAT-TO-DO.pdf b/docs/primer/11-WHAT-TO-DO.pdf deleted file mode 100644 index 0255deed..00000000 Binary files a/docs/primer/11-WHAT-TO-DO.pdf and /dev/null differ diff --git a/docs/primer/12-WINDOWS.pdf b/docs/primer/12-WINDOWS.pdf deleted file mode 100644 index 7704f6c1..00000000 Binary files a/docs/primer/12-WINDOWS.pdf and /dev/null differ diff --git a/docs/primer/13-WHAT-ARE-MENUS.pdf b/docs/primer/13-WHAT-ARE-MENUS.pdf deleted file mode 100644 index 1f39659d..00000000 Binary files a/docs/primer/13-WHAT-ARE-MENUS.pdf and /dev/null differ diff --git a/docs/primer/14-BITMAPS.pdf b/docs/primer/14-BITMAPS.pdf deleted file mode 100644 index 54b8dbbf..00000000 Binary files a/docs/primer/14-BITMAPS.pdf and /dev/null differ diff --git a/docs/primer/15-DISPLAYSTREAMS.pdf b/docs/primer/15-DISPLAYSTREAMS.pdf deleted file mode 100644 index e7d3956f..00000000 Binary files a/docs/primer/15-DISPLAYSTREAMS.pdf and /dev/null differ diff --git a/docs/primer/16-FONTS.pdf b/docs/primer/16-FONTS.pdf deleted file mode 100644 index 7be24777..00000000 Binary files a/docs/primer/16-FONTS.pdf and /dev/null differ diff --git a/docs/primer/17-INSPECTOR.pdf b/docs/primer/17-INSPECTOR.pdf deleted file mode 100644 index 59a1a55e..00000000 Binary files a/docs/primer/17-INSPECTOR.pdf and /dev/null differ diff --git a/docs/primer/18-MASTERSCOPE.pdf b/docs/primer/18-MASTERSCOPE.pdf deleted file mode 100644 index 679b9fd2..00000000 Binary files a/docs/primer/18-MASTERSCOPE.pdf and /dev/null differ diff --git a/docs/primer/19-SPY.pdf b/docs/primer/19-SPY.pdf deleted file mode 100644 index 2298989e..00000000 Binary files a/docs/primer/19-SPY.pdf and /dev/null differ diff --git a/docs/primer/20-FREE-MENUS.pdf b/docs/primer/20-FREE-MENUS.pdf deleted file mode 100644 index 3c87c4f0..00000000 Binary files a/docs/primer/20-FREE-MENUS.pdf and /dev/null differ diff --git a/docs/primer/21-GRAPHER.pdf b/docs/primer/21-GRAPHER.pdf deleted file mode 100644 index efe5c8e4..00000000 Binary files a/docs/primer/21-GRAPHER.pdf and /dev/null differ diff --git a/docs/primer/22-RESOURCE-MANAGEMENT.pdf b/docs/primer/22-RESOURCE-MANAGEMENT.pdf deleted file mode 100644 index 547bfd22..00000000 Binary files a/docs/primer/22-RESOURCE-MANAGEMENT.pdf and /dev/null differ diff --git a/docs/primer/23-INTERACTIONS.pdf b/docs/primer/23-INTERACTIONS.pdf deleted file mode 100644 index 61b0506f..00000000 Binary files a/docs/primer/23-INTERACTIONS.pdf and /dev/null differ diff --git a/docs/primer/24-GLOBAL-VARIABLES.pdf b/docs/primer/24-GLOBAL-VARIABLES.pdf deleted file mode 100644 index 1a3dd20d..00000000 Binary files a/docs/primer/24-GLOBAL-VARIABLES.pdf and /dev/null differ diff --git a/docs/primer/25-REFERENCES.pdf b/docs/primer/25-REFERENCES.pdf deleted file mode 100644 index ad1ae82b..00000000 Binary files a/docs/primer/25-REFERENCES.pdf and /dev/null differ diff --git a/internal/MEDLEY-UTILS b/internal/MEDLEY-UTILS index 171065c8..f5fc7f22 100644 --- a/internal/MEDLEY-UTILS +++ b/internal/MEDLEY-UTILS @@ -1,44 +1,49 @@ -(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) +(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "16-Nov-2023 21:59:19" |{DSK}larry>il>medley>internal>MEDLEY-UTILS.;2| 18962 +(FILECREATED "29-Apr-2024 16:25:20" {DSK}larry>il>medley>internal>MEDLEY-UTILS.;9 28903 :EDIT-BY "lmm" - :CHANGES-TO (VARS OKLIBRARY OKLISPUSERS) - - :PREVIOUS-DATE " 4-Nov-2023 15:23:16" |{DSK}larry>il>medley>internal>MEDLEY-UTILS.;1|) + :PREVIOUS-DATE "26-Apr-2024 16:34:08" {DSK}larry>il>medley>internal>MEDLEY-UTILS.;8) (PRETTYCOMPRINT MEDLEY-UTILSCOMS) -(RPAQQ MEDLEY-UTILSCOMS ((FNS GATHER-INFO MAKE-FULLER-DB MEDLEY-FIX-LINKS MEDLEY-FIX-DATES) - (VARS MEDLEY-FIX-DIRS OKSOURCES OKLIBRARY OKLISPUSERS OKINTERNAL) - (FNS MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH) - (FNS BADFILE HCFILES PRETTYFILES) - (INITVARS (HCFILES) - (BADFILES)))) +(RPAQQ MEDLEY-UTILSCOMS + [(FNS GATHER-INFO MAKE-FULLER-DB MAKE-INDEX-HTMLS MEDLEY-FIX-LINKS MEDLEY-FIX-DATES) + (VARS MEDLEY-FIX-DIRS OKSOURCES OKLIBRARY OKLISPUSERS OKINTERNAL) + (FNS MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH MAKE-WHEREIS-LOOPS) + (FNS HCFILES MAKE-INDEX-HTMLS) + (PROP FILETYPE MEDLEY-UTILS) + (ADVISE TEDIT.PROMPTPRINT) + (FNS RECOMPILE-ONE RECMPL COMPILE-SETUP REMAKEFILES) + (P (READVISE TEDIT.PROMPTPRINT)) + (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) + (NLAML) + (LAMA]) (DEFINEQ (GATHER-INFO - (LAMBDA (PHASE) (* \; "Edited 22-May-2023 23:59 by lmm") - (* \; "Edited 26-Dec-2021 18:56 by larry") - (* \; "Edited 24-Oct-2021 09:43 by larry") + [LAMBDA (PHASE) (* ; "Edited 22-May-2023 23:59 by lmm") + (* ; "Edited 26-Dec-2021 18:56 by larry") + (* ; "Edited 24-Oct-2021 09:43 by larry") (SELECTQ PHASE - (ALL (|for| I |from| 0 |to| 4 |do| (GATHER-INFO I))) + (ALL (for I from 0 to 4 do (GATHER-INFO I))) (0 (SETQ SYSFILES (UNION SYSFILES FILELST)) (SETQ FILELST NIL) (FILESLOAD (SOURCE) SYSEDIT)) - (1 (SETQ LOADEDFILES (|for| X |in| LOADEDFILELST |collect| (FILENAMEFIELD X 'NAME))) + (1 [SETQ LOADEDFILES (for X in LOADEDFILELST collect (FILENAMEFIELD X 'NAME] (FILESLOAD FILESETS) - (SETQ ALLFILESETSFILES (|for| X |in| FILESETS |join| (APPEND (EVAL X)))) - (SETQ SOURCES (|for| X |in| (DIRECTORY (MEDLEYDIR "sources" "*.*;" T)) - |when| (NOT (MEMB (FILENAMEFIELD X 'EXTENSION) - '(LCOM DFASL TEDIT TXT))) - |collect| (FILENAMEFIELD X 'NAME)))) + [SETQ ALLFILESETSFILES (for X in FILESETS join (APPEND (EVAL X] + [SETQ SOURCES (for X in (DIRECTORY (MEDLEYDIR "sources" "*.*;" T)) + when [NOT (MEMB (FILENAMEFIELD X 'EXTENSION) + '(LCOM DFASL TEDIT TXT] collect (FILENAMEFIELD + X + 'NAME]) (-1 (PRINTOUT T " loaded files not in SYSFILES or FILELST: " - (|for| X |in| LOADEDFILES |when| (NOT (OR (FMEMB X SYSFILES) - (FMEMB X FILELST))) |collect| X) + (for X in LOADEDFILES when (NOT (OR (FMEMB X SYSFILES) + (FMEMB X FILELST))) collect X) T) (PRINTOUT T "Sources not loaded: " (CL:SET-DIFFERENCE SOURCES (APPEND ALLFILESETSFILES LOADEDFILES)) @@ -47,67 +52,65 @@ LOADEDFILES) T)) (2 (SETQ DEFINEDFNS (LET ((DEFD NIL)) - (MAPATOMS (FUNCTION (CL:LAMBDA (X) + [MAPATOMS (FUNCTION (CL:LAMBDA (X) (CL:WHEN (GETD X) - (CL:SETQ DEFD (CONS X DEFD)))))) + (CL:SETQ DEFD (CONS X DEFD)))] DEFD)) - (|for| X |in| DEFINEDFNS |when| (CCODEP X) - |do| (LET ((Y (PUTPROP X 'CCC (CALLSCCODE X)))) - (|for| REV |in| '(BLOCK-CALLED-BY CALLED-BY BOUND-BY SPECIAL-BY GLOBAL-BY) - |as| VAL |in| Y |do| (|for| S |in| VAL - |do| (PUTPROP S REV (CONS X (GETPROP S REV))))))) + [for X in DEFINEDFNS when (CCODEP X) + do (LET [(Y (PUTPROP X 'CCC (CALLSCCODE X] + (for REV in '(BLOCK-CALLED-BY CALLED-BY BOUND-BY SPECIAL-BY GLOBAL-BY) + as VAL in Y do (for S in VAL do (PUTPROP S REV (CONS X (GETPROP S REV] (SETQ CALLEDFNS NIL) - (MAPATOMS (FUNCTION (LAMBDA (X) - (|if| (AND (NOT (GETD X)) - (GETPROP X 'CALLED-BY)) - |then| (CL:PUSH X CALLEDFNS)))))) + [MAPATOMS (FUNCTION (LAMBDA (X) + (if (AND (NOT (GETD X)) + (GETPROP X 'CALLED-BY)) + then (CL:PUSH X CALLEDFNS]) (-2 (PRINTOUT T "Functions called and not defined" CALLEDFNS T)) - (3 (|for| X |in| SYSFILES - |do| (LOAD X 'PROP) - (PUTPROP X 'CONTENT (READFILE X)) - (|for| EXR |in| (GETPROP X 'CONTENT) - |do| (SELECTQ (CAR EXR) - (DEFINEQ (|for| DFN |in| (CDR EXR) - |do| (|if| (EQUAL (CADR DFN) - (GETPROP (CAR DFN) - 'EXPR)) - |then| (PRINTOUT T (CAR DFN) - " ") - (PUTPROP (CAR DFN) - 'EXPR - (CADR DFN)) - |else| (PRINTOUT T (CAR DFN) - "* ")))) - NIL))) - (SETQ ALLCONTENT (|for| X |in| SYSFILES |collect| (CONS X (GETPROP X 'CONTENT)))) - (* \; " don't edit with SEDIT") + (3 (for X in SYSFILES + do (LOAD X 'PROP) + (PUTPROP X 'CONTENT (READFILE X)) + (for EXR in (GETPROP X 'CONTENT) + do (SELECTQ (CAR EXR) + (DEFINEQ (for DFN in (CDR EXR) + do (if (EQUAL (CADR DFN) + (GETPROP (CAR DFN) + 'EXPR)) + then (PRINTOUT T (CAR DFN) + " ") + (PUTPROP (CAR DFN) + 'EXPR + (CADR DFN)) + else (PRINTOUT T (CAR DFN) + "* ")))) + NIL))) + [SETQ ALLCONTENT (for X in SYSFILES collect (CONS X (GETPROP X 'CONTENT] + (* ; " don't edit with SEDIT") (LET (DUPS) - (|for| X |in| SYSFILES - |do| (|for| FN |in| (FILEFNSLST X) - |do| (|if| (GETPROP FN 'WHEREIS) - |then| (NCONC1 (GETPROP FN 'WHEREIS) - X) - (OR (FMEMB FN DUPS) - (SETQ DUPS (CONS FN DUPS))) - |else| (PUTPROP FN 'WHEREIS (LIST X))))) + [for X in SYSFILES do (for FN in (FILEFNSLST X) + do (if (GETPROP FN 'WHEREIS) + then (NCONC1 (GETPROP FN 'WHEREIS) + X) + (OR (FMEMB FN DUPS) + (SETQ DUPS (CONS FN DUPS))) + else (PUTPROP FN 'WHEREIS (LIST X] (SETQ DUPFNS DUPS)) - (SETQ NO-SOURCE (|for| X |in| DEFINEDFNS |when| (NOT (GETPROP X 'EXPR)) |collect| X))) + (SETQ NO-SOURCE (for X in DEFINEDFNS when (NOT (GETPROP X 'EXPR)) collect X))) (-3 (PRINTOUT T "Functions compiled but no expr" NO-SOURCE T) (PRINTOUT T "Functions on more than one file: " DUPFNS T)) (4 (PRINTOUT T T "STARTING MASTERSCOPE PHASE ON " (DATE) T) (FILESLOAD (SOURCE) SYSEDIT) - (|for| X |in| SYSFILES |do| (MSNOTICEFILE X)) - (|for| X |in| SYSFILES |do| (PRINTOUT T T "Analyzing " X T) - (MASTERSCOPE `(ANALYZE ON ,(KWOTE X))))) + (for X in SYSFILES do (MSNOTICEFILE X)) + [for X in SYSFILES do (PRINTOUT T T "Analyzing " X T) + (MASTERSCOPE `(ANALYZE ON ,(KWOTE X]) (-4 "No queries yet") - (HELP)))) + (HELP]) (MAKE-FULLER-DB - (LAMBDA (DRIBBLEFILE DBFILE SYSOUTFILE) (* \; "Edited 3-Aug-2023 18:12 by frank") - (* \; "Edited 16-Jul-2022 22:07 by larry") - (* \; "Edited 20-Jun-2022 17:23 by larry") + [LAMBDA (DRIBBLEFILE DBFILE SYSOUTFILE) (* ; "Edited 3-Aug-2023 18:12 by frank") + (* ; "Edited 16-Jul-2022 22:07 by larry") + (* ; "Edited 20-Jun-2022 17:23 by larry") (FILESLOAD (SOURCE) FILESETS) (DRIBBLE (OR DRIBBLEFILE "fuller.dribble")) @@ -118,17 +121,77 @@ (DUMPDATABASE NIL (MKATOM (OR DBFILE "fuller.database"))) (DRIBBLE) (MAKESYS (OR SYSOUTFILE "fuller.sysout") - "Welcome to Fuller sysout"))) + "Welcome to Fuller sysout"]) + +(MAKE-INDEX-HTMLS + [LAMBDA (BASE TOP) (* ; "Edited 29-Apr-2024 14:18 by lmm") + (* ; "Edited 26-Apr-2024 16:15 by lmm") + (* ; "Edited 20-Apr-2024 12:34 by lmm") + (* ; "Edited 13-Apr-2024 21:18 by lmm") + [OR BASE (SETQ BASE (PSEUDOFILENAME (MEDLEYDIR] + (OR (DIRECTORYNAMEP BASE) + (ERROR BASE "not a directory name")) + (LET* ((SUBDIRS NIL) + (DEST (PACKFILENAME 'NAME "index" 'EXTENSION "html" 'VERSION NIL 'BODY BASE)) + (PSEUDOHOST (EQ (NTHCHAR BASE (CL:1- 0)) + '})) + SLASHED SHORTNAME) + (CL:WITH-OPEN-FILE + (S DEST :DIRECTION :OUTPUT :IF-EXISTS :NEW-VERSION :IF-DOES-NOT-EXIST :CREATE) + (CL:FORMAT S "Index page for ~a~%%" (SETQ SLASHED + (SLASHIT BASE))) + (CL:FORMAT S "

Index page for ~a

~%%" SLASHED) + (CL:FORMAT S "

This is an index of the files just to link them in.~%%

~%%")) + (NCONC SUBDIRS (FOR D IN SUBDIRS join (MAKE-INDEX-HTMLS D (OR TOP BASE]) (MEDLEY-FIX-LINKS - (LAMBDA (UNIXPATH) (* \; "Edited 18-Jan-2021 12:01 by larry") + [LAMBDA (UNIXPATH) (* ; "Edited 18-Jan-2021 12:01 by larry") (OR UNIXPATH (SETQ UNIXPATH (UNIX-GETENV "MEDLEYDIR")) - (ERROR "No Directory")) (* \; "Edited 18-Jan-2021 11:45 by larry") - (|ShellCommand| (CONCAT "cd " UNIXPATH " && /bin/sh scripts/fixlinks && /bin/sh /tmp/doit")))) + (ERROR "No Directory")) (* ; "Edited 18-Jan-2021 11:45 by larry") + (ShellCommand (CONCAT "cd " UNIXPATH " && /bin/sh scripts/fixlinks && /bin/sh /tmp/doit"]) (MEDLEY-FIX-DATES - (LAMBDA (DIRS) (* \; "Edited 28-Jan-2021 12:15 by larry") - (|for| X |in| (OR DIRS MEDLEY-FIX-DIRS) |join| (FIX-DIRECTORY-DATES (MEDLEYDIR (PRINT X T)))))) + [LAMBDA (DIRS) (* ; "Edited 28-Jan-2021 12:15 by larry") + (for X in (OR DIRS MEDLEY-FIX-DIRS) join (FIX-DIRECTORY-DATES (MEDLEYDIR (PRINT X T]) ) (RPAQQ MEDLEY-FIX-DIRS ("sources" "library" "lispusers" "internal" "greetfiles" "doctools")) @@ -153,8 +216,8 @@ (DEFINEQ (MAKE-EXPORTS-ALL - (LAMBDA (OUTFILE) (* \; "Edited 3-Aug-2023 18:34 by frank") - (* \; "Edited 9-Mar-2021 16:11 by larry") + [LAMBDA (OUTFILE) (* ; "Edited 3-Aug-2023 18:34 by frank") + (* ; "Edited 9-Mar-2021 16:11 by larry") (* "Edited May 3, 2018 by Ron Kaplan--relative to MEDLEYDIR/lispcore/. Don't know why it does the CORE/RENAME") (*  "Edited Aug 17 94 by Sybalsky -- point it to /king/export/lispcore as the truth directory.") @@ -164,184 +227,284 @@  "Edited September 29, 1986 by van Melle") (CNDIR (MEDLEYDIR "sources")) (LOAD 'FILESETS) - (GATHEREXPORTS EXPORTFILES (OR OUTFILE "exports.all")))) + (GATHEREXPORTS EXPORTFILES (OR OUTFILE "exports.all"]) (MAKE-WHEREIS-HASH - (LAMBDA (DRIBBLEFILE TMPFILE WHEREISFILE) (* \; "Edited 3-Aug-2023 18:37 by frank") - (* \; "Edited 12-Mar-2022 12:46 by rmk") - (* \; "Edited 24-Mar-2021 13:26 by larry") - (LET ((FILING.ENUMERATION.DEPTH 2) + [LAMBDA (DRIBBLEFILE TMPFILE WHEREISFILE DEPTH SUBDIRS) (* ; "Edited 4-Feb-2024 21:57 by lmm") + (* ; "Edited 3-Aug-2023 18:37 by frank") + (* ; "Edited 12-Mar-2022 12:46 by rmk") + (* ; "Edited 24-Mar-2021 13:26 by larry") + (LET ((FILING.ENUMERATION.DEPTH (OR DEPTH 2)) HASHFILE) (DRIBBLE (OR DRIBBLEFILE "whereis.dribble")) (SETQ HASHFILE (XCL::WHERE-IS-NOTICE (OR TMPFILE "whereis.hash-tmp") :FILES - (|for| X |in| MEDLEY-FIX-DIRS |collect| (CONCAT (MEDLEYDIR X) - "*.;")) + (for X in (OR SUBDIRS MEDLEY-FIX-DIRS) + collect (CONCAT (IF SUBDIRS + THEN X + ELSE (MEDLEYDIR X)) + "*.;")) :HASH-FILE-SIZE 60000 :NEW T)) (RENAMEFILE HASHFILE (OR WHEREISFILE "whereis.hash")) - (DRIBBLE)))) + (DRIBBLE]) + +(MAKE-WHEREIS-LOOPS + [LAMBDA NIL (* ; "Edited 3-Apr-2024 12:12 by lmm") + (* ; "Edited 4-Feb-2024 22:29 by lmm") + (MAKE-WHEREIS-HASH "whereis-loops.dribble" NIL "whereis-loops.hash" 4 (LIST (GIT-GET-PROJECT + 'LOOPS + 'CLONEPATH]) ) (DEFINEQ -(BADFILE - (LAMBDA NIL (* \; "Edited 20-Oct-2022 15:40 by lmm") - (* \; "Edited 22-Jun-2022 09:40 by larry") - (|pushnew| BADFILES *FILE*) - (LET ((STR (OPENSTREAM "BADFILES.TXT" 'APPEND))) - (SETFILEPTR STR -1) - (PRINT *FILE* STR) - (CLOSEF STR)) - (RETFROM (OR (STKPOS 'PRETTYFILES) - 'HCFILES)))) - (HCFILES - (LAMBDA (*FILE* DEST REDOFLG TOPDIRLEN) - (DECLARE (SPECVARS *FILE*) - (GLOBALVARS BADFILE)) (* \; "Edited 4-Nov-2023 11:14 by lmm") - (* \; "Edited 20-Oct-2022 16:11 by lmm") - (* \; "Edited 9-Aug-2022 20:44 by lmm") - (|if| (NULL *FILE*) - |then| (SETQ *FILE* MEDLEYDIR)) - (COND - ((LISTP *FILE*) - (FOR X IN *FILE* DO (HCFILES X DEST REDOFLG TOPDIRLEN))) - ((DIRECTORYNAMEP *FILE*) + [LAMBDA (BASE REDO SUBSETS) (* ; "Edited 23-Apr-2024 23:15 by lmm") + (* ; "Edited 22-Apr-2024 13:22 by lmm") + (* ; "Edited 5-Feb-2024 12:16 by lmm") + (* ; "Edited 4-Nov-2023 11:14 by lmm") + (* ; "Edited 20-Oct-2022 16:11 by lmm") - (* |;;| "canonicalize") +(* ;;;; "BASE is the root directory. Doesn't replace PDF files except when REDO") - (SETQ *FILE* (DIRECTORYNAME *FILE*)) - (OR TOPDIRLEN (SETQ TOPDIRLEN (CL:LENGTH (FILENAMEFIELD.STRING *FILE* 'DIRECTORY)))) - (CL:UNLESS DEST - (|ShellCommand| (CONCAT "mkdir -p " (UNIX-GETENV "MEDLEYDIR") - "/tmp/psfiles/")) - (SETQ DEST (MEDLEYDIR "tmp/psfiles" NIL T T))) +(* ;;; " SUBSETS is some combinsyion og (:YRDY :HYML :PRETTY and INDEX") - (* |;;| "first deal with files in this directory") + (LET + [[DIRLIST (LIST (OR BASE (PSEUDOFILENAME (MEDLEYDIR] + (PHASES (OR SUBSETS '(TEDIT PRETTY INDEX HRULE] + (FILESLOAD PDFSTREAM SKETCH) + (FONTSET 'STANDARD) + (WHILE DIRLIST + DO + (SETQ BASE (POP DIRLIST)) + (FOR SRCPATH IN (DIRECTORY (CONCAT BASE "*.*;")) + DO (PROG* [(SRC (UNPACKFILENAME SRCPATH)) + [EXT (U-CASE (LISTGET SRC 'EXTENSION] + (DIR (LISTGET SRC 'DIRECTORY)) + FRDY LDGP DEST (NOV (PACKFILENAME `(VERSION NIL ,@SRC] + (CL:FORMAT T "Starting on ~a :~%%" SRCPATH) + (CL:WHEN (DIRECTORYNAMEP SRCPATH) - (|for| EXT |in| '("TED*" "SKETCH") - |do| (|for| X |in| (DIRECTORY (CONCAT *FILE* "*." EXT ";*")) - |do| (HCFILES X DEST REDOFLG TOPDIRLEN))) + (* ;; "any directory names, push them off and do them in another phase") - (* |;;| " then deal with subdirs ") + (CL:UNLESS (OR (STRPOS ">." NOV) + (INFILEP (CONCAT NOV ".skip"))) + (SETQ DIRLIST (NCONC1 DIRLIST SRCPATH))) + (RETURN)) + (CL:WHEN + (MEMB EXT + '(PDF SKIP HTML LCOM DFASL SH SYSOUT DRIBBLE IMPTR DISPLAYFONT ALL + DATABASE)) - (|for| X |in| (DIRECTORY (CONCAT *FILE* "*")) - |when| (|for| SKIP |in| '(">." ">dinfo>") |always| (NOT (STRPOS SKIP (L-CASE X)))) - |when| (DIRECTORYNAMEP X) |do| (HCFILES X DEST REDOFLG TOPDIRLEN))) - ((SETQ *FILE* (INFILEP *FILE*)) - (LET* ((TF (UNPACKFILENAME.STRING *FILE*)) - (NAME (LISTGET TF 'NAME)) - (DIR (LISTGET TF 'DIRECTORY)) - (PSFILE (PACKFILENAME.STRING - 'EXTENSION - (|if| (EQ REDOFLG 'IP) - |then| "IP" - |else| "PS") - 'NAME - (|if| (EQ DEST T) - |then| (* \; "with the tedit file") - NAME - |else| (CONCAT (PACK (SUBST '- '> (UNPACK (SUBSTRING DIR (IPLUS 2 TOPDIRLEN - ) - -1)))) - "-" NAME)) - 'HOST - (LISTGET TF 'HOST) - 'DIRECTORY - (|if| (EQ DEST T) - |then| DIR - |else| DEST))) - (TEXTSTREAM)) - (|if| (AND (NOT REDOFLG) - (INFILEP PSFILE)) - |then| (* \; " do nothing") - (PRINTOUT T PSFILE " already there" T) - |elseif| (EQ REDOFLG 'TEST) - |then| (PRINTOUT T *FILE* "-> " PSFILE T) - (CLOSEF (OPENTEXTSTREAM *FILE*)) - |elseif| (MEMBER *FILE* BADFILES) - |then| (PRINTOUT T "Skipping " *FILE* " on BADFILES") - |else| (PRINTOUT T "Converting " *FILE* " to " PSFILE "...") - (TEDIT.FORMAT.HARDCOPY (SETQ TEXTSTREAM (OPENTEXTSTREAM *FILE*)) - PSFILE T NIL NIL NIL (|if| (EQ REDOFLG 'IP) - |then| 'INTERPRESS - |else| 'POSTSCRIPT)) - (|printout| T " DONE" T) - (CLOSEF? TEXTSTREAM)))) - (T (PRINTOUT T "no such file " T))))) + (* ;; "ignore any of these extensions") -(PRETTYFILES - (LAMBDA (*FILE* DEST REDOFLG TOPDIRLEN) - (DECLARE (SPECVARS *FILE*) - (GLOBALVARS BADFILES)) (* \; "Edited 20-Oct-2022 16:12 by lmm") - (* \; "Edited 9-Aug-2022 20:44 by lmm") - (|if| (NULL *FILE*) - |then| (SETQ *FILE* MEDLEYDIR)) - (COND - ((DIRECTORYNAMEP *FILE*) + (RETURN)) - (* |;;| "canonicalize") + (* ;; + " doesnt (yet) implement / to - translattion. .readme should show up as -.readme.") - (SETQ *FILE* (DIRECTORYNAME *FILE*)) - (OR TOPDIRLEN (SETQ TOPDIRLEN (CL:LENGTH (FILENAMEFIELD.STRING *FILE* 'DIRECTORY)))) - (CL:UNLESS DEST - (|ShellCommand| (CONCAT "mkdir -p " (UNIX-GETENV "MEDLEYDIR") - "/tmp/psfiles/")) - (SETQ DEST (MEDLEYDIR "tmp/psfiles" NIL T T))) + (SETQ DEST (PACKFILENAME 'EXTENSION 'pdf 'NAME + (IF EXT + THEN (LISTGET SRC 'NAME) + ELSE (PACK* (LISTGET SRC 'NAME) + '-src)) + 'BODY NOV)) + (CL:WHEN (AND (NOT REDO) + (INFILEP DEST)) + (CL:FORMAT T "~a already there~%%" DEST) + (RETURN)) + (CL:WHEN (INFILEP (CONCAT DEST ".skip")) + (PRINTOUT T "Explicit .skip " DEST T) + (RETURN)) + (IF (MEMB 'TEDIT PHASES) + THEN (CL:WHEN [OR (MEMB EXT '(TEDIT TED SKETCH BRAVO)) + (CAR (NLSETQ (TEDIT.FORMATTEDFILEP SRCPATH] + (IF (EQ REDO 'TEST) + THEN (CL:FORMAT T "Testing open ~a..." SRCPATH) + (CLOSEF? (OPENTEXTSTREAM SRCPATH)) + ELSE (OR [NLSETQ (CL:WITH-OPEN-STREAM (S (OPENTEXTSTREAM SRCPATH) + ) + (TEDIT.FORMAT.HARDCOPY S DEST T NIL NIL + NIL 'PDF] + (PRINT 'FAIL T))) + (CL:FORMAT T "DONE"))) + (CL:WHEN (AND (MEMB 'PRETTY PHASES) + (MEMB EXT '(NIL IL)) + [SETQ LSFP (CAR (NLSETQ (LISPSOURCEFILEP SRCPATH] + (NEQ LSFP *COMMON-LISP-READ-ENVIRONMENT*)) + (PRINTOUT T "PDF printing " " to " DEST "...") + (OR (NLSETQ (CL:WITH-OPEN-STREAM (STR (OPEN-PDF-STREAM DEST)) + (PRETTYFILEINDEX SRCPATH NIL STR))) + (PRINT 'FAIL T)) + (PRINTOUT T "DONE" T))]) - (* |;;| "first deal with files in this directory; ignore files with extensions for now\"*.LISP\" \"*.ILISP\"") +(MAKE-INDEX-HTMLS + [LAMBDA (BASE TOP) (* ; "Edited 29-Apr-2024 14:18 by lmm") + (* ; "Edited 26-Apr-2024 16:15 by lmm") + (* ; "Edited 20-Apr-2024 12:34 by lmm") + (* ; "Edited 13-Apr-2024 21:18 by lmm") + [OR BASE (SETQ BASE (PSEUDOFILENAME (MEDLEYDIR] + (OR (DIRECTORYNAMEP BASE) + (ERROR BASE "not a directory name")) + (LET* ((SUBDIRS NIL) + (DEST (PACKFILENAME 'NAME "index" 'EXTENSION "html" 'VERSION NIL 'BODY BASE)) + (PSEUDOHOST (EQ (NTHCHAR BASE (CL:1- 0)) + '})) + SLASHED SHORTNAME) + (CL:WITH-OPEN-FILE + (S DEST :DIRECTION :OUTPUT :IF-EXISTS :NEW-VERSION :IF-DOES-NOT-EXIST :CREATE) + (CL:FORMAT S "Index page for ~a~%%" (SETQ SLASHED + (SLASHIT BASE))) + (CL:FORMAT S "

Index page for ~a

~%%" SLASHED) + (CL:FORMAT S "

This is an index of the files just to link them in.~%%

    ~%%") + (FOR FULLNAME IN (DIRECTORY (CONCAT BASE "*.*;")) + DO (IF (EQ (NTHCHAR FULLNAME -1) + '>) + THEN + (* ;; "A directory") - (|for| PAT |in| '("*.;") |do| (|for| X |in| (DIRECTORY (CONCAT *FILE* PAT)) - WHEN (NOT (DIRECTORYNAMEP X)) WHEN (INFILEP X) - WHEN (CAR (OR (NLSETQ (LISPSOURCEFILEP X)) - (PROGN (PRINTOUT T "LISPSOURCEFILEP error" X) - NIL))) - |do| (PRETTYFILES X DEST REDOFLG TOPDIRLEN))) + (IF (NOT (DIRECTORYNAMEP FULLNAME)) + THEN (HELP "NOT DIRNAME")) + (SETQ SHORTNAME (MKATOM (SUBSTRING FULLNAME + (+ (NCHARS BASE) + (IF PSEUDOHOST + THEN 2 + ELSE 1)) + -2))) + (CL:UNLESS (OR (MEMB SHORTNAME '(.git)) + (STRPOS ".git" FULLNAME) + (INFILEP (CONCAT FULLNAME ".skip"))) - (* |;;| " then deal with subdirs ") + (* ;; ".skip in the directory itself -- don't index any of it") - (|for| X |in| (DIRECTORY (CONCAT *FILE* "*")) - |when| (|for| SKIP IN '("clos" "cltl2" "rooms>" ".>") - |always| (NOT (STRPOS SKIP (L-CASE X)))) |when| (DIRECTORYNAMEP X) - |do| (PRETTYFILES X DEST REDOFLG TOPDIRLEN))) - ((AND (SETQ *FILE* (INFILEP *FILE*)) - (LISPSOURCEFILEP *FILE*)) - (LET* ((TF (UNPACKFILENAME.STRING *FILE*)) - (NAME (LISTGET TF 'NAME)) - (DIR (LISTGET TF 'DIRECTORY)) - (PSFILE (PACKFILENAME.STRING - 'EXTENSION "ps" 'NAME - (|if| (EQ DEST T) - |then| (* \; "with the source file") - (CONCAT NAME ".pfi") - |else| (CONCAT (PACK (SUBST '- '> (UNPACK (SUBSTRING DIR (IPLUS 2 TOPDIRLEN - ) - -1)))) - "-" NAME)) - 'HOST - (LISTGET TF 'HOST) - 'DIRECTORY - (|if| (EQ DEST T) - |then| DIR - |else| DEST)))) - (|if| (AND (NOT REDOFLG) - (INFILEP PSFILE)) - |then| (* \; " do nothing") - (PRINTOUT T PSFILE " already there" T) - |elseif| (MEMBER *FILE* BADFILES) - |then| (PRINTOUT T "Skipping " *FILE* " on BADFILES") - |else| (PRINTOUT T "Converting " *FILE* " to " PSFILE "...") - (CL:WITH-OPEN-STREAM (STR (OPENPOSTSCRIPTSTREAM PSFILE)) - (PRETTYFILEINDEX *FILE* NIL STR)) - (|printout| T " DONE" T)))) - (T (PRINTOUT T "no such file " T))))) + (SETQ SUBDIRS (NCONC1 SUBDIRS FULLNAME)) + (CL:FORMAT S "
  • ~a/
  • ~%%" SHORTNAME SHORTNAME)) + ELSEIF (MEMB [SETQ SHORTNAME (MKATOM (SUBSTRING FULLNAME (ADD1 (NCHARS BASE)) + (SUB1 (OR (STRPOS ".;" FULLNAME) + (STRPOS ";" FULLNAME) + (HELP + "No ; in non-directory" + ] + '(index.html .skip)) + THEN + (* ;; "dont index the index") + + ELSEIF (MEMB (FILENAMEFIELD SHORTNAME 'EXTENSION) + '(IMPTR SKIP skip imptr)) + THEN + (* ;; " don't enuerate ANY.SKIP ANY.IMPTR etc") + + ELSE (CL:FORMAT S "
  • ~a
  • ~%%" SHORTNAME SHORTNAME))) + (CL:FORMAT S "
~%%")) + (NCONC SUBDIRS (FOR D IN SUBDIRS join (MAKE-INDEX-HTMLS D (OR TOP BASE]) ) -(RPAQ? HCFILES ) +(PUTPROPS MEDLEY-UTILS FILETYPE :COMPILE-FILE) -(RPAQ? BADFILES ) -(DECLARE\: DONTCOPY - (FILEMAP (NIL (781 7744 (GATHER-INFO 791 . 6319) (MAKE-FULLER-DB 6321 . 7099) (MEDLEY-FIX-LINKS 7101 - . 7498) (MEDLEY-FIX-DATES 7500 . 7742)) (8923 10914 (MAKE-EXPORTS-ALL 8933 . 9994) (MAKE-WHEREIS-HASH - 9996 . 10912)) (10915 18894 (BADFILE 10925 . 11393) (HCFILES 11395 . 15280) (PRETTYFILES 15282 . -18892))))) +[XCL:REINSTALL-ADVICE 'TEDIT.PROMPTPRINT :BEFORE '((:LAST (PRIN1 MSG T))) + :AFTER + '((:LAST (AND (STRPOS "GETFN" MSG) + (HELP MSG] + +(READVISE TEDIT.PROMPTPRINT) +(DEFINEQ + +(RECOMPILE-ONE + [LAMBDA (FILES) (* ; "Edited 3-Apr-2024 08:12 by lmm") + (* ; "Edited 10-Feb-2024 13:31 by LMM") + + (* ;; " Still working on this -- the idea is to run a sysout for compiling which has been set up to compile one file, and then logout(T) and restart.") + + (* ;; " it will continue until there are no more files to compile") + + (CL:WITH-OPEN-STREAM (S (OPENSTREAM (OR (INFILEP "COMPILE.DRIBBLE") + "COMPILE.DRIBBLE") + 'BOTH)) + (DRIBBLE S) + (BKSYSBUF " ") + (PRINTOUT T "------------------" T "SEARCHING...") + (for X in (OR FILES SYSFILES) when (MEMB (GET X 'FILETYPE) + '(CL:COMPILE-FILE :COMPILE-FILE)) + when [NOT (INFILEP (CONCAT X '.DFASL] do (PRINTOUT T "Compiling " X T "") + (DOFILESLOAD (LIST X)) + (LOAD X 'PROP) + (COPYFILE (FINDFILE X) + X) + (FOR V IN (CL:VALUES-LIST (CL:COMPILE-FILE + X)) + DO (PRINT V)) + (CL:FORCE-OUTPUT (DRIBBLEFILE) + T) + (DRIBBLE) + (RETURN) FINALLY (HELP "NO MORE"]) + +(RECMPL + [LAMBDA (FILES) (* ; "Edited 17-Feb-2024 15:39 by lmm") + (* ; "Edited 8-Feb-2024 19:24 by lmm") + (LET ((*PRINT-CASE* :DOWNCASE) + SRC DESTPREV (PRETTYFLG T) + (*PRINT-BASE* 10)) + (CNDIR) + (for X in (OR FILES SYSFILES) do (IF (SETQ SRC (INFILEP (CONCAT SRCDIR X ".ilsp"))) + THEN (APPLY* (COMPILE-FILE? SRC) + SRC]) + +(COMPILE-SETUP + [LAMBDA NIL (* ; "Edited 17-Feb-2024 08:23 by lmm") + (* ; "Edited 9-Feb-2024 16:15 by larry") + + (* ;; "first set up compile environment") + + (FILESLOAD SYSEDIT) + + (* ;; " load in necessary packages") + + (FILESLOAD MEDLEY-UTILS) + (CLRHASH CLISPARRAY) (* ; + "clear out cache of file package translations") + (FILESLOAD WHERE-IS MEDLEY-UTILS GITFNS FILEBROWSER]) + +(REMAKEFILES + [LAMBDA (FILES) (* ; "Edited 8-Feb-2024 07:47 by lmm") + (LET ((*PRINT-CASE* :DOWNCASE) + WIN DIFF (PRETTYFLG T) + (*PRINT-BASE* 10)) + (for X in (OR FILES SYSFILES) + do (LOAD X 'PROP) + (PUTPROP X 'CONTENT (READFILE X)) + (for EXR in (GETPROP X 'CONTENT) + do (SELECTQ (CAR EXR) + (DEFINEQ (for DFN in (CDR EXR) + do (if (EQUAL (CADR DFN) + (GETPROP (CAR DFN) + 'EXPR)) + then (PRINTOUT T (CAR DFN) + " ") + (PUTPROP (CAR DFN) + 'EXPR + (CADR DFN)) + else (PRINTOUT T (CAR DFN) + "* ")))) + NIL)) + (MAKEFILE (MKATOM (SETQ DESTFILE (CONCAT (L-CASE X) + ".ilsp"))) + '(NEW)) + (SETQ DIFF (COMPARESOURCES X DESTFILE NIL)) + (TERPRI]) +) + +(READVISE TEDIT.PROMPTPRINT) +(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS + +(ADDTOVAR NLAMA ) + +(ADDTOVAR NLAML ) + +(ADDTOVAR LAMA ) +) +(DECLARE%: DONTCOPY + (FILEMAP (NIL (1064 11630 (GATHER-INFO 1074 . 6456) (MAKE-FULLER-DB 6458 . 7235) (MAKE-INDEX-HTMLS +7237 . 10999) (MEDLEY-FIX-LINKS 11001 . 11394) (MEDLEY-FIX-DATES 11396 . 11628)) (12809 15597 ( +MAKE-EXPORTS-ALL 12819 . 13878) (MAKE-WHEREIS-HASH 13880 . 15069) (MAKE-WHEREIS-LOOPS 15071 . 15595)) +(15598 23855 (HCFILES 15608 . 20089) (MAKE-INDEX-HTMLS 20091 . 23853)) (24105 28717 (RECOMPILE-ONE +24115 . 26012) (RECMPL 26014 . 26617) (COMPILE-SETUP 26619 . 27243) (REMAKEFILES 27245 . 28715))))) STOP diff --git a/internal/MEDLEY-UTILS.DFASL b/internal/MEDLEY-UTILS.DFASL new file mode 100644 index 00000000..d739e7b7 Binary files /dev/null and b/internal/MEDLEY-UTILS.DFASL differ diff --git a/internal/MEDLEY-UTILS.LCOM b/internal/MEDLEY-UTILS.LCOM deleted file mode 100644 index e7023a92..00000000 Binary files a/internal/MEDLEY-UTILS.LCOM and /dev/null differ diff --git a/scripts/make-gh-pages.md b/scripts/make-gh-pages.md new file mode 100644 index 00000000..a6ad9a12 --- /dev/null +++ b/scripts/make-gh-pages.md @@ -0,0 +1,73 @@ +preliminary documentation -- needs validation +HCFILES writes in {MEDLEYDIR} but it should write in something like (SRCDIR) + +# setup + + github pages are maintained in the 'src' repository as a forked repo + If you don't have a clone of src: +``` + gh repo clone interlisp/src # make one + cd src # all other commands +``` +the first time once you've cloned, point the 'src' clone +``` + gh remote add upstream https://github.com/interlisp/medley + +``` +now update src repository to match 'medley' +Run these in the 'src' repository! + +``` + git fetch upstream # pull down remote branches + git checkout master # make sure you're in master + git rebase upstream/master # update src's master + # to latest medley's master + git push -f origin master # push back go sfc +``` + +# Run Medly to create PDFs. + +Start with the apps sysout to spare yourself package problems +In an Interlisp exec: +``` + (FILESLOAD PDFSTREAM GITFNS MEDLEY-UTILS) + (HCFILES) + (MAKE-INDEX-HTMLS) +``` +check out that it looks right if you point your browser the index/index.hrml at the top level + +# deploying + +* find the current release tags +Not sure how to do that. + +``` + wget -l 1 https://github.com/interlisp/medley/releases/latest +``` +will retrieve a 3xx redirect from the web server; +But all you need is the name, not the web page. +anyway, assuming the release is medley-YYMMDD-xxxxxxx. + +put release name in variable +``` + export release=medley-240420-1234567 +``` +## make a new branch +``` + git checkout -b pages-$release +``` +*temporarily* change .gitignore to allow checkin of pdfs and index.html +``` +cp .gitignore /tmp/save$release +cp .gitignore.for.pages .gitignore +``` +Now you can push this to the github-pages +``` + git add . + git commit -m "rerun making ghpages and index" + git push +``` + + + +