1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-17 00:33:22 +00:00
PDP-10.its/src/transl/trdata.68
Eric Swenson 85994ed770 Added files to support building and running Macsyma.
Resolves #284.

Commented out uses of time-origin in maxtul; mcldmp (init) until we
can figure out why it gives arithmetic overflows under the emulators.

Updated the expect script statements in build_macsyma_portion to not
attempt to match expected strings, but simply sleep for some time
since in some cases the matching appears not to work.
2018-03-11 13:10:19 -07:00

87 lines
2.9 KiB
Common Lisp
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;;; -*- Mode: Lisp; Package: Macsyma -*-
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; If you see bogus or missing data here, please tell GJC or JPG. ;;;
;;; (c) Copyright 1982 Massachusetts Institute of Technology ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(macsyma-module trdata)
;;; N.B. This is some data. Boy, does it have subtle effect on the code
;;; produced by TRANSLATE. It should be carefully checked and updated.
;;; Since it is so small, and compiles so quickly it sometimes serves
;;; as a fix (i.e. hack) file. so be careful.
(TRANSL-MODULE TRDATA)
(EVAL-WHEN (COMPILE)
(SETQ *DEF%TR-PRODUCES-AUTOLOAD-FILE* NIL))
;; this should go someplace else perhaps.
(DEF-AUTOLOAD-TRANSLATE $romberg $interpolate)
;;; MODEDECLARE(FUNCTION(LENGTH),FIXNUM)
(MAPC '(LAMBDA (X) (PUTPROP X '$FIXNUM 'FUNCTION-MODE))
'($LENGTH $NTERMS RANDOM $NROOTS $RANK $POLYSIGN $TIME
$ARRAY_DIMENSION_N))
;;; MODEDECLARE(FUNCTION(ROMBERG_SUBR),FLOAT)
;;; ROMBERG is a macsyma macro.
(MAPC '(LAMBDA (X) (PUTPROP X '$FLOAT 'FUNCTION-MODE))
'($ROMBERG_SUBR $INTERPOLATE_SUBR))
;;; Functions of BOOLEAN return VALUE. i.e. PREDICATES
(MAPC '(LAMBDA (X) (PUTPROP X '$BOOLEAN 'FUNCTION-MODE))
'($ARRAY $BFLOATP $LISTP $MATRIXP $RATNUMP $CONSTANTP
$ATOM $FREEOF $subvarp $SYMBOLP
$evenp $oddp $orderlessp $ordergreatp $mapatom
$INTEGERP $FLOATNUMP $NONSCALARP $NUMBERP $RATP $MEMBER
$EMPTYP))
;;; MODEDECLARE(TRUE,BOOLEAN)
(MAPC '(LAMBDA (X) (PUTPROP X '$BOOLEAN 'MODE))
'($TRUE $FALSE $DOALLMXOPS $DOMXMXOPS $DOSCMXOPS $DETOUT
$DOTASSOC $DOTDISTRIB $DOTSCRULES $EXPONENTIALIZE
$KEEPFLOAT $LISTARITH $LOGSIMP
$MAXAPPLYHEIGHT $MAXAPPLYDEPTH $MAPERROR $POWERDISP
$SCALARMATRIX $SIMP $TTYOFF $UNDERFLOW $INFEVAL
$XAXIS $YAXIS $RATFAC))
(MAPC '(LAMBDA (X) (PUTPROP X (STRIPDOLLAR X) 'LISP-FUNCTION-TO-USE))
'(%LOG %SIN %COS %TAN %COT %CSC %SEC %ACOT
%ASIN %ACOS %ACSC %ASEC
%SINH %COSH %TANH %COTH %CSCH %SECH %ASINH %ACSCH %ERF))
(MAPC '(LAMBDA (X) (PUTPROP X T 'IMPLIED-QUOTEP))
'($EVAL $DONE $%I $%PI $%E $%PHI $%GAMMA
MQAPPLY ; important for array referencing conventions.
))
;;; The result of a part function never needs simplification.
;;; $CONS for example has the same property, although it
;;; is not a "PART" function.
;;; ELL has just shown a bug with FIRST and REST interaction with
;;; DEFMATCH and MATCHDECLARE. The extra simplification needed
;;; it seems. LIST mode must be implemented, untill then the
;;; cost of the extra SIMPLFY call is not much compared with the
;;; consing involved. Above all, we must have correct code !!!
(MAPC '(LAMBDA (L) (PUTPROP L t 'TR-NOSIMP))
'(;$FIRST $REST $LAST
$PRINT
$NUM $DENOM $LHS $RHS $PART
$CONS $REVERSE $ENDCONS $APPEND
$UNION $INTERSECTION $SETDIFF $SYMDIFF
$MAPSET $PREDSET |${| $ELEMENTOF
))
(DEFPROP $REALPART $REALPART LISP-FUNCTION-TO-USE)