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

World: r3wp

[Core] Discuss core issues

BrianH
26-Jan-2009
[12211x3]
Oldes, I can't find any compatibility differences, so that should 
be fine. Use MAKE instead of TO though - it's faster.
TO does weird conversion stuff so it is slower than MAKE (which does 
*less* weird conversion stuff).
Paul: I was tired yesterday, which was why I didn't do enough optimization 
- that's the reason :(
[unknown: 5]
26-Jan-2009
[12214]
I'm not complaining Brian.  I always do the same.  Which is why it 
is always best to present mezz type of functions ot the community 
for scrutiny before they go into any builds.  Just a wise way of 
doing things.
BrianH
26-Jan-2009
[12215x2]
That's why I posted it here before I posted it in DevBase :)
Wierdly enough, the make string! reduce block version of AJOIN is 
slightly faster in R3 than the native AJOIN, though it does have 
that intermediate block overhead - AJOIN could use some optimization. 
Who said mezzanines had to be slow?
[unknown: 5]
26-Jan-2009
[12217x2]
heh
Yeah, I would think we would want to change that then in R3 so that 
a mezzanine is not performing faster than native code.
Dockimbel
26-Jan-2009
[12219]
Side effect of slow interpreter loop and fast natives.
BrianH
26-Jan-2009
[12220]
The other way around, Doc. Mezzanines are not slow. It all depends 
on what the function is doing. Most of the time any interpreter overhead 
is dwarfed by the work the code is doing. This is why REBOL can be 
so fast when do much of it is written in REBOL.
Dockimbel
26-Jan-2009
[12221]
Right for R3 AJOIN exception, other way around.
Gabriele
27-Jan-2009
[12222]
BTW DideC, if you use now/precise instead of now/time/precise and 
use difference instead of - then you don't have a problem around 
midnight.
DideC
27-Jan-2009
[12223x2]
...or just avoid benchmarking arround midnight ;-)
Thanks for the advice anyway.
Will
27-Jan-2009
[12225x4]
good tip Gabriele, thx
about my problem (a couple of messages above) I can confirm that 
the problem doesn't exist with 2.7.5.

2.7.6, supposedly fixed [call] but did it introduce a new bug? has 
it maybe to do with hevy cpu, timing, rebol dns helper process?
I'm having a hard time producing code that reproduce the bug, if 
anyone can provide a piece of code that could stresstest [call] I'd 
be gratefull! 8)
or a problem with the GC upon quit when there are many words ?
[unknown: 5]
28-Jan-2009
[12229]
I posted a new function in the mezzanine thread at the Tretbase REBOL 
forum http://www.tretbase.com/forum/viewtopic.php?f=8&t=30&p=130#p130
Sunanda
28-Jan-2009
[12230]
Nice start,  Paul, to pulling the teeth of code you do not want to 
execute

I think you need to handled action!s too, otherwise some executable 
code can slip by:

>> defunction [abs trim change make select remove sort]   ;; etc, 
anything that is an action!
== [abs trim change make select remove sort]
[unknown: 5]
28-Jan-2009
[12231]
It is an easy modification but I actually made it to allow actions 
as I was using it briefly for that purpose.
[unknown: 5]
29-Jan-2009
[12232]
Posted the get-block function to the mezzanine thread on the Tretbase 
forum http://www.tretbase.com/forum/viewtopic.php?f=8&t=30&p=131#p131
Josh
30-Jan-2009
[12233]
Is there a simple way to convert a char number to the actual integer? 
(i.e. to-integer #"5" giving 5 as a result)
Izkata
30-Jan-2009
[12234]
I usually go with:  to-integer to-string #"5"
Josh
31-Jan-2009
[12235]
Thank you
Henrik
31-Jan-2009
[12236]
>> to-integer form #"5"
== 5

Saves a couple of chars :-) (but profile it, it might be slower)
Chris
31-Jan-2009
[12237x2]
to-integer #"5" - 48
-48 + #"5"
Steeve
31-Jan-2009
[12239x2]
>> 0 + #"5"
==53
Usually, i use the the following tricks:
you can add several chars with integers in that way.
If the first value is an integer! it's returning an integer!
If the first value is a char! it's returning a char!

>> 0 + #"5" - #" "
== 21
>> #" " + 21
== #"5"
i mean, it was what chris tried to explain..
kcollins
31-Jan-2009
[12241x2]
Here's another way which is arguable cleaner, but more verbose and 
less efficient: p: "3" (index? find "0123456789" p) - 1
arguable => arguably
Josh
31-Jan-2009
[12243x2]
Thanks again, guys.
Someone had played around with doing huge integers in REBOL a while 
back, right?
Gregg
1-Feb-2009
[12245]
I have a partial string-math library. Not all ops, but no size limits.
Tomc
1-Feb-2009
[12246x2]
I have a 24 bit math implementation to do RSA  but never converted 
to or from other bases. It is from before Holgar did  encryption 
with thebignum library  nativly in  core/view which renders mine 
moot
and it isarbitrry precision as well
Dockimbel
1-Feb-2009
[12248x3]
I've just hit a serious issue in 2.7.6 on UNIX platforms today.


Briefly: CLOSE on TCP ports doesn't work anymore if CALL is used 
before CLOSE, in a AWAKE handler.

To reproduce this bug, get the tests scripts here :

write %server.r read http://softinnov.org/tmp/server.r
write %client.r read http://softinnov.org/tmp/client.r
write %foo.r read http://softinnov.org/tmp/foo.r


Then, read the comment section in %server.r and launch it to see 
by yourself : do %server.r

Notes:
     o Windows is not affected by this issue.

     o I consider this a major issue for all REBOL server applications 
     working in async mode and spawning processes.

     o I'm posting first here before RAMBO, so that people can test and 
     point out any possible bad interpretation from me.
Using LAUNCH instead of CALL shows the same issue.
If a few ppl can confirm this rapidly, I'll post a ticket in RAMBO 
and will knock on Carl's door to fix that asap.
Will
1-Feb-2009
[12251]
confirmed os x 10.5.6/intel /core 2.7.6
Maarten
1-Feb-2009
[12252]
Doc, iirc there was a same sort of isseu with system ports in pre-2.7.6 
and TCP and Gabriele got around it in the Detetcive project. He also 
wrapped up the async-call and made it available for linux then. I 
have it, he has it, but I suspect Gabriele can fill you in on the 
details. Let me know if (and how) you want it.
Dockimbel
1-Feb-2009
[12253x2]
Are you thinking about the async event TCP issue ('connect event 
IIRC) when used with the system port?
Well, thanks for the offer, having Gab's Call script would save me 
some useful time. Anyway, I would rather prefer Carl to fix this 
issue. Carl maybe forgot, but all RT's customers are running on R2, 
not R3. The priority should be clear.
Maarten
1-Feb-2009
[12255x2]
Yes, but not sure what it was anymore. I know Gabriele ran into something. 
Anyway, we have an async-call - basically the working linux version 
of your libv
Where do you want it, mail in this profile?
Dockimbel
1-Feb-2009
[12257]
Yes please.
Maarten
1-Feb-2009
[12258x2]
Are you in Qtask REBOL SIG? Then I'll post a link to the file there
Ah, ok, mail
Dockimbel
1-Feb-2009
[12260]
I receive emails from Qtask's lobby.