Using guile's web client

2012-03-14 Thread Chris Vine
Hi, I have been playing around with guile-2.0.5's high-level web modules. In order to see if I understood them, I tried about the simplest thing I could think of: a GET request to checkip.dyndns.com to obtain my IP address. The following code works correctly provided I leave the commented out cod

Re: Using guile's web client

2012-03-14 Thread Ian Price
Chris Vine writes: > ((lambda() >(let ((uri (build-uri 'http > #:host "checkip.dyndns.com" > #:port 80 > #:path "/"))) > (display uri) > (newline) > (let ((r (http-get uri #:keep-alive? #t))) ^^ there's

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
I'm afraid it's a real bug. read-response-body didn't check before it call bytevector-length. But actually, all the data has already been read. When it encounters , it should return the body immediately. The bug is, it checks bytevector-length first which cause (bytevector-length ). I didn't reali

Re: Using guile's web client

2012-03-14 Thread Ian Price
Nala Ginrut writes: > I'm afraid it's a real bug. No, it's not. See my response to him. :) -- Ian Price "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled"

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
I must say NO to NO. You may try http-get directly in this situation and see if it returns. No matter how you handle the values, it never return because of the error I mentioned. On Thu, Mar 15, 2012 at 10:11 AM, Ian Price wrote: > Nala Ginrut writes: > > > I'm afraid it's a real bug. > No, it's

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
To clarify, he used wrong usage of http-get is another issue need to be noticed. On Thu, Mar 15, 2012 at 11:55 AM, Nala Ginrut wrote: > I must say NO to NO. > You may try http-get directly in this situation and see if it returns. No > matter how you handle the values, it never return because of