r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3-OLD1]

BrianH
21-Jan-2009
[9762]
Carl is busy enough as it is. Let's wait to optimize RebDev until 
the DevBase parts are included, or at least until the source is out.
Henrik
21-Jan-2009
[9763]
Steeve, can you explain in a few lines what it does? It simply stores 
a block as a file and lets you seek/edit it?
Steeve
21-Jan-2009
[9764]
Right Brian,  but more the client grows more it will  need time to 
rewrite it.

The hard work doesn't come from the replacement of blocks with  virtual 
blocks (it's minor).

The problem comes from useless needs to reload and sort blocks in 
memory after each connection.

Outside the big respect i have for Carl, it's a poor conception, 
sorry.
[unknown: 5]
21-Jan-2009
[9765]
So virtual blocks is a storage of blocks in a blocks that is then 
loaded into memory?
Steeve
21-Jan-2009
[9766]
Henrik, yes a virtual block act like a block, you can use most natives 
which handle blocks as is.

The gain is that there is no block bloating the memory, all actions 
are converted to file actions.

So you can work with blocks containg millions of data with no pain 
and overhead.
[unknown: 5]
21-Jan-2009
[9767x2]
Trying to follow so bare with me...
Your storing data in blocks into a file that is one large container 
block?
Steeve
21-Jan-2009
[9769]
the virtual block acts like block. you can store any type of values 
in it (which are blocks or not)
[unknown: 5]
21-Jan-2009
[9770]
So is a virtual block in essence a file?
Steeve
21-Jan-2009
[9771]
yes
[unknown: 5]
21-Jan-2009
[9772]
Is the whole file loaded into memory at once or is data read from 
it in chunks?
Steeve
21-Jan-2009
[9773]
chuncks, i said no memory overhead, if not there is no interests 
to develop such scheme
Henrik
21-Jan-2009
[9774]
so we can basically manage gigabyte sized blocks?
[unknown: 5]
21-Jan-2009
[9775x2]
Yes, good.
So does it maintain the index order of the individual blocks within 
it?
Steeve
21-Jan-2009
[9777x2]
yes Henrik, we can
yes Paul it uses 2 files: an index and the data
[unknown: 5]
21-Jan-2009
[9779]
Oh, I see.
Henrik
21-Jan-2009
[9780]
Steeve, I could use that. :-)
[unknown: 5]
21-Jan-2009
[9781]
This is a bit like Tretbase.
Henrik
21-Jan-2009
[9782]
so the data is a plain binary?
[unknown: 5]
21-Jan-2009
[9783]
Tretbase uses data and a index.
Steeve
21-Jan-2009
[9784]
yes Paul like your tretbase conception, the only difference is that 
it's a scheme and there is no new functions to deal with.
The programmer can continue to think is working with a block.
Mchean
21-Jan-2009
[9785]
does rebdev work with chat from r3?
[unknown: 5]
21-Jan-2009
[9786]
Cool Steeve.
Henrik
21-Jan-2009
[9787]
Mchean, rebdev is chat. Same thing.
[unknown: 5]
21-Jan-2009
[9788]
How is the  performance Steeve?
Steeve
21-Jan-2009
[9789]
No Henrik, the data are stored like rebol values (not in binary or 
other obfuscated format).

It means that you can load the data files (with load %data) and you 
will load that whole block into memory.
Pavel
21-Jan-2009
[9790]
Steeve&Paul where to read about I missed the point
[unknown: 5]
21-Jan-2009
[9791]
About  what part Pavel?
Henrik
21-Jan-2009
[9792]
Steeve, could the file be compressed or is that too much overhead 
or unfit for the scheme?
Pavel
21-Jan-2009
[9793]
virtual block scheme
[unknown: 5]
21-Jan-2009
[9794x2]
That is Steeve's design.
Mine is a bit different.
Mchean
21-Jan-2009
[9796]
Henrik when i enter chat in R3 console i get Script error: chat has 
no value
Pavel
21-Jan-2009
[9797]
is it available?
Steeve
21-Jan-2009
[9798]
Paul, i can't test the perfs currently, because there is some remaining 
bugs in the file scheme, so that i have to open close the ports each 
time a value is append in the block.
[unknown: 5]
21-Jan-2009
[9799]
Virutual block scheme? - I think it is going to be in R3.
Pavel
21-Jan-2009
[9800]
OK
[unknown: 5]
21-Jan-2009
[9801x4]
Yes, I konw how that is.
In Tretbase, I decide to incorporate a second method that uses just 
the data file and reads blocks from it.
It required that I had to create a block parser.
So it is essential like read/lines but instead it reads blocks.
Henrik
21-Jan-2009
[9805x2]
mchean, it's only available in the latest alpha.
>> source chat
chat: make function! [[
    "Open REBOL DevBase forum/BBS." /local err
][
    print "Fetching chat..."
    if error? err: try [do http://www.rebol.com/r3/chat.rnone] [

        either err/id = 'protocol [print "Cannot load chat from web."] [do 
        err]
    ]
    exit
]]
Steeve
21-Jan-2009
[9807]
Henrik, there is no need to automaticly compress the  data. If you 
want so, just append compressed data in the block.
>> append v-block compress data
Henrik
21-Jan-2009
[9808]
Steeve, that takes up double size on disk, doesn't it?
Steeve
21-Jan-2009
[9809]
don't see your point Henrik, double size compared with what ?
Henrik
21-Jan-2009
[9810]
compared to an actual binary. you said, that data was stored as plain 
REBOL data in the file.
Steeve
21-Jan-2009
[9811]
but if you want to store binary data, just add binary data, i do 
not any conversion, store your data int he format you want