Wayne Driscoll said:  

<snip>
Having 2 API's, one internal, one external has a large
number of negative consequences, including increasing maintenance effort,
because if there is a defect, both API's have to be investigated, and
possibly modified and the increased testing requirements, including ongoing
regression testing.
</snip>

It all depends on how you define "API."  Is the interface "the parameter list 
and the linkage to the service" or is it "the executable macro one uses to 
invoke the service?"  I'd argue that it is not always clear or consistent for 
z/OS.  Obviously, the back end service routines can't figure out if they were 
called by code generated by a macro or hand cobbled by a developer.  

There are clearly cases within z/OS where the BCP developers have access to a 
greater variety of parameters to the same exact linkage and back end routines 
for a number of system services.  There is no technical reason to not provide a 
mapping and executable macro (in SYS1.MACLIB?) for the "unwashed masses" and 
separate macros (in an internally accessible maclib, not shipped with the 
product) for the "Priests of the Temples of Syrinx" that both wind up invoking 
the same back end code.

Scott Fagen
Chief Architect - System z
CA Technologies

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to