REXX Tips & Tricks, Version 2.80


Inf-HTML [About][Toc][Index] 0.9b (c) 1995 Peter Childs


Creating a token image


The OS/2 REXX interpreter stores a tokenized copy of each executed REXX 
program in the EAs of the program. Before executing a REXX program, the 
interpreter first checks if the tokenized copy in the EAs is still valid 
and, if so, executes the tokenized copy and ignores the source code. In 
this case no new tokenizing is necessary. 
Because the length of the EAs is limited to 64 KB, it is useful to avoid 
token images greater than 64 KB for often-used REXX programs. 
To get the length of the token image of your REXX program use the 
following OS/2 commands: 

 
  REM --- delete all existing EAs
  eautil REXXProgram nul /s
  REM --- create the token image
  REXXProgram //t
  REM --- write the length of the EAs
  REM     (=token image) to STDOUT
  dir REXXProgram /n

The length of the token image is the second size shown by the dir command. 
If this value is 0, either the token image of your REXX program is greater 
than 64 KB or the program has not token image (practically the only time 
the latter would be true would be if the REXX program has never been run 
before). In this case you should split your REXX program into two or more 
smaller programs. 
If you're using Object-Oriented REXX ignore the above. Instead, use the 
program REXXC from Object REXX to create a token image of your REXX 
programs. REXXC saves the token image in a file and not in the EAs. 
Therefore there is no 64 K limit using this method. (see also "Compiling" 
REXX programs) 

Note:  The CMD replacement 4OS2/32 (v2.0 ... v2.5b)  shows an invalid size 
       for the EAs of a file if they are using more than 32,767 bytes. 
   

Inf-HTML End Run - Successful