From c1bb5a803ad1bea2be7662dd334cd53cbe5e2a83 Mon Sep 17 00:00:00 2001 From: Tim Daly Date: Fri, 24 Apr 2015 22:07:31 -0400 Subject: [PATCH] src/interp/vmlisp.lisp remove unused code This file contains a lot of code I wrote to port Axiom to different systems (vmlisp, golden common lisp, maclisp, symbolics lisp, etc). Most of this code is not used, especially the zsystemdevelopment support which is also removed. --- books/bookvol5.pamphlet | 141 +-- books/bookvol9.pamphlet | 16 +- changelog | 8 + patch | 7 +- src/axiom-website/patches.html | 2 + src/input/rich12f.input.pamphlet | 2921 ++++++++++++++++++------------------ src/input/unittest1.input.pamphlet | 134 +-- src/interp/i-output.lisp.pamphlet | 6 + src/interp/newfort.lisp.pamphlet | 2 + src/interp/vmlisp.lisp.pamphlet | 948 ++----------- 10 files changed, 1622 insertions(+), 2563 deletions(-) diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index f8d667a..0123922 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -590,7 +590,6 @@ the frames and if we find one we return it. \Defun{changeToNamedInterpreterFrame}{Change to the Named Interpreter Frame} \calls{changeToNamedInterpreterFrame}{updateCurrentInterpreterFrame} \calls{changeToNamedInterpreterFrame}{findFrameInRing} -\calls{changeToNamedInterpreterFrame}{nremove} \calls{changeToNamedInterpreterFrame}{updateFromCurrentInterpreterFrame} \usesdollar{changeToNamedInterpreterFrame}{interpreterFrameRing} \begin{chunk}{defun changeToNamedInterpreterFrame} @@ -602,7 +601,7 @@ the frames and if we find one we return it. (setq frame (|findFrameInRing| name)) (when frame (setq |$interpreterFrameRing| - (cons frame (nremove |$interpreterFrameRing| frame))) + (cons frame (delete |$interpreterFrameRing| frame :test #'equal))) (|updateFromCurrentInterpreterFrame|)))) \end{chunk} @@ -26554,7 +26553,6 @@ See:\\ \item The \fnref{what} command \item The \fnref{with} command \item The \fnref{workfiles} command -\item The \fnref{zsystemdevelopment} command \end{itemize} \section{Variables Used} @@ -26606,7 +26604,6 @@ See:\\ (|what| . |interpreter|) (|with| . |interpreter|) (|workfiles| . |development|) - (|zsystemdevelopment| . |interpreter|) ))) \end{chunk} @@ -27929,7 +27926,6 @@ tokenized and validated the input before calling the history function. |what| |with| |workfiles| - |zsystemdevelopment| ))) \end{chunk} @@ -27962,7 +27958,6 @@ of synonyms which are in common use. (|apropos| . "what things") (|cache| . "set functions cache") (|cl| . "clear") - (|cls| . "zsystemdevelopment )cls") (|cms| . "system") (|co| . "compiler") (|d| . "display") @@ -27970,22 +27965,12 @@ of synonyms which are in common use. (|dependents| . "display dependents") (|e| . "edit") (|expose| . "set expose add constructor") - (|fc| . "zsystemdevelopment )c") - (|fd| . "zsystemdevelopment )d") - (|fdt| . "zsystemdevelopment )dt") - (|fct| . "zsystemdevelopment )ct") - (|fctl| . "zsystemdevelopment )ctl") - (|fe| . "zsystemdevelopment )e") - (|fec| . "zsystemdevelopment )ec") - (|fect| . "zsystemdevelopment )ect") (|fns| . "exec spadfn") (|fortran| . "set output fortran") (|h| . "help") (|hd| . "system hypertex &") (|kclam| . "boot clearClams ( )") (|killcaches| . "boot clearConstructorAndLisplibCaches ( )") - (|patch| . "zsystemdevelopment )patch") - (|pause| . "zsystemdevelopment )pause") (|prompt| . "set message prompt") (|recurrence| . "set functions recurrence") (|restore| . "history )restore") @@ -27997,7 +27982,6 @@ of synonyms which are in common use. (|time| . "set message time") (|type| . "set message type") (|unexpose| . "set expose drop constructor") - (|up| . "zsystemdevelopment )update") (|version| . "lisp (axiomVersion)") (|w| . "what") (|wc| . "what categories") @@ -42157,121 +42141,6 @@ This displays all operation names containing these fragments. \end{chunk} -\newpage -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\cmdhead{zsystemdevelopment} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\defun{zsystemdevelopment}{zsystemdevelopment} -\calls{zsystemdevelopment}{zsystemDevelopmentSpad2Cmd} -\begin{chunk}{defun zsystemdevelopment} -(defun |zsystemdevelopment| (arg) - (|zsystemDevelopmentSpad2Cmd| arg)) - -\end{chunk} - -\defun{zsystemDevelopmentSpad2Cmd}{zsystemDevelopmentSpad2Cmd} -\calls{zsystemDevelopmentSpad2Cmd}{zsystemdevelopment1} -\usesdollar{zsystemDevelopmentSpad2Cmd}{InteractiveMode} -\begin{chunk}{defun zsystemDevelopmentSpad2Cmd} -(defun |zsystemDevelopmentSpad2Cmd| (arg) - (declare (special |$InteractiveMode|)) - (|zsystemdevelopment1| arg |$InteractiveMode|)) - -\end{chunk} - -\defun{zsystemdevelopment1}{zsystemdevelopment1} -\catches{zsystemdevelopment1}{filenam} -\calls{zsystemdevelopment1}{selectOptionLC} -\calls{zsystemdevelopment1}{/D,1} -\calls{zsystemdevelopment1}{/comp} -\calls{zsystemdevelopment1}{version} -\calls{zsystemdevelopment1}{defiostream} -\calls{zsystemdevelopment1}{next} -\calls{zsystemdevelopment1}{shut} -\calls{zsystemdevelopment1}{kar} -\calls{zsystemdevelopment1}{kadr} -\calls{zsystemdevelopment1}{kaddr} -\calls{zsystemdevelopment1}{sayMessage} -\calls{zsystemdevelopment1}{sayBrightly} -\calls{zsystemdevelopment1}{bright} -\usesdollar{zsystemdevelopment1}{InteractiveMode} -\usesdollar{zsystemdevelopment1}{options} -\uses{zsystemdevelopment1}{/wsname} -\uses{zsystemdevelopment1}{/version} -\begin{chunk}{defun zsystemdevelopment1} -(defun |zsystemdevelopment1| (arg im) - (let (|$InteractiveMode| fromopt opt optargs newopt opt1 constream upf fun) - (declare (special |$InteractiveMode| /wsname /version |$options|)) - (setq |$InteractiveMode| im) - (setq fromopt nil) - (do ((t0 |$options| (cdr t0)) (t1 nil)) - ((or (atom t0) - (progn (setq t1 (car t0)) nil) - (progn - (progn - (setq opt (CAR t1)) - (setq optargs (CDR t1)) - t1) - nil)) - nil) - (setq opt1 (|selectOptionLC| opt '(|from|) nil)) - (when (eq opt1 '|from|) (setq fromopt (cons (cons 'from optargs) nil)))) - (do ((t2 |$options| (cdr t2)) (t3 nil)) - ((or (atom t2) - (progn (setq t3 (car t2)) nil) - (progn - (progn - (setq opt (car t3)) - (setq optargs (cdr t3)) - t3) - nil)) - nil) - (unless optargs (setq optargs arg)) - (setq newopt (append optargs fromopt)) - (setq opt1 (|selectOptionLC| opt '(|from|) nil)) - (cond - ((eq opt1 '|from|) nil) - ((eq opt '|c|) (|/D,1| newopt (/COMP) nil nil)) - ((eq opt '|d|) (|/D,1| newopt 'define nil nil)) - ((eq opt '|dt|) (|/D,1| newopt 'define nil t)) - ((eq opt '|ct|) (|/D,1| newopt (/COMP) nil t)) - ((eq opt '|ctl|) (|/D,1| newopt (/COMP) nil 'tracelet)) - ((eq opt '|ec|) (|/D,1| newopt (/COMP) t nil)) - ((eq opt '|ect|) (|/D,1| newopt (/COMP) t t)) - ((eq opt '|e|) (|/D,1| newopt nil t nil)) - ((eq opt '|version|) (|version|)) - ((eq opt '|pause|) - (setq constream - (defiostream '((device . console) (qual . v)) 120 0)) - (next constream) - (shut constream)) - ((or - (eq opt '|update|) - (eq opt '|patch|)) - (setq |$InteractiveMode| nil) - (setq upf - (cons - (or (kar optargs) /version) - (cons - (or (kadr optargs) /wsname) - (cons (or (kaddr optargs) '*) nil)))) - (setq fun - (cond - ((eq opt '|patch|) '/update-lib-1) - (t '/update-1))) - (catch 'filenam (funcall fun upf)) - (|sayMessage| " Update/patch is completed.")) - ((null optargs) - (|sayBrightly| `(" An argument is required for" ,@(|bright| opt)))) - (t - (|sayMessage| - `(" Unknown option:" ,@(|bright| opt) - |%l| " Available options are" - ,@(|bright| - "c ct e ec ect cls pause update patch compare record")))))))) - -\end{chunk} - \chapter{Handlers for Special Forms} This file contains the functions which do type analysis and evaluation of special functions in the interpreter. @@ -53216,9 +53085,9 @@ Given \verb|("one" "two" "three")| generate \verb|"(one,two,three)"| (SEQ (cond ((|member| pageName |$activePageList|) (EXIT (progn - (set pageName nil) + (set pageName nil) (setq |$activePageList| - (NREMOVE |$activePageList| pageName)))))))) + (delete |$activePageList| pageName :test #'equal)))))))) \end{chunk} @@ -61910,10 +61779,6 @@ digits in TechExplorer. Since Saturn is gone we can remove it. \getchunk{defun yesanswer} \getchunk{defun ySearch} -\getchunk{defun zsystemdevelopment} -\getchunk{defun zsystemdevelopment1} -\getchunk{defun zsystemDevelopmentSpad2Cmd} - \getchunk{postvars} \end{chunk} diff --git a/books/bookvol9.pamphlet b/books/bookvol9.pamphlet index abf5912..ef8d017 100644 --- a/books/bookvol9.pamphlet +++ b/books/bookvol9.pamphlet @@ -23076,9 +23076,21 @@ of the file. This needs to be eliminated. The trace of the functions in this routines is: \begin{verbatim} - 1> (|selectOptionLC| "compiler" (|abbreviations| |boot| |browse| |cd| |clear| |close| |compiler| |copyright| |credits| |describe| |display| |edit| |fin| |frame| |help| |history| |lisp| |library| |load| |ltrace| |pquit| |quit| |read| |savesystem| |set| |show| |spool| |summary| |synonym| |system| |trace| |trademark| |undo| |what| |with| |workfiles| |zsystemdevelopment|) |commandErrorIfAmbiguous|) + 1> (|selectOptionLC| "compiler" + (|abbreviations| |boot| |browse| |cd| |clear| |close| |compiler| + |copyright| |credits| |describe| |display| |edit| |fin| |frame| + |help| |history| |lisp| |library| |load| |ltrace| |pquit| |quit| + |read| |savesystem| |set| |show| |spool| |summary| |synonym| + |system| |trace| |trademark| |undo| |what| |with| |workfiles|) + |commandErrorIfAmbiguous|) <1 (|selectOptionLC| |compiler|) - 1> (|selectOptionLC| |compiler| (|abbreviations| |boot| |browse| |cd| |clear| |close| |compiler| |copyright| |credits| |describe| |display| |edit| |fin| |frame| |help| |history| |lisp| |library| |load| |ltrace| |pquit| |quit| |read| |savesystem| |set| |show| |spool| |summary| |synonym| |system| |trace| |trademark| |undo| |what| |with| |workfiles| |zsystemdevelopment|) |commandError|) + 1> (|selectOptionLC| |compiler| + (|abbreviations| |boot| |browse| |cd| |clear| |close| |compiler| + |copyright| |credits| |describe| |display| |edit| |fin| |frame| + |help| |history| |lisp| |library| |load| |ltrace| |pquit| |quit| + |read| |savesystem| |set| |show| |spool| |summary| |synonym| + |system| |trace| |trademark| |undo| |what| |with| |workfiles|) + |commandError|) <1 (|selectOptionLC| |compiler|) 1> (|pathname| (EQ)) <1 (|pathname| #p"EQ") diff --git a/changelog b/changelog index 3de8cd1..c24c60f 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,11 @@ +20150424 tpd src/axiom-website/patches.html 20150424.05.tpd.patch +20150424 tpd books/bookvol5 remove )zsys support +20150424 tpd books/bookvol9 remove )zsys support +20150424 tpd src/input/rich12f.input comment out long compile +20150424 tpd src/input/unittest1.input )zsys is no longer supported +20150424 tpd src/interp/i-output.lisp pick up code from vmlisp +20150424 tpd src/interp/newfort.lisp pick up code from vmlisp +20150424 tpd src/interp/vmlisp.lisp remove dead code, )zsys support code 20150424 tpd src/axiom-website/patches.html 20150424.04.tpd.patch 20150424 tpd books/bookvolbib fix typo 20150424 tpd src/axiom-website/patches.html 20150424.03.tpd.patch diff --git a/patch b/patch index a496060..bd76c98 100644 --- a/patch +++ b/patch @@ -1,3 +1,6 @@ -books/bookvolbib fix typos - +src/interp/vmlisp.lisp remove unused code +This file contains a lot of code I wrote to port Axiom to different +systems (vmlisp, golden common lisp, maclisp, symbolics lisp, etc). +Most of this code is not used, especially the zsystemdevelopment +support which is also removed. diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index d03e5cc..525795c 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -5030,6 +5030,8 @@ vmlisp.lisp remove SayNewLine function
books/bookvolbib fix typo
20150424.04.tpd.patch books/bookvolbib fix typo
+20150424.05.tpd.patch +src/interp/vmlisp.lisp remove dead code, )zsys support code
diff --git a/src/input/rich12f.input.pamphlet b/src/input/rich12f.input.pamphlet index 1000e70..c838ff1 100644 --- a/src/input/rich12f.input.pamphlet +++ b/src/input/rich12f.input.pamphlet @@ -42164,1473 +42164,1472 @@ r0:=-1/2*(1-%i)^(3/2)*atanh(sqrt(1-%i)*sqrt(x)/sqrt(1+x))-_ --R Type: Expression(Complex(Integer)) --E 1482 ---S 1483 of 1751 -a0:=integrate(t0,x) ---R ---R ---R (3) ---R 4+-+ %pi ---R \|2 cos(---) ---R 8 ---R * ---R log ---R +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ ---R (\|2 \|2 sin(---) + \|2 \|2 cos(---) + 2x)\|x \|x + 1 ---R 8 8 ---R + ---R 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 ---R \|2 sin(---) + (x - 1)\|2 \|2 sin(---) + \|2 cos(---) ---R 8 8 8 ---R + ---R +-+4+-+ %pi 2 ---R (x + 1)\|2 \|2 cos(---) + 2x + x + 1 ---R 8 ---R + ---R - ---R 4+-+ %pi ---R \|2 cos(---) ---R 8 ---R * ---R log ---R +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ ---R (- \|2 \|2 sin(---) - \|2 \|2 cos(---) + 2x)\|x \|x + 1 ---R 8 8 ---R + ---R 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 ---R \|2 sin(---) + (- x + 1)\|2 \|2 sin(---) + \|2 cos(---) ---R 8 8 8 ---R + ---R +-+4+-+ %pi 2 ---R (- x - 1)\|2 \|2 cos(---) + 2x + x + 1 ---R 8 ---R + ---R - ---R 4+-+ %pi ---R 2\|2 sin(---) ---R 8 ---R * ---R 4+-+ %pi 4+-+ %pi +-+ ---R \|2 sin(---) - \|2 cos(---) + \|2 ---R 8 8 ---R atan(------------------------------------------------------) ---R +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ ---R \|2 \|x \|x + 1 - \|2 sin(---) - \|2 cos(---) + x\|2 ---R 8 8 ---R + ---R 4+-+ %pi 4+-+ %pi +-+ ---R \|2 sin(---) - \|2 cos(---) - \|2 ---R 4+-+ %pi 8 8 ---R - 2\|2 sin(---)atan(------------------------------------------------------) ---R 8 +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ ---R \|2 \|x \|x + 1 + \|2 sin(---) + \|2 cos(---) + x\|2 ---R 8 8 ---R / ---R +-+ ---R 2\|2 ---R Type: Union(Expression(Integer),...) +--S 1483 of 1751 -- takes too long +--a0:=integrate(t0,x) +-- +-- +-- (3) +-- 4+-+ %pi +-- \|2 cos(---) +-- 8 +-- * +-- log +-- +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ +-- (\|2 \|2 sin(---) + \|2 \|2 cos(---) + 2x)\|x \|x + 1 +-- 8 8 +-- + +-- 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 +-- \|2 sin(---) + (x - 1)\|2 \|2 sin(---) + \|2 cos(---) +-- 8 8 8 +-- + +-- +-+4+-+ %pi 2 +-- (x + 1)\|2 \|2 cos(---) + 2x + x + 1 +-- 8 +-- + +-- - +-- 4+-+ %pi +-- \|2 cos(---) +-- 8 +-- * +-- log +-- +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ +-- (- \|2 \|2 sin(---) - \|2 \|2 cos(---) + 2x)\|x \|x + 1 +-- 8 8 +-- + +-- 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 +-- \|2 sin(---) + (- x + 1)\|2 \|2 sin(---) + \|2 cos(---) +-- 8 8 8 +-- + +-- +-+4+-+ %pi 2 +-- (- x - 1)\|2 \|2 cos(---) + 2x + x + 1 +-- 8 +-- + +-- - +-- 4+-+ %pi +-- 2\|2 sin(---) +-- 8 +-- * +-- 4+-+ %pi 4+-+ %pi +-+ +-- \|2 sin(---) - \|2 cos(---) + \|2 +-- 8 8 +-- atan(------------------------------------------------------) +-- +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ +-- \|2 \|x \|x + 1 - \|2 sin(---) - \|2 cos(---) + x\|2 +-- 8 8 +-- + +-- 4+-+ %pi 4+-+ %pi +-+ +-- \|2 sin(---) - \|2 cos(---) - \|2 +-- 4+-+ %pi 8 8 +-- - 2\|2 sin(---)atan(------------------------------------------------------ +-- 8 +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+--R \|2 \|x \|x + 1 + \|2 sin(---) + \|2 cos(---) + x\2 +-- 8 8 +-- / +-- +-+ +-- 2\|2 +-- Type: Union(Expression(Integer),...) --E 1483 --S 1484 of 1751 -m0:=a0-r0 ---R ---R ---R (4) ---R 4+-+ %pi ---R \|2 cos(---) ---R 8 ---R * ---R log ---R +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ ---R (\|2 \|2 sin(---) + \|2 \|2 cos(---) + 2x)\|x \|x + 1 ---R 8 8 ---R + ---R 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 ---R \|2 sin(---) + (x - 1)\|2 \|2 sin(---) + \|2 cos(---) ---R 8 8 8 ---R + ---R +-+4+-+ %pi 2 ---R (x + 1)\|2 \|2 cos(---) + 2x + x + 1 ---R 8 ---R + ---R - ---R 4+-+ %pi ---R \|2 cos(---) ---R 8 ---R * ---R log ---R +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ ---R (- \|2 \|2 sin(---) - \|2 \|2 cos(---) + 2x)\|x \|x + 1 ---R 8 8 ---R + ---R 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 ---R \|2 sin(---) + (- x + 1)\|2 \|2 sin(---) + \|2 cos(---) ---R 8 8 8 ---R + ---R +-+4+-+ %pi 2 ---R (- x - 1)\|2 \|2 cos(---) + 2x + x + 1 ---R 8 ---R + ---R +------+ +-+ ---R +------+ +-+ \|1 + %i \|x ---R (1 + %i)\|1 + %i \|2 atanh(-------------) ---R +-----+ ---R \|x + 1 ---R + ---R +------+ +-+ ---R +------+ +-+ \|1 - %i \|x ---R (1 - %i)\|1 - %i \|2 atanh(-------------) ---R +-----+ ---R \|x + 1 ---R + ---R - ---R 4+-+ %pi ---R 2\|2 sin(---) ---R 8 ---R * ---R 4+-+ %pi 4+-+ %pi +-+ ---R \|2 sin(---) - \|2 cos(---) + \|2 ---R 8 8 ---R atan(------------------------------------------------------) ---R +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ ---R \|2 \|x \|x + 1 - \|2 sin(---) - \|2 cos(---) + x\|2 ---R 8 8 ---R + ---R 4+-+ %pi 4+-+ %pi +-+ ---R \|2 sin(---) - \|2 cos(---) - \|2 ---R 4+-+ %pi 8 8 ---R - 2\|2 sin(---)atan(------------------------------------------------------) ---R 8 +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ ---R \|2 \|x \|x + 1 + \|2 sin(---) + \|2 cos(---) + x\|2 ---R 8 8 ---R / ---R +-+ ---R 2\|2 ---R Type: Expression(Complex(Integer)) +--m0:=a0-r0 +-- +-- +-- (4) +-- 4+-+ %pi +-- \|2 cos(---) +-- 8 +-- * +-- log +-- +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ +-- (\|2 \|2 sin(---) + \|2 \|2 cos(---) + 2x)\|x \|x + 1 +-- 8 8 +-- + +-- 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 +-- \|2 sin(---) + (x - 1)\|2 \|2 sin(---) + \|2 cos(---) +-- 8 8 8 +-- + +-- +-+4+-+ %pi 2 +-- (x + 1)\|2 \|2 cos(---) + 2x + x + 1 +-- 8 +-- + +-- - +-- 4+-+ %pi +-- \|2 cos(---) +-- 8 +-- * +-- log +-- +-+4+-+ %pi +-+4+-+ %pi +-+ +-----+ +-- (- \|2 \|2 sin(---) - \|2 \|2 cos(---) + 2x)\|x \|x + 1 +-- 8 8 +-- + +-- 4+-+2 %pi 2 +-+4+-+ %pi 4+-+2 %pi 2 +-- \|2 sin(---) + (- x + 1)\|2 \|2 sin(---) + \|2 cos(---) +-- 8 8 8 +-- + +-- +-+4+-+ %pi 2 +-- (- x - 1)\|2 \|2 cos(---) + 2x + x + 1 +-- 8 +-- + +-- +------+ +-+ +-- +------+ +-+ \|1 + %i \|x +-- (1 + %i)\|1 + %i \|2 atanh(-------------) +-- +-----+ +-- \|x + 1 +-- + +-- +------+ +-+ +-- +------+ +-+ \|1 - %i \|x +-- (1 - %i)\|1 - %i \|2 atanh(-------------) +-- +-----+ +-- \|x + 1 +-- + +-- - +-- 4+-+ %pi +-- 2\|2 sin(---) +-- 8 +-- * +-- 4+-+ %pi 4+-+ %pi +-+ +-- \|2 sin(---) - \|2 cos(---) + \|2 +-- 8 8 +-- atan(------------------------------------------------------) +-- +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ +-- \|2 \|x \|x + 1 - \|2 sin(---) - \|2 cos(---) + x\|2 +-- 8 8 +-- + +-- 4+-+ %pi 4+-+ %pi +-+ +-- \|2 sin(---) - \|2 cos(---) - \|2 +-- 4+-+ %pi 8 8 +-- - 2\|2 sin(---)atan(------------------------------------------------------) +-- 8 +-+ +-+ +-----+ 4+-+ %pi 4+-+ %pi +-+ +-- \|2 \|x \|x + 1 + \|2 sin(---) + \|2 cos(---) + x\|2 +-- 8 8 +-- / +-- +-+ +-- 2\|2 +-- Type: Expression(Complex(Integer)) --E 1484 --S 1485 of 1751 -d0:=normalize(D(m0,x)) ---R ---R ---R (5) ---R 3 2 %pi 12 3 2 %pi %pi 11 ---R (- 8x - 4x - 4)sin(---) + (- 32x - 16x - 16)cos(---)sin(---) ---R 8 8 8 ---R + ---R 3 2 %pi 2 ---R (- 80x - 40x - 40)cos(---) ---R 8 ---R + ---R 5 3 2 4+-+2 ---R (48x - 10x + 18x - 26x + 2)\|2 ---R * ---R %pi 10 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 3 ---R (- 160x - 80x - 80)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi ---R (160x - 64x - 124x - 4x - 124x - 4)\|2 cos(---) ---R 8 ---R * ---R %pi 9 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 4 ---R (- 248x - 124x - 124)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 2 7 ---R (592x + 128x - 166x + 110x - 214x - 34)\|2 cos(---) - 64x ---R 8 ---R + ---R 6 5 4 3 2 ---R 544x + 668x + 230x + 332x + 84x - 2 ---R * ---R %pi 8 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 5 ---R (- 320x - 160x - 160)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 3 ---R (1152x + 512x - 112x + 304x - 240x - 80)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 %pi ---R (- 1024x + 512x + 1472x + 96x + 512x + 160x - 64x)cos(---) ---R 8 ---R * ---R %pi 7 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 6 ---R (- 352x - 176x - 176)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 4 ---R (1696x + 1024x + 52x + 540x - 172x - 132)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 %pi 2 ---R (- 3584x - 768x + 2336x - 848x - 80x - 80x - 432x)cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 ---R - 128x - 896x - 544x + 768x + 471x + 359x + 248x ---R + ---R 2 ---R - 24x + x + 1 ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 6 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 7 ---R (- 320x - 160x - 160)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 5 ---R (2112x + 1664x + 424x + 856x + 40x - 168)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 5632x - 256x + 7584x + 3408x + 2432x + 992x - 672x ---R + ---R - 48 ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 ---R 1792x - 256x - 1472x + 3904x + 4934x + 3310x + 1680x ---R + ---R 2 ---R 144x - 22x + 2 ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi 5 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 8 ---R (- 248x - 124x - 124)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 6 ---R (1888x + 1792x + 652x + 900x + 236x - 156)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 11648x - 11072x + 2536x + 2212x + 2488x + 2632x - 80x ---R + ---R - 124 ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 1408x - 13696x - 29344x - 20224x - 8797x - 1205x ---R + ---R 3 2 ---R 2552x + 840x - 11x - 3 ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R - 2048x - 6912x - 12160x - 11520x - 7304x - 2962x - 192x ---R + ---R 3 2 ---R 20x + 8x - 2x ---R * ---R %pi 4 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 9 ---R (- 160x - 80x - 80)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 7 ---R (1408x + 1536x + 688x + 784x + 304x - 112)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 9216x - 13824x - 4160x - 288x + 960x + 2336x + 640x ---R + ---R - 128 ---R * ---R %pi 5 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 17920x + 19968x - 13184x - 25728x - 18916x - 11796x ---R + ---R 3 2 ---R - 2400x + 672x + 68x - 12 ---R * ---R 4+-+2 %pi 3 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R 8192x + 45056x + 78336x + 62208x + 29984x + 7792x ---R + ---R 5 4 3 2 ---R - 2712x - 1280x + 368x + 144x + 8x ---R * ---R %pi ---R cos(---) ---R 8 ---R * ---R %pi 3 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 10 ---R (- 80x - 40x - 40)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 8 ---R (816x + 1024x + 534x + 530x + 262x - 62)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 6656x - 12544x - 8096x - 4464x - 1776x + 848x + 624x ---R + ---R - 64 ---R * ---R %pi 6 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 11904x + 28032x + 18336x - 512x - 6267x - 6923x ---R + ---R 3 2 ---R - 3656x - 280x + 83x - 13 ---R * ---R 4+-+2 %pi 4 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 28672x - 38912x + 33024x + 93312x + 86160x + 53704x ---R + ---R 5 4 3 2 ---R 20012x + 2560x + 168x + 184x + 28x ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 ---R - 4096x - 16384x - 32256x - 36352x - 27408x ---R + ---R 8 7 6 5 4 3 2 ---R - 15840x - 6890x - 2446x - 648x - 128x - 14x - 2x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 2 ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 11 ---R (- 32x - 16x - 16)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 9 ---R (288x + 448x + 276x + 236x + 148x - 20)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 2560x - 5888x - 5024x - 3280x - 1856x - 160x + 224x ---R + ---R - 16 ---R * ---R %pi 7 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 6912x + 19200x + 20288x + 12096x + 4782x - 298x ---R + ---R 3 2 ---R - 1488x - 400x + 34x - 6 ---R * ---R 4+-+2 %pi 5 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 16384x - 57344x - 69632x - 30208x + 5824x + 18080x ---R + ---R 5 4 3 2 ---R 15704x + 6144x + 976x + 96x + 24x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 8 ---R 8192x + 16384x - 5120x - 41984x - 57568x - 47872x ---R + ---R 7 6 5 4 3 2 ---R - 27964x - 12084x - 3952x - 928x - 148x - 12x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi ---R sin(---) ---R 8 ---R + ---R 3 2 %pi 12 ---R (- 8x - 4x - 4)cos(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 10 ---R (80x + 128x + 90x + 78x + 42x - 2)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R (- 576x - 1760x - 1924x - 1418x - 964x - 284x + 16x - 2) ---R * ---R %pi 8 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 ---R 1152x + 4992x + 7968x + 7168x + 4913x + 2409x + 472x ---R + ---R 2 ---R - 24x + 7x - 1 ---R * ---R 4+-+2 %pi 6 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 4096x - 16384x - 30208x - 32512x - 23312x - 12320x ---R + ---R 5 4 3 ---R - 4218x - 480x + 68x + 6x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 8 ---R 4096x + 16384x + 28160x + 26112x + 14352x + 4448x ---R + ---R 7 6 5 4 3 2 ---R - 166x - 890x - 504x - 176x - 34x - 6x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 13 12 11 10 9 8 7 ---R 8192x + 24576x + 35840x + 34816x + 24352x + 12832x + 5156x ---R + ---R 6 5 4 3 ---R 1552x + 344x + 48x + 4x ---R * ---R +-+ +-----+ ---R \|x \|x + 1 ---R + ---R 4 3 2 %pi 12 ---R (- 8x - 8x - 8x - 8x)sin(---) ---R 8 ---R + ---R 4 3 2 %pi %pi 11 ---R (- 32x - 32x - 32x - 32x)cos(---)sin(---) ---R 8 8 ---R + ---R 4 3 2 %pi 2 ---R (- 80x - 80x - 80x - 80x)cos(---) ---R 8 ---R + ---R 6 5 4 3 4+-+2 ---R (48x + 24x - 16x + 16x - 8x)\|2 ---R * ---R %pi 10 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 3 ---R (- 160x - 160x - 160x - 160x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi ---R (160x + 16x - 176x - 48x - 80x - 64x)\|2 cos(---) ---R 8 ---R * ---R %pi 9 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 4 ---R (- 248x - 248x - 248x - 248x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 2 8 ---R (592x + 424x - 176x + 48x - 128x - 184x)\|2 cos(---) - 64x ---R 8 ---R + ---R 7 6 5 4 3 2 ---R 512x + 948x + 492x + 400x + 240x - 36x + 4x ---R * ---R %pi 8 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 5 ---R (- 320x - 320x - 320x - 320x)cos(---) ---R 8 ---R + ---R 6 5 3 2 4+-+2 %pi 3 ---R (1152x + 1088x + 256x - 128x - 320x)\|2 cos(---) ---R 8 ---R + ---R 8 6 5 4 3 2 %pi ---R (- 1024x + 1856x + 704x + 448x + 448x - 128x )cos(---) ---R 8 ---R * ---R %pi 7 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 6 ---R (- 352x - 352x - 352x - 352x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 4 ---R (1696x + 1872x + 352x + 544x - 64x - 432x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R (- 3584x - 2560x + 2400x + 192x - 704x + 64x - 544x - 128x) ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 3 ---R - 128x - 960x - 976x + 600x + 872x + 496x + 416x + 56x ---R + ---R 2 ---R 8x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 6 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 7 ---R (- 320x - 320x - 320x - 320x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 5 ---R (2112x + 2720x + 992x + 992x + 160x - 448x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 5632x - 3072x + 8160x + 6880x + 3392x + 2112x - 416x ---R + ---R - 416x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 1792x + 640x - 1824x + 3312x + 6984x + 5256x + 2976x ---R + ---R 3 2 ---R 720x - 8x - 8x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi 5 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 8 ---R (- 248x - 248x - 248x - 248x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 6 ---R (1888x + 2736x + 1312x + 1120x + 320x - 336x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 11648x - 16896x - 1544x + 4136x + 3040x + 3872x + 744x ---R + ---R - 520x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 1408x - 12992x - 36368x - 33096x - 16152x - 4336x + 2528x ---R + ---R 3 2 ---R 2008x + 136x - 32x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 5 ---R - 2048x - 7936x - 15360x - 16864x - 11896x - 5720x - 1152x ---R + ---R 4 3 2 ---R 64x - 8x - 8x ---R * ---R %pi 4 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 9 ---R (- 160x - 160x - 160x - 160x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 7 ---R (1408x + 2240x + 1280x + 1024x + 384x - 192x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 9216x - 18432x - 9920x - 1216x + 832x + 2880x + 1280x ---R + ---R - 256x ---R * ---R %pi 5 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 ---R 17920x + 28928x - 5440x - 33696x - 29584x - 19152x ---R + ---R 4 3 2 ---R - 6848x + 288x + 272x - 48x ---R * ---R 4+-+2 %pi 3 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R 8192x + 49152x + 99840x + 96256x + 53792x + 18368x ---R + ---R 6 5 4 3 2 ---R - 672x - 2816x + 96x + 320x + 32x ---R * ---R %pi ---R cos(---) ---R 8 ---R * ---R %pi 3 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 10 ---R (- 80x - 80x - 80x - 80x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 8 ---R (816x + 1432x + 944x + 720x + 320x - 72x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R (- 6656x - 15872x - 13536x - 7360x - 3520x + 320x + 800x ) ---R * ---R %pi 6 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 11904x + 33984x + 30864x + 5896x - 7528x - 9616x - 6560x ---R + ---R 3 2 ---R - 1496x + 56x - 32x ---R * ---R 4+-+2 %pi 4 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 28672x - 53248x + 17152x + 112896x + 127376x + 87920x ---R + ---R 6 5 4 3 2 ---R 40160x + 8832x + 560x + 272x + 96x ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 ---R - 4096x - 18432x - 39936x - 50688x - 42416x - 26488x ---R + ---R 8 7 6 5 4 ---R - 12760x - 4816x - 1472x - 312x - 56x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 2 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 11 ---R (- 32x - 32x - 32x - 32x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 9 ---R (288x + 592x + 464x + 336x + 176x )\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 2560x - 7168x - 7648x - 5216x - 3136x - 832x + 160x ---R + ---R 32x ---R * ---R %pi 7 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 6912x + 22656x + 29024x + 20272x + 9224x + 1288x - 1888x ---R + ---R 3 2 ---R - 1008x - 72x - 8x ---R * ---R 4+-+2 %pi 5 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 16384x - 65536x - 96256x - 58880x - 3520x + 22208x ---R + ---R 6 5 4 3 2 ---R 23616x + 12288x + 2880x + 320x + 64x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 ---R 8192x + 20480x + 2048x - 46080x - 77216x - 72144x ---R + ---R 8 7 6 5 4 3 ---R - 46848x - 22384x - 8128x - 2192x - 416x - 48x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 12 ---R (- 8x - 8x - 8x - 8x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 10 ---R (80x + 168x + 144x + 112x + 64x + 8x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R (- 576x - 2048x - 2732x - 2196x - 1520x - 656x - 68x + 4x) ---R * ---R %pi 8 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 1152x + 5568x + 10320x + 10600x + 7768x + 4304x + 1312x ---R + ---R 3 2 ---R 72x - 8x ---R * ---R 4+-+2 %pi 6 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 4096x - 18432x - 37888x - 45824x - 36656x - 21272x ---R + ---R 6 5 4 3 2 ---R - 8680x - 1792x + 16x + 24x + 8x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 8 ---R 4096x + 18432x + 35840x + 38400x + 24752x + 9592x + 1160x ---R + ---R 7 6 5 4 3 ---R - 1152x - 864x - 360x - 88x - 16x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 8 ---R 8192x + 28672x + 47104x + 50176x + 38496x + 22160x + 9808x ---R + ---R 7 6 5 4 ---R 3296x + 832x + 144x + 16x ---R / ---R 5 4+-+2 %pi 10 5 4+-+2 %pi %pi 9 ---R (32x - 32x)\|2 sin(---) + (128x - 128x)\|2 cos(---)sin(---) ---R 8 8 8 ---R + ---R 5 4 3 2 4+-+2 %pi 2 7 ---R (416x + 192x + 192x + 192x - 224x)\|2 cos(---) - 192x ---R 8 ---R + ---R 6 5 4 3 2 ---R 224x + 192x + 192x + 384x - 32x ---R * ---R %pi 8 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 3 ---R (768x + 512x + 512x + 512x - 256x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 %pi ---R (- 1280x - 384x - 384x - 512x + 768x - 128x - 128x)cos(---) ---R 8 ---R * ---R %pi 7 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 4 ---R (1088x + 896x + 896x + 896x - 192x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R (- 3584x - 2304x - 1536x - 2048x + 1536x + 256x - 512x) ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 2 ---R 512x - 256x + 160x + 592x + 80x + 832x + 416x - 16x ---R + ---R - 16x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 6 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 5 ---R (1280x + 1280x + 1280x + 1280x )\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R (- 5888x - 5248x - 2432x - 3072x + 2816x + 2176x - 640x) ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 ---R 3584x + 2048x + 1056x + 2336x - 1088x + 384x + 1376x ---R + ---R 2 ---R 96x - 64x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi 5 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 6 ---R (1088x + 1280x + 1280x + 1280x + 192x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 %pi 4 ---R (- 8832x - 13248x - 9856x - 9856x - 1024x + 3392x )cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 ---R 7680x + 4864x - 3360x - 3504x - 10608x - 7872x + 352x ---R + ---R 2 ---R 496x - 80x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 5 ---R - 2304x - 1664x - 3360x - 5296x - 2624x - 2992x - 1248x ---R + ---R 4 3 2 ---R 688x + 320x + 48x ---R * ---R %pi 4 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 7 ---R (768x + 1024x + 1024x + 1024x + 256x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R - 5888x - 12416x - 11392x - 10752x - 4864x + 1664x ---R + ---R 640x ---R * ---R %pi 5 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 17408x + 34816x + 30656x + 26944x + 9984x - 7424x ---R + ---R 3 2 ---R - 3264x + 448x ---R * ---R 4+-+2 %pi 3 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 9216x + 1536x + 23424x + 28992x + 38144x + 27968x ---R + ---R 5 4 3 2 ---R 6272x + 704x + 768x + 192x ---R * ---R %pi ---R cos(---) ---R 8 ---R * ---R %pi 3 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 8 ---R (416x + 640x + 640x + 640x + 224x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R (- 3584x - 8448x - 9216x - 8704x - 5120x - 256x + 512x) ---R * ---R %pi 6 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 7680x + 25856x + 33376x + 31728x + 23920x + 5824x ---R + ---R 3 2 ---R - 1696x - 48x + 80x ---R * ---R 4+-+2 %pi 4 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 ---R - 38400x - 96000x - 111296x - 104992x - 65792x ---R + ---R 6 5 4 3 2 ---R - 8608x + 6848x + 544x - 256x + 160x ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 8 ---R 2048x - 2048x - 11648x - 19712x - 26072x - 23160x ---R + ---R 7 6 5 4 3 2 ---R - 13736x - 5640x - 1320x - 136x + 40x + 8x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 2 ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 9 ---R (128x + 256x + 256x + 256x + 128x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 ---R (- 1280x - 3456x - 4224x - 4096x - 2816x - 640x + 128x) ---R * ---R %pi 7 ---R cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 ---R 3584x + 12288x + 18976x + 19872x + 16192x + 7552x ---R + ---R 3 2 ---R 864x - 32x + 64x ---R * ---R 4+-+2 %pi 5 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 9216x - 47616x - 87168x - 100032x - 91648x - 53696x ---R + ---R 5 4 3 2 ---R - 14208x - 1344x - 512x - 64x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 ---R 20480x + 61440x + 96512x + 115200x + 100752x ---R + ---R 8 7 6 5 4 3 2 ---R 60816x + 25840x + 7152x + 1136x + 112x + 16x + 16x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi ---R sin(---) ---R 8 ---R + ---R 5 4 3 2 4+-+2 %pi 10 ---R (32x + 64x + 64x + 64x + 32x)\|2 cos(---) ---R 8 ---R + ---R 7 6 5 4 3 2 %pi 8 ---R (- 192x - 800x - 1088x - 1088x - 896x - 288x )cos(---) ---R 8 ---R + ---R 9 8 7 6 5 4 3 2 ---R 512x + 2304x + 4640x + 5488x + 5040x + 3264x + 928x + 80x ---R + ---R 16x ---R * ---R 4+-+2 %pi 6 ---R \|2 cos(---) ---R 8 ---R + ---R 11 10 9 8 7 6 ---R - 2304x - 9856x - 21792x - 30896x - 31424x - 24368x ---R + ---R 5 4 3 2 ---R - 12512x - 3408x - 576x - 80x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 13 12 11 10 9 8 ---R 2048x + 14336x + 33408x + 48896x + 55336x + 46024x ---R + ---R 7 6 5 4 3 2 ---R 27672x + 12280x + 3800x + 824x + 104x + 8x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 15 14 13 12 11 10 ---R - 8192x - 28672x - 55296x - 78848x - 85600x - 72336x ---R + ---R 9 8 7 6 5 4 3 ---R - 48304x - 25456x - 10640x - 3440x - 848x - 144x - 16x ---R * ---R +-+ +-----+ ---R \|x \|x + 1 ---R + ---R 4 3 2 %pi 12 ---R (- 8x - 8x - 8x - 8x)sin(---) ---R 8 ---R + ---R 4 3 2 %pi %pi 11 ---R (- 32x - 32x - 32x - 32x)cos(---)sin(---) ---R 8 8 ---R + ---R 4 3 2 %pi 2 ---R (- 80x - 80x - 80x - 80x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 ---R (32x + 16x + 16x + 16x - 16x )\|2 ---R * ---R %pi 10 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 3 ---R (- 160x - 160x - 160x - 160x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi ---R (128x + 64x + 32x + 32x - 96x - 32x)\|2 cos(---) ---R 8 ---R * ---R %pi 9 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 4 ---R (- 248x - 248x - 248x - 248x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 2 8 ---R (416x + 400x + 272x + 272x - 144x - 128x)\|2 cos(---) - 192x ---R 8 ---R + ---R 7 6 5 4 3 2 ---R 128x + 328x + 248x + 432x + 112x - 88x - 8x ---R * ---R %pi 8 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 5 ---R (- 320x - 320x - 320x - 320x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 3 ---R (768x + 896x + 640x + 640x - 128x - 256x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R (- 1280x - 1024x - 416x - 736x + 512x + 256x - 352x - 32x) ---R * ---R %pi ---R cos(---) ---R 8 ---R * ---R %pi 7 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 6 ---R (- 352x - 352x - 352x - 352x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 4 ---R (1088x + 1440x + 1056x + 1056x - 32x - 384x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 3584x - 4096x - 2240x - 2752x + 704x + 1216x - 640x ---R + ---R - 128x ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 10 8 7 6 5 4 3 4+-+2 ---R (512x - 32x + 736x + 320x + 832x + 864x + 96x )\|2 ---R * ---R %pi 6 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 7 ---R (- 320x - 320x - 320x - 320x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 5 ---R (1280x + 1920x + 1472x + 1472x + 192x - 448x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 5888x - 8192x - 4320x - 4000x + 1536x + 3840x - 32x ---R + ---R - 352x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 3584x + 3840x + 1632x + 2832x - 64x - 368x + 1824x ---R + ---R 3 2 ---R 624x - 64x - 16x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi 5 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 8 ---R (- 248x - 248x - 248x - 248x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 6 ---R (1088x + 1824x + 1440x + 1440x + 352x - 384x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 8832x - 17664x - 15376x - 13680x - 5344x + 3488x + 1200x ---R + ---R - 496x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 7680x + 8704x - 1888x - 5312x - 11936x - 12928x - 2400x ---R + ---R 3 2 ---R 1024x - 32x - 64x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 6 ---R - 2304x - 2816x - 3904x - 6912x - 4866x - 3850x - 2614x ---R + ---R 5 4 3 2 ---R 386x + 642x + 138x - 10x - 2x ---R * ---R %pi 4 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 9 ---R (- 160x - 160x - 160x - 160x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 7 ---R (768x + 1408x + 1152x + 1152x + 384x - 256x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 5888x - 15360x - 16864x - 15264x - 9728x - 256x + 1248x ---R + ---R - 352x ---R * ---R %pi 5 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 ---R 17408x + 43520x + 45888x + 39008x + 21120x - 4768x ---R + ---R 4 3 2 ---R - 7232x - 352x + 128x - 96x ---R * ---R 4+-+2 %pi 3 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 9216x - 3072x + 25344x + 39936x + 50168x + 44568x ---R + ---R 6 5 4 3 2 ---R 16616x + 2056x + 1032x + 488x + 24x - 8x ---R * ---R %pi ---R cos(---) ---R 8 ---R * ---R %pi 3 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 10 ---R (- 80x - 80x - 80x - 80x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 8 ---R (416x + 848x + 720x + 720x + 304x - 128x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 3584x - 10240x - 12992x - 12480x - 9024x - 2368x + 384x ---R + ---R - 128x ---R * ---R %pi 6 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 ---R 7680x + 29696x + 45344x + 45664x + 36928x + 15104x - 608x ---R + ---R 3 2 ---R - 928x + 128x - 64x ---R * ---R 4+-+2 %pi 4 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 ---R - 38400x - 115200x - 154496x - 151040x - 108876x ---R + ---R 7 6 5 4 3 2 ---R - 32636x + 6716x + 3340x - 436x + 124x + 68x - 12x ---R * ---R %pi 2 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 ---R 2048x - 1024x - 12928x - 25152x - 34680x - 34324x ---R + ---R 8 7 6 5 4 3 2 ---R - 22932x - 10716x - 3212x - 492x + 20x + 28x + 4x ---R * ---R 4+-+2 ---R \|2 ---R * ---R %pi 2 ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 11 ---R (- 32x - 32x - 32x - 32x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 9 ---R (128x + 320x + 288x + 288x + 160x - 32x)\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 ---R - 1280x - 4096x - 5792x - 5856x - 4608x - 1792x - 96x ---R + ---R - 32x ---R * ---R %pi 7 ---R cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 ---R 3584x + 14080x + 24672x + 28048x + 24384x + 13968x ---R + ---R 4 3 2 ---R 3360x - 16x + 64x - 16x ---R * ---R 4+-+2 %pi 5 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 9216x - 52224x - 109824x - 138240x - 133384x - 90856x ---R + ---R 6 5 4 3 2 ---R - 33560x - 5112x - 760x - 280x + 24x - 8x ---R * ---R %pi 3 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 ---R 20480x + 71680x + 124672x + 157056x + 149328x ---R + ---R 9 8 7 6 5 4 3 2 ---R 100984x + 48344x + 15976x + 3240x + 392x + 40x + 24x + 8x ---R * ---R 4+-+2 %pi ---R \|2 cos(---) ---R 8 ---R * ---R %pi ---R sin(---) ---R 8 ---R + ---R 4 3 2 %pi 12 ---R (- 8x - 8x - 8x - 8x)cos(---) ---R 8 ---R + ---R 6 5 4 3 2 4+-+2 %pi 10 ---R (32x + 80x + 80x + 80x + 48x )\|2 cos(---) ---R 8 ---R + ---R 8 7 6 5 4 3 2 %pi 8 ---R (- 192x - 896x - 1464x - 1544x - 1360x - 656x - 88x - 8x)cos(---) ---R 8 ---R + ---R 10 9 8 7 6 5 4 3 ---R 512x + 2560x + 5728x + 7552x + 7328x + 5312x + 2144x + 320x ---R + ---R 2 ---R 32x ---R * ---R 4+-+2 %pi 6 ---R \|2 cos(---) ---R 8 ---R + ---R 12 11 10 9 8 7 ---R - 2304x - 11008x - 26432x - 40704x - 44674x - 37258x ---R + ---R 6 5 4 3 2 ---R - 22070x - 7806x - 1534x - 246x - 10x - 2x ---R * ---R %pi 4 ---R cos(---) ---R 8 ---R + ---R 14 13 12 11 10 9 ---R 2048x + 15360x + 40320x + 63936x + 76424x + 69164x ---R + ---R 8 7 6 5 4 3 2 ---R 45868x + 22564x + 8052x + 2004x + 340x + 28x + 4x ---R * ---R 4+-+2 %pi 2 ---R \|2 cos(---) ---R 8 ---R + ---R 16 15 14 13 12 11 ---R - 8192x - 32768x - 68608x - 103424x - 119584x - 107840x ---R + ---R 10 9 8 7 6 5 4 3 ---R - 77156x - 43892x - 19884x - 7100x - 1948x - 396x - 52x - 4x ---R Type: Expression(Complex(Integer)) +--d0:=normalize(D(m0,x)) +-- +-- +-- (5) +-- 3 2 %pi 12 3 2 %pi %pi 11 +-- (- 8x - 4x - 4)sin(---) + (- 32x - 16x - 16)cos(---)sin(---) +-- 8 8 8 +-- + +-- 3 2 %pi 2 +-- (- 80x - 40x - 40)cos(---) +-- 8 +-- + +-- 5 3 2 4+-+2 +-- (48x - 10x + 18x - 26x + 2)\|2 +-- * +-- %pi 10 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 3 +-- (- 160x - 80x - 80)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi +-- (160x - 64x - 124x - 4x - 124x - 4)\|2 cos(---) +-- 8 +-- * +-- %pi 9 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 4 +-- (- 248x - 124x - 124)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 2 7 +-- (592x + 128x - 166x + 110x - 214x - 34)\|2 cos(---) - 64x +-- 8 +-- + +-- 6 5 4 3 2 +-- 544x + 668x + 230x + 332x + 84x - 2 +-- * +-- %pi 8 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 5 +-- (- 320x - 160x - 160)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 3 +-- (1152x + 512x - 112x + 304x - 240x - 80)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 %pi +-- (- 1024x + 512x + 1472x + 96x + 512x + 160x - 64x)cos(---) +-- 8 +-- * +-- %pi 7 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 6 +-- (- 352x - 176x - 176)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 4 +-- (1696x + 1024x + 52x + 540x - 172x - 132)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 %pi 2 +-- (- 3584x - 768x + 2336x - 848x - 80x - 80x - 432x)cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 +-- - 128x - 896x - 544x + 768x + 471x + 359x + 248x +-- + +-- 2 +-- - 24x + x + 1 +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 6 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 7 +-- (- 320x - 160x - 160)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 5 +-- (2112x + 1664x + 424x + 856x + 40x - 168)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 5632x - 256x + 7584x + 3408x + 2432x + 992x - 672x +-- + +-- - 48 +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 +-- 1792x - 256x - 1472x + 3904x + 4934x + 3310x + 1680x +-- + +-- 2 +-- 144x - 22x + 2 +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi 5 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 8 +-- (- 248x - 124x - 124)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 6 +-- (1888x + 1792x + 652x + 900x + 236x - 156)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 11648x - 11072x + 2536x + 2212x + 2488x + 2632x - 80x +-- + +-- - 124 +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 1408x - 13696x - 29344x - 20224x - 8797x - 1205x +-- + +-- 3 2 +-- 2552x + 840x - 11x - 3 +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- - 2048x - 6912x - 12160x - 11520x - 7304x - 2962x - 192x +-- + +-- 3 2 +-- 20x + 8x - 2x +-- * +-- %pi 4 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 9 +-- (- 160x - 80x - 80)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 7 +-- (1408x + 1536x + 688x + 784x + 304x - 112)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 9216x - 13824x - 4160x - 288x + 960x + 2336x + 640x +-- + +-- - 128 +-- * +-- %pi 5 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 17920x + 19968x - 13184x - 25728x - 18916x - 11796x +-- + +-- 3 2 +-- - 2400x + 672x + 68x - 12 +-- * +-- 4+-+2 %pi 3 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- 8192x + 45056x + 78336x + 62208x + 29984x + 7792x +-- + +-- 5 4 3 2 +-- - 2712x - 1280x + 368x + 144x + 8x +-- * +-- %pi +-- cos(---) +-- 8 +-- * +-- %pi 3 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 10 +-- (- 80x - 40x - 40)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 8 +-- (816x + 1024x + 534x + 530x + 262x - 62)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 6656x - 12544x - 8096x - 4464x - 1776x + 848x + 624x +-- + +-- - 64 +-- * +-- %pi 6 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 11904x + 28032x + 18336x - 512x - 6267x - 6923x +-- + +-- 3 2 +-- - 3656x - 280x + 83x - 13 +-- * +-- 4+-+2 %pi 4 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 28672x - 38912x + 33024x + 93312x + 86160x + 53704x +-- + +-- 5 4 3 2 +-- 20012x + 2560x + 168x + 184x + 28x +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 +-- - 4096x - 16384x - 32256x - 36352x - 27408x +-- + +-- 8 7 6 5 4 3 2 +-- - 15840x - 6890x - 2446x - 648x - 128x - 14x - 2x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 2 +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 11 +-- (- 32x - 16x - 16)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 9 +-- (288x + 448x + 276x + 236x + 148x - 20)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 2560x - 5888x - 5024x - 3280x - 1856x - 160x + 224x +-- + +-- - 16 +-- * +-- %pi 7 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 6912x + 19200x + 20288x + 12096x + 4782x - 298x +-- + +-- 3 2 +-- - 1488x - 400x + 34x - 6 +-- * +-- 4+-+2 %pi 5 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 16384x - 57344x - 69632x - 30208x + 5824x + 18080x +-- + +-- 5 4 3 2 +-- 15704x + 6144x + 976x + 96x + 24x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 8 +-- 8192x + 16384x - 5120x - 41984x - 57568x - 47872x +-- + +-- 7 6 5 4 3 2 +-- - 27964x - 12084x - 3952x - 928x - 148x - 12x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi +-- sin(---) +-- 8 +-- + +-- 3 2 %pi 12 +-- (- 8x - 4x - 4)cos(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 10 +-- (80x + 128x + 90x + 78x + 42x - 2)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- (- 576x - 1760x - 1924x - 1418x - 964x - 284x + 16x - 2) +-- * +-- %pi 8 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 +-- 1152x + 4992x + 7968x + 7168x + 4913x + 2409x + 472x +-- + +-- 2 +-- - 24x + 7x - 1 +-- * +-- 4+-+2 %pi 6 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 4096x - 16384x - 30208x - 32512x - 23312x - 12320x +-- + +-- 5 4 3 +-- - 4218x - 480x + 68x + 6x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 8 +-- 4096x + 16384x + 28160x + 26112x + 14352x + 4448x +-- + +-- 7 6 5 4 3 2 +-- - 166x - 890x - 504x - 176x - 34x - 6x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 13 12 11 10 9 8 7 +-- 8192x + 24576x + 35840x + 34816x + 24352x + 12832x + 5156x +-- + +-- 6 5 4 3 +-- 1552x + 344x + 48x + 4x +-- * +-- +-+ +-----+ +-- \|x \|x + 1 +-- + +-- 4 3 2 %pi 12 +-- (- 8x - 8x - 8x - 8x)sin(---) +-- 8 +-- + +-- 4 3 2 %pi %pi 11 +-- (- 32x - 32x - 32x - 32x)cos(---)sin(---) +-- 8 8 +-- + +-- 4 3 2 %pi 2 +-- (- 80x - 80x - 80x - 80x)cos(---) +-- 8 +-- + +-- 6 5 4 3 4+-+2 +-- (48x + 24x - 16x + 16x - 8x)\|2 +-- * +-- %pi 10 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 3 +-- (- 160x - 160x - 160x - 160x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi +-- (160x + 16x - 176x - 48x - 80x - 64x)\|2 cos(---) +-- 8 +-- * +-- %pi 9 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 4 +-- (- 248x - 248x - 248x - 248x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 2 8 +-- (592x + 424x - 176x + 48x - 128x - 184x)\|2 cos(---) - 64x +-- 8 +-- + +-- 7 6 5 4 3 2 +-- 512x + 948x + 492x + 400x + 240x - 36x + 4x +-- * +-- %pi 8 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 5 +-- (- 320x - 320x - 320x - 320x)cos(---) +-- 8 +-- + +-- 6 5 3 2 4+-+2 %pi 3 +-- (1152x + 1088x + 256x - 128x - 320x)\|2 cos(---) +-- 8 +-- + +-- 8 6 5 4 3 2 %pi +-- (- 1024x + 1856x + 704x + 448x + 448x - 128x )cos(---) +-- 8 +-- * +-- %pi 7 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 6 +-- (- 352x - 352x - 352x - 352x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 4 +-- (1696x + 1872x + 352x + 544x - 64x - 432x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- (- 3584x - 2560x + 2400x + 192x - 704x + 64x - 544x - 128x) +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 3 +-- - 128x - 960x - 976x + 600x + 872x + 496x + 416x + 56x +-- + +-- 2 +-- 8x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 6 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 7 +-- (- 320x - 320x - 320x - 320x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 5 +-- (2112x + 2720x + 992x + 992x + 160x - 448x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 5632x - 3072x + 8160x + 6880x + 3392x + 2112x - 416x +-- + +-- - 416x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 1792x + 640x - 1824x + 3312x + 6984x + 5256x + 2976x +-- + +-- 3 2 +-- 720x - 8x - 8x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi 5 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 8 +-- (- 248x - 248x - 248x - 248x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 6 +-- (1888x + 2736x + 1312x + 1120x + 320x - 336x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 11648x - 16896x - 1544x + 4136x + 3040x + 3872x + 744x +-- + +-- - 520x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 1408x - 12992x - 36368x - 33096x - 16152x - 4336x + 2528x +-- + +-- 3 2 +-- 2008x + 136x - 32x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 5 +-- - 2048x - 7936x - 15360x - 16864x - 11896x - 5720x - 1152x +-- + +-- 4 3 2 +-- 64x - 8x - 8x +-- * +-- %pi 4 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 9 +-- (- 160x - 160x - 160x - 160x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 7 +-- (1408x + 2240x + 1280x + 1024x + 384x - 192x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 9216x - 18432x - 9920x - 1216x + 832x + 2880x + 1280x +-- + +-- - 256x +-- * +-- %pi 5 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 +-- 17920x + 28928x - 5440x - 33696x - 29584x - 19152x +-- + +-- 4 3 2 +-- - 6848x + 288x + 272x - 48x +-- * +-- 4+-+2 %pi 3 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- 8192x + 49152x + 99840x + 96256x + 53792x + 18368x +-- + +-- 6 5 4 3 2 +-- - 672x - 2816x + 96x + 320x + 32x +-- * +-- %pi +-- cos(---) +-- 8 +-- * +-- %pi 3 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 10 +-- (- 80x - 80x - 80x - 80x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 8 +-- (816x + 1432x + 944x + 720x + 320x - 72x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- (- 6656x - 15872x - 13536x - 7360x - 3520x + 320x + 800x ) +-- * +-- %pi 6 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 11904x + 33984x + 30864x + 5896x - 7528x - 9616x - 6560x +-- + +-- 3 2 +-- - 1496x + 56x - 32x +-- * +-- 4+-+2 %pi 4 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 28672x - 53248x + 17152x + 112896x + 127376x + 87920x +-- + +-- 6 5 4 3 2 +-- 40160x + 8832x + 560x + 272x + 96x +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 +-- - 4096x - 18432x - 39936x - 50688x - 42416x - 26488x +-- + +-- 8 7 6 5 4 +-- - 12760x - 4816x - 1472x - 312x - 56x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 2 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 11 +-- (- 32x - 32x - 32x - 32x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 9 +-- (288x + 592x + 464x + 336x + 176x )\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 2560x - 7168x - 7648x - 5216x - 3136x - 832x + 160x +-- + +-- 32x +-- * +-- %pi 7 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 6912x + 22656x + 29024x + 20272x + 9224x + 1288x - 1888x +-- + +-- 3 2 +-- - 1008x - 72x - 8x +-- * +-- 4+-+2 %pi 5 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 16384x - 65536x - 96256x - 58880x - 3520x + 22208x +-- + +-- 6 5 4 3 2 +-- 23616x + 12288x + 2880x + 320x + 64x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 +-- 8192x + 20480x + 2048x - 46080x - 77216x - 72144x +-- + +-- 8 7 6 5 4 3 +-- - 46848x - 22384x - 8128x - 2192x - 416x - 48x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 12 +-- (- 8x - 8x - 8x - 8x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 10 +-- (80x + 168x + 144x + 112x + 64x + 8x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- (- 576x - 2048x - 2732x - 2196x - 1520x - 656x - 68x + 4x) +-- * +-- %pi 8 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 1152x + 5568x + 10320x + 10600x + 7768x + 4304x + 1312x +-- + +-- 3 2 +-- 72x - 8x +-- * +-- 4+-+2 %pi 6 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 4096x - 18432x - 37888x - 45824x - 36656x - 21272x +-- + +-- 6 5 4 3 2 +-- - 8680x - 1792x + 16x + 24x + 8x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 8 +-- 4096x + 18432x + 35840x + 38400x + 24752x + 9592x + 1160x +-- + +-- 7 6 5 4 3 +-- - 1152x - 864x - 360x - 88x - 16x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 8 +-- 8192x + 28672x + 47104x + 50176x + 38496x + 22160x + 9808x +-- + +-- 7 6 5 4 +-- 3296x + 832x + 144x + 16x +-- / +-- 5 4+-+2 %pi 10 5 4+-+2 %pi %pi 9 +-- (32x - 32x)\|2 sin(---) + (128x - 128x)\|2 cos(---)sin(---) +-- 8 8 8 +-- + +-- 5 4 3 2 4+-+2 %pi 2 7 +-- (416x + 192x + 192x + 192x - 224x)\|2 cos(---) - 192x +-- 8 +-- + +-- 6 5 4 3 2 +-- 224x + 192x + 192x + 384x - 32x +-- * +-- %pi 8 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 3 +-- (768x + 512x + 512x + 512x - 256x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 %pi +-- (- 1280x - 384x - 384x - 512x + 768x - 128x - 128x)cos(---) +-- 8 +-- * +-- %pi 7 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 4 +-- (1088x + 896x + 896x + 896x - 192x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- (- 3584x - 2304x - 1536x - 2048x + 1536x + 256x - 512x) +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 2 +-- 512x - 256x + 160x + 592x + 80x + 832x + 416x - 16x +-- + +-- - 16x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 6 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 5 +-- (1280x + 1280x + 1280x + 1280x )\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- (- 5888x - 5248x - 2432x - 3072x + 2816x + 2176x - 640x) +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 +-- 3584x + 2048x + 1056x + 2336x - 1088x + 384x + 1376x +-- + +-- 2 +-- 96x - 64x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi 5 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 6 +-- (1088x + 1280x + 1280x + 1280x + 192x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 %pi 4 +-- (- 8832x - 13248x - 9856x - 9856x - 1024x + 3392x )cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 +-- 7680x + 4864x - 3360x - 3504x - 10608x - 7872x + 352x +-- + +-- 2 +-- 496x - 80x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 5 +-- - 2304x - 1664x - 3360x - 5296x - 2624x - 2992x - 1248x +-- + +-- 4 3 2 +-- 688x + 320x + 48x +-- * +-- %pi 4 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 7 +-- (768x + 1024x + 1024x + 1024x + 256x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- - 5888x - 12416x - 11392x - 10752x - 4864x + 1664x +-- + +-- 640x +-- * +-- %pi 5 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 17408x + 34816x + 30656x + 26944x + 9984x - 7424x +-- + +-- 3 2 +-- - 3264x + 448x +-- * +-- 4+-+2 %pi 3 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 9216x + 1536x + 23424x + 28992x + 38144x + 27968x +-- + +-- 5 4 3 2 +-- 6272x + 704x + 768x + 192x +-- * +-- %pi +-- cos(---) +-- 8 +-- * +-- %pi 3 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 8 +-- (416x + 640x + 640x + 640x + 224x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- (- 3584x - 8448x - 9216x - 8704x - 5120x - 256x + 512x) +-- * +-- %pi 6 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 7680x + 25856x + 33376x + 31728x + 23920x + 5824x +-- + +-- 3 2 +-- - 1696x - 48x + 80x +-- * +-- 4+-+2 %pi 4 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 +-- - 38400x - 96000x - 111296x - 104992x - 65792x +-- + +-- 6 5 4 3 2 +-- - 8608x + 6848x + 544x - 256x + 160x +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 8 +-- 2048x - 2048x - 11648x - 19712x - 26072x - 23160x +-- + +-- 7 6 5 4 3 2 +-- - 13736x - 5640x - 1320x - 136x + 40x + 8x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 2 +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 9 +-- (128x + 256x + 256x + 256x + 128x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 +-- (- 1280x - 3456x - 4224x - 4096x - 2816x - 640x + 128x) +-- * +-- %pi 7 +-- cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 +-- 3584x + 12288x + 18976x + 19872x + 16192x + 7552x +-- + +-- 3 2 +-- 864x - 32x + 64x +-- * +-- 4+-+2 %pi 5 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 9216x - 47616x - 87168x - 100032x - 91648x - 53696x +-- + +-- 5 4 3 2 +-- - 14208x - 1344x - 512x - 64x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 +-- 20480x + 61440x + 96512x + 115200x + 100752x +-- + +-- 8 7 6 5 4 3 2 +-- 60816x + 25840x + 7152x + 1136x + 112x + 16x + 16x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi +-- sin(---) +-- 8 +-- + +-- 5 4 3 2 4+-+2 %pi 10 +-- (32x + 64x + 64x + 64x + 32x)\|2 cos(---) +-- 8 +-- + +-- 7 6 5 4 3 2 %pi 8 +-- (- 192x - 800x - 1088x - 1088x - 896x - 288x )cos(---) +-- 8 +-- + +-- 9 8 7 6 5 4 3 2 +-- 512x + 2304x + 4640x + 5488x + 5040x + 3264x + 928x + 80x +-- + +-- 16x +-- * +-- 4+-+2 %pi 6 +-- \|2 cos(---) +-- 8 +-- + +-- 11 10 9 8 7 6 +-- - 2304x - 9856x - 21792x - 30896x - 31424x - 24368x +-- + +-- 5 4 3 2 +-- - 12512x - 3408x - 576x - 80x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 13 12 11 10 9 8 +-- 2048x + 14336x + 33408x + 48896x + 55336x + 46024x +-- + +-- 7 6 5 4 3 2 +-- 27672x + 12280x + 3800x + 824x + 104x + 8x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 15 14 13 12 11 10 +-- - 8192x - 28672x - 55296x - 78848x - 85600x - 72336x +-- + +-- 9 8 7 6 5 4 3 +-- - 48304x - 25456x - 10640x - 3440x - 848x - 144x - 16x +-- * +-- +-+ +-----+ +-- \|x \|x + 1 +-- + +-- 4 3 2 %pi 12 +-- (- 8x - 8x - 8x - 8x)sin(---) +-- 8 +-- + +-- 4 3 2 %pi %pi 11 +-- (- 32x - 32x - 32x - 32x)cos(---)sin(---) +-- 8 8 +-- + +-- 4 3 2 %pi 2 +-- (- 80x - 80x - 80x - 80x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 +-- (32x + 16x + 16x + 16x - 16x )\|2 +-- * +-- %pi 10 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 3 +-- (- 160x - 160x - 160x - 160x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi +-- (128x + 64x + 32x + 32x - 96x - 32x)\|2 cos(---) +-- 8 +-- * +-- %pi 9 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 4 +-- (- 248x - 248x - 248x - 248x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 2 8 +-- (416x + 400x + 272x + 272x - 144x - 128x)\|2 cos(---) - 192x +-- 8 +-- + +-- 7 6 5 4 3 2 +-- 128x + 328x + 248x + 432x + 112x - 88x - 8x +-- * +-- %pi 8 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 5 +-- (- 320x - 320x - 320x - 320x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 3 +-- (768x + 896x + 640x + 640x - 128x - 256x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- (- 1280x - 1024x - 416x - 736x + 512x + 256x - 352x - 32x) +-- * +-- %pi +-- cos(---) +-- 8 +-- * +-- %pi 7 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 6 +-- (- 352x - 352x - 352x - 352x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 4 +-- (1088x + 1440x + 1056x + 1056x - 32x - 384x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 3584x - 4096x - 2240x - 2752x + 704x + 1216x - 640x +-- + +-- - 128x +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 10 8 7 6 5 4 3 4+-+2 +-- (512x - 32x + 736x + 320x + 832x + 864x + 96x )\|2 +-- * +-- %pi 6 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 7 +-- (- 320x - 320x - 320x - 320x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 5 +-- (1280x + 1920x + 1472x + 1472x + 192x - 448x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 5888x - 8192x - 4320x - 4000x + 1536x + 3840x - 32x +-- + +-- - 352x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 3584x + 3840x + 1632x + 2832x - 64x - 368x + 1824x +-- + +-- 3 2 +-- 624x - 64x - 16x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi 5 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 8 +-- (- 248x - 248x - 248x - 248x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 6 +-- (1088x + 1824x + 1440x + 1440x + 352x - 384x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 8832x - 17664x - 15376x - 13680x - 5344x + 3488x + 1200x +-- + +-- - 496x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 7680x + 8704x - 1888x - 5312x - 11936x - 12928x - 2400x +-- + +-- 3 2 +-- 1024x - 32x - 64x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 6 +-- - 2304x - 2816x - 3904x - 6912x - 4866x - 3850x - 2614x +-- + +-- 5 4 3 2 +-- 386x + 642x + 138x - 10x - 2x +-- * +-- %pi 4 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 9 +-- (- 160x - 160x - 160x - 160x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 7 +-- (768x + 1408x + 1152x + 1152x + 384x - 256x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 5888x - 15360x - 16864x - 15264x - 9728x - 256x + 1248x +-- + +-- - 352x +-- * +-- %pi 5 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 +-- 17408x + 43520x + 45888x + 39008x + 21120x - 4768x +-- + +-- 4 3 2 +-- - 7232x - 352x + 128x - 96x +-- * +-- 4+-+2 %pi 3 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 9216x - 3072x + 25344x + 39936x + 50168x + 44568x +-- + +-- 6 5 4 3 2 +-- 16616x + 2056x + 1032x + 488x + 24x - 8x +-- * +-- %pi +-- cos(---) +-- 8 +-- * +-- %pi 3 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 10 +-- (- 80x - 80x - 80x - 80x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 8 +-- (416x + 848x + 720x + 720x + 304x - 128x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 3584x - 10240x - 12992x - 12480x - 9024x - 2368x + 384x +-- + +-- - 128x +-- * +-- %pi 6 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 +-- 7680x + 29696x + 45344x + 45664x + 36928x + 15104x - 608x +-- + +-- 3 2 +-- - 928x + 128x - 64x +-- * +-- 4+-+2 %pi 4 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 +-- - 38400x - 115200x - 154496x - 151040x - 108876x +-- + +-- 7 6 5 4 3 2 +-- - 32636x + 6716x + 3340x - 436x + 124x + 68x - 12x +-- * +-- %pi 2 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 +-- 2048x - 1024x - 12928x - 25152x - 34680x - 34324x +-- + +-- 8 7 6 5 4 3 2 +-- - 22932x - 10716x - 3212x - 492x + 20x + 28x + 4x +-- * +-- 4+-+2 +-- \|2 +-- * +-- %pi 2 +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 11 +-- (- 32x - 32x - 32x - 32x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 9 +-- (128x + 320x + 288x + 288x + 160x - 32x)\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 +-- - 1280x - 4096x - 5792x - 5856x - 4608x - 1792x - 96x +-- + +-- - 32x +-- * +-- %pi 7 +-- cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 +-- 3584x + 14080x + 24672x + 28048x + 24384x + 13968x +-- + +-- 4 3 2 +-- 3360x - 16x + 64x - 16x +-- * +-- 4+-+2 %pi 5 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 9216x - 52224x - 109824x - 138240x - 133384x - 90856x +-- + +-- 6 5 4 3 2 +-- - 33560x - 5112x - 760x - 280x + 24x - 8x +-- * +-- %pi 3 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 +-- 20480x + 71680x + 124672x + 157056x + 149328x +-- + +-- 9 8 7 6 5 4 3 2 +-- 100984x + 48344x + 15976x + 3240x + 392x + 40x + 24x + 8x +-- * +-- 4+-+2 %pi +-- \|2 cos(---) +-- 8 +-- * +-- %pi +-- sin(---) +-- 8 +-- + +-- 4 3 2 %pi 12 +-- (- 8x - 8x - 8x - 8x)cos(---) +-- 8 +-- + +-- 6 5 4 3 2 4+-+2 %pi 10 +-- (32x + 80x + 80x + 80x + 48x )\|2 cos(---) +-- 8 +-- + +-- 8 7 6 5 4 3 2 %pi 8 +-- (- 192x - 896x - 1464x - 1544x - 1360x - 656x - 88x - 8x)cos(---) +-- 8 +-- + +-- 10 9 8 7 6 5 4 3 +-- 512x + 2560x + 5728x + 7552x + 7328x + 5312x + 2144x + 320x +-- + +-- 2 +-- 32x +-- * +-- 4+-+2 %pi 6 +-- \|2 cos(---) +-- 8 +-- + +-- 12 11 10 9 8 7 +-- - 2304x - 11008x - 26432x - 40704x - 44674x - 37258x +-- + +-- 6 5 4 3 2 +-- - 22070x - 7806x - 1534x - 246x - 10x - 2x +-- * +-- %pi 4 +-- cos(---) +-- 8 +-- + +-- 14 13 12 11 10 9 +-- 2048x + 15360x + 40320x + 63936x + 76424x + 69164x +-- + +-- 8 7 6 5 4 3 2 +-- 45868x + 22564x + 8052x + 2004x + 340x + 28x + 4x +-- * +-- 4+-+2 %pi 2 +-- \|2 cos(---) +-- 8 +-- + +-- 16 15 14 13 12 11 +-- - 8192x - 32768x - 68608x - 103424x - 119584x - 107840x +-- + +-- 10 9 8 7 6 5 4 3 +-- - 77156x - 43892x - 19884x - 7100x - 1948x - 396x - 52x - 4x +-- Type: Expression(Complex(Integer)) --E 1485 )clear all diff --git a/src/input/unittest1.input.pamphlet b/src/input/unittest1.input.pamphlet index 897450a..56f56bd 100644 --- a/src/input/unittest1.input.pamphlet +++ b/src/input/unittest1.input.pamphlet @@ -128,140 +128,60 @@ Unit test the user level commands --IValue = "Saturday February 21, 2009 at 17:59:27 " --E 12 ---S 13 of 97 -)zsys )from )c ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 13 of 97 -- no longer supported +--)zsys )from )c --E 13 ---S 14 of 97 -)zsys )from )d ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 14 of 97 -- no longer supported +--)zsys )from )d --E 14 ---S 15 of 97 -)zsys )from )dt ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 15 of 97 -- no longer supported +--)zsys )from )dt --E 15 ---S 16 of 97 -)zsys )from )ct ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 16 of 97 -- no longer supported +--)zsys )from )ct --E 16 ---S 17 of 97 -)zsys )from )ctl ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 17 of 97 -- no longer supported +--)zsys )from )ctl --E 17 ---S 18 of 97 -)zsys )from )ec ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 18 of 97 -- no longer supportee +--)zsys )from )ec --E 18 ---S 19 of 97 -)zsys )from )ect ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 19 of 97 -- no longer supported +--)zsys )from )ect --E 19 ---S 20 of 97 -)zsys )from )e ---R ---R ---R >> System error: ---I Cannot open the file /research/test/mnt/fedora10/../../src/interp/TAGS. ---R ---R Continuing to read the file... ---R +--S 20 of 97 -- no longer supported +--)zsys )from )e --E 20 ---S 21 of 97 -)zsys )from )version ---R +--S 21 of 97 -- no longer supported +--)zsys )from )version --E 21 ---S 22 of 97 -)zsys )from )update ---R ---R ---R >> System error: ---R /UPDATE-1 [or a callee] requires more than one argument. ---R ---R Continuing to read the file... ---R +--S 22 of 97 -- no longer supported +--)zsys )from )update --E 22 ---S 23 of 97 -)zsys )from )patch ---R ---R ---R >> System error: ---R The function /UPDATE-LIB-1 is undefined. ---R ---R Continuing to read the file... ---R +--S 23 of 97 -- no longer supported +--)zsys )from )patch --E 23 ---S 24 of 97 +--S 24 of 97 -- no longer supported )zsys )from )there 1 ---R ---R ---R Unknown option: there ---R Available options are c ct e ec ect cls pause update patch compare record ---R --E 24 ---S 25 of 97 -)zsys )from )compare ---R ---R An argument is required for compare +--S 25 of 97 -- no longer supported +--)zsys )from )compare --E 25 ---S 26 of 97 -)zsys )from )record ---R ---R An argument is required for record +--S 26 of 97 -- no longer supported +--)zsys )from )record --E 26 --S 27 of 97 diff --git a/src/interp/i-output.lisp.pamphlet b/src/interp/i-output.lisp.pamphlet index 87621bc..b524a5b 100644 --- a/src/interp/i-output.lisp.pamphlet +++ b/src/interp/i-output.lisp.pamphlet @@ -12,6 +12,12 @@ \begin{chunk}{*} (IN-PACKAGE "BOOT" ) +(defun |sayALGEBRA| (X) "Prints on Algebra output stream." + (if (NULL X) NIL (sayBrightly1 X |$algebraOutputStream|))) + +(defun |sayMSGNT| (X) + (if (NULL X) NIL (sayBrightlyNT1 X |$algebraOutputStream|))) + (SPADLET |$collectOutput| NIL) (defvar MATBORCH "*") diff --git a/src/interp/newfort.lisp.pamphlet b/src/interp/newfort.lisp.pamphlet index e432ba5..f3f4ce0 100644 --- a/src/interp/newfort.lisp.pamphlet +++ b/src/interp/newfort.lisp.pamphlet @@ -13,6 +13,8 @@ (IN-PACKAGE "BOOT" ) +(defvar |$fortranOutputStream|) + ;--% Translation of Expression to FORTRAN ;assignment2Fortran1(name,e) == ; $fortError : fluid := nil diff --git a/src/interp/vmlisp.lisp.pamphlet b/src/interp/vmlisp.lisp.pamphlet index fac7837..809d1d0 100644 --- a/src/interp/vmlisp.lisp.pamphlet +++ b/src/interp/vmlisp.lisp.pamphlet @@ -397,13 +397,43 @@ documentclass{article} (defun define-function (f v) (setf (symbol-function f) v)) -; 7.0 Macros +;;; functions used somewhere -; 7.2 Creating Macro Expressions +(defun COMP370 (fnlist) + (cond ((atom (car fnlist)) (list (COMPILE1 fnlist))) + (t (MAPCAR #'(lambda (x) (COMPILE1 x)) fnlist)))) -; 5.2 Functions +(defun COMPILE1 (fn) + (let* (nargs + (fname (car fn)) + (lamda (cadr fn)) + (ltype (car lamda)) + *vars* *decl* args + (body (cddr lamda))) + (declare (special *vars* *decl*)) + (if (eq ltype 'LAM) + (let ((*lam-name* (intern (concat fname "\,LAM")))) + (setq lamda (eval lamda) ltype (car lamda) body (cddr lamda)))) + (let ((dectest (car body))) + (if (and (eqcar dectest 'declare) (eqcar (cadr dectest) 'special)) + (setq *decl* (cdr (cadr dectest)) body (cdr body)))) + (setq args (remove-fluids (cadr lamda))) + (cond ((and (eq ltype 'lambda) (simple-arglist args)) (setq nargs args)) + (t (setq nargs (gensym)) + (setq body `((dsetq ,args ,nargs) ,@body)) + (cond + ((eq ltype 'lambda) + (setq nargs `(&rest ,nargs &aux ,@*vars*))) + ((eq ltype 'mlambda) + (setq nargs `(&whole ,nargs &rest ,(gensym) &aux ,@*vars*))) + (t (error "bad function type"))))) + (cond (*decl* (setq body (cons `(declare (special ,@ *decl*)) body)))) + (setq body + (cond ((eq ltype 'lambda) `(defun ,fname ,nargs . ,body)) + ((eq ltype 'mlambda) `(defmacro ,fname ,nargs . ,body)))) + (if *COMP370-APPLY* (funcall *COMP370-APPLY* fname body)) -; 5.2.2 Lambda Expressions + body)) (defun *LAM (body) (cond ((NOT (ISQUOTEDP (first BODY))) (cons 'LAMBDA BODY)) @@ -417,12 +447,6 @@ documentclass{article} (CONS (QUOTE ,INNER-FUNC) (WRAP (cdr ,ARGS) ',CONTROL))))))) -(defun ISQUOTEDP (bv) - (COND ((NOT (consp BV)) NIL) - ((EQ (first BV) 'QUOTE)) - ((AND (consp (first BV)) (EQ (QCAAR BV) 'QUOTE))) - ((ISQUOTEDP (cdr BV))))) - (defun QUOTESOF (BV) (COND ((NOT (consp BV)) NIL) ((EQ (first BV) 'QUOTE) 'QUOTE) @@ -431,11 +455,43 @@ documentclass{article} (T NIL)) (QUOTESOF (cdr BV)))))) -(defun DEQUOTE (BV) - (COND ((NOT (consp BV)) BV) - ((EQ 'QUOTE (first BV)) (second BV)) - ((CONS (if (EQ 'QUOTE (IFCAR (CAR BV))) (CADAR BV) (first BV)) - (DEQUOTE (cdr BV)))))) +(defun ISQUOTEDP (bv) + (COND ((NOT (consp BV)) NIL) + ((EQ (first BV) 'QUOTE)) + ((AND (consp (first BV)) (EQ (QCAAR BV) 'QUOTE))) + ((ISQUOTEDP (cdr BV))))) + + +(defun remove-fluids (arglist &aux f v) ;updates specials *decl* and *vars* + (declare (special *decl* *vars*)) + (cond ((null arglist) arglist) + ((symbolp arglist) (push arglist *vars*) arglist) + ;if atom but not symbol, ignore value + ((atom arglist) (push (setq arglist (gentemp)) *vars*) arglist) + ((and (setq f (car arglist)) + (eq f 'fluid) + (listp (cdr arglist)) + (setq v (cadr arglist)) + (identp v) + (null (cddr arglist))) + (push v *decl*) + (push v *vars*) + v) + (t (cons (remove-fluids (car arglist)) + (remove-fluids (cdr arglist)))))) + +(defun simple-arglist (arglist) + (or (null arglist) + (and (consp arglist) (null (cdr (last arglist))) + (every #'symbolp arglist)))) + +; 7.0 Macros + +; 7.2 Creating Macro Expressions + +; 5.2 Functions + +; 5.2.2 Lambda Expressions ; 7.4 Using Macros @@ -471,10 +527,12 @@ documentclass{article} (cond ((and (eq ltype 'lambda) (simple-arglist args)) (setq nargs args)) (t (setq nargs (gensym)) (setq body `((dsetq ,args ,nargs) ,@body)) - (cond ((eq ltype 'lambda) (setq nargs `(&rest ,nargs &aux ,@*vars*))) - ((eq ltype 'mlambda) - (setq nargs `(&whole ,nargs &rest ,(gensym) &aux ,@*vars*))) - (t (error "bad function type"))))) + (cond + ((eq ltype 'lambda) + (setq nargs `(&rest ,nargs &aux ,@*vars*))) + ((eq ltype 'mlambda) + (setq nargs `(&whole ,nargs &rest ,(gensym) &aux ,@*vars*))) + (t (error "bad function type"))))) (cond (*decl* (setq body (cons `(declare (special ,@ *decl*)) body)))) (setq body (cond ((eq ltype 'lambda) `(defun ,fname ,nargs . ,body)) @@ -483,28 +541,25 @@ documentclass{article} body)) -(defun simple-arglist (arglist) - (or (null arglist) - (and (consp arglist) (null (cdr (last arglist))) - (every #'symbolp arglist)))) +(defun *LAM (body) + (cond ((NOT (ISQUOTEDP (first BODY))) (cons 'LAMBDA BODY)) + ((LET* ((BV (DEQUOTE (first BODY))) + (CONTROL (QUOTESOF (first BODY))) + (BODY (cdr BODY)) + (ARGS (GENSYM)) + (INNER-FUNC (or *lam-name* (gentemp)))) + (COMP370 (LIST INNER-FUNC `(LAMBDA ,BV . ,BODY))) + `(MLAMBDA ,ARGS + (CONS (QUOTE ,INNER-FUNC) + (WRAP (cdr ,ARGS) ',CONTROL))))))) -(defun remove-fluids (arglist &aux f v) ;updates specials *decl* and *vars* - (declare (special *decl* *vars*)) - (cond ((null arglist) arglist) - ((symbolp arglist) (push arglist *vars*) arglist) - ;if atom but not symbol, ignore value - ((atom arglist) (push (setq arglist (gentemp)) *vars*) arglist) - ((and (setq f (car arglist)) - (eq f 'fluid) - (listp (cdr arglist)) - (setq v (cadr arglist)) - (identp v) - (null (cddr arglist))) - (push v *decl*) - (push v *vars*) - v) - (t (cons (remove-fluids (car arglist)) - (remove-fluids (cdr arglist)))))) +(defun QUOTESOF (BV) + (COND ((NOT (consp BV)) NIL) + ((EQ (first BV) 'QUOTE) 'QUOTE) + ((CONS (COND ((NOT (consp (first BV))) nil) + ((EQ (QCAAR BV) 'QUOTE) 'QUOTE) + (T NIL)) + (QUOTESOF (cdr BV)))))) ; 9.4 Vectors and Bpis @@ -543,10 +598,6 @@ documentclass{article} ; 10.8.4 Auxiliary Operators -(defun nilfn (&rest ignore) - (declare (ignore ignore)) - ()) - ; 11.0 Operations on Identifiers ; 11.1 Creation @@ -587,7 +638,6 @@ documentclass{article} ; 13.3 Updating - ; 14.0 Operations on Lists ; 14.1 Creation @@ -626,18 +676,6 @@ documentclass{article} (GO A))))) ; 14.5 Updating -(defun NREMOVE (list item &optional (count 1)) - (if (integerp count) - (delete item list :count count :test #'equal) - (delete item list :test #'equal))) - -(defun NREMOVEQ (list item &optional (count 1)) - (if (integerp count) - (delete item list :count count ) - (delete item list ))) - -(defun EFFACE (item list) (delete item list :count 1 :test #'equal)) - ; 14.6 Miscellaneous (defun QSORT (l) @@ -738,12 +776,6 @@ can be restored. cvec)) (t (concat cvec id)))) -(defun setsize (vector size) (adjust-array vector size)) - -(define-function 'changelength #'setsize) - -(defun trimstring (x) x) - ; The following version has been provided to avoid reliance on the ; Common Lisp concatenate and replace functions. These built-in Lisp ; functions would probably end up doing the character-by-character @@ -3576,20 +3608,6 @@ The original code was: (defun sayBrightlyNT1 (X *standard-output*) (if (ATOM X) (BRIGHTPRINT-0 X) (BRIGHTPRINT X))) -(defun |saySpadMsg| (X) - (if (NULL X) NIL (sayBrightly1 X |$algebraOutputStream|))) - -(defun |sayALGEBRA| (X) "Prints on Algebra output stream." - (if (NULL X) NIL (sayBrightly1 X |$algebraOutputStream|))) - -(defun |sayMSGNT| (X) - (if (NULL X) NIL (sayBrightlyNT1 X |$algebraOutputStream|))) - -(defvar |$fortranOutputStream|) - -(defun |sayFORTRAN| (x) "Prints on Fortran output stream." - (if (NULL X) NIL (sayBrightly1 X |$fortranOutputStream|))) - (defvar |$formulaOutputStream|) (defun |sayFORMULA| (X) "Prints on formula output stream." @@ -3626,8 +3644,6 @@ terminals and empty or at-end files. In Common Lisp, we must assume record size ((IS-CONSOLE STRM) 0) ((file-position STRM)))) -(DEFUN IS-CONSOLE-NOT-XEDIT (S) (not (OR (NULL (IS-CONSOLE S))))) - (DEFUN POINTW (RECNO STRM) "Does something obscure and VM-specific with respect to streams." (let (V) @@ -4318,231 +4334,12 @@ terminals and empty or at-end files. In Common Lisp, we must assume record size (declare (special optionlist /editfile $prettyprint $reportComilation)) `',(|compileConstructorLib| L (/COMP) NIL NIL)) -(defmacro /C (&rest L) `',(/D-1 L (/COMP) NIL NIL)) - -(defmacro /D (&rest L) `',(/D-1 L 'DEFINE NIL NIL)) - -(defun heapelapsed () 0) - -(defun /COMP () (if (fboundp 'COMP) 'COMP 'COMP370)) - -(DEFUN /D-1 (L OP EFLG TFLG) - (CATCH 'FILENAM - (PROG (TO OPTIONL OPTIONS FNL INFILE OUTSTREAM FN ) - (declare (special fn infile outstream )) - (if (member '? L :test #'eq) - (RETURN (OBEY "EXEC SPADEDIT /C TELL"))) - (SETQ OPTIONL (/OPTIONS L)) - (SETQ FNL (TRUNCLIST L OPTIONL)) - (SETQ OPTIONS (OPTIONS2UC OPTIONL)) - (SETQ INFILE (/MKINFILENAM (/GETOPTION OPTIONS 'FROM))) - (SETQ TO (/GETOPTION OPTIONS 'TO)) - (if TO (SETQ TO (/MKOUTFILENAM (/GETOPTION OPTIONS 'TO) INFILE))) - (SETQ OUTSTREAM (if TO (DEFSTREAM TO 'OUTPUT) CUROUTSTREAM)) - (RETURN (mapcar #'(lambda (fn) - (/D-2 FN INFILE OUTSTREAM OP EFLG TFLG)) - (or fnl (list /fn))))))) - -(DEFUN |/D,2,LIB| (FN INFILE CUROUTSTREAM OP EDITFLAG TRACEFLAG) - (declare (special CUROUTSTREAM)) - "Called from compConLib1 (see LISPLIB BOOT) to bind CUROUTSTREAM." - (/D-2 FN INFILE CUROUTSTREAM OP EDITFLAG TRACEFLAG)) - -(DEFUN /D-2 (FN INFILE OUTPUTSTREAM OP EDITFLAG TRACEFLAG) - (declare (special OUTPUTSTREAM)) - (PROG (FT oft SFN X EDINFILE FILE DEF KEY RECNO U W SOURCEFILES - SINGLINEMODE XTOKENREADER INPUTSTREAM SPADERRORSTREAM - ISID NBLNK COMMENTCHR $TOKSTACK (/SOURCEFILES |$sourceFiles|) - METAKEYLST DEFINITION-NAME (|$sourceFileTypes| '(|spad| |boot| |lisp| |lsp| |meta|)) - ($FUNCTION FN) $BOOT $NEWSPAD $LINESTACK $LINENUMBER STACK STACKX BACK OK - |$InteractiveMode| TOK COUNT ERRCOL COLUMN *QUERY CHR LINE - (*COMP370-APPLY* (if (eq op 'define) #'eval-defun #'compile-defun))) - (declare (special SINGLINEMODE XTOKENREADER INPUTSTREAM - SPADERRORSTREAM ISID NBLNK COMMENTCHR $TOKSTACK /SOURCEFILES - METAKEYLST DEFINITION-NAME |$sourceFileTypes| - $FUNCTION $BOOT $NEWSPAD $LINESTACK $LINENUMBER STACK STACKX BACK OK - |$InteractiveMode| TOK COUNT ERRCOL COLUMN *QUERY CHR LINE)) - (if (CONSP FN) (SETQ FN (QCAR FN))) - (SETQ INFILE (OR INFILE (|getFunctionSourceFile| FN))) - ;; $FUNCTION is freely set in getFunctionSourceFile - (IF (CONSP $FUNCTION) (SETQ $FUNCTION (QCAR $FUNCTION))) - (SETQ FN $FUNCTION) - (SETQ /FN $FUNCTION) - LOOP (SETQ SOURCEFILES - (cond ( INFILE - (SETQ /SOURCEFILES (CONS INFILE (REMOVE INFILE /SOURCEFILES))) - (LIST INFILE)) - ( /EDITFILE - (|insert| (|pathname| /EDITFILE) /SOURCEFILES)) - ( 't /SOURCEFILES))) - (SETQ RECNO - (dolist (file sourcefiles) - (SETQ INPUTSTREAM (DEFSTREAM FILE 'INPUT)) - - ;;?(REMFLAG S-SPADKEY 'KEY) ; hack !! - (SETQ FT (|pathnameType| FILE)) - (SETQ oft (|object2Identifier| (UPCASE FT))) - (SETQ XCAPE #\_) - (SETQ COMMENTCHR (GET oft '/COMMENTCHR)) - (SETQ XTOKENREADER (OR (GET oft '/NXTTOK) 'METATOK)) - (SETQ DEFINITION-NAME FN) - (SETQ KEY - (STRCONC - (OR (AND (EQ oFT 'SPAD) "") - (AND (EQ oFT 'BOOT) "") - (GET oFT '/PREFIX) - "") - (PNAME FN))) - (SETQ SFN (GET oFT '/READFUN)) - (SETQ RECNO (/LOCATE FN KEY FILE 0)) - (SHUT INPUTSTREAM) - (cond ((NUMBERP RECNO) - (SETQ /SOURCEFILES (CONS FILE (REMOVE FILE /SOURCEFILES))) - (SETQ INFILE FILE) - (RETURN RECNO)))) ) - (if (NOT RECNO) - (if (SETQ INFILE (/MKINFILENAM '(NIL))) (GO LOOP) (UNWIND))) - (TERPRI) - (TERPRI) - (SETQ INFILE (|pathname| INFILE)) - (COND - ( EDITFLAG - ;;%% next form is used because $FINDFILE seems to screw up - ;;%% sometimes. The stream is opened and closed several times - ;;%% in case the filemode has changed during editing. - (SETQ EDINFILE (boot::makeInputFilename INFILE)) - (SETQ INPUTSTREAM (DEFSTREAM EDINFILE 'INPUT)) - (|sayBrightly| - (LIST " editing file" '|%b| (|namestring| EDINFILE) '|%d|)) - (OBEY - (STRCONC - (make-absolute-filename "/lib/SPADEDFN ") - (|namestring| EDINFILE) - " " - (STRINGIMAGE $LINENUMBER))) - (SHUT INPUTSTREAM) - ;(COND - ; ( (EQ (READ ERRORINSTREAM) 'ABORTPROCESS) - ; (RETURN 'ABORT) ) ) - ;;%% next is done in case the diskmode changed - ;;(SETQ INFILE (|pathname| (IFCAR - ;; (QSORT ($LISTFILE INFILE))))) - (SETQ INPUTSTREAM (DEFSTREAM INFILE 'INPUT)) - (SETQ RECNO (/LOCATE FN KEY INFILE RECNO)) - - (COND ((NOT RECNO) - (|sayBrightly| (LIST " Warning: function" "%b" /FN "%d" - "was not found in the file" "%l" " " "%b" - (|namestring| INFILE) "%d" "after editing.")) - (RETURN NIL))) - ;; next is done in case the diskmode changed - (SHUT INPUTSTREAM) )) - ;;(SETQ INFILE (|pathname| (IFCAR ($LISTFILE INFILE)))) - (SETQ INFILE (boot::makeInputFilename INFILE)) - (setf (get /fn 'defloc) (cons recno infile)) - (SETQ oft (|object2Identifier| (UPCASE (|pathnameType| INFILE)))) - (COND - ( (NULL OP) - (RETURN /FN) ) ) - (COND - ( (EQ TRACEFLAG 'TRACELET) - (RETURN (/TRACELET-1 (LIST FN) NIL)) ) ) - (SETQ INPUTSTREAM (DEFSTREAM INFILE 'INPUT)) - (|sayBrightly| - (LIST " Reading file" '|%b| (|namestring| INFILE) '|%d|)) - (TERPRI) - (SETQ $BOOT (EQ oft 'BOOT)) - (SETQ $NEWSPAD (OR $BOOT (EQ oft 'SPAD))) - (SETQ DEF - (COND - ( SFN - ;(+VOL 'METABASE) - (POINT RECNO INPUTSTREAM) - ;(SETQ CHR (CAR INPUTSTREAM)) - ;(SETQ ERRCOL 0) - ;(SETQ COUNT 0) - ;(SETQ COLUMN 0) - (SETQ OK 'T) - ;(NXTTOK) - ;(SETQ LINE (CURINPUTLINE)) - ;(SETQ SPADERRORSTREAM CUROUTSTREAM) - ;(SFN) - (SETQ DEF (BOOT-PARSE-1 INPUTSTREAM)) - (SETQ DEBUGMODE 'YES) - (COND - ( (NULL OK) - (FUNCALL (GET oft 'SYNTAX_ERROR)) - NIL ) - ( 'T - DEF ) ) ) - ( 'T - (let* ((mode-line (read-line inputstream)) - (pacpos (search "package:" mode-line :test #'equalp)) - (endpos (search "-*-" mode-line :from-end t)) - (*package* *package*) - (newpac nil)) - (when pacpos - (setq newpac (read-from-string mode-line nil nil - :start (+ pacpos 8) - :end endpos)) - (setq *package* - (cond ((find-package newpac)) - (t *package*)))) - (POINT RECNO INPUTSTREAM) - (READ INPUTSTREAM))))) - (COND - ( (SETQ U (GET oft '/TRAN)) - (SETQ DEF (FUNCALL U DEF)) ) ) - (/WRITEUPDATE - /FN - (|pathnameName| INFILE) - (|pathnameType| INFILE) - (OR (|pathnameDirectory| INFILE) '*) - (OR (KAR (KAR (KDR DEF))) NIL) - OP) - (COND - ( (OR /ECHO $PRETTYPRINT) - (PRETTYPRINT DEF OUTPUTSTREAM) ) ) - (COND - ( (EQ oft 'LISP) - (if (EQ OP 'DEFINE) (EVAL DEF) - (compile (EVAL DEF)))) - ( DEF - (FUNCALL OP (LIST DEF)) ) ) - (COND - ( TRACEFLAG - (/TRACE-2 /FN NIL) ) ) - (SHUT INPUTSTREAM) - (RETURN (LIST /FN)) ) ) - (DEFUN FUNLOC (func &aux file) (if (CONSP func) (SETQ func (CAR func))) (setq file (ifcar (findtag func))) (if file (list (pathname-name file) (pathname-type file) func) nil)) -(DEFUN /LOCATE (FN KEY INFILE INITRECNO) - (PROG (FT RECNO KEYLENGTH LN) - (if (AND (NOT (eq 'FROMWRITEUPDATE (|pathnameName| INFILE))) - (NOT (boot::makeInputFilename INFILE))) - (RETURN NIL)) - (SETQ FT (UPCASE (|object2Identifier| (|pathnameType| INFILE)))) - (SETQ KEYLENGTH (STRINGLENGTH KEY)) - (WHEN (> INITRECNO 1) ;; we think we know where it is - (POINT INITRECNO INPUTSTREAM) - (SETQ LN (READ-LINE INPUTSTREAM NIL NIL)) - (IF (AND LN (MATCH-FUNCTION-DEF FN KEY KEYLENGTH LN FT)) - (RETURN INITRECNO))) - (SETQ $LINENUMBER 0) - (POINT 0 INPUTSTREAM) -EXAMINE (SETQ RECNO (NOTE INPUTSTREAM)) - (SETQ LN (READ-LINE INPUTSTREAM NIL NIL)) - (INCF $LINENUMBER) - (if (NULL LN) (RETURN NIL)) - (IF (MATCH-FUNCTION-DEF FN KEY KEYLENGTH LN FT) - (RETURN RECNO)) - (GO EXAMINE))) - (DEFUN MATCH-FUNCTION-DEF (fn key keylength line type) (if (eq type 'LISP) (match-lisp-tag fn line "(def") (let ((n (mismatch key line))) @@ -4551,102 +4348,6 @@ EXAMINE (SETQ RECNO (NOTE INPUTSTREAM)) (member (elt line n) (or (get type '/termchr) '(#\space )))))))) -(define-function '|/D,1| #'/D-1) - -(DEFUN /INITUPDATES (/VERSION) - (SETQ FILENAME (STRINGIMAGE /VERSION)) - (SETQ /UPDATESTREAM (open (strconc "/tmp/update." FILENAME) :direction :output - :if-exists :append :if-does-not-exist :create)) - (PRINTEXP - " Function Name Filename Date Time" - /UPDATESTREAM) - (TERPRI /UPDATESTREAM) - (PRINTEXP - " --------------------------- ----------------------- -------- -----" - /UPDATESTREAM) - (TERPRI /UPDATESTREAM) ) - -(defun /UPDATE (&rest ARGS) - (LET (( FILENAME (OR (KAR ARGS) - (strconc "/tmp/update." (STRINGIMAGE /VERSION)))) - (|$createUpdateFiles| NIL)) - (DECLARE (SPECIAL |$createUpdateFiles|)) - (CATCH 'FILENAM (/UPDATE-1 FILENAME '(/COMP))) - (SAY "Update is finished"))) - -(defun /DUPDATE (&rest ARGS) - (LET (( FILENAME (OR (KAR ARGS) - (strconc "/tmp/update." (STRINGIMAGE /VERSION)))) - (|$createUpdateFiles| NIL)) - (DECLARE (SPECIAL |$createUpdateFiles|)) - (CATCH 'FILENAM (/UPDATE-1 FILENAME 'DEFINE)) - (SAY "Update is finished"))) - -(DEFUN /UPDATE-1 (UPFILE OP) - ;;if /VERSION=0 then no new update files will be written. - (prog (STREAM RECORD FUN FILE FUNFILES) - (SETQ STREAM (DEFSTREAM (/MKINFILENAM UPFILE) 'INPUT)) - LOOP - (if (STREAM-EOF STREAM) (RETURN NIL)) - (SETQ RECORD (read-line STREAM)) - (if (NOT (STRINGP RECORD)) (RETURN NIL)) - (if (< (LENGTH RECORD) 36) (GO LOOP)) - (SETQ FUN (STRING2ID-N (SUBSTRING RECORD 0 36) 1)) - (if (AND (NOT (EQUAL FUN 'QUAD)) (EQUAL (SUBSTRING RECORD 0 1) " ")) - (GO LOOP)) - (SETQ FILE (STRING2ID-N RECORD 2)) - (if (member (cons fun file) funfiles :test #'equal) (go loop)) - (push (cons fun file) funfiles) - (COND ((EQUAL FUN 'QUAD) (/RF-1 FILE)) - ((/D-2 FUN FILE CUROUTSTREAM OP NIL NIL))) - (GO LOOP))) - -(DEFUN /WRITEUPDATE (FUN FN FT FM FTYPE OP) - -;;;If /VERSION=0 then no save has yet been done. -;;;If A disk is not read-write, then issue msg and return. -;;;If /UPDATESTREAM not set or current /UPDATES file doesnt exist, initialize. - - (PROG (IFT KEY RECNO ORECNO COUNT DATE TIME) -; (if (EQ 0 /VERSION) (RETURN NIL)) - (if (EQ 'INPUT FT) (RETURN NIL)) - (if (NOT |$createUpdateFiles|) (RETURN NIL)) -; (COND ((/= 0 (directory "A"))) -; ((SAY "A disk is not read-write. Update file not modified") -; (RETURN NIL))) - (if (OR (NOT (BOUNDP '/UPDATESTREAM)) - (NOT (STREAMP /UPDATESTREAM))) - (/INITUPDATES /VERSION)) -; (SETQ IFT (INTERN (STRINGIMAGE /VERSION))) -; (SETQ INPUTSTREAM (open (strconc IFT /WSNAME) :direction :input)) -; (NEXT INPUTSTREAM) -; (SETQ KEY (if (NOT FUN) -; (STRCONC " QUAD " -; (PNAME FN)) -; (PNAME FUN))) -; (SETQ RECNO (/LOCATE KEY (LIST 'FROMWRITEUPDATE /WSNAME) 1)) -; (SETQ COUNT (COND -; ((NOT (NUMBERP RECNO)) 1) -; ((POINT RECNO INPUTSTREAM) -; (do ((i 1 (1+ i))) ((> i 4)) (read inputstream)) -; (1+ (READ INPUTSTREAM)) ))) -; (COND ((NUMBERP RECNO) -; (SETQ ORECNO (NOTE /UPDATESTREAM)) -; (POINTW RECNO /UPDATESTREAM) )) - (SETQ DATETIME (|getDateAndTime|)) - (SETQ DATE (CAR DATETIME)) - (SETQ TIME (CDR DATETIME)) - (PRINTEXP (STRCONC - (COND ((NOT FUN) " QUAD ") - ((STRINGPAD (PNAME FUN) 28))) " " - (STRINGIMAGE FM) - (STRINGIMAGE FN) "." (STRINGIMAGE FT) - " " - DATE " " TIME) /UPDATESTREAM) - (TERPRI /UPDATESTREAM) -; (if (NUMBERP RECNO) (POINTW ORECNO /UPDATESTREAM)) - )) - (defun |getDateAndTime| () (MULTIPLE-VALUE-BIND (sec min hour day mon year) (get-decoded-time) (CONS (STRCONC (LENGTH2STR mon) "/" @@ -4660,175 +4361,6 @@ EXAMINE (SETQ RECNO (NOTE INPUTSTREAM)) ( (= 2 XLEN) X) ( (subseq x (- XLEN 2))))) -(defmacro /T (&rest L) (CONS '/TRACE (OR L (LIST /FN)))) - -(defmacro /TRACE (&rest L) `',(/TRACE-0 L)) - -(DEFUN /TRACE-0 (L) - (if (member '? L :test #'eq) - (OBEY "EXEC NORMEDIT TRACE TELL") - (let* ((options (/OPTIONS L)) (FNL (TRUNCLIST L OPTIONS))) - (/TRACE-1 FNL OPTIONS)))) - -(define-function '|/TRACE,0| #'/TRACE-0) - -(defmacro /TRACEANDCOUNT (&rest L) `', - (let* ((OPTIONS (/OPTIONS L)) - (FNL (TRUNCLIST L OPTIONS))) - (/TRACE-1 FNL (CONS '(DEPTH) OPTIONS)))) - -(DEFUN /TRACE-1 (FNLIST OPTIONS) - (mapcar #'(lambda (X) (/TRACE-2 X OPTIONS)) FNLIST) - (/TRACEREPLY)) - -(DEFUN /TRACE-2 (FN OPTIONS) - (PROG (U FNVAL COUNTNAM TRACECODE BEFORE AFTER CONDITION - TRACENAME CALLER VARS BREAK FROM_CONDITION VARBREAK TIMERNAM - ONLYS G WITHIN_CONDITION DEPTH_CONDITION COUNT_CONDITION - LETFUNCODE MATHTRACE ) - (if (member FN /TRACENAMES :test #'eq) (/UNTRACE-2 FN NIL)) - (SETQ OPTIONS (OPTIONS2UC OPTIONS)) - (if (AND |$traceDomains| (|isFunctor| FN) (ATOM FN)) - (RETURN (|traceDomainConstructor| FN OPTIONS))) - (SETQ MATHTRACE (/GETTRACEOPTIONS OPTIONS 'MATHPRINT)) - (if (AND MATHTRACE (NOT (EQL (ELT (PNAME FN) 0) #\$)) (NOT (GENSYMP FN))) - (if (RASSOC FN |$mapSubNameAlist|) - (SETQ |$mathTraceList| (CONS FN |$mathTraceList|)) - (|spadThrowBrightly| - (format nil "mathprint not available for ~A" FN)))) - (SETQ VARS (/GETTRACEOPTIONS OPTIONS 'VARS)) - (if VARS - (progn (if (NOT (CDR VARS)) (SETQ VARS 'all) (SETQ VARS (CDR VARS))) - (|tracelet| FN VARS))) - (SETQ BREAK (/GETTRACEOPTIONS OPTIONS 'BREAK)) - (SETQ VARBREAK (/GETTRACEOPTIONS OPTIONS 'VARBREAK)) - (if VARBREAK - (progn (if (NOT (CDR VARBREAK)) (SETQ VARS 'all) - (SETQ VARS (CDR VARBREAK))) - (|breaklet| FN VARS))) - (if (and (symbolp fn) (not (boundp FN)) (not (fboundp FN))) - (progn - (COND ((|isUncompiledMap| FN) - (|sayBrightly| - (format nil - "~A must be compiled before it may be traced -- invoke ~A to compile" - FN FN))) - ((|isInterpOnlyMap| FN) - (|sayBrightly| (format nil - "~A cannot be traced because it is an interpret-only function" FN))) - (T (|sayBrightly| (format nil "~A is not a function" FN)))) - (RETURN NIL))) - (if (and (symbolp fn) (boundp FN) - (|isDomainOrPackage| (SETQ FNVAL (EVAL FN)))) - (RETURN (|spadTrace| FNVAL OPTIONS))) - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'MASK=)) - (setf (get fn '/transform) (second u))) - (SETQ /TRACENAMES - (COND ((/GETTRACEOPTIONS OPTIONS 'ALIAS) /TRACENAMES) - ((ATOM /TRACENAMES) (LIST FN)) - ((CONS FN /TRACENAMES)))) - (SETQ TRACENAME - (COND ((SETQ U (/GETTRACEOPTIONS OPTIONS 'ALIAS)) - (STRINGIMAGE (CADR U))) - (T - (COND ((AND |$traceNoisely| (NOT VARS) - (NOT (|isSubForRedundantMapName| FN))) - (|sayBrightly| - (LIST '|%b| (|rassocSub| FN |$mapSubNameAlist|) - '|%d| "traced")))) - (STRINGIMAGE FN)))) - (COND (|$fromSpadTrace| - (if MATHTRACE (push (INTERN TRACENAME) |$mathTraceList|)) - (SETQ LETFUNCODE `(SETQ |$currentFunction| ,(MKQ FN))) - (SETQ BEFORE - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'BEFORE)) - `(progn ,(CADR U) ,LETFUNCODE) - LETFUNCODE))) - (T (SETQ BEFORE - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'BEFORE)) - (CADR U))))) - (SETQ AFTER (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'AFTER)) (CADR U))) - (SETQ CALLER (/GETTRACEOPTIONS OPTIONS 'CALLER)) - (SETQ FROM_CONDITION - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'FROM)) - (LIST 'EQ '|#9| (LIST 'QUOTE (CADR U))) - T)) - (SETQ CONDITION - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'WHEN)) (CADR U) T)) - (SETQ WITHIN_CONDITION T) - (COND ((SETQ U (/GETTRACEOPTIONS OPTIONS 'WITHIN)) - (SETQ G (INTERN (STRCONC (PNAME FN) "/" (PNAME (CADR U))))) - (SET G 0) - (/TRACE-1 - (LIST (CADR U)) - `((WHEN NIL) - (BEFORE (SETQ ,G (1+ ,G))) - (AFTER (SETQ ,G (1- ,G))))) - (SETQ WITHIN_CONDITION `(> ,G 0)))) - (SETQ COUNTNAM - (AND (/GETTRACEOPTIONS OPTIONS 'COUNT) - (INTERN (STRCONC TRACENAME ",COUNT"))) ) - (SETQ COUNT_CONDITION - (COND ((SETQ U (/GETTRACEOPTIONS OPTIONS 'COUNT)) - (SETQ /COUNTLIST (adjoin TRACENAME /COUNTLIST - :test 'equal)) - (if (AND (CDR U) (integerp (CADR U))) - `(cond ((<= ,COUNTNAM ,(CADR U)) t) - (t (/UNTRACE-2 ,(MKQ FN) NIL) NIL)) - t)) - (T T))) - (AND (/GETTRACEOPTIONS OPTIONS 'TIMER) - (SETQ TIMERNAM (INTERN (STRCONC TRACENAME ",TIMER"))) - (SETQ /TIMERLIST (adjoin TRACENAME /TIMERLIST :test 'equal))) - (SETQ DEPTH_CONDITION - (if (SETQ U (/GETTRACEOPTIONS OPTIONS 'DEPTH)) - (if (AND (CDR U) (integerp (CADR U))) - (LIST 'LE 'FUNDEPTH (CADR U)) - (TRACE_OPTION_ERROR 'DEPTH)) - T)) - (SETQ CONDITION - (MKPF - (LIST CONDITION WITHIN_CONDITION FROM_CONDITION COUNT_CONDITION - DEPTH_CONDITION ) - 'AND)) - (SETQ ONLYS (/GETTRACEOPTIONS OPTIONS 'ONLY)) - - ;TRACECODE meaning: - ; 0: Caller (0,1) print caller if 1 - ; 1: Value (0,1) print value if 1 - ; 2...: Arguments (0,...,9) stop if 0; print ith if i; all if 9 - (SETQ TRACECODE - (if (/GETTRACEOPTIONS OPTIONS 'NT) "000" - (PROG (F A V C NL BUF) - (SETQ ONLYS (MAPCAR #'COND-UCASE ONLYS)) - (SETQ F (OR (member 'F ONLYS :test #'eq) - (member 'FULL ONLYS :test #'eq))) - (SETQ A (OR F (member 'A ONLYS :test #'eq) - (member 'ARGS ONLYS :test #'eq))) - (SETQ V (OR F (member 'V ONLYS :test #'eq) - (member 'VALUE ONLYS :test #'eq))) - (SETQ C (OR F (member 'C ONLYS :test #'eq) - (member 'CALLER ONLYS :test #'eq))) - (SETQ NL - (if A '(#\9) - (mapcan #'(lambda (X) - (if (AND (INTEGERP X) - (> X 0) - (< X 9)) - (LIST (FETCHCHAR (STRINGIMAGE X) 0)))) - onlys))) - (if (NOT (OR A V C NL)) - (if Caller (return "119") (return "019"))) - (SETQ NL (APPEND NL '(\0))) - (SETQ BUF (GETSTR 12)) - (SUFFIX (if (or C Caller) #\1 #\0) BUF) - (SUFFIX (if V #\1 #\0) BUF) - (if A (suffix #\9 BUF) - (mapcar #'(lambda (x) (suffix x BUF)) NL)) - (RETURN BUF)))) - (/MONITOR FN TRACECODE BEFORE AFTER CONDITION TIMERNAM - COUNTNAM TRACENAME BREAK ))) - (DEFUN OPTIONS2UC (L) (COND ((NOT L) NIL) ((ATOM (CAR L)) @@ -4843,78 +4375,6 @@ EXAMINE (SETQ RECNO (NOTE INPUTSTREAM)) ((EQ (CAR X) '/) X) ((TRACEOPTIONS (CDR X))))) -(defmacro |/untrace| (&rest L) `', (/UNTRACE-0 L)) - -(defmacro /UNTRACE (&rest L) `', (/UNTRACE-0 L)) - -(defmacro /U (&rest L) `', (/UNTRACE-0 L)) - -(DEFUN /UNTRACE-0 (L) - (PROG (OPTIONL OPTIONS FNL) - (if (member '? L :test #'eq) (RETURN (OBEY "EXEC NORMEDIT TRACE TELL"))) - (SETQ OPTIONL (/OPTIONS L)) - (SETQ FNL (TRUNCLIST L OPTIONL)) - (SETQ OPTIONS (if OPTIONL (CAR OPTIONL))) - (RETURN (/UNTRACE-1 FNL OPTIONS)))) - -(define-function '|/UNTRACE,0| #'/UNTRACE-0) - -(defun /UNTRACE-1 (L OPTIONS) - (cond - ((NOT L) - (if (ATOM /TRACENAMES) - NIL - (mapcar #'(lambda (u) (/UNTRACE-2 (/UNTRACE-REDUCE U) OPTIONS)) - (APPEND /TRACENAMES NIL)))) - ((mapcar #'(lambda (x) (/UNTRACE-2 X OPTIONS)) L))) - (/TRACEREPLY)) - -(DEFUN /UNTRACE-REDUCE (X) (if (ATOM X) X (first X))) ; (CAR X) is now a domain - -(DEFUN /UNTRACE-2 (X OPTIONS) - (let (u y) - (COND ((AND (|isFunctor| X) (ATOM X)) - (|untraceDomainConstructor| X)) - ((OR (|isDomainOrPackage| (SETQ U X)) - (and (symbolp X) (boundp X) - (|isDomain| (SETQ U (EVAL X))))) - (|spadUntrace| U OPTIONS)) - ((EQCAR OPTIONS 'ALIAS) - (if |$traceNoisely| - (|sayBrightly| (LIST '|%b| (CADR OPTIONS) '|%d| '**untraced))) - (SETQ /TIMERLIST - (REMOVE (STRINGIMAGE (CADR OPTIONS)) /TIMERLIST :test 'equal)) - (SETQ /COUNTLIST - (REMOVE (STRINGIMAGE (CADR OPTIONS)) /COUNTLIST :test 'equal)) - (SETQ |$mathTraceList| - (REMOVE (CADR OPTIONS) |$mathTraceList| :test 'equal)) - (UNEMBED X)) - ((AND (NOT (MEMBER X /TRACENAMES)) - (NOT (|isSubForRedundantMapName| X))) - (|sayBrightly| - (LIST - '|%b| - (|rassocSub| X |$mapSubNameAlist|) - '|%d| - "not traced"))) - (T (SETQ /TRACENAMES (REMOVE X /TRACENAMES :test 'equal)) - (SETQ |$mathTraceList| - (REMOVE (if (STRINGP X) (INTERN X) X) |$mathTraceList|)) - (SETQ |$letAssoc| (DELASC X |$letAssoc|)) - (setq Y (if (IS_GENVAR X) (|devaluate| (EVAL X)) X)) - (SETQ /TIMERLIST (REMOVE (STRINGIMAGE Y) /TIMERLIST :test 'equal)) - (SET (INTERN (STRCONC Y ",TIMER")) 0) - (SETQ /COUNTLIST (REMOVE (STRINGIMAGE Y) /COUNTLIST :test 'equal)) - (SET (INTERN (STRCONC Y ",COUNT")) 0) - (COND ((AND |$traceNoisely| (NOT (|isSubForRedundantMapName| Y))) - (|sayBrightly| - (LIST '|%b| (|rassocSub| Y |$mapSubNameAlist|) - '|%d| "untraced")))) - (UNEMBED X))))) - - ;; the following is called by |clearCache| -(define-function '/UNTRACE\,2 #'/UNTRACE-2) - (DEFUN MONITOR-PRINVALUE (VAL NAME) (let (u) (COND ((setq U (GET NAME '/TRANSFORM)) @@ -5044,223 +4504,6 @@ EXAMINE (SETQ RECNO (NOTE INPUTSTREAM)) ((AND (SETQ N (SMALL-ENOUGH-COUNT (CAR X) (1+ N) M)) (SMALL-ENOUGH-COUNT (CDR X) N M))))) -(DEFUN /OPTIONS (X) - (COND ((ATOM X) NIL) - ((OR (ATOM (CAR X)) (|isFunctor| (CAAR X))) (/OPTIONS (CDR X))) - (X))) - -(DEFUN /GETOPTION (L OPT) (KDR (/GETTRACEOPTIONS L OPT))) - -(DEFUN /GETTRACEOPTIONS (L OPT) - (COND ((ATOM L) NIL) - ((EQ (KAR (CAR L)) OPT) (CAR L)) - ((/GETTRACEOPTIONS (CDR L) OPT)))) - -(DEFMACRO /TRACELET (&rest L) `', - (PROG (OPTIONL FNL) - (if (member '? L :test #'eq) - (RETURN (OBEY (if (EQ (SYSID) 1) - "EXEC NORMEDIT TRACELET TELL" - "$COPY AZ8F:TRLET.TELL")) )) - (SETQ OPTIONL (/OPTIONS L)) - (SETQ FNL (TRUNCLIST L OPTIONL)) - (RETURN (/TRACELET-1 FNL OPTIONL)))) - -(DEFUN /TRACELET-1 (FNLIST OPTIONL) - (mapcar #'(lambda (x) (/tracelet-2 x optionl)) fnlist) - (/TRACE-1 FNLIST OPTIONL) - (TRACELETREPLY)) - -(DEFUN TRACELETREPLY () - (if (ATOM /TRACELETNAMES) '(none tracelet) - (APPEND /TRACELETNAMES (LIST 'tracelet)))) - -(DEFUN /TRACELET-2 (FN OPTIONL &AUX ($TRACELETFLAG T)) - (/D-1 (CONS FN OPTIONL) 'COMP NIL NIL) - (SETQ /TRACELETNAMES - (if (ATOM /TRACELETNAMES) (LIST FN) (CONS FN /TRACELETNAMES))) - FN) - -(defmacro /TRACE-LET (A B) - `(PROG1 (SPADLET ,A ,B) - . ,(mapcar #'(lambda (x) `(/tracelet-print ',x ,x)) - (if (ATOM A) (LIST A) A)))) - -(defun /TRACELET-PRINT (X Y &AUX (/PRETTY 'T)) - (PRINC (STRCONC (PNAME X) ": ") *terminal-io*) - (MONITOR-PRINT Y *terminal-io*)) - -(defmacro /UNTRACELET (&rest L) `', - (COND - ((NOT L) - (if (ATOM /TRACELETNAMES) NIL (EVAL (CONS '/UNTRACELET /TRACELETNAMES)))) - ((mapcar #'/untracelet-1 L)) - ((TRACELETREPLY)))) - -(DEFUN /UNTRACELET-1 (X) - (COND - ((NOT (MEMBER X /TRACELETNAMES)) - (PROGN (PRINT (STRCONC (PNAME X) " not tracelet")) (TERPRI))) - ((PROGN - (/UNTRACELET-2 X) - (/D-1 (LIST X) 'COMP NIL NIL))))) - -(DEFUN /UNTRACELET-2 (X) - (SETQ /TRACELETNAMES (REMOVE X /TRACELETNAMES)) - (PRINT (STRCONC (PNAME X) " untracelet")) (TERPRI)) - -(defmacro /EMBED (&rest L) `', - (COND ((NOT L) (/EMBEDREPLY)) - ((member '? L :test #'eq) (OBEY "EXEC NORMEDIT EMBED TELL")) - ((EQ 2 (LENGTH L)) (/EMBED-1 (CAR L) (CADR L))) - ((MOAN "IMPROPER USE OF /EMBED")))) - -(defmacro /UNEMBED (&rest L) `', - (COND ((NOT L) - (if (ATOM (EMBEDDED)) NIL - (mapcar #'unembed (embedded))) - (SETQ /TRACENAMES NIL) - (SETQ /EMBEDNAMES NIL)) - ((mapcar #'/unembed-1 L) - (SETQ /TRACENAMES (S- /TRACENAMES L)) )) - (/EMBEDREPLY)) - -(defun /UNEMBED-Q (X) - (COND - ((NOT (MEMBER X /EMBEDNAMES)) - (ERROR (STRCONC (PNAME X) " not embeded"))) - ((PROGN - (SETQ /EMBEDNAMES (REMOVE X /EMBEDNAMES)) - (UNEMBED X))))) - -(defun /UNEMBED-1 (X) - (COND - ((NOT (MEMBER X /EMBEDNAMES)) - (|sayBrightly| (LIST '|%b| (PNAME X) '|%d| "not embeded" '|%l|))) - ((PROGN - (SETQ /EMBEDNAMES (REMOVE X /EMBEDNAMES)) - (|sayBrightly| (LIST '|%b| (PNAME X) '|%d| "unembeded" '|%l|)) - (UNEMBED X))) )) - - - -(defun /MONITOR (&rest G5) - (PROG (G1 G4 TRACECODE BEFORE AFTER CONDITION - TIMERNAM COUNTNAM TRACENAME BREAK) - (dcq (G1 TRACECODE BEFORE AFTER CONDITION TIMERNAM COUNTNAM TRACENAME BREAK) G5) - (SETQ G4 (macro-function G1)) - (SETQ TRACECODE (OR TRACECODE "119")) - (if COUNTNAM (SET COUNTNAM 0)) - (if TIMERNAM (SET TIMERNAM 0)) - (EMBED - G1 - (LIST - (if G4 'MLAMBDA 'LAMBDA) - '(&rest G6) - (LIST - '/MONITORX - (QUOTE G6) - G1 - (LIST - 'QUOTE - (LIST - TRACENAME (if G4 'MACRO) TRACECODE - COUNTNAM TIMERNAM BEFORE AFTER - CONDITION BREAK |$tracedModemap| ''T))))) - (RETURN G1))) - -(defun /MONITORX (/ARGS FUNCT OPTS &AUX NAME TYPE TRACECODE COUNTNAM TIMERNAM - BEFORE AFTER CONDITION BREAK TRACEDMODEMAP - BREAKCONDITION) - (declare (special /ARGS)) - (DCQ (NAME TYPE TRACECODE COUNTNAM TIMERNAM BEFORE AFTER CONDITION BREAK TRACEDMODEMAP BREAKCONDITION) OPTS) - (|stopTimer|) - (PROG (C V A NAME1 CURSTRM EVAL_TIME INIT_TIME NOT_TOP_LEVEL - (/DEPTH (if (and (BOUNDP '/DEPTH) (numberp /depth)) (1+ /DEPTH) 1)) - (|depthAlist| (if (BOUNDP '|depthAlist|) (COPY-TREE |depthAlist|) NIL)) - FUNDEPTH NAMEID YES (|$tracedSpadModemap| TRACEDMODEMAP) (|$mathTrace| NIL) - /caller /name /value /breakcondition curdepth) - (declare (special curstrm /depth fundepth |$tracedSpadModemap| |$mathTrace| - /caller /name /value /breakcondition |depthAlist|)) - (SETQ /NAME NAME) - (SETQ NAME1 (PNAME (|rassocSub| (INTERN NAME) |$mapSubNameAlist|))) - (SETQ /BREAKCONDITION BREAKCONDITION) - (SETQ /CALLER (|rassocSub| (WHOCALLED 6) |$mapSubNameAlist|)) - (if (NOT (STRINGP TRACECODE)) - (MOAN "set TRACECODE to \'1911\' and restart")) - (SETQ C (digit-char-p (elt TRACECODE 0)) - V (digit-char-p (elt TRACECODE 1)) - A (digit-char-p (elt TRACECODE 2))) - (if COUNTNAM (SET COUNTNAM (1+ (EVAL COUNTNAM)))) - (SETQ NAMEID (INTERN NAME)) - (SETQ NOT_TOP_LEVEL (ASSOC NAMEID |depthAlist| :test #'eq)) - (if (NOT NOT_TOP_LEVEL) - (SETQ |depthAlist| (CONS (CONS NAMEID 1) |depthAlist|)) - (RPLACD NOT_TOP_LEVEL (1+ (CDR NOT_TOP_LEVEL)))) - (SETQ FUNDEPTH (CDR (ASSOC NAMEID |depthAlist| :test #'eq))) - (SETQ CONDITION (MONITOR-EVALTRAN CONDITION NIL)) - (SETQ YES (EVALFUN CONDITION)) - (if (member NAMEID |$mathTraceList| :test #'eq) - (SETQ |$mathTrace| T)) - (if (AND YES |$TraceFlag|) - (PROG (|$TraceFlag|) - (SETQ CURSTRM *TERMINAL-IO*) - (if (EQUAL TRACECODE "000") (RETURN NIL)) - (TAB 0 CURSTRM) - (MONITOR-BLANKS (1- /DEPTH)) - (PRIN0 FUNDEPTH CURSTRM) - (|sayBrightlyNT| (LIST "exit " '|%b| NAME1 '|%d|) CURSTRM) - (COND (TIMERNAM - (|sayBrightlyNT| '\( CURSTRM) - (|sayBrightlyNT| (/ EVAL_TIME 60.0) CURSTRM) - (|sayBrightlyNT| '\ sec\) CURSTRM) )) - (if (EQ 1 V) - (MONITOR-PRINVALUE - (|coerceTraceFunValue2E| - (INTERN NAME1) (INTERN NAME) /VALUE) - (INTERN NAME1))) - (if (NOT |$mathTrace|) (TERPRI CURSTRM)) - SKIP)) - (if (member '|after| BREAK :test #'eq) - (|break| (LIST "Break on exiting" '|%b| NAME1 '|%d| ":"))) - (|startTimer|) - (RETURN /VALUE))) - ; Functions to run a timer for tracing ; It avoids timing the tracing function itself by turning the timer ; on and off @@ -6872,7 +6115,6 @@ o there is some code at the end of SPECEVAL BOOT that puts "up" (defmacro |car| (x) `(car ,x)) (defmacro |cdr| (x) `(cdr ,x)) - \end{chunk} \eject \begin{thebibliography}{99} -- 1.7.5.4