Marc,
I'm finding that the repl server in the source for Gambit REPL appears not to work. At least, when I try a telnet to an iOS device running Gambit REPL, the connection is refused. The same goes for my own app if I include the remote repl code, do a (start-repl-server), and try to telnet to the device.
It'd be mighty handy to have that repl server working.
--me
Afficher les réponses par date
On 2011-09-11, at 12:51 AM, mikel evins wrote:
Marc,
I'm finding that the repl server in the source for Gambit REPL appears not to work. At least, when I try a telnet to an iOS device running Gambit REPL, the connection is refused. The same goes for my own app if I include the remote repl code, do a (start-repl-server), and try to telnet to the device.
It'd be mighty handy to have that repl server working.
--me
This could be a networking problem, possibly the configuration of your local network. Could you try this on your iOS device:
(socket-info-address (tcp-client-self-socket-info (open-tcp-client "apple.com:80")))
#u8(192 168 2 16)
(read (open-tcp-server "*:8000"))
This will block. Then on your desktop computer try to connect with telnet:
% telnet 192.168.2.16 8000
This should cause the "read" on your iOS device to complete. For example:
(read (open-tcp-server "*:8000"))
#<input-output-port #2 (tcp-client)>
It could also be a threading problem. Is your application's event loop in C or Scheme? If it is in C you have to arrange to periodically call a Scheme "heartbeat" function to allow the Scheme green threads to progress. Check the function "heartbeat" in examples/iOS/program.scm .
Marc
On Sep 11, 2011, at 7:25 AM, Marc Feeley wrote:
On 2011-09-11, at 12:51 AM, mikel evins wrote:
Marc,
I'm finding that the repl server in the source for Gambit REPL appears not to work. At least, when I try a telnet to an iOS device running Gambit REPL, the connection is refused. The same goes for my own app if I include the remote repl code, do a (start-repl-server), and try to telnet to the device.
It'd be mighty handy to have that repl server working.
--me
This could be a networking problem, possibly the configuration of your local network. Could you try this on your iOS device:
(socket-info-address (tcp-client-self-socket-info (open-tcp-client "apple.com:80")))
#u8(192 168 2 16)
(read (open-tcp-server "*:8000"))
This will block. Then on your desktop computer try to connect with telnet:
% telnet 192.168.2.16 8000
This should cause the "read" on your iOS device to complete. For example:
(read (open-tcp-server "*:8000"))
#<input-output-port #2 (tcp-client)>
It could also be a threading problem. Is your application's event loop in C or Scheme? If it is in C you have to arrange to periodically call a Scheme "heartbeat" function to allow the Scheme green threads to progress. Check the function "heartbeat" in examples/iOS/program.scm .
Thanks; I'll take a look at the app, but I suspect my network or device is the problem. After some further investigation, I discovered that I'm unable connect to any socket on the iPad that I'm using for testing. In addition to the Gambit REPL app that I grabbed from the app store, I also tried a couple of http and ftp server apps; no dice with any of them. Pings work fine, but portscans show no open ports on the ipad. I'll have to dig deeper.
Thanks for the help, anyway!
--me
On Sep 11, 2011, at 7:25 AM, Marc Feeley wrote:
On 2011-09-11, at 12:51 AM, mikel evins wrote:
Marc,
I'm finding that the repl server in the source for Gambit REPL appears not to work. At least, when I try a telnet to an iOS device running Gambit REPL, the connection is refused. The same goes for my own app if I include the remote repl code, do a (start-repl-server), and try to telnet to the device.
It'd be mighty handy to have that repl server working.
--me
This could be a networking problem, possibly the configuration of your local network.
Thanks for the diagnostic code you supplied. Looks like the iPad was in a bad state. I killed a bunch of the apps that were running in the background, then tried your diagnostic code and got the expected result. Looks like the tcp server works fine.
--me