The iTask system (iTasks) is a toolkit for programming workflow management applications in Clean.
With this toolkit 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.
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
The iTask system is actively developed, but has no regular release schedule. We provide alpha builds on request or on special occasions such as use during courses.
The latest development release is version 10.8 (Aug. 2010) which you can download below.
You also need a preview release of Clean 2.3 with a modified compiler which you can download from the Clean download page or directly using the link below:
To get started you need both the latest Clean release for iTasks and the latest release of the iTasks-SDK, which can be downloaded from this page. To combine them follow these steps:
- Unzip the Clean system into any directory on your system.
- Unzip the iTasks-SDK-XX.zip into the root-folder of the Clean System. This will create a folder 'iTasks-SDK'. It is required to put the iTasks system in this directory for the 'iTasks'-environment to work.
- Follow the instructions in 'readme.txt'. A build of the AJAX web-client is already included in the release, so you don't have to create one for yourself.
The iTask system works with most browsers. IE 9 is a known exception, we are working on that.
Using the iTask system with Firefox can be very slow. This is caused by a delay that is added by Firefox for all events for localhost. There are several solutions and workarounds:
- Find out what your current ip address and use that instead of http://localhost/.
- Better: use http://127.0.0.1/ instead of http://localhost/.
- best: change the settings of Firefox.
- type as url: about:config
- search for v6, you will see network.dns.disableIPv6
- toggle the value of this parameter to True.