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

World: r3wp

[Core] Discuss core issues

Will
1-Feb-2009
[12268]
anyone else on non window os can test and confirm please?
btiffin
1-Feb-2009
[12269]
I made a post about 2.7.6 being near the end of life of the REBOL 
2 line.  I was told by Carl that I was mistaken ... completely.  
That was oh, 8 months ago or so.   At that time; REBOL 2 is still 
very much an RT supported product line and there are no plans to 
change that stance.
Oldes
1-Feb-2009
[12270]
Does anybody has a script which for example prints out all REBOL 
actions or natives?
btiffin
1-Feb-2009
[12271]
Oldes;  one-liners can be had with
help action!
help native!
or were you looking for more?
Oldes
1-Feb-2009
[12272x2]
actions: copy []
natives: copy []
word-names: first system/words
word-types: second system/words
while [not tail? word-names][
	switch type?/word first word-types [
		native! [append natives first word-names]
		action! [append actions first word-names]
	]
	word-names: next word-names
	word-types: next word-types
]
?? actions
?? natives
I'm almost ready with the lexer for Python's Pygments syntax highlighter. 
Just need to define the keywords.. All the time I do it I don't know, 
which one to choose:)
[unknown: 5]
1-Feb-2009
[12274]
Yes, but what does SUPPORT of R2 mean?
Dockimbel
2-Feb-2009
[12275]
The only support I expect is R2 C-level bugs fixing.
Anton
2-Feb-2009
[12276x3]
Oldes, confirmed on Kubuntu 7.10 rebview2.7.6.4.2
After 5 seconds, client.r and foo.r are present:

$ ps aux | grep reb[v]iew

anton     9006  0.0  0.4  13268  9656 pts/1    SNs+ 00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9007  0.0  0.0   6084   536 pts/1    SN+  00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9008  0.0  0.0   6084   464 pts/1    SN+  00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9072  0.3  0.3  11952  8228 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws client.r

anton     9073  0.0  0.0   6128  1084 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws client.r

anton     9074  0.0  0.0   6084   468 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws client.r

anton     9079  0.5  0.3  11828  8068 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws foo.r

anton     9080  0.0  0.0   6084   536 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws foo.r

anton     9081  0.0  0.0   6084   464 pts/1    SN+  00:35   0:00 
/rebol/rebview2.7.006.4.2 -qws foo.r

After foo.r finishes waiting:

$ ps aux | grep reb[v]iew

anton     9006  0.0  0.4  13268  9656 pts/1    SNs+ 00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9007  0.0  0.0   6084   536 pts/1    SN+  00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9008  0.0  0.0   6084   464 pts/1    SN+  00:33   0:00 
/rebol/rebview2.7.006.4.2 -s -- do-anton-user?: true

anton     9072  0.4  0.0      0     0 pts/1    ZN+  00:35   0:00 
[rebview2.7.006.] <defunct>

anton     9079  0.4  0.0      0     0 pts/1    ZN+  00:35   0:00 
[rebview2.7.006.] <defunct>


And when close port is done before call in the awake function, then 
client.r becomes defunct while foo is still waiting.
Sorry, that was a bit large.
BrianH
2-Feb-2009
[12279]
Doc: "The only support I expect is R2 C-level bugs fixing."


Don't forget mezzanine bug fixing and the backports, which are community 
support. No new C-level features are likely, except for backported 
tweaks to the natives. New mezzanine-level features we can add ourselves, 
but remember that R2 is in compatibility mode right now. We shouldn't 
break the existing R2-compatible code if we can avoid it, since that 
compaatibility is the main advantage of supporting R2.


Future releases of R2 will have even more backported functions from 
R3, but these will be in a separate file of the source. It is likely 
that this separate file will need to be loaded if you want to use 
its functions, so there will be no new predefined words by default. 
You can load the file if you want to make your code more R3 compatible. 
This is likely the best way to ensure compatibility.
Dockimbel
2-Feb-2009
[12280x2]
Anton: thanks for taking the time to test it.
Brian: I should have precised "from Carl". Obviously having mezz 
backported from R3 is a good thing to make the transition smoother. 
But it's not like R3 will become really usable in a month or two. 
We're talking about years before reaching 3.0. In the meantime, R2 
C bugs (not new C feature) have to be fixed one way or another in 
order to support those that use REBOL to run businesses since years.
BrianH
2-Feb-2009
[12282x2]
I agree.
But you already mentioned C-level bug fixing - I didn't see the need 
to repeat what you said :)
Dockimbel
2-Feb-2009
[12284]
Well, that was just to be sure there's no misunderstanding :-)
BrianH
2-Feb-2009
[12285]
:)
Janko
2-Feb-2009
[12286]
I plan on putting cheyenne web-app in usage (on linux vps) this week 
... does this mean that until the bug is fixed it won't work properly?
Dockimbel
2-Feb-2009
[12287]
I've workaround it. It was only appearing on resetting workers using 
USR1 signal. Now I've fixed it and it seems ok. I'll release the 
fix tonight, so everyone can test it.
Janko
2-Feb-2009
[12288]
great thanks :)
Will
2-Feb-2009
[12289]
janko: will that be on linode?
Janko
2-Feb-2009
[12290]
yes, probably it will be... I have to decide if I should put this 
on some local vps that I already have for some local project (in 
my country), or if I should reactivate the linode server. I still 
have the account there but I removed the servers at linode so money 
is preserved waiting to start again :)
eFishAnt
5-Feb-2009
[12291x2]
Anyone know what a decompress script Error problem -3 means?

>> decompress to-binary data
** Script Error: Invalid compressed data - problem: -3
like, where do I look for a "problem -3" meaning? (maybe it means 
a bad compressed crc, or maybe data out of range or ???)
Henrik
5-Feb-2009
[12293]
perhaps the decompression length? AFAIK, REBOL needs to know how 
much needs to be decompressed before it will do it.
Oldes
5-Feb-2009
[12294x2]
Carl? I don't think Rebol checks for CRC. Whatever it is, the data 
are not decompressable from REBOL
but problem is maybe on your side... it's strange that you do to-binary 
data. If you read the data as text, REBOL changes line breaks so 
it modifies the content.
eFishAnt
5-Feb-2009
[12296x2]
It is gzip data, and the to-binary was a hack.  It doesn't work either 
way.  I thought the REBOL script in the library, gunzip.r might work 
for me, but it is a rather crazy script that I don't quite understand, 
but the GUN in GUNzip.r shot me in the foot.
decompress wants a string, and binary is a string, so that's what 
made me think to do to-binary...
Dockimbel
5-Feb-2009
[12298]
The error code is probably the one returned by the underlying layer 
(assuming REBOL uses internally zlib) :

#define Z_ERRNO        (-1)
#define Z_STREAM_ERROR (-2)
#define Z_DATA_ERROR   (-3)
#define Z_MEM_ERROR    (-4)
#define Z_BUF_ERROR    (-5)
#define Z_VERSION_ERROR (-6)

(from http://www.zlib.net/manual.html#Constants)
Gabriele
6-Feb-2009
[12299x2]
If it's gzip data, you need to add REBOL's "footer" with the decompressed 
length for decompress to work.
(just 4 bytes at the end, i don't remember if it's little or big 
endian though, i'd guess it would be network endian for compatibility 
across all platforms)
Anton
6-Feb-2009
[12301]
Looks little endian.
>> compress "abc"
== #{789C4B4C4A0600024D012703000000}
eFishAnt
6-Feb-2009
[12302]
Thanks, some very insightful info there.  This is one of those times 
for me to build a little script before putting it into the huge one...;-)
Janko
8-Feb-2009
[12303x4]
Hi, I have 2 questions that I have been wondering for a while... 
if they would be true it would mean that rebol can *also* easily 
mimic the 2 models of  some specific languages that offer then ..
With all the retrospection going on, can I somehow get whole current 
namespace/memory image/state of rebol interpreter as a block and 
save it to a file for example?
ot at least all "user-namespace" , for example I define dew functions, 
and few variables, then I run app for a while, can I at some point 
get values of all my words ("variables" + functions) and "export" 
them
hm, I see there is system/words but I didn't manage to really see 
what's in because if I probe it it blocks my computer , too many 
words probably..
[unknown: 5]
8-Feb-2009
[12307]
;just use:

first system/words
Dockimbel
8-Feb-2009
[12308]
or >> help system/words
Janko
8-Feb-2009
[12309x3]
hi Paul ... yes, I just am hacking that :) this is how I got my defined 
words:  next find first system/words 'et .. well at least names of 
them
(and Doc)
hm.. now it doesn't work
[unknown: 5]
8-Feb-2009
[12312x2]
Janko, what a lot of us do when we build a script is create one large 
object and build our functions and values off of it.
Then instead of looking through first system/words you can simply 
do first whatever-your-object-name-is.
Will
8-Feb-2009
[12314]
word-block: func [/init /dif /list /show /local f t w][
	if init [
		init-words: query system/words
		query/clear system/words
	]
	if dif [intersect init-words query system/words]
	if list [query system/words]
]
Janko
8-Feb-2009
[12315]
aha, yes.. this is good option... but if it's possible without this 
it would be even better.. so you are not limited
Will
8-Feb-2009
[12316]
old stuff, not sure.. ;-)
Janko
8-Feb-2009
[12317]
(my answer  was to Paul)