Issue #6361 has been updated by MartinBosslet (Martin Bosslet).


mame (Yusuke Endoh) wrote:
> Martin Bosslet and Joshua Ballanco,
> 
> Sorry but this proposal was rejected at the developer meeting (7/21).
> 
> Matz explicitly said he will not accept another class than String.
> He hates Python way.
> 

No problem! It's very specific and I understand well that it certainly
adds complexity that is not needed often enough. I still believe that
having something like ByteString would boost low-level IO performance a
lot - I'll take the gem route then, I have some ideas there. Maybe I'll 
get the chance to discuss some of them with Matz at LSRC next week :) 
 
> Two additional notes:
> 
> * The original request (bitwise string operation) was not considered
>   because it is not essential for ByteString; if you want, please file
>   a new ticket for the specific feature with the detailed spec including
>   corner cases (e.g., [ruby-core:44646]).

OK, I'll open another issue for this.

----------------------------------------
Feature #6361: Bitwise string operations
https://bugs.ruby-lang.org/issues/6361#change-28587

Author: MartinBosslet (Martin Bosslet)
Status: Rejected
Priority: Normal
Assignee: 
Category: core
Target version: 


I know this has been discussed a lot in the past (and if there's still 
an open issue for this, I apologize, I couldn't find one), for example
in [1]. While it is generally no problem to implement this on the fly,
I still find that built-in support would be a real improvement. There
are quite some use cases in cryptography where this would come in very
handy, but I'm sure there are lots of other areas, too.

While of course I understand the reasons that were given in the previous
threads that ultimately lead to rejection, I still would like to reopen
the discussion as I felt that in every thread so far the consensus was
that having bitwise string operations would indeed be quite valuable. 

[1] http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/34586


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