[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.11.3 Collection

57D90 SYMCOLCT ( symf → symf )
:: uncrunch colct ;
57DA4 (colct) ( symf → symf )
Basic collection function, does not check numeric results flag. Disassembly:
:: EXPLODE
pshzer colfac
pshzer colrev
ATTNFLG@ #0<> case
:: CKSYMBN CK0NOLASTWD
?ATTNQUIT ;
pshzer colunfac
SYMN COLA coleval
;
--
Flags: -3
587AA (colfac) ( meta1 meta2 → meta' )
Appends objects in meta2 tail to meta1 tail replacing all -, /, NEG, INV and SQ with +, *, ^, and -1 as a possible factor. Example rules:
'SQ(A)' 'A^2'
'-A' '-1*A'
'A-B' 'A+-1*b'
'A/B' 'A*B^-1'
57E08 (colrev) ( meta1 meta2 → meta' )
Appends objects in meta2 to tail of meta1 collecting numeric factors, ordering terms according to a comparison function, collecting numeric terms to front. Only + and * factors are checked. Sub-routines used by this function:
58511 (MetaLess?) ( meta1 meta2 → meta1 meta2 flag )
58525 (MetaMore?) ( meta1 meta2 → meta1 meta2 flag )
585A7 (BodyMore?) ( ob1 ob2 → flag )
58A20 (colunfac) ( meta1 meta2 → meta' )
Appends objects in meta2 to head of meta1 converting ^, + and * to / and - when suitable.
58CDA (coleval) ( ob → ob' )
Passes FALSE as parameter to parameval. Thus eval uses ?COLCT to check special evaluation.



This document was generated by Carsten Dominik on May, 30 2005 using texi2html