On Fri, 9 Jun 2017 11:50:39 -0700, Charles Mills wrote:

>I know what XPLINK means. Is XPLINK a standard? Then is XPLINK linkage 
>non-standard? That was my "whatever that means." Is XPLINK a standard for 
>non-standard linkage? 

Well, I suppose you could say that XPLINK is a standard, but IMO that only adds 
to the confusion.

When I started programming in 1970, the standard linkage conventions were 
already well established. Programs that follow the standard linkage conventions 
don't have to provide detailed specifications for how to call them. And as an 
additional benefit, when the system prints a dump, the save areas can be 
formatted so that calling sequences can be determined.

There is nothing to stop a programmer from writing a program that specifies 
different requirements for being called. Especially in the early days, it might 
have been tempting to do so, but that adds to the burden when documenting the 
interface. You won't get any help from the system in determine what program 
called the one that abended when you get a dump though.

For many years, this convention was called "standard linkage" to distinguish 
from requirements that a program might establish for itself. Then, somewhere 
around 2000, XPLINK was invented for the benefit of C programs.

I'm not thrilled with the term, "standard linkage" for reasons similar to what 
you are asking. Unfortunately, we don't have another name for it, so I continue 
to call it by that name.

-- 
Tom Marchant

Reply via email to