At the ICFP 2007 conference we first presented iTasks , a multi-user workflow system for the web. Since then the system has evolved from a small library on top of the iData framework to a full fledged workflow language embedded in Clean.
Using iTasks workflows can be speficied using combinators in a very high level declarative monadic style. Workflows consist of typed tasks that produce results that can be passed as parameters to other tasks. Workflows are constructed by combining single steps sequentially or in parallel. From iTask specifications, executable workflow support systems are generated automatically.
Lately we have been working on version 2 of iTasks that takes the quality of the generated workflow support systems to a higher level and aims to offer end-users working on tasks a more user-friendly experience. We have presented this new incarnation of the iTask system at the IFL 2009 conference, and we are working on getting it ready for an alpha release.
This latest version features:
- A highly declarative API for specification of dynamic workflows
- A rich Ajax client interface for working on tasks
- Automatically generated editors for entering and updating data in workflows.
- A JSON based service API for spawning and interacting with running workflow instances
- The possibility to change running workflow instances
For the AFP Summerschool 2008 we made a special Clean release which includes the new compiler which can generate SAPL code for execution on the client.
You can download this release at: http://clean.cs.ru.nl/download/Clean22/windows/Clean2.2-iTasks-AFP2008.zip