General

Profile

Eregon (Benoit Daloze)

  • Login: Eregon
  • Registered on: 07/30/2009
  • Last sign in: 03/13/2026

Issues

open closed Total
Assigned issues 2 66 68
Reported issues 30 195 225

Projects

Project Roles Registered on
Ruby Committer 08/02/2012

Activity

Today

09:16 AM Ruby Feature #21963: A solution to completely avoid allocated-but-uninitialized objects
Regarding the name in C API it could be `rb_class_safe_initialization()` to match `Class#safe_initialization` or maybe more intuitive `rb_define_internal_alloc_func()` or so (which would do both `rb_define_alloc_func()` + set it as inter... Eregon (Benoit Daloze)
09:00 AM Ruby Feature #8948 (Closed): Frozen regex
Applied in changeset commit:git|cb03bf43eb2339e1d81b20a2dd9783b83660007c.
----------
Freeze all instances of Regexp, except subclass instances
* Instances of a subclass of Regexp are not frozen for compatibility.
* [Feature #8948]
* Us...
Eregon (Benoit Daloze)
09:00 AM Ruby Revision cb03bf43 (git): Freeze all instances of Regexp, except subclass instances
* Instances of a subclass of Regexp are not frozen for compatibility.
* [Feature #8948]
* Use a less confusing example in test_regexp2,
the ivar was named @encoding but had no effect on Regexp#encoding.
Eregon (Benoit Daloze)

03/24/2026

03:27 PM Ruby Feature #8948: Frozen regex
From the discussion at the dev meeting
https://github.com/ruby/dev-meeting-log/blob/master/2026/DevMeeting-2026-01-14.md#feature-8948-frozen-regex-eregon
> matz: try freezing Regexp instances, but no subclasses, and revisit it to check c...
Eregon (Benoit Daloze)
03:14 PM Ruby Feature #21963: A solution to completely avoid allocated-but-uninitialized objects
PR implementing that idea and applying it for MatchData and Regexp, removing many checks which are no longer necessary:
https://github.com/ruby/ruby/pull/16528
Instead of using 2 fields it's using the existing `allocator` field + a b...
Eregon (Benoit Daloze)
12:53 PM Ruby Feature #21963 (Open): A solution to completely avoid allocated-but-uninitialized objects
A common issue when defining a class is to handle allocated-but-uninitialized objects.
For example:
```ruby
obj = MyClass.allocate
obj.some_method
```
This can easily segfault for classes defined in C and raise an unclear excepti...
Eregon (Benoit Daloze)
12:31 PM Ruby Misc #21916: DevMeeting before RubyKaigi 2026
* [Feature #21962] Add deep_freeze for recursive freezing (eregon)
* A revised proposal that aims to address the previous discussion.
* It follows the behavior of `Ractor.make_shareable`, and is also consistent with `IceNine.deep_fre...
Eregon (Benoit Daloze)
12:04 PM Ruby Feature #21665: Revisit Object#deep_freeze to support non-Ractor use cases
I made a revised proposal that aims to address the previous discussion: #21962.
It follows the behavior of `Ractor.make_shareable`, and is also consistent with `IceNine.deep_freeze`, so the semantics are already well understood and ha...
Eregon (Benoit Daloze)
11:59 AM Ruby Feature #21962 (Open): Add deep_freeze for recursive freezing
### Motivation
It is common to want some data structure to be immutable, e.g. to ensure it doesn't get mutated by multiple threads.
See the first section of #21665 for a more detailed motivation, the summary is there is long-standing...
Eregon (Benoit Daloze)

03/23/2026

09:13 PM Ruby Feature #21852: New improved allocator function interface
akr (Akira Tanaka) wrote in #note-10:
> The separation of allocation and initialization is essential to marshal cyclically referenced objects.
Thank you for that, I didn't think about it.
That would then be only a small tweak for my...
Eregon (Benoit Daloze)

Also available in: Atom