Preprocessors provide extended functionality to the PL/I language. They allow you to use: 
               	 
            
 
            	 
             
               		
               -  PL/I preprocessor statements and PL/I macros for conditional compilation, which leads to better code usability and maintainability.
                  
                  		
               
-  EXEC SQL statements to use relational databases managed by Oracle, IBM DB2 LUW, and SQL Server. 
                  		
               
-  EXEC CICS statements to access CICS system facilities, to run PL/I programs as CICS transaction programs. These programs
                  can also use EXEC SQL statements, and access IMS hierarchical databases by using EXEC DLI statements. 
                  		
               
-  PL/I programs running as IMS transaction programs, accessing IMS hierarchical databases by using EXEC DLI statements. These
                  programs can also use EXEC SQL statements. 
                  		
               
 These preprocessors generate native PL/I source that is then compiled by the PL/I compiler. Their use has no direct impact
               on execution performance of the PL/I programs.