Results 1 
3 of
3
Representing Contractive Functions on Streams
 UNDER CONSIDERATION FOR PUBLICATION IN THE JOURNAL OF FUNCTIONAL PROGRAMMING
, 2011
"... Streams, or infinite lists, have many applications in functional programming, and are naturally defined using recursive equations. But how do we ensure that such equations make sense, i.e. that they actually produce welldefined streams? In this article we present a new approach to this problem, bas ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Streams, or infinite lists, have many applications in functional programming, and are naturally defined using recursive equations. But how do we ensure that such equations make sense, i.e. that they actually produce welldefined streams? In this article we present a new approach to this problem, based upon the topological notion of contractive functions on streams. In particular, we give a sound and complete representation theorem for contractive functions on streams, illustrate the use of this theorem as a practical means to produce welldefined streams, and show how the efficiency of the resulting definitions can be improved using another representation of contractive functions.
A survey on reactive programming
 ACM Computing Surveys
, 2012
"... Reactive programming has recently gained popularity as a paradigm that is wellsuited for developing eventdriven and interactive applications. It facilitates the development of such applications by providing abstractions to express timevarying values and automatically managing dependencies between ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Reactive programming has recently gained popularity as a paradigm that is wellsuited for developing eventdriven and interactive applications. It facilitates the development of such applications by providing abstractions to express timevarying values and automatically managing dependencies between such values. A number of approaches have been recently proposed embedded in various languages such as Haskell, Scheme, JavaScript, Java,.NET, etc. This survey describes and provides a taxonomy of existing reactive programming approaches along six axes: representation of timevarying values, evaluation model, lifting operations, multidirectionality, glitch avoidance, and support for distribution. From this taxonomy, we observe that there are still open challenges in the field of reactive programming. For instance, multidirectionality is supported only by a small number of languages, which do not automatically track dependencies between timevarying values. Similarly, glitch avoidance, which is subtle in reactive programs, cannot be ensured in distributed reactive programs using the current techniques.
Representing Contractive Functions on Streams (Extended Version)
 UNDER CONSIDERATION FOR PUBLICATION IN THE JOURNAL OF FUNCTIONAL PROGRAMMING
, 2011
"... Streams, or infinite lists, have many applications in functional programming, and are naturally defined using recursive equations. But how do we ensure that such equations make sense, i.e. that they actually produce welldefined streams? In this article we present a new approach to this problem, bas ..."
Abstract
 Add to MetaCart
Streams, or infinite lists, have many applications in functional programming, and are naturally defined using recursive equations. But how do we ensure that such equations make sense, i.e. that they actually produce welldefined streams? In this article we present a new approach to this problem, based upon the topological notion of contractive functions on streams. In particular, we give a sound and complete representation theorem for contractive functions on streams, illustrate the use of this theorem as a practical means to produce welldefined streams, and show how the efficiency of the resulting definitions can be improved using another representation of contractive functions.