Hi,

Thanks for the patch, I think it's a good way to go. I read it, a
couple remarks:

 - The main remark is that I would have thought that post-processors
can be kept local to the resolution loop, no need to store them in the
request. This could be done perhaps more easily (and more elegantly
than accumulating continuations in a list ref) by using a recursive
function instead of a while.

 - Forcing temporary to false in annotate is useless, and meaningless
if the argument URI is not a file.

 - In the Lang API I would prefer two functions, add_protocol as
before and the new post-process: this would avoid the string
(possibility of a typo hard to catch) and allow different types (e.g.
tell the post-processor if it's working on a temporary file or not).

 - Same thing in the ML API (i.e. in Request), where it would seem
better to start with type protocol = (Resolver of ... | Post-processor
of ...).

 - I'm not sure about the addition of new status: post-proc could be
part of Resolving. This seems harmless, but note that it indirectly
changes the server API, since it introduces non-destroyed non-idle
requests that won't be found in "request.resolving" for a while
(post-proc could be long).

Cheers,
-- 
David

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Savonet-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-devl

Répondre à