
Part II: On Memetic Evolution 2011/5/10 Joachim Faulhaber <afojgo@googlemail.com>:
2011/5/8 Gottlob Frege <gottlobfrege@gmail.com>:
This, I think, is an important point. Possibly more important than "spokenness". I think we, for the most part, have already decided the names of these operators. By "we" I mean programmers at large. I mean common usage. Now maybe it is hard to measure common usage
I get your point and I think it is a good one. If I understand you right you say. (1) There is a common usage, that emerged through genetic (or memetic) evolution. (2) This common usage is the *best choice* for the operator names.
I continue this reasoning ... ... because from the perspective of (1) usablility (2) memorability (3) ease of perception (4) least astonishment it is the best choice to use those names that *are* THE common sense.
What I like about this reasoning is that is proposes to let the choice be made in acknowledgement of a larger view or context. It is similar to what I am proposing. Only the contexts are different. Both proposals are claiming that the choice has already been made.
(1) Tony: The choice is taken by spokenness and common usage. (2) Joachim: The choice is taken by the standard and prevailing (boost) libraries.
End of part I. (To be continued ;)
What is the difference between those points of view? Why are there differences between common usage and the results of standardization processes or global discussion in the first place? I think one interesting aspect about those two contexts and their differences is memetic evolution. There is an interesting book by the American psychologist Mihaly Csikszentmihalyi: The Evolving Self. See http://www.scottlondon.com/reviews/csik.html for a summary. I've read the book 15 years ago but I remember its very interesting theory on memes and memetic evolution. Memes are patterns of information, that emerge, mutate, replicate and evolve, similar to genes. In contrast to genes that depend on biological metabolism to replicate, memes use human consciousness or mental energy as habitat. Like an earworm that you catch because you heard someone singing and then you pass it on by singing the melody yourself. Earworms can be nasty sometimes. We may even have earworms of songs we do not really like. One of the messages of Csikszentmihalyi's book is, that memes inhabit our minds and many if not most of them do this beyond our conscious perception, without us being aware of them. They use up the most precious resources of human life: Mental energy and time. Csikszentmihalyi proposal is to look at the memes with awareness, reflecting on them and to start to decide about the memes we want to invest mental energy into (e.g. boost discussions) and the ones we won't (e.g. watching, talking about, thinking about a daily soap). Looking from the theory of memes, I'd say that spokenness and common usage of an operator += is a meme, that just evolved without any reflexion and consciousness out of the sudden necessity to read, speak and spontaneously name this funny lexeme '+='. Here we automatically combine two very universal memes: + sign and =sign, not thinking and reflecting about their adequacy and semantical correctness in the context of the c++ operator usage. This automatism is even more obvious with %= where "percent-equal" is so obviously contradicting the default semantics of this operator in c++. This might set your (Tony's) statement in a new light
I think we, for the most part, have already decided the names of these operators. By "we" I mean programmers at large.
Maybe *no one* has decided this concsiously after thorough consideration and discussion. Maybe a common usage like "percent-equal" for %= is just a product of automatic memetic processing, a memetic artifact . . . End of part II. (To be continued ;) Regards, Joachim -- Interval Container Library [Boost.Icl] http://www.joachim-faulhaber.de