1 ;;; -*- Mode: Lisp; Package: Maxima; Syntax: Common-Lisp; Base: 10 -*- ;;;;
2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;;; The data in this file contains enhancments. ;;;;;
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
27 #-gcl
(:load-toplevel
:execute
)
29 (mapc #'(lambda (x) (putprop x
'$fixnum
'function-mode
))
30 '($length $nterms $nroots $rank $polysign $time
33 ;;; Functions of BOOLEAN return VALUE. i.e. PREDICATES
35 (mapc #'(lambda (x) (putprop x
'$boolean
'function-mode
))
36 '($array $bfloatp $listp $matrixp $ratnump $constantp
37 $atom $freeof $subvarp $symbolp
38 $evenp $oddp $orderlessp $ordergreatp $mapatom
39 $integerp $floatnump $nonscalarp $numberp $ratp $member
42 ;;; MODEDECLARE(TRUE,BOOLEAN)
44 (mapc #'(lambda (x) (putprop x
'$boolean
'mode
))
45 '($true $false $doallmxops $domxmxops $doscmxops $detout
46 $dotassoc $dotdistrib $dotscrules $exponentialize
47 $keepfloat $listarith $logsimp
48 $maxapplyheight $maxapplydepth $maperror $powerdisp
49 $scalarmatrix $simp $ttyoff $underflow $infeval
50 $xaxis $yaxis $ratfac
))
52 (mapc #'(lambda (x) (putprop x t
'implied-quotep
))
53 '($eval $done $%i $%pi $%e $%phi $%gamma
54 mqapply
; important for array referencing conventions.
58 ;;; The result of a part function never needs simplification.
59 ;;; $CONS for example has the same property, although it
60 ;;; is not a "PART" function.
62 ;;; ELL has just shown a bug with FIRST and REST interaction with
63 ;;; DEFMATCH and MATCHDECLARE. The extra simplification needed
64 ;;; it seems. LIST mode must be implemented, until then the
65 ;;; cost of the extra SIMPLFY call is not much compared with the
66 ;;; consing involved. Above all, we must have correct code !!!
68 (mapc #'(lambda (l) (putprop l t
'tr-nosimp
))
69 '($print $num $denom $lhs $rhs $part
70 $cons $reverse $endcons $append
71 $union $intersection $setdiff $symdiff
72 $mapset $predset |$
{| $elementof
)))