A private message suggested *template *or *pattern*. The problem with *template *or *pattern *is that they are too generic. Neither implies any kind of defined processing. Each is just a pattern with holes and without suggesting that the pattern *does anything* to whatever fits into the holes.
-- Russ On Mon, Sep 7, 2009 at 12:14 PM, Russ Abbott <[email protected]> wrote: > This is to the programmers on this list. > > I'm looking for a word that refers generically to software that is open to > virtually object in its host language. The best way for me to explain it is > with examples. > > - In Java, the various collection classes each have this property. A > List can be a list of anything. (Note that this isn’t about generics such > as > List<type>. It’s about the fact that the List functionality does not limit > the sorts of things one can put into a list. Typed lists are simply a way > of > ensuring that a program gets its types right. That's a separate > consideration.) > > > - Other examples include map and reduce in functional programming. They > are open if not to anything at least to lists of any sort and to functions > or any sort that operate on elements in those lists. > > > - Another example is a genetic algorithm in that it does not limit the > function that is used as a fitness function or the possible population > elements. Again, these can be anything. > > So is there a generic word for software with this sort of "downwardly open" > property? > > It may be something like "structural" in that the software defines an > operational structure but not the elements that occupy the structure. Is > there any commonly used word for this? > > -- Russ > > P.S. This demonstrates that one can have an idea before having a word for > the idea. > >
============================================================ FRIAM Applied Complexity Group listserv Meets Fridays 9a-11:30 at cafe at St. John's College lectures, archives, unsubscribe, maps at http://www.friam.org
