home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / fish / applications / xlispstat / manual / appendix.ps (.txt) < prev    next >
PageSetter Document  |  1990-10-11  |  113KB  |  1,508 lines

  1. PageSetter II (V1.0)
  2. (CG)Courier
  3. Green
  4. .Blue
  5. vYellow
  6. Magenta
  7. wwwwpp
  8. appendix.ps
  9.  No Author
  10. Oj\n\B\ff<(CG)Times>\fs<14>\ll<2>\ps<100>\t<0>\FpA   XLISP-STAT on UNIX\MSystems\b\fs<12>
  11. \jfThis tutorial has dealt primarily with the Macintosh version of XLISP-STAT. XLISP-STAT is also available on UNIX systems. If it has been installed in a directory in your search path you should be able to start it up by typing
  12. \B\ff<(CG)Courier>xlispstat\b\ff<(CG)Times>
  13.  at the UNIX\Mshell level. There are a few differences between the Macintosh and UNIX versions. On UNIX systems:
  14. \T        
  15. \po UNIX versions of XLISP-STAT are desinged to run on a standard terminal and therefore do not provide parenthesis matching or indentation support. If you use the GNU \B\ff<(CG)Courier>emacs\b\ff<(CG)Times> editor you can obtain both these features by running XLISP-STAT from within \ff<(CG)Courier>emacs\ff<(CG)Times>. Otherwise for editing files with vi you can use the \B\ff<(CG)Courier>-l\b\ff<(CG)Times> flag to get some Lisp editing support.
  16. \T\T\T\T\T\T
  17.  To quit from the program type
  18. \ll<-3>
  19. \s\B\ff<(CG)Courier>(exit)\b\ff<(CG)Times>
  20. \ll<2>
  21. \sOn most systems you can also quit by typing a \IControl-D\i.
  22. \T        
  23.  You can interrupt a calculation that is taking too long or was started in error by typing a \IControl-C\i.
  24. \T\T\T\T    
  25.  Data and example files are located in the \B\ff<(CG)Courier>Data\b\ff<(CG)Times> and \B\ff<(CG)Courier>Examples\b\ff<(CG)Times> subdirectories of the library tree. The functions \B\ff<(CG)Courier>load-data\b\ff<(CG)Times> and \B\ff<(CG)Courier>load-examples\b\ff<(CG)Times> will look in these directories, so
  26. \ll<0>
  27. \s\B\ff<(CG)Courier>(load-data "tutorial")\b\ff<(CG)Times>
  28. \ll<2>
  29. \swill load the data sets for the tutorial. Within XLISP-STAT the variable *default-path* shows the root directory of the library; you can look there if you want to examine the examples files.
  30. \T        
  31.  The \B\ff<(CG)Courier>require\b\ff<(CG)Times> function can be used to load program modules not loaded at startup. To load the nonlinear regression module, for example, use the expression
  32. \ll<-1>
  33. \s\B\ff<(CG)Courier>(require "nonlin")\b\ff<(CG)Times>
  34. \ll<2>
  35. \pnOn basic UNIX systems the only graphics available are the functions plot-points and plot-lines. These functions assume you are using a \ITektronix\i terminal or emulator.
  36. \BA.1 XLISP-STAT Under the \IX11\i Window System\b
  37. Window based graphics are available in XLISP-STAT on a workstation running the \IX11\i window system. Graphics under \IX11\i are fairly similar to Macintosh graphics as documented in this tutorial. A few points to note:
  38. \po\T       
  39.  Plot menus are popped up using a menu button in the top right corner of a plot.
  40. \T\T      
  41.  In plot interaction you can use any of the mouse buttons. Normally clicking amy button in a plot unselects all selected points. To extend a selection, or have a rotating plot continue rotating after the button is released, hold down the shift key as you press any mouse button.
  42. \T        
  43.  How plot windows are opened in response to a graphics command depends on the window manager you are using. Unde \B\ff<(CG)Courier>uwm\b\ff<(CG)Times>, the default window manager on many systems, a little corner will appear which you can use to choose the position of your plot window.\ll<0>
  44. \ll<2>
  45. \T        
  46.  Slider dialog items are the only items that assume a three button mouse. In the central part of the slider the right button increases and the left button decreases the slider value. The middle button drags the thumb indicator.\ll<0>
  47. \ll<2>
  48. \T\T\T\T\T\T 
  49.  Postscript images of plots can be saved by selecting the \BSave to File\b item on a plot menu. The postscript file can then be printed using a standard printing command.
  50. \BA.1.1 More Advanced \IX11\i Features\b\ll<0>
  51. \ll<2>
  52. You can have XLISP-STAT use an alternate display for its graphics by setting the \B\ff<(CG)Courier>DISPLAY\b\ff<(CG)Times> environment variable before starting XLISP-STAT. At present this is the only way to set an alternate display. You can specify alternate fonts and a few other options using the \IX11\i resource management facilities. Resources controlling appearance are
  53. \ll<0>
  54. \s\s\B\ff<(CG)Courier>xlisp*menu*titles:\b\ff<(CG)Times>\s\s\Ion\i for a title on a menu, \I off\i otherwise\ll<2>
  55. \s\s\B\ff<(CG)Courier>xlisp*menu*font:
  56. \s\sxlisp*dialog*font:
  57. \s\sxlisp*graph*font:\b\ff<(CG)Times>\ll<0>
  58. \ll<2>
  59. There are also a few experimental options controlling performance. These are
  60. \ll<0>
  61. \s\s\B\ff<(CG)Courier>xlisp*graph*fastlines:\b\ff<(CG)Times>\s\Ion\i to use 0 width li\ll<2>nes
  62. \s\s\B\ff<(CG)Courier>xlisp*graph*fastsymbols:\b\ff<(CG)Times>\s\Ion\i to use \B\ff<(CG)Courier>DrawPoints\b\ff<(CG)Times> instead of bitmaps
  63. \s\s\B\ff<(CG)Courier>xlisp*graph*motionsync:\b\ff<(CG)Times>\ll<0>\s\Ion\i to use \B\ff<(CG)Courier>XSync\b\ff<(CG)Times> during mouse motion
  64. \ll<2>
  65. By default all three options are \Ion\i. That seems to give the best performance on a \ISun 3/50\i. It may not be the best choice on other workstations. You can also use the function \B\ff<(CG)Courier>x11-options\b\ff<(CG)Times> to change these three options from within XLISP-STAT. The fastlines option will not take effect immediately when changed this way but will affect the next plot created. The other two options do take effect immediately.
  66. \BA.2 XLISP-STAT Under the \ISunView\i Window System\b\ll<0>
  67. \ll<2>
  68. Window based graphics are also available when XLISP-STAT is run on a \ISun\i console running \B\ff<(CG)Courier>suntools\b\ff<(CG)Times>. Graphics under \B\ff<(CG)Courier>suntools\b\ff<(CG)Times> work like graphics on the Macintosh with the following changes:\ll<0>
  69. \ll<2>
  70. \T        \po
  71.  To close or resize plots or dialogs use the frame menu or the standard suntools shortcuts (e.g. to resize a plot window drag the frame with the middle mouse button while holding down the \Icontrol\i key).\ll<0>
  72. \ll<2>
  73. \T\T\T     
  74.  Plot menus are popped up by pressing the right mouse button in the interior of the plot. Check marks do not appear on menu items so it may not always be clear what state an item is in.\t<1>\ll<0>
  75. \t<0>\ll<2>
  76. \T        
  77.  Clicking and dragging on the Macintosh corresponds to clicking and dragging with the left mousebutton. Shift-clicking or shift-dragging on the Macintosh (to extend a selection or cause a rotating plot to continue spinning when the button is released) corresponds to using the middle mouse button.
  78. \T\T\T\T\T\T 
  79.  Postscript images of plots can be saved by selecting the \BSave to File\b item on a plot menu.
  80. \B\pnA.3 Running UNIX Commands from XLISP-STAT\b
  81. The \B\ff<(CG)Courier>system\b\ff<(CG)Times> function can be used to run UNIX commands from within XLISP-STAT. This function takes a shell command string as its argument and returns the shell exit code for the command. For example, you can print the date using the UNIX \B\ff<(CG)Courier>date\b\ff<(CG)Times> comman:
  82. \B\ff<(CG)Courier>> (system "data")
  83. Wed Jul 19 11:06:53 CDT 1989
  84. >\b\ff<(CG)Times>
  85. The return value is 0, indicating successful completion of the UNIX command.
  86. \BA.4 Dynamic Loading and Foreign Function Calling\b
  87. Some UNIX implementations of XLISP-STAT also provide a facility to allow you to use your own C functions or FORTRAN subroutines from within XLISP-STAT. The facility, patterned after the approach used in the new \IS\i language [3], consists of the function \B\ff<(CG)Courier>dyn-load\b\ff<(CG)Times> for loading your code into a running XLISP-STAT process  and the functions \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times>, \B\ff<(CG)Courier>call-fsub\b\ff<(CG)Times> and \B\ff<(CG)Courier>call-lfun\b\ff<(CG)Times> for calling subroutines in the loaded code. The \B\ff<(CG)Courier>dyn-load\b\ff<(CG)Times> function requires one argument, a string containing the name of a file to be linked and loaded. The file will be linked with standard C libraries before loading. If you need it to be linked with the standard FORTRAN libraries as well you can give the keyword argument \B\ff<(CG)Courier>:fortran\b\ff<(CG)Times> the value \B\ff<(CG)Courier>T\b\ff<(CG)Times>. Finally, if you need to link other libraries you can supply a string containing the library flags you would specify in a linking command as the value of the keyword argument \B\ff<(CG)Courier>:libflags\b\ff<(CG)Times>. For example, to include the library \B\ff<(CG)Courier>cmlib\b\ff<(CG)Times> use the string \B\ff<(CG)Courier>"-lcmlib".\b\SP\ff<(CG)Times>30\Sp
  88. \piThe function \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times> takes a string identifying the C function you want to call, followed by additional arguments for your C function. The additional arguments must be integers, sequences of integers, real numbers or sequences of real numbers. Pointers to \B\ff<(CG)Courier>int\b\ff<(CG)Times> or \B\ff<(CG)Courier>double\b\ff<(CG)Times> data containing these values will be passed to your routine. After your routine returns the contents of the data referred to by these pointers are copied into lists and \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times> returns a list of these lists.
  89. As an example, suppose the file \B\ff<(CG)Courier>foo.c\b\ff<(CG)Times> contains the following C function:
  90. \B\ff<(CG)Courier>\pnfoo(n, x, sum)
  91. \sint :n;
  92. \sdouble *x, *sum;
  93. \sint i;
  94. \sfor\M(i=0, *sum=0.0; i<*n; i++){
  95. \s*sum += x[i];
  96. }\b\ff<(CG)Times>
  97. After compiling the file \B\ff<(CG)Courier>foo.c\b\ff<(CG)Times> we can load it into XLISP-STAT using the expression
  98. \B\ff<(CG)Courier>(dyn-load "foo.o")\b\ff<(CG)Times>
  99. We can then call the function using a list of real numbers as the second argument. The function float can be used to coerce numbers to reals:
  100. \B\ff<(CG)Courier>> (call-cfun "foo" 5 (float (iseq 1 5)) 0.0)
  101. ((5)\M(1 2 3 4 5) 15))\b\ff<(CG)Times>
  102. The third argument to \B\ff<(CG)Courier>foo\b\ff<(CG)Times> has been used to return the result.
  103. The function \B\ff<(CG)Courier>call-fsub\b\ff<(CG)Times> is used for calling FORTRAN subroutines that have been loaded dynamically. A FORTRAN subroutine analogous to the C function \B\ff<(CG)Courier>foo\b\ff<(CG)Times> might be written as
  104. \B\ff<(CG)Courier>\ssubroutine foo(n, x, sum)
  105. \sinteger n
  106. \sdouble precision x(n), sum
  107. \sinteger i
  108. \ssum - 0.0
  109. \sdo 10 i = 1,m
  110. \s\ssum = sum +x(i)
  111. \T\T\T10    continue
  112. \sreturn
  113. \send\b\ff<(CG)Times>
  114. After compiling and loading this routine it can be called using \B\ff<(CG)Courier>call-fsub\b\ff<(CG)Times>:
  115. \B\ff<(CG)Courier>> (call-fsub "foo"\M5 (float (iseq 1 5)) 0.0)
  116. ((5)\M(1 2 3 4 5)\M(15))\b\ff<(CG)Times>
  117. \piTwo C functions you may want to call from within your C functions are \B\ff<(CG)Courier>xscall_alloc\b\ff<(CG)Times> and \B\ff<(CG)Courier>xscall_fail\b\ff<(CG)Times>. The function \B\ff<(CG)Courier>xscall_alloc\b\ff<(CG)Times> is like \B\ff<(CG)Courier>calloc\b\ff<(CG)Times>, except it insures the allocated memory is garbage collected after the call to \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times> returns. The function \B\ff<(CG)Courier>xscall_fail\b\ff<(CG)Times> takes a character string as its argument. It prints the string and signals an error.
  118. The function \B\ff<(CG)Courier>call-lfun\b\ff<(CG)Times> can be used to call C functions written using the internal XLISP conventions for obtaining arguments and returning results. This allows you to accept any kinds of arguments. Unfortunately, the source code is the only documentation for the internal calling conventions.
  119. A note of caution may be appropriate at this point. Dynamically loaded code contains only the error checking you build into it. If a function is not called with the proper arguments it will most likely cause XLISP-STAT to crash, losing any varibales you have not saved.
  120. At present the number of arguments you can pass to C functions or FORTRAN subroutines using \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times> or \B\ff<(CG)Courier>call-fsub\b\ff<(CG)Times> is limited to 15.
  121. If dynloading is not available on your system you can still recompile XLISP-STAT with files of your own added to the source code. The functions \B\ff<(CG)Courier>call-cfun\b\ff<(CG)Times>, \B\ff<(CG)Courier>call-fsub\b\ff<(CG)Times> and \B\ff<(CG)Courier>call-lfun\b\ff<(CG)Times> can be used to call your functions or subroutines in this case as well.
  122. \B\fs<14>\pnB   Graphical Interface Tools\b\fs<12>
  123. One of the characterisitc features of the Macintosh user interface is the use of menus and dialogs for interacting with the computer. XLISP-STAT allows you to construct your own menus and dialogs using Lisp commands. This appendix gives a very brief introduction to constructing menus and dialogs; further details will be given in [17]. A few of the explanations and examples in this appendix use Lisp concepts that have not been covered in this tutorial.
  124. \BB.1 Menus\b
  125. As an illustration I wil outline how to construct a menu for sending some simple messages to a regression model. I will make the convention that these is a \Icurrent regression model\i, the value of the symbol \B\ff<(CG)Courier>*current-model*\b\ff<(CG)Times>.
  126. \piMenus are created by sending the \B\ff<(CG)Courier>:new\b\ff<(CG)Times> message to the menu prototype, \B\ff<(CG)Courier>menu-proto\b\ff<(CG)Times>. The method for this message takes a single argument, the menu title. We can use this message to set up our menu:\pn
  127. \ll<-1>
  128. \B\ff<(CG)Courier>> (setf model-menu (send menu-proto :new "Model"))\ll<2>
  129. #<Object:\M4055334, prototype - MENU-PROTO>\b\ff<(CG)Times>\ll<-1>
  130. \ll<2>
  131. Macintosh menus can be installed in and removed from the menu bar by sending them the \B\ff<(CG)Courier>:install\b\ff<(CG)Times> and\B\ff<(CG)Courier> :remove\b\ff<(CG)Times> messages:
  132. \ll<-1>
  133. \B\ff<(CG)Courier>> (send model-menu :install)\ll<2>
  134. > (send model-menu :remove)
  135. NIL\b\ff<(CG)Times>\ll<-1>
  136. \ll<2>
  137. On other systems menus are \Ipopped up\i; this can be accomplished by sending the \B\ff<(CG)Courier>:popup\b\ff<(CG)Times> message to a menu. This message requires two argumenst, the \Ix\i and \Iy\i pixel coordinates of the left top corner of the menu, measured from the left top corner of the screen.
  138. \piInitially the menu has no items in it. Items are created using the \B\ff<(CG)Courier>menu-item-proto\b\ff<(CG)Times> prototype. The initialization method requires one argument, the item's titile, and takes several keyword arguments, including\pn
  139. \ll<-1>
  140.  \B\ff<(CG)Courier>:action\b\ff<(CG)Times> - a function to be called when the item is selected
  141.  \B\ff<(CG)Courier>:enabled\b\ff<(CG)Times> - true by default
  142.  \B\ff<(CG)Courier>:key\b\ff<(CG)Times> - a character to serve as the keyboard equivalent
  143.  \B\ff<(CG)Courier>:mark\b\ff<(CG)Times> - \B\ff<(CG)Courier>nil\b\ff<(CG)Times> (the default) or \B\ff<(CG)Courier>t\b\ff<(CG)Times> to indicate a check mark.
  144. \ll<2>
  145. Analogous messages are available for changing these values in existing menu items.
  146. \piSuppose we would like to be able to use our menu to print a summary of the current model or obtain a residual plot. We can construct two menu items:\pn
  147. \ll<-1>
  148. \B\ff<(CG)Courier>> (setf summary (send menu-item-proto :new "Summary"\M:action\ll<2>
  149. \s#'(lambda ()\M(send *current-model*\M:display))))
  150. #<Object: 4034406, prototype - MENU-ITEM-PROTO>
  151. \ll<-1>> (setf plot (send menu-item-proto :new "Plot Residuals"\M:action\ll<2>
  152. \s#'(lambda ()\M(send *current-model*\M:plot-residuals))))
  153. #<Object: 3868686, prototype - MENU-ITEM-PROTO>\b\ff<(CG)Times>
  154. Suppose we have assigned the \B\ff<(CG)Courier>bikes2\b\ff<(CG)Times> model of Section 7 to\B\ff<(CG)Courier> *current-model*\b\ff<(CG)Times>. You can force and item's action to be invoked by sending it the \B\ff<(CG)Courier>:do-action\b\ff<(CG)Times> message from the listener:
  155. \B\ff<(CG)Courier>>\M(send summary :do-action)
  156. Least Squares Estimates
  157. Constant\s\s   -16.41924\s(7.848271)
  158. Variable 0\s\s    2.432667\s(0.9719626)
  159. Variable 1\s\s -0.05339121\s(0.02922567)
  160. R Squared:\s\s   0.9477923
  161. Sigma hat:\s\s   0.5120859
  162. Number of cases:\s\s10
  163. Degrees of freedom\s\s 7
  164. NIL\ff<(CG)Times>\fs<14>\pi
  165. \b\fs<12>\pnOrdinarily you will not send this message this way: the system sends this message to the menu item when you select the item from a menu.
  166. To add these items to the menu use the \B\ff<(CG)Courier>:append-items\b\ff<(CG)Times> message:
  167. \B\ff<(CG)Courier>> (send model-menu :append-items summary plot)
  168. NIL\b\ff<(CG)Times>
  169. You can also use the \B\ff<(CG)Courier>:append-items\b\ff<(CG)Times> message to add items to a plot menu. The menu associated with a plot can be obtained by sending the plot the \B\ff<(CG)Courier>:menu\b\ff<(CG)Times> message with no arguments.
  170. \piYou can enable and disable a menu item with the \B\ff<(CG)Courier>:enabled\b\ff<(CG)Times> message:\pn
  171. \B\ff<(CG)Courier>> (send summary :enable)
  172. >\M(send summary :enabled nil)
  173. > (send summary :enabled t)
  174. T\b\ff<(CG)Times>
  175. \BB.2  Dialogs\b
  176. Dialogs are similar to menus in that they are based on a dialog protoype and dialog item prototypes. There are, however many more variations. Fortunately most dialogs you need fall into one of several categories and can be produced by custom dialog construction functions.
  177. \BB.2.1 Modal Dialogs\b
  178. Modal dialogs are designed to ask specific questions and wait until they receive a response. All other interaction is disabled until the dialog is dismissed - they place the system in \Idialog mode\i. Six functions are available for producing some standard modal dialogs:
  179. \T        \po
  180.  \B\ff<(CG)Courier>(message-dialog <\Istring\i>)\b\ff<(CG)Times> - presents a message with an \BOK\b button; returns \B\ff<(CG)Courier>nil\b\ff<(CG)Times> when the button is pressed.
  181. \T        
  182.  \B\ff<(CG)Courier>(ok-or-cancel-dialog <\Istring\i>)\b\ff<(CG)Times> - presents a message with an \BOK\b and a \BCancel\b button; returns \B\ff<(CG)Courier>t\b\ff<(CG)Times> or \B\ff<(CG)Courier>NIL\b\ff<(CG)Times> according to the button pressed.
  183. \T\T\T\T\T  
  184.  \B\ff<(CG)Courier>(choose-item-dialog <\Istring\i> <\Istring-list\i>)\b\ff<(CG)Times> - presents a heading and a set of radio buttons for choosing one of the strings. Returns the index of the selected string on \BOK\b or \B\ff<(CG)Courier>nil\b\ff<(CG)Times> on \BCancel\b. Example:
  185. \s\B\ff<(CG)Courier>> (choose-item-dialog "Dependent variable:"\M'("X"\M"Y"\M"Z"))
  186. \s1\b\ff<(CG)Times>
  187. \T\T      
  188.  \B\ff<(CG)Courier>(choose-subset-dialog <\Istring\i> <\Istring-list\i>)\b\ff<(CG)Times> - presents a heading and a set of check boxes for indicating which items to select. Returns a list of the list of selected indices on \BOK\b or \B\ff<(CG)Courier>nil\b\ff<(CG)Times> on \BCancel\b. Example:
  189. \s\B\ff<(CG)Courier>>(choose-subset-dialog\t<-1> \t<0>"Independent variables:"\t<-2>\M\t<0>'("X"\M"Y"\M"Z"))
  190. \s((0 2))\b\ff<(CG)Times>
  191. \T\T\T\T\T\T 
  192.  \B\ff<(CG)Courier>(get-string-dialog <\Iprompt\i> [:inital ,\Iexpr\i>])\b\ff<(CG)Times> - presents a dialog with a prompt, and editable text field, an \BOK\b and a \BCancel\b button. The initial contents of the editable field is empty or the princ formatted version of \B\ff<(CG)Courier><\Iexpr\i>\b\ff<(CG)Times>. The result is a string or \B\ff<(CG)Courier>nil\b\ff<(CG)Times>. Example:
  193. \s\B\ff<(CG)Courier>> (get-string-dialog "New variable label:"\M:initial "X")
  194. \s"Tensile Strength"\b\ff<(CG)Times>
  195. \T\T\T\T     
  196.  \B\ff<(CG)Courier>(get-value-dialog <\Iprompt\i> [:initial <\Iexpr\i>])\b\ff<(CG)Times> - like \B\ff<(CG)Courier>get-string-dialog\b\ff<(CG)Times>, except
  197. \s  - the initial value expression is converted to a string with print formatting
  198. \s  - the result is interpreted as a lisp expression and is evaluated
  199. \s  - the result is a list of the value, or \B\ff<(CG)Courier>nil\b\ff<(CG)Times>
  200. \sOn the Macintosh there are two additional dialogs for dealing with files:
  201. \T          
  202.  \B\ff<(CG)Courier>(open-file-dialog)\b\ff<(CG)Times> - presents a standard \BOpen File\b dialog and returns a file name string or \B\ff<(CG)Courier>nil\b\ff<(CG)Times>. Resets the working folder on \BOK.
  203. \T          \b
  204.  \B\ff<(CG)Courier>(set-file-dialog prompt)\b\ff<(CG)Times> - presents a standard \BSave File\b dialog. Returns a file name string or \B\ff<(CG)Courier>nil\b\ff<(CG)Times>. Resets the working folder on \BOK\b.
  205. \BB.2.2 Modeless Dialogs\b
  206. \pnTwo functions for constructing custom modeless dialogs are available also. They are the functions \B\ff<(CG)Courier>interval-slider-dialog\b\ff<(CG)Times> and \B\ff<(CG)Courier>sequence-slider-dialog\b\ff<(CG)Times> introduced above in Section 8.\B\fs<14>
  207. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp68\.
  208. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp69\.
  209. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp70\.
  210. L\n\ff<(CG)Times>\fs<10>\jf\ll<2>\ps<100>\t<0>\Fp_______________________________________
  211. \SP\pi30\Sp\MThere may be slight differences in the implementation of \B\ff<(CG)Courier>dyn-load\b\ff<(CG)Times> on different systems. The help information for this function should give information that is appropriate for your system.\pn
  212. .PPAG
  213. ?PBOX
  214.  rPTXT
  215. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp71\.
  216. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp72\.
  217. IyPPAG
  218. JuPBOX
  219. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp73\.
  220. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp74\.
  221. xXPPAG
  222. {qPTXT
  223. \n\B\ff<(CG)Times>\fs<14>\jf\ll<2>\ps<100>\t<0>\FpC Selected Listing of XLISP-STAT Functions\b\fs<12>
  224. \BC.1  Arithmetic and Logical Functions\b
  225. \ll<0>(+ &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  226. Returns the sum of its arguments.  With no args, returns 0. Vectorized.
  227. (- number &rest more-numbers)\s\s\s\s\s\s\s\s[Function]
  228. Subtracts the second and all subsequent NUMBERs from the first. With one arg, negates it. Vectorized.
  229. (* &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  230. Returns the product of its arguments. With no args, returns 1. Vectorized.
  231. (/ number &rest more-numbers)\s\s\s\s\s\s\s\s[Function]
  232. Divides the first NUMBER (element-wise) by each of the subsequent NUMBERS. With one arg, returns its reciprocal. Vectorized.
  233. (^ base-number power-number)\s\s\s\s\s\s\s\s[Function]
  234. Returns BASE-NUMBER raised to the power POWER-NUMBER. Vectorized.
  235. (** base-number power-number)\s\s\s\s\s\s\s\s[Function]
  236. Returns BASE-NUMBER raised to the power POWER-NUMBER. Vectorized.
  237. (< &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  238. Returns T if NUMBERS are in strictly increasing order; NIL otherwise. Vectorized.
  239. (<= &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  240. Returns T if NUMBERS are in nondecreasing order; NIL otherwise. Vectorized.
  241. (= &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  242. Returns T if NUMBERS are all equal; NIL otherwise. Vectorized.
  243. (/= &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  244. Returns T if NUMBERS no two adjacent numbers are equal; NIL otherwise. Vectorized.
  245. (>= &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  246. Returns T if NUMBERS are in nonincreasing order; NIL otherwise. Vectorized.
  247. (> &rest numbers)\s\s\s\s\s\s\s\s\s\s[Function]
  248. Returns T if NUMBERS are in strictly decreasing order; NIL otherwise. Vectorized.
  249. (abs number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  250. Returns the absolute value or modulus of NUMBER. Vectorized.
  251. (acos number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  252. Returns the arc cosine of NUMBER. Vectorized.
  253. (asin number)\s\ll<3>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  254. Returns the arc sine of NUMBER. Vectorized.
  255. (atan number)\s\ll<3>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  256. Returns the arc tangent of NUMBER. Vectorized.
  257. (ceiling number)\ll<3>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  258. Returns the smallest integer(s) not less than or NUMBER. Vectorized.\ll<2>
  259. \ll<-1>(complex realpart &optional (imagpart 0))\s\s\s\s\s\s\s[Function]
  260. Returns a complex number with the given real and imaginary parts.
  261. (conjugate number)\s\s\s\s\s\s\s\s\s\s[Function]
  262. Returns the complex conjugate of NUMBER.
  263. (cos radians)\s\s\s\s\s\s\s\s\s\s\s[Function]
  264. Returns the cosine of RADIANS. Vectorized.
  265. (exp x)\s\s\s\s\s\s\s\s\s\s\s\s[Function]
  266. Calculates e raised to the power x, where e is the base of natural
  267. logarithms. Vectorized.
  268. (expt base-number power-number)\s\s\s\s\s\s\s\s[Function]
  269. Returns BASE-NUMBER raised to the power POWER-NUMBER. Vectorized.
  270. (float number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  271. Converts real number to a floating-point number.  If NUMBER is already a float, FLOAT simply returns NUMBER. Vectorized.
  272. (floor number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  273. Returns the largest integer( not larger than the NUMBER. Vectorized.
  274. (imagpart number)\s\s\s\s\s\s\s\s\s\s[Function]
  275. Extracts the imaginary part of NUMBER.
  276. (log number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  277. Returns the natural logarithm(s) of NUMBER. Vectorized.
  278. (log-gamma x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  279. Returns the log gamma function of X. Vectorized.
  280. (max number &rest more-numbers)\s\s\s\s\s\s\s\s[Function]
  281. Returns the greatest of its arguments. Vector reducing
  282. (min number &rest more-numbers)\s\s\s\s\s\s\s\s[Function]
  283. Returns the least of its arguments. Vector reducing
  284. (phase number)\s\s\s\s\s\s\s\s\s\s[Function]
  285. Returns the angle part of the polar representation of a complex number.
  286. For non-complex numbers, this is 0.
  287. (pmax &rest items)\s\s\s\s\s\s\s\s\s\s[Function]
  288. Parallel maximum of ITEMS. Vectorized.
  289. (pmin &rest items)\s\s\s\s\s\s\s\s\s\s[Function]
  290. Parallel minimum of ITEMS. Vectorized.
  291. (prod &rest number-data)\s\s\s\s\s\s\s\s\s[Function]\ll<1>
  292. \ll<0>Returns the product of all the elements of its arguments. Returns 1 if there are no arguments. Vector reducing.
  293. (random number)\s\s\s\s\s\s\s\s\s\s[Function]
  294. Generates a uniformly distributed pseudo-random number between zero (inclusive) and NUMBER (exclusive). Vectorized.\ll<2>
  295. (realpart number)\s\s\s\s\s\s\s\s\s\s[Function]
  296. Extracts the real part of NUMBER.
  297. \ll<0>(rem x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  298. Returns the remainder of dividing x by y. Vectorized.
  299. (round number)\s\s\s\s\s\s\s\s\s\s[Function]
  300. Rounds NUMBER to nearest integer. Vectorized.
  301. (sin radians)\s\s\s\s\s\s\s\s\s\s\s[Function]
  302. Returns the sine of RADIANS. Vectorized.
  303. (sqrt number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  304. Returns the square root of NUMBER. Vectorized.
  305. (sum &rest number-data)\s\s\s\s\s\s\s\s\s[Function]
  306. Returns the sum of all the elements of its arguments. Returns 0 if there are no arguments. Vector reducing.
  307. (tan radians)\s\s\s\s\s\s\s\s\s\s\s[Function]
  308. Returns the tangent of RADIANS. Vectorized.
  309. (truncate number)\s\s\s\s\s\s\s\s\s\s[Function]
  310. Returns real NUMBER as an integer, rounded toward 0. Vectorized.\ll<2>
  311. \BC.2  Constructing and Modifying Compound Data and Variables\b
  312. \ll<1>(def var form)\s\s\s\s\s\s\s\s\s\s\s    [Macro]
  313. VAR is not evaluated and must be a symbol.  Assigns the value of FORM to VAR and adds VAR to the list *VARIABLES* of def'ed variables. Returns VAR. If VAR is already bound and the global variable *ASK-ON-REDEFINE* is not nil then you are asked if you want to redefine the variable.
  314. )if-else first x y)\s\s\s\s\s\s\s\s\s\s[Function]
  315. Takes simple or compound data items FIRST, X and Y and returns result of elementswize selecting from X if FIRST is not NIL and from Y otherwise.
  316. (iseq n m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  317. Returns a list of consecutive integers from n to m. Examples:
  318. (iseq 3 7) returns (3 4 5 6 7)
  319. (iseq 3 -3) returns (3 2 1 0 -1 -2 -3)
  320. (list &rest args)\s\s\s\s\s\s\s\s\s\s[Function]
  321. Returns a list of its arguments
  322. (repeat vals times)\s\s\s\s\s\s\s\s\s\s[Function]
  323. Repeats VALS. If TIMES is a number and VALS is a non-null, non-array atom, a list of length TIMES with all elements eq to VALS is returned. If VALS is a list and TIMES is a number then VALS is appended TIMES times. If TIMES is a list of numbers then VALS must be a list of equal length and the simpler version of repeat is mapped down the two lists. Examples:
  324. (repeat 2 5) returns (2 2 2 2 2)
  325. (repeat '(1 2) 3) returns (1 2 1 2 1 2)
  326. (repeat '(4 5 6) '(1 2 3)) returns (4 5 5 6 6 6)
  327. (repeat '((4) (5 6))\M'(2 3)) returns (4 4 5 6 5 6 5 6)
  328. (rseq a b num)\s\ll<2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<1>
  329. Returns a list of NUM equally spaced points starting at A and ending at B.\ll<2>
  330. \ll<0>(select a &rest indices)\s\s\s\s\s\s\s\s\s[Function]
  331. A can be a list or an array. If A is a list and INDICES is a single number then the appropriate element of A is returned. If  is a list and INDICES is a list of numbers then the sublist of the corresponding elements is returned. If A in an array then the number of INDICES must match the ARRAY-RANK of A. If each index is a number then the appropriate array element is returned. Otherwise the INDICES must all be lists of numbers and the corresponding submatrix of A is returned. SELECT can be used in setf.
  332. (undef symbol)\s\s\s\s\s\s\s\s\s\s[Function]
  333. If SYMBOL is a defined variable it is unbound and removed from the list of defined variables and returns SYMBOL.
  334. (vector &rest items)\s\s\s\s\s\s\s\s\s\s[Function]
  335. Returns a vector with ITEMs as elements.
  336. (which x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  337. X is an array or a list. Returns a list of the indices where X is not NIL.\ll<2>
  338. \BC.3  Basic Statistical Functions\b
  339. \ll<0>(bayes-model logpost mode &key scale data derivstep (verbose t)\M(quick t)(print t))\s[Function]
  340. LOGPOST computes the logposterior density. It should return the function, or a list of the function value and gradient, or a list of the function value, gradient and Hessian. MODE is an initial guess for the mode. SCALE and DERIVSTEP are used for numerical derivatives and scaling. VERBOSE controls printing of iteration information during opimization, PRINT controls printing of summary information. If QUICK is T the summary is based on first order approximations.
  341. (beta-cdf x alpha beta)\s\s\s\s\s\s\s\s\s[Function]
  342. Returns the value of the Beta(ALPHA, BETA) distribution function at X.
  343. Vectorized.
  344. (beta-dens x alpha beta)\s\s\s\s\s\s\s\s\s[Function]
  345. Returns the density at X of the Beta(ALPHA, BETA) distribution. Vectorized.
  346. (beta-quant p alpha beta)\s\s\s\s\s\s\s\s\s[Function]
  347. Returns the P-th quantile of the Beta(ALPHA, BETA) distribution. Vectorized.
  348. (beta-rand n a b)\s\s\s\s\s\s\s\s\s\s[Function]
  349. Returns a list of N beta(A, B) random variables. Vectorized.
  350. (binomial-cdf x n p)\s\s\s\s\s\s\s\s\s\s[Function]
  351. Returns value of the Binomial(N, P) distribution function at X. Vectorized.
  352. (binomial-pmf k n p)\s\s\s\s\s\s\s\s\s\s[Function]
  353. Returns value of the Binomial(N, P) pmf function at integer K. Vectorized.
  354. (binomial-quant x n p)\s\s\s\s\s\s\s\s\s[Function]
  355. Returns x-th quantile (left continuous inverse) of Binomial(N, P) cdf. Vectorized.
  356. (binomial-rand k n p)\ll<2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  357. Returns list of K draws from the Binomial(N, P) distribution. Vectorized.\ll<2>
  358. (bivnorm-cdf x y r)\s\s\s\s\s\s\s\s\s\s[Function]
  359. Returns the value of the standard bivariate normal distribution function with correlation R at (X, Y). Vectorized.
  360. \ll<0>(cauchy-cdf x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  361. Returns the value of the standard Cauchy distribution function at X. Vectorized.
  362. (cauchy-dens x)\s\s\s\s\s\s\s\s\s\s[Function]
  363. Returns the density at X of the standard Cauchy distribution. Vectorized.
  364. (cauchy-quant p)\s\s\s\s\s\s\s\s\s\s[Function]
  365. Returns the P-th quantile(s) of the standard Cauchy distribution. Vectorized.
  366. (cauchy-rand n)\s\s\s\s\s\s\s\s\s\s[Function]
  367. Returns a list of N standard Cauchy random numbers. Vectorized.
  368. (chisq-cdf x df)\s\s\s\s\s\s\s\s\s\s[Function]
  369. Returns the value of the Chi-Square(DF) distribution function at X. Vectorized.
  370. (chisq-dens x alpha)\s\s\s\s\s\s\s\s\s\s[Function]
  371. Returns the density at X of the Chi-Square(DF) distribution. Vectorized.
  372. (chisq-quant p df)\s\s\s\s\s\s\s\s\s\s[Function]
  373. Returns the P-th quantile of the Chi-Square(DF) distribution. Vectorized.
  374. (chisq-rand n df)\s\s\s\s\s\s\s\s\s\s[Function]
  375. Returns a list of N Chi-Square(DF) random variables. Vectorized.
  376. (covariance-matrix &rest args)\s\s\s\s\s\s\s\s[Function]
  377. Returns the sample covariance matrix of the data columns in ARGS. ARGS may consist of lists, vectors or matrices.
  378. (difference x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  379. Returns differences for a sequence X.
  380. (f-cdf x ndf ddf)\s\s\s\s\s\s\s\s\s\s[Function]
  381. Returns the value of the F(NDF, DDF) distribution function at X. Vectorized.
  382. (f-dens x ndf ddf)\s\s\s\s\s\s\s\s\s\s[Function]
  383. Returns the density at X of the F(NDF, DDF) distribution. Vectorized.
  384. (f-quant p ndf ddf)\s\s\s\s\s\s\s\s\s\s[Function]
  385. Returns the P-th quantile of the F(NDF, DDF) distribution. Vectorized.
  386. (f-rand n d)\s\s\s\s\s\s\s\s\s\s\s[Function]
  387. Returns a list of N F(NDF, DDF) random variables. Vectorized.
  388. (fivnum number-data)\s\s\s\s\s\s\s\s\s\s[Function]
  389. Returns the five number summary (min, 1st quartile, medinan, 3rd quartile, max) of the elements X.
  390. (gamma-cdf x alpha)\s\s\s\s\s\s\s\s\s\s[Function]
  391. Returns the value of the Gamma(alpha, 1) distribution function at X. Vectorized.
  392. (gamma-dens x alpha)\ll<2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  393. Returns the density at X of the Gamma(ALPHA, 1) distribution. Vectorized.
  394. (gamma-quant p alpha)\ll<2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  395. Returns the P-th quantile of the Gamma(ALPHA, 1) distribution. Vectorized.\ll<2>
  396. (gamma-rand n a)\s\s\s\s\s\s\s\s\s\s[Function]
  397. Returns a list of N Gamma(A, 1) random variables. Vectorized.
  398. \ll<0>(interquartile-range number-data)\s\s\s\s\s\s\s\s[Function]
  399. Returns the interquartile range of the elements of X.
  400. (mean x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  401. Returns the mean of the elements x. Vector reducing.
  402. (median x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  403. Returns the median of the elements of X.
  404. (newtonmax f start &key scale derivstep (verbose 1) return-derivs)\s\s\s\s[Function]
  405. Maximizes F starting from START using Newton's method with backtracking. If RETURN -DERIVS is NIL returns location of maximum; otherwise returns list of location, function value, gradient and hessian at maximum. SCALE should be a list of the typical magnitudes of the parameters. DERIVSTEP is used in numerical derivates and VERBOSE controls printing of iteration information. COUNT-LIMIT limits the number of iteractions.
  406. (nelmeadmax f start &key (size 1)\M(epsilon (sqrt machine-epsilon))\M(count-limit 500)\M(verbose t) alpha beta gamma delta)\s\s\s\s\s\s\s\s\s[Function]
  407. Maximizes F using the Nelder-Mead simplex method. START can be a starting simplex - a list of N+1 points, with N=dimension of problem, or a single point. If start is a single point you should give the size of the initial simplex as SIZE, a sequence of length N. Default is all 1's. EPSILON is the convergence tolerance. ALPHA-DELTA can be used to control the behavior of simplex algorithm.
  408. (normal-cdf x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  409. Returns the value of the standard normal distribution function at X.
  410. Vectorized.\ll<-1>
  411. \ll<0>
  412. (normal-dens x)\s\s\s\s\s\s\s\s\s\s[Function]
  413. Returns the density at X of the standard normal distribution. Vectorized.\ll<-1>
  414. \ll<0>
  415. (normal-quant p)\s\s\s\s\s\s\s\s\s\s[Function]
  416. Returns the P-th quantile of the standard normal distribution. Vectorized.\ll<-1>
  417. \ll<0>
  418. (normal-rand n)\s\s\s\s\s\s\s\s\s\s[Function]
  419. Returns a list of N standard normal random numbers. Vectorized\ll<-1>.
  420. \ll<0>
  421. (nreg-model mean-function y theta &key (epsilon 0.0001)\M(coun-limit 20) (print t) parameter-names response-name case-labels weights included (verbose print))\s\s\s\s[Function]
  422. Fits nonlinear regression model with MEAN-FUNCTION and response Y using initial parameter guess THETA. Returns model object.
  423. (numgrad f x &optional scale derivstep)
  424. Computes the numerical gradient of F at X.\s\s\s\s\s\s\s[Function]
  425. (numhess f x &optional scale derivstep)\s\s\s\s\s\s\s[Function]
  426. Computes the numerical Hessian matrix of F at X.
  427. (oneway-model data &key (print t))\s\s\s\s\s\s\s\s[Function]
  428. DATA: list of compound-data. Example:
  429. (order x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  430. Returns a sequence of the indices of elements in the sequence of numbers o\ll<2>r strings X in order.\ll<0>
  431. (pmin &rest items)\s\s\s\s\s\s\s\s\s\s[Function]
  432. Parallel minimum of ITEMS. Vectorized.\ll<-1>.
  433. \ll<0>
  434. (pmax &rest items)\s\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  435. Parallel maximum of ITEMS. Vectorized.
  436. \ll<0>(poisson-cdf x mu)\s\s\s\s\s\s\s\s\s\s[Function]
  437. Returns value of the Poisson(MU) distribution function at X. Vectorized.
  438. (poisson-pmf k mu)\s\s\s\s\s\s\s\s\s\s[Function]
  439. Returns value of the Poisson(MU) pmf function at integer K. Vectorized.
  440. (poisson-quant x mu)\s\s\s\s\s\s\s\s\s\s[Function]
  441. Returns x-th quantile (left continuous inverse) of Poisson(MU) cdf. Vectorized.
  442. (poisson-rand k mu)\s\s\s\s\s\s\s\s\s\s[Function]
  443. Returns list of K draws from the Poisson(MU) distribution. Vectorized.
  444. (quantile x p)\s\s\s\s\s\s\s\s\s\s\s[Function]
  445. Returns the P-th quantile(s) of sequence X. P can be a number or a sequence.
  446. (rank x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  447. Returns a sequence with the elements of the list or array of numbers or
  448. strings X replaced by their ranks.
  449. (read-data-columns file cols)\s\s\s\s\s\s\s\s\s[Function]
  450. Reads the data in FILE as COLS columns and returns a list of lists representing
  451. the columns.
  452. (read-data-file file)\s\s\s\s\s\s\s\s\s\s[Function]
  453. Returns a list of all lisp objects in FILE. FILE can be a string or a symbol,
  454. in which case the symbol'f print name is used.
  455. (regression-model x y &key (intercept t) (print t) weights included predictor-names responsepname case-labels)\s\s\s\s\s\s\s\s\s\s\s[Function]
  456. X - list of the independent variables or X matrix
  457. Y - dependent variable
  458. INTERCEPT - T to include (default), NIL for no intercept
  459. PRINT - if not NIL print summary information
  460. WEIGHTS - if supplied should be same length as y; error variances are assumed to be inversely proportional to WEIGHTS
  461. PREDICTOR-NAMES
  462. RESPONSE-NAME
  463. CASE-LABELS - sequences of strings or symbols
  464. INCLUDED - if supplied should be the same length as Y, with elements nil to skip a in computing estimates (but not in residual analysis)
  465.  Returns a regression model object. To examine the model further assign the result to a variable and send it messages. Example (data are in file absorbtion.lsp in the sample data directory/folder):
  466. (def m (regression-model (list iron aluminum) absorbtion))
  467. (send m :help)
  468. (send m :residuals)
  469. (sort-data sequence)\s\s\s\s\s\s\s\s\s\s[Function]
  470. Returns a sequence with the numbers or strings in the sequence X in order.
  471. (standard-deviation x)\s\s\s\s\s\s\s\s\s\s[Function]
  472. Returns the standard deviation of the elements x. Vector reducing.
  473. (t-cdf x df)\s\s\s\s\s\s\s\s\s\s\s[Function]
  474. Returns the value of the T(DF) distribution function at X. Vectorized.
  475. (t-dens x alpha)\s\s\s\s\s\s\s\s\s\s[Function]
  476. Returns the density at X of the T(DF) distribution. Vectorized.
  477. (t-quant p df)\s\s\s\s\s\s\s\s\s\s\s[Function]
  478. Returns the P-th quantile of the T(DF) distribution. Vectorized.
  479. (t-rand n d)\s\ll<2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  480. Returns a list of N T(DF) random variables. Vectorized.
  481. (uniform-rand n)\ll<2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  482. Returns a list of N uniform random variables from the range (0, 1). \ll<2>Vectorized.
  483. \BC.4  Plotting Functions\b
  484. \ll<0>(boxplot data &key (title "Box Plot"))\s\s\s\s\s\s\s[Function]
  485. DATA is a sequence, a list of sequences or a matrix. Makes a boxplot of the sequence or a parallel box plot of the sequences in the list or the columns of the matrix.
  486. (boxplot-x x data &key (title "Box Plot"))\s\s\s\s\s\s\s[Function]
  487. DATA is a list of sequences or a matrix. X is a sequence with as many elements as DATA has elements or columns. Makes a parallel box plot of the sequences in the list or the columns of the matrix vs X.
  488. (close-all-plots)\s\s\s\s\s\s\s\s\s\s[Function]
  489. Close all plot windos.
  490. (histogram data &key (title "Histogram"))\s\s\s\s\s\s\s[Function]
  491. Opens a window with a histogram of DATA. TITLE is the window title. The number of bins used can be adjusted using the histogram menu. The histogram can be linked to other plots with the link-views command. Returns a plot object. 
  492. (link-views &rest plots)\s\s\s\s\s\s\s\s\s[Function]
  493. Links the argument plots: any change in hiliting or visibility of points in the current plot is propagated to the other plots.
  494. (name-list names &key (title "Name List"))\s\s\s\s\s\s\s[Function]
  495. NAMES is a number or a list of character strings. Opens a window with a list of the supplied character strings or entries numbered from 0 to NAMES - 1. This display can be linked to plots with the link-views function. Returns a plot object.
  496. (plot-function f xmin xmax &optional (num-points 50))\s\s\s\s\s[Function]
  497. Plots function F of one real variable over the range between xmin and xmax. The function is evaluated at NUM-POINTS points.
  498. (plot-lines x y &key (title "Line Plot") variable-labels)\s\s\s\s\s[Function]
  499. Opens a window with a connected line plot of X vs Y, where X and Y are compound number-data. VARIABLE-LABELS, if supplied, should be lists of character strings. TITLE is the window title. The plot can be linked to other plots with the link-views command. Returns a plot object.
  500. (plot-points x y &key (title "Scatter Plot") variable-labels point-labels)\s\s\s[Function]
  501. Opens a window with a scatter plot of X vs Y, where X and Y are compound number-data. VARIABLE-LABELS and POINT-LABELS, if supplied, should be lists of character strings. TITLE is the window title. The plot can be linked to other plots with the link-views command. Returns a plo\ll<2>t object.
  502. (probability-plot data &key (distribution-function (function normal-cdf)) (title "Probability Plot") point-labels)\s\s\s\s\s\s\s\s\s\s\s[Function]
  503. \ll<0>(quantile-plot data &key (quantile-function (function normal-quant)) (title "Quantile Plot") point-labels)\s\s\s\s\s\s\s\s\s\s\s\s[Function]
  504. (scatterplot-matrix data &key (title "Spinning Plot") variable-labels point-labels (scale t))\s[Function]
  505. DATA is a list of two or more compound number-data objects of equal length .Opens a window with a brushable scatter plot matrix of the elements of DATA.VARIABLE-LABELS and POINT-LABELS, if supplied, should be lists of character strings. TITLE is the window title. If scale is NIL data are assumed to be between -1 and 1.The plot can be linked to other plots with the link-views command. Returns a plot object.
  506. (spin-function f xmin xmax ymin ymax &optional (num-points 6))\s\s\s\s[Function]
  507. Rotatable plot of function F of two real variables over the range between [xmin, xmax] x [ymin, ymax]. The function is evaluated at NUM-POINTS points.
  508. (spin-plot data &key (title "Spinning Plot") variable-labels point-labels (scale t))\s\s[Function]
  509. DATA is a list of three compound number-data objects of equal length. Opens a window with a rotating plot of the three elements of DATA. VARIABLE-LABELS and POINT-LABELS, if supplied, should be lists of character strings. TITLE is the window title. If scale is NIL data are assumed to be between -1 and 1. The plot can be linked to other plots with the link-views command. Returns a plot object.
  510. (unlink-views &rest plots)\s\s\s\s\s\s\s\s\s[Function]
  511. Removes links to its arguments. With no arguments removes all links.
  512. \BC.5  Object Methods
  513. C.5.1  Regression Methods\b
  514. :basis\s\s\s\s\s\s\s\s\s\s\s   [Object Method]
  515. Returns the indices of the variables used in fitting the model.
  516. :coef-estimates\s\s\s\s\s\s\s\s\s   [Object Method]
  517. Returns the OLS (ordinary least squares) estimates of the regression coefficients. Entries beyond the intercept correspond to entries in basis.
  518. :coef-standard-errors\s\s\s\s\s\s\s\s\s   [Object Method]
  519. Returns estimated standard errors of coefficients. Entries beyond the intercept correspond to entries in basis.
  520. :cooks-distances\s\s\s\s\s\s\s\s\s   [Object Method]
  521. Computes Cook's distances.
  522. :df\s\s\s\s\s\s\s\s\s\s\s   [Object Method]
  523. Returns the number of degrees of freedom in the model.
  524. :display\s\s\s\s\s\s\s\s\s\s   [Object Method]
  525. Prints the least squares regression summary. Variables not used in the fit are marked as aliased.
  526. :fit-values\s\s\s\s\s\s\s\s\s\s   [Object Method]\ll<2>
  527. Returns the fitted values for the model.
  528. :included &optional new-included\s\s\s\s\s\s\s   [Object Method]
  529. With no argument, NIL means a case is not used in calculating estimates, and non-nil means it is used. NEW-INCLUDED is a sequence of length of y of nil and t to select cases. Estimates are recomputed.
  530. \ll<0>:intercept &optional new-intercept\s\s\s\s\s\s\s   [Object Method]
  531. With no argument returns T if the model includes an intercept term, nil if not. With an argument NEW-INTERCEPT the model is changed to include or exclude an intercept, according to the value of NEW-INTERCEPT, and estimates are recomputed.
  532. :leverages\s\s\s\s\s\s\s\s\s\s   [Object Method]
  533. Returns the diagonal elements of the hat matrix.
  534. :num-cases\s\s\s\s\s\s\s\s\s\s   [Object Method]
  535. Returns the number of cases in the model.
  536. :num-coefs\s\s\s\s\s\s\s\s\s\s   [Object Method]
  537. Returns the number of coefficients in the fit model (including the intercept if the model includes one).
  538. :num-included\s\s\s\s\s\s\s\s\s\s   [Object Method]
  539. Returns the number of cases used in the computations.
  540. :plot-bayes-residuals &optional x-values\s\s\s\s\s\s   [Object Method]
  541. Opens a window with a plot of the standardized residuals and two standard error bars for the posterior distribution of the actual deviations from the line. See Chaloner and Brant. If X-VALUES are not supplied  the fitted values are used. The plot can be linked to other plots with the link-views function. Returns a plot object.
  542. :plot-residuals &optional x-values\s\s\s\s\s\s\s   [Object Method]
  543. Opens a window with a plot of the residuals. If X-VALUES are not supplied the fitted values are used. The plot can be linked to other plots with the link-views function. Returns a plot object.
  544. :predictor-names &optional (names nil set)\s\s\s\s\s\s   [Object Method]
  545. With no argument returns the predictor names. NAMES sets the names.
  546. :r-squared\s\s\s\s\s\s\s\s\s\s   [Object Method]
  547. Returns the sample squared multiple correlation coefficient, R squared, for the regression.
  548. :raw-residuals\s\s\s\s\s\s\s\s\s\s   [Object Method]
  549. Returns the raw residuals for a model.
  550. :residuals\s\s\s\s\s\s\s\s\s\s   [Object Method]
  551. Returns the raw residuals for a model without weights. If the model includes weights the raw residuals times the square roots of the weights are returned.
  552. :sigma-hat\s\s\s\s\s\s\s\s\s\s   [Object Method]
  553. Returns the estimated standard deviation of the deviations about the regression line.
  554. :studentized-residuals\s\s\s\s\s\s\s\s\s   [Object Method]
  555. Computes the internally studentized residuals for included cases and externaly studentized residuals for excluded cases.
  556. :sum-of-squares\s\s\s\s\s\s\s\s\s   [Object Method]\ll<2>
  557. Returns the error sum of squares for the model.
  558. :weights &optional new-w\s\s\s\s\s\s\s\s   [Object Method]
  559. With no argument returns the weight sequence as supplied to m; NIL means ans unweighted model. NEW-W sets the weights sequence to NEW-W and recomputes the estimates.
  560. :x-matrix\s\s\s\s\s\s\s\s\s\s   [Object Method]
  561. Returns the X matrix for the model, including a column of 1's, if appropriate. Columns of X matrix correspond to entries in basis.
  562. :xtxinv\s\s\s\s\s\s\s\s\s\s\s   [Object Method]
  563. Returns (inverse (matmult (transpose (send self :x-matrix)) (send self :x-matrix))).
  564. \BC.5.2  General Plot Methods\b\ll<-1>
  565. \ll<2>
  566. \ll<1>:add-lines lines &key type (draw t)\s\s\s\s\s\s\s   [Object Method]
  567. Adds lines to plot. LINES is a list of sequences, the coordinates of the line starts. TYPE is normal or dashed. If DRAW is true the new lines are added to the screen.
  568. :add-points points &key point-labels (draw t)\s\s\s\s\s   [Object Method]
  569. Adds points to plot. POINTS is a list of sequences, POINT-LABELS a list of strings. If DRAW is true the new points are added to the screen.
  570. :adjust-to-data &key (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  571. Sets ranges to the actual range of variables in the original coordinate system. If DRAW is true sends :RESIZE and :REDRAW messages.
  572. :all-points-showing-p\s\s\s\s\s\s\s\s\s   [Object Method]
  573. :all-points-unmasked-p\s\s\s\s\s\s\s\s   [Object Method]
  574. :any-points-selected-p\s\s\s\s\s\s\s\s\s   [Object Method]
  575. :apply-transformation a &key draw\s\s\s\s\s\s\s   [Object Method]
  576. Applies matrix A to current transformation. If draw is true the :REDRAW-CONTENT message is sent.
  577. :clear &optional (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  578. Clears the plot data. If DRAW is nil the plot is redrawn; otherwise its current screen image remains unchanged.
  579. :clear-lines &key (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  580. Removes all lines from the plot. If DRAW is true the :REDRAW-CONTENT message is sent.
  581. :clear-points &key (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  582. Removes all points from the plot. If DRAW is true the :REDRAW-CONTENT message is sent.
  583. :clear-strings &key (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  584. Removes all strings from the plot. If DRAW is true the :REDRAW-CONTENT message is sent.
  585. :content-variables &optional xvar yvar\s\s\s\s\s\s   [Object Method]
  586. Sets or retrieves the indices of the current content variables.
  587. :do-mouse x y type extend option\s\s\s\s\s\s\s   [Object Method]
  588. Sends appropriate action message for  mouse mode to plot.
  589. :drag-grey-rect x y width height\s\s\s\s\s\s\s   [Object Method]
  590. Drags grey rectangle starting at (LIST (- X WIDTH) (- Y HEIGHT) WIDTH HEIGHT) while mouse button is down. Returns the final rectangle. Should be called when the mouse is down.\ll<2>
  591. \ll<0>:erase-selection\s\s\s\s\s\s\s\s\s   [Object Method]
  592. Sets selected points states to invisible and sends :ADJUST-POINT-SCREEN-STATES message.
  593. :fixed-aspect &optional fixed\s\s\s\s\s\s\s\s   [Object Method]
  594. Sets or retrieves current size adjustment option (true or NIL).
  595. :frame-location &optional left top\s\s\s\s\s\s\s   [Object Method]
  596. Moves window frame to (LEFT TOP) if supplied. Returns list of current left, top. Adjusts for the menu bar.
  597. :frame-size &optional width height\s\s\s\s\s\s\s   [Object Method]
  598. Sets window frame width and size to WIDTH and SIZE if supplied. Returns list of current WIDTH and HEIGHT. Adjusts for the menu bar.
  599. :idle-on &optional on\s\s\s\s\s\s\s\s\s   [Object Method]
  600. Sets or returns idling state. On means :do-idle method is sent each pass through the event loop.
  601. :linked &optional on\s\s\s\s\s\s\s\s\s   [Object Method]
  602. Sets or retrieves plot's linking state.
  603. :num-lines\s\s\s\s\s\s\s\s\s\s   [Object Method]
  604. Returns the number of line starts in the plot.
  605. :num-points\s\s\s\s\s\s\s\s\s\s   [Object Method]
  606. Returns the number of points in the plot.
  607. :num-strings\s\s\s\s\s\s\s\s\s\s   [Object Method]
  608. Returns the number of strings in the plot.
  609. :num-variables\s\s\s\s\s\s\s\s\s\s   [Object Method]
  610. Returns the number of variables in the plot.
  611. :point-coordinate var point &optional value\s\s\s\s\s\s   [Object Method]
  612. Sets or retrieves coordinate for variable VAR and point POINT in the original coordinate system. Vectorized.
  613. :point-hilited point &optional hilited\s\s\s\s\s\s\s   [Object Method]
  614. Sets or returns highlighting status (true or NIL) of POINT. Sends :ADJUST-POINT-SCREEN-STATES message if states are set. Vectorized.
  615. :point-label point &optional label\s\s\s\s\s\s\s   [Object Method]
  616. Sets or retrieves label of point POINT. Vectorized.
  617. :point-selected point &optional selected\s\s\s\s\s\s   [Object Method]
  618. Sets or returns selection status (true or NIL) of POINT. Sends :ADJUST-POINT-SCREEN-STATES message if states are set. Vectorized.
  619. :point-showing point &optional selected\s\s\s\s\s\s   [Object Method]
  620. Sets or returns visibility status (true or NIL) of POINT. Sends :ADJUST-POINT-SCREEN-STATES    \ll<2> message if states are set. Vectorized.
  621. :point-symbol point &optional symbol\s\s\s\s\s\s   [Object Method]
  622. Sets or retrieves symbol of point POINT. Vectorized.
  623. :range index &optional low high\s\s\s\s\s\s\s   [Object Method]
  624. Sets or retrieves variable's original coordinate range. Vectorized.
  625. \ll<0>:real-to-screen x y\s\s\s\s\s\s\s\s\s   [Object Method]
  626. Returns list of screen coordinates of point (X, Y), in the original coordinate system, based on current content variables.
  627. :redraw\s\s\s\s\s\s\s\s\s\s   [Object Method]
  628. Redraws entire plot.
  629. :redraw-content\s\s\s\s\s\s\s\s\s   [Object Method]
  630. Redraws plot's content.
  631. :rotate-2 var1 var2 angle &key (draw t)\s\s\s\s\s\s   [Object Method]
  632. Rotates int the plane of variables with indices VAR1 and VAR2 by ANGLE, in radians. sends the :REDRAW-CONTENT message if DRWA is true.
  633. :scale-to-range var low high &key (draw t)\s\s\s\s\s\s   [Object Method]
  634. Scales and shifts data to map visible range into specified range. Sends :RESIZE and :REDRAW messages if DRAW is true.
  635. :scaled-range index &optional low high\s\s\s\s\s\s   [Object Method]
  636. Sets or retrieves variable's transformed coordinate range. Vectorized.
  637. :screen-to-real x y\s\s\s\s\s\s\s\s\s   [Object Method]
  638. Returns list of real coordinates, in the original coordinate system, of screen point (X, Y), based on current content variables.
  639. :selection\s\s\s\s\s\s\s\s\s\s   [Object Method]
  640. Return indices of current selection.
  641. :show-all-points\s\s\s\s\s\s\s\s\s   [Object Method]
  642. Sets all point states to normal and sends :ADJUST-POINT-SCREEN-STATES message 
  643. :showing-labels &optional showing\s\s\s\s\s\s\s   [Object Method]
  644. Sets or retrieves current labeling state (true or NIL).
  645. :title &optional string\s\s\s\s\s\s\s\s\s   [Object Method]
  646. Sets or retrieves window title.
  647. :transformation &optional a &key (draw t)\s\s\s\s\s\s   [Object Method]
  648. Sets or retrieves transformation. A should be a matrix or NIL. If draw is true the :REDRAW-CONTENT message is sent.
  649. :unselect-all-points &key (draw t)\s\s\s\s\s\s\s   [Object Method]
  650. Unselects all points. Sends :ADJUST-POINT-SCREEN-STATES message if DRAW is true.
  651. :variable-label var &optional label\s\s\s\s\s\s\s   [Object Method]
  652. Sets or returns label for variable with index VAR. Vectorized.
  653. :visible-range var\s\s\s\s\s\s\s\s\s   [Object Method]
  654. Returns list of min and max of variable VAR over visible, unmasked points, \ll<2>lines and strings. Vectorized.
  655. :while-button-down fcn &optional (motion-only t)\s\s\s\s\s   [Object Method]
  656. Calls fcn repeatedly while mouse button is down. FCN should take two arguments, the current x and y coordinates of the mouse. Returns NIL. Should be called when button is already down.
  657. \ll<0>:x-axis &optional showing labeled ticks\s\s\s\s\s\s   [Object Method]
  658. Sets or retrieves current acis label state. SHOWING and LABELED should be true or NIL; TICKS should be a number. All three should be supplied for setting a new state. A list of the three properties is returned.
  659. :y-axis &optional showing labeled ticks\s\s\s\s\s\s   [Object Method]
  660. Sets or retrieves current acis label state. SHOWING and LABELED should be true or NIL; TICKS should be a number. All three should be supplied for setting a new state. A list of the three properties is returned.\ll<2>
  661. \BC.5.3  Histogram Methods\b\ll<0>
  662. \ll<2>
  663. \ll<0>:add-points points (draw t)\s\s\s\s\s\s\s\s   [Object Method]
  664. Adds points to plot. POINTS is a sequence or a list of sequences. If DRAW is true the new points are added to the screen.
  665. :num-bins &optional bins &key (draw t)\s\s\s\s\s\s   [Object Method]
  666. Sets or retrieves number of bins in the histogram. Sends :REDRAW-CONTENT message if DRAW is true.\ll<2>
  667. \BC.5.4  Name List Methods\b\ll<0>
  668. \ll<2>
  669. \ll<0>:add-points points &key point-labels (draw t)\s\s\s\s\s   [Object Method]
  670. Adds points to plot. POINTS is a number or a list of sequences, POINT-LABELS a list of strings. If DRAW is true the new points are added to the screen.\ll<2>
  671. \BC.5.5  Scatterplot Methods\b\ll<0>
  672. \ll<2>
  673. \ll<0>:abline a b\s\s\s\s\s\s\s\s\s\s   [Object Method]
  674. Adds the graph of the line A + B x to the plot.
  675. :add-lines lines &key type (draw t)\s\s\s\s\s\s\s   [Object Method]
  676. Adds lines to plot. LINES is a list of sequences, the coordinates of the line starts. TYPE is normal or dashed. If DRAW is true the new lines are added to the screen.
  677. :add-points points &key point-labels (draw t)\s\s\s\s\s   [Object Method]
  678. Adds points to plot. POINTS is a list of sequences, POINT-LABELS a list of strings. If DRAW is true the new points are added to the screen.
  679. :add-strings locations strings\s\s\s\s\s\s\s\s   [Object Method]
  680. Adds strings to plot. LOCATIONS is a list of sequences, the coordinates of the strings. If DRAW is true the new lines are added to the screen.\ll<2>
  681. \BC.5.6  Spin Plot Methods\b\ll<0>
  682. \ll<2>
  683. :\ll<0>abcplane a b c\s\s\s\s\s\s\s\s\s\s   [Object Method]
  684. Adds the graph of the plane A + B x + Cy to the plot.
  685. :add-function\s\s\s\s\s\s\s\s\s\s   [Object Method]
  686. surface of function F over a NUM-POINTS by NUM-POINTS grid on the rectangle [xmin, xmax] x [ymin, ymax]. Passes other keywords to :add-surface method.
  687. :add-surface\s\s\s\s\s\s\s\s\s\s   [Object Method]
  688. a grid surface using sequences X, Y with values in the matrix Z. Z should be (length X) by (length\ll<2> Y).
  689. \ll<0>:angle &optional angle\s\s\s\s\s\s\s\s   [Object Method]
  690. Sets or retrieves current rotation angle, in radians.
  691. :content-variables &optional xvar yvar\s\s\s\s\s\s   [Object Method]
  692. Sets or retrieves the indices of the current content variables.
  693. :depth-cuing &optional showing\s\s\s\s\s\s\s   [Object Method]
  694. Sets or retrieves axis showing status (true or NIL).
  695. :do-idle\s\s\s\s\s\s\s\s\s\s   [Object Method]
  696. Sends :ROTATE message.
  697. :rotate\s\s\s\s\s\s\s\s\s\s\s   [Object Method]
  698. Rotates once in the current plane by the current angle.
  699. :showing-axes &optional cuing\s\s\s\s\s\s\s   [Object Method]
  700. Sets or retrieves cuing status (true or NIL).\ll<2>
  701. \BC.6  Some Useful Array and Linear Algebra Functions\b
  702. \ll<0>
  703. (%* a b)\s\s\s\s\s\s\s\s\s\s\s[Function]
  704. Returns the matrix product of matrices a and b. If a is a vector it is treated as a row vector; if b is a vector it is treated as a column vector.
  705. (aref array &rest subscripts)\s\s\s\s\s\s\s\s\s[Function]
  706. Returns the element of ARRAY specified by SUBSCRIPTS.
  707. (array-dimension array)\s\s\s\s\s\s\s\s\s[Function]
  708. Returns a list whose elements are the dimensions of ARRAY
  709. (array-dimensions array)\s\s\s\s\s\s\s\s\s[Function]
  710. Returns a list whose elements are the dimensions of ARRAY
  711. (array-in-bounds-p array &rest subscripts)\s\s\s\s\s\s\s[Function]
  712. Returns T if SUBSCRIPTS are valid subscripts for ARRAY; NIL otherwise.
  713. (array-rank array)\s\s\s\s\s\s\s\s\s\s[Function]
  714. Returns the number of dimensions of ARRAY.
  715. (array-row-major-index array &rest subscripts)\s\s\s\s\s\s[Function]
  716. Returns the index into the data vector of ARRAY for the element of ARRAY specified by SUBSCRIPTS.
  717. (array-total-size array)\s\s\s\s\s\s\s\s\s[Function]
  718. Returns the total number of elements of ARRAY.
  719. (arrayp x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  720. Returns T if X is an array; NIL otherwise.\ll<-2>
  721. \ll<0>
  722. (bind-columns &rest args)\s\s\s\s\s\s\s\s\s[Function]
  723. The ARGS can be matrices, vectors, or lists. Arguments are bound into a matrix along their columns. Example: (bind-columns #2a((1 2)(3 4))\M#(5 6)) returns #2a((1 2 5)(3 4 6))
  724. (bind-rows &rest args)\s\s\s\s\s\s\s\s\s[Function]
  725. The ARGS can be matrices, vectors, or lists. Arguments are bound into a matrix \ll<2>along their rows. Example: (bind-rows #2a((1 2)(3 4))\M#(5 6)) returns #2a((1 2)(3 4)(5 6))
  726. \ll<0>(chol-decomp a)\s\s\s\s\s\s\s\s\s\s[Function]
  727. Modified Cholesky decomposition. \IA\i should be a square, symmetric matrix. Computes lower triangular matrix \IL\i such that \ILL\SPT\i\Sp =\I A\i + \ID\i where \ID\i is a diagonal matrix. If \IA\i is strictly positive definite \ID\i will be zero. Otherwise \ID\i is as small as possible to make \IA\i + \ID\i numerically strictly positive definite. Returns a list (\IL\i (\Imax\i \ID\i)).
  728. (column-list m)\s\s\s\s\s\s\s\s\s\s[Function]
  729. Returns a list of the columns of M as vectors
  730. (copy-array array)\s\s\s\s\s\s\s\s\s\s[Function]
  731. Returns a copy of ARRAY with elements eq to the elements of ARRAY.
  732. (copy-list list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  733. Returns a new copy of LIST.
  734. (copy-vector vector)\s\s\s\s\s\s\s\s\s\s[Function]
  735. Returns a copy of VECTOR with elements eq to the elements of VECTOR
  736. (count-elements number &rest more-numbers)\s\s\s\s\s\s[Function]
  737. Returns the number of its arguments. Vector reducing
  738. (cross-product x)\s\s\s\s\s\s\s\s\s\s[Function]
  739. If X is a matrix returns (MATMULT (TRANSPOSE X) X). If X is a vector returns (INNER-PRODUCT X X).
  740. (determinant m)\s\s\s\s\s\s\s\s\s\s[Function]
  741. Returns the determinant of the square matrix M.
  742. (diagonal x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  743. If X is a matrix, returns the diagonal of X. If X is a sequence, returns a diagonal matrix of rank (length X) with diagonal elements eq to the elements of X.
  744. (identity-matrix n)\s\s\s\s\s\s\s\s\s\s[Function]
  745. Returns the identity matrix of rank N.
  746. (inner-product x y)\s\s\s\s\s\s\s\s\s\s[Function]
  747. Returns inner product of sequences X and Y.
  748. (inverse m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  749. Returns the inverse of the the square matrix M; signals an error if M is ill conditioned or singular
  750. (lu-decomp a)\s\s\s\s\s\s\s\s\s\s\s[Function]
  751. A is a square matrix of numbers (real or complex). Computes the LU decomposition of A and returns a list of the form (LU IV D FLAG), where LU is a matrix with the L part in the lower triangle, the U part in the upper triangle (the diagonal entries of L are taken to be 1), IV is a vector describing the row permutation used, D is 1 if the number of permutations is odd, -1 if even, and FLAG is T if A is numerically singular, NIL otherwise. Used bu LU-SOLVE.
  752. (lu-solve lu b)\s\s\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  753. LU is the result of (LU-DECOMP A) for a square matrix A, B is a sequence. Returns the solution to the equation Ax = B. Signals an error if A is singular.
  754. (make-list size &key (initial-element nil))\s\s\s\s\s\s\s[Function]
  755. Creates and returns a list containing SIZE elements, each of which is initialized to INITIAL-ELEMENT.
  756. \ll<1>(make-sweep-matrix x y &optional weights)\s\s\s\s\s\s\s[Function]
  757. X is a matrix, Y and WEIGHTS are sequences. Returns the sweep matrix for the (possibly weighted) regression of Y on X.
  758. (map-elements function data &rest more-data)\s\s\s\s\s\s[Function]
  759. FUNCTION must take as many arguments as there are DATA arguments supplied. DATA arguments must either all be sequences or all be arrays of the same shape. The result is of the same type and shape as the first DATA argument, with elements the result of applying FUNCTION elementwise to the DATA arguments
  760. (matmult a b)\s\s\s\s\s\s\s\s\s\s\s[Function]
  761. Returns the matrix product of matrices a and b. If a is a vector it is treated as a row vector; if b is a vector it is treated as a column vector.
  762. (matrix dim data)\s\s\s\s\s\s\s\s\s\s[Function]
  763. returns a matrix of dimensions DIM initialized using sequence DATA in row major order.
  764. (matrixp m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  765. Returns T if M is a matrix, NIL otherwise.
  766. (outer-product x y &optional (fcn (function *)))\s\s\s\s\s\s[Function]
  767. Returns the generalized outer product of x and y, using fcn. Tat is, the result is a matrix of dimension ((length x) (length y)) and the (i j) element of the result is computed as (apply fcn (aref x i) (aref y j)).
  768. (permute-array a p)\s\s\s\s\s\s\s\s\s\s[Function]
  769. Returns a copy of the array A permuted according to the permutation P.
  770. (qr-decomp a)\s\s\s\s\s\s\s\s\s\s\s[Function]
  771. A is a matrix of real numbers with at least as many rows as columns. Computes the QR factorization of A and returns the result in a list of the form (Q R).
  772. (rcondest a)\s\s\s\s\s\s\s\s\s\s\s[Function]
  773. Returns an estimate of the reciprocal of the L1 condition number of an upper triangular matrix a.
  774. (row-list m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  775. Returns a list of the rows of M as vectors
  776. (solve a b)\s\s\s\s\s\s\s\s\s\s\s[Function]
  777. Solves A x = B using LU decomposition and backsolving. B can be a sequence or a matrix.
  778. (split-list list cols)\s\s\s\s\s\s\s\s\s\s[Function]
  779. Returns a list of COLS lists of equal length of the elements of LIST.
  780. (sum &rest number-data)\s\s\s\s\s\s\s\s\s[Function]
  781. Returns the sum of all the elements of its arguments. Returns 0 if there are no arguments. Vector reducing.
  782. (sv-decomp a)\s\s\s\s\s\s\s\s\s\s\s[Function]
  783. A is a matrix of real numbers with at least as many rows as columns. Computes the singular value\ll<3> decomposition of A and returns a list of the form (U W V FLAG) where U and V are matrices whose columns are the left and right singular vectors of A and W is the sequence of singular values of A. FLAG is T if the algorithm converged, NIL otherwise.\ll<2>
  784. \ll<0>(sweep-operator a indices &optional tolerances)\s\s\s\s\s\s[Function]
  785. A is a matrix, INDICES a sequence of the column indices to be swept. Returns a list of the swept result and the list of the columns actually swept. (See MULTREG documentation.) If supplied, TOLERANCES should be a list of real numbers the same length as INDICES. An index will only be swept if its pivot element is larger than the corresponding element of TOLERANCES.
  786. (transpose m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  787. Returns the transpose of the matrix M.
  788. (vectorp m)\s\s\s\s\s\s\s\s\s\s\s[Function]
  789. Returns T if M is a vector, NIL otherwise.\ll<2>
  790. \BC.7   System Functions\b
  791. \ll<0>(alloc number)\s\s\s\s\s\s\s\s\s\s\s[Function]
  792. Changes number of nodes to allocate in each segment to NUMBER. Returns old number of nodes to allocate.
  793. (call-cfun cfun &rest args)\s\s\s\s\s\s\s\s\s[Function]
  794. CFUN is a string naming a C function. The remaining arguments must be integers, sequences of integers, reals or sequences of reals. CFUN is called with the remaining arguments and a list of the lists of the values of the arguments after the call is returned. Arguments in the call will be pointers to ints or pointers of doubles. Not available on all implementations.
  795. (call-fsub cfun &rest args)\s\s\s\s\s\s\s\s\s[Function]
  796. FSUB is a string naming a FORTRAN function. The remaining arguments must be integers, sequences of integers, reals or sequences of reals. FSUB is called with the remaining arguments and a list of the lists of the values of the arguments after the call is returned. Arguments in the call will be (arrays of) integers or double precision numbers. Not available on all implementations.
  797. (call-lfun &rest args)\s\s\s\s\s\s\s\s\s\s[Function]
  798. LFUN\Mis a C function written to conform to internal XLISP argument reading and value returning conventions. Applies LGUN to ARS and returns the result.
  799. (debug)\s\s\s\s\s\s\s\s\s\s\s[Function]
  800. Enable breaking on error on.
  801. (dyn-load file &key verbose libflags fortran)\s\s\s\s\s\s\s[Function]
  802. Links the object file FILE with standard C libraries and loads into the running XLISP-STAT process. If FORTRAN is not NIL also searches standard FORTRAN libraries. LIBFLAGS can be a string used to specify additional libraries, for example
  803. (exit)\s\s\s\s\s\s\s\s\s\s\s\s[Function]
  804. Exits from XLISP.
  805. (expand number)\s\s\s\s\s\s\s\s\s\s[Function]
  806. Expand memory by adding NUMBER segments. Returns the number of segments.
  807. (gc)\s\s\s\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  808. Forces garbage collection. Returns nil.
  809. (help &optional symbol)\s\s\s\s\s\s\s\s\s[Function]
  810. Prints the documentation associated with SYMBOL.  With no argument, this function prints the greeting message to beginners.
  811. \ll<0>(help* string)\s\s\s\s\s\s\s\s\s\s\s[Function]
  812. Prints the documentation associated with those symbols whose print names contain STRING as substring.  STRING may be a symbol, in which case the print-name of that symbol is used.
  813. (load filename &key (verbose t) (print nil))\s\s\s\s\s\s\s[Function]
  814. Loads the file named by FILENAME into XLISP. Returns T if load succeeds, NIL if file does not exist.
  815. (nodebug)\s\s\s\s\s\s\s\s\s\s\s[Function]
  816. Disable breaking on error on.
  817. (room)\s\s\s\s\s\s\s\s\s\s\s\s[Function]
  818. Shows memory allocation statistics. Returns nil.
  819. (save file)\s\s\s\s\s\s\s\s\s\s\s[Function]
  820. Saves current memory image in FILE.wks. Does not work right with allocated objects.
  821. (variables)\s\s\s\s\s\s\s\s\s\s\s[Function]
  822. Prints the names of all def'ed variables\ll<2>
  823. \BC.8   Some Basic Lisp Functions, Macros and Special Forms\b
  824. \ll<0>Except where noted these functions should have a significant subset of their Common Lisp functionality as defined in Steele [15].
  825. (and {form}*)\s\s\s\s\s\s\s\s\s\s\s    [Macro]
  826. Evaluates FORMs in order from left to right.  If any FORM evaluates to NIL, returns immediately with the value NIL.  Else, returns the value of the last FORM.
  827. (append &rest lists)\s\s\s\s\s\s\s\s\s\s[Function]
  828. Constructs a new list by concatenating its arguments.
  829. (apply function &rest args)\s\s\s\s\s\s\s\s\s[Function]
  830. Conses all arguments but the last onto the last and applies FUNCTION to the resulting argument list. Last argument must be a list.
  831. (apropos string)\s\s\s\s\s\s\s\s\s\s[Function]
  832. Prints symbols whose print-names contain STRING as substring. If STRING is a symbol its print name is used.
  833. (apropos-list string)\s\s\s\s\s\s\s\s\s\s[Function]
  834. Returns, as a list, all symbols whose print-names contain STRING as substring. If STRING is a symbol its print name is used.
  835. (assoc item alist &key (test (function eql)) test-not)\s\s\s\s\s\s[Function]
  836. Returns the first pair in ALIST whose car is equal (in the sense of TEST) to ITEM.
  837. (atom x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  838. Returns T if X is not a cons; NIL otherwise.\ll<2>
  839. (boundp symbol)\s\s\s\s\s\s\s\s\s\s[Function]
  840. Returns T if the global variable named by SYMBOL has a value; NIL otherwise.
  841. (car list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  842. Returns the car of LIST.  Returns NIL if LIST is NIL.
  843. \ll<1>(case keyform (key | (key*) form*)*)\s\s\s\s\s\s\s\s[Function]
  844. Evaluates KEYFORM and tries to find the KEY that is EQL to the value of KEYFORM.  If one is found, then evaluates FORMs that follow the KEY and returns the value of the last FORM.  If not, simply returns NIL.
  845. (cdr list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  846. Returns the cdr of LIST.  Returns NIL if LIST is NIL.
  847. (close stream)\s\s\s\s\s\s\s\s\s\s\s[Function]
  848. Close file stream STREAM.
  849. (coerce x type)\s\s\s\s\s\s\s\s\s\s\s[Function]
  850. Coerces X to an object of the type TYPE.
  851. (cond (test form*) *)\s\s\s\s\s\s\s\s\s\s[Function]
  852. Evaluates each TEST in order until one evaluates to a non-NIL value.  Then evaluates the associated FORMs in order and returns the value of the last FORM.  If no forms follow the TEST, then returns the value of the TEST. Returns NIL, if all TESTs evaluate to NIL.
  853. (cons x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  854. Returns a new cons (list node) whose car and cdr are X and Y, respectively.
  855. (consp x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  856. Returns T if X is a cons; NIL otherwise.
  857. (defmacro name defmacro-lambda-list [doc] {form}*)\s\s\s\s\s     [\ll<2>Macro\ll<1>]
  858. Defines a macro as the global definition of the symbol NAME. The complete syntax of a lambda-list is: (var* [&optional var*] [&rest var] [&aux var*]) The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be retrieved by (documentation 'NAME 'function).
  859. (defun name lambda-list [doc] {form}*)\s\s\s\s\s\s\s     [\ll<2>Macro\ll<1>]
  860. Defines a function as the global definition of the symbol NAME. The complete syntax of a lambda-list is: (var* [&optional var*] [&rest var] [&aux var*]) The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be retrieved by (documentation 'NAME 'function).
  861. (do ({(var [init [step]])}*) (endtest {result}*) {tag | statement}*)\s\s\s\s     [\ll<2>Macro\ll<1>]
  862. Creates a NIL block, binds each VAR to the value of the corresponding INIT, and then executes STATEMENTs repeatedly until ENDTEST is satisfied.  After each iteration, assigns to each VAR the value of the corresponding STEP.  When ENDTEST is satisfied, evaluates RESULTs as a PROGN and returns the value of the last RESULT (or NIL if no RESULTs are supplied).  Performs variable bindings and assignments all at once, just like LET does.
  863. (do* ({(var [init [step]])}*) (endtest {result}*) tag | statement*)\s\s\s\s     [\ll<2>Macro\ll<1>]
  864. Just like DO, but performs variable bindings and assignments in serial, just like LET* and SETQ do.
  865. (dolist (var listform [result]) {tag | statement}*)\s\s\s\s\s\s     [\ll<2>Macro\ll<1>]
  866. Executes STATEMENTs, with VAR bound to each member of the list value of LISTFORM.  Then returns the value of RESULT (which defaults to NIL).\ll<2>
  867. (dotimes (var countform [result]) {tag | statement}*)\s\s\s\s\s     [Macro]
  868. Executes STATEMENTs, with VAR bound to each number between 0 (inclusive) and the value of COUNTFORM (exclusive).  Then returns the value of RESULT (which defaults to NIL).
  869. \ll<0>(elt a &rest indices)\s\s\s\s\s\s\s\s\s\s[Function]
  870. A can be a list or an array. If A is a list and INDICES is a single number then the appropriate element of A is returned. If  is a list and INDICES is a list of numbers then the sublist of the corresponding elements is returned. If A in an array then the number of INDICES must match the ARRAY-RANK of A. If each index is a number then the appropriate array element is returned. Otherwise the INDICES must all be lists of numbers and the corresponding submatrix of A is returned. ELT can be used in setf.
  871. (eq x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  872. Returns T if X and Y are the same identical object; NIL otherwise.
  873. (eql x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  874. Returns T if X and Y are EQ, or if they are numbers of the same type with the same value, or if they are identical strings.  Returns NIL otherwise.
  875. (equal x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  876. Returns T if X and Y are EQL or if they are of the same type and corresponding components are EQUAL.  Returns NIL otherwise. Arrays must be EQ to be EQUAL.
  877. (equalp x y)\s\s\s\s\s\s\s\s\s\s\s[Function]
  878. Returns T if (equal x y), or x, y are numbers and (= x y), or x and y are strings and (string-equal x y).
  879. (first x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  880. Equivalent to (CAR X).
  881. (format destination control &rest args)\s\s\s\s\s\s\s[Function]
  882. Very basic implementation of Common Lisp format function. Only A, S, D, F, E, and G  can take two.
  883. (funcall function &rest arguments)\s\s\s\s\s\s\s\s[Function]
  884. Applies FUNCTION to the ARGUMENTs
  885. (function x) or #'x\s\s\s\s\s\s\s\s\s     [Special Form]
  886. If X is a lambda expression, creates and returns a lexical closure of X in the current lexical environment. If X is a symbol that names a function, returns that function.
  887. (getf place indicator &optional default)\s\s\s\s\s\s\s[Function]
  888. Returns property value of INDICATOR in PLACE, or DEFAULT if not found.
  889. (identity x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  890. Simply returns X.
  891. (if test then [else])\s\s\s\s\s\s\s\s\s\s    [Macro]
  892. If TEST evaluates to non-NIL, then evaluates THEN and returns the result. If not, evaluates ELSE (which defaults to NIL) and returns the result.
  893. (last list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  894. Returns the last cons in LIST
  895. \ll<2>
  896. (length sequence)\s\s\s\s\s\s\s\s\s\s[Function]
  897. Returns the length of SEQUENCE.
  898. (let (var | (var [value])*) form*)\s\s\s\s\s\s\s\s[Function]
  899. Initializes VARs, binding them to the values of VALUEs (which defaults to NIL) all at once, then evaluates FORMs as a PROGN.
  900. \ll<0>(let* (var | (var [value])*) form*)\s\s\s\s\s\s\s\s[Function]
  901. Initializes VARs, binding them to the values of VALUEs (which defaults to NIL) from left to right, then evaluates FORMs as a PROGN.
  902. (listp x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  903. Returns T if X is either a cons or NIL; NIL otherwise.
  904. (map result-type function sequence &rest more-sequences)\s\s\s\s\s[Function]
  905. FUNCTION must take as many arguments as there are sequences provided. RESULT-TYPE must be the either the symbol VECTOR or the symbol LIST. The result is a sequence of the specified type such that the i-th element of the result is the result of applying FUNCTION to the i-th elements of the SEQUENCEs.
  906. (mapc fun list &rest more-lists)\s\s\s\s\s\s\s\s[Function]
  907. Applies FUN to successive cars of LISTs.  Returns the first LIST.
  908. (mapcar fun list &rest more-lists)\s\s\s\s\s\s\s\s[Function]
  909. Applies FUN to successive cars of LISTs and returns the results as a list.
  910. (mapl fun list &rest more-lists)\s\s\s\s\s\s\s\s[Function]
  911. Applies FUN to successive cdrs of LISTs.  Returns the first LIST.
  912. (maplist fun list &rest more-lists)\s\s\s\s\s\s\s\s[Function]
  913. Applies FUN to successive cdrs of LISTs and returns the results as a list.
  914. (member item list key (test (function eql)) test-not)}\s\s\s\s\s\s[Function]
  915. Returns the tail of LIST beginning with the first ITEM.
  916. (not item)\s\s\s\s\s\s\s\s\s\s\s[Function]
  917. Test if object is nil.
  918. (nth n list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  919. Returns the N-th element of LIST, where the car of LIST is the zero-th element.
  920. (nthcdr n list)\s\s\s\s\s\s\s\s\s\s\s[Function]
  921. Returns the result of performing the CDR operation N times on LIST.
  922. (null x)\s\s\s\s\s\s\s\s\s\s\s\s[Function]
  923. Returns T if X is NIL; NIL otherwise.
  924. (numberp x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  925. Returns T if X is any kind of number; NIL otherwise.
  926. (objectp x)\s\s\s\s\s\s\s\s\s\s\s[Function]
  927. Returns T if X is an object, NIL otherwise.
  928. (open fname &key (direction :input))\s\s\s\s\s\s\s\s[Function]
  929. Opens file named by string or symbol FNAME. DIRECTION is :INPUT or :OUTPUT.\ll<2>
  930. (or {form}*)\s\s\s\s\s\s\s\s\s\s\s    [Macro]
  931. Evaluates FORMs in order from left to right.  If any FORM evaluates to non-NIL, quits and returns that value.  If the last FORM is reached, returns whatever value it returns.
  932. (prin1 object &optional (stream *standard-output*))\s\s\s\s\s\s[Function]
  933. Prints OBJECT in the most readable representation.  Returns OBJECT.
  934. \ll<0>(princ object &optional (stream *standard-output*))\s\s\s\s\s\s[Function]
  935. Prints OBJECT without escape characters.  Returns OBJECT.
  936. (print object &optional (stream *standard-output*))\s\s\s\s\s\s[Function]
  937. Outputs a newline character, and then prints OBJECT in the most readable representation.  Returns OBJECT.
  938. (prog ({var | (var [init])}*) {tag | statement}*)\s\s\s\s\s\s   [Macro]
  939. Binds VARs in parallel, and then executes STATEMENTs.
  940. (prog* ({var | (var [init])}*) {tag | statement}*)\s\s\s\s\s\s   [Macro]
  941. Binds VARs sequentially, and then executes STATEMENTs.
  942. (prog1 first {form}*)\s\s\s\s\s\s\s\s\s\s   [Macro]
  943. Evaluates FIRST and FORMs in order, and returns the value of FIRST.
  944. (prog2 first second {forms}*)\s\s\s\s\s\s\s\s\s   [Macro]
  945. Evaluates FIRST, SECOND, and FORMs in order, and returns the value
  946. of SECOND.
  947. (progn {form}*)\s\s\s\s\s\s\s\s\s\s   [Macro]
  948. Evaluates FORMs in order, and returns whatever the last FORM returns.
  949. (progv symbols values {form}*)\s\s\s\s\s\s\s\s   [Macro]
  950. Evaluates FORMs in order, with SYMBOLS dynamically bound to VALUES, and returns whatever the last FORM returns.
  951. (provide name)\s\s\s\s\s\s\s\s\s\s[Function]
  952. Adds NAME to the list of modules.
  953. (quote x) or 'x\s\s\s\s\s\s\s\s\s\s     [Special Form]
  954. Returns X without evaluating it.
  955. (read &optional (stream *standard-input*) (eof-value nil) (recursivep nil))\s\s\s[Function]
  956. Reads and returns the next object from STREAM.
  957. (reduce function sequence &key initial-value)\s\s\s\s\s\s[Function]
  958. Combines all the elements of SEQUENCE using a binary operation FUNCTION. If INITIAL-VALUE is supplied it is logically placed before SEQUENCE.
  959. (remove item list &key (test (function eql)) test-not)\s\s\s\s\s\s[Function]
  960. Returns a copy of LIST with ITEM removed.
  961. (remove-if test list)\s\s\s\s\s\s\s\s\s\s[Function]
  962. Returns a copy of LIST with elements satisfying TEST removed.
  963. (remove-if-not test list)\s\s\s\s\s\s\s\s\s[Function]
  964. Returns a copy of LIST with elements not satisfying TEST removed.
  965. (require name)\s\s\s\s\s\s\s\s\s\s\s[Function]
  966. Loads module NAME, unless it has already been loaded. If PATH is supplied it is used as the file name; otherwise NAME is used. If file NAME is not in the current directory *default-path* is searched.
  967. (rest x)\s\s\s\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  968. Equivalent to (CDR X)
  969. \ll<0>(return [result])\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  970. Returns from the lexically surrounding PROG construct.  The value of RESULT, which defaults to NIL, is returned as the value of the PROG construct.
  971. (reverse list)\s\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  972. Returns a new list containing the same elements as LIST but in reverse order.
  973. (second x)\s\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  974. Equivalent to (CAR (CDR X))
  975. (set symbol value)\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  976. Assigns the value of VALUE to the dynamic variable named by SYMBOL (i. e. it changes the global definition of SYMBOL), and returns the value assigned.
  977. (setf {place newvalue}*)\ll<-2>\s\s\s\s\s\s\s\s\s   [Macro]\ll<0>
  978. Replaces the value in PLACE with the value of NEWVALUE, from left to right. Returns the value of the last NEWVALUE.  Each PLACE may be a symbol that names a variable or function call form whose first element is the name of one of the following functions: nth, aref, subarray, sublist, select, elt, get, symbol-value, symbol-plist, documentation, slot-value, or\sc?r\sc??r\sc???r\sc????r where '?' stands for either 'a' or 'd'. defsetf can be used to define new setf methods.
  979. (setq {var form}*)\ll<-2>\s\s\s\s\s\s\s\s\s\s   [Macro]\ll<0>
  980. VARs are not evaluated and must be symbols.  Assigns the value of the first FORM to the first VAR, then assigns the value of the second FORM to the second VAR, and so on.  Returns the last value assigned.
  981. (string sym)\s\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  982. Returns print-name of SYM if SYM is a symbol, or SYM if SYM is a.
  983. (stringp x)\s\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  984. Returns T if X is a string; NIL otherwise.
  985. (sublis alist tree &key (test (function eql)) test-not)\ll<-2>\s\s\s\s\s\s[Function]\ll<0>
  986. Substitutes from ALIST for subtrees of TREE nondestructively.
  987. (subst new old tree &key (test (function eql)) test-not)\ll<-2>\s\s\s\s\s[Function]\ll<0>
  988. Substitutes NEW for subtrees of TREE that match OLD.
  989. (symbol-name symbol)\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  990. Returns the print name of the symbol SYMBOL.
  991. (symbol-plist symbol)\s\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  992. Returns the property list of SYMBOL.
  993. (symbol-value symbol)\ll<-2>\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  994. Returns the current global value of the variable named by SYMBOL.
  995. (symbolp x)\s\ll<-2>\s\s\s\s\s\s\s\s\s\s[Function]\ll<0>
  996. Returns T if X is a symbol; NIL otherwise.\ll<2>
  997. (terpri &optional (stream *standard-output*))\ll<0>\s\s\s\s\s\s[Function]\ll<2>
  998. Outputs a newline character.
  999. (time form)\s\s\ll<0>\s\s\s\s\s\s\s\s\s   [Macro]\ll<2>
  1000. Form is evaluated and its result returned. In addition the time required  for the evaluation is printed.
  1001. (type-of x)\s\s\ll<0>\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  1002. Returns the type of X.
  1003. (unless test {form}*)\s\ll<0>\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  1004. If TEST evaluates to NIL evaluates FORMs as a PROGN.  If not, returns NIL.
  1005. (unwind-protect protected-form {cleanup-form}*)\s\ll<0>\s\s\s\s\s[Function]\ll<2>
  1006. Evaluates PROTECTED-FORM and returns whatever it returned.  Guarantees that CLEANUP-FORMs be always evaluated before exiting from the UNWIND-PROTECT
  1007. form.
  1008. (when test {form}*)\s\ll<0>\s\s\s\s\s\s\s\s\s[Function]\ll<2>
  1009. If TEST evaluates to non-NIL evaluates FORMs as a PROGN.  If not, returns NIL.
  1010. q=NPBOX
  1011. q?gPTXT
  1012. 9\n\ff<(CG)Times>\fs<12>\jf\ll<-1>\ps<100>\t<0>\Fp75\.
  1013. qRfPPAG
  1014. qT5PBOX
  1015. qW3PBOX
  1016. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp76\.
  1017. qo_PTXT
  1018. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp77\.
  1019. [PPAG
  1020. SPTXT
  1021. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp78\.
  1022. [PPAG
  1023. xPBOX
  1024. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp79\.
  1025. ePBOX
  1026. YPBOX
  1027. EPTXT
  1028. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp80\.
  1029. dPPAG
  1030. *PTXT
  1031. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp81\.
  1032. EPBOX
  1033. {PPAG
  1034. !PBOX
  1035. %PBOX
  1036. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp82\.
  1037. tPPAG
  1038. DPTXT
  1039. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp83\.
  1040. aPBOX
  1041. ;PTXT
  1042. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp84\.
  1043. r.LPBOX
  1044. 9\n\ff<(CG)Times>\fs<12>\jf\ll<-1>\ps<100>\t<0>\Fp85\.
  1045. rI)PTXT
  1046. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp86\.
  1047. r^%PBOX
  1048. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp87\.
  1049. r}YPTXT
  1050. 8\n\ff<(CG)Times>\fs<12>\jf\ll<0>\ps<100>\t<0>\Fp88\.
  1051. ^PPAG
  1052. -PBOX
  1053. KPTXT
  1054. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp89\.
  1055. `PPAG
  1056. /PBOX
  1057. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp90\.
  1058. ~PBOX
  1059. 9PTXT
  1060. 8\n\ff<(CG)Times>\fs<12>\jf\ll<1>\ps<100>\t<0>\Fp91\.
  1061. cPPAG
  1062. \PBOX
  1063. mPBOX
  1064. 8\n\ff<(CG)Times>\fs<12>\jf\ll<0>\ps<100>\t<0>\Fp92\.
  1065. %PBOX
  1066. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp93\.
  1067. .PPAG
  1068. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp94\.
  1069. s).PBOX
  1070. s-]PBOX
  1071. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp95\.
  1072. sMkPTXT
  1073. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp96\.
  1074. s`TPPAG
  1075. sbePBOX
  1076. 8\n\ff<(CG)Times>\fs<12>\jf\ll<0>\ps<100>\t<0>\Fp97\.
  1077. s|#PBOX
  1078. EPTXT
  1079. 8\n\ff<(CG)Times>\fs<12>\jf\ll<0>\ps<100>\t<0>\Fp98\.
  1080. <PPAG
  1081. 8\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp99\.
  1082. JPTXT
  1083. \n\B\ff<(CG)Times>\fs<14>\jf\ll<2>\ps<100>\t<0>\FpIndex\b\fs<12>
  1084. %* 89
  1085. ** 75
  1086. + 9, 12, 75
  1087. /= 21, 75
  1088. <= 75
  1089. >= 75
  1090. abs 75
  1091. acos 75
  1092. alloc 92
  1093. and 93
  1094. append 22, 93
  1095. apply 93
  1096. apropos 93
  1097. apropos-list 93
  1098. aref 89
  1099. array-dimension 89
  1100. array-dimensions 89
  1101. array-in-bounds-p 89
  1102. array-rank 89
  1103. array-row-major-index 89
  1104. array-total-size 89
  1105. arrayp 789
  1106. arrays 53
  1107. asin 75
  1108. assoc 93
  1109. atan 75
  1110. atom 93
  1111. bayes-model 62, 78
  1112. Bayesian computing 61
  1113. Bayesian residual plot 45
  1114. beta-cdf 78
  1115. beta-dens 78
  1116. beta-quant 78
  1117. beta-rand 78
  1118. bind-columns 89
  1119. bind-rows 89
  1120. binomial-cdf 78
  1121. binomial-pmf 78
  1122. binomial-quant 78
  1123. binomial-rand 78
  1124. bivnorm-cdf 78
  1125. boundp 93
  1126. boxplot 13, 82
  1127. boxplot-x 82
  1128. brushing 32
  1129. call-cfun 92
  1130. call-fsub 92
  1131. call-lfun 92
  1132. car 93
  1133. case 94
  1134. cauchy-cdf 79
  1135. cauchy-dens 79
  1136. cauchy-quant 79
  1137. cauchy-rand 79
  1138. cdr 94
  1139. ceiling 75
  1140. chisq-cdf 79
  1141. chisq-dens 79
  1142. chisq-quant 79
  1143. chisq-rand 79
  1144. chol-decomp 90
  1145. clip board 28
  1146. close 94
  1147. close-all-plots 82
  1148. coerce 94
  1149. column-list 90
  1150. complex 76
  1151. compound data 8
  1152. cond 94
  1153. conjugate 76
  1154. consp 94
  1155. cons 94
  1156. Cook's  distance 52
  1157. copy-array 90
  1158. copy-list 23, 90
  1159. copy-vector 90
  1160. cos 76
  1161. count-elements 90
  1162. covariance-matrix 79
  1163. cross-product 90
  1164. debug 92
  1165. def 11, 77
  1166. defmacro 94
  1167. defun 47, 94
  1168. determinant 90
  1169. diagonal 90
  1170. dialogs 73
  1171. difference 79
  1172. do 94
  1173. do* 94
  1174. dolist 40, 94
  1175. dotimes 40, 94
  1176. dribble 28
  1177. dyna-load 92
  1178. dynamic loading 70
  1179. dynamic simulation 39
  1180. elementwise arithmetic 12
  1181. elt 95
  1182. eq 95
  1183. eql 95
  1184. equal 95
  1185. equalp 95
  1186. exit 7, 92
  1187. exp 76
  1188. expand 92
  1189. expt 58
  1190. f-cdf 79
  1191. f-dens 79
  1192. f-quant 79
  1193. f-rand 79
  1194. first 95
  1195. fivnum 79
  1196. float 76
  1197. floor 76
  1198. foreign function calls 70
  1199. format 95
  1200. funcall 95
  1201. gamma distributions 58
  1202. gamma-cdf 79
  1203. gamma-dens 79
  1204. gamma-quant 79
  1205. gamma-rand 79
  1206. Gauss-Newton algorithm 55
  1207. gc 92
  1208. getf 95
  1209. gradient 59
  1210. help 24, 92
  1211. help* 24, 93
  1212. Hessian matrix 59
  1213. histogram 13, 82
  1214. dentity 95
  1215. identity-matrix 90
  1216. if 95
  1217. if-else 77
  1218. imagpart 76
  1219. index base 21
  1220. inner-product 90
  1221. intercept 42
  1222. interquartile-range 12, 80
  1223. interrupt 27, 68
  1224. inverse 90
  1225. iseq 77
  1226. last 95
  1227. length 95
  1228. let 47, 95
  1229. let* 50, 96
  1230. linking plots 35
  1231. link- views 35
  1232. list 8, 11, 77
  1233. listp 96
  1234. load 15, 28, 93
  1235. log 12, 76
  1236. log-gamma 76
  1237. lu-decomp 90
  1238. lu-solve 90
  1239. make-list 90
  1240. make-sweep-matrix 91
  1241. map 96
  1242. map-elements 91
  1243. mapc 96
  1244. mapcar 96
  1245. mapl 96
  1246. maplist 96
  1247. matmult 91
  1248. matrices 53
  1249. matrix 91
  1250. matrixp 91
  1251. max 76
  1252. maximization 58
  1253. \sNelder-Mead simplex method 58
  1254. \sNewton's method 58
  1255. maximum likelihood estimation 58
  1256. mean 11, 80
  1257. median 11,80, 96
  1258. menus 72
  1259. message 37
  1260. methods 51
  1261. \sdefining 51
  1262. min 76
  1263. multiple regression 42, 44
  1264. name-list 36, 82
  1265. Nelder-Mead simplex method 59
  1266. nelmeadmax 59, 80
  1267. Newton's method 58
  1268. newtonmax 58, 80
  1269. nodebug 93
  1270. nonlinear regression 54
  1271. normal-cdf 80
  1272. normal-dens 80
  1273. normal-quant 80
  1274. normal-rand 80
  1275. not 96
  1276. nreg-model 54, 80
  1277. nth 96
  1278. nthcdr 96
  1279. null 96
  1280. numberp 96
  1281. numgrad 59, 80
  1282. numhess 59, 80
  1283. object 37
  1284. objectp 96
  1285. oneway-model 80
  1286. open 96
  1287. or 96
  1288. order 40, 80
  1289. outer-product 91
  1290. parallel boxplot 14
  1291. permute-array 91
  1292. phase 76
  1293. pi 16
  1294. plot messages
  1295. \s:abcplane 88
  1296. \s:abline 37, 88
  1297. \s:add-function 88
  1298. \s:add-lines 38, 85, 88
  1299. \s:add-points 38, 85, 88
  1300. \s:add-strings 88
  1301. \s:add-surface 88
  1302. \s:adjust-to-data 85
  1303. \s:all-points-showing-p 85
  1304. \s:all-points-unmasked-p 85
  1305. \s:angle 89
  1306. \s:any-points-selected-p 85
  1307. \s:apply-transformation 85
  1308. \s:clear 38, 85
  1309. \s:clear-lines 85
  1310. \s:clear-points 85
  1311. \s:clear-strings 85
  1312. \s:content-variables 85, 89
  1313. \s:content-variables 69
  1314. \s:cooks-distances 52
  1315. \s:depth-cuing 89
  1316. \s:do-idle 89
  1317. \s:do-mouse 85
  1318. \s:drag-grey-rect 85
  1319. \s:erase-selection 86
  1320. \s:fixed-aspect 86
  1321. \s:frame-location 86
  1322. \s:frame-size 86
  1323. \s:help 37
  1324. \s:idle-on 86
  1325. \s:linked 86
  1326. \s:num-bins 88
  1327. \s:num-cases 84
  1328. \s:num-lines866
  1329. \s:num-points 86
  1330. \s:num-strings 86
  1331. \s:num-variables 86
  1332. \s:point-coordinate 86
  1333. \s:point-hilited 40, 86
  1334. \s:point-label 86
  1335. \s:point-selected 40, 86
  1336. \s:point-showing 40, 86
  1337. \s:point-symbol 86
  1338. \s:range 86
  1339. \s:real-to-screen 87
  1340. \s:redraw 87
  1341. \s:redraw-content 87
  1342. \s:rotate 89
  1343. \s:rotate-2 87
  1344. \s:scale-to-range 87
  1345. \s:scaled-range 87
  1346. \s:screen-to-real 87
  1347. \s:selection 87
  1348. \s:show-all-points 87
  1349. \s:showing-axes 89
  1350. \s:showing-labels 87
  1351. \s:title 87
  1352. \s:transformation 87
  1353. \s:unselect-all-points 87
  1354. \s:variable-label 87
  1355. \s:visible-range 87
  1356. \s:while-button-down 87
  1357. plot-function 19, 82
  1358. plot-lines 16, 82
  1359. plot-points 16, 82
  1360. pmax 76, 80
  1361. pmin 76, 80
  1362. poisson-cdf 81
  1363. poisson-pmf 81
  1364. poisson-quant 81
  1365. poisson-rand 81
  1366. posterior distributions 61
  1367. \smarginal densities 61
  1368. \smoments 61
  1369. prin1 96
  1370. princ 97
  1371. print 97
  1372. probability-plot 82
  1373. prod 76
  1374. prog 97
  1375. prog* 97
  1376. prog1 97
  1377. prog2 97
  1378. progn 97
  1379. progv 97
  1380. provide 97
  1381. qr-decomp 91
  1382. quantile 81
  1383. quantile-plot 83
  1384. quit 7
  1385. quote 9
  1386. random 76
  1387. rank 81
  1388. rcondest 91
  1389. read-data-columns 29, 81
  1390. read-data-file 29, 81
  1391. reading data 29
  1392. realpart 76
  1393. reduce 97
  1394. regression messages
  1395. \s:basis 83
  1396. \s:coef-estimates 43, 83
  1397. \s:coef-standard-errors 43, 83
  1398. \s:cooks-distances 52, 830
  1399. \s:df 83
  1400. \s:display 83
  1401. \s:fit-values 83
  1402. \s:included 83
  1403. \s:intercept 84
  1404. \s:leverages 84
  1405. \s:num-coefs 84
  1406. \s:num-included 84
  1407. \s:plot-bayes-residuals 45, 84
  1408. \s:plot-residuals 43, 84
  1409. \s:predictor-names 84
  1410. \s:r-squared 84
  1411. \s:raw-residuals 84
  1412. \s:residuals 84
  1413. \s:sigma-hat 84
  1414. \s:studentized-residuals 84
  1415. \s:sum-of-squares 84
  1416. \s:weights 84
  1417. \s:x-axis 84
  1418. \s:x-matrix 85
  1419. \s:xtxinv 85
  1420. \s:y-axis 88
  1421. regression-model 42, 81
  1422. rem 77
  1423. remove 21, 97
  1424. remove-if 97
  1425. remove-if-not 97
  1426. repeat 20, 77
  1427. require 97
  1428. residual plot 43
  1429. residuals 43
  1430. rest 97
  1431. return 98
  1432. reverse 98
  1433. room 93
  1434. round 77
  1435. row-list 91
  1436. rseq 16, 77
  1437. savevar 28
  1438. scatterplot-matrix 32, 83
  1439. second 98
  1440. select 78
  1441. selecting 32
  1442. set 98
  1443. setf 22, 98
  1444. setq 98
  1445. simple data 8
  1446. simple regression 42
  1447. sin 77
  1448. solve 91
  1449. sort-data 81
  1450. spin-function 83
  1451. spin-plot 30, 83
  1452. \schanging origin 30
  1453. split-list 91
  1454. sqrt 77
  1455. standard-deviation 12, 81
  1456. statinit.lsp 29
  1457. string 98
  1458. stringp 98
  1459. studentized residuals 44
  1460. sublis 98
  1461. subst 98
  1462. sum 77, 91
  1463. sv-decomp 91
  1464. sweep-operator 92
  1465. symbol value 11
  1466. symbol-name 98
  1467. symbol-plist 98
  1468. symbol-value 98
  1469. symbolp 98
  1470. t-cdf 81
  1471. t-dens 81
  1472. t-quant 82
  1473. t-rand 82
  1474. tan 77
  1475. terpri 98
  1476. time 98
  1477. transpose 92
  1478. truncate 77
  1479. type-of 99
  1480. undef 26, 78
  1481. uniform-rand 82
  1482. unless 99
  1483. unlink-views 83
  1484. unwind-protect 99
  1485. value 11
  1486. variables 26, 93
  1487. vector 78, 8
  1488. vectorp 92
  1489. when 99
  1490. which 21, 78
  1491. 9\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp100\.
  1492. {?^PPAG
  1493. {E`PBOX
  1494. {GVPTXT
  1495. 9\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp101\.
  1496. {ZPPPAG
  1497. {\zPBOX
  1498. {aUPTXT
  1499. 9\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp102\.
  1500. {tiPPAG
  1501. {|?PBOX
  1502. *PTXT
  1503. 9\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp103\.
  1504. 2PPAG
  1505. APBOX
  1506. 2PTXT
  1507. 9\n\ff<(CG)Times>\fs<12>\jf\ll<2>\ps<100>\t<0>\Fp104\.
  1508.