General

Profile

knu (Akinori MUSHA)

  • Login: knu
  • Email: knu@ruby-lang.org
  • Registered on: 04/28/2008
  • Last sign in: 08/22/2025

Issues

open closed Total
Assigned issues 11 106 117
Reported issues 1 20 21

Projects

Project Roles Registered on
Ruby Committer 04/28/2008

Activity

07/10/2025

08:51 AM Ruby Feature #21386: Introduce `Enumerable#join_map`
FWIW, this function is called `mapconcat` in Emacs: https://www.gnu.org/software/emacs/manual/html_node/elisp/Mapping-Functions.html#index-mapconcat
I once wanted this when I implemented shelljoin() and chose to just call map and join...
knu (Akinori MUSHA)

07/09/2025

04:57 AM Ruby Bug #21396: Set#initialize should call Set#add on items passed in
Jeremy, thanks for the reply.
Your point about thread-safety is well taken. It is an important advantage. As a possible compromise, we could keep the C backing and switch the behavior of methods when the class is subclassed in excha...
knu (Akinori MUSHA)

07/08/2025

03:10 PM Ruby Bug #21375: Set[] does not call #initialize
I'm leaning toward making Set subclass-friendly again. That's how I've always wanted Set to be (unlike Array and Hash), and the feedback shows that there are real users and use cases that share and rely on this concept, so we shouldn't ... knu (Akinori MUSHA)
02:57 PM Ruby Bug #21396: Set#initialize should call Set#add on items passed in
Considering the feedback we've received about compatibility in the new experimental Set implementation, it may be in our best interest to revert to the pure-Ruby version.
If improving performance and reducing memory footprint remain c...
knu (Akinori MUSHA)

06/05/2025

01:43 PM Ruby Bug #21396: Set#initialize should call Set#add on items passed in
I've always created custom variants of Set too, and I don't think it's rare to find these in in-house codebases.
knu (Akinori MUSHA)
01:31 PM Ruby Bug #21376: Inconsistent equality between Sets with different compare_by_identity, different classes
This bug in optimization in Set#== deserves to be fixed, I think. In hindsight, adding Set#compare_by_identity might not have been the best idea. knu (Akinori MUSHA)
12:30 PM Ruby Feature #21390: Deprecate passing arguments to Set#to_set and Enumerable#to_set
I can agree with this. As it turned out, subclassing the Set class did not become very common, so I think it's fine to deprecate this feature now. knu (Akinori MUSHA)

04/15/2025

03:16 AM Ruby Feature #21216: Implement Set as a core class
This is wonderful, and I feel like I should have done this long ago.
Here's some thoughts.
Set was initially designed with extensibility in mind because Hash was hard to extend via inheritance. It was also almost impossible to mak...
knu (Akinori MUSHA)

09/10/2024

01:22 PM Ruby Feature #18368: Range#step semantics for non-Numeric ranges
The compatibility with `(:a .. :z).step(3)` has also been restored.
https://github.com/ruby/ruby/pull/11573
knu (Akinori MUSHA)

08/22/2024

03:11 AM Ruby Feature #18368: Range#step semantics for non-Numeric ranges
If we take this compatibility as important and go with it, should we give up `("a".."aaaa").step("a")` or support it? knu (Akinori MUSHA)

Also available in: Atom