# Glossary

## An Implementation of J

An explanation is provided for significant names in the system. Names spelled with majuscules denote defined types (typedef) or #define constants and macros; those spelled with minuscules denote C functions and variables.

Each entry has a name, its frequency of occurrence, and a brief description.

```A B        1157         The data type of an array; the data type of BOX array elements <<BR>>
a          1883         The left argument of a verb <<BR>>
a0j1          9         The complex atom 0j1
ainf         14         The floating point atom _
AN(x)       759         The n part of an array (the number of atoms in the value part)
apv(n,b,m)   96         The arithmetic progression vector b+m*i.n
AN(x)       759         The n part of an array; the number of atoms in the value part
AR(x)       581         The r part of an array; the rank of an array
AS(x)       477         The s part of an array; the shape of an array
ASSERT(p,e) 822         Signal error e if proposition p is not true
AT(x)       733         The t part of an array; the type of an array
B           706         The data type of B01 array elements
B01         160         The type of a Boolean array
bp(t)        92         The number of bytes per atom of type t
C           566         The data type of LIT array elements
cstr(s)      93         A string with value the characters in the 0-terminated string s
DO(n,stmt)  905         Execute n times the statement stmt, with local variable i running from 0 to n-1
EPILOG(x)    82         Free all temporary storage used since the last PROLOG, then return x as a result
F2(f)       326         Define f as a dyadic verb or a conjunction
GA(t,n,r,s) 583         Create an array of type t of rank r and shape s, with n atoms
I          1537         The data type in C of a full-word integer
iv0          17         ,2-2, the integer vector 0
iv1          18         ,2-1, the integer vector 1
jt         2557         Points to a structure of all the global variables for a J instance
LIT         566         The type of a literal (character) array (CHAR conflicts with C usage)
mtm          44         The empty matrix i.0 0
mtv          73         The empty vector i.0
neg1         22         The integer atom _1
one          98         The Boolean atom 1
pie           5         The floating point atom p (pi conflicts with C usage)
PROLOG       85         Establish a checkpoint for temporary storage usage
RE(x)       220         Return 0 if an error is signalled in executing x
RZ(x)      1537         Return 0 if x is 0
sc(k)       217         An integer atom with value k (equivalent to sc4(INT,k))
sc4(t,k)      5         An atom of type t with 4-byte value k
scc(c)       17         A literal atom with value c
scf(x)       26         A floating point atom with value x
str(n,s)     52         A string (literal list) of length n with value the characters pointed to by s
two          24         The integer atom 2
v1(k)        15         The integer vector ,k
v2(a,b)      72         The integer vector a,b
vec(t,n,v)   81         A vector of length n of type t, with values pointed to by v
vi(x)        45         "Verify integer", convert x to integer
w          3207         The right argument of a verb
zero        129         The Boolean atom 0```