view etc/ps-prin0.ps @ 58229:7f5b01c17652

(math-integrate-by-parts): Removed unused variable var-thing. (math-integ-depth, math-integ-level, math-integral-limit) (math-enable-subst, math-any-substs, math-integ-msg) (math-prev-parts-v, math-good-parts, math-max-integral-limit) (math-int-threshold, math-int-factors, math-double-roots) (math-solve-simplifying, var-IntegLimit, math-solve-sign) (var-GenCount): Declared these variables. (calcFunc-integ): Don't check if var-IntegLimit is bound. (math-integral-cache, math-integral-cache-state): Move declarations to earlier in the file. (math-deriv-var, math-deriv-total, math-deriv-symb): New variables. (math-derivative, calcFunc-deriv, calcFunc-tderiv): Replace variables deriv-var, deriv-total and deriv-symb by declared variables math-deriv-var, math-deriv-total and math-deriv-symb. (math-cur-record): New variable. (math-integral, math-replace-integral-parts, math-integrate-by-parts) (calc-dump-integral-cache, math-try-integral): Replace variable cur-record by declared variable math-cur-record. (math-has-rules): New variable. (math-try-integral, math-do-integral): Use declared variable math-has-rules instead of has-rules. (math-t1, math-t2, math-t3): New variables. (math-do-integral, math-do-integral-methods, math-try-solve-for) (math-try-solve-prod, math-solve-poly-funny-powers) (math-solve-crunch-poly, math-decompose-poly) (math-solve-find-root-term, math-find-root-in-prod): Replace variables t1, t2, t3 by declared variables math-t1, math-t2, math-t3. (math-so-far, math-integ-expr): New variables. (math-do-integral-methods, math-integ-try-linear-substitutions) (math-integ-try-substitutions): Replace variables so-far and expr by declared variables math-so-far and math-integ-expr. (math-expr-parts): New variable. (math-expr-rational-in, math-expr-rational-in-rec): Replace variable parts by declared variable math-expr-parts. (calc-low, calc-high): New variables. (calcFunc-table, math-scan-for-limits): Replaced variable low and high with the declared variable calc-low and calc-high. (math-solve-var, math-solve-full): New variables. (math-try-solve-for, math-try-solve-prod, math-solve-prod) (math-decompose-poly, math-solve-quartic, math-poly-all-roots) (math-solve-find-root-in-prod, math-solve-for, math-solve-system) (math-solve-system-rec, math-solve-get-sign, math-solve-get-int): Replace variables solve-var and solve-full with declared variables math-solve-var and math-solve-full. (math-solve-vars): New variable. (math-solve-system, math-solve-system-rec): Replace variable solve-vars with declared variable math-solve-vars. (math-try-solve-sign): New variable. (math-try-solve-for, math-try-solve-prod): Replace variable sign by declared variable math-try-solve-sign. (math-solve-b): New variable. (math-solve-poly-funny-powers, math-decompose-poly): Replace variable b by declared variable math-solve-b. (math-solve-system-vv, math-solve-res): New variables (math-solve-system-rec, math-solve-system-subst): Replaced variables vv and res with declared variables math-solve-system-vv and math-solve-system-res.
author Jay Belanger <jay.p.belanger@gmail.com>
date Mon, 15 Nov 2004 06:16:21 +0000
parents e5675426ff4c
children 23a17af379b1
line wrap: on
line source

% === BEGIN ps-print prologue 0
% version: 6.0

% Copyright (C) 2000, 2001  Free Software Foundation, Inc.
%
% This file is part of GNU Emacs.
%
% GNU Emacs is free software; you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation; either version 2, or (at your option)
% any later version.
%
% GNU Emacs is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with GNU Emacs; see the file COPYING.  If not, write to the
% Free Software Foundation, Inc., 59 Temple Place - Suite 330,
% Boston, MA 02111-1307, USA.

% As a special exception, the copyright holders of this module give
% you permission to include the module in a Postscript file generated
% by Emacs or other free software together with the result of
% converting text to be printed, regardless of the license terms of
% that text, and to use under terms of your choice the page images
% resulting from formatting said combination.  If you modify this
% module, you may extend this exception to your version of the module
% but you are not obligated to do so.  If you do not wish to do so,
% delete this exception statement from your version.


%%BeginProcSet: ErrorHandler
% Downloaded Error Break-page handler
% Adapted from:
%     PostScript Language Program Design,
%     Adobe Systems Incorporated.
%     Appendix A, pages 217-219

/ps$brkpage where{pop}
{
 /ps$brkpage 64 dict def
 ps$brkpage begin
  /tx 0 def/ty 0 def/toy 0 def/tox 0 def
  /prnt{
   dup type/stringtype ne{=string cvs}if
   dup length 6 mul
   /tx exch def/ty 10 def
   currentpoint/toy exch def/tox exch def
   1 setgray newpath
   tox toy 2 sub moveto
   0 ty rlineto tx 0 rlineto
   0 ty neg rlineto
   closepath fill
   tox toy moveto 0 setgray show
  }bind def
  /nl{currentpoint exch pop lmargin exch moveto 0 -10 rmoveto}def
  /=={/cp 0 def typeprint nl}def
  /typeprint{dup type dup currentdict exch known{exec}{unknowntype}ifelse}readonly def
  /lmargin 72 def
  /rmargin 72 def
  /tprint{
   dup length cp add rmargin gt{nl/cp 0 def}if
   dup length cp add/cp exch def
   prnt
  }readonly def
  /cvsprint{=string cvs tprint( )tprint}readonly def
  /unknowntype{exch pop cvlit(??)tprint cvsprint}readonly def
  /integertype{cvsprint}readonly def
  /realtype{cvsprint}readonly def
  /booleantype{cvsprint}readonly def
  /operatortype{(//)tprint cvsprint}readonly def
  /marktype{pop(-mark-)tprint}readonly def
  /dicttype{pop(-dictionary-)tprint}readonly def
  /nulltype{pop(-null-)tprint}readonly def
  /filetype{pop(-filestream-)tprint}readonly def
  /savetype{pop(-savelevel-)tprint}readonly def
  /fonttype{pop(-fontid-)tprint}readonly def
  /nametype{dup xcheck not{(/)tprint}if cvsprint}readonly def
  /stringtype{
   dup rcheck
   {(\()tprint tprint(\))tprint}
   {pop(-string-)tprint}ifelse}readonly def
  /arraytype{
   dup rcheck
   {dup xcheck
    {({)tprint{typeprint}forall(})tprint}
    {([)tprint{typeprint}forall(])tprint}ifelse}
   {pop(-array-)tprint}ifelse}readonly def
  /packedarraytype{
   dup rcheck
   {dup xcheck
    {({)tprint{typeprint}forall(})tprint}
    {([)tprint{typeprint}forall(])tprint}ifelse}
   {pop(-packedarray-)tprint}ifelse}readonly def
  /courier/Courier findfont 10 scalefont def
  /OLDhandleerror errordict/handleerror get def
 end %ps$brkpage

 /handleerror{
  systemdict begin $error begin ps$brkpage begin
  newerror
  {/newerror false store vmstatus pop pop 0 ne{grestoreall}if
   initgraphics
   ErrorMessage 1 and 0 ne{ % print on paper
    courier setfont lmargin 720 moveto
    (# ERROR: )prnt errorname prnt nl
    (# OFFENDING COMMAND: )prnt/command load prnt
    $error/ostack known
    {nl nl(# STACK:)prnt nl nl $error/ostack get aload length{==}repeat}if
    $error/errorinfo known
    {nl nl(# ERRORINFO:)prnt nl nl $error/errorinfo get aload length{==}repeat}if
    systemdict/showpage get exec}if
   ErrorMessage 2 and 0 ne{ % send back to printing system
    (\%\%[ Error: )print errorname =print
    (; OffendingCommand: )print/command load =print
    $error/errorinfo known
    {(; ErrorInfo:)print $error/errorinfo get aload length{( )=print =print}repeat}if
    ( ]\%\%)= flush
    (\%\%[ Rest of job is ignored ]\%\%)= flush}if
   /newerror true store}if
  end end end
  stop
 } % handleerror
 dup 0 systemdict put % replace name by actual dict object
 dup 4 ps$brkpage put % replace name by dict object
 bind readonly

 errordict 3 1 roll put % put proc in errordict as /handleerror
}ifelse
%%EndProcSet


% operators for language level 2 only

(<<)cvn where			% << operator
{pop/BMark(<<)cvn load def}
{/BMark{mark}bind def}ifelse
(>>)cvn where			% >> operator
{pop/EMark(>>)cvn load def}
{/EMark{counttomark 2 idiv dup dict begin{def}repeat pop currentdict end}bind def}ifelse
/setpagedevice where		% setpagedevice
{pop}
{/setpagedevice{pop}bind def}ifelse
/packedarray where		% packedarray
{pop}
{/packedarray{array astore readonly}bind def}ifelse


% device dependent operators

/DefOp{
 dup where{pop pop pop}
 {exch dup where{pop}{pop/pop}ifelse load def}ifelse}def

/duplexmode/setduplexmode DefOp
/tumble/settumble DefOp

% === END ps-print prologue 0