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.17 00:08:00


From: Bernd Oppolzer
To: PL1-L@LISTSERV.DARTMOUTH.EDU
Sent: Saturday, 16 February 2013 9:26 PM

> Yes, I understand that, and I even understand the purpose of GENERIC.

> I simply wanted to explain what we do. Maybe it is important to know
> that we have other languages (ASSEMBLER, C) as well, so we need
> solutions which work in all languages. And, what seems most important
> to me:

> a) I don't want the callers to have to change their calls (which is the same
> as with the GENERIC approach)

> b) and: I don't want to have the program logic in more than one place
> (which is also possible with the GENERIC approach, if some of the
> three procedures call each other)

In some cases, the code for the various called entry points is completely
different, or is sufficiently different to warrant having essentially different
code for the separate entry points.

If the code for the various entry points has some significant common code, all
the code can be accommodated in a single procedure having separate entry points.

> The drawback of not using GENERIC: I have to inform the callers that they
> have to use DIFFERENT names, depending on their need regarding the
> parameters. But I do it this way: the variant with the maximum parameter
> count is the only one which will be supported in the future, and the others
> are only supported for a limited time frame for convenience of the existing
> callers. So every resonable developer will switch to the variant that I
> want to support in the long term.

That defeats and contradicts your stated aim above, namely, (a) that you didn't
want users to have to change their code. You are forcing them to do exactly
that.


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