work in progress | string

proposal for class STRING

Rename infix "+" to infix "&"


Proposal for class STRING:

Rename feature infix "+" to infix "&".

Please select one of the following:

      Strongly prefer infix &
      Prefer infix &
      Prefer infix +
      Strongly prefer infix +
      Don't mind (happy either way)
      Abstain (not happy either way)


Neither infix "+" nor infix "&" is present in class STRING in the 1995 standard.

infix "+" is curently implemented by HACT, VE and SE, but not by ISE (although they have announced their intention to support it). A popular alternative feature name is infix "&".

Discussion Excerpts

(The full discussion is at

Pierre Metras (25 October 1999)

What about using infix "&" instead of infix "+", already used in typography
to associate two sentences, like in "David & Gotiath"? ...

BTW, I don't think that the symbol "&" has played a special role in group
theory or Mathematics in general, so its use as string concatenation will
not hurt the Eiffelist mathematicians;-)

Roger Browne (26 October 1999)

print(i1 & " is between " & i2 & " and " & i3 & '%N')
Hmm... the more I look at it the more I like infix "&" in GENERAL.

Paul Cohen (29 October 1999)

"&" is an operator that is well defined and easy to understand! I feel that the "&" operator is very close to my initutive notion of how to express string concatenation.

Scott Steinmann (29 October 1999)

The only problem with using '&' is that it might be interpreted by a novice or a person with a C/C++ background as meaning "logical and" or "bitwise and", which would greatly modify their determination of the statement's result. The character '+' does not have this ambiguity.

Joachim Durchholz (1 November 1999)

in Eiffel, & is not a standard operator, so we're free to use it to distinguish between concatenation and addition.

James McKim (2 November 1999)

Use "&" instead of "+" as the name of the routine. Note that this should have minimal impact even on vendors that are already using "+" as they can simply include the former as a synonym for the latter.

Franck Arnaud (3 November 1999)

The supposed benefits of "&" (well balanced by its disadvantages like the 'space after free operator' problem) compared to "+" seem rather underwhelming to justify moving from existing practice. And using synonyms would be really a waste of namespace and clarity of the short forms and portability issues (e.g. when redefining) for vitually no benefit.

Impact of proposed change



The preferred feature name is infix "+".

Voting details

votes cast at eGroups:

Strongly prefer infix "+"
Prefer infix "+"
Don't mind (happy either way)
Prefer infix "&"
Strongly prefer infix "&"

email votes:

Prefer infix "&"
                Simon Parker <>


An infix "+" feature has been added to class STRING in ISE Eiffel 4.5.