Issue #8909 has been updated by headius (Charles Nutter).


naruse (Yui NARUSE) wrote:
> headius (Charles Nutter) wrote:
> > Also, FWIW, ko1 told me to mark the bugs I was interested in as 2.1, which is why I set this bug for 2.1.
> 
> Therefore we discussed about this on RubyDeveloperMeeting20131001.

It is unfortunate these meetings cannot be attended by other implementers. Was this only for Japanese-speaking contributors?

> If a feature needs more discussion, it will drop from 2.1.0; this is the decision of I, release manager.
...
> Anyway this feature doesn't affect ruby's stability at the implementation view.
> Therefore it can be accepted to 2.1 feature if someone works hard to make the spec and get consensus.
> The deadline is the end of October.

Ok, I will try to get consensus on this feature by end of October.
----------------------------------------
Feature #8909: Expand "f" frozen suffix to literal arrays and hashes
https://bugs.ruby-lang.org/issues/8909#change-42231

Author: headius (Charles Nutter)
Status: Feedback
Priority: Normal
Assignee: 
Category: 
Target version: next minor


The "f" suffix to declare a frozen string was recently accepted into 2.1, and I think it's a spectacular addition. I would very much like to see it work for literal arrays and hashes too:

[1, 2, 3, 4, 5]f

{foo: 1, bar: 2, baz: 3}f

There are many, many cases where this could reduce allocation (frozen array with literal elements would only need to be allocated once) and improve thread-safety (explicitly create frozen arrays and hashes when creating structures that might be used across threads).

Is there any reason why we could not do this? I believe both of the above syntaxes would be invalid today, as was the case with the String "f" suffix, and hopefully that means the work to add this syntax would be similar.


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