[REBOL] Re: async interface
From: rotenca:telvia:it at: 9-Mar-2004 19:31
Hi Anton,
> What were you thinking resolve* would be for ?
Resolve can be ignored, but resolve can fail, like connect.
I am asking it all that errors are a good thing. I am thinking to use words
instead:
dns-failure
connect-failure
errors could be used only for i/o errors
This makes the multi function approach a lillte too complex, perhaps is better
to use the engage approach?
engage: func [port action value [any-type!]][
switch action [
error [print "an error" probe disarm value true]
dns-failure [true]
connect-failure [print ["number of retry:" value] true]
peer-close [true]
read [print copy port false]
write [print copy port false]
]
]
We are back near to the original awake scheme (also if this function is no
more referenced by port/awake)
> How about here?:
>
> system/schemes/async/base-feel
Protocol ports (in the actual implementation) cannot be extended with new
words.
---
Ciao
Romano