A new approach to generic functional programming
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Science of Computer Programming - Special issue on mathematics of program construction
The influence of browsers on evaluators or, continuations to program web servers
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
ACM Transactions on Internet Technology (TOIT)
PowerForms: Declarative client-side form field validation
World Wide Web
WASH/CGI: Server-Side Web Scripting with Sessions and Typed, Compositional Forms
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
Web Programming with SMLserver
PADL '03 Proceedings of the 5th International Symposium on Practical Aspects of Declarative Languages
Automatically Restructuring Programs for the Web
Proceedings of the 16th IEEE international conference on Automated software engineering
Server side web scripting in Haskell
Journal of Functional Programming
HOP: achieving efficient anonymity in MANETs by combining HIP, OLSR, and pseudonyms
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Experience with a domain specific language for form-based services
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
A conference management system based on the iData toolkit
IFL'06 Proceedings of the 18th international conference on Implementation and application of functional languages
Links: web programming without tiers
FMCO'06 Proceedings of the 5th international conference on Formal methods for components and objects
iData for the world wide web – programming interconnected web forms
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
Declarative Ajax and client side evaluation of workflows using iTasks
Proceedings of the 10th international ACM SIGPLAN conference on Principles and practice of declarative programming
Specifying Strategies for Exercises
Proceedings of the 9th AISC international conference, the 15th Calculemas symposium, and the 7th international MKM conference on Intelligent Computer Mathematics
From Interpretation to Compilation
Central European Functional Programming School
The Essence of Form Abstraction
APLAS '08 Proceedings of the 6th Asian Symposium on Programming Languages and Systems
Efficient and Type-Safe Generic Data Storage
Electronic Notes in Theoretical Computer Science (ENTCS)
Embedding a web-based workflow management system in a functional language
Proceedings of the Tenth Workshop on Language Descriptions, Tools and Applications
iTasks 2: iTasks for end-users
IFL'09 Proceedings of the 21st international conference on Implementation and application of functional languages
iTasks for a change: type-safe run-time change in dynamically evolving workflows
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
Non-monadic models of mutable references
CEFP'09 Proceedings of the Third summer school conference on Central European functional programming school
Getting a grip on tasks that coordinate tasks
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
iEditors: extending iTask with interactive plug-ins
IFL'08 Proceedings of the 20th international conference on Implementation and application of functional languages
An executable and testable semantics for iTasks
IFL'08 Proceedings of the 20th international conference on Implementation and application of functional languages
GiN: a graphical language and tool for defining itask workflows
TFP'11 Proceedings of the 12th international conference on Trends in Functional Programming
Defining multi-user web applications with itasks
CEFP'11 Proceedings of the 4th Summer School conference on Central European Functional Programming School
Task-oriented programming in a pure functional language
Proceedings of the 14th symposium on Principles and practice of declarative programming
Hi-index | 0.00 |
In this paper we introduce the iTask system: a set of combinators to specify work flows in a pure functional language at a very high level of abstraction. Work flow systems are automated systems in which tasks are coordinated that have to be executed by humans and computers. The combinators that we propose support work flow patterns commonly found in commercial work flow systems. Compared with most of these commercial systems, the iTask system offers several advantages: tasks are statically typed, tasks can be higher order, the combinators are fully compositional, dynamic and recursive work flows can be specified, and last but not least, the specification is used to generate an executable web-based multi-user work flow application. With the iTask system, useful work flows can be defined which cannot be expressed in other systems: work can be interrupted and subsequently directed to other workers for further processing. The implementation is special as well. It is based on the Clean iData toolkit which makes it possible to create fully dynamic, interactive, thin client web applications. Thanks to the generic programming techniques used in the iData toolkit, the programming effort is reduced significantly: state handling, form rendering, user interaction, and storage management is handled automatically. The iTask system allows a task to be regarded as a special kind of persistent redex being reduced by the application user via task completion. The combinators control the order in which these redexes are made available to the application user. The system rewrites the persistent task redexes in a similar way as functions are rewritten in lazy functional languages.