1 ;;; -*- Mode: Lisp; Package: Maxima; Syntax: Common-Lisp; Base: 10 -*- ;;;;
2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;;; The data in this file contains enhancements. ;;;;;
5 ;;; Copyright (c) 1984,1987 by William Schelter,University of Texas ;;;;;
6 ;;; All rights reserved ;;;;;
7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
9 ;;; If you see bogus or missing data here, please tell GJC or JPG. ;;;
10 ;;; (c) Copyright 1982 Massachusetts Institute of Technology ;;;
11 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
15 (macsyma-module trdata
)
17 ;;; N.B. This is some data. Boy, does it have subtle effect on the code
18 ;;; produced by TRANSLATE. It should be carefully checked and updated.
19 ;;; Since it is so small, and compiles so quickly it sometimes serves
20 ;;; as a fix (i.e. hack) file. so be careful.
22 ;;; MODEDECLARE(FUNCTION(LENGTH),FIXNUM)
24 ;;I think all this can be done at load time only:--wfs
26 (:load-toplevel
:execute
)
28 (mapc #'(lambda (x) (putprop x
'$fixnum
'function-mode
))
29 '($length $nterms $nroots $rank $polysign $time
32 ;;; Functions of BOOLEAN return VALUE. i.e. PREDICATES
34 (mapc #'(lambda (x) (putprop x
'$boolean
'function-mode
))
35 '($array $bfloatp $listp $matrixp $ratnump $constantp
36 $atom $freeof $subvarp $symbolp
37 $evenp $oddp $orderlessp $ordergreatp $mapatom
38 $integerp $floatnump $nonscalarp $numberp $ratp $member
41 ;;; MODEDECLARE(TRUE,BOOLEAN)
43 (mapc #'(lambda (x) (putprop x
'$boolean
'mode
))
44 '($true $false $doallmxops $domxmxops $doscmxops $detout
45 $dotassoc $dotdistrib $dotscrules $exponentialize
46 $keepfloat $listarith $logsimp
47 $maxapplyheight $maxapplydepth $maperror $powerdisp
48 $scalarmatrix $simp $ttyoff $underflow $infeval
49 $xaxis $yaxis $ratfac
))
51 (mapc #'(lambda (x) (putprop x t
'implied-quotep
))
52 '($eval $done $%i $%pi $%e $%phi $%gamma
53 mqapply
; important for array referencing conventions.
57 ;;; The result of a part function never needs simplification.
58 ;;; $CONS for example has the same property, although it
59 ;;; is not a "PART" function.
61 ;;; ELL has just shown a bug with FIRST and REST interaction with
62 ;;; DEFMATCH and MATCHDECLARE. The extra simplification needed
63 ;;; it seems. LIST mode must be implemented, until then the
64 ;;; cost of the extra SIMPLIFY call is not much compared with the
65 ;;; consing involved. Above all, we must have correct code !!!
67 (mapc #'(lambda (l) (putprop l t
'tr-nosimp
))
68 '($print $num $denom $lhs $rhs $part
69 $cons $reverse $endcons $append
70 $union $intersection $setdiff $symdiff
71 $mapset $predset |$
{| $elementof
)))