The following example sequential code (of several working processors [threads] that sequentially draw different signals):
Is easily transformed to a concurrent program (in which all signal drawing takes place concurrently):
Please note that in red are the only changes the programmer was required to do!
A sequential class (RESULT_DATA
), is immediately reusable as a shared object (all is required is a propershared
type annotation).
Miguel Oliveira e Silva, «Metodologias e Mecanismos para Linguagens de Programação Concorrente Orientadas por Objectos» (Methodologies and Mechanisms for Concurrent Object-Oriented Languages), Ph.D thesis, University of Aveiro, Portugal, 2007. [PDF] |
MP-Eiffel prototype compiler (version alpha0):
To install is enough (in Linux) to copy to following five files to a
new directory and execute the command install-all.sh
(it is necessary that csh , X11 and Curses
libraries are installed in Linux). Note that this compiler was
made only as a proof of concept for my PhD's proposals, so
it is still in a very preliminary (and crude) state (hence its alpha0
status).
|
|||||||||||
lockfree-testing.tgz: This package contains the tests (always in Linux) done towards automatic realization of lock-free synchronization schemes of shared objects. | |||||||||||
Thread-safe SmallEiffel |
mos@det.ua.pt |