ACM Home Page
Please provide us with feedback. Feedback
Declarative Ajax and client side evaluation of workflows using iTasks
Full text PdfPdf (758 KB)
Source
International Conference on Principles and Practice of Declarative Programming archive
Proceedings of the 10th international ACM SIGPLAN conference on Principles and practice of declarative programming table of contents
Valencia, Spain
SESSION: Theory & semantics table of contents
Pages 56-66  
Year of Publication: 2008
ISBN:978-1-60558-117-0
Authors
Rinus Plasmeijer  Radboud University Nijmegen, The Netherlands
Jan Martin Jansen  Netherlands Defence Academy, Den Helder, The Netherlands
Pieter Koopman  Radboud University Nijmegen, The Netherlands
Peter Achten  Radboud University Nijmegen, The Netherlands
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 85,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1389449.1389457
What is a DOI?

ABSTRACT

Workflow systems coordinate tasks of humans and computers. The iTask system is a recently developed toolkit with which workflows can be defined declaratively on a very high level of abstraction. It offers functionality which cannot be found in commercial workflow systems: workflows are constructed dynamically depending on the outcome of earlier work, workflows are strongly typed, and they can be of higher order. From the specification, a web-based multi-user workflow system is generated. Up until now we could only generate thin clients. All information produced by a worker triggers a round trip to the server. For real world workflows this is unsatisfactory. Modern Ajax web technology to update part of a web page is required, as well as the ability to execute tasks on clients. The architecture of any system that supports such features is complex: it manages distributed computing on clients and server which generally involves the collaboration of applications written in different programming languages. The contribution of this paper is that we integrate partial updates of web pages and client side task evaluation within the iTask system, while retaining its approach of a single language and declarative nature. The workflow designer uses light-weight annotations to control the run-time behavior of work. The iTask implementation takes care of all the hard work under the hood. Arbitrary tasks (functional programs) can be evaluated at web clients. When such a task cannot be evaluated on the client for some reason, the system switches to server side evaluation. All communication and synchronization issues are handled by the extended iTask system


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
The Flapjax site. http://www.flapjax-lang.org/.
 
2
P. Achten. Clean for Haskell98 Programmers ¿ A Quick Reference Guide ¿. Available at: http://www.st.cs.ru.nl/papers/-2007/CleanHaskellQuickGuide.pdf, July 13 2007.
 
3
 
4
E. Cooper, S. Lindley, P. Wadler, and J. Yallop. Links: Web programming without tiers. In Proceedings of the 5th International Symposium on Formal Methods for Components and Objects (FMCO'06), volume 4709, CWI, Amsterdam, The Netherlands, 7 - 10 November 2006. Springer-Verlag.
 
5
E. Cooper, S. Lindley, P. Wadler, and J. Yallop. An idiom's guide to formlets ¿ draft ¿. Technical report, The University of Edinburgh, 2007. http://groups.inf.ed.ac.uk/links/papers/formlets-draft2007.pdf.
 
6
J. Garrett. Ajax: A New Approach to Web Applications, 18 February 2005.
7
8
 
9
J. Jansen, P. Koopman, and R. Plasmeijer. Efficient Interpretation by Transforming Data Types and Patterns to Functions. In H. Nilsson, editor, Proceedings Seventh Symposium on Trends in Functional Programming, TFP 2006, volume 7, pages 73--90, Nottingham, UK, The University of Nottingham, April 19-21 2006. Intellect Books.
 
10
F. Loitsch and M. Serrano. Hop Client-Side Compilation. In Seventh Symposium on Trends in Functional Programming, TFP 2007, City College, New York, April 2-4 2007.
 
11
R. Plasmeijer and P. Achten. The Implementation of iData - A Case Study in Generic Programming. In Andrew Butterfield and Clemens Grelck and Frank Huch, editor, Implementation and Application of Functional Languages, 17th International Workshop, IFL 2005, Dublin, Ireland, September 19-21, 2005, Revised Selected Papers, LNCS 4015, pages 106--123, Department of Computer Science, Trinity College, University of Dublin, September 19-21 2006.
12
13
 
14
W. van der Aalst, A. ter Hofstede, B. Kiepuszewski, and A. Barros. Workflow patterns. QUT Technical report, FIT-TR-2002-02, Queensland University of Technology, Brisbane, 2002.
 
15
A. van Weelden. Putting Types To Good Use. PhD thesis, University of Nijmegen, The Netherlands, October 17 2007. ISBN 978-90-9022041-3.

Collaborative Colleagues:
Rinus Plasmeijer: colleagues
Jan Martin Jansen: colleagues
Pieter Koopman: colleagues
Peter Achten: colleagues