0546D |
SYMBN
|
( ob1..obn #n → sym )
|
54CEF |
(Cr)
|
ob1..obn #n -> symb
Does 'R , SWAP#1+ then <REF>SYMBN . Creates a
symbolic from the meta in the stack and the
next object in the runstream. This object is
added to the end of the symbolic.
|
055F3 |
(NULLSYMB)
|
( → sym )
Puts a null algebraic in the stack.
|
5E067 |
(SINNER)
|
( sym → meta )
( ob → ob #1 )
If the argument is a symbolic, does
INNERCOMP , otherwise ONE . Note that ob #1 is
a meta object with only one object.
|
5E30C |
(2SINNER)
|
( ob1 ob2 → meta1 meta2 )
SINNER for two objects.
|
5E2F8 |
(2SINNERtop&)
|
( ob1 ob2 → meta )
Does <REF>2SINNER then <REF>top& .
|
5E32A |
(SINNERMETA)
|
( meta → meta' )
Explodes each object in meta with SINNER and
merges the result with top& .
|
5F2A3 |
(EXPLODE)
|
( ob → meta )
Uses recursive calls to SINNER to explode
object.
|
5F2EE |
(IMPLODE)
|
( meta → ob )
Builds symbolic obeying VUNS properties
(UNSYM element), checking fcnapply, etc.
Does not build symbolic if result is a single
object valid in symbolics.
|
5E652 |
symcomp
|
( ob → ob' )
If ob is symbolic, does nothing, otherwise
ONE SYMBN .
|
5A01D |
SWAPcompSWAP
|
( ob ob' → ob" ob' )
Does SWAP symcomp SWAP .
|
5E085 |
(CKSYMBN)
|
( meta → ob )
If size is not one, does SYMBN , else DROPSYM .
|
5F384 |
(DROPSYM)
|
( ob1 ob2 → ob )
Drops ob2, if ob1 if symf does nothing, else
does ONESYMBN .
|
1CF2E |
(SPLITEQ)
|
( sym → arg1 arg2 )
Internal version of EQ→.
|
1CFD0 |
(EXPR>)
|
( sym → arg1..argn %n ob )
Internal version of OBJ→.
|
1578D |
CRUNCH
|
( ob → % )
Internal version of →NUM .
|
22F68 |
(SYMCRUNCH1)
|
( ob → % )
If id does <REF>XEQRCL , then does
<REF>CRUNCH for all object types.
|
22F86 |
(SYMCRUNCH2)
|
( ob1 ob2 → % ob2 )
<REF>SYMCRUNCH1 for the object in level two.
|
353AB |
(FINDVAR)
|
( sym → {} )
Returns a list of the variables of the
equation, recursing into programs and
functions in the equation.
|
5A036 |
uncrunch
|
( → )
Clears numeric results flag (system flag 3)
for the next command only. Example:
SYMCOLCT = :: uncrunch colct ;
--
Flags: -3
|
545A0 |
cknumdsptch1
|
( sym → symf )
Used by one argument functions to evaluate a
symbolic or numeric routine according to
numeric results flag. Usage:
:: cknumdsptch1 <sym> <num> ;
If numeric mode, CRUNCH is applied to the
level one object and COLA is applied to
<num>. If symbolic mode, ckseval1: is called.
Example:
:: cknumdsptch1 MetaRE xRE ;
--
Flags: -3
|
54DBC |
(ckseval1:)
|
( symf' → symf' )
Binds next two objects in the runstream to
LAMxSYMfcn and LAMxfnc. Explodes symf, then
evaluates next on Meta, then builds ob with
CKSYMBN . If symf is equation next is
evaluated on both sides, then equation is
rebuilt (ckevaleq1 ).
|
54E2A |
(ckevaleq1)
|
( meta&= → sym )
Evaluates 2LAM on both sides of equation,
rebuilds symbolic and abandons temporary
environment.
|
558DC |
sscknum2
|
( sym sym → symf )
Used by two argument functions to evaluate
function according to current numeric mode.
Usage: :: sscknum2 <sym> <num> ;
In numeric mode both arguments are CRUNCHed
and <num> is COLAd. Else, cksseval2: is
called. Example:
SYM+ = :: sncknum2 Meta+ x+ ;
|
558F5 |
sncknum2
|
( sym % → symf )
Usage: :: sncknum2 <sym> <num> ;
In symbolic mode uses cksneval2: .
Example:
SYM+O = :: sncknum2 Meta+Con x+ ;
|
5590E |
nscknum2
|
( % sym → symf )
Usage: :: nscknum2 <sym> <num> ;
In symbolic mode uses cknseval2:.
Example:
O+SYM = :: nscknum2 Con+Meta x+ ;
|
55657 |
(cknum2:)
|
( symf symf → symf )
Used by the three above functions to
determine (and possibly to CRUNCH ) the
program to COLA .
|
557EC |
(cksseval2:)
|
( sym sym → symf )
Binds next two objects in the runstream to
LAMxSYMfcn and LAMxfcn. Explodes the objects
in the stack, and evaluates next object in
the runstream. If either is an equation,
ckevaleq2 is called. Rebuilds one symbolic.
|
5576F |
(cksneval2:)
|
( sym % → symf )
Binds % and next two objects in the runstream
to LAMsc1, LAMxSYMfcn and LAMxfcn. Explodes
sym , evaluates LAMxSYMfnc, rebuilds symbolic.
If sym is equation, ckevaleq1 is called.
|
5575B |
(cknseval:)
|
( % sym → symf )
Does SWAP then <REF>cknseval2: .
|
58CE4 |
(parameval)
|
( sym param → ? )
Ensures sym is symbolic (using symcomp ), then
executes param on each element of symbolic.
param is bound to 1LAM during the loop. param
should return a flag. If TRUE , or if the
object in level 1 is not an operator the loop
continues, else possible COLCT property is
executed. (Better return TRUE always).
|
58CEE |
(eval)
|
( sym → ? )
Like <REF>parameval, but without binding of a
new param. Use this for recursive evaluation
with the same parameter. (See SHOWLS and
showparam for examples).
|
5918A |
(evalTRUE)
|
( sym → ? T )
Used for recursive parameval .
|