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

World: r3wp

[RAMBO] The REBOL bug and enhancement database

Benjamin
6-Oct-2005
[1240]
that damm article,  yes i've read it too many times maybe... ok what 
about this  

a: make struct! [x [integer!] y [integer!] z [struct! [ xy [integer!] 
yx [integer!]]]] none 
length? third a 

== 12 <--- it has 4 integers thats 16 not 12 !  what about 0141.html 
now ????
Volker
6-Oct-2005
[1241]
xy is a pointer to a struct, nt the struct itself.. sadyl we lack 
nested structs.
Benjamin
6-Oct-2005
[1242x2]
yes it's a pointer to the struct, a workaround my be done because 
you can know how many intems are including the nested one's, and 
as far i can see rebol assigns 4 bytes for all datatypes meaning 
strings and nested structures ar also pointers
you can use size: (length? second a) * 4
it may fail :-)
Volker
6-Oct-2005
[1244]
yes, all pointers. workaround for amll structs is: z [integer!] z1 
[integer!] ; in the main stuct. for other things you can try binaries 
and deal with offsets. or write a wrapper in c.
Benjamin
6-Oct-2005
[1245]
yes that's execly what im doing ;-) i send a number to C it read 
n data from the pointer and then passes to rebol as a string the 
i use Romanos's wraper to cast that into a structure; but i get ocational 
crashes when reading fron a crazy pointer :-) i consider this a hack, 
but still may work ...
Volker
6-Oct-2005
[1246x2]
attention: pointers in structs are considered strings. they are copied 
back *until* a 0 is found.
workaround: use two references: rebol-ref: make binary! 1234 struct/pointer: 
rebol-ref
then access things thru rebol-ref
Benjamin
6-Oct-2005
[1248]
yes thats why im sending the amount of bytes to read back to the 
C wraper still it gave me a haed hache lol
Pekr
6-Oct-2005
[1249x2]
if I would even understand what you are talking about, guys :-)
so you trying to say, that if there is struct inside a struct, you 
don't use it, you just provide it with "flat" binary, and then you 
compose things back in rebol level? Why is that better than using 
structs in structs?
Benjamin
6-Oct-2005
[1251]
well realy the thing is... did you remember that windows sometimes 
adresses structures in window messages like lparam or wparam, so 
i get the nasty number, and i've to buil a structure back from this 
*pointer*,..... because i do drugs :-)
Volker
6-Oct-2005
[1252x2]
well, you cant see what we do, because we crawling under the cars 
engine here ;)
but yes, you are right.

its because rebol has no inner structs. when you declare them, it 
actually allocates a pointer there.

thats fine with own code. but os expects real inner struct, so we 
have to workaround to allocate the right space.
but if you can code c, i would do all the os-coding in c then, and 
use rebol-structs only for pasing between rebol and my c. gives os-includes 
without any pain, much easier.
Pekr
6-Oct-2005
[1254]
coding in C stinks .... I don't wanna carry C compiler with myself, 
unless included in Rebol ;-) Librry interface should be enhanced 
then. What about trying to post a wish into RAMBO?
Benjamin
6-Oct-2005
[1255x2]
some years ago i've used a realy cool compiler rapidq the bastard 
dident have the posibility to pass structures back that time i used 
this kind of workaround
what do you mean ?
Pekr
6-Oct-2005
[1257]
I don't even know what do I mean. The only thing I know is that I 
find wrapping libraries not all that comfort and I would like to 
ask those having experience with Python,Perl or any other language, 
if they have some easier way of how to do that or not ...
Volker
6-Oct-2005
[1258]
c-compiler costs me ~4mb if it is a big one. and a good interface 
needs processing includes. basically that *is* a c-compiler included 
in rebol then ;)
Pekr
6-Oct-2005
[1259x2]
Maybe the trouble is really in me and not being able to properly 
do datatype conversion and all those structure wrappings etc.
well then, so big :-)
Benjamin
6-Oct-2005
[1261]
yes i know what you mean i put = in rebol and : in C also i get lots 
of sintax error mising semicolon.... wrapers stink
Volker
6-Oct-2005
[1262x2]
No, the problem is rebol has a good c-interface and a pretty good 
with some meta-programming. (to avoid this double-declaration in 
rebol and c). but it has a terrible os-interface (by lack of full 
c-structs and includes). if you accet that and interface onyl to 
your code, its wonderfull (as wonderfull as c can be).
then you write lots of little accessor-function to pick things out 
of os-structures. sounds terrible, but actually all 1-liners.
Benjamin
6-Oct-2005
[1264]
c has a verry strong type checking thats cool for some cross over 
plattaform but wen it comes to rebol interface you get mad ...
Volker
6-Oct-2005
[1265]
if you try to mimic c-structures. if you create c from rebol-structes, 
it acceptable. maybe does not really check parameter-types, IIRC. 
but not sure, i rarely need rebol<->c and more rarely make that error.
Volker
8-Oct-2005
[1266x2]
Is this wine or real windows too?
>> to-money 0.09
== $9.00
wrong with everything with leading zeros.
does not happen on linux.
to-money 1.09 works ok.

Does money string-based conversion and sees windows 9.0000000e-02?
1.09 looks like 1.09000000e+00, so fraction-part is behind ".".
is a conversion-error, $1 is greater than to-money 0.09 .
Sunanda
8-Oct-2005
[1268]
Works fine under various windows' rebol.exe on my machine.
>>  to-money 0.09
== $0.09
Volker
8-Oct-2005
[1269]
thanks. then wine-bug.
Tomc
8-Oct-2005
[1270]
works fine on solaris
Rondon
11-Oct-2005
[1271x11]
Hi Folks
I think that the http scheme the temporary redirection .. server 
error 307 is not at the rebol http_scheme.. the 302 is.. but not 
the 307..
if you try: page: read http://www1.folha.uol.com.br/fsp/opiniao/fz1010200501.htm
it will redirect you to another url from the browser..
but using Rebol, you can't get this new url..  as you could using 
page: open http://www1.folha.uol.com.br/fsp/opiniao/fz1010200501.htm
print page/url  or page/target
you know.. ;)
I think that the same procedure for 302 should be for the 307 server 
error
if you call from a browser it will redirect you to the following 
url: https://acesso.uol.com.br/login.html?dest=CONTENT&url=http://www1.folha.uol.com.br/fsp/opiniao/fz1010200501.htm&COD_PRODUTO=7
just for reference... http://ppewww.ph.gla.ac.uk/~flavell/www/post-redirect.html
I think 307 is not returning the alternative URL.. you know..
Allen
11-Oct-2005
[1282]
RFC 2616
10.3.8 307 Temporary Redirect


   The requested resource resides temporarily under a different URI.

   Since the redirection MAY be altered on occasion, the client SHOULD

   continue to use the Request-URI for future requests.  This response

   is only cacheable if indicated by a Cache-Control or Expires header
   field.

   The temporary URI SHOULD be given by the Location field in the

   response. Unless the request method was HEAD, the entity of the

   response SHOULD contain a short hypertext note with a hyperlink to
   the new URI(s) , since many pre-HTTP/1.1 user agents do not

   understand the 307 status. Therefore, the note SHOULD contain the

   information necessary for a user to repeat the original request on
   the new URI.


   If the 307 status code is received in response to a request other

   than GET or HEAD, the user agent MUST NOT automatically redirect 
   the

   request unless it can be confirmed by the user, since this might
   change the conditions under which the request was issued.
Rondon
11-Oct-2005
[1283]
So.. How Can I solve this Allen?
Gabriele
12-Oct-2005
[1284]
(Not tested.)

>> code: second get in system/schemes/http/handler 'open
== [
    port/locals: make object! [list: copy [] headers: none]

    generic-proxy?: all [port/proxy/type = 'generic not none? por...
>> actions: select code [response-actions:]
== [
    100 continue-post
    200 success
    201 success
    204 success
    206 success
    300 forward
    301 forward
 ...
>> insert tail actions reduce [307 select actions 300]
== []
Anton
12-Oct-2005
[1285x2]
Gabriele, regarding 
http://www.rebol.net/cgi-bin/rambo.r?id=3918&

I found my patches still cause visual artefacts in certain circumstances, 
so this report should be cancelled.
Sorry about that.

(It does demonstrate, at least, how to iterate PROGRESS style in 
a usable way, but I'll better publish that elsewhere.)
I will continue to try to understand the artefacting.
Rondon
17-Oct-2005
[1287x3]
Gabrielle, the 307 redirection solved the problem partially, if you 
try to read the url that I put above, you'll realize the problem..
when you try to read the redirected url.. it sends back a forbidden 
message.. it is common with the 307 that returns back also a 401 
message
I think that http scheme should behave as a browser in all aspects.. 
you know..  the http scheme is not complete to simulate all the browser 
functions.. :-( I mean, cookies, redirections etc