[#99426] [Ruby master Bug#17098] Float#negative? reports negative zero as not negative — chris@...

Issue #17098 has been reported by chrisseaton (Chris Seaton).

12 messages 2020/08/01

[#99449] [Ruby master Bug#17100] Ractor: a proposal for new concurrent abstraction without thread-safety issues — ko1@...

Issue #17100 has been reported by ko1 (Koichi Sasada).

41 messages 2020/08/03

[#99474] [Ruby master Feature#17103] Add a :since option to ObjectSpace.dump_all — jean.boussier@...

Issue #17103 has been reported by byroot (Jean Boussier).

9 messages 2020/08/04

[#99485] [Ruby master Misc#17104] Why are interpolated string literals frozen? — bughitgithub@...

Issue #17104 has been reported by bughit (bug hit).

23 messages 2020/08/05

[#99499] [Ruby master Bug#17105] A single `return` can return to two different places in a proc inside a lambda inside a method — eregontp@...

Issue #17105 has been reported by Eregon (Benoit Daloze).

10 messages 2020/08/06

[#99582] [Ruby master Feature#17122] Add category to Warning#warn — eileencodes@...

Issue #17122 has been reported by eileencodes (Eileen Uchitelle).

20 messages 2020/08/13

[#99700] [Ruby master Bug#17129] bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c — yasuo.honda@...

Issue #17129 has been reported by yahonda (Yasuo Honda).

9 messages 2020/08/26

[ruby-core:99684] [Ruby master Feature#16994] Sets: shorthand for frozen sets of symbols / strings

From: daniel@...42.com
Date: 2020-08-24 15:18:52 UTC
List: ruby-core #99684
Issue #16994 has been updated by Dan0042 (Daniel DeLorme).


+1
I think this is more important than having a general Set syntax as discussed in #5478.  Being able to use `%ws[foo bar].include?(str)` is a double-plus of not creating a new object each time and having O(1) efficiency.

----------------------------------------
Feature #16994: Sets: shorthand for frozen sets of symbols / strings
https://bugs.ruby-lang.org/issues/16994#change-87172

* Author: marcandre (Marc-Andre Lafortune)
* Status: Open
* Priority: Normal
----------------------------------------
I would like a shorthand syntax for *frozen Sets of symbols or of strings*.

I am thinking of:

```ruby
%ws{hello world} # => Set['hello', 'world'].freeze
%is{hello world} # => Set[:hello, :world].freeze
```

The individual strings would be frozen. These literals would be created once at parse time (like Regex are):

```ruby
def foo
  p %ws{hello world}.object_id
end
foo
foo # => prints the same id twice
```

We should consider these sets to return a unique frozen `to_a`. 

Reminder: Ruby has literal notations for `Rational` and `Complex`. I've sadly never had to use either.
I would venture to say that `Complex` is much less used than `Sets`, and that sets are underused.

Reminder: previous discussion for builtin syntax was not for frozen literal, strings or symbols specifically: https://bugs.ruby-lang.org/issues/5478

For builtin notations for generic sets (i.e. *unfrozen* or containing *other than string/symbol*), please discuss in another issue.



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

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread