Issue #15459 has been updated by ko1 (Koichi Sasada).


> 16:00-16:30 (5) new built-in class/method definition (ko1)

Sorry I couldn't make a new ticket about it. I write my idea here.

My RubyKaigi 2019 slide introduce this idea: http://www.atdot.net/~ko1/activities/2019_rubykaigi2019.pdf
Japanese article: https://techlife.cookpad.com/entry/2019/04/17/014142

The basic idea is writing built-in methods in Ruby with FFI.

```ruby
class String
  def length
    __C__.str_length
  end

  def replace other
    __C__.str_replace other
  end
end
```

In this case, `str_length()` C function is called and `str_replace` function is called with a parameter other. You don't need to write `rb_define_method()` in C code.

There is several advantages:

* You can write complex features like kwparm, exception and so on (in Ruby)
* You can add DSL like attribute, like that:

```ruby
class String
  def length
    __ATTR__.pure
    __C__.str_length
  end
```

In this case, we can annotate `String#length` has no side-effect with Ruby DSL.

This idea can introduce additional overhead compared with traditional C method definitions. On my Ruby2019 talk, two technical achievements are introduced and I think this approach is feasible from performance perspective.


----------------------------------------
Misc #15459: Developers Meeting before/after RubyKaigi2019
https://bugs.ruby-lang.org/issues/15459#change-77650

* Author: ko1 (Koichi Sasada)
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
RubyKaigi 2019 will be at Fukuoka, Apr 18th to 20th 2019. It should be good time to gather Ruby interpreter developers.
I keep the meeting space at Fukuoka city, near to the Hakata station (the central station in Fukuoka) before and after RubyKaigi.

* Date: 
  * 2019/04/17 (Wed), before RubyKaigi2019
  * 2019/04/21 (Sun), after RubyKaigi2019
* Location
  * Fukuoka Ruby Content Industry Promotion Center,
    Fukuoka Higashi Sougouchousha 5th floor,
    1 Chome-17-1 Hakataekihigashi, Hakata Ward, Fukuoka
  * 吽痊萱Ruby’戊件氾件汁遣僅蕊飭本件正□ (in Japanese)
    http://frac.jp/about/ (Japanese page)

There are two days but Matz can only attend Wednesday.

Maybe on Wednesday we can have a meeting with agenda, for example about Ruby 3.

I'm not sure we need Sunday meetup, but I keep a room for people who want to continue development.
If nobody attend Sunday meetup, I'll cancel room reservation.

I hope we can discuss topics on Wed and continue to discuss RubyKaigi days, and make a progress on Sunday.

## Travel support

Same as last RubyKaigi, Cookpad Inc. will support travel fee (except hotel room fee) so please consider to attend this dev-meeting.
Also please invite people who are not a MRI committer but who are important person to talk with us.
I'll announce about this travel support soon.

## Registration

* Sign-up on https://rubyassociation.doorkeeper.jp/events/85108

## Call for Topics

* Please comment discussion topics on Wed meeting.
* We have limited time to discuss, so that I'll ask Matz which topics we should talk with, and make time schedule in advance if there are many topics.
* Meeting room has a projector so you can bring your slides.
* Maybe attendee's topics will be prioritize.

## Conclusion

Anyway, please keep your schedule.
FYI: Fukuoka city does not have enough hotel rooms so I recommend you to keep your rooms as soon as possible.

Thanks,
Koichi




-- 
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>