Issue #11781 has been updated by Matthew Draper.


I too would expect `Array#prepend` to be the opposite of `Array#concat`, taking `other_ary` as a parameter, because that seems to more closely match the relationship between `String#prepend` and `String#concat`.

It sounds potentially useful in its own right.

----------------------------------------
Feature #11781: Would it be possible to alias .prepend() towards .unshift() for class Array by default?
https://bugs.ruby-lang.org/issues/11781#change-55407

* Author: Robert A. Heiler
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Hello.

For Strings we can do:

    abc = 'world!'
    abc[0,0] = 'Hello '
    abc # => "Hello world!"

For Arrays we can do:

    abc = ['world!']
    abc[0,0] = 'Hello '
    abc # => ["Hello ", "world!"]

This is nice.

For Strings we can also use .prepend() to add to the beginning.

For Arrays, we have to use .unshift().

I have a hard time remembering .unshift though, .prepend() seems
to be easier for me to remember.

I'd like to use both .prepend for Strings and Arrays; right now
I have to use different names. I could alias prepend to unshift
for class Array, but then I'd have to carry these modifications
into my projects, which is not so good - I would prefer to just
stick to what MRI is doing.

Could we have the alias .prepend() for class Array, meaning 
.unshift() too? That way I could use .prepend() for both Arrays
and Strings.

Thanks for reading!



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