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

World: r3wp

[View] discuss view related issues

shadwolf
8-May-2005
[973]
you can save even more space by switching to binary 64bits ;)
Izkata
8-May-2005
[974x2]
Ah.. I forgot about that lol
Looks wacky, but it works well!   =^)
Janeks
8-May-2005
[976]
Does somebody face with the plugin problem that I got!? I tried to 
setup an Rebol script as a Plugin in webpage, but got message Cannot 
run ...script name.r. Then to be shure that all is o'k I just copied 
an example (web page and Rebol script) from www.rebol.com and put 
on my localhost web server. All of those examples works fine on my 
IE6 and WinXP.  But when I tried the same example on my localhost 
web server I got the same message. Of course I changed parameter 
LaunchURL to point to the same (copied) script on my localhost. What 
is a diffrerence in environments that I don't know and how to solve 
this problem?
Claude
8-May-2005
[977]
rebview1210231.exe is out on http://www.rebol.net/builds/031/
shadwolf
8-May-2005
[978]
fantastic ;)
Allen
8-May-2005
[979]
FYI: Baseline releases for REBOL/View 1.3 project development only. 
Contains back-merged 2.5.58 changes (async kernel w/o async). Fixes 
a few dozen bugs. Includes new GC methods.
shadwolf
8-May-2005
[980x3]
sure but GC is still problematic maybe it could be interresting to 
rethink this part ... :)
Type "desktop" to start desktop.
WARNING: CALL function enabled in this version.
To see most recent beta changes, type: changes?
>> fun: func [/local i ][print i for i 1 10 1 [] print i ]
>> fun fun
none
none
none
none
>> stat
** Script Error: stat has no value
** Near: stat
>> stats
== 3769230
>> recycle
>> stats
== 2937954
>>
in this VM there is nothing or near nothing done and yet we get a 
lot of memory used for nothing ...
Anton
8-May-2005
[983x2]
You should recycle first.
and keep recycling until it is stable.
shadwolf
8-May-2005
[985]
yes but why I have 800 Ko used for a ingle function with a local 
var called twice
Anton
8-May-2005
[986]
I see 2.4 kb used.
Ashley
8-May-2005
[987]
We should not have to worry about how and when recycle works. It 
should just work.
Anton
8-May-2005
[988x3]
I agree, mainly.
shadwolf, see this:
>> fun: func [/local i ][print i for i 1 10 1 [] print i ]
>> stats
== 3792829
>> recycle
>> stats
== 2944354
>> recycle
>> stats
== 2944354
>> fun fun
none
none
none
none
>> stats
== 2945682
>> recycle
>> stats
== 2944450
>> recycle
>> stats
== 2944450
>> 2945682 - 2944450
== 1232
That's not too much is it ?
shadwolf
8-May-2005
[991]
3792829 -  2944354 that's mutch ;)
Anton
8-May-2005
[992]
Well, maybe rebol just needs to do a recycle at the end of its startup.
shadwolf
8-May-2005
[993x4]
Type "desktop" to start desktop.
WARNING: CALL function enabled in this version.
To see most recent beta changes, type: changes?
>> stats/frames
== [1536 1401 135 135 12522]
>>
with nothing else done
Type "desktop" to start desktop.
WARNING: CALL function enabled in this version.
To see most recent beta changes, type: changes?
>> recycle
>> stats/frames
== [1536 1121 415 415 11396]
I don't know exactly what means those values
Ashley
8-May-2005
[997]
Knowing some simple memory management techniques that assist recycle 
is useful, such as:

	my-big-binary-image: none
	unset 'my-big-object

 feel: my-feel	; instead of make .. where common code can be shared
	...
Henrik
8-May-2005
[998]
hmm.. under linux the internal version stops when I start it up after 
initial messages. It doesn't display a prompt...
Ashley
8-May-2005
[999]
>> help stats
USAGE:
    STATS /pools /types /series /frames /recycle /evals /clear

DESCRIPTION:
     System statistics.  Default is to return total memory used.
     STATS is a native value.

REFINEMENTS:

     /pools -- Returns: width units free-units units-per-alloc segments 
     mem-in-use
     /types -- Returns: Datatype count

     /series -- Returns: total blocks strings other avail free expansions
     /frames -- Returns: total used unused free values-total

     /recycle -- Returns: count series-total series-last frames-total 
     frames-last ballast
     /evals -- Returns: values functions blocks
     /clear -- Clears the evals counters
shadwolf
8-May-2005
[1000]
Ashley I know  this but that's not explain what means all the numbers 
in the recycle/frames result
Ashley
8-May-2005
[1001]
That's one for Carl I think.
Anton
8-May-2005
[1002]
I think a "frame" is an internal interpreter structure or object.
shadwolf
8-May-2005
[1003]
but in fact the GC is problematic I would prefer a dealloc/realloc 
each time a ": " is found by the REBOL  code parse engine ;)
Anton
8-May-2005
[1004]
I think that would be very slow.
shadwolf
8-May-2005
[1005]
instead of having frames not related to a rebol word and  still allocated 
in memory until the GC decides to do he's job ;)
Anton
8-May-2005
[1006]
But I also admit my opinion is probably useless until I've studied 
and tested various garbage collection schemes.
shadwolf
8-May-2005
[1007]
Slow ?  slower than what letting the memory as this for sure  !!!!
Anton
8-May-2005
[1008]
that's right - slower.
shadwolf
8-May-2005
[1009]
but slower than making a recycle on every show function calls in 
Vid application like what was done in  rebgui  ?? I don't think so 
;)
Anton
8-May-2005
[1010]
you're trying to fight the system without coming up with a better 
one, that's all.
shadwolf
8-May-2005
[1011x7]
What is the true basic problem ?? I have in rebol memory chunks unrelated 
with world on the diccionnary of rebol  and this make the memory 
management just impossible because it dépends on too many things 
unrelated with coding ...
Anton well we are limited basicly be C capabilities If recylcle know 
what to frames to erase it"s normal to ask why those frames are not 
cleared before using new ones ;)
that's logic nothing more ;)
Anton well we are limited basicly by C capabilities If recylcle know 
what to frames to erase it"s normal to ask why those frames are not 
cleared before using new ones ;)
hundreds of line C code are spent into the recycle function but only 
one line could be used free () :)
well i'm too simpling the thing ...
Rebol is not the only one to use GC but it's the only one to give 
coders so little control upon it ;)
Anton
8-May-2005
[1018x2]
C is definitely not Rebol. But consider this:
	a: b: context [data: "love me"]
	a: none
Obviously the object should not be freed yet.

The question is, should a full recycle occur (checking for unattached 
values) ?

I think that would make setting words very slow and degrade performance 
terribly.
(After all, just about every second word in rebol code is a set-word.)
shadwolf
8-May-2005
[1020]
Anton it depends if a; and b; store each the cloned content ;)
Anton
8-May-2005
[1021]
No, the object is shared in this case.
shadwolf
8-May-2005
[1022]
>> recycle
>> stats
== 2936994
>> a: make object! [print "I love rebol but not GC"]
I love rebol but not GC
>> stats
== 2937746
>>