>> b: [ 1 2 3 ] save/header %t.r compose/deep[a: [(b)]]  []
>> print read %t.r                                         
REBOL []
a: [1 2 3]

> I'm trying to do something that Rebol should handle so
> easily but it's taking me way too much time so I could
> use a couple of tips to get going.
> 
> I have a small DB that I usually (in C++) construct 
> by using an INI (Win32) file - where each section is
> a new record and it has some number of keys/values.
> I now want to change the format of this INI file so
> that it takes full advantage of the Rebol do/load and
> save mechanisms.
> 
> An example of the DB - this is what the file (myp.dat) should look like
> after it is built (it doesn't exist initially):
> 
> myprops: [
>       db [
>               "item1" [x1 "x1" y1 "y1"]
>               "item2" [x2 "x2" y2 "y2"]
>       ]
>       other ["junk"
>       ]
> ]
> 
> Simple enough.  So what I want is to use 'do to bind myprops
> so I can directly use it and then use 'save to save the block
> after modification.  I'm just not sure the best way to do this
> kind of thing because 'save won't place the myprops: assignment
> in the file.
> 
> either (exists? %myp.dat) [do %myp.dat] [myp: [db ["item1" [...] "item2"
> [...]] other[]]]
> probe myp/db
> ; modify myp/db as needed
> save/header %myp.dat myprops []
> 
> The problem is the result file just contains the db [] and other [] blocks.
> I can't get myprops: into the file.
> That would be fine if I could assign myprops to the result of the 'do or
> 'load
> like:
> 
> myprops: [do %myp.dat]
> 
> but I don't know how to make that work (get Rebol to 'do and place the
> result in the block - not to put the literals in the block).
> 
> Any ideas?  How are you guys accomplishing similar things?
> 
> TIA,
> 
> Rodney
> 
> 
> 

Reply via email to