/* Copyright (C) 1993 by Thomas Glen Smith. All Rights Reserved. */ /* funstat.h - APL2 V1.0.0 ********************************************* * These static structures contain desciptions of APL functions. * * They're included in funinit.c. * ***********************************************************************/ #if !defined(FUNSTAT_INCL) #define FUNSTAT_INCL #if !defined(HUGE_VAL) #define HUGE_VAL 1.797693134862315e+308 #endif /* funky_code */ /* | funky_flags */ /* | | identities.iid */ /* | | | identities.did */ /* | | | | 1 = selective */ /* | | | | | specification */ /* | | | | | functions. */ /* | | | | | */ /* V V V V V */ static Scalars x01 = {QUOTE_DOT , SCMD, 0, 0.1}; /* 0 */ static Scalars x02 = {DIVIDE , SCMD, 1, 1.0}; /* 0 */ static Rela x03 = {AND , SCDO, 1, 1.0}; /* 0 */ static Scalars x04 = {STAR , SCMD, 1, 1.0}; /* 0 */ static Scalars x05 = {PLUS , SCMD, 0, 0.0}; /* 0 */ static Mixa x06 = {COMMA , MIXC }; /* 1=ravel, 0=catenate, 0=laminate */ static Rela x07 = {LESS , SCDO, 0, 0.0}; /* 0 */ static Eqne x08 = {EQUAL , EQNE, 1, 1.0}; /* 0 equality */ static Rela x09 = {GREATER , SCDO, 0, 0.0}; /* 0 */ static Msmd x10 = {QUERY , MSMD }; /* 0 roll/deal */ static Scalars x11 = {LOG , SCMD, 0, 0.0}; /* 0 */ static Dmxo x12 = {DELTA_STILE, SAME }; /* 0 grade up, grade up */ static Dmxo x13 = {BASE , DYDB }; /* 0 decode (convert to dbl) */ static Mixa x14 = {BASE_NULL , MXMO }; /* 0 execute */ static Scalars x15 = {DOWNSTILE , SCMD, INT_MAX, HUGE_VAL}; /* 0 */ static Mixa x16 = {EPSILON , MIXD }; /* 1=enlist, 0=member */ static Mixa x17 = {TOP_NULL , MIXD }; /* 0 formdft, format */ static Mixa x18 = {IOTA , MIXD }; /* 0 interval, index of */ static Rela x19 = {NOT_GREATER, SCDO, 1, 1.0}; /* 0 */ static Mixa x20 = {DOMINO , MIXD }; /* 0 matrix inverse, divide */ static Dmxo x21 = {TOP , DYDB }; /* 0 encode */ static Scalars x22 = {CIRCLE , SCMD, 0, 0.0}; /* 0 pi times, circular */ static Rela x23 = {NAND , SCDO, 0, 0.0}; /* 0 nand */ static Mixa x24 = {RHO , MIXD }; /* 0=shape, 1=reshape */ static Scalars x25 = {UPSTILE , SCMD, -INT_MAX, -HUGE_VAL}; /* 0 ceiling, maximum */ static Dmxo x26 = {CIRCLE_SLOPE,SAME }; /* 1 transpose, transpose */ static Dmxo x27 = {DOWN_ARROW , DIXE }; /* 1 drop2 */ static Rela x28 = {OR , SCDO, 0, 0.0}; /* 0 or */ static Dmxo x29 = {DEL_STILE , SAME }; /* 0 grade down, grade down */ static Scalars x30 = {TIMES , SCMD, 1, 1.0}; /* 0 direction, multiply */ static Mixa x31 = {UP_ARROW , UPAR }; /* 1 first, take */ static Rela x32 = {NOT_LESS , SCDO, 1, 1.0}; /* 0 */ static Eqne x33 = {NOT_EQUAL , EQNE, 0, 0.0}; /* 0 not equal */ static Scalars x34 = {BAR , SCMD, 0, 0.0}; /* 0 negative, subtract */ static Mixa x35 = {CIRCLE_STILE,MIXL }; /* 1 reverse, rotate */ static Mixa x36 = {CIRCLE_BAR , MIXF }; /* 1 reverse, rotate */ static Rela x37 = {NOR , SCDO, 0, 0.0}; /* 0 nor */ static Mixa x38 = {RIGHT_SHOE , MIXG }; /* 0=disclose, 1=pick */ static Mixa x39 = {LEFT_SHOE , MIXE }; /* 0 enclose, partition */ static Scalars x40 = {STILE , SCMD, 0, 0.0}; /* 0 magnitude, residue */ static Msmd x41 = {TILDE , MSMD }; /* 0 not, without */ static Mixa x42 = {EQUAL_UNDERBAR,MIXD }; /* 0 depth, match */ static Dmxo x43 = {EPSILON_UNDERBAR,DYAE }; /* 0 find */ static Oper x44 = {SLASH , OPAL }; /* 1 compress */ static Oper x45 = {SLASH_BAR , OPAF }; /* 1 compress */ static Oper x46 = {SLOPE , OPAL }; /* 1 expand */ static Oper x47 = {SLOPE_BAR , OPAF }; /* 1 expand */ static Oper x48 = {DIERESIS , OPER }; /* 1 each */ static Oper x49 = {DOT , OPER }; /* 0 inner/outer product */ static Oper x50 = {APL_NULL , OPER }; /* 0 outer product (jot) */ static Dmxo x51 = {SQUAD , DIXS }; /* 1 index */ static Dmxo x52 = {QUAD_EA , DYAE }; /* 0 Execute alternate */ static Scalars x53 = {LOGAMMA , SCMD, 0, 0.0}; /* Ln(gamma(z)) */ #endif