[#99868] [Ruby master Bug#17144] Tempfile.open { ... } does not unlink the file — eregontp@...
Issue #17144 has been reported by Eregon (Benoit Daloze).
15 messages
2020/09/03
[ruby-core:100117] [Ruby master Feature#16994] Sets: shorthand for frozen sets of symbols / strings
From:
matz@...
Date:
2020-09-25 04:26:52 UTC
List:
ruby-core #100117
Issue #16994 has been updated by matz (Yukihiro Matsumoto).
Status changed from Open to Feedback
We are going to introduce built-in set, but not in 3.0 (too little time to implement it before 3.0 release).
After merging built-in set, we will seriously consider this proposal.
Remaining issues:
* Name? `%ws` would be the first two character specifier after `%`. Is it reasonable? Or should we seek another name?
* Frozen? `%w` returns non frozen array of non frozen strings. How should `%ws` behave?
Matz.
----------------------------------------
Feature #16994: Sets: shorthand for frozen sets of symbols / strings
https://bugs.ruby-lang.org/issues/16994#change-87685
* Author: marcandre (Marc-Andre Lafortune)
* Status: Feedback
* 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>