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

World: r3wp

[!REBOL3]

Jerry
8-Dec-2010
[6475]
Say I have a huge file, there are some grabage bytes in its tail. 
How can I truncate it? Remove doesn't work on the file port.
ChristianE
8-Dec-2010
[6476]
Try CLEAR instead of REMOVE.
Jerry
8-Dec-2010
[6477]
Thanks ChristianE. It works.
Pavel
9-Dec-2010
[6478]
BTW the file couldn't be truncated from R3 I think (no func option 
available for this) but similarly as udp truncation is mentioned 
in c sources of host kit.
Andreas
9-Dec-2010
[6479]
As mentioned by Christian and Jerry, CLEAR works for truncation:

>> write %test.txt to-binary "foobar"
>> print to-string read %test.txt
foobar
>> f: open %test.txt
>> skip f 3
>> clear f
>> close f
>> print to-string read %test.txt 
foo
Pavel
9-Dec-2010
[6480]
Interesting
Kaj
9-Dec-2010
[6481]
You'd think that would have to map to the ftruncate() operating system 
function
Andreas
9-Dec-2010
[6482x2]
It does.
https://github.com/carls/R3A110/blob/master/src/os/posix/dev-file.c#L357
Kaj
9-Dec-2010
[6484x3]
Good thing we implemented that in Syllable a few years ago :-)
I vaguely remember we needed it for Arch, and later for SaMBa
Ah, and at first I patched it away in Ruby in its build procedure. 
That was a long time ago
btiffin
9-Dec-2010
[6487]
I've been away kids.  And the itch is back.  If my goal is embedding 
REBOL scripting in OpenCOBOL, do I dig into a host kit yet?  Can 
I access REBOL data from the C interface?   Plop REBOL data onto 
the stack?  Even bother to think about REBOL as an application extension 
language?  Umm, 64bit GNU/Linux.
GrahamC
9-Dec-2010
[6488]
Your absence was noted ... we had stand in go-go guys!
btiffin
9-Dec-2010
[6489]
Go rebols (vote for doc) go!   ;)
Kaj
9-Dec-2010
[6490x2]
Good to see you back :-)
You definitely need the host kit for those things. You'll have to 
use it in 32 bits mode for now
btiffin
9-Dec-2010
[6492]
Then, I shall wait.  I'm still trying to convince the office to lean 
to more REBOL, but hassles on 64bit FreeBSD put paid to that plan 
so far.  The hassles were not insurmountable or anything, just enough 
of an annoyance to foster dissetion in the ranks.    ...  so far 
...
Kaj
9-Dec-2010
[6493]
There should be very little problems with using 32 bits executables 
on 64 bits Linux
btiffin
9-Dec-2010
[6494]
Well, installing lib32 compat on FreeBSD was the first thing to get 
everyone's kackles up.   ;)   My little propagation routines still 
get to run, but usage pretty much stopped at the first app, as I 
got the 'not so much REBOL' from the higher ups, (having seen the 
kackles - that was all it took)
Kaj
9-Dec-2010
[6495x2]
But you want to use it on Linux, right? That usually comes with 32 
bits support installed
A better solution is to get rid of the higher-ups, of course
btiffin
9-Dec-2010
[6497x2]
Our production servers are FreeBSD.
And, nah, I like my higher ups just fine.   :)
Kaj
9-Dec-2010
[6499x2]
Right, but you just want to get started now, don't you?
The BMW has arrived now. Don't let it pass you by :-)
btiffin
9-Dec-2010
[6501]
Too late ... for now ... I wrote the data shuffle code over a year 
ago.  And until I can show a hassle free install (by others), I don't 
want to push for REBOL training again.   When 3.0 gels a bit, I'll 
stop say ... for now ... and ask, now Canwecanwecanwe?   :)  It will 
come.
Kaj
9-Dec-2010
[6502]
By that time, you'll still have to go through the same path of creating 
a COBOL interface
btiffin
9-Dec-2010
[6503]
Oh, sorry Kaj, two different topics really.   OpenCOBOL is for fun. 
   Getting REBOL (not embedded, but full on REBOL apps) in the shop 
has been a slow starter so far.  Not out, just down. ... for now 
...
Kaj
9-Dec-2010
[6504x2]
Yeah, that has been a difficult proposition for a very long time
I'm only now able to move from Ruby to REBOL myself
Pekr
10-Dec-2010
[6506]
Kaj: "I'm only now able to move from Ruby to REBOL myself" ... what 
is the reasong/condition, which allowed you to move to REBOL? Just 
curious ...
Kaj
10-Dec-2010
[6507x8]
I've always needed it to run on both Syllable and Linux. I finally 
got R3 to work on Syllable a year ago, but it had proved buggy when 
porting my CMS
Most things I still can't do with it, because there's no GUI
Then eventually, the open source issue will remain, because I can't 
use it for Syllable system tools
The lack of GUI means only web apps can be made, but there wasn't 
an acceptable web framework for REBOL
I used QuarterMaster in the past year, but I can't take that and 
Cheyenne with me now that R3 finallt starts working
Hence I'm forced to make my own CMS
And I'm forced to keep it working on both R2 and R3, so I can't use 
new R3 features
Not exactly a sales story, is it?
Awi
12-Dec-2010
[6515]
Is there anything like WAIT/ANY [3 read http://www.rebol.com]. It 
would either  return none if 3 seconds elapsed, or the content of 
www.rebol.com ?
Maxim
12-Dec-2010
[6516]
as in a timeout?
Kaj
13-Dec-2010
[6517]
I guess so. I think it has to be programmed by opening in async mode
Maxim
13-Dec-2010
[6518]
yeah, I did a few tests using async, but its a bit tricky, nothing 
as elegant as what Awi proposes/asks
Jerry
13-Dec-2010
[6519]
is there a way that I can do to pre-allocate a huge file? Pre-allocated 
file will have a continuous disk space, which makes seeking fast.
Maxim
13-Dec-2010
[6520x2]
something like? :

write %file head insert "" 1000000
oops... 

write %file head insert/dup "" " " 1000000
Jerry
13-Dec-2010
[6522]
Maxim, I am not sure if doing that will have a continuous disk space. 
Why don't we have something like this: make %file 100000000
Maxim
13-Dec-2010
[6523]
usually it will depend on disk fragmentation.  I'm not sure all OS 
allow you to force a contiguous disk area. 

on any OSes which allow it, it could be a good suggestion for R3.
Jerry
13-Dec-2010
[6524]
Actually, I am making a NoSQL in R3 for Chinese Social Network Analysis. 
I have more than 20,000,000 records, and every records might need 
a few KB.