Re: Kat's 8bit sequences
- Posted by Dan Moyer <danielmoyer at ?ro?igy.net> Jun 01, 2008
- 714 views
Derek Parnell wrote: > > Dan Moyer wrote: > > > But *if there's no performance hit* for adding 8 bit byte value sequences, > > then those "others" might be encouraged to use Euphoria, which would > > generally > > be recognized as a (mostly) good thing for Euphoria? > > But that's the point. The current thinking is that Euphoria will actually run > slower than now if byte sequences were added to the mix of datatypes. And that > means slower for every Euphoria program not just those using byte sequences. > Ok. > The reason goes along the lines that currently, most operations in the backend > that use datatypes, need to decide what sort of thing it is first; is it an > integer, an atom, a sequence or an object? There are two bits set aside in the > 32-bit datatype entity reserved to tell the backend what sort of thing the > entity > is. 2-bits means four different possibilities. Now if we add a fifth datatype > we need to do something clever to identify it. A byte sequence is obviously > of type of sequence, so we could add to the sequence 'struct' a code that > differentiates > between a 32-bit sequence and an 8-bit sequence, but then every backend > operation > that deals with sequences will have to do this extra test before it can > perform > the operation, because the operation implementation will be different for the > different sequence types. Thanks for the explanation Derek. > > And how many Euphoria programs are there that doesn't use sequences. > > Now, how much of an impact this might be is pure guess work at this time. > > Then there is the new code needed to atually implement efficient 8-bit > sequence > operations. And there is a quite a bit of that needed. > > All this is going to take a lot of time to do. So, don't expect 8-bit > sequences > to make it in v4.0, but the door is definitely not closed on them. I expect > that there will be a few experimental editions to test out completing > implementations > and to gain insights into how to make it all efficient. As Euphoria is open > source that means those with expectations for byte sequences can be a part of > their development. > > I'm very sure that Euphoria will get byte sequences one day, but not right > away. Sounds good. Dan > > -- > Derek Parnell > Melbourne, Australia > Skype name: derek.j.parnell