Within an ESL program, you can determine how many bytes of memory are available for the program's use at any given time. If memory drops below a specified minimum, you can eliminate memory fragmentation, thus freeing more memory. The ESL statements used to handle memory are shown in the following table.
| Statement | Purpose | 
| Built-in function that returns the size of the largest available block of free memory. | |
| Action statement that specifies the minimum amount of memory required during the execution of the program. Determines when the response to low memory is triggered. | |
| Action statement that eliminates fragmentation. | |
| Response statement that is automatically triggered when available memory has fallen below the specified threshold. | 
Generally, these statements are used in conjunction with each other. The squeeze memory action statement can take a few seconds to execute, so do not use it unless you have to. The following sections describe each statement in detail.