360D-03.8.013 
PL/I STRING FUNCTIONS 

AUTHOR: P. LACOUTURE 

DIRECT TECHNICAL INQUIRIES TO:
 
          TECHNICAL ASSISTANCE 
          CURRENTLY NOT AVAILABLE. 

DESCRIPTION - PL/I ALLOWS THE PROGRAMMER TO MANIPULATE 
CHARACTER STRING DATA WITH A GREAT DEAL OF FLEXIBILITY. 
THE OPERATOR, ||, AND THE BUILT IN FUNCTIONS INDEX, SUBSTR, 
AND LENGTH PROVIDE A MEANS FOR SCANNING, PREPARING, AND 
PARSING TEXT. WHILE THESE PUNCTIONS ARE SUFFICIENT TO 
PERFORM ALMOST ANY CHARACTER STRING MANIPULATIONS THE 
PROGRAMMER DESIRES, THEY MUST OFTEN BE CALLED REPEATEDLY 
TO ACHIEVE THE DESIRED EFFECT. THE STRING FUNCTIONS 
DESCRIBED IN THE ENCLOSED WRITE UP ARE DERIVED FROM A SET 
OF OPERATORS FOR PL/I PROPOSED BY DR. ROBERT F. ROSIN. 
(STRINGS IN PL/I, SIGPLAN NOTICES 'PL/I BULLETIN NO.4' 
VOLUME 2 NO. 8, AUG., 1967.) THEY ARE DESIGNED TO 
COMPLEMENT THE FACILITIES ALREADY AVAILABLE IN PL/I (F).
 
THEY MAY BE DIVIDED INTO THREE GROUPS FOR PURPOSES OF 
DISCUSSION: 
1.BEFORE, UPTO, FROM, AFTER, IN, DELETE, DELETS,
 REPLACE, REPLS, REVERSE, AND SCOUNT--ALL OF THESE
 RETURN STRINGS OR VALUES AND ALL EXCEPT DELETE,
 REPLACE, AND REPLS SET A SUCCESS VARIABLE WHICH MAY
 BE TESTED (SEE BELOW). 

2.FAIL AND SUC--FUNCTIONS THAT ARE THE RESULT OF THE
 PREVIOUS STRING FUNCTION AND RETURN '0' (FAILURE IN
 THE PREVIOUS FUNCTION). PRIOR TO THE INVOCATION OF
 ANY STRING FUNCTION, THE SUCCESS VARIABLE HAS THE
 VALUE '1' (SUCCESS). 

3.SETSUC--FUNCTION THAT IS USED TO SET THE SUCCESS
 VARIABLE TO EITHER VALUE. 

PROGRAMMING SYSTEMS - THE FUNCTIONS THEMSELVES ARE WRITTEN 
IN PL/I (F) AND HAVE BEEN COMPILED AND TESTED USING 
PL/I (F) VERSION 4 ON AN OS/MFT BASED SYSTEM ON AN OS/360 
MODEL 50. 
MINIMUM SYSTEM REQUIREMENTS 360/30 64K. 

DOCUMENTATION: 13 PAGES, NO ADDITIONAL CHARGE. 
CARD COUNT:       300 APPROXIMATE. 
SUBMITTAL/REVISION DATE: 02/69 



