EasyManuals Logo

IBM TSO/E REXX User Manual

IBM TSO/E REXX
242 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #87 background imageLoading...
Page #87 background image
Chapter 6. Writing Subroutines and Functions
What are Subroutines and Functions? ................69
When to Write Subroutines vs. Functions ...............70
Writing a Subroutine .......................70
Passing Information to a Subroutine ................72
Passing Information by Using Variables ..............72
Passing Information by Using Arguments .............74
Receiving Information from a Subroutine ..............75
Example - Writing an Internal and an External Subroutine .......76
Writing a Function........................77
Passing Information to a Function .................79
Passing Information by Using Variables ..............79
Passing Information by Using Arguments .............81
Receiving Information from a Function ...............83
Exercise - Writing a Function..................83
Summary of Subroutines and Functions................83
This chapter shows how to write subroutines and functions and compares their
differences and similarities.
What are Subroutines and Functions?
Subroutines and functions are routines made up of a sequence of instructions that
can receive data, process that data, and return a value. The routines can be:
Internal The routine is within the current exec, marked by a label and used
only by that exec.
External A program or exec in a member of a partitioned data set that can
be called by one or more execs. In order for an exec to call the
routine, the exec and the routine must be allocated to a system file,
for example SYSEXEC or SYSPROC, or be in the same PDS. For
more information about allocating to a system file, see Appendix A.
Allocating Data Sets on page 185.
In many aspects, subroutines and functions are the same; yet they are different in a
few major aspects, such as the way they are called and the way they return values.
v Calling a subroutine
To call a subroutine, use the CALL instruction followed by the subroutine name
(label or exec member name) and optionally followed by up to 20 arguments
separated by commas. The subroutine call is an entire instruction.
CALL subroutine_name argument1, argument2,...
Issuing a CALL to internal label names for REXX subroutines and functions that
are greater than eight characters, may have unintended results. Label names will
be truncated to eight characters.
v Calling a function
To call a function, use the function name (label or exec member name)
immediately followed by parentheses that can contain arguments. There can be
no space between the function name and the parentheses. The function call is
part of an instruction, for example, an assignment instruction.
x = function(argument1, argument2,...)
v Returning a value from a subroutine
© Copyright IBM Corp. 1988, 2001 69

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the IBM TSO/E REXX and is the answer not in the manual?

IBM TSO/E REXX Specifications

General IconGeneral
BrandIBM
ModelTSO/E REXX
CategoryComputer Hardware
LanguageEnglish

Related product manuals