[#98645] [Ruby master Misc#16933] DevelopersMeeting20200618Japan — mame@...

Issue #16933 has been reported by mame (Yusuke Endoh).

14 messages 2020/06/04

[#98663] [Ruby master Bug#16936] `make check TESTS="-n !/Foo#method/"` not skipping the test case — jaruga@...

Issue #16936 has been reported by jaruga (Jun Aruga).

13 messages 2020/06/05

[#98772] [Ruby master Bug#16959] Weakmap has specs and third-party usage despite being a private API — headius@...

Issue #16959 has been reported by headius (Charles Nutter).

13 messages 2020/06/12

[#98826] [Ruby master Feature#16963] Remove English.rb from Ruby 2.8/3.0 — hsbt@...

Issue #16963 has been reported by hsbt (Hiroshi SHIBATA).

9 messages 2020/06/16

[#98920] [Ruby master Bug#16978] Ruby should not use realpath for __FILE__ — v.ondruch@...

Issue #16978 has been reported by vo.x (Vit Ondruch).

24 messages 2020/06/23

[#98947] [Ruby master Feature#16986] Anonymous Struct literal — ko1@...

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

66 messages 2020/06/26

[#98964] [Ruby master Feature#16989] Sets: need ♥️ — marcandre-ruby-core@...

SXNzdWUgIzE2OTg5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1hcmNhbmRyZSAoTWFyYy1BbmRyZSBM

33 messages 2020/06/26

[#98965] [Ruby master Feature#16990] Sets: operators compatibility with Array — marcandre-ruby-core@...

Issue #16990 has been reported by marcandre (Marc-Andre Lafortune).

11 messages 2020/06/26

[#98968] [Ruby master Feature#16993] Sets: from hash keys using Hash#key_set — marcandre-ruby-core@...

Issue #16993 has been reported by marcandre (Marc-Andre Lafortune).

10 messages 2020/06/26

[#98997] [Ruby master Feature#17000] 2.7.2 turns off deprecation warnings by deafult — mame@...

Issue #17000 has been reported by mame (Yusuke Endoh).

16 messages 2020/06/30

[ruby-core:98835] [Ruby master Feature#14722] python's buffer protocol clone

From: muraken@...
Date: 2020-06-17 09:22:41 UTC
List: ruby-core #98835
Issue #14722 has been updated by mrkn (Kenta Murata).


I have a similar problem.  I want to share raw memory among the different C extension libraries, such as numo-narray, red-arrow, numpy.rb, and pandas.rb.

I intended to implement [PEP-3118](https://www.python.org/dev/peps/pep-3118/) like feature in Fiddle (See [ruby/fiddle#17](https://github.com/ruby/fiddle/issues/17) and [ruby/fiddle#18](https://github.com/ruby/fiddle/issues/18)), but it has not been done, yet. This feature is just related to C extension library layer, so Fiddle should be a suitable place to implement it. But it could not be done because we encountered the difficult issue: referring symbols in a C extension library from the other C extension library.

We need to introduce functions like `PyObject_CheckBuffer` and `PyObject_GetBuffer` for realizing buffer protocol. If we introduce `rb_fiddle_check_buffer` and `rb_fiddle_get_buffer` in fiddle.so, there is no portable and legal way to refer them from the other C extension libraries.

There are two ways to avoid this issue.

1. Introducing [libruby-fiddle.so](http://libfiddle.so) in Fiddle. This provides functions for C extension libraries. It is installed in the directory where [libruby.so](http://libruby.so) is located.
2. Implement buffer protocol features in Ruby's core.

I guess the former way is very difficult because we let `gem install` put `libruby-fiddle.so` in the appropriate place. So it is better to provide buffer protocol in Ruby's core if possible.

----------------------------------------
Feature #14722: python's buffer protocol clone
https://bugs.ruby-lang.org/issues/14722#change-86199

* Author: jsaak (jsaak jsaak)
* Status: Open
* Priority: Normal
----------------------------------------
Is there a way to implement, or even copy Python's buffer protocol in ruby?

There is an article that describes the benefits quite well:
https://jeffknupp.com/blog/2017/09/15/python-is-the-fastest-growing-programming-language-due-to-a-feature-youve-never-heard-of/

I did some work with machine vision, and the ability to manipulate images fast was also not realistic with ruby today.
This could be another area where ruby could shine.

Maybe this idea is worth a comment.



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

Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next