[REBOL] Re: Overhead for insert and blocks
From: al:bri:xtra at: 1-Nov-2000 8:13
Chris wrote:
> Andrew Martin wrote:
> > > Internally the files look like:
> > > ...how are blocks stored?
> > > ...is the data arranged in a single continuos memory area?
> > Watch carefully...
> But that doesn't actually answer my question. I'm not talking about the representation
the user sees, but how the data is actually held in memory. Is it a simple memory block,
single or double linked list, how are nested blocks handled: are they interleaved or
does the parent block contain pointers to the memory containing the nested blocks? What
exactly happens when a block is inserted into a block with /only?
>
> These implementation issues can have a huge effect on the speed of the script. I guess
I shouldn't really be worrying about such things but I'm an unrepentant C programmer
and habits are hard to break ;)
Note that the lines remain for the most part as I typed them in. This indicates that
Rebol stores the blocks as _text_ in a linear string after a little massaging.
It's only the list! data-type that's a bit different, but not by much.
And, as always with benchmarks, the best way is to test the speed yourself on your chosen
hardware.
Andrew Martin