Sciweavers

PLANX
2008

XML Stream Processing Using a Lazy Concurrent Language

14 years 1 months ago
XML Stream Processing Using a Lazy Concurrent Language
Motivated by previous work on XML stream processing, we noticed that programmers need concurrency to save space, especially in a lazy language. User-controllable concurrency provides the possibility of reducing space usage in many programs. With lower garbage-collection overhead resulting from concurrent execution, the elapsed time of programs, stream processing ones in particular, is tremendously decreased. The challenge is how to encapsulate concurrency without compromising expressiveness and flexibility of languages. We propose the idea of pushing datatypes -- when a pushing closure is demanded, all expressions referring to it are evaluated concurrently to weak head normal forms. The closure is no more alive and may thus be garbage collected. Semantically, it is a non-intruding extension because it does not change the denotational semantics of an expression. It is also easy to be implemented on top of a language providing concurrent threads and inter-thread synchronisation. We have...
Shin-Cheng Mu, Ta-Chung Tsai, Keisuke Nakano
Added 30 Oct 2010
Updated 30 Oct 2010
Type Conference
Year 2008
Where PLANX
Authors Shin-Cheng Mu, Ta-Chung Tsai, Keisuke Nakano
Comments (0)