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


nobu (Nobuyoshi Nakada) wrote:
> Hi,
>  
>  (12/04/28 9:53), MartinBosslet (Martin Bosslet) wrote:
>  > A real advantage of having it built-in could be
>  > that this gives us the chance to fix #5741 at
>  > the same time.
>  
>  It doesn't explain anything about why they need to be built-in.  You
>  can just make them an external library altogether, can't you?

I thought about this, and yes, you are absolutely right, there's
nothing I couldn't do in a separate C extension. The only remaining
argument I have for built-in support:

I would have liked to use the "secure memory erasure" feature within
the OpenSSL extension, which I couldn't do if it's a separate
library outside of the stdlib.

I'm not sure if that's enough. Especially since we could add the
functionality to OpenSSL directly. Being a "nice to have" feature
in itself probably would not justify adding built-in support, but
I'm fine with either decision.


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

Author: MartinBosslet (Martin Bosslet)
Status: Feedback
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/