What is Binder Language meant for?

425 pts.
AS/400 Binding Directory
AS/400 programming
IBM iSeries
What Binder language meant for? I think to export Procedures outside the service program... Is it correct? I got a doubt that, if in a module, a procedure is defined as EXPORT then any way we can access it from any other module. In that case what the need of Binder language?

Software/Hardware used:

Answer Wiki

Thanks. We'll let you know when a new response is added.

Check out these articles.




As well as a plethora of other hits at:



A primary purpose of binder language is to allow multiple generations of a service program to remain linked to programs. It provides a kind of ‘level check’ to the programs that use its procedures.

As new procedures are added to a service program, binder language lets you add additional signatures. As long as previous signatures are maintained and the interfaces for the procedures associated with those signatures are kept stable, any program that was previously bound to the service program can trust that everything will continue working as always.

If you add three new procedures, you would add a new list of procedures to the binder language and specify one new signature. If the previous signatures are kept in the binder language, all of the old programs can keep running without having to be recreated. The existing binding will continue to work.

Without using binder language, every time you recreated a service program to add a new procedure, every program that used the service program would need to be recreated.


Discuss This Question: 2  Replies

There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.
  • WoodEngineer
    I highly recommend an article on the subject by Scott Klement. Lots of good info that gets right to the point.
    8,225 pointsBadges:
  • RamvishakRamesh
    When a service program is created, system assigns a 16byte signature. It is created by encoding the service programs export list. When the export list changes, the signature also will change. when a program executes, it checks the current signature of the service program object against the signature found at creation time. If the two don't match, you'll get a runtime error: "signature violation occurred." We have to recreate the program to avoid this. If there are hundred program bounded to that service program, then we need to have hundred updates. There comes the use of Binder language. In Binder source we will specify the list of procedures to be exported by the service program. These procedures must exist in the module referenced in the module list while creating a service program in CRTSRVPGM command. Default source member for binder source is QSRVSRC with type BND STRPGMEXP PGMLVL(*CURRENT) EXPORT SYMBOL(PROC1) EXPORT SYMBOL(PROC2) EXPORT SYMBOL(PROC3) ENDPGMEXP
    2,505 pointsBadges:

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

Thanks! We'll email you when relevant content is added and updated.


Share this item with your network: