[#67346] Future of test suites for Ruby — Charles Oliver Nutter <headius@...>

I'll try to be brief so we can discuss all this. tl;dr: RubySpec is

19 messages 2015/01/05

[ruby-core:67813] [ruby-trunk - Misc #10783] [Open] String#concat has an "appending" behavior

From: me@...
Date: 2015-01-26 10:05:43 UTC
List: ruby-core #67813
Issue #10783 has been reported by Antonio Scandurra.

----------------------------------------
Misc #10783: String#concat has an "appending" behavior
https://bugs.ruby-lang.org/issues/10783

* Author: Antonio Scandurra
* Status: Open
* Priority: Normal
* Assignee:=20
----------------------------------------
Ruby String documentation (http://www.ruby-doc.org/core-2.2.0/String.html) =
introduces the two terms **Appending** and **Concatenation**:

- Concatenation (aka `+`) =E2=80=94Returns a new String containing other_st=
r concatenated to str.
- Append (aka `<<`) =E2=80=94Concatenates the given object to str.=20

However, calling `concat` results in an appending operation. I find this pa=
rticularly confusing and against the Principle of Least Surprise (e.g. I'd =
expect `concat` to actually concatenate something). On the other hand I und=
erstand that changing such a small method would result in a quite significa=
nt breaking change.

Do you see this as an inconsistency? If yes, is there any particular design=
 (or historical) reason behind it?

Thank you.

P.s. Seems like this is the case for `Array` as well.



--=20
https://bugs.ruby-lang.org/

In This Thread

Prev Next