Parallel Functional Reactive Programming

نویسندگان

  • John Peterson
  • Valery Trifonov
  • Andrei Serjantov
چکیده

In this paper, we demonstrate how Functional Reactive Programming (FRP), a framework for the description of interactive systems, can be extended to encompass parallel systems. FRP is based on Haskell, a purely functional programming language, and incorporates the concepts of time variation and reactivity. Parallel FRP serves as a declarative system model that may be transformed into a parallel implementation using the standard program transformation techniques of functional programming. The semantics of parallel FRP include non-determinism, enhancing opportunities to introduce parallelism. We demonstrate a variety of program transformations based on parallel FRP and show how a FRP model may be transformed into explicitly parallel code. Parallel FRP is implemented using the Linda programming system to handle the underlying parallelism. As an example of parallel FRP, we show how a specification for a web-based online auctioning system can be transformed into a parallel implementation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Parallel Functional Reactive Skeletons in Concurrent Clean∗

The skeletons are parameterised algorithmic schemes. We can use them to control parallel execution of the programs. Skeletons in functional programming languages are expressed as higher order functions and they allow to implement the well-known parallel programming paradigm in portable, efficient programs. The skeletons can be parameterised triply: by a function that computes the value of the r...

متن کامل

Towards Reactive Functional Logic Programming Languages

In this paper we present a new extension of functional logic programming languages which allows to specify, at a very high level, applications that need parallelism and reactivity with the environment. For that, we introduce the possibility of deening procedures (agents) which specify the dynamics (evolution) of a classical functional logic program, including its communication with the environm...

متن کامل

Functional Reactive Stream Processing for Data-centric Publish/Subscribe Systems

The Internet of Things (IoT) paradigm has given rise to a new class of applications wherein complex data analytics must be performed in real-time on large volumes of fast-moving, heterogeneous sensor-generated data. Such data streams are often unbounded and must be processed in a distributed and parallel manner to ensure timely processing and delivery to interested subscribers. Dataflow archite...

متن کامل

Joinads: A Retargetable Control-Flow Construct for Reactive, Parallel and Concurrent Programming

Modern challenges led to a design of a wide range of programming models for reactive, parallel and concurrent programming, but these are often difficult to encode in general purpose languages. We present an abstract type of computations called joinads together with a syntactic language extension that aims to make it easier to use joinads in modern functional languages. Our extension generalizes...

متن کامل

Towards a Declarative Language for Parallel and Concurrent Programming

We define a new language Eden by extending a functional language by constructs for the explicit specification of dynamic process systems. Concurrent systems can be classified either as transformational or reactive. For modelling the class of transformational systems, the introduction of a function-like abstraction mechanism is sufficient. In addition to this, the extra-functional concepts prede...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000