Re: Kat's 8bit sequences

new topic     » goto parent     » topic index » view thread      » older message » newer message

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.

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.

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.

-- 
Derek Parnell
Melbourne, Australia
Skype name: derek.j.parnell

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu