This is a multi-part message in MIME format.
--------------FFD28B6DB347B3A976E8662E
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Yukihiro Matsumoto wrote:

> Hi,
>
> In message "[ruby-talk:4849] FEATURE REQUEST: Fixnum bitfields"
>     on 00/09/12, Wayne Scott <wscott / ichips.intel.com> writes:
>
> |why not:
> |
> |fixnum[bit,len]    access a bitfield in number
> |bignum[bit,len]    access a bitfield in number
>
> Do you mean 0xbabe[16,8] returns 0xba?
> Hmm, is this useful?  Or just for completeness?
>
> |fixnum[Range]      access a bitfield in number
> |bignum[Range]      access a bitfield in number
>
> Same as above.  I agree with your friend.  Persuade me.
>
> |While I am on the subject of bitfields where is another question.
> |Supose I read a series or raw 256 bit data chunks from a file into
> |Strings.  How can I transfer them to Bignum's so i can do bitwise ORs
> |and ANDs on them.  (I want to convert my CRC checksum generator for
> |CPU caches from perl to Ruby.)
>
> def bits2num(str)
>   n  
>   str.each_byte do |c|
>     n << 
>     n | 
>   end
>   n
> end
>
>                                                         matz.

Some implementation of bit fields would certainly be nice.  Personally, I
lean toward packed arrays of boolean, but something that could extract a
set of flags from a word in one pass is a bit more flexible.  The
proposal of syntax makes sense, and increasing the symmetries is good.

OTOH, this isn't a frequently needed feature, so perhaps library routines
are a better approach.  Still, there's lots of things that are best
implemented as sets, and bit strings are the classic way to implement
small sets.  Sometimes making a feature available opens up whole new
styles of programming.  Look at what making grep style patterns available
within the language did to the way they are used.


--------------FFD28B6DB347B3A976E8662E
Content-Type: text/x-vcard; charset=us-ascii;
 name
harleshixsn.vcf" Content-Transfer-Encoding: 7bit Content-Description: Card for Charles Hixson Content-Disposition: attachment; filename
harleshixsn.vcf" begin:vcard n:Hixson;Charles x-mozilla-html:FALSE org:MTC adr:;;;;;; version:2.1 email;internet:charleshixsn / earthlink.net title:Data Analyst x-mozilla-cpt:;0 fn:Charles Hixson end:vcard --------------FFD28B6DB347B3A976E8662E--