Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] ocaml-3.05: a performance experience
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: John Max Skaller <skaller@o...>
Subject: Re: [Caml-list] ocaml-3.05: a performance experience
Gerd Stolpmann wrote

[XML parser]

>Because the parser "pushes" the events to the application, this is a so-called
>"push parser". 
>

The client must supply callbacks.

>There are plans for a "pull parser", too (the application calls
>a next_event function to get the events), as this would allow to create
>streams of XML events.
>

I'm intrigued by the relationship between these two parsers. In particular,
note that my Felix compiler takes 'pull' code, and automatically 
translates it
to the much more efficient 'push' model: ie. it switches the client/server
relationship around, a process I call control inversion.

I believe there is a deep theoretical relationship between push and pull
code -- some kind of categorical duality -- but I dont know precisely what
it is .... despite being able to actually translate one to the other 
using Felix :-)

I'd be very interested if anyone has any ideas on this.

-- 
John Max Skaller, mailto:skaller@ozemail.com.au
snail:10/1 Toxteth Rd, Glebe, NSW 2037, Australia.
voice:61-2-9660-0850




-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners