Headline

A JoCaml-based implementation that uses join patterns

Motivation

Nowadays, event handling is a standard technique in GUI programming. However, there is a lot of research going on to use such an event-based approach for concurrent programming. The idea is to parallelize the handling of events by combining simple events to more complex ones using so called join patterns. This project demonstrates the usage of concurrency by event handling in JoCaml using such join patterns.

Illustration

Join patterns combine several event channels, which all must be served in order to start the handling. If channels represent functions on an object-like strucure another channel is often used as a internal state, which is modified by the function.

 

(* join pattern for cut *) def employeeState (n, a, s) & cut () =

    employeeState (n, a, s *. 0.5)

For example the internal state employeeState (n, a, s) describes an employee with name, address and salary. If a Feature:Cut-event occurs this internal state is consumed and triggered again with a modified salary.

Architecture

  • company.ml company structure
  • company.mli header, company signature
  • meganalysis.ml sample company
  • main.ml simple test program

Usage

You need to install JJoCaml .

Use the makefile for some demo:

  • Enter make compile to compile the code
  • Enter make test to execute the script contained in main.ml and to perform a simple diff-based test


There are no revisions for this page.

User contributions

    This user never has never made submissions.

    User edits

    Syntax for editing wiki

    For you are available next options:

    will make text bold.

    will make text italic.

    will make text underlined.

    will make text striked.

    will allow you to paste code headline into the page.

    will allow you to link into the page.

    will allow you to paste code with syntax highlight into the page. You will need to define used programming language.

    will allow you to paste image into the page.

    is list with bullets.

    is list with numbers.

    will allow your to insert slideshare presentation into the page. You need to copy link to presentation and insert it as parameter in this tag.

    will allow your to insert youtube video into the page. You need to copy link to youtube page with video and insert it as parameter in this tag.

    will allow your to insert code snippets from @worker.

    Syntax for editing wiki

    For you are available next options:

    will make text bold.

    will make text italic.

    will make text underlined.

    will make text striked.

    will allow you to paste code headline into the page.

    will allow you to link into the page.

    will allow you to paste code with syntax highlight into the page. You will need to define used programming language.

    will allow you to paste image into the page.

    is list with bullets.

    is list with numbers.

    will allow your to insert slideshare presentation into the page. You need to copy link to presentation and insert it as parameter in this tag.

    will allow your to insert youtube video into the page. You need to copy link to youtube page with video and insert it as parameter in this tag.

    will allow your to insert code snippets from @worker.