Difference between revisions of "ITasks"

From Clean
Jump to: navigation, search
Line 17: Line 17:
* Integration framework for common client-side javascript libraries (for example google maps)
* Integration framework for common client-side javascript libraries (for example google maps)
== Snapshot for CEFP 2013 Course ==
For the CEFP course, a snapshot of Clean 2.4 + iTasks for 32-bit windows is available that works out of the box.
You can download it here: [http://www.cs.ru.nl/~baslijns/iTasks-prereleases/CleanWithiTasks-20130704.zip CleanWithiTasks-20130704.zip]
Here are some additional resources:
# [https://wiki.clean.cs.ru.nl/File:Ligretto_framework.zip]: a framework for the Ligretto case study (ligretto_framework.zip).
  WARNING SPOILERS AHEAD: if you really want to implement the case study yourself, then do not download this version!!
  This is a complete implementation of the Ligretto case study!!
# [https://wiki.clean.cs.ru.nl/File:Ligretto_case_study.ppt‎]: brief explanation of the Ligretto case study and the above framework.
# [https://wiki.clean.cs.ru.nl/File:assignments.ppt] the lab assignments.
# [https://wiki.clean.cs.ru.nl/File:Assignments_answers.ppt] possible solutions and explanations to the lab assignments.
# [https://wiki.clean.cs.ru.nl/File:TOP_Part_1_CEFP_2013.ppt]: the first lecture slides
# [https://wiki.clean.cs.ru.nl/File:TOP_Part_2_CEFP_2013.ppt]: the second lecture slides
== Get from subversion ==
== Get from subversion ==

Revision as of 12:37, 9 January 2014


The iTask system (iTasks) is a task-oriented programming toolkit for programming workflow support applications in Clean.

With this toolkit, interactive systems can be specified using combinators in a very high level declarative monadic style. Programs are constructed by combining typed 'tasks'. These tasks produce results that can be passed as parameters to other tasks. Tasks are constructed by combining single steps sequentially or in parallel. From iTask specifications, executable web-based workflow support systems are generated automatically.

The iTask2 GUI

This latest version features:

  • A highly declarative API for specification of interactive systems as task compositions.
  • Automatic generation of web-based user interfaces for entering and updating and viewing data.
  • Automatic data persistance
  • Automatic instant synchronization between different clients using html5 push technologies.
  • Easy creation of JSON webservices
  • A builtin HTTP1.1 webserver
  • Integration framework for common client-side javascript libraries (for example google maps)

Get from subversion

The iTask system is actively developed, but not regularly released. Our version control is publicly accessible. You can get the development trunk from our subversion repository. You can get started with iTasks by following the following three steps:

  1. Install a Clean 2.4 system for 32-bit Windows.
  2. Check out the iTask trunk https://svn.cs.ru.nl/repos/iTask-system/trunk to a directory named 'iTasks-SDK' in your Clean 2.4 directory.
  3. Follow the setup instructions in README.txt


Documentation of iTasks is still mostly done in scientific papers (look for iTasks on the Publications page).


The iTask system works with most modern 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:

  1. type as url: about:config
  2. search for v6, you will see network.dns.disableIPv6
  3. toggle the value of this parameter to True.

Read more