Oppolzer - Informatik / Blog


Blog-Hauptseite      Neuester Artikel      Älterer Artikel      Neuerer Artikel      Älterer gleiche Kategorie      Neuerer gleiche Kategorie

PL1-L - "Weiche" Übergänge bei Schnittstellenänderungen

Subject:

Re: GENERIC entry declaration with structure parameter

From:

Bernd Oppolzer <bernd.oppolzer@T-ONLINE.DE>

Reply-To:

PL1 (language) discussions <PL1-L@LISTSERV.DARTMOUTH.EDU>

Date:

2013.02.18 10:50:19


From: Bernd Oppolzer
Sent: Sunday, 17 February 2013 3:03 AM

> Just to make it clear:

It was clear already.

> the "old" procedure call without the new parameter remains at the same name,
> so that existing callers need not change their programs. The old
> procedure changes in such a way that the logic is migrated to the new procedure and the
> old procedure simply calls the new procedure, specifying default values for the new
> parameters.

> "New" callers which need the new parameter have to use the new procedure
> name.

> The callers of the old procedure are informed and asked to switch to the
> new procedure, but they need not do it now (with great celerity,

with no great celerity

> as J.G. writes), but they can it do at any time - for example, when they change
> their module the next time anyway.

> When, some months later, all callers have switched to the new proc, I
> can get rid of the old one.

Two seriously fatal airplane crashes occurred because the pilots overlooked the
obvious. Namely, they forgot to set the flaps for take-off. Without the flaps
down for take-off, the planes could not get uplift when the time came to lift
off the runway.

Changing the name of a procedure for the sake of changing it when other avenues
are available without the forced changing of other procedures that call it, is a
good way to have a run-time failure. (Sooner or later, someone overlook changing
one procedure call.)

In point of fact, it generates unnecessary work for everybody.

> BTW: all calls are dynamic calls, using MVS LOAD and ASSEMBLER interfaces,
> although the modules are PL/1, ASSEMBLER or C modules - the language
> doesn't matter. There is no static linkage of modules.

Blog-Hauptseite      Neuester Artikel      Älterer Artikel      Neuerer Artikel      Älterer gleiche Kategorie      Neuerer gleiche Kategorie